@youcan/celeste 0.9.3 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (534) hide show
  1. package/dist/celeste.css +1030 -634
  2. package/dist/cjs/bar-chart.cjs +2 -0
  3. package/dist/cjs/chart-card.cjs +2 -0
  4. package/dist/cjs/chart-legend.cjs +2 -0
  5. package/dist/cjs/chart-plot.cjs +2 -0
  6. package/dist/cjs/chart-tooltip.cjs +25 -0
  7. package/dist/cjs/chart.cjs +38 -0
  8. package/dist/cjs/chunks/BubbleSelect.cjs +5 -6
  9. package/dist/cjs/chunks/CollapsibleRoot.cjs +3 -4
  10. package/dist/cjs/chunks/Collection.cjs +3 -4
  11. package/dist/cjs/chunks/ComboboxContent.cjs +7 -7
  12. package/dist/cjs/chunks/ComboboxGroup.cjs +4 -5
  13. package/dist/cjs/chunks/ComboboxInput.cjs +3 -4
  14. package/dist/cjs/chunks/ComboboxItem.cjs +7 -7
  15. package/dist/cjs/chunks/ComboboxLabel.cjs +1 -2
  16. package/dist/cjs/chunks/ComboboxRoot.cjs +17 -14
  17. package/dist/cjs/chunks/ComboboxSeparator.cjs +1 -2
  18. package/dist/cjs/chunks/ConfigProvider.cjs +2 -2
  19. package/dist/cjs/chunks/DialogClose.cjs +1 -2
  20. package/dist/cjs/chunks/DialogDescription.cjs +1 -2
  21. package/dist/cjs/chunks/DialogPortal.cjs +10 -10
  22. package/dist/cjs/chunks/DialogRoot.cjs +3 -4
  23. package/dist/cjs/chunks/DialogTitle.cjs +1 -2
  24. package/dist/cjs/chunks/DialogTrigger.cjs +1 -2
  25. package/dist/cjs/chunks/DismissableLayer.cjs +5 -5
  26. package/dist/cjs/chunks/DropdownMenuPortal.cjs +2 -3
  27. package/dist/cjs/chunks/DropdownMenuRoot.cjs +3 -4
  28. package/dist/cjs/chunks/FocusScope.cjs +7 -7
  29. package/dist/cjs/chunks/Label.cjs +1 -2
  30. package/dist/cjs/chunks/MenuAnchor.cjs +1 -2
  31. package/dist/cjs/chunks/MenuContentImpl.cjs +4 -4
  32. package/dist/cjs/chunks/MenuGroup.cjs +2 -3
  33. package/dist/cjs/chunks/MenuItemImpl.cjs +1 -2
  34. package/dist/cjs/chunks/MenuRoot.cjs +8 -8
  35. package/dist/cjs/chunks/MenuSub.cjs +3 -4
  36. package/dist/cjs/chunks/PaginationRoot.cjs +3 -4
  37. package/dist/cjs/chunks/PinInputRoot.cjs +3 -4
  38. package/dist/cjs/chunks/PopoverRoot.cjs +3 -4
  39. package/dist/cjs/chunks/PopperAnchor.cjs +1 -2
  40. package/dist/cjs/chunks/PopperArrow.cjs +2 -3
  41. package/dist/cjs/chunks/PopperContent.cjs +263 -298
  42. package/dist/cjs/chunks/PopperRoot.cjs +2 -3
  43. package/dist/cjs/chunks/Presence.cjs +7 -7
  44. package/dist/cjs/chunks/Primitive.cjs +5 -6
  45. package/dist/cjs/chunks/ProgressIndicator.cjs +4 -5
  46. package/dist/cjs/chunks/RadioGroupRoot.cjs +3 -4
  47. package/dist/cjs/chunks/RovingFocusGroup.cjs +6 -6
  48. package/dist/cjs/chunks/RovingFocusItem.cjs +1 -2
  49. package/dist/cjs/chunks/SelectGroup.cjs +2 -3
  50. package/dist/cjs/chunks/SelectItemAlignedPosition.cjs +9 -9
  51. package/dist/cjs/chunks/TabsRoot.cjs +4 -5
  52. package/dist/cjs/chunks/Teleport.cjs +2 -3
  53. package/dist/cjs/chunks/ToggleGroupRoot.cjs +4 -5
  54. package/dist/cjs/chunks/TooltipProvider.cjs +2 -3
  55. package/dist/cjs/chunks/TooltipRoot.cjs +5 -5
  56. package/dist/cjs/chunks/VisuallyHidden.cjs +1 -2
  57. package/dist/cjs/chunks/VisuallyHiddenInput.cjs +4 -4
  58. package/dist/cjs/chunks/alert.cjs +17 -12
  59. package/dist/cjs/chunks/alpha-slider.cjs +1 -4
  60. package/dist/cjs/chunks/badge.cjs +18 -13
  61. package/dist/cjs/chunks/bar-chart.cjs +10322 -0
  62. package/dist/cjs/chunks/button.cjs +12 -7
  63. package/dist/cjs/chunks/calendar.cjs +39 -33
  64. package/dist/cjs/chunks/chart-card.cjs +69 -0
  65. package/dist/cjs/chunks/chart-legend.cjs +88 -0
  66. package/dist/cjs/chunks/chart-plot.cjs +92 -0
  67. package/dist/cjs/chunks/checkbox-card.cjs +15 -10
  68. package/dist/cjs/chunks/checkbox-label.cjs +11 -6
  69. package/dist/cjs/chunks/checkbox.cjs +18 -12
  70. package/dist/cjs/chunks/clamp.cjs +1 -1
  71. package/dist/cjs/chunks/collapsible-content.cjs +9 -4
  72. package/dist/cjs/chunks/collapsible-trigger.cjs +1 -2
  73. package/dist/cjs/chunks/collapsible.cjs +0 -1
  74. package/dist/cjs/chunks/color-area.cjs +3 -4
  75. package/dist/cjs/chunks/color-picker.cjs +69 -42
  76. package/dist/cjs/chunks/color-swatch.cjs +4 -5
  77. package/dist/cjs/chunks/combobox-anchor.cjs +11 -5
  78. package/dist/cjs/chunks/combobox-empty.cjs +10 -5
  79. package/dist/cjs/chunks/combobox-group.cjs +11 -6
  80. package/dist/cjs/chunks/combobox-input.cjs +11 -6
  81. package/dist/cjs/chunks/combobox-item.cjs +23 -17
  82. package/dist/cjs/chunks/combobox-list.cjs +14 -8
  83. package/dist/cjs/chunks/combobox-root.cjs +2 -3
  84. package/dist/cjs/chunks/combobox-separator.cjs +9 -4
  85. package/dist/cjs/chunks/combobox-trigger.cjs +14 -8
  86. package/dist/cjs/chunks/combobox.cjs +14 -14
  87. package/dist/cjs/chunks/compact-button.cjs +13 -8
  88. package/dist/cjs/chunks/components.cjs +20 -4
  89. package/dist/cjs/chunks/content-divider.cjs +14 -9
  90. package/dist/cjs/chunks/counter-input.cjs +145 -111
  91. package/dist/cjs/chunks/createContext.cjs +1 -2
  92. package/dist/cjs/chunks/date-picker.cjs +14 -9
  93. package/dist/cjs/chunks/digit-input-group.cjs +12 -6
  94. package/dist/cjs/chunks/digit-input-slot.cjs +13 -7
  95. package/dist/cjs/chunks/digit-input.cjs +13 -7
  96. package/dist/cjs/chunks/dist.cjs +120 -230
  97. package/dist/cjs/chunks/dist2.cjs +459 -15492
  98. package/dist/cjs/chunks/dist3.cjs +16177 -0
  99. package/dist/cjs/chunks/dropdown-menu-content.cjs +15 -9
  100. package/dist/cjs/chunks/dropdown-menu-group.cjs +3 -4
  101. package/dist/cjs/chunks/dropdown-menu-item.cjs +13 -7
  102. package/dist/cjs/chunks/dropdown-menu-label.cjs +13 -7
  103. package/dist/cjs/chunks/dropdown-menu-separator.cjs +11 -6
  104. package/dist/cjs/chunks/dropdown-menu-sub-content.cjs +13 -7
  105. package/dist/cjs/chunks/dropdown-menu-sub-trigger.cjs +13 -7
  106. package/dist/cjs/chunks/dropdown-menu-sub.cjs +2 -3
  107. package/dist/cjs/chunks/dropdown-menu-trigger.cjs +3 -4
  108. package/dist/cjs/chunks/dropdown-menu.cjs +11 -5
  109. package/dist/cjs/chunks/extra-settings.cjs +3 -7
  110. package/dist/cjs/chunks/fancy-button.cjs +12 -7
  111. package/dist/cjs/chunks/file-upload-area.cjs +24 -17
  112. package/dist/cjs/chunks/getActiveElement.cjs +1 -1
  113. package/dist/cjs/chunks/handleAndDispatchCustomEvent.cjs +1 -1
  114. package/dist/cjs/chunks/hint-text.cjs +13 -8
  115. package/dist/cjs/chunks/hue-slider.cjs +3 -6
  116. package/dist/cjs/chunks/isValueEqualOrExist.cjs +1 -1
  117. package/dist/cjs/chunks/label2.cjs +15 -10
  118. package/dist/cjs/chunks/link-bubble.cjs +12 -15
  119. package/dist/cjs/chunks/link-button.cjs +14 -9
  120. package/dist/cjs/chunks/menus.cjs +236 -42
  121. package/dist/cjs/chunks/modal-body.cjs +9 -4
  122. package/dist/cjs/chunks/modal-close.cjs +0 -1
  123. package/dist/cjs/chunks/modal-content.cjs +18 -6
  124. package/dist/cjs/chunks/modal-footer.cjs +9 -4
  125. package/dist/cjs/chunks/modal-header.cjs +18 -13
  126. package/dist/cjs/chunks/modal-trigger.cjs +0 -1
  127. package/dist/cjs/chunks/modal.cjs +0 -1
  128. package/dist/cjs/chunks/nullish.cjs +1 -1
  129. package/dist/cjs/chunks/ohash.D__AXeF1.cjs +1 -1
  130. package/dist/cjs/chunks/pagination-content.cjs +14 -9
  131. package/dist/cjs/chunks/pagination-ellipsis.cjs +12 -7
  132. package/dist/cjs/chunks/pagination-first.cjs +11 -5
  133. package/dist/cjs/chunks/pagination-item.cjs +10 -5
  134. package/dist/cjs/chunks/pagination-last.cjs +11 -5
  135. package/dist/cjs/chunks/pagination-next.cjs +11 -5
  136. package/dist/cjs/chunks/pagination-previous.cjs +11 -5
  137. package/dist/cjs/chunks/pagination.cjs +12 -6
  138. package/dist/cjs/chunks/popover-content.cjs +27 -21
  139. package/dist/cjs/chunks/popover-trigger.cjs +3 -4
  140. package/dist/cjs/chunks/popover.cjs +0 -1
  141. package/dist/cjs/chunks/progress-bar.cjs +14 -9
  142. package/dist/cjs/chunks/progress-circle.cjs +10 -5
  143. package/dist/cjs/chunks/radio-group-card.cjs +15 -10
  144. package/dist/cjs/chunks/radio-group-item.cjs +15 -9
  145. package/dist/cjs/chunks/radio-group-label.cjs +11 -6
  146. package/dist/cjs/chunks/radio-group.cjs +9 -3
  147. package/dist/cjs/chunks/range-calendar.cjs +56 -47
  148. package/dist/cjs/chunks/range-picker.cjs +19 -14
  149. package/dist/cjs/chunks/rich-editor.cjs +1130 -262
  150. package/dist/cjs/chunks/{chunk.cjs → rolldown-runtime.cjs} +8 -1
  151. package/dist/cjs/chunks/scroll-area.cjs +13 -8
  152. package/dist/cjs/chunks/scroll-bar.cjs +43 -29
  153. package/dist/cjs/chunks/segmented-control-item.cjs +12 -7
  154. package/dist/cjs/chunks/segmented-control.cjs +11 -5
  155. package/dist/cjs/chunks/select-content.cjs +16 -10
  156. package/dist/cjs/chunks/select-group.cjs +0 -1
  157. package/dist/cjs/chunks/select-icon.cjs +9 -4
  158. package/dist/cjs/chunks/select-item.cjs +17 -11
  159. package/dist/cjs/chunks/select-label.cjs +10 -5
  160. package/dist/cjs/chunks/select-separator.cjs +10 -5
  161. package/dist/cjs/chunks/select-trigger.cjs +12 -7
  162. package/dist/cjs/chunks/select-value.cjs +10 -5
  163. package/dist/cjs/chunks/select.cjs +9 -3
  164. package/dist/cjs/chunks/sheet-close.cjs +9 -4
  165. package/dist/cjs/chunks/sheet-content.cjs +13 -7
  166. package/dist/cjs/chunks/sheet-description.cjs +11 -6
  167. package/dist/cjs/chunks/sheet-footer.cjs +9 -4
  168. package/dist/cjs/chunks/sheet-header.cjs +9 -4
  169. package/dist/cjs/chunks/sheet-title.cjs +11 -6
  170. package/dist/cjs/chunks/sheet-trigger.cjs +0 -1
  171. package/dist/cjs/chunks/sheet.cjs +0 -1
  172. package/dist/cjs/chunks/sidebar-content.cjs +7 -2
  173. package/dist/cjs/chunks/sidebar-element.cjs +8 -3
  174. package/dist/cjs/chunks/sidebar-footer.cjs +7 -2
  175. package/dist/cjs/chunks/sidebar-group-content.cjs +9 -4
  176. package/dist/cjs/chunks/sidebar-group-label.cjs +9 -4
  177. package/dist/cjs/chunks/sidebar-group.cjs +7 -2
  178. package/dist/cjs/chunks/sidebar-header.cjs +7 -2
  179. package/dist/cjs/chunks/sidebar-menu-action.cjs +10 -5
  180. package/dist/cjs/chunks/sidebar-menu-badge.cjs +11 -6
  181. package/dist/cjs/chunks/sidebar-menu-button.cjs +11 -6
  182. package/dist/cjs/chunks/sidebar-menu-item.cjs +7 -2
  183. package/dist/cjs/chunks/sidebar-menu-sub-button.cjs +12 -7
  184. package/dist/cjs/chunks/sidebar-menu-sub-item.cjs +7 -2
  185. package/dist/cjs/chunks/sidebar-menu-sub.cjs +7 -2
  186. package/dist/cjs/chunks/sidebar-menu.cjs +7 -2
  187. package/dist/cjs/chunks/sidebar-provider.cjs +14 -8
  188. package/dist/cjs/chunks/sidebar-trigger.cjs +10 -5
  189. package/dist/cjs/chunks/sidebar.cjs +11 -6
  190. package/dist/cjs/chunks/slider.cjs +38 -24
  191. package/dist/cjs/chunks/social-button.cjs +5 -6
  192. package/dist/cjs/chunks/sonner-alert.cjs +2 -3
  193. package/dist/cjs/chunks/sonner.cjs +4 -4
  194. package/dist/cjs/chunks/status-badge.cjs +13 -8
  195. package/dist/cjs/chunks/switch.cjs +13 -7
  196. package/dist/cjs/chunks/tab-menu-content.cjs +10 -5
  197. package/dist/cjs/chunks/tab-menu-item.cjs +12 -6
  198. package/dist/cjs/chunks/tab-menu-list.cjs +10 -5
  199. package/dist/cjs/chunks/tab-menu.cjs +2 -3
  200. package/dist/cjs/chunks/table-body.cjs +9 -4
  201. package/dist/cjs/chunks/table-caption.cjs +9 -4
  202. package/dist/cjs/chunks/table-cell.cjs +9 -4
  203. package/dist/cjs/chunks/table-footer.cjs +9 -4
  204. package/dist/cjs/chunks/table-head.cjs +9 -4
  205. package/dist/cjs/chunks/table-header.cjs +7 -2
  206. package/dist/cjs/chunks/table-row.cjs +9 -4
  207. package/dist/cjs/chunks/table.cjs +9 -4
  208. package/dist/cjs/chunks/table2.cjs +9 -4
  209. package/dist/cjs/chunks/tag.cjs +16 -11
  210. package/dist/cjs/chunks/text-input-affix.cjs +9 -4
  211. package/dist/cjs/chunks/text-input-button.cjs +9 -4
  212. package/dist/cjs/chunks/text-input.cjs +10 -10
  213. package/dist/cjs/chunks/textarea.cjs +15 -10
  214. package/dist/cjs/chunks/tooltip-content.cjs +38 -32
  215. package/dist/cjs/chunks/tooltip-provider.cjs +0 -1
  216. package/dist/cjs/chunks/tooltip-root.cjs +2 -2
  217. package/dist/cjs/chunks/tooltip-trigger.cjs +1 -2
  218. package/dist/cjs/chunks/tooltip.cjs +17 -11
  219. package/dist/cjs/chunks/use-color-model.cjs +7 -12
  220. package/dist/cjs/chunks/useArrowNavigation.cjs +1 -1
  221. package/dist/cjs/chunks/useCalendar.cjs +669 -598
  222. package/dist/cjs/chunks/useComposing.cjs +1 -2
  223. package/dist/cjs/chunks/useDirection.cjs +1 -2
  224. package/dist/cjs/chunks/useEmitAsProps.cjs +1 -2
  225. package/dist/cjs/chunks/useFocusGuards.cjs +1 -2
  226. package/dist/cjs/chunks/useFormControl.cjs +2 -3
  227. package/dist/cjs/chunks/useForwardExpose.cjs +2 -3
  228. package/dist/cjs/chunks/useForwardProps.cjs +1 -2
  229. package/dist/cjs/chunks/useForwardPropsEmits.cjs +1 -2
  230. package/dist/cjs/chunks/useForwardScopeId.cjs +1 -2
  231. package/dist/cjs/chunks/useHideOthers.cjs +4 -5
  232. package/dist/cjs/chunks/useId.cjs +3 -3
  233. package/dist/cjs/chunks/useKbd.cjs +1 -1
  234. package/dist/cjs/chunks/useLocale.cjs +1 -2
  235. package/dist/cjs/chunks/useNonce.cjs +1 -2
  236. package/dist/cjs/chunks/usePrimitiveElement.cjs +2 -3
  237. package/dist/cjs/chunks/useSize.cjs +2 -3
  238. package/dist/cjs/chunks/useTypeahead.cjs +1 -1
  239. package/dist/cjs/chunks/utils.cjs +1 -1
  240. package/dist/cjs/chunks/utils2.cjs +1 -1
  241. package/dist/cjs/chunks/utils3.cjs +1 -1
  242. package/dist/cjs/color.cjs +1 -3
  243. package/dist/cjs/command-group.cjs +11 -6
  244. package/dist/cjs/command-input.cjs +12 -6
  245. package/dist/cjs/command-item.cjs +10 -4
  246. package/dist/cjs/command-list.cjs +10 -4
  247. package/dist/cjs/command-root.cjs +10 -4
  248. package/dist/cjs/command-separator.cjs +9 -4
  249. package/dist/cjs/config.cjs +0 -1
  250. package/dist/cjs/index.cjs +21 -1
  251. package/dist/cjs/use-chart-motion.cjs +17 -0
  252. package/dist/cjs/use-delegated-props.cjs +0 -1
  253. package/dist/cjs/use-locale.cjs +8 -0
  254. package/dist/cjs/use-sidebar.cjs +1 -1
  255. package/dist/cjs/use-user-select.cjs +0 -1
  256. package/dist/components/chart/bar-chart.d.ts +39 -0
  257. package/dist/components/chart/chart-card.d.ts +26 -0
  258. package/dist/components/chart/chart-legend.d.ts +32 -0
  259. package/dist/components/chart/chart-plot.d.ts +35 -0
  260. package/dist/components/chart/chart-tooltip.d.ts +11 -0
  261. package/dist/components/chart/index.d.ts +9 -0
  262. package/dist/components/color-picker/hue-slider.d.ts +1 -4
  263. package/dist/components/digit-input/digit-input.d.ts +1 -1
  264. package/dist/components/index.d.ts +1 -0
  265. package/dist/components/popover/popover-content.d.ts +1 -1
  266. package/dist/components/progress/progress-bar.d.ts +1 -1
  267. package/dist/components/text-input/text-input.d.ts +1 -0
  268. package/dist/composables/index.d.ts +2 -0
  269. package/dist/composables/use-chart-motion.d.ts +7 -0
  270. package/dist/composables/use-locale.d.ts +2 -0
  271. package/dist/es/bar-chart.js +2 -0
  272. package/dist/es/chart-card.js +2 -0
  273. package/dist/es/chart-legend.js +2 -0
  274. package/dist/es/chart-plot.js +2 -0
  275. package/dist/es/chart-tooltip.js +24 -0
  276. package/dist/es/chart.js +33 -0
  277. package/dist/es/chunks/BubbleSelect.js +5 -5
  278. package/dist/es/chunks/CollapsibleRoot.js +3 -3
  279. package/dist/es/chunks/Collection.js +3 -3
  280. package/dist/es/chunks/ComboboxContent.js +9 -8
  281. package/dist/es/chunks/ComboboxGroup.js +4 -4
  282. package/dist/es/chunks/ComboboxInput.js +3 -3
  283. package/dist/es/chunks/ComboboxItem.js +7 -6
  284. package/dist/es/chunks/ComboboxLabel.js +1 -1
  285. package/dist/es/chunks/ComboboxRoot.js +15 -11
  286. package/dist/es/chunks/ComboboxSeparator.js +1 -1
  287. package/dist/es/chunks/ConfigProvider.js +2 -2
  288. package/dist/es/chunks/DialogClose.js +1 -1
  289. package/dist/es/chunks/DialogDescription.js +1 -1
  290. package/dist/es/chunks/DialogPortal.js +10 -9
  291. package/dist/es/chunks/DialogRoot.js +3 -3
  292. package/dist/es/chunks/DialogTitle.js +1 -1
  293. package/dist/es/chunks/DialogTrigger.js +1 -1
  294. package/dist/es/chunks/DismissableLayer.js +5 -4
  295. package/dist/es/chunks/DropdownMenuPortal.js +2 -2
  296. package/dist/es/chunks/DropdownMenuRoot.js +3 -3
  297. package/dist/es/chunks/FocusScope.js +7 -6
  298. package/dist/es/chunks/Label.js +1 -1
  299. package/dist/es/chunks/MenuAnchor.js +1 -1
  300. package/dist/es/chunks/MenuContentImpl.js +5 -4
  301. package/dist/es/chunks/MenuGroup.js +2 -2
  302. package/dist/es/chunks/MenuItemImpl.js +1 -1
  303. package/dist/es/chunks/MenuRoot.js +6 -5
  304. package/dist/es/chunks/MenuSub.js +3 -3
  305. package/dist/es/chunks/PaginationRoot.js +3 -3
  306. package/dist/es/chunks/PinInputRoot.js +3 -3
  307. package/dist/es/chunks/PopoverRoot.js +3 -3
  308. package/dist/es/chunks/PopperAnchor.js +1 -1
  309. package/dist/es/chunks/PopperArrow.js +3 -3
  310. package/dist/es/chunks/PopperContent.js +261 -321
  311. package/dist/es/chunks/PopperRoot.js +2 -2
  312. package/dist/es/chunks/Presence.js +6 -5
  313. package/dist/es/chunks/Primitive.js +5 -5
  314. package/dist/es/chunks/ProgressIndicator.js +4 -4
  315. package/dist/es/chunks/RadioGroupRoot.js +3 -3
  316. package/dist/es/chunks/RovingFocusGroup.js +6 -5
  317. package/dist/es/chunks/RovingFocusItem.js +1 -1
  318. package/dist/es/chunks/SelectGroup.js +2 -2
  319. package/dist/es/chunks/SelectItemAlignedPosition.js +10 -9
  320. package/dist/es/chunks/TabsRoot.js +4 -4
  321. package/dist/es/chunks/Teleport.js +2 -2
  322. package/dist/es/chunks/ToggleGroupRoot.js +4 -4
  323. package/dist/es/chunks/TooltipProvider.js +2 -2
  324. package/dist/es/chunks/TooltipRoot.js +5 -4
  325. package/dist/es/chunks/VisuallyHidden.js +1 -1
  326. package/dist/es/chunks/VisuallyHiddenInput.js +4 -3
  327. package/dist/es/chunks/alert.js +16 -10
  328. package/dist/es/chunks/alpha-slider.js +1 -3
  329. package/dist/es/chunks/badge.js +17 -11
  330. package/dist/es/chunks/bar-chart.js +10314 -0
  331. package/dist/es/chunks/button.js +11 -5
  332. package/dist/es/chunks/calendar.js +39 -32
  333. package/dist/es/chunks/chart-card.js +63 -0
  334. package/dist/es/chunks/chart-legend.js +82 -0
  335. package/dist/es/chunks/chart-plot.js +87 -0
  336. package/dist/es/chunks/checkbox-card.js +14 -8
  337. package/dist/es/chunks/checkbox-label.js +10 -4
  338. package/dist/es/chunks/checkbox.js +18 -11
  339. package/dist/es/chunks/clamp.js +1 -1
  340. package/dist/es/chunks/collapsible-content.js +9 -3
  341. package/dist/es/chunks/collapsible-trigger.js +1 -1
  342. package/dist/es/chunks/color-area.js +7 -5
  343. package/dist/es/chunks/color-picker.js +68 -40
  344. package/dist/es/chunks/color-swatch.js +3 -3
  345. package/dist/es/chunks/combobox-anchor.js +11 -4
  346. package/dist/es/chunks/combobox-empty.js +9 -3
  347. package/dist/es/chunks/combobox-group.js +10 -4
  348. package/dist/es/chunks/combobox-input.js +10 -4
  349. package/dist/es/chunks/combobox-item.js +22 -15
  350. package/dist/es/chunks/combobox-list.js +13 -6
  351. package/dist/es/chunks/combobox-root.js +1 -1
  352. package/dist/es/chunks/combobox-separator.js +8 -2
  353. package/dist/es/chunks/combobox-trigger.js +13 -6
  354. package/dist/es/chunks/combobox.js +13 -12
  355. package/dist/es/chunks/compact-button.js +12 -6
  356. package/dist/es/chunks/components.js +19 -3
  357. package/dist/es/chunks/content-divider.js +14 -8
  358. package/dist/es/chunks/counter-input.js +141 -106
  359. package/dist/es/chunks/createContext.js +1 -1
  360. package/dist/es/chunks/date-picker.js +13 -7
  361. package/dist/es/chunks/digit-input-group.js +11 -4
  362. package/dist/es/chunks/digit-input-slot.js +12 -5
  363. package/dist/es/chunks/digit-input.js +12 -5
  364. package/dist/es/chunks/dist.js +90 -205
  365. package/dist/es/chunks/dist2.js +434 -15275
  366. package/dist/es/chunks/dist3.js +15890 -0
  367. package/dist/es/chunks/dropdown-menu-content.js +14 -7
  368. package/dist/es/chunks/dropdown-menu-group.js +2 -2
  369. package/dist/es/chunks/dropdown-menu-item.js +12 -5
  370. package/dist/es/chunks/dropdown-menu-label.js +12 -5
  371. package/dist/es/chunks/dropdown-menu-separator.js +10 -4
  372. package/dist/es/chunks/dropdown-menu-sub-content.js +12 -5
  373. package/dist/es/chunks/dropdown-menu-sub-trigger.js +12 -5
  374. package/dist/es/chunks/dropdown-menu-sub.js +2 -2
  375. package/dist/es/chunks/dropdown-menu-trigger.js +2 -2
  376. package/dist/es/chunks/dropdown-menu.js +10 -3
  377. package/dist/es/chunks/extra-settings.js +2 -5
  378. package/dist/es/chunks/fancy-button.js +11 -5
  379. package/dist/es/chunks/file-upload-area.js +23 -15
  380. package/dist/es/chunks/getActiveElement.js +1 -1
  381. package/dist/es/chunks/handleAndDispatchCustomEvent.js +1 -1
  382. package/dist/es/chunks/hint-text.js +12 -6
  383. package/dist/es/chunks/hue-slider.js +3 -5
  384. package/dist/es/chunks/isValueEqualOrExist.js +1 -1
  385. package/dist/es/chunks/label2.js +14 -8
  386. package/dist/es/chunks/link-bubble.js +11 -13
  387. package/dist/es/chunks/link-button.js +13 -7
  388. package/dist/es/chunks/menus.js +236 -41
  389. package/dist/es/chunks/modal-body.js +8 -2
  390. package/dist/es/chunks/modal-content.js +17 -4
  391. package/dist/es/chunks/modal-footer.js +8 -2
  392. package/dist/es/chunks/modal-header.js +17 -11
  393. package/dist/es/chunks/nullish.js +1 -1
  394. package/dist/es/chunks/ohash.D__AXeF1.js +1 -1
  395. package/dist/es/chunks/pagination-content.js +12 -6
  396. package/dist/es/chunks/pagination-ellipsis.js +10 -4
  397. package/dist/es/chunks/pagination-first.js +11 -4
  398. package/dist/es/chunks/pagination-item.js +9 -3
  399. package/dist/es/chunks/pagination-last.js +11 -4
  400. package/dist/es/chunks/pagination-next.js +11 -4
  401. package/dist/es/chunks/pagination-previous.js +11 -4
  402. package/dist/es/chunks/pagination.js +11 -4
  403. package/dist/es/chunks/popover-content.js +28 -21
  404. package/dist/es/chunks/popover-trigger.js +2 -2
  405. package/dist/es/chunks/progress-bar.js +13 -7
  406. package/dist/es/chunks/progress-circle.js +9 -3
  407. package/dist/es/chunks/radio-group-card.js +14 -8
  408. package/dist/es/chunks/radio-group-item.js +15 -8
  409. package/dist/es/chunks/radio-group-label.js +10 -4
  410. package/dist/es/chunks/radio-group.js +9 -2
  411. package/dist/es/chunks/range-calendar.js +56 -46
  412. package/dist/es/chunks/range-picker.js +19 -13
  413. package/dist/es/chunks/rich-editor.js +1129 -260
  414. package/dist/es/chunks/rolldown-runtime.js +34 -0
  415. package/dist/es/chunks/scroll-area.js +12 -6
  416. package/dist/es/chunks/scroll-bar.js +39 -24
  417. package/dist/es/chunks/segmented-control-item.js +11 -5
  418. package/dist/es/chunks/segmented-control.js +10 -3
  419. package/dist/es/chunks/select-content.js +15 -8
  420. package/dist/es/chunks/select-icon.js +8 -2
  421. package/dist/es/chunks/select-item.js +16 -9
  422. package/dist/es/chunks/select-label.js +9 -3
  423. package/dist/es/chunks/select-separator.js +9 -3
  424. package/dist/es/chunks/select-trigger.js +11 -5
  425. package/dist/es/chunks/select-value.js +9 -3
  426. package/dist/es/chunks/select.js +9 -2
  427. package/dist/es/chunks/sheet-close.js +8 -2
  428. package/dist/es/chunks/sheet-content.js +12 -5
  429. package/dist/es/chunks/sheet-description.js +9 -3
  430. package/dist/es/chunks/sheet-footer.js +8 -2
  431. package/dist/es/chunks/sheet-header.js +8 -2
  432. package/dist/es/chunks/sheet-title.js +9 -3
  433. package/dist/es/chunks/sidebar-content.js +7 -1
  434. package/dist/es/chunks/sidebar-element.js +8 -2
  435. package/dist/es/chunks/sidebar-footer.js +7 -1
  436. package/dist/es/chunks/sidebar-group-content.js +8 -2
  437. package/dist/es/chunks/sidebar-group-label.js +9 -3
  438. package/dist/es/chunks/sidebar-group.js +7 -1
  439. package/dist/es/chunks/sidebar-header.js +7 -1
  440. package/dist/es/chunks/sidebar-menu-action.js +10 -4
  441. package/dist/es/chunks/sidebar-menu-badge.js +11 -5
  442. package/dist/es/chunks/sidebar-menu-button.js +10 -4
  443. package/dist/es/chunks/sidebar-menu-item.js +7 -1
  444. package/dist/es/chunks/sidebar-menu-sub-button.js +12 -6
  445. package/dist/es/chunks/sidebar-menu-sub-item.js +7 -1
  446. package/dist/es/chunks/sidebar-menu-sub.js +7 -1
  447. package/dist/es/chunks/sidebar-menu.js +7 -1
  448. package/dist/es/chunks/sidebar-provider.js +10 -3
  449. package/dist/es/chunks/sidebar-trigger.js +9 -3
  450. package/dist/es/chunks/sidebar.js +11 -5
  451. package/dist/es/chunks/slider.js +38 -23
  452. package/dist/es/chunks/social-button.js +4 -4
  453. package/dist/es/chunks/sonner-alert.js +1 -1
  454. package/dist/es/chunks/sonner.js +4 -3
  455. package/dist/es/chunks/status-badge.js +12 -6
  456. package/dist/es/chunks/switch.js +13 -6
  457. package/dist/es/chunks/tab-menu-content.js +9 -3
  458. package/dist/es/chunks/tab-menu-item.js +11 -4
  459. package/dist/es/chunks/tab-menu-list.js +9 -3
  460. package/dist/es/chunks/tab-menu.js +1 -1
  461. package/dist/es/chunks/table-body.js +8 -2
  462. package/dist/es/chunks/table-caption.js +8 -2
  463. package/dist/es/chunks/table-cell.js +8 -2
  464. package/dist/es/chunks/table-footer.js +8 -2
  465. package/dist/es/chunks/table-head.js +8 -2
  466. package/dist/es/chunks/table-header.js +7 -1
  467. package/dist/es/chunks/table-row.js +8 -2
  468. package/dist/es/chunks/table.js +8 -2
  469. package/dist/es/chunks/table2.js +8 -2
  470. package/dist/es/chunks/tag.js +15 -9
  471. package/dist/es/chunks/text-input-affix.js +8 -2
  472. package/dist/es/chunks/text-input-button.js +8 -2
  473. package/dist/es/chunks/text-input.js +10 -9
  474. package/dist/es/chunks/textarea.js +14 -8
  475. package/dist/es/chunks/tooltip-content.js +38 -31
  476. package/dist/es/chunks/tooltip-root.js +2 -1
  477. package/dist/es/chunks/tooltip-trigger.js +1 -1
  478. package/dist/es/chunks/tooltip.js +17 -10
  479. package/dist/es/chunks/use-color-model.js +7 -11
  480. package/dist/es/chunks/useArrowNavigation.js +1 -1
  481. package/dist/es/chunks/useCalendar.js +656 -584
  482. package/dist/es/chunks/useComposing.js +1 -1
  483. package/dist/es/chunks/useDirection.js +1 -1
  484. package/dist/es/chunks/useEmitAsProps.js +1 -1
  485. package/dist/es/chunks/useFocusGuards.js +2 -2
  486. package/dist/es/chunks/useFormControl.js +2 -2
  487. package/dist/es/chunks/useForwardExpose.js +2 -2
  488. package/dist/es/chunks/useForwardProps.js +1 -1
  489. package/dist/es/chunks/useForwardPropsEmits.js +1 -1
  490. package/dist/es/chunks/useForwardScopeId.js +1 -1
  491. package/dist/es/chunks/useHideOthers.js +4 -4
  492. package/dist/es/chunks/useId.js +1 -1
  493. package/dist/es/chunks/useKbd.js +1 -1
  494. package/dist/es/chunks/useLocale.js +1 -1
  495. package/dist/es/chunks/useNonce.js +1 -1
  496. package/dist/es/chunks/usePrimitiveElement.js +2 -2
  497. package/dist/es/chunks/useSize.js +2 -2
  498. package/dist/es/chunks/useTypeahead.js +2 -2
  499. package/dist/es/chunks/utils.js +1 -1
  500. package/dist/es/chunks/utils2.js +1 -1
  501. package/dist/es/chunks/utils3.js +1 -1
  502. package/dist/es/color.js +1 -3
  503. package/dist/es/command-group.js +10 -4
  504. package/dist/es/command-input.js +11 -4
  505. package/dist/es/command-item.js +10 -3
  506. package/dist/es/command-list.js +10 -3
  507. package/dist/es/command-root.js +10 -3
  508. package/dist/es/command-separator.js +8 -2
  509. package/dist/es/index.js +9 -1
  510. package/dist/es/use-chart-motion.js +15 -0
  511. package/dist/es/use-locale.js +8 -0
  512. package/dist/es/use-sidebar.js +1 -1
  513. package/dist/utils/chart.d.ts +6 -0
  514. package/dist/utils/index.d.ts +1 -0
  515. package/package.json +46 -44
  516. package/src/components/chart/bar-chart.vue +383 -0
  517. package/src/components/chart/chart-card.vue +99 -0
  518. package/src/components/chart/chart-legend.vue +164 -0
  519. package/src/components/chart/chart-plot.vue +350 -0
  520. package/src/components/chart/chart-tooltip.ts +35 -0
  521. package/src/components/chart/index.ts +13 -0
  522. package/src/components/chart/stories/bar-chart.stories.ts +319 -0
  523. package/src/components/color-picker/hue-slider.vue +1 -1
  524. package/src/components/file-upload/file-upload-area.vue +1 -1
  525. package/src/components/index.ts +1 -0
  526. package/src/components/text-input/text-input.vue +1 -0
  527. package/src/components/tooltip/tooltip-content.vue +5 -1
  528. package/src/composables/index.ts +2 -0
  529. package/src/composables/use-chart-motion.ts +18 -0
  530. package/src/composables/use-locale.ts +8 -0
  531. package/src/utils/chart.ts +42 -0
  532. package/src/utils/index.ts +1 -0
  533. package/dist/cjs/chunks/core.cjs +0 -325
  534. package/dist/es/chunks/core.js +0 -289
