@neut/ui 0.0.14 → 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 (977) 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 +11 -8
  195. package/dist/components/calendar/Calendar/Calendar.js.map +1 -1
  196. package/dist/components/calendar/Calendar/Calendar.utils.js.map +1 -1
  197. package/dist/components/card/Card/Card.d.ts +1 -1
  198. package/dist/components/card/Card/Card.js.map +1 -1
  199. package/dist/components/card/Card/Card.styles.js.map +1 -1
  200. package/dist/components/card/CardAction/CardAction.d.ts +1 -1
  201. package/dist/components/card/CardAction/CardAction.js.map +1 -1
  202. package/dist/components/card/CardAction/CardAction.styles.js.map +1 -1
  203. package/dist/components/card/CardContent/CardContent.d.ts +1 -1
  204. package/dist/components/card/CardContent/CardContent.js.map +1 -1
  205. package/dist/components/card/CardContent/CardContent.styles.js.map +1 -1
  206. package/dist/components/card/CardDescription/CardDescription.d.ts +1 -1
  207. package/dist/components/card/CardDescription/CardDescription.js.map +1 -1
  208. package/dist/components/card/CardDescription/CardDescription.styles.js.map +1 -1
  209. package/dist/components/card/CardFooter/CardFooter.d.ts +1 -1
  210. package/dist/components/card/CardFooter/CardFooter.js.map +1 -1
  211. package/dist/components/card/CardFooter/CardFooter.styles.js.map +1 -1
  212. package/dist/components/card/CardHeader/CardHeader.d.ts +1 -1
  213. package/dist/components/card/CardHeader/CardHeader.js.map +1 -1
  214. package/dist/components/card/CardHeader/CardHeader.styles.js.map +1 -1
  215. package/dist/components/card/CardTitle/CardTitle.d.ts +1 -1
  216. package/dist/components/card/CardTitle/CardTitle.js.map +1 -1
  217. package/dist/components/card/CardTitle/CardTitle.styles.js.map +1 -1
  218. package/dist/components/carousel/Carousel/Carousel.context.js.map +1 -1
  219. package/dist/components/carousel/Carousel/Carousel.d.ts +1 -1
  220. package/dist/components/carousel/Carousel/Carousel.js.map +1 -1
  221. package/dist/components/carousel/Carousel/Carousel.styles.js.map +1 -1
  222. package/dist/components/carousel/Carousel/useAutoPlay.js.map +1 -1
  223. package/dist/components/carousel/Carousel/useCarousel.js.map +1 -1
  224. package/dist/components/carousel/Carousel/useKeyboardNavigation.js.map +1 -1
  225. package/dist/components/carousel/CarouselContent/CarouselContent.d.ts +1 -1
  226. package/dist/components/carousel/CarouselContent/CarouselContent.js.map +1 -1
  227. package/dist/components/carousel/CarouselContent/useItemSizeMeasure.js.map +1 -1
  228. package/dist/components/carousel/CarouselDots/CarouselDots.d.ts +1 -1
  229. package/dist/components/carousel/CarouselDots/CarouselDots.js.map +1 -1
  230. package/dist/components/carousel/CarouselItem/CarouselItem.d.ts +1 -1
  231. package/dist/components/carousel/CarouselItem/CarouselItem.js.map +1 -1
  232. package/dist/components/carousel/CarouselNext/CarouselNext.d.ts +1 -1
  233. package/dist/components/carousel/CarouselNext/CarouselNext.js.map +1 -1
  234. package/dist/components/carousel/CarouselPrevious/CarouselPrevious.d.ts +1 -1
  235. package/dist/components/carousel/CarouselPrevious/CarouselPrevious.js.map +1 -1
  236. package/dist/components/checkbox/Checkbox/Checkbox.d.ts +1 -1
  237. package/dist/components/checkbox/Checkbox/Checkbox.js.map +1 -1
  238. package/dist/components/checkbox/Checkbox/Checkbox.styles.js.map +1 -1
  239. package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.d.ts +1 -1
  240. package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.js.map +1 -1
  241. package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.styles.js.map +1 -1
  242. package/dist/components/collapsible/Collapsible/Collapsible.context.js.map +1 -1
  243. package/dist/components/collapsible/Collapsible/Collapsible.d.ts +1 -1
  244. package/dist/components/collapsible/Collapsible/Collapsible.js.map +1 -1
  245. package/dist/components/collapsible/CollapsibleContent/CollapsibleContent.d.ts +1 -1
  246. package/dist/components/collapsible/CollapsibleContent/CollapsibleContent.js.map +1 -1
  247. package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.d.ts +1 -1
  248. package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.js.map +1 -1
  249. package/dist/components/combobox/Combobox/Combobox.context.js.map +1 -1
  250. package/dist/components/combobox/Combobox/Combobox.js +50 -47
  251. package/dist/components/combobox/Combobox/Combobox.js.map +1 -1
  252. package/dist/components/combobox/Combobox/Combobox.types.d.ts +5 -0
  253. package/dist/components/combobox/ComboboxChip/ComboboxChip.js.map +1 -1
  254. package/dist/components/combobox/ComboboxChips/ComboboxChips.js.map +1 -1
  255. package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.d.ts +1 -1
  256. package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.js.map +1 -1
  257. package/dist/components/combobox/ComboboxClear/ComboboxClear.d.ts +1 -1
  258. package/dist/components/combobox/ComboboxClear/ComboboxClear.js.map +1 -1
  259. package/dist/components/combobox/ComboboxCollection/ComboboxCollection.js.map +1 -1
  260. package/dist/components/combobox/ComboboxContent/ComboboxContent.d.ts +1 -1
  261. package/dist/components/combobox/ComboboxContent/ComboboxContent.js.map +1 -1
  262. package/dist/components/combobox/ComboboxContent/ComboboxContent.utils.js.map +1 -1
  263. package/dist/components/combobox/ComboboxContent/useComboboxContent.js.map +1 -1
  264. package/dist/components/combobox/ComboboxEmpty/ComboboxEmpty.js.map +1 -1
  265. package/dist/components/combobox/ComboboxGroup/ComboboxGroup.js.map +1 -1
  266. package/dist/components/combobox/ComboboxInput/ComboboxInput.js.map +1 -1
  267. package/dist/components/combobox/ComboboxItem/ComboboxItem.js.map +1 -1
  268. package/dist/components/combobox/ComboboxLabel/ComboboxLabel.js.map +1 -1
  269. package/dist/components/combobox/ComboboxList/ComboboxList.js +13 -12
  270. package/dist/components/combobox/ComboboxList/ComboboxList.js.map +1 -1
  271. package/dist/components/combobox/ComboboxSeparator/ComboboxSeparator.d.ts +1 -1
  272. package/dist/components/combobox/ComboboxSeparator/ComboboxSeparator.js.map +1 -1
  273. package/dist/components/combobox/ComboboxTrigger/ComboboxTrigger.js.map +1 -1
  274. package/dist/components/combobox/ComboboxValue/ComboboxValue.js.map +1 -1
  275. package/dist/components/combobox/useComboboxAnchor/useComboboxAnchor.js.map +1 -1
  276. package/dist/components/context-menu/ContextMenu/ContextMenu.context.d.ts +3 -0
  277. package/dist/components/context-menu/ContextMenu/ContextMenu.context.js +12 -0
  278. package/dist/components/context-menu/ContextMenu/ContextMenu.context.js.map +1 -0
  279. package/dist/components/context-menu/ContextMenu/ContextMenu.d.ts +23 -0
  280. package/dist/components/context-menu/ContextMenu/ContextMenu.js +73 -0
  281. package/dist/components/context-menu/ContextMenu/ContextMenu.js.map +1 -0
  282. package/dist/components/context-menu/ContextMenu/ContextMenu.types.d.ts +28 -0
  283. package/dist/components/context-menu/ContextMenu/index.d.ts +3 -0
  284. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.d.ts +6 -0
  285. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.js +78 -0
  286. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.js.map +1 -0
  287. package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.types.d.ts +20 -0
  288. package/dist/components/context-menu/ContextMenuCheckboxItem/index.d.ts +2 -0
  289. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.d.ts +9 -0
  290. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.js +64 -0
  291. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.js.map +1 -0
  292. package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.types.d.ts +26 -0
  293. package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.d.ts +31 -0
  294. package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.js +102 -0
  295. package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.js.map +1 -0
  296. package/dist/components/context-menu/ContextMenuContent/index.d.ts +2 -0
  297. package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.d.ts +52 -0
  298. package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js +153 -0
  299. package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js.map +1 -0
  300. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.d.ts +6 -0
  301. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.js +29 -0
  302. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.js.map +1 -0
  303. package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.types.d.ts +9 -0
  304. package/dist/components/context-menu/ContextMenuGroup/index.d.ts +2 -0
  305. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.d.ts +6 -0
  306. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.js +59 -0
  307. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.js.map +1 -0
  308. package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.types.d.ts +22 -0
  309. package/dist/components/context-menu/ContextMenuItem/index.d.ts +2 -0
  310. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.d.ts +6 -0
  311. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.js +31 -0
  312. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.js.map +1 -0
  313. package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.types.d.ts +8 -0
  314. package/dist/components/context-menu/ContextMenuLabel/index.d.ts +2 -0
  315. package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.d.ts +16 -0
  316. package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.js +18 -0
  317. package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.js.map +1 -0
  318. package/dist/components/context-menu/ContextMenuPortal/index.d.ts +2 -0
  319. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.d.ts +12 -0
  320. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.js +48 -0
  321. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.js.map +1 -0
  322. package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.types.d.ts +14 -0
  323. package/dist/components/context-menu/ContextMenuRadioGroup/index.d.ts +2 -0
  324. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.d.ts +6 -0
  325. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.js +74 -0
  326. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.js.map +1 -0
  327. package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.types.d.ts +16 -0
  328. package/dist/components/context-menu/ContextMenuRadioItem/index.d.ts +2 -0
  329. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.d.ts +9 -0
  330. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.js +25 -0
  331. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.js.map +1 -0
  332. package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.types.d.ts +8 -0
  333. package/dist/components/context-menu/ContextMenuSeparator/index.d.ts +2 -0
  334. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.d.ts +6 -0
  335. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.js +19 -0
  336. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.js.map +1 -0
  337. package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.types.d.ts +6 -0
  338. package/dist/components/context-menu/ContextMenuShortcut/index.d.ts +2 -0
  339. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.d.ts +7 -0
  340. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js +55 -0
  341. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js.map +1 -0
  342. package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.types.d.ts +18 -0
  343. package/dist/components/context-menu/ContextMenuSub/index.d.ts +2 -0
  344. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.d.ts +6 -0
  345. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.js +83 -0
  346. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.js.map +1 -0
  347. package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.types.d.ts +17 -0
  348. package/dist/components/context-menu/ContextMenuSubContent/index.d.ts +2 -0
  349. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.d.ts +6 -0
  350. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.js +96 -0
  351. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.js.map +1 -0
  352. package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.types.d.ts +21 -0
  353. package/dist/components/context-menu/ContextMenuSubTrigger/index.d.ts +2 -0
  354. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.d.ts +13 -0
  355. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js +34 -0
  356. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js.map +1 -0
  357. package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.types.d.ts +15 -0
  358. package/dist/components/context-menu/ContextMenuTrigger/index.d.ts +4 -0
  359. package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.d.ts +23 -0
  360. package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js +47 -0
  361. package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js.map +1 -0
  362. package/dist/components/context-menu/context-menu.context.d.ts +14 -0
  363. package/dist/components/context-menu/context-menu.context.js +25 -0
  364. package/dist/components/context-menu/context-menu.context.js.map +1 -0
  365. package/dist/components/context-menu/context-menu.entry.d.ts +28 -0
  366. package/dist/components/context-menu/context-menu.entry.js +31 -0
  367. package/dist/components/context-menu/context-menu.entry.js.map +1 -0
  368. package/dist/components/context-menu/context-menu.styles.d.ts +18 -0
  369. package/dist/components/context-menu/context-menu.styles.js +6 -0
  370. package/dist/components/context-menu/context-menu.styles.js.map +1 -0
  371. package/dist/components/context-menu/context-menu.types.d.ts +151 -0
  372. package/dist/components/context-menu/context-menu.utils.d.ts +28 -0
  373. package/dist/components/context-menu/context-menu.utils.js +51 -0
  374. package/dist/components/context-menu/context-menu.utils.js.map +1 -0
  375. package/dist/components/context-menu/index.d.ts +31 -0
  376. package/dist/components/context-menu/index.js +16 -0
  377. package/dist/components/data-table/createRowModel.d.ts +20 -0
  378. package/dist/components/data-table/createRowModel.js +46 -0
  379. package/dist/components/data-table/createRowModel.js.map +1 -0
  380. package/dist/components/data-table/createTable.d.ts +16 -0
  381. package/dist/components/data-table/createTable.js +94 -0
  382. package/dist/components/data-table/createTable.js.map +1 -0
  383. package/dist/components/data-table/createTableColumns.d.ts +19 -0
  384. package/dist/components/data-table/createTableColumns.js +68 -0
  385. package/dist/components/data-table/createTableColumns.js.map +1 -0
  386. package/dist/components/data-table/createTableHeaders.d.ts +10 -0
  387. package/dist/components/data-table/createTableHeaders.js +26 -0
  388. package/dist/components/data-table/createTableHeaders.js.map +1 -0
  389. package/dist/components/data-table/createTableRows.d.ts +16 -0
  390. package/dist/components/data-table/createTableRows.js +57 -0
  391. package/dist/components/data-table/createTableRows.js.map +1 -0
  392. package/dist/components/data-table/createTableSelection.d.ts +12 -0
  393. package/dist/components/data-table/createTableSelection.js +23 -0
  394. package/dist/components/data-table/createTableSelection.js.map +1 -0
  395. package/dist/components/data-table/createTableState.d.ts +16 -0
  396. package/dist/components/data-table/createTableState.js +34 -0
  397. package/dist/components/data-table/createTableState.js.map +1 -0
  398. package/dist/components/data-table/data-table.types.d.ts +123 -0
  399. package/dist/components/data-table/data-table.utils.d.ts +4 -0
  400. package/dist/components/data-table/data-table.utils.js +11 -0
  401. package/dist/components/data-table/data-table.utils.js.map +1 -0
  402. package/dist/components/data-table/index.d.ts +2 -0
  403. package/dist/components/data-table/index.js +2 -0
  404. package/dist/components/date-picker/DatePicker/DatePicker.js.map +1 -1
  405. package/dist/components/dialog/Dialog/Dialog.context.js.map +1 -1
  406. package/dist/components/dialog/Dialog/Dialog.d.ts +1 -1
  407. package/dist/components/dialog/Dialog/Dialog.js +18 -16
  408. package/dist/components/dialog/Dialog/Dialog.js.map +1 -1
  409. package/dist/components/dialog/Dialog/Dialog.types.d.ts +5 -0
  410. package/dist/components/dialog/DialogClose/DialogClose.d.ts +1 -1
  411. package/dist/components/dialog/DialogClose/DialogClose.js +5 -5
  412. package/dist/components/dialog/DialogClose/DialogClose.js.map +1 -1
  413. package/dist/components/dialog/DialogClose/DialogClose.styles.js.map +1 -1
  414. package/dist/components/dialog/DialogContent/DialogContent.context.js.map +1 -1
  415. package/dist/components/dialog/DialogContent/DialogContent.d.ts +1 -1
  416. package/dist/components/dialog/DialogContent/DialogContent.js +23 -55
  417. package/dist/components/dialog/DialogContent/DialogContent.js.map +1 -1
  418. package/dist/components/dialog/DialogContent/DialogContent.styles.js.map +1 -1
  419. package/dist/components/dialog/DialogDescription/DialogDescription.d.ts +1 -1
  420. package/dist/components/dialog/DialogDescription/DialogDescription.js.map +1 -1
  421. package/dist/components/dialog/DialogDescription/DialogDescription.styles.js.map +1 -1
  422. package/dist/components/dialog/DialogFooter/DialogFooter.d.ts +1 -1
  423. package/dist/components/dialog/DialogFooter/DialogFooter.js.map +1 -1
  424. package/dist/components/dialog/DialogFooter/DialogFooter.styles.js.map +1 -1
  425. package/dist/components/dialog/DialogHeader/DialogHeader.d.ts +1 -1
  426. package/dist/components/dialog/DialogHeader/DialogHeader.js.map +1 -1
  427. package/dist/components/dialog/DialogHeader/DialogHeader.styles.js.map +1 -1
  428. package/dist/components/dialog/DialogOverlay/DialogOverlay.d.ts +1 -1
  429. package/dist/components/dialog/DialogOverlay/DialogOverlay.js +18 -10
  430. package/dist/components/dialog/DialogOverlay/DialogOverlay.js.map +1 -1
  431. package/dist/components/dialog/DialogOverlay/DialogOverlay.styles.js.map +1 -1
  432. package/dist/components/dialog/DialogOverlay/DialogOverlay.types.d.ts +4 -1
  433. package/dist/components/dialog/DialogPortal/DialogPortal.d.ts +1 -1
  434. package/dist/components/dialog/DialogPortal/DialogPortal.js.map +1 -1
  435. package/dist/components/dialog/DialogSurface/DialogSurface.d.ts +2 -0
  436. package/dist/components/dialog/DialogSurface/DialogSurface.js +77 -0
  437. package/dist/components/dialog/DialogSurface/DialogSurface.js.map +1 -0
  438. package/dist/components/dialog/DialogSurface/DialogSurface.types.d.ts +15 -0
  439. package/dist/components/dialog/DialogSurface/index.d.ts +2 -0
  440. package/dist/components/dialog/DialogTitle/DialogTitle.d.ts +1 -1
  441. package/dist/components/dialog/DialogTitle/DialogTitle.js.map +1 -1
  442. package/dist/components/dialog/DialogTitle/DialogTitle.styles.js.map +1 -1
  443. package/dist/components/dialog/DialogTrigger/DialogTrigger.d.ts +1 -1
  444. package/dist/components/dialog/DialogTrigger/DialogTrigger.js.map +1 -1
  445. package/dist/components/dialog/DialogTrigger/useDialogTrigger.js.map +1 -1
  446. package/dist/components/dialog/index.d.ts +1 -0
  447. package/dist/components/dialog/index.js +9 -8
  448. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.d.ts +3 -0
  449. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.js +12 -0
  450. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.js.map +1 -0
  451. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.d.ts +9 -0
  452. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.js +82 -0
  453. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.js.map +1 -0
  454. package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.types.d.ts +26 -0
  455. package/dist/components/dropdown-menu/DropdownMenu/index.d.ts +3 -0
  456. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.d.ts +2 -0
  457. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.js +78 -0
  458. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.js.map +1 -0
  459. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.types.d.ts +14 -0
  460. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/index.d.ts +2 -0
  461. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.d.ts +6 -0
  462. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.js +64 -0
  463. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.js.map +1 -0
  464. package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.types.d.ts +13 -0
  465. package/dist/components/dropdown-menu/DropdownMenuContent/index.d.ts +2 -0
  466. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.d.ts +2 -0
  467. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.js +29 -0
  468. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.js.map +1 -0
  469. package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.types.d.ts +2 -0
  470. package/dist/components/dropdown-menu/DropdownMenuGroup/index.d.ts +2 -0
  471. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.d.ts +2 -0
  472. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.js +59 -0
  473. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.js.map +1 -0
  474. package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.types.d.ts +14 -0
  475. package/dist/components/dropdown-menu/DropdownMenuItem/index.d.ts +2 -0
  476. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.d.ts +2 -0
  477. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.js +31 -0
  478. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.js.map +1 -0
  479. package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.types.d.ts +4 -0
  480. package/dist/components/dropdown-menu/DropdownMenuLabel/index.d.ts +2 -0
  481. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.d.ts +2 -0
  482. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.js +10 -0
  483. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.js.map +1 -0
  484. package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.types.d.ts +2 -0
  485. package/dist/components/dropdown-menu/DropdownMenuPortal/index.d.ts +2 -0
  486. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.d.ts +2 -0
  487. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.js +48 -0
  488. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.js.map +1 -0
  489. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.types.d.ts +10 -0
  490. package/dist/components/dropdown-menu/DropdownMenuRadioGroup/index.d.ts +2 -0
  491. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.d.ts +2 -0
  492. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.js +74 -0
  493. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.js.map +1 -0
  494. package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.types.d.ts +11 -0
  495. package/dist/components/dropdown-menu/DropdownMenuRadioItem/index.d.ts +2 -0
  496. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.d.ts +2 -0
  497. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.js +25 -0
  498. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.js.map +1 -0
  499. package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.types.d.ts +2 -0
  500. package/dist/components/dropdown-menu/DropdownMenuSeparator/index.d.ts +2 -0
  501. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.d.ts +2 -0
  502. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.js +19 -0
  503. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.js.map +1 -0
  504. package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.types.d.ts +2 -0
  505. package/dist/components/dropdown-menu/DropdownMenuShortcut/index.d.ts +2 -0
  506. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.d.ts +4 -0
  507. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.js +10 -0
  508. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.js.map +1 -0
  509. package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.types.d.ts +2 -0
  510. package/dist/components/dropdown-menu/DropdownMenuSub/index.d.ts +2 -0
  511. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.d.ts +2 -0
  512. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.js +82 -0
  513. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.js.map +1 -0
  514. package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.types.d.ts +15 -0
  515. package/dist/components/dropdown-menu/DropdownMenuSubContent/index.d.ts +2 -0
  516. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.d.ts +2 -0
  517. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.js +96 -0
  518. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.js.map +1 -0
  519. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.types.d.ts +12 -0
  520. package/dist/components/dropdown-menu/DropdownMenuSubTrigger/index.d.ts +2 -0
  521. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.d.ts +5 -0
  522. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js +42 -0
  523. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js.map +1 -0
  524. package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.types.d.ts +4 -0
  525. package/dist/components/dropdown-menu/DropdownMenuTrigger/index.d.ts +2 -0
  526. package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.d.ts +4 -0
  527. package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js +30 -0
  528. package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js.map +1 -0
  529. package/dist/components/dropdown-menu/dropdown-menu.styles.d.ts +11 -0
  530. package/dist/components/dropdown-menu/dropdown-menu.styles.js +6 -0
  531. package/dist/components/dropdown-menu/dropdown-menu.styles.js.map +1 -0
  532. package/dist/components/dropdown-menu/index.d.ts +30 -0
  533. package/dist/components/dropdown-menu/index.js +16 -0
  534. package/dist/components/empty/Empty/Empty.d.ts +1 -1
  535. package/dist/components/empty/Empty/Empty.js.map +1 -1
  536. package/dist/components/empty/EmptyContent/EmptyContent.d.ts +1 -1
  537. package/dist/components/empty/EmptyContent/EmptyContent.js.map +1 -1
  538. package/dist/components/empty/EmptyDescription/EmptyDescription.d.ts +1 -1
  539. package/dist/components/empty/EmptyDescription/EmptyDescription.js.map +1 -1
  540. package/dist/components/empty/EmptyHeader/EmptyHeader.d.ts +1 -1
  541. package/dist/components/empty/EmptyHeader/EmptyHeader.js.map +1 -1
  542. package/dist/components/empty/EmptyMedia/EmptyMedia.d.ts +1 -1
  543. package/dist/components/empty/EmptyMedia/EmptyMedia.js.map +1 -1
  544. package/dist/components/empty/EmptyMedia/EmptyMedia.styles.js.map +1 -1
  545. package/dist/components/empty/EmptyTitle/EmptyTitle.d.ts +1 -1
  546. package/dist/components/empty/EmptyTitle/EmptyTitle.js.map +1 -1
  547. package/dist/components/field/Field/Field.d.ts +1 -1
  548. package/dist/components/field/Field/Field.js.map +1 -1
  549. package/dist/components/field/Field/Field.styles.js.map +1 -1
  550. package/dist/components/field/FieldContent/FieldContent.d.ts +1 -1
  551. package/dist/components/field/FieldContent/FieldContent.js.map +1 -1
  552. package/dist/components/field/FieldDescription/FieldDescription.d.ts +1 -1
  553. package/dist/components/field/FieldDescription/FieldDescription.js.map +1 -1
  554. package/dist/components/field/FieldError/FieldError.d.ts +1 -1
  555. package/dist/components/field/FieldError/FieldError.js.map +1 -1
  556. package/dist/components/field/FieldGroup/FieldGroup.d.ts +1 -1
  557. package/dist/components/field/FieldGroup/FieldGroup.js.map +1 -1
  558. package/dist/components/field/FieldLabel/FieldLabel.d.ts +1 -1
  559. package/dist/components/field/FieldLabel/FieldLabel.js.map +1 -1
  560. package/dist/components/field/FieldLegend/FieldLegend.d.ts +1 -1
  561. package/dist/components/field/FieldLegend/FieldLegend.js.map +1 -1
  562. package/dist/components/field/FieldSeparator/FieldSeparator.d.ts +1 -1
  563. package/dist/components/field/FieldSeparator/FieldSeparator.js.map +1 -1
  564. package/dist/components/field/FieldSet/FieldSet.d.ts +1 -1
  565. package/dist/components/field/FieldSet/FieldSet.js.map +1 -1
  566. package/dist/components/field/FieldTitle/FieldTitle.d.ts +1 -1
  567. package/dist/components/field/FieldTitle/FieldTitle.js.map +1 -1
  568. package/dist/components/image/Image.config.js.map +1 -1
  569. package/dist/components/image/Image.js.map +1 -1
  570. package/dist/components/image/Image.utils.js +2 -2
  571. package/dist/components/image/Image.utils.js.map +1 -1
  572. package/dist/components/image/ImageElement.js.map +1 -1
  573. package/dist/components/image/ImagePreload.js.map +1 -1
  574. package/dist/components/input/Input.js.map +1 -1
  575. package/dist/components/input-group/InputGroup/InputGroup.d.ts +1 -1
  576. package/dist/components/input-group/InputGroup/InputGroup.js.map +1 -1
  577. package/dist/components/input-group/InputGroupAddon/InputGroupAddon.d.ts +1 -1
  578. package/dist/components/input-group/InputGroupAddon/InputGroupAddon.js.map +1 -1
  579. package/dist/components/input-group/InputGroupAddon/InputGroupAddon.styles.js.map +1 -1
  580. package/dist/components/input-group/InputGroupButton/InputGroupButton.d.ts +1 -1
  581. package/dist/components/input-group/InputGroupButton/InputGroupButton.js.map +1 -1
  582. package/dist/components/input-group/InputGroupButton/InputGroupButton.styles.js.map +1 -1
  583. package/dist/components/input-group/InputGroupInput/InputGroupInput.d.ts +1 -1
  584. package/dist/components/input-group/InputGroupInput/InputGroupInput.js.map +1 -1
  585. package/dist/components/input-group/InputGroupText/InputGroupText.d.ts +1 -1
  586. package/dist/components/input-group/InputGroupText/InputGroupText.js.map +1 -1
  587. package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.d.ts +1 -1
  588. package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.js.map +1 -1
  589. package/dist/components/item/Item/Item.d.ts +1 -1
  590. package/dist/components/item/Item/Item.js.map +1 -1
  591. package/dist/components/item/Item/Item.styles.js.map +1 -1
  592. package/dist/components/item/ItemActions/ItemActions.d.ts +1 -1
  593. package/dist/components/item/ItemActions/ItemActions.js.map +1 -1
  594. package/dist/components/item/ItemContent/ItemContent.d.ts +1 -1
  595. package/dist/components/item/ItemContent/ItemContent.js.map +1 -1
  596. package/dist/components/item/ItemDescription/ItemDescription.d.ts +1 -1
  597. package/dist/components/item/ItemDescription/ItemDescription.js.map +1 -1
  598. package/dist/components/item/ItemFooter/ItemFooter.d.ts +1 -1
  599. package/dist/components/item/ItemFooter/ItemFooter.js.map +1 -1
  600. package/dist/components/item/ItemGroup/ItemGroup.d.ts +1 -1
  601. package/dist/components/item/ItemGroup/ItemGroup.js.map +1 -1
  602. package/dist/components/item/ItemHeader/ItemHeader.d.ts +1 -1
  603. package/dist/components/item/ItemHeader/ItemHeader.js.map +1 -1
  604. package/dist/components/item/ItemMedia/ItemMedia.d.ts +1 -1
  605. package/dist/components/item/ItemMedia/ItemMedia.js.map +1 -1
  606. package/dist/components/item/ItemMedia/ItemMedia.styles.js.map +1 -1
  607. package/dist/components/item/ItemSeparator/ItemSeparator.d.ts +1 -1
  608. package/dist/components/item/ItemSeparator/ItemSeparator.js.map +1 -1
  609. package/dist/components/item/ItemTitle/ItemTitle.d.ts +1 -1
  610. package/dist/components/item/ItemTitle/ItemTitle.js.map +1 -1
  611. package/dist/components/kbd/Kbd.d.ts +2 -2
  612. package/dist/components/kbd/Kbd.js.map +1 -1
  613. package/dist/components/label/Label.d.ts +1 -1
  614. package/dist/components/label/Label.js.map +1 -1
  615. package/dist/components/number-input/NumberInput/NumberInput.d.ts +19 -0
  616. package/dist/components/number-input/NumberInput/NumberInput.js +153 -0
  617. package/dist/components/number-input/NumberInput/NumberInput.js.map +1 -0
  618. package/dist/components/number-input/NumberInput/NumberInput.types.d.ts +41 -0
  619. package/dist/components/number-input/NumberInput/NumberInput.utils.d.ts +10 -0
  620. package/dist/components/number-input/NumberInput/NumberInput.utils.js +24 -0
  621. package/dist/components/number-input/NumberInput/NumberInput.utils.js.map +1 -0
  622. package/dist/components/number-input/NumberInput/create-change-event-details.d.ts +8 -0
  623. package/dist/components/number-input/NumberInput/create-change-event-details.js +25 -0
  624. package/dist/components/number-input/NumberInput/create-change-event-details.js.map +1 -0
  625. package/dist/components/number-input/NumberInput/index.d.ts +2 -0
  626. package/dist/components/number-input/index.d.ts +2 -0
  627. package/dist/components/number-input/index.js +2 -0
  628. package/dist/components/pagination/Pagination/Pagination.d.ts +1 -1
  629. package/dist/components/pagination/Pagination/Pagination.js.map +1 -1
  630. package/dist/components/pagination/PaginationContent/PaginationContent.d.ts +1 -1
  631. package/dist/components/pagination/PaginationContent/PaginationContent.js.map +1 -1
  632. package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.d.ts +1 -1
  633. package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.js.map +1 -1
  634. package/dist/components/pagination/PaginationItem/PaginationItem.d.ts +1 -1
  635. package/dist/components/pagination/PaginationItem/PaginationItem.js.map +1 -1
  636. package/dist/components/pagination/PaginationLink/PaginationLink.d.ts +1 -1
  637. package/dist/components/pagination/PaginationLink/PaginationLink.js +1 -1
  638. package/dist/components/pagination/PaginationLink/PaginationLink.js.map +1 -1
  639. package/dist/components/pagination/PaginationNext/PaginationNext.d.ts +1 -1
  640. package/dist/components/pagination/PaginationNext/PaginationNext.js.map +1 -1
  641. package/dist/components/pagination/PaginationPrevious/PaginationPrevious.d.ts +1 -1
  642. package/dist/components/pagination/PaginationPrevious/PaginationPrevious.js.map +1 -1
  643. package/dist/components/popover/Popover/Popover.context.js.map +1 -1
  644. package/dist/components/popover/Popover/Popover.js +25 -22
  645. package/dist/components/popover/Popover/Popover.js.map +1 -1
  646. package/dist/components/popover/Popover/Popover.types.d.ts +5 -0
  647. package/dist/components/popover/PopoverContent/PopoverContent.d.ts +1 -1
  648. package/dist/components/popover/PopoverContent/PopoverContent.js.map +1 -1
  649. package/dist/components/popover/PopoverContent/PopoverContent.utils.js.map +1 -1
  650. package/dist/components/popover/PopoverContent/usePopoverContent.js.map +1 -1
  651. package/dist/components/popover/PopoverDescription/PopoverDescription.d.ts +1 -1
  652. package/dist/components/popover/PopoverDescription/PopoverDescription.js.map +1 -1
  653. package/dist/components/popover/PopoverHeader/PopoverHeader.d.ts +1 -1
  654. package/dist/components/popover/PopoverHeader/PopoverHeader.js.map +1 -1
  655. package/dist/components/popover/PopoverTitle/PopoverTitle.d.ts +1 -1
  656. package/dist/components/popover/PopoverTitle/PopoverTitle.js.map +1 -1
  657. package/dist/components/popover/PopoverTrigger/PopoverTrigger.d.ts +1 -1
  658. package/dist/components/popover/PopoverTrigger/PopoverTrigger.js.map +1 -1
  659. package/dist/components/popover/PopoverTrigger/usePopoverTrigger.js.map +1 -1
  660. package/dist/components/progress/Progress/Progress.context.js.map +1 -1
  661. package/dist/components/progress/Progress/Progress.d.ts +1 -1
  662. package/dist/components/progress/Progress/Progress.js.map +1 -1
  663. package/dist/components/progress/Progress/Progress.styles.js.map +1 -1
  664. package/dist/components/progress/ProgressIndicator/ProgressIndicator.d.ts +1 -1
  665. package/dist/components/progress/ProgressIndicator/ProgressIndicator.js.map +1 -1
  666. package/dist/components/progress/ProgressIndicator/ProgressIndicator.styles.js.map +1 -1
  667. package/dist/components/progress/ProgressLabel/ProgressLabel.d.ts +1 -1
  668. package/dist/components/progress/ProgressLabel/ProgressLabel.js.map +1 -1
  669. package/dist/components/progress/ProgressLabel/ProgressLabel.styles.js.map +1 -1
  670. package/dist/components/progress/ProgressTrack/ProgressTrack.d.ts +1 -1
  671. package/dist/components/progress/ProgressTrack/ProgressTrack.js.map +1 -1
  672. package/dist/components/progress/ProgressTrack/ProgressTrack.styles.js.map +1 -1
  673. package/dist/components/progress/ProgressValue/ProgressValue.d.ts +1 -1
  674. package/dist/components/progress/ProgressValue/ProgressValue.js.map +1 -1
  675. package/dist/components/progress/ProgressValue/ProgressValue.styles.js.map +1 -1
  676. package/dist/components/radio-group/RadioGroup/RadioGroup.context.js.map +1 -1
  677. package/dist/components/radio-group/RadioGroup/RadioGroup.js.map +1 -1
  678. package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.d.ts +1 -1
  679. package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.js.map +1 -1
  680. package/dist/components/scroll-area/ScrollArea/ScrollArea.context.js.map +1 -1
  681. package/dist/components/scroll-area/ScrollArea/ScrollArea.d.ts +1 -1
  682. package/dist/components/scroll-area/ScrollArea/ScrollArea.js.map +1 -1
  683. package/dist/components/scroll-area/ScrollArea/ScrollArea.utils.js.map +1 -1
  684. package/dist/components/scroll-area/ScrollBar/ScrollBar.d.ts +1 -1
  685. package/dist/components/scroll-area/ScrollBar/ScrollBar.js.map +1 -1
  686. package/dist/components/scroll-arrows/ScrollArrowButton.d.ts +9 -0
  687. package/dist/components/scroll-arrows/ScrollArrowButton.js +51 -0
  688. package/dist/components/scroll-arrows/ScrollArrowButton.js.map +1 -0
  689. package/dist/components/scroll-arrows/ScrollArrows.d.ts +8 -0
  690. package/dist/components/scroll-arrows/ScrollArrows.js +35 -0
  691. package/dist/components/scroll-arrows/ScrollArrows.js.map +1 -0
  692. package/dist/components/scroll-arrows/ScrollArrows.types.d.ts +17 -0
  693. package/dist/components/scroll-arrows/index.d.ts +2 -0
  694. package/dist/components/scroll-arrows/index.js +2 -0
  695. package/dist/components/select/Select/Select.context.js.map +1 -1
  696. package/dist/components/select/Select/Select.js +36 -33
  697. package/dist/components/select/Select/Select.js.map +1 -1
  698. package/dist/components/select/Select/Select.types.d.ts +5 -0
  699. package/dist/components/select/SelectContent/SelectContent.d.ts +1 -1
  700. package/dist/components/select/SelectContent/SelectContent.js +45 -40
  701. package/dist/components/select/SelectContent/SelectContent.js.map +1 -1
  702. package/dist/components/select/SelectContent/SelectContent.utils.js.map +1 -1
  703. package/dist/components/select/SelectContent/useSelectContent.js.map +1 -1
  704. package/dist/components/select/SelectGroup/SelectGroup.d.ts +1 -1
  705. package/dist/components/select/SelectGroup/SelectGroup.js.map +1 -1
  706. package/dist/components/select/SelectItem/SelectItem.d.ts +1 -1
  707. package/dist/components/select/SelectItem/SelectItem.js.map +1 -1
  708. package/dist/components/select/SelectItem/useSelectItem.js.map +1 -1
  709. package/dist/components/select/SelectLabel/SelectLabel.d.ts +1 -1
  710. package/dist/components/select/SelectLabel/SelectLabel.js.map +1 -1
  711. package/dist/components/select/SelectSeparator/SelectSeparator.d.ts +1 -1
  712. package/dist/components/select/SelectSeparator/SelectSeparator.js.map +1 -1
  713. package/dist/components/select/SelectTrigger/SelectTrigger.d.ts +1 -1
  714. package/dist/components/select/SelectTrigger/SelectTrigger.js.map +1 -1
  715. package/dist/components/select/SelectTrigger/useSelectTrigger.js.map +1 -1
  716. package/dist/components/select/SelectValue/SelectValue.d.ts +1 -1
  717. package/dist/components/select/SelectValue/SelectValue.js.map +1 -1
  718. package/dist/components/separator/Separator.d.ts +1 -1
  719. package/dist/components/separator/Separator.js.map +1 -1
  720. package/dist/components/separator/Separator.styles.js.map +1 -1
  721. package/dist/components/sidebar/Sidebar/Sidebar.d.ts +1 -1
  722. package/dist/components/sidebar/Sidebar/Sidebar.js.map +1 -1
  723. package/dist/components/sidebar/SidebarContent/SidebarContent.d.ts +1 -1
  724. package/dist/components/sidebar/SidebarContent/SidebarContent.js.map +1 -1
  725. package/dist/components/sidebar/SidebarFooter/SidebarFooter.d.ts +1 -1
  726. package/dist/components/sidebar/SidebarFooter/SidebarFooter.js.map +1 -1
  727. package/dist/components/sidebar/SidebarGroup/SidebarGroup.d.ts +1 -1
  728. package/dist/components/sidebar/SidebarGroup/SidebarGroup.js.map +1 -1
  729. package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.d.ts +1 -1
  730. package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.js.map +1 -1
  731. package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.d.ts +1 -1
  732. package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.js.map +1 -1
  733. package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.d.ts +1 -1
  734. package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.js.map +1 -1
  735. package/dist/components/sidebar/SidebarHeader/SidebarHeader.d.ts +1 -1
  736. package/dist/components/sidebar/SidebarHeader/SidebarHeader.js.map +1 -1
  737. package/dist/components/sidebar/SidebarInput/SidebarInput.d.ts +1 -1
  738. package/dist/components/sidebar/SidebarInput/SidebarInput.js.map +1 -1
  739. package/dist/components/sidebar/SidebarInset/SidebarInset.d.ts +1 -1
  740. package/dist/components/sidebar/SidebarInset/SidebarInset.js.map +1 -1
  741. package/dist/components/sidebar/SidebarMenu/SidebarMenu.d.ts +1 -1
  742. package/dist/components/sidebar/SidebarMenu/SidebarMenu.js.map +1 -1
  743. package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.d.ts +1 -1
  744. package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.js.map +1 -1
  745. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.d.ts +1 -1
  746. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.js.map +1 -1
  747. package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.styles.js.map +1 -1
  748. package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.d.ts +1 -1
  749. package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.js.map +1 -1
  750. package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.d.ts +1 -1
  751. package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.js.map +1 -1
  752. package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.d.ts +1 -1
  753. package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.js.map +1 -1
  754. package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.d.ts +1 -1
  755. package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.js.map +1 -1
  756. package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.d.ts +1 -1
  757. package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.js.map +1 -1
  758. package/dist/components/sidebar/SidebarProvider/SidebarProvider.consts.js.map +1 -1
  759. package/dist/components/sidebar/SidebarProvider/SidebarProvider.context.js.map +1 -1
  760. package/dist/components/sidebar/SidebarProvider/SidebarProvider.d.ts +1 -1
  761. package/dist/components/sidebar/SidebarProvider/SidebarProvider.js.map +1 -1
  762. package/dist/components/sidebar/SidebarRail/SidebarRail.d.ts +1 -1
  763. package/dist/components/sidebar/SidebarRail/SidebarRail.js.map +1 -1
  764. package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.d.ts +1 -1
  765. package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.js.map +1 -1
  766. package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.d.ts +1 -1
  767. package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.js.map +1 -1
  768. package/dist/components/skeleton/Skeleton.d.ts +1 -1
  769. package/dist/components/skeleton/Skeleton.js.map +1 -1
  770. package/dist/components/slider/Slider/Slider.context.js.map +1 -1
  771. package/dist/components/slider/Slider/Slider.d.ts +1 -1
  772. package/dist/components/slider/Slider/Slider.js.map +1 -1
  773. package/dist/components/slider/Slider/Slider.styles.js.map +1 -1
  774. package/dist/components/slider/Slider/useSlider.js.map +1 -1
  775. package/dist/components/slider/SliderControl/SliderControl.d.ts +1 -1
  776. package/dist/components/slider/SliderControl/SliderControl.js.map +1 -1
  777. package/dist/components/slider/SliderControl/SliderControl.styles.js.map +1 -1
  778. package/dist/components/slider/SliderControl/useSliderControl.js.map +1 -1
  779. package/dist/components/slider/SliderIndicator/SliderIndicator.d.ts +1 -1
  780. package/dist/components/slider/SliderIndicator/SliderIndicator.js.map +1 -1
  781. package/dist/components/slider/SliderIndicator/SliderIndicator.styles.js.map +1 -1
  782. package/dist/components/slider/SliderIndicator/useSliderIndicator.js.map +1 -1
  783. package/dist/components/slider/SliderThumb/SliderThumb.d.ts +1 -1
  784. package/dist/components/slider/SliderThumb/SliderThumb.js.map +1 -1
  785. package/dist/components/slider/SliderThumb/SliderThumb.styles.js.map +1 -1
  786. package/dist/components/slider/SliderThumb/useSliderThumb.js.map +1 -1
  787. package/dist/components/slider/SliderTrack/SliderTrack.d.ts +1 -1
  788. package/dist/components/slider/SliderTrack/SliderTrack.js.map +1 -1
  789. package/dist/components/slider/SliderTrack/SliderTrack.styles.js.map +1 -1
  790. package/dist/components/spinner/Spinner.d.ts +1 -1
  791. package/dist/components/spinner/Spinner.js.map +1 -1
  792. package/dist/components/spinner/Spinner.styles.js.map +1 -1
  793. package/dist/components/switch/Switch.d.ts +1 -1
  794. package/dist/components/switch/Switch.js.map +1 -1
  795. package/dist/components/switch/Switch.styles.js.map +1 -1
  796. package/dist/components/table/Table/Table.d.ts +3 -0
  797. package/dist/components/table/Table/Table.js +24 -0
  798. package/dist/components/table/Table/Table.js.map +1 -0
  799. package/dist/components/table/Table/Table.types.d.ts +2 -0
  800. package/dist/components/table/Table/index.d.ts +2 -0
  801. package/dist/components/table/TableBody/TableBody.d.ts +2 -0
  802. package/dist/components/table/TableBody/TableBody.js +24 -0
  803. package/dist/components/table/TableBody/TableBody.js.map +1 -0
  804. package/dist/components/table/TableBody/TableBody.types.d.ts +2 -0
  805. package/dist/components/table/TableBody/index.d.ts +2 -0
  806. package/dist/components/table/TableCaption/TableCaption.d.ts +2 -0
  807. package/dist/components/table/TableCaption/TableCaption.js +24 -0
  808. package/dist/components/table/TableCaption/TableCaption.js.map +1 -0
  809. package/dist/components/table/TableCaption/TableCaption.types.d.ts +2 -0
  810. package/dist/components/table/TableCaption/index.d.ts +2 -0
  811. package/dist/components/table/TableCell/TableCell.d.ts +2 -0
  812. package/dist/components/table/TableCell/TableCell.js +24 -0
  813. package/dist/components/table/TableCell/TableCell.js.map +1 -0
  814. package/dist/components/table/TableCell/TableCell.types.d.ts +2 -0
  815. package/dist/components/table/TableCell/index.d.ts +2 -0
  816. package/dist/components/table/TableFooter/TableFooter.d.ts +2 -0
  817. package/dist/components/table/TableFooter/TableFooter.js +24 -0
  818. package/dist/components/table/TableFooter/TableFooter.js.map +1 -0
  819. package/dist/components/table/TableFooter/TableFooter.types.d.ts +2 -0
  820. package/dist/components/table/TableFooter/index.d.ts +2 -0
  821. package/dist/components/table/TableHead/TableHead.d.ts +2 -0
  822. package/dist/components/table/TableHead/TableHead.js +24 -0
  823. package/dist/components/table/TableHead/TableHead.js.map +1 -0
  824. package/dist/components/table/TableHead/TableHead.types.d.ts +2 -0
  825. package/dist/components/table/TableHead/index.d.ts +2 -0
  826. package/dist/components/table/TableHeader/TableHeader.d.ts +2 -0
  827. package/dist/components/table/TableHeader/TableHeader.js +24 -0
  828. package/dist/components/table/TableHeader/TableHeader.js.map +1 -0
  829. package/dist/components/table/TableHeader/TableHeader.types.d.ts +2 -0
  830. package/dist/components/table/TableHeader/index.d.ts +2 -0
  831. package/dist/components/table/TableRow/TableRow.d.ts +2 -0
  832. package/dist/components/table/TableRow/TableRow.js +24 -0
  833. package/dist/components/table/TableRow/TableRow.js.map +1 -0
  834. package/dist/components/table/TableRow/TableRow.types.d.ts +2 -0
  835. package/dist/components/table/TableRow/index.d.ts +2 -0
  836. package/dist/components/table/index.d.ts +16 -0
  837. package/dist/components/table/index.js +9 -0
  838. package/dist/components/tabs/Tabs/Tabs.context.d.ts +1 -1
  839. package/dist/components/tabs/Tabs/Tabs.context.js.map +1 -1
  840. package/dist/components/tabs/Tabs/Tabs.d.ts +1 -1
  841. package/dist/components/tabs/Tabs/Tabs.js.map +1 -1
  842. package/dist/components/tabs/Tabs/call-event-handler.js.map +1 -1
  843. package/dist/components/tabs/Tabs/useTabsKeyboard.js.map +1 -1
  844. package/dist/components/tabs/TabsContent/TabsContent.js.map +1 -1
  845. package/dist/components/tabs/TabsList/TabsList.context.js.map +1 -1
  846. package/dist/components/tabs/TabsList/TabsList.d.ts +1 -1
  847. package/dist/components/tabs/TabsList/TabsList.js.map +1 -1
  848. package/dist/components/tabs/TabsList/TabsList.styles.js.map +1 -1
  849. package/dist/components/tabs/TabsTrigger/TabsTrigger.d.ts +1 -1
  850. package/dist/components/tabs/TabsTrigger/TabsTrigger.js.map +1 -1
  851. package/dist/components/tabs/TabsTrigger/TabsTrigger.styles.js.map +1 -1
  852. package/dist/components/textarea/Textarea.d.ts +1 -1
  853. package/dist/components/textarea/Textarea.js.map +1 -1
  854. package/dist/components/time-picker/TimePicker/TimePicker.context.d.ts +29 -0
  855. package/dist/components/time-picker/TimePicker/TimePicker.context.js +49 -0
  856. package/dist/components/time-picker/TimePicker/TimePicker.context.js.map +1 -0
  857. package/dist/components/time-picker/TimePicker/TimePicker.d.ts +23 -0
  858. package/dist/components/time-picker/TimePicker/TimePicker.js +52 -0
  859. package/dist/components/time-picker/TimePicker/TimePicker.js.map +1 -0
  860. package/dist/components/time-picker/TimePicker/TimePicker.types.d.ts +91 -0
  861. package/dist/components/time-picker/TimePicker/create-change-event-details.d.ts +8 -0
  862. package/dist/components/time-picker/TimePicker/create-change-event-details.js +25 -0
  863. package/dist/components/time-picker/TimePicker/create-change-event-details.js.map +1 -0
  864. package/dist/components/time-picker/TimePicker/index.d.ts +4 -0
  865. package/dist/components/time-picker/TimePicker/time-picker.utils.d.ts +28 -0
  866. package/dist/components/time-picker/TimePicker/time-picker.utils.js +103 -0
  867. package/dist/components/time-picker/TimePicker/time-picker.utils.js.map +1 -0
  868. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.d.ts +10 -0
  869. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js +60 -0
  870. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js.map +1 -0
  871. package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.types.d.ts +8 -0
  872. package/dist/components/time-picker/TimePickerColumn/index.d.ts +2 -0
  873. package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.d.ts +16 -0
  874. package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js +75 -0
  875. package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js.map +1 -0
  876. package/dist/components/time-picker/TimePickerContent/TimePickerContent.d.ts +7 -0
  877. package/dist/components/time-picker/TimePickerContent/TimePickerContent.js +48 -0
  878. package/dist/components/time-picker/TimePickerContent/TimePickerContent.js.map +1 -0
  879. package/dist/components/time-picker/TimePickerContent/TimePickerContent.types.d.ts +11 -0
  880. package/dist/components/time-picker/TimePickerContent/index.d.ts +2 -0
  881. package/dist/components/time-picker/TimePickerOption/TimePickerOption.d.ts +9 -0
  882. package/dist/components/time-picker/TimePickerOption/TimePickerOption.js +52 -0
  883. package/dist/components/time-picker/TimePickerOption/TimePickerOption.js.map +1 -0
  884. package/dist/components/time-picker/TimePickerOption/TimePickerOption.types.d.ts +11 -0
  885. package/dist/components/time-picker/TimePickerOption/index.d.ts +2 -0
  886. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.d.ts +9 -0
  887. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.js +37 -0
  888. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.js.map +1 -0
  889. package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.types.d.ts +5 -0
  890. package/dist/components/time-picker/TimePickerTrigger/index.d.ts +2 -0
  891. package/dist/components/time-picker/index.d.ts +10 -0
  892. package/dist/components/time-picker/index.js +7 -0
  893. package/dist/components/toast/Toast/Toast.js.map +1 -1
  894. package/dist/components/toast/Toast/Toast.styles.js.map +1 -1
  895. package/dist/components/toast/Toast/Toast.types.js.map +1 -1
  896. package/dist/components/toast/Toaster/Toaster.js.map +1 -1
  897. package/dist/components/toast/Toaster/Toaster.styles.js.map +1 -1
  898. package/dist/components/toast/Toaster/Toaster.utils.js.map +1 -1
  899. package/dist/components/toast/state/toast.js.map +1 -1
  900. package/dist/components/toggle/Toggle/Toggle.js.map +1 -1
  901. package/dist/components/toggle/Toggle/Toggle.styles.js.map +1 -1
  902. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.context.d.ts +16 -11
  903. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.context.js +19 -19
  904. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.context.js.map +1 -1
  905. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.d.ts +10 -4
  906. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.js +25 -31
  907. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.js.map +1 -1
  908. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.styles.js.map +1 -1
  909. package/dist/components/toggle-group/ToggleGroup/ToggleGroup.types.d.ts +43 -13
  910. package/dist/components/toggle-group/ToggleGroup/create-change-event-details.js.map +1 -1
  911. package/dist/components/toggle-group/ToggleGroup/index.d.ts +1 -1
  912. package/dist/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.js.map +1 -1
  913. package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.js.map +1 -1
  914. package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.styles.js.map +1 -1
  915. package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.types.d.ts +5 -1
  916. package/dist/components/toggle-group/call-event-handler.js.map +1 -1
  917. package/dist/components/toggle-group/index.d.ts +1 -1
  918. package/dist/components/tooltip/Tooltip/Tooltip.context.js.map +1 -1
  919. package/dist/components/tooltip/Tooltip/Tooltip.js.map +1 -1
  920. package/dist/components/tooltip/TooltipArrow/TooltipArrow.d.ts +1 -1
  921. package/dist/components/tooltip/TooltipArrow/TooltipArrow.js.map +1 -1
  922. package/dist/components/tooltip/TooltipContent/TooltipContent.context.js.map +1 -1
  923. package/dist/components/tooltip/TooltipContent/TooltipContent.d.ts +1 -1
  924. package/dist/components/tooltip/TooltipContent/TooltipContent.js.map +1 -1
  925. package/dist/components/tooltip/TooltipContent/TooltipContent.utils.js.map +1 -1
  926. package/dist/components/tooltip/TooltipContent/useTooltipContent.js.map +1 -1
  927. package/dist/components/tooltip/TooltipGroup/TooltipGroup.context.js.map +1 -1
  928. package/dist/components/tooltip/TooltipGroup/TooltipGroup.d.ts +1 -1
  929. package/dist/components/tooltip/TooltipGroup/TooltipGroup.js.map +1 -1
  930. package/dist/components/tooltip/TooltipProvider/TooltipProvider.context.js.map +1 -1
  931. package/dist/components/tooltip/TooltipProvider/TooltipProvider.js.map +1 -1
  932. package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.d.ts +1 -1
  933. package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.js.map +1 -1
  934. package/dist/components/tooltip/TooltipTrigger/useTooltipTrigger.js.map +1 -1
  935. package/dist/hooks/index.d.ts +2 -0
  936. package/dist/hooks/index.js +3 -1
  937. package/dist/hooks/useFontLoader.js.map +1 -1
  938. package/dist/hooks/useScrollEdges.d.ts +16 -0
  939. package/dist/hooks/useScrollEdges.js +34 -0
  940. package/dist/hooks/useScrollEdges.js.map +1 -0
  941. package/dist/hooks/useScrollLock.d.ts +16 -0
  942. package/dist/hooks/useScrollLock.js +61 -0
  943. package/dist/hooks/useScrollLock.js.map +1 -0
  944. package/dist/index.d.ts +8 -0
  945. package/dist/index.js +251 -194
  946. package/dist/lib/positioner/auto-update.js.map +1 -1
  947. package/dist/lib/positioner/core/compute-position.js.map +1 -1
  948. package/dist/lib/positioner/core/placement.js.map +1 -1
  949. package/dist/lib/positioner/create-positioner.js.map +1 -1
  950. package/dist/lib/positioner/middleware/arrow.js.map +1 -1
  951. package/dist/lib/positioner/middleware/containing-block-offset.js.map +1 -1
  952. package/dist/lib/positioner/middleware/flip.js.map +1 -1
  953. package/dist/lib/positioner/middleware/hide.js.map +1 -1
  954. package/dist/lib/positioner/middleware/offset.js.map +1 -1
  955. package/dist/lib/positioner/middleware/shift.js.map +1 -1
  956. package/dist/lib/positioner/middleware/size.js.map +1 -1
  957. package/dist/lib/positioner/utils/dom.js.map +1 -1
  958. package/dist/lib/positioner/virtual-element.js +18 -0
  959. package/dist/lib/positioner/virtual-element.js.map +1 -0
  960. package/dist/ui.css +1 -1
  961. package/dist/utils/clsx.js.map +1 -1
  962. package/dist/utils/logger.js.map +1 -1
  963. package/dist/utils/ref.js.map +1 -1
  964. package/dist/utils/warn-once.js.map +1 -1
  965. package/package.json +6 -6
  966. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.d.ts +0 -10
  967. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js +0 -11
  968. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js.map +0 -1
  969. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.d.ts +0 -8
  970. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js +0 -11
  971. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js.map +0 -1
  972. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.d.ts +0 -2
  973. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js +0 -6
  974. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js.map +0 -1
  975. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.d.ts +0 -2
  976. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js +0 -26
  977. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Toaster.utils.js","names":[],"sources":["../../../../src/components/toast/Toaster/Toaster.utils.ts"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport type { Position, SwipeDirection } from \"../Toast/Toast.types\";\nimport type { Offset } from \"./Toaster.types\";\n\nconst VIEWPORT_OFFSET = \"24px\";\nconst MOBILE_VIEWPORT_OFFSET = \"16px\";\n\nexport function getPositionClass(position: Position): string {\n switch (position) {\n case \"top-left\":\n return \"top-0 left-0\";\n case \"top-right\":\n return \"top-0 right-0\";\n case \"top-center\":\n return \"top-0 left-1/2 -translate-x-1/2\";\n case \"bottom-left\":\n return \"bottom-0 left-0\";\n case \"bottom-right\":\n return \"bottom-0 right-0\";\n case \"bottom-center\":\n return \"bottom-0 left-1/2 -translate-x-1/2\";\n }\n}\n\nfunction toPx(value: string | number): string {\n return typeof value === \"number\" ? `${value}px` : value;\n}\n\nexport function resolveOffsetStyle(\n position: Position,\n offset?: Offset,\n mobileOffset?: Offset,\n): JSX.CSSProperties {\n const style: JSX.CSSProperties = {};\n const [y, x] = position.split(\"-\");\n\n const normalize = (value: Offset | undefined, fallback: string) =>\n typeof value === \"object\" && value !== null\n ? value\n : {\n top: value ?? fallback,\n right: value ?? fallback,\n bottom: value ?? fallback,\n left: value ?? fallback,\n };\n\n const desktop = normalize(offset, VIEWPORT_OFFSET);\n const mobile = normalize(mobileOffset, MOBILE_VIEWPORT_OFFSET);\n\n if (y === \"top\") {\n style.top = toPx(desktop.top ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-top\"] = toPx(mobile.top ?? MOBILE_VIEWPORT_OFFSET);\n } else {\n style.bottom = toPx(desktop.bottom ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-bottom\"] = toPx(\n mobile.bottom ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n if (x === \"left\") {\n style.left = toPx(desktop.left ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-left\"] = toPx(mobile.left ?? MOBILE_VIEWPORT_OFFSET);\n } else if (x === \"right\") {\n style.right = toPx(desktop.right ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-right\"] = toPx(\n mobile.right ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n return style;\n}\n\nexport function getDefaultSwipeDirections(\n position: Position,\n): SwipeDirection[] {\n const [y, x] = position.split(\"-\");\n const directions: SwipeDirection[] = [];\n if (y) directions.push(y as SwipeDirection);\n if (x) directions.push(x as SwipeDirection);\n return directions;\n}\n\nexport function getDocumentDirection(): \"rtl\" | \"ltr\" | \"auto\" {\n if (typeof document === \"undefined\") return \"ltr\";\n const dir = document.documentElement.getAttribute(\"dir\");\n if (dir === \"auto\" || !dir) {\n return getComputedStyle(document.documentElement).direction as\n | \"rtl\"\n | \"ltr\"\n | \"auto\";\n }\n return dir as \"rtl\" | \"ltr\" | \"auto\";\n}\n"],"mappings":";AAIA,IAAM,IAAkB,QAClB,IAAyB;AAE/B,SAAgB,EAAiB,GAA4B;CAC3D,QAAQ,GAAR;EACE,KAAK,YACH,OAAO;EACT,KAAK,aACH,OAAO;EACT,KAAK,cACH,OAAO;EACT,KAAK,eACH,OAAO;EACT,KAAK,gBACH,OAAO;EACT,KAAK,iBACH,OAAO;CACX;AACF;AAEA,SAAS,EAAK,GAAgC;CAC5C,OAAO,OAAO,KAAU,WAAW,GAAG,EAAM,MAAM;AACpD;AAEA,SAAgB,EACd,GACA,GACA,GACmB;CACnB,IAAM,IAA2B,CAAC,GAC5B,CAAC,GAAG,KAAK,EAAS,MAAM,GAAG,GAE3B,KAAa,GAA2B,MAC5C,OAAO,KAAU,YAAY,IACzB,IACA;EACE,KAAK,KAAS;EACd,OAAO,KAAS;EAChB,QAAQ,KAAS;EACjB,MAAM,KAAS;CACjB,GAEA,IAAU,EAAU,GAAQ,CAAe,GAC3C,IAAS,EAAU,GAAc,CAAsB;CAsB7D,OApBI,MAAM,SACR,EAAM,MAAM,EAAK,EAAQ,OAAO,CAAe,GAC/C,EAAM,yBAAyB,EAAK,EAAO,OAAO,CAAsB,MAExE,EAAM,SAAS,EAAK,EAAQ,UAAU,CAAe,GACrD,EAAM,4BAA4B,EAChC,EAAO,UAAU,CACnB,IAGE,MAAM,UACR,EAAM,OAAO,EAAK,EAAQ,QAAQ,CAAe,GACjD,EAAM,0BAA0B,EAAK,EAAO,QAAQ,CAAsB,KACjE,MAAM,YACf,EAAM,QAAQ,EAAK,EAAQ,SAAS,CAAe,GACnD,EAAM,2BAA2B,EAC/B,EAAO,SAAS,CAClB,IAGK;AACT;AAYA,SAAgB,IAA+C;CAC7D,IAAI,OAAO,WAAa,KAAa,OAAO;CAC5C,IAAM,IAAM,SAAS,gBAAgB,aAAa,KAAK;CAOvD,OANI,MAAQ,UAAU,CAAC,IACd,iBAAiB,SAAS,eAAe,CAAC,CAAC,YAK7C;AACT"}
