@neut/ui 0.0.15 → 0.0.16

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 (968) hide show
  1. package/dist/components/accordion/Accordion/Accordion.context.d.ts +1 -1
  2. package/dist/components/accordion/Accordion/Accordion.context.js.map +1 -1
  3. package/dist/components/accordion/Accordion/Accordion.d.ts +1 -1
  4. package/dist/components/accordion/Accordion/Accordion.js.map +1 -1
  5. package/dist/components/accordion/Accordion/Accordion.styles.js.map +1 -1
  6. package/dist/components/accordion/Accordion/useAccordion.js.map +1 -1
  7. package/dist/components/accordion/AccordionContent/AccordionContent.d.ts +1 -1
  8. package/dist/components/accordion/AccordionContent/AccordionContent.js.map +1 -1
  9. package/dist/components/accordion/AccordionContent/AccordionContent.styles.js.map +1 -1
  10. package/dist/components/accordion/AccordionItem/AccordionItem.context.js.map +1 -1
  11. package/dist/components/accordion/AccordionItem/AccordionItem.d.ts +1 -1
  12. package/dist/components/accordion/AccordionItem/AccordionItem.js.map +1 -1
  13. package/dist/components/accordion/AccordionItem/AccordionItem.styles.js.map +1 -1
  14. package/dist/components/accordion/AccordionTrigger/AccordionTrigger.d.ts +1 -1
  15. package/dist/components/accordion/AccordionTrigger/AccordionTrigger.js.map +1 -1
  16. package/dist/components/accordion/AccordionTrigger/AccordionTrigger.styles.js.map +1 -1
  17. package/dist/components/alert/Alert/Alert.d.ts +1 -1
  18. package/dist/components/alert/Alert/Alert.js.map +1 -1
  19. package/dist/components/alert/Alert/Alert.styles.js.map +1 -1
  20. package/dist/components/alert/AlertAction/AlertAction.d.ts +1 -1
  21. package/dist/components/alert/AlertAction/AlertAction.js.map +1 -1
  22. package/dist/components/alert/AlertAction/AlertAction.styles.js.map +1 -1
  23. package/dist/components/alert/AlertDescription/AlertDescription.d.ts +1 -1
  24. package/dist/components/alert/AlertDescription/AlertDescription.js.map +1 -1
  25. package/dist/components/alert/AlertDescription/AlertDescription.styles.js.map +1 -1
  26. package/dist/components/alert/AlertTitle/AlertTitle.d.ts +1 -1
  27. package/dist/components/alert/AlertTitle/AlertTitle.js.map +1 -1
  28. package/dist/components/alert/AlertTitle/AlertTitle.styles.js.map +1 -1
  29. package/dist/components/alert-dialog/AlertDialog/AlertDialog.d.ts +6 -1
  30. package/dist/components/alert-dialog/AlertDialog/AlertDialog.js +4 -19
  31. package/dist/components/alert-dialog/AlertDialog/AlertDialog.js.map +1 -1
  32. package/dist/components/alert-dialog/AlertDialog/AlertDialog.types.d.ts +6 -2
  33. package/dist/components/alert-dialog/AlertDialog/index.d.ts +1 -1
  34. package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.d.ts +1 -1
  35. package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.js +13 -4
  36. package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.js.map +1 -1
  37. package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.d.ts +1 -1
  38. package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js +1 -1
  39. package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js.map +1 -1
  40. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.d.ts +1 -1
  41. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.js +19 -53
  42. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.js.map +1 -1
  43. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.d.ts +1 -1
  44. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.js +1 -1
  45. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.js.map +1 -1
  46. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.types.d.ts +1 -1
  47. package/dist/components/alert-dialog/AlertDialogContent/index.d.ts +1 -1
  48. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.d.ts +1 -1
  49. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js +1 -1
  50. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js.map +1 -1
  51. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.styles.js.map +1 -1
  52. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.d.ts +1 -1
  53. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.js.map +1 -1
  54. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.styles.js.map +1 -1
  55. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.d.ts +1 -1
  56. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.js.map +1 -1
  57. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.styles.js.map +1 -1
  58. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.d.ts +1 -1
  59. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.js.map +1 -1
  60. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.styles.js.map +1 -1
  61. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.d.ts +1 -1
  62. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.js +4 -22
  63. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.js.map +1 -1
  64. package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.d.ts +1 -1
  65. package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.js +4 -6
  66. package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.js.map +1 -1
  67. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.d.ts +1 -1
  68. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js +1 -1
  69. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js.map +1 -1
  70. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.styles.js.map +1 -1
  71. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.d.ts +8 -2
  72. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.js +27 -6
  73. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.js.map +1 -1
  74. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.types.d.ts +4 -0
  75. package/dist/components/alert-dialog/AlertDialogTrigger/index.d.ts +1 -0
  76. package/dist/components/alert-dialog/index.js +13 -15
  77. package/dist/components/aspect-ratio/AspectRatio.d.ts +1 -1
  78. package/dist/components/aspect-ratio/AspectRatio.js.map +1 -1
  79. package/dist/components/aspect-ratio/AspectRatio.styles.js.map +1 -1
  80. package/dist/components/attachment/Attachment/Attachment.d.ts +6 -0
  81. package/dist/components/attachment/Attachment/Attachment.js +46 -0
  82. package/dist/components/attachment/Attachment/Attachment.js.map +1 -0
  83. package/dist/components/attachment/Attachment/Attachment.styles.d.ts +4 -0
  84. package/dist/components/attachment/Attachment/Attachment.styles.js +17 -0
  85. package/dist/components/attachment/Attachment/Attachment.styles.js.map +1 -0
  86. package/dist/components/attachment/Attachment/Attachment.types.d.ts +8 -0
  87. package/dist/components/attachment/Attachment/index.d.ts +2 -0
  88. package/dist/components/attachment/AttachmentAction/AttachmentAction.d.ts +3 -0
  89. package/dist/components/attachment/AttachmentAction/AttachmentAction.js +15 -0
  90. package/dist/components/attachment/AttachmentAction/AttachmentAction.js.map +1 -0
  91. package/dist/components/attachment/AttachmentAction/AttachmentAction.types.d.ts +2 -0
  92. package/dist/components/attachment/AttachmentAction/index.d.ts +2 -0
  93. package/dist/components/attachment/AttachmentActions/AttachmentActions.d.ts +3 -0
  94. package/dist/components/attachment/AttachmentActions/AttachmentActions.js +24 -0
  95. package/dist/components/attachment/AttachmentActions/AttachmentActions.js.map +1 -0
  96. package/dist/components/attachment/AttachmentActions/AttachmentActions.styles.d.ts +1 -0
  97. package/dist/components/attachment/AttachmentActions/AttachmentActions.styles.js +6 -0
  98. package/dist/components/attachment/AttachmentActions/AttachmentActions.styles.js.map +1 -0
  99. package/dist/components/attachment/AttachmentActions/AttachmentActions.types.d.ts +2 -0
  100. package/dist/components/attachment/AttachmentActions/index.d.ts +2 -0
  101. package/dist/components/attachment/AttachmentContent/AttachmentContent.d.ts +3 -0
  102. package/dist/components/attachment/AttachmentContent/AttachmentContent.js +23 -0
  103. package/dist/components/attachment/AttachmentContent/AttachmentContent.js.map +1 -0
  104. package/dist/components/attachment/AttachmentContent/AttachmentContent.types.d.ts +2 -0
  105. package/dist/components/attachment/AttachmentContent/index.d.ts +2 -0
  106. package/dist/components/attachment/AttachmentDescription/AttachmentDescription.d.ts +3 -0
  107. package/dist/components/attachment/AttachmentDescription/AttachmentDescription.js +24 -0
  108. package/dist/components/attachment/AttachmentDescription/AttachmentDescription.js.map +1 -0
  109. package/dist/components/attachment/AttachmentDescription/AttachmentDescription.styles.d.ts +1 -0
  110. package/dist/components/attachment/AttachmentDescription/AttachmentDescription.styles.js +6 -0
  111. package/dist/components/attachment/AttachmentDescription/AttachmentDescription.styles.js.map +1 -0
  112. package/dist/components/attachment/AttachmentDescription/AttachmentDescription.types.d.ts +2 -0
  113. package/dist/components/attachment/AttachmentDescription/index.d.ts +2 -0
  114. package/dist/components/attachment/AttachmentGroup/AttachmentGroup.d.ts +3 -0
  115. package/dist/components/attachment/AttachmentGroup/AttachmentGroup.js +24 -0
  116. package/dist/components/attachment/AttachmentGroup/AttachmentGroup.js.map +1 -0
  117. package/dist/components/attachment/AttachmentGroup/AttachmentGroup.styles.d.ts +1 -0
  118. package/dist/components/attachment/AttachmentGroup/AttachmentGroup.styles.js +6 -0
  119. package/dist/components/attachment/AttachmentGroup/AttachmentGroup.styles.js.map +1 -0
  120. package/dist/components/attachment/AttachmentGroup/AttachmentGroup.types.d.ts +2 -0
  121. package/dist/components/attachment/AttachmentGroup/index.d.ts +2 -0
  122. package/dist/components/attachment/AttachmentMedia/AttachmentMedia.d.ts +3 -0
  123. package/dist/components/attachment/AttachmentMedia/AttachmentMedia.js +31 -0
  124. package/dist/components/attachment/AttachmentMedia/AttachmentMedia.js.map +1 -0
  125. package/dist/components/attachment/AttachmentMedia/AttachmentMedia.styles.d.ts +3 -0
  126. package/dist/components/attachment/AttachmentMedia/AttachmentMedia.styles.js +13 -0
  127. package/dist/components/attachment/AttachmentMedia/AttachmentMedia.styles.js.map +1 -0
  128. package/dist/components/attachment/AttachmentMedia/AttachmentMedia.types.d.ts +4 -0
  129. package/dist/components/attachment/AttachmentMedia/index.d.ts +2 -0
  130. package/dist/components/attachment/AttachmentTitle/AttachmentTitle.d.ts +3 -0
  131. package/dist/components/attachment/AttachmentTitle/AttachmentTitle.js +24 -0
  132. package/dist/components/attachment/AttachmentTitle/AttachmentTitle.js.map +1 -0
  133. package/dist/components/attachment/AttachmentTitle/AttachmentTitle.styles.d.ts +1 -0
  134. package/dist/components/attachment/AttachmentTitle/AttachmentTitle.styles.js +6 -0
  135. package/dist/components/attachment/AttachmentTitle/AttachmentTitle.styles.js.map +1 -0
  136. package/dist/components/attachment/AttachmentTitle/AttachmentTitle.types.d.ts +2 -0
  137. package/dist/components/attachment/AttachmentTitle/index.d.ts +2 -0
  138. package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.d.ts +7 -0
  139. package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.js +18 -0
  140. package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.js.map +1 -0
  141. package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.types.d.ts +5 -0
  142. package/dist/components/attachment/AttachmentTrigger/index.d.ts +2 -0
  143. package/dist/components/attachment/index.d.ts +18 -0
  144. package/dist/components/attachment/index.js +10 -0
  145. package/dist/components/avatar/Avatar/Avatar.context.js.map +1 -1
  146. package/dist/components/avatar/Avatar/Avatar.d.ts +1 -1
  147. package/dist/components/avatar/Avatar/Avatar.js.map +1 -1
  148. package/dist/components/avatar/AvatarBadge/AvatarBadge.d.ts +1 -1
  149. package/dist/components/avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  150. package/dist/components/avatar/AvatarFallback/AvatarFallback.d.ts +1 -1
  151. package/dist/components/avatar/AvatarFallback/AvatarFallback.js.map +1 -1
  152. package/dist/components/avatar/AvatarGroup/AvatarGroup.d.ts +1 -1
  153. package/dist/components/avatar/AvatarGroup/AvatarGroup.js.map +1 -1
  154. package/dist/components/avatar/AvatarGroupCount/AvatarGroupCount.d.ts +1 -1
  155. package/dist/components/avatar/AvatarGroupCount/AvatarGroupCount.js.map +1 -1
  156. package/dist/components/avatar/AvatarImage/AvatarImage.d.ts +1 -1
  157. package/dist/components/avatar/AvatarImage/AvatarImage.js.map +1 -1
  158. package/dist/components/badge/Badge.d.ts +1 -1
  159. package/dist/components/badge/Badge.js.map +1 -1
  160. package/dist/components/badge/Badge.styles.js.map +1 -1
  161. package/dist/components/breadcrumb/Breadcrumb/Breadcrumb.d.ts +1 -1
  162. package/dist/components/breadcrumb/Breadcrumb/Breadcrumb.js.map +1 -1
  163. package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.d.ts +1 -1
  164. package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.js.map +1 -1
  165. package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.styles.js.map +1 -1
  166. package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.d.ts +1 -1
  167. package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.js.map +1 -1
  168. package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.styles.js.map +1 -1
  169. package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.d.ts +1 -1
  170. package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.js.map +1 -1
  171. package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.styles.js.map +1 -1
  172. package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.d.ts +1 -1
  173. package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.js.map +1 -1
  174. package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.styles.js.map +1 -1
  175. package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.d.ts +1 -1
  176. package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.js.map +1 -1
  177. package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.styles.js.map +1 -1
  178. package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.d.ts +1 -1
  179. package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.js.map +1 -1
  180. package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.styles.js.map +1 -1
  181. package/dist/components/button/Button.d.ts +1 -1
  182. package/dist/components/button/Button.js +1 -1
  183. package/dist/components/button/Button.js.map +1 -1
  184. package/dist/components/button/Button.styles.js.map +1 -1
  185. package/dist/components/button-group/ButtonGroup/ButtonGroup.d.ts +1 -1
  186. package/dist/components/button-group/ButtonGroup/ButtonGroup.js.map +1 -1
  187. package/dist/components/button-group/ButtonGroup/ButtonGroup.styles.js.map +1 -1
  188. package/dist/components/button-group/ButtonGroupSeparator/ButtonGroupSeparator.d.ts +1 -1
  189. package/dist/components/button-group/ButtonGroupSeparator/ButtonGroupSeparator.js.map +1 -1
  190. package/dist/components/button-group/ButtonGroupSeparator/ButtonGroupSeparator.styles.js.map +1 -1
  191. package/dist/components/button-group/ButtonGroupText/ButtonGroupText.d.ts +1 -1
  192. package/dist/components/button-group/ButtonGroupText/ButtonGroupText.js.map +1 -1
  193. package/dist/components/button-group/ButtonGroupText/ButtonGroupText.styles.js.map +1 -1
  194. package/dist/components/calendar/Calendar/Calendar.js.map +1 -1
  195. package/dist/components/calendar/Calendar/Calendar.utils.js.map +1 -1
  196. package/dist/components/card/Card/Card.d.ts +1 -1
  197. package/dist/components/card/Card/Card.js.map +1 -1
  198. package/dist/components/card/Card/Card.styles.js.map +1 -1
  199. package/dist/components/card/CardAction/CardAction.d.ts +1 -1
  200. package/dist/components/card/CardAction/CardAction.js.map +1 -1
  201. package/dist/components/card/CardAction/CardAction.styles.js.map +1 -1
  202. package/dist/components/card/CardContent/CardContent.d.ts +1 -1
  203. package/dist/components/card/CardContent/CardContent.js.map +1 -1
  204. package/dist/components/card/CardContent/CardContent.styles.js.map +1 -1
  205. package/dist/components/card/CardDescription/CardDescription.d.ts +1 -1
  206. package/dist/components/card/CardDescription/CardDescription.js.map +1 -1
  207. package/dist/components/card/CardDescription/CardDescription.styles.js.map +1 -1
  208. package/dist/components/card/CardFooter/CardFooter.d.ts +1 -1
  209. package/dist/components/card/CardFooter/CardFooter.js.map +1 -1
  210. package/dist/components/card/CardFooter/CardFooter.styles.js.map +1 -1
  211. package/dist/components/card/CardHeader/CardHeader.d.ts +1 -1
  212. package/dist/components/card/CardHeader/CardHeader.js.map +1 -1
  213. package/dist/components/card/CardHeader/CardHeader.styles.js.map +1 -1
  214. package/dist/components/card/CardTitle/CardTitle.d.ts +1 -1
  215. package/dist/components/card/CardTitle/CardTitle.js.map +1 -1
  216. package/dist/components/card/CardTitle/CardTitle.styles.js.map +1 -1
  217. package/dist/components/carousel/Carousel/Carousel.context.js.map +1 -1
  218. package/dist/components/carousel/Carousel/Carousel.d.ts +1 -1
  219. package/dist/components/carousel/Carousel/Carousel.js.map +1 -1
  220. package/dist/components/carousel/Carousel/Carousel.styles.js.map +1 -1
  221. package/dist/components/carousel/Carousel/useAutoPlay.js.map +1 -1
  222. package/dist/components/carousel/Carousel/useCarousel.js.map +1 -1
  223. package/dist/components/carousel/Carousel/useKeyboardNavigation.js.map +1 -1
  224. package/dist/components/carousel/CarouselContent/CarouselContent.d.ts +1 -1
  225. package/dist/components/carousel/CarouselContent/CarouselContent.js.map +1 -1
  226. package/dist/components/carousel/CarouselContent/useItemSizeMeasure.js.map +1 -1
  227. package/dist/components/carousel/CarouselDots/CarouselDots.d.ts +1 -1
  228. package/dist/components/carousel/CarouselDots/CarouselDots.js.map +1 -1
  229. package/dist/components/carousel/CarouselItem/CarouselItem.d.ts +1 -1
  230. package/dist/components/carousel/CarouselItem/CarouselItem.js.map +1 -1
  231. package/dist/components/carousel/CarouselNext/CarouselNext.d.ts +1 -1
  232. package/dist/components/carousel/CarouselNext/CarouselNext.js.map +1 -1
  233. package/dist/components/carousel/CarouselPrevious/CarouselPrevious.d.ts +1 -1
  234. package/dist/components/carousel/CarouselPrevious/CarouselPrevious.js.map +1 -1
  235. package/dist/components/checkbox/Checkbox/Checkbox.d.ts +1 -1
  236. package/dist/components/checkbox/Checkbox/Checkbox.js.map +1 -1
  237. package/dist/components/checkbox/Checkbox/Checkbox.styles.js.map +1 -1
  238. package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.d.ts +1 -1
  239. package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.js.map +1 -1
  240. package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.styles.js.map +1 -1
  241. package/dist/components/collapsible/Collapsible/Collapsible.context.js.map +1 -1
  242. package/dist/components/collapsible/Collapsible/Collapsible.d.ts +1 -1
  243. package/dist/components/collapsible/Collapsible/Collapsible.js.map +1 -1
  244. package/dist/components/collapsible/CollapsibleContent/CollapsibleContent.d.ts +1 -1
  245. package/dist/components/collapsible/CollapsibleContent/CollapsibleContent.js.map +1 -1
  246. package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.d.ts +1 -1
  247. package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.js.map +1 -1
  248. package/dist/components/combobox/Combobox/Combobox.context.js.map +1 -1
  249. package/dist/components/combobox/Combobox/Combobox.js +50 -47
  250. package/dist/components/combobox/Combobox/Combobox.js.map +1 -1
  251. package/dist/components/combobox/Combobox/Combobox.types.d.ts +5 -0
  252. package/dist/components/combobox/ComboboxChip/ComboboxChip.js.map +1 -1
  253. package/dist/components/combobox/ComboboxChips/ComboboxChips.js.map +1 -1
  254. package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.d.ts +1 -1
  255. package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.js.map +1 -1
  256. package/dist/components/combobox/ComboboxClear/ComboboxClear.d.ts +1 -1
  257. package/dist/components/combobox/ComboboxClear/ComboboxClear.js.map +1 -1
  258. package/dist/components/combobox/ComboboxCollection/ComboboxCollection.js.map +1 -1
  259. package/dist/components/combobox/ComboboxContent/ComboboxContent.d.ts +1 -1
  260. package/dist/components/combobox/ComboboxContent/ComboboxContent.js.map +1 -1
  261. package/dist/components/combobox/ComboboxContent/ComboboxContent.utils.js.map +1 -1
  262. package/dist/components/combobox/ComboboxContent/useComboboxContent.js.map +1 -1
  263. package/dist/components/combobox/ComboboxEmpty/ComboboxEmpty.js.map +1 -1
  264. package/dist/components/combobox/ComboboxGroup/ComboboxGroup.js.map +1 -1
  265. package/dist/components/combobox/ComboboxInput/ComboboxInput.js.map +1 -1
  266. package/dist/components/combobox/ComboboxItem/ComboboxItem.js.map +1 -1
  267. package/dist/components/combobox/ComboboxLabel/ComboboxLabel.js.map +1 -1
  268. package/dist/components/combobox/ComboboxList/ComboboxList.js +13 -12
  269. package/dist/components/combobox/ComboboxList/ComboboxList.js.map +1 -1
  270. package/dist/components/combobox/ComboboxSeparator/ComboboxSeparator.d.ts +1 -1
  271. package/dist/components/combobox/ComboboxSeparator/ComboboxSeparator.js.map +1 -1
  272. package/dist/components/combobox/ComboboxTrigger/ComboboxTrigger.js.map +1 -1
  273. package/dist/components/combobox/ComboboxValue/ComboboxValue.js.map +1 -1
  274. package/dist/components/combobox/useComboboxAnchor/useComboboxAnchor.js.map +1 -1
  275. package/dist/components/context-menu/ContextMenu/ContextMenu.context.d.ts +3 -0
  276. package/dist/components/context-menu/ContextMenu/ContextMenu.context.js +12 -0
  277. package/dist/components/context-menu/ContextMenu/ContextMenu.context.js.map +1 -0
  278. package/dist/components/context-menu/ContextMenu/ContextMenu.d.ts +23 -0
  279. package/dist/components/context-menu/ContextMenu/ContextMenu.js +73 -0
  280. package/dist/components/context-menu/ContextMenu/ContextMenu.js.map +1 -0
  281. package/dist/components/context-menu/ContextMenu/ContextMenu.types.d.ts +28 -0
  282. package/dist/components/context-menu/ContextMenu/index.d.ts +3 -0
  283. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.d.ts +6 -0
  284. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.js +78 -0
  285. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.js.map +1 -0
  286. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.types.d.ts +20 -0
  287. package/dist/components/context-menu/ContextMenuCheckboxItem/index.d.ts +2 -0
  288. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.d.ts +9 -0
  289. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.js +64 -0
  290. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.js.map +1 -0
  291. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.types.d.ts +26 -0
  292. package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.d.ts +31 -0
  293. package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.js +102 -0
  294. package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.js.map +1 -0
  295. package/dist/components/context-menu/ContextMenuContent/index.d.ts +2 -0
  296. package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.d.ts +52 -0
  297. package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js +153 -0
  298. package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js.map +1 -0
  299. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.d.ts +6 -0
  300. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.js +29 -0
  301. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.js.map +1 -0
  302. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.types.d.ts +9 -0
  303. package/dist/components/context-menu/ContextMenuGroup/index.d.ts +2 -0
  304. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.d.ts +6 -0
  305. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.js +59 -0
  306. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.js.map +1 -0
  307. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.types.d.ts +22 -0
  308. package/dist/components/context-menu/ContextMenuItem/index.d.ts +2 -0
  309. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.d.ts +6 -0
  310. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.js +31 -0
  311. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.js.map +1 -0
  312. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.types.d.ts +8 -0
  313. package/dist/components/context-menu/ContextMenuLabel/index.d.ts +2 -0
  314. package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.d.ts +16 -0
  315. package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.js +18 -0
  316. package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.js.map +1 -0
  317. package/dist/components/context-menu/ContextMenuPortal/index.d.ts +2 -0
  318. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.d.ts +12 -0
  319. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.js +48 -0
  320. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.js.map +1 -0
  321. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.types.d.ts +14 -0
  322. package/dist/components/context-menu/ContextMenuRadioGroup/index.d.ts +2 -0
  323. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.d.ts +6 -0
  324. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.js +74 -0
  325. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.js.map +1 -0
  326. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.types.d.ts +16 -0
  327. package/dist/components/context-menu/ContextMenuRadioItem/index.d.ts +2 -0
  328. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.d.ts +9 -0
  329. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.js +25 -0
  330. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.js.map +1 -0
  331. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.types.d.ts +8 -0
  332. package/dist/components/context-menu/ContextMenuSeparator/index.d.ts +2 -0
  333. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.d.ts +6 -0
  334. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.js +19 -0
  335. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.js.map +1 -0
  336. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.types.d.ts +6 -0
  337. package/dist/components/context-menu/ContextMenuShortcut/index.d.ts +2 -0
  338. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.d.ts +7 -0
  339. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js +55 -0
  340. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js.map +1 -0
  341. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.types.d.ts +18 -0
  342. package/dist/components/context-menu/ContextMenuSub/index.d.ts +2 -0
  343. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.d.ts +6 -0
  344. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.js +83 -0
  345. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.js.map +1 -0
  346. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.types.d.ts +17 -0
  347. package/dist/components/context-menu/ContextMenuSubContent/index.d.ts +2 -0
  348. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.d.ts +6 -0
  349. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.js +96 -0
  350. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.js.map +1 -0
  351. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.types.d.ts +21 -0
  352. package/dist/components/context-menu/ContextMenuSubTrigger/index.d.ts +2 -0
  353. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.d.ts +13 -0
  354. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js +34 -0
  355. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js.map +1 -0
  356. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.types.d.ts +15 -0
  357. package/dist/components/context-menu/ContextMenuTrigger/index.d.ts +4 -0
  358. package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.d.ts +23 -0
  359. package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js +47 -0
  360. package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js.map +1 -0
  361. package/dist/components/context-menu/context-menu.context.d.ts +14 -0
  362. package/dist/components/context-menu/context-menu.context.js +25 -0
  363. package/dist/components/context-menu/context-menu.context.js.map +1 -0
  364. package/dist/components/context-menu/context-menu.entry.d.ts +28 -0
  365. package/dist/components/context-menu/context-menu.entry.js +31 -0
  366. package/dist/components/context-menu/context-menu.entry.js.map +1 -0
  367. package/dist/components/context-menu/context-menu.styles.d.ts +18 -0
  368. package/dist/components/context-menu/context-menu.styles.js +6 -0
  369. package/dist/components/context-menu/context-menu.styles.js.map +1 -0
  370. package/dist/components/context-menu/context-menu.types.d.ts +151 -0
  371. package/dist/components/context-menu/context-menu.utils.d.ts +28 -0
  372. package/dist/components/context-menu/context-menu.utils.js +51 -0
  373. package/dist/components/context-menu/context-menu.utils.js.map +1 -0
  374. package/dist/components/context-menu/index.d.ts +31 -0
  375. package/dist/components/context-menu/index.js +16 -0
  376. package/dist/components/data-table/createRowModel.d.ts +20 -0
  377. package/dist/components/data-table/createRowModel.js +46 -0
  378. package/dist/components/data-table/createRowModel.js.map +1 -0
  379. package/dist/components/data-table/createTable.d.ts +16 -0
  380. package/dist/components/data-table/createTable.js +94 -0
  381. package/dist/components/data-table/createTable.js.map +1 -0
  382. package/dist/components/data-table/createTableColumns.d.ts +19 -0
  383. package/dist/components/data-table/createTableColumns.js +68 -0
  384. package/dist/components/data-table/createTableColumns.js.map +1 -0
  385. package/dist/components/data-table/createTableHeaders.d.ts +10 -0
  386. package/dist/components/data-table/createTableHeaders.js +26 -0
  387. package/dist/components/data-table/createTableHeaders.js.map +1 -0
  388. package/dist/components/data-table/createTableRows.d.ts +16 -0
  389. package/dist/components/data-table/createTableRows.js +57 -0
  390. package/dist/components/data-table/createTableRows.js.map +1 -0
  391. package/dist/components/data-table/createTableSelection.d.ts +12 -0
  392. package/dist/components/data-table/createTableSelection.js +23 -0
  393. package/dist/components/data-table/createTableSelection.js.map +1 -0
  394. package/dist/components/data-table/createTableState.d.ts +16 -0
  395. package/dist/components/data-table/createTableState.js +34 -0
  396. package/dist/components/data-table/createTableState.js.map +1 -0
  397. package/dist/components/data-table/data-table.types.d.ts +123 -0
  398. package/dist/components/data-table/data-table.utils.d.ts +4 -0
  399. package/dist/components/data-table/data-table.utils.js +11 -0
  400. package/dist/components/data-table/data-table.utils.js.map +1 -0
  401. package/dist/components/data-table/index.d.ts +2 -0
  402. package/dist/components/data-table/index.js +2 -0
  403. package/dist/components/date-picker/DatePicker/DatePicker.js.map +1 -1
  404. package/dist/components/dialog/Dialog/Dialog.context.js.map +1 -1
  405. package/dist/components/dialog/Dialog/Dialog.d.ts +1 -1
  406. package/dist/components/dialog/Dialog/Dialog.js +18 -16
  407. package/dist/components/dialog/Dialog/Dialog.js.map +1 -1
  408. package/dist/components/dialog/Dialog/Dialog.types.d.ts +5 -0
  409. package/dist/components/dialog/DialogClose/DialogClose.d.ts +1 -1
  410. package/dist/components/dialog/DialogClose/DialogClose.js +5 -5
  411. package/dist/components/dialog/DialogClose/DialogClose.js.map +1 -1
  412. package/dist/components/dialog/DialogClose/DialogClose.styles.js.map +1 -1
  413. package/dist/components/dialog/DialogContent/DialogContent.context.js.map +1 -1
  414. package/dist/components/dialog/DialogContent/DialogContent.d.ts +1 -1
  415. package/dist/components/dialog/DialogContent/DialogContent.js +23 -55
  416. package/dist/components/dialog/DialogContent/DialogContent.js.map +1 -1
  417. package/dist/components/dialog/DialogContent/DialogContent.styles.js.map +1 -1
  418. package/dist/components/dialog/DialogDescription/DialogDescription.d.ts +1 -1
  419. package/dist/components/dialog/DialogDescription/DialogDescription.js.map +1 -1
  420. package/dist/components/dialog/DialogDescription/DialogDescription.styles.js.map +1 -1
  421. package/dist/components/dialog/DialogFooter/DialogFooter.d.ts +1 -1
  422. package/dist/components/dialog/DialogFooter/DialogFooter.js.map +1 -1
  423. package/dist/components/dialog/DialogFooter/DialogFooter.styles.js.map +1 -1
  424. package/dist/components/dialog/DialogHeader/DialogHeader.d.ts +1 -1
  425. package/dist/components/dialog/DialogHeader/DialogHeader.js.map +1 -1
  426. package/dist/components/dialog/DialogHeader/DialogHeader.styles.js.map +1 -1
  427. package/dist/components/dialog/DialogOverlay/DialogOverlay.d.ts +1 -1
  428. package/dist/components/dialog/DialogOverlay/DialogOverlay.js +18 -10
  429. package/dist/components/dialog/DialogOverlay/DialogOverlay.js.map +1 -1
  430. package/dist/components/dialog/DialogOverlay/DialogOverlay.styles.js.map +1 -1
  431. package/dist/components/dialog/DialogOverlay/DialogOverlay.types.d.ts +4 -1
  432. package/dist/components/dialog/DialogPortal/DialogPortal.d.ts +1 -1
  433. package/dist/components/dialog/DialogPortal/DialogPortal.js.map +1 -1
  434. package/dist/components/dialog/DialogSurface/DialogSurface.d.ts +2 -0
  435. package/dist/components/dialog/DialogSurface/DialogSurface.js +77 -0
  436. package/dist/components/dialog/DialogSurface/DialogSurface.js.map +1 -0
  437. package/dist/components/dialog/DialogSurface/DialogSurface.types.d.ts +15 -0
  438. package/dist/components/dialog/DialogSurface/index.d.ts +2 -0
  439. package/dist/components/dialog/DialogTitle/DialogTitle.d.ts +1 -1
  440. package/dist/components/dialog/DialogTitle/DialogTitle.js.map +1 -1
  441. package/dist/components/dialog/DialogTitle/DialogTitle.styles.js.map +1 -1
  442. package/dist/components/dialog/DialogTrigger/DialogTrigger.d.ts +1 -1
  443. package/dist/components/dialog/DialogTrigger/DialogTrigger.js.map +1 -1
  444. package/dist/components/dialog/DialogTrigger/useDialogTrigger.js.map +1 -1
  445. package/dist/components/dialog/index.d.ts +1 -0
  446. package/dist/components/dialog/index.js +9 -8
  447. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.d.ts +3 -0
  448. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.js +12 -0
  449. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.js.map +1 -0
  450. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.d.ts +9 -0
  451. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.js +82 -0
  452. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.js.map +1 -0
  453. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.types.d.ts +26 -0
  454. package/dist/components/dropdown-menu/DropdownMenu/index.d.ts +3 -0
  455. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.d.ts +2 -0
  456. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.js +78 -0
  457. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.js.map +1 -0
  458. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.types.d.ts +14 -0
  459. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/index.d.ts +2 -0
  460. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.d.ts +6 -0
  461. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.js +64 -0
  462. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.js.map +1 -0
  463. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.types.d.ts +13 -0
  464. package/dist/components/dropdown-menu/DropdownMenuContent/index.d.ts +2 -0
  465. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.d.ts +2 -0
  466. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.js +29 -0
  467. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.js.map +1 -0
  468. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.types.d.ts +2 -0
  469. package/dist/components/dropdown-menu/DropdownMenuGroup/index.d.ts +2 -0
  470. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.d.ts +2 -0
  471. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.js +59 -0
  472. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.js.map +1 -0
  473. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.types.d.ts +14 -0
  474. package/dist/components/dropdown-menu/DropdownMenuItem/index.d.ts +2 -0
  475. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.d.ts +2 -0
  476. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.js +31 -0
  477. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.js.map +1 -0
  478. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.types.d.ts +4 -0
  479. package/dist/components/dropdown-menu/DropdownMenuLabel/index.d.ts +2 -0
  480. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.d.ts +2 -0
  481. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.js +10 -0
  482. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.js.map +1 -0
  483. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.types.d.ts +2 -0
  484. package/dist/components/dropdown-menu/DropdownMenuPortal/index.d.ts +2 -0
  485. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.d.ts +2 -0
  486. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.js +48 -0
  487. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.js.map +1 -0
  488. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.types.d.ts +10 -0
  489. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/index.d.ts +2 -0
  490. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.d.ts +2 -0
  491. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.js +74 -0
  492. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.js.map +1 -0
  493. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.types.d.ts +11 -0
  494. package/dist/components/dropdown-menu/DropdownMenuRadioItem/index.d.ts +2 -0
  495. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.d.ts +2 -0
  496. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.js +25 -0
  497. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.js.map +1 -0
  498. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.types.d.ts +2 -0
  499. package/dist/components/dropdown-menu/DropdownMenuSeparator/index.d.ts +2 -0
  500. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.d.ts +2 -0
  501. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.js +19 -0
  502. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.js.map +1 -0
  503. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.types.d.ts +2 -0
  504. package/dist/components/dropdown-menu/DropdownMenuShortcut/index.d.ts +2 -0
  505. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.d.ts +4 -0
  506. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.js +10 -0
  507. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.js.map +1 -0
  508. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.types.d.ts +2 -0
  509. package/dist/components/dropdown-menu/DropdownMenuSub/index.d.ts +2 -0
  510. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.d.ts +2 -0
  511. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.js +82 -0
  512. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.js.map +1 -0
  513. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.types.d.ts +15 -0
  514. package/dist/components/dropdown-menu/DropdownMenuSubContent/index.d.ts +2 -0
  515. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.d.ts +2 -0
  516. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.js +96 -0
  517. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.js.map +1 -0
  518. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.types.d.ts +12 -0
  519. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/index.d.ts +2 -0
  520. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.d.ts +5 -0
  521. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js +42 -0
  522. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js.map +1 -0
  523. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.types.d.ts +4 -0
  524. package/dist/components/dropdown-menu/DropdownMenuTrigger/index.d.ts +2 -0
  525. package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.d.ts +4 -0
  526. package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js +30 -0
  527. package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js.map +1 -0
  528. package/dist/components/dropdown-menu/dropdown-menu.styles.d.ts +11 -0
  529. package/dist/components/dropdown-menu/dropdown-menu.styles.js +6 -0
  530. package/dist/components/dropdown-menu/dropdown-menu.styles.js.map +1 -0
  531. package/dist/components/dropdown-menu/index.d.ts +30 -0
  532. package/dist/components/dropdown-menu/index.js +16 -0
  533. package/dist/components/empty/Empty/Empty.d.ts +1 -1
  534. package/dist/components/empty/Empty/Empty.js.map +1 -1
  535. package/dist/components/empty/EmptyContent/EmptyContent.d.ts +1 -1
  536. package/dist/components/empty/EmptyContent/EmptyContent.js.map +1 -1
  537. package/dist/components/empty/EmptyDescription/EmptyDescription.d.ts +1 -1
  538. package/dist/components/empty/EmptyDescription/EmptyDescription.js.map +1 -1
  539. package/dist/components/empty/EmptyHeader/EmptyHeader.d.ts +1 -1
  540. package/dist/components/empty/EmptyHeader/EmptyHeader.js.map +1 -1
  541. package/dist/components/empty/EmptyMedia/EmptyMedia.d.ts +1 -1
  542. package/dist/components/empty/EmptyMedia/EmptyMedia.js.map +1 -1
  543. package/dist/components/empty/EmptyMedia/EmptyMedia.styles.js.map +1 -1
  544. package/dist/components/empty/EmptyTitle/EmptyTitle.d.ts +1 -1
  545. package/dist/components/empty/EmptyTitle/EmptyTitle.js.map +1 -1
  546. package/dist/components/field/Field/Field.d.ts +1 -1
  547. package/dist/components/field/Field/Field.js.map +1 -1
  548. package/dist/components/field/Field/Field.styles.js.map +1 -1
  549. package/dist/components/field/FieldContent/FieldContent.d.ts +1 -1
  550. package/dist/components/field/FieldContent/FieldContent.js.map +1 -1
  551. package/dist/components/field/FieldDescription/FieldDescription.d.ts +1 -1
  552. package/dist/components/field/FieldDescription/FieldDescription.js.map +1 -1
  553. package/dist/components/field/FieldError/FieldError.d.ts +1 -1
  554. package/dist/components/field/FieldError/FieldError.js.map +1 -1
  555. package/dist/components/field/FieldGroup/FieldGroup.d.ts +1 -1
  556. package/dist/components/field/FieldGroup/FieldGroup.js.map +1 -1
  557. package/dist/components/field/FieldLabel/FieldLabel.d.ts +1 -1
  558. package/dist/components/field/FieldLabel/FieldLabel.js.map +1 -1
  559. package/dist/components/field/FieldLegend/FieldLegend.d.ts +1 -1
  560. package/dist/components/field/FieldLegend/FieldLegend.js.map +1 -1
  561. package/dist/components/field/FieldSeparator/FieldSeparator.d.ts +1 -1
  562. package/dist/components/field/FieldSeparator/FieldSeparator.js.map +1 -1
  563. package/dist/components/field/FieldSet/FieldSet.d.ts +1 -1
  564. package/dist/components/field/FieldSet/FieldSet.js.map +1 -1
  565. package/dist/components/field/FieldTitle/FieldTitle.d.ts +1 -1
  566. package/dist/components/field/FieldTitle/FieldTitle.js.map +1 -1
  567. package/dist/components/image/Image.config.js.map +1 -1
  568. package/dist/components/image/Image.js.map +1 -1
  569. package/dist/components/image/Image.utils.js +2 -2
  570. package/dist/components/image/Image.utils.js.map +1 -1
  571. package/dist/components/image/ImageElement.js.map +1 -1
  572. package/dist/components/image/ImagePreload.js.map +1 -1
  573. package/dist/components/input/Input.js.map +1 -1
  574. package/dist/components/input-group/InputGroup/InputGroup.d.ts +1 -1
  575. package/dist/components/input-group/InputGroup/InputGroup.js.map +1 -1
  576. package/dist/components/input-group/InputGroupAddon/InputGroupAddon.d.ts +1 -1
  577. package/dist/components/input-group/InputGroupAddon/InputGroupAddon.js.map +1 -1
  578. package/dist/components/input-group/InputGroupAddon/InputGroupAddon.styles.js.map +1 -1
  579. package/dist/components/input-group/InputGroupButton/InputGroupButton.d.ts +1 -1
  580. package/dist/components/input-group/InputGroupButton/InputGroupButton.js.map +1 -1
  581. package/dist/components/input-group/InputGroupButton/InputGroupButton.styles.js.map +1 -1
  582. package/dist/components/input-group/InputGroupInput/InputGroupInput.d.ts +1 -1
  583. package/dist/components/input-group/InputGroupInput/InputGroupInput.js.map +1 -1
  584. package/dist/components/input-group/InputGroupText/InputGroupText.d.ts +1 -1
  585. package/dist/components/input-group/InputGroupText/InputGroupText.js.map +1 -1
  586. package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.d.ts +1 -1
  587. package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.js.map +1 -1
  588. package/dist/components/item/Item/Item.d.ts +1 -1
  589. package/dist/components/item/Item/Item.js.map +1 -1
  590. package/dist/components/item/Item/Item.styles.js.map +1 -1
  591. package/dist/components/item/ItemActions/ItemActions.d.ts +1 -1
  592. package/dist/components/item/ItemActions/ItemActions.js.map +1 -1
  593. package/dist/components/item/ItemContent/ItemContent.d.ts +1 -1
  594. package/dist/components/item/ItemContent/ItemContent.js.map +1 -1
  595. package/dist/components/item/ItemDescription/ItemDescription.d.ts +1 -1
  596. package/dist/components/item/ItemDescription/ItemDescription.js.map +1 -1
  597. package/dist/components/item/ItemFooter/ItemFooter.d.ts +1 -1
  598. package/dist/components/item/ItemFooter/ItemFooter.js.map +1 -1
  599. package/dist/components/item/ItemGroup/ItemGroup.d.ts +1 -1
  600. package/dist/components/item/ItemGroup/ItemGroup.js.map +1 -1
  601. package/dist/components/item/ItemHeader/ItemHeader.d.ts +1 -1
  602. package/dist/components/item/ItemHeader/ItemHeader.js.map +1 -1
  603. package/dist/components/item/ItemMedia/ItemMedia.d.ts +1 -1
  604. package/dist/components/item/ItemMedia/ItemMedia.js.map +1 -1
  605. package/dist/components/item/ItemMedia/ItemMedia.styles.js.map +1 -1
  606. package/dist/components/item/ItemSeparator/ItemSeparator.d.ts +1 -1
  607. package/dist/components/item/ItemSeparator/ItemSeparator.js.map +1 -1
  608. package/dist/components/item/ItemTitle/ItemTitle.d.ts +1 -1
  609. package/dist/components/item/ItemTitle/ItemTitle.js.map +1 -1
  610. package/dist/components/kbd/Kbd.d.ts +2 -2
  611. package/dist/components/kbd/Kbd.js.map +1 -1
  612. package/dist/components/label/Label.d.ts +1 -1
  613. package/dist/components/label/Label.js.map +1 -1
  614. package/dist/components/number-input/NumberInput/NumberInput.d.ts +19 -0
  615. package/dist/components/number-input/NumberInput/NumberInput.js +153 -0
  616. package/dist/components/number-input/NumberInput/NumberInput.js.map +1 -0
  617. package/dist/components/number-input/NumberInput/NumberInput.types.d.ts +41 -0
  618. package/dist/components/number-input/NumberInput/NumberInput.utils.d.ts +10 -0
  619. package/dist/components/number-input/NumberInput/NumberInput.utils.js +24 -0
  620. package/dist/components/number-input/NumberInput/NumberInput.utils.js.map +1 -0
  621. package/dist/components/number-input/NumberInput/create-change-event-details.d.ts +8 -0
  622. package/dist/components/number-input/NumberInput/create-change-event-details.js +25 -0
  623. package/dist/components/number-input/NumberInput/create-change-event-details.js.map +1 -0
  624. package/dist/components/number-input/NumberInput/index.d.ts +2 -0
  625. package/dist/components/number-input/index.d.ts +2 -0
  626. package/dist/components/number-input/index.js +2 -0
  627. package/dist/components/pagination/Pagination/Pagination.d.ts +1 -1
  628. package/dist/components/pagination/Pagination/Pagination.js.map +1 -1
  629. package/dist/components/pagination/PaginationContent/PaginationContent.d.ts +1 -1
  630. package/dist/components/pagination/PaginationContent/PaginationContent.js.map +1 -1
  631. package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.d.ts +1 -1
  632. package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.js.map +1 -1
  633. package/dist/components/pagination/PaginationItem/PaginationItem.d.ts +1 -1
  634. package/dist/components/pagination/PaginationItem/PaginationItem.js.map +1 -1
  635. package/dist/components/pagination/PaginationLink/PaginationLink.d.ts +1 -1
  636. package/dist/components/pagination/PaginationLink/PaginationLink.js +1 -1
  637. package/dist/components/pagination/PaginationLink/PaginationLink.js.map +1 -1
  638. package/dist/components/pagination/PaginationNext/PaginationNext.d.ts +1 -1
  639. package/dist/components/pagination/PaginationNext/PaginationNext.js.map +1 -1
  640. package/dist/components/pagination/PaginationPrevious/PaginationPrevious.d.ts +1 -1
  641. package/dist/components/pagination/PaginationPrevious/PaginationPrevious.js.map +1 -1
  642. package/dist/components/popover/Popover/Popover.context.js.map +1 -1
  643. package/dist/components/popover/Popover/Popover.js +25 -22
  644. package/dist/components/popover/Popover/Popover.js.map +1 -1
  645. package/dist/components/popover/Popover/Popover.types.d.ts +5 -0
  646. package/dist/components/popover/PopoverContent/PopoverContent.d.ts +1 -1
  647. package/dist/components/popover/PopoverContent/PopoverContent.js.map +1 -1
  648. package/dist/components/popover/PopoverContent/PopoverContent.utils.js.map +1 -1
  649. package/dist/components/popover/PopoverContent/usePopoverContent.js.map +1 -1
  650. package/dist/components/popover/PopoverDescription/PopoverDescription.d.ts +1 -1
  651. package/dist/components/popover/PopoverDescription/PopoverDescription.js.map +1 -1
  652. package/dist/components/popover/PopoverHeader/PopoverHeader.d.ts +1 -1
  653. package/dist/components/popover/PopoverHeader/PopoverHeader.js.map +1 -1
  654. package/dist/components/popover/PopoverTitle/PopoverTitle.d.ts +1 -1
  655. package/dist/components/popover/PopoverTitle/PopoverTitle.js.map +1 -1
  656. package/dist/components/popover/PopoverTrigger/PopoverTrigger.d.ts +1 -1
  657. package/dist/components/popover/PopoverTrigger/PopoverTrigger.js.map +1 -1
  658. package/dist/components/popover/PopoverTrigger/usePopoverTrigger.js.map +1 -1
  659. package/dist/components/progress/Progress/Progress.context.js.map +1 -1
  660. package/dist/components/progress/Progress/Progress.d.ts +1 -1
  661. package/dist/components/progress/Progress/Progress.js.map +1 -1
  662. package/dist/components/progress/Progress/Progress.styles.js.map +1 -1
  663. package/dist/components/progress/ProgressIndicator/ProgressIndicator.d.ts +1 -1
  664. package/dist/components/progress/ProgressIndicator/ProgressIndicator.js.map +1 -1
  665. package/dist/components/progress/ProgressIndicator/ProgressIndicator.styles.js.map +1 -1
  666. package/dist/components/progress/ProgressLabel/ProgressLabel.d.ts +1 -1
  667. package/dist/components/progress/ProgressLabel/ProgressLabel.js.map +1 -1
  668. package/dist/components/progress/ProgressLabel/ProgressLabel.styles.js.map +1 -1
  669. package/dist/components/progress/ProgressTrack/ProgressTrack.d.ts +1 -1
  670. package/dist/components/progress/ProgressTrack/ProgressTrack.js.map +1 -1
  671. package/dist/components/progress/ProgressTrack/ProgressTrack.styles.js.map +1 -1
  672. package/dist/components/progress/ProgressValue/ProgressValue.d.ts +1 -1
  673. package/dist/components/progress/ProgressValue/ProgressValue.js.map +1 -1
  674. package/dist/components/progress/ProgressValue/ProgressValue.styles.js.map +1 -1
  675. package/dist/components/radio-group/RadioGroup/RadioGroup.context.js.map +1 -1
  676. package/dist/components/radio-group/RadioGroup/RadioGroup.js.map +1 -1
  677. package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.d.ts +1 -1
  678. package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.js.map +1 -1
  679. package/dist/components/scroll-area/ScrollArea/ScrollArea.context.js.map +1 -1
  680. package/dist/components/scroll-area/ScrollArea/ScrollArea.d.ts +1 -1
  681. package/dist/components/scroll-area/ScrollArea/ScrollArea.js.map +1 -1
  682. package/dist/components/scroll-area/ScrollArea/ScrollArea.utils.js.map +1 -1
  683. package/dist/components/scroll-area/ScrollBar/ScrollBar.d.ts +1 -1
  684. package/dist/components/scroll-area/ScrollBar/ScrollBar.js.map +1 -1
  685. package/dist/components/scroll-arrows/ScrollArrowButton.d.ts +9 -0
  686. package/dist/components/scroll-arrows/ScrollArrowButton.js +51 -0
  687. package/dist/components/scroll-arrows/ScrollArrowButton.js.map +1 -0
  688. package/dist/components/scroll-arrows/ScrollArrows.d.ts +8 -0
  689. package/dist/components/scroll-arrows/ScrollArrows.js +35 -0
  690. package/dist/components/scroll-arrows/ScrollArrows.js.map +1 -0
  691. package/dist/components/scroll-arrows/ScrollArrows.types.d.ts +17 -0
  692. package/dist/components/scroll-arrows/index.d.ts +2 -0
  693. package/dist/components/scroll-arrows/index.js +2 -0
  694. package/dist/components/select/Select/Select.context.js.map +1 -1
  695. package/dist/components/select/Select/Select.js +36 -33
  696. package/dist/components/select/Select/Select.js.map +1 -1
  697. package/dist/components/select/Select/Select.types.d.ts +5 -0
  698. package/dist/components/select/SelectContent/SelectContent.d.ts +1 -1
  699. package/dist/components/select/SelectContent/SelectContent.js +45 -40
  700. package/dist/components/select/SelectContent/SelectContent.js.map +1 -1
  701. package/dist/components/select/SelectContent/SelectContent.utils.js.map +1 -1
  702. package/dist/components/select/SelectContent/useSelectContent.js.map +1 -1
  703. package/dist/components/select/SelectGroup/SelectGroup.d.ts +1 -1
  704. package/dist/components/select/SelectGroup/SelectGroup.js.map +1 -1
  705. package/dist/components/select/SelectItem/SelectItem.d.ts +1 -1
  706. package/dist/components/select/SelectItem/SelectItem.js.map +1 -1
  707. package/dist/components/select/SelectItem/useSelectItem.js.map +1 -1
  708. package/dist/components/select/SelectLabel/SelectLabel.d.ts +1 -1
  709. package/dist/components/select/SelectLabel/SelectLabel.js.map +1 -1
  710. package/dist/components/select/SelectSeparator/SelectSeparator.d.ts +1 -1
  711. package/dist/components/select/SelectSeparator/SelectSeparator.js.map +1 -1
  712. package/dist/components/select/SelectTrigger/SelectTrigger.d.ts +1 -1
  713. package/dist/components/select/SelectTrigger/SelectTrigger.js.map +1 -1
  714. package/dist/components/select/SelectTrigger/useSelectTrigger.js.map +1 -1
  715. package/dist/components/select/SelectValue/SelectValue.d.ts +1 -1
  716. package/dist/components/select/SelectValue/SelectValue.js.map +1 -1
  717. package/dist/components/separator/Separator.d.ts +1 -1
  718. package/dist/components/separator/Separator.js.map +1 -1
  719. package/dist/components/separator/Separator.styles.js.map +1 -1
  720. package/dist/components/sidebar/Sidebar/Sidebar.d.ts +1 -1
  721. package/dist/components/sidebar/Sidebar/Sidebar.js.map +1 -1
  722. package/dist/components/sidebar/SidebarContent/SidebarContent.d.ts +1 -1
  723. package/dist/components/sidebar/SidebarContent/SidebarContent.js.map +1 -1
  724. package/dist/components/sidebar/SidebarFooter/SidebarFooter.d.ts +1 -1
  725. package/dist/components/sidebar/SidebarFooter/SidebarFooter.js.map +1 -1
  726. package/dist/components/sidebar/SidebarGroup/SidebarGroup.d.ts +1 -1
  727. package/dist/components/sidebar/SidebarGroup/SidebarGroup.js.map +1 -1
  728. package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.d.ts +1 -1
  729. package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.js.map +1 -1
  730. package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.d.ts +1 -1
  731. package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.js.map +1 -1
  732. package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.d.ts +1 -1
  733. package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.js.map +1 -1
  734. package/dist/components/sidebar/SidebarHeader/SidebarHeader.d.ts +1 -1
  735. package/dist/components/sidebar/SidebarHeader/SidebarHeader.js.map +1 -1
  736. package/dist/components/sidebar/SidebarInput/SidebarInput.d.ts +1 -1
  737. package/dist/components/sidebar/SidebarInput/SidebarInput.js.map +1 -1
  738. package/dist/components/sidebar/SidebarInset/SidebarInset.d.ts +1 -1
  739. package/dist/components/sidebar/SidebarInset/SidebarInset.js.map +1 -1
  740. package/dist/components/sidebar/SidebarMenu/SidebarMenu.d.ts +1 -1
  741. package/dist/components/sidebar/SidebarMenu/SidebarMenu.js.map +1 -1
  742. package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.d.ts +1 -1
  743. package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.js.map +1 -1
  744. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.d.ts +1 -1
  745. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.js.map +1 -1
  746. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.styles.js.map +1 -1
  747. package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.d.ts +1 -1
  748. package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.js.map +1 -1
  749. package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.d.ts +1 -1
  750. package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.js.map +1 -1
  751. package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.d.ts +1 -1
  752. package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.js.map +1 -1
  753. package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.d.ts +1 -1
  754. package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.js.map +1 -1
  755. package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.d.ts +1 -1
  756. package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.js.map +1 -1
  757. package/dist/components/sidebar/SidebarProvider/SidebarProvider.consts.js.map +1 -1
  758. package/dist/components/sidebar/SidebarProvider/SidebarProvider.context.js.map +1 -1
  759. package/dist/components/sidebar/SidebarProvider/SidebarProvider.d.ts +1 -1
  760. package/dist/components/sidebar/SidebarProvider/SidebarProvider.js.map +1 -1
  761. package/dist/components/sidebar/SidebarRail/SidebarRail.d.ts +1 -1
  762. package/dist/components/sidebar/SidebarRail/SidebarRail.js.map +1 -1
  763. package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.d.ts +1 -1
  764. package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.js.map +1 -1
  765. package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.d.ts +1 -1
  766. package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.js.map +1 -1
  767. package/dist/components/skeleton/Skeleton.d.ts +1 -1
  768. package/dist/components/skeleton/Skeleton.js.map +1 -1
  769. package/dist/components/slider/Slider/Slider.context.js.map +1 -1
  770. package/dist/components/slider/Slider/Slider.d.ts +1 -1
  771. package/dist/components/slider/Slider/Slider.js.map +1 -1
  772. package/dist/components/slider/Slider/Slider.styles.js.map +1 -1
  773. package/dist/components/slider/Slider/useSlider.js.map +1 -1
  774. package/dist/components/slider/SliderControl/SliderControl.d.ts +1 -1
  775. package/dist/components/slider/SliderControl/SliderControl.js.map +1 -1
  776. package/dist/components/slider/SliderControl/SliderControl.styles.js.map +1 -1
  777. package/dist/components/slider/SliderControl/useSliderControl.js.map +1 -1
  778. package/dist/components/slider/SliderIndicator/SliderIndicator.d.ts +1 -1
  779. package/dist/components/slider/SliderIndicator/SliderIndicator.js.map +1 -1
  780. package/dist/components/slider/SliderIndicator/SliderIndicator.styles.js.map +1 -1
  781. package/dist/components/slider/SliderIndicator/useSliderIndicator.js.map +1 -1
  782. package/dist/components/slider/SliderThumb/SliderThumb.d.ts +1 -1
  783. package/dist/components/slider/SliderThumb/SliderThumb.js.map +1 -1
  784. package/dist/components/slider/SliderThumb/SliderThumb.styles.js.map +1 -1
  785. package/dist/components/slider/SliderThumb/useSliderThumb.js.map +1 -1
  786. package/dist/components/slider/SliderTrack/SliderTrack.d.ts +1 -1
  787. package/dist/components/slider/SliderTrack/SliderTrack.js.map +1 -1
  788. package/dist/components/slider/SliderTrack/SliderTrack.styles.js.map +1 -1
  789. package/dist/components/spinner/Spinner.d.ts +1 -1
  790. package/dist/components/spinner/Spinner.js.map +1 -1
  791. package/dist/components/spinner/Spinner.styles.js.map +1 -1
  792. package/dist/components/switch/Switch.d.ts +1 -1
  793. package/dist/components/switch/Switch.js.map +1 -1
  794. package/dist/components/switch/Switch.styles.js.map +1 -1
  795. package/dist/components/table/Table/Table.d.ts +3 -0
  796. package/dist/components/table/Table/Table.js +24 -0
  797. package/dist/components/table/Table/Table.js.map +1 -0
  798. package/dist/components/table/Table/Table.types.d.ts +2 -0
  799. package/dist/components/table/Table/index.d.ts +2 -0
  800. package/dist/components/table/TableBody/TableBody.d.ts +2 -0
  801. package/dist/components/table/TableBody/TableBody.js +24 -0
  802. package/dist/components/table/TableBody/TableBody.js.map +1 -0
  803. package/dist/components/table/TableBody/TableBody.types.d.ts +2 -0
  804. package/dist/components/table/TableBody/index.d.ts +2 -0
  805. package/dist/components/table/TableCaption/TableCaption.d.ts +2 -0
  806. package/dist/components/table/TableCaption/TableCaption.js +24 -0
  807. package/dist/components/table/TableCaption/TableCaption.js.map +1 -0
  808. package/dist/components/table/TableCaption/TableCaption.types.d.ts +2 -0
  809. package/dist/components/table/TableCaption/index.d.ts +2 -0
  810. package/dist/components/table/TableCell/TableCell.d.ts +2 -0
  811. package/dist/components/table/TableCell/TableCell.js +24 -0
  812. package/dist/components/table/TableCell/TableCell.js.map +1 -0
  813. package/dist/components/table/TableCell/TableCell.types.d.ts +2 -0
  814. package/dist/components/table/TableCell/index.d.ts +2 -0
  815. package/dist/components/table/TableFooter/TableFooter.d.ts +2 -0
  816. package/dist/components/table/TableFooter/TableFooter.js +24 -0
  817. package/dist/components/table/TableFooter/TableFooter.js.map +1 -0
  818. package/dist/components/table/TableFooter/TableFooter.types.d.ts +2 -0
  819. package/dist/components/table/TableFooter/index.d.ts +2 -0
  820. package/dist/components/table/TableHead/TableHead.d.ts +2 -0
  821. package/dist/components/table/TableHead/TableHead.js +24 -0
  822. package/dist/components/table/TableHead/TableHead.js.map +1 -0
  823. package/dist/components/table/TableHead/TableHead.types.d.ts +2 -0
  824. package/dist/components/table/TableHead/index.d.ts +2 -0
  825. package/dist/components/table/TableHeader/TableHeader.d.ts +2 -0
  826. package/dist/components/table/TableHeader/TableHeader.js +24 -0
  827. package/dist/components/table/TableHeader/TableHeader.js.map +1 -0
  828. package/dist/components/table/TableHeader/TableHeader.types.d.ts +2 -0
  829. package/dist/components/table/TableHeader/index.d.ts +2 -0
  830. package/dist/components/table/TableRow/TableRow.d.ts +2 -0
  831. package/dist/components/table/TableRow/TableRow.js +24 -0
  832. package/dist/components/table/TableRow/TableRow.js.map +1 -0
  833. package/dist/components/table/TableRow/TableRow.types.d.ts +2 -0
  834. package/dist/components/table/TableRow/index.d.ts +2 -0
  835. package/dist/components/table/index.d.ts +16 -0
  836. package/dist/components/table/index.js +9 -0
  837. package/dist/components/tabs/Tabs/Tabs.context.d.ts +1 -1
  838. package/dist/components/tabs/Tabs/Tabs.context.js.map +1 -1
  839. package/dist/components/tabs/Tabs/Tabs.d.ts +1 -1
  840. package/dist/components/tabs/Tabs/Tabs.js.map +1 -1
  841. package/dist/components/tabs/Tabs/call-event-handler.js.map +1 -1
  842. package/dist/components/tabs/Tabs/useTabsKeyboard.js.map +1 -1
  843. package/dist/components/tabs/TabsContent/TabsContent.js.map +1 -1
  844. package/dist/components/tabs/TabsList/TabsList.context.js.map +1 -1
  845. package/dist/components/tabs/TabsList/TabsList.d.ts +1 -1
  846. package/dist/components/tabs/TabsList/TabsList.js.map +1 -1
  847. package/dist/components/tabs/TabsList/TabsList.styles.js.map +1 -1
  848. package/dist/components/tabs/TabsTrigger/TabsTrigger.d.ts +1 -1
  849. package/dist/components/tabs/TabsTrigger/TabsTrigger.js.map +1 -1
  850. package/dist/components/tabs/TabsTrigger/TabsTrigger.styles.js.map +1 -1
  851. package/dist/components/textarea/Textarea.d.ts +1 -1
  852. package/dist/components/textarea/Textarea.js.map +1 -1
  853. package/dist/components/time-picker/TimePicker/TimePicker.context.d.ts +29 -0
  854. package/dist/components/time-picker/TimePicker/TimePicker.context.js +49 -0
  855. package/dist/components/time-picker/TimePicker/TimePicker.context.js.map +1 -0
  856. package/dist/components/time-picker/TimePicker/TimePicker.d.ts +23 -0
  857. package/dist/components/time-picker/TimePicker/TimePicker.js +52 -0
  858. package/dist/components/time-picker/TimePicker/TimePicker.js.map +1 -0
  859. package/dist/components/time-picker/TimePicker/TimePicker.types.d.ts +91 -0
  860. package/dist/components/time-picker/TimePicker/create-change-event-details.d.ts +8 -0
  861. package/dist/components/time-picker/TimePicker/create-change-event-details.js +25 -0
  862. package/dist/components/time-picker/TimePicker/create-change-event-details.js.map +1 -0
  863. package/dist/components/time-picker/TimePicker/index.d.ts +4 -0
  864. package/dist/components/time-picker/TimePicker/time-picker.utils.d.ts +28 -0
  865. package/dist/components/time-picker/TimePicker/time-picker.utils.js +103 -0
  866. package/dist/components/time-picker/TimePicker/time-picker.utils.js.map +1 -0
  867. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.d.ts +10 -0
  868. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js +60 -0
  869. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js.map +1 -0
  870. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.types.d.ts +8 -0
  871. package/dist/components/time-picker/TimePickerColumn/index.d.ts +2 -0
  872. package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.d.ts +16 -0
  873. package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js +75 -0
  874. package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js.map +1 -0
  875. package/dist/components/time-picker/TimePickerContent/TimePickerContent.d.ts +7 -0
  876. package/dist/components/time-picker/TimePickerContent/TimePickerContent.js +48 -0
  877. package/dist/components/time-picker/TimePickerContent/TimePickerContent.js.map +1 -0
  878. package/dist/components/time-picker/TimePickerContent/TimePickerContent.types.d.ts +11 -0
  879. package/dist/components/time-picker/TimePickerContent/index.d.ts +2 -0
  880. package/dist/components/time-picker/TimePickerOption/TimePickerOption.d.ts +9 -0
  881. package/dist/components/time-picker/TimePickerOption/TimePickerOption.js +52 -0
  882. package/dist/components/time-picker/TimePickerOption/TimePickerOption.js.map +1 -0
  883. package/dist/components/time-picker/TimePickerOption/TimePickerOption.types.d.ts +11 -0
  884. package/dist/components/time-picker/TimePickerOption/index.d.ts +2 -0
  885. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.d.ts +9 -0
  886. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.js +37 -0
  887. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.js.map +1 -0
  888. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.types.d.ts +5 -0
  889. package/dist/components/time-picker/TimePickerTrigger/index.d.ts +2 -0
  890. package/dist/components/time-picker/index.d.ts +10 -0
  891. package/dist/components/time-picker/index.js +7 -0
  892. package/dist/components/toast/Toast/Toast.js.map +1 -1
  893. package/dist/components/toast/Toast/Toast.styles.js.map +1 -1
  894. package/dist/components/toast/Toast/Toast.types.js.map +1 -1
  895. package/dist/components/toast/Toaster/Toaster.js.map +1 -1
  896. package/dist/components/toast/Toaster/Toaster.styles.js.map +1 -1
  897. package/dist/components/toast/Toaster/Toaster.utils.js.map +1 -1
  898. package/dist/components/toast/state/toast.js.map +1 -1
  899. package/dist/components/toggle/Toggle/Toggle.js.map +1 -1
  900. package/dist/components/toggle/Toggle/Toggle.styles.js.map +1 -1
  901. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.context.js.map +1 -1
  902. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.js.map +1 -1
  903. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.styles.js.map +1 -1
  904. package/dist/components/toggle-group/ToggleGroup/create-change-event-details.js.map +1 -1
  905. package/dist/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.js.map +1 -1
  906. package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.js.map +1 -1
  907. package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.styles.js.map +1 -1
  908. package/dist/components/toggle-group/call-event-handler.js.map +1 -1
  909. package/dist/components/tooltip/Tooltip/Tooltip.context.js.map +1 -1
  910. package/dist/components/tooltip/Tooltip/Tooltip.js.map +1 -1
  911. package/dist/components/tooltip/TooltipArrow/TooltipArrow.d.ts +1 -1
  912. package/dist/components/tooltip/TooltipArrow/TooltipArrow.js.map +1 -1
  913. package/dist/components/tooltip/TooltipContent/TooltipContent.context.js.map +1 -1
  914. package/dist/components/tooltip/TooltipContent/TooltipContent.d.ts +1 -1
  915. package/dist/components/tooltip/TooltipContent/TooltipContent.js.map +1 -1
  916. package/dist/components/tooltip/TooltipContent/TooltipContent.utils.js.map +1 -1
  917. package/dist/components/tooltip/TooltipContent/useTooltipContent.js.map +1 -1
  918. package/dist/components/tooltip/TooltipGroup/TooltipGroup.context.js.map +1 -1
  919. package/dist/components/tooltip/TooltipGroup/TooltipGroup.d.ts +1 -1
  920. package/dist/components/tooltip/TooltipGroup/TooltipGroup.js.map +1 -1
  921. package/dist/components/tooltip/TooltipProvider/TooltipProvider.context.js.map +1 -1
  922. package/dist/components/tooltip/TooltipProvider/TooltipProvider.js.map +1 -1
  923. package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.d.ts +1 -1
  924. package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.js.map +1 -1
  925. package/dist/components/tooltip/TooltipTrigger/useTooltipTrigger.js.map +1 -1
  926. package/dist/hooks/index.d.ts +2 -0
  927. package/dist/hooks/index.js +3 -1
  928. package/dist/hooks/useFontLoader.js.map +1 -1
  929. package/dist/hooks/useScrollEdges.d.ts +16 -0
  930. package/dist/hooks/useScrollEdges.js +34 -0
  931. package/dist/hooks/useScrollEdges.js.map +1 -0
  932. package/dist/hooks/useScrollLock.d.ts +16 -0
  933. package/dist/hooks/useScrollLock.js +61 -0
  934. package/dist/hooks/useScrollLock.js.map +1 -0
  935. package/dist/index.d.ts +8 -0
  936. package/dist/index.js +251 -194
  937. package/dist/lib/positioner/auto-update.js.map +1 -1
  938. package/dist/lib/positioner/core/compute-position.js.map +1 -1
  939. package/dist/lib/positioner/core/placement.js.map +1 -1
  940. package/dist/lib/positioner/create-positioner.js.map +1 -1
  941. package/dist/lib/positioner/middleware/arrow.js.map +1 -1
  942. package/dist/lib/positioner/middleware/containing-block-offset.js.map +1 -1
  943. package/dist/lib/positioner/middleware/flip.js.map +1 -1
  944. package/dist/lib/positioner/middleware/hide.js.map +1 -1
  945. package/dist/lib/positioner/middleware/offset.js.map +1 -1
  946. package/dist/lib/positioner/middleware/shift.js.map +1 -1
  947. package/dist/lib/positioner/middleware/size.js.map +1 -1
  948. package/dist/lib/positioner/utils/dom.js.map +1 -1
  949. package/dist/lib/positioner/virtual-element.js +18 -0
  950. package/dist/lib/positioner/virtual-element.js.map +1 -0
  951. package/dist/ui.css +1 -1
  952. package/dist/utils/clsx.js.map +1 -1
  953. package/dist/utils/logger.js.map +1 -1
  954. package/dist/utils/ref.js.map +1 -1
  955. package/dist/utils/warn-once.js.map +1 -1
  956. package/package.json +6 -6
  957. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.d.ts +0 -10
  958. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js +0 -11
  959. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js.map +0 -1
  960. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.d.ts +0 -8
  961. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js +0 -11
  962. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js.map +0 -1
  963. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.d.ts +0 -2
  964. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js +0 -6
  965. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js.map +0 -1
  966. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.d.ts +0 -2
  967. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js +0 -26
  968. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"placement.js","names":[],"sources":["../../../../src/lib/positioner/core/placement.ts"],"sourcesContent":["import type {\n Alignment,\n ElementRects,\n Placement,\n Side,\n Coords,\n} from \"../types\";\n\nexport function getSide(placement: Placement): Side {\n return placement.split(\"-\")[0] as Side;\n}\n\nexport function getAlignment(placement: Placement): Alignment | undefined {\n return placement.split(\"-\")[1] as Alignment | undefined;\n}\n\nexport function isVerticalSide(side: Side): boolean {\n return side === \"top\" || side === \"bottom\";\n}\n\nexport function getOppositeSide(side: Side): Side {\n const map: Record<Side, Side> = {\n top: \"bottom\",\n bottom: \"top\",\n left: \"right\",\n right: \"left\",\n };\n return map[side];\n}\n\nexport function getOppositePlacement(placement: Placement): Placement {\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const opposite = getOppositeSide(side);\n return (alignment ? `${opposite}-${alignment}` : opposite) as Placement;\n}\n\n/** 同一条边上,start <-> end 互换(用于 shift 后仍溢出时的对齐翻转) */\nexport function getOppositeAlignmentPlacement(placement: Placement): Placement {\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n if (!alignment) return placement;\n const opposite = alignment === \"start\" ? \"end\" : \"start\";\n return `${side}-${opposite}` as Placement;\n}\n\n/**\n * 根据 reference / floating 的矩形与 placement,计算 floating 左上角坐标。\n * 注意:这里只做“理想坐标”计算,不做视口裁剪,裁剪交给 shift middleware。\n */\nexport function computeCoordsFromPlacement(\n rects: ElementRects,\n placement: Placement,\n): Coords {\n const { reference, floating } = rects;\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const vertical = isVerticalSide(side);\n\n const centerX = reference.x + reference.width / 2 - floating.width / 2;\n const centerY = reference.y + reference.height / 2 - floating.height / 2;\n\n let x: number;\n let y: number;\n\n switch (side) {\n case \"top\":\n x = centerX;\n y = reference.y - floating.height;\n break;\n case \"bottom\":\n x = centerX;\n y = reference.y + reference.height;\n break;\n case \"left\":\n x = reference.x - floating.width;\n y = centerY;\n break;\n case \"right\":\n x = reference.x + reference.width;\n y = centerY;\n break;\n }\n\n if (alignment === \"start\") {\n if (vertical) x = reference.x;\n else y = reference.y;\n } else if (alignment === \"end\") {\n if (vertical) x = reference.x + reference.width - floating.width;\n else y = reference.y + reference.height - floating.height;\n }\n\n return { x, y };\n}\n\nexport const ALL_PLACEMENTS: Placement[] = [\n \"top\",\n \"top-start\",\n \"top-end\",\n \"right\",\n \"right-start\",\n \"right-end\",\n \"bottom\",\n \"bottom-start\",\n \"bottom-end\",\n \"left\",\n \"left-start\",\n \"left-end\",\n];\n"],"mappings":";AAQA,SAAgB,EAAQ,GAA4B;CAClD,OAAO,EAAU,MAAM,GAAG,CAAC,CAAC;AAC9B;AAEA,SAAgB,EAAa,GAA6C;CACxE,OAAO,EAAU,MAAM,GAAG,CAAC,CAAC;AAC9B;AAEA,SAAgB,EAAe,GAAqB;CAClD,OAAO,MAAS,SAAS,MAAS;AACpC;AAEA,SAAgB,EAAgB,GAAkB;CAOhD,OAAO;EALL,KAAK;EACL,QAAQ;EACR,MAAM;EACN,OAAO;CAEF,EAAI;AACb;AAEA,SAAgB,EAAqB,GAAiC;CACpE,IAAM,IAAO,EAAQ,CAAS,GACxB,IAAY,EAAa,CAAS,GAClC,IAAW,EAAgB,CAAI;CACrC,OAAQ,IAAY,GAAG,EAAS,GAAG,MAAc;AACnD;AAeA,SAAgB,EACd,GACA,GACQ;CACR,IAAM,EAAE,cAAW,gBAAa,GAC1B,IAAO,EAAQ,CAAS,GACxB,IAAY,EAAa,CAAS,GAClC,IAAW,EAAe,CAAI,GAE9B,IAAU,EAAU,IAAI,EAAU,QAAQ,IAAI,EAAS,QAAQ,GAC/D,IAAU,EAAU,IAAI,EAAU,SAAS,IAAI,EAAS,SAAS,GAEnE,GACA;CAEJ,QAAQ,GAAR;EACE,KAAK;GAEH,AADA,IAAI,GACJ,IAAI,EAAU,IAAI,EAAS;GAC3B;EACF,KAAK;GAEH,AADA,IAAI,GACJ,IAAI,EAAU,IAAI,EAAU;GAC5B;EACF,KAAK;GAEH,AADA,IAAI,EAAU,IAAI,EAAS,OAC3B,IAAI;GACJ;EACF,KAAK,SAEH,AADA,IAAI,EAAU,IAAI,EAAU,OAC5B,IAAI;CAER;CAUA,OARI,MAAc,UACZ,IAAU,IAAI,EAAU,IACvB,IAAI,EAAU,IACV,MAAc,UACnB,IAAU,IAAI,EAAU,IAAI,EAAU,QAAQ,EAAS,QACtD,IAAI,EAAU,IAAI,EAAU,SAAS,EAAS,SAG9C;EAAE;EAAG;CAAE;AAChB"}