@@ -1,4 +1,4 @@
1
- const require_chunk = require("./chunk.cjs");
1
+ const require_rolldown_runtime = require("./rolldown-runtime.cjs");
2
2
  const require_createContext = require("./createContext.cjs");
3
3
  const require_Primitive = require("./Primitive.cjs");
4
4
  const require_useDirection = require("./useDirection.cjs");
@@ -6,8 +6,8 @@ const require_useForwardExpose = require("./useForwardExpose.cjs");
6
6
  const require_useSize = require("./useSize.cjs");
7
7
  const require_PopperRoot = require("./PopperRoot.cjs");
8
8
  let vue = require("vue");
9
- vue = require_chunk.__toESM(vue, 1);
10
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.13_typescript@6.0.3_/node_modules/reka-ui/dist/Popper/utils.js
9
+ vue = require_rolldown_runtime.__toESM(vue, 1);
10
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Popper/utils.js
11
11
  function isNotNull(value) {
12
12
  return value !== null;
13
13
  }
@@ -60,7 +60,7 @@ function getSideAndAlignFromPlacement(placement) {
60
60
  return [side, align];
61
61
  }
62
62
  //#endregion
63
- //#region ../../node_modules/.pnpm/@floating-ui+utils@0.2.9/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
63
+ //#region ../../node_modules/.pnpm/@floating-ui+utils@0.2.12/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
64
64
  /**
65
65
  * Custom positioning reference element.
66
66
  * @see https://floating-ui.com/docs/virtual-elements
@@ -72,7 +72,7 @@ var sides = [
72
72
  "left"
73
73
  ];
74
74
  var alignments = ["start", "end"];
75
- var placements = /* @__PURE__ */ sides.reduce((acc, side) => acc.concat(side, side + "-" + alignments[0], side + "-" + alignments[1]), []);
75
+ var placements = /*#__PURE__*/ sides.reduce((acc, side) => acc.concat(side, side + "-" + alignments[0], side + "-" + alignments[1]), []);
76
76
  var min = Math.min;