1
+ {"version":3,"file":"Toaster.utils.js","names":["VIEWPORT_OFFSET","MOBILE_VIEWPORT_OFFSET","getPositionClass","position","toPx","value","resolveOffsetStyle","style","y","x","normalize","fallback","desktop","offset","mobile","mobileOffset","getDocumentDirection","dir"],"sources":["../../../../src/components/toast/Toaster/Toaster.utils.ts"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport type { Position, SwipeDirection } from \"../Toast/Toast.types\";\nimport type { Offset } from \"./Toaster.types\";\n\nconst VIEWPORT_OFFSET = \"24px\";\nconst MOBILE_VIEWPORT_OFFSET = \"16px\";\n\nexport function getPositionClass(position: Position): string {\n switch (position) {\n case \"top-left\":\n return \"top-0 left-0\";\n case \"top-right\":\n return \"top-0 right-0\";\n case \"top-center\":\n return \"top-0 left-1/2 -translate-x-1/2\";\n case \"bottom-left\":\n return \"bottom-0 left-0\";\n case \"bottom-right\":\n return \"bottom-0 right-0\";\n case \"bottom-center\":\n return \"bottom-0 left-1/2 -translate-x-1/2\";\n }\n}\n\nfunction toPx(value: string | number): string {\n return typeof value === \"number\" ? `${value}px` : value;\n}\n\nexport function resolveOffsetStyle(\n position: Position,\n offset?: Offset,\n mobileOffset?: Offset,\n): JSX.CSSProperties {\n const style: JSX.CSSProperties = {};\n const [y, x] = position.split(\"-\");\n\n const normalize = (value: Offset | undefined, fallback: string) =>\n typeof value === \"object\" && value !== null\n ? value\n : {\n top: value ?? fallback,\n right: value ?? fallback,\n bottom: value ?? fallback,\n left: value ?? fallback,\n };\n\n const desktop = normalize(offset, VIEWPORT_OFFSET);\n const mobile = normalize(mobileOffset, MOBILE_VIEWPORT_OFFSET);\n\n if (y === \"top\") {\n style.top = toPx(desktop.top ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-top\"] = toPx(mobile.top ?? MOBILE_VIEWPORT_OFFSET);\n } else {\n style.bottom = toPx(desktop.bottom ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-bottom\"] = toPx(\n mobile.bottom ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n if (x === \"left\") {\n style.left = toPx(desktop.left ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-left\"] = toPx(mobile.left ?? MOBILE_VIEWPORT_OFFSET);\n } else if (x === \"right\") {\n style.right = toPx(desktop.right ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-right\"] = toPx(\n mobile.right ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n return style;\n}\n\nexport function getDefaultSwipeDirections(\n position: Position,\n): SwipeDirection[] {\n const [y, x] = position.split(\"-\");\n const directions: SwipeDirection[] = [];\n if (y) directions.push(y as SwipeDirection);\n if (x) directions.push(x as SwipeDirection);\n return directions;\n}\n\nexport function getDocumentDirection(): \"rtl\" | \"ltr\" | \"auto\" {\n if (typeof document === \"undefined\") return \"ltr\";\n const dir = document.documentElement.getAttribute(\"dir\");\n if (dir === \"auto\" || !dir) {\n return getComputedStyle(document.documentElement).direction as\n | \"rtl\"\n | \"ltr\"\n | \"auto\";\n }\n return dir as \"rtl\" | \"ltr\" | \"auto\";\n}\n"],"mappings":";AAIA,IAAMA,IAAkB,QAClBC,IAAyB;AAE/B,SAAgBC,EAAiB,GAA4B;CAC3D,QAAQC,GAAR;EACE,KAAK,YACH,OAAO;EACT,KAAK,aACH,OAAO;EACT,KAAK,cACH,OAAO;EACT,KAAK,eACH,OAAO;EACT,KAAK,gBACH,OAAO;EACT,KAAK,iBACH,OAAO;CACX;AACF;AAEA,SAASC,EAAK,GAAgC;CAC5C,OAAO,OAAOC,KAAU,WAAW,GAAGA,EAAM,MAAMA;AACpD;AAEA,SAAgBC,EACd,GACA,GACA,GACmB;CACnB,IAAMC,IAA2B,CAAC,GAC5B,CAACC,GAAGC,KAAKN,EAAS,MAAM,GAAG,GAE3BO,KAAa,GAA2B,MAC5C,OAAOL,KAAU,YAAYA,IACzBA,IACA;EACE,KAAKA,KAASM;EACd,OAAON,KAASM;EAChB,QAAQN,KAASM;EACjB,MAAMN,KAASM;CACjB,GAEAC,IAAUF,EAAUG,GAAQb,CAAe,GAC3Cc,IAASJ,EAAUK,GAAcd,CAAsB;CAsB7D,OApBIO,MAAM,SACR,EAAM,MAAMJ,EAAKQ,EAAQ,OAAOZ,CAAe,GAC/C,EAAM,yBAAyBI,EAAKU,EAAO,OAAOb,CAAsB,MAExE,EAAM,SAASG,EAAKQ,EAAQ,UAAUZ,CAAe,GACrD,EAAM,4BAA4BI,EAChCU,EAAO,UAAUb,CACnB,IAGEQ,MAAM,UACR,EAAM,OAAOL,EAAKQ,EAAQ,QAAQZ,CAAe,GACjD,EAAM,0BAA0BI,EAAKU,EAAO,QAAQb,CAAsB,KACjEQ,MAAM,YACf,EAAM,QAAQL,EAAKQ,EAAQ,SAASZ,CAAe,GACnD,EAAM,2BAA2BI,EAC/BU,EAAO,SAASb,CAClB,IAGKM;AACT;AAYA,SAAgBS,IAA+C;CAC7D,IAAI,OAAO,WAAa,KAAa,OAAO;CAC5C,IAAMC,IAAM,SAAS,gBAAgB,aAAa,KAAK;CAOvD,OANIA,MAAQ,UAAU,CAACA,IACd,iBAAiB,SAAS,eAAe,CAAC,CAAC,YAK7CA;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","names":[],"sources":["../../../../src/components/toast/state/toast.ts"],"sourcesContent":["import { createUniqueId, type JSXElement } from \"solid-js\";\nimport { createStore, produce } from \"solid-js/store\";\nimport type {\n ExternalToast,\n PromiseData,\n PromiseT,\n ToastT,\n ToastTypes,\n} from \"../Toast/Toast.types\";\n\nconst [toasts, setToasts] = createStore<ToastT[]>([]);\n\nexport function useSonner() {\n return { toasts };\n}\n\nexport function getToasts() {\n return toasts;\n}\n\nexport function getHistory() {\n return toasts;\n}\n\nfunction createToast(\n data: ExternalToast & {\n message?: JSXElement;\n type?: ToastTypes;\n jsx?: JSXElement;\n promise?: PromiseT;\n },\n): string {\n const id = data.id ?? createUniqueId();\n\n setToasts(\n produce((list) => {\n const existing = list.find((toast) => toast.id === id);\n const next: ToastT = {\n ...data,\n id,\n title: data.message,\n dismissible: data.dismissible ?? true,\n } as ToastT;\n\n if (existing) {\n Object.assign(existing, next, {\n title: data.message ?? existing.title,\n });\n } else {\n list.unshift(next);\n }\n }),\n );\n\n return id;\n}\n\nfunction dismissToast(id?: string) {\n if (id !== undefined) {\n setToasts(\n produce((list) => {\n const toast = list.find((item) => item.id === id);\n if (toast) toast.delete = true;\n }),\n );\n } else {\n setToasts(\n produce((list) => {\n for (const toast of list) toast.delete = true;\n }),\n );\n }\n return id;\n}\n\nfunction removeToast(id: string) {\n setToasts(\n produce((list) => {\n const index = list.findIndex((toast) => toast.id === id);\n if (index !== -1) list.splice(index, 1);\n }),\n );\n}\n\nconst toastFunction = (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message });\n\nexport const toast = Object.assign(toastFunction, {\n success: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"success\", message }),\n info: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"info\", message }),\n warning: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"warning\", message }),\n error: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"error\", message }),\n loading: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"loading\", message }),\n message: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message }),\n custom: (jsx: (id: string) => JSXElement, data?: ExternalToast) => {\n const id = data?.id ?? createUniqueId();\n return createToast({ ...data, id, jsx: jsx(id) });\n },\n dismiss: dismissToast,\n promise: <Data = any>(promise: PromiseT<Data>, data?: PromiseData<Data>) => {\n if (!data) return;\n\n let id: string | undefined;\n if (data.loading !== undefined) {\n id = createToast({\n ...data,\n type: \"loading\",\n message: data.loading,\n } as any);\n }\n\n Promise.resolve(typeof promise === \"function\" ? promise() : promise)\n .then(async (result) => {\n const message =\n typeof data.success === \"function\"\n ? await data.success(result)\n : data.success;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"success\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(result)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .catch(async (error) => {\n const message =\n typeof data.error === \"function\"\n ? await data.error(error)\n : data.error;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"error\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(error)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .finally(() => {\n data.finally?.();\n });\n\n return id as string;\n },\n getToasts,\n getHistory,\n remove: removeToast,\n});\n\nexport { dismissToast, removeToast };\n"],"mappings":";;;AAUA,IAAM,CAAC,GAAQ,KAAa,EAAsB,CAAC,CAAC;AAEpD,SAAgB,IAAY;CAC1B,OAAO,EAAE,UAAO;AAClB;AAEA,SAAgB,IAAY;CAC1B,OAAO;AACT;AAEA,SAAgB,IAAa;CAC3B,OAAO;AACT;AAEA,SAAS,EACP,GAMQ;CACR,IAAM,IAAK,EAAK,MAAM,EAAe;CAsBrC,OApBA,EACE,GAAS,MAAS;EAChB,IAAM,IAAW,EAAK,MAAM,MAAU,EAAM,OAAO,CAAE,GAC/C,IAAe;GACnB,GAAG;GACH;GACA,OAAO,EAAK;GACZ,aAAa,EAAK,eAAe;EACnC;EAEA,AAAI,IACF,OAAO,OAAO,GAAU,GAAM,EAC5B,OAAO,EAAK,WAAW,EAAS,MAClC,CAAC,IAED,EAAK,QAAQ,CAAI;CAErB,CAAC,CACH,GAEO;AACT;AAEA,SAAS,EAAa,GAAa;CAejC,OANE,EACE,EATA,MAAO,KAAA,KASE,MAAS;EAChB,KAAK,IAAM,KAAS,GAAM,EAAM,SAAS;CAC3C,KATS,MAAS;EAChB,IAAM,IAAQ,EAAK,MAAM,MAAS,EAAK,OAAO,CAAE;EAChD,AAAI,MAAO,EAAM,SAAS;CAC5B,CALO,CAYT,GAEK;AACT;AAEA,SAAS,EAAY,GAAY;CAC/B,EACE,GAAS,MAAS;EAChB,IAAM,IAAQ,EAAK,WAAW,MAAU,EAAM,OAAO,CAAE;EACvD,AAAI,MAAU,MAAI,EAAK,OAAO,GAAO,CAAC;CACxC,CAAC,CACH;AACF;AAKA,IAAa,IAAQ,OAAO,QAHL,GAAqB,MAC1C,EAAY;CAAE,GAAG;CAAM;AAAQ,CAAC,GAEgB;CAChD,UAAU,GAAqB,MAC7B,EAAY;EAAE,GAAG;EAAM,MAAM;EAAW;CAAQ,CAAC;CACnD,OAAO,GAAqB,MAC1B,EAAY;EAAE,GAAG;EAAM,MAAM;EAAQ;CAAQ,CAAC;CAChD,UAAU,GAAqB,MAC7B,EAAY;EAAE,GAAG;EAAM,MAAM;EAAW;CAAQ,CAAC;CACnD,QAAQ,GAAqB,MAC3B,EAAY;EAAE,GAAG;EAAM,MAAM;EAAS;CAAQ,CAAC;CACjD,UAAU,GAAqB,MAC7B,EAAY;EAAE,GAAG;EAAM,MAAM;EAAW;CAAQ,CAAC;CACnD,UAAU,GAAqB,MAC7B,EAAY;EAAE,GAAG;EAAM;CAAQ,CAAC;CAClC,SAAS,GAAiC,MAAyB;EACjE,IAAM,IAAK,GAAM,MAAM,EAAe;EACtC,OAAO,EAAY;GAAE,GAAG;GAAM;GAAI,KAAK,EAAI,CAAE;EAAE,CAAC;CAClD;CACA,SAAS;CACT,UAAsB,GAAyB,MAA6B;EAC1E,IAAI,CAAC,GAAM;EAEX,IAAI;EAsDJ,OArDI,EAAK,YAAY,KAAA,MACnB,IAAK,EAAY;GACf,GAAG;GACH,MAAM;GACN,SAAS,EAAK;EAChB,CAAQ,IAGV,QAAQ,QAAQ,OAAO,KAAY,aAAa,EAAQ,IAAI,CAAO,CAAC,CACjE,KAAK,OAAO,MAAW;GACtB,IAAM,IACJ,OAAO,EAAK,WAAY,aACpB,MAAM,EAAK,QAAQ,CAAM,IACzB,EAAK;GAEX,AAAI,MAAY,KAAA,IAUL,MAAO,KAAA,KAChB,EAAa,CAAE,IAVf,EAAY;IACV;IACA,MAAM;IACG;IACT,aACE,OAAO,EAAK,eAAgB,aACxB,MAAM,EAAK,YAAY,CAAM,IAC7B,EAAK;GACb,CAAQ;EAIZ,CAAC,CAAC,CACD,MAAM,OAAO,MAAU;GACtB,IAAM,IACJ,OAAO,EAAK,SAAU,aAClB,MAAM,EAAK,MAAM,CAAK,IACtB,EAAK;GAEX,AAAI,MAAY,KAAA,IAUL,MAAO,KAAA,KAChB,EAAa,CAAE,IAVf,EAAY;IACV;IACA,MAAM;IACG;IACT,aACE,OAAO,EAAK,eAAgB,aACxB,MAAM,EAAK,YAAY,CAAK,IAC5B,EAAK;GACb,CAAQ;EAIZ,CAAC,CAAC,CACD,cAAc;GACb,EAAK,UAAU;EACjB,CAAC,GAEI;CACT;CACA;CACA;CACA,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"toast.js","names":["toasts","setToasts","createStore","useSonner","getToasts","getHistory","createToast","id","data","createUniqueId","produce","existing","list","toast","next","dismissToast","item","removeToast","index","jsx","promise","message","result","error"],"sources":["../../../../src/components/toast/state/toast.ts"],"sourcesContent":["import { createUniqueId, type JSXElement } from \"solid-js\";\nimport { createStore, produce } from \"solid-js/store\";\nimport type {\n ExternalToast,\n PromiseData,\n PromiseT,\n ToastT,\n ToastTypes,\n} from \"../Toast/Toast.types\";\n\nconst [toasts, setToasts] = createStore<ToastT[]>([]);\n\nexport function useSonner() {\n return { toasts };\n}\n\nexport function getToasts() {\n return toasts;\n}\n\nexport function getHistory() {\n return toasts;\n}\n\nfunction createToast(\n data: ExternalToast & {\n message?: JSXElement;\n type?: ToastTypes;\n jsx?: JSXElement;\n promise?: PromiseT;\n },\n): string {\n const id = data.id ?? createUniqueId();\n\n setToasts(\n produce((list) => {\n const existing = list.find((toast) => toast.id === id);\n const next: ToastT = {\n ...data,\n id,\n title: data.message,\n dismissible: data.dismissible ?? true,\n } as ToastT;\n\n if (existing) {\n Object.assign(existing, next, {\n title: data.message ?? existing.title,\n });\n } else {\n list.unshift(next);\n }\n }),\n );\n\n return id;\n}\n\nfunction dismissToast(id?: string) {\n if (id !== undefined) {\n setToasts(\n produce((list) => {\n const toast = list.find((item) => item.id === id);\n if (toast) toast.delete = true;\n }),\n );\n } else {\n setToasts(\n produce((list) => {\n for (const toast of list) toast.delete = true;\n }),\n );\n }\n return id;\n}\n\nfunction removeToast(id: string) {\n setToasts(\n produce((list) => {\n const index = list.findIndex((toast) => toast.id === id);\n if (index !== -1) list.splice(index, 1);\n }),\n );\n}\n\nconst toastFunction = (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message });\n\nexport const toast = Object.assign(toastFunction, {\n success: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"success\", message }),\n info: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"info\", message }),\n warning: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"warning\", message }),\n error: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"error\", message }),\n loading: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"loading\", message }),\n message: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message }),\n custom: (jsx: (id: string) => JSXElement, data?: ExternalToast) => {\n const id = data?.id ?? createUniqueId();\n return createToast({ ...data, id, jsx: jsx(id) });\n },\n dismiss: dismissToast,\n promise: <Data = any>(promise: PromiseT<Data>, data?: PromiseData<Data>) => {\n if (!data) return;\n\n let id: string | undefined;\n if (data.loading !== undefined) {\n id = createToast({\n ...data,\n type: \"loading\",\n message: data.loading,\n } as any);\n }\n\n Promise.resolve(typeof promise === \"function\" ? promise() : promise)\n .then(async (result) => {\n const message =\n typeof data.success === \"function\"\n ? await data.success(result)\n : data.success;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"success\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(result)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .catch(async (error) => {\n const message =\n typeof data.error === \"function\"\n ? await data.error(error)\n : data.error;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"error\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(error)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .finally(() => {\n data.finally?.();\n });\n\n return id as string;\n },\n getToasts,\n getHistory,\n remove: removeToast,\n});\n\nexport { dismissToast, removeToast };\n"],"mappings":";;;AAUA,IAAM,CAACA,GAAQC,KAAaC,EAAsB,CAAC,CAAC;AAEpD,SAAgBC,IAAY;CAC1B,OAAO,EAAE,UAAO;AAClB;AAEA,SAAgBC,IAAY;CAC1B,OAAOJ;AACT;AAEA,SAAgBK,IAAa;CAC3B,OAAOL;AACT;AAEA,SAASM,EACP,GAMQ;CACR,IAAMC,IAAKC,EAAK,MAAMC,EAAe;CAsBrC,OApBAR,EACES,GAAS,MAAS;EAChB,IAAMC,IAAWC,EAAK,MAAM,MAAUC,EAAM,OAAON,CAAE,GAC/CO,IAAe;GACnB,GAAGN;GACH;GACA,OAAOA,EAAK;GACZ,aAAaA,EAAK,eAAe;EACnC;EAEA,AAAIG,IACF,OAAO,OAAOA,GAAUG,GAAM,EAC5B,OAAON,EAAK,WAAWG,EAAS,MAClC,CAAC,IAEDC,EAAK,QAAQE,CAAI;CAErB,CAAC,CACH,GAEOP;AACT;AAEA,SAASQ,EAAa,GAAa;CAejC,OANEd,EACES,EATAH,MAAO,KAAA,KASE,MAAS;EAChB,KAAK,IAAMM,KAASD,GAAM,EAAM,SAAS;CAC3C,KATS,MAAS;EAChB,IAAMC,IAAQD,EAAK,MAAM,MAASI,EAAK,OAAOT,CAAE;EAChD,AAAIM,MAAO,EAAM,SAAS;CAC5B,CALO,CAYT,GAEKN;AACT;AAEA,SAASU,EAAY,GAAY;CAC/B,EACEP,GAAS,MAAS;EAChB,IAAMQ,IAAQN,EAAK,WAAW,MAAUC,EAAM,OAAON,CAAE;EACvD,AAAIW,MAAU,MAAIN,EAAK,OAAOM,GAAO,CAAC;CACxC,CAAC,CACH;AACF;AAKA,IAAaL,IAAQ,OAAO,QAHL,GAAqB,MAC1CP,EAAY;CAAE,GAAGE;CAAM;AAAQ,CAAC,GAEgB;CAChD,UAAU,GAAqB,MAC7BF,EAAY;EAAE,GAAGE;EAAM,MAAM;EAAW;CAAQ,CAAC;CACnD,OAAO,GAAqB,MAC1BF,EAAY;EAAE,GAAGE;EAAM,MAAM;EAAQ;CAAQ,CAAC;CAChD,UAAU,GAAqB,MAC7BF,EAAY;EAAE,GAAGE;EAAM,MAAM;EAAW;CAAQ,CAAC;CACnD,QAAQ,GAAqB,MAC3BF,EAAY;EAAE,GAAGE;EAAM,MAAM;EAAS;CAAQ,CAAC;CACjD,UAAU,GAAqB,MAC7BF,EAAY;EAAE,GAAGE;EAAM,MAAM;EAAW;CAAQ,CAAC;CACnD,UAAU,GAAqB,MAC7BF,EAAY;EAAE,GAAGE;EAAM;CAAQ,CAAC;CAClC,SAAS,GAAiC,MAAyB;EACjE,IAAMD,IAAKC,GAAM,MAAMC,EAAe;EACtC,OAAOH,EAAY;GAAE,GAAGE;GAAM;GAAI,KAAKW,EAAIZ,CAAE;EAAE,CAAC;CAClD;CACA,SAASQ;CACT,UAAsB,GAAyB,MAA6B;EAC1E,IAAI,CAACP,GAAM;EAEX,IAAID;EAsDJ,OArDIC,EAAK,YAAY,KAAA,MACnB,IAAKF,EAAY;GACf,GAAGE;GACH,MAAM;GACN,SAASA,EAAK;EAChB,CAAQ,IAGV,QAAQ,QAAQ,OAAOY,KAAY,aAAaA,EAAQ,IAAIA,CAAO,CAAC,CACjE,KAAK,OAAO,MAAW;GACtB,IAAMC,IACJ,OAAOb,EAAK,WAAY,aACpB,MAAMA,EAAK,QAAQc,CAAM,IACzBd,EAAK;GAEX,AAAIa,MAAY,KAAA,IAULd,MAAO,KAAA,KAChBQ,EAAaR,CAAE,IAVfD,EAAY;IACV;IACA,MAAM;IACG;IACT,aACE,OAAOE,EAAK,eAAgB,aACxB,MAAMA,EAAK,YAAYc,CAAM,IAC7Bd,EAAK;GACb,CAAQ;EAIZ,CAAC,CAAC,CACD,MAAM,OAAO,MAAU;GACtB,IAAMa,IACJ,OAAOb,EAAK,SAAU,aAClB,MAAMA,EAAK,MAAMe,CAAK,IACtBf,EAAK;GAEX,AAAIa,MAAY,KAAA,IAULd,MAAO,KAAA,KAChBQ,EAAaR,CAAE,IAVfD,EAAY;IACV;IACA,MAAM;IACG;IACT,aACE,OAAOE,EAAK,eAAgB,aACxB,MAAMA,EAAK,YAAYe,CAAK,IAC5Bf,EAAK;GACb,CAAQ;EAIZ,CAAC,CAAC,CACD,cAAc;GACb,EAAK,UAAU;EACjB,CAAC,GAEID;CACT;CACA;CACA;CACA,QAAQU;AACV,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Toggle.js","names":["createMemo","createSignal","mergeProps","splitProps","JSX","clsx","toggleVariants","ToggleProps","Toggle","props","Element","merged","type","const","local","rest","internalPressed","setInternalPressed","defaultPressed","pressed","undefined","setPressed","next","onPressedChange","_el$","_tmpl$","$$click","e","onClick","defaultPrevented","_$spread","_$mergeProps","data-state","aria-pressed","class","variant","size","_$delegateEvents"],"sources":["../../../../src/components/toggle/Toggle/Toggle.tsx"],"sourcesContent":["import {\n createMemo,\n createSignal,\n mergeProps,\n splitProps,\n type JSX,\n} from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"./Toggle.styles\";\nimport type { ToggleProps } from \"./Toggle.types\";\n\nexport function Toggle(props: ToggleProps): JSX.Element {\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"pressed\",\n \"defaultPressed\",\n \"onPressedChange\",\n \"variant\",\n \"size\",\n \"class\",\n \"value\",\n \"type\",\n \"onClick\",\n ]);\n\n const [internalPressed, setInternalPressed] = createSignal(\n local.defaultPressed ?? false,\n );\n const pressed = createMemo(() =>\n local.pressed !== undefined ? local.pressed : internalPressed(),\n );\n\n const setPressed = (next: boolean) => {\n if (local.pressed === undefined) setInternalPressed(next);\n local.onPressedChange?.(next);\n };\n\n return (\n <button\n type={local.type as \"button\"}\n data-slot=\"toggle\"\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({\n variant: local.variant,\n size: local.size,\n class: local.class,\n }),\n )}\n onClick={(e) => {\n (local.onClick as any)?.(e);\n if (!e.defaultPrevented) setPressed(!pressed());\n }}\n {...rest}\n />\n );\n}\n"],"mappings":";;;;;;AAWA,SAAgBQ,EAAOC,GAAiC;CACtD,IAAME,IAAST,EAAW,EAAEU,MAAM,SAAkB,GAAGH,CAAK,GAEtD,CAACK,GAAOC,KAAQZ,EAAWQ,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAS,CACV,GAEK,CAACK,GAAiBC,KAAsBhB,EAC5Ca,EAAMI,kBAAkB,EAC1B,GACMC,IAAUnB,QACdc,EAAMK,YAAYC,KAAAA,IAA4BJ,EAAgB,IAAhCF,EAAMK,OACtC,GAEME,KAAcC,MAAkB;EAEpCR,AADIA,EAAMK,YAAYC,KAAAA,KAAWH,EAAmBK,CAAI,GACxDR,EAAMS,kBAAkBD,CAAI;CAC9B;CAEA,cAAA;EAAA,IAAAE,IAAAC,EAAA;EAiBY,OAjBZD,EAAAE,WAacC,MAAM;GAEd,AADA,EAAOC,UAAkBD,CAAC,GACrBA,EAAEE,oBAAkBR,EAAW,CAACF,EAAQ,CAAC;EAChD,GAACW,EAAAN,GAAAO,EAAA;GAAA,IAdDnB,OAAI;IAAA,OAAEE,EAAMF;GAAgB;GAAA,IAAA,eAAA;IAAA,OAEhBO,EAAQ,IAAI,OAAO;GAAK;GAAA,IAAA,iBAAA;IAAA,OACtBA,EAAQ;GAAC;GAAA,IAAA,QAAA;IAAA,OAChBd,EACLC,EAAe;KACb6B,SAASrB,EAAMqB;KACfC,MAAMtB,EAAMsB;KACZF,OAAOpB,EAAMoB;IACf,CAAC,CACH;GAAC;EAAA,GAKGnB,CAAI,GAAA,IAAA,EAAA,GAAAS;CAAA,EAAA,CAAA;AAGd;AAACa,EAAA,CAAA,OAAA,CAAA"}
1
+ {"version":3,"file":"Toggle.js","names":["createMemo","createSignal","mergeProps","splitProps","JSX","clsx","toggleVariants","ToggleProps","Toggle","props","Element","merged","type","const","local","rest","internalPressed","setInternalPressed","defaultPressed","pressed","undefined","setPressed","next","onPressedChange","_el$","_tmpl$","$$click","e","onClick","defaultPrevented","_$spread","_$mergeProps","data-state","aria-pressed","class","variant","size","_$delegateEvents","mergeProps","_$mergeProps","_$delegateEvents","mergeProps$1","_tmpl$","Toggle","merged","props","local","rest","splitProps","internalPressed","setInternalPressed","createSignal","pressed","createMemo","setPressed","next","_el$","spread","mergeProps","\"class\"","clsx","toggleVariants","delegateEvents"],"sources":["../../../../src/components/toggle/Toggle/Toggle.tsx"],"sourcesContent":["import {\n createMemo,\n createSignal,\n mergeProps,\n splitProps,\n type JSX,\n} from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"./Toggle.styles\";\nimport type { ToggleProps } from \"./Toggle.types\";\n\nexport function Toggle(props: ToggleProps): JSX.Element {\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"pressed\",\n \"defaultPressed\",\n \"onPressedChange\",\n \"variant\",\n \"size\",\n \"class\",\n \"value\",\n \"type\",\n \"onClick\",\n ]);\n\n const [internalPressed, setInternalPressed] = createSignal(\n local.defaultPressed ?? false,\n );\n const pressed = createMemo(() =>\n local.pressed !== undefined ? local.pressed : internalPressed(),\n );\n\n const setPressed = (next: boolean) => {\n if (local.pressed === undefined) setInternalPressed(next);\n local.onPressedChange?.(next);\n };\n\n return (\n <button\n type={local.type as \"button\"}\n data-slot=\"toggle\"\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({\n variant: local.variant,\n size: local.size,\n class: local.class,\n }),\n )}\n onClick={(e) => {\n (local.onClick as any)?.(e);\n if (!e.defaultPrevented) setPressed(!pressed());\n }}\n {...rest}\n />\n );\n}\n"],"mappings":";;;;;;AAWA,SAAgBQ,EAAOC,GAAiC;CACtD,IAAME,IAAST,EAAW,EAAEU,MAAM,SAAkB,GAAGH,CAAK,GAEtD,CAACK,GAAOC,KAAQZ,EAAWQ,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAS,CACV,GAEK,CAACK,GAAiBC,KAAsBhB,EAC5Ca,EAAMI,kBAAkB,EAC1B,GACMC,IAAUnB,QACdc,EAAMK,YAAYC,KAAAA,IAA4BJ,EAAgB,IAAhCF,EAAMK,OACtC,GAEME,KAAcC,MAAkB;EAEpCR,AADIA,EAAMK,YAAYC,KAAAA,KAAWH,EAAmBK,CAAI,GACxDR,EAAMS,kBAAkBD,CAAI;CAC9B;CAEA,cAAA;EAAA,IAAAE,IAAAC,EAAA;EAiBY,OAjBZD,EAAAE,WAacC,MAAM;GAEd,AADAmB,EAAOlB,UAAkBD,CAAC,GACrBA,EAAEE,oBAAkBR,EAAW,CAACF,EAAQ,CAAC;EAChD,GAACW,EAAAN,GAAAO,EAAA;GAAA,IAdDnB,OAAI;IAAA,OAAEE,EAAMF;GAAgB;GAAA,IAAA,eAAA;IAAA,OAEhBO,EAAQ,IAAI,OAAO;GAAK;GAAA,IAAA,iBAAA;IAAA,OACtBA,EAAQ;GAAC;GAAA,IAAAwC,QAAA;IAAA,OAChBtD,EACLC,EAAe;KACb6B,SAASrB,EAAMqB;KACfC,MAAMtB,EAAMsB;KACZF,OAAOpB,EAAMoB;IACf,CAAC,CACH;GAAC;EAAA,GAKGnB,CAAI,GAAA,IAAA,EAAA,GAAAS;CAAA,EAAA,CAAA;AAGd;AAACa,EAAA,CAAA,OAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Toggle.styles.js","names":[],"sources":["../../../../src/components/toggle/Toggle/Toggle.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const toggleVariants = cva(\n \"group/toggle inline-flex items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border border-input bg-transparent hover:bg-muted\",\n },\n size: {\n default:\n \"h-8 min-w-8 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n sm: \"h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 min-w-9 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n"],"mappings":";;AAEA,IAAa,IAAiB,EAC5B,uhBACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;EACX;EACA,MAAM;GACJ,SACE;GACF,IAAI;GACJ,IAAI;EACN;CACF;CACA,iBAAiB;EACf,SAAS;EACT,MAAM;CACR;AACF,CACF"}
1
+ {"version":3,"file":"Toggle.styles.js","names":["toggleVariants","cva"],"sources":["../../../../src/components/toggle/Toggle/Toggle.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const toggleVariants = cva(\n \"group/toggle inline-flex items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border border-input bg-transparent hover:bg-muted\",\n },\n size: {\n default:\n \"h-8 min-w-8 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n sm: \"h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 min-w-9 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n"],"mappings":";;AAEA,IAAaA,IAAiBC,EAC5B,uhBACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;EACX;EACA,MAAM;GACJ,SACE;GACF,IAAI;GACJ,IAAI;EACN;CACF;CACA,iBAAiB;EACf,SAAS;EACT,MAAM;CACR;AACF,CACF"}
@@ -1,16 +1,21 @@
1
- import { ToggleGroupChangeEventDetails, ToggleGroupContextValue, ToggleGroupOrientation, ToggleGroupSize, ToggleGroupValue, ToggleGroupVariant } from './ToggleGroup.types';
1
+ import { ToggleGroupChangeHandler, ToggleGroupContextValue, ToggleGroupOrientation, ToggleGroupSize, ToggleGroupValue, ToggleGroupVariant } from './ToggleGroup.types';
2
2
  declare const ToggleGroupContext: import('solid-js').Context<ToggleGroupContextValue<ToggleGroupValue> | undefined>;