1
+ {"version":3,"file":"placement.js","names":["getSide","placement","getAlignment","isVerticalSide","side","getOppositeSide","getOppositePlacement","alignment","opposite","computeCoordsFromPlacement","rects","vertical","centerX","reference","floating","centerY","x","y"],"sources":["../../../../src/lib/positioner/core/placement.ts"],"sourcesContent":["import type {\n Alignment,\n ElementRects,\n Placement,\n Side,\n Coords,\n} from \"../types\";\n\nexport function getSide(placement: Placement): Side {\n return placement.split(\"-\")[0] as Side;\n}\n\nexport function getAlignment(placement: Placement): Alignment | undefined {\n return placement.split(\"-\")[1] as Alignment | undefined;\n}\n\nexport function isVerticalSide(side: Side): boolean {\n return side === \"top\" || side === \"bottom\";\n}\n\nexport function getOppositeSide(side: Side): Side {\n const map: Record<Side, Side> = {\n top: \"bottom\",\n bottom: \"top\",\n left: \"right\",\n right: \"left\",\n };\n return map[side];\n}\n\nexport function getOppositePlacement(placement: Placement): Placement {\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const opposite = getOppositeSide(side);\n return (alignment ? `${opposite}-${alignment}` : opposite) as Placement;\n}\n\n/** 同一条边上,start <-> end 互换(用于 shift 后仍溢出时的对齐翻转) */\nexport function getOppositeAlignmentPlacement(placement: Placement): Placement {\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n if (!alignment) return placement;\n const opposite = alignment === \"start\" ? \"end\" : \"start\";\n return `${side}-${opposite}` as Placement;\n}\n\n/**\n * 根据 reference / floating 的矩形与 placement,计算 floating 左上角坐标。\n * 注意:这里只做“理想坐标”计算,不做视口裁剪,裁剪交给 shift middleware。\n */\nexport function computeCoordsFromPlacement(\n rects: ElementRects,\n placement: Placement,\n): Coords {\n const { reference, floating } = rects;\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const vertical = isVerticalSide(side);\n\n const centerX = reference.x + reference.width / 2 - floating.width / 2;\n const centerY = reference.y + reference.height / 2 - floating.height / 2;\n\n let x: number;\n let y: number;\n\n switch (side) {\n case \"top\":\n x = centerX;\n y = reference.y - floating.height;\n break;\n case \"bottom\":\n x = centerX;\n y = reference.y + reference.height;\n break;\n case \"left\":\n x = reference.x - floating.width;\n y = centerY;\n break;\n case \"right\":\n x = reference.x + reference.width;\n y = centerY;\n break;\n }\n\n if (alignment === \"start\") {\n if (vertical) x = reference.x;\n else y = reference.y;\n } else if (alignment === \"end\") {\n if (vertical) x = reference.x + reference.width - floating.width;\n else y = reference.y + reference.height - floating.height;\n }\n\n return { x, y };\n}\n\nexport const ALL_PLACEMENTS: Placement[] = [\n \"top\",\n \"top-start\",\n \"top-end\",\n \"right\",\n \"right-start\",\n \"right-end\",\n \"bottom\",\n \"bottom-start\",\n \"bottom-end\",\n \"left\",\n \"left-start\",\n \"left-end\",\n];\n"],"mappings":";AAQA,SAAgBA,EAAQ,GAA4B;CAClD,OAAOC,EAAU,MAAM,GAAG,CAAC,CAAC;AAC9B;AAEA,SAAgBC,EAAa,GAA6C;CACxE,OAAOD,EAAU,MAAM,GAAG,CAAC,CAAC;AAC9B;AAEA,SAAgBE,EAAe,GAAqB;CAClD,OAAOC,MAAS,SAASA,MAAS;AACpC;AAEA,SAAgBC,EAAgB,GAAkB;CAOhD,OAAO;EALL,KAAK;EACL,QAAQ;EACR,MAAM;EACN,OAAO;CAEF,EAAID;AACb;AAEA,SAAgBE,EAAqB,GAAiC;CACpE,IAAMF,IAAOJ,EAAQC,CAAS,GACxBM,IAAYL,EAAaD,CAAS,GAClCO,IAAWH,EAAgBD,CAAI;CACrC,OAAQG,IAAY,GAAGC,EAAS,GAAGD,MAAcC;AACnD;AAeA,SAAgBC,EACd,GACA,GACQ;CACR,IAAM,EAAE,cAAW,gBAAaC,GAC1BN,IAAOJ,EAAQC,CAAS,GACxBM,IAAYL,EAAaD,CAAS,GAClCU,IAAWR,EAAeC,CAAI,GAE9BQ,IAAUC,EAAU,IAAIA,EAAU,QAAQ,IAAIC,EAAS,QAAQ,GAC/DC,IAAUF,EAAU,IAAIA,EAAU,SAAS,IAAIC,EAAS,SAAS,GAEnEE,GACAC;CAEJ,QAAQb,GAAR;EACE,KAAK;GAEH,AADA,IAAIQ,GACJ,IAAIC,EAAU,IAAIC,EAAS;GAC3B;EACF,KAAK;GAEH,AADA,IAAIF,GACJ,IAAIC,EAAU,IAAIA,EAAU;GAC5B;EACF,KAAK;GAEH,AADA,IAAIA,EAAU,IAAIC,EAAS,OAC3B,IAAIC;GACJ;EACF,KAAK,SAEH,AADA,IAAIF,EAAU,IAAIA,EAAU,OAC5B,IAAIE;CAER;CAUA,OARIR,MAAc,UACZI,IAAU,IAAIE,EAAU,IACvB,IAAIA,EAAU,IACVN,MAAc,UACnBI,IAAU,IAAIE,EAAU,IAAIA,EAAU,QAAQC,EAAS,QACtD,IAAID,EAAU,IAAIA,EAAU,SAASC,EAAS,SAG9C;EAAE;EAAG;CAAE;AAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-positioner.js","names":[],"sources":["../../../src/lib/positioner/create-positioner.ts"],"sourcesContent":["import {\n createEffect,\n createMemo,\n createSignal,\n onCleanup,\n type Accessor,\n} from \"solid-js\";\nimport type {\n Middleware,\n MiddlewareData,\n Placement,\n ReferenceElement,\n Strategy,\n} from \"./types\";\nimport { computePosition } from \"./core/compute-position\";\nimport {\n autoUpdate as attachAutoUpdate,\n type AutoUpdateOptions,\n} from \"./auto-update\";\n\ntype MaybeAccessor<T> = T | Accessor<T>;\n\nfunction unwrap<T>(value: MaybeAccessor<T> | undefined, fallback: T): T {\n if (value === undefined) return fallback;\n return typeof value === \"function\" ? (value as Accessor<T>)() : value;\n}\n\nexport interface CreatePositionerOptions {\n /** 期望的初始/首选摆放位置,默认 'bottom' */\n placement?: MaybeAccessor<Placement>;\n /** 定位方式:'absolute' 需要 floating 挂在 body 下且无非 static 定位祖先;不确定就用 'fixed' */\n strategy?: MaybeAccessor<Strategy>;\n /** middleware 数组,顺序执行,如 [offset(8), flip(), shift({padding: 8})] */\n middleware?: MaybeAccessor<Middleware[]>;\n /** 是否在滚动/尺寸变化时自动重新计算,默认 true;也可传细粒度配置 */\n autoUpdate?: boolean | AutoUpdateOptions;\n}\n\nexport interface Positioner {\n /** floating 元素相对定位坐标系的 x(细粒度信号,只在数值变化时更新) */\n x: Accessor<number>;\n /** floating 元素相对定位坐标系的 y(细粒度信号,只在数值变化时更新) */\n y: Accessor<number>;\n /** 经过 middleware(如 flip)调整后的最终 placement */\n placement: Accessor<Placement>;\n /** 实际生效的定位策略 */\n strategy: Accessor<Strategy>;\n /** 各 middleware 产出的附加数据,例如 arrow 的偏移量 */\n middlewareData: Accessor<MiddlewareData>;\n /** 是否已完成至少一次定位计算,可用于首次渲染前隐藏 floating 元素避免闪烁 */\n isPositioned: Accessor<boolean>;\n /** 手动触发一次重新计算 */\n update: () => void;\n /** 可直接展开到 style 上的便捷样式对象 */\n floatingStyles: Accessor<{\n position: Strategy;\n top: string;\n left: string;\n transform: string;\n }>;\n}\n\n/**\n * Solid 的细粒度浮窗定位 primitive。\n *\n * 传入 reference / floating 两个元素访问器,返回一组独立的响应式信号\n * (x、y、placement 等分别更新,不会因为其中一个变化而让另一个也重新渲染),\n * 上层组件(tooltip / dropdown / popover)只需订阅自己关心的信号。\n *\n * @example\n * ```tsx\n * const [reference, setReference] = createSignal<HTMLElement>();\n * const [floating, setFloating] = createSignal<HTMLElement>();\n * const pos = createPositioner(reference, floating, {\n * placement: \"bottom-start\",\n * middleware: [offset(8), flip(), shift({ padding: 8 })],\n * });\n *\n * <button ref={setReference}>trigger</button>\n * <Show when={open()}>\n * <Portal>\n * <div ref={setFloating} style={pos.floatingStyles()}>内容</div>\n * </Portal>\n * </Show>\n * ```\n */\nexport function createPositioner(\n reference: Accessor<ReferenceElement | null | undefined>,\n floating: Accessor<HTMLElement | null | undefined>,\n options: CreatePositionerOptions = {},\n): Positioner {\n const [x, setX] = createSignal(0);\n const [y, setY] = createSignal(0);\n const [placement, setPlacement] = createSignal<Placement>(\n unwrap(options.placement, \"bottom\"),\n );\n const [strategy, setStrategy] = createSignal<Strategy>(\n unwrap(options.strategy, \"absolute\"),\n );\n const [middlewareData, setMiddlewareData] = createSignal<MiddlewareData>({});\n const [isPositioned, setIsPositioned] = createSignal(false);\n\n const update = () => {\n const refEl = reference();\n const floatEl = floating();\n if (!refEl || !floatEl) {\n setIsPositioned(false);\n return;\n }\n\n const result = computePosition(refEl, floatEl, {\n placement: unwrap(options.placement, \"bottom\"),\n strategy: unwrap(options.strategy, \"absolute\"),\n middleware: unwrap(options.middleware, []),\n });\n\n // 每个 setter 只有在值真正变化时才会触发下游更新(Solid 信号默认行为),\n // 这就是“细粒度”的关键:只订阅 x 的节点不会因为 middlewareData 变化而重跑。\n setX(result.x);\n setY(result.y);\n setPlacement(result.placement);\n setStrategy(result.strategy);\n setMiddlewareData(result.middlewareData);\n setIsPositioned(true);\n };\n\n createEffect(() => {\n const refEl = reference();\n const floatEl = floating();\n // 主动读取,建立依赖:placement/strategy/middleware 若是响应式访问器,\n // 变化时也会重新进入这个 effect 并重新计算 + 重新挂 autoUpdate。\n unwrap(options.placement, \"bottom\");\n unwrap(options.strategy, \"absolute\");\n unwrap(options.middleware, []);\n\n if (!refEl || !floatEl) {\n setIsPositioned(false);\n return;\n }\n\n update();\n\n if (options.autoUpdate !== false) {\n const cleanup = attachAutoUpdate(\n refEl,\n floatEl,\n update,\n typeof options.autoUpdate === \"object\" ? options.autoUpdate : {},\n );\n onCleanup(cleanup);\n }\n });\n\n const floatingStyles = createMemo(() => ({\n position: strategy(),\n top: \"0px\",\n left: \"0px\",\n // 用 transform 而非 top/left 赋值,避免触发 layout,性能更好\n transform: `translate(${Math.round(x())}px, ${Math.round(y())}px)`,\n }));\n\n return {\n x,\n y,\n placement,\n strategy,\n middlewareData,\n isPositioned,\n update,\n floatingStyles,\n };\n}\n"],"mappings":";;;;AAsBA,SAAS,EAAU,GAAqC,GAAgB;CAEtE,OADI,MAAU,KAAA,IAAkB,IACzB,OAAO,KAAU,aAAc,EAAsB,IAAI;AAClE;AA6DA,SAAgB,EACd,GACA,GACA,IAAmC,CAAC,GACxB;CACZ,IAAM,CAAC,GAAG,KAAQ,EAAa,CAAC,GAC1B,CAAC,GAAG,KAAQ,EAAa,CAAC,GAC1B,CAAC,GAAW,KAAgB,EAChC,EAAO,EAAQ,WAAW,QAAQ,CACpC,GACM,CAAC,GAAU,KAAe,EAC9B,EAAO,EAAQ,UAAU,UAAU,CACrC,GACM,CAAC,GAAgB,KAAqB,EAA6B,CAAC,CAAC,GACrE,CAAC,GAAc,KAAmB,EAAa,EAAK,GAEpD,UAAe;EACnB,IAAM,IAAQ,EAAU,GAClB,IAAU,EAAS;EACzB,IAAI,CAAC,KAAS,CAAC,GAAS;GACtB,EAAgB,EAAK;GACrB;EACF;EAEA,IAAM,IAAS,EAAgB,GAAO,GAAS;GAC7C,WAAW,EAAO,EAAQ,WAAW,QAAQ;GAC7C,UAAU,EAAO,EAAQ,UAAU,UAAU;GAC7C,YAAY,EAAO,EAAQ,YAAY,CAAC,CAAC;EAC3C,CAAC;EASD,AALA,EAAK,EAAO,CAAC,GACb,EAAK,EAAO,CAAC,GACb,EAAa,EAAO,SAAS,GAC7B,EAAY,EAAO,QAAQ,GAC3B,EAAkB,EAAO,cAAc,GACvC,EAAgB,EAAI;CACtB;CAqCA,OAnCA,QAAmB;EACjB,IAAM,IAAQ,EAAU,GAClB,IAAU,EAAS;EAOzB,IAJA,EAAO,EAAQ,WAAW,QAAQ,GAClC,EAAO,EAAQ,UAAU,UAAU,GACnC,EAAO,EAAQ,YAAY,CAAC,CAAC,GAEzB,CAAC,KAAS,CAAC,GAAS;GACtB,EAAgB,EAAK;GACrB;EACF;EAIA,IAFA,EAAO,GAEH,EAAQ,eAAe,IAAO;GAChC,IAAM,IAAU,EACd,GACA,GACA,GACA,OAAO,EAAQ,cAAe,WAAW,EAAQ,aAAa,CAAC,CACjE;GACA,EAAU,CAAO;EACnB;CACF,CAAC,GAUM;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA,gBAhBqB,SAAkB;GACvC,UAAU,EAAS;GACnB,KAAK;GACL,MAAM;GAEN,WAAW,aAAa,KAAK,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC,EAAE;EAChE,EAUE;CACF;AACF"}
1
+ {"version":3,"file":"create-positioner.js","names":["attachAutoUpdate","unwrap","value","fallback","createPositioner","x","setX","createSignal","y","setY","placement","setPlacement","options","strategy","setStrategy","middlewareData","setMiddlewareData","isPositioned","setIsPositioned","update","refEl","reference","floatEl","floating","result","computePosition","createEffect","cleanup","autoUpdate","createMemo"],"sources":["../../../src/lib/positioner/create-positioner.ts"],"sourcesContent":["import {\n createEffect,\n createMemo,\n createSignal,\n onCleanup,\n type Accessor,\n} from \"solid-js\";\nimport type {\n Middleware,\n MiddlewareData,\n Placement,\n ReferenceElement,\n Strategy,\n} from \"./types\";\nimport { computePosition } from \"./core/compute-position\";\nimport {\n autoUpdate as attachAutoUpdate,\n type AutoUpdateOptions,\n} from \"./auto-update\";\n\ntype MaybeAccessor<T> = T | Accessor<T>;\n\nfunction unwrap<T>(value: MaybeAccessor<T> | undefined, fallback: T): T {\n if (value === undefined) return fallback;\n return typeof value === \"function\" ? (value as Accessor<T>)() : value;\n}\n\nexport interface CreatePositionerOptions {\n /** 期望的初始/首选摆放位置,默认 'bottom' */\n placement?: MaybeAccessor<Placement>;\n /** 定位方式:'absolute' 需要 floating 挂在 body 下且无非 static 定位祖先;不确定就用 'fixed' */\n strategy?: MaybeAccessor<Strategy>;\n /** middleware 数组,顺序执行,如 [offset(8), flip(), shift({padding: 8})] */\n middleware?: MaybeAccessor<Middleware[]>;\n /** 是否在滚动/尺寸变化时自动重新计算,默认 true;也可传细粒度配置 */\n autoUpdate?: boolean | AutoUpdateOptions;\n}\n\nexport interface Positioner {\n /** floating 元素相对定位坐标系的 x(细粒度信号,只在数值变化时更新) */\n x: Accessor<number>;\n /** floating 元素相对定位坐标系的 y(细粒度信号,只在数值变化时更新) */\n y: Accessor<number>;\n /** 经过 middleware(如 flip)调整后的最终 placement */\n placement: Accessor<Placement>;\n /** 实际生效的定位策略 */\n strategy: Accessor<Strategy>;\n /** 各 middleware 产出的附加数据,例如 arrow 的偏移量 */\n middlewareData: Accessor<MiddlewareData>;\n /** 是否已完成至少一次定位计算,可用于首次渲染前隐藏 floating 元素避免闪烁 */\n isPositioned: Accessor<boolean>;\n /** 手动触发一次重新计算 */\n update: () => void;\n /** 可直接展开到 style 上的便捷样式对象 */\n floatingStyles: Accessor<{\n position: Strategy;\n top: string;\n left: string;\n transform: string;\n }>;\n}\n\n/**\n * Solid 的细粒度浮窗定位 primitive。\n *\n * 传入 reference / floating 两个元素访问器,返回一组独立的响应式信号\n * (x、y、placement 等分别更新,不会因为其中一个变化而让另一个也重新渲染),\n * 上层组件(tooltip / dropdown / popover)只需订阅自己关心的信号。\n *\n * @example\n * ```tsx\n * const [reference, setReference] = createSignal<HTMLElement>();\n * const [floating, setFloating] = createSignal<HTMLElement>();\n * const pos = createPositioner(reference, floating, {\n * placement: \"bottom-start\",\n * middleware: [offset(8), flip(), shift({ padding: 8 })],\n * });\n *\n * <button ref={setReference}>trigger</button>\n * <Show when={open()}>\n * <Portal>\n * <div ref={setFloating} style={pos.floatingStyles()}>内容</div>\n * </Portal>\n * </Show>\n * ```\n */\nexport function createPositioner(\n reference: Accessor<ReferenceElement | null | undefined>,\n floating: Accessor<HTMLElement | null | undefined>,\n options: CreatePositionerOptions = {},\n): Positioner {\n const [x, setX] = createSignal(0);\n const [y, setY] = createSignal(0);\n const [placement, setPlacement] = createSignal<Placement>(\n unwrap(options.placement, \"bottom\"),\n );\n const [strategy, setStrategy] = createSignal<Strategy>(\n unwrap(options.strategy, \"absolute\"),\n );\n const [middlewareData, setMiddlewareData] = createSignal<MiddlewareData>({});\n const [isPositioned, setIsPositioned] = createSignal(false);\n\n const update = () => {\n const refEl = reference();\n const floatEl = floating();\n if (!refEl || !floatEl) {\n setIsPositioned(false);\n return;\n }\n\n const result = computePosition(refEl, floatEl, {\n placement: unwrap(options.placement, \"bottom\"),\n strategy: unwrap(options.strategy, \"absolute\"),\n middleware: unwrap(options.middleware, []),\n });\n\n // 每个 setter 只有在值真正变化时才会触发下游更新(Solid 信号默认行为),\n // 这就是“细粒度”的关键:只订阅 x 的节点不会因为 middlewareData 变化而重跑。\n setX(result.x);\n setY(result.y);\n setPlacement(result.placement);\n setStrategy(result.strategy);\n setMiddlewareData(result.middlewareData);\n setIsPositioned(true);\n };\n\n createEffect(() => {\n const refEl = reference();\n const floatEl = floating();\n // 主动读取,建立依赖:placement/strategy/middleware 若是响应式访问器,\n // 变化时也会重新进入这个 effect 并重新计算 + 重新挂 autoUpdate。\n unwrap(options.placement, \"bottom\");\n unwrap(options.strategy, \"absolute\");\n unwrap(options.middleware, []);\n\n if (!refEl || !floatEl) {\n setIsPositioned(false);\n return;\n }\n\n update();\n\n if (options.autoUpdate !== false) {\n const cleanup = attachAutoUpdate(\n refEl,\n floatEl,\n update,\n typeof options.autoUpdate === \"object\" ? options.autoUpdate : {},\n );\n onCleanup(cleanup);\n }\n });\n\n const floatingStyles = createMemo(() => ({\n position: strategy(),\n top: \"0px\",\n left: \"0px\",\n // 用 transform 而非 top/left 赋值,避免触发 layout,性能更好\n transform: `translate(${Math.round(x())}px, ${Math.round(y())}px)`,\n }));\n\n return {\n x,\n y,\n placement,\n strategy,\n middlewareData,\n isPositioned,\n update,\n floatingStyles,\n };\n}\n"],"mappings":";;;;AAsBA,SAASC,EAAU,GAAqC,GAAgB;CAEtE,OADIC,MAAU,KAAA,IAAkBC,IACzB,OAAOD,KAAU,aAAcA,EAAsB,IAAIA;AAClE;AA6DA,SAAgBE,EACd,GACA,GACA,IAAmC,CAAC,GACxB;CACZ,IAAM,CAACC,GAAGC,KAAQC,EAAa,CAAC,GAC1B,CAACC,GAAGC,KAAQF,EAAa,CAAC,GAC1B,CAACG,GAAWC,KAAgBJ,EAChCN,EAAOW,EAAQ,WAAW,QAAQ,CACpC,GACM,CAACC,GAAUC,KAAeP,EAC9BN,EAAOW,EAAQ,UAAU,UAAU,CACrC,GACM,CAACG,GAAgBC,KAAqBT,EAA6B,CAAC,CAAC,GACrE,CAACU,GAAcC,KAAmBX,EAAa,EAAK,GAEpDY,UAAe;EACnB,IAAMC,IAAQC,EAAU,GAClBC,IAAUC,EAAS;EACzB,IAAI,CAACH,KAAS,CAACE,GAAS;GACtB,EAAgB,EAAK;GACrB;EACF;EAEA,IAAME,IAASC,EAAgBL,GAAOE,GAAS;GAC7C,WAAWrB,EAAOW,EAAQ,WAAW,QAAQ;GAC7C,UAAUX,EAAOW,EAAQ,UAAU,UAAU;GAC7C,YAAYX,EAAOW,EAAQ,YAAY,CAAC,CAAC;EAC3C,CAAC;EASD,AALAN,EAAKkB,EAAO,CAAC,GACbf,EAAKe,EAAO,CAAC,GACbb,EAAaa,EAAO,SAAS,GAC7BV,EAAYU,EAAO,QAAQ,GAC3BR,EAAkBQ,EAAO,cAAc,GACvCN,EAAgB,EAAI;CACtB;CAqCA,OAnCAQ,QAAmB;EACjB,IAAMN,IAAQC,EAAU,GAClBC,IAAUC,EAAS;EAOzB,IAJAtB,EAAOW,EAAQ,WAAW,QAAQ,GAClCX,EAAOW,EAAQ,UAAU,UAAU,GACnCX,EAAOW,EAAQ,YAAY,CAAC,CAAC,GAEzB,CAACQ,KAAS,CAACE,GAAS;GACtB,EAAgB,EAAK;GACrB;EACF;EAIA,IAFAH,EAAO,GAEHP,EAAQ,eAAe,IAAO;GAChC,IAAMe,IAAU3B,EACdoB,GACAE,GACAH,GACA,OAAOP,EAAQ,cAAe,WAAWA,EAAQ,aAAa,CAAC,CACjE;GACA,EAAUe,CAAO;EACnB;CACF,CAAC,GAUM;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA,gBAhBqBE,SAAkB;GACvC,UAAUhB,EAAS;GACnB,KAAK;GACL,MAAM;GAEN,WAAW,aAAa,KAAK,MAAMR,EAAE,CAAC,EAAE,MAAM,KAAK,MAAMG,EAAE,CAAC,EAAE;EAChE,EAUE;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"arrow.js","names":[],"sources":["../../../../src/lib/positioner/middleware/arrow.ts"],"sourcesContent":["import type { Middleware } from \"../types\";\nimport { getSide, isVerticalSide } from \"../core/placement\";\n\nexport interface ArrowOptions {\n /**\n * 箭头 DOM 元素,或返回该元素的函数(Solid 场景下常传一个访问器)。\n * 类型是 Element 而不是 HTMLElement,是为了兼容 SVG 场景下用 <svg> 画箭头的写法\n * (SVGSVGElement 不是 HTMLElement 的子类型)。\n */\n element: Element | undefined | (() => Element | undefined);\n /** 箭头距 floating 边缘的最小间距,默认 4 */\n padding?: number;\n}\n\nexport interface ArrowData {\n x?: number;\n y?: number;\n /** 箭头应贴靠 floating 的哪一侧(与 floating 的 placement 主边相同) */\n side: ReturnType<typeof getSide>;\n}\n\n/**\n * 计算箭头相对 floating 元素左上角的 x/y 偏移,\n * 使其始终指向 reference 元素中心,同时不超出 floating 边界。\n */\nexport function arrow(options: ArrowOptions): Middleware {\n return {\n name: \"arrow\",\n fn(state) {\n const el =\n typeof options.element === \"function\"\n ? options.element()\n : options.element;\n const side = getSide(state.placement);\n if (!el) return { data: { side } };\n\n const { rects, x, y } = state;\n const padding = options.padding ?? 4;\n const vertical = isVerticalSide(side);\n\n // 用 getBoundingClientRect 而不是 offsetWidth/offsetHeight:后者只有\n // HTMLElement 才有,SVG 元素(比如 <svg>/<g>)没有这两个属性;\n // getBoundingClientRect 对所有 Element 都通用,只要箭头本身没有做\n // CSS transform(本库的 TooltipArrow 就是特意不用 rotate 来避免这个问题)。\n const arrowRect = el.getBoundingClientRect();\n const arrowWidth = arrowRect.width || 0;\n const arrowHeight = arrowRect.height || 0;\n\n // 关键:floating 的宽高现读现用,不用 state.rects.floating(那是这一轮\n // computePosition 刚开始时缓存的值)。如果 arrow 前面排了 size 这类会\n // 通过 apply 回调产生 DOM 副作用(比如响应式地改 max-width)的 middleware,\n // 而且这次副作用刚好同步生效了,state.rects.floating 就会是“改之前”的\n // 旧尺寸,用它算出来的箭头位置会带着一个固定的偏移量,跟最终实际渲染的\n // 盒子宽度对不上。这里现场重新measure,保证永远拿到当下最新的尺寸。\n const freshFloatingRect = state.elements.floating.getBoundingClientRect();\n const axisLen = vertical\n ? freshFloatingRect.width\n : freshFloatingRect.height;\n const arrowLen = vertical ? arrowWidth : arrowHeight;\n\n // reference 中心点相对 floating 左上角的位置\n const refCenter = vertical\n ? rects.reference.x + rects.reference.width / 2 - x\n : rects.reference.y + rects.reference.height / 2 - y;\n\n let pos = refCenter - arrowLen / 2;\n const min = padding;\n const max = axisLen - arrowLen - padding;\n pos = Math.min(Math.max(pos, min), Math.max(min, max));\n\n const data: ArrowData = vertical ? { x: pos, side } : { y: pos, side };\n return { data };\n },\n };\n}\n"],"mappings":";;AAyBA,SAAgB,EAAM,GAAmC;CACvD,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,IACJ,OAAO,EAAQ,WAAY,aACvB,EAAQ,QAAQ,IAChB,EAAQ,SACR,IAAO,EAAQ,EAAM,SAAS;GACpC,IAAI,CAAC,GAAI,OAAO,EAAE,MAAM,EAAE,QAAK,EAAE;GAEjC,IAAM,EAAE,UAAO,MAAG,SAAM,GAClB,IAAU,EAAQ,WAAW,GAC7B,IAAW,EAAe,CAAI,GAM9B,IAAY,EAAG,sBAAsB,GACrC,IAAa,EAAU,SAAS,GAChC,IAAc,EAAU,UAAU,GAQlC,IAAoB,EAAM,SAAS,SAAS,sBAAsB,GAClE,IAAU,IACZ,EAAkB,QAClB,EAAkB,QAChB,IAAW,IAAW,IAAa,GAOrC,KAJc,IACd,EAAM,UAAU,IAAI,EAAM,UAAU,QAAQ,IAAI,IAChD,EAAM,UAAU,IAAI,EAAM,UAAU,SAAS,IAAI,KAE/B,IAAW,GAC3B,IAAM,GACN,IAAM,IAAU,IAAW;GAIjC,OAHA,IAAM,KAAK,IAAI,KAAK,IAAI,GAAK,CAAG,GAAG,KAAK,IAAI,GAAK,CAAG,CAAC,GAG9C,EAAE,MADe,IAAW;IAAE,GAAG;IAAK;GAAK,IAAI;IAAE,GAAG;IAAK;GAAK,EACvD;EAChB;CACF;AACF"}
1
+ {"version":3,"file":"arrow.js","names":["arrow","el","options","side","getSide","state","padding","vertical","isVerticalSide","arrowRect","arrowWidth","arrowHeight","freshFloatingRect","axisLen","arrowLen","pos","rects","x","y","min","max"],"sources":["../../../../src/lib/positioner/middleware/arrow.ts"],"sourcesContent":["import type { Middleware } from \"../types\";\nimport { getSide, isVerticalSide } from \"../core/placement\";\n\nexport interface ArrowOptions {\n /**\n * 箭头 DOM 元素,或返回该元素的函数(Solid 场景下常传一个访问器)。\n * 类型是 Element 而不是 HTMLElement,是为了兼容 SVG 场景下用 <svg> 画箭头的写法\n * (SVGSVGElement 不是 HTMLElement 的子类型)。\n */\n element: Element | undefined | (() => Element | undefined);\n /** 箭头距 floating 边缘的最小间距,默认 4 */\n padding?: number;\n}\n\nexport interface ArrowData {\n x?: number;\n y?: number;\n /** 箭头应贴靠 floating 的哪一侧(与 floating 的 placement 主边相同) */\n side: ReturnType<typeof getSide>;\n}\n\n/**\n * 计算箭头相对 floating 元素左上角的 x/y 偏移,\n * 使其始终指向 reference 元素中心,同时不超出 floating 边界。\n */\nexport function arrow(options: ArrowOptions): Middleware {\n return {\n name: \"arrow\",\n fn(state) {\n const el =\n typeof options.element === \"function\"\n ? options.element()\n : options.element;\n const side = getSide(state.placement);\n if (!el) return { data: { side } };\n\n const { rects, x, y } = state;\n const padding = options.padding ?? 4;\n const vertical = isVerticalSide(side);\n\n // 用 getBoundingClientRect 而不是 offsetWidth/offsetHeight:后者只有\n // HTMLElement 才有,SVG 元素(比如 <svg>/<g>)没有这两个属性;\n // getBoundingClientRect 对所有 Element 都通用,只要箭头本身没有做\n // CSS transform(本库的 TooltipArrow 就是特意不用 rotate 来避免这个问题)。\n const arrowRect = el.getBoundingClientRect();\n const arrowWidth = arrowRect.width || 0;\n const arrowHeight = arrowRect.height || 0;\n\n // 关键:floating 的宽高现读现用,不用 state.rects.floating(那是这一轮\n // computePosition 刚开始时缓存的值)。如果 arrow 前面排了 size 这类会\n // 通过 apply 回调产生 DOM 副作用(比如响应式地改 max-width)的 middleware,\n // 而且这次副作用刚好同步生效了,state.rects.floating 就会是“改之前”的\n // 旧尺寸,用它算出来的箭头位置会带着一个固定的偏移量,跟最终实际渲染的\n // 盒子宽度对不上。这里现场重新measure,保证永远拿到当下最新的尺寸。\n const freshFloatingRect = state.elements.floating.getBoundingClientRect();\n const axisLen = vertical\n ? freshFloatingRect.width\n : freshFloatingRect.height;\n const arrowLen = vertical ? arrowWidth : arrowHeight;\n\n // reference 中心点相对 floating 左上角的位置\n const refCenter = vertical\n ? rects.reference.x + rects.reference.width / 2 - x\n : rects.reference.y + rects.reference.height / 2 - y;\n\n let pos = refCenter - arrowLen / 2;\n const min = padding;\n const max = axisLen - arrowLen - padding;\n pos = Math.min(Math.max(pos, min), Math.max(min, max));\n\n const data: ArrowData = vertical ? { x: pos, side } : { y: pos, side };\n return { data };\n },\n };\n}\n"],"mappings":";;AAyBA,SAAgBA,EAAM,GAAmC;CACvD,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAMC,IACJ,OAAOC,EAAQ,WAAY,aACvBA,EAAQ,QAAQ,IAChBA,EAAQ,SACRC,IAAOC,EAAQC,EAAM,SAAS;GACpC,IAAI,CAACJ,GAAI,OAAO,EAAE,MAAM,EAAE,QAAK,EAAE;GAEjC,IAAM,EAAE,UAAO,MAAG,SAAMI,GAClBC,IAAUJ,EAAQ,WAAW,GAC7BK,IAAWC,EAAeL,CAAI,GAM9BM,IAAYR,EAAG,sBAAsB,GACrCS,IAAaD,EAAU,SAAS,GAChCE,IAAcF,EAAU,UAAU,GAQlCG,IAAoBP,EAAM,SAAS,SAAS,sBAAsB,GAClEQ,IAAUN,IACZK,EAAkB,QAClBA,EAAkB,QAChBE,IAAWP,IAAWG,IAAaC,GAOrCI,KAJcR,IACdS,EAAM,UAAU,IAAIA,EAAM,UAAU,QAAQ,IAAIC,IAChDD,EAAM,UAAU,IAAIA,EAAM,UAAU,SAAS,IAAIE,KAE/BJ,IAAW,GAC3BK,IAAMb,GACNc,IAAMP,IAAUC,IAAWR;GAIjC,OAHA,IAAM,KAAK,IAAI,KAAK,IAAIS,GAAKI,CAAG,GAAG,KAAK,IAAIA,GAAKC,CAAG,CAAC,GAG9C,EAAE,MADeb,IAAW;IAAE,GAAGQ;IAAK;GAAK,IAAI;IAAE,GAAGA;IAAK;GAAK,EACvD;EAChB;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"containing-block-offset.js","names":[],"sources":["../../../../src/lib/positioner/middleware/containing-block-offset.ts"],"sourcesContent":["import type { Middleware } from \"../types\";\n\nconst TRANSFORM_STYLE_PROPS = [\n \"transform\",\n \"perspective\",\n \"filter\",\n \"backdropFilter\",\n] as const;\n\nfunction establishesContainingBlock(style: CSSStyleDeclaration): boolean {\n for (const prop of TRANSFORM_STYLE_PROPS) {\n const value = style[prop as keyof CSSStyleDeclaration] as\n | string\n | undefined;\n if (value && value !== \"none\") return true;\n }\n const willChange = style.willChange || \"\";\n if (/transform|perspective|filter/.test(willChange)) return true;\n const contain = style.contain || \"\";\n if (/paint|layout|strict|content/.test(contain)) return true;\n return false;\n}\n\n/**\n * 修正因祖先元素设置了 transform / filter / perspective / backdrop-filter /\n * will-change / contain 等 CSS 属性,导致 position:fixed(部分情况下\n * position:absolute 也一样)的包含块被从“视口”重新定义成该祖先自身,\n * 从而让按视口坐标算出来的 x/y 出现系统性偏移的问题。\n *\n * 典型症状:demo 页面里定位完全正常,放进真实项目(尤其是大量使用\n * transform 做拖拽/缩放/面板动画的应用,比如设计工具、看板、画布编辑器)\n * 后,浮层整体固定偏移某个方向,但相对位置关系(比如箭头跟着内容一起偏)\n * 保持不变——这正是“坐标系被祖先重新定义”而不是“定位算法算错了”的特征。\n *\n * 原理:从 floating 元素实际的 DOM 父节点开始向上查找,找到第一个会重新\n * 定义包含块的祖先,用它的 getBoundingClientRect() 反推出这个“意外包含块”\n * 相对视口的偏移量,从最终坐标里减掉,抵消这个偏移。\n *\n * 局限:只处理纯平移类的偏移(比如 translate、面板展开动画、GPU 加速常见的\n * translateZ(0))。如果那个祖先同时还做了 scale/rotate,这里不会做矩阵换算,\n * 位置依然会有偏差——遇到这种情况,更彻底的办法是让 Portal 挂载点脱离那个\n * 祖先(比如手动把挂载点换成真正不受影响的 document.body,而不是应用内部\n * 某个嵌套很深的容器)。\n *\n * 建议放在 middleware 数组的最后一位——它修正的是“最终要写进 DOM 的坐标”,\n * 前面 offset/flip/shift/size/arrow 等都在统一的视口坐标系里计算,不受影响,\n * 只有真正落地前的这一步需要额外修正。\n */\nexport function containingBlockOffset(): Middleware {\n return {\n name: \"containingBlockOffset\",\n fn(state) {\n const floatingEl = state.elements.floating;\n let node: Element | null = floatingEl.parentElement;\n let offsetX = 0;\n let offsetY = 0;\n let foundAncestor: Element | null = null;\n\n while (node && node !== document.documentElement) {\n const style = getComputedStyle(node);\n if (establishesContainingBlock(style)) {\n const rect = node.getBoundingClientRect();\n offsetX = rect.x;\n offsetY = rect.y;\n foundAncestor = node;\n break;\n }\n node = node.parentElement;\n }\n\n if (!foundAncestor || (offsetX === 0 && offsetY === 0)) {\n return { data: { ancestor: null } };\n }\n\n return {\n x: state.x - offsetX,\n y: state.y - offsetY,\n data: { ancestor: foundAncestor, offsetX, offsetY },\n };\n },\n };\n}\n"],"mappings":";AAEA,IAAM,IAAwB;CAC5B;CACA;CACA;CACA;AACF;AAEA,SAAS,EAA2B,GAAqC;CACvE,KAAK,IAAM,KAAQ,GAAuB;EACxC,IAAM,IAAQ,EAAM;EAGpB,IAAI,KAAS,MAAU,QAAQ,OAAO;CACxC;CACA,IAAM,IAAa,EAAM,cAAc;CACvC,IAAI,+BAA+B,KAAK,CAAU,GAAG,OAAO;CAC5D,IAAM,IAAU,EAAM,WAAW;CAEjC,OADA,EAAI,8BAA8B,KAAK,CAAO;AAEhD;AA2BA,SAAgB,IAAoC;CAClD,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GAER,IAAI,IADe,EAAM,SAAS,SACI,eAClC,IAAU,GACV,IAAU,GACV,IAAgC;GAEpC,OAAO,KAAQ,MAAS,SAAS,kBAAiB;IAEhD,IAAI,EADU,iBAAiB,CACA,CAAK,GAAG;KACrC,IAAM,IAAO,EAAK,sBAAsB;KAGxC,AAFA,IAAU,EAAK,GACf,IAAU,EAAK,GACf,IAAgB;KAChB;IACF;IACA,IAAO,EAAK;GACd;GAMA,OAJI,CAAC,KAAkB,MAAY,KAAK,MAAY,IAC3C,EAAE,MAAM,EAAE,UAAU,KAAK,EAAE,IAG7B;IACL,GAAG,EAAM,IAAI;IACb,GAAG,EAAM,IAAI;IACb,MAAM;KAAE,UAAU;KAAe;KAAS;IAAQ;GACpD;EACF;CACF;AACF"}
1
+ {"version":3,"file":"containing-block-offset.js","names":["TRANSFORM_STYLE_PROPS","establishesContainingBlock","prop","value","style","willChange","contain","containingBlockOffset","node","state","offsetX","offsetY","foundAncestor","rect"],"sources":["../../../../src/lib/positioner/middleware/containing-block-offset.ts"],"sourcesContent":["import type { Middleware } from \"../types\";\n\nconst TRANSFORM_STYLE_PROPS = [\n \"transform\",\n \"perspective\",\n \"filter\",\n \"backdropFilter\",\n] as const;\n\nfunction establishesContainingBlock(style: CSSStyleDeclaration): boolean {\n for (const prop of TRANSFORM_STYLE_PROPS) {\n const value = style[prop as keyof CSSStyleDeclaration] as\n | string\n | undefined;\n if (value && value !== \"none\") return true;\n }\n const willChange = style.willChange || \"\";\n if (/transform|perspective|filter/.test(willChange)) return true;\n const contain = style.contain || \"\";\n if (/paint|layout|strict|content/.test(contain)) return true;\n return false;\n}\n\n/**\n * 修正因祖先元素设置了 transform / filter / perspective / backdrop-filter /\n * will-change / contain 等 CSS 属性,导致 position:fixed(部分情况下\n * position:absolute 也一样)的包含块被从“视口”重新定义成该祖先自身,\n * 从而让按视口坐标算出来的 x/y 出现系统性偏移的问题。\n *\n * 典型症状:demo 页面里定位完全正常,放进真实项目(尤其是大量使用\n * transform 做拖拽/缩放/面板动画的应用,比如设计工具、看板、画布编辑器)\n * 后,浮层整体固定偏移某个方向,但相对位置关系(比如箭头跟着内容一起偏)\n * 保持不变——这正是“坐标系被祖先重新定义”而不是“定位算法算错了”的特征。\n *\n * 原理:从 floating 元素实际的 DOM 父节点开始向上查找,找到第一个会重新\n * 定义包含块的祖先,用它的 getBoundingClientRect() 反推出这个“意外包含块”\n * 相对视口的偏移量,从最终坐标里减掉,抵消这个偏移。\n *\n * 局限:只处理纯平移类的偏移(比如 translate、面板展开动画、GPU 加速常见的\n * translateZ(0))。如果那个祖先同时还做了 scale/rotate,这里不会做矩阵换算,\n * 位置依然会有偏差——遇到这种情况,更彻底的办法是让 Portal 挂载点脱离那个\n * 祖先(比如手动把挂载点换成真正不受影响的 document.body,而不是应用内部\n * 某个嵌套很深的容器)。\n *\n * 建议放在 middleware 数组的最后一位——它修正的是“最终要写进 DOM 的坐标”,\n * 前面 offset/flip/shift/size/arrow 等都在统一的视口坐标系里计算,不受影响,\n * 只有真正落地前的这一步需要额外修正。\n */\nexport function containingBlockOffset(): Middleware {\n return {\n name: \"containingBlockOffset\",\n fn(state) {\n const floatingEl = state.elements.floating;\n let node: Element | null = floatingEl.parentElement;\n let offsetX = 0;\n let offsetY = 0;\n let foundAncestor: Element | null = null;\n\n while (node && node !== document.documentElement) {\n const style = getComputedStyle(node);\n if (establishesContainingBlock(style)) {\n const rect = node.getBoundingClientRect();\n offsetX = rect.x;\n offsetY = rect.y;\n foundAncestor = node;\n break;\n }\n node = node.parentElement;\n }\n\n if (!foundAncestor || (offsetX === 0 && offsetY === 0)) {\n return { data: { ancestor: null } };\n }\n\n return {\n x: state.x - offsetX,\n y: state.y - offsetY,\n data: { ancestor: foundAncestor, offsetX, offsetY },\n };\n },\n };\n}\n"],"mappings":";AAEA,IAAMA,IAAwB;CAC5B;CACA;CACA;CACA;AACF;AAEA,SAASC,EAA2B,GAAqC;CACvE,KAAK,IAAMC,KAAQF,GAAuB;EACxC,IAAMG,IAAQC,EAAMF;EAGpB,IAAIC,KAASA,MAAU,QAAQ,OAAO;CACxC;CACA,IAAME,IAAaD,EAAM,cAAc;CACvC,IAAI,+BAA+B,KAAKC,CAAU,GAAG,OAAO;CAC5D,IAAMC,IAAUF,EAAM,WAAW;CAEjC,OADA,EAAI,8BAA8B,KAAKE,CAAO;AAEhD;AA2BA,SAAgBC,IAAoC;CAClD,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GAER,IAAIC,IADeC,EAAM,SAAS,SACI,eAClCC,IAAU,GACVC,IAAU,GACVC,IAAgC;GAEpC,OAAOJ,KAAQA,MAAS,SAAS,kBAAiB;IAEhD,IAAIP,EADU,iBAAiBO,CACA,CAAK,GAAG;KACrC,IAAMK,IAAOL,EAAK,sBAAsB;KAGxC,AAFA,IAAUK,EAAK,GACf,IAAUA,EAAK,GACf,IAAgBL;KAChB;IACF;IACA,IAAOA,EAAK;GACd;GAMA,OAJI,CAACI,KAAkBF,MAAY,KAAKC,MAAY,IAC3C,EAAE,MAAM,EAAE,UAAU,KAAK,EAAE,IAG7B;IACL,GAAGF,EAAM,IAAIC;IACb,GAAGD,EAAM,IAAIE;IACb,MAAM;KAAE,UAAUC;KAAe;KAAS;IAAQ;GACpD;EACF;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"flip.js","names":[],"sources":["../../../../src/lib/positioner/middleware/flip.ts"],"sourcesContent":["import type { Boundary, Middleware, Placement, Side } from \"../types\";\nimport { getViewportBoundary } from \"../utils/dom\";\nimport {\n computeCoordsFromPlacement,\n getOppositePlacement,\n getSide,\n} from \"../core/placement\";\n\nexport interface FlipOptions {\n padding?: number;\n boundary?: Boundary;\n /** 翻转候选 placement 列表,按顺序尝试,默认只翻转到正对面 */\n fallbackPlacements?: Placement[];\n}\n\ninterface SideOverflow {\n top: number;\n right: number;\n bottom: number;\n left: number;\n}\n\nfunction getSideOverflow(\n x: number,\n y: number,\n width: number,\n height: number,\n boundary: Boundary,\n): SideOverflow {\n return {\n top: boundary.y - y,\n left: boundary.x - x,\n right: x + width - (boundary.x + boundary.width),\n bottom: y + height - (boundary.y + boundary.height),\n };\n}\n\n/** 取某个 placement 主轴方向对应的溢出量(正数代表溢出了多少像素) */\nfunction getMainAxisOverflow(side: Side, overflow: SideOverflow): number {\n switch (side) {\n case \"top\":\n return overflow.top;\n case \"bottom\":\n return overflow.bottom;\n case \"left\":\n return overflow.left;\n case \"right\":\n return overflow.right;\n }\n}\n\n/** 当主轴方向空间不够时,翻转到相对的 placement(如 bottom -> top) */\nexport function flip(options: FlipOptions = {}): Middleware {\n return {\n name: \"flip\",\n fn(state) {\n const {\n x,\n y,\n rects,\n placement,\n strategy,\n middlewareData,\n initialPlacement,\n } = state;\n\n // 已经翻转过一次就不再继续翻,避免来回震荡\n if (middlewareData.flip?.flipped) return {};\n\n const { padding = 0 } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(strategy, padding);\n\n const currentOverflow = getSideOverflow(\n x,\n y,\n rects.floating.width,\n rects.floating.height,\n boundary,\n );\n const currentMainOverflow = getMainAxisOverflow(\n getSide(placement),\n currentOverflow,\n );\n\n // 当前方向够放,不需要翻\n if (currentMainOverflow <= 0) return {};\n\n const candidates = options.fallbackPlacements ?? [\n getOppositePlacement(initialPlacement),\n ];\n\n let best: { placement: Placement; overflow: number } | null = null;\n\n for (const candidate of candidates) {\n if (candidate === placement) continue;\n\n // 关键修复点:真正代入候选 placement 算出它的坐标,再算它自己的真实溢出量,\n // 而不是用当前(本就溢出的)placement 的 overflow 去做错误的镜像估算。\n const candidateCoords = computeCoordsFromPlacement(rects, candidate);\n const candidateOverflow = getSideOverflow(\n candidateCoords.x,\n candidateCoords.y,\n rects.floating.width,\n rects.floating.height,\n boundary,\n );\n const candidateMainOverflow = getMainAxisOverflow(\n getSide(candidate),\n candidateOverflow,\n );\n\n if (candidateMainOverflow <= 0) {\n best = { placement: candidate, overflow: candidateMainOverflow };\n break; // 找到完全不溢出的候选,直接采用\n }\n if (!best || candidateMainOverflow < best.overflow) {\n best = { placement: candidate, overflow: candidateMainOverflow };\n }\n }\n\n // 没有候选,或翻过去也不比现在好,就不翻\n if (!best || best.overflow >= currentMainOverflow) return {};\n\n return {\n reset: { placement: best.placement },\n data: { flipped: true },\n };\n },\n };\n}\n"],"mappings":";;;AAsBA,SAAS,EACP,GACA,GACA,GACA,GACA,GACc;CACd,OAAO;EACL,KAAK,EAAS,IAAI;EAClB,MAAM,EAAS,IAAI;EACnB,OAAO,IAAI,KAAS,EAAS,IAAI,EAAS;EAC1C,QAAQ,IAAI,KAAU,EAAS,IAAI,EAAS;CAC9C;AACF;AAGA,SAAS,EAAoB,GAAY,GAAgC;CACvE,QAAQ,GAAR;EACE,KAAK,OACH,OAAO,EAAS;EAClB,KAAK,UACH,OAAO,EAAS;EAClB,KAAK,QACH,OAAO,EAAS;EAClB,KAAK,SACH,OAAO,EAAS;CACpB;AACF;AAGA,SAAgB,EAAK,IAAuB,CAAC,GAAe;CAC1D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EACJ,MACA,MACA,UACA,cACA,aACA,mBACA,wBACE;GAGJ,IAAI,EAAe,MAAM,SAAS,OAAO,CAAC;GAE1C,IAAM,EAAE,aAAU,MAAM,GAClB,IACJ,EAAQ,YAAY,EAAoB,GAAU,CAAO,GAErD,IAAkB,EACtB,GACA,GACA,EAAM,SAAS,OACf,EAAM,SAAS,QACf,CACF,GACM,IAAsB,EAC1B,EAAQ,CAAS,GACjB,CACF;GAGA,IAAI,KAAuB,GAAG,OAAO,CAAC;GAEtC,IAAM,IAAa,EAAQ,sBAAsB,CAC/C,EAAqB,CAAgB,CACvC,GAEI,IAA0D;GAE9D,KAAK,IAAM,KAAa,GAAY;IAClC,IAAI,MAAc,GAAW;IAI7B,IAAM,IAAkB,EAA2B,GAAO,CAAS,GAC7D,IAAoB,EACxB,EAAgB,GAChB,EAAgB,GAChB,EAAM,SAAS,OACf,EAAM,SAAS,QACf,CACF,GACM,IAAwB,EAC5B,EAAQ,CAAS,GACjB,CACF;IAEA,IAAI,KAAyB,GAAG;KAC9B,IAAO;MAAE,WAAW;MAAW,UAAU;KAAsB;KAC/D;IACF;IACA,CAAI,CAAC,KAAQ,IAAwB,EAAK,cACxC,IAAO;KAAE,WAAW;KAAW,UAAU;IAAsB;GAEnE;GAKA,OAFI,CAAC,KAAQ,EAAK,YAAY,IAA4B,CAAC,IAEpD;IACL,OAAO,EAAE,WAAW,EAAK,UAAU;IACnC,MAAM,EAAE,SAAS,GAAK;GACxB;EACF;CACF;AACF"}
1
+ {"version":3,"file":"flip.js","names":["getSideOverflow","boundary","y","x","width","height","getMainAxisOverflow","side","overflow","flip","state","middlewareData","options","getViewportBoundary","strategy","padding","currentOverflow","rects","currentMainOverflow","getSide","placement","candidates","getOppositePlacement","initialPlacement","best","candidate","candidateCoords","computeCoordsFromPlacement","candidateOverflow","candidateMainOverflow"],"sources":["../../../../src/lib/positioner/middleware/flip.ts"],"sourcesContent":["import type { Boundary, Middleware, Placement, Side } from \"../types\";\nimport { getViewportBoundary } from \"../utils/dom\";\nimport {\n computeCoordsFromPlacement,\n getOppositePlacement,\n getSide,\n} from \"../core/placement\";\n\nexport interface FlipOptions {\n padding?: number;\n boundary?: Boundary;\n /** 翻转候选 placement 列表,按顺序尝试,默认只翻转到正对面 */\n fallbackPlacements?: Placement[];\n}\n\ninterface SideOverflow {\n top: number;\n right: number;\n bottom: number;\n left: number;\n}\n\nfunction getSideOverflow(\n x: number,\n y: number,\n width: number,\n height: number,\n boundary: Boundary,\n): SideOverflow {\n return {\n top: boundary.y - y,\n left: boundary.x - x,\n right: x + width - (boundary.x + boundary.width),\n bottom: y + height - (boundary.y + boundary.height),\n };\n}\n\n/** 取某个 placement 主轴方向对应的溢出量(正数代表溢出了多少像素) */\nfunction getMainAxisOverflow(side: Side, overflow: SideOverflow): number {\n switch (side) {\n case \"top\":\n return overflow.top;\n case \"bottom\":\n return overflow.bottom;\n case \"left\":\n return overflow.left;\n case \"right\":\n return overflow.right;\n }\n}\n\n/** 当主轴方向空间不够时,翻转到相对的 placement(如 bottom -> top) */\nexport function flip(options: FlipOptions = {}): Middleware {\n return {\n name: \"flip\",\n fn(state) {\n const {\n x,\n y,\n rects,\n placement,\n strategy,\n middlewareData,\n initialPlacement,\n } = state;\n\n // 已经翻转过一次就不再继续翻,避免来回震荡\n if (middlewareData.flip?.flipped) return {};\n\n const { padding = 0 } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(strategy, padding);\n\n const currentOverflow = getSideOverflow(\n x,\n y,\n rects.floating.width,\n rects.floating.height,\n boundary,\n );\n const currentMainOverflow = getMainAxisOverflow(\n getSide(placement),\n currentOverflow,\n );\n\n // 当前方向够放,不需要翻\n if (currentMainOverflow <= 0) return {};\n\n const candidates = options.fallbackPlacements ?? [\n getOppositePlacement(initialPlacement),\n ];\n\n let best: { placement: Placement; overflow: number } | null = null;\n\n for (const candidate of candidates) {\n if (candidate === placement) continue;\n\n // 关键修复点:真正代入候选 placement 算出它的坐标,再算它自己的真实溢出量,\n // 而不是用当前(本就溢出的)placement 的 overflow 去做错误的镜像估算。\n const candidateCoords = computeCoordsFromPlacement(rects, candidate);\n const candidateOverflow = getSideOverflow(\n candidateCoords.x,\n candidateCoords.y,\n rects.floating.width,\n rects.floating.height,\n boundary,\n );\n const candidateMainOverflow = getMainAxisOverflow(\n getSide(candidate),\n candidateOverflow,\n );\n\n if (candidateMainOverflow <= 0) {\n best = { placement: candidate, overflow: candidateMainOverflow };\n break; // 找到完全不溢出的候选,直接采用\n }\n if (!best || candidateMainOverflow < best.overflow) {\n best = { placement: candidate, overflow: candidateMainOverflow };\n }\n }\n\n // 没有候选,或翻过去也不比现在好,就不翻\n if (!best || best.overflow >= currentMainOverflow) return {};\n\n return {\n reset: { placement: best.placement },\n data: { flipped: true },\n };\n },\n };\n}\n"],"mappings":";;;AAsBA,SAASA,EACP,GACA,GACA,GACA,GACA,GACc;CACd,OAAO;EACL,KAAKC,EAAS,IAAIC;EAClB,MAAMD,EAAS,IAAIE;EACnB,OAAOA,IAAIC,KAASH,EAAS,IAAIA,EAAS;EAC1C,QAAQC,IAAIG,KAAUJ,EAAS,IAAIA,EAAS;CAC9C;AACF;AAGA,SAASK,EAAoB,GAAY,GAAgC;CACvE,QAAQC,GAAR;EACE,KAAK,OACH,OAAOC,EAAS;EAClB,KAAK,UACH,OAAOA,EAAS;EAClB,KAAK,QACH,OAAOA,EAAS;EAClB,KAAK,SACH,OAAOA,EAAS;CACpB;AACF;AAGA,SAAgBC,EAAK,IAAuB,CAAC,GAAe;CAC1D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EACJ,MACA,MACA,UACA,cACA,aACA,mBACA,wBACEC;GAGJ,IAAIC,EAAe,MAAM,SAAS,OAAO,CAAC;GAE1C,IAAM,EAAE,aAAU,MAAMC,GAClBX,IACJW,EAAQ,YAAYC,EAAoBC,GAAUC,CAAO,GAErDC,IAAkBhB,EACtBG,GACAD,GACAe,EAAM,SAAS,OACfA,EAAM,SAAS,QACfhB,CACF,GACMiB,IAAsBZ,EAC1Ba,EAAQC,CAAS,GACjBJ,CACF;GAGA,IAAIE,KAAuB,GAAG,OAAO,CAAC;GAEtC,IAAMG,IAAaT,EAAQ,sBAAsB,CAC/CU,EAAqBC,CAAgB,CACvC,GAEIC,IAA0D;GAE9D,KAAK,IAAMC,KAAaJ,GAAY;IAClC,IAAII,MAAcL,GAAW;IAI7B,IAAMM,IAAkBC,EAA2BV,GAAOQ,CAAS,GAC7DG,IAAoB5B,EACxB0B,EAAgB,GAChBA,EAAgB,GAChBT,EAAM,SAAS,OACfA,EAAM,SAAS,QACfhB,CACF,GACM4B,IAAwBvB,EAC5Ba,EAAQM,CAAS,GACjBG,CACF;IAEA,IAAIC,KAAyB,GAAG;KAC9B,IAAO;MAAE,WAAWJ;MAAW,UAAUI;KAAsB;KAC/D;IACF;IACA,CAAI,CAACL,KAAQK,IAAwBL,EAAK,cACxC,IAAO;KAAE,WAAWC;KAAW,UAAUI;IAAsB;GAEnE;GAKA,OAFI,CAACL,KAAQA,EAAK,YAAYN,IAA4B,CAAC,IAEpD;IACL,OAAO,EAAE,WAAWM,EAAK,UAAU;IACnC,MAAM,EAAE,SAAS,GAAK;GACxB;EACF;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"hide.js","names":[],"sources":["../../../../src/lib/positioner/middleware/hide.ts"],"sourcesContent":["import type { Boundary, Middleware } from \"../types\";\nimport { getViewportBoundary, getRectRelativeTo } from \"../utils/dom\";\n\nexport interface HideOptions {\n padding?: number;\n boundary?: Boundary;\n /**\n * 'referenceHidden':reference 元素被自身滚动容器完全裁掉(比如滚出了可滚动的父级)\n * 'escaped':floating 元素虽然还在视口内,但已经完全脱离了 reference 所在的边界\n *(比如 reference 在一个卡片里被横向滚动挡住了一半,虽然 floating 还能摆在视口里,\n * 但已经不该再显示,否则看起来像是\"飘\"在别的内容上)\n * 默认只做 referenceHidden 检测,这是最常见也最需要的场景。\n */\n strategy?: \"referenceHidden\" | \"escaped\";\n}\n\nexport interface HideData {\n referenceHidden?: boolean;\n escaped?: boolean;\n}\n\n/**\n * 不改变坐标,只产出\"是否应该隐藏浮层\"的判断数据,交给上层组件决定要不要渲染。\n * 用法:在业务组件里读 `middlewareData().hide?.referenceHidden`,为 true 时关闭浮层。\n */\nexport function hide(options: HideOptions = {}): Middleware {\n return {\n name: \"hide\",\n fn(state) {\n const { x, y, rects, strategy: positionStrategy, elements } = state;\n const { padding = 0, strategy = \"referenceHidden\" } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(positionStrategy, padding);\n\n const data: HideData = {};\n\n if (strategy === \"referenceHidden\") {\n const refRect = getRectRelativeTo(elements.reference, positionStrategy);\n const referenceHidden =\n refRect.x + refRect.width <= boundary.x ||\n refRect.y + refRect.height <= boundary.y ||\n refRect.x >= boundary.x + boundary.width ||\n refRect.y >= boundary.y + boundary.height;\n data.referenceHidden = referenceHidden;\n }\n\n if (strategy === \"escaped\") {\n const escaped =\n x + rects.floating.width <= boundary.x ||\n y + rects.floating.height <= boundary.y ||\n x >= boundary.x + boundary.width ||\n y >= boundary.y + boundary.height;\n data.escaped = escaped;\n }\n\n return { data };\n },\n };\n}\n"],"mappings":";;AAyBA,SAAgB,EAAK,IAAuB,CAAC,GAAe;CAC1D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,UAAO,UAAU,GAAkB,gBAAa,GACxD,EAAE,aAAU,GAAG,cAAW,sBAAsB,GAChD,IACJ,EAAQ,YAAY,EAAoB,GAAkB,CAAO,GAE7D,IAAiB,CAAC;GAExB,IAAI,MAAa,mBAAmB;IAClC,IAAM,IAAU,EAAkB,EAAS,WAAW,CAAgB;IAMtE,EAAK,kBAJH,EAAQ,IAAI,EAAQ,SAAS,EAAS,KACtC,EAAQ,IAAI,EAAQ,UAAU,EAAS,KACvC,EAAQ,KAAK,EAAS,IAAI,EAAS,SACnC,EAAQ,KAAK,EAAS,IAAI,EAAS;GAEvC;GAWA,OATI,MAAa,cAMf,EAAK,UAJH,IAAI,EAAM,SAAS,SAAS,EAAS,KACrC,IAAI,EAAM,SAAS,UAAU,EAAS,KACtC,KAAK,EAAS,IAAI,EAAS,SAC3B,KAAK,EAAS,IAAI,EAAS,SAIxB,EAAE,QAAK;EAChB;CACF;AACF"}
1
+ {"version":3,"file":"hide.js","names":["hide","positionStrategy","state","options","boundary","getViewportBoundary","padding","data","strategy","refRect","getRectRelativeTo","elements","x","rects","y"],"sources":["../../../../src/lib/positioner/middleware/hide.ts"],"sourcesContent":["import type { Boundary, Middleware } from \"../types\";\nimport { getViewportBoundary, getRectRelativeTo } from \"../utils/dom\";\n\nexport interface HideOptions {\n padding?: number;\n boundary?: Boundary;\n /**\n * 'referenceHidden':reference 元素被自身滚动容器完全裁掉(比如滚出了可滚动的父级)\n * 'escaped':floating 元素虽然还在视口内,但已经完全脱离了 reference 所在的边界\n *(比如 reference 在一个卡片里被横向滚动挡住了一半,虽然 floating 还能摆在视口里,\n * 但已经不该再显示,否则看起来像是\"飘\"在别的内容上)\n * 默认只做 referenceHidden 检测,这是最常见也最需要的场景。\n */\n strategy?: \"referenceHidden\" | \"escaped\";\n}\n\nexport interface HideData {\n referenceHidden?: boolean;\n escaped?: boolean;\n}\n\n/**\n * 不改变坐标,只产出\"是否应该隐藏浮层\"的判断数据,交给上层组件决定要不要渲染。\n * 用法:在业务组件里读 `middlewareData().hide?.referenceHidden`,为 true 时关闭浮层。\n */\nexport function hide(options: HideOptions = {}): Middleware {\n return {\n name: \"hide\",\n fn(state) {\n const { x, y, rects, strategy: positionStrategy, elements } = state;\n const { padding = 0, strategy = \"referenceHidden\" } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(positionStrategy, padding);\n\n const data: HideData = {};\n\n if (strategy === \"referenceHidden\") {\n const refRect = getRectRelativeTo(elements.reference, positionStrategy);\n const referenceHidden =\n refRect.x + refRect.width <= boundary.x ||\n refRect.y + refRect.height <= boundary.y ||\n refRect.x >= boundary.x + boundary.width ||\n refRect.y >= boundary.y + boundary.height;\n data.referenceHidden = referenceHidden;\n }\n\n if (strategy === \"escaped\") {\n const escaped =\n x + rects.floating.width <= boundary.x ||\n y + rects.floating.height <= boundary.y ||\n x >= boundary.x + boundary.width ||\n y >= boundary.y + boundary.height;\n data.escaped = escaped;\n }\n\n return { data };\n },\n };\n}\n"],"mappings":";;AAyBA,SAAgBA,EAAK,IAAuB,CAAC,GAAe;CAC1D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,UAAO,UAAUC,GAAkB,gBAAaC,GACxD,EAAE,aAAU,GAAG,cAAW,sBAAsBC,GAChDC,IACJD,EAAQ,YAAYE,EAAoBJ,GAAkBK,CAAO,GAE7DC,IAAiB,CAAC;GAExB,IAAIC,MAAa,mBAAmB;IAClC,IAAMC,IAAUC,EAAkBC,EAAS,WAAWV,CAAgB;IAMtE,EAAK,kBAJHQ,EAAQ,IAAIA,EAAQ,SAASL,EAAS,KACtCK,EAAQ,IAAIA,EAAQ,UAAUL,EAAS,KACvCK,EAAQ,KAAKL,EAAS,IAAIA,EAAS,SACnCK,EAAQ,KAAKL,EAAS,IAAIA,EAAS;GAEvC;GAWA,OATII,MAAa,cAMf,EAAK,UAJHI,IAAIC,EAAM,SAAS,SAAST,EAAS,KACrCU,IAAID,EAAM,SAAS,UAAUT,EAAS,KACtCQ,KAAKR,EAAS,IAAIA,EAAS,SAC3BU,KAAKV,EAAS,IAAIA,EAAS,SAIxB,EAAE,QAAK;EAChB;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"offset.js","names":[],"sources":["../../../../src/lib/positioner/middleware/offset.ts"],"sourcesContent":["import type { Middleware } from \"../types\";\nimport { getSide, isVerticalSide } from \"../core/placement\";\n\nexport interface OffsetValue {\n /** 沿主轴方向的偏移(远离/靠近 reference),默认 0 */\n mainAxis?: number;\n /** 沿交叉轴方向的偏移(左右或上下平移),默认 0 */\n crossAxis?: number;\n}\n\nexport type OffsetOptions = number | OffsetValue;\n\n/** 让 floating 元素与 reference 保持一定间距,或沿对齐轴做微调 */\nexport function offset(value: OffsetOptions = 0): Middleware {\n return {\n name: \"offset\",\n fn(state) {\n const { x, y, placement } = state;\n const side = getSide(placement);\n const vertical = isVerticalSide(side);\n\n const mainAxis =\n typeof value === \"number\" ? value : (value.mainAxis ?? 0);\n const crossAxis = typeof value === \"number\" ? 0 : (value.crossAxis ?? 0);\n\n // top/left 是\"负方向\",bottom/right 是\"正方向\"\n const mainSign = side === \"bottom\" || side === \"right\" ? 1 : -1;\n\n const diffMain = mainAxis * mainSign;\n\n return vertical\n ? { x: x + crossAxis, y: y + diffMain }\n : { x: x + diffMain, y: y + crossAxis };\n },\n };\n}\n"],"mappings":";;AAaA,SAAgB,EAAO,IAAuB,GAAe;CAC3D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,iBAAc,GACtB,IAAO,EAAQ,CAAS,GACxB,IAAW,EAAe,CAAI,GAE9B,IACJ,OAAO,KAAU,WAAW,IAAS,EAAM,YAAY,GACnD,IAAY,OAAO,KAAU,WAAW,IAAK,EAAM,aAAa,GAKhE,IAAW,KAFA,MAAS,YAAY,MAAS,UAAU,IAAI;GAI7D,OAAO,IACH;IAAE,GAAG,IAAI;IAAW,GAAG,IAAI;GAAS,IACpC;IAAE,GAAG,IAAI;IAAU,GAAG,IAAI;GAAU;EAC1C;CACF;AACF"}
1
+ {"version":3,"file":"offset.js","names":["offset","state","side","getSide","placement","vertical","isVerticalSide","mainAxis","value","crossAxis","diffMain","x","y"],"sources":["../../../../src/lib/positioner/middleware/offset.ts"],"sourcesContent":["import type { Middleware } from \"../types\";\nimport { getSide, isVerticalSide } from \"../core/placement\";\n\nexport interface OffsetValue {\n /** 沿主轴方向的偏移(远离/靠近 reference),默认 0 */\n mainAxis?: number;\n /** 沿交叉轴方向的偏移(左右或上下平移),默认 0 */\n crossAxis?: number;\n}\n\nexport type OffsetOptions = number | OffsetValue;\n\n/** 让 floating 元素与 reference 保持一定间距,或沿对齐轴做微调 */\nexport function offset(value: OffsetOptions = 0): Middleware {\n return {\n name: \"offset\",\n fn(state) {\n const { x, y, placement } = state;\n const side = getSide(placement);\n const vertical = isVerticalSide(side);\n\n const mainAxis =\n typeof value === \"number\" ? value : (value.mainAxis ?? 0);\n const crossAxis = typeof value === \"number\" ? 0 : (value.crossAxis ?? 0);\n\n // top/left 是\"负方向\",bottom/right 是\"正方向\"\n const mainSign = side === \"bottom\" || side === \"right\" ? 1 : -1;\n\n const diffMain = mainAxis * mainSign;\n\n return vertical\n ? { x: x + crossAxis, y: y + diffMain }\n : { x: x + diffMain, y: y + crossAxis };\n },\n };\n}\n"],"mappings":";;AAaA,SAAgBA,EAAO,IAAuB,GAAe;CAC3D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,iBAAcC,GACtBC,IAAOC,EAAQC,CAAS,GACxBC,IAAWC,EAAeJ,CAAI,GAE9BK,IACJ,OAAOC,KAAU,WAAWA,IAASA,EAAM,YAAY,GACnDC,IAAY,OAAOD,KAAU,WAAW,IAAKA,EAAM,aAAa,GAKhEE,IAAWH,KAFAL,MAAS,YAAYA,MAAS,UAAU,IAAI;GAI7D,OAAOG,IACH;IAAE,GAAGM,IAAIF;IAAW,GAAGG,IAAIF;GAAS,IACpC;IAAE,GAAGC,IAAID;IAAU,GAAGE,IAAIH;GAAU;EAC1C;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"shift.js","names":[],"sources":["../../../../src/lib/positioner/middleware/shift.ts"],"sourcesContent":["import type { Boundary, Middleware } from \"../types\";\nimport { getViewportBoundary } from \"../utils/dom\";\n\nexport interface ShiftOptions {\n /** 距边界的最小间距,默认 0 */\n padding?: number;\n /** 自定义边界矩形,默认使用视口 */\n boundary?: Boundary;\n /** 是否限制主轴方向(如 top/bottom placement 的 y 方向),默认 true */\n mainAxis?: boolean;\n /** 是否限制交叉轴方向(如 top/bottom placement 的 x 方向),默认 true */\n crossAxis?: boolean;\n}\n\n/** 平移 floating 元素,使其尽量停留在边界(默认视口)内,不做 placement 翻转 */\nexport function shift(options: ShiftOptions = {}): Middleware {\n return {\n name: \"shift\",\n fn(state) {\n const { x, y, rects, strategy } = state;\n const { padding = 0, mainAxis = true, crossAxis = true } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(strategy, padding);\n\n let nextX = x;\n let nextY = y;\n\n if (crossAxis) {\n const minX = boundary.x;\n const maxX = boundary.x + boundary.width - rects.floating.width;\n nextX = Math.min(Math.max(x, minX), Math.max(minX, maxX));\n }\n\n if (mainAxis) {\n const minY = boundary.y;\n const maxY = boundary.y + boundary.height - rects.floating.height;\n nextY = Math.min(Math.max(y, minY), Math.max(minY, maxY));\n }\n\n return {\n x: nextX,\n y: nextY,\n data: { x: nextX - x, y: nextY - y },\n };\n },\n };\n}\n"],"mappings":";;AAeA,SAAgB,EAAM,IAAwB,CAAC,GAAe;CAC5D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,UAAO,gBAAa,GAC5B,EAAE,aAAU,GAAG,cAAW,IAAM,eAAY,OAAS,GACrD,IACJ,EAAQ,YAAY,EAAoB,GAAU,CAAO,GAEvD,IAAQ,GACR,IAAQ;GAEZ,IAAI,GAAW;IACb,IAAM,IAAO,EAAS,GAChB,IAAO,EAAS,IAAI,EAAS,QAAQ,EAAM,SAAS;IAC1D,IAAQ,KAAK,IAAI,KAAK,IAAI,GAAG,CAAI,GAAG,KAAK,IAAI,GAAM,CAAI,CAAC;GAC1D;GAEA,IAAI,GAAU;IACZ,IAAM,IAAO,EAAS,GAChB,IAAO,EAAS,IAAI,EAAS,SAAS,EAAM,SAAS;IAC3D,IAAQ,KAAK,IAAI,KAAK,IAAI,GAAG,CAAI,GAAG,KAAK,IAAI,GAAM,CAAI,CAAC;GAC1D;GAEA,OAAO;IACL,GAAG;IACH,GAAG;IACH,MAAM;KAAE,GAAG,IAAQ;KAAG,GAAG,IAAQ;IAAE;GACrC;EACF;CACF;AACF"}
1
+ {"version":3,"file":"shift.js","names":["shift","state","options","boundary","getViewportBoundary","strategy","padding","nextX","x","nextY","y","crossAxis","minX","maxX","rects","mainAxis","minY","maxY"],"sources":["../../../../src/lib/positioner/middleware/shift.ts"],"sourcesContent":["import type { Boundary, Middleware } from \"../types\";\nimport { getViewportBoundary } from \"../utils/dom\";\n\nexport interface ShiftOptions {\n /** 距边界的最小间距,默认 0 */\n padding?: number;\n /** 自定义边界矩形,默认使用视口 */\n boundary?: Boundary;\n /** 是否限制主轴方向(如 top/bottom placement 的 y 方向),默认 true */\n mainAxis?: boolean;\n /** 是否限制交叉轴方向(如 top/bottom placement 的 x 方向),默认 true */\n crossAxis?: boolean;\n}\n\n/** 平移 floating 元素,使其尽量停留在边界(默认视口)内,不做 placement 翻转 */\nexport function shift(options: ShiftOptions = {}): Middleware {\n return {\n name: \"shift\",\n fn(state) {\n const { x, y, rects, strategy } = state;\n const { padding = 0, mainAxis = true, crossAxis = true } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(strategy, padding);\n\n let nextX = x;\n let nextY = y;\n\n if (crossAxis) {\n const minX = boundary.x;\n const maxX = boundary.x + boundary.width - rects.floating.width;\n nextX = Math.min(Math.max(x, minX), Math.max(minX, maxX));\n }\n\n if (mainAxis) {\n const minY = boundary.y;\n const maxY = boundary.y + boundary.height - rects.floating.height;\n nextY = Math.min(Math.max(y, minY), Math.max(minY, maxY));\n }\n\n return {\n x: nextX,\n y: nextY,\n data: { x: nextX - x, y: nextY - y },\n };\n },\n };\n}\n"],"mappings":";;AAeA,SAAgBA,EAAM,IAAwB,CAAC,GAAe;CAC5D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,UAAO,gBAAaC,GAC5B,EAAE,aAAU,GAAG,cAAW,IAAM,eAAY,OAASC,GACrDC,IACJD,EAAQ,YAAYE,EAAoBC,GAAUC,CAAO,GAEvDC,IAAQC,GACRC,IAAQC;GAEZ,IAAIC,GAAW;IACb,IAAMC,IAAOT,EAAS,GAChBU,IAAOV,EAAS,IAAIA,EAAS,QAAQW,EAAM,SAAS;IAC1D,IAAQ,KAAK,IAAI,KAAK,IAAIN,GAAGI,CAAI,GAAG,KAAK,IAAIA,GAAMC,CAAI,CAAC;GAC1D;GAEA,IAAIE,GAAU;IACZ,IAAMC,IAAOb,EAAS,GAChBc,IAAOd,EAAS,IAAIA,EAAS,SAASW,EAAM,SAAS;IAC3D,IAAQ,KAAK,IAAI,KAAK,IAAIJ,GAAGM,CAAI,GAAG,KAAK,IAAIA,GAAMC,CAAI,CAAC;GAC1D;GAEA,OAAO;IACL,GAAGV;IACH,GAAGE;IACH,MAAM;KAAE,GAAGF,IAAQC;KAAG,GAAGC,IAAQC;IAAE;GACrC;EACF;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"size.js","names":[],"sources":["../../../../src/lib/positioner/middleware/size.ts"],"sourcesContent":["import type { Boundary, Middleware, MiddlewareState } from \"../types\";\nimport { getViewportBoundary } from \"../utils/dom\";\n\nexport interface SizeAvailableSpace {\n availableWidth: number;\n availableHeight: number;\n}\n\nexport interface SizeOptions {\n padding?: number;\n boundary?: Boundary;\n /** 拿到可用空间后自行处理,比如设置 floating 的 maxHeight */\n apply?: (space: SizeAvailableSpace, state: MiddlewareState) => void;\n}\n\n/** 计算 floating 在当前边界内的可用宽高,交给 apply 回调去应用(如设置 max-height 实现滚动) */\nexport function size(options: SizeOptions = {}): Middleware {\n return {\n name: \"size\",\n fn(state) {\n const { x, y, strategy } = state;\n const { padding = 0 } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(strategy, padding);\n\n const availableWidth = boundary.x + boundary.width - x;\n const availableHeight = boundary.y + boundary.height - y;\n\n options.apply?.({ availableWidth, availableHeight }, state);\n\n return { data: { availableWidth, availableHeight } };\n },\n };\n}\n"],"mappings":";;AAgBA,SAAgB,EAAK,IAAuB,CAAC,GAAe;CAC1D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,gBAAa,GACrB,EAAE,aAAU,MAAM,GAClB,IACJ,EAAQ,YAAY,EAAoB,GAAU,CAAO,GAErD,IAAiB,EAAS,IAAI,EAAS,QAAQ,GAC/C,IAAkB,EAAS,IAAI,EAAS,SAAS;GAIvD,OAFA,EAAQ,QAAQ;IAAE;IAAgB;GAAgB,GAAG,CAAK,GAEnD,EAAE,MAAM;IAAE;IAAgB;GAAgB,EAAE;EACrD;CACF;AACF"}
1
+ {"version":3,"file":"size.js","names":["size","state","options","boundary","getViewportBoundary","strategy","padding","availableWidth","x","availableHeight","y"],"sources":["../../../../src/lib/positioner/middleware/size.ts"],"sourcesContent":["import type { Boundary, Middleware, MiddlewareState } from \"../types\";\nimport { getViewportBoundary } from \"../utils/dom\";\n\nexport interface SizeAvailableSpace {\n availableWidth: number;\n availableHeight: number;\n}\n\nexport interface SizeOptions {\n padding?: number;\n boundary?: Boundary;\n /** 拿到可用空间后自行处理,比如设置 floating 的 maxHeight */\n apply?: (space: SizeAvailableSpace, state: MiddlewareState) => void;\n}\n\n/** 计算 floating 在当前边界内的可用宽高,交给 apply 回调去应用(如设置 max-height 实现滚动) */\nexport function size(options: SizeOptions = {}): Middleware {\n return {\n name: \"size\",\n fn(state) {\n const { x, y, strategy } = state;\n const { padding = 0 } = options;\n const boundary =\n options.boundary ?? getViewportBoundary(strategy, padding);\n\n const availableWidth = boundary.x + boundary.width - x;\n const availableHeight = boundary.y + boundary.height - y;\n\n options.apply?.({ availableWidth, availableHeight }, state);\n\n return { data: { availableWidth, availableHeight } };\n },\n };\n}\n"],"mappings":";;AAgBA,SAAgBA,EAAK,IAAuB,CAAC,GAAe;CAC1D,OAAO;EACL,MAAM;EACN,GAAG,GAAO;GACR,IAAM,EAAE,MAAG,MAAG,gBAAaC,GACrB,EAAE,aAAU,MAAMC,GAClBC,IACJD,EAAQ,YAAYE,EAAoBC,GAAUC,CAAO,GAErDC,IAAiBJ,EAAS,IAAIA,EAAS,QAAQK,GAC/CC,IAAkBN,EAAS,IAAIA,EAAS,SAASO;GAIvD,OAFAR,EAAQ,QAAQ;IAAE;IAAgB;GAAgB,GAAGD,CAAK,GAEnD,EAAE,MAAM;IAAE;IAAgB;GAAgB,EAAE;EACrD;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"dom.js","names":[],"sources":["../../../../src/lib/positioner/utils/dom.ts"],"sourcesContent":["import type { ReferenceElement, Rect, Strategy } from \"../types\";\n\n/** 把 DOMRect 转成纯数据对象(视口坐标系);同时兼容虚拟参照元素 */\nexport function getViewportRect(el: ReferenceElement): Rect {\n const rect = el.getBoundingClientRect();\n return { x: rect.x, y: rect.y, width: rect.width, height: rect.height };\n}\n\n/**\n * 根据 strategy 得到参与计算的矩形:\n * - fixed:直接用视口坐标(配合 position:fixed 使用最简单可靠)\n * - absolute:加上页面滚动偏移,换算成“文档坐标”\n * (假设 floating 元素最终被挂载在 <body> 下,即最近定位祖先是 body/html,\n * 这是 Portal 到 body 的常见用法;如果你的 floating 元素有自定义的\n * 非 static 定位祖先,请优先使用 strategy: 'fixed')\n */\nexport function getRectRelativeTo(\n el: ReferenceElement,\n strategy: Strategy,\n): Rect {\n const rect = getViewportRect(el);\n if (strategy === \"fixed\") return rect;\n const scrollX = window.scrollX ?? window.pageXOffset;\n const scrollY = window.scrollY ?? window.pageYOffset;\n return {\n x: rect.x + scrollX,\n y: rect.y + scrollY,\n width: rect.width,\n height: rect.height,\n };\n}\n\n/** 当前视口作为默认边界(用于 shift / flip 的溢出检测),strategy 决定坐标系 */\nexport function getViewportBoundary(strategy: Strategy, padding = 0): Rect {\n const width = document.documentElement.clientWidth;\n const height = document.documentElement.clientHeight;\n const scrollX =\n strategy === \"fixed\" ? 0 : (window.scrollX ?? window.pageXOffset);\n const scrollY =\n strategy === \"fixed\" ? 0 : (window.scrollY ?? window.pageYOffset);\n return {\n x: scrollX + padding,\n y: scrollY + padding,\n width: width - padding * 2,\n height: height - padding * 2,\n };\n}\n\nfunction isOverflowElement(el: Element): boolean {\n const { overflow, overflowX, overflowY } = getComputedStyle(el);\n return /auto|scroll|overlay|hidden/.test(overflow + overflowX + overflowY);\n}\n\n/** 找到所有可能影响布局的可滚动祖先 + window,用于 autoUpdate 监听 scroll/resize */\nexport function getOverflowAncestors(node: Element): Array<Element | Window> {\n const result: Array<Element | Window> = [];\n let el: Element | null = node.parentElement;\n\n while (el) {\n if (isOverflowElement(el)) {\n result.push(el);\n }\n el = el.parentElement;\n }\n\n result.push(window);\n return result;\n}\n"],"mappings":";AAGA,SAAgB,EAAgB,GAA4B;CAC1D,IAAM,IAAO,EAAG,sBAAsB;CACtC,OAAO;EAAE,GAAG,EAAK;EAAG,GAAG,EAAK;EAAG,OAAO,EAAK;EAAO,QAAQ,EAAK;CAAO;AACxE;AAUA,SAAgB,EACd,GACA,GACM;CACN,IAAM,IAAO,EAAgB,CAAE;CAC/B,IAAI,MAAa,SAAS,OAAO;CACjC,IAAM,IAAU,OAAO,WAAW,OAAO,aACnC,IAAU,OAAO,WAAW,OAAO;CACzC,OAAO;EACL,GAAG,EAAK,IAAI;EACZ,GAAG,EAAK,IAAI;EACZ,OAAO,EAAK;EACZ,QAAQ,EAAK;CACf;AACF;AAGA,SAAgB,EAAoB,GAAoB,IAAU,GAAS;CACzE,IAAM,IAAQ,SAAS,gBAAgB,aACjC,IAAS,SAAS,gBAAgB,cAClC,IACJ,MAAa,UAAU,IAAK,OAAO,WAAW,OAAO,aACjD,IACJ,MAAa,UAAU,IAAK,OAAO,WAAW,OAAO;CACvD,OAAO;EACL,GAAG,IAAU;EACb,GAAG,IAAU;EACb,OAAO,IAAQ,IAAU;EACzB,QAAQ,IAAS,IAAU;CAC7B;AACF;AAEA,SAAS,EAAkB,GAAsB;CAC/C,IAAM,EAAE,aAAU,cAAW,iBAAc,iBAAiB,CAAE;CAC9D,OAAO,6BAA6B,KAAK,IAAW,IAAY,CAAS;AAC3E;AAGA,SAAgB,EAAqB,GAAwC;CAC3E,IAAM,IAAkC,CAAC,GACrC,IAAqB,EAAK;CAE9B,OAAO,IAIL,AAHI,EAAkB,CAAE,KACtB,EAAO,KAAK,CAAE,GAEhB,IAAK,EAAG;CAIV,OADA,EAAO,KAAK,MAAM,GACX;AACT"}
1
+ {"version":3,"file":"dom.js","names":["getViewportRect","rect","el","getRectRelativeTo","strategy","scrollX","scrollY","getViewportBoundary","width","height","padding","isOverflowElement","overflow","overflowX","overflowY","getOverflowAncestors","result","node"],"sources":["../../../../src/lib/positioner/utils/dom.ts"],"sourcesContent":["import type { ReferenceElement, Rect, Strategy } from \"../types\";\n\n/** 把 DOMRect 转成纯数据对象(视口坐标系);同时兼容虚拟参照元素 */\nexport function getViewportRect(el: ReferenceElement): Rect {\n const rect = el.getBoundingClientRect();\n return { x: rect.x, y: rect.y, width: rect.width, height: rect.height };\n}\n\n/**\n * 根据 strategy 得到参与计算的矩形:\n * - fixed:直接用视口坐标(配合 position:fixed 使用最简单可靠)\n * - absolute:加上页面滚动偏移,换算成“文档坐标”\n * (假设 floating 元素最终被挂载在 <body> 下,即最近定位祖先是 body/html,\n * 这是 Portal 到 body 的常见用法;如果你的 floating 元素有自定义的\n * 非 static 定位祖先,请优先使用 strategy: 'fixed')\n */\nexport function getRectRelativeTo(\n el: ReferenceElement,\n strategy: Strategy,\n): Rect {\n const rect = getViewportRect(el);\n if (strategy === \"fixed\") return rect;\n const scrollX = window.scrollX ?? window.pageXOffset;\n const scrollY = window.scrollY ?? window.pageYOffset;\n return {\n x: rect.x + scrollX,\n y: rect.y + scrollY,\n width: rect.width,\n height: rect.height,\n };\n}\n\n/** 当前视口作为默认边界(用于 shift / flip 的溢出检测),strategy 决定坐标系 */\nexport function getViewportBoundary(strategy: Strategy, padding = 0): Rect {\n const width = document.documentElement.clientWidth;\n const height = document.documentElement.clientHeight;\n const scrollX =\n strategy === \"fixed\" ? 0 : (window.scrollX ?? window.pageXOffset);\n const scrollY =\n strategy === \"fixed\" ? 0 : (window.scrollY ?? window.pageYOffset);\n return {\n x: scrollX + padding,\n y: scrollY + padding,\n width: width - padding * 2,\n height: height - padding * 2,\n };\n}\n\nfunction isOverflowElement(el: Element): boolean {\n const { overflow, overflowX, overflowY } = getComputedStyle(el);\n return /auto|scroll|overlay|hidden/.test(overflow + overflowX + overflowY);\n}\n\n/** 找到所有可能影响布局的可滚动祖先 + window,用于 autoUpdate 监听 scroll/resize */\nexport function getOverflowAncestors(node: Element): Array<Element | Window> {\n const result: Array<Element | Window> = [];\n let el: Element | null = node.parentElement;\n\n while (el) {\n if (isOverflowElement(el)) {\n result.push(el);\n }\n el = el.parentElement;\n }\n\n result.push(window);\n return result;\n}\n"],"mappings":";AAGA,SAAgBA,EAAgB,GAA4B;CAC1D,IAAMC,IAAOC,EAAG,sBAAsB;CACtC,OAAO;EAAE,GAAGD,EAAK;EAAG,GAAGA,EAAK;EAAG,OAAOA,EAAK;EAAO,QAAQA,EAAK;CAAO;AACxE;AAUA,SAAgBE,EACd,GACA,GACM;CACN,IAAMF,IAAOD,EAAgBE,CAAE;CAC/B,IAAIE,MAAa,SAAS,OAAOH;CACjC,IAAMI,IAAU,OAAO,WAAW,OAAO,aACnCC,IAAU,OAAO,WAAW,OAAO;CACzC,OAAO;EACL,GAAGL,EAAK,IAAII;EACZ,GAAGJ,EAAK,IAAIK;EACZ,OAAOL,EAAK;EACZ,QAAQA,EAAK;CACf;AACF;AAGA,SAAgBM,EAAoB,GAAoB,IAAU,GAAS;CACzE,IAAMC,IAAQ,SAAS,gBAAgB,aACjCC,IAAS,SAAS,gBAAgB,cAClCJ,IACJD,MAAa,UAAU,IAAK,OAAO,WAAW,OAAO,aACjDE,IACJF,MAAa,UAAU,IAAK,OAAO,WAAW,OAAO;CACvD,OAAO;EACL,GAAGC,IAAUK;EACb,GAAGJ,IAAUI;EACb,OAAOF,IAAQE,IAAU;EACzB,QAAQD,IAASC,IAAU;CAC7B;AACF;AAEA,SAASC,EAAkB,GAAsB;CAC/C,IAAM,EAAE,aAAU,cAAW,iBAAc,iBAAiBT,CAAE;CAC9D,OAAO,6BAA6B,KAAKU,IAAWC,IAAYC,CAAS;AAC3E;AAGA,SAAgBC,EAAqB,GAAwC;CAC3E,IAAMC,IAAkC,CAAC,GACrCd,IAAqBe,EAAK;CAE9B,OAAOf,IAIL,AAHIS,EAAkBT,CAAE,KACtBc,EAAO,KAAKd,CAAE,GAEhB,IAAKA,EAAG;CAIV,OADAc,EAAO,KAAK,MAAM,GACXA;AACT"}
@@ -0,0 +1,18 @@
1
+ //#region src/lib/positioner/virtual-element.ts
2
+ function e(e) {
3
+ return {
4
+ contextElement: e.contextElement,
5
+ getBoundingClientRect() {
6
+ return {
7
+ x: e.x,
8
+ y: e.y,
9
+ width: 0,
10
+ height: 0
11
+ };
12
+ }
13
+ };
14
+ }
15
+ //#endregion
16
+ export { e as createVirtualElement };
17
+
18
+ //# sourceMappingURL=virtual-element.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual-element.js","names":["createVirtualElement","point"],"sources":["../../../src/lib/positioner/virtual-element.ts"],"sourcesContent":["import type { VirtualElement } from \"./types\";\n\nexport interface PointOptions {\n x: number;\n y: number;\n /** 可选:关联一个真实 DOM 节点,供 autoUpdate 查找可滚动祖先使用 */\n contextElement?: Element;\n}\n\n/**\n * 创建一个锚定到具体像素坐标的虚拟参照元素(宽高均为 0),\n * 常见用途:右键菜单锚定到鼠标点击位置、拖拽跟随光标、按坐标弹出的提示等。\n *\n * @example\n * ```ts\n * const [point, setPoint] = createSignal<VirtualElement>();\n * el.addEventListener('contextmenu', (e) => {\n * e.preventDefault();\n * setPoint(createVirtualElement({ x: e.clientX, y: e.clientY, contextElement: el }));\n * });\n * ```\n */\nexport function createVirtualElement(point: PointOptions): VirtualElement {\n return {\n contextElement: point.contextElement,\n getBoundingClientRect() {\n return { x: point.x, y: point.y, width: 0, height: 0 };\n },\n };\n}\n"],"mappings":";AAsBA,SAAgBA,EAAqB,GAAqC;CACxE,OAAO;EACL,gBAAgBC,EAAM;EACtB,wBAAwB;GACtB,OAAO;IAAE,GAAGA,EAAM;IAAG,GAAGA,EAAM;IAAG,OAAO;IAAG,QAAQ;GAAE;EACvD;CACF;AACF"}