77
77
  var max = Math.max;
78
78
  var round = Math.round;
@@ -87,10 +87,6 @@ var oppositeSideMap = {
87
87
  bottom: "top",
88
88
  top: "bottom"
89
89
  };
90
- var oppositeAlignmentMap = {
91
- start: "end",
92
- end: "start"
93
- };
94
90
  function clamp(start, value, end) {
95
91
  return max(start, min(value, end));
96
92
  }
@@ -110,7 +106,8 @@ function getAxisLength(axis) {
110
106
  return axis === "y" ? "height" : "width";
111
107
  }
112
108
  function getSideAxis(placement) {
113
- return ["top", "bottom"].includes(getSide(placement)) ? "y" : "x";
109
+ const firstChar = placement[0];
110
+ return firstChar === "t" || firstChar === "b" ? "y" : "x";
114
111
  }
115
112
  function getAlignmentAxis(placement) {
116
113
  return getOppositeAxis(getSideAxis(placement));
@@ -133,20 +130,20 @@ function getExpandedPlacements(placement) {
133
130
  ];
134
131
  }
135
132
  function getOppositeAlignmentPlacement(placement) {
136
- return placement.replace(/start|end/g, (alignment) => oppositeAlignmentMap[alignment]);
133
+ return placement.includes("start") ? placement.replace("start", "end") : placement.replace("end", "start");
137
134
  }