3
- /** createToggleGroupState 的输入:与 ToggleGroupProps 的运行时字段一致 */
3
+ /**
4
+ * createToggleGroupState 的输入:ToggleGroupProps 的运行时形态。
5
+ *
6
+ * 受控值时单选给标量、多选给数组,内部统一规范化成数组;
7
+ * `multiple` 同时决定 onValueChange 用哪种签名回调。
8
+ */
4
9
  export interface ToggleGroupStateProps<TValue extends ToggleGroupValue = ToggleGroupValue> {
5
- value?: readonly TValue[];
6
- defaultValue?: readonly TValue[];
7
- onValueChange?: (value: TValue[], eventDetails: ToggleGroupChangeEventDetails) => void;
8
- multiple: boolean;
9
- disabled: boolean;
10
- orientation: ToggleGroupOrientation;
11
- loopFocus: boolean;
10
+ value?: TValue | readonly TValue[];
11
+ defaultValue?: TValue | readonly TValue[];
12
+ onValueChange?: ToggleGroupChangeHandler<TValue>;
13
+ multiple?: boolean;
14
+ disabled?: boolean;
15
+ orientation?: ToggleGroupOrientation;
16
+ loopFocus?: boolean;
12
17
  dir?: "ltr" | "rtl" | "auto";
13
- spacing: number;
18
+ spacing?: number;
14
19
  variant?: ToggleGroupVariant;
15
20
  size?: ToggleGroupSize;
16
21
  }
