@spark-ui/components 13.1.4 → 13.2.0

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 (731) hide show
  1. package/dist/Button-B6rA3-e5.js +2 -0
  2. package/dist/Button-B6rA3-e5.js.map +1 -0
  3. package/dist/{chunk-2YM6GKWW.mjs → Button-C3C0aixy.mjs} +130 -173
  4. package/dist/Button-C3C0aixy.mjs.map +1 -0
  5. package/dist/DialogContent.styles-B5pR8ECK.js +2 -0
  6. package/dist/DialogContent.styles-B5pR8ECK.js.map +1 -0
  7. package/dist/{chunk-XZ47F6TP.mjs → DialogContent.styles-_lRDsl8c.mjs} +6 -8
  8. package/dist/DialogContent.styles-_lRDsl8c.mjs.map +1 -0
  9. package/dist/Icon-CF0W0LKr.js +2 -0
  10. package/dist/Icon-CF0W0LKr.js.map +1 -0
  11. package/dist/Icon-Ck-dhfLd.mjs +58 -0
  12. package/dist/Icon-Ck-dhfLd.mjs.map +1 -0
  13. package/dist/IconButton-C62-axzv.mjs +43 -0
  14. package/dist/IconButton-C62-axzv.mjs.map +1 -0
  15. package/dist/IconButton-D3g86WpZ.js +2 -0
  16. package/dist/IconButton-D3g86WpZ.js.map +1 -0
  17. package/dist/Slot-D2Bbf8Gw.mjs +14 -0
  18. package/dist/Slot-D2Bbf8Gw.mjs.map +1 -0
  19. package/dist/Slot-DQ8z2zsy.js +2 -0
  20. package/dist/Slot-DQ8z2zsy.js.map +1 -0
  21. package/dist/Spinner-_Kffli3B.js +2 -0
  22. package/dist/Spinner-_Kffli3B.js.map +1 -0
  23. package/dist/{chunk-GAK4SC2F.mjs → Spinner-jF3-zoh_.mjs} +29 -40
  24. package/dist/Spinner-jF3-zoh_.mjs.map +1 -0
  25. package/dist/{chunk-RKPP7ZOK.mjs → TextLink-BuzFRWO6.mjs} +27 -36
  26. package/dist/TextLink-BuzFRWO6.mjs.map +1 -0
  27. package/dist/TextLink-C3xDLsbC.js +2 -0
  28. package/dist/TextLink-C3xDLsbC.js.map +1 -0
  29. package/dist/VisuallyHidden-CB6Nx76j.js +2 -0
  30. package/dist/VisuallyHidden-CB6Nx76j.js.map +1 -0
  31. package/dist/VisuallyHidden-KH1biLx-.mjs +28 -0
  32. package/dist/VisuallyHidden-KH1biLx-.mjs.map +1 -0
  33. package/dist/accordion/Accordion.d.ts +27 -0
  34. package/dist/accordion/AccordionItem.d.ts +12 -0
  35. package/dist/accordion/AccordionItemContent.d.ts +12 -0
  36. package/dist/accordion/AccordionItemHeader.d.ts +9 -0
  37. package/dist/accordion/AccordionItemTrigger.d.ts +12 -0
  38. package/dist/accordion/index.d.mts +10 -68
  39. package/dist/accordion/index.d.ts +10 -68
  40. package/dist/accordion/index.js +2 -325
  41. package/dist/accordion/index.js.map +1 -1
  42. package/dist/accordion/index.mjs +114 -154
  43. package/dist/accordion/index.mjs.map +1 -1
  44. package/dist/accordion/useRenderSlot.d.ts +3 -0
  45. package/dist/alert-dialog/AlertDialog.d.ts +29 -0
  46. package/dist/alert-dialog/AlertDialogAction.d.ts +13 -0
  47. package/dist/alert-dialog/AlertDialogBody.d.ts +12 -0
  48. package/dist/alert-dialog/AlertDialogCancel.d.ts +13 -0
  49. package/dist/alert-dialog/AlertDialogContent.d.ts +9 -0
  50. package/dist/alert-dialog/AlertDialogContext.d.ts +12 -0
  51. package/dist/alert-dialog/AlertDialogDescription.d.ts +9 -0
  52. package/dist/alert-dialog/AlertDialogFooter.d.ts +10 -0
  53. package/dist/alert-dialog/AlertDialogHeader.d.ts +10 -0
  54. package/dist/alert-dialog/AlertDialogOverlay.d.ts +9 -0
  55. package/dist/alert-dialog/AlertDialogPortal.d.ts +7 -0
  56. package/dist/alert-dialog/AlertDialogTitle.d.ts +9 -0
  57. package/dist/alert-dialog/AlertDialogTrigger.d.ts +13 -0
  58. package/dist/alert-dialog/index.d.mts +26 -147
  59. package/dist/alert-dialog/index.d.ts +26 -147
  60. package/dist/alert-dialog/index.js +2 -405
  61. package/dist/alert-dialog/index.js.map +1 -1
  62. package/dist/alert-dialog/index.mjs +172 -260
  63. package/dist/alert-dialog/index.mjs.map +1 -1
  64. package/dist/alert-dialog/useRenderSlot.d.ts +3 -0
  65. package/dist/avatar/Avatar.d.ts +3 -0
  66. package/dist/avatar/AvatarAction.d.ts +9 -0
  67. package/dist/avatar/AvatarImage.d.ts +7 -0
  68. package/dist/avatar/AvatarOnlineBadge.d.ts +9 -0
  69. package/dist/avatar/AvatarPlaceholder.d.ts +8 -0
  70. package/dist/avatar/AvatarUser.d.ts +7 -0
  71. package/dist/avatar/context.d.ts +5 -0
  72. package/dist/avatar/index.d.mts +8 -59
  73. package/dist/avatar/index.d.ts +8 -59
  74. package/dist/avatar/index.js +2 -1323
  75. package/dist/avatar/index.js.map +1 -1
  76. package/dist/avatar/index.mjs +149 -207
  77. package/dist/avatar/index.mjs.map +1 -1
  78. package/dist/avatar/types.d.ts +24 -0
  79. package/dist/badge/Badge.d.ts +9 -0
  80. package/dist/badge/BadgeItem.d.ts +31 -0
  81. package/dist/badge/BadgeItem.styles.d.ts +7 -0
  82. package/dist/badge/index.d.mts +1 -47
  83. package/dist/badge/index.d.ts +1 -47
  84. package/dist/badge/index.js +2 -122
  85. package/dist/badge/index.js.map +1 -1
  86. package/dist/badge/index.mjs +32 -44
  87. package/dist/badge/index.mjs.map +1 -1
  88. package/dist/breadcrumb/Breadcrumb.d.ts +10 -0
  89. package/dist/breadcrumb/Breadcrumb.styles.d.ts +0 -0
  90. package/dist/breadcrumb/BreadcrumbCurrentPage.d.ts +11 -0
  91. package/dist/breadcrumb/BreadcrumbItem.d.ts +9 -0
  92. package/dist/breadcrumb/BreadcrumbLink.d.ts +12 -0
  93. package/dist/breadcrumb/BreadcrumbSeparator.d.ts +10 -0
  94. package/dist/breadcrumb/index.d.mts +7 -59
  95. package/dist/breadcrumb/index.d.ts +7 -59
  96. package/dist/breadcrumb/index.js +2 -327
  97. package/dist/breadcrumb/index.js.map +1 -1
  98. package/dist/breadcrumb/index.mjs +106 -146
  99. package/dist/breadcrumb/index.mjs.map +1 -1
  100. package/dist/button/Button.d.ts +26 -0
  101. package/dist/button/Button.styles.d.ts +10 -0
  102. package/dist/button/index.d.mts +1 -41
  103. package/dist/button/index.d.ts +1 -41
  104. package/dist/button/index.js +2 -935
  105. package/dist/button/index.js.map +1 -1
  106. package/dist/button/index.mjs +3 -8
  107. package/dist/button/index.mjs.map +1 -1
  108. package/dist/button/variants/contrast.d.ts +45 -0
  109. package/dist/button/variants/filled.d.ts +45 -0
  110. package/dist/button/variants/ghost.d.ts +45 -0
  111. package/dist/button/variants/index.d.mts +5 -0
  112. package/dist/button/variants/index.d.ts +5 -0
  113. package/dist/button/variants/outlined.d.ts +45 -0
  114. package/dist/button/variants/tinted.d.ts +45 -0
  115. package/dist/card/Backdrop.d.ts +14 -0
  116. package/dist/card/Card.d.ts +16 -0
  117. package/dist/card/Card.styles.d.ts +7 -0
  118. package/dist/card/Content.d.ts +15 -0
  119. package/dist/card/Content.styles.d.ts +8 -0
  120. package/dist/card/context.d.ts +11 -0
  121. package/dist/card/index.d.mts +5 -58
  122. package/dist/card/index.d.ts +5 -58
  123. package/dist/card/index.js +2 -502
  124. package/dist/card/index.js.map +1 -1
  125. package/dist/card/index.mjs +125 -178
  126. package/dist/card/index.mjs.map +1 -1
  127. package/dist/card/utils.d.ts +3 -0
  128. package/dist/carousel/Carousel.d.ts +12 -0
  129. package/dist/carousel/CarouselControls.d.ts +9 -0
  130. package/dist/carousel/CarouselNextButton.d.ts +5 -0
  131. package/dist/carousel/CarouselPageIndicator.d.ts +14 -0
  132. package/dist/carousel/CarouselPagePicker.d.ts +14 -0
  133. package/dist/carousel/CarouselPrevButton.d.ts +5 -0
  134. package/dist/carousel/CarouselSlide.d.ts +12 -0
  135. package/dist/carousel/CarouselSlides.d.ts +10 -0
  136. package/dist/carousel/CarouselViewport.d.ts +9 -0
  137. package/dist/carousel/index.d.mts +18 -263
  138. package/dist/carousel/index.d.ts +18 -263
  139. package/dist/carousel/index.js +2 -1882
  140. package/dist/carousel/index.js.map +1 -1
  141. package/dist/carousel/index.mjs +428 -650
  142. package/dist/carousel/index.mjs.map +1 -1
  143. package/dist/carousel/types.d.ts +165 -0
  144. package/dist/carousel/useCarousel.d.ts +2 -0
  145. package/dist/carousel/useCarouselVisibility.d.ts +13 -0
  146. package/dist/carousel/useEvent.d.ts +7 -0
  147. package/dist/carousel/useIsMounted.d.ts +1 -0
  148. package/dist/carousel/useIsVisible.d.ts +6 -0
  149. package/dist/carousel/useResizeObserver.d.ts +2 -0
  150. package/dist/carousel/useScrollEnd.d.ts +3 -0
  151. package/dist/carousel/useSnapPoints.d.ts +10 -0
  152. package/dist/carousel/utils.d.ts +24 -0
  153. package/dist/checkbox/Checkbox.d.ts +10 -0
  154. package/dist/checkbox/CheckboxGroup.d.ts +18 -0
  155. package/dist/checkbox/CheckboxGroup.styles.d.ts +5 -0
  156. package/dist/checkbox/CheckboxGroupContext.d.ts +41 -0
  157. package/dist/checkbox/CheckboxIndicator.d.ts +9 -0
  158. package/dist/checkbox/CheckboxInput.d.ts +47 -0
  159. package/dist/checkbox/CheckboxInput.styles.d.ts +5 -0
  160. package/dist/checkbox/CheckboxLabel.d.ts +12 -0
  161. package/dist/checkbox/CheckboxLabel.styles.d.ts +5 -0
  162. package/dist/checkbox/index.d.mts +2 -120
  163. package/dist/checkbox/index.d.ts +2 -120
  164. package/dist/checkbox/index.js +2 -511
  165. package/dist/checkbox/index.js.map +1 -1
  166. package/dist/checkbox/index.mjs +135 -226
  167. package/dist/checkbox/index.mjs.map +1 -1
  168. package/dist/chip/Chip.d.ts +34 -0
  169. package/dist/chip/Chip.styles.d.ts +8 -0
  170. package/dist/chip/ChipClearButton.d.ts +10 -0
  171. package/dist/chip/ChipClearButton.styles.d.ts +10 -0
  172. package/dist/chip/ChipContent.d.ts +8 -0
  173. package/dist/chip/ChipIcon.d.ts +8 -0
  174. package/dist/chip/ChipLeadingIcon.d.ts +9 -0
  175. package/dist/chip/ChipTrailingIcon.d.ts +9 -0
  176. package/dist/chip/index.d.mts +10 -92
  177. package/dist/chip/index.d.ts +10 -92
  178. package/dist/chip/index.js +2 -908
  179. package/dist/chip/index.js.map +1 -1
  180. package/dist/chip/index.mjs +218 -324
  181. package/dist/chip/index.mjs.map +1 -1
  182. package/dist/chip/useChipContext.d.ts +4 -0
  183. package/dist/chip/useChipElement.d.ts +41 -0
  184. package/dist/chip/variants/dashed.d.ts +49 -0
  185. package/dist/chip/variants/index.d.mts +3 -0
  186. package/dist/chip/variants/index.d.ts +3 -0
  187. package/dist/chip/variants/outlined.d.ts +49 -0
  188. package/dist/chip/variants/tinted.d.ts +49 -0
  189. package/dist/collapsible/Content.d.ts +12 -0
  190. package/dist/collapsible/Root.d.ts +12 -0
  191. package/dist/collapsible/Trigger.d.ts +11 -0
  192. package/dist/collapsible/index.d.mts +4 -40
  193. package/dist/collapsible/index.d.ts +4 -40
  194. package/dist/collapsible/index.js +2 -109
  195. package/dist/collapsible/index.js.map +1 -1
  196. package/dist/collapsible/index.mjs +39 -58
  197. package/dist/collapsible/index.mjs.map +1 -1
  198. package/dist/collapsible/useRenderSlot.d.ts +3 -0
  199. package/dist/combobox/Combobox.d.ts +6 -0
  200. package/dist/combobox/ComboboxClearButton.d.ts +9 -0
  201. package/dist/combobox/ComboboxContext.d.ts +108 -0
  202. package/dist/combobox/ComboboxDisclosure.d.ts +13 -0
  203. package/dist/combobox/ComboboxEmpty.d.ts +11 -0
  204. package/dist/combobox/ComboboxGroup.d.ts +11 -0
  205. package/dist/combobox/ComboboxInput.d.ts +15 -0
  206. package/dist/combobox/ComboboxItem.d.ts +12 -0
  207. package/dist/combobox/ComboboxItemContext.d.ts +17 -0
  208. package/dist/combobox/ComboboxItemIndicator.d.ts +11 -0
  209. package/dist/combobox/ComboboxItemText.d.ts +10 -0
  210. package/dist/combobox/ComboboxItems.d.ts +11 -0
  211. package/dist/combobox/ComboboxItemsGroupContext.d.ts +8 -0
  212. package/dist/combobox/ComboboxLabel.d.ts +11 -0
  213. package/dist/combobox/ComboboxLeadingIcon.d.ts +7 -0
  214. package/dist/combobox/ComboboxPopover.d.ts +10 -0
  215. package/dist/combobox/ComboboxPortal.d.ts +2 -0
  216. package/dist/combobox/ComboboxSelectedItems.d.ts +4 -0
  217. package/dist/combobox/ComboboxTrigger.d.ts +11 -0
  218. package/dist/combobox/ComboboxTrigger.styles.d.ts +6 -0
  219. package/dist/combobox/index.d.mts +19 -271
  220. package/dist/combobox/index.d.ts +19 -271
  221. package/dist/combobox/index.js +2 -2588
  222. package/dist/combobox/index.js.map +1 -1
  223. package/dist/combobox/index.mjs +623 -1017
  224. package/dist/combobox/index.mjs.map +1 -1
  225. package/dist/combobox/tests/test-utils.d.ts +8 -0
  226. package/dist/combobox/types.d.ts +8 -0
  227. package/dist/combobox/useCombobox/multipleSelectionReducer.d.ts +13 -0
  228. package/dist/combobox/useCombobox/singleSelectionReducer.d.ts +8 -0
  229. package/dist/combobox/utils/index.d.mts +14 -0
  230. package/dist/combobox/utils/index.d.ts +14 -0
  231. package/dist/combobox/utils/useWidthIncreaseCallback.d.ts +2 -0
  232. package/dist/dialog/Dialog.d.ts +32 -0
  233. package/dist/dialog/DialogBody.d.ts +12 -0
  234. package/dist/dialog/DialogClose.d.ts +9 -0
  235. package/dist/dialog/DialogCloseButton.d.ts +9 -0
  236. package/dist/dialog/DialogContent.d.ts +14 -0
  237. package/dist/dialog/DialogContent.styles.d.ts +6 -0
  238. package/dist/dialog/DialogContext.d.ts +11 -0
  239. package/dist/dialog/DialogDescription.d.ts +9 -0
  240. package/dist/dialog/DialogFooter.d.ts +10 -0
  241. package/dist/dialog/DialogHeader.d.ts +10 -0
  242. package/dist/dialog/DialogOverlay.d.ts +9 -0
  243. package/dist/dialog/DialogPortal.d.ts +7 -0
  244. package/dist/dialog/DialogTitle.d.ts +9 -0
  245. package/dist/dialog/DialogTrigger.d.ts +17 -0
  246. package/dist/dialog/index.d.mts +25 -154
  247. package/dist/dialog/index.d.ts +25 -154
  248. package/dist/dialog/index.js +2 -1389
  249. package/dist/dialog/index.js.map +1 -1
  250. package/dist/dialog/index.mjs +163 -258
  251. package/dist/dialog/index.mjs.map +1 -1
  252. package/dist/divider/Divider.d.ts +30 -0
  253. package/dist/divider/Divider.styles.d.ts +9 -0
  254. package/dist/divider/DividerContent.d.ts +13 -0
  255. package/dist/divider/index.d.mts +4 -59
  256. package/dist/divider/index.d.ts +4 -59
  257. package/dist/divider/index.js +2 -224
  258. package/dist/divider/index.js.map +1 -1
  259. package/dist/divider/index.mjs +79 -100
  260. package/dist/divider/index.mjs.map +1 -1
  261. package/dist/divider/variants/intents.d.ts +17 -0
  262. package/dist/drawer/Drawer.d.ts +39 -0
  263. package/dist/drawer/DrawerBody.d.ts +11 -0
  264. package/dist/drawer/DrawerBody.styles.d.ts +5 -0
  265. package/dist/drawer/DrawerClose.d.ts +9 -0
  266. package/dist/drawer/DrawerCloseButton.d.ts +7 -0
  267. package/dist/drawer/DrawerContent.d.ts +10 -0
  268. package/dist/drawer/DrawerContent.styles.d.ts +6 -0
  269. package/dist/drawer/DrawerContext.d.ts +9 -0
  270. package/dist/drawer/DrawerDescription.d.ts +9 -0
  271. package/dist/drawer/DrawerFooter.d.ts +8 -0
  272. package/dist/drawer/DrawerHeader.d.ts +10 -0
  273. package/dist/drawer/DrawerOverlay.d.ts +9 -0
  274. package/dist/drawer/DrawerPortal.d.ts +7 -0
  275. package/dist/drawer/DrawerTitle.d.ts +9 -0
  276. package/dist/drawer/DrawerTrigger.d.ts +13 -0
  277. package/dist/drawer/index.d.mts +24 -141
  278. package/dist/drawer/index.d.ts +24 -141
  279. package/dist/drawer/index.js +2 -1400
  280. package/dist/drawer/index.js.map +1 -1
  281. package/dist/drawer/index.mjs +141 -230
  282. package/dist/drawer/index.mjs.map +1 -1
  283. package/dist/dropdown/Dropdown.d.ts +6 -0
  284. package/dist/dropdown/DropdownContext.d.ts +81 -0
  285. package/dist/dropdown/DropdownDivider.d.ts +10 -0
  286. package/dist/dropdown/DropdownGroup.d.ts +11 -0
  287. package/dist/dropdown/DropdownItem.d.ts +12 -0
  288. package/dist/dropdown/DropdownItemContext.d.ts +17 -0
  289. package/dist/dropdown/DropdownItemIndicator.d.ts +11 -0
  290. package/dist/dropdown/DropdownItemText.d.ts +9 -0
  291. package/dist/dropdown/DropdownItems.d.ts +21 -0
  292. package/dist/dropdown/DropdownItemsGroupContext.d.ts +8 -0
  293. package/dist/dropdown/DropdownLabel.d.ts +11 -0
  294. package/dist/dropdown/DropdownLeadingIcon.d.ts +7 -0
  295. package/dist/dropdown/DropdownPopover.d.ts +6 -0
  296. package/dist/dropdown/DropdownPortal.d.ts +2 -0
  297. package/dist/dropdown/DropdownTrigger.d.ts +12 -0
  298. package/dist/dropdown/DropdownTrigger.styles.d.ts +5 -0
  299. package/dist/dropdown/DropdownValue.d.ts +11 -0
  300. package/dist/dropdown/index.d.mts +16 -220
  301. package/dist/dropdown/index.d.ts +16 -220
  302. package/dist/dropdown/index.js +2 -2051
  303. package/dist/dropdown/index.js.map +1 -1
  304. package/dist/dropdown/index.mjs +352 -584
  305. package/dist/dropdown/index.mjs.map +1 -1
  306. package/dist/dropdown/types.d.ts +8 -0
  307. package/dist/dropdown/useDropdown.d.ts +41 -0
  308. package/dist/dropdown/utils.d.ts +13 -0
  309. package/dist/file-upload/FileUpload.d.ts +130 -0
  310. package/dist/file-upload/FileUploadAcceptedFile.d.ts +25 -0
  311. package/dist/file-upload/FileUploadContext.d.ts +17 -0
  312. package/dist/file-upload/FileUploadDropzone.d.ts +10 -0
  313. package/dist/file-upload/FileUploadItemDeleteTrigger.d.ts +11 -0
  314. package/dist/file-upload/FileUploadPreviewImage.d.ts +17 -0
  315. package/dist/file-upload/FileUploadRejectedFile.d.ts +24 -0
  316. package/dist/file-upload/FileUploadRejectedFileDeleteTrigger.d.ts +12 -0
  317. package/dist/file-upload/FileUploadTrigger.d.ts +12 -0
  318. package/dist/file-upload/constants.d.ts +29 -0
  319. package/dist/file-upload/index.d.mts +14 -262
  320. package/dist/file-upload/index.d.ts +14 -262
  321. package/dist/file-upload/index.js +2 -2255
  322. package/dist/file-upload/index.js.map +1 -1
  323. package/dist/file-upload/index.mjs +506 -834
  324. package/dist/file-upload/index.mjs.map +1 -1
  325. package/dist/file-upload/test-utils.d.ts +9 -0
  326. package/dist/file-upload/useFileUploadState.d.ts +88 -0
  327. package/dist/file-upload/utils.d.ts +40 -0
  328. package/dist/form-field/FormField.d.ts +21 -0
  329. package/dist/form-field/FormFieldAlertMessage.d.ts +9 -0
  330. package/dist/form-field/FormFieldCharactersCount.d.ts +26 -0
  331. package/dist/form-field/FormFieldContext.d.ts +49 -0
  332. package/dist/form-field/FormFieldControl.d.ts +12 -0
  333. package/dist/form-field/FormFieldErrorMessage.d.ts +9 -0
  334. package/dist/form-field/FormFieldHelperMessage.d.ts +9 -0
  335. package/dist/form-field/FormFieldLabel.d.ts +13 -0
  336. package/dist/form-field/FormFieldMessage.d.ts +8 -0
  337. package/dist/form-field/FormFieldProvider.d.ts +9 -0
  338. package/dist/form-field/FormFieldRequiredIndicator.d.ts +9 -0
  339. package/dist/form-field/FormFieldStateMessage.d.ts +10 -0
  340. package/dist/form-field/FormFieldSuccessMessage.d.ts +9 -0
  341. package/dist/form-field/index.d.mts +21 -176
  342. package/dist/form-field/index.d.ts +21 -176
  343. package/dist/form-field/index.js +2 -553
  344. package/dist/form-field/index.js.map +1 -1
  345. package/dist/form-field/index.mjs +246 -349
  346. package/dist/form-field/index.mjs.map +1 -1
  347. package/dist/icon/Icon.d.ts +17 -0
  348. package/dist/icon/Icon.styles.d.ts +6 -0
  349. package/dist/icon/index.d.mts +1 -28
  350. package/dist/icon/index.d.ts +1 -28
  351. package/dist/icon/index.js +2 -127
  352. package/dist/icon/index.js.map +1 -1
  353. package/dist/icon/index.mjs +3 -7
  354. package/dist/icon/index.mjs.map +1 -1
  355. package/dist/icon-button/IconButton.d.ts +10 -0
  356. package/dist/icon-button/IconButton.styles.d.ts +5 -0
  357. package/dist/icon-button/index.d.mts +1 -16
  358. package/dist/icon-button/index.d.ts +1 -16
  359. package/dist/icon-button/index.js +2 -980
  360. package/dist/icon-button/index.js.map +1 -1
  361. package/dist/icon-button/index.mjs +3 -9
  362. package/dist/icon-button/index.mjs.map +1 -1
  363. package/dist/input/Input.d.ts +14 -0
  364. package/dist/input/Input.styles.d.ts +11 -0
  365. package/dist/input/InputAddon.d.ts +9 -0
  366. package/dist/input/InputAddon.styles.d.ts +9 -0
  367. package/dist/input/InputClearButton.d.ts +12 -0
  368. package/dist/input/InputGroup.d.ts +17 -0
  369. package/dist/input/InputGroup.styles.d.ts +6 -0
  370. package/dist/input/InputGroupContext.d.ts +14 -0
  371. package/dist/input/InputIcon.d.ts +6 -0
  372. package/dist/input/InputLeadingAddon.d.ts +11 -0
  373. package/dist/input/InputLeadingIcon.d.ts +7 -0
  374. package/dist/input/InputTrailingAddon.d.ts +11 -0
  375. package/dist/input/InputTrailingIcon.d.ts +7 -0
  376. package/dist/input/index.d.mts +15 -72
  377. package/dist/input/index.d.ts +15 -72
  378. package/dist/input/index.js +2 -724
  379. package/dist/input/index.js.map +1 -1
  380. package/dist/input/index.mjs +453 -12
  381. package/dist/input/index.mjs.map +1 -1
  382. package/dist/input-otp/InputOTP.d.ts +85 -0
  383. package/dist/input-otp/InputOTP.styles.d.ts +10 -0
  384. package/dist/input-otp/InputOTPContext.d.ts +16 -0
  385. package/dist/input-otp/InputOTPGroup.d.ts +7 -0
  386. package/dist/input-otp/InputOTPSeparator.d.ts +7 -0
  387. package/dist/input-otp/InputOTPSlot.d.ts +12 -0
  388. package/dist/input-otp/index.d.mts +10 -128
  389. package/dist/input-otp/index.d.ts +10 -128
  390. package/dist/input-otp/index.js +2 -668
  391. package/dist/input-otp/index.js.map +1 -1
  392. package/dist/input-otp/index.mjs +295 -462
  393. package/dist/input-otp/index.mjs.map +1 -1
  394. package/dist/input-otp/useInputOTP.d.ts +45 -0
  395. package/dist/kbd/Kbd.d.ts +5 -0
  396. package/dist/kbd/index.d.mts +1 -9
  397. package/dist/kbd/index.d.ts +1 -9
  398. package/dist/kbd/index.js +2 -47
  399. package/dist/kbd/index.js.map +1 -1
  400. package/dist/kbd/index.mjs +15 -18
  401. package/dist/kbd/index.mjs.map +1 -1
  402. package/dist/label/Label.d.ts +9 -0
  403. package/dist/label/LabelRequiredIndicator.d.ts +6 -0
  404. package/dist/label/index.d.mts +5 -9
  405. package/dist/label/index.d.ts +5 -9
  406. package/dist/label/index.js +2 -78
  407. package/dist/label/index.js.map +1 -1
  408. package/dist/label/index.mjs +38 -5
  409. package/dist/label/index.mjs.map +1 -1
  410. package/dist/link-box/LinkBox.d.ts +8 -0
  411. package/dist/link-box/LinkBoxLink.d.ts +8 -0
  412. package/dist/link-box/LinkBoxRaised.d.ts +9 -0
  413. package/dist/link-box/index.d.mts +6 -31
  414. package/dist/link-box/index.d.ts +6 -31
  415. package/dist/link-box/index.js +2 -92
  416. package/dist/link-box/index.js.map +1 -1
  417. package/dist/link-box/index.mjs +34 -56
  418. package/dist/link-box/index.mjs.map +1 -1
  419. package/dist/pagination/Pagination.d.ts +8 -0
  420. package/dist/pagination/PaginationContext.d.ts +43 -0
  421. package/dist/pagination/PaginationEllipsis.d.ts +9 -0
  422. package/dist/pagination/PaginationFirstPageTrigger.d.ts +16 -0
  423. package/dist/pagination/PaginationItem.d.ts +17 -0
  424. package/dist/pagination/PaginationLastPageTrigger.d.ts +16 -0
  425. package/dist/pagination/PaginationNextTrigger.d.ts +16 -0
  426. package/dist/pagination/PaginationPages.d.ts +16 -0
  427. package/dist/pagination/PaginationPrevTrigger.d.ts +16 -0
  428. package/dist/pagination/index.d.mts +10 -135
  429. package/dist/pagination/index.d.ts +10 -135
  430. package/dist/pagination/index.js +2 -1353
  431. package/dist/pagination/index.js.map +1 -1
  432. package/dist/pagination/index.mjs +176 -269
  433. package/dist/pagination/index.mjs.map +1 -1
  434. package/dist/pagination/utils.d.ts +1 -0
  435. package/dist/popover/Popover.d.ts +9 -0
  436. package/dist/popover/PopoverAnchor.d.ts +9 -0
  437. package/dist/popover/PopoverArrow.d.ts +9 -0
  438. package/dist/popover/PopoverCloseButton.d.ts +10 -0
  439. package/dist/popover/PopoverContent.d.ts +10 -0
  440. package/dist/popover/PopoverContent.styles.d.ts +9 -0
  441. package/dist/popover/PopoverContext.d.ts +15 -0
  442. package/dist/popover/PopoverHeader.d.ts +10 -0
  443. package/dist/popover/PopoverPortal.d.ts +7 -0
  444. package/dist/popover/PopoverTrigger.d.ts +9 -0
  445. package/dist/popover/index.d.mts +17 -6
  446. package/dist/popover/index.d.ts +17 -6
  447. package/dist/popover/index.js +2 -1339
  448. package/dist/popover/index.js.map +1 -1
  449. package/dist/popover/index.mjs +239 -11
  450. package/dist/popover/index.mjs.map +1 -1
  451. package/dist/portal/Portal.d.ts +10 -0
  452. package/dist/portal/index.d.mts +1 -13
  453. package/dist/portal/index.d.ts +1 -13
  454. package/dist/portal/index.js +2 -37
  455. package/dist/portal/index.js.map +1 -1
  456. package/dist/portal/index.mjs +5 -8
  457. package/dist/portal/index.mjs.map +1 -1
  458. package/dist/progress/Progress.d.ts +16 -0
  459. package/dist/progress/ProgressBar.d.ts +6 -0
  460. package/dist/progress/ProgressBar.styles.d.ts +5 -0
  461. package/dist/progress/ProgressContext.d.ts +13 -0
  462. package/dist/progress/ProgressIndicator.d.ts +6 -0
  463. package/dist/progress/ProgressIndicator.styles.d.ts +7 -0
  464. package/dist/progress/ProgressLabel.d.ts +6 -0
  465. package/dist/progress/index.d.mts +9 -48
  466. package/dist/progress/index.d.ts +9 -48
  467. package/dist/progress/index.js +2 -240
  468. package/dist/progress/index.js.map +1 -1
  469. package/dist/progress/index.mjs +166 -5
  470. package/dist/progress/index.mjs.map +1 -1
  471. package/dist/progress-tracker/ProgressTracker.d.ts +27 -0
  472. package/dist/progress-tracker/ProgressTracker.styles.d.ts +1 -0
  473. package/dist/progress-tracker/ProgressTrackerContext.d.ts +15 -0
  474. package/dist/progress-tracker/ProgressTrackerStep.d.ts +12 -0
  475. package/dist/progress-tracker/ProgressTrackerStep.styles.d.ts +10 -0
  476. package/dist/progress-tracker/ProgressTrackerStepIndicator.d.ts +15 -0
  477. package/dist/progress-tracker/ProgressTrackerStepIndicator.styles.d.ts +7 -0
  478. package/dist/progress-tracker/ProgressTrackerStepLabel.d.ts +9 -0
  479. package/dist/progress-tracker/index.d.mts +10 -80
  480. package/dist/progress-tracker/index.d.ts +10 -80
  481. package/dist/progress-tracker/index.js +2 -571
  482. package/dist/progress-tracker/index.js.map +1 -1
  483. package/dist/progress-tracker/index.mjs +115 -183
  484. package/dist/progress-tracker/index.mjs.map +1 -1
  485. package/dist/radio-group/Radio.d.ts +9 -0
  486. package/dist/radio-group/RadioGroup.d.ts +54 -0
  487. package/dist/radio-group/RadioGroup.styles.d.ts +5 -0
  488. package/dist/radio-group/RadioGroupContext.d.ts +5 -0
  489. package/dist/radio-group/RadioGroupProvider.d.ts +7 -0
  490. package/dist/radio-group/RadioIndicator.d.ts +18 -0
  491. package/dist/radio-group/RadioIndicator.styles.d.ts +5 -0
  492. package/dist/radio-group/RadioInput.d.ts +25 -0
  493. package/dist/radio-group/RadioInput.styles.d.ts +5 -0
  494. package/dist/radio-group/RadioLabel.d.ts +20 -0
  495. package/dist/radio-group/RadioLabel.styles.d.ts +5 -0
  496. package/dist/radio-group/index.d.mts +5 -98
  497. package/dist/radio-group/index.d.ts +5 -98
  498. package/dist/radio-group/index.js +2 -318
  499. package/dist/radio-group/index.js.map +1 -1
  500. package/dist/radio-group/index.mjs +105 -174
  501. package/dist/radio-group/index.mjs.map +1 -1
  502. package/dist/rating/Rating.d.ts +52 -0
  503. package/dist/rating/RatingStar.d.ts +10 -0
  504. package/dist/rating/RatingStar.styles.d.ts +14 -0
  505. package/dist/rating/index.d.mts +1 -78
  506. package/dist/rating/index.d.ts +1 -78
  507. package/dist/rating/index.js +2 -363
  508. package/dist/rating/index.js.map +1 -1
  509. package/dist/rating/index.mjs +125 -170
  510. package/dist/rating/index.mjs.map +1 -1
  511. package/dist/rating/types.d.ts +1 -0
  512. package/dist/rating/utils.d.ts +8 -0
  513. package/dist/scrolling-list/ScrollingList.d.ts +57 -0
  514. package/dist/scrolling-list/ScrollingListControls.d.ts +18 -0
  515. package/dist/scrolling-list/ScrollingListItem.d.ts +17 -0
  516. package/dist/scrolling-list/ScrollingListItems.d.ts +11 -0
  517. package/dist/scrolling-list/ScrollingListNextButton.d.ts +5 -0
  518. package/dist/scrolling-list/ScrollingListPrevButton.d.ts +5 -0
  519. package/dist/scrolling-list/ScrollingListSkipButton.d.ts +9 -0
  520. package/dist/scrolling-list/index.d.mts +14 -117
  521. package/dist/scrolling-list/index.d.ts +14 -117
  522. package/dist/scrolling-list/index.js +2 -1428
  523. package/dist/scrolling-list/index.js.map +1 -1
  524. package/dist/scrolling-list/index.mjs +193 -325
  525. package/dist/scrolling-list/index.mjs.map +1 -1
  526. package/dist/scrolling-list/useFocusWithinScroll.d.ts +3 -0
  527. package/dist/segmented-gauge/SegmentedGauge.d.ts +66 -0
  528. package/dist/segmented-gauge/SegmentedGaugeContext.d.ts +14 -0
  529. package/dist/segmented-gauge/SegmentedGaugeLabel.d.ts +9 -0
  530. package/dist/segmented-gauge/SegmentedGaugeSegment.d.ts +12 -0
  531. package/dist/segmented-gauge/SegmentedGaugeTrack.d.ts +8 -0
  532. package/dist/segmented-gauge/index.d.mts +9 -101
  533. package/dist/segmented-gauge/index.d.ts +9 -101
  534. package/dist/segmented-gauge/index.js +2 -274
  535. package/dist/segmented-gauge/index.js.map +1 -1
  536. package/dist/segmented-gauge/index.mjs +132 -178
  537. package/dist/segmented-gauge/index.mjs.map +1 -1
  538. package/dist/select/Select.d.ts +6 -0
  539. package/dist/select/SelectContext.d.ts +59 -0
  540. package/dist/select/SelectGroup.d.ts +11 -0
  541. package/dist/select/SelectItem.d.ts +11 -0
  542. package/dist/select/SelectItems.d.ts +10 -0
  543. package/dist/select/SelectItemsGroupContext.d.ts +9 -0
  544. package/dist/select/SelectLabel.d.ts +8 -0
  545. package/dist/select/SelectLeadingIcon.d.ts +7 -0
  546. package/dist/select/SelectPlaceholder.d.ts +10 -0
  547. package/dist/select/SelectTrigger.d.ts +16 -0
  548. package/dist/select/SelectTrigger.styles.d.ts +5 -0
  549. package/dist/select/SelectValue.d.ts +15 -0
  550. package/dist/select/index.d.mts +12 -158
  551. package/dist/select/index.d.ts +12 -158
  552. package/dist/select/index.js +2 -581
  553. package/dist/select/index.js.map +1 -1
  554. package/dist/select/index.mjs +207 -339
  555. package/dist/select/index.mjs.map +1 -1
  556. package/dist/select/types.d.ts +6 -0
  557. package/dist/select/utils.d.ts +4 -0
  558. package/dist/skeleton/Skeleton.d.ts +17 -0
  559. package/dist/skeleton/Skeleton.styles.d.ts +5 -0
  560. package/dist/skeleton/SkeletonItem.d.ts +31 -0
  561. package/dist/skeleton/SkeletonItem.styles.d.ts +8 -0
  562. package/dist/skeleton/index.d.mts +8 -67
  563. package/dist/skeleton/index.d.ts +8 -67
  564. package/dist/skeleton/index.js +2 -206
  565. package/dist/skeleton/index.js.map +1 -1
  566. package/dist/skeleton/index.mjs +64 -96
  567. package/dist/skeleton/index.mjs.map +1 -1
  568. package/dist/slider/Slider.d.ts +60 -0
  569. package/dist/slider/Slider.styles.d.ts +1 -0
  570. package/dist/slider/SliderContext.d.ts +7 -0
  571. package/dist/slider/SliderThumb.d.ts +14 -0
  572. package/dist/slider/SliderThumb.styles.d.ts +5 -0
  573. package/dist/slider/SliderTrack.d.ts +14 -0
  574. package/dist/slider/SliderTrack.styles.d.ts +9 -0
  575. package/dist/slider/index.d.mts +8 -97
  576. package/dist/slider/index.d.ts +8 -97
  577. package/dist/slider/index.js +2 -220
  578. package/dist/slider/index.js.map +1 -1
  579. package/dist/slider/index.mjs +94 -111
  580. package/dist/slider/index.mjs.map +1 -1
  581. package/dist/slot/Slot.d.ts +12 -0
  582. package/dist/slot/index.d.mts +1 -16
  583. package/dist/slot/index.d.ts +1 -16
  584. package/dist/slot/index.js +2 -51
  585. package/dist/slot/index.js.map +1 -1
  586. package/dist/slot/index.mjs +5 -9
  587. package/dist/slot/index.mjs.map +1 -1
  588. package/dist/snackbar/Snackbar.d.ts +29 -0
  589. package/dist/snackbar/SnackbarItem.d.ts +49 -0
  590. package/dist/snackbar/SnackbarItem.styles.d.ts +10 -0
  591. package/dist/snackbar/SnackbarItemAction.d.ts +10 -0
  592. package/dist/snackbar/SnackbarItemClose.d.ts +9 -0
  593. package/dist/snackbar/SnackbarItemContext.d.ts +8 -0
  594. package/dist/snackbar/SnackbarItemIcon.d.ts +7 -0
  595. package/dist/snackbar/SnackbarRegion.d.ts +30 -0
  596. package/dist/snackbar/SnackbarRegion.styles.d.ts +5 -0
  597. package/dist/snackbar/index.d.mts +13 -158
  598. package/dist/snackbar/index.d.ts +13 -158
  599. package/dist/snackbar/index.js +2 -1756
  600. package/dist/snackbar/index.js.map +1 -1
  601. package/dist/snackbar/index.mjs +237 -429
  602. package/dist/snackbar/index.mjs.map +1 -1
  603. package/dist/snackbar/snackbarVariants.d.ts +82 -0
  604. package/dist/snackbar/useSnackbarGlobalStore.d.ts +18 -0
  605. package/dist/snackbar/useSwipe.d.ts +15 -0
  606. package/dist/spinner/Spinner.d.ts +9 -0
  607. package/dist/spinner/Spinner.styles.d.ts +7 -0
  608. package/dist/spinner/index.d.mts +1 -21
  609. package/dist/spinner/index.d.ts +1 -21
  610. package/dist/spinner/index.js +2 -139
  611. package/dist/spinner/index.js.map +1 -1
  612. package/dist/spinner/index.mjs +3 -7
  613. package/dist/spinner/index.mjs.map +1 -1
  614. package/dist/stepper/Stepper.d.ts +9 -0
  615. package/dist/stepper/StepperButton.d.ts +14 -0
  616. package/dist/stepper/StepperInput.d.ts +7 -0
  617. package/dist/stepper/index.d.mts +9 -81
  618. package/dist/stepper/index.d.ts +9 -81
  619. package/dist/stepper/index.js +2 -1847
  620. package/dist/stepper/index.js.map +1 -1
  621. package/dist/stepper/index.mjs +143 -195
  622. package/dist/stepper/index.mjs.map +1 -1
  623. package/dist/stepper/types.d.ts +46 -0
  624. package/dist/stepper/useStepper.d.ts +2 -0
  625. package/dist/switch/Switch.d.ts +6 -0
  626. package/dist/switch/SwitchInput.d.ts +51 -0
  627. package/dist/switch/SwitchInput.styles.d.ts +16 -0
  628. package/dist/switch/SwitchLabel.d.ts +17 -0
  629. package/dist/switch/SwitchLabel.styles.d.ts +5 -0
  630. package/dist/switch/index.d.mts +1 -64
  631. package/dist/switch/index.d.ts +1 -64
  632. package/dist/switch/index.js +2 -327
  633. package/dist/switch/index.js.map +1 -1
  634. package/dist/switch/index.mjs +90 -130
  635. package/dist/switch/index.mjs.map +1 -1
  636. package/dist/tabs/Tabs.d.ts +24 -0
  637. package/dist/tabs/TabsContent.d.ts +22 -0
  638. package/dist/tabs/TabsContent.styles.d.ts +3 -0
  639. package/dist/tabs/TabsContext.d.ts +7 -0
  640. package/dist/tabs/TabsList.d.ts +20 -0
  641. package/dist/tabs/TabsList.styles.d.ts +3 -0
  642. package/dist/tabs/TabsPopover.d.ts +29 -0
  643. package/dist/tabs/TabsPopoverAbstraction.d.ts +27 -0
  644. package/dist/tabs/TabsRoot.styles.d.ts +1 -0
  645. package/dist/tabs/TabsTrigger.d.ts +41 -0
  646. package/dist/tabs/TabsTrigger.styles.d.ts +8 -0
  647. package/dist/tabs/index.d.mts +13 -137
  648. package/dist/tabs/index.d.ts +13 -137
  649. package/dist/tabs/index.js +2 -1830
  650. package/dist/tabs/index.js.map +1 -1
  651. package/dist/tabs/index.mjs +224 -350
  652. package/dist/tabs/index.mjs.map +1 -1
  653. package/dist/tabs/useResizeObserver.d.ts +8 -0
  654. package/dist/tag/Tag.d.ts +17 -0
  655. package/dist/tag/Tag.styles.d.ts +8 -0
  656. package/dist/tag/index.d.mts +1 -29
  657. package/dist/tag/index.d.ts +1 -29
  658. package/dist/tag/index.js +2 -283
  659. package/dist/tag/index.js.map +1 -1
  660. package/dist/tag/index.mjs +66 -90
  661. package/dist/tag/index.mjs.map +1 -1
  662. package/dist/tag/variants/filled.d.ts +41 -0
  663. package/dist/tag/variants/index.d.mts +3 -0
  664. package/dist/tag/variants/index.d.ts +3 -0
  665. package/dist/tag/variants/outlined.d.ts +37 -0
  666. package/dist/tag/variants/tinted.d.ts +37 -0
  667. package/dist/text-link/TextLink.d.ts +16 -0
  668. package/dist/text-link/index.d.mts +1 -20
  669. package/dist/text-link/index.d.ts +1 -20
  670. package/dist/text-link/index.js +2 -100
  671. package/dist/text-link/index.js.map +1 -1
  672. package/dist/text-link/index.mjs +3 -6
  673. package/dist/text-link/index.mjs.map +1 -1
  674. package/dist/textarea/Textarea.d.ts +14 -0
  675. package/dist/textarea/TextareaClearButton.d.ts +10 -0
  676. package/dist/textarea/TextareaGroup.d.ts +6 -0
  677. package/dist/textarea/TextareaLeadingIcon.d.ts +7 -0
  678. package/dist/textarea/TextareaTrailingIcon.d.ts +7 -0
  679. package/dist/textarea/index.d.mts +10 -53
  680. package/dist/textarea/index.d.ts +10 -53
  681. package/dist/textarea/index.js +2 -797
  682. package/dist/textarea/index.js.map +1 -1
  683. package/dist/textarea/index.mjs +50 -83
  684. package/dist/textarea/index.mjs.map +1 -1
  685. package/dist/toast/Toast.d.ts +4 -0
  686. package/dist/toast/Toast.styles.d.ts +10 -0
  687. package/dist/toast/index.d.mts +10 -53
  688. package/dist/toast/index.d.ts +10 -53
  689. package/dist/toast/index.js +2 -1454
  690. package/dist/toast/index.js.map +1 -1
  691. package/dist/toast/index.mjs +126 -180
  692. package/dist/toast/index.mjs.map +1 -1
  693. package/dist/toast/types.d.ts +41 -0
  694. package/dist/toast/useRenderSlot.d.ts +3 -0
  695. package/dist/toast/useToastManager.d.ts +2 -0
  696. package/dist/visually-hidden/VisuallyHidden.d.ts +12 -0
  697. package/dist/visually-hidden/index.d.mts +1 -16
  698. package/dist/visually-hidden/index.d.ts +1 -16
  699. package/dist/visually-hidden/index.js +2 -67
  700. package/dist/visually-hidden/index.js.map +1 -1
  701. package/dist/visually-hidden/index.mjs +3 -6
  702. package/dist/visually-hidden/index.mjs.map +1 -1
  703. package/package.json +6 -6
  704. package/dist/Input-N8AWWSmt.d.mts +0 -41
  705. package/dist/Input-N8AWWSmt.d.ts +0 -41
  706. package/dist/InputTrailingIcon-BBp7sE6D.d.mts +0 -20
  707. package/dist/InputTrailingIcon-ZZx8PoJy.d.ts +0 -20
  708. package/dist/LabelRequiredIndicator-DRnCzHMU.d.mts +0 -19
  709. package/dist/LabelRequiredIndicator-DRnCzHMU.d.ts +0 -19
  710. package/dist/chunk-2YM6GKWW.mjs.map +0 -1
  711. package/dist/chunk-6QCEPQ3U.mjs +0 -26
  712. package/dist/chunk-6QCEPQ3U.mjs.map +0 -1
  713. package/dist/chunk-7EWSMIZU.mjs +0 -214
  714. package/dist/chunk-7EWSMIZU.mjs.map +0 -1
  715. package/dist/chunk-DCXWGQVZ.mjs +0 -53
  716. package/dist/chunk-DCXWGQVZ.mjs.map +0 -1
  717. package/dist/chunk-GAK4SC2F.mjs.map +0 -1
  718. package/dist/chunk-GPJMLIHC.mjs +0 -308
  719. package/dist/chunk-GPJMLIHC.mjs.map +0 -1
  720. package/dist/chunk-HLXYG643.mjs +0 -52
  721. package/dist/chunk-HLXYG643.mjs.map +0 -1
  722. package/dist/chunk-KEGAAGJW.mjs +0 -36
  723. package/dist/chunk-KEGAAGJW.mjs.map +0 -1
  724. package/dist/chunk-RKPP7ZOK.mjs.map +0 -1
  725. package/dist/chunk-UMUMFMFB.mjs +0 -68
  726. package/dist/chunk-UMUMFMFB.mjs.map +0 -1
  727. package/dist/chunk-VBX7BTNU.mjs +0 -614
  728. package/dist/chunk-VBX7BTNU.mjs.map +0 -1
  729. package/dist/chunk-XZ47F6TP.mjs.map +0 -1
  730. package/dist/index-Cno_GFuW.d.mts +0 -93
  731. package/dist/index-Cno_GFuW.d.ts +0 -93
