@public-ui/components 1.7.6 → 1.7.7

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 (967) hide show
  1. package/custom-elements.json +1 -1
  2. package/dist/cjs/{a11y.tipps-92411c71.js → a11y.tipps-10621b84.js} +1 -1
  3. package/dist/cjs/{a11y.tipps-92411c71.js.map → a11y.tipps-10621b84.js.map} +1 -1
  4. package/dist/cjs/align-4ae68610.js +4 -0
  5. package/dist/cjs/align-4ae68610.js.map +1 -0
  6. package/dist/cjs/{alignment-c5614ef1.js → alignment-f0b8580b.js} +1 -1
  7. package/dist/cjs/alignment-f0b8580b.js.map +1 -0
  8. package/dist/cjs/app-globals-eccdbb21.js +4 -0
  9. package/dist/cjs/app-globals-eccdbb21.js.map +1 -0
  10. package/dist/cjs/{aria-current-c3f2bebe.js → aria-current-a9ea535c.js} +1 -1
  11. package/dist/cjs/aria-current-a9ea535c.js.map +1 -0
  12. package/dist/cjs/{associated.controller-56d9e762.js → associated.controller-1e5961e7.js} +1 -1
  13. package/dist/cjs/associated.controller-1e5961e7.js.map +1 -0
  14. package/dist/cjs/{color-0a7cfd01.js → color-5f5137ec.js} +1 -1
  15. package/dist/cjs/{color-0a7cfd01.js.map → color-5f5137ec.js.map} +1 -1
  16. package/dist/cjs/{controller-b091f60e.js → controller-1ed14875.js} +1 -1
  17. package/dist/cjs/controller-1ed14875.js.map +1 -0
  18. package/dist/cjs/{controller-8ae79249.js → controller-6bc6c6de.js} +1 -1
  19. package/dist/cjs/controller-6bc6c6de.js.map +1 -0
  20. package/dist/cjs/{controller-9f9ddc96.js → controller-90c85ada.js} +1 -1
  21. package/dist/cjs/{controller-9f9ddc96.js.map → controller-90c85ada.js.map} +1 -1
  22. package/dist/cjs/{controller-9a0673b6.js → controller-f1a96e9b.js} +1 -1
  23. package/dist/cjs/controller-f1a96e9b.js.map +1 -0
  24. package/dist/cjs/{controller-e3a82ff0.js → controller-fccb3f9c.js} +1 -1
  25. package/dist/cjs/controller-fccb3f9c.js.map +1 -0
  26. package/dist/cjs/{controller-icon-d1b86ea5.js → controller-icon-a8e9360a.js} +1 -1
  27. package/dist/cjs/controller-icon-a8e9360a.js.map +1 -0
  28. package/dist/cjs/{custom-class-5acfb25f.js → custom-class-0079b593.js} +1 -1
  29. package/dist/cjs/custom-class-0079b593.js.map +1 -0
  30. package/dist/cjs/{dev.utils-c29072e2.js → dev.utils-a4966e14.js} +1 -1
  31. package/dist/cjs/dev.utils-a4966e14.js.map +1 -0
  32. package/dist/cjs/{devtools-5711f93a.js → devtools-77551c40.js} +1 -1
  33. package/dist/cjs/{devtools-5711f93a.js.map → devtools-77551c40.js.map} +1 -1
  34. package/dist/cjs/floating-ui.dom.esm-c21c7751.js +4 -0
  35. package/dist/cjs/floating-ui.dom.esm-c21c7751.js.map +1 -0
  36. package/dist/cjs/has-closer-13ce904d.js +4 -0
  37. package/dist/cjs/has-closer-13ce904d.js.map +1 -0
  38. package/dist/cjs/hide-label-1f4e6c13.js +4 -0
  39. package/dist/cjs/hide-label-1f4e6c13.js.map +1 -0
  40. package/dist/cjs/{i18n-f9e68722.js → i18n-a9c2a6ff.js} +1 -1
  41. package/dist/cjs/{i18n-f9e68722.js.map → i18n-a9c2a6ff.js.map} +1 -1
  42. package/dist/cjs/{icons-b09e9f57.js → icons-7edd3934.js} +1 -1
  43. package/dist/cjs/icons-7edd3934.js.map +1 -0
  44. package/dist/cjs/image-source-7a46211b.js +4 -0
  45. package/dist/cjs/image-source-7a46211b.js.map +1 -0
  46. package/dist/cjs/index-3145a30d.js +5 -0
  47. package/dist/cjs/index-3145a30d.js.map +1 -0
  48. package/dist/cjs/index-803d469e.js +4 -0
  49. package/dist/cjs/index-803d469e.js.map +1 -0
  50. package/dist/cjs/index-dd6c9315.js +4 -0
  51. package/dist/cjs/index-dd6c9315.js.map +1 -0
  52. package/dist/cjs/index.cjs.js +1 -1
  53. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  55. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  57. package/dist/cjs/kol-alert-wc_3.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-alert-wc_3.cjs.entry.js.map +1 -1
  59. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  61. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
  64. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  66. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  78. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  80. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  83. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-icon-icofont.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-icon-icofont.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  90. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  92. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  99. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  101. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  103. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  105. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-input.cjs.entry.js.map +1 -1
  116. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  118. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  120. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  122. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  124. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  126. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  128. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  132. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-popover-wc.cjs.entry.js.map +1 -1
  136. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  139. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
  140. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  141. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  142. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  143. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  144. package/dist/cjs/kol-span-wc_2.cjs.entry.js +1 -1
  145. package/dist/cjs/kol-span-wc_2.cjs.entry.js.map +1 -1
  146. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  147. package/dist/cjs/kol-span.cjs.entry.js.map +1 -1
  148. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  149. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  150. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  151. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
  152. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  153. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  154. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  155. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  156. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  157. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  158. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  159. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  160. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  161. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  162. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  163. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  164. package/dist/cjs/kolibri.cjs.js +1 -1
  165. package/dist/cjs/kolibri.cjs.js.map +1 -1
  166. package/dist/cjs/{label-03b63bfd.js → label-577d2337.js} +1 -1
  167. package/dist/cjs/label-577d2337.js.map +1 -0
  168. package/dist/cjs/loader.cjs.js +1 -1
  169. package/dist/cjs/open-9206a321.js +4 -0
  170. package/dist/cjs/open-9206a321.js.map +1 -0
  171. package/dist/cjs/{prop.validators-1f99e6ff.js → prop.validators-e97b81b8.js} +1 -1
  172. package/dist/cjs/prop.validators-e97b81b8.js.map +1 -0
  173. package/dist/cjs/rows-d44f404d.js +4 -0
  174. package/dist/cjs/rows-d44f404d.js.map +1 -0
  175. package/dist/cjs/show-fb9b76a1.js +4 -0
  176. package/dist/cjs/show-fb9b76a1.js.map +1 -0
  177. package/dist/cjs/{suggestions-879c67e1.js → suggestions-d81b84b5.js} +1 -1
  178. package/dist/cjs/suggestions-d81b84b5.js.map +1 -0
  179. package/dist/cjs/{tab-index-96b0307a.js → tab-index-226ac183.js} +1 -1
  180. package/dist/cjs/tab-index-226ac183.js.map +1 -0
  181. package/dist/cjs/{tooltip-align-fe56af06.js → tooltip-align-6b3f4298.js} +1 -1
  182. package/dist/cjs/tooltip-align-6b3f4298.js.map +1 -0
  183. package/dist/cjs/{validation-f1cde09d.js → validation-1f78e32f.js} +1 -1
  184. package/dist/cjs/validation-1f78e32f.js.map +1 -0
  185. package/dist/cjs/{validation-5c13ca37.js → validation-f18cf982.js} +1 -1
  186. package/dist/cjs/validation-f18cf982.js.map +1 -0
  187. package/dist/components/align.js +1 -1
  188. package/dist/components/align.js.map +1 -1
  189. package/dist/components/color.js +1 -1
  190. package/dist/components/color.js.map +1 -1
  191. package/dist/components/component.js +1 -1
  192. package/dist/components/component12.js +1 -1
  193. package/dist/components/component12.js.map +1 -1
  194. package/dist/components/component13.js +1 -1
  195. package/dist/components/component13.js.map +1 -1
  196. package/dist/components/component14.js +1 -1
  197. package/dist/components/component14.js.map +1 -1
  198. package/dist/components/component15.js +1 -1
  199. package/dist/components/component15.js.map +1 -1
  200. package/dist/components/component16.js +1 -1
  201. package/dist/components/component16.js.map +1 -1
  202. package/dist/components/component2.js +1 -1
  203. package/dist/components/component2.js.map +1 -1
  204. package/dist/components/component3.js +1 -1
  205. package/dist/components/component3.js.map +1 -1
  206. package/dist/components/component4.js +1 -1
  207. package/dist/components/component4.js.map +1 -1
  208. package/dist/components/component5.js +1 -1
  209. package/dist/components/component5.js.map +1 -1
  210. package/dist/components/component6.js +1 -1
  211. package/dist/components/component8.js +1 -1
  212. package/dist/components/component8.js.map +1 -1
  213. package/dist/components/component9.js +1 -1
  214. package/dist/components/component9.js.map +1 -1
  215. package/dist/components/controller-icon.js +1 -1
  216. package/dist/components/controller-icon.js.map +1 -1
  217. package/dist/components/controller.js +1 -1
  218. package/dist/components/controller.js.map +1 -1
  219. package/dist/components/controller2.js +1 -1
  220. package/dist/components/controller2.js.map +1 -1
  221. package/dist/components/controller3.js.map +1 -1
  222. package/dist/components/controller4.js +1 -1
  223. package/dist/components/controller4.js.map +1 -1
  224. package/dist/components/devtools.js +1 -1
  225. package/dist/components/has-closer.js +1 -1
  226. package/dist/components/has-closer.js.map +1 -1
  227. package/dist/components/i18n.js +1 -1
  228. package/dist/components/i18n.js.map +1 -1
  229. package/dist/components/image-source.js +1 -1
  230. package/dist/components/image-source.js.map +1 -1
  231. package/dist/components/index.js +1 -1
  232. package/dist/components/index.js.map +1 -1
  233. package/dist/components/kol-abbr.js +1 -1
  234. package/dist/components/kol-abbr.js.map +1 -1
  235. package/dist/components/kol-accordion.js +1 -1
  236. package/dist/components/kol-accordion.js.map +1 -1
  237. package/dist/components/kol-avatar.js +1 -1
  238. package/dist/components/kol-avatar.js.map +1 -1
  239. package/dist/components/kol-breadcrumb.js +1 -1
  240. package/dist/components/kol-breadcrumb.js.map +1 -1
  241. package/dist/components/kol-button-group.js +1 -1
  242. package/dist/components/kol-button-group.js.map +1 -1
  243. package/dist/components/kol-button-link.js +1 -1
  244. package/dist/components/kol-button-link.js.map +1 -1
  245. package/dist/components/kol-card.js +1 -1
  246. package/dist/components/kol-card.js.map +1 -1
  247. package/dist/components/kol-details.js +1 -1
  248. package/dist/components/kol-details.js.map +1 -1
  249. package/dist/components/kol-form.js +1 -1
  250. package/dist/components/kol-heading.js +1 -1
  251. package/dist/components/kol-heading.js.map +1 -1
  252. package/dist/components/kol-icon-font-awesome.js.map +1 -1
  253. package/dist/components/kol-icon-icofont.js.map +1 -1
  254. package/dist/components/kol-image.js +1 -1
  255. package/dist/components/kol-image.js.map +1 -1
  256. package/dist/components/kol-input-adapter-leanup.js +1 -1
  257. package/dist/components/kol-input-checkbox.js +1 -1
  258. package/dist/components/kol-input-checkbox.js.map +1 -1
  259. package/dist/components/kol-input-color.js +1 -1
  260. package/dist/components/kol-input-color.js.map +1 -1
  261. package/dist/components/kol-input-date.js +1 -1
  262. package/dist/components/kol-input-date.js.map +1 -1
  263. package/dist/components/kol-input-email.js +1 -1
  264. package/dist/components/kol-input-email.js.map +1 -1
  265. package/dist/components/kol-input-file.js +1 -1
  266. package/dist/components/kol-input-file.js.map +1 -1
  267. package/dist/components/kol-input-number.js +1 -1
  268. package/dist/components/kol-input-number.js.map +1 -1
  269. package/dist/components/kol-input-password.js +1 -1
  270. package/dist/components/kol-input-password.js.map +1 -1
  271. package/dist/components/kol-input-radio-group.js +1 -1
  272. package/dist/components/kol-input-range.js +1 -1
  273. package/dist/components/kol-input-range.js.map +1 -1
  274. package/dist/components/kol-input-text.js +1 -1
  275. package/dist/components/kol-input-text.js.map +1 -1
  276. package/dist/components/kol-kolibri.js +1 -1
  277. package/dist/components/kol-kolibri.js.map +1 -1
  278. package/dist/components/kol-link-button.js +1 -1
  279. package/dist/components/kol-link-button.js.map +1 -1
  280. package/dist/components/kol-link-group.js +1 -1
  281. package/dist/components/kol-link-group.js.map +1 -1
  282. package/dist/components/kol-logo.js +1 -1
  283. package/dist/components/kol-logo.js.map +1 -1
  284. package/dist/components/kol-modal.js +1 -1
  285. package/dist/components/kol-modal.js.map +1 -1
  286. package/dist/components/kol-nav.js +1 -1
  287. package/dist/components/kol-nav.js.map +1 -1
  288. package/dist/components/kol-popover-wc.js +1 -1
  289. package/dist/components/kol-popover-wc.js.map +1 -1
  290. package/dist/components/kol-progress.js +1 -1
  291. package/dist/components/kol-progress.js.map +1 -1
  292. package/dist/components/kol-quote.js +1 -1
  293. package/dist/components/kol-quote.js.map +1 -1
  294. package/dist/components/kol-skip-nav.js +1 -1
  295. package/dist/components/kol-skip-nav.js.map +1 -1
  296. package/dist/components/kol-span.js +1 -1
  297. package/dist/components/kol-span.js.map +1 -1
  298. package/dist/components/kol-spin.js +1 -1
  299. package/dist/components/kol-spin.js.map +1 -1
  300. package/dist/components/kol-split-button.js +1 -1
  301. package/dist/components/kol-split-button.js.map +1 -1
  302. package/dist/components/kol-symbol.js +1 -1
  303. package/dist/components/kol-table.js +1 -1
  304. package/dist/components/kol-table.js.map +1 -1
  305. package/dist/components/kol-tabs.js +1 -1
  306. package/dist/components/kol-tabs.js.map +1 -1
  307. package/dist/components/kol-textarea.js +1 -1
  308. package/dist/components/kol-textarea.js.map +1 -1
  309. package/dist/components/kol-toast.js +1 -1
  310. package/dist/components/kol-toast.js.map +1 -1
  311. package/dist/components/kol-version.js +1 -1
  312. package/dist/components/kol-version.js.map +1 -1
  313. package/dist/components/label.js +1 -1
  314. package/dist/components/label.js.map +1 -1
  315. package/dist/components/open.js +1 -1
  316. package/dist/components/open.js.map +1 -1
  317. package/dist/components/prop.validators.js +1 -1
  318. package/dist/components/prop.validators.js.map +1 -1
  319. package/dist/components/rows.js +1 -1
  320. package/dist/components/rows.js.map +1 -1
  321. package/dist/components/shadow.js +1 -1
  322. package/dist/components/shadow.js.map +1 -1
  323. package/dist/components/shadow2.js +1 -1
  324. package/dist/components/shadow2.js.map +1 -1
  325. package/dist/components/shadow3.js +1 -1
  326. package/dist/components/shadow3.js.map +1 -1
  327. package/dist/components/show.js +1 -1
  328. package/dist/components/show.js.map +1 -1
  329. package/dist/components/suggestions.js +1 -1
  330. package/dist/components/suggestions.js.map +1 -1
  331. package/dist/components/tab-index.js +1 -1
  332. package/dist/components/tab-index.js.map +1 -1
  333. package/dist/components/tooltip-align.js.map +1 -1
  334. package/dist/components/validation.js +1 -1
  335. package/dist/components/validation.js.map +1 -1
  336. package/dist/esm/{a11y.tipps-42463a61.js → a11y.tipps-b72d567f.js} +1 -1
  337. package/dist/esm/{a11y.tipps-42463a61.js.map → a11y.tipps-b72d567f.js.map} +1 -1
  338. package/dist/esm/{align-6ce8ea2d.js → align-f09b70de.js} +1 -1
  339. package/dist/esm/align-f09b70de.js.map +1 -0
  340. package/dist/esm/{alignment-b3613da2.js → alignment-89a66c90.js} +1 -1
  341. package/dist/esm/alignment-89a66c90.js.map +1 -0
  342. package/dist/esm/app-globals-239ecc91.js +4 -0
  343. package/dist/esm/app-globals-239ecc91.js.map +1 -0
  344. package/dist/esm/{aria-current-01b90ab1.js → aria-current-982165c0.js} +1 -1
  345. package/dist/esm/aria-current-982165c0.js.map +1 -0
  346. package/dist/esm/{associated.controller-4d29e8ed.js → associated.controller-e82ccadd.js} +1 -1
  347. package/dist/esm/associated.controller-e82ccadd.js.map +1 -0
  348. package/dist/esm/{color-4a54ac3f.js → color-a73f383b.js} +1 -1
  349. package/dist/esm/{color-4a54ac3f.js.map → color-a73f383b.js.map} +1 -1
  350. package/dist/esm/{controller-e18b0591.js → controller-35567a81.js} +1 -1
  351. package/dist/esm/{controller-e18b0591.js.map → controller-35567a81.js.map} +1 -1
  352. package/dist/esm/{controller-7592ddb2.js → controller-6a323a54.js} +1 -1
  353. package/dist/esm/controller-6a323a54.js.map +1 -0
  354. package/dist/esm/{controller-3436387a.js → controller-9e65999c.js} +1 -1
  355. package/dist/esm/controller-9e65999c.js.map +1 -0
  356. package/dist/esm/{controller-34e3505b.js → controller-c0324c56.js} +1 -1
  357. package/dist/esm/controller-c0324c56.js.map +1 -0
  358. package/dist/esm/{controller-1aaf6ed9.js → controller-cc5560bb.js} +1 -1
  359. package/dist/esm/controller-cc5560bb.js.map +1 -0
  360. package/dist/esm/{controller-icon-e49f46ec.js → controller-icon-f6d5ee93.js} +1 -1
  361. package/dist/esm/controller-icon-f6d5ee93.js.map +1 -0
  362. package/dist/esm/{custom-class-9a4f82a2.js → custom-class-de440fac.js} +1 -1
  363. package/dist/esm/custom-class-de440fac.js.map +1 -0
  364. package/dist/esm/{dev.utils-808b02af.js → dev.utils-41a91551.js} +1 -1
  365. package/dist/esm/dev.utils-41a91551.js.map +1 -0
  366. package/dist/esm/{devtools-6f72340c.js → devtools-dda97008.js} +1 -1
  367. package/dist/esm/{devtools-6f72340c.js.map → devtools-dda97008.js.map} +1 -1
  368. package/dist/esm/floating-ui.dom.esm-e435ab9f.js +4 -0
  369. package/dist/esm/floating-ui.dom.esm-e435ab9f.js.map +1 -0
  370. package/dist/esm/{has-closer-e33eb81d.js → has-closer-8ece4fc4.js} +1 -1
  371. package/dist/esm/has-closer-8ece4fc4.js.map +1 -0
  372. package/dist/esm/{hide-label-c1cd274b.js → hide-label-a37738db.js} +1 -1
  373. package/dist/esm/hide-label-a37738db.js.map +1 -0
  374. package/dist/esm/{i18n-680a56fe.js → i18n-c10542e5.js} +1 -1
  375. package/dist/esm/{i18n-680a56fe.js.map → i18n-c10542e5.js.map} +1 -1
  376. package/dist/esm/{icons-6c80b022.js → icons-70fec733.js} +1 -1
  377. package/dist/esm/icons-70fec733.js.map +1 -0
  378. package/dist/esm/{image-source-520ea2c2.js → image-source-bc311528.js} +1 -1
  379. package/dist/esm/image-source-bc311528.js.map +1 -0
  380. package/dist/esm/index-5a2fb9e0.js +4 -0
  381. package/dist/esm/index-5a2fb9e0.js.map +1 -0
  382. package/dist/esm/index-5dfe6d77.js +5 -0
  383. package/dist/esm/index-5dfe6d77.js.map +1 -0
  384. package/dist/esm/index-b580aa97.js +4 -0
  385. package/dist/esm/index-b580aa97.js.map +1 -0
  386. package/dist/esm/index.js +1 -1
  387. package/dist/esm/kol-abbr.entry.js +1 -1
  388. package/dist/esm/kol-abbr.entry.js.map +1 -1
  389. package/dist/esm/kol-accordion.entry.js +1 -1
  390. package/dist/esm/kol-accordion.entry.js.map +1 -1
  391. package/dist/esm/kol-alert-wc_3.entry.js +1 -1
  392. package/dist/esm/kol-alert-wc_3.entry.js.map +1 -1
  393. package/dist/esm/kol-alert.entry.js +1 -1
  394. package/dist/esm/kol-alert.entry.js.map +1 -1
  395. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  396. package/dist/esm/kol-avatar.entry.js +1 -1
  397. package/dist/esm/kol-avatar.entry.js.map +1 -1
  398. package/dist/esm/kol-badge.entry.js +1 -1
  399. package/dist/esm/kol-badge.entry.js.map +1 -1
  400. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  401. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  402. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  403. package/dist/esm/kol-button-group.entry.js +1 -1
  404. package/dist/esm/kol-button-group.entry.js.map +1 -1
  405. package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
  406. package/dist/esm/kol-button-link.entry.js +1 -1
  407. package/dist/esm/kol-button-link.entry.js.map +1 -1
  408. package/dist/esm/kol-button.entry.js +1 -1
  409. package/dist/esm/kol-button.entry.js.map +1 -1
  410. package/dist/esm/kol-card.entry.js +1 -1
  411. package/dist/esm/kol-card.entry.js.map +1 -1
  412. package/dist/esm/kol-details.entry.js +1 -1
  413. package/dist/esm/kol-details.entry.js.map +1 -1
  414. package/dist/esm/kol-form.entry.js +1 -1
  415. package/dist/esm/kol-heading.entry.js +1 -1
  416. package/dist/esm/kol-heading.entry.js.map +1 -1
  417. package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
  418. package/dist/esm/kol-icon-font-awesome.entry.js.map +1 -1
  419. package/dist/esm/kol-icon-icofont.entry.js +1 -1
  420. package/dist/esm/kol-icon-icofont.entry.js.map +1 -1
  421. package/dist/esm/kol-icon.entry.js +1 -1
  422. package/dist/esm/kol-image.entry.js +1 -1
  423. package/dist/esm/kol-image.entry.js.map +1 -1
  424. package/dist/esm/kol-indented-text.entry.js +1 -1
  425. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  426. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  427. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  428. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  429. package/dist/esm/kol-input-color.entry.js +1 -1
  430. package/dist/esm/kol-input-color.entry.js.map +1 -1
  431. package/dist/esm/kol-input-date.entry.js +1 -1
  432. package/dist/esm/kol-input-date.entry.js.map +1 -1
  433. package/dist/esm/kol-input-email.entry.js +1 -1
  434. package/dist/esm/kol-input-email.entry.js.map +1 -1
  435. package/dist/esm/kol-input-file.entry.js +1 -1
  436. package/dist/esm/kol-input-file.entry.js.map +1 -1
  437. package/dist/esm/kol-input-number.entry.js +1 -1
  438. package/dist/esm/kol-input-number.entry.js.map +1 -1
  439. package/dist/esm/kol-input-password.entry.js +1 -1
  440. package/dist/esm/kol-input-password.entry.js.map +1 -1
  441. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  442. package/dist/esm/kol-input-radio.entry.js +1 -1
  443. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  444. package/dist/esm/kol-input-range.entry.js +1 -1
  445. package/dist/esm/kol-input-range.entry.js.map +1 -1
  446. package/dist/esm/kol-input-text.entry.js +1 -1
  447. package/dist/esm/kol-input-text.entry.js.map +1 -1
  448. package/dist/esm/kol-input.entry.js +1 -1
  449. package/dist/esm/kol-input.entry.js.map +1 -1
  450. package/dist/esm/kol-kolibri.entry.js +1 -1
  451. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  452. package/dist/esm/kol-link-button.entry.js +1 -1
  453. package/dist/esm/kol-link-button.entry.js.map +1 -1
  454. package/dist/esm/kol-link-group.entry.js +1 -1
  455. package/dist/esm/kol-link-group.entry.js.map +1 -1
  456. package/dist/esm/kol-link-wc.entry.js +1 -1
  457. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  458. package/dist/esm/kol-link.entry.js +1 -1
  459. package/dist/esm/kol-link.entry.js.map +1 -1
  460. package/dist/esm/kol-logo.entry.js +1 -1
  461. package/dist/esm/kol-logo.entry.js.map +1 -1
  462. package/dist/esm/kol-modal.entry.js +1 -1
  463. package/dist/esm/kol-modal.entry.js.map +1 -1
  464. package/dist/esm/kol-nav.entry.js +1 -1
  465. package/dist/esm/kol-nav.entry.js.map +1 -1
  466. package/dist/esm/kol-pagination.entry.js +1 -1
  467. package/dist/esm/kol-pagination.entry.js.map +1 -1
  468. package/dist/esm/kol-popover-wc.entry.js +1 -1
  469. package/dist/esm/kol-popover-wc.entry.js.map +1 -1
  470. package/dist/esm/kol-progress.entry.js +1 -1
  471. package/dist/esm/kol-progress.entry.js.map +1 -1
  472. package/dist/esm/kol-quote.entry.js +1 -1
  473. package/dist/esm/kol-quote.entry.js.map +1 -1
  474. package/dist/esm/kol-select.entry.js +1 -1
  475. package/dist/esm/kol-select.entry.js.map +1 -1
  476. package/dist/esm/kol-skip-nav.entry.js +1 -1
  477. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  478. package/dist/esm/kol-span-wc_2.entry.js +1 -1
  479. package/dist/esm/kol-span-wc_2.entry.js.map +1 -1
  480. package/dist/esm/kol-span.entry.js +1 -1
  481. package/dist/esm/kol-span.entry.js.map +1 -1
  482. package/dist/esm/kol-spin.entry.js +1 -1
  483. package/dist/esm/kol-spin.entry.js.map +1 -1
  484. package/dist/esm/kol-split-button.entry.js +1 -1
  485. package/dist/esm/kol-split-button.entry.js.map +1 -1
  486. package/dist/esm/kol-symbol.entry.js +1 -1
  487. package/dist/esm/kol-table.entry.js +1 -1
  488. package/dist/esm/kol-table.entry.js.map +1 -1
  489. package/dist/esm/kol-tabs.entry.js +1 -1
  490. package/dist/esm/kol-tabs.entry.js.map +1 -1
  491. package/dist/esm/kol-textarea.entry.js +1 -1
  492. package/dist/esm/kol-textarea.entry.js.map +1 -1
  493. package/dist/esm/kol-toast-container.entry.js +1 -1
  494. package/dist/esm/kol-toast.entry.js +1 -1
  495. package/dist/esm/kol-toast.entry.js.map +1 -1
  496. package/dist/esm/kol-version.entry.js +1 -1
  497. package/dist/esm/kol-version.entry.js.map +1 -1
  498. package/dist/esm/kolibri.js +1 -1
  499. package/dist/esm/kolibri.js.map +1 -1
  500. package/dist/esm/{label-485bdf3e.js → label-3290121e.js} +1 -1
  501. package/dist/esm/label-3290121e.js.map +1 -0
  502. package/dist/esm/loader.js +1 -1
  503. package/dist/esm/{open-01a637c6.js → open-a2fc514b.js} +1 -1
  504. package/dist/esm/open-a2fc514b.js.map +1 -0
  505. package/dist/esm/prop.validators-26c53e8e.js +4 -0
  506. package/dist/esm/prop.validators-26c53e8e.js.map +1 -0
  507. package/dist/esm/{rows-8affe873.js → rows-0e2fc05c.js} +1 -1
  508. package/dist/esm/rows-0e2fc05c.js.map +1 -0
  509. package/dist/esm/{show-65609af0.js → show-41755036.js} +1 -1
  510. package/dist/esm/show-41755036.js.map +1 -0
  511. package/dist/esm/{suggestions-292845f9.js → suggestions-cde6e476.js} +1 -1
  512. package/dist/esm/suggestions-cde6e476.js.map +1 -0
  513. package/dist/esm/{tab-index-ff0d1137.js → tab-index-b5f129ef.js} +1 -1
  514. package/dist/esm/tab-index-b5f129ef.js.map +1 -0
  515. package/dist/esm/{tooltip-align-33ca8332.js → tooltip-align-00b5589a.js} +1 -1
  516. package/dist/esm/tooltip-align-00b5589a.js.map +1 -0
  517. package/dist/esm/validation-bf8400da.js +4 -0
  518. package/dist/esm/validation-bf8400da.js.map +1 -0
  519. package/dist/esm/{validation-f7b0e97e.js → validation-e53d5d37.js} +1 -1
  520. package/dist/esm/validation-e53d5d37.js.map +1 -0
  521. package/dist/kolibri/{a11y.tipps-42463a61.js → a11y.tipps-b72d567f.js} +1 -1
  522. package/dist/kolibri/align-f09b70de.js +4 -0
  523. package/dist/kolibri/align-f09b70de.js.map +1 -0
  524. package/dist/kolibri/alignment-89a66c90.js +4 -0
  525. package/dist/kolibri/alignment-89a66c90.js.map +1 -0
  526. package/dist/kolibri/app-globals-239ecc91.js +4 -0
  527. package/dist/kolibri/app-globals-239ecc91.js.map +1 -0
  528. package/dist/kolibri/aria-current-982165c0.js +4 -0
  529. package/dist/kolibri/aria-current-982165c0.js.map +1 -0
  530. package/dist/kolibri/{associated.controller-4d29e8ed.js → associated.controller-e82ccadd.js} +1 -1
  531. package/dist/kolibri/associated.controller-e82ccadd.js.map +1 -0
  532. package/dist/kolibri/{color-4a54ac3f.js → color-a73f383b.js} +1 -1
  533. package/dist/kolibri/{color-4a54ac3f.js.map → color-a73f383b.js.map} +1 -1
  534. package/dist/kolibri/{controller-e18b0591.js → controller-35567a81.js} +1 -1
  535. package/dist/kolibri/{controller-7592ddb2.js → controller-6a323a54.js} +1 -1
  536. package/dist/kolibri/controller-6a323a54.js.map +1 -0
  537. package/dist/kolibri/{controller-3436387a.js → controller-9e65999c.js} +1 -1
  538. package/dist/kolibri/controller-9e65999c.js.map +1 -0
  539. package/dist/kolibri/{controller-34e3505b.js → controller-c0324c56.js} +1 -1
  540. package/dist/kolibri/controller-c0324c56.js.map +1 -0
  541. package/dist/kolibri/{controller-1aaf6ed9.js → controller-cc5560bb.js} +1 -1
  542. package/dist/kolibri/controller-cc5560bb.js.map +1 -0
  543. package/dist/kolibri/controller-icon-f6d5ee93.js +4 -0
  544. package/dist/kolibri/controller-icon-f6d5ee93.js.map +1 -0
  545. package/dist/kolibri/{custom-class-9a4f82a2.js → custom-class-de440fac.js} +1 -1
  546. package/dist/kolibri/custom-class-de440fac.js.map +1 -0
  547. package/dist/kolibri/{dev.utils-808b02af.js → dev.utils-41a91551.js} +1 -1
  548. package/dist/kolibri/dev.utils-41a91551.js.map +1 -0
  549. package/dist/kolibri/{devtools-6f72340c.js → devtools-dda97008.js} +1 -1
  550. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js +4 -0
  551. package/dist/kolibri/floating-ui.dom.esm-e435ab9f.js.map +1 -0
  552. package/dist/kolibri/has-closer-8ece4fc4.js +4 -0
  553. package/dist/kolibri/has-closer-8ece4fc4.js.map +1 -0
  554. package/dist/kolibri/hide-label-a37738db.js +4 -0
  555. package/dist/kolibri/hide-label-a37738db.js.map +1 -0
  556. package/dist/kolibri/{i18n-680a56fe.js → i18n-c10542e5.js} +1 -1
  557. package/dist/kolibri/{i18n-680a56fe.js.map → i18n-c10542e5.js.map} +1 -1
  558. package/dist/kolibri/{icons-6c80b022.js → icons-70fec733.js} +1 -1
  559. package/dist/kolibri/icons-70fec733.js.map +1 -0
  560. package/dist/kolibri/image-source-bc311528.js +4 -0
  561. package/dist/kolibri/image-source-bc311528.js.map +1 -0
  562. package/dist/kolibri/index-5a2fb9e0.js +4 -0
  563. package/dist/kolibri/index-5a2fb9e0.js.map +1 -0
  564. package/dist/kolibri/index-5dfe6d77.js +5 -0
  565. package/dist/kolibri/index-5dfe6d77.js.map +1 -0
  566. package/dist/kolibri/index-b580aa97.js +4 -0
  567. package/dist/kolibri/index-b580aa97.js.map +1 -0
  568. package/dist/kolibri/index.esm.js +1 -1
  569. package/dist/kolibri/kol-abbr.entry.js +1 -1
  570. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  571. package/dist/kolibri/kol-accordion.entry.js +1 -1
  572. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  573. package/dist/kolibri/kol-alert-wc_3.entry.js +1 -1
  574. package/dist/kolibri/kol-alert-wc_3.entry.js.map +1 -1
  575. package/dist/kolibri/kol-alert.entry.js +1 -1
  576. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  577. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  578. package/dist/kolibri/kol-avatar.entry.js +1 -1
  579. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  580. package/dist/kolibri/kol-badge.entry.js +1 -1
  581. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  582. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  583. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  584. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  585. package/dist/kolibri/kol-button-group.entry.js +1 -1
  586. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  587. package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
  588. package/dist/kolibri/kol-button-link.entry.js +1 -1
  589. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  590. package/dist/kolibri/kol-button.entry.js +1 -1
  591. package/dist/kolibri/kol-button.entry.js.map +1 -1
  592. package/dist/kolibri/kol-card.entry.js +1 -1
  593. package/dist/kolibri/kol-card.entry.js.map +1 -1
  594. package/dist/kolibri/kol-details.entry.js +1 -1
  595. package/dist/kolibri/kol-details.entry.js.map +1 -1
  596. package/dist/kolibri/kol-form.entry.js +1 -1
  597. package/dist/kolibri/kol-heading.entry.js +1 -1
  598. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  599. package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
  600. package/dist/kolibri/kol-icon-font-awesome.entry.js.map +1 -1
  601. package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
  602. package/dist/kolibri/kol-icon-icofont.entry.js.map +1 -1
  603. package/dist/kolibri/kol-icon.entry.js +1 -1
  604. package/dist/kolibri/kol-image.entry.js +1 -1
  605. package/dist/kolibri/kol-image.entry.js.map +1 -1
  606. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  607. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  608. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  609. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  610. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  611. package/dist/kolibri/kol-input-color.entry.js +1 -1
  612. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  613. package/dist/kolibri/kol-input-date.entry.js +1 -1
  614. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  615. package/dist/kolibri/kol-input-email.entry.js +1 -1
  616. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  617. package/dist/kolibri/kol-input-file.entry.js +1 -1
  618. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  619. package/dist/kolibri/kol-input-number.entry.js +1 -1
  620. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  621. package/dist/kolibri/kol-input-password.entry.js +1 -1
  622. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  623. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  624. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  625. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  626. package/dist/kolibri/kol-input-range.entry.js +1 -1
  627. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  628. package/dist/kolibri/kol-input-text.entry.js +1 -1
  629. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  630. package/dist/kolibri/kol-input.entry.js +1 -1
  631. package/dist/kolibri/kol-input.entry.js.map +1 -1
  632. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  633. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  634. package/dist/kolibri/kol-link-button.entry.js +1 -1
  635. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  636. package/dist/kolibri/kol-link-group.entry.js +1 -1
  637. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  638. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  639. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  640. package/dist/kolibri/kol-link.entry.js +1 -1
  641. package/dist/kolibri/kol-link.entry.js.map +1 -1
  642. package/dist/kolibri/kol-logo.entry.js +1 -1
  643. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  644. package/dist/kolibri/kol-modal.entry.js +1 -1
  645. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  646. package/dist/kolibri/kol-nav.entry.js +1 -1
  647. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  648. package/dist/kolibri/kol-pagination.entry.js +1 -1
  649. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  650. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  651. package/dist/kolibri/kol-popover-wc.entry.js.map +1 -1
  652. package/dist/kolibri/kol-progress.entry.js +1 -1
  653. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  654. package/dist/kolibri/kol-quote.entry.js +1 -1
  655. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  656. package/dist/kolibri/kol-select.entry.js +1 -1
  657. package/dist/kolibri/kol-select.entry.js.map +1 -1
  658. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  659. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  660. package/dist/kolibri/kol-span-wc_2.entry.js +1 -1
  661. package/dist/kolibri/kol-span-wc_2.entry.js.map +1 -1
  662. package/dist/kolibri/kol-span.entry.js +1 -1
  663. package/dist/kolibri/kol-span.entry.js.map +1 -1
  664. package/dist/kolibri/kol-spin.entry.js +1 -1
  665. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  666. package/dist/kolibri/kol-split-button.entry.js +1 -1
  667. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  668. package/dist/kolibri/kol-symbol.entry.js +1 -1
  669. package/dist/kolibri/kol-table.entry.js +1 -1
  670. package/dist/kolibri/kol-table.entry.js.map +1 -1
  671. package/dist/kolibri/kol-tabs.entry.js +1 -1
  672. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  673. package/dist/kolibri/kol-textarea.entry.js +1 -1
  674. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  675. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  676. package/dist/kolibri/kol-toast.entry.js +1 -1
  677. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  678. package/dist/kolibri/kol-version.entry.js +1 -1
  679. package/dist/kolibri/kol-version.entry.js.map +1 -1
  680. package/dist/kolibri/kolibri.esm.js +1 -1
  681. package/dist/kolibri/kolibri.esm.js.map +1 -1
  682. package/dist/kolibri/label-3290121e.js +4 -0
  683. package/dist/kolibri/label-3290121e.js.map +1 -0
  684. package/dist/kolibri/open-a2fc514b.js +4 -0
  685. package/dist/kolibri/open-a2fc514b.js.map +1 -0
  686. package/dist/kolibri/{prop.validators-8dc620b0.js → prop.validators-26c53e8e.js} +1 -1
  687. package/dist/kolibri/prop.validators-26c53e8e.js.map +1 -0
  688. package/dist/kolibri/rows-0e2fc05c.js +4 -0
  689. package/dist/kolibri/rows-0e2fc05c.js.map +1 -0
  690. package/dist/kolibri/show-41755036.js +4 -0
  691. package/dist/kolibri/show-41755036.js.map +1 -0
  692. package/dist/kolibri/suggestions-cde6e476.js +4 -0
  693. package/dist/kolibri/suggestions-cde6e476.js.map +1 -0
  694. package/dist/kolibri/{tab-index-ff0d1137.js → tab-index-b5f129ef.js} +1 -1
  695. package/dist/kolibri/tab-index-b5f129ef.js.map +1 -0
  696. package/dist/kolibri/tooltip-align-00b5589a.js +4 -0
  697. package/dist/kolibri/tooltip-align-00b5589a.js.map +1 -0
  698. package/dist/kolibri/validation-bf8400da.js +4 -0
  699. package/dist/kolibri/validation-bf8400da.js.map +1 -0
  700. package/dist/kolibri/{validation-f7b0e97e.js → validation-e53d5d37.js} +1 -1
  701. package/dist/kolibri/validation-e53d5d37.js.map +1 -0
  702. package/dist/types/components/@deprecated/input/controller-icon.d.ts +1 -1
  703. package/dist/types/components/@deprecated/input/controller.d.ts +1 -1
  704. package/dist/types/components/@deprecated/input/types-icon.d.ts +1 -1
  705. package/dist/types/components/@deprecated/input/types.d.ts +1 -1
  706. package/dist/types/components/@else/all/component.d.ts +1 -1
  707. package/dist/types/components/abbr/types.d.ts +1 -1
  708. package/dist/types/components/accordion/types.d.ts +1 -1
  709. package/dist/types/components/alert/types.d.ts +1 -1
  710. package/dist/types/components/avatar/types.d.ts +1 -1
  711. package/dist/types/components/badge/types.d.ts +1 -1
  712. package/dist/types/components/breadcrumb/types.d.ts +1 -1
  713. package/dist/types/components/button/types.d.ts +1 -1
  714. package/dist/types/components/button-group/types.d.ts +1 -1
  715. package/dist/types/components/button-link/types.d.ts +1 -1
  716. package/dist/types/components/button-link-text-switch/types.d.ts +1 -1
  717. package/dist/types/components/card/types.d.ts +1 -1
  718. package/dist/types/components/details/types.d.ts +1 -1
  719. package/dist/types/components/form/types.d.ts +1 -1
  720. package/dist/types/components/heading/types.d.ts +1 -1
  721. package/dist/types/components/heading/validation.d.ts +1 -1
  722. package/dist/types/components/icon/types.d.ts +1 -1
  723. package/dist/types/components/icon-font-awesome/component.d.ts +1 -1
  724. package/dist/types/components/icon-icofont/component.d.ts +1 -1
  725. package/dist/types/components/image/types.d.ts +1 -1
  726. package/dist/types/components/indented-text/types.d.ts +1 -1
  727. package/dist/types/components/input/types.d.ts +1 -1
  728. package/dist/types/components/input-adapter-leanup/associated.controller.d.ts +1 -1
  729. package/dist/types/components/input-adapter-leanup/controller.d.ts +1 -1
  730. package/dist/types/components/input-adapter-leanup/types.d.ts +1 -1
  731. package/dist/types/components/input-checkbox/component.d.ts +0 -1
  732. package/dist/types/components/input-checkbox/controller.d.ts +1 -1
  733. package/dist/types/components/input-checkbox/types.d.ts +1 -1
  734. package/dist/types/components/input-color/controller.d.ts +1 -1
  735. package/dist/types/components/input-color/types.d.ts +1 -1
  736. package/dist/types/components/input-date/controller.d.ts +1 -1
  737. package/dist/types/components/input-date/types.d.ts +1 -1
  738. package/dist/types/components/input-email/controller.d.ts +1 -1
  739. package/dist/types/components/input-email/types.d.ts +1 -1
  740. package/dist/types/components/input-file/controller.d.ts +1 -1
  741. package/dist/types/components/input-file/types.d.ts +1 -1
  742. package/dist/types/components/input-number/controller.d.ts +1 -1
  743. package/dist/types/components/input-number/types.d.ts +1 -1
  744. package/dist/types/components/input-password/controller.d.ts +1 -1
  745. package/dist/types/components/input-password/types.d.ts +1 -1
  746. package/dist/types/components/input-radio/controller.d.ts +1 -1
  747. package/dist/types/components/input-radio/types.d.ts +1 -1
  748. package/dist/types/components/input-range/controller.d.ts +1 -1
  749. package/dist/types/components/input-range/types.d.ts +1 -1
  750. package/dist/types/components/input-text/controller.d.ts +1 -1
  751. package/dist/types/components/input-text/types.d.ts +1 -1
  752. package/dist/types/components/kolibri/types.d.ts +1 -1
  753. package/dist/types/components/link/types.d.ts +1 -1
  754. package/dist/types/components/link-button/types.d.ts +1 -1
  755. package/dist/types/components/link-group/types.d.ts +1 -1
  756. package/dist/types/components/logo/types.d.ts +1 -1
  757. package/dist/types/components/modal/types.d.ts +1 -1
  758. package/dist/types/components/nav/types.d.ts +1 -1
  759. package/dist/types/components/nav/validation.d.ts +1 -1
  760. package/dist/types/components/pagination/types.d.ts +1 -1
  761. package/dist/types/components/popover/types.d.ts +1 -1
  762. package/dist/types/components/progress/types.d.ts +1 -1
  763. package/dist/types/components/quote/types.d.ts +1 -1
  764. package/dist/types/components/select/controller.d.ts +1 -1
  765. package/dist/types/components/select/types.d.ts +1 -1
  766. package/dist/types/components/skip-nav/types.d.ts +1 -1
  767. package/dist/types/components/span/types.d.ts +1 -1
  768. package/dist/types/components/spin/types.d.ts +1 -1
  769. package/dist/types/components/split-button/types.d.ts +1 -1
  770. package/dist/types/components/symbol/types.d.ts +1 -1
  771. package/dist/types/components/table/types.d.ts +1 -1
  772. package/dist/types/components/tabs/types.d.ts +1 -1
  773. package/dist/types/components/textarea/controller.d.ts +1 -1
  774. package/dist/types/components/textarea/types.d.ts +1 -1
  775. package/dist/types/components/toast/types.d.ts +1 -1
  776. package/dist/types/components/toaster/types.d.ts +1 -1
  777. package/dist/types/components/tooltip/types.d.ts +1 -1
  778. package/dist/types/components/version/types.d.ts +1 -1
  779. package/dist/types/core/declare.d.ts +1 -1
  780. package/dist/types/core/i18n.d.ts +1 -1
  781. package/dist/types/core/index.d.ts +1 -1
  782. package/dist/types/i18n.d.ts +1 -1
  783. package/dist/types/types/button-link-text.d.ts +1 -1
  784. package/dist/types/types/props/adjust-height.d.ts +1 -1
  785. package/dist/types/types/props/alert.d.ts +1 -1
  786. package/dist/types/types/props/align.d.ts +1 -1
  787. package/dist/types/types/props/alternative-button-link-role.d.ts +1 -1
  788. package/dist/types/types/props/aria-controls.d.ts +1 -1
  789. package/dist/types/types/props/aria-current.d.ts +1 -1
  790. package/dist/types/types/props/aria-expanded.d.ts +1 -1
  791. package/dist/types/types/props/aria-selected.d.ts +1 -1
  792. package/dist/types/types/props/button-callbacks.d.ts +1 -1
  793. package/dist/types/types/props/button-type.d.ts +1 -1
  794. package/dist/types/types/props/button-variant.d.ts +1 -1
  795. package/dist/types/types/props/checked.d.ts +1 -1
  796. package/dist/types/types/props/collapsible.d.ts +1 -1
  797. package/dist/types/types/props/color.d.ts +1 -1
  798. package/dist/types/types/props/custom-class.d.ts +1 -1
  799. package/dist/types/types/props/disabled.d.ts +1 -1
  800. package/dist/types/types/props/download.d.ts +1 -1
  801. package/dist/types/types/props/has-closer.d.ts +1 -1
  802. package/dist/types/types/props/has-compact-button.d.ts +1 -1
  803. package/dist/types/types/props/has-counter.d.ts +1 -1
  804. package/dist/types/types/props/has-footer.d.ts +1 -1
  805. package/dist/types/types/props/hide-error.d.ts +1 -1
  806. package/dist/types/types/props/hide-label.d.ts +1 -1
  807. package/dist/types/types/props/href.d.ts +1 -1
  808. package/dist/types/types/props/icons.d.ts +1 -1
  809. package/dist/types/types/props/id.d.ts +1 -1
  810. package/dist/types/types/props/image-source.d.ts +1 -1
  811. package/dist/types/types/props/indeterminate.d.ts +1 -1
  812. package/dist/types/types/props/label.d.ts +1 -1
  813. package/dist/types/types/props/link-on-callbacks.d.ts +1 -1
  814. package/dist/types/types/props/link-target.d.ts +1 -1
  815. package/dist/types/types/props/max.d.ts +1 -1
  816. package/dist/types/types/props/multiple.d.ts +1 -1
  817. package/dist/types/types/props/name.d.ts +1 -1
  818. package/dist/types/types/props/open.d.ts +1 -1
  819. package/dist/types/types/props/options.d.ts +1 -1
  820. package/dist/types/types/props/read-only.d.ts +1 -1
  821. package/dist/types/types/props/required.d.ts +1 -1
  822. package/dist/types/types/props/rows.d.ts +1 -1
  823. package/dist/types/types/props/show.d.ts +1 -1
  824. package/dist/types/types/props/stealth.d.ts +1 -1
  825. package/dist/types/types/props/suggestions.d.ts +1 -1
  826. package/dist/types/types/props/tooltip-align.d.ts +1 -1
  827. package/dist/types/types/props/touched.d.ts +1 -1
  828. package/dist/types/types/props/variant/spin.d.ts +1 -1
  829. package/dist/types/utils/dev.utils.d.ts +1 -2
  830. package/dist/types/utils/prop.validators.d.ts +3 -3
  831. package/dist/types/utils/validators/alignment.d.ts +1 -1
  832. package/dist/types/utils/validators/loading.d.ts +1 -1
  833. package/dist/types/utils/validators/tab-index.d.ts +1 -1
  834. package/doc/toaster.md +6 -0
  835. package/doc/tooltip.md +11 -0
  836. package/package.json +1 -1
  837. package/dist/cjs/align-3d31e5d6.js +0 -4
  838. package/dist/cjs/align-3d31e5d6.js.map +0 -1
  839. package/dist/cjs/alignment-c5614ef1.js.map +0 -1
  840. package/dist/cjs/app-globals-5d8470ed.js +0 -4
  841. package/dist/cjs/app-globals-5d8470ed.js.map +0 -1
  842. package/dist/cjs/aria-current-c3f2bebe.js.map +0 -1
  843. package/dist/cjs/associated.controller-56d9e762.js.map +0 -1
  844. package/dist/cjs/controller-8ae79249.js.map +0 -1
  845. package/dist/cjs/controller-9a0673b6.js.map +0 -1
  846. package/dist/cjs/controller-b091f60e.js.map +0 -1
  847. package/dist/cjs/controller-e3a82ff0.js.map +0 -1
  848. package/dist/cjs/controller-icon-d1b86ea5.js.map +0 -1
  849. package/dist/cjs/custom-class-5acfb25f.js.map +0 -1
  850. package/dist/cjs/dev.utils-c29072e2.js.map +0 -1
  851. package/dist/cjs/floating-ui.dom.esm-079798c6.js +0 -4
  852. package/dist/cjs/floating-ui.dom.esm-079798c6.js.map +0 -1
  853. package/dist/cjs/has-closer-ac74a785.js +0 -4
  854. package/dist/cjs/has-closer-ac74a785.js.map +0 -1
  855. package/dist/cjs/hide-label-badb4945.js +0 -4
  856. package/dist/cjs/hide-label-badb4945.js.map +0 -1
  857. package/dist/cjs/icons-b09e9f57.js.map +0 -1
  858. package/dist/cjs/image-source-db0ac5db.js +0 -4
  859. package/dist/cjs/image-source-db0ac5db.js.map +0 -1
  860. package/dist/cjs/index-0d2cfb70.js +0 -4
  861. package/dist/cjs/index-0d2cfb70.js.map +0 -1
  862. package/dist/cjs/index-a2400b65.js +0 -5
  863. package/dist/cjs/index-a2400b65.js.map +0 -1
  864. package/dist/cjs/index-f8b26787.js +0 -4
  865. package/dist/cjs/index-f8b26787.js.map +0 -1
  866. package/dist/cjs/label-03b63bfd.js.map +0 -1
  867. package/dist/cjs/open-94bf5fc5.js +0 -4
  868. package/dist/cjs/open-94bf5fc5.js.map +0 -1
  869. package/dist/cjs/prop.validators-1f99e6ff.js.map +0 -1
  870. package/dist/cjs/rows-d098de97.js +0 -4
  871. package/dist/cjs/rows-d098de97.js.map +0 -1
  872. package/dist/cjs/show-f96935a0.js +0 -4
  873. package/dist/cjs/show-f96935a0.js.map +0 -1
  874. package/dist/cjs/suggestions-879c67e1.js.map +0 -1
  875. package/dist/cjs/tab-index-96b0307a.js.map +0 -1
  876. package/dist/cjs/tooltip-align-fe56af06.js.map +0 -1
  877. package/dist/cjs/validation-5c13ca37.js.map +0 -1
  878. package/dist/cjs/validation-f1cde09d.js.map +0 -1
  879. package/dist/esm/align-6ce8ea2d.js.map +0 -1
  880. package/dist/esm/alignment-b3613da2.js.map +0 -1
  881. package/dist/esm/app-globals-4f3a6f5e.js +0 -4
  882. package/dist/esm/app-globals-4f3a6f5e.js.map +0 -1
  883. package/dist/esm/aria-current-01b90ab1.js.map +0 -1
  884. package/dist/esm/associated.controller-4d29e8ed.js.map +0 -1
  885. package/dist/esm/controller-1aaf6ed9.js.map +0 -1
  886. package/dist/esm/controller-3436387a.js.map +0 -1
  887. package/dist/esm/controller-34e3505b.js.map +0 -1
  888. package/dist/esm/controller-7592ddb2.js.map +0 -1
  889. package/dist/esm/controller-icon-e49f46ec.js.map +0 -1
  890. package/dist/esm/custom-class-9a4f82a2.js.map +0 -1
  891. package/dist/esm/dev.utils-808b02af.js.map +0 -1
  892. package/dist/esm/floating-ui.dom.esm-dedb9a02.js +0 -4
  893. package/dist/esm/floating-ui.dom.esm-dedb9a02.js.map +0 -1
  894. package/dist/esm/has-closer-e33eb81d.js.map +0 -1
  895. package/dist/esm/hide-label-c1cd274b.js.map +0 -1
  896. package/dist/esm/icons-6c80b022.js.map +0 -1
  897. package/dist/esm/image-source-520ea2c2.js.map +0 -1
  898. package/dist/esm/index-3bbb36da.js +0 -4
  899. package/dist/esm/index-3bbb36da.js.map +0 -1
  900. package/dist/esm/index-d56bfd0f.js +0 -4
  901. package/dist/esm/index-d56bfd0f.js.map +0 -1
  902. package/dist/esm/index-e9d20d00.js +0 -5
  903. package/dist/esm/index-e9d20d00.js.map +0 -1
  904. package/dist/esm/label-485bdf3e.js.map +0 -1
  905. package/dist/esm/open-01a637c6.js.map +0 -1
  906. package/dist/esm/prop.validators-8dc620b0.js +0 -4
  907. package/dist/esm/prop.validators-8dc620b0.js.map +0 -1
  908. package/dist/esm/rows-8affe873.js.map +0 -1
  909. package/dist/esm/show-65609af0.js.map +0 -1
  910. package/dist/esm/suggestions-292845f9.js.map +0 -1
  911. package/dist/esm/tab-index-ff0d1137.js.map +0 -1
  912. package/dist/esm/tooltip-align-33ca8332.js.map +0 -1
  913. package/dist/esm/validation-32870760.js +0 -4
  914. package/dist/esm/validation-32870760.js.map +0 -1
  915. package/dist/esm/validation-f7b0e97e.js.map +0 -1
  916. package/dist/kolibri/align-6ce8ea2d.js +0 -4
  917. package/dist/kolibri/align-6ce8ea2d.js.map +0 -1
  918. package/dist/kolibri/alignment-b3613da2.js +0 -4
  919. package/dist/kolibri/alignment-b3613da2.js.map +0 -1
  920. package/dist/kolibri/app-globals-4f3a6f5e.js +0 -4
  921. package/dist/kolibri/app-globals-4f3a6f5e.js.map +0 -1
  922. package/dist/kolibri/aria-current-01b90ab1.js +0 -4
  923. package/dist/kolibri/aria-current-01b90ab1.js.map +0 -1
  924. package/dist/kolibri/associated.controller-4d29e8ed.js.map +0 -1
  925. package/dist/kolibri/controller-1aaf6ed9.js.map +0 -1
  926. package/dist/kolibri/controller-3436387a.js.map +0 -1
  927. package/dist/kolibri/controller-34e3505b.js.map +0 -1
  928. package/dist/kolibri/controller-7592ddb2.js.map +0 -1
  929. package/dist/kolibri/controller-icon-e49f46ec.js +0 -4
  930. package/dist/kolibri/controller-icon-e49f46ec.js.map +0 -1
  931. package/dist/kolibri/custom-class-9a4f82a2.js.map +0 -1
  932. package/dist/kolibri/dev.utils-808b02af.js.map +0 -1
  933. package/dist/kolibri/floating-ui.dom.esm-dedb9a02.js +0 -4
  934. package/dist/kolibri/floating-ui.dom.esm-dedb9a02.js.map +0 -1
  935. package/dist/kolibri/has-closer-e33eb81d.js +0 -4
  936. package/dist/kolibri/has-closer-e33eb81d.js.map +0 -1
  937. package/dist/kolibri/hide-label-c1cd274b.js +0 -4
  938. package/dist/kolibri/hide-label-c1cd274b.js.map +0 -1
  939. package/dist/kolibri/icons-6c80b022.js.map +0 -1
  940. package/dist/kolibri/image-source-520ea2c2.js +0 -4
  941. package/dist/kolibri/image-source-520ea2c2.js.map +0 -1
  942. package/dist/kolibri/index-3bbb36da.js +0 -4
  943. package/dist/kolibri/index-3bbb36da.js.map +0 -1
  944. package/dist/kolibri/index-d56bfd0f.js +0 -4
  945. package/dist/kolibri/index-d56bfd0f.js.map +0 -1
  946. package/dist/kolibri/index-e9d20d00.js +0 -5
  947. package/dist/kolibri/index-e9d20d00.js.map +0 -1
  948. package/dist/kolibri/label-485bdf3e.js +0 -4
  949. package/dist/kolibri/label-485bdf3e.js.map +0 -1
  950. package/dist/kolibri/open-01a637c6.js +0 -4
  951. package/dist/kolibri/open-01a637c6.js.map +0 -1
  952. package/dist/kolibri/prop.validators-8dc620b0.js.map +0 -1
  953. package/dist/kolibri/rows-8affe873.js +0 -4
  954. package/dist/kolibri/rows-8affe873.js.map +0 -1
  955. package/dist/kolibri/show-65609af0.js +0 -4
  956. package/dist/kolibri/show-65609af0.js.map +0 -1
  957. package/dist/kolibri/suggestions-292845f9.js +0 -4
  958. package/dist/kolibri/suggestions-292845f9.js.map +0 -1
  959. package/dist/kolibri/tab-index-ff0d1137.js.map +0 -1
  960. package/dist/kolibri/tooltip-align-33ca8332.js +0 -4
  961. package/dist/kolibri/tooltip-align-33ca8332.js.map +0 -1
  962. package/dist/kolibri/validation-32870760.js +0 -4
  963. package/dist/kolibri/validation-32870760.js.map +0 -1
  964. package/dist/kolibri/validation-f7b0e97e.js.map +0 -1
  965. /package/dist/kolibri/{a11y.tipps-42463a61.js.map → a11y.tipps-b72d567f.js.map} +0 -0
  966. /package/dist/kolibri/{controller-e18b0591.js.map → controller-35567a81.js.map} +0 -0
  967. /package/dist/kolibri/{devtools-6f72340c.js.map → devtools-dda97008.js.map} +0 -0
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{i as o}from"./icons-6c80b022.js";import{o as s,p as t,w as i}from"./prop.validators-8dc620b0.js";import{i as r}from"./reuse-d79ab469.js";import{I as e}from"./controller-34e3505b.js";const c=(o,t)=>{const s=o;"object"==typeof s&&null!==s&&(r(s.right,1)&&(s.right={icon:s.right}),r(s.left,1)&&(s.left={icon:s.left}),t.set("_icons",s))};class a extends e{constructor(o,t,s){super(o,t,s),this.component=o}validateIcon(o){this.validateIcons(o)}validateIcons(e){s(e,(()=>{try{e=t(e)}catch(o){}i(this.component,"_icons",(t=>"object"==typeof t&&null!==t&&(r(t.left,1)||o(t.left)||r(t.right,1)||o(t.right))),new Set(["KoliBriHorizontalIcon"]),e,{hooks:{beforePatch:c},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons||this.component._icon)}}export{a as I};
@@ -1 +0,0 @@
1
- {"version":3,"names":["beforePatchIcons","value","nextState","icons","isString","right","icon","left","set","InputIconController","InputController","constructor","component","name","host","super","this","validateIcon","validateIcons","objectObjectHandler","parseJson","e","watchValidator","isIcon","Set","hooks","beforePatch","required","componentWillLoad","_icons","_icon"],"sources":["src/components/@deprecated/input/controller-icon.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { Stringified } from '../../../types/common';\nimport { KoliBriHorizontalIcons } from '../../../types/icons';\nimport { isIcon } from '../../../types/props/icons';\nimport { objectObjectHandler, parseJson, watchValidator } from '../../../utils/prop.validators';\nimport { isString } from '../../../utils/validator';\nimport { InputController } from './controller';\nimport { Props, Watches } from './types-icon';\n\nconst beforePatchIcons = (value: unknown, nextState: Map<string, unknown>): void => {\n\tconst icons = value as KoliBriHorizontalIcons;\n\tif (typeof icons === 'object' && icons !== null) {\n\t\tif (isString(icons.right, 1)) {\n\t\t\ticons.right = { icon: icons.right as string };\n\t\t}\n\t\tif (isString(icons.left, 1)) {\n\t\t\ticons.left = { icon: icons.left as string };\n\t\t}\n\t\tnextState.set('_icons', icons);\n\t}\n};\n\nexport class InputIconController 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\tpublic validateIcon(value?: Stringified<KoliBriHorizontalIcons>): void {\n\t\tthis.validateIcons(value);\n\t}\n\n\tpublic validateIcons(value?: Stringified<KoliBriHorizontalIcons>): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<KoliBriHorizontalIcons>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\twatchValidator(\n\t\t\t\tthis.component,\n\t\t\t\t'_icons',\n\t\t\t\t(value): boolean => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\ttypeof value === 'object' && value !== null && (isString(value.left, 1) || isIcon(value.left) || isString(value.right, 1) || isIcon(value.right))\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tnew Set(['KoliBriHorizontalIcon']),\n\t\t\t\tvalue,\n\t\t\t\t{\n\t\t\t\t\thooks: {\n\t\t\t\t\t\tbeforePatch: beforePatchIcons,\n\t\t\t\t\t},\n\t\t\t\t\trequired: true,\n\t\t\t\t}\n\t\t\t);\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateIcons(this.component._icons || this.component._icon);\n\t}\n}\n"],"mappings":";;;6LAUA,MAAMA,EAAmB,CAACC,EAAgBC,KACzC,MAAMC,EAAQF,EACd,UAAWE,IAAU,UAAYA,IAAU,KAAM,CAChD,GAAIC,EAASD,EAAME,MAAO,GAAI,CAC7BF,EAAME,MAAQ,CAAEC,KAAMH,EAAME,M,CAE7B,GAAID,EAASD,EAAMI,KAAM,GAAI,CAC5BJ,EAAMI,KAAO,CAAED,KAAMH,EAAMI,K,CAE5BL,EAAUM,IAAI,SAAUL,E,SAIbM,UAA4BC,EAGxC,WAAAC,CAAmBC,EAA8CC,EAAcC,GAC9EC,MAAMH,EAAWC,EAAMC,GACvBE,KAAKJ,UAAYA,C,CAGX,YAAAK,CAAahB,GACnBe,KAAKE,cAAcjB,E,CAGb,aAAAiB,CAAcjB,GACpBkB,EAAoBlB,GAAO,KAC1B,IACCA,EAAQmB,EAAkCnB,E,CAEzC,MAAOoB,G,CAGTC,EACCN,KAAKJ,UACL,UACCX,UAEQA,IAAU,UAAYA,IAAU,OAASG,EAASH,EAAMM,KAAM,IAAMgB,EAAOtB,EAAMM,OAASH,EAASH,EAAMI,MAAO,IAAMkB,EAAOtB,EAAMI,SAG5I,IAAImB,IAAI,CAAC,0BACTvB,EACA,CACCwB,MAAO,CACNC,YAAa1B,GAEd2B,SAAU,MAEX,G,CAII,iBAAAC,GACNb,MAAMa,oBACNZ,KAAKE,cAAcF,KAAKJ,UAAUiB,QAAUb,KAAKJ,UAAUkB,M"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["validateButtonVariant","component","value","watchValidator","Set","defaultValue","validateCustomClass","watchString","undefined"],"sources":["src/types/props/button-variant.ts","src/types/props/custom-class.ts"],"sourcesContent":["/* types */\nimport { Generic } from '@a11y-ui/core';\nimport { watchValidator } from '../../utils/prop.validators';\n\nexport type ButtonVariantPropType = 'primary' | 'secondary' | 'normal' | 'tertiary' | 'danger' | 'ghost' | 'custom';\n\n/**\n * Defines which variant should be used for presentation.\n */\nexport type PropButtonVariant = {\n\tvariant: ButtonVariantPropType;\n};\n\n/* validator */\nexport const validateButtonVariant = (component: Generic.Element.Component, value?: ButtonVariantPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t`_variant`,\n\t\t(value) => value === 'primary' || value === 'secondary' || value === 'normal' || value === 'danger' || value === 'ghost' || value === 'custom',\n\t\tnew Set(['KoliBriButtonVariant {primary, secondary, normal, danger, ghost, custom}']),\n\t\tvalue,\n\t\t{\n\t\t\tdefaultValue: 'normal',\n\t\t}\n\t);\n};\n","import { Generic } from '@a11y-ui/core';\n\nimport { watchString } from '../../utils/prop.validators';\n\n/* types */\nexport type CustomClassPropType = string;\n\n/**\n * Defines the custom class attribute.\n */\nexport type PropCustomClass = {\n\tcustomClass: CustomClassPropType;\n};\n\n/* validator */\nexport const validateCustomClass = (component: Generic.Element.Component, value?: CustomClassPropType): void => {\n\twatchString(component, '_customClass', value, {\n\t\tdefaultValue: undefined,\n\t});\n};\n"],"mappings":";;;+DAcaA,EAAwB,CAACC,EAAsCC,KAC3EC,EACCF,EACA,YACCC,GAAUA,IAAU,WAAaA,IAAU,aAAeA,IAAU,UAAYA,IAAU,UAAYA,IAAU,SAAWA,IAAU,UACtI,IAAIE,IAAI,CAAC,6EACTF,EACA,CACCG,aAAc,UAEf,E,MCTWC,EAAsB,CAACL,EAAsCC,KACzEK,EAAYN,EAAW,eAAgBC,EAAO,CAC7CG,aAAcG,WACb,S"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["ModalService","constructor","this","lockedElements","Map","modalStack","lockElement","htmlElement","tabIndex","getAttribute","HTMLAnchorElement","HTMLButtonElement","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","dataset","kolModal","undefined","set","setAttribute","style","userSelect","unlockElement","value","removeAttribute","delete","unlockLockedElements","forEach","bind","lockFocus","hostElement","excludeElement","HTMLElement","ShadowRoot","shadowRoot","i","children","length","renderModalIfExists","activeElement","has","get","timeout","setTimeout","clearTimeout","focus","size","modalKeys","Array","from","keys","modalRef","_value","display","getDocument","body","maxHeight","overflow","openModal","Log","warn","closeModal","_a","WINDOW","DOCUMENT","configKoliBri","window","Window","document","Document","console","getWindow","META_CONFIG","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","getExperimentalMode","getColorContrastAnalysis","mapToArray","msg","isArray","handleClassifier","classifier","shield","label","getShield","options","overwriteStyle","debug","forceLog","info","trace","error","Error","initMeta","meta","querySelector","hasAttribute","includes","KoliBri","getKoliBri","initKoliBri","Modal","Object","defineProperty","renderDevAdvice","adviceShown","nonce","Math","floor","random","toString","processEnv"],"sources":["src/components/modal/service.ts","src/utils/dev.utils.ts"],"sourcesContent":["import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t}\n\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","import { ModalService } from '../components/modal/service';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\nlet DEV_MODE: boolean | null = null;\nlet EXPERIMENTAL_MODE: boolean | null = null;\nlet COLOR_CONTRAST_ANALYSIS: boolean | null = null;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nlet KoliBri: Record<string, unknown> | null = null;\nexport const getKoliBri = (): Record<string, unknown> => KoliBri || {};\nexport const initKoliBri = (): void => {\n\tif (KoliBri === null) {\n\t\tKoliBri = getWindow().KoliBri || {};\n\t\tconst Modal = new ModalService();\n\t\tObject.defineProperty(KoliBri, 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tinitMeta();\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 1.7.6\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { KoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getWindow().KoliBri === undefined) {\n\t\tObject.defineProperty(window, 'KoliBri', {\n\t\t\tget: function () {\n\t\t\t\treturn KoliBri;\n\t\t\t},\n\t\t});\n\t}\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(KoliBri, 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- const t=Math.min,n=Math.max,e=Math.round,o=Math.floor,i=t=>({x:t,y:t}),r={left:"right",right:"left",bottom:"top",top:"bottom"},s={start:"end",end:"start"};function c(e,o,i){return n(e,t(o,i))}function l(t,e){return"function"==typeof t?t(e):t}function f(t){return t.split("-")[0]}function a(t){return t.split("-")[1]}function u(t){return"x"===t?"y":"x"}function d(t){return"y"===t?"height":"width"}function m(t){return["top","bottom"].includes(f(t))?"y":"x"}function y(t){return u(m(t))}function p(t,e,n){void 0===n&&(n=!1);const o=a(t),i=y(t),r=d(i);let l="x"===i?o===(n?"end":"start")?"right":"left":"start"===o?"bottom":"top";return e.reference[r]>e.floating[r]&&(l=v(l)),[l,v(l)]}function h(t){const e=v(t);return[x(t),e,x(e)]}function x(t){return t.replace(/start|end/g,(t=>s[t]))}function g(t,e,n){const o=["left","right"],i=["right","left"],r=["top","bottom"],l=["bottom","top"];switch(t){case"top":case"bottom":return n?e?i:o:e?o:i;case"left":case"right":return e?r:l;default:return[]}}function w(t,e,n,o){const i=a(t);let r=g(f(t),"start"===n,o);return i&&(r=r.map((t=>t+"-"+i)),e&&(r=r.concat(r.map(x)))),r}function v(t){return t.replace(/left|right|bottom|top/g,(t=>r[t]))}function b(t){return{top:0,right:0,bottom:0,left:0,...t}}function A(t){return"number"!=typeof t?b(t):{top:t,right:t,bottom:t,left:t}}function R(t){return{...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}function k(t,e,n){let{reference:o,floating:i}=t;const r=m(e),l=y(e),c=d(l),s=f(e),u="y"===r,p=o.x+o.width/2-i.width/2,h=o.y+o.height/2-i.height/2,g=o[c]/2-i[c]/2;let x;switch(s){case"top":x={x:p,y:o.y-i.height};break;case"bottom":x={x:p,y:o.y+o.height};break;case"right":x={x:o.x+o.width,y:h};break;case"left":x={x:o.x-i.width,y:h};break;default:x={x:o.x,y:o.y}}switch(a(e)){case"start":x[l]-=g*(n&&u?-1:1);break;case"end":x[l]+=g*(n&&u?-1:1)}return x}const S=async(t,e,n)=>{const{placement:o="bottom",strategy:i="absolute",middleware:r=[],platform:l}=n,c=r.filter(Boolean),s=await(null==l.isRTL?void 0:l.isRTL(e));let a=await l.getElementRects({reference:t,floating:e,strategy:i}),{x:f,y:u}=k(a,o,s),d=o,m={},p=0;for(let n=0;n<c.length;n++){const{name:r,fn:h}=c[n],{x:g,y:y,data:x,reset:w}=await h({x:f,y:u,initialPlacement:o,placement:d,strategy:i,middlewareData:m,rects:a,platform:l,elements:{reference:t,floating:e}});f=null!=g?g:f,u=null!=y?y:u,m={...m,[r]:{...m[r],...x}},w&&p<=50&&(p++,"object"==typeof w&&(w.placement&&(d=w.placement),w.rects&&(a=!0===w.rects?await l.getElementRects({reference:t,floating:e,strategy:i}):w.rects),({x:f,y:u}=k(a,d,s))),n=-1)}return{x:f,y:u,placement:d,strategy:i,middlewareData:m}};async function F(t,e){var n;void 0===e&&(e={});const{x:o,y:i,platform:r,rects:c,elements:s,strategy:a}=t,{boundary:f="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:m=!1,padding:p=0}=l(e,t),h=A(p),g=s[m?"floating"===d?"reference":"floating":d],y=R(await r.getClippingRect({element:null==(n=await(null==r.isElement?void 0:r.isElement(g)))||n?g:g.contextElement||await(null==r.getDocumentElement?void 0:r.getDocumentElement(s.floating)),boundary:f,rootBoundary:u,strategy:a})),x="floating"===d?{...c.floating,x:o,y:i}:c.reference,w=await(null==r.getOffsetParent?void 0:r.getOffsetParent(s.floating)),v=await(null==r.isElement?void 0:r.isElement(w))&&await(null==r.getScale?void 0:r.getScale(w))||{x:1,y:1},b=R(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({rect:x,offsetParent:w,strategy:a}):x);return{top:(y.top-b.top+h.top)/v.y,bottom:(b.bottom-y.bottom+h.bottom)/v.y,left:(y.left-b.left+h.left)/v.x,right:(b.right-y.right+h.right)/v.x}}const O=e=>({name:"arrow",options:e,async fn(n){const{x:o,y:i,placement:r,rects:s,platform:f,elements:u,middlewareData:m}=n,{element:p,padding:h=0}=l(e,n)||{};if(null==p)return{};const g=A(h),x={x:o,y:i},w=y(r),v=d(w),b=await f.getDimensions(p),R="y"===w,E=R?"top":"left",L=R?"bottom":"right",T=R?"clientHeight":"clientWidth",C=s.reference[v]+s.reference[w]-x[w]-s.floating[v],O=x[w]-s.reference[w],D=await(null==f.getOffsetParent?void 0:f.getOffsetParent(p));let S=D?D[T]:0;S&&await(null==f.isElement?void 0:f.isElement(D))||(S=u.floating[T]||s.floating[v]);const F=C/2-O/2,P=S/2-b[v]/2-1,k=t(g[E],P),W=t(g[L],P),z=k,X=S-b[v]-W,I=S/2-b[v]/2+F,H=c(z,I,X),V=!m.arrow&&null!=a(r)&&I!=H&&s.reference[v]/2-(I<z?k:W)-b[v]/2<0,B=V?I<z?I-z:I-X:0;return{[w]:x[w]+B,data:{[w]:H,centerOffset:I-H-B,...V&&{alignmentOffset:B}},reset:V}}}),T=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var n,o;const{placement:i,middlewareData:r,rects:c,initialPlacement:s,platform:a,elements:u}=e,{mainAxis:d=!0,crossAxis:m=!0,fallbackPlacements:g,fallbackStrategy:y="bestFit",fallbackAxisSideDirection:x="none",flipAlignment:b=!0,...R}=l(t,e);if(null!=(n=r.arrow)&&n.alignmentOffset)return{};const E=f(i),L=f(s)===s,T=await(null==a.isRTL?void 0:a.isRTL(u.floating)),C=g||(L||!b?[v(s)]:h(s));g||"none"===x||C.push(...w(s,b,x,T));const A=[s,...C],O=await F(e,R),D=[];let S=(null==(o=r.flip)?void 0:o.overflows)||[];if(d&&D.push(O[E]),m){const t=p(i,c,T);D.push(O[t[0]],O[t[1]])}if(S=[...S,{placement:i,overflows:D}],!D.every((t=>t<=0))){var P,k;const t=((null==(P=r.flip)?void 0:P.index)||0)+1,e=A[t];if(e)return{data:{index:t,overflows:S},reset:{placement:e}};let n=null==(k=S.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:k.placement;if(!n)switch(y){case"bestFit":{var W;const t=null==(W=S.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:W[0];t&&(n=t);break}case"initialPlacement":n=s}if(i!==n)return{reset:{placement:n}}}return{}}}};async function P(t,e){const{placement:n,platform:o,elements:i}=t,r=await(null==o.isRTL?void 0:o.isRTL(i.floating)),c=f(n),s=a(n),u="y"===m(n),d=["left","top"].includes(c)?-1:1,p=r&&u?-1:1,h=l(e,t);let{mainAxis:g,crossAxis:y,alignmentAxis:x}="number"==typeof h?{mainAxis:h,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...h};return s&&"number"==typeof x&&(y="end"===s?-1*x:x),u?{x:y*p,y:g*d}:{x:g*d,y:y*p}}const D=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){const{x:n,y:o}=e,i=await P(e,t);return{x:n+i.x,y:o+i.y,data:i}}}},M=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:o,placement:i}=e,{mainAxis:r=!0,crossAxis:s=!1,limiter:a={fn:t=>{let{x:e,y:n}=t;return{x:e,y:n}}},...d}=l(t,e),p={x:n,y:o},h=await F(e,d),g=m(f(i)),y=u(g);let x=p[y],w=p[g];if(r){const t="y"===y?"bottom":"right";x=c(x+h["y"===y?"top":"left"],x,x-h[t])}if(s){const t="y"===g?"bottom":"right";w=c(w+h["y"===g?"top":"left"],w,w-h[t])}const v=a.fn({...e,[y]:x,[g]:w});return{...v,data:{x:v.x-n,y:v.y-o}}}}};function z(t){return B(t)?(t.nodeName||"").toLowerCase():"#document"}function C(t){var e;return(null==t||null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function L(t){var e;return null==(e=(B(t)?t.ownerDocument:t.document)||window.document)?void 0:e.documentElement}function B(t){return t instanceof Node||t instanceof C(t).Node}function E(t){return t instanceof Element||t instanceof C(t).Element}function I(t){return t instanceof HTMLElement||t instanceof C(t).HTMLElement}function N(t){return"undefined"!=typeof ShadowRoot&&(t instanceof ShadowRoot||t instanceof C(t).ShadowRoot)}function q(t){const{overflow:e,overflowX:n,overflowY:o,display:i}=X(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+n)&&!["inline","contents"].includes(i)}function H(t){return["table","td","th"].includes(z(t))}function $(t){const e=V(),n=X(t);return"none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!e&&!!n.backdropFilter&&"none"!==n.backdropFilter||!e&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((t=>(n.willChange||"").includes(t)))||["paint","layout","strict","content"].some((t=>(n.contain||"").includes(t)))}function j(t){let e=_(t);for(;I(e)&&!W(e);){if($(e))return e;e=_(e)}return null}function V(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function W(t){return["html","body","#document"].includes(z(t))}function X(t){return C(t).getComputedStyle(t)}function Y(t){return E(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function _(t){if("html"===z(t))return t;const e=t.assignedSlot||t.parentNode||N(t)&&t.host||L(t);return N(e)?e.host:e}function G(t){const e=_(t);return W(e)?t.ownerDocument?t.ownerDocument.body:t.body:I(e)&&q(e)?e:G(e)}function J(t,e,n){var o;void 0===e&&(e=[]),void 0===n&&(n=!0);const i=G(t),r=i===(null==(o=t.ownerDocument)?void 0:o.body),l=C(i);return r?e.concat(l,l.visualViewport||[],q(i)?i:[],l.frameElement&&n?J(l.frameElement):[]):e.concat(i,J(i,[],n))}function K(t){const n=X(t);let o=parseFloat(n.width)||0,i=parseFloat(n.height)||0;const r=I(t),l=r?t.offsetWidth:o,c=r?t.offsetHeight:i,s=e(o)!==l||e(i)!==c;return s&&(o=l,i=c),{width:o,height:i,$:s}}function Q(t){return E(t)?t:t.contextElement}function U(t){const n=Q(t);if(!I(n))return i(1);const o=n.getBoundingClientRect(),{width:r,height:l,$:c}=K(n);let s=(c?e(o.width):o.width)/r,a=(c?e(o.height):o.height)/l;return s&&Number.isFinite(s)||(s=1),a&&Number.isFinite(a)||(a=1),{x:s,y:a}}const Z=i(0);function tt(t){const e=C(t);return V()&&e.visualViewport?{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}:Z}function nt(t,e,n){return void 0===e&&(e=!1),!(!n||e&&n!==C(t))&&e}function et(t,e,n,o){void 0===e&&(e=!1),void 0===n&&(n=!1);const r=t.getBoundingClientRect(),l=Q(t);let c=i(1);e&&(o?E(o)&&(c=U(o)):c=U(t));const s=nt(l,n,o)?tt(l):i(0);let a=(r.left+s.x)/c.x,f=(r.top+s.y)/c.y,u=r.width/c.x,d=r.height/c.y;if(l){const t=C(l),e=o&&E(o)?C(o):o;let n=t.frameElement;for(;n&&o&&e!==t;){const t=U(n),e=n.getBoundingClientRect(),o=X(n),i=e.left+(n.clientLeft+parseFloat(o.paddingLeft))*t.x,r=e.top+(n.clientTop+parseFloat(o.paddingTop))*t.y;a*=t.x,f*=t.y,u*=t.x,d*=t.y,a+=i,f+=r,n=C(n).frameElement}}return R({width:u,height:d,x:a,y:f})}function ot(t){let{rect:e,offsetParent:n,strategy:o}=t;const r=I(n),l=L(n);if(n===l)return e;let c={scrollLeft:0,scrollTop:0},s=i(1);const a=i(0);if((r||!r&&"fixed"!==o)&&(("body"!==z(n)||q(l))&&(c=Y(n)),I(n))){const t=et(n);s=U(n),a.x=t.x+n.clientLeft,a.y=t.y+n.clientTop}return{width:e.width*s.x,height:e.height*s.y,x:e.x*s.x-c.scrollLeft*s.x+a.x,y:e.y*s.y-c.scrollTop*s.y+a.y}}function it(t){return Array.from(t.getClientRects())}function rt(t){return et(L(t)).left+Y(t).scrollLeft}function st(t){const e=L(t),o=Y(t),i=t.ownerDocument.body,r=n(e.scrollWidth,e.clientWidth,i.scrollWidth,i.clientWidth),l=n(e.scrollHeight,e.clientHeight,i.scrollHeight,i.clientHeight);let c=-o.scrollLeft+rt(t);const s=-o.scrollTop;return"rtl"===X(i).direction&&(c+=n(e.clientWidth,i.clientWidth)-r),{width:r,height:l,x:c,y:s}}function ct(t,e){const n=C(t),o=L(t),i=n.visualViewport;let r=o.clientWidth,l=o.clientHeight,c=0,s=0;if(i){r=i.width,l=i.height;const t=V();(!t||t&&"fixed"===e)&&(c=i.offsetLeft,s=i.offsetTop)}return{width:r,height:l,x:c,y:s}}function lt(t,e){const n=et(t,!0,"fixed"===e),o=n.top+t.clientTop,r=n.left+t.clientLeft,l=I(t)?U(t):i(1);return{width:t.clientWidth*l.x,height:t.clientHeight*l.y,x:r*l.x,y:o*l.y}}function ft(t,e,n){let o;if("viewport"===e)o=ct(t,n);else if("document"===e)o=st(L(t));else if(E(e))o=lt(e,n);else{const n=tt(t);o={...e,x:e.x-n.x,y:e.y-n.y}}return R(o)}function at(t,e){const n=_(t);return!(n===e||!E(n)||W(n))&&("fixed"===X(n).position||at(n,e))}function ut(t,e){const n=e.get(t);if(n)return n;let o=J(t,[],!1).filter((t=>E(t)&&"body"!==z(t))),i=null;const r="fixed"===X(t).position;let l=r?_(t):t;for(;E(l)&&!W(l);){const e=X(l),n=$(l);n||"fixed"!==e.position||(i=null);(r?!n&&!i:!n&&"static"===e.position&&!!i&&["absolute","fixed"].includes(i.position)||q(l)&&!n&&at(t,l))?o=o.filter((t=>t!==l)):i=e,l=_(l)}return e.set(t,o),o}function dt(e){let{element:o,boundary:i,rootBoundary:r,strategy:l}=e;const c=[..."clippingAncestors"===i?ut(o,this._c):[].concat(i),r],s=c[0],a=c.reduce(((e,i)=>{const r=ft(o,i,l);return e.top=n(r.top,e.top),e.right=t(r.right,e.right),e.bottom=t(r.bottom,e.bottom),e.left=n(r.left,e.left),e}),ft(o,s,l));return{width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}}function mt(t){return K(t)}function yt(t,e,n){const o=I(e),r=L(e),l="fixed"===n,c=et(t,!0,l,e);let s={scrollLeft:0,scrollTop:0};const a=i(0);if(o||!o&&!l)if(("body"!==z(e)||q(r))&&(s=Y(e)),o){const t=et(e,!0,l,e);a.x=t.x+e.clientLeft,a.y=t.y+e.clientTop}else r&&(a.x=rt(r));return{x:c.left+s.scrollLeft-a.x,y:c.top+s.scrollTop-a.y,width:c.width,height:c.height}}function pt(t,e){return I(t)&&"fixed"!==X(t).position?e?e(t):t.offsetParent:null}function ht(t,e){const n=C(t);if(!I(t))return n;let o=pt(t,e);for(;o&&H(o)&&"static"===X(o).position;)o=pt(o,e);return o&&("html"===z(o)||"body"===z(o)&&"static"===X(o).position&&!$(o))?n:o||j(t)||n}const xt=async function(t){let{reference:e,floating:n,strategy:o}=t;const i=this.getOffsetParent||ht,r=this.getDimensions;return{reference:yt(e,await i(n),o),floating:{x:0,y:0,...await r(n)}}};function gt(t){return"rtl"===X(t).direction}const wt={convertOffsetParentRelativeRectToViewportRelativeRect:ot,getDocumentElement:L,getClippingRect:dt,getOffsetParent:ht,getElementRects:xt,getClientRects:it,getDimensions:mt,getScale:U,isElement:E,isRTL:gt};function vt(e,i){let r,l=null;const c=L(e);function s(){clearTimeout(r),l&&l.disconnect(),l=null}return function a(f,u){void 0===f&&(f=!1),void 0===u&&(u=1),s();const{left:d,top:m,width:p,height:h}=e.getBoundingClientRect();if(f||i(),!p||!h)return;const g={rootMargin:-o(m)+"px "+-o(c.clientWidth-(d+p))+"px "+-o(c.clientHeight-(m+h))+"px "+-o(d)+"px",threshold:n(0,t(1,u))||1};let y=!0;function x(t){const e=t[0].intersectionRatio;if(e!==u){if(!y)return a();e?a(!1,e):r=setTimeout((()=>{a(!1,1e-7)}),100)}y=!1}try{l=new IntersectionObserver(x,{...g,root:c.ownerDocument})}catch(t){l=new IntersectionObserver(x,g)}l.observe(e)}(!0),s}function bt(t,e,n,o){void 0===o&&(o={});const{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:l="function"==typeof ResizeObserver,layoutShift:c="function"==typeof IntersectionObserver,animationFrame:s=!1}=o,a=Q(t),f=i||r?[...a?J(a):[],...J(e)]:[];f.forEach((t=>{i&&t.addEventListener("scroll",n,{passive:!0}),r&&t.addEventListener("resize",n)}));const u=a&&c?vt(a,n):null;let d,m=-1,p=null;l&&(p=new ResizeObserver((t=>{let[o]=t;o&&o.target===a&&p&&(p.unobserve(e),cancelAnimationFrame(m),m=requestAnimationFrame((()=>{p&&p.observe(e)}))),n()})),a&&!s&&p.observe(a),p.observe(e));let h=s?et(t):null;return s&&function e(){const o=et(t);!h||o.x===h.x&&o.y===h.y&&o.width===h.width&&o.height===h.height||n();h=o,d=requestAnimationFrame(e)}(),n(),()=>{f.forEach((t=>{i&&t.removeEventListener("scroll",n),r&&t.removeEventListener("resize",n)})),u&&u(),p&&p.disconnect(),p=null,s&&cancelAnimationFrame(d)}}const At=(t,e,n)=>{const o=new Map,i={platform:wt,...n},r={...i.platform,_c:o};return S(t,e,{...i,platform:r})};export{O as a,bt as b,At as c,T as f,D as o,M as s};
@@ -1 +0,0 @@
1
- {"version":3,"names":["min","Math","max","round","floor","createCoords","v","x","y","oppositeSideMap","left","right","bottom","top","oppositeAlignmentMap","start","end","clamp","value","evaluate","param","getSide","placement","split","getAlignment","getOppositeAxis","axis","getAxisLength","getSideAxis","includes","getAlignmentAxis","getAlignmentSides","rects","rtl","alignment","alignmentAxis","length","mainAlignmentSide","reference","floating","getOppositePlacement","getExpandedPlacements","oppositePlacement","getOppositeAlignmentPlacement","replace","getSideList","side","isStart","lr","rl","tb","bt","getOppositeAxisPlacements","flipAlignment","direction","list","map","concat","expandPaddingObject","padding","getPaddingObject","rectToClientRect","rect","width","height","computeCoordsFromPlacement","_ref","sideAxis","alignLength","isVertical","commonX","commonY","commonAlign","coords","computePosition","async","config","strategy","middleware","platform","validMiddleware","filter","Boolean","isRTL","getElementRects","statefulPlacement","middlewareData","resetCount","i","name","fn","nextX","nextY","data","reset","initialPlacement","elements","detectOverflow","state","options","_await$platform$isEle","boundary","rootBoundary","elementContext","altBoundary","paddingObject","altContext","element","clippingClientRect","getClippingRect","isElement","contextElement","getDocumentElement","offsetParent","getOffsetParent","offsetScale","getScale","elementClientRect","convertOffsetParentRelativeRectToViewportRelativeRect","arrow","arrowDimensions","getDimensions","isYAxis","minProp","maxProp","clientProp","endDiff","startDiff","arrowOffsetParent","clientSize","centerToReference","largestPossiblePadding","minPadding","maxPadding","min$1","center","offset","shouldAddOffset","alignmentOffset","centerOffset","flip","_middlewareData$arrow","_middlewareData$flip","mainAxis","checkMainAxis","crossAxis","checkCrossAxis","fallbackPlacements","specifiedFallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","detectOverflowOptions","isBasePlacement","push","placements","overflow","overflows","overflowsData","sides","every","_middlewareData$flip2","_overflowsData$filter","nextIndex","index","nextPlacement","resetPlacement","d","sort","a","b","_overflowsData$map$so","reduce","acc","convertValueToCoords","mainAxisMulti","crossAxisMulti","rawValue","diffCoords","shift","limiter","mainAxisCoord","crossAxisCoord","minSide","maxSide","limitedCoords","getNodeName","node","isNode","nodeName","toLowerCase","getWindow","_node$ownerDocument","ownerDocument","defaultView","window","document","documentElement","Node","Element","isHTMLElement","HTMLElement","isShadowRoot","ShadowRoot","isOverflowElement","overflowX","overflowY","display","getComputedStyle","test","isTableElement","isContainingBlock","webkit","isWebKit","css","transform","perspective","containerType","backdropFilter","some","willChange","contain","getContainingBlock","currentNode","getParentNode","isLastTraversableNode","CSS","supports","getNodeScroll","scrollLeft","scrollTop","pageXOffset","pageYOffset","result","assignedSlot","parentNode","host","getNearestOverflowAncestor","body","getOverflowAncestors","traverseIframes","_node$ownerDocument2","scrollableAncestor","isBody","win","visualViewport","frameElement","getCssDimensions","parseFloat","hasOffset","offsetWidth","offsetHeight","shouldFallback","$","unwrapElement","domElement","getBoundingClientRect","Number","isFinite","noOffsets","getVisualOffsets","offsetLeft","offsetTop","shouldAddVisualOffsets","isFixed","floatingOffsetParent","includeScale","isFixedStrategy","clientRect","scale","visualOffsets","offsetWin","currentIFrame","iframeScale","iframeRect","clientLeft","paddingLeft","clientTop","paddingTop","isOffsetParentAnElement","scroll","offsets","offsetRect","getClientRects","Array","from","getWindowScrollBarX","getDocumentRect","html","scrollWidth","clientWidth","scrollHeight","clientHeight","getViewportRect","visualViewportBased","getInnerBoundingClientRect","getClientRectFromClippingAncestor","clippingAncestor","hasFixedPositionAncestor","stopNode","position","getClippingElementAncestors","cache","cachedResult","get","el","currentContainingBlockComputedStyle","elementIsFixed","computedStyle","currentNodeIsContaining","shouldDropCurrentNode","ancestor","set","elementClippingAncestors","this","_c","clippingAncestors","firstClippingAncestor","clippingRect","accRect","getRectRelativeToOffsetParent","getTrueOffsetParent","polyfill","getOffsetParentFn","getDimensionsFn","observeMove","onMove","io","timeoutId","root","cleanup","clearTimeout","disconnect","refresh","skip","threshold","insetTop","insetRight","insetBottom","insetLeft","rootMargin","isFirstUpdate","handleObserve","entries","ratio","intersectionRatio","setTimeout","IntersectionObserver","e","observe","autoUpdate","update","ancestorScroll","ancestorResize","elementResize","ResizeObserver","layoutShift","animationFrame","referenceEl","ancestors","forEach","addEventListener","passive","cleanupIo","reobserveFrame","resizeObserver","firstEntry","target","unobserve","cancelAnimationFrame","requestAnimationFrame","frameId","prevRefRect","frameLoop","nextRefRect","removeEventListener","Map","mergedOptions","platformWithCache","computePosition$1"],"sources":["../../node_modules/.pnpm/@floating-ui+utils@0.1.6/node_modules/@floating-ui/utils/dist/floating-ui.utils.esm.js","../../node_modules/.pnpm/@floating-ui+core@1.5.0/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js","../../node_modules/.pnpm/@floating-ui+utils@0.1.6/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.esm.js","../../node_modules/.pnpm/@floating-ui+dom@1.5.3/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js"],"sourcesContent":["const sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n return {\n ...rect,\n top: rect.y,\n left: rect.x,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n","import { getSideAxis, getAlignmentAxis, getAxisLength, getSide, getAlignment, evaluate, getPaddingObject, rectToClientRect, min, clamp, placements, getAlignmentSides, getOppositeAlignmentPlacement, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, sides, max, getOppositeAxis } from '@floating-ui/utils';\nexport { rectToClientRect } from '@floating-ui/utils';\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const sideAxis = getSideAxis(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const alignLength = getAxisLength(alignmentAxis);\n const side = getSide(placement);\n const isVertical = sideAxis === 'y';\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch (getAlignment(placement)) {\n case 'start':\n coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a reference element when it is given a certain positioning strategy.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n continue;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = evaluate(options, state);\n const paddingObject = getPaddingObject(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n ...rects.floating,\n x,\n y\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements,\n middlewareData\n } = state;\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = evaluate(options, state) || {};\n if (element == null) {\n return {};\n }\n const paddingObject = getPaddingObject(padding);\n const coords = {\n x,\n y\n };\n const axis = getAlignmentAxis(placement);\n const length = getAxisLength(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // If the padding is large enough that it causes the arrow to no longer be\n // centered, modify the padding so that it is centered.\n const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n const minPadding = min(paddingObject[minProp], largestPossiblePadding);\n const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min$1 = minPadding;\n const max = clientSize - arrowDimensions[length] - maxPadding;\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = clamp(min$1, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. To ensure `shift()` continues to take action,\n // a single reset is performed when this is true.\n const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n return {\n [axis]: coords[axis] + alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset - alignmentOffset,\n ...(shouldAddOffset && {\n alignmentOffset\n })\n },\n reset: shouldAddOffset\n };\n }\n});\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = placements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements$1[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements$1[0]\n }\n };\n }\n const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements$1[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = getAlignment(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$arrow, _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n\n // If a reset by the arrow was caused due to an alignment offset being\n // added, we should skip any logic now since `flip()` has already done its\n // work.\n // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n const side = getSide(placement);\n const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {\n fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const sides = getAlignmentSides(placement, rects, rtl);\n overflows.push(overflow[sides[0]], overflow[sides[1]]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$map$so;\n const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n rects\n } = state;\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = evaluate(options, state);\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = min(...rects.map(rect => rect.left));\n const minY = min(...rects.map(rect => rect.top));\n const maxX = max(...rects.map(rect => rect.right));\n const maxY = max(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = evaluate(options, state);\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n const paddingObject = getPaddingObject(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if (getSideAxis(placement) === 'y') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = getSide(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = getSide(placement) === 'left';\n const maxRight = max(...clientRects.map(rect => rect.right));\n const minLeft = min(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\n }\n };\n }\n return {};\n }\n };\n};\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\nasync function convertValueToCoords(state, options) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isVertical = getSideAxis(placement) === 'y';\n const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = evaluate(options, state);\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: 0,\n crossAxis: 0,\n alignmentAxis: null,\n ...rawValue\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (options) {\n if (options === void 0) {\n options = 0;\n }\n return {\n name: 'offset',\n options,\n async fn(state) {\n const {\n x,\n y\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: diffCoords\n };\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const crossAxis = getSideAxis(getSide(placement));\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = clamp(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = clamp(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y\n }\n };\n }\n };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const crossAxis = getSideAxis(placement);\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = evaluate(offset, state);\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = ['top', 'left'].includes(getSide(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = evaluate(options, state);\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isYAxis = getSideAxis(placement) === 'y';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const overflowAvailableHeight = height - overflow[heightSide];\n const overflowAvailableWidth = width - overflow[widthSide];\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if (isYAxis) {\n const maximumClippingWidth = width - overflow.left - overflow.right;\n availableWidth = alignment || noShift ? min(overflowAvailableWidth, maximumClippingWidth) : maximumClippingWidth;\n } else {\n const maximumClippingHeight = height - overflow.top - overflow.bottom;\n availableHeight = alignment || noShift ? min(overflowAvailableHeight, maximumClippingHeight) : maximumClippingHeight;\n }\n if (noShift && !alignment) {\n const xMin = max(overflow.left, 0);\n const xMax = max(overflow.right, 0);\n const yMin = max(overflow.top, 0);\n const yMax = max(overflow.bottom, 0);\n if (isYAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\nexport { arrow, autoPlacement, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, shift, size };\n","function getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null ? void 0 : (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n // Browsers without `ShadowRoot` support.\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);\n}\nfunction isTableElement(element) {\n return ['table', 'td', 'th'].includes(getNodeName(element));\n}\nfunction isContainingBlock(element) {\n const webkit = isWebKit();\n const css = getComputedStyle(element);\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else {\n currentNode = getParentNode(currentNode);\n }\n }\n return null;\n}\nfunction isWebKit() {\n if (typeof CSS === 'undefined' || !CSS.supports) return false;\n return CSS.supports('-webkit-backdrop-filter', 'none');\n}\nfunction isLastTraversableNode(node) {\n return ['html', 'body', '#document'].includes(getNodeName(node));\n}\nfunction getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.pageXOffset,\n scrollTop: element.pageYOffset\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return node.ownerDocument ? node.ownerDocument.body : node.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], win.frameElement && traverseIframes ? getOverflowAncestors(win.frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\n\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isWebKit };\n","import { rectToClientRect, computePosition as computePosition$1 } from '@floating-ui/core';\nexport { arrow, autoPlacement, detectOverflow, flip, hide, inline, limitShift, offset, shift, size } from '@floating-ui/core';\nimport { round, createCoords, max, min, floor } from '@floating-ui/utils';\nimport { getComputedStyle, isHTMLElement, isElement, getWindow, isWebKit, getDocumentElement, getNodeName, isOverflowElement, getNodeScroll, getOverflowAncestors, getParentNode, isLastTraversableNode, isContainingBlock, isTableElement, getContainingBlock } from '@floating-ui/utils/dom';\nexport { getOverflowAncestors } from '@floating-ui/utils/dom';\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle(element);\n // In testing environments, the `width` and `height` properties are empty\n // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n let width = parseFloat(css.width) || 0;\n let height = parseFloat(css.height) || 0;\n const hasOffset = isHTMLElement(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n $: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !isElement(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!isHTMLElement(domElement)) {\n return createCoords(1);\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n $\n } = getCssDimensions(domElement);\n let x = ($ ? round(rect.width) : rect.width) / width;\n let y = ($ ? round(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nconst noOffsets = /*#__PURE__*/createCoords(0);\nfunction getVisualOffsets(element) {\n const win = getWindow(element);\n if (!isWebKit() || !win.visualViewport) {\n return noOffsets;\n }\n return {\n x: win.visualViewport.offsetLeft,\n y: win.visualViewport.offsetTop\n };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {\n return false;\n }\n return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = createCoords(1);\n if (includeScale) {\n if (offsetParent) {\n if (isElement(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);\n let x = (clientRect.left + visualOffsets.x) / scale.x;\n let y = (clientRect.top + visualOffsets.y) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = getWindow(domElement);\n const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n let currentIFrame = win.frameElement;\n while (currentIFrame && offsetParent && offsetWin !== win) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = getComputedStyle(currentIFrame);\n const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += left;\n y += top;\n currentIFrame = getWindow(currentIFrame).frameElement;\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n if (offsetParent === documentElement) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = createCoords(1);\n const offsets = createCoords(0);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\n}\n\nfunction getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = getDocumentElement(element);\n const scroll = getNodeScroll(element);\n const body = element.ownerDocument.body;\n const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if (getComputedStyle(body).direction === 'rtl') {\n x += max(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nfunction getViewportRect(element, strategy) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = isWebKit();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect(getDocumentElement(element));\n } else if (isElement(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const visualOffsets = getVisualOffsets(element);\n rect = {\n ...clippingAncestor,\n x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y\n };\n }\n return rectToClientRect(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n const parentNode = getParentNode(element);\n if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {\n return false;\n }\n return getComputedStyle(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = getComputedStyle(element).position === 'fixed';\n let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n const computedStyle = getComputedStyle(currentNode);\n const currentNodeIsContaining = isContainingBlock(currentNode);\n if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n currentContainingBlockComputedStyle = null;\n }\n const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n currentNode = getParentNode(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n return getCssDimensions(element);\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const isFixed = strategy === 'fixed';\n const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = createCoords(0);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isOffsetParentAnElement) {\n const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n return element.offsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const window = getWindow(element);\n if (!isHTMLElement(element)) {\n return window;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {\n return window;\n }\n return offsetParent || getContainingBlock(element) || window;\n}\n\nconst getElementRects = async function (_ref) {\n let {\n reference,\n floating,\n strategy\n } = _ref;\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n return {\n reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),\n floating: {\n x: 0,\n y: 0,\n ...(await getDimensionsFn(floating))\n }\n };\n};\n\nfunction isRTL(element) {\n return getComputedStyle(element).direction === 'rtl';\n}\n\nconst platform = {\n convertOffsetParentRelativeRectToViewportRelativeRect,\n getDocumentElement,\n getClippingRect,\n getOffsetParent,\n getElementRects,\n getClientRects,\n getDimensions,\n getScale,\n isElement,\n isRTL\n};\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n let io = null;\n let timeoutId;\n const root = getDocumentElement(element);\n function cleanup() {\n clearTimeout(timeoutId);\n io && io.disconnect();\n io = null;\n }\n function refresh(skip, threshold) {\n if (skip === void 0) {\n skip = false;\n }\n if (threshold === void 0) {\n threshold = 1;\n }\n cleanup();\n const {\n left,\n top,\n width,\n height\n } = element.getBoundingClientRect();\n if (!skip) {\n onMove();\n }\n if (!width || !height) {\n return;\n }\n const insetTop = floor(top);\n const insetRight = floor(root.clientWidth - (left + width));\n const insetBottom = floor(root.clientHeight - (top + height));\n const insetLeft = floor(left);\n const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n const options = {\n rootMargin,\n threshold: max(0, min(1, threshold)) || 1\n };\n let isFirstUpdate = true;\n function handleObserve(entries) {\n const ratio = entries[0].intersectionRatio;\n if (ratio !== threshold) {\n if (!isFirstUpdate) {\n return refresh();\n }\n if (!ratio) {\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 100);\n } else {\n refresh(false, ratio);\n }\n }\n isFirstUpdate = false;\n }\n\n // Older browsers don't support a `document` as the root and will throw an\n // error.\n try {\n io = new IntersectionObserver(handleObserve, {\n ...options,\n // Handle <iframe>s\n root: root.ownerDocument\n });\n } catch (e) {\n io = new IntersectionObserver(handleObserve, options);\n }\n io.observe(element);\n }\n refresh(true);\n return cleanup;\n}\n\n/**\n * Automatically updates the position of the floating element when necessary.\n * Should only be called when the floating element is mounted on the DOM or\n * visible on the screen.\n * @returns cleanup function that should be invoked when the floating element is\n * removed from the DOM or hidden from the screen.\n * @see https://floating-ui.com/docs/autoUpdate\n */\nfunction autoUpdate(reference, floating, update, options) {\n if (options === void 0) {\n options = {};\n }\n const {\n ancestorScroll = true,\n ancestorResize = true,\n elementResize = typeof ResizeObserver === 'function',\n layoutShift = typeof IntersectionObserver === 'function',\n animationFrame = false\n } = options;\n const referenceEl = unwrapElement(reference);\n const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...getOverflowAncestors(floating)] : [];\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.addEventListener('scroll', update, {\n passive: true\n });\n ancestorResize && ancestor.addEventListener('resize', update);\n });\n const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;\n let reobserveFrame = -1;\n let resizeObserver = null;\n if (elementResize) {\n resizeObserver = new ResizeObserver(_ref => {\n let [firstEntry] = _ref;\n if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {\n // Prevent update loops when using the `size` middleware.\n // https://github.com/floating-ui/floating-ui/issues/1740\n resizeObserver.unobserve(floating);\n cancelAnimationFrame(reobserveFrame);\n reobserveFrame = requestAnimationFrame(() => {\n resizeObserver && resizeObserver.observe(floating);\n });\n }\n update();\n });\n if (referenceEl && !animationFrame) {\n resizeObserver.observe(referenceEl);\n }\n resizeObserver.observe(floating);\n }\n let frameId;\n let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;\n if (animationFrame) {\n frameLoop();\n }\n function frameLoop() {\n const nextRefRect = getBoundingClientRect(reference);\n if (prevRefRect && (nextRefRect.x !== prevRefRect.x || nextRefRect.y !== prevRefRect.y || nextRefRect.width !== prevRefRect.width || nextRefRect.height !== prevRefRect.height)) {\n update();\n }\n prevRefRect = nextRefRect;\n frameId = requestAnimationFrame(frameLoop);\n }\n update();\n return () => {\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.removeEventListener('scroll', update);\n ancestorResize && ancestor.removeEventListener('resize', update);\n });\n cleanupIo && cleanupIo();\n resizeObserver && resizeObserver.disconnect();\n resizeObserver = null;\n if (animationFrame) {\n cancelAnimationFrame(frameId);\n }\n };\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a reference element when it is given a certain CSS positioning\n * strategy.\n */\nconst computePosition = (reference, floating, options) => {\n // This caches the expensive `getClippingElementAncestors` function so that\n // multiple lifecycle resets re-use the same result. It only lives for a\n // single call. If other functions become expensive, we can add them as well.\n const cache = new Map();\n const mergedOptions = {\n platform,\n ...options\n };\n const platformWithCache = {\n ...mergedOptions.platform,\n _c: cache\n };\n return computePosition$1(reference, floating, {\n ...mergedOptions,\n platform: platformWithCache\n });\n};\n\nexport { autoUpdate, computePosition, platform };\n"],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{a as o}from"./prop.validators-8dc620b0.js";const s=(s,a)=>{o(s,"_hasCloser",a)};export{s as v};
@@ -1 +0,0 @@
1
- {"version":3,"names":["validateHasCloser","component","value","watchBoolean"],"sources":["src/types/props/has-closer.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\nexport type HasCloserPropType = boolean;\n\n/**\n * Defines whether the element can be closed.\n */\nexport type PropHasCloser = {\n\thasCloser: HasCloserPropType;\n};\n\n/* validator */\nexport const validateHasCloser = (component: Generic.Element.Component, value?: HasCloserPropType): void => {\n\twatchBoolean(component, '_hasCloser', value);\n};\n"],"mappings":";;;wDAeaA,EAAoB,CAACC,EAAsCC,KACvEC,EAAaF,EAAW,aAAcC,EAAM,S"}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{a}from"./prop.validators-8dc620b0.js";const o=(o,r,p={})=>{a(o,"_hideLabel",r,p)};export{o as v};
@@ -1 +0,0 @@
1
- {"version":3,"names":["validateHideLabel","component","value","options","watchBoolean"],"sources":["src/types/props/hide-label.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { watchBoolean, WatchBooleanOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type HideLabelPropType = boolean;\n\n/**\n * Tells the element to hide the label.\n */\nexport type PropHideLabel = {\n\thideLabel: HideLabelPropType;\n};\n\n/* validator */\nexport const validateHideLabel = (component: Generic.Element.Component, value?: HideLabelPropType, options: WatchBooleanOptions = {}): void => {\n\twatchBoolean(component, '_hideLabel', value, options);\n};\n"],"mappings":";;;mDAeaA,EAAoB,CAACC,EAAsCC,EAA2BC,EAA+B,MACjIC,EAAaH,EAAW,aAAcC,EAAOC,EAAQ,S"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["mapCustomIcon","state","alignment","icon","isObject","isString","mapIconProp2State","iconAlign","right","left","top","bottom","beforePatchIcon","component","_a","nextState","has","_b","get","_c","_iconAlign","_d","set","_e","lastIconAlign","_f","undefined","_g","_icons","isIcon","value","style","isStyle","validateIcons","objectObjectHandler","parseJson","e","watchValidator","Set","hooks","beforePatch","nextValue","required","watchIconAlign"],"sources":["src/types/props/icons.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { objectObjectHandler, parseJson, watchValidator } from '../../utils/prop.validators';\nimport { isObject, isString, isStyle } from '../../utils/validator';\nimport { States as ButtonStates } from '../../components/button/types';\nimport { Stringified } from '../common';\nimport { AnyIconFontClass, KoliBriCustomIcon, KoliBriIconsProp, KoliBriIconsState } from '../icons';\nimport { AlignPropType } from './align';\n\n/* types */\nexport type IconsPropType = Stringified<KoliBriIconsProp>;\n\n/**\n * Defines the icon classnames.\n */\nexport type PropIcons = {\n\ticons: IconsPropType;\n};\n\n/* validator */\n\nconst mapCustomIcon = (state: KoliBriIconsState, alignment: AlignPropType, icon?: AnyIconFontClass | KoliBriCustomIcon) => {\n\tif (isObject(icon)) {\n\t\tstate[alignment] = icon as KoliBriCustomIcon;\n\t} else if (isString(icon, 1)) {\n\t\tstate[alignment] = {\n\t\t\ticon: icon as AnyIconFontClass,\n\t\t};\n\t}\n};\n\nexport const mapIconProp2State = (icon: KoliBriIconsProp, iconAlign?: AlignPropType): KoliBriIconsState => {\n\tlet state: KoliBriIconsState = {};\n\tif (isString(icon, 1)) {\n\t\tswitch (iconAlign) {\n\t\t\tcase 'right':\n\t\t\t\tstate = {\n\t\t\t\t\tright: {\n\t\t\t\t\t\ticon: icon as AnyIconFontClass,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tstate = {\n\t\t\t\t\tleft: {\n\t\t\t\t\t\ticon: icon as AnyIconFontClass,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t}\n\t} else if (typeof icon === 'object' && icon !== null) {\n\t\tmapCustomIcon(state, 'top', icon.top);\n\t\tmapCustomIcon(state, 'right', icon.right);\n\t\tmapCustomIcon(state, 'bottom', icon.bottom);\n\t\tmapCustomIcon(state, 'left', icon.left);\n\t}\n\treturn state;\n};\n\nconst beforePatchIcon = (component: Generic.Element.Component): void => {\n\tif (component.nextState?.has('_icons')) {\n\t\tconst icon = component.nextState?.get('_icons') as KoliBriIconsProp;\n\t\tconst iconAlign = (component.nextState?.get('_iconAlign') as AlignPropType) || (component.state as ButtonStates)._iconAlign;\n\t\tcomponent.nextState?.set('_icons', mapIconProp2State(icon, iconAlign));\n\t} else if (component.nextState?.has('_iconAlign')) {\n\t\tconst lastIconAlign = (component.state as ButtonStates)._iconAlign as AlignPropType;\n\t\tcomponent.nextState?.set('_icons', {\n\t\t\t[lastIconAlign]: undefined,\n\t\t\t[component.nextState?.get('_iconAlign') as AlignPropType]: (component.state as ButtonStates)._icons[lastIconAlign],\n\t\t});\n\t}\n};\n\nexport const isIcon = (value?: unknown): boolean =>\n\ttypeof value === 'object' &&\n\tvalue !== null &&\n\t(typeof (value as KoliBriCustomIcon).style === 'undefined' || isStyle((value as KoliBriCustomIcon).style)) &&\n\tisString((value as KoliBriCustomIcon).icon, 1);\n\nexport const validateIcons = (component: Generic.Element.Component, value?: IconsPropType): void => {\n\tobjectObjectHandler(value, () => {\n\t\ttry {\n\t\t\tvalue = parseJson<KoliBriIconsProp>(value as string);\n\t\t} catch (e) {\n\t\t\t// value behält den ursprünglichen Wert\n\t\t}\n\t\twatchValidator(\n\t\t\tcomponent,\n\t\t\t'_icons',\n\t\t\t(value): boolean => {\n\t\t\t\treturn (\n\t\t\t\t\tvalue === null ||\n\t\t\t\t\tisString(value, 1) ||\n\t\t\t\t\t(typeof value === 'object' &&\n\t\t\t\t\t\tvalue !== null &&\n\t\t\t\t\t\t(isString(value.left, 1) ||\n\t\t\t\t\t\t\tisIcon(value.left) ||\n\t\t\t\t\t\t\tisString(value.right, 1) ||\n\t\t\t\t\t\t\tisIcon(value.right) ||\n\t\t\t\t\t\t\tisString(value.top, 1) ||\n\t\t\t\t\t\t\tisIcon(value.top) ||\n\t\t\t\t\t\t\tisString(value.bottom, 1) ||\n\t\t\t\t\t\t\tisIcon(value.bottom)))\n\t\t\t\t);\n\t\t\t},\n\t\t\tnew Set(['KoliBriIcon']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tbeforePatch: (nextValue: unknown, nextState: Map<string, unknown>) => {\n\t\t\t\t\t\tif (nextValue === null) {\n\t\t\t\t\t\t\tnextState.set('_icons', {});\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbeforePatchIcon(component);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\trequired: true,\n\t\t\t}\n\t\t);\n\t});\n};\n\nexport const watchIconAlign = (component: Generic.Element.Component, value?: AlignPropType): void => {\n\twatchValidator(component, '_iconAlign', (value) => value === 'left' || value === 'right', new Set(['Alignment {left, right, top, bottom}']), value, {\n\t\thooks: {\n\t\t\tbeforePatch: () => {\n\t\t\t\tbeforePatchIcon(component);\n\t\t\t},\n\t\t},\n\t});\n};\n"],"mappings":";;;iHAqBA,MAAMA,EAAgB,CAACC,EAA0BC,EAA0BC,KAC1E,GAAIC,EAASD,GAAO,CACnBF,EAAMC,GAAaC,C,MACb,GAAIE,EAASF,EAAM,GAAI,CAC7BF,EAAMC,GAAa,CAClBC,KAAMA,E,GAKF,MAAMG,EAAoB,CAACH,EAAwBI,KACzD,IAAIN,EAA2B,GAC/B,GAAII,EAASF,EAAM,GAAI,CACtB,OAAQI,GACP,IAAK,QACJN,EAAQ,CACPO,MAAO,CACNL,KAAMA,IAGR,MACD,QACCF,EAAQ,CACPQ,KAAM,CACLN,KAAMA,I,MAIJ,UAAWA,IAAS,UAAYA,IAAS,KAAM,CACrDH,EAAcC,EAAO,MAAOE,EAAKO,KACjCV,EAAcC,EAAO,QAASE,EAAKK,OACnCR,EAAcC,EAAO,SAAUE,EAAKQ,QACpCX,EAAcC,EAAO,OAAQE,EAAKM,K,CAEnC,OAAOR,CAAK,EAGb,MAAMW,EAAmBC,I,kBACxB,IAAIC,EAAAD,EAAUE,aAAS,MAAAD,SAAA,SAAAA,EAAEE,IAAI,UAAW,CACvC,MAAMb,GAAOc,EAAAJ,EAAUE,aAAS,MAAAE,SAAA,SAAAA,EAAEC,IAAI,UACtC,MAAMX,IAAaY,EAAAN,EAAUE,aAAS,MAAAI,SAAA,SAAAA,EAAED,IAAI,gBAAoCL,EAAUZ,MAAuBmB,YACjHC,EAAAR,EAAUE,aAAS,MAAAM,SAAA,SAAAA,EAAEC,IAAI,SAAUhB,EAAkBH,EAAMI,G,MACrD,IAAIgB,EAAAV,EAAUE,aAAS,MAAAQ,SAAA,SAAAA,EAAEP,IAAI,cAAe,CAClD,MAAMQ,EAAiBX,EAAUZ,MAAuBmB,YACxDK,EAAAZ,EAAUE,aAAS,MAAAU,SAAA,SAAAA,EAAEH,IAAI,SAAU,CAClCE,CAACA,GAAgBE,UACjB,EAACC,EAAAd,EAAUE,aAAS,MAAAY,SAAA,SAAAA,EAAET,IAAI,eAAkCL,EAAUZ,MAAuB2B,OAAOJ,I,SAK1FK,EAAUC,UACfA,IAAU,UACjBA,IAAU,cACDA,EAA4BC,QAAU,aAAeC,EAASF,EAA4BC,SACnG1B,EAAUyB,EAA4B3B,KAAM,G,MAEhC8B,EAAgB,CAACpB,EAAsCiB,KACnEI,EAAoBJ,GAAO,KAC1B,IACCA,EAAQK,EAA4BL,E,CACnC,MAAOM,G,CAGTC,EACCxB,EACA,UACCiB,GAECA,IAAU,MACVzB,EAASyB,EAAO,WACRA,IAAU,UACjBA,IAAU,OACTzB,EAASyB,EAAMrB,KAAM,IACrBoB,EAAOC,EAAMrB,OACbJ,EAASyB,EAAMtB,MAAO,IACtBqB,EAAOC,EAAMtB,QACbH,EAASyB,EAAMpB,IAAK,IACpBmB,EAAOC,EAAMpB,MACbL,EAASyB,EAAMnB,OAAQ,IACvBkB,EAAOC,EAAMnB,UAGjB,IAAI2B,IAAI,CAAC,gBACTR,EACA,CACCS,MAAO,CACNC,YAAa,CAACC,EAAoB1B,KACjC,GAAI0B,IAAc,KAAM,CACvB1B,EAAUO,IAAI,SAAU,G,CAEzBV,EAAgBC,EAAU,GAG5B6B,SAAU,MAEX,GACA,E,MAGUC,EAAiB,CAAC9B,EAAsCiB,KACpEO,EAAexB,EAAW,cAAeiB,GAAUA,IAAU,QAAUA,IAAU,SAAS,IAAIQ,IAAI,CAAC,yCAA0CR,EAAO,CACnJS,MAAO,CACNC,YAAa,KACZ5B,EAAgBC,EAAU,IAG3B,S"}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{d as o}from"./prop.validators-8dc620b0.js";const r=(r,s,a)=>{o(r,"_src",s,a)};export{r as v};
@@ -1 +0,0 @@
1
- {"version":3,"names":["validateImageSource","component","value","options","watchString"],"sources":["src/types/props/image-source.ts"],"sourcesContent":["import { Generic } from '@a11y-ui/core';\n\nimport { watchString, WatchStringOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type ImageSourcePropType = string;\n\n/**\n * Sets the image `src` attribute to the given string.\n */\nexport type PropImageSource = {\n\tsrc: ImageSourcePropType;\n};\n\n/* validator */\nexport const validateImageSource = (component: Generic.Element.Component, value?: ImageSourcePropType, options?: WatchStringOptions): void => {\n\twatchString(component, '_src', value, options);\n};\n"],"mappings":";;;wDAeaA,EAAsB,CAACC,EAAsCC,EAA6BC,KACtGC,EAAYH,EAAW,OAAQC,EAAOC,EAAQ,S"}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{S as t,r as e}from"./index-d56bfd0f.js";const i={type:"logger",log(t){this.output("log",t)},warn(t){this.output("warn",t)},error(t){this.output("error",t)},output(t,e){console&&console[t]&&console[t].apply(console,e)}};class s{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.init(t,e)}init(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=e.prefix||"i18next:",this.logger=t||i,this.options=e,this.debug=e.debug}log(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];return this.forward(e,"log","",!0)}warn(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];return this.forward(e,"warn","",!0)}error(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];return this.forward(e,"error","")}deprecate(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];return this.forward(e,"warn","WARNING DEPRECATED: ",!0)}forward(t,e,s,n){return n&&!this.debug?null:("string"==typeof t[0]&&(t[0]=`${s}${this.prefix} ${t[0]}`),this.logger[e](t))}create(t){return new s(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return(t=t||this.options).prefix=t.prefix||this.prefix,new s(this.logger,t)}}var n=new s;class r{constructor(){this.observers={}}on(t,e){return t.split(" ").forEach((t=>{this.observers[t]=this.observers[t]||[],this.observers[t].push(e)})),this}off(t,e){this.observers[t]&&(e?this.observers[t]=this.observers[t].filter((t=>t!==e)):delete this.observers[t])}emit(t){for(var e=arguments.length,s=new Array(e>1?e-1:0),n=1;n<e;n++)s[n-1]=arguments[n];if(this.observers[t]){[].concat(this.observers[t]).forEach((t=>{t(...s)}))}if(this.observers["*"]){[].concat(this.observers["*"]).forEach((e=>{e.apply(e,[t,...s])}))}}}function f(){let t,e;const s=new Promise(((s,n)=>{t=s,e=n}));return s.resolve=t,s.reject=e,s}function o(t){return null==t?"":""+t}function u(t,e,s){t.forEach((t=>{e[t]&&(s[t]=e[t])}))}function h(t,e,s){function n(t){return t&&t.indexOf("###")>-1?t.replace(/###/g,"."):t}function i(){return!t||"string"==typeof t}const o="string"!=typeof e?[].concat(e):e.split(".");for(;o.length>1;){if(i())return{};const e=n(o.shift());!t[e]&&s&&(t[e]=new s),t=Object.prototype.hasOwnProperty.call(t,e)?t[e]:{}}return i()?{}:{obj:t,k:n(o.shift())}}function a(t,e,s){const{obj:n,k:i}=h(t,e,Object);n[i]=s}function l(t,e,s,n){const{obj:i,k:o}=h(t,e,Object);i[o]=i[o]||[],n&&(i[o]=i[o].concat(s)),n||i[o].push(s)}function c(t,e){const{obj:s,k:n}=h(t,e);if(s)return s[n]}function d(t,e,s){const n=c(t,s);return void 0!==n?n:c(e,s)}function g(t,e,s){for(const n in e)"__proto__"!==n&&"constructor"!==n&&(n in t?"string"==typeof t[n]||t[n]instanceof String||"string"==typeof e[n]||e[n]instanceof String?s&&(t[n]=e[n]):g(t[n],e[n],s):t[n]=e[n]);return t}function p(t){return t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var y={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function m(t){return"string"==typeof t?t.replace(/[&<>"'\/]/g,(t=>y[t])):t}const b=[" ",",","?","!",";"];function $(t,e,s){e=e||"",s=s||"";const n=b.filter((t=>e.indexOf(t)<0&&s.indexOf(t)<0));if(0===n.length)return!0;const i=new RegExp(`(${n.map((t=>"?"===t?"\\?":t)).join("|")})`);let o=!i.test(t);if(!o){const e=t.indexOf(s);e>0&&!i.test(t.substring(0,e))&&(o=!0)}return o}function v(t,e){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(!t)return;if(t[e])return t[e];const n=e.split(s);let i=t;for(let t=0;t<n.length;++t){if(!i)return;if("string"==typeof i[n[t]]&&t+1<n.length)return;if(void 0===i[n[t]]){let o=2,r=n.slice(t,t+o).join(s),a=i[r];for(;void 0===a&&n.length>t+o;)o++,r=n.slice(t,t+o).join(s),a=i[r];if(void 0===a)return;if(null===a)return null;if(e.endsWith(r)){if("string"==typeof a)return a;if(r&&"string"==typeof a[r])return a[r]}const l=n.slice(t+o).join(s);return l?v(a,l,s):void 0}i=i[n[t]]}return i}function w(t){return t&&t.indexOf("_")>0?t.replace("_","-"):t}class j extends r{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=e,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const e=this.options.ns.indexOf(t);e>-1&&this.options.ns.splice(e,1)}getResource(t,e,s){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i=void 0!==n.keySeparator?n.keySeparator:this.options.keySeparator,o=void 0!==n.ignoreJSONStructure?n.ignoreJSONStructure:this.options.ignoreJSONStructure;let r=[t,e];s&&"string"!=typeof s&&(r=r.concat(s)),s&&"string"==typeof s&&(r=r.concat(i?s.split(i):s)),t.indexOf(".")>-1&&(r=t.split("."));const a=c(this.data,r);return a||!o||"string"!=typeof s?a:v(this.data&&this.data[t]&&this.data[t][e],s,i)}addResource(t,e,s,n){let i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1};const o=void 0!==i.keySeparator?i.keySeparator:this.options.keySeparator;let r=[t,e];s&&(r=r.concat(o?s.split(o):s)),t.indexOf(".")>-1&&(r=t.split("."),n=e,e=r[1]),this.addNamespaces(e),a(this.data,r,n),i.silent||this.emit("added",t,e,s,n)}addResources(t,e,s){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(const n in s)"string"!=typeof s[n]&&"[object Array]"!==Object.prototype.toString.apply(s[n])||this.addResource(t,e,n,s[n],{silent:!0});n.silent||this.emit("added",t,e,s)}addResourceBundle(t,e,s,n,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1},r=[t,e];t.indexOf(".")>-1&&(r=t.split("."),n=s,s=e,e=r[1]),this.addNamespaces(e);let l=c(this.data,r)||{};n?g(l,s,i):l={...l,...s},a(this.data,r,l),o.silent||this.emit("added",t,e,s)}removeResourceBundle(t,e){this.hasResourceBundle(t,e)&&delete this.data[t][e],this.removeNamespaces(e),this.emit("removed",t,e)}hasResourceBundle(t,e){return void 0!==this.getResource(t,e)}getResourceBundle(t,e){return e||(e=this.options.defaultNS),"v1"===this.options.compatibilityAPI?{...this.getResource(t,e)}:this.getResource(t,e)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const e=this.getDataByLanguage(t);return!!(e&&Object.keys(e)||[]).find((t=>e[t]&&Object.keys(e[t]).length>0))}toJSON(){return this.data}}var N={processors:{},addPostProcessor(t){this.processors[t.name]=t},handle(t,e,s,n,i){return t.forEach((t=>{this.processors[t]&&(e=this.processors[t].process(e,s,n,i))})),e}};const k={};class x extends r{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(),u(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=e,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=n.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}};if(null==t)return!1;const s=this.resolve(t,e);return s&&void 0!==s.res}extractFromKey(t,e){let s=void 0!==e.nsSeparator?e.nsSeparator:this.options.nsSeparator;void 0===s&&(s=":");const n=void 0!==e.keySeparator?e.keySeparator:this.options.keySeparator;let i=e.ns||this.options.defaultNS||[];const o=s&&t.indexOf(s)>-1,r=!(this.options.userDefinedKeySeparator||e.keySeparator||this.options.userDefinedNsSeparator||e.nsSeparator||$(t,s,n));if(o&&!r){const e=t.match(this.interpolator.nestingRegexp);if(e&&e.length>0)return{key:t,namespaces:i};const o=t.split(s);(s!==n||s===n&&this.options.ns.indexOf(o[0])>-1)&&(i=o.shift()),t=o.join(n)}return"string"==typeof i&&(i=[i]),{key:t,namespaces:i}}translate(t,e,s){if("object"!=typeof e&&this.options.overloadTranslationOptionHandler&&(e=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof e&&(e={...e}),e||(e={}),null==t)return"";Array.isArray(t)||(t=[String(t)]);const n=void 0!==e.returnDetails?e.returnDetails:this.options.returnDetails,i=void 0!==e.keySeparator?e.keySeparator:this.options.keySeparator,{key:o,namespaces:r}=this.extractFromKey(t[t.length-1],e),a=r[r.length-1],l=e.lng||this.language,u=e.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&"cimode"===l.toLowerCase()){if(u){const t=e.nsSeparator||this.options.nsSeparator;return n?{res:`${a}${t}${o}`,usedKey:o,exactUsedKey:o,usedLng:l,usedNS:a,usedParams:this.getUsedParamsDetails(e)}:`${a}${t}${o}`}return n?{res:o,usedKey:o,exactUsedKey:o,usedLng:l,usedNS:a,usedParams:this.getUsedParamsDetails(e)}:o}const c=this.resolve(t,e);let h=c&&c.res;const p=c&&c.usedKey||o,g=c&&c.exactUsedKey||o,d=Object.prototype.toString.apply(h),f=void 0!==e.joinArrays?e.joinArrays:this.options.joinArrays,m=!this.i18nFormat||this.i18nFormat.handleAsObject;if(m&&h&&("string"!=typeof h&&"boolean"!=typeof h&&"number"!=typeof h)&&["[object Number]","[object Function]","[object RegExp]"].indexOf(d)<0&&("string"!=typeof f||"[object Array]"!==d)){if(!e.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const t=this.options.returnedObjectHandler?this.options.returnedObjectHandler(p,h,{...e,ns:r}):`key '${o} (${this.language})' returned an object instead of string.`;return n?(c.res=t,c.usedParams=this.getUsedParamsDetails(e),c):t}if(i){const t="[object Array]"===d,s=t?[]:{},n=t?g:p;for(const t in h)if(Object.prototype.hasOwnProperty.call(h,t)){const o=`${n}${i}${t}`;s[t]=this.translate(o,{...e,joinArrays:!1,ns:r}),s[t]===o&&(s[t]=h[t])}h=s}}else if(m&&"string"==typeof f&&"[object Array]"===d)h=h.join(f),h&&(h=this.extendTranslation(h,t,e,s));else{let n=!1,r=!1;const u=void 0!==e.count&&"string"!=typeof e.count,p=x.hasDefaultValue(e),g=u?this.pluralResolver.getSuffix(l,e.count,e):"",d=e.ordinal&&u?this.pluralResolver.getSuffix(l,e.count,{ordinal:!1}):"",f=e[`defaultValue${g}`]||e[`defaultValue${d}`]||e.defaultValue;!this.isValidLookup(h)&&p&&(n=!0,h=f),this.isValidLookup(h)||(r=!0,h=o);const m=(e.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&r?void 0:h,y=p&&f!==h&&this.options.updateMissing;if(r||n||y){if(this.logger.log(y?"updateKey":"missingKey",l,a,o,y?f:h),i){const t=this.resolve(o,{...e,keySeparator:!1});t&&t.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let t=[];const s=this.languageUtils.getFallbackCodes(this.options.fallbackLng,e.lng||this.language);if("fallback"===this.options.saveMissingTo&&s&&s[0])for(let e=0;e<s.length;e++)t.push(s[e]);else"all"===this.options.saveMissingTo?t=this.languageUtils.toResolveHierarchy(e.lng||this.language):t.push(e.lng||this.language);const n=(t,s,n)=>{const i=p&&n!==h?n:m;this.options.missingKeyHandler?this.options.missingKeyHandler(t,a,s,i,y,e):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(t,a,s,i,y,e),this.emit("missingKey",t,a,s,h)};this.options.saveMissing&&(this.options.saveMissingPlurals&&u?t.forEach((t=>{this.pluralResolver.getSuffixes(t,e).forEach((s=>{n([t],o+s,e[`defaultValue${s}`]||f)}))})):n(t,o,f))}h=this.extendTranslation(h,t,e,c,s),r&&h===o&&this.options.appendNamespaceToMissingKey&&(h=`${a}:${o}`),(r||n)&&this.options.parseMissingKeyHandler&&(h="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${a}:${o}`:o,n?h:void 0):this.options.parseMissingKeyHandler(h))}return n?(c.res=h,c.usedParams=this.getUsedParamsDetails(e),c):h}extendTranslation(t,e,s,n,i){var o=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...s},s.lng||this.language||n.usedLng,n.usedNS,n.usedKey,{resolved:n});else if(!s.skipInterpolation){s.interpolation&&this.interpolator.init({...s,interpolation:{...this.options.interpolation,...s.interpolation}});const r="string"==typeof t&&(s&&s.interpolation&&void 0!==s.interpolation.skipOnVariables?s.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let a;if(r){const e=t.match(this.interpolator.nestingRegexp);a=e&&e.length}let l=s.replace&&"string"!=typeof s.replace?s.replace:s;if(this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),t=this.interpolator.interpolate(t,l,s.lng||this.language,s),r){const e=t.match(this.interpolator.nestingRegexp);a<(e&&e.length)&&(s.nest=!1)}!s.lng&&"v1"!==this.options.compatibilityAPI&&n&&n.res&&(s.lng=n.usedLng),!1!==s.nest&&(t=this.interpolator.nest(t,(function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return i&&i[0]===n[0]&&!s.context?(o.logger.warn(`It seems you are nesting recursively key: ${n[0]} in key: ${e[0]}`),null):o.translate(...n,e)}),s)),s.interpolation&&this.interpolator.reset()}const r=s.postProcess||this.options.postProcess,a="string"==typeof r?[r]:r;return null!=t&&a&&a.length&&!1!==s.applyPostProcessor&&(t=N.handle(a,t,e,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...n,usedParams:this.getUsedParamsDetails(s)},...s}:s,this)),t}resolve(t){let e,s,n,i,o,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof t&&(t=[t]),t.forEach((t=>{if(this.isValidLookup(e))return;const a=this.extractFromKey(t,r),l=a.key;s=l;let u=a.namespaces;this.options.fallbackNS&&(u=u.concat(this.options.fallbackNS));const c=void 0!==r.count&&"string"!=typeof r.count,h=c&&!r.ordinal&&0===r.count&&this.pluralResolver.shouldUseIntlApi(),p=void 0!==r.context&&("string"==typeof r.context||"number"==typeof r.context)&&""!==r.context,g=r.lngs?r.lngs:this.languageUtils.toResolveHierarchy(r.lng||this.language,r.fallbackLng);u.forEach((t=>{this.isValidLookup(e)||(o=t,!k[`${g[0]}-${t}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(o)&&(k[`${g[0]}-${t}`]=!0,this.logger.warn(`key "${s}" for languages "${g.join(", ")}" won't get resolved as namespace "${o}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),g.forEach((s=>{if(this.isValidLookup(e))return;i=s;const o=[l];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(o,l,s,t,r);else{let t;c&&(t=this.pluralResolver.getSuffix(s,r.count,r));const e=`${this.options.pluralSeparator}zero`,n=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(c&&(o.push(l+t),r.ordinal&&0===t.indexOf(n)&&o.push(l+t.replace(n,this.options.pluralSeparator)),h&&o.push(l+e)),p){const s=`${l}${this.options.contextSeparator}${r.context}`;o.push(s),c&&(o.push(s+t),r.ordinal&&0===t.indexOf(n)&&o.push(s+t.replace(n,this.options.pluralSeparator)),h&&o.push(s+e))}}let a;for(;a=o.pop();)this.isValidLookup(e)||(n=a,e=this.getResource(s,t,a,r))})))}))})),{res:e,usedKey:s,exactUsedKey:n,usedLng:i,usedNS:o}}isValidLookup(t){return!(void 0===t||!this.options.returnNull&&null===t||!this.options.returnEmptyString&&""===t)}getResource(t,e,s){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,e,s,n):this.resourceStore.getResource(t,e,s,n)}getUsedParamsDetails(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],s=t.replace&&"string"!=typeof t.replace;let n=s?t.replace:t;if(s&&void 0!==t.count&&(n.count=t.count),this.options.interpolation.defaultVariables&&(n={...this.options.interpolation.defaultVariables,...n}),!s){n={...n};for(const t of e)delete n[t]}return n}static hasDefaultValue(t){const e="defaultValue";for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&e===s.substring(0,12)&&void 0!==t[s])return!0;return!1}}function O(t){return t.charAt(0).toUpperCase()+t.slice(1)}class S{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=n.create("languageUtils")}getScriptPartFromCode(t){if(!(t=w(t))||t.indexOf("-")<0)return null;const e=t.split("-");return 2===e.length?null:(e.pop(),"x"===e[e.length-1].toLowerCase()?null:this.formatLanguageCode(e.join("-")))}getLanguagePartFromCode(t){if(!(t=w(t))||t.indexOf("-")<0)return t;const e=t.split("-");return this.formatLanguageCode(e[0])}formatLanguageCode(t){if("string"==typeof t&&t.indexOf("-")>-1){const e=["hans","hant","latn","cyrl","cans","mong","arab"];let s=t.split("-");return this.options.lowerCaseLng?s=s.map((t=>t.toLowerCase())):2===s.length?(s[0]=s[0].toLowerCase(),s[1]=s[1].toUpperCase(),e.indexOf(s[1].toLowerCase())>-1&&(s[1]=O(s[1].toLowerCase()))):3===s.length&&(s[0]=s[0].toLowerCase(),2===s[1].length&&(s[1]=s[1].toUpperCase()),"sgn"!==s[0]&&2===s[2].length&&(s[2]=s[2].toUpperCase()),e.indexOf(s[1].toLowerCase())>-1&&(s[1]=O(s[1].toLowerCase())),e.indexOf(s[2].toLowerCase())>-1&&(s[2]=O(s[2].toLowerCase()))),s.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let e;return t.forEach((t=>{if(e)return;const s=this.formatLanguageCode(t);this.options.supportedLngs&&!this.isSupportedCode(s)||(e=s)})),!e&&this.options.supportedLngs&&t.forEach((t=>{if(e)return;const s=this.getLanguagePartFromCode(t);if(this.isSupportedCode(s))return e=s;e=this.options.supportedLngs.find((t=>t===s?t:t.indexOf("-")<0&&s.indexOf("-")<0?void 0:0===t.indexOf(s)?t:void 0))})),e||(e=this.getFallbackCodes(this.options.fallbackLng)[0]),e}getFallbackCodes(t,e){if(!t)return[];if("function"==typeof t&&(t=t(e)),"string"==typeof t&&(t=[t]),"[object Array]"===Object.prototype.toString.apply(t))return t;if(!e)return t.default||[];let s=t[e];return s||(s=t[this.getScriptPartFromCode(e)]),s||(s=t[this.formatLanguageCode(e)]),s||(s=t[this.getLanguagePartFromCode(e)]),s||(s=t.default),s||[]}toResolveHierarchy(t,e){const s=this.getFallbackCodes(e||this.options.fallbackLng||[],t),n=[],i=t=>{t&&(this.isSupportedCode(t)?n.push(t):this.logger.warn(`rejecting language code not found in supportedLngs: ${t}`))};return"string"==typeof t&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?("languageOnly"!==this.options.load&&i(this.formatLanguageCode(t)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&i(this.getScriptPartFromCode(t)),"currentOnly"!==this.options.load&&i(this.getLanguagePartFromCode(t))):"string"==typeof t&&i(this.formatLanguageCode(t)),s.forEach((t=>{n.indexOf(t)<0&&i(this.formatLanguageCode(t))})),n}}let R=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],L={1:function(t){return Number(t>1)},2:function(t){return Number(1!=t)},3:function(t){return 0},4:function(t){return Number(t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2)},5:function(t){return Number(0==t?0:1==t?1:2==t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5)},6:function(t){return Number(1==t?0:t>=2&&t<=4?1:2)},7:function(t){return Number(1==t?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2)},8:function(t){return Number(1==t?0:2==t?1:8!=t&&11!=t?2:3)},9:function(t){return Number(t>=2)},10:function(t){return Number(1==t?0:2==t?1:t<7?2:t<11?3:4)},11:function(t){return Number(1==t||11==t?0:2==t||12==t?1:t>2&&t<20?2:3)},12:function(t){return Number(t%10!=1||t%100==11)},13:function(t){return Number(0!==t)},14:function(t){return Number(1==t?0:2==t?1:3==t?2:3)},15:function(t){return Number(t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2)},16:function(t){return Number(t%10==1&&t%100!=11?0:0!==t?1:2)},17:function(t){return Number(1==t||t%10==1&&t%100!=11?0:1)},18:function(t){return Number(0==t?0:1==t?1:2)},19:function(t){return Number(1==t?0:0==t||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3)},20:function(t){return Number(1==t?0:0==t||t%100>0&&t%100<20?1:2)},21:function(t){return Number(t%100==1?1:t%100==2?2:t%100==3||t%100==4?3:0)},22:function(t){return Number(1==t?0:2==t?1:(t<0||t>10)&&t%10==0?2:3)}};const P=["v1","v2","v3"],A=["v4"],I={zero:0,one:1,two:2,few:3,many:4,other:5};function C(){const t={};return R.forEach((e=>{e.lngs.forEach((s=>{t[s]={numbers:e.nr,plurals:L[e.fc]}}))})),t}class B{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=t,this.options=e,this.logger=n.create("pluralResolver"),this.options.compatibilityJSON&&!A.includes(this.options.compatibilityJSON)||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=C()}addRule(t,e){this.rules[t]=e}getRule(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(w(t),{type:e.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const s=this.getRule(t,e);return this.shouldUseIntlApi()?s&&s.resolvedOptions().pluralCategories.length>1:s&&s.numbers.length>1}getPluralFormsOfKey(t,e){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.getSuffixes(t,s).map((t=>`${e}${t}`))}getSuffixes(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const s=this.getRule(t,e);return s?this.shouldUseIntlApi()?s.resolvedOptions().pluralCategories.sort(((t,e)=>I[t]-I[e])).map((t=>`${this.options.prepend}${e.ordinal?`ordinal${this.options.prepend}`:""}${t}`)):s.numbers.map((s=>this.getSuffix(t,s,e))):[]}getSuffix(t,e){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=this.getRule(t,s);return n?this.shouldUseIntlApi()?`${this.options.prepend}${s.ordinal?`ordinal${this.options.prepend}`:""}${n.select(e)}`:this.getSuffixRetroCompatible(n,e):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,e){const s=t.noAbs?t.plurals(e):t.plurals(Math.abs(e));let n=t.numbers[s];this.options.simplifyPluralSuffix&&2===t.numbers.length&&1===t.numbers[0]&&(2===n?n="plural":1===n&&(n=""));const i=()=>this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString();return"v1"===this.options.compatibilityJSON?1===n?"":"number"==typeof n?`_plural_${n.toString()}`:i():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===t.numbers.length&&1===t.numbers[0]?i():this.options.prepend&&s.toString()?this.options.prepend+s.toString():s.toString()}shouldUseIntlApi(){return!P.includes(this.options.compatibilityJSON)}}function E(t,e,s){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],o=d(t,e,s);return!o&&i&&"string"==typeof s&&(o=v(t,s,n),void 0===o&&(o=v(e,s,n))),o}class K{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=n.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(t=>t),this.init(t)}init(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const e=t.interpolation;this.escape=void 0!==e.escape?e.escape:m,this.escapeValue=void 0===e.escapeValue||e.escapeValue,this.useRawValueToEscape=void 0!==e.useRawValueToEscape&&e.useRawValueToEscape,this.prefix=e.prefix?p(e.prefix):e.prefixEscaped||"{{",this.suffix=e.suffix?p(e.suffix):e.suffixEscaped||"}}",this.formatSeparator=e.formatSeparator?e.formatSeparator:e.formatSeparator||",",this.unescapePrefix=e.unescapeSuffix?"":e.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":e.unescapeSuffix||"",this.nestingPrefix=e.nestingPrefix?p(e.nestingPrefix):e.nestingPrefixEscaped||p("$t("),this.nestingSuffix=e.nestingSuffix?p(e.nestingSuffix):e.nestingSuffixEscaped||p(")"),this.nestingOptionsSeparator=e.nestingOptionsSeparator?e.nestingOptionsSeparator:e.nestingOptionsSeparator||",",this.maxReplaces=e.maxReplaces?e.maxReplaces:1e3,this.alwaysFormat=void 0!==e.alwaysFormat&&e.alwaysFormat,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=`${this.prefix}(.+?)${this.suffix}`;this.regexp=new RegExp(t,"g");const e=`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`;this.regexpUnescape=new RegExp(e,"g");const s=`${this.nestingPrefix}(.+?)${this.nestingSuffix}`;this.nestingRegexp=new RegExp(s,"g")}interpolate(t,e,s,n){let i,r,a;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function u(t){return t.replace(/\$/g,"$$$$")}const c=t=>{if(t.indexOf(this.formatSeparator)<0){const i=E(e,l,t,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(i,void 0,s,{...n,...e,interpolationkey:t}):i}const i=t.split(this.formatSeparator),o=i.shift().trim(),r=i.join(this.formatSeparator).trim();return this.format(E(e,l,o,this.options.keySeparator,this.options.ignoreJSONStructure),r,s,{...n,...e,interpolationkey:o})};this.resetRegExp();const h=n&&n.missingInterpolationHandler||this.options.missingInterpolationHandler,p=n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables,g=[{regex:this.regexpUnescape,safeValue:t=>u(t)},{regex:this.regexp,safeValue:t=>this.escapeValue?u(this.escape(t)):u(t)}];return g.forEach((e=>{for(a=0;i=e.regex.exec(t);){const s=i[1].trim();if(r=c(s),void 0===r)if("function"==typeof h){const e=h(t,i,n);r="string"==typeof e?e:""}else if(n&&Object.prototype.hasOwnProperty.call(n,s))r="";else{if(p){r=i[0];continue}this.logger.warn(`missed to pass in variable ${s} for interpolating ${t}`),r=""}else"string"==typeof r||this.useRawValueToEscape||(r=o(r));const l=e.safeValue(r);if(t=t.replace(i[0],l),p?(e.regex.lastIndex+=r.length,e.regex.lastIndex-=i[0].length):e.regex.lastIndex=0,a++,a>=this.maxReplaces)break}})),t}nest(t,e){let s,n,i,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function a(t,e){const s=this.nestingOptionsSeparator;if(t.indexOf(s)<0)return t;const n=t.split(new RegExp(`${s}[ ]*{`));let o=`{${n[1]}`;t=n[0],o=this.interpolate(o,i);const r=o.match(/'/g),a=o.match(/"/g);(r&&r.length%2==0&&!a||a.length%2!=0)&&(o=o.replace(/'/g,'"'));try{i=JSON.parse(o),e&&(i={...e,...i})}catch(e){return this.logger.warn(`failed parsing options string in nesting for key ${t}`,e),`${t}${s}${o}`}return delete i.defaultValue,t}for(;s=this.nestingRegexp.exec(t);){let l=[];i={...r},i=i.replace&&"string"!=typeof i.replace?i.replace:i,i.applyPostProcessor=!1,delete i.defaultValue;let u=!1;if(-1!==s[0].indexOf(this.formatSeparator)&&!/{.*}/.test(s[1])){const t=s[1].split(this.formatSeparator).map((t=>t.trim()));s[1]=t.shift(),l=t,u=!0}if(n=e(a.call(this,s[1].trim(),i),i),n&&s[0]===t&&"string"!=typeof n)return n;"string"!=typeof n&&(n=o(n)),n||(this.logger.warn(`missed to resolve ${s[1]} for nesting ${t}`),n=""),u&&(n=l.reduce(((t,e)=>this.format(t,e,r.lng,{...r,interpolationkey:s[1].trim()})),n.trim())),t=t.replace(s[0],n),this.regexp.lastIndex=0}return t}}function T(t){let e=t.toLowerCase().trim();const s={};if(t.indexOf("(")>-1){const n=t.split("(");e=n[0].toLowerCase().trim();const i=n[1].substring(0,n[1].length-1);if("currency"===e&&i.indexOf(":")<0)s.currency||(s.currency=i.trim());else if("relativetime"===e&&i.indexOf(":")<0)s.range||(s.range=i.trim());else{i.split(";").forEach((t=>{if(!t)return;const[e,...n]=t.split(":"),i=n.join(":").trim().replace(/^'+|'+$/g,"");s[e.trim()]||(s[e.trim()]=i),"false"===i&&(s[e.trim()]=!1),"true"===i&&(s[e.trim()]=!0),isNaN(i)||(s[e.trim()]=parseInt(i,10))}))}}return{formatName:e,formatOptions:s}}function z(t){const e={};return function(s,n,i){const o=n+JSON.stringify(i);let r=e[o];return r||(r=t(w(n),i),e[o]=r),r(s)}}class V{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=n.create("formatter"),this.options=t,this.formats={number:z(((t,e)=>{const s=new Intl.NumberFormat(t,{...e});return t=>s.format(t)})),currency:z(((t,e)=>{const s=new Intl.NumberFormat(t,{...e,style:"currency"});return t=>s.format(t)})),datetime:z(((t,e)=>{const s=new Intl.DateTimeFormat(t,{...e});return t=>s.format(t)})),relativetime:z(((t,e)=>{const s=new Intl.RelativeTimeFormat(t,{...e});return t=>s.format(t,e.range||"day")})),list:z(((t,e)=>{const s=new Intl.ListFormat(t,{...e});return t=>s.format(t)}))},this.init(t)}init(t){const e=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=e.formatSeparator?e.formatSeparator:e.formatSeparator||","}add(t,e){this.formats[t.toLowerCase().trim()]=e}addCached(t,e){this.formats[t.toLowerCase().trim()]=z(e)}format(t,e,s){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i=e.split(this.formatSeparator).reduce(((t,e)=>{const{formatName:i,formatOptions:o}=T(e);if(this.formats[i]){let e=t;try{const r=n&&n.formatParams&&n.formatParams[n.interpolationkey]||{},a=r.locale||r.lng||n.locale||n.lng||s;e=this.formats[i](t,a,{...o,...n,...r})}catch(t){this.logger.warn(t)}return e}return this.logger.warn(`there was no format function for ${i}`),t}),t);return i}}function F(t,e){void 0!==t.pending[e]&&(delete t.pending[e],t.pendingCount--)}class _ extends r{constructor(t,e,s){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};super(),this.backend=t,this.store=e,this.services=s,this.languageUtils=s.languageUtils,this.options=i,this.logger=n.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(s,i.backend,i)}queueLoad(t,e,s,n){const i={},o={},r={},a={};return t.forEach((t=>{let n=!0;e.forEach((e=>{const r=`${t}|${e}`;!s.reload&&this.store.hasResourceBundle(t,e)?this.state[r]=2:this.state[r]<0||(1===this.state[r]?void 0===o[r]&&(o[r]=!0):(this.state[r]=1,n=!1,void 0===o[r]&&(o[r]=!0),void 0===i[r]&&(i[r]=!0),void 0===a[e]&&(a[e]=!0)))})),n||(r[t]=!0)})),(Object.keys(i).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:n}),{toLoad:Object.keys(i),pending:Object.keys(o),toLoadLanguages:Object.keys(r),toLoadNamespaces:Object.keys(a)}}loaded(t,e,s){const n=t.split("|"),i=n[0],o=n[1];e&&this.emit("failedLoading",i,o,e),s&&this.store.addResourceBundle(i,o,s),this.state[t]=e?-1:2;const r={};this.queue.forEach((s=>{l(s.loaded,[i],o),F(s,t),e&&s.errors.push(e),0!==s.pendingCount||s.done||(Object.keys(s.loaded).forEach((t=>{r[t]||(r[t]={});const e=s.loaded[t];e.length&&e.forEach((e=>{void 0===r[t][e]&&(r[t][e]=!0)}))})),s.done=!0,s.errors.length?s.callback(s.errors):s.callback())})),this.emit("loaded",r),this.queue=this.queue.filter((t=>!t.done))}read(t,e,s){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!t.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:t,ns:e,fcName:s,tried:n,wait:i,callback:o});this.readingCalls++;const r=(r,a)=>{if(this.readingCalls--,this.waitingReads.length>0){const t=this.waitingReads.shift();this.read(t.lng,t.ns,t.fcName,t.tried,t.wait,t.callback)}r&&a&&n<this.maxRetries?setTimeout((()=>{this.read.call(this,t,e,s,n+1,2*i,o)}),i):o(r,a)},a=this.backend[s].bind(this.backend);if(2!==a.length)return a(t,e,r);try{const s=a(t,e);s&&"function"==typeof s.then?s.then((t=>r(null,t))).catch(r):r(null,s)}catch(t){r(t)}}prepareLoading(t,e){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),n&&n();"string"==typeof t&&(t=this.languageUtils.toResolveHierarchy(t)),"string"==typeof e&&(e=[e]);const i=this.queueLoad(t,e,s,n);if(!i.toLoad.length)return i.pending.length||n(),null;i.toLoad.forEach((t=>{this.loadOne(t)}))}load(t,e,s){this.prepareLoading(t,e,{},s)}reload(t,e,s){this.prepareLoading(t,e,{reload:!0},s)}loadOne(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const s=t.split("|"),n=s[0],i=s[1];this.read(n,i,"read",void 0,void 0,((s,o)=>{s&&this.logger.warn(`${e}loading namespace ${i} for language ${n} failed`,s),!s&&o&&this.logger.log(`${e}loaded namespace ${i} for language ${n}`,o),this.loaded(t,s,o)}))}saveMissing(t,e,s,n,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(e))this.logger.warn(`did not save key "${s}" as the namespace "${e}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=s&&""!==s){if(this.backend&&this.backend.create){const a={...o,isUpdate:i},l=this.backend.create.bind(this.backend);if(l.length<6)try{let i;i=5===l.length?l(t,e,s,n,a):l(t,e,s,n),i&&"function"==typeof i.then?i.then((t=>r(null,t))).catch(r):r(null,i)}catch(t){r(t)}else l(t,e,s,n,r,a)}t&&t[0]&&this.store.addResource(t[0],e,s,n)}}}function D(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){let e={};if("object"==typeof t[1]&&(e=t[1]),"string"==typeof t[1]&&(e.defaultValue=t[1]),"string"==typeof t[2]&&(e.tDescription=t[2]),"object"==typeof t[2]||"object"==typeof t[3]){const s=t[3]||t[2];Object.keys(s).forEach((t=>{e[t]=s[t]}))}return e},interpolation:{escapeValue:!0,format:(t,e,s,n)=>t,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function M(t){return"string"==typeof t.ns&&(t.ns=[t.ns]),"string"==typeof t.fallbackLng&&(t.fallbackLng=[t.fallbackLng]),"string"==typeof t.fallbackNS&&(t.fallbackNS=[t.fallbackNS]),t.supportedLngs&&t.supportedLngs.indexOf("cimode")<0&&(t.supportedLngs=t.supportedLngs.concat(["cimode"])),t}function U(){}function J(t){Object.getOwnPropertyNames(Object.getPrototypeOf(t)).forEach((e=>{"function"==typeof t[e]&&(t[e]=t[e].bind(t))}))}class W extends r{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0;if(super(),this.options=M(t),this.services={},this.logger=n,this.modules={external:[]},J(this),e&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,e),this;setTimeout((()=>{this.init(t,e)}),0)}}init(){var t=this;let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},s=arguments.length>1?arguments[1]:void 0;"function"==typeof e&&(s=e,e={}),!e.defaultNS&&!1!==e.defaultNS&&e.ns&&("string"==typeof e.ns?e.defaultNS=e.ns:e.ns.indexOf("translation")<0&&(e.defaultNS=e.ns[0]));const i=D();function o(t){return t?"function"==typeof t?new t:t:null}if(this.options={...i,...this.options,...M(e)},"v1"!==this.options.compatibilityAPI&&(this.options.interpolation={...i.interpolation,...this.options.interpolation}),void 0!==e.keySeparator&&(this.options.userDefinedKeySeparator=e.keySeparator),void 0!==e.nsSeparator&&(this.options.userDefinedNsSeparator=e.nsSeparator),!this.options.isClone){let e;this.modules.logger?n.init(o(this.modules.logger),this.options):n.init(null,this.options),this.modules.formatter?e=this.modules.formatter:"undefined"!=typeof Intl&&(e=V);const s=new S(this.options);this.store=new j(this.options.resources,this.options);const r=this.services;r.logger=n,r.resourceStore=this.store,r.languageUtils=s,r.pluralResolver=new B(s,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!e||this.options.interpolation.format&&this.options.interpolation.format!==i.interpolation.format||(r.formatter=o(e),r.formatter.init(r,this.options),this.options.interpolation.format=r.formatter.format.bind(r.formatter)),r.interpolator=new K(this.options),r.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},r.backendConnector=new _(o(this.modules.backend),r.resourceStore,r,this.options),r.backendConnector.on("*",(function(e){for(var s=arguments.length,n=new Array(s>1?s-1:0),i=1;i<s;i++)n[i-1]=arguments[i];t.emit(e,...n)})),this.modules.languageDetector&&(r.languageDetector=o(this.modules.languageDetector),r.languageDetector.init&&r.languageDetector.init(r,this.options.detection,this.options)),this.modules.i18nFormat&&(r.i18nFormat=o(this.modules.i18nFormat),r.i18nFormat.init&&r.i18nFormat.init(this)),this.translator=new x(this.services,this.options),this.translator.on("*",(function(e){for(var s=arguments.length,n=new Array(s>1?s-1:0),i=1;i<s;i++)n[i-1]=arguments[i];t.emit(e,...n)})),this.modules.external.forEach((t=>{t.init&&t.init(this)}))}if(this.format=this.options.interpolation.format,s||(s=U),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const t=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);t.length>0&&"dev"!==t[0]&&(this.options.lng=t[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((e=>{this[e]=function(){return t.store[e](...arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((e=>{this[e]=function(){return t.store[e](...arguments),t}}));const r=f(),a=()=>{const t=(t,e)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),r.resolve(e),s(t,e)};if(this.languages&&"v1"!==this.options.compatibilityAPI&&!this.isInitialized)return t(null,this.t.bind(this));this.changeLanguage(this.options.lng,t)};return this.options.resources||!this.options.initImmediate?a():setTimeout(a,0),r}loadResources(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:U;const s="string"==typeof t?t:this.language;if("function"==typeof t&&(e=t),!this.options.resources||this.options.partialBundledLanguages){if(s&&"cimode"===s.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return e();const t=[],n=e=>{if(!e)return;if("cimode"===e)return;this.services.languageUtils.toResolveHierarchy(e).forEach((e=>{"cimode"!==e&&t.indexOf(e)<0&&t.push(e)}))};if(s)n(s);else{this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((t=>n(t)))}this.options.preload&&this.options.preload.forEach((t=>n(t))),this.services.backendConnector.load(t,this.options.ns,(t=>{t||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),e(t)}))}else e(null)}reloadResources(t,e,s){const n=f();return t||(t=this.languages),e||(e=this.options.ns),s||(s=U),this.services.backendConnector.reload(t,e,(t=>{n.resolve(),s(t)})),n}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===t.type&&(this.modules.backend=t),("logger"===t.type||t.log&&t.warn&&t.error)&&(this.modules.logger=t),"languageDetector"===t.type&&(this.modules.languageDetector=t),"i18nFormat"===t.type&&(this.modules.i18nFormat=t),"postProcessor"===t.type&&N.addPostProcessor(t),"formatter"===t.type&&(this.modules.formatter=t),"3rdParty"===t.type&&this.modules.external.push(t),this}setResolvedLanguage(t){if(t&&this.languages&&!(["cimode","dev"].indexOf(t)>-1))for(let t=0;t<this.languages.length;t++){const e=this.languages[t];if(!(["cimode","dev"].indexOf(e)>-1)&&this.store.hasLanguageSomeTranslations(e)){this.resolvedLanguage=e;break}}}changeLanguage(t,e){var s=this;this.isLanguageChangingTo=t;const n=f();this.emit("languageChanging",t);const i=t=>{this.language=t,this.languages=this.services.languageUtils.toResolveHierarchy(t),this.resolvedLanguage=void 0,this.setResolvedLanguage(t)},o=(t,o)=>{o?(i(o),this.translator.changeLanguage(o),this.isLanguageChangingTo=void 0,this.emit("languageChanged",o),this.logger.log("languageChanged",o)):this.isLanguageChangingTo=void 0,n.resolve((function(){return s.t(...arguments)})),e&&e(t,(function(){return s.t(...arguments)}))},r=e=>{t||e||!this.services.languageDetector||(e=[]);const s="string"==typeof e?e:this.services.languageUtils.getBestMatchFromCodes(e);s&&(this.language||i(s),this.translator.language||this.translator.changeLanguage(s),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(s)),this.loadResources(s,(t=>{o(t,s)}))};return t||!this.services.languageDetector||this.services.languageDetector.async?!t&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(r):this.services.languageDetector.detect(r):r(t):r(this.services.languageDetector.detect()),n}getFixedT(t,e,s){var n=this;const i=function(t,e){let o;if("object"!=typeof e){for(var r=arguments.length,a=new Array(r>2?r-2:0),l=2;l<r;l++)a[l-2]=arguments[l];o=n.options.overloadTranslationOptionHandler([t,e].concat(a))}else o={...e};o.lng=o.lng||i.lng,o.lngs=o.lngs||i.lngs,o.ns=o.ns||i.ns,o.keyPrefix=o.keyPrefix||s||i.keyPrefix;const u=n.options.keySeparator||".";let c;return c=o.keyPrefix&&Array.isArray(t)?t.map((t=>`${o.keyPrefix}${u}${t}`)):o.keyPrefix?`${o.keyPrefix}${u}${t}`:t,n.t(c,o)};return"string"==typeof t?i.lng=t:i.lngs=t,i.ns=e,i.keyPrefix=s,i}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const s=e.lng||this.resolvedLanguage||this.languages[0],n=!!this.options&&this.options.fallbackLng,i=this.languages[this.languages.length-1];if("cimode"===s.toLowerCase())return!0;const o=(t,e)=>{const s=this.services.backendConnector.state[`${t}|${e}`];return-1===s||2===s};if(e.precheck){const t=e.precheck(this,o);if(void 0!==t)return t}return!!this.hasResourceBundle(s,t)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!o(s,t)||n&&!o(i,t)))}loadNamespaces(t,e){const s=f();return this.options.ns?("string"==typeof t&&(t=[t]),t.forEach((t=>{this.options.ns.indexOf(t)<0&&this.options.ns.push(t)})),this.loadResources((t=>{s.resolve(),e&&e(t)})),s):(e&&e(),Promise.resolve())}loadLanguages(t,e){const s=f();"string"==typeof t&&(t=[t]);const n=this.options.preload||[],i=t.filter((t=>n.indexOf(t)<0));return i.length?(this.options.preload=n.concat(i),this.loadResources((t=>{s.resolve(),e&&e(t)})),s):(e&&e(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const e=this.services&&this.services.languageUtils||new S(D());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(e.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){return new W(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}cloneInstance(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:U;const s=t.forkResourceStore;s&&delete t.forkResourceStore;const n={...this.options,...t,isClone:!0},i=new W(n);void 0===t.debug&&void 0===t.prefix||(i.logger=i.logger.clone(t));return["store","services","language"].forEach((t=>{i[t]=this[t]})),i.services={...this.services},i.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},s&&(i.store=new j(this.store.data,n),i.services.resourceStore=i.store),i.translator=new x(i.services,n),i.translator.on("*",(function(t){for(var e=arguments.length,s=new Array(e>1?e-1:0),n=1;n<e;n++)s[n-1]=arguments[n];i.emit(t,...s)})),i.init(n,e),i.translator.options=n,i.translator.backendConnector.services.utils={hasLoadedNamespace:i.hasLoadedNamespace.bind(i)},i}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const q=W.createInstance();q.createInstance=W.createInstance;class H{constructor(){}static async createInstance(t,e){return Array.isArray(e)?e=new Set(e):"function"==typeof e&&(e=new Set([e])),H.instance=new H,q.isInitialized?await q.loadNamespaces(H.namespace):await q.init({ns:[H.namespace],lng:t}),void 0!==e&&e.forEach((t=>t(((t,e)=>(H.instance.addResourceBundle(t,e),t))))),this.instance}static addResourceBundle(t,e){q.addResourceBundle(t,H.namespace,e,!0)}addResourceBundle(t,e){H.addResourceBundle(t,e)}translate(t,e){return q.t(t,Object.assign({ns:H.namespace,count:null==e?void 0:e.count},null==e?void 0:e.placeholders))}}H.namespace="KoliBri";const Y=async(s,n,i)=>{var o,r;if(void 0===t.I18n){const e=await H.createInstance(null!==(r=null===(o=null==i?void 0:i.translation)||void 0===o?void 0:o.name)&&void 0!==r?r:"de",null==i?void 0:i.translations);Object.defineProperty(t,"I18n",{value:e,writable:!1})}return await e(s,n,i)},G=()=>null==t?void 0:t.I18n;export{G as g,Y as r};