@@ -18,7 +23,7 @@ export interface ToggleGroupStateProps<TValue extends ToggleGroupValue = ToggleG
18
23
  * ToggleGroup 的唯一状态源:选中值(受控/非受控)、焦点高亮、item 注册表。
19
24
  *
20
25
  * 返回的 context 值里所有字段都是 accessor,因此传入的 `props` 可以是
21
- * splitProps/mergeProps 得到的响应式代理,读取始终是最新值。
26
+ * splitProps 得到的响应式代理,读取始终是最新值。
22
27
  * 组件根只负责输出 DOM 与 data-* 样式钩子,状态与交互算法收敛在这里。
23
28
  *
24
29
  * 值类型由泛型参数决定;内部只用 `===` / `includes` 做同一性比较,
@@ -3,30 +3,30 @@ import { createContext as t, createSignal as n, useContext as r } from "solid-js
3
3
  //#region src/components/toggle-group/ToggleGroup/ToggleGroup.context.ts
4
4
  var i = t();
5
5
  function a(t) {
6
- let [r, i] = n([...t.defaultValue ?? []]), [a, o] = n(), [s, c] = n([]), l = () => t.value !== void 0, u = () => l() ? t.value : r();
6
+ let r = () => t.multiple === !0, i = (e) => e === void 0 ? [] : Array.isArray(e) ? [...e] : [e], [a, o] = n(i(t.defaultValue)), [s, c] = n(), [l, u] = n([]), d = () => t.value !== void 0, f = () => d() ? i(t.value) : a();
7
7
  return {
8
- value: u,
9
- multiple: () => t.multiple,
10
- disabled: () => t.disabled,
11
- orientation: () => t.orientation,
12
- loopFocus: () => t.loopFocus,
8
+ value: f,
9
+ multiple: r,
10
+ disabled: () => t.disabled === !0,
11
+ orientation: () => t.orientation ?? "horizontal",
12
+ loopFocus: () => t.loopFocus ?? !0,
13
13
  dir: () => t.dir,
14
- spacing: () => t.spacing,
14
+ spacing: () => t.spacing ?? 2,
15
15
  variant: () => t.variant,
16
16
  size: () => t.size,
17
- highlightedValue: a,
18
- isPressed: (e) => u().includes(e),
19
- toggleItem: (n, r, a) => {
20
- let o = u(), s = o.includes(n), c;
21
- c = t.multiple ? s ? o.filter((e) => e !== n) : [...o, n] : s ? [] : [n];
22
- let d = e(r, a);
23
- t.onValueChange?.(c, d), !d.isCanceled && (l() || i(c));
17
+ highlightedValue: s,
18
+ isPressed: (e) => f().includes(e),
19
+ toggleItem: (n, i, a) => {
20
+ let s = f(), c = s.includes(n), l;
21
+ l = r() ? c ? s.filter((e) => e !== n) : [...s, n] : c ? [] : [n];
22
+ let u = e(i, a);
23
+ r() ? t.onValueChange?.(l, u) : t.onValueChange?.(l[0], u), !u.isCanceled && (d() || o(l));
24
24
  },
25
- setHighlightedValue: o,
26
- registerItem: (e) => (c((t) => [...t, e]), () => c((t) => t.filter((t) => t !== e))),
27
- getItems: () => s(),
28
- isFirstEnabled: (e) => s().find((e) => !e.disabled())?.value === e,
29
- isUsable: (e) => s().some((t) => t.value === e && !t.disabled())
25
+ setHighlightedValue: c,
26
+ registerItem: (e) => (u((t) => [...t, e]), () => u((t) => t.filter((t) => t !== e))),
27
+ getItems: () => l(),
28
+ isFirstEnabled: (e) => l().find((e) => !e.disabled())?.value === e,
29
+ isUsable: (e) => l().some((t) => t.value === e && !t.disabled())
30
30
  };
31
31
  }
32
32
  function o(e) {
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroup.context.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.context.ts"],"sourcesContent":["import { createContext, createSignal, useContext } from \"solid-js\";\nimport { createChangeEventDetails } from \"./create-change-event-details\";\nimport type {\n ToggleGroupChangeEventDetails,\n ToggleGroupContextValue,\n ToggleGroupItemEntry,\n ToggleGroupOrientation,\n ToggleGroupSize,\n ToggleGroupValue,\n ToggleGroupVariant,\n} from \"./ToggleGroup.types\";\n\nconst ToggleGroupContext = createContext<ToggleGroupContextValue>();\n\n/** createToggleGroupState 的输入:与 ToggleGroupProps 的运行时字段一致 */\nexport interface ToggleGroupStateProps<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n> {\n value?: readonly TValue[];\n defaultValue?: readonly TValue[];\n onValueChange?: (\n value: TValue[],\n eventDetails: ToggleGroupChangeEventDetails,\n ) => void;\n multiple: boolean;\n disabled: boolean;\n orientation: ToggleGroupOrientation;\n loopFocus: boolean;\n dir?: \"ltr\" | \"rtl\" | \"auto\";\n spacing: number;\n variant?: ToggleGroupVariant;\n size?: ToggleGroupSize;\n}\n\n/**\n * ToggleGroup 的唯一状态源:选中值(受控/非受控)、焦点高亮、item 注册表。\n *\n * 返回的 context 值里所有字段都是 accessor,因此传入的 `props` 可以是\n * splitProps/mergeProps 得到的响应式代理,读取始终是最新值。\n * 组件根只负责输出 DOM 与 data-* 样式钩子,状态与交互算法收敛在这里。\n *\n * 值类型由泛型参数决定;内部只用 `===` / `includes` 做同一性比较,\n * 因此 string 与 number 都能正常工作。\n */\nexport function createToggleGroupState<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupStateProps<TValue>): ToggleGroupContextValue<TValue> {\n const [internalValue, setInternalValue] = createSignal<TValue[]>([\n ...(props.defaultValue ?? []),\n ]);\n const [highlightedValue, setHighlightedValue] = createSignal<\n TValue | undefined\n >();\n const [itemOrder, setItemOrder] = createSignal<\n ToggleGroupItemEntry<TValue>[]\n >([]);\n\n const isControlled = () => props.value !== undefined;\n // 受控优先:props.value 存在时读外部值,否则读内部状态\n const value = (): readonly TValue[] =>\n isControlled() ? (props.value as readonly TValue[]) : internalValue();\n\n const isPressed = (v: TValue) => value().includes(v);\n\n const toggleItem = (\n itemValue: TValue,\n event: Event,\n trigger?: Element,\n ): void => {\n const current = value();\n const pressed = current.includes(itemValue);\n\n // 对齐 base-ui:单选时再次点击已按下项会取消选中(next = [])\n let next: TValue[];\n if (props.multiple) {\n next = pressed\n ? current.filter((v) => v !== itemValue)\n : [...current, itemValue];\n } else {\n next = pressed ? [] : [itemValue];\n }\n\n // 先通知外部:onValueChange 中 cancel() 可阻止组件提交本次变更\n const details = createChangeEventDetails(event, trigger);\n props.onValueChange?.(next, details);\n if (details.isCanceled) return;\n\n // 受控模式只通知外部,不改内部状态\n if (!isControlled()) setInternalValue(next);\n };\n\n const registerItem = (entry: ToggleGroupItemEntry<TValue>) => {\n setItemOrder((prev) => [...prev, entry]);\n return () => setItemOrder((prev) => prev.filter((item) => item !== entry));\n };\n\n const isFirstEnabled = (v: TValue) =>\n itemOrder().find((item) => !item.disabled())?.value === v;\n\n const isUsable = (v: TValue) =>\n itemOrder().some((item) => item.value === v && !item.disabled());\n\n return {\n value,\n multiple: () => props.multiple,\n disabled: () => props.disabled,\n orientation: () => props.orientation,\n loopFocus: () => props.loopFocus,\n dir: () => props.dir,\n spacing: () => props.spacing,\n variant: () => props.variant,\n size: () => props.size,\n highlightedValue,\n isPressed,\n toggleItem,\n setHighlightedValue,\n registerItem,\n getItems: () => itemOrder(),\n isFirstEnabled,\n isUsable,\n };\n}\n\n/**\n * 读取 ToggleGroup 的 context。\n *\n * 泛型参数是**调用方标注**:组件本身无法从子节点推导所属 group 的值类型,\n * 自定义 item 时请显式传入与 ToggleGroup 一致的类型,例如\n * `useToggleGroupContext<\"bold\" | \"italic\">(\"MyToggle\")`。\n */\nexport function useToggleGroupContext<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(component: string): ToggleGroupContextValue<TValue> {\n const ctx = useContext(ToggleGroupContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <ToggleGroup> 内部`);\n }\n return ctx as ToggleGroupContextValue<TValue>;\n}\n\nexport { ToggleGroupContext };\n"],"mappings":";;;AAYA,IAAM,IAAqB,EAAuC;AAgClE,SAAgB,EAEd,GAAuE;CACvE,IAAM,CAAC,GAAe,KAAoB,EAAuB,CAC/D,GAAI,EAAM,gBAAgB,CAAC,CAC7B,CAAC,GACK,CAAC,GAAkB,KAAuB,EAE9C,GACI,CAAC,GAAW,KAAgB,EAEhC,CAAC,CAAC,GAEE,UAAqB,EAAM,UAAU,KAAA,GAErC,UACJ,EAAa,IAAK,EAAM,QAA8B,EAAc;CA0CtE,OAAO;EACL;EACA,gBAAgB,EAAM;EACtB,gBAAgB,EAAM;EACtB,mBAAmB,EAAM;EACzB,iBAAiB,EAAM;EACvB,WAAW,EAAM;EACjB,eAAe,EAAM;EACrB,eAAe,EAAM;EACrB,YAAY,EAAM;EAClB;EACA,YAnDiB,MAAc,EAAM,CAAC,CAAC,SAAS,CAAC;EAoDjD,aAjDA,GACA,GACA,MACS;GACT,IAAM,IAAU,EAAM,GAChB,IAAU,EAAQ,SAAS,CAAS,GAGtC;GACJ,AAKE,IALE,EAAM,WACD,IACH,EAAQ,QAAQ,MAAM,MAAM,CAAS,IACrC,CAAC,GAAG,GAAS,CAAS,IAEnB,IAAU,CAAC,IAAI,CAAC,CAAS;GAIlC,IAAM,IAAU,EAAyB,GAAO,CAAO;GACvD,EAAM,gBAAgB,GAAM,CAAO,GAC/B,GAAQ,eAGP,EAAa,KAAG,EAAiB,CAAI;EAC5C;EA0BE;EACA,eAzBoB,OACpB,GAAc,MAAS,CAAC,GAAG,GAAM,CAAK,CAAC,SAC1B,GAAc,MAAS,EAAK,QAAQ,MAAS,MAAS,CAAK,CAAC;EAwBzE,gBAAgB,EAAU;EAC1B,iBAtBsB,MACtB,EAAU,CAAC,CAAC,MAAM,MAAS,CAAC,EAAK,SAAS,CAAC,CAAC,EAAE,UAAU;EAsBxD,WApBgB,MAChB,EAAU,CAAC,CAAC,MAAM,MAAS,EAAK,UAAU,KAAK,CAAC,EAAK,SAAS,CAAC;CAoBjE;AACF;AASA,SAAgB,EAEd,GAAoD;CACpD,IAAM,IAAM,EAAW,CAAkB;CACzC,IAAI,CAAC,GACH,MAAU,MAAM,IAAI,EAAU,yBAAyB;CAEzD,OAAO;AACT"}
1
+ {"version":3,"file":"ToggleGroup.context.js","names":["ToggleGroupContext","createContext","createToggleGroupState","multiple","props","toArray","v","internalValue","setInternalValue","createSignal","highlightedValue","setHighlightedValue","itemOrder","setItemOrder","isControlled","value","current","pressed","itemValue","next","details","createChangeEventDetails","event","trigger","prev","entry","item","useToggleGroupContext","ctx","useContext","component"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.context.ts"],"sourcesContent":["import { createContext, createSignal, useContext } from \"solid-js\";\nimport { createChangeEventDetails } from \"./create-change-event-details\";\nimport type {\n ToggleGroupChangeHandler,\n ToggleGroupContextValue,\n ToggleGroupItemEntry,\n ToggleGroupMultipleProps,\n ToggleGroupOrientation,\n ToggleGroupSingleProps,\n ToggleGroupSize,\n ToggleGroupValue,\n ToggleGroupVariant,\n} from \"./ToggleGroup.types\";\n\nconst ToggleGroupContext = createContext<ToggleGroupContextValue>();\n\n/** 单选/多选的 onValueChange 签名(从 props 类型派生,保持单一事实来源) */\ntype SingleChangeHandler<TValue extends ToggleGroupValue> = NonNullable<\n ToggleGroupSingleProps<TValue>[\"onValueChange\"]\n>;\ntype MultipleChangeHandler<TValue extends ToggleGroupValue> = NonNullable<\n ToggleGroupMultipleProps<TValue>[\"onValueChange\"]\n>;\n\n/**\n * createToggleGroupState 的输入:ToggleGroupProps 的运行时形态。\n *\n * 受控值时单选给标量、多选给数组,内部统一规范化成数组;\n * `multiple` 同时决定 onValueChange 用哪种签名回调。\n */\nexport interface ToggleGroupStateProps<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n> {\n value?: TValue | readonly TValue[];\n defaultValue?: TValue | readonly TValue[];\n onValueChange?: ToggleGroupChangeHandler<TValue>;\n multiple?: boolean;\n disabled?: boolean;\n orientation?: ToggleGroupOrientation;\n loopFocus?: boolean;\n dir?: \"ltr\" | \"rtl\" | \"auto\";\n spacing?: number;\n variant?: ToggleGroupVariant;\n size?: ToggleGroupSize;\n}\n\n/**\n * ToggleGroup 的唯一状态源:选中值(受控/非受控)、焦点高亮、item 注册表。\n *\n * 返回的 context 值里所有字段都是 accessor,因此传入的 `props` 可以是\n * splitProps 得到的响应式代理,读取始终是最新值。\n * 组件根只负责输出 DOM 与 data-* 样式钩子,状态与交互算法收敛在这里。\n *\n * 值类型由泛型参数决定;内部只用 `===` / `includes` 做同一性比较,\n * 因此 string 与 number 都能正常工作。\n */\nexport function createToggleGroupState<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupStateProps<TValue>): ToggleGroupContextValue<TValue> {\n const multiple = () => props.multiple === true;\n\n /** 单选传标量、多选传数组,内部统一成数组 */\n const toArray = (v: TValue | readonly TValue[] | undefined): TValue[] => {\n if (v === undefined) return [];\n return Array.isArray(v) ? [...(v as readonly TValue[])] : [v as TValue];\n };\n\n const [internalValue, setInternalValue] = createSignal<TValue[]>(\n toArray(props.defaultValue),\n );\n const [highlightedValue, setHighlightedValue] = createSignal<\n TValue | undefined\n >();\n const [itemOrder, setItemOrder] = createSignal<\n ToggleGroupItemEntry<TValue>[]\n >([]);\n\n const isControlled = () => props.value !== undefined;\n // 受控优先:props.value 存在时读外部值,否则读内部状态\n const value = (): readonly TValue[] =>\n isControlled() ? toArray(props.value) : internalValue();\n\n const isPressed = (v: TValue) => value().includes(v);\n\n const toggleItem = (\n itemValue: TValue,\n event: Event,\n trigger?: Element,\n ): void => {\n const current = value();\n const pressed = current.includes(itemValue);\n\n // 单选时再次点击已按下项会取消选中(next = [])\n let next: TValue[];\n if (multiple()) {\n next = pressed\n ? current.filter((v) => v !== itemValue)\n : [...current, itemValue];\n } else {\n next = pressed ? [] : [itemValue];\n }\n\n // 先通知外部:onValueChange 中 cancel() 可阻止组件提交本次变更\n // 单选回调标量(取消时是 undefined),多选回调数组\n const details = createChangeEventDetails(event, trigger);\n if (multiple()) {\n (props.onValueChange as MultipleChangeHandler<TValue> | undefined)?.(\n next,\n details,\n );\n } else {\n (props.onValueChange as SingleChangeHandler<TValue> | undefined)?.(\n next[0],\n details,\n );\n }\n if (details.isCanceled) return;\n\n // 受控模式只通知外部,不改内部状态\n if (!isControlled()) setInternalValue(next);\n };\n\n const registerItem = (entry: ToggleGroupItemEntry<TValue>) => {\n setItemOrder((prev) => [...prev, entry]);\n return () => setItemOrder((prev) => prev.filter((item) => item !== entry));\n };\n\n const isFirstEnabled = (v: TValue) =>\n itemOrder().find((item) => !item.disabled())?.value === v;\n\n const isUsable = (v: TValue) =>\n itemOrder().some((item) => item.value === v && !item.disabled());\n\n return {\n value,\n multiple,\n disabled: () => props.disabled === true,\n orientation: () => props.orientation ?? \"horizontal\",\n loopFocus: () => props.loopFocus ?? true,\n dir: () => props.dir,\n spacing: () => props.spacing ?? 2,\n variant: () => props.variant,\n size: () => props.size,\n highlightedValue,\n isPressed,\n toggleItem,\n setHighlightedValue,\n registerItem,\n getItems: () => itemOrder(),\n isFirstEnabled,\n isUsable,\n };\n}\n\n/**\n * 读取 ToggleGroup 的 context。\n *\n * 泛型参数是**调用方标注**:组件本身无法从子节点推导所属 group 的值类型,\n * 自定义 item 时请显式传入与 ToggleGroup 一致的类型,例如\n * `useToggleGroupContext<\"bold\" | \"italic\">(\"MyToggle\")`。\n */\nexport function useToggleGroupContext<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(component: string): ToggleGroupContextValue<TValue> {\n const ctx = useContext(ToggleGroupContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <ToggleGroup> 内部`);\n }\n return ctx as ToggleGroupContextValue<TValue>;\n}\n\nexport { ToggleGroupContext };\n"],"mappings":";;;AAcA,IAAMA,IAAqBC,EAAuC;AA0ClE,SAAgBC,EAEd,GAAuE;CACvE,IAAMC,UAAiBC,EAAM,aAAa,IAGpCC,KAAW,MACXC,MAAM,KAAA,IAAkB,CAAC,IACtB,MAAM,QAAQA,CAAC,IAAI,CAAC,GAAIA,CAAuB,IAAI,CAACA,CAAW,GAGlE,CAACC,GAAeC,KAAoBC,EACxCJ,EAAQD,EAAM,YAAY,CAC5B,GACM,CAACM,GAAkBC,KAAuBF,EAE9C,GACI,CAACG,GAAWC,KAAgBJ,EAEhC,CAAC,CAAC,GAEEK,UAAqBV,EAAM,UAAU,KAAA,GAErCW,UACJD,EAAa,IAAIT,EAAQD,EAAM,KAAK,IAAIG,EAAc;CAqDxD,OAAO;EACL;EACA;EACA,gBAAgBH,EAAM,aAAa;EACnC,mBAAmBA,EAAM,eAAe;EACxC,iBAAiBA,EAAM,aAAa;EACpC,WAAWA,EAAM;EACjB,eAAeA,EAAM,WAAW;EAChC,eAAeA,EAAM;EACrB,YAAYA,EAAM;EAClB;EACA,YA9DiB,MAAcW,EAAM,CAAC,CAAC,SAAST,CAAC;EA+DjD,aA5DA,GACA,GACA,MACS;GACT,IAAMU,IAAUD,EAAM,GAChBE,IAAUD,EAAQ,SAASE,CAAS,GAGtCC;GACJ,AAKEA,IALEhB,EAAS,IACJc,IACHD,EAAQ,QAAQ,MAAMV,MAAMY,CAAS,IACrC,CAAC,GAAGF,GAASE,CAAS,IAEnBD,IAAU,CAAC,IAAI,CAACC,CAAS;GAKlC,IAAME,IAAUC,EAAyBC,GAAOC,CAAO;GAYvD,AAXIpB,EAAS,IACXC,EAAO,gBACLe,GACAC,CACF,IAEAhB,EAAO,gBACLe,EAAK,IACLC,CACF,GAEE,GAAQ,eAGPN,EAAa,KAAGN,EAAiBW,CAAI;EAC5C;EA0BE;EACA,eAzBoB,OACpBN,GAAc,MAAS,CAAC,GAAGW,GAAMC,CAAK,CAAC,SAC1BZ,GAAc,MAASW,EAAK,QAAQ,MAASE,MAASD,CAAK,CAAC;EAwBzE,gBAAgBb,EAAU;EAC1B,iBAtBsB,MACtBA,EAAU,CAAC,CAAC,MAAM,MAAS,CAACc,EAAK,SAAS,CAAC,CAAC,EAAE,UAAUpB;EAsBxD,WApBgB,MAChBM,EAAU,CAAC,CAAC,MAAM,MAASc,EAAK,UAAUpB,KAAK,CAACoB,EAAK,SAAS,CAAC;CAoBjE;AACF;AASA,SAAgBC,EAEd,GAAoD;CACpD,IAAMC,IAAMC,EAAW7B,CAAkB;CACzC,IAAI,CAAC4B,GACH,MAAU,MAAM,IAAIE,EAAU,yBAAyB;CAEzD,OAAOF;AACT"}
@@ -6,12 +6,18 @@ import { ToggleGroupProps, ToggleGroupValue } from './ToggleGroup.types';
6
6
  * / `data-disabled` / `data-spacing` / `data-variant` / `data-size`),
