@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":"ScrollBar.js","names":["createMemo","createSignal","mergeProps","onCleanup","splitProps","ScrollBarProps","clsx","useScrollAreaContext","MIN_THUMB_PX","ScrollBar","props","ctx","trackEl","HTMLDivElement","merged","orientation","const","local","others","active","setActive","isVertical","metrics","vertical","horizontal","thumbStyle","m","trackSize","clientHeight","clientWidth","trackInnerSize","rawThumbSize","thumbRatio","thumbSize","Math","max","maxOffset","offset","thumbOffset","height","transform","width","ariaValueNow","round","onThumbPointerDown","e","PointerEvent","preventDefault","stopPropagation","viewport","viewportRef","setDragging","startPointer","clientY","clientX","startScroll","scrollTop","scrollLeft","maxScroll","scrollHeight","scrollWidth","currentTarget","scrollRatio","onMove","me","delta","newScroll","min","onUp","window","removeEventListener","addEventListener","onTrackPointerDown","target","HTMLElement","dataset","slot","rect","getBoundingClientRect","clickPos","top","left","scrollTo","behavior","onKeyDown","KeyboardEvent","step","pageSize","keyMap","Record","ArrowDown","ArrowRight","ArrowUp","ArrowLeft","PageDown","PageUp","Home","Infinity","End","key","undefined","visible","hovering","dragging","_el$","_tmpl$","_el$2","firstChild","$$keydown","$$pointerdown","_ref$","_$use","_$spread","_$mergeProps","aria-orientation","aria-valuenow","data-orientation","data-hovering","class","_$effect","_p$","_v$","_v$2","_v$3","_$setAttribute","t","_$className","a","_$style","_$delegateEvents"],"sources":["../../../../src/components/scroll-area/ScrollBar/ScrollBar.tsx"],"sourcesContent":["import {\n createMemo,\n createSignal,\n mergeProps,\n onCleanup,\n splitProps,\n} from \"solid-js\";\nimport type { ScrollBarProps } from \"./ScrollBar.types\";\nimport { clsx } from \"~/utils\";\nimport { useScrollAreaContext } from \"../ScrollArea\";\n\n// Minimum thumb length in px so it's always clickable\nconst MIN_THUMB_PX = 20;\n\nexport const ScrollBar = (props: ScrollBarProps) => {\n const ctx = useScrollAreaContext();\n\n let trackEl!: HTMLDivElement;\n\n const merged = mergeProps({ orientation: \"vertical\" } as const, props);\n\n const [local, others] = splitProps(merged, [\n \"orientation\",\n \"class\",\n \"classList\",\n ]);\n\n const [active, setActive] = createSignal(false);\n const isVertical = () => local.orientation === \"vertical\";\n\n const metrics = createMemo(() =>\n isVertical() ? ctx.vertical() : ctx.horizontal(),\n );\n\n /**\n * Compute thumb CSS: we clamp to MIN_THUMB_PX, then shift the offset so the\n * thumb never overflows the track.\n */\n const thumbStyle = createMemo(() => {\n const m = metrics();\n\n const trackSize = isVertical()\n ? (trackEl?.clientHeight ?? 0)\n : (trackEl?.clientWidth ?? 0);\n\n const trackInnerSize = trackSize - 2; // track有内边距\n\n const rawThumbSize = trackInnerSize * m.thumbRatio;\n const thumbSize = Math.max(rawThumbSize, MIN_THUMB_PX);\n\n // Adjust offset to account for clamping\n const maxOffset = Math.max(0, trackInnerSize - thumbSize);\n const offset = maxOffset * m.thumbOffset;\n\n if (isVertical()) {\n return {\n height: `${thumbSize}px`,\n transform: `translateY(${offset}px)`,\n };\n }\n return {\n width: `${thumbSize}px`,\n transform: `translateX(${offset}px)`,\n };\n });\n\n // ARIA value: 0–100 integer representing scroll position\n const ariaValueNow = createMemo(() =>\n Math.round(metrics().thumbOffset * 100),\n );\n\n // ── Drag handling ─────────────────────────────────────────────────────────\n function onThumbPointerDown(e: PointerEvent) {\n e.preventDefault();\n e.stopPropagation();\n\n const viewport = ctx.viewportRef();\n if (!viewport) return;\n\n ctx.setDragging(local.orientation);\n setActive(true);\n\n const startPointer = isVertical() ? e.clientY : e.clientX;\n const startScroll = isVertical() ? viewport.scrollTop : viewport.scrollLeft;\n const maxScroll = isVertical()\n ? viewport.scrollHeight - viewport.clientHeight\n : viewport.scrollWidth - viewport.clientWidth;\n\n const trackSize = isVertical() ? trackEl.clientHeight : trackEl.clientWidth;\n const trackInnerSize = trackSize - 2; // track有内边距\n\n const thumbSize = isVertical()\n ? (e.currentTarget as HTMLDivElement).clientHeight\n : (e.currentTarget as HTMLDivElement).clientWidth;\n const scrollRatio = maxScroll / (trackInnerSize - thumbSize);\n\n function onMove(me: PointerEvent) {\n const delta = (isVertical() ? me.clientY : me.clientX) - startPointer;\n\n const newScroll = Math.max(\n 0,\n Math.min(maxScroll, startScroll + delta * scrollRatio),\n );\n if (isVertical()) {\n viewport!.scrollTop = newScroll;\n } else {\n viewport!.scrollLeft = newScroll;\n }\n }\n\n function onUp() {\n ctx.setDragging(null);\n setActive(false);\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerup\", onUp);\n }\n\n window.addEventListener(\"pointermove\", onMove);\n window.addEventListener(\"pointerup\", onUp);\n\n onCleanup(() => {\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerup\", onUp);\n });\n }\n\n // ── Track click: page-scroll (click above/below thumb) ───────────────────\n function onTrackPointerDown(e: PointerEvent) {\n // Ignore if the target is the thumb itself\n if ((e.target as HTMLElement).dataset.slot === \"scroll-area-thumb\") return;\n\n const viewport = ctx.viewportRef();\n if (!viewport) return;\n\n const rect = trackEl.getBoundingClientRect();\n const clickPos = isVertical()\n ? (e.clientY - rect.top) / rect.height\n : (e.clientX - rect.left) / rect.width;\n\n const maxScroll = isVertical()\n ? viewport.scrollHeight - viewport.clientHeight\n : viewport.scrollWidth - viewport.clientWidth;\n\n const target = clickPos * maxScroll;\n\n viewport.scrollTo({\n [isVertical() ? \"top\" : \"left\"]: target,\n behavior: \"smooth\",\n });\n }\n\n // ── Keyboard scrolling on the scrollbar track ─────────────────────────────\n function onKeyDown(e: KeyboardEvent) {\n const viewport = ctx.viewportRef();\n if (!viewport) return;\n\n const step = 40; // px per keypress\n const pageSize = isVertical()\n ? viewport.clientHeight\n : viewport.clientWidth;\n\n const keyMap: Record<string, number> = {\n ArrowDown: step,\n ArrowRight: step,\n ArrowUp: -step,\n ArrowLeft: -step,\n PageDown: pageSize,\n PageUp: -pageSize,\n Home: -Infinity,\n End: Infinity,\n };\n\n const delta = keyMap[e.key];\n if (delta === undefined) return;\n\n e.preventDefault();\n\n if (isVertical()) {\n viewport.scrollTop = Math.max(\n 0,\n Math.min(\n viewport.scrollHeight - viewport.clientHeight,\n delta === Infinity\n ? viewport.scrollHeight\n : delta === -Infinity\n ? 0\n : viewport.scrollTop + delta,\n ),\n );\n } else {\n viewport.scrollLeft = Math.max(\n 0,\n Math.min(\n viewport.scrollWidth - viewport.clientWidth,\n delta === Infinity\n ? viewport.scrollWidth\n : delta === -Infinity\n ? 0\n : viewport.scrollLeft + delta,\n ),\n );\n }\n }\n\n // ── Visibility: show while hovering or dragging ───────────────────────────\n const visible = createMemo(\n () => ctx.hovering() || ctx.dragging() === props.orientation || active(),\n );\n\n return (\n <div\n ref={trackEl}\n data-slot=\"scroll-area-scrollbar\"\n // WCAG 4.1.2: expose as scrollbar widget\n role=\"scrollbar\"\n aria-controls=\"scroll-area-viewport\"\n aria-orientation={local.orientation}\n aria-valuenow={ariaValueNow()}\n aria-valuemin={0}\n aria-valuemax={100}\n tabIndex={0}\n onPointerDown={onTrackPointerDown}\n onKeyDown={onKeyDown}\n data-orientation={local.orientation}\n data-hovering={ctx.hovering() ? \"\" : undefined}\n class={clsx(\n // Layout\n \"absolute touch-none select-none transition-opacity duration-150\",\n // Opacity — visible on hover/drag, hidden otherwise\n visible() ? \"opacity-100\" : \"opacity-0\",\n // Axis-specific positioning & size\n isVertical()\n ? \"right-0 top-0 h-full w-2.5 border-l border-l-transparent p-px flex flex-col\"\n : \"bottom-0 left-0 w-full h-2.5 border-t border-t-transparent p-px flex flex-row\",\n // Keyboard focus ring\n \"outline-none focus-visible:ring-2 focus-visible:ring-neutral-400/70 dark:focus-visible:ring-neutral-500/70\",\n local.class,\n )}\n {...others}\n >\n <div\n data-slot=\"scroll-area-thumb\"\n onPointerDown={onThumbPointerDown}\n data-orientation={local.orientation}\n class={clsx(\n \"relative rounded-full bg-border\",\n // Hover / active state\n \"hover:bg-neutral-400 dark:hover:bg-white/30\",\n active() ? \"bg-neutral-500 dark:bg-white/40\" : \"\",\n \"transition-colors duration-100\",\n // Ensure thumb is always reachable\n isVertical() ? \"min-h-5 w-full\" : \"min-w-5 h-full\",\n )}\n style={thumbStyle()}\n />\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"ScrollBar.js","names":["createMemo","createSignal","mergeProps","onCleanup","splitProps","ScrollBarProps","clsx","useScrollAreaContext","MIN_THUMB_PX","ScrollBar","props","ctx","trackEl","HTMLDivElement","merged","orientation","const","local","others","active","setActive","isVertical","metrics","vertical","horizontal","thumbStyle","m","trackSize","clientHeight","clientWidth","trackInnerSize","rawThumbSize","thumbRatio","thumbSize","Math","max","maxOffset","offset","thumbOffset","height","transform","width","ariaValueNow","round","onThumbPointerDown","e","PointerEvent","preventDefault","stopPropagation","viewport","viewportRef","setDragging","startPointer","clientY","clientX","startScroll","scrollTop","scrollLeft","maxScroll","scrollHeight","scrollWidth","currentTarget","scrollRatio","onMove","me","delta","newScroll","min","onUp","window","removeEventListener","addEventListener","onTrackPointerDown","target","HTMLElement","dataset","slot","rect","getBoundingClientRect","clickPos","top","left","scrollTo","behavior","onKeyDown","KeyboardEvent","step","pageSize","keyMap","Record","ArrowDown","ArrowRight","ArrowUp","ArrowLeft","PageDown","PageUp","Home","Infinity","End","key","undefined","visible","hovering","dragging","_el$","_tmpl$","_el$2","firstChild","$$keydown","$$pointerdown","_ref$","_$use","_$spread","_$mergeProps","aria-orientation","aria-valuenow","data-orientation","data-hovering","class","_$effect","_p$","_v$","_v$2","_v$3","_$setAttribute","t","_$className","a","_$style","_$delegateEvents","mergeProps","_$use","_$mergeProps","_$setAttribute","_$className","_$style","_$delegateEvents","mergeProps$1","_tmpl$","MIN_THUMB_PX","ScrollBar","ctx","useScrollAreaContext","trackEl","merged","props","local","others","splitProps","active","setActive","createSignal","isVertical","metrics","createMemo","thumbStyle","m","trackInnerSize","rawThumbSize","thumbSize","offset","ariaValueNow","onThumbPointerDown","viewport","startPointer","startScroll","maxScroll","scrollRatio","onMove","delta","me","newScroll","onUp","onCleanup","onTrackPointerDown","rect","target","onKeyDown","pageSize","visible","_el$","_el$2","_ref$","use","spread","mergeProps","\"class\"","clsx","effect","_v$","_v$2","_v$3","_p$","setAttribute","className","style","delegateEvents"],"sources":["../../../../src/components/scroll-area/ScrollBar/ScrollBar.tsx"],"sourcesContent":["import {\n createMemo,\n createSignal,\n mergeProps,\n onCleanup,\n splitProps,\n} from \"solid-js\";\nimport type { ScrollBarProps } from \"./ScrollBar.types\";\nimport { clsx } from \"~/utils\";\nimport { useScrollAreaContext } from \"../ScrollArea\";\n\n// Minimum thumb length in px so it's always clickable\nconst MIN_THUMB_PX = 20;\n\nexport const ScrollBar = (props: ScrollBarProps) => {\n const ctx = useScrollAreaContext();\n\n let trackEl!: HTMLDivElement;\n\n const merged = mergeProps({ orientation: \"vertical\" } as const, props);\n\n const [local, others] = splitProps(merged, [\n \"orientation\",\n \"class\",\n \"classList\",\n ]);\n\n const [active, setActive] = createSignal(false);\n const isVertical = () => local.orientation === \"vertical\";\n\n const metrics = createMemo(() =>\n isVertical() ? ctx.vertical() : ctx.horizontal(),\n );\n\n /**\n * Compute thumb CSS: we clamp to MIN_THUMB_PX, then shift the offset so the\n * thumb never overflows the track.\n */\n const thumbStyle = createMemo(() => {\n const m = metrics();\n\n const trackSize = isVertical()\n ? (trackEl?.clientHeight ?? 0)\n : (trackEl?.clientWidth ?? 0);\n\n const trackInnerSize = trackSize - 2; // track有内边距\n\n const rawThumbSize = trackInnerSize * m.thumbRatio;\n const thumbSize = Math.max(rawThumbSize, MIN_THUMB_PX);\n\n // Adjust offset to account for clamping\n const maxOffset = Math.max(0, trackInnerSize - thumbSize);\n const offset = maxOffset * m.thumbOffset;\n\n if (isVertical()) {\n return {\n height: `${thumbSize}px`,\n transform: `translateY(${offset}px)`,\n };\n }\n return {\n width: `${thumbSize}px`,\n transform: `translateX(${offset}px)`,\n };\n });\n\n // ARIA value: 0–100 integer representing scroll position\n const ariaValueNow = createMemo(() =>\n Math.round(metrics().thumbOffset * 100),\n );\n\n // ── Drag handling ─────────────────────────────────────────────────────────\n function onThumbPointerDown(e: PointerEvent) {\n e.preventDefault();\n e.stopPropagation();\n\n const viewport = ctx.viewportRef();\n if (!viewport) return;\n\n ctx.setDragging(local.orientation);\n setActive(true);\n\n const startPointer = isVertical() ? e.clientY : e.clientX;\n const startScroll = isVertical() ? viewport.scrollTop : viewport.scrollLeft;\n const maxScroll = isVertical()\n ? viewport.scrollHeight - viewport.clientHeight\n : viewport.scrollWidth - viewport.clientWidth;\n\n const trackSize = isVertical() ? trackEl.clientHeight : trackEl.clientWidth;\n const trackInnerSize = trackSize - 2; // track有内边距\n\n const thumbSize = isVertical()\n ? (e.currentTarget as HTMLDivElement).clientHeight\n : (e.currentTarget as HTMLDivElement).clientWidth;\n const scrollRatio = maxScroll / (trackInnerSize - thumbSize);\n\n function onMove(me: PointerEvent) {\n const delta = (isVertical() ? me.clientY : me.clientX) - startPointer;\n\n const newScroll = Math.max(\n 0,\n Math.min(maxScroll, startScroll + delta * scrollRatio),\n );\n if (isVertical()) {\n viewport!.scrollTop = newScroll;\n } else {\n viewport!.scrollLeft = newScroll;\n }\n }\n\n function onUp() {\n ctx.setDragging(null);\n setActive(false);\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerup\", onUp);\n }\n\n window.addEventListener(\"pointermove\", onMove);\n window.addEventListener(\"pointerup\", onUp);\n\n onCleanup(() => {\n window.removeEventListener(\"pointermove\", onMove);\n window.removeEventListener(\"pointerup\", onUp);\n });\n }\n\n // ── Track click: page-scroll (click above/below thumb) ───────────────────\n function onTrackPointerDown(e: PointerEvent) {\n // Ignore if the target is the thumb itself\n if ((e.target as HTMLElement).dataset.slot === \"scroll-area-thumb\") return;\n\n const viewport = ctx.viewportRef();\n if (!viewport) return;\n\n const rect = trackEl.getBoundingClientRect();\n const clickPos = isVertical()\n ? (e.clientY - rect.top) / rect.height\n : (e.clientX - rect.left) / rect.width;\n\n const maxScroll = isVertical()\n ? viewport.scrollHeight - viewport.clientHeight\n : viewport.scrollWidth - viewport.clientWidth;\n\n const target = clickPos * maxScroll;\n\n viewport.scrollTo({\n [isVertical() ? \"top\" : \"left\"]: target,\n behavior: \"smooth\",\n });\n }\n\n // ── Keyboard scrolling on the scrollbar track ─────────────────────────────\n function onKeyDown(e: KeyboardEvent) {\n const viewport = ctx.viewportRef();\n if (!viewport) return;\n\n const step = 40; // px per keypress\n const pageSize = isVertical()\n ? viewport.clientHeight\n : viewport.clientWidth;\n\n const keyMap: Record<string, number> = {\n ArrowDown: step,\n ArrowRight: step,\n ArrowUp: -step,\n ArrowLeft: -step,\n PageDown: pageSize,\n PageUp: -pageSize,\n Home: -Infinity,\n End: Infinity,\n };\n\n const delta = keyMap[e.key];\n if (delta === undefined) return;\n\n e.preventDefault();\n\n if (isVertical()) {\n viewport.scrollTop = Math.max(\n 0,\n Math.min(\n viewport.scrollHeight - viewport.clientHeight,\n delta === Infinity\n ? viewport.scrollHeight\n : delta === -Infinity\n ? 0\n : viewport.scrollTop + delta,\n ),\n );\n } else {\n viewport.scrollLeft = Math.max(\n 0,\n Math.min(\n viewport.scrollWidth - viewport.clientWidth,\n delta === Infinity\n ? viewport.scrollWidth\n : delta === -Infinity\n ? 0\n : viewport.scrollLeft + delta,\n ),\n );\n }\n }\n\n // ── Visibility: show while hovering or dragging ───────────────────────────\n const visible = createMemo(\n () => ctx.hovering() || ctx.dragging() === props.orientation || active(),\n );\n\n return (\n <div\n ref={trackEl}\n data-slot=\"scroll-area-scrollbar\"\n // WCAG 4.1.2: expose as scrollbar widget\n role=\"scrollbar\"\n aria-controls=\"scroll-area-viewport\"\n aria-orientation={local.orientation}\n aria-valuenow={ariaValueNow()}\n aria-valuemin={0}\n aria-valuemax={100}\n tabIndex={0}\n onPointerDown={onTrackPointerDown}\n onKeyDown={onKeyDown}\n data-orientation={local.orientation}\n data-hovering={ctx.hovering() ? \"\" : undefined}\n class={clsx(\n // Layout\n \"absolute touch-none select-none transition-opacity duration-150\",\n // Opacity — visible on hover/drag, hidden otherwise\n visible() ? \"opacity-100\" : \"opacity-0\",\n // Axis-specific positioning & size\n isVertical()\n ? \"right-0 top-0 h-full w-2.5 border-l border-l-transparent p-px flex flex-col\"\n : \"bottom-0 left-0 w-full h-2.5 border-t border-t-transparent p-px flex flex-row\",\n // Keyboard focus ring\n \"outline-none focus-visible:ring-2 focus-visible:ring-neutral-400/70 dark:focus-visible:ring-neutral-500/70\",\n local.class,\n )}\n {...others}\n >\n <div\n data-slot=\"scroll-area-thumb\"\n onPointerDown={onThumbPointerDown}\n data-orientation={local.orientation}\n class={clsx(\n \"relative rounded-full bg-border\",\n // Hover / active state\n \"hover:bg-neutral-400 dark:hover:bg-white/30\",\n active() ? \"bg-neutral-500 dark:bg-white/40\" : \"\",\n \"transition-colors duration-100\",\n // Ensure thumb is always reachable\n isVertical() ? \"min-h-5 w-full\" : \"min-w-5 h-full\",\n )}\n style={thumbStyle()}\n />\n </div>\n );\n};\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ScrollArrowButtonProps } from './ScrollArrows.types';
2
+ /**
3
+ * 单个滚动提示箭头:覆盖在列表上/下沿,悬停或按住时用 requestAnimationFrame
4
+ * 持续滚动目标容器,到边界后 scrollTop 不再变化即自动停止。
5
+ *
6
+ * 箭头是装饰元素(`aria-hidden`、不可聚焦),无障碍仍由列表自身的
7
+ * listbox/aria-activedescendant 承担。
8
+ */
9
+ export declare function ScrollArrowButton(props: ScrollArrowButtonProps): import('solid-js').JSX.Element;
@@ -0,0 +1,51 @@
1
+ import { clsx as e } from "../../utils/clsx.js";
2
+ import { className as t, createComponent as n, effect as r, insert as i, memo as a, setAttribute as o, template as s, use as c } from "solid-js/web";
3
+ import { Show as l, onCleanup as u } from "solid-js";
4
+ import { ChevronDown as d, ChevronUp as f } from "lucide-solid";
5
+ //#region src/components/scroll-arrows/ScrollArrowButton.tsx
6
+ var p = /*#__PURE__*/ s("<div aria-hidden=true data-slot=scroll-arrow>");
7
+ function m(s) {
8
+ let m, h = () => {
9
+ m !== void 0 && (cancelAnimationFrame(m), m = void 0);
10
+ }, g = () => {
11
+ let e = s.target();
12
+ if (!e) {
13
+ h();
14
+ return;
15
+ }
16
+ let t = Math.max(4, e.clientHeight / 24), n = e.scrollTop;
17
+ if (e.scrollTop = n + (s.direction === "down" ? t : -t), e.scrollTop === n) {
18
+ h();
19
+ return;
20
+ }
21
+ m = requestAnimationFrame(g);
22
+ }, _ = () => {
23
+ h(), m = requestAnimationFrame(g);
24
+ }, v = (e) => {
25
+ e.addEventListener("pointerenter", _), e.addEventListener("pointerdown", _), e.addEventListener("pointerleave", h), e.addEventListener("pointerup", h), e.addEventListener("pointercancel", h), u(() => {
26
+ h(), e.removeEventListener("pointerenter", _), e.removeEventListener("pointerdown", _), e.removeEventListener("pointerleave", h), e.removeEventListener("pointerup", h), e.removeEventListener("pointercancel", h);
27
+ });
28
+ };
29
+ return n(l, {
30
+ get when() {
31
+ return s.visible;
32
+ },
33
+ get children() {
34
+ var l = p();
35
+ return c(v, l), i(l, (() => {
36
+ var e = a(() => s.direction === "down");
37
+ return () => e() ? n(d, {}) : n(f, {});
38
+ })()), r((n) => {
39
+ var r = s.direction, i = e("absolute inset-x-0 z-10 flex h-6 cursor-default items-center justify-center bg-popover text-muted-foreground select-none [&_svg]:size-4", s.direction === "down" ? "bottom-0" : "top-0", s.class);
40
+ return r !== n.e && o(l, "data-direction", n.e = r), i !== n.t && t(l, n.t = i), n;
41
+ }, {
42
+ e: void 0,
43
+ t: void 0
44
+ }), l;
45
+ }
46
+ });
47
+ }
48
+ //#endregion
49
+ export { m as ScrollArrowButton };
50
+
51
+ //# sourceMappingURL=ScrollArrowButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScrollArrowButton.js","names":["Show","onCleanup","ChevronDown","ChevronUp","clsx","ScrollArrowButtonProps","ScrollArrowButton","props","frame","stop","undefined","cancelAnimationFrame","loop","el","target","step","Math","max","clientHeight","before","scrollTop","direction","requestAnimationFrame","start","attach","HTMLDivElement","addEventListener","removeEventListener","_$createComponent","when","visible","children","_el$","_tmpl$","_$use","_$insert","_c$","_$memo","_$effect","_p$","_v$","_v$2","class","e","_$setAttribute","t","_$className","_$createComponent","_$memo","_$setAttribute","_$className","_tmpl$","ScrollArrowButton","frame","stop","loop","el","props","step","before","start","attach","onCleanup","createComponent","Show","_el$","use","insert","_c$","memo","ChevronDown","ChevronUp","effect","_v$","_v$2","clsx","_p$","setAttribute","className"],"sources":["../../../src/components/scroll-arrows/ScrollArrowButton.tsx"],"sourcesContent":["import { Show, onCleanup } from \"solid-js\";\nimport { ChevronDown, ChevronUp } from \"lucide-solid\";\nimport { clsx } from \"~/utils\";\nimport type { ScrollArrowButtonProps } from \"./ScrollArrows.types\";\n\n/**\n * 单个滚动提示箭头:覆盖在列表上/下沿,悬停或按住时用 requestAnimationFrame\n * 持续滚动目标容器,到边界后 scrollTop 不再变化即自动停止。\n *\n * 箭头是装饰元素(`aria-hidden`、不可聚焦),无障碍仍由列表自身的\n * listbox/aria-activedescendant 承担。\n */\nexport function ScrollArrowButton(props: ScrollArrowButtonProps) {\n let frame: number | undefined;\n\n const stop = () => {\n if (frame !== undefined) {\n cancelAnimationFrame(frame);\n frame = undefined;\n }\n };\n\n const loop = () => {\n const el = props.target();\n if (!el) {\n stop();\n return;\n }\n // 每帧约滚动 1/24 高度,连续但不至于过快\n const step = Math.max(4, el.clientHeight / 24);\n const before = el.scrollTop;\n el.scrollTop = before + (props.direction === \"down\" ? step : -step);\n if (el.scrollTop === before) {\n stop();\n return;\n }\n frame = requestAnimationFrame(loop);\n };\n\n const start = () => {\n stop();\n frame = requestAnimationFrame(loop);\n };\n\n const attach = (el: HTMLDivElement) => {\n el.addEventListener(\"pointerenter\", start);\n el.addEventListener(\"pointerdown\", start);\n el.addEventListener(\"pointerleave\", stop);\n el.addEventListener(\"pointerup\", stop);\n el.addEventListener(\"pointercancel\", stop);\n onCleanup(() => {\n stop();\n el.removeEventListener(\"pointerenter\", start);\n el.removeEventListener(\"pointerdown\", start);\n el.removeEventListener(\"pointerleave\", stop);\n el.removeEventListener(\"pointerup\", stop);\n el.removeEventListener(\"pointercancel\", stop);\n });\n };\n\n return (\n <Show when={props.visible}>\n <div\n ref={attach}\n aria-hidden=\"true\"\n data-slot=\"scroll-arrow\"\n data-direction={props.direction}\n class={clsx(\n \"absolute inset-x-0 z-10 flex h-6 cursor-default items-center justify-center bg-popover text-muted-foreground select-none [&_svg]:size-4\",\n props.direction === \"down\" ? \"bottom-0\" : \"top-0\",\n props.class,\n )}\n >\n {props.direction === \"down\" ? <ChevronDown /> : <ChevronUp />}\n </div>\n </Show>\n );\n}\n"],"mappings":";;;;;;AAYA,SAAgBM,EAAkBC,GAA+B;CAC/D,IAAIC,GAEEC,UAAa;EACjB,AAAID,MAAUE,KAAAA,MACZC,qBAAqBH,CAAK,GAC1BA,IAAQE,KAAAA;CAEZ,GAEME,UAAa;EACjB,IAAMC,IAAKN,EAAMO,OAAO;EACxB,IAAI,CAACD,GAAI;GACPJ,EAAK;GACL;EACF;EAEA,IAAMM,IAAOC,KAAKC,IAAI,GAAGJ,EAAGK,eAAe,EAAE,GACvCC,IAASN,EAAGO;EAElB,IADAP,EAAGO,YAAYD,KAAUZ,EAAMc,cAAc,SAASN,IAAO,CAACA,IAC1DF,EAAGO,cAAcD,GAAQ;GAC3BV,EAAK;GACL;EACF;EACAD,IAAQc,sBAAsBV,CAAI;CACpC,GAEMW,UAAc;EAElBf,AADAC,EAAK,GACLD,IAAQc,sBAAsBV,CAAI;CACpC,GAEMY,KAAUX,MAAuB;EAMrCZ,AALAY,EAAGa,iBAAiB,gBAAgBH,CAAK,GACzCV,EAAGa,iBAAiB,eAAeH,CAAK,GACxCV,EAAGa,iBAAiB,gBAAgBjB,CAAI,GACxCI,EAAGa,iBAAiB,aAAajB,CAAI,GACrCI,EAAGa,iBAAiB,iBAAiBjB,CAAI,GACzCR,QAAgB;GAMdY,AALAJ,EAAK,GACLI,EAAGc,oBAAoB,gBAAgBJ,CAAK,GAC5CV,EAAGc,oBAAoB,eAAeJ,CAAK,GAC3CV,EAAGc,oBAAoB,gBAAgBlB,CAAI,GAC3CI,EAAGc,oBAAoB,aAAalB,CAAI,GACxCI,EAAGc,oBAAoB,iBAAiBlB,CAAI;EAC9C,CAAC;CACH;CAEA,OAAAmB,EACG5B,GAAI;EAAA,IAAC6B,OAAI;GAAA,OAAEtB,EAAMuB;EAAO;EAAA,IAAAC,WAAA;GAAA,IAAAC,IAAAC,EAAA;GAUpB,OAVoBC,EAEhBV,GAAMQ,CAAA,GAAAG,EAAAH,UAAA;IAAA,IAAAI,IAAAC,QAUV9B,EAAMc,cAAc,MAAM;IAAA,aAA1Be,EAAA,IAAAR,EAA8B1B,GAAW,CAAA,CAAA,IAAA0B,EAAOzB,GAAS,CAAA,CAAA;GAAG,EAAA,CAAA,CAAA,GAAAmC,GAAAC,MAAA;IAAA,IAAAC,IAP7CjC,EAAMc,WAASoB,IACxBrC,EACL,2IACAG,EAAMc,cAAc,SAAS,aAAa,SAC1Cd,EAAMmC,KACR;IAAC,OAAAF,MAAAD,EAAAI,KAAAC,EAAAZ,GAAA,kBAAAO,EAAAI,IAAAH,CAAA,GAAAC,MAAAF,EAAAM,KAAAC,EAAAd,GAAAO,EAAAM,IAAAJ,CAAA,GAAAF;GAAA,GAAA;IAAAI,GAAAjC,KAAAA;IAAAmC,GAAAnC,KAAAA;GAAA,CAAA,GAAAsB;EAAA;CAAA,CAAA;AAMT"}
@@ -0,0 +1,8 @@
1
+ import { JSX } from 'solid-js';
2
+ import { ScrollArrowsProps } from './ScrollArrows.types';
3
+ /**
4
+ * 列表/菜单弹层通用的滚动提示:隐藏原生滚动条后,在上/下沿叠加箭头,
5
+ * 提示该方向还有内容;悬停或按住箭头会持续滚动,到边界后箭头自动隐藏。
6
+ * 放在滚动容器(定位祖先)内部即可,需要容器自身是定位元素。
7
+ */
8
+ export declare function ScrollArrows(props: ScrollArrowsProps): JSX.Element;
@@ -0,0 +1,35 @@
1
+ import { clsx as e } from "../../utils/clsx.js";
2
+ import { useScrollEdges as t } from "../../hooks/useScrollEdges.js";
3
+ import { ScrollArrowButton as n } from "./ScrollArrowButton.js";
4
+ import { createComponent as r } from "solid-js/web";
5
+ //#region src/components/scroll-arrows/ScrollArrows.tsx
6
+ function i(i) {
7
+ let { canScrollUp: a, canScrollDown: o } = t(() => i.target());
8
+ return [r(n, {
9
+ direction: "up",
10
+ get visible() {
11
+ return a();
12
+ },
13
+ get target() {
14
+ return i.target;
15
+ },
16
+ get class() {
17
+ return e(i.class, i.upClass);
18
+ }
19
+ }), r(n, {
20
+ direction: "down",
21
+ get visible() {
22
+ return o();
23
+ },
24
+ get target() {
25
+ return i.target;
26
+ },
27
+ get class() {
28
+ return e(i.class, i.downClass);
29
+ }
30
+ })];
31
+ }
32
+ //#endregion
33
+ export { i as ScrollArrows };
34
+
35
+ //# sourceMappingURL=ScrollArrows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScrollArrows.js","names":["JSX","clsx","useScrollEdges","ScrollArrowButton","ScrollArrowsProps","ScrollArrows","props","Element","canScrollUp","canScrollDown","target","_$createComponent","direction","visible","class","upClass","downClass","_$createComponent","ScrollArrows","useScrollEdges","props","createComponent","ScrollArrowButton","canScrollUp","\"class\"","clsx","canScrollDown"],"sources":["../../../src/components/scroll-arrows/ScrollArrows.tsx"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { useScrollEdges } from \"~/hooks\";\nimport { ScrollArrowButton } from \"./ScrollArrowButton\";\nimport type { ScrollArrowsProps } from \"./ScrollArrows.types\";\n\n/**\n * 列表/菜单弹层通用的滚动提示:隐藏原生滚动条后,在上/下沿叠加箭头,\n * 提示该方向还有内容;悬停或按住箭头会持续滚动,到边界后箭头自动隐藏。\n * 放在滚动容器(定位祖先)内部即可,需要容器自身是定位元素。\n */\nexport function ScrollArrows(props: ScrollArrowsProps): JSX.Element {\n const { canScrollUp, canScrollDown } = useScrollEdges(() => props.target());\n\n return (\n <>\n <ScrollArrowButton\n direction=\"up\"\n visible={canScrollUp()}\n target={props.target}\n class={clsx(props.class, props.upClass)}\n />\n <ScrollArrowButton\n direction=\"down\"\n visible={canScrollDown()}\n target={props.target}\n class={clsx(props.class, props.downClass)}\n />\n </>\n );\n}\n"],"mappings":";;;;;AAWA,SAAgBK,EAAaC,GAAuC;CAClE,IAAM,EAAEE,gBAAaC,qBAAkBP,QAAqBI,EAAMI,OAAO,CAAC;CAE1E,OAAA,CAAAC,EAEKR,GAAiB;EAChBS,WAAS;EAAA,IACTC,UAAO;GAAA,OAAEL,EAAY;EAAC;EAAA,IACtBE,SAAM;GAAA,OAAEJ,EAAMI;EAAM;EAAA,IAAAc,QAAA;GAAA,OACbvB,EAAKK,EAAMQ,OAAOR,EAAMS,OAAO;EAAC;CAAA,CAAA,GAAAJ,EAExCR,GAAiB;EAChBS,WAAS;EAAA,IACTC,UAAO;GAAA,OAAEJ,EAAc;EAAC;EAAA,IACxBC,SAAM;GAAA,OAAEJ,EAAMI;EAAM;EAAA,IAAAc,QAAA;GAAA,OACbvB,EAAKK,EAAMQ,OAAOR,EAAMU,SAAS;EAAC;CAAA,CAAA,CAAA;AAIjD"}
@@ -0,0 +1,17 @@
1
+ import { Accessor } from 'solid-js';
2
+ export interface ScrollArrowsProps {
3
+ /** 滚动容器 accessor;组件内部据此计算上下边缘状态 */
4
+ target: Accessor<HTMLElement | undefined>;
5
+ /** 两个箭头共用的额外 class */
6
+ class?: string;
7
+ /** 顶部箭头额外 class(圆角等) */
8
+ upClass?: string;
9
+ /** 底部箭头额外 class(圆角等) */
10
+ downClass?: string;
11
+ }
12
+ export interface ScrollArrowButtonProps {
13
+ direction: "up" | "down";
14
+ visible: boolean;
15
+ target: Accessor<HTMLElement | undefined>;
16
+ class?: string;
17
+ }
@@ -0,0 +1,2 @@
1
+ export { ScrollArrows } from './ScrollArrows';
2
+ export type { ScrollArrowsProps } from './ScrollArrows.types';
@@ -0,0 +1,2 @@
1
+ import { ScrollArrows as e } from "./ScrollArrows.js";
2
+ export { e as ScrollArrows };
@@ -1 +1 @@
1
- {"version":3,"file":"Select.context.js","names":[],"sources":["../../../../src/components/select/Select/Select.context.ts"],"sourcesContent":["import { createContext, useContext } from \"solid-js\";\nimport type { SelectContextValue, SelectOptionValue } from \"./Select.types\";\n\nexport const SelectContext = createContext<SelectContextValue>();\n\nexport function useSelectContext(\n component: string,\n): SelectContextValue<SelectOptionValue> {\n const ctx = useContext(SelectContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <Select> 内部`);\n }\n return ctx;\n}\n"],"mappings":";;AAGA,IAAa,IAAgB,EAAkC;AAE/D,SAAgB,EACd,GACuC;CACvC,IAAM,IAAM,EAAW,CAAa;CACpC,IAAI,CAAC,GACH,MAAU,MAAM,IAAI,EAAU,oBAAoB;CAEpD,OAAO;AACT"}
1
+ {"version":3,"file":"Select.context.js","names":["SelectContext","createContext","useSelectContext","ctx","useContext","component"],"sources":["../../../../src/components/select/Select/Select.context.ts"],"sourcesContent":["import { createContext, useContext } from \"solid-js\";\nimport type { SelectContextValue, SelectOptionValue } from \"./Select.types\";\n\nexport const SelectContext = createContext<SelectContextValue>();\n\nexport function useSelectContext(\n component: string,\n): SelectContextValue<SelectOptionValue> {\n const ctx = useContext(SelectContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <Select> 内部`);\n }\n return ctx;\n}\n"],"mappings":";;AAGA,IAAaA,IAAgBC,EAAkC;AAE/D,SAAgBC,EACd,GACuC;CACvC,IAAMC,IAAMC,EAAWJ,CAAa;CACpC,IAAI,CAACG,GACH,MAAU,MAAM,IAAIE,EAAU,oBAAoB;CAEpD,OAAOF;AACT"}
@@ -1,48 +1,51 @@
1
- import { SelectContext as e } from "./Select.context.js";
2
- import { createComponent as t } from "solid-js/web";
3
- import { createMemo as n, createSignal as r, createUniqueId as i } from "solid-js";
4
- import { createStore as a, produce as o } from "solid-js/store";
1
+ import { useScrollLock as e } from "../../../hooks/useScrollLock.js";
2
+ import { SelectContext as t } from "./Select.context.js";
3
+ import { createComponent as n } from "solid-js/web";
4
+ import { createMemo as r, createSignal as i, createUniqueId as a } from "solid-js";
5
+ import { createStore as o, produce as s } from "solid-js/store";
5
6
  //#region src/components/select/Select/Select.tsx
6
- function s(s) {
7
- let [c, l] = r(s.defaultValue), u = n(() => s.value === void 0 ? c() : s.value), d = (e) => {
8
- s.value === void 0 && l(() => e), s.onValueChange?.(e);
9
- }, [f, p] = r(s.defaultOpen ?? !1), m = n(() => s.open === void 0 ? f() : s.open), h = n(() => !!s.disabled), g = (e) => {
10
- s.open === void 0 && p(e), s.onOpenChange?.(e);
11
- }, [_, v] = r(), [y, b] = r(), [x, S] = r(), [C, w] = a([]), T = `select-content-${i()}`, E = (e) => (w(o((t) => t.push(e))), () => w(o((t) => {
7
+ function c(c) {
8
+ let [l, u] = i(c.defaultValue), d = r(() => c.value === void 0 ? l() : c.value), f = (e) => {
9
+ c.value === void 0 && u(() => e), c.onValueChange?.(e);
10
+ }, [p, m] = i(c.defaultOpen ?? !1), h = r(() => c.open === void 0 ? p() : c.open), g = r(() => !!c.disabled), _ = r(() => c.lockScroll ?? !0);
11
+ e(() => h() && _(), { allowedSelector: "[data-slot=\"select-content\"]" });
12
+ let v = (e) => {
13
+ c.open === void 0 && m(e), c.onOpenChange?.(e);
14
+ }, [y, b] = i(), [x, S] = i(), [C, w] = i(), [T, E] = o([]), D = `select-content-${a()}`, O = (e) => (E(s((t) => t.push(e))), () => E(s((t) => {
12
15
  let n = t.findIndex((t) => t.value === e.value);
13
16
  n !== -1 && t.splice(n, 1);
14
- }))), D = () => g(!1), O = () => {
15
- g(!1), _()?.focus?.();
16
- }, k = {
17
- value: u,
18
- setValue: d,
19
- open: m,
20
- setOpen: g,
21
- disabled: h,
22
- contentId: T,
23
- reference: _,
24
- setReference: v,
25
- floating: y,
26
- setFloating: b,
17
+ }))), k = () => v(!1), A = () => {
18
+ v(!1), y()?.focus?.();
19
+ }, j = {
20
+ value: d,
21
+ setValue: f,
22
+ open: h,
23
+ setOpen: v,
24
+ disabled: g,
25
+ contentId: D,
26
+ reference: y,
27
+ setReference: b,
28
+ floating: x,
29
+ setFloating: S,
27
30
  get items() {
28
- return C;
31
+ return T;
29
32
  },
30
- registerItem: E,
31
- activeValue: x,
32
- setActiveValue: S,
33
+ registerItem: O,
34
+ activeValue: C,
35
+ setActiveValue: w,
33
36
  selectValue: (e) => {
34
- d(e), O();
37
+ f(e), A();
35
38
  },
36
- close: D
39
+ close: k
37
40
  };
38
- return t(e.Provider, {
39
- value: k,
41
+ return n(t.Provider, {
42
+ value: j,
40
43
  get children() {
41
- return s.children;
44
+ return c.children;
42
45
  }
43
46
  });
44
47
  }
45
48
  //#endregion
46
- export { s as Select };
49
+ export { c as Select };
47
50
 
48
51
  //# sourceMappingURL=Select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["createSignal","createMemo","createUniqueId","JSX","createStore","produce","SelectContext","SelectContextValue","SelectItemMeta","SelectOptionValue","SelectProps","Select","props","T","Element","internalValue","setInternalValue","defaultValue","value","undefined","setValue","v","onValueChange","internalOpen","setInternalOpen","defaultOpen","open","disabled","setOpen","next","onOpenChange","reference","setReference","floating","setFloating","HTMLElement","activeValue","setActiveValue","items","setItems","contentId","registerItem","item","list","push","idx","findIndex","it","splice","close","closeAndFocusTrigger","focus","selectValue","ctx","_$createComponent","Provider","children"],"sources":["../../../../src/components/select/Select/Select.tsx"],"sourcesContent":["import { createSignal, createMemo, createUniqueId, type JSX } from \"solid-js\";\nimport { createStore, produce } from \"solid-js/store\";\nimport { SelectContext } from \"./Select.context\";\nimport type {\n SelectContextValue,\n SelectItemMeta,\n SelectOptionValue,\n SelectProps,\n} from \"./Select.types\";\n\n/**\n * Select 根组件:不渲染任何 DOM,只负责状态管理 + 提供 context。\n * 真正的展示交给 <SelectTrigger>/<SelectValue>/<SelectContent>/<SelectItem>。\n *\n * 泛型 T 约束为 string | number,用于约束 value / defaultValue /\n * onValueChange / SelectItem.value 的类型。\n *\n * @example\n * ```tsx\n * <Select value={fruit()} onValueChange={setFruit}>\n * <SelectTrigger>\n * <SelectValue placeholder=\"选择一个水果\" />\n * </SelectTrigger>\n * <SelectContent>\n * <SelectItem value=\"apple\">苹果</SelectItem>\n * </SelectContent>\n * </Select>\n * ```\n */\nexport function Select<T extends SelectOptionValue = string>(\n props: SelectProps<T>,\n): JSX.Element {\n const [internalValue, setInternalValue] = createSignal<T | undefined>(\n props.defaultValue,\n );\n const value = createMemo(() =>\n props.value !== undefined ? props.value : internalValue(),\n );\n\n const setValue = (v: T) => {\n if (props.value === undefined) setInternalValue(() => v);\n props.onValueChange?.(v);\n };\n\n const [internalOpen, setInternalOpen] = createSignal(\n props.defaultOpen ?? false,\n );\n const open = createMemo(() =>\n props.open !== undefined ? props.open : internalOpen(),\n );\n const disabled = createMemo(() => !!props.disabled);\n\n const setOpen = (next: boolean) => {\n if (props.open === undefined) setInternalOpen(next);\n props.onOpenChange?.(next);\n };\n\n const [reference, setReference] = createSignal<Element>();\n const [floating, setFloating] = createSignal<HTMLElement>();\n const [activeValue, setActiveValue] = createSignal<T>();\n const [items, setItems] = createStore<SelectItemMeta<SelectOptionValue>[]>(\n [],\n );\n const contentId = `select-content-${createUniqueId()}`;\n\n const registerItem = (item: SelectItemMeta<SelectOptionValue>) => {\n setItems(produce((list) => list.push(item)));\n return () =>\n setItems(\n produce((list) => {\n const idx = list.findIndex((it) => it.value === item.value);\n if (idx !== -1) list.splice(idx, 1);\n }),\n );\n };\n\n const close = () => setOpen(false);\n\n const closeAndFocusTrigger = () => {\n setOpen(false);\n (reference() as HTMLElement | undefined)?.focus?.();\n };\n\n const selectValue = (v: SelectOptionValue) => {\n setValue(v as T);\n closeAndFocusTrigger();\n };\n\n const ctx: SelectContextValue = {\n value: value as SelectContextValue[\"value\"],\n setValue: setValue as SelectContextValue[\"setValue\"],\n open,\n setOpen,\n disabled,\n contentId,\n reference,\n setReference,\n floating,\n setFloating,\n get items() {\n return items;\n },\n registerItem,\n activeValue: activeValue as SelectContextValue[\"activeValue\"],\n setActiveValue: setActiveValue as SelectContextValue[\"setActiveValue\"],\n selectValue,\n close,\n };\n\n return (\n <SelectContext.Provider value={ctx}>\n {props.children}\n </SelectContext.Provider>\n );\n}\n"],"mappings":";;;;;AA6BA,SAAgBW,EACdC,GACa;CACb,IAAM,CAACG,GAAeC,KAAoBhB,EACxCY,EAAMK,YACR,GACMC,IAAQjB,QACZW,EAAMM,UAAUC,KAAAA,IAA0BJ,EAAc,IAA5BH,EAAMM,KACpC,GAEME,KAAYC,MAAS;EAEzBT,AADIA,EAAMM,UAAUC,KAAAA,KAAWH,QAAuBK,CAAC,GACvDT,EAAMU,gBAAgBD,CAAC;CACzB,GAEM,CAACE,GAAcC,KAAmBxB,EACtCY,EAAMa,eAAe,EACvB,GACMC,IAAOzB,QACXW,EAAMc,SAASP,KAAAA,IAAyBI,EAAa,IAA1BX,EAAMc,IACnC,GACMC,IAAW1B,QAAiB,CAAC,CAACW,EAAMe,QAAQ,GAE5CC,KAAWC,MAAkB;EAEjCjB,AADIA,EAAMc,SAASP,KAAAA,KAAWK,EAAgBK,CAAI,GAClDjB,EAAMkB,eAAeD,CAAI;CAC3B,GAEM,CAACE,GAAWC,KAAgBhC,EAAsB,GAClD,CAACiC,GAAUC,KAAelC,EAA0B,GACpD,CAACoC,GAAaC,KAAkBrC,EAAgB,GAChD,CAACsC,GAAOC,KAAYnC,EACxB,CAAA,CACF,GACMoC,IAAY,kBAAkBtC,EAAe,KAE7CuC,KAAgBC,OACpBH,EAASlC,GAASsC,MAASA,EAAKC,KAAKF,CAAI,CAAC,CAAC,SAEzCH,EACElC,GAASsC,MAAS;EAChB,IAAME,IAAMF,EAAKG,WAAWC,MAAOA,EAAG7B,UAAUwB,EAAKxB,KAAK;EAC1D,AAAI2B,MAAQ,MAAIF,EAAKK,OAAOH,GAAK,CAAC;CACpC,CAAC,CACH,IAGEI,UAAcrB,EAAQ,EAAK,GAE3BsB,UAA6B;EAEjC,AADAtB,EAAQ,EAAK,GACb,EAAW,CAAC,EAA8BuB,QAAQ;CACpD,GAOME,IAA0B;EACvBnC;EACGE;EACVM;EACAE;EACAD;EACAa;EACAT;EACAC;EACAC;EACAC;EACA,IAAII,QAAQ;GACV,OAAOA;EACT;EACAG;EACaL;EACGC;EAChBe,cAtBmB/B,MAAyB;GAE5C6B,AADA9B,EAASC,CAAM,GACf6B,EAAqB;EACvB;EAoBED;CACF;CAEA,OAAAK,EACGhD,EAAciD,UAAQ;EAACrC,OAAOmC;EAAG,IAAAG,WAAA;GAAA,OAC/B5C,EAAM4C;EAAQ;CAAA,CAAA;AAGrB"}
1
+ {"version":3,"file":"Select.js","names":["createSignal","createMemo","createUniqueId","JSX","createStore","produce","useScrollLock","SelectContext","SelectContextValue","SelectItemMeta","SelectOptionValue","SelectProps","Select","props","T","Element","internalValue","setInternalValue","defaultValue","value","undefined","setValue","v","onValueChange","internalOpen","setInternalOpen","defaultOpen","open","disabled","lockScroll","allowedSelector","setOpen","next","onOpenChange","reference","setReference","floating","setFloating","HTMLElement","activeValue","setActiveValue","items","setItems","contentId","registerItem","item","list","push","idx","findIndex","it","splice","close","closeAndFocusTrigger","focus","selectValue","ctx","_$createComponent","Provider","children","_$createComponent","Select","internalValue","setInternalValue","createSignal","props","value","createMemo","setValue","v","internalOpen","setInternalOpen","open","disabled","lockScroll","setOpen","next","reference","setReference","floating","setFloating","activeValue","setActiveValue","items","setItems","createStore","contentId","createUniqueId","registerItem","produce","list","item","idx","it","close","closeAndFocusTrigger","ctx","createComponent","SelectContext"],"sources":["../../../../src/components/select/Select/Select.tsx"],"sourcesContent":["import { createSignal, createMemo, createUniqueId, type JSX } from \"solid-js\";\nimport { createStore, produce } from \"solid-js/store\";\nimport { useScrollLock } from \"~/hooks\";\nimport { SelectContext } from \"./Select.context\";\nimport type {\n SelectContextValue,\n SelectItemMeta,\n SelectOptionValue,\n SelectProps,\n} from \"./Select.types\";\n\n/**\n * Select 根组件:不渲染任何 DOM,只负责状态管理 + 提供 context。\n * 真正的展示交给 <SelectTrigger>/<SelectValue>/<SelectContent>/<SelectItem>。\n *\n * 泛型 T 约束为 string | number,用于约束 value / defaultValue /\n * onValueChange / SelectItem.value 的类型。\n *\n * @example\n * ```tsx\n * <Select value={fruit()} onValueChange={setFruit}>\n * <SelectTrigger>\n * <SelectValue placeholder=\"选择一个水果\" />\n * </SelectTrigger>\n * <SelectContent>\n * <SelectItem value=\"apple\">苹果</SelectItem>\n * </SelectContent>\n * </Select>\n * ```\n */\nexport function Select<T extends SelectOptionValue = string>(\n props: SelectProps<T>,\n): JSX.Element {\n const [internalValue, setInternalValue] = createSignal<T | undefined>(\n props.defaultValue,\n );\n const value = createMemo(() =>\n props.value !== undefined ? props.value : internalValue(),\n );\n\n const setValue = (v: T) => {\n if (props.value === undefined) setInternalValue(() => v);\n props.onValueChange?.(v);\n };\n\n const [internalOpen, setInternalOpen] = createSignal(\n props.defaultOpen ?? false,\n );\n const open = createMemo(() =>\n props.open !== undefined ? props.open : internalOpen(),\n );\n const disabled = createMemo(() => !!props.disabled);\n const lockScroll = createMemo(() => props.lockScroll ?? true);\n\n // 打开期间默认锁定页面滚动:锁住文档滚动并拦截浮层之外的滚轮/触摸,\n // 面板自身仍可滚动。传 lockScroll={false} 可关闭该行为。\n useScrollLock(() => open() && lockScroll(), {\n allowedSelector: '[data-slot=\"select-content\"]',\n });\n\n const setOpen = (next: boolean) => {\n if (props.open === undefined) setInternalOpen(next);\n props.onOpenChange?.(next);\n };\n\n const [reference, setReference] = createSignal<Element>();\n const [floating, setFloating] = createSignal<HTMLElement>();\n const [activeValue, setActiveValue] = createSignal<T>();\n const [items, setItems] = createStore<SelectItemMeta<SelectOptionValue>[]>(\n [],\n );\n const contentId = `select-content-${createUniqueId()}`;\n\n const registerItem = (item: SelectItemMeta<SelectOptionValue>) => {\n setItems(produce((list) => list.push(item)));\n return () =>\n setItems(\n produce((list) => {\n const idx = list.findIndex((it) => it.value === item.value);\n if (idx !== -1) list.splice(idx, 1);\n }),\n );\n };\n\n const close = () => setOpen(false);\n\n const closeAndFocusTrigger = () => {\n setOpen(false);\n (reference() as HTMLElement | undefined)?.focus?.();\n };\n\n const selectValue = (v: SelectOptionValue) => {\n setValue(v as T);\n closeAndFocusTrigger();\n };\n\n const ctx: SelectContextValue = {\n value: value as SelectContextValue[\"value\"],\n setValue: setValue as SelectContextValue[\"setValue\"],\n open,\n setOpen,\n disabled,\n contentId,\n reference,\n setReference,\n floating,\n setFloating,\n get items() {\n return items;\n },\n registerItem,\n activeValue: activeValue as SelectContextValue[\"activeValue\"],\n setActiveValue: setActiveValue as SelectContextValue[\"setActiveValue\"],\n selectValue,\n close,\n };\n\n return (\n <SelectContext.Provider value={ctx}>\n {props.children}\n </SelectContext.Provider>\n );\n}\n"],"mappings":";;;;;;AA8BA,SAAgBY,EACdC,GACa;CACb,IAAM,CAACG,GAAeC,KAAoBjB,EACxCa,EAAMK,YACR,GACMC,IAAQlB,QACZY,EAAMM,UAAUC,KAAAA,IAA0BJ,EAAc,IAA5BH,EAAMM,KACpC,GAEME,KAAYC,MAAS;EAEzBT,AADIA,EAAMM,UAAUC,KAAAA,KAAWH,QAAuBK,CAAC,GACvDT,EAAMU,gBAAgBD,CAAC;CACzB,GAEM,CAACE,GAAcC,KAAmBzB,EACtCa,EAAMa,eAAe,EACvB,GACMC,IAAO1B,QACXY,EAAMc,SAASP,KAAAA,IAAyBI,EAAa,IAA1BX,EAAMc,IACnC,GACMC,IAAW3B,QAAiB,CAAC,CAACY,EAAMe,QAAQ,GAC5CC,IAAa5B,QAAiBY,EAAMgB,cAAc,EAAI;CAI5DvB,QAAoBqB,EAAK,KAAKE,EAAW,GAAG,EAC1CC,iBAAiB,iCACnB,CAAC;CAED,IAAMC,KAAWC,MAAkB;EAEjCnB,AADIA,EAAMc,SAASP,KAAAA,KAAWK,EAAgBO,CAAI,GAClDnB,EAAMoB,eAAeD,CAAI;CAC3B,GAEM,CAACE,GAAWC,KAAgBnC,EAAsB,GAClD,CAACoC,GAAUC,KAAerC,EAA0B,GACpD,CAACuC,GAAaC,KAAkBxC,EAAgB,GAChD,CAACyC,GAAOC,KAAYtC,EACxB,CAAA,CACF,GACMuC,IAAY,kBAAkBzC,EAAe,KAE7C0C,KAAgBC,OACpBH,EAASrC,GAASyC,MAASA,EAAKC,KAAKF,CAAI,CAAC,CAAC,SAEzCH,EACErC,GAASyC,MAAS;EAChB,IAAME,IAAMF,EAAKG,WAAWC,MAAOA,EAAG/B,UAAU0B,EAAK1B,KAAK;EAC1D,AAAI6B,MAAQ,MAAIF,EAAKK,OAAOH,GAAK,CAAC;CACpC,CAAC,CACH,IAGEI,UAAcrB,EAAQ,EAAK,GAE3BsB,UAA6B;EAEjC,AADAtB,EAAQ,EAAK,GACb8C,EAAW,CAAC,EAA8BvB,QAAQ;CACpD,GAOME,IAA0B;EACvBrC;EACGE;EACVM;EACAI;EACAH;EACAe;EACAT;EACAC;EACAC;EACAC;EACA,IAAII,QAAQ;GACV,OAAOA;EACT;EACAG;EACaL;EACGC;EAChBe,cAtBmBjC,MAAyB;GAE5C+B,AADAhC,EAASC,CAAM,GACf+B,EAAqB;EACvB;EAoBED;CACF;CAEA,OAAAK,EACGlD,EAAcmD,UAAQ;EAACvC,OAAOqC;EAAG,IAAAG,WAAA;GAAA,OAC/B9C,EAAM8C;EAAQ;CAAA,CAAA;AAGrB"}
@@ -19,6 +19,11 @@ export interface SelectProps<T extends SelectOptionValue = string> extends Paren
19
19
  defaultOpen?: boolean;
20
20
  onOpenChange?: (open: boolean) => void;
21
21
  disabled?: boolean;
22
+ /**
23
+ * 打开时是否锁定页面滚动,默认 true:锁住文档滚动并拦截浮层之外的
24
+ * 滚轮/触摸滚动,面板自身仍可滚动。
25
+ */
26
+ lockScroll?: boolean;
22
27
  }
23
28
  export interface SelectContextValue<T extends SelectOptionValue = SelectOptionValue> {
24
29
  value: Accessor<T | null | undefined>;
@@ -1,2 +1,2 @@
1
1
  import { SelectContentProps } from './SelectContent.types';
2
- export declare function SelectContent(props: SelectContentProps): import("solid-js").JSX.Element;
2
+ export declare function SelectContent(props: SelectContentProps): import('solid-js').JSX.Element;
@@ -1,80 +1,85 @@
1
1
  import { clsx as e } from "../../../utils/clsx.js";
2
2
  import { useSelectContent as t } from "./useSelectContent.js";
3
- import { Portal as n, createComponent as r, effect as i, insert as a, mergeProps as o, spread as s, style as c, template as l, use as u } from "solid-js/web";
4
- import { createEffect as d, createMemo as f, onCleanup as p, splitProps as m } from "solid-js";
3
+ import { ScrollArrows as n } from "../../scroll-arrows/ScrollArrows.js";
4
+ import { Portal as r, createComponent as i, effect as a, insert as o, mergeProps as s, spread as c, style as l, template as u, use as d } from "solid-js/web";
5
+ import { createEffect as f, createMemo as p, onCleanup as m, splitProps as h } from "solid-js";
5
6
  //#region src/components/select/SelectContent/SelectContent.tsx
6
- var h = /*#__PURE__*/ l("<div data-slot=select-content style=z-index:1000><div role=listbox>");
7
- function g(l) {
8
- let { ctx: g, pos: _, maxHeight: v, isVisible: y, animationState: b, contentElement: x, setContentElement: S } = t(() => l), [C, w] = m(l, [
7
+ var g = /*#__PURE__*/ u("<div data-slot=select-content style=z-index:1000><div role=listbox>");
8
+ function _(u) {
9
+ let { ctx: _, pos: v, maxHeight: y, isVisible: b, animationState: x, contentElement: S, setContentElement: C } = t(() => u), [w, T] = h(u, [
9
10
  "placement",
10
11
  "collisionPadding",
11
12
  "class",
12
13
  "style",
13
14
  "children"
14
- ]), T = f(() => g.items.filter((e) => !e.disabled)), E = (e) => {
15
- let t = T();
15
+ ]), E = p(() => _.items.filter((e) => !e.disabled)), D = (e) => {
16
+ let t = E();
16
17
  if (t.length === 0) return;
17
- let n = (t.findIndex((e) => e.value === g.activeValue()) + e + t.length) % t.length;
18
- g.setActiveValue(t[n].value);
19
- }, D = (e) => {
18
+ let n = (t.findIndex((e) => e.value === _.activeValue()) + e + t.length) % t.length;
19
+ _.setActiveValue(t[n].value);
20
+ }, O = (e) => {
20
21
  switch (e.key) {
21
22
  case "ArrowDown":
22
- e.preventDefault(), E(1);
23
+ e.preventDefault(), D(1);
23
24
  break;
24
25
  case "ArrowUp":
25
- e.preventDefault(), E(-1);
26
+ e.preventDefault(), D(-1);
26
27
  break;
27
28
  case "Enter":
28
29
  case " ":
29
- e.preventDefault(), g.activeValue() !== void 0 && g.selectValue(g.activeValue());
30
+ e.preventDefault(), _.activeValue() !== void 0 && _.selectValue(_.activeValue());
30
31
  break;
31
32
  case "Escape":
32
- e.preventDefault(), g.close();
33
+ e.preventDefault(), _.close();
33
34
  break;
34
- case "Tab": g.setOpen(!1);
35
+ case "Tab": _.setOpen(!1);
35
36
  }
36
37
  };
37
- return d(() => {
38
- if (!g.open()) return;
38
+ return f(() => {
39
+ if (!_.open()) return;
39
40
  let e = (e) => {
40
41
  let t = e.target;
41
- !g.reference()?.contains(t) && !g.floating()?.contains(t) && (g.setOpen(!1), e.stopPropagation());
42
+ !_.reference()?.contains(t) && !_.floating()?.contains(t) && (_.setOpen(!1), e.stopPropagation());
42
43
  };
43
- document.addEventListener("pointerdown", e, { capture: !0 }), p(() => document.removeEventListener("pointerdown", e, { capture: !0 }));
44
- }), d(() => {
45
- g.open() && (document.addEventListener("keydown", D), p(() => document.removeEventListener("keydown", D)));
46
- }), d(() => {
47
- let e = g.activeValue(), t = x();
48
- !e || !t || t.querySelector(`[data-value="${CSS.escape(String(e))}"]`)?.scrollIntoView({ block: "nearest" });
49
- }), r(n, { get children() {
50
- var t = h(), n = t.firstChild;
51
- return u((e) => {
52
- g.setFloating(e), p(() => g.setFloating(void 0));
53
- }, t), u(S, n), s(n, o({
44
+ document.addEventListener("pointerdown", e, { capture: !0 }), m(() => document.removeEventListener("pointerdown", e, { capture: !0 }));
45
+ }), f(() => {
46
+ _.open() && (document.addEventListener("keydown", O), m(() => document.removeEventListener("keydown", O)));
47
+ }), f(() => {
48
+ let e = _.activeValue(), t = S();
49
+ e && t && t.querySelector(`[data-value="${CSS.escape(String(e))}"]`)?.scrollIntoView({ block: "nearest" });
50
+ }), i(r, { get children() {
51
+ var t = g(), r = t.firstChild;
52
+ return d((e) => {
53
+ _.setFloating(e), m(() => _.setFloating(void 0));
54
+ }, t), d(C, r), c(r, s({
54
55
  get "data-state"() {
55
- return b();
56
+ return x();
56
57
  },
57
58
  get style() {
58
59
  return {
59
60
  position: "relative",
60
- width: _.middlewareData().matchWidth?.width ? `${_.middlewareData().matchWidth.width}px` : void 0,
61
- "max-height": v() ? `${v()}px` : void 0,
61
+ width: v.middlewareData().matchWidth?.width ? `${v.middlewareData().matchWidth.width}px` : void 0,
62
+ "max-height": y() ? `${y()}px` : void 0,
62
63
  overflow: "auto",
63
- ...typeof C.style == "object" ? C.style : void 0
64
+ ...typeof w.style == "object" ? w.style : void 0
64
65
  };
65
66
  },
66
67
  get class() {
67
- return e("min-w-36", "rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100", "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95", C.class);
68
+ return e("min-w-36", "no-scrollbar [&::-webkit-scrollbar]:hidden", "rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100", "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95", w.class);
68
69
  }
69
- }, w), !1, !0), a(n, () => C.children), i((e) => c(t, {
70
- ..._.floatingStyles(),
71
- opacity: y() && _.isPositioned() ? 1 : 0,
72
- "pointer-events": y() ? "auto" : "none",
73
- visibility: y() ? "visible" : "hidden"
70
+ }, T), !1, !0), o(r, () => w.children), o(t, i(n, {
71
+ target: S,
72
+ upClass: "rounded-t-lg",
73
+ downClass: "rounded-b-lg"
74
+ }), null), a((e) => l(t, {
75
+ ...v.floatingStyles(),
76
+ opacity: b() && v.isPositioned() ? 1 : 0,
77
+ "pointer-events": b() ? "auto" : "none",
78
+ visibility: b() ? "visible" : "hidden"
74
79
  }, e)), t;
75
80
  } });
76
81
  }
77
82
  //#endregion
78
- export { g as SelectContent };
83
+ export { _ as SelectContent };
79
84
 
80
85
  //# sourceMappingURL=SelectContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectContent.js","names":["onCleanup","splitProps","createMemo","createEffect","Portal","useSelectContent","SelectContentProps","clsx","SelectContent","props","ctx","pos","maxHeight","isVisible","animationState","contentElement","setContentElement","local","rest","enabledItems","items","filter","it","disabled","moveActive","dir","list","length","currentIndex","findIndex","value","activeValue","nextIndex","setActiveValue","onKeyDown","e","KeyboardEvent","key","preventDefault","undefined","selectValue","close","setOpen","open","onPointerDown","PointerEvent","target","Node","reference","contains","floating","stopPropagation","document","addEventListener","capture","removeEventListener","active","el","querySelector","HTMLElement","CSS","escape","String","scrollIntoView","block","_$createComponent","children","_el$","_tmpl$","_el$2","firstChild","_$use","setFloating","_$spread","_$mergeProps","data-state","style","position","width","middlewareData","matchWidth","overflow","class","_$insert","_$effect","_$p","_$style","floatingStyles","opacity","isPositioned","visibility"],"sources":["../../../../src/components/select/SelectContent/SelectContent.tsx"],"sourcesContent":["import { onCleanup, splitProps, createMemo, createEffect } from \"solid-js\";\nimport { Portal } from \"solid-js/web\";\nimport { useSelectContent } from \"./useSelectContent\";\nimport type { SelectContentProps } from \"./SelectContent.types\";\nimport { clsx } from \"~/utils\";\n\nexport function SelectContent(props: SelectContentProps) {\n const {\n ctx,\n pos,\n maxHeight,\n isVisible,\n animationState,\n contentElement,\n setContentElement,\n } = useSelectContent(() => props);\n\n const [local, rest] = splitProps(props, [\n \"placement\",\n \"collisionPadding\",\n \"class\",\n \"style\",\n \"children\",\n ]);\n\n const enabledItems = createMemo(() => ctx.items.filter((it) => !it.disabled));\n\n const moveActive = (dir: 1 | -1) => {\n const list = enabledItems();\n if (list.length === 0) return;\n const currentIndex = list.findIndex((it) => it.value === ctx.activeValue());\n const nextIndex = (currentIndex + dir + list.length) % list.length;\n ctx.setActiveValue(list[nextIndex].value);\n };\n\n const onKeyDown = (e: KeyboardEvent) => {\n switch (e.key) {\n case \"ArrowDown\":\n e.preventDefault();\n moveActive(1);\n break;\n case \"ArrowUp\":\n e.preventDefault();\n moveActive(-1);\n break;\n case \"Enter\":\n case \" \":\n e.preventDefault();\n if (ctx.activeValue() !== undefined)\n ctx.selectValue(ctx.activeValue()!);\n break;\n case \"Escape\":\n e.preventDefault();\n ctx.close();\n break;\n case \"Tab\":\n ctx.setOpen(false);\n break;\n }\n };\n\n // 点击外部关闭:捕获阶段监听 + stopPropagation,在事件还没下沉到真正的目标\n // 元素之前就拦截掉,避免点击穿透到浮层下面被盖住的元素(细节见\n // production-tooltip 那边点击穿透问题的排查记录,这里直接复用同一个模式)。\n createEffect(() => {\n if (!ctx.open()) return;\n const onPointerDown = (e: PointerEvent) => {\n const target = e.target as Node;\n if (\n !ctx.reference()?.contains(target) &&\n !ctx.floating()?.contains(target)\n ) {\n ctx.setOpen(false);\n e.stopPropagation();\n }\n };\n document.addEventListener(\"pointerdown\", onPointerDown, { capture: true });\n onCleanup(() =>\n document.removeEventListener(\"pointerdown\", onPointerDown, {\n capture: true,\n }),\n );\n });\n\n // 打开时把键盘事件绑到 document,这样不需要抢 focus 也能用方向键\n createEffect(() => {\n if (!ctx.open()) return;\n document.addEventListener(\"keydown\", onKeyDown);\n onCleanup(() => document.removeEventListener(\"keydown\", onKeyDown));\n });\n\n // 高亮项变化时自动滚动到可见区域\n createEffect(() => {\n const active = ctx.activeValue();\n const el = contentElement();\n if (!active || !el) return;\n el.querySelector<HTMLElement>(\n `[data-value=\"${CSS.escape(String(active))}\"]`,\n )?.scrollIntoView({ block: \"nearest\" });\n });\n\n return (\n <Portal>\n {/*\n 外层:只负责定位(position:fixed 来自 floatingStyles),不参与动画。\n 它的 transform 专门用来做 translate(x,y) 定位——如果内层的 zoom-in-95\n 动画也放在这一层,两者会互相冲突(细节见 SelectContent.utils.ts 顶部\n 的注释)。\n\n 关闭时不再卸载整个 Portal,而是用 visibility/pointer-events 隐藏:\n SelectItem 通过 onMount 向 ctx 注册 item 元数据,如果关闭时把子节点\n 卸载掉,ctx.items 会被清空,SelectValue 就无法再用 item.label 渲染\n 已选值。让子节点持续挂载,items 的注册生命周期才和 SelectContent\n 本身一致;隐藏只是视觉/交互上的关闭,不影响数据。\n */}\n <div\n data-slot=\"select-content\"\n ref={(el) => {\n ctx.setFloating(el);\n // 元素卸载时清空 ctx.floating(),避免后续读到已从 DOM 摘除的\n // 僵尸节点(Solid 的 ref 回调只在创建时触发一次,不会自动在\n // 卸载时传 undefined)。\n onCleanup(() => ctx.setFloating(undefined));\n }}\n style={{\n ...pos.floatingStyles(),\n \"z-index\": 1000,\n opacity: isVisible() && pos.isPositioned() ? 1 : 0,\n \"pointer-events\": isVisible() ? \"auto\" : \"none\",\n visibility: isVisible() ? \"visible\" : \"hidden\",\n }}\n >\n {/*\n 内层:真正的视觉样式 + overflow:auto 滚动 + 进出场动画。\n position: relative 是为了让它成为内部所有选项的 offsetParent——\n \"选中项对齐\"这套定位策略要用 offsetTop 算选项在列表里的位置,\n 这个值必须相对\"真正会滚动的这个元素\"才准确,不能让它被外层\n (不滚动)抢走 offsetParent 的身份。\n */}\n <div\n ref={setContentElement}\n role=\"listbox\"\n data-state={animationState()}\n style={{\n position: \"relative\",\n width: pos.middlewareData().matchWidth?.width\n ? `${pos.middlewareData().matchWidth.width}px`\n : undefined,\n \"max-height\": maxHeight() ? `${maxHeight()}px` : undefined,\n overflow: \"auto\",\n ...(typeof local.style === \"object\" ? local.style : undefined),\n }}\n class={clsx(\n \"min-w-36\",\n \"rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100\",\n // 只保留入场动画,没有退场动画:关闭瞬间外层直接 visibility:hidden,\n // data-state 也立即切回 closed,没有退场动画阶段,自然不会出现\n // 选中项变更时\"面板先跳一下再消失\"的问题。duration-100(100ms)\n // 比默认的 150ms 更短——下拉菜单这种高频交互的组件,动画应该比\n // tooltip 更快、更利落。\n \"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95\",\n local.class,\n )}\n {...rest}\n >\n {local.children}\n </div>\n </div>\n </Portal>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectContent.js","names":["onCleanup","splitProps","createMemo","createEffect","Portal","useSelectContent","ScrollArrows","SelectContentProps","clsx","SelectContent","props","ctx","pos","maxHeight","isVisible","animationState","contentElement","setContentElement","local","rest","enabledItems","items","filter","it","disabled","moveActive","dir","list","length","currentIndex","findIndex","value","activeValue","nextIndex","setActiveValue","onKeyDown","e","KeyboardEvent","key","preventDefault","undefined","selectValue","close","setOpen","open","onPointerDown","PointerEvent","target","Node","reference","contains","floating","stopPropagation","document","addEventListener","capture","removeEventListener","active","el","querySelector","HTMLElement","CSS","escape","String","scrollIntoView","block","_$createComponent","children","_el$","_tmpl$","_el$2","firstChild","_$use","setFloating","_$spread","_$mergeProps","data-state","style","position","width","middlewareData","matchWidth","overflow","class","_$insert","upClass","downClass","_$effect","_$p","_$style","floatingStyles","opacity","isPositioned","visibility","_$createComponent","_$mergeProps","_$style","_tmpl$","SelectContent","useSelectContent","props","local","rest","splitProps","enabledItems","createMemo","ctx","it","moveActive","list","nextIndex","dir","onKeyDown","createEffect","onPointerDown","target","onCleanup","active","el","contentElement","createComponent","Portal","_el$","_el$2","use","setContentElement","spread","mergeProps","animationState","pos","maxHeight","\"class\"","clsx","insert","ScrollArrows","effect","style","isVisible","_$p"],"sources":["../../../../src/components/select/SelectContent/SelectContent.tsx"],"sourcesContent":["import { onCleanup, splitProps, createMemo, createEffect } from \"solid-js\";\nimport { Portal } from \"solid-js/web\";\nimport { useSelectContent } from \"./useSelectContent\";\nimport { ScrollArrows } from \"~/components/scroll-arrows\";\nimport type { SelectContentProps } from \"./SelectContent.types\";\nimport { clsx } from \"~/utils\";\n\nexport function SelectContent(props: SelectContentProps) {\n const {\n ctx,\n pos,\n maxHeight,\n isVisible,\n animationState,\n contentElement,\n setContentElement,\n } = useSelectContent(() => props);\n\n const [local, rest] = splitProps(props, [\n \"placement\",\n \"collisionPadding\",\n \"class\",\n \"style\",\n \"children\",\n ]);\n\n const enabledItems = createMemo(() => ctx.items.filter((it) => !it.disabled));\n\n const moveActive = (dir: 1 | -1) => {\n const list = enabledItems();\n if (list.length === 0) return;\n const currentIndex = list.findIndex((it) => it.value === ctx.activeValue());\n const nextIndex = (currentIndex + dir + list.length) % list.length;\n ctx.setActiveValue(list[nextIndex].value);\n };\n\n const onKeyDown = (e: KeyboardEvent) => {\n switch (e.key) {\n case \"ArrowDown\":\n e.preventDefault();\n moveActive(1);\n break;\n case \"ArrowUp\":\n e.preventDefault();\n moveActive(-1);\n break;\n case \"Enter\":\n case \" \":\n e.preventDefault();\n if (ctx.activeValue() !== undefined)\n ctx.selectValue(ctx.activeValue()!);\n break;\n case \"Escape\":\n e.preventDefault();\n ctx.close();\n break;\n case \"Tab\":\n ctx.setOpen(false);\n break;\n }\n };\n\n // 点击外部关闭:捕获阶段监听 + stopPropagation,在事件还没下沉到真正的目标\n // 元素之前就拦截掉,避免点击穿透到浮层下面被盖住的元素(细节见\n // production-tooltip 那边点击穿透问题的排查记录,这里直接复用同一个模式)。\n createEffect(() => {\n if (!ctx.open()) return;\n const onPointerDown = (e: PointerEvent) => {\n const target = e.target as Node;\n if (\n !ctx.reference()?.contains(target) &&\n !ctx.floating()?.contains(target)\n ) {\n ctx.setOpen(false);\n e.stopPropagation();\n }\n };\n document.addEventListener(\"pointerdown\", onPointerDown, { capture: true });\n onCleanup(() =>\n document.removeEventListener(\"pointerdown\", onPointerDown, {\n capture: true,\n }),\n );\n });\n\n // 打开时把键盘事件绑到 document,这样不需要抢 focus 也能用方向键\n createEffect(() => {\n if (!ctx.open()) return;\n document.addEventListener(\"keydown\", onKeyDown);\n onCleanup(() => document.removeEventListener(\"keydown\", onKeyDown));\n });\n\n // 高亮项变化时自动滚动到可见区域\n createEffect(() => {\n const active = ctx.activeValue();\n const el = contentElement();\n if (!active || !el) return;\n el.querySelector<HTMLElement>(\n `[data-value=\"${CSS.escape(String(active))}\"]`,\n )?.scrollIntoView({ block: \"nearest\" });\n });\n\n return (\n <Portal>\n {/*\n 外层:只负责定位(position:fixed 来自 floatingStyles),不参与动画。\n 它的 transform 专门用来做 translate(x,y) 定位——如果内层的 zoom-in-95\n 动画也放在这一层,两者会互相冲突(细节见 SelectContent.utils.ts 顶部\n 的注释)。\n\n 关闭时不再卸载整个 Portal,而是用 visibility/pointer-events 隐藏:\n SelectItem 通过 onMount 向 ctx 注册 item 元数据,如果关闭时把子节点\n 卸载掉,ctx.items 会被清空,SelectValue 就无法再用 item.label 渲染\n 已选值。让子节点持续挂载,items 的注册生命周期才和 SelectContent\n 本身一致;隐藏只是视觉/交互上的关闭,不影响数据。\n */}\n <div\n data-slot=\"select-content\"\n ref={(el) => {\n ctx.setFloating(el);\n // 元素卸载时清空 ctx.floating(),避免后续读到已从 DOM 摘除的\n // 僵尸节点(Solid 的 ref 回调只在创建时触发一次,不会自动在\n // 卸载时传 undefined)。\n onCleanup(() => ctx.setFloating(undefined));\n }}\n style={{\n ...pos.floatingStyles(),\n \"z-index\": 1000,\n opacity: isVisible() && pos.isPositioned() ? 1 : 0,\n \"pointer-events\": isVisible() ? \"auto\" : \"none\",\n visibility: isVisible() ? \"visible\" : \"hidden\",\n }}\n >\n {/*\n 内层:真正的视觉样式 + overflow:auto 滚动 + 进出场动画。\n position: relative 是为了让它成为内部所有选项的 offsetParent——\n \"选中项对齐\"这套定位策略要用 offsetTop 算选项在列表里的位置,\n 这个值必须相对\"真正会滚动的这个元素\"才准确,不能让它被外层\n (不滚动)抢走 offsetParent 的身份。\n */}\n <div\n ref={setContentElement}\n role=\"listbox\"\n data-state={animationState()}\n style={{\n position: \"relative\",\n width: pos.middlewareData().matchWidth?.width\n ? `${pos.middlewareData().matchWidth.width}px`\n : undefined,\n \"max-height\": maxHeight() ? `${maxHeight()}px` : undefined,\n overflow: \"auto\",\n ...(typeof local.style === \"object\" ? local.style : undefined),\n }}\n class={clsx(\n \"min-w-36\",\n \"no-scrollbar [&::-webkit-scrollbar]:hidden\",\n \"rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100\",\n // 只保留入场动画,没有退场动画:关闭瞬间外层直接 visibility:hidden,\n // data-state 也立即切回 closed,没有退场动画阶段,自然不会出现\n // 选中项变更时\"面板先跳一下再消失\"的问题。duration-100(100ms)\n // 比默认的 150ms 更短——下拉菜单这种高频交互的组件,动画应该比\n // tooltip 更快、更利落。\n \"data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95\",\n local.class,\n )}\n {...rest}\n >\n {local.children}\n </div>\n <ScrollArrows\n target={contentElement}\n upClass=\"rounded-t-lg\"\n downClass=\"rounded-b-lg\"\n />\n </div>\n </Portal>\n );\n}\n"],"mappings":"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"}