135
+ var lrPlacement = ["left", "right"];
136
+ var rlPlacement = ["right", "left"];
137
+ var tbPlacement = ["top", "bottom"];
138
+ var btPlacement = ["bottom", "top"];
138
139
  function getSideList(side, isStart, rtl) {
139
- const lr = ["left", "right"];
140
- const rl = ["right", "left"];
141
- const tb = ["top", "bottom"];
142
- const bt = ["bottom", "top"];
143
140
  switch (side) {
144
141
  case "top":
145
142
  case "bottom":
146
- if (rtl) return isStart ? rl : lr;
147
- return isStart ? lr : rl;
143
+ if (rtl) return isStart ? rlPlacement : lrPlacement;
144
+ return isStart ? lrPlacement : rlPlacement;
148
145
  case "left":
149
- case "right": return isStart ? tb : bt;
146
+ case "right": return isStart ? tbPlacement : btPlacement;
150
147
  default: return [];
151
148
  }
152
149
  }
@@ -160,15 +157,16 @@ function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
160
157
  return list;
161
158
  }
162
159
  function getOppositePlacement(placement) {
163
- return placement.replace(/left|right|bottom|top/g, (side) => oppositeSideMap[side]);
160
+ const side = getSide(placement);
161
+ return oppositeSideMap[side] + placement.slice(side.length);
164
162
  }
165
163
  function expandPaddingObject(padding) {
164
+ var _padding$top, _padding$right, _padding$bottom, _padding$left;
166
165
  return {
167
- top: 0,
168
- right: 0,
169
- bottom: 0,
170
- left: 0,
171
- ...padding
166
+ top: (_padding$top = padding.top) != null ? _padding$top : 0,
167
+ right: (_padding$right = padding.right) != null ? _padding$right : 0,
168
+ bottom: (_padding$bottom = padding.bottom) != null ? _padding$bottom : 0,
169
+ left: (_padding$left = padding.left) != null ? _padding$left : 0
172
170
  };
173
171
  }
174
172
  function getPaddingObject(padding) {
@@ -193,7 +191,7 @@ function rectToClientRect(rect) {
193
191
  };
194
192
  }
195
193
  //#endregion
196
- //#region ../../node_modules/.pnpm/@floating-ui+core@1.6.9/node_modules/@floating-ui/core/dist/floating-ui.core.mjs
194
+ //#region ../../node_modules/.pnpm/@floating-ui+core@1.8.0/node_modules/@floating-ui/core/dist/floating-ui.core.mjs
197
195
  function computeCoordsFromPlacement(_ref, placement, rtl) {
198
196
  let { reference, floating } = _ref;
199
197
  const sideAxis = getSideAxis(placement);
@@ -235,17 +233,57 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
235
233
  y: reference.y
236
234
  };
237
235
  }
238
- switch (getAlignment(placement)) {
239
- case "start":
240
- coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
241
- break;
242
- case "end":
243
- coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
244
- break;
245
- }
236
+ const alignment = getAlignment(placement);
237
+ if (alignment) coords[alignmentAxis] += commonAlign * (alignment === "end" ? 1 : -1) * (rtl && isVertical ? -1 : 1);
246
238
  return coords;
247
239
  }
248
240
  /**
241
+ * Resolves with an object of overflow side offsets that determine how much the
242
+ * element is overflowing a given clipping boundary on each side.
243
+ * - positive = overflowing the boundary by that number of pixels
244
+ * - negative = how many pixels left before it will overflow
245
+ * - 0 = lies flush with the boundary
246
+ * @see https://floating-ui.com/docs/detectOverflow
247
+ */
248
+ async function detectOverflow(state, options) {
249
+ var _await$platform$isEle;
250
+ if (options === void 0) options = {};
251
+ const { x, y, platform, rects, elements, strategy } = state;
252
+ const { boundary = "clippingAncestors", rootBoundary = "viewport", elementContext = "floating", altBoundary = false, padding = 0 } = evaluate(options, state);
253
+ const paddingObject = getPaddingObject(padding);
254
+ const element = elements[altBoundary ? elementContext === "floating" ? "reference" : "floating" : elementContext];
255
+ const clippingClientRect = rectToClientRect(await platform.getClippingRect({
256
+ 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)),
257
+ boundary,
258
+ rootBoundary,
259
+ strategy
260
+ }));
261
+ const rect = elementContext === "floating" ? {
262
+ x,
263
+ y,
264
+ width: rects.floating.width,
265
+ height: rects.floating.height
266
+ } : rects.reference;
267
+ const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
268
+ const offsetScale = await (platform.isElement == null ? void 0 : platform.isElement(offsetParent)) && await (platform.getScale == null ? void 0 : platform.getScale(offsetParent)) || {
269
+ x: 1,
270
+ y: 1
271
+ };
272
+ const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
273
+ elements,
274
+ rect,
275
+ offsetParent,
276
+ strategy
277
+ }) : rect);
278
+ return {
279
+ top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
280
+ bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
281
+ left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
282
+ right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
283
+ };
284
+ }
285
+ var MAX_RESET_COUNT = 50;
286
+ /**
249
287
  * Computes the `x` and `y` coordinates that will place the floating element
250
288
  * next to a given reference element.
251
289
  *
@@ -254,7 +292,10 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
254
292
  */
255
293
  var computePosition$1 = async (reference, floating, config) => {
256
294
  const { placement = "bottom", strategy = "absolute", middleware = [], platform } = config;
257
- const validMiddleware = middleware.filter(Boolean);
295
+ const platformWithDetectOverflow = platform.detectOverflow ? platform : {
296
+ ...platform,
297
+ detectOverflow
298
+ };
258
299
  const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));