7
7
  * 并挂载 roving focus 键盘导航。
8
8
  *
9
+ * 单选模式(默认)的 value 是标量,多选模式(`multiple`)才是数组:
10
+ *
9
11
  * @example
10
12
  * ```tsx
11
- * <ToggleGroup variant="outline" defaultValue={["bold"]}>
12
- * <ToggleGroupItem value="bold" aria-label="Toggle bold">
13
- * <Bold />
14
- * </ToggleGroupItem>
13
+ * // 单选
14
+ * <ToggleGroup defaultValue="bold" onValueChange={(v) => ...}>
15
+ * <ToggleGroupItem value="bold">Bold</ToggleGroupItem>
16
+ * </ToggleGroup>
17
+ *
18
+ * // 多选
19
+ * <ToggleGroup multiple value={["bold"]} onValueChange={(v) => ...}>
20
+ * <ToggleGroupItem value="bold">Bold</ToggleGroupItem>
15
21
  * </ToggleGroup>
16
22
  * ```
17
23
  */
@@ -4,17 +4,11 @@ import { ToggleGroupContext as n, createToggleGroupState as r } from "./ToggleGr
4
4
  import { toggleGroupVariants as i } from "./ToggleGroup.styles.js";
5
5
  import { useToggleGroupKeyboard as a } from "./useToggleGroupKeyboard.js";
