@public-ui/components 2.2.11 → 2.2.12

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 (1083) hide show
  1. package/custom-elements.json +3 -21
  2. package/dist/cjs/Alert-0c185e9e.js +4 -0
  3. package/dist/cjs/Alert-0c185e9e.js.map +1 -0
  4. package/dist/cjs/{Collapsible-8b3c4050.js → Collapsible-7f75d739.js} +1 -1
  5. package/dist/cjs/Collapsible-7f75d739.js.map +1 -0
  6. package/dist/cjs/FormFieldMsg-f354ccfa.js +4 -0
  7. package/dist/cjs/FormFieldMsg-f354ccfa.js.map +1 -0
  8. package/dist/cjs/{InternalUnderlinedBadgeText-5bf32805.js → InternalUnderlinedBadgeText-c4cf143b.js} +1 -1
  9. package/dist/cjs/{InternalUnderlinedBadgeText-5bf32805.js.map → InternalUnderlinedBadgeText-c4cf143b.js.map} +1 -1
  10. package/dist/cjs/access-and-short-key-5bfd764e.js +4 -0
  11. package/dist/cjs/access-and-short-key-5bfd764e.js.map +1 -0
  12. package/dist/cjs/align-033dd3ec.js +4 -0
  13. package/dist/cjs/{align-a9f24187.js.map → align-033dd3ec.js.map} +1 -1
  14. package/dist/cjs/align-floating-elements-fd0cbb89.js +4 -0
  15. package/dist/cjs/align-floating-elements-fd0cbb89.js.map +1 -0
  16. package/dist/cjs/app-globals-3630d4e9.js +4 -0
  17. package/dist/cjs/app-globals-3630d4e9.js.map +1 -0
  18. package/dist/cjs/associated.controller-52a935b6.js +4 -0
  19. package/dist/cjs/associated.controller-52a935b6.js.map +1 -0
  20. package/dist/cjs/badge-text-8dec676c.js +4 -0
  21. package/dist/cjs/{badge-text-9d12359c.js.map → badge-text-8dec676c.js.map} +1 -1
  22. package/dist/cjs/button-variant-88579d18.js +4 -0
  23. package/dist/cjs/{button-variant-10ad2503.js.map → button-variant-88579d18.js.map} +1 -1
  24. package/dist/cjs/color-162ea61e.js +4 -0
  25. package/dist/cjs/color-162ea61e.js.map +1 -0
  26. package/dist/cjs/controller-5f8b2d27.js +4 -0
  27. package/dist/cjs/controller-5f8b2d27.js.map +1 -0
  28. package/dist/cjs/controller-63392fcc.js +4 -0
  29. package/dist/cjs/{controller-d7e8fba5.js.map → controller-63392fcc.js.map} +1 -1
  30. package/dist/cjs/controller-b58f6250.js +4 -0
  31. package/dist/cjs/controller-b58f6250.js.map +1 -0
  32. package/dist/cjs/controller-e30139f3.js +4 -0
  33. package/dist/cjs/{controller-20541e1e.js.map → controller-e30139f3.js.map} +1 -1
  34. package/dist/cjs/controller-ea284a25.js +4 -0
  35. package/dist/cjs/controller-ea284a25.js.map +1 -0
  36. package/dist/cjs/controller-icon-f2b4f168.js +4 -0
  37. package/dist/cjs/controller-icon-f2b4f168.js.map +1 -0
  38. package/dist/cjs/custom-class-0e90f691.js +4 -0
  39. package/dist/cjs/{custom-class-1bd0519a.js.map → custom-class-0e90f691.js.map} +1 -1
  40. package/dist/cjs/dev.utils-c93c0f5c.js +4 -0
  41. package/dist/cjs/dev.utils-c93c0f5c.js.map +1 -0
  42. package/dist/cjs/devtools-7be6b549.js +4 -0
  43. package/dist/cjs/devtools-7be6b549.js.map +1 -0
  44. package/dist/cjs/disabled-a4caeaf0.js +4 -0
  45. package/dist/cjs/{disabled-0ee19649.js.map → disabled-a4caeaf0.js.map} +1 -1
  46. package/dist/cjs/has-closer-418d6eb6.js +4 -0
  47. package/dist/cjs/{has-closer-51ccf77f.js.map → has-closer-418d6eb6.js.map} +1 -1
  48. package/dist/cjs/has-counter-4e1a4310.js +4 -0
  49. package/dist/cjs/{has-counter-8679115c.js.map → has-counter-4e1a4310.js.map} +1 -1
  50. package/dist/cjs/hide-label-c4e4da8c.js +4 -0
  51. package/dist/cjs/{hide-label-a9a94f19.js.map → hide-label-c4e4da8c.js.map} +1 -1
  52. package/dist/cjs/href-a57999b2.js +4 -0
  53. package/dist/cjs/{href-c14d2c3e.js.map → href-a57999b2.js.map} +1 -1
  54. package/dist/cjs/i18n-b5fa004e.js +4 -0
  55. package/dist/cjs/{i18n-5f0ed6ed.js.map → i18n-b5fa004e.js.map} +1 -1
  56. package/dist/cjs/icons-bdb59a04.js +4 -0
  57. package/dist/cjs/icons-bdb59a04.js.map +1 -0
  58. package/dist/cjs/image-source-92ea226a.js +4 -0
  59. package/dist/cjs/{image-source-3b5f1388.js.map → image-source-92ea226a.js.map} +1 -1
  60. package/dist/cjs/index-4d023d25.js +4 -0
  61. package/dist/cjs/index-4d023d25.js.map +1 -0
  62. package/dist/cjs/{index-cb5cbda1.js → index-f08231ed.js} +1 -1
  63. package/dist/cjs/{index-cb5cbda1.js.map → index-f08231ed.js.map} +1 -1
  64. package/dist/cjs/index.cjs.js +1 -1
  65. package/dist/cjs/index.cjs.js.map +1 -1
  66. package/dist/cjs/keyboard-f10324af.js +4 -0
  67. package/dist/cjs/keyboard-f10324af.js.map +1 -0
  68. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-alert-wc.cjs.entry.js.map +1 -1
  74. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-alert.cjs.entry.js.map +1 -1
  76. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-avatar-wc.cjs.entry.js.map +1 -1
  78. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
  80. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  82. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  84. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-button-group.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-button-wc.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-button.cjs.entry.js.map +1 -1
  93. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-combobox.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-combobox.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  99. package/dist/cjs/kol-drawer.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-drawer.cjs.entry.js.map +1 -1
  101. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  103. package/dist/cjs/kol-heading-wc.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-heading-wc.cjs.entry.js.map +1 -1
  105. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-heading.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  109. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  110. package/dist/cjs/kol-image.cjs.entry.js.map +1 -1
  111. package/dist/cjs/kol-indented-text-wc.cjs.entry.js +1 -1
  112. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  116. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  118. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  120. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  122. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  124. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  126. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  128. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  132. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-input.cjs.entry.js.map +1 -1
  136. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  139. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  140. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  141. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  142. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  143. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  144. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  145. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  146. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  147. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  148. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  149. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  150. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  151. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  152. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  153. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  154. package/dist/cjs/kol-popover-button.cjs.entry.js +1 -1
  155. package/dist/cjs/kol-popover-button.cjs.entry.js.map +1 -1
  156. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  157. package/dist/cjs/kol-popover-wc.cjs.entry.js.map +1 -1
  158. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  159. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  160. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  161. package/dist/cjs/kol-quote.cjs.entry.js.map +1 -1
  162. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  163. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  164. package/dist/cjs/kol-single-select.cjs.entry.js +1 -1
  165. package/dist/cjs/kol-single-select.cjs.entry.js.map +1 -1
  166. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  167. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  168. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  169. package/dist/cjs/kol-span-wc.cjs.entry.js.map +1 -1
  170. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  171. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  172. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  173. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
  174. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  175. package/dist/cjs/kol-symbol.cjs.entry.js.map +1 -1
  176. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  177. package/dist/cjs/kol-table-stateful.cjs.entry.js.map +1 -1
  178. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  179. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js.map +1 -1
  180. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  181. package/dist/cjs/kol-table-stateless.cjs.entry.js.map +1 -1
  182. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  183. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  184. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  185. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  186. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  187. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  188. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  189. package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
  190. package/dist/cjs/kol-toolbar.cjs.entry.js.map +1 -1
  191. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  192. package/dist/cjs/kol-tooltip-wc.cjs.entry.js.map +1 -1
  193. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  194. package/dist/cjs/kol-tree-item-wc.cjs.entry.js.map +1 -1
  195. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  196. package/dist/cjs/kol-tree-item.cjs.entry.js.map +1 -1
  197. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  198. package/dist/cjs/kol-tree-wc.cjs.entry.js.map +1 -1
  199. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  200. package/dist/cjs/kol-tree.cjs.entry.js.map +1 -1
  201. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  202. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  203. package/dist/cjs/kolibri.cjs.js +1 -1
  204. package/dist/cjs/kolibri.cjs.js.map +1 -1
  205. package/dist/cjs/label-32668ef6.js +4 -0
  206. package/dist/cjs/label-32668ef6.js.map +1 -0
  207. package/dist/cjs/loader.cjs.js +1 -1
  208. package/dist/cjs/loader.cjs.js.map +1 -1
  209. package/dist/cjs/open-0bd660ad.js +4 -0
  210. package/dist/cjs/{open-e08280be.js.map → open-0bd660ad.js.map} +1 -1
  211. package/dist/cjs/rows-945eef57.js +4 -0
  212. package/dist/cjs/{rows-24ccf646.js.map → rows-945eef57.js.map} +1 -1
  213. package/dist/cjs/show-7c9e5406.js +4 -0
  214. package/dist/cjs/{show-0625d136.js.map → show-7c9e5406.js.map} +1 -1
  215. package/dist/cjs/spell-check-2d7ed9c3.js +4 -0
  216. package/dist/cjs/{spell-check-d54fcffc.js.map → spell-check-2d7ed9c3.js.map} +1 -1
  217. package/dist/cjs/suggestions-7567310b.js +4 -0
  218. package/dist/cjs/suggestions-7567310b.js.map +1 -0
  219. package/dist/cjs/table-selection-15ab1cff.js +4 -0
  220. package/dist/cjs/table-selection-15ab1cff.js.map +1 -0
  221. package/dist/cjs/test-component.cjs.entry.js +1 -1
  222. package/dist/cjs/tooltip-align-cf8829c6.js +4 -0
  223. package/dist/cjs/tooltip-align-cf8829c6.js.map +1 -0
  224. package/dist/cjs/unique-nav-labels-b8a16446.js +4 -0
  225. package/dist/cjs/unique-nav-labels-b8a16446.js.map +1 -0
  226. package/dist/cjs/validation-4fab29ff.js +4 -0
  227. package/dist/cjs/{validation-2820e912.js.map → validation-4fab29ff.js.map} +1 -1
  228. package/dist/cjs/validation-5256cf18.js +4 -0
  229. package/dist/cjs/{validation-bcb18e67.js.map → validation-5256cf18.js.map} +1 -1
  230. package/dist/components/Alert.js +1 -1
  231. package/dist/components/Alert.js.map +1 -1
  232. package/dist/components/Collapsible.js +1 -1
  233. package/dist/components/Collapsible.js.map +1 -1
  234. package/dist/components/FormFieldMsg.js +1 -1
  235. package/dist/components/FormFieldMsg.js.map +1 -1
  236. package/dist/components/access-and-short-key.js +1 -1
  237. package/dist/components/align-floating-elements.js +1 -1
  238. package/dist/components/align-floating-elements.js.map +1 -1
  239. package/dist/components/align.js +1 -1
  240. package/dist/components/associated.controller.js +1 -1
  241. package/dist/components/associated.controller.js.map +1 -1
  242. package/dist/components/badge-text.js +1 -1
  243. package/dist/components/button-variant.js +1 -1
  244. package/dist/components/color.js +1 -1
  245. package/dist/components/color.js.map +1 -1
  246. package/dist/components/controller-icon.js +1 -1
  247. package/dist/components/controller-icon.js.map +1 -1
  248. package/dist/components/controller.js +1 -1
  249. package/dist/components/controller.js.map +1 -1
  250. package/dist/components/controller2.js +1 -1
  251. package/dist/components/controller2.js.map +1 -1
  252. package/dist/components/controller3.js +1 -1
  253. package/dist/components/controller4.js +1 -1
  254. package/dist/components/controller5.js +1 -1
  255. package/dist/components/custom-class.js +1 -1
  256. package/dist/components/dev.utils.js +1 -1
  257. package/dist/components/dev.utils.js.map +1 -1
  258. package/dist/components/devtools.js +1 -1
  259. package/dist/components/devtools.js.map +1 -1
  260. package/dist/components/disabled.js +1 -1
  261. package/dist/components/has-closer.js +1 -1
  262. package/dist/components/has-counter.js +1 -1
  263. package/dist/components/hide-label.js +1 -1
  264. package/dist/components/href.js +1 -1
  265. package/dist/components/i18n2.js +1 -1
  266. package/dist/components/icons.js +1 -1
  267. package/dist/components/icons.js.map +1 -1
  268. package/dist/components/image-source.js +1 -1
  269. package/dist/components/index.js +1 -1
  270. package/dist/components/index.js.map +1 -1
  271. package/dist/components/index2.js +4 -0
  272. package/dist/components/index2.js.map +1 -0
  273. package/dist/components/keyboard.js +4 -0
  274. package/dist/components/keyboard.js.map +1 -0
  275. package/dist/components/kol-abbr.js +1 -1
  276. package/dist/components/kol-abbr.js.map +1 -1
  277. package/dist/components/kol-accordion.js +1 -1
  278. package/dist/components/kol-accordion.js.map +1 -1
  279. package/dist/components/kol-alert-wc.js +1 -1
  280. package/dist/components/kol-alert.js +1 -1
  281. package/dist/components/kol-alert.js.map +1 -1
  282. package/dist/components/kol-avatar-wc.js +1 -1
  283. package/dist/components/kol-avatar-wc.js.map +1 -1
  284. package/dist/components/kol-avatar.js +1 -1
  285. package/dist/components/kol-avatar.js.map +1 -1
  286. package/dist/components/kol-badge.js +1 -1
  287. package/dist/components/kol-badge.js.map +1 -1
  288. package/dist/components/kol-breadcrumb.js +1 -1
  289. package/dist/components/kol-breadcrumb.js.map +1 -1
  290. package/dist/components/kol-button-group.js +1 -1
  291. package/dist/components/kol-button-group.js.map +1 -1
  292. package/dist/components/kol-button-link.js +1 -1
  293. package/dist/components/kol-button-link.js.map +1 -1
  294. package/dist/components/kol-button-wc.js +1 -1
  295. package/dist/components/kol-button-wc.js.map +1 -1
  296. package/dist/components/kol-button.js +1 -1
  297. package/dist/components/kol-button.js.map +1 -1
  298. package/dist/components/kol-card.js +1 -1
  299. package/dist/components/kol-card.js.map +1 -1
  300. package/dist/components/kol-combobox.js +1 -1
  301. package/dist/components/kol-combobox.js.map +1 -1
  302. package/dist/components/kol-details.js +1 -1
  303. package/dist/components/kol-details.js.map +1 -1
  304. package/dist/components/kol-drawer.js +1 -1
  305. package/dist/components/kol-drawer.js.map +1 -1
  306. package/dist/components/kol-form.js +1 -1
  307. package/dist/components/kol-form.js.map +1 -1
  308. package/dist/components/kol-heading-wc.js +1 -1
  309. package/dist/components/kol-heading-wc.js.map +1 -1
  310. package/dist/components/kol-heading.js +1 -1
  311. package/dist/components/kol-heading.js.map +1 -1
  312. package/dist/components/kol-icon.js +1 -1
  313. package/dist/components/kol-icon.js.map +1 -1
  314. package/dist/components/kol-image.js +1 -1
  315. package/dist/components/kol-image.js.map +1 -1
  316. package/dist/components/kol-indented-text.js +1 -1
  317. package/dist/components/kol-indented-text.js.map +1 -1
  318. package/dist/components/kol-input-checkbox.js +1 -1
  319. package/dist/components/kol-input-checkbox.js.map +1 -1
  320. package/dist/components/kol-input-color.js +1 -1
  321. package/dist/components/kol-input-color.js.map +1 -1
  322. package/dist/components/kol-input-date.js +1 -1
  323. package/dist/components/kol-input-date.js.map +1 -1
  324. package/dist/components/kol-input-email.js +1 -1
  325. package/dist/components/kol-input-email.js.map +1 -1
  326. package/dist/components/kol-input-file.js +1 -1
  327. package/dist/components/kol-input-file.js.map +1 -1
  328. package/dist/components/kol-input-number.js +1 -1
  329. package/dist/components/kol-input-number.js.map +1 -1
  330. package/dist/components/kol-input-password.js +1 -1
  331. package/dist/components/kol-input-password.js.map +1 -1
  332. package/dist/components/kol-input-radio.js +1 -1
  333. package/dist/components/kol-input-radio.js.map +1 -1
  334. package/dist/components/kol-input-range.js +1 -1
  335. package/dist/components/kol-input-range.js.map +1 -1
  336. package/dist/components/kol-input-text.js +1 -1
  337. package/dist/components/kol-input-text.js.map +1 -1
  338. package/dist/components/kol-input.js +1 -1
  339. package/dist/components/kol-input.js.map +1 -1
  340. package/dist/components/kol-kolibri.js +1 -1
  341. package/dist/components/kol-kolibri.js.map +1 -1
  342. package/dist/components/kol-link-button.js +1 -1
  343. package/dist/components/kol-link-button.js.map +1 -1
  344. package/dist/components/kol-link-group.js +1 -1
  345. package/dist/components/kol-link-group.js.map +1 -1
  346. package/dist/components/kol-link-wc.js +1 -1
  347. package/dist/components/kol-link-wc.js.map +1 -1
  348. package/dist/components/kol-link.js +1 -1
  349. package/dist/components/kol-link.js.map +1 -1
  350. package/dist/components/kol-logo.js +1 -1
  351. package/dist/components/kol-logo.js.map +1 -1
  352. package/dist/components/kol-modal.js +1 -1
  353. package/dist/components/kol-modal.js.map +1 -1
  354. package/dist/components/kol-nav.js +1 -1
  355. package/dist/components/kol-nav.js.map +1 -1
  356. package/dist/components/kol-pagination.js +1 -1
  357. package/dist/components/kol-pagination.js.map +1 -1
  358. package/dist/components/kol-popover-button.js +1 -1
  359. package/dist/components/kol-popover-button.js.map +1 -1
  360. package/dist/components/kol-popover-wc.js +1 -1
  361. package/dist/components/kol-popover-wc.js.map +1 -1
  362. package/dist/components/kol-progress.js +1 -1
  363. package/dist/components/kol-progress.js.map +1 -1
  364. package/dist/components/kol-quote.js +1 -1
  365. package/dist/components/kol-quote.js.map +1 -1
  366. package/dist/components/kol-select.js +1 -1
  367. package/dist/components/kol-select.js.map +1 -1
  368. package/dist/components/kol-single-select.js +1 -1
  369. package/dist/components/kol-single-select.js.map +1 -1
  370. package/dist/components/kol-skip-nav.js +1 -1
  371. package/dist/components/kol-skip-nav.js.map +1 -1
  372. package/dist/components/kol-span-wc.js +1 -1
  373. package/dist/components/kol-span-wc.js.map +1 -1
  374. package/dist/components/kol-spin.js +1 -1
  375. package/dist/components/kol-spin.js.map +1 -1
  376. package/dist/components/kol-split-button.js +1 -1
  377. package/dist/components/kol-split-button.js.map +1 -1
  378. package/dist/components/kol-symbol.js +1 -1
  379. package/dist/components/kol-table-stateful.js +1 -1
  380. package/dist/components/kol-table-stateful.js.map +1 -1
  381. package/dist/components/kol-table-stateless-wc.js +1 -1
  382. package/dist/components/kol-table-stateless-wc.js.map +1 -1
  383. package/dist/components/kol-table-stateless.js +1 -1
  384. package/dist/components/kol-table-stateless.js.map +1 -1
  385. package/dist/components/kol-tabs.js +1 -1
  386. package/dist/components/kol-tabs.js.map +1 -1
  387. package/dist/components/kol-textarea.js +1 -1
  388. package/dist/components/kol-textarea.js.map +1 -1
  389. package/dist/components/kol-toast-container.js +1 -1
  390. package/dist/components/kol-toast-container.js.map +1 -1
  391. package/dist/components/kol-toolbar.js +1 -1
  392. package/dist/components/kol-toolbar.js.map +1 -1
  393. package/dist/components/kol-tooltip-wc.js +1 -1
  394. package/dist/components/kol-tooltip-wc.js.map +1 -1
  395. package/dist/components/kol-tree-item-wc.js +1 -1
  396. package/dist/components/kol-tree-item.js +1 -1
  397. package/dist/components/kol-tree-item.js.map +1 -1
  398. package/dist/components/kol-tree-wc.js +1 -1
  399. package/dist/components/kol-tree-wc.js.map +1 -1
  400. package/dist/components/kol-tree.js +1 -1
  401. package/dist/components/kol-tree.js.map +1 -1
  402. package/dist/components/kol-version.js +1 -1
  403. package/dist/components/kol-version.js.map +1 -1
  404. package/dist/components/label.js +1 -1
  405. package/dist/components/open.js +1 -1
  406. package/dist/components/rows.js +1 -1
  407. package/dist/components/show.js +1 -1
  408. package/dist/components/spell-check.js +1 -1
  409. package/dist/components/suggestions.js +1 -1
  410. package/dist/components/table-selection.js +4 -0
  411. package/dist/{kolibri/events-3c3b4721.js.map → components/table-selection.js.map} +1 -1
  412. package/dist/components/tooltip-align.js +1 -1
  413. package/dist/components/tooltip-align.js.map +1 -1
  414. package/dist/components/unique-nav-labels.js +1 -1
  415. package/dist/components/unique-nav-labels.js.map +1 -1
  416. package/dist/components/validation.js +1 -1
  417. package/dist/components/validation2.js +1 -1
  418. package/dist/esm/Alert-d73245cd.js +4 -0
  419. package/dist/{kolibri/Alert-69d3fb7c.js.map → esm/Alert-d73245cd.js.map} +1 -1
  420. package/dist/esm/{Collapsible-a6f9d7da.js → Collapsible-9550dafb.js} +1 -1
  421. package/dist/esm/Collapsible-9550dafb.js.map +1 -0
  422. package/dist/esm/{FormFieldMsg-555f329f.js → FormFieldMsg-9b700df8.js} +1 -1
  423. package/dist/esm/FormFieldMsg-9b700df8.js.map +1 -0
  424. package/dist/esm/InternalUnderlinedBadgeText-f079fc87.js +4 -0
  425. package/dist/esm/{InternalUnderlinedBadgeText-868a81c0.js.map → InternalUnderlinedBadgeText-f079fc87.js.map} +1 -1
  426. package/dist/esm/access-and-short-key-25e651f4.js +4 -0
  427. package/dist/esm/{access-and-short-key-16c1f3d9.js.map → access-and-short-key-25e651f4.js.map} +1 -1
  428. package/dist/esm/align-d80dfc19.js +4 -0
  429. package/dist/esm/{align-eeb4ecdd.js.map → align-d80dfc19.js.map} +1 -1
  430. package/dist/esm/align-floating-elements-f5502865.js +4 -0
  431. package/dist/esm/align-floating-elements-f5502865.js.map +1 -0
  432. package/dist/esm/app-globals-840598eb.js +4 -0
  433. package/dist/esm/app-globals-840598eb.js.map +1 -0
  434. package/dist/esm/associated.controller-2ad4f930.js +4 -0
  435. package/dist/esm/associated.controller-2ad4f930.js.map +1 -0
  436. package/dist/esm/badge-text-4cf87dc1.js +4 -0
  437. package/dist/esm/{badge-text-91fe6f6c.js.map → badge-text-4cf87dc1.js.map} +1 -1
  438. package/dist/esm/button-variant-fa29de43.js +4 -0
  439. package/dist/esm/{button-variant-a4270d4a.js.map → button-variant-fa29de43.js.map} +1 -1
  440. package/dist/esm/color-9352cce1.js +4 -0
  441. package/dist/esm/color-9352cce1.js.map +1 -0
  442. package/dist/esm/controller-5c44e017.js +4 -0
  443. package/dist/esm/controller-5c44e017.js.map +1 -0
  444. package/dist/esm/controller-cbb66178.js +4 -0
  445. package/dist/esm/{controller-823a2e8d.js.map → controller-cbb66178.js.map} +1 -1
  446. package/dist/esm/controller-d5636bab.js +4 -0
  447. package/dist/esm/{controller-80316c73.js.map → controller-d5636bab.js.map} +1 -1
  448. package/dist/esm/controller-d9005336.js +4 -0
  449. package/dist/esm/controller-d9005336.js.map +1 -0
  450. package/dist/esm/controller-e284d179.js +4 -0
  451. package/dist/esm/{controller-30593aa8.js.map → controller-e284d179.js.map} +1 -1
  452. package/dist/esm/controller-icon-22e2a4c6.js +4 -0
  453. package/dist/esm/controller-icon-22e2a4c6.js.map +1 -0
  454. package/dist/esm/custom-class-349f0572.js +4 -0
  455. package/dist/esm/{custom-class-c7abcffc.js.map → custom-class-349f0572.js.map} +1 -1
  456. package/dist/esm/dev.utils-ad247965.js +4 -0
  457. package/dist/esm/dev.utils-ad247965.js.map +1 -0
  458. package/dist/esm/devtools-6c22a2de.js +4 -0
  459. package/dist/esm/devtools-6c22a2de.js.map +1 -0
  460. package/dist/esm/disabled-ad5b6199.js +4 -0
  461. package/dist/esm/{disabled-11f5f213.js.map → disabled-ad5b6199.js.map} +1 -1
  462. package/dist/esm/has-closer-229bd67f.js +4 -0
  463. package/dist/esm/{has-closer-b582e72a.js.map → has-closer-229bd67f.js.map} +1 -1
  464. package/dist/esm/has-counter-451a5ec0.js +4 -0
  465. package/dist/esm/{has-counter-0ab5f398.js.map → has-counter-451a5ec0.js.map} +1 -1
  466. package/dist/esm/hide-label-e3ae2cf6.js +4 -0
  467. package/dist/esm/{hide-label-90b37cc2.js.map → hide-label-e3ae2cf6.js.map} +1 -1
  468. package/dist/esm/href-1819d882.js +4 -0
  469. package/dist/esm/{href-8bd5e6c9.js.map → href-1819d882.js.map} +1 -1
  470. package/dist/esm/{i18n-31adef87.js → i18n-0835cc3b.js} +1 -1
  471. package/dist/esm/{i18n-31adef87.js.map → i18n-0835cc3b.js.map} +1 -1
  472. package/dist/esm/icons-e36b4959.js +4 -0
  473. package/dist/esm/icons-e36b4959.js.map +1 -0
  474. package/dist/esm/image-source-aecd6893.js +4 -0
  475. package/dist/esm/{image-source-6cc4aef4.js.map → image-source-aecd6893.js.map} +1 -1
  476. package/dist/esm/{index-5879a66b.js → index-c9c194c1.js} +1 -1
  477. package/dist/esm/{index-5879a66b.js.map → index-c9c194c1.js.map} +1 -1
  478. package/dist/esm/index-e32279bc.js +4 -0
  479. package/dist/esm/index-e32279bc.js.map +1 -0
  480. package/dist/esm/index.js +1 -1
  481. package/dist/esm/index.js.map +1 -1
  482. package/dist/esm/keyboard-77e19a81.js +4 -0
  483. package/dist/esm/keyboard-77e19a81.js.map +1 -0
  484. package/dist/esm/kol-abbr.entry.js +1 -1
  485. package/dist/esm/kol-abbr.entry.js.map +1 -1
  486. package/dist/esm/kol-accordion.entry.js +1 -1
  487. package/dist/esm/kol-accordion.entry.js.map +1 -1
  488. package/dist/esm/kol-alert-wc.entry.js +1 -1
  489. package/dist/esm/kol-alert-wc.entry.js.map +1 -1
  490. package/dist/esm/kol-alert.entry.js +1 -1
  491. package/dist/esm/kol-alert.entry.js.map +1 -1
  492. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  493. package/dist/esm/kol-avatar-wc.entry.js.map +1 -1
  494. package/dist/esm/kol-avatar.entry.js +1 -1
  495. package/dist/esm/kol-avatar.entry.js.map +1 -1
  496. package/dist/esm/kol-badge.entry.js +1 -1
  497. package/dist/esm/kol-badge.entry.js.map +1 -1
  498. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  499. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  500. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  501. package/dist/esm/kol-button-group.entry.js +1 -1
  502. package/dist/esm/kol-button-group.entry.js.map +1 -1
  503. package/dist/esm/kol-button-link.entry.js +1 -1
  504. package/dist/esm/kol-button-link.entry.js.map +1 -1
  505. package/dist/esm/kol-button-wc.entry.js +1 -1
  506. package/dist/esm/kol-button-wc.entry.js.map +1 -1
  507. package/dist/esm/kol-button.entry.js +1 -1
  508. package/dist/esm/kol-button.entry.js.map +1 -1
  509. package/dist/esm/kol-card.entry.js +1 -1
  510. package/dist/esm/kol-card.entry.js.map +1 -1
  511. package/dist/esm/kol-combobox.entry.js +1 -1
  512. package/dist/esm/kol-combobox.entry.js.map +1 -1
  513. package/dist/esm/kol-details.entry.js +1 -1
  514. package/dist/esm/kol-details.entry.js.map +1 -1
  515. package/dist/esm/kol-drawer.entry.js +1 -1
  516. package/dist/esm/kol-drawer.entry.js.map +1 -1
  517. package/dist/esm/kol-form.entry.js +1 -1
  518. package/dist/esm/kol-form.entry.js.map +1 -1
  519. package/dist/esm/kol-heading-wc.entry.js +1 -1
  520. package/dist/esm/kol-heading-wc.entry.js.map +1 -1
  521. package/dist/esm/kol-heading.entry.js +1 -1
  522. package/dist/esm/kol-heading.entry.js.map +1 -1
  523. package/dist/esm/kol-icon.entry.js +1 -1
  524. package/dist/esm/kol-icon.entry.js.map +1 -1
  525. package/dist/esm/kol-image.entry.js +1 -1
  526. package/dist/esm/kol-image.entry.js.map +1 -1
  527. package/dist/esm/kol-indented-text-wc.entry.js +1 -1
  528. package/dist/esm/kol-indented-text.entry.js +1 -1
  529. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  530. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  531. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  532. package/dist/esm/kol-input-color.entry.js +1 -1
  533. package/dist/esm/kol-input-color.entry.js.map +1 -1
  534. package/dist/esm/kol-input-date.entry.js +1 -1
  535. package/dist/esm/kol-input-date.entry.js.map +1 -1
  536. package/dist/esm/kol-input-email.entry.js +1 -1
  537. package/dist/esm/kol-input-email.entry.js.map +1 -1
  538. package/dist/esm/kol-input-file.entry.js +1 -1
  539. package/dist/esm/kol-input-file.entry.js.map +1 -1
  540. package/dist/esm/kol-input-number.entry.js +1 -1
  541. package/dist/esm/kol-input-number.entry.js.map +1 -1
  542. package/dist/esm/kol-input-password.entry.js +1 -1
  543. package/dist/esm/kol-input-password.entry.js.map +1 -1
  544. package/dist/esm/kol-input-radio.entry.js +1 -1
  545. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  546. package/dist/esm/kol-input-range.entry.js +1 -1
  547. package/dist/esm/kol-input-range.entry.js.map +1 -1
  548. package/dist/esm/kol-input-text.entry.js +1 -1
  549. package/dist/esm/kol-input-text.entry.js.map +1 -1
  550. package/dist/esm/kol-input.entry.js +1 -1
  551. package/dist/esm/kol-input.entry.js.map +1 -1
  552. package/dist/esm/kol-kolibri.entry.js +1 -1
  553. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  554. package/dist/esm/kol-link-button.entry.js +1 -1
  555. package/dist/esm/kol-link-button.entry.js.map +1 -1
  556. package/dist/esm/kol-link-group.entry.js +1 -1
  557. package/dist/esm/kol-link-group.entry.js.map +1 -1
  558. package/dist/esm/kol-link-wc.entry.js +1 -1
  559. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  560. package/dist/esm/kol-link.entry.js +1 -1
  561. package/dist/esm/kol-link.entry.js.map +1 -1
  562. package/dist/esm/kol-logo.entry.js +1 -1
  563. package/dist/esm/kol-logo.entry.js.map +1 -1
  564. package/dist/esm/kol-modal.entry.js +1 -1
  565. package/dist/esm/kol-modal.entry.js.map +1 -1
  566. package/dist/esm/kol-nav.entry.js +1 -1
  567. package/dist/esm/kol-nav.entry.js.map +1 -1
  568. package/dist/esm/kol-pagination.entry.js +1 -1
  569. package/dist/esm/kol-pagination.entry.js.map +1 -1
  570. package/dist/esm/kol-popover-button.entry.js +1 -1
  571. package/dist/esm/kol-popover-button.entry.js.map +1 -1
  572. package/dist/esm/kol-popover-wc.entry.js +1 -1
  573. package/dist/esm/kol-popover-wc.entry.js.map +1 -1
  574. package/dist/esm/kol-progress.entry.js +1 -1
  575. package/dist/esm/kol-progress.entry.js.map +1 -1
  576. package/dist/esm/kol-quote.entry.js +1 -1
  577. package/dist/esm/kol-quote.entry.js.map +1 -1
  578. package/dist/esm/kol-select.entry.js +1 -1
  579. package/dist/esm/kol-select.entry.js.map +1 -1
  580. package/dist/esm/kol-single-select.entry.js +1 -1
  581. package/dist/esm/kol-single-select.entry.js.map +1 -1
  582. package/dist/esm/kol-skip-nav.entry.js +1 -1
  583. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  584. package/dist/esm/kol-span-wc.entry.js +1 -1
  585. package/dist/esm/kol-span-wc.entry.js.map +1 -1
  586. package/dist/esm/kol-spin.entry.js +1 -1
  587. package/dist/esm/kol-spin.entry.js.map +1 -1
  588. package/dist/esm/kol-split-button.entry.js +1 -1
  589. package/dist/esm/kol-split-button.entry.js.map +1 -1
  590. package/dist/esm/kol-symbol.entry.js +1 -1
  591. package/dist/esm/kol-symbol.entry.js.map +1 -1
  592. package/dist/esm/kol-table-stateful.entry.js +1 -1
  593. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  594. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  595. package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
  596. package/dist/esm/kol-table-stateless.entry.js +1 -1
  597. package/dist/esm/kol-table-stateless.entry.js.map +1 -1
  598. package/dist/esm/kol-table.entry.js +1 -1
  599. package/dist/esm/kol-tabs.entry.js +1 -1
  600. package/dist/esm/kol-tabs.entry.js.map +1 -1
  601. package/dist/esm/kol-textarea.entry.js +1 -1
  602. package/dist/esm/kol-textarea.entry.js.map +1 -1
  603. package/dist/esm/kol-toast-container.entry.js +1 -1
  604. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  605. package/dist/esm/kol-toolbar.entry.js +1 -1
  606. package/dist/esm/kol-toolbar.entry.js.map +1 -1
  607. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  608. package/dist/esm/kol-tooltip-wc.entry.js.map +1 -1
  609. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  610. package/dist/esm/kol-tree-item-wc.entry.js.map +1 -1
  611. package/dist/esm/kol-tree-item.entry.js +1 -1
  612. package/dist/esm/kol-tree-item.entry.js.map +1 -1
  613. package/dist/esm/kol-tree-wc.entry.js +1 -1
  614. package/dist/esm/kol-tree-wc.entry.js.map +1 -1
  615. package/dist/esm/kol-tree.entry.js +1 -1
  616. package/dist/esm/kol-tree.entry.js.map +1 -1
  617. package/dist/esm/kol-version.entry.js +1 -1
  618. package/dist/esm/kol-version.entry.js.map +1 -1
  619. package/dist/esm/kolibri.js +1 -1
  620. package/dist/esm/kolibri.js.map +1 -1
  621. package/dist/esm/label-c2f427ab.js +4 -0
  622. package/dist/esm/{label-90c13388.js.map → label-c2f427ab.js.map} +1 -1
  623. package/dist/esm/loader.js +1 -1
  624. package/dist/esm/loader.js.map +1 -1
  625. package/dist/esm/open-8d886d18.js +4 -0
  626. package/dist/esm/{open-4d9f16d0.js.map → open-8d886d18.js.map} +1 -1
  627. package/dist/esm/rows-11065067.js +4 -0
  628. package/dist/esm/{rows-f033b1b3.js.map → rows-11065067.js.map} +1 -1
  629. package/dist/esm/show-37e6b447.js +4 -0
  630. package/dist/esm/{show-c115b1eb.js.map → show-37e6b447.js.map} +1 -1
  631. package/dist/esm/spell-check-99498ed1.js +4 -0
  632. package/dist/esm/{spell-check-27a3f91d.js.map → spell-check-99498ed1.js.map} +1 -1
  633. package/dist/esm/suggestions-3d93a5ce.js +4 -0
  634. package/dist/esm/{suggestions-04da2b2e.js.map → suggestions-3d93a5ce.js.map} +1 -1
  635. package/dist/esm/table-selection-94fe9747.js +4 -0
  636. package/dist/esm/table-selection-94fe9747.js.map +1 -0
  637. package/dist/esm/test-component.entry.js +1 -1
  638. package/dist/esm/tooltip-align-86e888fb.js +4 -0
  639. package/dist/esm/tooltip-align-86e888fb.js.map +1 -0
  640. package/dist/esm/unique-nav-labels-2ea6b853.js +4 -0
  641. package/dist/esm/unique-nav-labels-2ea6b853.js.map +1 -0
  642. package/dist/esm/validation-8a691044.js +4 -0
  643. package/dist/esm/{validation-81a4e752.js.map → validation-8a691044.js.map} +1 -1
  644. package/dist/esm/validation-c5900dbf.js +4 -0
  645. package/dist/esm/{validation-16bfc143.js.map → validation-c5900dbf.js.map} +1 -1
  646. package/dist/kolibri/Alert-d73245cd.js +4 -0
  647. package/dist/kolibri/Alert-d73245cd.js.map +1 -0
  648. package/dist/kolibri/{Collapsible-a6f9d7da.js → Collapsible-9550dafb.js} +1 -1
  649. package/dist/kolibri/Collapsible-9550dafb.js.map +1 -0
  650. package/dist/kolibri/FormFieldMsg-9b700df8.js +4 -0
  651. package/dist/kolibri/FormFieldMsg-9b700df8.js.map +1 -0
  652. package/dist/kolibri/{InternalUnderlinedBadgeText-868a81c0.js → InternalUnderlinedBadgeText-f079fc87.js} +1 -1
  653. package/dist/kolibri/access-and-short-key-25e651f4.js +4 -0
  654. package/dist/kolibri/{access-and-short-key-16c1f3d9.js.map → access-and-short-key-25e651f4.js.map} +1 -1
  655. package/dist/kolibri/align-d80dfc19.js +4 -0
  656. package/dist/kolibri/{align-eeb4ecdd.js.map → align-d80dfc19.js.map} +1 -1
  657. package/dist/kolibri/align-floating-elements-f5502865.js +4 -0
  658. package/dist/kolibri/align-floating-elements-f5502865.js.map +1 -0
  659. package/dist/kolibri/app-globals-840598eb.js +4 -0
  660. package/dist/kolibri/{app-globals-2d0926bd.js.map → app-globals-840598eb.js.map} +1 -1
  661. package/dist/kolibri/associated.controller-2ad4f930.js +4 -0
  662. package/dist/kolibri/{associated.controller-3b160a7e.js.map → associated.controller-2ad4f930.js.map} +1 -1
  663. package/dist/kolibri/badge-text-4cf87dc1.js +4 -0
  664. package/dist/kolibri/{badge-text-91fe6f6c.js.map → badge-text-4cf87dc1.js.map} +1 -1
  665. package/dist/kolibri/button-variant-fa29de43.js +4 -0
  666. package/dist/kolibri/{button-variant-a4270d4a.js.map → button-variant-fa29de43.js.map} +1 -1
  667. package/dist/kolibri/color-9352cce1.js +4 -0
  668. package/dist/kolibri/color-9352cce1.js.map +1 -0
  669. package/dist/kolibri/controller-5c44e017.js +4 -0
  670. package/dist/kolibri/{controller-63e3499d.js.map → controller-5c44e017.js.map} +1 -1
  671. package/dist/kolibri/controller-cbb66178.js +4 -0
  672. package/dist/kolibri/{controller-823a2e8d.js.map → controller-cbb66178.js.map} +1 -1
  673. package/dist/kolibri/controller-d5636bab.js +4 -0
  674. package/dist/kolibri/{controller-80316c73.js.map → controller-d5636bab.js.map} +1 -1
  675. package/dist/kolibri/controller-d9005336.js +4 -0
  676. package/dist/kolibri/{controller-8ee06262.js.map → controller-d9005336.js.map} +1 -1
  677. package/dist/kolibri/controller-e284d179.js +4 -0
  678. package/dist/kolibri/{controller-30593aa8.js.map → controller-e284d179.js.map} +1 -1
  679. package/dist/kolibri/controller-icon-22e2a4c6.js +4 -0
  680. package/dist/kolibri/{controller-icon-0a8dd3ac.js.map → controller-icon-22e2a4c6.js.map} +1 -1
  681. package/dist/kolibri/custom-class-349f0572.js +4 -0
  682. package/dist/kolibri/{custom-class-c7abcffc.js.map → custom-class-349f0572.js.map} +1 -1
  683. package/dist/kolibri/dev.utils-ad247965.js +4 -0
  684. package/dist/kolibri/{dev.utils-c278c4ae.js.map → dev.utils-ad247965.js.map} +1 -1
  685. package/dist/kolibri/devtools-6c22a2de.js +4 -0
  686. package/dist/kolibri/{devtools-35fb12ed.js.map → devtools-6c22a2de.js.map} +1 -1
  687. package/dist/kolibri/disabled-ad5b6199.js +4 -0
  688. package/dist/kolibri/{disabled-11f5f213.js.map → disabled-ad5b6199.js.map} +1 -1
  689. package/dist/kolibri/has-closer-229bd67f.js +4 -0
  690. package/dist/kolibri/{has-closer-b582e72a.js.map → has-closer-229bd67f.js.map} +1 -1
  691. package/dist/kolibri/has-counter-451a5ec0.js +4 -0
  692. package/dist/kolibri/{has-counter-0ab5f398.js.map → has-counter-451a5ec0.js.map} +1 -1
  693. package/dist/kolibri/hide-label-e3ae2cf6.js +4 -0
  694. package/dist/kolibri/{hide-label-90b37cc2.js.map → hide-label-e3ae2cf6.js.map} +1 -1
  695. package/dist/kolibri/href-1819d882.js +4 -0
  696. package/dist/kolibri/{href-8bd5e6c9.js.map → href-1819d882.js.map} +1 -1
  697. package/dist/kolibri/i18n-0835cc3b.js +4 -0
  698. package/dist/kolibri/icons-e36b4959.js +4 -0
  699. package/dist/kolibri/{icons-b21fdac0.js.map → icons-e36b4959.js.map} +1 -1
  700. package/dist/kolibri/image-source-aecd6893.js +4 -0
  701. package/dist/kolibri/{image-source-6cc4aef4.js.map → image-source-aecd6893.js.map} +1 -1
  702. package/dist/kolibri/{index-5879a66b.js → index-c9c194c1.js} +1 -1
  703. package/dist/kolibri/{index-5879a66b.js.map → index-c9c194c1.js.map} +1 -1
  704. package/dist/kolibri/index-e32279bc.js +4 -0
  705. package/dist/kolibri/index-e32279bc.js.map +1 -0
  706. package/dist/kolibri/index.esm.js +1 -1
  707. package/dist/kolibri/index.esm.js.map +1 -1
  708. package/dist/kolibri/keyboard-77e19a81.js +4 -0
  709. package/dist/kolibri/keyboard-77e19a81.js.map +1 -0
  710. package/dist/kolibri/kol-abbr.entry.js +1 -1
  711. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  712. package/dist/kolibri/kol-accordion.entry.js +1 -1
  713. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  714. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  715. package/dist/kolibri/kol-alert-wc.entry.js.map +1 -1
  716. package/dist/kolibri/kol-alert.entry.js +1 -1
  717. package/dist/kolibri/kol-alert.entry.js.map +1 -1
  718. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  719. package/dist/kolibri/kol-avatar-wc.entry.js.map +1 -1
  720. package/dist/kolibri/kol-avatar.entry.js +1 -1
  721. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  722. package/dist/kolibri/kol-badge.entry.js +1 -1
  723. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  724. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  725. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  726. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  727. package/dist/kolibri/kol-button-group.entry.js +1 -1
  728. package/dist/kolibri/kol-button-group.entry.js.map +1 -1
  729. package/dist/kolibri/kol-button-link.entry.js +1 -1
  730. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  731. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  732. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  733. package/dist/kolibri/kol-button.entry.js +1 -1
  734. package/dist/kolibri/kol-button.entry.js.map +1 -1
  735. package/dist/kolibri/kol-card.entry.js +1 -1
  736. package/dist/kolibri/kol-card.entry.js.map +1 -1
  737. package/dist/kolibri/kol-combobox.entry.js +1 -1
  738. package/dist/kolibri/kol-combobox.entry.js.map +1 -1
  739. package/dist/kolibri/kol-details.entry.js +1 -1
  740. package/dist/kolibri/kol-details.entry.js.map +1 -1
  741. package/dist/kolibri/kol-drawer.entry.js +1 -1
  742. package/dist/kolibri/kol-drawer.entry.js.map +1 -1
  743. package/dist/kolibri/kol-form.entry.js +1 -1
  744. package/dist/kolibri/kol-form.entry.js.map +1 -1
  745. package/dist/kolibri/kol-heading-wc.entry.js +1 -1
  746. package/dist/kolibri/kol-heading-wc.entry.js.map +1 -1
  747. package/dist/kolibri/kol-heading.entry.js +1 -1
  748. package/dist/kolibri/kol-heading.entry.js.map +1 -1
  749. package/dist/kolibri/kol-icon.entry.js +1 -1
  750. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  751. package/dist/kolibri/kol-image.entry.js +1 -1
  752. package/dist/kolibri/kol-image.entry.js.map +1 -1
  753. package/dist/kolibri/kol-indented-text-wc.entry.js +1 -1
  754. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  755. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  756. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  757. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  758. package/dist/kolibri/kol-input-color.entry.js +1 -1
  759. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  760. package/dist/kolibri/kol-input-date.entry.js +1 -1
  761. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  762. package/dist/kolibri/kol-input-email.entry.js +1 -1
  763. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  764. package/dist/kolibri/kol-input-file.entry.js +1 -1
  765. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  766. package/dist/kolibri/kol-input-number.entry.js +1 -1
  767. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  768. package/dist/kolibri/kol-input-password.entry.js +1 -1
  769. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  770. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  771. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  772. package/dist/kolibri/kol-input-range.entry.js +1 -1
  773. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  774. package/dist/kolibri/kol-input-text.entry.js +1 -1
  775. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  776. package/dist/kolibri/kol-input.entry.js +1 -1
  777. package/dist/kolibri/kol-input.entry.js.map +1 -1
  778. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  779. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  780. package/dist/kolibri/kol-link-button.entry.js +1 -1
  781. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  782. package/dist/kolibri/kol-link-group.entry.js +1 -1
  783. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  784. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  785. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  786. package/dist/kolibri/kol-link.entry.js +1 -1
  787. package/dist/kolibri/kol-link.entry.js.map +1 -1
  788. package/dist/kolibri/kol-logo.entry.js +1 -1
  789. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  790. package/dist/kolibri/kol-modal.entry.js +1 -1
  791. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  792. package/dist/kolibri/kol-nav.entry.js +1 -1
  793. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  794. package/dist/kolibri/kol-pagination.entry.js +1 -1
  795. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  796. package/dist/kolibri/kol-popover-button.entry.js +1 -1
  797. package/dist/kolibri/kol-popover-button.entry.js.map +1 -1
  798. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  799. package/dist/kolibri/kol-popover-wc.entry.js.map +1 -1
  800. package/dist/kolibri/kol-progress.entry.js +1 -1
  801. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  802. package/dist/kolibri/kol-quote.entry.js +1 -1
  803. package/dist/kolibri/kol-quote.entry.js.map +1 -1
  804. package/dist/kolibri/kol-select.entry.js +1 -1
  805. package/dist/kolibri/kol-select.entry.js.map +1 -1
  806. package/dist/kolibri/kol-single-select.entry.js +1 -1
  807. package/dist/kolibri/kol-single-select.entry.js.map +1 -1
  808. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  809. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  810. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  811. package/dist/kolibri/kol-span-wc.entry.js.map +1 -1
  812. package/dist/kolibri/kol-spin.entry.js +1 -1
  813. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  814. package/dist/kolibri/kol-split-button.entry.js +1 -1
  815. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  816. package/dist/kolibri/kol-symbol.entry.js +1 -1
  817. package/dist/kolibri/kol-symbol.entry.js.map +1 -1
  818. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  819. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  820. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  821. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  822. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  823. package/dist/kolibri/kol-table-stateless.entry.js.map +1 -1
  824. package/dist/kolibri/kol-table.entry.js +1 -1
  825. package/dist/kolibri/kol-tabs.entry.js +1 -1
  826. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  827. package/dist/kolibri/kol-textarea.entry.js +1 -1
  828. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  829. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  830. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  831. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  832. package/dist/kolibri/kol-toolbar.entry.js.map +1 -1
  833. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  834. package/dist/kolibri/kol-tooltip-wc.entry.js.map +1 -1
  835. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  836. package/dist/kolibri/kol-tree-item-wc.entry.js.map +1 -1
  837. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  838. package/dist/kolibri/kol-tree-item.entry.js.map +1 -1
  839. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  840. package/dist/kolibri/kol-tree-wc.entry.js.map +1 -1
  841. package/dist/kolibri/kol-tree.entry.js +1 -1
  842. package/dist/kolibri/kol-tree.entry.js.map +1 -1
  843. package/dist/kolibri/kol-version.entry.js +1 -1
  844. package/dist/kolibri/kol-version.entry.js.map +1 -1
  845. package/dist/kolibri/kolibri.esm.js +1 -1
  846. package/dist/kolibri/kolibri.esm.js.map +1 -1
  847. package/dist/kolibri/label-c2f427ab.js +4 -0
  848. package/dist/kolibri/{label-90c13388.js.map → label-c2f427ab.js.map} +1 -1
  849. package/dist/kolibri/open-8d886d18.js +4 -0
  850. package/dist/kolibri/{open-4d9f16d0.js.map → open-8d886d18.js.map} +1 -1
  851. package/dist/kolibri/rows-11065067.js +4 -0
  852. package/dist/kolibri/{rows-f033b1b3.js.map → rows-11065067.js.map} +1 -1
  853. package/dist/kolibri/show-37e6b447.js +4 -0
  854. package/dist/kolibri/{show-c115b1eb.js.map → show-37e6b447.js.map} +1 -1
  855. package/dist/kolibri/spell-check-99498ed1.js +4 -0
  856. package/dist/kolibri/{spell-check-27a3f91d.js.map → spell-check-99498ed1.js.map} +1 -1
  857. package/dist/kolibri/suggestions-3d93a5ce.js +4 -0
  858. package/dist/kolibri/{suggestions-04da2b2e.js.map → suggestions-3d93a5ce.js.map} +1 -1
  859. package/dist/kolibri/table-selection-94fe9747.js +4 -0
  860. package/dist/kolibri/table-selection-94fe9747.js.map +1 -0
  861. package/dist/kolibri/test-component.entry.js +1 -1
  862. package/dist/kolibri/tooltip-align-86e888fb.js +4 -0
  863. package/dist/kolibri/{tooltip-align-d8ac9d69.js.map → tooltip-align-86e888fb.js.map} +1 -1
  864. package/dist/kolibri/unique-nav-labels-2ea6b853.js +4 -0
  865. package/dist/kolibri/unique-nav-labels-2ea6b853.js.map +1 -0
  866. package/dist/kolibri/validation-8a691044.js +4 -0
  867. package/dist/kolibri/{validation-81a4e752.js.map → validation-8a691044.js.map} +1 -1
  868. package/dist/kolibri/validation-c5900dbf.js +4 -0
  869. package/dist/kolibri/{validation-16bfc143.js.map → validation-c5900dbf.js.map} +1 -1
  870. package/dist/types/components/button/component.d.ts +2 -0
  871. package/dist/types/components/input-radio/shadow.d.ts +1 -5
  872. package/dist/types/components/popover-button/shadow.d.ts +3 -1
  873. package/dist/types/components.d.ts +8 -24
  874. package/dist/types/schema/components/input-radio.d.ts +4 -4
  875. package/dist/types/schema/props/aria-has-popup.d.ts +3 -0
  876. package/doc/combobox.md +0 -4
  877. package/doc/heading.md +6 -6
  878. package/doc/input-radio.md +0 -2
  879. package/doc/popover-button.md +0 -1
  880. package/doc/tree.md +17 -17
  881. package/package.json +5 -6
  882. package/vscode-custom-data.json +2 -14
  883. package/dist/cjs/Alert-96b369f4.js +0 -4
  884. package/dist/cjs/Alert-96b369f4.js.map +0 -1
  885. package/dist/cjs/Collapsible-8b3c4050.js.map +0 -1
  886. package/dist/cjs/FormFieldMsg-f54e236a.js +0 -4
  887. package/dist/cjs/FormFieldMsg-f54e236a.js.map +0 -1
  888. package/dist/cjs/access-and-short-key-6155af7d.js +0 -4
  889. package/dist/cjs/access-and-short-key-6155af7d.js.map +0 -1
  890. package/dist/cjs/align-a9f24187.js +0 -4
  891. package/dist/cjs/align-floating-elements-74691aff.js +0 -4
  892. package/dist/cjs/align-floating-elements-74691aff.js.map +0 -1
  893. package/dist/cjs/app-globals-52debe8b.js +0 -4
  894. package/dist/cjs/app-globals-52debe8b.js.map +0 -1
  895. package/dist/cjs/associated.controller-2005f7f0.js +0 -4
  896. package/dist/cjs/associated.controller-2005f7f0.js.map +0 -1
  897. package/dist/cjs/badge-text-9d12359c.js +0 -4
  898. package/dist/cjs/button-variant-10ad2503.js +0 -4
  899. package/dist/cjs/color-327a493c.js +0 -4
  900. package/dist/cjs/color-327a493c.js.map +0 -1
  901. package/dist/cjs/common-1ab929ac.js +0 -4
  902. package/dist/cjs/common-1ab929ac.js.map +0 -1
  903. package/dist/cjs/controller-20541e1e.js +0 -4
  904. package/dist/cjs/controller-3c347f5b.js +0 -4
  905. package/dist/cjs/controller-3c347f5b.js.map +0 -1
  906. package/dist/cjs/controller-8d407dee.js +0 -4
  907. package/dist/cjs/controller-8d407dee.js.map +0 -1
  908. package/dist/cjs/controller-b8eea6f7.js +0 -4
  909. package/dist/cjs/controller-b8eea6f7.js.map +0 -1
  910. package/dist/cjs/controller-d7e8fba5.js +0 -4
  911. package/dist/cjs/controller-icon-a88486d3.js +0 -4
  912. package/dist/cjs/controller-icon-a88486d3.js.map +0 -1
  913. package/dist/cjs/custom-class-1bd0519a.js +0 -4
  914. package/dist/cjs/dev.utils-17f58b75.js +0 -4
  915. package/dist/cjs/dev.utils-17f58b75.js.map +0 -1
  916. package/dist/cjs/dev.utils-58fde089.js +0 -4
  917. package/dist/cjs/dev.utils-58fde089.js.map +0 -1
  918. package/dist/cjs/devtools-55284fd6.js +0 -4
  919. package/dist/cjs/devtools-55284fd6.js.map +0 -1
  920. package/dist/cjs/disabled-0ee19649.js +0 -4
  921. package/dist/cjs/events-2a23336e.js +0 -4
  922. package/dist/cjs/events-2a23336e.js.map +0 -1
  923. package/dist/cjs/has-closer-51ccf77f.js +0 -4
  924. package/dist/cjs/has-counter-8679115c.js +0 -4
  925. package/dist/cjs/hide-label-a9a94f19.js +0 -4
  926. package/dist/cjs/href-c14d2c3e.js +0 -4
  927. package/dist/cjs/i18n-5f0ed6ed.js +0 -4
  928. package/dist/cjs/icons-cfdc392f.js +0 -4
  929. package/dist/cjs/icons-cfdc392f.js.map +0 -1
  930. package/dist/cjs/image-source-3b5f1388.js +0 -4
  931. package/dist/cjs/index-c77a4142.js +0 -4
  932. package/dist/cjs/index-c77a4142.js.map +0 -1
  933. package/dist/cjs/label-3ce275fe.js +0 -4
  934. package/dist/cjs/label-3ce275fe.js.map +0 -1
  935. package/dist/cjs/open-e08280be.js +0 -4
  936. package/dist/cjs/prop.validators-3c86f8eb.js +0 -4
  937. package/dist/cjs/prop.validators-3c86f8eb.js.map +0 -1
  938. package/dist/cjs/reuse-8cfefa9b.js +0 -4
  939. package/dist/cjs/reuse-8cfefa9b.js.map +0 -1
  940. package/dist/cjs/rows-24ccf646.js +0 -4
  941. package/dist/cjs/show-0625d136.js +0 -4
  942. package/dist/cjs/spell-check-d54fcffc.js +0 -4
  943. package/dist/cjs/suggestions-eccef9c3.js +0 -4
  944. package/dist/cjs/suggestions-eccef9c3.js.map +0 -1
  945. package/dist/cjs/tooltip-align-5aee86e8.js +0 -4
  946. package/dist/cjs/tooltip-align-5aee86e8.js.map +0 -1
  947. package/dist/cjs/unique-nav-labels-b12ecac7.js +0 -4
  948. package/dist/cjs/unique-nav-labels-b12ecac7.js.map +0 -1
  949. package/dist/cjs/validation-2820e912.js +0 -4
  950. package/dist/cjs/validation-bcb18e67.js +0 -4
  951. package/dist/components/common.js +0 -4
  952. package/dist/components/common.js.map +0 -1
  953. package/dist/components/dev.utils2.js +0 -4
  954. package/dist/components/dev.utils2.js.map +0 -1
  955. package/dist/components/events2.js +0 -4
  956. package/dist/components/events2.js.map +0 -1
  957. package/dist/components/prop.validators.js +0 -4
  958. package/dist/components/prop.validators.js.map +0 -1
  959. package/dist/components/reuse.js +0 -4
  960. package/dist/components/reuse.js.map +0 -1
  961. package/dist/esm/Alert-69d3fb7c.js +0 -4
  962. package/dist/esm/Alert-69d3fb7c.js.map +0 -1
  963. package/dist/esm/Collapsible-a6f9d7da.js.map +0 -1
  964. package/dist/esm/FormFieldMsg-555f329f.js.map +0 -1
  965. package/dist/esm/InternalUnderlinedBadgeText-868a81c0.js +0 -4
  966. package/dist/esm/access-and-short-key-16c1f3d9.js +0 -4
  967. package/dist/esm/align-eeb4ecdd.js +0 -4
  968. package/dist/esm/align-floating-elements-ae4deaae.js +0 -4
  969. package/dist/esm/align-floating-elements-ae4deaae.js.map +0 -1
  970. package/dist/esm/app-globals-2d0926bd.js +0 -4
  971. package/dist/esm/app-globals-2d0926bd.js.map +0 -1
  972. package/dist/esm/associated.controller-3b160a7e.js +0 -4
  973. package/dist/esm/associated.controller-3b160a7e.js.map +0 -1
  974. package/dist/esm/badge-text-91fe6f6c.js +0 -4
  975. package/dist/esm/button-variant-a4270d4a.js +0 -4
  976. package/dist/esm/color-c32d99db.js +0 -4
  977. package/dist/esm/color-c32d99db.js.map +0 -1
  978. package/dist/esm/common-0f1f2276.js +0 -4
  979. package/dist/esm/common-0f1f2276.js.map +0 -1
  980. package/dist/esm/controller-30593aa8.js +0 -4
  981. package/dist/esm/controller-63e3499d.js +0 -4
  982. package/dist/esm/controller-63e3499d.js.map +0 -1
  983. package/dist/esm/controller-80316c73.js +0 -4
  984. package/dist/esm/controller-823a2e8d.js +0 -4
  985. package/dist/esm/controller-8ee06262.js +0 -4
  986. package/dist/esm/controller-8ee06262.js.map +0 -1
  987. package/dist/esm/controller-icon-0a8dd3ac.js +0 -4
  988. package/dist/esm/controller-icon-0a8dd3ac.js.map +0 -1
  989. package/dist/esm/custom-class-c7abcffc.js +0 -4
  990. package/dist/esm/dev.utils-c278c4ae.js +0 -4
  991. package/dist/esm/dev.utils-c278c4ae.js.map +0 -1
  992. package/dist/esm/dev.utils-fab45cbc.js +0 -4
  993. package/dist/esm/dev.utils-fab45cbc.js.map +0 -1
  994. package/dist/esm/devtools-35fb12ed.js +0 -4
  995. package/dist/esm/devtools-35fb12ed.js.map +0 -1
  996. package/dist/esm/disabled-11f5f213.js +0 -4
  997. package/dist/esm/events-3c3b4721.js +0 -4
  998. package/dist/esm/events-3c3b4721.js.map +0 -1
  999. package/dist/esm/has-closer-b582e72a.js +0 -4
  1000. package/dist/esm/has-counter-0ab5f398.js +0 -4
  1001. package/dist/esm/hide-label-90b37cc2.js +0 -4
  1002. package/dist/esm/href-8bd5e6c9.js +0 -4
  1003. package/dist/esm/icons-b21fdac0.js +0 -4
  1004. package/dist/esm/icons-b21fdac0.js.map +0 -1
  1005. package/dist/esm/image-source-6cc4aef4.js +0 -4
  1006. package/dist/esm/index-6d801dad.js +0 -4
  1007. package/dist/esm/index-6d801dad.js.map +0 -1
  1008. package/dist/esm/label-90c13388.js +0 -4
  1009. package/dist/esm/open-4d9f16d0.js +0 -4
  1010. package/dist/esm/prop.validators-17aec743.js +0 -4
  1011. package/dist/esm/prop.validators-17aec743.js.map +0 -1
  1012. package/dist/esm/reuse-32931294.js +0 -4
  1013. package/dist/esm/reuse-32931294.js.map +0 -1
  1014. package/dist/esm/rows-f033b1b3.js +0 -4
  1015. package/dist/esm/show-c115b1eb.js +0 -4
  1016. package/dist/esm/spell-check-27a3f91d.js +0 -4
  1017. package/dist/esm/suggestions-04da2b2e.js +0 -4
  1018. package/dist/esm/tooltip-align-d8ac9d69.js +0 -4
  1019. package/dist/esm/tooltip-align-d8ac9d69.js.map +0 -1
  1020. package/dist/esm/unique-nav-labels-768d04e9.js +0 -4
  1021. package/dist/esm/unique-nav-labels-768d04e9.js.map +0 -1
  1022. package/dist/esm/validation-16bfc143.js +0 -4
  1023. package/dist/esm/validation-81a4e752.js +0 -4
  1024. package/dist/kolibri/Alert-69d3fb7c.js +0 -4
  1025. package/dist/kolibri/Collapsible-a6f9d7da.js.map +0 -1
  1026. package/dist/kolibri/FormFieldMsg-555f329f.js +0 -4
  1027. package/dist/kolibri/FormFieldMsg-555f329f.js.map +0 -1
  1028. package/dist/kolibri/access-and-short-key-16c1f3d9.js +0 -4
  1029. package/dist/kolibri/align-eeb4ecdd.js +0 -4
  1030. package/dist/kolibri/align-floating-elements-ae4deaae.js +0 -4
  1031. package/dist/kolibri/align-floating-elements-ae4deaae.js.map +0 -1
  1032. package/dist/kolibri/app-globals-2d0926bd.js +0 -4
  1033. package/dist/kolibri/associated.controller-3b160a7e.js +0 -4
  1034. package/dist/kolibri/badge-text-91fe6f6c.js +0 -4
  1035. package/dist/kolibri/button-variant-a4270d4a.js +0 -4
  1036. package/dist/kolibri/color-c32d99db.js +0 -4
  1037. package/dist/kolibri/color-c32d99db.js.map +0 -1
  1038. package/dist/kolibri/common-0f1f2276.js +0 -4
  1039. package/dist/kolibri/common-0f1f2276.js.map +0 -1
  1040. package/dist/kolibri/controller-30593aa8.js +0 -4
  1041. package/dist/kolibri/controller-63e3499d.js +0 -4
  1042. package/dist/kolibri/controller-80316c73.js +0 -4
  1043. package/dist/kolibri/controller-823a2e8d.js +0 -4
  1044. package/dist/kolibri/controller-8ee06262.js +0 -4
  1045. package/dist/kolibri/controller-icon-0a8dd3ac.js +0 -4
  1046. package/dist/kolibri/custom-class-c7abcffc.js +0 -4
  1047. package/dist/kolibri/dev.utils-c278c4ae.js +0 -4
  1048. package/dist/kolibri/dev.utils-fab45cbc.js +0 -4
  1049. package/dist/kolibri/dev.utils-fab45cbc.js.map +0 -1
  1050. package/dist/kolibri/devtools-35fb12ed.js +0 -4
  1051. package/dist/kolibri/disabled-11f5f213.js +0 -4
  1052. package/dist/kolibri/events-3c3b4721.js +0 -4
  1053. package/dist/kolibri/has-closer-b582e72a.js +0 -4
  1054. package/dist/kolibri/has-counter-0ab5f398.js +0 -4
  1055. package/dist/kolibri/hide-label-90b37cc2.js +0 -4
  1056. package/dist/kolibri/href-8bd5e6c9.js +0 -4
  1057. package/dist/kolibri/i18n-31adef87.js +0 -4
  1058. package/dist/kolibri/icons-b21fdac0.js +0 -4
  1059. package/dist/kolibri/image-source-6cc4aef4.js +0 -4
  1060. package/dist/kolibri/index-6d801dad.js +0 -4
  1061. package/dist/kolibri/index-6d801dad.js.map +0 -1
  1062. package/dist/kolibri/label-90c13388.js +0 -4
  1063. package/dist/kolibri/open-4d9f16d0.js +0 -4
  1064. package/dist/kolibri/prop.validators-17aec743.js +0 -4
  1065. package/dist/kolibri/prop.validators-17aec743.js.map +0 -1
  1066. package/dist/kolibri/reuse-32931294.js +0 -4
  1067. package/dist/kolibri/reuse-32931294.js.map +0 -1
  1068. package/dist/kolibri/rows-f033b1b3.js +0 -4
  1069. package/dist/kolibri/show-c115b1eb.js +0 -4
  1070. package/dist/kolibri/spell-check-27a3f91d.js +0 -4
  1071. package/dist/kolibri/suggestions-04da2b2e.js +0 -4
  1072. package/dist/kolibri/tooltip-align-d8ac9d69.js +0 -4
  1073. package/dist/kolibri/unique-nav-labels-768d04e9.js +0 -4
  1074. package/dist/kolibri/unique-nav-labels-768d04e9.js.map +0 -1
  1075. package/dist/kolibri/validation-16bfc143.js +0 -4
  1076. package/dist/kolibri/validation-81a4e752.js +0 -4
  1077. package/dist/types/components/kolibri/color-rgba.d.ts +0 -1
  1078. package/dist/types/schema/utils/contrast/color-rgba.d.ts +0 -1
  1079. package/dist/types/schema/utils/contrast/index.d.ts +0 -1
  1080. package/dist/types/schema/utils/contrast/rgba-convert.d.ts +0 -1
  1081. /package/dist/kolibri/{InternalUnderlinedBadgeText-868a81c0.js.map → InternalUnderlinedBadgeText-f079fc87.js.map} +0 -0
  1082. /package/dist/kolibri/{i18n-31adef87.js.map → i18n-0835cc3b.js.map} +0 -0
  1083. /package/dist/types/schema/utils/{contrast/contrast.d.ts → contrast.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["sides","alignments","placements","reduce","acc","side","concat","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","isStart","lr","rl","tb","bt","getOppositeAxisPlacements","flipAlignment","direction","list","map","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","getPlacementList","autoAlignment","allowedPlacements","allowedPlacementsSortedByAlignment","autoPlacement","_middlewareData$autoP","_middlewareData$autoP2","_placementsThatFitOnE","crossAxis","detectOverflowOptions","placements$1","undefined","overflow","currentIndex","index","currentPlacement","alignmentSides","currentOverflows","allOverflows","overflows","nextPlacement","placementsSortedByMostSpace","d","slice","sort","a","b","placementsThatFitOnEachSide","every","resetPlacement","flip","_middlewareData$arrow","_middlewareData$flip","mainAxis","checkMainAxis","checkCrossAxis","fallbackPlacements","specifiedFallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","initialSideAxis","isBasePlacement","hasFallbackAxisSideDirection","push","overflowsData","_middlewareData$flip2","_overflowsData$filter","nextIndex","_overflowsData$","ignoreCrossAxisOverflow","hasInitialMainAxisOverflow","_overflowsData$filter2","currentSideAxis","getSideOffsets","isAnySideFullyClipped","some","hide","offsets","referenceHiddenOffsets","referenceHidden","escapedOffsets","escaped","getBoundingRect","minX","minY","maxX","maxY","getRectsByLine","sortedRects","groups","prevRect","inline","nativeClientRects","Array","from","getClientRects","clientRects","fallback","getBoundingClientRect","find","firstRect","lastRect","isTop","isLeftSide","maxRight","minLeft","measureRects","resetRects","convertValueToCoords","mainAxisMulti","crossAxisMulti","rawValue","_middlewareData$offse","diffCoords","shift","limiter","mainAxisCoord","crossAxisCoord","minSide","maxSide","limitedCoords","enabled","limitShift","rawOffset","computedOffset","len","limitMin","limitMax","_middlewareData$offse2","isOriginSide","size","_state$middlewareData","_state$middlewareData2","apply","heightSide","widthSide","maximumClippingHeight","maximumClippingWidth","overflowAvailableHeight","overflowAvailableWidth","noShift","availableHeight","availableWidth","xMin","xMax","yMin","yMax","nextDimensions","hasWindow","window","getNodeName","node","isNode","nodeName","toLowerCase","getWindow","_node$ownerDocument","ownerDocument","defaultView","document","documentElement","Node","Element","isHTMLElement","HTMLElement","isShadowRoot","ShadowRoot","isOverflowElement","overflowX","overflowY","display","getComputedStyle","test","isTableElement","isTopLayer","selector","matches","e","isContainingBlock","elementOrCss","webkit","isWebKit","css","containerType","backdropFilter","willChange","contain","getContainingBlock","currentNode","getParentNode","isLastTraversableNode","CSS","supports","getNodeScroll","scrollLeft","scrollTop","scrollX","scrollY","result","assignedSlot","parentNode","host","getNearestOverflowAncestor","body","getOverflowAncestors","traverseIframes","_node$ownerDocument2","scrollableAncestor","isBody","win","frameElement","getFrameElement","visualViewport","parent","Object","getPrototypeOf","getCssDimensions","parseFloat","hasOffset","offsetWidth","offsetHeight","shouldFallback","$","unwrapElement","domElement","Number","isFinite","noOffsets","getVisualOffsets","offsetLeft","offsetTop","shouldAddVisualOffsets","isFixed","floatingOffsetParent","includeScale","isFixedStrategy","clientRect","scale","visualOffsets","offsetWin","currentWin","currentIFrame","iframeScale","iframeRect","clientLeft","paddingLeft","clientTop","paddingTop","getWindowScrollBarX","leftScroll","getHTMLOffset","scroll","ignoreScrollbarX","htmlRect","topLayer","isOffsetParentAnElement","offsetRect","htmlOffset","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","setLeftRTLScrollbarOffset","isStaticPositioned","getTrueOffsetParent","polyfill","rawOffsetParent","svgOffsetParent","getOffsetParentFn","getDimensionsFn","floatingDimensions","rectsAreEqual","observeMove","onMove","io","timeoutId","root","cleanup","_io","clearTimeout","disconnect","refresh","skip","threshold","elementRectForRootMargin","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","_resizeObserver","frameId","prevRefRect","frameLoop","nextRefRect","_resizeObserver2","removeEventListener","offset$1","autoPlacement$1","shift$1","flip$1","size$1","hide$1","arrow$1","inline$1","limitShift$1","Map","mergedOptions","platformWithCache","computePosition$1","alignFloatingElements","floatingElement","referenceElement","arrowElement","align","processEnv","_a","assign","style","visibility","_b"],"sources":["../../node_modules/.pnpm/@floating-ui+utils@0.2.9/node_modules/@floating-ui/utils/dist/floating-ui.utils.esm.js","../../node_modules/.pnpm/@floating-ui+core@1.7.0/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js","../../node_modules/.pnpm/@floating-ui+utils@0.2.9/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.esm.js","../../node_modules/.pnpm/@floating-ui+dom@1.7.0/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js","src/utils/align-floating-elements.ts"],"sourcesContent":["/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst 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 const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\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 given reference element.\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 }\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 x,\n y,\n width: rects.floating.width,\n height: rects.floating.height\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 elements,\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 initialSideAxis = getSideAxis(initialPlacement);\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 const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== 'none';\n if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {\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 var _overflowsData$;\n const ignoreCrossAxisOverflow = checkCrossAxis === 'alignment' ? initialSideAxis !== getSideAxis(nextPlacement) : false;\n const hasInitialMainAxisOverflow = ((_overflowsData$ = overflowsData[0]) == null ? void 0 : _overflowsData$.overflows[0]) > 0;\n if (!ignoreCrossAxisOverflow || hasInitialMainAxisOverflow) {\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\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$filter2;\n const placement = (_overflowsData$filter2 = overflowsData.filter(d => {\n if (hasFallbackAxisSideDirection) {\n const currentSideAxis = getSideAxis(d.placement);\n return currentSideAxis === initialSideAxis ||\n // Create a bias to the `y` side axis due to horizontal\n // reading directions favoring greater width.\n currentSideAxis === 'y';\n }\n return true;\n }).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$filter2[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.\n\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: rawValue.mainAxis || 0,\n crossAxis: rawValue.crossAxis || 0,\n alignmentAxis: rawValue.alignmentAxis\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 var _middlewareData$offse, _middlewareData$arrow;\n const {\n x,\n y,\n placement,\n middlewareData\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n\n // If the placement is the same and the arrow caused an alignment offset\n // then we don't need to change the positioning coordinates.\n if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: {\n ...diffCoords,\n placement\n }\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 enabled: {\n [mainAxis]: checkMainAxis,\n [crossAxis]: checkCrossAxis\n }\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 var _state$middlewareData, _state$middlewareData2;\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 maximumClippingHeight = height - overflow.top - overflow.bottom;\n const maximumClippingWidth = width - overflow.left - overflow.right;\n const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);\n const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {\n availableWidth = maximumClippingWidth;\n }\n if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {\n availableHeight = 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 hasWindow() {\n return typeof window !== 'undefined';\n}\nfunction 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 || (_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 if (!hasWindow()) {\n return false;\n }\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n if (!hasWindow() || 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 isTopLayer(element) {\n return [':popover-open', ':modal'].some(selector => {\n try {\n return element.matches(selector);\n } catch (e) {\n return false;\n }\n });\n}\nfunction isContainingBlock(elementOrCss) {\n const webkit = isWebKit();\n const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n // https://drafts.csswg.org/css-transforms-2/#individual-transforms\n return ['transform', 'translate', 'scale', 'rotate', 'perspective'].some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'translate', 'scale', 'rotate', '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 if (isTopLayer(currentNode)) {\n return null;\n }\n currentNode = getParentNode(currentNode);\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.scrollX,\n scrollTop: element.scrollY\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 const frameElement = getFrameElement(win);\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\nfunction getFrameElement(win) {\n return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;\n}\n\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getFrameElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isTopLayer, isWebKit };\n","import { rectToClientRect, arrow as arrow$1, autoPlacement as autoPlacement$1, detectOverflow as detectOverflow$1, flip as flip$1, hide as hide$1, inline as inline$1, limitShift as limitShift$1, offset as offset$1, shift as shift$1, size as size$1, computePosition as computePosition$1 } from '@floating-ui/core';\nimport { round, createCoords, max, min, floor } from '@floating-ui/utils';\nimport { getComputedStyle, isHTMLElement, isElement, getWindow, isWebKit, getFrameElement, getNodeScroll, getDocumentElement, isTopLayer, getNodeName, isOverflowElement, 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 currentWin = win;\n let currentIFrame = getFrameElement(currentWin);\n while (currentIFrame && offsetParent && offsetWin !== currentWin) {\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 currentWin = getWindow(currentIFrame);\n currentIFrame = getFrameElement(currentWin);\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\n// If <html> has a CSS width greater than the viewport, then this will be\n// incorrect for RTL.\nfunction getWindowScrollBarX(element, rect) {\n const leftScroll = getNodeScroll(element).scrollLeft;\n if (!rect) {\n return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;\n }\n return rect.left + leftScroll;\n}\n\nfunction getHTMLOffset(documentElement, scroll, ignoreScrollbarX) {\n if (ignoreScrollbarX === void 0) {\n ignoreScrollbarX = false;\n }\n const htmlRect = documentElement.getBoundingClientRect();\n const x = htmlRect.left + scroll.scrollLeft - (ignoreScrollbarX ? 0 :\n // RTL <body> scrollbar.\n getWindowScrollBarX(documentElement, htmlRect));\n const y = htmlRect.top + scroll.scrollTop;\n return {\n x,\n y\n };\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n elements,\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isFixed = strategy === 'fixed';\n const documentElement = getDocumentElement(offsetParent);\n const topLayer = elements ? isTopLayer(elements.floating) : false;\n if (offsetParent === documentElement || topLayer && isFixed) {\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 const isOffsetParentAnElement = isHTMLElement(offsetParent);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\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 const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll, true) : createCoords(0);\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 + htmlOffset.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\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 x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y,\n width: clippingAncestor.width,\n height: clippingAncestor.height\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' ? isTopLayer(element) ? [] : 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 const {\n width,\n height\n } = getCssDimensions(element);\n return {\n width,\n height\n };\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\n // If the <body> scrollbar appears on the left (e.g. RTL systems). Use\n // Firefox with layout.scrollbar.side = 3 in about:config to test this.\n function setLeftRTLScrollbarOffset() {\n offsets.x = getWindowScrollBarX(documentElement);\n }\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 setLeftRTLScrollbarOffset();\n }\n }\n if (isFixed && !isOffsetParentAnElement && documentElement) {\n setLeftRTLScrollbarOffset();\n }\n const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);\n const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;\n const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;\n return {\n x,\n y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction isStaticPositioned(element) {\n return getComputedStyle(element).position === 'static';\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 let rawOffsetParent = element.offsetParent;\n\n // Firefox returns the <html> element as the offsetParent if it's non-static,\n // while Chrome and Safari return the <body> element. The <body> element must\n // be used to perform the correct calculations even if the <html> element is\n // non-static.\n if (getDocumentElement(element) === rawOffsetParent) {\n rawOffsetParent = rawOffsetParent.ownerDocument.body;\n }\n return rawOffsetParent;\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 win = getWindow(element);\n if (isTopLayer(element)) {\n return win;\n }\n if (!isHTMLElement(element)) {\n let svgOffsetParent = getParentNode(element);\n while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {\n if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {\n return svgOffsetParent;\n }\n svgOffsetParent = getParentNode(svgOffsetParent);\n }\n return win;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {\n return win;\n }\n return offsetParent || getContainingBlock(element) || win;\n}\n\nconst getElementRects = async function (data) {\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n const floatingDimensions = await getDimensionsFn(data.floating);\n return {\n reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),\n floating: {\n x: 0,\n y: 0,\n width: floatingDimensions.width,\n height: floatingDimensions.height\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\nfunction rectsAreEqual(a, b) {\n return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;\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 var _io;\n clearTimeout(timeoutId);\n (_io = io) == null || _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 elementRectForRootMargin = element.getBoundingClientRect();\n const {\n left,\n top,\n width,\n height\n } = elementRectForRootMargin;\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 // If the reference is clipped, the ratio is 0. Throttle the refresh\n // to prevent an infinite loop of updates.\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 1000);\n } else {\n refresh(false, ratio);\n }\n }\n if (ratio === 1 && !rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {\n // It's possible that even though the ratio is reported as 1, the\n // element is not actually fully within the IntersectionObserver's root\n // area anymore. This can happen under performance constraints. This may\n // be a bug in the browser's IntersectionObserver implementation. To\n // work around this, we compare the element's bounding rect now with\n // what it was at the time we created the IntersectionObserver. If they\n // are not equal then the element moved, so we refresh.\n refresh();\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 var _resizeObserver;\n (_resizeObserver = resizeObserver) == null || _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 && !rectsAreEqual(prevRefRect, nextRefRect)) {\n update();\n }\n prevRefRect = nextRefRect;\n frameId = requestAnimationFrame(frameLoop);\n }\n update();\n return () => {\n var _resizeObserver2;\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.removeEventListener('scroll', update);\n ancestorResize && ancestor.removeEventListener('resize', update);\n });\n cleanupIo == null || cleanupIo();\n (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();\n resizeObserver = null;\n if (animationFrame) {\n cancelAnimationFrame(frameId);\n }\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 */\nconst detectOverflow = detectOverflow$1;\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 = offset$1;\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 = autoPlacement$1;\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 = shift$1;\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 = flip$1;\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 = size$1;\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 = hide$1;\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 = arrow$1;\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 = inline$1;\n\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = limitShift$1;\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\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 { arrow, autoPlacement, autoUpdate, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, platform, shift, size };\n","import { arrow, computePosition, flip, offset, shift } from '@floating-ui/dom';\nimport { processEnv } from '../schema';\n\nimport type { AlignPropType } from '../schema';\ntype Arguments = {\n\tfloatingElement: HTMLElement;\n\treferenceElement: Element;\n\tarrowElement?: HTMLElement;\n\talign?: AlignPropType;\n};\nexport const alignFloatingElements = async ({ floatingElement, referenceElement, arrowElement, align = 'top' }: Arguments) => {\n\tif (processEnv !== 'test') {\n\t\tconst middleware = [offset(arrowElement?.offsetHeight ?? 10), flip(), shift()];\n\t\tif (arrowElement) {\n\t\t\tmiddleware.push(arrow({ element: arrowElement }));\n\t\t}\n\n\t\tconst { x, y, middlewareData, placement } = await computePosition(referenceElement, floatingElement, {\n\t\t\tplacement: align,\n\t\t\tmiddleware: middleware,\n\t\t\tstrategy: 'fixed',\n\t\t});\n\n\t\tObject.assign(floatingElement.style, {\n\t\t\tleft: `${x}px`,\n\t\t\ttop: `${y}px`,\n\t\t\tvisibility: 'visible',\n\t\t});\n\n\t\tif (arrowElement) {\n\t\t\tif (middlewareData.arrow?.x) {\n\t\t\t\tObject.assign(arrowElement.style, {\n\t\t\t\t\tleft: `${middlewareData.arrow.x}px`,\n\t\t\t\t\ttop: placement === 'bottom' ? `${-arrowElement.offsetHeight / 2}px` : '',\n\t\t\t\t\tbottom: placement === 'top' ? `${-arrowElement.offsetHeight / 2}px` : '',\n\t\t\t\t});\n\t\t\t} else if (middlewareData.arrow?.y) {\n\t\t\t\tObject.assign(arrowElement.style, {\n\t\t\t\t\tleft: placement === 'right' ? `${-arrowElement.offsetWidth / 2}px` : '',\n\t\t\t\t\tright: placement === 'left' ? `${-arrowElement.offsetWidth / 2}px` : '',\n\t\t\t\t\ttop: `${middlewareData.arrow.y}px`,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{o,S as t}from"./index-6d801dad.js";import{a as s}from"./index-5879a66b.js";import{L as a}from"./dev.utils-fab45cbc.js";s((i=>{try{i.shadowRoot instanceof ShadowRoot&&o(i,t(i))}catch(o){}return"default"})),import("./devtools-35fb12ed.js").then((o=>{"object"==typeof o&&null!==o&&"function"==typeof o.initialize&&o.initialize()})).catch((o=>{a.error(o)}));const e=()=>{},f=e,i=f;export{i as g};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{a as t}from"./dev.utils-fab45cbc.js";import{i as e,j as i,l as s}from"./prop.validators-17aec743.js";const o=(t,i,s)=>{e(t,"_name",i,s)},a=t=>"KOL-BUTTON"===t||"KOL-COMBOBOX"===t||"KOL-INPUT-CHECKBOX"===t||"KOL-INPUT-COLOR"===t||"KOL-INPUT-DATE"===t||"KOL-INPUT-EMAIL"===t||"KOL-INPUT-FILE"===t||"KOL-INPUT-NUMBER"===t||"KOL-INPUT-PASSWORD"===t||"KOL-INPUT-RADIO"===t||"KOL-INPUT-RANGE"===t||"KOL-INPUT-TEXT"===t||"KOL-SELECT"===t||"KOL-SINGLE-SELECT"===t||"KOL-TEXTAREA"===t;class n{constructor(e,s,o){var r,n,l;if(this.experimentalMode=t(),this.setFormAssociatedValue=t=>{var e;const s=null===(e=this.formAssociated)||void 0===e?void 0:e.getAttribute("name");null!==s&&""!==s||i(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);const o=this.tryToStringifyValue(t);this.syncValue(t,o,this.formAssociated),this.syncValue(t,o,this.syncToOwnInput)},this.component=e,this.host=this.findHostWithShadowRoot(o),this.type=s,this.experimentalMode&&a(null===(r=this.host)||void 0===r?void 0:r.tagName)&&e._name){switch(null===(n=this.host)||void 0===n||n.querySelectorAll("input,select,textarea").forEach((t=>{var e;null===(e=this.host)||void 0===e||e.removeChild(t)})),this.type){case"button":case"color":case"date":case"email":case"file":case"number":case"password":case"radio":case"range":case"text":this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type",this.type);break;case"select":this.formAssociated=document.createElement("select"),this.formAssociated.setAttribute("multiple","");break;case"textarea":this.formAssociated=document.createElement("textarea");break;default:this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden")}this.formAssociated.setAttribute("data-form-associated",""),this.formAssociated.setAttribute("hidden",""),null===(l=this.host)||void 0===l||l.appendChild(this.formAssociated)}}findHostWithShadowRoot(t){for(;null===(null==t?void 0:t.shadowRoot)&&t!==document.body;)(t=null==t?void 0:t.parentNode).host&&(t=t.host);return t}setAttribute(t,e,i){if(this.experimentalMode)try{if("boolean"!=typeof(i="object"==typeof i&&null!==i?JSON.stringify(i):i)&&"number"!=typeof i&&"string"!=typeof i)throw new Error("Invalid value type: "+typeof i);null==e||e.setAttribute(t,`${i}`)}catch(i){null==e||e.removeAttribute(t)}}tryToStringifyValue(t){try{return"object"==typeof t&&null!==t?JSON.stringify(t).toString():null==t?null:t.toString()}catch(t){return s(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,i){if(i)switch(this.type){case"file":i.files=t;break;case"select":i.querySelectorAll("option").forEach((t=>{i.removeChild(t)})),Array.isArray(t)&&t.forEach((t=>{const e=this.tryToStringifyValue(t);if("string"==typeof e){const t=document.createElement("option");t.setAttribute("value",e),t.setAttribute("selected",""),i.appendChild(t)}}));break;case"radio":"string"==typeof e&&(i.setAttribute("value",e),i.setAttribute("checked",""),i.value=e);break;default:"string"==typeof e?(i.setAttribute("value",e),i.value=e):(i.removeAttribute("value"),i.value="")}}validateName(t){o(this.component,t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&i("A name on input fields or switches is not strictly required, but it might be relevant for the autocomplete function and for the static submission of the input field.")}validateSyncValueBySelector(t){if(this.experimentalMode&&"string"==typeof t){const e=document.querySelector(t);e&&(this.syncToOwnInput=e)}}componentWillLoad(){this.validateName(this.component._name),this.validateSyncValueBySelector(this.component._syncValueBySelector)}}export{n as A};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{i as a}from"./prop.validators-17aec743.js";const o=(o,r)=>{a(o,"_badgeText",r)};export{o as v};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{w as t,i as a,b as o}from"./prop.validators-17aec743.js";const r=["button","link","tab","treeitem"],n=(a,i)=>{t(a,"_role",(t=>"string"==typeof t&&r.includes(t)),new Set([`KoliBriAlternativeButtonLinkRole {${r.join(", ")}`]),i)},e=(t,r)=>{a(t,"_ariaDescription",r)},i=(t,a)=>{o(t,"_ariaExpanded",a)},s=["primary","secondary","normal","tertiary","danger","ghost","custom"],c=(a,r)=>{t(a,"_variant",(t=>"string"==typeof t&&s.includes(t)),new Set([`KoliBriButtonVariant {${s.join(", ")}`]),r,{defaultValue:"normal"})};export{i as a,n as b,c,e as v};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{L as e}from"./dev.utils-fab45cbc.js";import{r,d as a,w as t,a as n}from"./prop.validators-17aec743.js";var l={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},o=l,i=u,s={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function u(e){var r,a,t=[],n=1;if("string"==typeof e)if(e=e.toLowerCase(),o[e])t=o[e].slice(),a="rgb";else if("transparent"===e)n=0,a="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var l=e.slice(1);n=1,(g=l.length)<=4?(t=[parseInt(l[0]+l[0],16),parseInt(l[1]+l[1],16),parseInt(l[2]+l[2],16)],4===g&&(n=parseInt(l[3]+l[3],16)/255)):(t=[parseInt(l[0]+l[1],16),parseInt(l[2]+l[3],16),parseInt(l[4]+l[5],16)],8===g&&(n=parseInt(l[6]+l[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var i=r[1],u="rgb"===i;a=l=i.replace(/a$/,"");var g="cmyk"===l?4:"gray"===l?1:3;t=r[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(e,r){if(/%$/.test(e))return r===g?parseFloat(e)/100:"rgb"===l?255*parseFloat(e)/100:parseFloat(e);if("h"===l[r]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==s[e])return s[e]}return parseFloat(e)})),i===l&&t.push(1),n=u||void 0===t[g]?1:t[g],t=t.slice(0,g)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(t=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),a=e.match(/([a-z])/gi).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(t=[e[0],e[1],e[2]],a="rgb",n=4===e.length?e[3]:1):e instanceof Object&&(null!=e.r||null!=e.red||null!=e.R?(a="rgb",t=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",t=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,null!=e.opacity&&(n/=100)):(a="rgb",t=[e>>>16,(65280&e)>>>8,255&e]);return{space:a,values:t,alpha:n}}var g=i,f=function(e){var r;Array.isArray(e)&&e.raw&&(e=String.raw.apply(null,arguments));var a=g(e);if(!a.space)return[];var o=[0,0,0],t="h"===a.space[0]?[360,100,100]:[255,255,255];return(r=Array(3))[0]=Math.min(Math.max(a.values[0],o[0]),t[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),t[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),t[2]),"h"===a.space[0]&&(r=d(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function d(e){var r,a,o,t,n,l=e[0]/360,i=e[1]/100,s=e[2]/100,u=0;if(0===i)return[n=255*s,n,n];for(r=2*s-(a=s<.5?s*(1+i):s+i-s*i),t=[0,0,0];u<3;)(o=l+1/3*-(u-1))<0?o++:o>1&&o--,n=6*o<1?r+6*(a-r)*o:2*o<1?a:3*o<2?r+(a-r)*(2/3-o)*6:r,t[u++]=255*n;return t}const c=f,h=(e,r,a)=>(299*e+587*r+114*a)/1e3>=128?-1:1,p=(e,o,t,n=1)=>{const l=[Math.max(Math.min(Math.round(o[0]+n*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+n*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+n*Math.max(1,o[2]/100)),255),0)],i=a(r.hex(`rgba(${e.join(",")},1)`),r.hex(`rgba(${l.join(",")},1)`)),s=l[0]+l[1]+l[2];return 0===s||765===s||i>t?{background:e,foreground:l,contrast:i}:p(e,l,t,n)},y=new Map,b=(e,r,a,o=1)=>{if(y.has(e))return y.get(e);const t=p(e,r,a,o);return y.set(e,t),t},v=(e,a=7)=>{let o=[0,0,0,1],t=[255,255,255,1];"string"==typeof e?(o=c(e),t=o):"object"==typeof e&&null!==e&&"string"==typeof e.background&&"string"==typeof e.foreground&&(o=c(e.background),t="string"==typeof e.foreground?c(e.foreground):o);const n=h(o[0],o[1],o[2]),l=b([o[0],o[1],o[2]],[t[0],t[1],t[2]],a,n);return t=[...l.foreground,1],{background:r.hex(`rgba(${o.join(",")})`),foreground:r.hex(`rgba(${t.join(",")})`),contrast:l.contrast}},m=/^#((\d|[a-f]){8}|(\d|[a-f]){6}|(\d|[a-f]){3,4})$/i;function k(e){return m.test(e)}function w(e){if(e.startsWith("{"))try{const r=JSON.parse(e);if($(r))return{type:"ColorPair",value:r}}catch(e){return{type:null,value:null}}return{type:null,value:null}}function M(e){if(e)if("string"==typeof e){if(k(e))return{type:"string",valid:!0,value:e};{const r=w(e);if(r.value)return{type:r.type,valid:!0,value:r.value}}}else{const r=e;if($(r))return{type:"ColorPair",valid:!0,value:r}}return{type:null,valid:!1,value:""}}function $(e){return!("object"!=typeof e||!e||"string"!=typeof e.backgroundColor||!("string"==typeof e.foregroundColor||e.foregroundColor&&"string"==typeof e.foregroundColor.primary&&"string"==typeof e.foregroundColor.secondary&&"string"==typeof e.foregroundColor.neutral))}function q(e){const r=M(e);switch(r.type){case null:return!1;case"string":case"ColorPair":return r.valid}}const I=(e,r,a)=>{t(e,"_color",q,new Set(["rgb in hex","ColorPair"]),r,a)},A=r=>{var a;let o;const t=M(r);switch(t.type){case"string":o=v(t.value);break;case"ColorPair":{const e=t.value;let r="";"string"==typeof e.foregroundColor?r=e.foregroundColor:(null===(a=e.foregroundColor)||void 0===a?void 0:a.primary)&&(r=e.foregroundColor.primary),r&&"string"==typeof r||(r="#fff"),o=v({background:e.backgroundColor,foreground:r});break}case null:e.warn(`_color was empty or invalid (${JSON.stringify(r)})`,{forceLog:!0}),o=v({background:"#000",foreground:"#000"})}return o.contrast<7&&n(`[KolBadge] The contrast of ${o.contrast} (≥7, AAA) is to low, between the color pair ${o.background} and ${o.foreground}.`),{backgroundColor:o.background,foregroundColor:o.foreground}};export{c,A as h,I as v};
@@ -1 +0,0 @@
1
- {"version":3,"names":["colorName","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","names","require$$0","colorParse","parse","baseHues","cstr","m","parts","alpha","space","toLowerCase","slice","test","base","size","length","isShort","parseInt","exec","name","isRGB","replace","trim","split","map","x","i","parseFloat","undefined","push","match","value","join","isNaN","Array","isArray","Object","r","R","g","G","b","B","h","hue","H","s","saturation","S","l","lightness","L","brightness","a","opacity","values","colorRgba","rgba","color","raw","String","apply","arguments","parsed","min","max","Math","hsl2rgb","hsl","t1","t2","t3","rgb","val","getContrastYIQ","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","round","contrast","hex","rgbaConvert","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorContrast","HEX_REGEX","isHexString","isColorObjectString","startsWith","JSON","isValidColorPair","type","error","typeOfColor","valid","colorObject","asColorPair","backgroundColor","foregroundColor","primary","secondary","neutral","validatorFunction","valueType","validateColor","component","options","watchValidator","Set","handleColorChange","_a","Log","warn","stringify","forceLog","a11yHint"],"sources":["../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js","../../node_modules/.pnpm/color-parse@1.4.3/node_modules/color-parse/index.js","../../node_modules/.pnpm/color-rgba@2.4.0/node_modules/color-rgba/index.js","src/schema/utils/contrast/contrast.ts","src/schema/props/color.ts"],"sourcesContent":["'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/**\n * @module color-parse\n */\n\n'use strict'\n\nvar names = require('color-name')\n\nmodule.exports = parse\n\n/**\n * Base hues\n * http://dev.w3.org/csswg/css-color/#typedef-named-hue\n */\n//FIXME: use external hue detector\nvar baseHues = {\n\tred: 0,\n\torange: 60,\n\tyellow: 120,\n\tgreen: 180,\n\tblue: 240,\n\tpurple: 300\n}\n\n/**\n * Parse color from the string passed\n *\n * @return {Object} A space indicator `space`, an array `values` and `alpha`\n */\nfunction parse(cstr) {\n\tvar m, parts = [], alpha = 1, space\n\n\tif (typeof cstr === 'string') {\n\t\tcstr = cstr.toLowerCase();\n\n\t\t//keyword\n\t\tif (names[cstr]) {\n\t\t\tparts = names[cstr].slice()\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//reserved words\n\t\telse if (cstr === 'transparent') {\n\t\t\talpha = 0\n\t\t\tspace = 'rgb'\n\t\t\tparts = [0, 0, 0]\n\t\t}\n\n\t\t//hex\n\t\telse if (/^#[A-Fa-f0-9]+$/.test(cstr)) {\n\t\t\tvar base = cstr.slice(1)\n\t\t\tvar size = base.length\n\t\t\tvar isShort = size <= 4\n\t\t\talpha = 1\n\n\t\t\tif (isShort) {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[0], 16),\n\t\t\t\t\tparseInt(base[1] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[2], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 4) {\n\t\t\t\t\talpha = parseInt(base[3] + base[3], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[3], 16),\n\t\t\t\t\tparseInt(base[4] + base[5], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 8) {\n\t\t\t\t\talpha = parseInt(base[6] + base[7], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!parts[0]) parts[0] = 0\n\t\t\tif (!parts[1]) parts[1] = 0\n\t\t\tif (!parts[2]) parts[2] = 0\n\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//color space\n\t\telse if (m = /^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(cstr)) {\n\t\t\tvar name = m[1]\n\t\t\tvar isRGB = name === 'rgb'\n\t\t\tvar base = name.replace(/a$/, '')\n\t\t\tspace = base\n\t\t\tvar size = base === 'cmyk' ? 4 : base === 'gray' ? 1 : 3\n\t\t\tparts = m[2].trim()\n\t\t\t\t.split(/\\s*[,\\/]\\s*|\\s+/)\n\t\t\t\t.map(function (x, i) {\n\t\t\t\t\t//<percentage>\n\t\t\t\t\tif (/%$/.test(x)) {\n\t\t\t\t\t\t//alpha\n\t\t\t\t\t\tif (i === size) return parseFloat(x) / 100\n\t\t\t\t\t\t//rgb\n\t\t\t\t\t\tif (base === 'rgb') return parseFloat(x) * 255 / 100\n\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t}\n\t\t\t\t\t//hue\n\t\t\t\t\telse if (base[i] === 'h') {\n\t\t\t\t\t\t//<deg>\n\t\t\t\t\t\tif (/deg$/.test(x)) {\n\t\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//<base-hue>\n\t\t\t\t\t\telse if (baseHues[x] !== undefined) {\n\t\t\t\t\t\t\treturn baseHues[x]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t})\n\n\t\t\tif (name === base) parts.push(1)\n\t\t\talpha = (isRGB) ? 1 : (parts[size] === undefined) ? 1 : parts[size]\n\t\t\tparts = parts.slice(0, size)\n\t\t}\n\n\t\t//named channels case\n\t\telse if (cstr.length > 10 && /[0-9](?:\\s|\\/)/.test(cstr)) {\n\t\t\tparts = cstr.match(/([0-9]+)/g).map(function (value) {\n\t\t\t\treturn parseFloat(value)\n\t\t\t})\n\n\t\t\tspace = cstr.match(/([a-z])/ig).join('').toLowerCase()\n\t\t}\n\t}\n\n\t//numeric case\n\telse if (!isNaN(cstr)) {\n\t\tspace = 'rgb'\n\t\tparts = [cstr >>> 16, (cstr & 0x00ff00) >>> 8, cstr & 0x0000ff]\n\t}\n\n\t//array-like\n\telse if (Array.isArray(cstr) || cstr.length) {\n\t\tparts = [cstr[0], cstr[1], cstr[2]]\n\t\tspace = 'rgb'\n\t\talpha = cstr.length === 4 ? cstr[3] : 1\n\t}\n\n\t//object case - detects css cases of rgb and hsl\n\telse if (cstr instanceof Object) {\n\t\tif (cstr.r != null || cstr.red != null || cstr.R != null) {\n\t\t\tspace = 'rgb'\n\t\t\tparts = [\n\t\t\t\tcstr.r || cstr.red || cstr.R || 0,\n\t\t\t\tcstr.g || cstr.green || cstr.G || 0,\n\t\t\t\tcstr.b || cstr.blue || cstr.B || 0\n\t\t\t]\n\t\t}\n\t\telse {\n\t\t\tspace = 'hsl'\n\t\t\tparts = [\n\t\t\t\tcstr.h || cstr.hue || cstr.H || 0,\n\t\t\t\tcstr.s || cstr.saturation || cstr.S || 0,\n\t\t\t\tcstr.l || cstr.lightness || cstr.L || cstr.b || cstr.brightness\n\t\t\t]\n\t\t}\n\n\t\talpha = cstr.a || cstr.alpha || cstr.opacity || 1\n\n\t\tif (cstr.opacity != null) alpha /= 100\n\t}\n\n\treturn {\n\t\tspace: space,\n\t\tvalues: parts,\n\t\talpha: alpha\n\t}\n}\n","/** @module color-rgba */\r\n\r\n'use strict'\r\n\r\nvar parse = require('color-parse')\r\n\r\nmodule.exports = function rgba (color) {\r\n\t// template literals\r\n\tif (Array.isArray(color) && color.raw) color = String.raw.apply(null, arguments)\r\n\r\n\tvar values, i, l\r\n\r\n\t//attempt to parse non-array arguments\r\n\tvar parsed = parse(color)\r\n\r\n\tif (!parsed.space) return []\r\n\r\n\tvar min = [0,0,0], max = parsed.space[0] === 'h' ? [360,100,100] : [255,255,255]\r\n\r\n\tvalues = Array(3)\r\n\tvalues[0] = Math.min(Math.max(parsed.values[0], min[0]), max[0])\r\n\tvalues[1] = Math.min(Math.max(parsed.values[1], min[1]), max[1])\r\n\tvalues[2] = Math.min(Math.max(parsed.values[2], min[2]), max[2])\r\n\r\n\tif (parsed.space[0] === 'h') values = hsl2rgb(values)\r\n\r\n\tvalues.push(Math.min(Math.max(parsed.alpha, 0), 1))\r\n\r\n\treturn values\r\n}\r\n\r\n\r\n// excerpt from color-space/hsl\r\nfunction hsl2rgb(hsl) {\r\n\tvar h = hsl[0]/360, s = hsl[1]/100, l = hsl[2]/100, t1, t2, t3, rgb, val, i=0;\r\n\r\n\tif (s === 0) return val = l * 255, [val, val, val];\r\n\r\n\tt2 = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n\tt1 = 2 * l - t2;\r\n\r\n\trgb = [0, 0, 0];\r\n\tfor (;i<3;) {\r\n\t\tt3 = h + 1 / 3 * - (i - 1);\r\n\t\tt3 < 0 ? t3++ : t3 > 1 && t3--;\r\n\t\tval = 6 * t3 < 1 ? t1 + (t2 - t1) * 6 * t3 :\r\n\t\t2 * t3 < 1 ? t2 :\r\n\t\t3 * t3 < 2 ? t1 + (t2 - t1) * (2 / 3 - t3) * 6 :\r\n\t\tt1;\r\n\t\trgb[i++] = val * 255;\r\n\t}\r\n\r\n\treturn rgb;\r\n}\r\n","import type { RGB } from 'color-convert/conversions';\nimport { hex } from 'wcag-contrast';\n\nimport { colorRgba } from './color-rgba';\nimport { rgbaConvert } from './rgba-convert';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\ntype ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq,\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { Stringified } from '../types';\nimport type { ColorContrast, WatchOptions } from '../utils';\nimport { Log } from '../utils';\nimport { a11yHint, createContrastColorPair, watchValidator } from '../utils';\n\n/**\n * Defines the colors for primary, secondary and neutral.\n */\ntype CharacteristicColors = {\n\tprimary: string;\n\tsecondary: string;\n\tneutral: string;\n};\n\n/**\n * Defines the backgroundColor and foregroundColor.\n */\nexport type ColorPair = {\n\tbackgroundColor: string;\n\tforegroundColor: Stringified<CharacteristicColors>;\n};\n\nexport type PropColor = ColorPair;\n\ntype typeOfColorType = 'string' | 'ColorPair' | null;\n\nconst HEX_REGEX = /^#((\\d|[a-f]){8}|(\\d|[a-f]){6}|(\\d|[a-f]){3,4})$/i;\nfunction isHexString(value: string): boolean {\n\treturn HEX_REGEX.test(value);\n}\n/* checks if the string is valid JSON and if the resulting object is a valid ColorPair and returns it, or null if invalid. */\nfunction isColorObjectString(value: string): { type: typeOfColorType; value: PropColor | null } {\n\tif (value.startsWith('{')) {\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(value) as unknown;\n\t\t\tif (isValidColorPair(parsed as ColorPair)) return { type: 'ColorPair', value: parsed as ColorPair };\n\t\t} catch (error) {\n\t\t\treturn { type: null, value: null };\n\t\t}\n\t}\n\treturn { type: null, value: null };\n}\n\nfunction typeOfColor(value?: unknown): { type: typeOfColorType; valid: boolean; value: PropColor | string } {\n\tif (value) {\n\t\tif (typeof value === 'string') {\n\t\t\tif (isHexString(value)) return { type: 'string', valid: true, value: value };\n\t\t\telse {\n\t\t\t\tconst colorObject = isColorObjectString(value);\n\t\t\t\tif (colorObject.value) return { type: colorObject.type, valid: true, value: colorObject.value };\n\t\t\t}\n\t\t} else {\n\t\t\tconst asColorPair = value as ColorPair;\n\t\t\tif (isValidColorPair(asColorPair)) return { type: 'ColorPair', valid: true, value: asColorPair };\n\t\t}\n\t}\n\treturn { type: null, valid: false, value: '' };\n}\n\n/* validate different color options */\nfunction isValidColorPair(value: ColorPair): boolean {\n\treturn !!(\n\t\ttypeof value === 'object' &&\n\t\tvalue &&\n\t\ttypeof value.backgroundColor === 'string' &&\n\t\t(typeof value.foregroundColor === 'string' ||\n\t\t\t(value.foregroundColor &&\n\t\t\t\ttypeof value.foregroundColor.primary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.secondary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.neutral === 'string'))\n\t);\n}\n\nfunction validatorFunction(value?: Stringified<PropColor>): boolean {\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase null:\n\t\t\treturn false;\n\t\tcase 'string':\n\t\tcase 'ColorPair':\n\t\t\treturn valueType.valid;\n\t}\n}\n\nexport const validateColor = (component: Generic.Element.Component, value?: Stringified<PropColor>, options?: WatchOptions): void => {\n\twatchValidator(component, '_color', validatorFunction, new Set(['rgb in hex', 'ColorPair']), value, options);\n};\n\nexport const handleColorChange = (value: unknown): ColorPair => {\n\tlet colorContrast: ColorContrast<string>;\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase 'string':\n\t\t\tcolorContrast = createContrastColorPair(valueType.value as string);\n\t\t\tbreak;\n\t\tcase 'ColorPair': {\n\t\t\tconst asColorPair = valueType.value as ColorPair;\n\t\t\tlet foreground = '';\n\t\t\tif (typeof asColorPair.foregroundColor === 'string') foreground = asColorPair.foregroundColor;\n\t\t\telse if (asColorPair.foregroundColor?.primary) foreground = asColorPair.foregroundColor.primary;\n\t\t\tif (!foreground || typeof foreground !== 'string') foreground = '#fff';\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: asColorPair.backgroundColor,\n\t\t\t\tforeground,\n\t\t\t});\n\t\t\tbreak;\n\t\t}\n\t\tcase null:\n\t\t\tLog.warn(`_color was empty or invalid (${JSON.stringify(value)})`, { forceLog: true });\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: '#000',\n\t\t\t\tforeground: '#000',\n\t\t\t});\n\t}\n\n\tif (colorContrast.contrast < 7) {\n\t\ta11yHint(\n\t\t\t`[KolBadge] The contrast of ${colorContrast.contrast} (≥7, AAA) is to low, between the color pair ${colorContrast.background} and ${colorContrast.foreground}.`,\n\t\t);\n\t}\n\treturn {\n\t\tbackgroundColor: colorContrast.background,\n\t\tforegroundColor: colorContrast.foreground,\n\t};\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- const t=e=>"object"==typeof e&&null!==e,e=(e,t=0)=>"string"==typeof e&&e.length>=t,n=t=>{if("object"!=typeof t||null===t)return e(t,1);for(const n in t)if(!1===e(n,1))return!1;return!0},s=new Event("StateChange");export{s as S,t as a,n as b,e as i};
@@ -1 +0,0 @@
1
- {"version":3,"names":["isObject","value","isString","minLength","length","isStyle","style","property","STATE_CHANGE_EVENT","Event"],"sources":["src/schema/validators/common.ts"],"sourcesContent":["export const isObject = (value: unknown): boolean => typeof value === 'object' && value !== null;\n\nexport const isString = (value: unknown, minLength = 0): boolean => typeof value === 'string' && value.length >= minLength;\n\nexport const isStyle = (style?: Record<string, string>): boolean => {\n\tif (typeof style === 'object' && style !== null) {\n\t\tfor (const property in style) {\n\t\t\tif (isString(property, 1) === false) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t} else {\n\t\treturn isString(style, 1);\n\t}\n\treturn true;\n};\n\n/**\n * Fix event instance for state changes.\n */\nexport const STATE_CHANGE_EVENT = new Event('StateChange');\n"],"mappings":";;;MAAaA,EAAYC,UAAmCA,IAAU,UAAYA,IAAU,K,MAE/EC,EAAW,CAACD,EAAgBE,EAAY,WAAsBF,IAAU,UAAYA,EAAMG,QAAUD,E,MAEpGE,EAAWC,IACvB,UAAWA,IAAU,UAAYA,IAAU,KAAM,CAChD,IAAK,MAAMC,KAAYD,EAAO,CAC7B,GAAIJ,EAASK,EAAU,KAAO,MAAO,CACpC,OAAO,K,OAGH,CACN,OAAOL,EAASI,EAAO,E,CAExB,OAAO,IAAI,E,MAMCE,EAAqB,IAAIC,MAAM,sB","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{I as s}from"./controller-823a2e8d.js";import{v as t}from"./spell-check-27a3f91d.js";import{w as e}from"./prop.validators-17aec743.js";import{v as o}from"./suggestions-04da2b2e.js";const i=["text","search","url","tel"];class a extends s{constructor(t,e,o){super(t,e,o),this.component=t}validateSuggestions(t){o(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions)}}class r extends a{constructor(t,e,o){super(t,e,o),this.hasError=!1,this.component=t}validateSpellCheck(e){t(this.component,e)}validateType(t){e(this.component,"_type",(t=>"string"==typeof t&&i.includes(t)),new Set([`String {${i.join(", ")}`]),t)}componentWillLoad(){super.componentWillLoad(),this.validateSpellCheck(this.component._spellCheck),this.validateType(this.component._type)}}export{a as I,r as a};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{m as e}from"./component-names-4cb1c62b.js";import{n as o,K as t,j as n}from"./prop.validators-17aec743.js";import{a as i,L as s}from"./dev.utils-fab45cbc.js";const f=t=>{for(i()&&(n("↓ Search form element start."),s.debug(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&t.tagName!==e.toUpperCase();){try{t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null}catch(e){}i()&&(s.debug(t),n("↑ Search form element finished."))}return t},a=(n={})=>{var a,s;const i=f(n.form);if(i instanceof HTMLElement){const n=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===i.tagName)o(n,i),i.dispatchEvent(n);else if(i.tagName===e.toUpperCase()){o(n,t.querySelector("form",i));const e=i;"function"==typeof(null===(a=e._on)||void 0===a?void 0:a.onReset)&&(null===(s=e._on)||void 0===s||s.onReset(n))}}},l=(a={})=>{const s=f(a.form);if(s instanceof HTMLElement){const a=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:s});if("FORM"===s.tagName)i()&&!1===s.noValidate&&n("If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.",{force:!0}),setTimeout((()=>{"function"==typeof s.requestSubmit?s.requestSubmit():(o(a,s),s.dispatchEvent(a))}));else if(s.tagName===e.toUpperCase()){o(a,t.querySelector("form",s));const e=s;setTimeout((()=>{var t,o;"function"==typeof(null===(t=e._on)||void 0===t?void 0:t.onSubmit)&&(null===(o=e._on)||void 0===o||o.onSubmit(a))}))}}};export{a,l as p};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{I as t}from"./controller-8ee06262.js";import{a as s,g as e,b as i,w as a,s as r}from"./prop.validators-17aec743.js";import{b as o,c as n}from"./label-90c13388.js";const l=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===o(t.label,3)&&!1===n(t.label)&&s(`A differing Aria-Label (${t.label}) is not accessible. A differing Aria-Label should consist of at least three readable characters.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===l(t)));if("number"==typeof t.label)return!0}return!1},f=(t,o,a={})=>{e(t,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),o,void 0,a)},h=(t,o,a={})=>{e(t,"_options",l,o,void 0,a)},c=(t,e)=>{i(t,"_required",e)},u=["horizontal","vertical"],p=(t,e,o="")=>{e.forEach(((e,a)=>{const i=`${o}-${a}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?p(t,e.options,i):t.set(i,e))}))};class d extends t{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){c(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class b extends d{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.afterPatchOptions=(t,e,o,a)=>{"_value"===a&&this.setFormAssociatedValue(t)},this.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;Array.isArray(o)&&o.length>0&&(this.keyOptionMap.clear(),p(this.keyOptionMap,o))},this.component=t}validateOrientation(t){a(this.component,"_orientation",(t=>"string"==typeof t&&u.includes(t)),new Set([`Orientation {${u.join(", ")}`]),t,{defaultValue:"vertical"})}validateOptions(t){f(this.component,t,{hooks:{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions}})}validateValue(t){t=Array.isArray(t)?t[0]:t,r(this.component,"_value",t,{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions})}componentWillLoad(){super.componentWillLoad(),this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options),this.validateValue(this.component._value)}}export{d as I,b as a,f as b,p as f,h as v};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{w as t,k as i,i as s,b as a}from"./prop.validators-17aec743.js";import{I as e}from"./controller-icon-0a8dd3ac.js";import{v as h}from"./has-counter-0ab5f398.js";const o=["default","visibility-toggle"],r=(e,a)=>{t(e,"_variant",(t=>"string"==typeof t&&o.includes(t)),new Set(o),a)};class l extends e{constructor(t,e,a){super(t,e,a),this.afterSyncCharCounter=()=>{"string"==typeof this.component._value&&this.component._value.length>0&&(this.component.state._currentLength=this.component._value.length)},this.component=t}validateAutoComplete(e){t(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),e)}validateHasCounter(t){h(this.component,t,{hooks:{afterPatch:this.afterSyncCharCounter}})}validateVariant(t){r(this.component,t)}validateMaxLength(t){i(this.component,"_maxLength",t,{hooks:{afterPatch:this.afterSyncCharCounter},min:0})}validatePattern(t){s(this.component,"_pattern",t)}validatePlaceholder(t){s(this.component,"_placeholder",t)}validateReadOnly(t){a(this.component,"_readOnly",t)}validateRequired(t){a(this.component,"_required",t)}validateValue(t){s(this.component,"_value",t,{hooks:{afterPatch:this.afterSyncCharCounter}}),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateValue(this.component._value),this.validateVariant(this.component._variant)}}export{l as I};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{s as t,t as i}from"./events-29e84d75.js";import{A as s}from"./associated.controller-3b160a7e.js";import{b as e,o,p as h,w as a,c as r,a as n,i as l,j as d,s as c}from"./prop.validators-17aec743.js";import{v as u,a as f,b as p,c as v}from"./access-and-short-key-16c1f3d9.js";import{v as m}from"./hide-label-90b37cc2.js";import{a as y}from"./label-90c13388.js";import{a as b}from"./common-0f1f2276.js";import{v as g}from"./tooltip-align-d8ac9d69.js";const _=(t,o)=>{e(t,"_adjustHeight",o)},j=(t,o,n)=>{e(t,"_hideError",o,n)},k=(t,e)=>{o(e,(()=>{try{e=h(e)}catch(t){}a(t,"_msg",(t=>b(t)&&"string"==typeof(null==t?void 0:t._description)),new Set(["MsgPropType"]),e,{defaultValue:{_description:"",_type:"error"}})}))},x=(t,o)=>{e(t,"_touched",o)},A=t=>{var o,e;const n=Boolean("error"===(null===(o=t._msg)||void 0===o?void 0:o._type)&&t._msg._description&&(null===(e=t._msg._description)||void 0===e?void 0:e.length)>0)&&!0===t._touched,i="string"==typeof t._hint&&t._hint.length>0,s=[];return!0===n&&s.push(`${t._id}-error`),!0===i&&s.push(`${t._id}-hint`),{hasError:n,hasHint:i,ariaDescribedBy:s}};class B extends s{constructor(t,o,e){super(t,o,e),this.component=t}validateAlert(t){e(this.component,"_alert",t)}validateTouched(t){x(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class E extends B{constructor(t,o,e){super(t,o,e),this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this),onInput:this.onInput.bind(this)},this.component=t}validateAccessKey(t){u(this.component,t),f(t,this.component._shortKey)}validateAdjustHeight(t){_(this.component,t)}validateDisabled(t){e(this.component,"_disabled",t),!0===t&&r()}validateTooltipAlign(t){g(this.component,t)}validateError(t){"string"==typeof t&&t.length>0?this.validateMsg({_description:t,_type:"error"}):this.validateMsg(void 0)}validateHideError(t){j(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&n("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(t){m(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&n("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}validateHint(t){l(this.component,"_hint",t)}validateId(t){l(this.component,"_id",t,{minLength:1}),""!==t&&void 0!==t||d("A unique ID on the input fields is not strictly required, but it might be relevant for E2E tests.")}validateLabel(t){y(this.component,t,{required:!0})}validateMsg(t){k(this.component,t)}validateOn(t){"object"==typeof t&&c(this.component,"_on",t)}validateShortKey(t){p(this.component,t),f(this.component._accessKey,t)}validateSmartButton(t){o(t,(()=>{try{t=h(t)}catch(t){}c(this.component,"_smartButton",t)}))}validateTabIndex(t){v(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.component._msg&&this.validateMsg(this.component._msg),this.validateDisabled(this.component._disabled),this.validateHideError(this.component._hideError),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateShortKey(this.component._shortKey),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex),f(this.component._accessKey,this.component._shortKey)}onBlur(o){var e;this.component._touched=!0,t(o),i("blur",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onBlur)&&this.component._on.onBlur(o)}onChange(t,o){var e;o=null!=o?o:t.target.value,i("change",this.host,o),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,o),this.valueChangeListeners.forEach((t=>t(o)))}onInput(o,e=!0,n){var s;n=null!=n?n:o.target.value,t(o),i("input",this.host,n),e&&this.setFormAssociatedValue(n),"function"==typeof(null===(s=this.component._on)||void 0===s?void 0:s.onInput)&&this.component._on.onInput(o,n)}onClick(o){var e;t(o),i("click",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onClick)&&this.component._on.onClick(o)}onFocus(o){var e;t(o),i("focus",this.host),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onFocus)&&this.component._on.onFocus(o)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}export{E as I,A as g};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{I as s}from"./controller-8ee06262.js";import{v as o}from"./icons-b21fdac0.js";class t extends s{constructor(o,s,t){super(o,s,t),this.component=o}validateIcons(s){o(this.component,s)}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons)}}export{t as I};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{i as a}from"./prop.validators-17aec743.js";const s=(s,o)=>{a(s,"_customClass",o,{defaultValue:void 0})};export{s as v};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{E as e}from"./index-5879a66b.js";import{p as t}from"./reuse-32931294.js";import{L as n,g as i,s as o,b as s,c as r,d as a}from"./dev.utils-fab45cbc.js";const c=()=>{const e=i().querySelector('meta[name="kolibri"]');if(e&&e.hasAttribute("content")){const t=e.getAttribute("content");"string"==typeof t&&(o(t.includes("dev-mode=true")),s(t.includes("experimental-mode=true")),r(t.includes("color-contrast-analysis=true")))}},u=()=>{let e=a().KoliBri;return void 0===e&&(e={},Object.defineProperty(a(),"KoliBri",{value:e,writable:!1})),e},l=()=>{c(),n.debug(`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \`--' | |) /_ ,--.--. \`--'\n| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n| |\\ \\ | '-' | | | | | | '--' / | | | |\n\`--' \`--´ \`---´ \`--' \`--' \`------´ \`--' \`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | ${e.kolibriVersion}\n\t`,{forceLog:!0})},b=()=>{!0!==u().adviceShown&&(Object.defineProperty(u(),"adviceShown",{get:function(){return!0}}),n.debug("\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"))};let f=()=>Math.floor(16777215*Math.random()).toString(16);"test"===t&&(f=()=>"nonce");export{l as i,f as n,b as r};
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- const o=()=>"undefined"==typeof window?null:window,s=()=>void 0===o().document?null:o().document;let t=!1,i=!1,n=!1;const e=()=>!0===t,l=o=>{t=!0===o},r=()=>!0===i,d=o=>{i=!0===o},c=()=>!0===n,u=o=>{n=!0===o},a="color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000",f=o=>Array.isArray(o)?o:[o],h=o=>`%c${o}`,v=(o,e)=>"string"==typeof e&&e.length>0?`${h(o)} | ${e}`:h(o),w=(o,e)=>[v(o,null==e?void 0:e.classifier),`${a};${(null==e?void 0:e.overwriteStyle)||""}`],p=(o,e)=>o()||!0===e;class b{constructor(o,e){this.label=o,this.devMode=e}debug(o,e){p(this.devMode,null==e?void 0:e.forceLog)&&console.debug(...w(this.label,e),...f(o))}info(o,e){p(this.devMode,null==e?void 0:e.forceLog)&&console.info(...w(this.label,e),...f(o))}trace(o,e){p(this.devMode,null==e?void 0:e.forceLog)&&console.trace(...w(this.label,e),...f(o))}warn(o,e){p(this.devMode,null==e?void 0:e.forceLog)&&console.warn(...w(this.label,e),...f(o))}error(o,e){console.error(...w(this.label,e),...f(o))}throw(o,e){if(p(this.devMode,null==e?void 0:e.forceLog))throw new Error(...w(this.label,e),...f(o))}}const g=new b("KoliBri",e);export{g as L,r as a,d as b,u as c,o as d,e,c as f,s as g,l as s};
@@ -1 +0,0 @@
1
- {"version":3,"names":["getWindow","window","getDocument","document","DEV_MODE","EXPERIMENTAL_MODE","COLOR_CONTRAST_ANALYSIS","getDevMode","setDevMode","mode","getExperimentalMode","setExperimentalMode","getColorContrastAnalysis","setColorContrastAnalysis","LOG_STYLE","mapToArray","msg","Array","isArray","getLogLabel","label","handleClassifier","classifier","length","getShield","options","overwriteStyle","isDevModeOrForceLog","devMode","forceLog","Logger","constructor","this","debug","console","info","trace","warn","error","Error","Log"],"sources":["src/schema/utils/dev.utils.ts"],"sourcesContent":["/* eslint-disable no-console */\n\ntype GetModeFn = () => boolean;\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const setWindow = (value: Window): void => {\n\tWINDOW = value;\n};\n\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\nexport const setDocument = (value: Document): void => {\n\tDOCUMENT = value;\n};\n\nlet DEV_MODE: boolean = false;\nlet EXPERIMENTAL_MODE: boolean = false;\nlet COLOR_CONTRAST_ANALYSIS: boolean = false;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const setDevMode = (mode: boolean): void => {\n\tDEV_MODE = mode === true;\n};\n\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const setExperimentalMode = (mode: boolean): void => {\n\tEXPERIMENTAL_MODE = mode === true;\n};\n\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\nexport const setColorContrastAnalysis = (mode: boolean): void => {\n\tCOLOR_CONTRAST_ANALYSIS = mode === true;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nconst LOG_STYLE = 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000';\n\nconst mapToArray = (msg: unknown | unknown[]): unknown[] => {\n\treturn Array.isArray(msg) ? msg : [msg];\n};\n\nconst getLogLabel = (label: string): string => {\n\treturn `%c${label}`;\n};\n\nconst handleClassifier = (label: string, classifier?: string): string => {\n\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\treturn `${getLogLabel(label)} | ${classifier}`;\n\t} else {\n\t\treturn getLogLabel(label);\n\t}\n};\n\nconst getShield = (label: string, options?: LogShieldOptions): string[] => {\n\treturn [handleClassifier(label, options?.classifier), `${LOG_STYLE};${options?.overwriteStyle || ''}`];\n};\n\nconst isDevModeOrForceLog = (devMode: GetModeFn, forceLog?: boolean): boolean => devMode() || forceLog === true;\n\nexport class Logger {\n\tpublic constructor(\n\t\tprivate readonly label: string,\n\t\tprivate readonly devMode: GetModeFn,\n\t) {}\n\n\tpublic debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.debug(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.info(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.trace(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.warn(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tconsole.error(...getShield(this.label, options), ...mapToArray(msg));\n\t}\n\n\tpublic throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tthrow new Error(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n}\n\nexport const Log = new Logger('KoliBri', getDevMode);\n"],"mappings":";;;MAOaA,EAAY,WAAgCC,SAAW,YAAe,KAA6BA,O,MAKnGC,EAAc,WAAoCF,IAAYG,WAAa,YAAe,KAA+BH,IAAYG,SAKlJ,IAAIC,EAAoB,MACxB,IAAIC,EAA6B,MACjC,IAAIC,EAAmC,M,MAE1BC,EAAa,IAAeH,IAAa,K,MACzCI,EAAcC,IAC1BL,EAAWK,IAAS,IAAI,E,MAGZC,EAAsB,IAAeL,IAAsB,K,MAC3DM,EAAuBF,IACnCJ,EAAoBI,IAAS,IAAI,E,MAGrBG,EAA2B,IAAeN,IAA4B,K,MACtEO,EAA4BJ,IACxCH,EAA0BG,IAAS,IAAI,EASxC,MAAMK,EAAY,qHAElB,MAAMC,EAAcC,GACZC,MAAMC,QAAQF,GAAOA,EAAM,CAACA,GAGpC,MAAMG,EAAeC,GACb,KAAKA,IAGb,MAAMC,EAAmB,CAACD,EAAeE,KACxC,UAAWA,IAAe,UAAYA,EAAWC,OAAS,EAAG,CAC5D,MAAO,GAAGJ,EAAYC,QAAYE,G,KAC5B,CACN,OAAOH,EAAYC,E,GAIrB,MAAMI,EAAY,CAACJ,EAAeK,IAC1B,CAACJ,EAAiBD,EAAOK,IAAO,MAAPA,SAAO,SAAPA,EAASH,YAAa,GAAGR,MAAaW,IAAO,MAAPA,SAAO,SAAPA,EAASC,iBAAkB,MAGlG,MAAMC,EAAsB,CAACC,EAAoBC,IAAgCD,KAAaC,IAAa,K,MAE9FC,EACZ,WAAAC,CACkBX,EACAQ,GADAI,KAAAZ,QACAY,KAAAJ,S,CAGX,KAAAK,CAAMjB,EAA0BS,GACtC,GAAIE,EAAoBK,KAAKJ,QAASH,IAAO,MAAPA,SAAO,SAAPA,EAASI,UAAW,CACzDK,QAAQD,SAAST,EAAUQ,KAAKZ,MAAOK,MAAaV,EAAWC,G,EAI1D,IAAAmB,CAAKnB,EAA0BS,GACrC,GAAIE,EAAoBK,KAAKJ,QAASH,IAAO,MAAPA,SAAO,SAAPA,EAASI,UAAW,CACzDK,QAAQC,QAAQX,EAAUQ,KAAKZ,MAAOK,MAAaV,EAAWC,G,EAIzD,KAAAoB,CAAMpB,EAA0BS,GACtC,GAAIE,EAAoBK,KAAKJ,QAASH,IAAO,MAAPA,SAAO,SAAPA,EAASI,UAAW,CACzDK,QAAQE,SAASZ,EAAUQ,KAAKZ,MAAOK,MAAaV,EAAWC,G,EAI1D,IAAAqB,CAAKrB,EAA0BS,GACrC,GAAIE,EAAoBK,KAAKJ,QAASH,IAAO,MAAPA,SAAO,SAAPA,EAASI,UAAW,CACzDK,QAAQG,QAAQb,EAAUQ,KAAKZ,MAAOK,MAAaV,EAAWC,G,EAIzD,KAAAsB,CAAMtB,EAA0BS,GACtCS,QAAQI,SAASd,EAAUQ,KAAKZ,MAAOK,MAAaV,EAAWC,G,CAGzD,MAAMA,EAA0BS,GACtC,GAAIE,EAAoBK,KAAKJ,QAASH,IAAO,MAAPA,SAAO,SAAPA,EAASI,UAAW,CACzD,MAAM,IAAIU,SAASf,EAAUQ,KAAKZ,MAAOK,MAAaV,EAAWC,G,SAKvDwB,EAAM,IAAIV,EAAO,UAAWvB,U","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- /*!
2
- * KoliBri - The accessible HTML-Standard
3
- */
4
- import{i as t,r as e}from"./dev.utils-c278c4ae.js";import{e as o,g as s,L as a,a as r,f as i,d as l}from"./dev.utils-fab45cbc.js";import{y as n,t as c,z as d,A as f,B as p,p as m,C as L}from"./prop.validators-17aec743.js";import"./index-5879a66b.js";import"./reuse-32931294.js";import"./index-6d801dad.js";const u=()=>{let t=l().KoliBri;return void 0===t&&(t={},Object.defineProperty(l(),"KoliBri",{value:t,writable:!1})),t};function v(t,e){try{Object.defineProperty(u(),t,{get:function(){return e}})}catch(e){a.debug(`KoliBri property ${t} is already bind.`)}}const h=(t,e)=>a.debug(`${t} ${e?"":"not "}activated`),g=()=>{if(t(),o()){e(),v("a11yColorContrast",n),v("querySelector",c),v("querySelectorAll",d),v("querySelectorColors",f),v("utils",(function(){return p})),v("parseJson",m),v("stringifyJson",L);const t=s().body,a=s().createElement("svg");if(a.setAttribute("aria-label","KoliBri-DevTools"),a.setAttribute("xmlns","http://www.w3.org/2000/svg"),a.setAttribute("role","toolbar"),a.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),a.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',s().body.appendChild(a),h("Development mode",o()),h("Experimental mode",r()),h("Color contrast analysis",i()),i()){const e=setTimeout((()=>{clearTimeout(e),setInterval((()=>{p.queryHtmlElementColors(s().createElement("div"),n(t),!1,!1)}),1e4)}),2500)}}};export{g as initialize};