259
300
  let rects = await platform.getElementRects({
260
301
  reference,
@@ -263,10 +304,12 @@ var computePosition$1 = async (reference, floating, config) => {
263
304
  });
264
305
  let { x, y } = computeCoordsFromPlacement(rects, placement, rtl);
265
306
  let statefulPlacement = placement;
266
- let middlewareData = {};
267
307
  let resetCount = 0;
268
- for (let i = 0; i < validMiddleware.length; i++) {
269
- const { name, fn } = validMiddleware[i];
308
+ const middlewareData = {};
309
+ for (let i = 0; i < middleware.length; i++) {
310
+ const currentMiddleware = middleware[i];
311
+ if (!currentMiddleware) continue;
312
+ const { name, fn } = currentMiddleware;
270
313
  const { x: nextX, y: nextY, data, reset } = await fn({
271
314
  x,
272
315
  y,
@@ -275,7 +318,7 @@ var computePosition$1 = async (reference, floating, config) => {
275
318
  strategy,
276
319
  middlewareData,
277
320
  rects,
278
- platform,
321
+ platform: platformWithDetectOverflow,
279
322
  elements: {
280
323
  reference,
281
324
  floating
@@ -283,14 +326,11 @@ var computePosition$1 = async (reference, floating, config) => {
283
326
  });
284
327
  x = nextX != null ? nextX : x;
285
328
  y = nextY != null ? nextY : y;
286
- middlewareData = {
287
- ...middlewareData,
288
- [name]: {
289
- ...middlewareData[name],
290
- ...data
291
- }
329
+ middlewareData[name] = {
330
+ ...middlewareData[name],
331
+ ...data
292
332
  };
293
- if (reset && resetCount <= 50) {
333
+ if (reset && resetCount < MAX_RESET_COUNT) {
294
334
  resetCount++;
295
335
  if (typeof reset === "object") {
296
336
  if (reset.placement) statefulPlacement = reset.placement;
@@ -313,54 +353,6 @@ var computePosition$1 = async (reference, floating, config) => {
313
353
  };
314
354
  };
315
355
  /**
316
- * Resolves with an object of overflow side offsets that determine how much the
317
- * element is overflowing a given clipping boundary on each side.
318
- * - positive = overflowing the boundary by that number of pixels
319
- * - negative = how many pixels left before it will overflow
320
- * - 0 = lies flush with the boundary
321
- * @see https://floating-ui.com/docs/detectOverflow
322
- */
323
- async function detectOverflow(state, options) {
324
- var _await$platform$isEle;
325
- if (options === void 0) options = {};
326
- const { x, y, platform, rects, elements, strategy } = state;
327
- const { boundary = "clippingAncestors", rootBoundary = "viewport", elementContext = "floating", altBoundary = false, padding = 0 } = evaluate(options, state);
328
- const paddingObject = getPaddingObject(padding);
329
- const element = elements[altBoundary ? elementContext === "floating" ? "reference" : "floating" : elementContext];
330
- const clippingClientRect = rectToClientRect(await platform.getClippingRect({
331
- 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)),
332
- boundary,
333
- rootBoundary,
334
- strategy
335
- }));
336
- const rect = elementContext === "floating" ? {
337
- x,
338
- y,
339
- width: rects.floating.width,
340
- height: rects.floating.height
341
- } : rects.reference;
342
- const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
343
- const offsetScale = await (platform.isElement == null ? void 0 : platform.isElement(offsetParent)) ? await (platform.getScale == null ? void 0 : platform.getScale(offsetParent)) || {
344
- x: 1,
345
- y: 1
346
- } : {
347
- x: 1,
348
- y: 1
349
- };
350
- const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
351
- elements,
352
- rect,
353
- offsetParent,
354
- strategy
355
- }) : rect);
356
- return {
357
- top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
358
- bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
359
- left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
360
- right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
361
- };
362
- }
363
- /**
364
356
  * Provides data to position an inner element of the floating element so that it
365
357
  * appears centered to the reference element.
366
358
  * @see https://floating-ui.com/docs/arrow
@@ -393,12 +385,11 @@ var arrow$2 = (options) => ({
393
385
  const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
394
386
  const minPadding = min(paddingObject[minProp], largestPossiblePadding);
395
387
  const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);
396
- const min$1 = minPadding;
397
388
  const max = clientSize - arrowDimensions[length] - maxPadding;
398
389
  const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
399
- const offset = clamp(min$1, center, max);
400
- const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
401
- const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;
390
+ const offset = clamp(minPadding, center, max);
391
+ const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < minPadding ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
392
+ const alignmentOffset = shouldAddOffset ? center < minPadding ? center - minPadding : center - max : 0;
402
393
  return {
403
394
  [axis]: coords[axis] + alignmentOffset,
404
395
  data: {
@@ -432,12 +423,12 @@ var autoPlacement$1 = function(options) {
432
423
  const { rects, middlewareData, placement, platform, elements } = state;
433
424
  const { crossAxis = false, alignment, allowedPlacements = placements, autoAlignment = true, ...detectOverflowOptions } = evaluate(options, state);
434
425
  const placements$1 = alignment !== void 0 || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;
435
- const overflow = await detectOverflow(state, detectOverflowOptions);
436
426
  const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;
437
427
  const currentPlacement = placements$1[currentIndex];
438
428
  if (currentPlacement == null) return {};
439
- const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));
440
429
  if (placement !== currentPlacement) return { reset: { placement: placements$1[0] } };
430
+ const overflow = await platform.detectOverflow(state, detectOverflowOptions);
431
+ const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));
441
432
  const currentOverflows = [
442
433
  overflow[getSide(currentPlacement)],
443
434
  overflow[alignmentSides[0]],
@@ -499,7 +490,7 @@ var flip$1 = function(options) {
499
490
  const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== "none";
500
491
  if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
501
492
  const placements = [initialPlacement, ...fallbackPlacements];
502
- const overflow = await detectOverflow(state, detectOverflowOptions);
493
+ const overflow = await platform.detectOverflow(state, detectOverflowOptions);
503
494
  const overflows = [];
504
495
  let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
505
496
  if (checkMainAxis) overflows.push(overflow[side]);
@@ -515,13 +506,15 @@ var flip$1 = function(options) {
515
506
  var _middlewareData$flip2, _overflowsData$filter;
516
507
  const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
517
508
  const nextPlacement = placements[nextIndex];
518
- if (nextPlacement) return {
519
- data: {
520
- index: nextIndex,
521
- overflows: overflowsData
522
- },
523
- reset: { placement: nextPlacement }
524
- };
509
+ if (nextPlacement) {
510
+ if (!(checkCrossAxis === "alignment" ? initialSideAxis !== getSideAxis(nextPlacement) : false) || overflowsData.every((d) => getSideAxis(d.placement) === initialSideAxis ? d.overflows[0] > 0 : true)) return {
511
+ data: {
512
+ index: nextIndex,
513
+ overflows: overflowsData
514
+ },
515
+ reset: { placement: nextPlacement }
516
+ };
517
+ }
525
518
  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;
526
519
  if (!resetPlacement) switch (fallbackStrategy) {
527
520
  case "bestFit": {
@@ -536,9 +529,7 @@ var flip$1 = function(options) {
536
529
  if (placement) resetPlacement = placement;
537
530
  break;
538
531
  }
539
- case "initialPlacement":
540
- resetPlacement = initialPlacement;
541
- break;
532
+ case "initialPlacement": resetPlacement = initialPlacement;
542
533
  }
543
534
  if (placement !== resetPlacement) return { reset: { placement: resetPlacement } };
544
535
  }
@@ -568,11 +559,11 @@ var hide$1 = function(options) {
568
559
  name: "hide",
569
560
  options,
570
561
  async fn(state) {
571
- const { rects } = state;
562
+ const { rects, platform } = state;
572
563
  const { strategy = "referenceHidden", ...detectOverflowOptions } = evaluate(options, state);
573
564
  switch (strategy) {
574
565
  case "referenceHidden": {
575
- const offsets = getSideOffsets(await detectOverflow(state, {
566
+ const offsets = getSideOffsets(await platform.detectOverflow(state, {
576
567
  ...detectOverflowOptions,
577
568
  elementContext: "reference"
578
569
  }), rects.reference);
@@ -582,7 +573,7 @@ var hide$1 = function(options) {
582
573
  } };
583
574
  }
584
575
  case "escaped": {
585
- const offsets = getSideOffsets(await detectOverflow(state, {
576
+ const offsets = getSideOffsets(await platform.detectOverflow(state, {
586
577
  ...detectOverflowOptions,
587
578
  altBoundary: true
588
579
  }), rects.floating);
@@ -634,11 +625,12 @@ var inline$1 = function(options) {
634
625
  const { placement, elements, rects, platform, strategy } = state;
635
626
  const { padding = 2, x, y } = evaluate(options, state);
636
627
  const nativeClientRects = Array.from(await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference)) || []);
628
+ if (!nativeClientRects.length) return {};
637
629
  const clientRects = getRectsByLine(nativeClientRects);
638
630
  const fallback = rectToClientRect(getBoundingRect(nativeClientRects));
639
631
  const paddingObject = getPaddingObject(padding);
640
632
  function getBoundingClientRect() {
641
- if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) 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;
633
+ if (clientRects.length === 2 && (clientRects[0].left > clientRects[1].right || clientRects[1].left > clientRects[0].right) && x != null && y != null) 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;
642
634
  if (clientRects.length >= 2) {
643
635
  if (getSideAxis(placement) === "y") {
644
636
  const firstRect = clientRects[0];
@@ -647,17 +639,12 @@ var inline$1 = function(options) {
647
639
  const top = firstRect.top;
648
640
  const bottom = lastRect.bottom;
649
641
  const left = isTop ? firstRect.left : lastRect.left;
650
- const right = isTop ? firstRect.right : lastRect.right;
651
- return {
652
- top,
653
- bottom,
654
- left,
655
- right,
656
- width: right - left,
657
- height: bottom - top,
642
+ return rectToClientRect({
658
643
  x: left,
659
- y: top
660
- };
644
+ y: top,
645
+ width: (isTop ? firstRect.right : lastRect.right) - left,
646
+ height: bottom - top
647
+ });
661
648
  }
662
649
  const isLeftSide = getSide(placement) === "left";
663
650
  const maxRight = max(...clientRects.map((rect) => rect.right));
@@ -665,18 +652,12 @@ var inline$1 = function(options) {
665
652
  const measureRects = clientRects.filter((rect) => isLeftSide ? rect.left === minLeft : rect.right === maxRight);
666
653
  const top = measureRects[0].top;
667
654
  const bottom = measureRects[measureRects.length - 1].bottom;
668
- const left = minLeft;
669
- const right = maxRight;
670
- return {
671
- top,
672
- bottom,
673
- left,
674
- right,
675
- width: right - left,
676
- height: bottom - top,
677
- x: left,
678
- y: top
679
- };
655
+ return rectToClientRect({
656
+ x: minLeft,
657
+ y: top,
658
+ width: maxRight - minLeft,
659
+ height: bottom - top
660
+ });
680
661
  }
681
662
  return fallback;
682
663
  }
@@ -690,13 +671,14 @@ var inline$1 = function(options) {
690
671
  }
691
672
  };
692
673
  };
674
+ var originSides = /*#__PURE__*/ new Set(["left", "top"]);
693
675
  async function convertValueToCoords(state, options) {
694
676
  const { placement, platform, elements } = state;
695
677
  const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
696
678
  const side = getSide(placement);
697
679
  const alignment = getAlignment(placement);
698
680
  const isVertical = getSideAxis(placement) === "y";
699
- const mainAxisMulti = ["left", "top"].includes(side) ? -1 : 1;
681
+ const mainAxisMulti = originSides.has(side) ? -1 : 1;
700
682
  const crossAxisMulti = rtl && isVertical ? -1 : 1;
701
683
  const rawValue = evaluate(options, state);
702
684
  let { mainAxis, crossAxis, alignmentAxis } = typeof rawValue === "number" ? {
@@ -756,7 +738,7 @@ var shift$1 = function(options) {
756
738
  name: "shift",
757
739
  options,
758
740
  async fn(state) {
759
- const { x, y, placement } = state;
741
+ const { x, y, placement, platform } = state;
760
742
  const { mainAxis: checkMainAxis = true, crossAxis: checkCrossAxis = false, limiter = { fn: (_ref) => {
761
743
  let { x, y } = _ref;
762
744
  return {
@@ -768,25 +750,14 @@ var shift$1 = function(options) {
768
750
  x,
769
751
  y
770
752
  };
771
- const overflow = await detectOverflow(state, detectOverflowOptions);
772
- const crossAxis = getSideAxis(getSide(placement));
753
+ const overflow = await platform.detectOverflow(state, detectOverflowOptions);
754
+ const crossAxis = getSideAxis(placement);
773
755
  const mainAxis = getOppositeAxis(crossAxis);
774
756
  let mainAxisCoord = coords[mainAxis];
775
757
  let crossAxisCoord = coords[crossAxis];
776
- if (checkMainAxis) {
777
- const minSide = mainAxis === "y" ? "top" : "left";
778
- const maxSide = mainAxis === "y" ? "bottom" : "right";
779
- const min = mainAxisCoord + overflow[minSide];
780
- const max = mainAxisCoord - overflow[maxSide];
781
- mainAxisCoord = clamp(min, mainAxisCoord, max);
782
- }
783
- if (checkCrossAxis) {
784
- const minSide = crossAxis === "y" ? "top" : "left";
785
- const maxSide = crossAxis === "y" ? "bottom" : "right";
786
- const min = crossAxisCoord + overflow[minSide];
787
- const max = crossAxisCoord - overflow[maxSide];
788
- crossAxisCoord = clamp(min, crossAxisCoord, max);
789
- }
758
+ const clampCoord = (axis, coord) => clamp(coord + overflow[axis === "y" ? "top" : "left"], coord, coord - overflow[axis === "y" ? "bottom" : "right"]);
759
+ if (checkMainAxis) mainAxisCoord = clampCoord(mainAxis, mainAxisCoord);
760
+ if (checkCrossAxis) crossAxisCoord = clampCoord(crossAxis, crossAxisCoord);
790
761
  const limitedCoords = limiter.fn({
791
762
  ...state,
792
763
  [mainAxis]: mainAxisCoord,
@@ -814,6 +785,7 @@ var limitShift$1 = function(options) {
814
785
  return {
815
786
  options,
816
787
  fn(state) {
788
+ var _rawOffset$mainAxis, _rawOffset$crossAxis;
817
789
  const { x, y, placement, rects, middlewareData } = state;
818
790
  const { offset = 0, mainAxis: checkMainAxis = true, crossAxis: checkCrossAxis = true } = evaluate(options, state);
819
791
  const coords = {
@@ -829,9 +801,8 @@ var limitShift$1 = function(options) {
829
801
  mainAxis: rawOffset,
830
802
  crossAxis: 0
831
803
  } : {
832
- mainAxis: 0,
833
- crossAxis: 0,
834
- ...rawOffset
804
+ mainAxis: (_rawOffset$mainAxis = rawOffset.mainAxis) != null ? _rawOffset$mainAxis : 0,
805
+ crossAxis: (_rawOffset$crossAxis = rawOffset.crossAxis) != null ? _rawOffset$crossAxis : 0
835
806
  };
836
807
  if (checkMainAxis) {
837
808
  const len = mainAxis === "y" ? "height" : "width";
@@ -843,7 +814,7 @@ var limitShift$1 = function(options) {
843
814
  if (checkCrossAxis) {
844
815
  var _middlewareData$offse, _middlewareData$offse2;
845
816
  const len = mainAxis === "y" ? "width" : "height";
846
- const isOriginSide = ["top", "left"].includes(getSide(placement));
817
+ const isOriginSide = originSides.has(getSide(placement));
847
818
  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);
848
819
  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);
849
820
  if (crossAxisCoord < limitMin) crossAxisCoord = limitMin;
@@ -868,10 +839,9 @@ var size$1 = function(options) {
868
839
  name: "size",
869
840
  options,
870
841
  async fn(state) {
871
- var _state$middlewareData, _state$middlewareData2;
872
842
  const { placement, rects, platform, elements } = state;
873
843
  const { apply = () => {}, ...detectOverflowOptions } = evaluate(options, state);
874
- const overflow = await detectOverflow(state, detectOverflowOptions);
844
+ const overflow = await platform.detectOverflow(state, detectOverflowOptions);
875
845
  const side = getSide(placement);
876
846
  const alignment = getAlignment(placement);
877
847
  const isYAxis = getSideAxis(placement) === "y";
@@ -889,18 +859,15 @@ var size$1 = function(options) {
889
859
  const maximumClippingWidth = width - overflow.left - overflow.right;
890
860
  const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);
891
861
  const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);
892
- const noShift = !state.middlewareData.shift;
862
+ const shiftData = state.middlewareData.shift;
863
+ const noShift = !shiftData;
893
864
  let availableHeight = overflowAvailableHeight;
894
865
  let availableWidth = overflowAvailableWidth;
895
- if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) availableWidth = maximumClippingWidth;
896
- if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) availableHeight = maximumClippingHeight;
866
+ if (shiftData != null && shiftData.enabled.x) availableWidth = maximumClippingWidth;
867
+ if (shiftData != null && shiftData.enabled.y) availableHeight = maximumClippingHeight;
897
868
  if (noShift && !alignment) {
898
- const xMin = max(overflow.left, 0);
899
- const xMax = max(overflow.right, 0);
900
- const yMin = max(overflow.top, 0);
901
- const yMax = max(overflow.bottom, 0);
902
- if (isYAxis) availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));
903
- else availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));
869
+ if (isYAxis) availableWidth = width - 2 * max(overflow.left, overflow.right);
870
+ else availableHeight = height - 2 * max(overflow.top, overflow.bottom);
904
871
  }
905
872
  await apply({
906
873
  ...state,
@@ -914,7 +881,7 @@ var size$1 = function(options) {
914
881
  };
915
882
  };
916
883
  //#endregion
917
- //#region ../../node_modules/.pnpm/@floating-ui+utils@0.2.9/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
884
+ //#region ../../node_modules/.pnpm/@floating-ui+utils@0.2.12/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
918
885
  function hasWindow() {
919
886
  return typeof window !== "undefined";
920
887
  }
@@ -947,47 +914,29 @@ function isShadowRoot(value) {
947
914
  return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
948
915
  }
949
916
  function isOverflowElement(element) {
950
- const { overflow, overflowX, overflowY, display } = getComputedStyle(element);
951
- return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !["inline", "contents"].includes(display);
917
+ const { overflow, overflowX, overflowY, display } = getComputedStyle$1(element);
918
+ return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && display !== "inline" && display !== "contents";
952
919
  }
953
920
  function isTableElement(element) {
954
- return [
955
- "table",
956
- "td",
957
- "th"
958
- ].includes(getNodeName(element));
921
+ return /^(table|td|th)$/.test(getNodeName(element));
959
922
  }
960
923
  function isTopLayer(element) {
961
- return [":popover-open", ":modal"].some((selector) => {
962
- try {
963
- return element.matches(selector);
964
- } catch (e) {
965
- return false;
966
- }
967
- });
924
+ try {
925
+ if (element.matches(":popover-open")) return true;
926
+ } catch (_e) {}
927
+ try {
928
+ return element.matches(":modal");
929
+ } catch (_e) {
930
+ return false;
931
+ }
968
932
  }
933
+ var willChangeRe = /transform|translate|scale|rotate|perspective|filter/;
934
+ var containRe = /paint|layout|strict|content/;
935
+ var isNotNone = (value) => !!value && value !== "none";
936
+ var isWebKitValue;
969
937
  function isContainingBlock(elementOrCss) {
970
- const webkit = isWebKit();
971
- const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;
972
- return [
973
- "transform",
974
- "translate",
975
- "scale",
976
- "rotate",
977
- "perspective"
978
- ].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) || [
979
- "transform",
980
- "translate",
981
- "scale",
982
- "rotate",
983
- "perspective",
984
- "filter"
985
- ].some((value) => (css.willChange || "").includes(value)) || [
986
- "paint",
987
- "layout",
988
- "strict",
989
- "content"
990
- ].some((value) => (css.contain || "").includes(value));
938
+ const css = isElement(elementOrCss) ? getComputedStyle$1(elementOrCss) : elementOrCss;
939
+ return isNotNone(css.transform) || isNotNone(css.translate) || isNotNone(css.scale) || isNotNone(css.rotate) || isNotNone(css.perspective) || !isWebKit() && (isNotNone(css.backdropFilter) || isNotNone(css.filter)) || willChangeRe.test(css.willChange || "") || containRe.test(css.contain || "");
991
940
  }
992
941
  function getContainingBlock(element) {
993
942
  let currentNode = getParentNode(element);
@@ -999,17 +948,13 @@ function getContainingBlock(element) {
999
948
  return null;
1000
949
  }
1001
950
  function isWebKit() {
1002
- if (typeof CSS === "undefined" || !CSS.supports) return false;
1003
- return CSS.supports("-webkit-backdrop-filter", "none");
951
+ if (isWebKitValue == null) isWebKitValue = typeof CSS !== "undefined" && CSS.supports && CSS.supports("-webkit-backdrop-filter", "none");
952
+ return isWebKitValue;
1004
953
  }
1005
954
  function isLastTraversableNode(node) {
1006
- return [
1007
- "html",
1008
- "body",
1009
- "#document"
1010
- ].includes(getNodeName(node));
955
+ return /^(html|body|#document)$/.test(getNodeName(node));
1011
956
  }
1012
- function getComputedStyle(element) {
957
+ function getComputedStyle$1(element) {
1013
958
  return getWindow(element).getComputedStyle(element);
1014
959
  }
1015
960
  function getNodeScroll(element) {
@@ -1029,7 +974,7 @@ function getParentNode(node) {
1029
974
  }
1030
975
  function getNearestOverflowAncestor(node) {
1031
976
  const parentNode = getParentNode(node);
1032
- if (isLastTraversableNode(parentNode)) return node.ownerDocument ? node.ownerDocument.body : node.body;
977
+ if (isLastTraversableNode(parentNode)) return (node.ownerDocument || node).body;
1033
978
  if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) return parentNode;
1034
979
  return getNearestOverflowAncestor(parentNode);
1035
980
  }
@@ -1043,16 +988,15 @@ function getOverflowAncestors(node, list, traverseIframes) {
1043
988
  if (isBody) {
1044
989
  const frameElement = getFrameElement(win);
1045
990
  return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);
1046
- }
1047
- return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
991
+ } else return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
1048
992
  }
1049
993
  function getFrameElement(win) {
1050
994
  return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
1051
995
  }
1052
996
  //#endregion
1053
- //#region ../../node_modules/.pnpm/@floating-ui+dom@1.6.13/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
997
+ //#region ../../node_modules/.pnpm/@floating-ui+dom@1.8.0/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
1054
998
  function getCssDimensions(element) {
1055
- const css = getComputedStyle(element);
999
+ const css = getComputedStyle$1(element);
1056
1000
  let width = parseFloat(css.width) || 0;
1057
1001
  let height = parseFloat(css.height) || 0;
1058
1002
  const hasOffset = isHTMLElement(element);
@@ -1086,7 +1030,7 @@ function getScale(element) {
1086
1030
  y
1087
1031
  };
1088
1032
  }
1089
- var noOffsets = /* @__PURE__ */ createCoords(0);
1033
+ var noOffsets = /*#__PURE__*/ createCoords(0);
1090
1034
  function getVisualOffsets(element) {
1091
1035
  const win = getWindow(element);
1092
1036
  if (!isWebKit() || !win.visualViewport) return noOffsets;
@@ -1097,8 +1041,7 @@ function getVisualOffsets(element) {
1097
1041
  }
1098
1042
  function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
1099
1043
  if (isFixed === void 0) isFixed = false;
1100
- if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) return false;
1101
- return isFixed;
1044
+ return !!floatingOffsetParent && isFixed && floatingOffsetParent === getWindow(element);
1102
1045
  }
1103
1046
  function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
1104
1047
  if (includeScale === void 0) includeScale = false;
@@ -1106,23 +1049,25 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
1106
1049
  const clientRect = element.getBoundingClientRect();
1107
1050
  const domElement = unwrapElement$1(element);
1108
1051
  let scale = createCoords(1);
1109
- if (includeScale) if (offsetParent) {
1110
- if (isElement(offsetParent)) scale = getScale(offsetParent);
1111
- } else scale = getScale(element);
1052
+ if (includeScale) {
1053
+ if (offsetParent) {
1054
+ if (isElement(offsetParent)) scale = getScale(offsetParent);
1055
+ } else scale = getScale(element);
1056
+ }
1112
1057
  const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
1113
1058
  let x = (clientRect.left + visualOffsets.x) / scale.x;
1114
1059
  let y = (clientRect.top + visualOffsets.y) / scale.y;
1115
1060
  let width = clientRect.width / scale.x;
1116
1061
  let height = clientRect.height / scale.y;
1117
- if (domElement) {
1062
+ if (domElement && offsetParent) {
1118
1063
  const win = getWindow(domElement);
1119
- const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
1064
+ const offsetWin = isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
1120
1065
  let currentWin = win;
1121
1066
  let currentIFrame = getFrameElement(currentWin);
1122
- while (currentIFrame && offsetParent && offsetWin !== currentWin) {
1067
+ while (currentIFrame && offsetWin !== currentWin) {
1123
1068
  const iframeScale = getScale(currentIFrame);
1124
1069
  const iframeRect = currentIFrame.getBoundingClientRect();
1125
- const css = getComputedStyle(currentIFrame);
1070
+ const css = getComputedStyle$1(currentIFrame);
1126
1071
  const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
1127
1072
  const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
1128
1073
  x *= iframeScale.x;
@@ -1147,11 +1092,10 @@ function getWindowScrollBarX(element, rect) {
1147
1092
  if (!rect) return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
1148
1093
  return rect.left + leftScroll;
1149
1094
  }
1150
- function getHTMLOffset(documentElement, scroll, ignoreScrollbarX) {
1151
- if (ignoreScrollbarX === void 0) ignoreScrollbarX = false;
1095
+ function getHTMLOffset(documentElement, scroll) {
1152
1096
  const htmlRect = documentElement.getBoundingClientRect();
1153
1097
  return {
1154
- x: htmlRect.left + scroll.scrollLeft - (ignoreScrollbarX ? 0 : getWindowScrollBarX(documentElement, htmlRect)),
1098
+ x: htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect),
1155
1099
  y: htmlRect.top + scroll.scrollTop
1156
1100
  };
1157
1101
  }
@@ -1168,16 +1112,16 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
1168
1112
  let scale = createCoords(1);
1169
1113
  const offsets = createCoords(0);
1170
1114
  const isOffsetParentAnElement = isHTMLElement(offsetParent);
1171
- if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
1115
+ if (isOffsetParentAnElement || !isFixed) {
1172
1116
  if (getNodeName(offsetParent) !== "body" || isOverflowElement(documentElement)) scroll = getNodeScroll(offsetParent);
1173
- if (isHTMLElement(offsetParent)) {
1117
+ if (isOffsetParentAnElement) {
1174
1118
  const offsetRect = getBoundingClientRect(offsetParent);
1175
1119
  scale = getScale(offsetParent);
1176
1120
  offsets.x = offsetRect.x + offsetParent.clientLeft;
1177
1121
  offsets.y = offsetRect.y + offsetParent.clientTop;
1178
1122
  }
1179
1123
  }
1180
- const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll, true) : createCoords(0);
1124
+ const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
1181
1125
  return {
1182
1126
  width: rect.width * scale.x,
1183
1127
  height: rect.height * scale.y,
@@ -1186,17 +1130,16 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
1186
1130
  };
1187
1131
  }
1188
1132
  function getClientRects(element) {
1189
- return Array.from(element.getClientRects());
1133
+ return element.getClientRects ? Array.from(element.getClientRects()) : [];
1190
1134
  }
1191
- function getDocumentRect(element) {
1192
- const html = getDocumentElement(element);
1193
- const scroll = getNodeScroll(element);
1194
- const body = element.ownerDocument.body;
1135
+ function getDocumentRect(html) {
1136
+ const scroll = getNodeScroll(html);
1137
+ const body = html.ownerDocument.body;
1195
1138
  const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
1196
1139
  const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
1197
- let x = -scroll.scrollLeft + getWindowScrollBarX(element);
1140
+ let x = -scroll.scrollLeft + getWindowScrollBarX(html);
1198
1141
  const y = -scroll.scrollTop;
1199
- if (getComputedStyle(body).direction === "rtl") x += max(html.clientWidth, body.clientWidth) - width;
1142
+ if (getComputedStyle$1(body).direction === "rtl") x += max(html.clientWidth, body.clientWidth) - width;
1200
1143
  return {
1201
1144
  width,
1202
1145
  height,
@@ -1204,7 +1147,10 @@ function getDocumentRect(element) {
1204
1147
  y
1205
1148
  };
1206
1149
  }
1207
- function getViewportRect(element, strategy) {
1150
+ var SCROLLBAR_MAX = 25;
1151
+ function getViewportRect(element, strategy, rootBoundary) {
1152
+ if (rootBoundary === void 0) rootBoundary = "viewport";
1153
+ const isLayoutViewport = rootBoundary === "layoutViewport";
1208
1154
  const win = getWindow(element);
1209
1155
  const html = getDocumentElement(element);
1210
1156
  const visualViewport = win.visualViewport;
@@ -1213,14 +1159,30 @@ function getViewportRect(element, strategy) {
1213
1159
  let x = 0;
1214
1160
  let y = 0;
1215
1161
  if (visualViewport) {
1216
- width = visualViewport.width;
1217
- height = visualViewport.height;
1218
- const visualViewportBased = isWebKit();
1219
- if (!visualViewportBased || visualViewportBased && strategy === "fixed") {
1220
- x = visualViewport.offsetLeft;
1221
- y = visualViewport.offsetTop;
1162
+ const layoutRelativeClientCoords = !isWebKit() || strategy === "fixed";
1163
+ if (isLayoutViewport) {
1164
+ if (!layoutRelativeClientCoords) {
1165
+ x = -visualViewport.offsetLeft;
1166
+ y = -visualViewport.offsetTop;
1167
+ }
1168
+ } else {
1169
+ width = visualViewport.width;
1170
+ height = visualViewport.height;
1171
+ if (layoutRelativeClientCoords) {
1172
+ x = visualViewport.offsetLeft;
1173
+ y = visualViewport.offsetTop;
1174
+ }
1222
1175
  }
1223
1176
  }
1177
+ if (getWindowScrollBarX(html) <= 0) {
1178
+ const doc = html.ownerDocument;
1179
+ const body = doc.body;
1180
+ const bodyStyles = getComputedStyle(body);
1181
+ const bodyMarginInline = doc.compatMode === "CSS1Compat" ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;
1182
+ const reservedWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);
1183
+ const gutter = getComputedStyle(html).scrollbarGutter === "stable both-edges" ? reservedWidth / 2 : reservedWidth;
1184
+ if (gutter <= SCROLLBAR_MAX) width -= gutter;
1185
+ }
1224
1186
  return {
1225
1187
  width,
1226
1188
  height,
@@ -1232,7 +1194,7 @@ function getInnerBoundingClientRect(element, strategy) {
1232
1194
  const clientRect = getBoundingClientRect(element, true, strategy === "fixed");
1233
1195
  const top = clientRect.top + element.clientTop;
1234
1196
  const left = clientRect.left + element.clientLeft;
1235
- const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
1197
+ const scale = getScale(element);
1236
1198
  return {
1237
1199
  width: element.clientWidth * scale.x,
1238
1200
  height: element.clientHeight * scale.y,
@@ -1242,7 +1204,7 @@ function getInnerBoundingClientRect(element, strategy) {
1242
1204
  }
1243
1205
  function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
1244
1206
  let rect;
1245
- if (clippingAncestor === "viewport") rect = getViewportRect(element, strategy);
1207
+ if (clippingAncestor === "viewport" || clippingAncestor === "layoutViewport") rect = getViewportRect(element, strategy, clippingAncestor);
1246
1208
  else if (clippingAncestor === "document") rect = getDocumentRect(getDocumentElement(element));
1247
1209
  else if (isElement(clippingAncestor)) rect = getInnerBoundingClientRect(clippingAncestor, strategy);
1248
1210
  else {
@@ -1256,24 +1218,19 @@ function getClientRectFromClippingAncestor(element, clippingAncestor, strategy)
1256
1218
  }
1257
1219
  return rectToClientRect(rect);
1258
1220
  }
1259
- function hasFixedPositionAncestor(element, stopNode) {
1260
- const parentNode = getParentNode(element);
1261
- if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) return false;
1262
- return getComputedStyle(parentNode).position === "fixed" || hasFixedPositionAncestor(parentNode, stopNode);
1263
- }
1264
1221
  function getClippingElementAncestors(element, cache) {
1265
1222
  const cachedResult = cache.get(element);
1266
1223
  if (cachedResult) return cachedResult;
1267
1224
  let result = getOverflowAncestors(element, [], false).filter((el) => isElement(el) && getNodeName(el) !== "body");
1268
- let currentContainingBlockComputedStyle = null;
1269
- const elementIsFixed = getComputedStyle(element).position === "fixed";
1225
+ let lastKeptComputedStyle = null;
1226
+ const elementIsFixed = getComputedStyle$1(element).position === "fixed";
1270
1227
  let currentNode = elementIsFixed ? getParentNode(element) : element;
1271
1228
  while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
1272
- const computedStyle = getComputedStyle(currentNode);
1229
+ const computedStyle = getComputedStyle$1(currentNode);
1273
1230
  const currentNodeIsContaining = isContainingBlock(currentNode);
1274
- if (!currentNodeIsContaining && computedStyle.position === "fixed") currentContainingBlockComputedStyle = null;
1275
- if (elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === "static" && !!currentContainingBlockComputedStyle && ["absolute", "fixed"].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode)) result = result.filter((ancestor) => ancestor !== currentNode);
1276
- else currentContainingBlockComputedStyle = computedStyle;
1231
+ const lastPosition = lastKeptComputedStyle ? lastKeptComputedStyle.position : elementIsFixed ? "fixed" : "";
1232
+ if (!currentNodeIsContaining && (lastPosition === "fixed" || lastPosition === "absolute" && computedStyle.position === "static")) result = result.filter((ancestor) => ancestor !== currentNode);
1233
+ else lastKeptComputedStyle = computedStyle;
1277
1234
  currentNode = getParentNode(currentNode);
1278
1235
  }
1279
1236
  cache.set(element, result);
@@ -1282,20 +1239,23 @@ function getClippingElementAncestors(element, cache) {
1282
1239
  function getClippingRect(_ref) {
1283
1240
  let { element, boundary, rootBoundary, strategy } = _ref;
1284
1241
  const clippingAncestors = [...boundary === "clippingAncestors" ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary), rootBoundary];
1285
- const firstClippingAncestor = clippingAncestors[0];
1286
- const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {
1287
- const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);
1288
- accRect.top = max(rect.top, accRect.top);
1289
- accRect.right = min(rect.right, accRect.right);
1290
- accRect.bottom = min(rect.bottom, accRect.bottom);
1291
- accRect.left = max(rect.left, accRect.left);
1292
- return accRect;
1293
- }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));
1242
+ const firstRect = getClientRectFromClippingAncestor(element, clippingAncestors[0], strategy);
1243
+ let top = firstRect.top;
1244
+ let right = firstRect.right;
1245
+ let bottom = firstRect.bottom;
1246
+ let left = firstRect.left;
1247
+ for (let i = 1; i < clippingAncestors.length; i++) {
1248
+ const rect = getClientRectFromClippingAncestor(element, clippingAncestors[i], strategy);
1249
+ top = max(rect.top, top);
1250
+ right = min(rect.right, right);
1251
+ bottom = min(rect.bottom, bottom);
1252
+ left = max(rect.left, left);
1253
+ }
1294
1254
  return {
1295
- width: clippingRect.right - clippingRect.left,
1296
- height: clippingRect.bottom - clippingRect.top,
1297
- x: clippingRect.left,
1298
- y: clippingRect.top
1255
+ width: right - left,
1256
+ height: bottom - top,
1257
+ x: left,
1258
+ y: top
1299
1259
  };
1300
1260
  }
1301
1261
  function getDimensions(element) {
@@ -1315,14 +1275,15 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
1315
1275
  scrollTop: 0
1316
1276
  };
1317
1277
  const offsets = createCoords(0);
1318
- if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
1278
+ if (isOffsetParentAnElement || !isFixed) {
1319
1279
  if (getNodeName(offsetParent) !== "body" || isOverflowElement(documentElement)) scroll = getNodeScroll(offsetParent);
1320
1280
  if (isOffsetParentAnElement) {
1321
1281
  const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
1322
1282
  offsets.x = offsetRect.x + offsetParent.clientLeft;
1323
1283
  offsets.y = offsetRect.y + offsetParent.clientTop;
1324
- } else if (documentElement) offsets.x = getWindowScrollBarX(documentElement);
1284
+ }
1325
1285
  }
1286
+ if (!isOffsetParentAnElement && documentElement) offsets.x = getWindowScrollBarX(documentElement);
1326
1287
  const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
1327
1288
  return {
1328
1289
  x: rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x,
@@ -1332,10 +1293,10 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
1332
1293
  };
1333
1294
  }
1334
1295
  function isStaticPositioned(element) {
1335
- return getComputedStyle(element).position === "static";
1296
+ return getComputedStyle$1(element).position === "static";
1336
1297
  }
1337
1298
  function getTrueOffsetParent(element, polyfill) {
1338
- if (!isHTMLElement(element) || getComputedStyle(element).position === "fixed") return null;
1299
+ if (!isHTMLElement(element) || getComputedStyle$1(element).position === "fixed") return null;
1339
1300
  if (polyfill) return polyfill(element);
1340
1301
  let rawOffsetParent = element.offsetParent;
1341
1302
  if (getDocumentElement(element) === rawOffsetParent) rawOffsetParent = rawOffsetParent.ownerDocument.body;
@@ -1372,7 +1333,7 @@ var getElementRects = async function(data) {
1372
1333
  };
1373
1334
  };
1374
1335
  function isRTL(element) {
1375
- return getComputedStyle(element).direction === "rtl";
1336
+ return getComputedStyle$1(element).direction === "rtl";
1376
1337
  }
1377
1338
  var platform = {
1378
1339
  convertOffsetParentRelativeRectToViewportRelativeRect,
@@ -1389,7 +1350,7 @@ var platform = {
1389
1350
  function rectsAreEqual(a, b) {
1390
1351
  return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;
1391
1352
  }
1392
- function observeMove(element, onMove) {
1353
+ function observeMove(element, onMove, ancestorResize) {
1393
1354
  let io = null;
1394
1355
  let timeoutId;
1395
1356
  const root = getDocumentElement(element);
@@ -1418,6 +1379,7 @@ function observeMove(element, onMove) {
1418
1379
  let isFirstUpdate = true;
1419
1380
  function handleObserve(entries) {
1420
1381
  const ratio = entries[0].intersectionRatio;
1382
+ if (!rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) return refresh();
1421
1383
  if (ratio !== threshold) {
1422
1384
  if (!isFirstUpdate) return refresh();
1423
1385
  if (!ratio) timeoutId = setTimeout(() => {
@@ -1425,7 +1387,6 @@ function observeMove(element, onMove) {
1425
1387
  }, 1e3);
1426
1388
  else refresh(false, ratio);
1427
1389
  }
1428
- if (ratio === 1 && !rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) refresh();
1429
1390
  isFirstUpdate = false;
1430
1391
  }
1431
1392
  try {
@@ -1433,13 +1394,19 @@ function observeMove(element, onMove) {
1433
1394
  ...options,
1434
1395
  root: root.ownerDocument
1435
1396
  });
1436
- } catch (e) {
1397
+ } catch (_e) {
1437
1398
  io = new IntersectionObserver(handleObserve, options);
1438
1399
  }
1439
1400
  io.observe(element);
1440
1401
  }
1402
+ const win = getWindow(element);
1403
+ const handleResize = () => refresh(ancestorResize);
1404
+ win.addEventListener("resize", handleResize);
1441
1405
  refresh(true);
1442
- return cleanup;
1406
+ return () => {
1407
+ win.removeEventListener("resize", handleResize);
1408
+ cleanup();
1409
+ };
1443
1410
  }
1444
1411
  /**
1445
1412
  * Automatically updates the position of the floating element when necessary.
@@ -1453,18 +1420,18 @@ function autoUpdate(reference, floating, update, options) {
1453
1420
  if (options === void 0) options = {};
1454
1421
  const { ancestorScroll = true, ancestorResize = true, elementResize = typeof ResizeObserver === "function", layoutShift = typeof IntersectionObserver === "function", animationFrame = false } = options;
1455
1422
  const referenceEl = unwrapElement$1(reference);
1456
- const ancestors = ancestorScroll || ancestorResize ? [...referenceEl ? getOverflowAncestors(referenceEl) : [], ...getOverflowAncestors(floating)] : [];
1423
+ const ancestors = ancestorScroll || ancestorResize ? [...referenceEl ? getOverflowAncestors(referenceEl) : [], ...floating ? getOverflowAncestors(floating) : []] : [];
1457
1424
  ancestors.forEach((ancestor) => {
1458
- ancestorScroll && ancestor.addEventListener("scroll", update, { passive: true });
1425
+ ancestorScroll && ancestor.addEventListener("scroll", update);
1459
1426
  ancestorResize && ancestor.addEventListener("resize", update);
1460
1427
  });
1461
- const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;
1428
+ const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update, ancestorResize) : null;
1462
1429
  let reobserveFrame = -1;
1463
1430
  let resizeObserver = null;
1464
1431
  if (elementResize) {
1465
1432
  resizeObserver = new ResizeObserver((_ref) => {
1466
1433
  let [firstEntry] = _ref;
1467
- if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {
1434
+ if (firstEntry && firstEntry.target === referenceEl && resizeObserver && floating) {
1468
1435
  resizeObserver.unobserve(floating);
1469
1436
  cancelAnimationFrame(reobserveFrame);
1470
1437
  reobserveFrame = requestAnimationFrame(() => {
@@ -1475,7 +1442,7 @@ function autoUpdate(reference, floating, update, options) {
1475
1442
  update();
1476
1443
  });
1477
1444
  if (referenceEl && !animationFrame) resizeObserver.observe(referenceEl);
1478
- resizeObserver.observe(floating);
1445
+ if (floating) resizeObserver.observe(floating);
1479
1446
  }
1480
1447
  let frameId;
1481
1448
  let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
@@ -1562,11 +1529,9 @@ var limitShift = limitShift$1;
1562
1529
  */
1563
1530
  var computePosition = (reference, floating, options) => {
1564
1531
  const cache = /* @__PURE__ */ new Map();
1565
- const mergedOptions = {
1566
- platform,
1567
- ...options
1568
- };
1532
+ const mergedOptions = options != null ? options : {};
1569
1533
  const platformWithCache = {
1534
+ ...platform,
1570
1535
  ...mergedOptions.platform,
1571
1536
  _c: cache
1572
1537
  };
@@ -1576,8 +1541,8 @@ var computePosition = (reference, floating, options) => {
1576
1541
  });
1577
1542
  };
1578
1543
  //#endregion
1579
- //#region ../../node_modules/.pnpm/vue-demi@0.14.10_vue@3.5.13_typescript@6.0.3_/node_modules/vue-demi/lib/index.mjs
1580
- var lib_exports = /* @__PURE__ */ require_chunk.__exportAll({
1544
+ //#region ../../node_modules/.pnpm/vue-demi@0.14.10_vue@3.5.41_typescript@6.0.3_/node_modules/vue-demi/lib/index.mjs
1545
+ var lib_exports = /* @__PURE__ */ require_rolldown_runtime.__exportAll({
1581
1546
  Vue: () => vue,
1582
1547
  Vue2: () => void 0,
1583
1548
  del: () => del,
@@ -1586,7 +1551,7 @@ var lib_exports = /* @__PURE__ */ require_chunk.__exportAll({
1586
1551
  isVue3: () => true,
1587
1552
  set: () => set
1588
1553
  });
1589
- require_chunk.__reExport(lib_exports, require("vue"));
1554
+ require_rolldown_runtime.__reExport(lib_exports, require("vue"));
1590
1555
  function install() {}
1591
1556
  function set(target, key, val) {
1592
1557
  if (Array.isArray(target)) {
@@ -1605,7 +1570,7 @@ function del(target, key) {
1605
1570
  delete target[key];
1606
1571
  }
1607
1572
  //#endregion
1608
- //#region ../../node_modules/.pnpm/@floating-ui+vue@1.1.6_vue@3.5.13_typescript@6.0.3_/node_modules/@floating-ui/vue/dist/floating-ui.vue.mjs
1573
+ //#region ../../node_modules/.pnpm/@floating-ui+vue@1.1.11_vue@3.5.41_typescript@6.0.3_/node_modules/@floating-ui/vue/dist/floating-ui.vue.mjs
1609
1574
  function isComponentPublicInstance(target) {
1610
1575
  return target != null && typeof target === "object" && "$el" in target;
1611
1576
  }
@@ -1765,7 +1730,7 @@ function useFloating(reference, floating, options) {
1765
1730
  };
1766
1731
  }
1767
1732
  //#endregion
1768
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.13_typescript@6.0.3_/node_modules/reka-ui/dist/Popper/PopperContent.js
1733
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Popper/PopperContent.js
1769
1734
  var _hoisted_1 = ["dir"];
1770
1735
  var PopperContentPropsDefaultValue = {
1771
1736
  side: "bottom",
@@ -1785,7 +1750,7 @@ var PopperContentPropsDefaultValue = {
1785
1750
  updatePositionStrategy: "optimized",
1786
1751
  prioritizePosition: false
1787
1752
  };
1788
- var [injectPopperContentContext, providePopperContentContext] = /* @__PURE__ */ require_createContext.createContext("PopperContent");
1753
+ var [injectPopperContentContext, providePopperContentContext] = /*#__PURE__*/ require_createContext.createContext("PopperContent");
1789
1754
  var PopperContent_default = /* @__PURE__ */ (0, vue.defineComponent)({
1790
1755
  inheritAttrs: false,
1791
1756
  __name: "PopperContent",