6
6
  import { createComponent as o, delegateEvents as s, insert as c, mergeProps as l, spread as u, template as d } from "solid-js/web";
7
- import { mergeProps as f, splitProps as p } from "solid-js";
7
+ import { splitProps as f } from "solid-js";
8
8
  //#region src/components/toggle-group/ToggleGroup/ToggleGroup.tsx
9
- var m = /*#__PURE__*/ d("<div role=group data-slot=toggle-group>");
10
- function h(s) {
11
- let d = f({
12
- multiple: !1,
13
- disabled: !1,
14
- orientation: "horizontal",
15
- loopFocus: !0,
16
- spacing: 2
17
- }, s), [h, g] = p(d, [
9
+ var p = /*#__PURE__*/ d("<div role=group data-slot=toggle-group>");
10
+ function m(s) {
11
+ let [d, m] = f(s, [
18
12
  "value",
19
13
  "defaultValue",
20
14
  "onValueChange",
@@ -31,64 +25,64 @@ function h(s) {
31
25
  "dir",
32
26
  "onKeyDown",
33
27
  "children"
34
- ]), _ = r(h), { handleKeyDown: v } = a(_), y = () => h.orientation === "vertical";
28
+ ]), h = r(d), { handleKeyDown: g } = a(h), _ = () => h.orientation() === "vertical";
35
29
  return (() => {
36
- var r = m();
30
+ var r = p();
37
31
  return r.$$keydown = (e) => {
38
- t(h.onKeyDown, e), e.defaultPrevented || v(e);
32
+ t(d.onKeyDown, e), e.defaultPrevented || g(e);
39
33
  }, u(r, l({
40
34
  get "data-variant"() {
41
- return h.variant;
35
+ return h.variant();
42
36
  },
43
37
  get "data-size"() {
44
- return h.size;
38
+ return h.size();
45
39
  },
46
40
  get "data-spacing"() {
47
- return h.spacing;
41
+ return h.spacing();
48
42
  },
49
43
  get "data-orientation"() {
50
- return h.orientation;
44
+ return h.orientation();
51
45
  },
52
46
  get "data-vertical"() {
53
- return y() ? "" : null;
47
+ return _() ? "" : null;
54
48
  },
55
49
  get "data-horizontal"() {
56
- return y() ? null : "";
50
+ return _() ? null : "";
57
51
  },
58
52
  get "data-multiple"() {
59
- return h.multiple ? "" : null;
53
+ return h.multiple() ? "" : null;
60
54
  },
61
55
  get "data-disabled"() {
62
- return h.disabled ? "" : null;
56
+ return h.disabled() ? "" : null;
63
57
  },
64
58
  get "aria-disabled"() {
65
- return h.disabled ? "true" : void 0;
59
+ return h.disabled() ? "true" : void 0;
66
60
  },
67
61
  get dir() {
68
- return h.dir;
62
+ return d.dir;
69
63
  },
70
64
  get style() {
71
65
  return {
72
- "--gap": h.spacing,
73
- ...h.style
66
+ "--gap": h.spacing(),
67
+ ...d.style
74
68
  };
75
69
  },
76
70
  get class() {
77
- return e(i(), h.class);
71
+ return e(i(), d.class);
78
72
  },
79
73
  get classList() {
80
- return h.classList;
74
+ return d.classList;
81
75
  }
82
- }, g), !1, !0), c(r, o(n.Provider, {
83
- value: _,
76
+ }, m), !1, !0), c(r, o(n.Provider, {
77
+ value: h,
84
78
  get children() {
85
- return h.children;
79
+ return d.children;
86
80
  }
87
81
  })), r;
88
82
  })();
89
83
  }
90
84
  s(["keydown"]);
91
85
  //#endregion
92
- export { h as ToggleGroup };
86
+ export { m as ToggleGroup };
93
87
 
94
88
  //# sourceMappingURL=ToggleGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroup.js","names":["mergeProps","splitProps","JSX","clsx","callEventHandler","createToggleGroupState","ToggleGroupContext","toggleGroupVariants","ToggleGroupProps","ToggleGroupValue","useToggleGroupKeyboard","ToggleGroup","props","TValue","Element","merged","multiple","disabled","orientation","const","loopFocus","spacing","local","rest","ctx","handleKeyDown","isVertical","_el$","_tmpl$","$$keydown","e","onKeyDown","defaultPrevented","_$spread","_$mergeProps","data-variant","variant","data-size","size","data-spacing","data-orientation","data-vertical","data-horizontal","data-multiple","data-disabled","aria-disabled","undefined","dir","style","CSSProperties","class","classList","_$insert","_$createComponent","Provider","value","children","_$delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.tsx"],"sourcesContent":["import { mergeProps, splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport {\n createToggleGroupState,\n ToggleGroupContext,\n} from \"./ToggleGroup.context\";\nimport { toggleGroupVariants } from \"./ToggleGroup.styles\";\nimport type { ToggleGroupProps, ToggleGroupValue } from \"./ToggleGroup.types\";\nimport { useToggleGroupKeyboard } from \"./useToggleGroupKeyboard\";\n\n/**\n * ToggleGroup 根组件:渲染 `<div role=\"group\">`,输出样式与语义钩子\n * (`data-orientation` / `data-vertical` / `data-horizontal` / `data-multiple`\n * / `data-disabled` / `data-spacing` / `data-variant` / `data-size`),\n * 并挂载 roving focus 键盘导航。\n *\n * @example\n * ```tsx\n * <ToggleGroup variant=\"outline\" defaultValue={[\"bold\"]}>\n * <ToggleGroupItem value=\"bold\" aria-label=\"Toggle bold\">\n * <Bold />\n * </ToggleGroupItem>\n * </ToggleGroup>\n * ```\n */\nexport function ToggleGroup<TValue extends ToggleGroupValue = ToggleGroupValue>(\n props: ToggleGroupProps<TValue>,\n): JSX.Element {\n const merged = mergeProps(\n {\n multiple: false,\n disabled: false,\n orientation: \"horizontal\" as const,\n loopFocus: true,\n spacing: 2,\n },\n props,\n );\n\n const [local, rest] = splitProps(merged, [\n \"value\",\n \"defaultValue\",\n \"onValueChange\",\n \"multiple\",\n \"disabled\",\n \"orientation\",\n \"loopFocus\",\n \"spacing\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"style\",\n \"dir\",\n \"onKeyDown\",\n \"children\",\n ]);\n\n const ctx = createToggleGroupState<TValue>(local);\n const { handleKeyDown } = useToggleGroupKeyboard(ctx);\n const isVertical = () => local.orientation === \"vertical\";\n\n return (\n <div\n role=\"group\"\n data-slot=\"toggle-group\"\n data-variant={local.variant}\n data-size={local.size}\n data-spacing={local.spacing}\n data-orientation={local.orientation}\n // 现有样式依赖 data-vertical / data-horizontal(与 tabs 根保持一致)\n data-vertical={isVertical() ? \"\" : null}\n data-horizontal={isVertical() ? null : \"\"}\n data-multiple={local.multiple ? \"\" : null}\n data-disabled={local.disabled ? \"\" : null}\n aria-disabled={local.disabled ? \"true\" : undefined}\n dir={local.dir}\n // --gap 作为 spacing 的样式入口,用户 style 可覆盖\n style={{ \"--gap\": local.spacing, ...local.style } as JSX.CSSProperties}\n class={clsx(toggleGroupVariants(), local.class)}\n classList={local.classList}\n onKeyDown={(e) => {\n callEventHandler(local.onKeyDown, e);\n if (!e.defaultPrevented) handleKeyDown(e);\n }}\n {...rest}\n >\n <ToggleGroupContext.Provider value={ctx}>\n {local.children}\n </ToggleGroupContext.Provider>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;AA0BA,SAAgBW,EACdC,GACa;CACb,IAAMG,IAASf,EACb;EACEgB,UAAU;EACVC,UAAU;EACVC,aAAa;EACbE,WAAW;EACXC,SAAS;CACX,GACAT,CACF,GAEM,CAACU,GAAOC,KAAQtB,EAAWc,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAEKS,IAAMnB,EAA+BiB,CAAK,GAC1C,EAAEG,qBAAkBf,EAAuBc,CAAG,GAC9CE,UAAmBJ,EAAMJ,gBAAgB;CAE/C,cAAA;EAAA,IAAAS,IAAAC,EAAA;EA0BqB,OA1BrBD,EAAAE,aAmBgBC,MAAM;GAEhB,AADA1B,EAAiBkB,EAAMS,WAAWD,CAAC,GAC9BA,EAAEE,oBAAkBP,EAAcK,CAAC;EAC1C,GAACG,EAAAN,GAAAO,EAAA;GAAA,IAAA,iBAAA;IAAA,OAlBaZ,EAAMc;GAAO;GAAA,IAAA,cAAA;IAAA,OAChBd,EAAMgB;GAAI;GAAA,IAAA,iBAAA;IAAA,OACPhB,EAAMD;GAAO;GAAA,IAAA,qBAAA;IAAA,OACTC,EAAMJ;GAAW;GAAA,IAAA,kBAAA;IAAA,OAEpBQ,EAAW,IAAI,KAAK;GAAI;GAAA,IAAA,oBAAA;IAAA,OACtBA,EAAW,IAAI,OAAO;GAAE;GAAA,IAAA,kBAAA;IAAA,OAC1BJ,EAAMN,WAAW,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BM,EAAML,WAAW,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BK,EAAML,WAAW,SAAS6B,KAAAA;GAAS;GAAA,IAClDC,MAAG;IAAA,OAAEzB,EAAMyB;GAAG;GAAA,IAEdC,QAAK;IAAA,OAAE;KAAE,SAAS1B,EAAMD;KAAS,GAAGC,EAAM0B;IAAM;GAAsB;GAAA,IAAA,QAAA;IAAA,OAC/D7C,EAAKI,EAAoB,GAAGe,EAAM4B,KAAK;GAAC;GAAA,IAC/CC,YAAS;IAAA,OAAE7B,EAAM6B;GAAS;EAAA,GAKtB5B,CAAI,GAAA,IAAA,EAAA,GAAA6B,EAAAzB,GAAA0B,EAEP/C,EAAmBgD,UAAQ;GAACC,OAAO/B;GAAG,IAAAgC,WAAA;IAAA,OACpClC,EAAMkC;GAAQ;EAAA,CAAA,CAAA,GAAA7B;CAAA,EAAA,CAAA;AAIvB;AAAC8B,EAAA,CAAA,SAAA,CAAA"}
1
+ {"version":3,"file":"ToggleGroup.js","names":["splitProps","JSX","clsx","callEventHandler","createToggleGroupState","ToggleGroupContext","toggleGroupVariants","ToggleGroupProps","ToggleGroupValue","useToggleGroupKeyboard","ToggleGroup","props","TValue","Element","local","rest","ctx","handleKeyDown","isVertical","orientation","_el$","_tmpl$","$$keydown","e","onKeyDown","defaultPrevented","_$spread","_$mergeProps","data-variant","variant","data-size","size","data-spacing","spacing","data-orientation","data-vertical","data-horizontal","data-multiple","multiple","data-disabled","disabled","aria-disabled","undefined","dir","style","CSSProperties","class","classList","_$insert","_$createComponent","Provider","value","children","_$delegateEvents","_$mergeProps","_$createComponent","_$delegateEvents","_tmpl$","ToggleGroup","local","rest","splitProps","props","ctx","createToggleGroupState","useToggleGroupKeyboard","isVertical","_el$","callEventHandler","handleKeyDown","spread","mergeProps","\"class\"","clsx","toggleGroupVariants","insert","createComponent","ToggleGroupContext","delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.tsx"],"sourcesContent":["import { splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport {\n createToggleGroupState,\n ToggleGroupContext,\n} from \"./ToggleGroup.context\";\nimport { toggleGroupVariants } from \"./ToggleGroup.styles\";\nimport type { ToggleGroupProps, ToggleGroupValue } from \"./ToggleGroup.types\";\nimport { useToggleGroupKeyboard } from \"./useToggleGroupKeyboard\";\n\n/**\n * ToggleGroup 根组件:渲染 `<div role=\"group\">`,输出样式与语义钩子\n * (`data-orientation` / `data-vertical` / `data-horizontal` / `data-multiple`\n * / `data-disabled` / `data-spacing` / `data-variant` / `data-size`),\n * 并挂载 roving focus 键盘导航。\n *\n * 单选模式(默认)的 value 是标量,多选模式(`multiple`)才是数组:\n *\n * @example\n * ```tsx\n * // 单选\n * <ToggleGroup defaultValue=\"bold\" onValueChange={(v) => ...}>\n * <ToggleGroupItem value=\"bold\">Bold</ToggleGroupItem>\n * </ToggleGroup>\n *\n * // 多选\n * <ToggleGroup multiple value={[\"bold\"]} onValueChange={(v) => ...}>\n * <ToggleGroupItem value=\"bold\">Bold</ToggleGroupItem>\n * </ToggleGroup>\n * ```\n */\nexport function ToggleGroup<TValue extends ToggleGroupValue = ToggleGroupValue>(\n props: ToggleGroupProps<TValue>,\n): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"value\",\n \"defaultValue\",\n \"onValueChange\",\n \"multiple\",\n \"disabled\",\n \"orientation\",\n \"loopFocus\",\n \"spacing\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"style\",\n \"dir\",\n \"onKeyDown\",\n \"children\",\n ]);\n\n // 默认值与单选/多选的差异统一由状态层处理,渲染用 ctx 里的已解析值\n const ctx = createToggleGroupState<TValue>(local);\n const { handleKeyDown } = useToggleGroupKeyboard(ctx);\n const isVertical = () => ctx.orientation() === \"vertical\";\n\n return (\n <div\n role=\"group\"\n data-slot=\"toggle-group\"\n data-variant={ctx.variant()}\n data-size={ctx.size()}\n data-spacing={ctx.spacing()}\n data-orientation={ctx.orientation()}\n // 拼接态样式依赖 data-vertical / data-horizontal(与 tabs 根保持一致)\n data-vertical={isVertical() ? \"\" : null}\n data-horizontal={isVertical() ? null : \"\"}\n data-multiple={ctx.multiple() ? \"\" : null}\n data-disabled={ctx.disabled() ? \"\" : null}\n aria-disabled={ctx.disabled() ? \"true\" : undefined}\n dir={local.dir}\n // --gap 作为 spacing 的样式入口,用户 style 可覆盖\n style={{ \"--gap\": ctx.spacing(), ...local.style } as JSX.CSSProperties}\n class={clsx(toggleGroupVariants(), local.class)}\n classList={local.classList}\n onKeyDown={(e) => {\n callEventHandler(local.onKeyDown, e);\n if (!e.defaultPrevented) handleKeyDown(e);\n }}\n {...rest}\n >\n <ToggleGroupContext.Provider value={ctx}>\n {local.children}\n </ToggleGroupContext.Provider>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;AAgCA,SAAgBU,EACdC,GACa;CACb,IAAM,CAACG,GAAOC,KAAQf,EAAWW,GAAO;EACtC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAGKK,IAAMZ,EAA+BU,CAAK,GAC1C,EAAEG,qBAAkBR,EAAuBO,CAAG,GAC9CE,UAAmBF,EAAIG,YAAY,MAAM;CAE/C,cAAA;EAAA,IAAAC,IAAAC,EAAA;EA0BqB,OA1BrBD,EAAAE,aAmBgBC,MAAM;GAEhB,AADApB,EAAiBW,EAAMU,WAAWD,CAAC,GAC9BA,EAAEE,oBAAkBR,EAAcM,CAAC;EAC1C,GAACG,EAAAN,GAAAO,EAAA;GAAA,IAAA,iBAAA;IAAA,OAlBaX,EAAIa,QAAQ;GAAC;GAAA,IAAA,cAAA;IAAA,OAChBb,EAAIe,KAAK;GAAC;GAAA,IAAA,iBAAA;IAAA,OACPf,EAAIiB,QAAQ;GAAC;GAAA,IAAA,qBAAA;IAAA,OACTjB,EAAIG,YAAY;GAAC;GAAA,IAAA,kBAAA;IAAA,OAEpBD,EAAW,IAAI,KAAK;GAAI;GAAA,IAAA,oBAAA;IAAA,OACtBA,EAAW,IAAI,OAAO;GAAE;GAAA,IAAA,kBAAA;IAAA,OAC1BF,EAAIsB,SAAS,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BtB,EAAIwB,SAAS,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BxB,EAAIwB,SAAS,IAAI,SAASE,KAAAA;GAAS;GAAA,IAClDC,MAAG;IAAA,OAAE7B,EAAM6B;GAAG;GAAA,IAEdC,QAAK;IAAA,OAAE;KAAE,SAAS5B,EAAIiB,QAAQ;KAAG,GAAGnB,EAAM8B;IAAM;GAAsB;GAAA,IAAA4B,QAAA;IAAA,OAC/DtE,EAAKI,EAAoB,GAAGQ,EAAMgC,KAAK;GAAC;GAAA,IAC/CC,YAAS;IAAA,OAAEjC,EAAMiC;GAAS;EAAA,GAKtBhC,CAAI,GAAA,IAAA,EAAA,GAAAiC,EAAA5B,GAAA6B,EAEP5C,EAAmB6C,UAAQ;GAACC,OAAOnC;GAAG,IAAAoC,WAAA;IAAA,OACpCtC,EAAMsC;GAAQ;EAAA,CAAA,CAAA,GAAAhC;CAAA,EAAA,CAAA;AAIvB;AAACiC,EAAA,CAAA,SAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroup.styles.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * ToggleGroup 根容器样式。\n *\n * 根元素同时输出 `data-vertical` / `data-horizontal`(见 ToggleGroup.tsx),\n * 使 `data-vertical:*`、`group-data-vertical/toggle-group:*` 这类选择器生效 ——\n * item 的“拼接态”样式依赖后两者。\n */\nexport const toggleGroupVariants = cva(\n \"group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch\",\n);\n"],"mappings":";;AASA,IAAa,IAAsB,EACjC,mMACF"}
1
+ {"version":3,"file":"ToggleGroup.styles.js","names":["toggleGroupVariants","cva"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * ToggleGroup 根容器样式。\n *\n * 根元素同时输出 `data-vertical` / `data-horizontal`(见 ToggleGroup.tsx),\n * 使 `data-vertical:*`、`group-data-vertical/toggle-group:*` 这类选择器生效 ——\n * item 的“拼接态”样式依赖后两者。\n */\nexport const toggleGroupVariants = cva(\n \"group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch\",\n);\n"],"mappings":";;AASA,IAAaA,IAAsBC,EACjC,mMACF"}
@@ -28,15 +28,8 @@ export interface ToggleGroupChangeEventDetails {
28
28
  readonly isPropagationAllowed: boolean;
29
29
  trigger: Element | undefined;
30
30
  }
31
- interface BaseToggleGroupProps<TValue extends ToggleGroupValue> extends BaseProps {
32
- /** 受控选中值(数组);不传则内部自管理 */
33
- value?: readonly TValue[];
34
- /** 非受控模式下的初始选中值 */
35
- defaultValue?: readonly TValue[];
36
- /** 选中值变化回调(受控与非受控都会触发) */
37
- onValueChange?: (value: TValue[], eventDetails: ToggleGroupChangeEventDetails) => void;
38
- /** 是否允许同时选中多个,默认 false;单选时再次点击会取消选中(对齐 base-ui) */
39
- multiple?: boolean;
31
+ /** 单选与多选共用的 props */
32
+ interface ToggleGroupCommonProps extends BaseProps {
40
33
  /** 整组禁用,item 会继承该状态 */
41
34
  disabled?: boolean;
42
35
  /** 布局方向,默认 "horizontal";同时决定方向键映射与排列方向 */
@@ -53,14 +46,48 @@ interface BaseToggleGroupProps<TValue extends ToggleGroupValue> extends BaseProp
53
46
  /** 组级 size,item 未单独指定时继承 */
54
47
  size?: ToggleGroupSize;
55
48
  }
49
+ /**
50
+ * 单选模式(默认):`value` / `defaultValue` / `onValueChange` 都是**标量**。
51
+ *
52
+ * 这是本项目对 base-ui 的一处有意偏离 —— base-ui 单选时也要求传数组,用起来别扭。
53
+ * 取消选中时回调收到 `undefined`。
54
+ *
55
+ * 注意:`value === undefined` 视为非受控,所以受控的单选组请让信号有确定值
56
+ * (信号类型建议 `TValue | undefined`,并在传参前用 `??` 兜底,或改用多选数组模式)。
57
+ */
58
+ export interface ToggleGroupSingleProps<TValue extends ToggleGroupValue = ToggleGroupValue> extends ToggleGroupCommonProps {
59
+ /** 单选模式标记(默认),不需要显式传 */
60
+ multiple?: false;
61
+ /** 受控选中值;不传则内部自管理 */
62
+ value?: TValue;
63
+ /** 非受控模式下的初始选中值 */
64
+ defaultValue?: TValue;
65
+ /** 选中值变化回调(受控与非受控都会触发) */
66
+ onValueChange?: (value: TValue | undefined, eventDetails: ToggleGroupChangeEventDetails) => void;
67
+ }
68
+ /** 多选模式(`multiple`):值是数组,未选中时为空数组 */
69
+ export interface ToggleGroupMultipleProps<TValue extends ToggleGroupValue = ToggleGroupValue> extends ToggleGroupCommonProps {
70
+ /** 多选模式标记 */
71
+ multiple: true;
72
+ /** 受控选中值;不传则内部自管理 */
73
+ value?: readonly TValue[];
74
+ /** 非受控模式下的初始选中值 */
75
+ defaultValue?: readonly TValue[];
76
+ /** 选中值变化回调(受控与非受控都会触发) */
77
+ onValueChange?: (value: TValue[], eventDetails: ToggleGroupChangeEventDetails) => void;
78
+ }
56
79
  /**
57
80
  * 值类型由泛型参数决定:
58
81
  * - 不传时是宽类型 `ToggleGroupValue`(string | number)
59
82
  * - `defaultValue` / `value` / `onValueChange` 中任意一处给出具体类型即可推导,
60
- * 例如 `defaultValue={[1]}` 会推导出 `number[]`
83
+ * 例如 `defaultValue={1}` 会推导出 `number`
61
84
  * - 也可显式指定:`<ToggleGroup<"bold" | "italic"> />`
85
+ *
86
+ * `multiple` 决定值的形状:单选是标量,多选是数组(传错会被类型拦住)。
62
87
  */
63
- export type ToggleGroupProps<TValue extends ToggleGroupValue = ToggleGroupValue> = PolymorphicProps<"div", BaseToggleGroupProps<TValue>, false>;
88
+ export type ToggleGroupProps<TValue extends ToggleGroupValue = ToggleGroupValue> = PolymorphicProps<"div", ToggleGroupSingleProps<TValue> | ToggleGroupMultipleProps<TValue>, false>;
89
+ /** 两种模式下 onValueChange 的联合类型(供内部状态实现使用) */
90
+ export type ToggleGroupChangeHandler<TValue extends ToggleGroupValue> = NonNullable<ToggleGroupSingleProps<TValue>["onValueChange"]> | NonNullable<ToggleGroupMultipleProps<TValue>["onValueChange"]>;
64
91
  /** 已注册的 item,供 roving focus 与键盘导航使用 */
65
92
  export interface ToggleGroupItemEntry<TValue extends ToggleGroupValue = ToggleGroupValue> {
66
93
  value: TValue;
@@ -69,7 +96,10 @@ export interface ToggleGroupItemEntry<TValue extends ToggleGroupValue = ToggleGr
69
96
  disabled: () => boolean;
70
97
  }
71
98
  export interface ToggleGroupContextValue<TValue extends ToggleGroupValue = ToggleGroupValue> {
72
- /** 当前选中值(受控优先,否则内部状态) */
99
+ /**
100
+ * 当前选中值,**已规范化成数组**:单选模式是 0 或 1 个元素。
101
+ * 判断某个 item 是否选中请用 `isPressed`。
102
+ */
73
103
  value: Accessor<readonly TValue[]>;
74
104
  multiple: Accessor<boolean>;
75
105
  disabled: Accessor<boolean>;
@@ -89,7 +119,7 @@ export interface ToggleGroupContextValue<TValue extends ToggleGroupValue = Toggl
89
119
  */
90
120
  /** 该 value 当前是否处于按下状态 */
91
121
  isPressed(value: TValue): boolean;
92
- /** 切换某个 item 的按下状态,并派发 onValueChange(value, details) */
122
+ /** 切换某个 item 的按下状态,并按模式派发 onValueChange */
93
123
  toggleItem(value: TValue, event: Event, trigger?: Element): void;
94
124
  setHighlightedValue(value: TValue): void;
95
125
  /** 按挂载顺序注册 item,返回注销函数 */
@@ -1 +1 @@
1
- {"version":3,"file":"create-change-event-details.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/create-change-event-details.ts"],"sourcesContent":["import type { ToggleGroupChangeEventDetails } from \"./ToggleGroup.types\";\n\n/**\n * 构造 onValueChange 的事件详情(对齐 base-ui 的 `ChangeEventDetails`)。\n *\n * `isCanceled` / `isPropagationAllowed` 用 getter 暴露:回调内部可以即时读到\n * `cancel()` / `allowPropagation()` 之后的最新值,而不是创建时的快照。\n */\nexport function createChangeEventDetails(\n event: Event,\n trigger?: Element,\n): ToggleGroupChangeEventDetails {\n let canceled = false;\n let propagationAllowed = false;\n\n return {\n reason: \"none\",\n event,\n trigger,\n cancel: () => {\n canceled = true;\n },\n allowPropagation: () => {\n propagationAllowed = true;\n },\n get isCanceled() {\n return canceled;\n },\n get isPropagationAllowed() {\n return propagationAllowed;\n },\n };\n}\n"],"mappings":";AAQA,SAAgB,EACd,GACA,GAC+B;CAC/B,IAAI,IAAW,IACX,IAAqB;CAEzB,OAAO;EACL,QAAQ;EACR;EACA;EACA,cAAc;GACZ,IAAW;EACb;EACA,wBAAwB;GACtB,IAAqB;EACvB;EACA,IAAI,aAAa;GACf,OAAO;EACT;EACA,IAAI,uBAAuB;GACzB,OAAO;EACT;CACF;AACF"}
1
+ {"version":3,"file":"create-change-event-details.js","names":["createChangeEventDetails","canceled","propagationAllowed"],"sources":["../../../../src/components/toggle-group/ToggleGroup/create-change-event-details.ts"],"sourcesContent":["import type { ToggleGroupChangeEventDetails } from \"./ToggleGroup.types\";\n\n/**\n * 构造 onValueChange 的事件详情(对齐 base-ui 的 `ChangeEventDetails`)。\n *\n * `isCanceled` / `isPropagationAllowed` 用 getter 暴露:回调内部可以即时读到\n * `cancel()` / `allowPropagation()` 之后的最新值,而不是创建时的快照。\n */\nexport function createChangeEventDetails(\n event: Event,\n trigger?: Element,\n): ToggleGroupChangeEventDetails {\n let canceled = false;\n let propagationAllowed = false;\n\n return {\n reason: \"none\",\n event,\n trigger,\n cancel: () => {\n canceled = true;\n },\n allowPropagation: () => {\n propagationAllowed = true;\n },\n get isCanceled() {\n return canceled;\n },\n get isPropagationAllowed() {\n return propagationAllowed;\n },\n };\n}\n"],"mappings":";AAQA,SAAgBA,EACd,GACA,GAC+B;CAC/B,IAAIC,IAAW,IACXC,IAAqB;CAEzB,OAAO;EACL,QAAQ;EACR;EACA;EACA,cAAc;GACZ,IAAW;EACb;EACA,wBAAwB;GACtB,IAAqB;EACvB;EACA,IAAI,aAAa;GACf,OAAOD;EACT;EACA,IAAI,uBAAuB;GACzB,OAAOC;EACT;CACF;AACF"}
@@ -1,3 +1,3 @@
1
1
  export { ToggleGroup } from './ToggleGroup';
2
2
  export { ToggleGroupContext, useToggleGroupContext, } from './ToggleGroup.context';
3
- export type { ToggleGroupProps, ToggleGroupValue, ToggleGroupContextValue, ToggleGroupItemEntry, ToggleGroupOrientation, ToggleGroupVariant, ToggleGroupSize, ToggleGroupChangeEventDetails, ToggleGroupChangeEventReason, } from './ToggleGroup.types';
3
+ export type { ToggleGroupProps, ToggleGroupSingleProps, ToggleGroupMultipleProps, ToggleGroupValue, ToggleGroupContextValue, ToggleGroupItemEntry, ToggleGroupOrientation, ToggleGroupVariant, ToggleGroupSize, ToggleGroupChangeEventDetails, ToggleGroupChangeEventReason, } from './ToggleGroup.types';
@@ -1 +1 @@
1
- {"version":3,"file":"useToggleGroupKeyboard.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.ts"],"sourcesContent":["import type {\n ToggleGroupContextValue,\n ToggleGroupValue,\n} from \"./ToggleGroup.types\";\n\n/** 键盘导航按键:方向键 + Home/End(对齐 base-ui CompositeRoot 的 enableHomeAndEndKeys) */\nconst NAV_KEYS = new Set([\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"Home\",\n \"End\",\n]);\n\n/**\n * ToggleGroup 的 roving focus 键盘导航(纯逻辑,可独立单测)。\n *\n * 方向映射:\n * - horizontal + ltr: ArrowRight → next, ArrowLeft → prev\n * - horizontal + rtl: 左右反转\n * - vertical: ArrowDown → next, ArrowUp → prev\n * - Home → 第一个,End → 最后一个\n * - loopFocus=true 环绕,false 边界停止;跳过 disabled 的 item\n *\n * 只有焦点已经在某个 item 上时才接管按键,避免影响外部其它元素;\n * 移动焦点后由 item 的 onFocus 更新高亮。\n */\nexport function useToggleGroupKeyboard<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(ctx: ToggleGroupContextValue<TValue>) {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (ctx.disabled()) return;\n if (!NAV_KEYS.has(e.key)) return;\n\n const activeEl = document.activeElement as HTMLElement | null;\n const items = ctx.getItems().filter((item) => !item.disabled());\n if (items.length === 0) return;\n\n const currentIndex = items.findIndex((item) => item.element === activeEl);\n if (currentIndex === -1) return;\n\n const isVertical = ctx.orientation() === \"vertical\";\n // dir 未指定/auto 时,按根元素的实际书写方向判断(兼容祖先节点上的 dir)\n const dir = ctx.dir();\n const isRTL =\n dir === \"rtl\" ||\n (dir !== \"ltr\" &&\n typeof document !== \"undefined\" &&\n getComputedStyle(e.currentTarget as Element).direction === \"rtl\");\n\n let nextIndex: number | undefined;\n switch (e.key) {\n case \"Home\":\n nextIndex = 0;\n break;\n case \"End\":\n nextIndex = items.length - 1;\n break;\n case \"ArrowLeft\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? 1 : -1);\n break;\n case \"ArrowRight\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? -1 : 1);\n break;\n case \"ArrowUp\":\n if (!isVertical) return;\n nextIndex = currentIndex - 1;\n break;\n case \"ArrowDown\":\n if (!isVertical) return;\n nextIndex = currentIndex + 1;\n break;\n }\n\n if (nextIndex === undefined) return;\n\n // 方向键与当前布局匹配,接管默认滚动行为\n e.preventDefault();\n\n if (ctx.loopFocus()) {\n nextIndex = (nextIndex + items.length) % items.length;\n } else {\n nextIndex = Math.min(items.length - 1, Math.max(0, nextIndex));\n }\n\n items[nextIndex].element.focus();\n ctx.setHighlightedValue(items[nextIndex].value);\n };\n\n return { handleKeyDown };\n}\n"],"mappings":";AAMA,IAAM,oBAAW,IAAI,IAAI;CACvB;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AAeD,SAAgB,EAEd,GAAsC;CA8DtC,OAAO,EAAE,gBA7Dc,MAAqB;EAE1C,IADI,EAAI,SAAS,KACb,CAAC,EAAS,IAAI,EAAE,GAAG,GAAG;EAE1B,IAAM,IAAW,SAAS,eACpB,IAAQ,EAAI,SAAS,CAAC,CAAC,QAAQ,MAAS,CAAC,EAAK,SAAS,CAAC;EAC9D,IAAI,EAAM,WAAW,GAAG;EAExB,IAAM,IAAe,EAAM,WAAW,MAAS,EAAK,YAAY,CAAQ;EACxE,IAAI,MAAiB,IAAI;EAEzB,IAAM,IAAa,EAAI,YAAY,MAAM,YAEnC,IAAM,EAAI,IAAI,GACd,IACJ,MAAQ,SACP,MAAQ,SACP,OAAO,WAAa,OACpB,iBAAiB,EAAE,aAAwB,CAAC,CAAC,cAAc,OAE3D;EACJ,QAAQ,EAAE,KAAV;GACE,KAAK;IACH,IAAY;IACZ;GACF,KAAK;IACH,IAAY,EAAM,SAAS;IAC3B;GACF,KAAK;IACH,IAAI,GAAY;IAChB,IAAY,KAAgB,IAAQ,IAAI;IACxC;GACF,KAAK;IACH,IAAI,GAAY;IAChB,IAAY,KAAgB,IAAQ,KAAK;IACzC;GACF,KAAK;IACH,IAAI,CAAC,GAAY;IACjB,IAAY,IAAe;IAC3B;GACF,KAAK;IACH,IAAI,CAAC,GAAY;IACjB,IAAY,IAAe;EAE/B;EAEI,MAAc,KAAA,MAGlB,EAAE,eAAe,GAEjB,AAGE,IAHE,EAAI,UAAU,KACH,IAAY,EAAM,UAAU,EAAM,SAEnC,KAAK,IAAI,EAAM,SAAS,GAAG,KAAK,IAAI,GAAG,CAAS,CAAC,GAG/D,EAAM,EAAU,CAAC,QAAQ,MAAM,GAC/B,EAAI,oBAAoB,EAAM,EAAU,CAAC,KAAK;CAChD,EAEuB;AACzB"}
1
+ {"version":3,"file":"useToggleGroupKeyboard.js","names":["NAV_KEYS","useToggleGroupKeyboard","ctx","e","activeEl","items","item","currentIndex","isVertical","dir","isRTL","nextIndex"],"sources":["../../../../src/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.ts"],"sourcesContent":["import type {\n ToggleGroupContextValue,\n ToggleGroupValue,\n} from \"./ToggleGroup.types\";\n\n/** 键盘导航按键:方向键 + Home/End(对齐 base-ui CompositeRoot 的 enableHomeAndEndKeys) */\nconst NAV_KEYS = new Set([\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"Home\",\n \"End\",\n]);\n\n/**\n * ToggleGroup 的 roving focus 键盘导航(纯逻辑,可独立单测)。\n *\n * 方向映射:\n * - horizontal + ltr: ArrowRight → next, ArrowLeft → prev\n * - horizontal + rtl: 左右反转\n * - vertical: ArrowDown → next, ArrowUp → prev\n * - Home → 第一个,End → 最后一个\n * - loopFocus=true 环绕,false 边界停止;跳过 disabled 的 item\n *\n * 只有焦点已经在某个 item 上时才接管按键,避免影响外部其它元素;\n * 移动焦点后由 item 的 onFocus 更新高亮。\n */\nexport function useToggleGroupKeyboard<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(ctx: ToggleGroupContextValue<TValue>) {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (ctx.disabled()) return;\n if (!NAV_KEYS.has(e.key)) return;\n\n const activeEl = document.activeElement as HTMLElement | null;\n const items = ctx.getItems().filter((item) => !item.disabled());\n if (items.length === 0) return;\n\n const currentIndex = items.findIndex((item) => item.element === activeEl);\n if (currentIndex === -1) return;\n\n const isVertical = ctx.orientation() === \"vertical\";\n // dir 未指定/auto 时,按根元素的实际书写方向判断(兼容祖先节点上的 dir)\n const dir = ctx.dir();\n const isRTL =\n dir === \"rtl\" ||\n (dir !== \"ltr\" &&\n typeof document !== \"undefined\" &&\n getComputedStyle(e.currentTarget as Element).direction === \"rtl\");\n\n let nextIndex: number | undefined;\n switch (e.key) {\n case \"Home\":\n nextIndex = 0;\n break;\n case \"End\":\n nextIndex = items.length - 1;\n break;\n case \"ArrowLeft\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? 1 : -1);\n break;\n case \"ArrowRight\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? -1 : 1);\n break;\n case \"ArrowUp\":\n if (!isVertical) return;\n nextIndex = currentIndex - 1;\n break;\n case \"ArrowDown\":\n if (!isVertical) return;\n nextIndex = currentIndex + 1;\n break;\n }\n\n if (nextIndex === undefined) return;\n\n // 方向键与当前布局匹配,接管默认滚动行为\n e.preventDefault();\n\n if (ctx.loopFocus()) {\n nextIndex = (nextIndex + items.length) % items.length;\n } else {\n nextIndex = Math.min(items.length - 1, Math.max(0, nextIndex));\n }\n\n items[nextIndex].element.focus();\n ctx.setHighlightedValue(items[nextIndex].value);\n };\n\n return { handleKeyDown };\n}\n"],"mappings":";AAMA,IAAMA,oBAAW,IAAI,IAAI;CACvB;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AAeD,SAAgBC,EAEd,GAAsC;CA8DtC,OAAO,EAAE,gBA7Dc,MAAqB;EAE1C,IADIC,EAAI,SAAS,KACb,CAACF,EAAS,IAAIG,EAAE,GAAG,GAAG;EAE1B,IAAMC,IAAW,SAAS,eACpBC,IAAQH,EAAI,SAAS,CAAC,CAAC,QAAQ,MAAS,CAACI,EAAK,SAAS,CAAC;EAC9D,IAAID,EAAM,WAAW,GAAG;EAExB,IAAME,IAAeF,EAAM,WAAW,MAASC,EAAK,YAAYF,CAAQ;EACxE,IAAIG,MAAiB,IAAI;EAEzB,IAAMC,IAAaN,EAAI,YAAY,MAAM,YAEnCO,IAAMP,EAAI,IAAI,GACdQ,IACJD,MAAQ,SACPA,MAAQ,SACP,OAAO,WAAa,OACpB,iBAAiBN,EAAE,aAAwB,CAAC,CAAC,cAAc,OAE3DQ;EACJ,QAAQR,EAAE,KAAV;GACE,KAAK;IACH,IAAY;IACZ;GACF,KAAK;IACH,IAAYE,EAAM,SAAS;IAC3B;GACF,KAAK;IACH,IAAIG,GAAY;IAChB,IAAYD,KAAgBG,IAAQ,IAAI;IACxC;GACF,KAAK;IACH,IAAIF,GAAY;IAChB,IAAYD,KAAgBG,IAAQ,KAAK;IACzC;GACF,KAAK;IACH,IAAI,CAACF,GAAY;IACjB,IAAYD,IAAe;IAC3B;GACF,KAAK;IACH,IAAI,CAACC,GAAY;IACjB,IAAYD,IAAe;EAE/B;EAEA,AAAII,MAAc,KAAA,MAGlBR,EAAE,eAAe,GAEjB,AAGEQ,IAHET,EAAI,UAAU,KACHS,IAAYN,EAAM,UAAUA,EAAM,SAEnC,KAAK,IAAIA,EAAM,SAAS,GAAG,KAAK,IAAI,GAAGM,CAAS,CAAC,GAG/DN,EAAMM,EAAU,CAAC,QAAQ,MAAM,GAC/BT,EAAI,oBAAoBG,EAAMM,EAAU,CAAC,KAAK;CAChD,EAEuB;AACzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroupItem.js","names":["mergeProps","onCleanup","onMount","splitProps","JSX","clsx","toggleVariants","callEventHandler","useToggleGroupContext","ToggleGroupValue","toggleGroupItemVariants","ToggleGroupItemProps","ToggleGroupItem","props","TValue","Element","ctx","merged","type","const","local","rest","elementRef","HTMLButtonElement","variant","size","pressed","isPressed","value","disabled","tabIndex","highlighted","highlightedValue","isUsable","undefined","isFirstEnabled","registerItem","element","_el$","_tmpl$","addEventListener","e","setHighlightedValue","onFocus","$$click","onClick","defaultPrevented","toggleItem","currentTarget","_$use","el","_$spread","_$mergeProps","tabindex","data-variant","data-size","data-spacing","spacing","data-pressed","data-disabled","data-state","aria-pressed","class","classList","_$insert","children","_$delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroupItem/ToggleGroupItem.tsx"],"sourcesContent":["import { mergeProps, onCleanup, onMount, splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"~/components/toggle/Toggle/Toggle.styles\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport { useToggleGroupContext } from \"../ToggleGroup/ToggleGroup.context\";\nimport type { ToggleGroupValue } from \"../ToggleGroup/ToggleGroup.types\";\nimport { toggleGroupItemVariants } from \"./ToggleGroupItem.styles\";\nimport type { ToggleGroupItemProps } from \"./ToggleGroupItem.types\";\n\n/**\n * ToggleGroupItem:ToggleGroup 内的两态按钮。\n *\n * - 选中值由 ToggleGroup 统一持有,点击通过 `ctx.toggleItem` 触发变更\n * - disabled 继承整组状态,可在 item 上单独禁用\n * - roving tabindex:整组只有一个 tab 停靠点,方向键在同组内移动焦点\n */\nexport function ToggleGroupItem<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupItemProps<TValue>): JSX.Element {\n // context 用宽值类型读取:item 无法从父级推导 group 的值类型,\n // 自己的 TValue 始终可以传给宽类型参数\n const ctx = useToggleGroupContext(\"ToggleGroupItem\");\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"value\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"disabled\",\n \"type\",\n \"onClick\",\n \"onFocus\",\n \"children\",\n ]);\n\n let elementRef: HTMLButtonElement | undefined;\n\n // 组级未显式指定 variant/size 时,item 可单独覆盖\n const variant = () => ctx.variant() ?? local.variant ?? \"default\";\n const size = () => ctx.size() ?? local.size ?? \"default\";\n const pressed = () => ctx.isPressed(local.value);\n const disabled = () => ctx.disabled() || !!local.disabled;\n\n // roving tabindex:高亮 item 持 0;高亮缺失或指向不可用 item(disabled/卸载)时,\n // 首个可用 item 持 0 作为键盘起点,避免整组键盘不可达\n const tabIndex = () => {\n if (disabled()) return -1;\n const highlighted = ctx.highlightedValue();\n if (highlighted === local.value && ctx.isUsable(local.value)) return 0;\n if (\n (highlighted === undefined || !ctx.isUsable(highlighted)) &&\n ctx.isFirstEnabled(local.value)\n ) {\n return 0;\n }\n return -1;\n };\n\n onMount(() => {\n onCleanup(\n ctx.registerItem({\n value: local.value,\n disabled,\n element: elementRef!,\n }),\n );\n });\n\n return (\n <button\n ref={(el) => {\n elementRef = el;\n }}\n type={local.type}\n disabled={disabled()}\n tabindex={tabIndex()}\n data-slot=\"toggle-group-item\"\n data-variant={variant()}\n data-size={size()}\n data-spacing={ctx.spacing()}\n data-pressed={pressed() ? \"\" : null}\n data-disabled={disabled() ? \"\" : null}\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({ variant: variant(), size: size() }),\n toggleGroupItemVariants(),\n local.class,\n )}\n classList={local.classList}\n onClick={(e) => {\n // 用户回调优先,可用 preventDefault() 阻止本次选中\n callEventHandler(local.onClick, e);\n if (!e.defaultPrevented && !disabled()) {\n ctx.toggleItem(local.value, e, e.currentTarget);\n }\n }}\n onFocus={(e) => {\n // 聚焦更新高亮(roving focus 起点)\n if (!disabled()) ctx.setHighlightedValue(local.value);\n callEventHandler(local.onFocus, e);\n }}\n {...rest}\n >\n {local.children}\n </button>\n );\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgBY,EAEdC,GAAkD;CAGlD,IAAMG,IAAMR,EAAsB,iBAAiB,GAC7CS,IAASjB,EAAW,EAAEkB,MAAM,SAAkB,GAAGL,CAAK,GAEtD,CAACO,GAAOC,KAAQlB,EAAWc,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAEGK,GAGEE,UAAgBR,EAAIQ,QAAQ,KAAKJ,EAAMI,WAAW,WAClDC,UAAaT,EAAIS,KAAK,KAAKL,EAAMK,QAAQ,WACzCC,UAAgBV,EAAIW,UAAUP,EAAMQ,KAAK,GACzCC,UAAiBb,EAAIa,SAAS,KAAK,CAAC,CAACT,EAAMS,UAI3CC,UAAiB;EACrB,IAAID,EAAS,GAAG,OAAO;EACvB,IAAME,IAAcf,EAAIgB,iBAAiB;EAQzC,OAPID,MAAgBX,EAAMQ,SAASZ,EAAIiB,SAASb,EAAMQ,KAAK,MAExDG,MAAgBG,KAAAA,KAAa,CAAClB,EAAIiB,SAASF,CAAW,MACvDf,EAAImB,eAAef,EAAMQ,KAAK,IAEvB,IAEF;CACT;CAYA,OAVA1B,QAAc;EACZD,EACEe,EAAIoB,aAAa;GACfR,OAAOR,EAAMQ;GACbC;GACAQ,SAASf;EACX,CAAC,CACH;CACF,CAAC,UAED;EAAA,IAAAgB,IAAAC,EAAA;EAoCmB,OApCnBD,EAAAE,iBAAA,UA6BcC,MAAM;GAGdlC,AADKsB,EAAS,KAAGb,EAAI0B,oBAAoBtB,EAAMQ,KAAK,GACpDrB,EAAiBa,EAAMuB,SAASF,CAAC;EACnC,CAAC,GAAAH,EAAAM,WAXSH,MAAM;GAGd,AADAlC,EAAiBa,EAAMyB,SAASJ,CAAC,GAC7B,CAACA,EAAEK,oBAAoB,CAACjB,EAAS,KACnCb,EAAI+B,WAAW3B,EAAMQ,OAAOa,GAAGA,EAAEO,aAAa;EAElD,GAACC,GA1BKC,MAAO;GACX5B,IAAa4B;EACf,GAACZ,CAAA,GAAAa,EAAAb,GAAAc,EAAA;GAAA,IACDlC,OAAI;IAAA,OAAEE,EAAMF;GAAI;GAAA,IAChBW,WAAQ;IAAA,OAAEA,EAAS;GAAC;GAAA,IACpBwB,WAAQ;IAAA,OAAEvB,EAAS;GAAC;GAAA,IAAA,iBAAA;IAAA,OAENN,EAAQ;GAAC;GAAA,IAAA,cAAA;IAAA,OACZC,EAAK;GAAC;GAAA,IAAA,iBAAA;IAAA,OACHT,EAAIyC,QAAQ;GAAC;GAAA,IAAA,iBAAA;IAAA,OACb/B,EAAQ,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OACpBG,EAAS,IAAI,KAAK;GAAI;GAAA,IAAA,eAAA;IAAA,OACzBH,EAAQ,IAAI,OAAO;GAAK;GAAA,IAAA,iBAAA;IAAA,OACtBA,EAAQ;GAAC;GAAA,IAAA,QAAA;IAAA,OAChBrB,EACLC,EAAe;KAAEkB,SAASA,EAAQ;KAAGC,MAAMA,EAAK;IAAE,CAAC,GACnDf,EAAwB,GACxBU,EAAM0C,KACR;GAAC;GAAA,IACDC,YAAS;IAAA,OAAE3C,EAAM2C;GAAS;EAAA,GAatB1C,CAAI,GAAA,IAAA,EAAA,GAAA2C,EAAA1B,SAEPlB,EAAM6C,QAAQ,GAAA3B;CAAA,EAAA,CAAA;AAGrB;AAAC4B,EAAA,CAAA,OAAA,CAAA"}
1
+ {"version":3,"file":"ToggleGroupItem.js","names":["mergeProps","onCleanup","onMount","splitProps","JSX","clsx","toggleVariants","callEventHandler","useToggleGroupContext","ToggleGroupValue","toggleGroupItemVariants","ToggleGroupItemProps","ToggleGroupItem","props","TValue","Element","ctx","merged","type","const","local","rest","elementRef","HTMLButtonElement","variant","size","pressed","isPressed","value","disabled","tabIndex","highlighted","highlightedValue","isUsable","undefined","isFirstEnabled","registerItem","element","_el$","_tmpl$","addEventListener","e","setHighlightedValue","onFocus","$$click","onClick","defaultPrevented","toggleItem","currentTarget","_$use","el","_$spread","_$mergeProps","tabindex","data-variant","data-size","data-spacing","spacing","data-pressed","data-disabled","data-state","aria-pressed","class","classList","_$insert","children","_$delegateEvents","mergeProps","_$mergeProps","_$delegateEvents","mergeProps$1","_tmpl$","ToggleGroupItem","ctx","useToggleGroupContext","merged","props","local","rest","splitProps","elementRef","variant","size","pressed","disabled","tabIndex","highlighted","onMount","_el$","callEventHandler","use","el","spread","mergeProps","\"class\"","clsx","toggleVariants","toggleGroupItemVariants","insert","delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroupItem/ToggleGroupItem.tsx"],"sourcesContent":["import { mergeProps, onCleanup, onMount, splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"~/components/toggle/Toggle/Toggle.styles\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport { useToggleGroupContext } from \"../ToggleGroup/ToggleGroup.context\";\nimport type { ToggleGroupValue } from \"../ToggleGroup/ToggleGroup.types\";\nimport { toggleGroupItemVariants } from \"./ToggleGroupItem.styles\";\nimport type { ToggleGroupItemProps } from \"./ToggleGroupItem.types\";\n\n/**\n * ToggleGroupItem:ToggleGroup 内的两态按钮。\n *\n * - 选中值由 ToggleGroup 统一持有,点击通过 `ctx.toggleItem` 触发变更\n * - disabled 继承整组状态,可在 item 上单独禁用\n * - roving tabindex:整组只有一个 tab 停靠点,方向键在同组内移动焦点\n */\nexport function ToggleGroupItem<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupItemProps<TValue>): JSX.Element {\n // context 用宽值类型读取:item 无法从父级推导 group 的值类型,\n // 自己的 TValue 始终可以传给宽类型参数\n const ctx = useToggleGroupContext(\"ToggleGroupItem\");\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"value\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"disabled\",\n \"type\",\n \"onClick\",\n \"onFocus\",\n \"children\",\n ]);\n\n let elementRef: HTMLButtonElement | undefined;\n\n // 组级未显式指定 variant/size 时,item 可单独覆盖\n const variant = () => ctx.variant() ?? local.variant ?? \"default\";\n const size = () => ctx.size() ?? local.size ?? \"default\";\n const pressed = () => ctx.isPressed(local.value);\n const disabled = () => ctx.disabled() || !!local.disabled;\n\n // roving tabindex:高亮 item 持 0;高亮缺失或指向不可用 item(disabled/卸载)时,\n // 首个可用 item 持 0 作为键盘起点,避免整组键盘不可达\n const tabIndex = () => {\n if (disabled()) return -1;\n const highlighted = ctx.highlightedValue();\n if (highlighted === local.value && ctx.isUsable(local.value)) return 0;\n if (\n (highlighted === undefined || !ctx.isUsable(highlighted)) &&\n ctx.isFirstEnabled(local.value)\n ) {\n return 0;\n }\n return -1;\n };\n\n onMount(() => {\n onCleanup(\n ctx.registerItem({\n value: local.value,\n disabled,\n element: elementRef!,\n }),\n );\n });\n\n return (\n <button\n ref={(el) => {\n elementRef = el;\n }}\n type={local.type}\n disabled={disabled()}\n tabindex={tabIndex()}\n data-slot=\"toggle-group-item\"\n data-variant={variant()}\n data-size={size()}\n data-spacing={ctx.spacing()}\n data-pressed={pressed() ? \"\" : null}\n data-disabled={disabled() ? \"\" : null}\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({ variant: variant(), size: size() }),\n toggleGroupItemVariants(),\n local.class,\n )}\n classList={local.classList}\n onClick={(e) => {\n // 用户回调优先,可用 preventDefault() 阻止本次选中\n callEventHandler(local.onClick, e);\n if (!e.defaultPrevented && !disabled()) {\n ctx.toggleItem(local.value, e, e.currentTarget);\n }\n }}\n onFocus={(e) => {\n // 聚焦更新高亮(roving focus 起点)\n if (!disabled()) ctx.setHighlightedValue(local.value);\n callEventHandler(local.onFocus, e);\n }}\n {...rest}\n >\n {local.children}\n </button>\n );\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgBY,EAEdC,GAAkD;CAGlD,IAAMG,IAAMR,EAAsB,iBAAiB,GAC7CS,IAASjB,EAAW,EAAEkB,MAAM,SAAkB,GAAGL,CAAK,GAEtD,CAACO,GAAOC,KAAQlB,EAAWc,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAEGK,GAGEE,UAAgBR,EAAIQ,QAAQ,KAAKJ,EAAMI,WAAW,WAClDC,UAAaT,EAAIS,KAAK,KAAKL,EAAMK,QAAQ,WACzCC,UAAgBV,EAAIW,UAAUP,EAAMQ,KAAK,GACzCC,UAAiBb,EAAIa,SAAS,KAAK,CAAC,CAACT,EAAMS,UAI3CC,UAAiB;EACrB,IAAID,EAAS,GAAG,OAAO;EACvB,IAAME,IAAcf,EAAIgB,iBAAiB;EAQzC,OAPID,MAAgBX,EAAMQ,SAASZ,EAAIiB,SAASb,EAAMQ,KAAK,MAExDG,MAAgBG,KAAAA,KAAa,CAAClB,EAAIiB,SAASF,CAAW,MACvDf,EAAImB,eAAef,EAAMQ,KAAK,IAEvB,IAEF;CACT;CAYA,OAVA1B,QAAc;EACZD,EACEe,EAAIoB,aAAa;GACfR,OAAOR,EAAMQ;GACbC;GACAQ,SAASf;EACX,CAAC,CACH;CACF,CAAC,UAED;EAAA,IAAAgB,IAAAC,EAAA;EAoCmB,OApCnBD,EAAAE,iBAAA,UA6BcC,MAAM;GAGdlC,AADKsB,EAAS,KAAGb,EAAI0B,oBAAoBtB,EAAMQ,KAAK,GACpDrB,EAAiBa,EAAMuB,SAASF,CAAC;EACnC,CAAC,GAAAH,EAAAM,WAXSH,MAAM;GAGd,AADAlC,EAAiBa,EAAMyB,SAASJ,CAAC,GAC7B,CAACA,EAAEK,oBAAoB,CAACjB,EAAS,KACnCb,EAAI+B,WAAW3B,EAAMQ,OAAOa,GAAGA,EAAEO,aAAa;EAElD,GAACC,GA1BKC,MAAO;GACX5B,IAAa4B;EACf,GAACZ,CAAA,GAAAa,EAAAb,GAAAc,EAAA;GAAA,IACDlC,OAAI;IAAA,OAAEE,EAAMF;GAAI;GAAA,IAChBW,WAAQ;IAAA,OAAEA,EAAS;GAAC;GAAA,IACpBwB,WAAQ;IAAA,OAAEvB,EAAS;GAAC;GAAA,IAAA,iBAAA;IAAA,OAENN,EAAQ;GAAC;GAAA,IAAA,cAAA;IAAA,OACZC,EAAK;GAAC;GAAA,IAAA,iBAAA;IAAA,OACHT,EAAIyC,QAAQ;GAAC;GAAA,IAAA,iBAAA;IAAA,OACb/B,EAAQ,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OACpBG,EAAS,IAAI,KAAK;GAAI;GAAA,IAAA,eAAA;IAAA,OACzBH,EAAQ,IAAI,OAAO;GAAK;GAAA,IAAA,iBAAA;IAAA,OACtBA,EAAQ;GAAC;GAAA,IAAAoE,QAAA;IAAA,OAChBzF,EACLC,EAAe;KAAEkB,SAASA,EAAQ;KAAGC,MAAMA,EAAK;IAAE,CAAC,GACnDf,EAAwB,GACxBU,EAAM0C,KACR;GAAC;GAAA,IACDC,YAAS;IAAA,OAAE3C,EAAM2C;GAAS;EAAA,GAatB1C,CAAI,GAAA,IAAA,EAAA,GAAA2C,EAAA1B,SAEPlB,EAAM6C,QAAQ,GAAA3B;CAAA,EAAA,CAAA;AAGrB;AAAC4B,EAAA,CAAA,OAAA,CAAA"}