@@ -1,374 +1,225 @@
1
- import {
2
- Popover
3
- } from "../chunk-GPJMLIHC.mjs";
4
- import "../chunk-DCXWGQVZ.mjs";
5
- import {
6
- Icon
7
- } from "../chunk-UMUMFMFB.mjs";
8
- import "../chunk-2YM6GKWW.mjs";
9
- import "../chunk-GAK4SC2F.mjs";
10
- import {
11
- VisuallyHidden
12
- } from "../chunk-KEGAAGJW.mjs";
13
- import "../chunk-6QCEPQ3U.mjs";
14
-
15
- // src/dropdown/DropdownContext.tsx
16
- import { useFormFieldControl } from "@spark-ui/components/form-field";
17
- import {
18
- createContext,
19
- Fragment,
20
- useContext,
21
- useEffect,
22
- useId,
23
- useState
24
- } from "react";
25
-
26
- // src/dropdown/useDropdown.ts
27
- import { useMultipleSelection, useSelect } from "downshift";
28
- var useDropdown = ({
29
- itemsMap,
30
- defaultValue,
31
- value,
32
- onValueChange,
33
- open,
34
- onOpenChange,
35
- defaultOpen,
36
- multiple,
37
- id,
38
- labelId
1
+ import { jsx as s, jsxs as k, Fragment as De } from "react/jsx-runtime";
2
+ import { useFormFieldControl as be } from "@spark-ui/components/form-field";
3
+ import { Children as $, isValidElement as O, createContext as L, useState as D, useId as b, useEffect as M, Fragment as ae, useContext as F, useRef as Ne, useLayoutEffect as Pe } from "react";
4
+ import { Popover as P } from "../popover/index.mjs";
5
+ import { useMultipleSelection as Ce, useSelect as x } from "downshift";
6
+ import { cx as w, cva as ie } from "class-variance-authority";
7
+ import { useMergeRefs as G } from "@spark-ui/hooks/use-merge-refs";
8
+ import { Check as Te } from "@spark-ui/icons/Check";
9
+ import { I as R } from "../Icon-Ck-dhfLd.mjs";
10
+ import { ArrowHorizontalDown as Se } from "@spark-ui/icons/ArrowHorizontalDown";
11
+ import { V as Ee } from "../VisuallyHidden-KH1biLx-.mjs";
12
+ const ke = ({
13
+ itemsMap: e,
14
+ defaultValue: o,
15
+ value: t,
16
+ onValueChange: n,
17
+ open: i,
18
+ onOpenChange: l,
19
+ defaultOpen: d,
20
+ multiple: a,
21
+ id: u,
22
+ labelId: f
39
23
  }) => {
40
- const items = [...itemsMap.values()];
41
- const downshiftMultipleSelection = useMultipleSelection({
42
- selectedItems: value != null && multiple ? items.filter(
43
- (item) => multiple ? value.includes(item.value) : value === item.value
24
+ const c = [...e.values()], p = Ce({
25
+ selectedItems: t != null && a ? c.filter(
26
+ (r) => a ? t.includes(r.value) : t === r.value
44
27
  ) : void 0,
45
- initialSelectedItems: defaultValue != null && multiple ? items.filter(
46
- (item) => multiple ? defaultValue.includes(item.value) : defaultValue === item.value
28
+ initialSelectedItems: o != null && a ? c.filter(
29
+ (r) => a ? o.includes(r.value) : o === r.value
47
30
  ) : void 0,
48
- onSelectedItemsChange: ({ selectedItems }) => {
49
- if (selectedItems != null && multiple) {
50
- onValueChange?.(selectedItems.map((item) => item.value));
51
- }
31
+ onSelectedItemsChange: ({ selectedItems: r }) => {
32
+ r != null && a && n?.(r.map((m) => m.value));
52
33
  }
53
34
  });
54
- const stateReducer = (state, { changes, type }) => {
55
- if (!multiple) return changes;
56
- const { selectedItems, removeSelectedItem, addSelectedItem } = downshiftMultipleSelection;
57
- switch (type) {
58
- case useSelect.stateChangeTypes.ToggleButtonKeyDownEnter:
59
- case useSelect.stateChangeTypes.ToggleButtonKeyDownSpaceButton:
60
- case useSelect.stateChangeTypes.ItemClick:
61
- if (changes.selectedItem != null) {
62
- const isAlreadySelected = selectedItems.some(
63
- (selectedItem) => selectedItem.value === changes.selectedItem?.value
64
- );
65
- if (isAlreadySelected) removeSelectedItem(changes.selectedItem);
66
- else addSelectedItem(changes.selectedItem);
35
+ return {
36
+ ...x({
37
+ items: c,
38
+ isItemDisabled: (r) => r.disabled,
39
+ itemToString: (r) => r ? r.text : "",
40
+ // a11y attributes
41
+ id: u,
42
+ labelId: f,
43
+ // Controlled open state
44
+ isOpen: i,
45
+ // undefined must be passed for stateful behaviour (uncontrolled)
46
+ onIsOpenChange: ({ isOpen: r }) => {
47
+ r != null && l?.(r);
48
+ },
49
+ initialIsOpen: d ?? !1,
50
+ stateReducer: (r, { changes: m, type: v }) => {
51
+ if (!a) return m;
52
+ const { selectedItems: g, removeSelectedItem: C, addSelectedItem: T } = p;
53
+ switch (v) {
54
+ case x.stateChangeTypes.ToggleButtonKeyDownEnter:
55
+ case x.stateChangeTypes.ToggleButtonKeyDownSpaceButton:
56
+ case x.stateChangeTypes.ItemClick:
57
+ return m.selectedItem != null && (g.some(
58
+ (S) => S.value === m.selectedItem?.value
59
+ ) ? C(m.selectedItem) : T(m.selectedItem)), {
60
+ ...m,
61
+ isOpen: !0,
62
+ // keep the menu open after selection.
63
+ highlightedIndex: r.highlightedIndex
64
+ // preserve highlighted index position
65
+ };
66
+ default:
67
+ return m;
67
68
  }
68
- return {
69
- ...changes,
70
- isOpen: true,
71
- // keep the menu open after selection.
72
- highlightedIndex: state.highlightedIndex
73
- // preserve highlighted index position
74
- };
75
- default:
76
- return changes;
77
- }
78
- };
79
- const downshift = useSelect({
80
- items,
81
- isItemDisabled: (item) => item.disabled,
82
- itemToString: (item) => item ? item.text : "",
83
- // a11y attributes
84
- id,
85
- labelId,
86
- // Controlled open state
87
- isOpen: open,
88
- // undefined must be passed for stateful behaviour (uncontrolled)
89
- onIsOpenChange: ({ isOpen }) => {
90
- if (isOpen != null) onOpenChange?.(isOpen);
91
- },
92
- initialIsOpen: defaultOpen ?? false,
93
- stateReducer,
94
- // Controlled mode (single selection)
95
- selectedItem: value != null && !multiple ? itemsMap.get(value) || null : void 0,
96
- initialSelectedItem: (defaultValue != null || value != null) && !multiple ? itemsMap.get(defaultValue) || null : void 0,
97
- onSelectedItemChange: ({ selectedItem }) => {
98
- if (selectedItem?.value != null && !multiple) {
99
- onValueChange?.(selectedItem?.value);
100
- }
101
- },
102
- /**
103
- * 1. Downshift default behaviour is to scroll into view the highlighted item when the dropdown opens. This behaviour is not stable and scrolls the dropdown to the bottom of the screen.
104
- */
105
- scrollIntoView: (node) => {
106
- if (node) {
107
- node.scrollIntoView({ block: "nearest" });
69
+ },
70
+ // Controlled mode (single selection)
71
+ selectedItem: t != null && !a ? e.get(t) || null : void 0,
72
+ initialSelectedItem: (o != null || t != null) && !a ? e.get(o) || null : void 0,
73
+ onSelectedItemChange: ({ selectedItem: r }) => {
74
+ r?.value != null && !a && n?.(r?.value);
75
+ },
76
+ /**
77
+ * 1. Downshift default behaviour is to scroll into view the highlighted item when the dropdown opens. This behaviour is not stable and scrolls the dropdown to the bottom of the screen.
78
+ */
79
+ scrollIntoView: (r) => {
80
+ r && r.scrollIntoView({ block: "nearest" });
108
81
  }
109
- return void 0;
110
- }
111
- });
112
- return {
113
- ...downshift,
114
- ...downshiftMultipleSelection,
82
+ }),
83
+ ...p,
115
84
  /** There is a Downshift bug in React 19, it duplicates some selectedItems */
116
- selectedItems: [...new Set(downshiftMultipleSelection.selectedItems)]
85
+ selectedItems: [...new Set(p.selectedItems)]
117
86
  };
118
87
  };
119
-
120
- // src/dropdown/utils.ts
121
- import { isValidElement, Children } from "react";
122
- function getIndexByKey(map, targetKey) {
123
- let index = 0;
124
- for (const [key] of map.entries()) {
125
- if (key === targetKey) {
126
- return index;
127
- }
128
- index++;
88
+ function $e(e, o) {
89
+ let t = 0;
90
+ for (const [n] of e.entries()) {
91
+ if (n === o)
92
+ return t;
93
+ t++;
129
94
  }
130
95
  return -1;
131
96
  }
132
- var getKeyAtIndex = (map, index) => {
133
- let i = 0;
134
- for (const key of map.keys()) {
135
- if (i === index) return key;
136
- i++;
97
+ const Oe = (e, o) => {
98
+ let t = 0;
99
+ for (const n of e.keys()) {
100
+ if (t === o) return n;
101
+ t++;
137
102
  }
138
- return void 0;
139
- };
140
- var getElementByIndex = (map, index) => {
141
- const key = getKeyAtIndex(map, index);
142
- return key !== void 0 ? map.get(key) : void 0;
143
- };
144
- var getElementDisplayName = (element) => {
145
- return element ? element.type.displayName : "";
146
- };
147
- var getOrderedItems = (children, result = []) => {
148
- Children.forEach(children, (child) => {
149
- if (!isValidElement(child)) return;
150
- if (getElementDisplayName(child) === "Dropdown.Item") {
151
- const childProps = child.props;
152
- result.push({
153
- value: childProps.value,
154
- disabled: !!childProps.disabled,
155
- text: getItemText(childProps.children)
103
+ }, Le = (e, o) => {
104
+ const t = Oe(e, o);
105
+ return t !== void 0 ? e.get(t) : void 0;
106
+ }, z = (e) => e ? e.type.displayName : "", de = (e, o = []) => ($.forEach(e, (t) => {
107
+ if (O(t)) {
108
+ if (z(t) === "Dropdown.Item") {
109
+ const n = t.props;
110
+ o.push({
111
+ value: n.value,
112
+ disabled: !!n.disabled,
113
+ text: A(n.children)
156
114
  });
157
115
  }
158
- if (child.props.children) {
159
- getOrderedItems(child.props.children, result);
160
- }
161
- });
162
- return result;
163
- };
164
- var getItemText = (children, itemText = "") => {
165
- if (typeof children === "string") {
166
- return children;
116
+ t.props.children && de(t.props.children, o);
167
117
  }
168
- Children.forEach(children, (child) => {
169
- if (!isValidElement(child)) return;
170
- if (getElementDisplayName(child) === "Dropdown.ItemText") {
171
- itemText = child.props.children;
172
- }
173
- if (child.props.children) {
174
- getItemText(child.props.children, itemText);
175
- }
176
- });
177
- return itemText;
178
- };
179
- var getItemsFromChildren = (children) => {
180
- const newMap = /* @__PURE__ */ new Map();
181
- getOrderedItems(children).forEach((itemData) => {
182
- newMap.set(itemData.value, itemData);
183
- });
184
- return newMap;
185
- };
186
- var hasChildComponent = (children, displayName) => {
187
- return Children.toArray(children).some((child) => {
188
- if (!isValidElement(child)) return false;
189
- if (getElementDisplayName(child) === displayName) {
190
- return true;
191
- } else if (child.props.children) {
192
- return hasChildComponent(child.props.children, displayName);
193
- }
194
- return false;
195
- });
196
- };
197
-
198
- // src/dropdown/DropdownContext.tsx
199
- import { jsx } from "react/jsx-runtime";
200
- var DropdownContext = createContext(null);
201
- var ID_PREFIX = ":dropdown";
202
- var DropdownProvider = ({
203
- children,
204
- defaultValue,
205
- value,
206
- onValueChange,
207
- open,
208
- onOpenChange,
209
- defaultOpen,
210
- multiple = false,
211
- disabled: disabledProp = false,
212
- readOnly: readOnlyProp = false,
213
- state: stateProp
118
+ }), o), A = (e, o = "") => typeof e == "string" ? e : ($.forEach(e, (t) => {
119
+ O(t) && (z(t) === "Dropdown.ItemText" && (o = t.props.children), t.props.children && A(t.props.children, o));
120
+ }), o), se = (e) => {
121
+ const o = /* @__PURE__ */ new Map();
122
+ return de(e).forEach((t) => {
123
+ o.set(t.value, t);
124
+ }), o;
125
+ }, le = (e, o) => $.toArray(e).some((t) => O(t) ? z(t) === o ? !0 : t.props.children ? le(t.props.children, o) : !1 : !1), ce = L(null), N = ":dropdown", Me = ({
126
+ children: e,
127
+ defaultValue: o,
128
+ value: t,
129
+ onValueChange: n,
130
+ open: i,
131
+ onOpenChange: l,
132
+ defaultOpen: d,
133
+ multiple: a = !1,
134
+ disabled: u = !1,
135
+ readOnly: f = !1,
136
+ state: c
214
137
  }) => {
215
- const [itemsMap, setItemsMap] = useState(getItemsFromChildren(children));
216
- const [hasPopover, setHasPopover] = useState(
217
- hasChildComponent(children, "Dropdown.Popover")
218
- );
219
- const [lastInteractionType, setLastInteractionType] = useState("mouse");
220
- const field = useFormFieldControl();
221
- const state = field.state || stateProp;
222
- const internalFieldLabelID = `${ID_PREFIX}-label-${useId()}`;
223
- const internalFieldID = `${ID_PREFIX}-input-${useId()}`;
224
- const id = field.id || internalFieldID;
225
- const labelId = field.labelId || internalFieldLabelID;
226
- const disabled = field.disabled ?? disabledProp;
227
- const readOnly = field.readOnly ?? readOnlyProp;
228
- const dropdownState = useDropdown({
229
- itemsMap,
230
- defaultValue,
231
- value,
232
- onValueChange,
233
- open,
234
- onOpenChange,
235
- defaultOpen,
236
- multiple,
237
- id,
238
- labelId
138
+ const [p, I] = D(se(e)), [h, r] = D(
139
+ le(e, "Dropdown.Popover")
140
+ ), [m, v] = D("mouse"), g = be(), C = g.state || c, T = `${N}-label-${b()}`, Z = `${N}-input-${b()}`, S = g.id || Z, we = g.labelId || T, ge = g.disabled ?? u, Ie = g.readOnly ?? f, ee = ke({
141
+ itemsMap: p,
142
+ defaultValue: o,
143
+ value: t,
144
+ onValueChange: n,
145
+ open: i,
146
+ onOpenChange: l,
147
+ defaultOpen: d,
148
+ multiple: a,
149
+ id: S,
150
+ labelId: we
239
151
  });
240
- useEffect(() => {
241
- const newMap = getItemsFromChildren(children);
242
- const previousItems = [...itemsMap.values()];
243
- const newItems = [...newMap.values()];
244
- const hasItemsChanges = previousItems.length !== newItems.length || previousItems.some((item, index) => {
245
- const hasUpdatedValue = item.value !== newItems[index]?.value;
246
- const hasUpdatedText = item.text !== newItems[index]?.text;
247
- return hasUpdatedValue || hasUpdatedText;
248
- });
249
- if (hasItemsChanges) {
250
- setItemsMap(newMap);
251
- }
252
- }, [children]);
253
- const [WrapperComponent, wrapperProps] = hasPopover ? [Popover, { open: true }] : [Fragment, {}];
254
- return /* @__PURE__ */ jsx(
255
- DropdownContext.Provider,
152
+ M(() => {
153
+ const te = se(e), oe = [...p.values()], E = [...te.values()];
154
+ (oe.length !== E.length || oe.some((ne, re) => {
155
+ const ve = ne.value !== E[re]?.value, xe = ne.text !== E[re]?.text;
156
+ return ve || xe;
157
+ })) && I(te);
158
+ }, [e]);
159
+ const [he, ye] = h ? [P, { open: !0 }] : [ae, {}];
160
+ return /* @__PURE__ */ s(
161
+ ce.Provider,
256
162
  {
257
163
  value: {
258
- multiple,
259
- disabled,
260
- readOnly,
261
- ...dropdownState,
262
- itemsMap,
263
- highlightedItem: getElementByIndex(itemsMap, dropdownState.highlightedIndex),
264
- hasPopover,
265
- setHasPopover,
266
- state,
267
- lastInteractionType,
268
- setLastInteractionType
164
+ multiple: a,
165
+ disabled: ge,
166
+ readOnly: Ie,
167
+ ...ee,
168
+ itemsMap: p,
169
+ highlightedItem: Le(p, ee.highlightedIndex),
170
+ hasPopover: h,
171
+ setHasPopover: r,
172
+ state: C,
173
+ lastInteractionType: m,
174
+ setLastInteractionType: v
269
175
  },
270
- children: /* @__PURE__ */ jsx(WrapperComponent, { ...wrapperProps, children })
176
+ children: /* @__PURE__ */ s(he, { ...ye, children: e })
271
177
  }
272
178
  );
273
- };
274
- var useDropdownContext = () => {
275
- const context = useContext(DropdownContext);
276
- if (!context) {
179
+ }, y = () => {
180
+ const e = F(ce);
181
+ if (!e)
277
182
  throw Error("useDropdownContext must be used within a Dropdown provider");
278
- }
279
- return context;
280
- };
281
-
282
- // src/dropdown/Dropdown.tsx
283
- import { jsx as jsx2 } from "react/jsx-runtime";
284
- var Dropdown = ({ children, ...props }) => {
285
- return /* @__PURE__ */ jsx2(DropdownProvider, { ...props, children });
286
- };
287
- Dropdown.displayName = "Dropdown";
288
-
289
- // src/dropdown/DropdownDivider.tsx
290
- import { cx } from "class-variance-authority";
291
- import { jsx as jsx3 } from "react/jsx-runtime";
292
- var Divider = ({ className, ref: forwardedRef }) => {
293
- return /* @__PURE__ */ jsx3("div", { ref: forwardedRef, className: cx("my-md border-b-sm border-outline", className) });
294
- };
295
- Divider.displayName = "Dropdown.Divider";
296
-
297
- // src/dropdown/DropdownGroup.tsx
298
- import { cx as cx2 } from "class-variance-authority";
299
-
300
- // src/dropdown/DropdownItemsGroupContext.tsx
301
- import { createContext as createContext2, useContext as useContext2, useId as useId2 } from "react";
302
- import { jsx as jsx4 } from "react/jsx-runtime";
303
- var DropdownGroupContext = createContext2(null);
304
- var DropdownGroupProvider = ({ children }) => {
305
- const labelId = `${ID_PREFIX}-group-label-${useId2()}`;
306
- return /* @__PURE__ */ jsx4(DropdownGroupContext.Provider, { value: { labelId }, children });
307
- };
308
- var useDropdownGroupContext = () => {
309
- const context = useContext2(DropdownGroupContext);
310
- if (!context) {
183
+ return e;
184
+ }, pe = ({ children: e, ...o }) => /* @__PURE__ */ s(Me, { ...o, children: e });
185
+ pe.displayName = "Dropdown";
186
+ const B = ({ className: e, ref: o }) => /* @__PURE__ */ s("div", { ref: o, className: w("my-md border-b-sm border-outline", e) });
187
+ B.displayName = "Dropdown.Divider";
188
+ const ue = L(null), Fe = ({ children: e }) => {
189
+ const o = `${N}-group-label-${b()}`;
190
+ return /* @__PURE__ */ s(ue.Provider, { value: { labelId: o }, children: e });
191
+ }, me = () => {
192
+ const e = F(ue);
193
+ if (!e)
311
194
  throw Error("useDropdownGroupContext must be used within a DropdownGroup provider");
312
- }
313
- return context;
195
+ return e;
196
+ }, H = ({ children: e, ref: o, ...t }) => /* @__PURE__ */ s(Fe, { children: /* @__PURE__ */ s(Ge, { ref: o, ...t, children: e }) }), Ge = ({ children: e, className: o, ref: t }) => {
197
+ const { labelId: n } = me();
198
+ return /* @__PURE__ */ s("div", { ref: t, role: "group", "aria-labelledby": n, className: w(o), children: e });
314
199
  };
315
-
316
- // src/dropdown/DropdownGroup.tsx
317
- import { jsx as jsx5 } from "react/jsx-runtime";
318
- var Group = ({ children, ref: forwardedRef, ...props }) => {
319
- return /* @__PURE__ */ jsx5(DropdownGroupProvider, { children: /* @__PURE__ */ jsx5(GroupContent, { ref: forwardedRef, ...props, children }) });
320
- };
321
- var GroupContent = ({ children, className, ref: forwardedRef }) => {
322
- const { labelId } = useDropdownGroupContext();
323
- return /* @__PURE__ */ jsx5("div", { ref: forwardedRef, role: "group", "aria-labelledby": labelId, className: cx2(className), children });
324
- };
325
- Group.displayName = "Dropdown.Group";
326
-
327
- // src/dropdown/DropdownItem.tsx
328
- import { useMergeRefs } from "@spark-ui/hooks/use-merge-refs";
329
- import { cva, cx as cx3 } from "class-variance-authority";
330
-
331
- // src/dropdown/DropdownItemContext.tsx
332
- import {
333
- createContext as createContext3,
334
- useContext as useContext3,
335
- useState as useState2
336
- } from "react";
337
- import { jsx as jsx6 } from "react/jsx-runtime";
338
- var DropdownItemContext = createContext3(null);
339
- var DropdownItemProvider = ({
340
- value,
341
- disabled = false,
342
- children
200
+ H.displayName = "Dropdown.Group";
201
+ const fe = L(null), Re = ({
202
+ value: e,
203
+ disabled: o = !1,
204
+ children: t
343
205
  }) => {
344
- const { multiple, itemsMap, selectedItem, selectedItems } = useDropdownContext();
345
- const [textId, setTextId] = useState2(void 0);
346
- const index = getIndexByKey(itemsMap, value);
347
- const itemData = { disabled, value, text: getItemText(children) };
348
- const isSelected = multiple ? selectedItems.some((selectedItem2) => selectedItem2.value === value) : selectedItem?.value === value;
349
- return /* @__PURE__ */ jsx6(
350
- DropdownItemContext.Provider,
206
+ const { multiple: n, itemsMap: i, selectedItem: l, selectedItems: d } = y(), [a, u] = D(void 0), f = $e(i, e), c = { disabled: o, value: e, text: A(t) }, p = n ? d.some((I) => I.value === e) : l?.value === e;
207
+ return /* @__PURE__ */ s(
208
+ fe.Provider,
351
209
  {
352
- value: { textId, setTextId, isSelected, itemData, index, disabled },
353
- children
210
+ value: { textId: a, setTextId: u, isSelected: p, itemData: c, index: f, disabled: o },
211
+ children: t
354
212
  }
355
213
  );
356
- };
357
- var useDropdownItemContext = () => {
358
- const context = useContext3(DropdownItemContext);
359
- if (!context) {
214
+ }, V = () => {
215
+ const e = F(fe);
216
+ if (!e)
360
217
  throw Error("useDropdownItemContext must be used within a DropdownItem provider");
361
- }
362
- return context;
363
- };
364
-
365
- // src/dropdown/DropdownItem.tsx
366
- import { jsx as jsx7 } from "react/jsx-runtime";
367
- var Item = ({ children, ref: forwardedRef, ...props }) => {
368
- const { value, disabled } = props;
369
- return /* @__PURE__ */ jsx7(DropdownItemProvider, { value, disabled, children: /* @__PURE__ */ jsx7(ItemContent, { ref: forwardedRef, ...props, children }) });
370
- };
371
- var styles = cva("px-lg py-md text-body-1", {
218
+ return e;
219
+ }, j = ({ children: e, ref: o, ...t }) => {
220
+ const { value: n, disabled: i } = t;
221
+ return /* @__PURE__ */ s(Re, { value: n, disabled: i, children: /* @__PURE__ */ s(Ae, { ref: o, ...t, children: e }) });
222
+ }, ze = ie("px-lg py-md text-body-1", {
372
223
  variants: {
373
224
  selected: {
374
225
  true: "font-bold"
@@ -387,208 +238,142 @@ var styles = cva("px-lg py-md text-body-1", {
387
238
  },
388
239
  compoundVariants: [
389
240
  {
390
- highlighted: true,
241
+ highlighted: !0,
391
242
  interactionType: "mouse",
392
243
  class: "bg-surface-hovered"
393
244
  },
394
245
  {
395
- highlighted: true,
246
+ highlighted: !0,
396
247
  interactionType: "keyboard",
397
248
  class: "u-outline"
398
249
  }
399
250
  ]
400
- });
401
- var ItemContent = ({
402
- className,
403
- disabled = false,
404
- value,
405
- children,
406
- ref: forwardedRef
251
+ }), Ae = ({
252
+ className: e,
253
+ disabled: o = !1,
254
+ value: t,
255
+ children: n,
256
+ ref: i
407
257
  }) => {
408
- const { getItemProps, highlightedItem, lastInteractionType } = useDropdownContext();
409
- const { textId, index, itemData, isSelected } = useDropdownItemContext();
410
- const isHighlighted = highlightedItem?.value === value;
411
- const { ref: downshiftRef, ...downshiftItemProps } = getItemProps({ item: itemData, index });
412
- const ref = useMergeRefs(forwardedRef, downshiftRef);
413
- return /* @__PURE__ */ jsx7(
258
+ const { getItemProps: l, highlightedItem: d, lastInteractionType: a } = y(), { textId: u, index: f, itemData: c, isSelected: p } = V(), I = d?.value === t, { ref: h, ...r } = l({ item: c, index: f }), m = G(i, h);
259
+ return /* @__PURE__ */ s(
414
260
  "li",
415
261
  {
416
- ref,
417
- className: cx3(
418
- styles({
419
- selected: isSelected,
420
- disabled,
421
- highlighted: isHighlighted,
422
- interactionType: lastInteractionType,
423
- className
262
+ ref: m,
263
+ className: w(
264
+ ze({
265
+ selected: p,
266
+ disabled: o,
267
+ highlighted: I,
268
+ interactionType: a,
269
+ className: e
424
270
  })
425
271
  ),
426
- ...downshiftItemProps,
427
- "aria-selected": isSelected,
428
- "aria-labelledby": textId,
429
- children
272
+ ...r,
273
+ "aria-selected": p,
274
+ "aria-labelledby": u,
275
+ children: n
430
276
  },
431
- value
277
+ t
432
278
  );
433
279
  };
434
- Item.displayName = "Dropdown.Item";
435
-
436
- // src/dropdown/DropdownItemIndicator.tsx
437
- import { Check } from "@spark-ui/icons/Check";
438
- import { cx as cx4 } from "class-variance-authority";
439
- import { jsx as jsx8 } from "react/jsx-runtime";
440
- var ItemIndicator = ({
441
- className,
442
- children,
443
- label,
444
- ref: forwardedRef
280
+ j.displayName = "Dropdown.Item";
281
+ const K = ({
282
+ className: e,
283
+ children: o,
284
+ label: t,
285
+ ref: n
445
286
  }) => {
446
- const { disabled, isSelected } = useDropdownItemContext();
447
- const childElement = children || /* @__PURE__ */ jsx8(Icon, { size: "sm", children: /* @__PURE__ */ jsx8(Check, { "aria-label": label }) });
448
- return /* @__PURE__ */ jsx8(
287
+ const { disabled: i, isSelected: l } = V(), d = o || /* @__PURE__ */ s(R, { size: "sm", children: /* @__PURE__ */ s(Te, { "aria-label": t }) });
288
+ return /* @__PURE__ */ s(
449
289
  "span",
450
290
  {
451
- ref: forwardedRef,
452
- className: cx4("min-h-sz-16 min-w-sz-16 flex", disabled && "opacity-dim-3", className),
453
- children: isSelected && childElement
291
+ ref: n,
292
+ className: w("min-h-sz-16 min-w-sz-16 flex", i && "opacity-dim-3", e),
293
+ children: l && d
454
294
  }
455
295
  );
456
296
  };
457
- ItemIndicator.displayName = "Dropdown.ItemIndicator";
458
-
459
- // src/dropdown/DropdownItems.tsx
460
- import { useMergeRefs as useMergeRefs2 } from "@spark-ui/hooks/use-merge-refs";
461
- import { cx as cx5 } from "class-variance-authority";
462
- import { useLayoutEffect, useRef } from "react";
463
- import { jsx as jsx9 } from "react/jsx-runtime";
464
- var Items = ({ children, className, ref: forwardedRef, ...props }) => {
465
- const { isOpen, getMenuProps, hasPopover, setLastInteractionType } = useDropdownContext();
466
- const { ref: downshiftRef, ...downshiftMenuProps } = getMenuProps({
297
+ K.displayName = "Dropdown.ItemIndicator";
298
+ const U = ({ children: e, className: o, ref: t, ...n }) => {
299
+ const { isOpen: i, getMenuProps: l, hasPopover: d, setLastInteractionType: a } = y(), { ref: u, ...f } = l({
467
300
  onMouseMove: () => {
468
- setLastInteractionType("mouse");
469
- }
470
- });
471
- const innerRef = useRef(null);
472
- const ref = useMergeRefs2(forwardedRef, downshiftRef, innerRef);
473
- useLayoutEffect(() => {
474
- if (!hasPopover) return;
475
- if (!innerRef.current) return;
476
- if (innerRef.current.parentElement) {
477
- innerRef.current.parentElement.style.pointerEvents = isOpen ? "" : "none";
478
- innerRef.current.style.pointerEvents = isOpen ? "" : "none";
301
+ a("mouse");
479
302
  }
480
- }, [isOpen, hasPopover]);
481
- return /* @__PURE__ */ jsx9(
303
+ }), c = Ne(null), p = G(t, u, c);
304
+ return Pe(() => {
305
+ d && c.current && c.current.parentElement && (c.current.parentElement.style.pointerEvents = i ? "" : "none", c.current.style.pointerEvents = i ? "" : "none");
306
+ }, [i, d]), /* @__PURE__ */ s(
482
307
  "ul",
483
308
  {
484
- ref,
485
- className: cx5(
486
- className,
309
+ ref: p,
310
+ className: w(
311
+ o,
487
312
  "flex flex-col",
488
- isOpen ? "pointer-events-auto! block" : "pointer-events-none invisible absolute opacity-0",
489
- hasPopover && "p-lg"
313
+ i ? "pointer-events-auto! block" : "pointer-events-none invisible absolute opacity-0",
314
+ d && "p-lg"
490
315
  ),
491
- ...props,
492
- ...downshiftMenuProps,
316
+ ...n,
317
+ ...f,
493
318
  "data-spark-component": "dropdown-items",
494
- children
319
+ children: e
495
320
  }
496
321
  );
497
322
  };
498
- Items.displayName = "Dropdown.Items";
499
-
500
- // src/dropdown/DropdownItemText.tsx
501
- import { cx as cx6 } from "class-variance-authority";
502
- import { useEffect as useEffect2, useId as useId3 } from "react";
503
- import { jsx as jsx10 } from "react/jsx-runtime";
504
- var ItemText = ({ children, ref: forwardedRef }) => {
505
- const id = `${ID_PREFIX}-item-text-${useId3()}`;
506
- const { setTextId } = useDropdownItemContext();
507
- useEffect2(() => {
508
- setTextId(id);
509
- return () => setTextId(void 0);
510
- });
511
- return /* @__PURE__ */ jsx10("span", { id, className: cx6("inline"), ref: forwardedRef, children });
323
+ U.displayName = "Dropdown.Items";
324
+ const W = ({ children: e, ref: o }) => {
325
+ const t = `${N}-item-text-${b()}`, { setTextId: n } = V();
326
+ return M(() => (n(t), () => n(void 0))), /* @__PURE__ */ s("span", { id: t, className: w("inline"), ref: o, children: e });
512
327
  };
513
- ItemText.displayName = "Dropdown.ItemText";
514
-
515
- // src/dropdown/DropdownLabel.tsx
516
- import { cx as cx7 } from "class-variance-authority";
517
- import { jsx as jsx11 } from "react/jsx-runtime";
518
- var Label = ({ children, className, ref: forwardedRef }) => {
519
- const { labelId } = useDropdownGroupContext();
520
- return /* @__PURE__ */ jsx11(
328
+ W.displayName = "Dropdown.ItemText";
329
+ const X = ({ children: e, className: o, ref: t }) => {
330
+ const { labelId: n } = me();
331
+ return /* @__PURE__ */ s(
521
332
  "div",
522
333
  {
523
- ref: forwardedRef,
524
- id: labelId,
525
- className: cx7("px-md py-sm text-body-2 text-neutral italic", className),
526
- children
334
+ ref: t,
335
+ id: n,
336
+ className: w("px-md py-sm text-body-2 text-neutral italic", o),
337
+ children: e
527
338
  }
528
339
  );
529
340
  };
530
- Label.displayName = "Dropdown.Label";
531
-
532
- // src/dropdown/DropdownLeadingIcon.tsx
533
- import { jsx as jsx12 } from "react/jsx-runtime";
534
- var LeadingIcon = ({ children }) => {
535
- return /* @__PURE__ */ jsx12(Icon, { size: "sm", className: "shrink-0", children });
536
- };
537
- LeadingIcon.displayName = "Dropdown.LeadingIcon";
538
-
539
- // src/dropdown/DropdownPopover.tsx
540
- import { cx as cx8 } from "class-variance-authority";
541
- import { useEffect as useEffect3 } from "react";
542
- import { jsx as jsx13 } from "react/jsx-runtime";
543
- var Popover2 = ({
544
- children,
545
- matchTriggerWidth = true,
546
- sideOffset = 4,
547
- className,
548
- elevation = "dropdown",
549
- ref: forwardedRef,
550
- ...props
341
+ X.displayName = "Dropdown.Label";
342
+ const _ = ({ children: e }) => /* @__PURE__ */ s(R, { size: "sm", className: "shrink-0", children: e });
343
+ _.displayName = "Dropdown.LeadingIcon";
344
+ const q = ({
345
+ children: e,
346
+ matchTriggerWidth: o = !0,
347
+ sideOffset: t = 4,
348
+ className: n,
349
+ elevation: i = "dropdown",
350
+ ref: l,
351
+ ...d
551
352
  }) => {
552
- const ctx = useDropdownContext();
553
- useEffect3(() => {
554
- ctx.setHasPopover(true);
555
- return () => ctx.setHasPopover(false);
556
- }, []);
557
- return /* @__PURE__ */ jsx13(
558
- Popover.Content,
353
+ const a = y();
354
+ return M(() => (a.setHasPopover(!0), () => a.setHasPopover(!1)), []), /* @__PURE__ */ s(
355
+ P.Content,
559
356
  {
560
- ref: forwardedRef,
561
- inset: true,
562
- asChild: true,
563
- matchTriggerWidth,
564
- elevation,
565
- className: cx8("relative", className),
566
- sideOffset,
567
- onOpenAutoFocus: (e) => {
568
- e.preventDefault();
357
+ ref: l,
358
+ inset: !0,
359
+ asChild: !0,
360
+ matchTriggerWidth: o,
361
+ elevation: i,
362
+ className: w("relative", n),
363
+ sideOffset: t,
364
+ onOpenAutoFocus: (u) => {
365
+ u.preventDefault();
569
366
  },
570
- ...props,
367
+ ...d,
571
368
  "data-spark-component": "dropdown-popover",
572
- children
369
+ children: e
573
370
  }
574
371
  );
575
372
  };
576
- Popover2.displayName = "Dropdown.Popover";
577
-
578
- // src/dropdown/DropdownPortal.tsx
579
- import { jsx as jsx14 } from "react/jsx-runtime";
580
- var Portal = ({ children, ...rest }) => /* @__PURE__ */ jsx14(Popover.Portal, { ...rest, children });
581
- Portal.displayName = "Dropdown.Portal";
582
-
583
- // src/dropdown/DropdownTrigger.tsx
584
- import { useMergeRefs as useMergeRefs3 } from "@spark-ui/hooks/use-merge-refs";
585
- import { ArrowHorizontalDown } from "@spark-ui/icons/ArrowHorizontalDown";
586
- import { cx as cx9 } from "class-variance-authority";
587
- import { Fragment as Fragment2 } from "react";
588
-
589
- // src/dropdown/DropdownTrigger.styles.tsx
590
- import { cva as cva2 } from "class-variance-authority";
591
- var styles2 = cva2(
373
+ q.displayName = "Dropdown.Popover";
374
+ const J = ({ children: e, ...o }) => /* @__PURE__ */ s(P.Portal, { ...o, children: e });
375
+ J.displayName = "Dropdown.Portal";
376
+ const Be = ie(
592
377
  [
593
378
  "flex w-full items-center justify-between",
594
379
  "min-h-sz-44 rounded-lg bg-surface text-on-surface px-lg",
@@ -613,62 +398,54 @@ var styles2 = cva2(
613
398
  },
614
399
  compoundVariants: [
615
400
  {
616
- disabled: false,
401
+ disabled: !1,
617
402
  state: void 0,
618
403
  class: "default:hover:ring-outline-high"
619
404
  }
620
405
  ]
621
406
  }
622
- );
623
-
624
- // src/dropdown/DropdownTrigger.tsx
625
- import { Fragment as Fragment3, jsx as jsx15, jsxs } from "react/jsx-runtime";
626
- var Trigger = ({
627
- "aria-label": ariaLabel,
628
- children,
629
- className,
630
- ref: forwardedRef
407
+ ), Q = ({
408
+ "aria-label": e,
409
+ children: o,
410
+ className: t,
411
+ ref: n
631
412
  }) => {
632
413
  const {
633
- getToggleButtonProps,
634
- getDropdownProps,
635
- getLabelProps,
636
- hasPopover,
637
- disabled,
638
- readOnly,
639
- state,
640
- setLastInteractionType
641
- } = useDropdownContext();
642
- const [WrapperComponent, wrapperProps] = hasPopover ? [Popover.Trigger, { asChild: true }] : [Fragment2, {}];
643
- const { ref: downshiftRef, ...downshiftTriggerProps } = getToggleButtonProps({
644
- ...getDropdownProps(),
414
+ getToggleButtonProps: i,
415
+ getDropdownProps: l,
416
+ getLabelProps: d,
417
+ hasPopover: a,
418
+ disabled: u,
419
+ readOnly: f,
420
+ state: c,
421
+ setLastInteractionType: p
422
+ } = y(), [I, h] = a ? [P.Trigger, { asChild: !0 }] : [ae, {}], { ref: r, ...m } = i({
423
+ ...l(),
645
424
  onKeyDown: () => {
646
- setLastInteractionType("keyboard");
425
+ p("keyboard");
647
426
  }
648
- });
649
- const isExpanded = downshiftTriggerProps["aria-expanded"];
650
- const ref = useMergeRefs3(forwardedRef, downshiftRef);
651
- return /* @__PURE__ */ jsxs(Fragment3, { children: [
652
- ariaLabel && /* @__PURE__ */ jsx15(VisuallyHidden, { children: /* @__PURE__ */ jsx15("label", { ...getLabelProps(), children: ariaLabel }) }),
653
- /* @__PURE__ */ jsx15(WrapperComponent, { ...wrapperProps, children: /* @__PURE__ */ jsxs(
427
+ }), v = m["aria-expanded"], g = G(n, r);
428
+ return /* @__PURE__ */ k(De, { children: [
429
+ e && /* @__PURE__ */ s(Ee, { children: /* @__PURE__ */ s("label", { ...d(), children: e }) }),
430
+ /* @__PURE__ */ s(I, { ...h, children: /* @__PURE__ */ k(
654
431
  "button",
655
432
  {
656
433
  type: "button",
657
- ref,
658
- disabled: disabled || readOnly,
659
- className: styles2({ className, state, disabled, readOnly }),
660
- ...downshiftTriggerProps,
434
+ ref: g,
435
+ disabled: u || f,
436
+ className: Be({ className: t, state: c, disabled: u, readOnly: f }),
437
+ ...m,
661
438
  "data-spark-component": "dropdown-trigger",
662
439
  children: [
663
- /* @__PURE__ */ jsx15("span", { className: "gap-md flex items-center justify-start", children }),
664
- /* @__PURE__ */ jsx15(
665
- Icon,
440
+ /* @__PURE__ */ s("span", { className: "gap-md flex items-center justify-start", children: o }),
441
+ /* @__PURE__ */ s(
442
+ R,
666
443
  {
667
- className: cx9("ml-md shrink-0 rotate-0 transition duration-100 ease-in", {
668
- "rotate-180": isExpanded
444
+ className: w("ml-md shrink-0 rotate-0 transition duration-100 ease-in", {
445
+ "rotate-180": v
669
446
  }),
670
447
  size: "sm",
671
- children: /* @__PURE__ */ jsx15(ArrowHorizontalDown, {})
448
+ children: /* @__PURE__ */ s(Se, {})
672
449
  }
673
450
  )
674
451
  ]
@@ -676,63 +453,54 @@ var Trigger = ({
676
453
  ) })
677
454
  ] });
678
455
  };
679
- Trigger.displayName = "Dropdown.Trigger";
680
-
681
- // src/dropdown/DropdownValue.tsx
682
- import { cx as cx10 } from "class-variance-authority";
683
- import { jsx as jsx16, jsxs as jsxs2 } from "react/jsx-runtime";
684
- var Value = ({ children, className, placeholder, ref: forwardedRef }) => {
685
- const { selectedItem, multiple, selectedItems } = useDropdownContext();
686
- const hasSelectedItems = !!(multiple ? selectedItems.length : selectedItem);
687
- const text = multiple ? selectedItems[0]?.text : selectedItem?.text;
688
- const suffix = selectedItems.length > 1 ? `, +${selectedItems.length - 1}` : "";
689
- return /* @__PURE__ */ jsxs2("span", { ref: forwardedRef, className: cx10("flex shrink items-center text-left", className), children: [
690
- /* @__PURE__ */ jsx16(
456
+ Q.displayName = "Dropdown.Trigger";
457
+ const Y = ({ children: e, className: o, placeholder: t, ref: n }) => {
458
+ const { selectedItem: i, multiple: l, selectedItems: d } = y(), a = !!(l ? d.length : i), u = l ? d[0]?.text : i?.text, f = d.length > 1 ? `, +${d.length - 1}` : "";
459
+ return /* @__PURE__ */ k("span", { ref: n, className: w("flex shrink items-center text-left", o), children: [
460
+ /* @__PURE__ */ s(
691
461
  "span",
692
462
  {
693
- className: cx10(
463
+ className: w(
694
464
  "line-clamp-1 flex-1 overflow-hidden break-all text-ellipsis",
695
- !hasSelectedItems && "text-on-surface/dim-1"
465
+ !a && "text-on-surface/dim-1"
696
466
  ),
697
- children: !hasSelectedItems ? placeholder : children || text
467
+ children: a ? e || u : t
698
468
  }
699
469
  ),
700
- suffix && /* @__PURE__ */ jsx16("span", { children: suffix })
470
+ f && /* @__PURE__ */ s("span", { children: f })
701
471
  ] });
702
472
  };
703
- Value.displayName = "Dropdown.Value";
704
-
705
- // src/dropdown/index.ts
706
- var Dropdown2 = Object.assign(Dropdown, {
707
- Group,
708
- Item,
709
- Items,
710
- ItemText,
711
- ItemIndicator,
712
- Label,
713
- Popover: Popover2,
714
- Divider,
715
- Trigger,
716
- Value,
717
- LeadingIcon,
718
- Portal
473
+ Y.displayName = "Dropdown.Value";
474
+ const He = Object.assign(pe, {
475
+ Group: H,
476
+ Item: j,
477
+ Items: U,
478
+ ItemText: W,
479
+ ItemIndicator: K,
480
+ Label: X,
481
+ Popover: q,
482
+ Divider: B,
483
+ Trigger: Q,
484
+ Value: Y,
485
+ LeadingIcon: _,
486
+ Portal: J
719
487
  });
720
- Dropdown2.displayName = "Dropdown";
721
- Group.displayName = "Dropdown.Group";
722
- Items.displayName = "Dropdown.Items";
723
- Item.displayName = "Dropdown.Item";
724
- ItemText.displayName = "Dropdown.ItemText";
725
- ItemIndicator.displayName = "Dropdown.ItemIndicator";
726
- Label.displayName = "Dropdown.Label";
727
- Popover2.displayName = "Dropdown.Popover";
728
- Divider.displayName = "Dropdown.Divider";
729
- Trigger.displayName = "Dropdown.Trigger";
730
- Value.displayName = "Dropdown.Value";
731
- LeadingIcon.displayName = "Dropdown.LeadingIcon";
732
- Portal.displayName = "Dropdown.Portal";
488
+ He.displayName = "Dropdown";
489
+ H.displayName = "Dropdown.Group";
490
+ U.displayName = "Dropdown.Items";
491
+ j.displayName = "Dropdown.Item";
492
+ W.displayName = "Dropdown.ItemText";
493
+ K.displayName = "Dropdown.ItemIndicator";
494
+ X.displayName = "Dropdown.Label";
495
+ q.displayName = "Dropdown.Popover";
496
+ B.displayName = "Dropdown.Divider";
497
+ Q.displayName = "Dropdown.Trigger";
498
+ Y.displayName = "Dropdown.Value";
499
+ _.displayName = "Dropdown.LeadingIcon";
500
+ J.displayName = "Dropdown.Portal";
733
501
  export {
734
- Dropdown2 as Dropdown,
735
- DropdownProvider,
736
- useDropdownContext
502
+ He as Dropdown,
503
+ Me as DropdownProvider,
504
+ y as useDropdownContext
737
505
  };
738
- //# sourceMappingURL=index.mjs.map
506
+ //# sourceMappingURL=index.mjs.map