@primitiv-ui/react 0.1.37 → 0.1.39

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 (1495) hide show
  1. package/README.md +24 -2
  2. package/dist/AccessibleIcon/AccessibleIcon.d.ts +51 -0
  3. package/dist/AccessibleIcon/AccessibleIcon.js +55 -0
  4. package/dist/AccessibleIcon/index.d.ts +2 -0
  5. package/dist/AccessibleIcon/index.js +2 -0
  6. package/dist/AccessibleIcon/types.d.ts +24 -0
  7. package/dist/AccessibleIcon/types.js +1 -0
  8. package/dist/Accordion/Accordion.d.ts +287 -0
  9. package/dist/Accordion/Accordion.js +330 -0
  10. package/dist/Accordion/AccordionContext.d.ts +3 -0
  11. package/dist/Accordion/AccordionContext.js +4 -0
  12. package/dist/Accordion/hooks/index.d.ts +6 -0
  13. package/dist/Accordion/hooks/index.js +6 -0
  14. package/dist/Accordion/hooks/useAccordionContext.d.ts +1 -0
  15. package/dist/Accordion/hooks/useAccordionContext.js +1 -0
  16. package/dist/Accordion/hooks/useAccordionHeaderContext.d.ts +1 -0
  17. package/dist/Accordion/hooks/useAccordionHeaderContext.js +10 -0
  18. package/dist/Accordion/hooks/useAccordionItem.d.ts +8 -0
  19. package/dist/Accordion/hooks/useAccordionItem.js +15 -0
  20. package/dist/Accordion/hooks/useAccordionItemContext.d.ts +1 -0
  21. package/dist/Accordion/hooks/useAccordionItemContext.js +1 -0
  22. package/dist/Accordion/hooks/useAccordionRoot.d.ts +16 -0
  23. package/dist/Accordion/hooks/useAccordionRoot.js +133 -0
  24. package/dist/Accordion/hooks/useAccordionTrigger.d.ts +298 -0
  25. package/dist/Accordion/hooks/useAccordionTrigger.js +73 -0
  26. package/dist/Accordion/index.d.ts +2 -0
  27. package/dist/Accordion/index.js +2 -0
  28. package/dist/Accordion/types.d.ts +152 -0
  29. package/dist/Accordion/types.js +1 -0
  30. package/dist/Alert/Alert.d.ts +64 -0
  31. package/dist/Alert/Alert.js +70 -0
  32. package/dist/Alert/index.d.ts +2 -0
  33. package/dist/Alert/index.js +2 -0
  34. package/dist/Alert/types.d.ts +21 -0
  35. package/dist/Alert/types.js +1 -0
  36. package/dist/Avatar/Avatar.d.ts +144 -0
  37. package/dist/Avatar/Avatar.js +187 -0
  38. package/dist/Avatar/AvatarContext.d.ts +16 -0
  39. package/dist/Avatar/AvatarContext.js +7 -0
  40. package/dist/Avatar/hooks/index.d.ts +2 -0
  41. package/dist/Avatar/hooks/index.js +2 -0
  42. package/dist/Avatar/hooks/useAvatarContext.d.ts +1 -0
  43. package/dist/Avatar/hooks/useAvatarContext.js +1 -0
  44. package/dist/Avatar/hooks/useAvatarImage.d.ts +21 -0
  45. package/dist/Avatar/hooks/useAvatarImage.js +47 -0
  46. package/dist/Avatar/index.d.ts +3 -0
  47. package/dist/Avatar/index.js +3 -0
  48. package/dist/Avatar/types.d.ts +52 -0
  49. package/dist/Avatar/types.js +1 -0
  50. package/dist/Breadcrumb/Breadcrumb.d.ts +280 -0
  51. package/dist/Breadcrumb/Breadcrumb.js +299 -0
  52. package/dist/Breadcrumb/index.d.ts +2 -0
  53. package/dist/Breadcrumb/index.js +2 -0
  54. package/dist/Breadcrumb/types.d.ts +81 -0
  55. package/dist/Breadcrumb/types.js +1 -0
  56. package/dist/Button/Button.d.ts +73 -0
  57. package/dist/Button/Button.js +84 -0
  58. package/dist/Button/index.d.ts +2 -0
  59. package/dist/Button/index.js +2 -0
  60. package/dist/Button/types.d.ts +32 -0
  61. package/dist/Button/types.js +1 -0
  62. package/dist/Carousel/Carousel.d.ts +498 -0
  63. package/dist/Carousel/Carousel.js +660 -0
  64. package/dist/Carousel/CarouselContext.d.ts +7 -0
  65. package/dist/Carousel/CarouselContext.js +8 -0
  66. package/dist/Carousel/hooks/index.d.ts +5 -0
  67. package/dist/Carousel/hooks/index.js +5 -0
  68. package/dist/Carousel/hooks/useCarouselContext.d.ts +1 -0
  69. package/dist/Carousel/hooks/useCarouselContext.js +10 -0
  70. package/dist/Carousel/hooks/useCarouselLoop.d.ts +39 -0
  71. package/dist/Carousel/hooks/useCarouselLoop.js +735 -0
  72. package/dist/Carousel/hooks/useCarouselRoot.d.ts +97 -0
  73. package/dist/Carousel/hooks/useCarouselRoot.js +545 -0
  74. package/dist/Carousel/hooks/useCarouselSlide.d.ts +24 -0
  75. package/dist/Carousel/hooks/useCarouselSlide.js +62 -0
  76. package/dist/Carousel/hooks/useCarouselViewport.d.ts +46 -0
  77. package/dist/Carousel/hooks/useCarouselViewport.js +786 -0
  78. package/dist/Carousel/index.d.ts +3 -0
  79. package/dist/Carousel/index.js +3 -0
  80. package/dist/Carousel/loopEngine.d.ts +26 -0
  81. package/dist/Carousel/loopEngine.js +48 -0
  82. package/dist/Carousel/types.d.ts +783 -0
  83. package/dist/Carousel/types.js +1 -0
  84. package/dist/Checkbox/Checkbox.d.ts +120 -0
  85. package/dist/Checkbox/Checkbox.js +155 -0
  86. package/dist/Checkbox/CheckboxContext.d.ts +13 -0
  87. package/dist/Checkbox/CheckboxContext.js +3 -0
  88. package/dist/Checkbox/hooks/index.d.ts +3 -0
  89. package/dist/Checkbox/hooks/index.js +3 -0
  90. package/dist/Checkbox/hooks/useCheckboxContext.d.ts +1 -0
  91. package/dist/Checkbox/hooks/useCheckboxContext.js +1 -0
  92. package/dist/Checkbox/hooks/useCheckboxInput.d.ts +33 -0
  93. package/dist/Checkbox/hooks/useCheckboxInput.js +37 -0
  94. package/dist/Checkbox/hooks/useCheckboxRoot.d.ts +11 -0
  95. package/dist/Checkbox/hooks/useCheckboxRoot.js +14 -0
  96. package/dist/Checkbox/index.d.ts +2 -0
  97. package/dist/Checkbox/index.js +2 -0
  98. package/dist/Checkbox/types.d.ts +74 -0
  99. package/dist/Checkbox/types.js +1 -0
  100. package/dist/CheckboxCard/CheckboxCard.d.ts +132 -0
  101. package/dist/CheckboxCard/CheckboxCard.js +175 -0
  102. package/dist/CheckboxCard/CheckboxCardContext.d.ts +15 -0
  103. package/dist/CheckboxCard/CheckboxCardContext.js +10 -0
  104. package/dist/CheckboxCard/hooks/index.d.ts +2 -0
  105. package/dist/CheckboxCard/hooks/index.js +2 -0
  106. package/dist/CheckboxCard/hooks/useCheckboxCardContext.d.ts +1 -0
  107. package/dist/CheckboxCard/hooks/useCheckboxCardContext.js +1 -0
  108. package/dist/CheckboxCard/hooks/useCheckboxCardRoot.d.ts +11 -0
  109. package/dist/CheckboxCard/hooks/useCheckboxCardRoot.js +12 -0
  110. package/dist/CheckboxCard/index.d.ts +3 -0
  111. package/dist/CheckboxCard/index.js +3 -0
  112. package/dist/CheckboxCard/types.d.ts +87 -0
  113. package/dist/CheckboxCard/types.js +1 -0
  114. package/dist/Collapsible/Collapsible.d.ts +243 -0
  115. package/dist/Collapsible/Collapsible.js +275 -0
  116. package/dist/Collapsible/CollapsibleContext.d.ts +2 -0
  117. package/dist/Collapsible/CollapsibleContext.js +3 -0
  118. package/dist/Collapsible/hooks/index.d.ts +2 -0
  119. package/dist/Collapsible/hooks/index.js +2 -0
  120. package/dist/Collapsible/hooks/useCollapsibleRoot.d.ts +9 -0
  121. package/dist/Collapsible/hooks/useCollapsibleRoot.js +18 -0
  122. package/dist/Collapsible/hooks/useCollapsibleTrigger.d.ts +299 -0
  123. package/dist/Collapsible/hooks/useCollapsibleTrigger.js +39 -0
  124. package/dist/Collapsible/index.d.ts +2 -0
  125. package/dist/Collapsible/index.js +2 -0
  126. package/dist/Collapsible/types.d.ts +134 -0
  127. package/dist/Collapsible/types.js +1 -0
  128. package/dist/Combobox/Combobox.d.ts +149 -0
  129. package/dist/Combobox/Combobox.js +355 -0
  130. package/dist/Combobox/ComboboxContext.d.ts +10 -0
  131. package/dist/Combobox/ComboboxContext.js +13 -0
  132. package/dist/Combobox/hooks/index.d.ts +1 -0
  133. package/dist/Combobox/hooks/index.js +1 -0
  134. package/dist/Combobox/hooks/useComboboxRoot.d.ts +1 -0
  135. package/dist/Combobox/hooks/useComboboxRoot.js +1 -0
  136. package/dist/Combobox/index.d.ts +3 -0
  137. package/dist/Combobox/index.js +3 -0
  138. package/dist/Combobox/types.d.ts +126 -0
  139. package/dist/Combobox/types.js +1 -0
  140. package/dist/ContextMenu/ContextMenu.d.ts +508 -0
  141. package/dist/ContextMenu/ContextMenu.js +1005 -0
  142. package/dist/ContextMenu/ContextMenuContentContext.d.ts +12 -0
  143. package/dist/ContextMenu/ContextMenuContentContext.js +3 -0
  144. package/dist/ContextMenu/ContextMenuContext.d.ts +16 -0
  145. package/dist/ContextMenu/ContextMenuContext.js +3 -0
  146. package/dist/ContextMenu/ContextMenuGroupContext.d.ts +4 -0
  147. package/dist/ContextMenu/ContextMenuGroupContext.js +3 -0
  148. package/dist/ContextMenu/ContextMenuItemIndicatorContext.d.ts +4 -0
  149. package/dist/ContextMenu/ContextMenuItemIndicatorContext.js +3 -0
  150. package/dist/ContextMenu/ContextMenuRadioGroupContext.d.ts +5 -0
  151. package/dist/ContextMenu/ContextMenuRadioGroupContext.js +3 -0
  152. package/dist/ContextMenu/ContextMenuSubContext.d.ts +8 -0
  153. package/dist/ContextMenu/ContextMenuSubContext.js +3 -0
  154. package/dist/ContextMenu/constants.d.ts +2 -0
  155. package/dist/ContextMenu/constants.js +3 -0
  156. package/dist/ContextMenu/index.d.ts +2 -0
  157. package/dist/ContextMenu/index.js +2 -0
  158. package/dist/ContextMenu/types.d.ts +424 -0
  159. package/dist/ContextMenu/types.js +1 -0
  160. package/dist/DirectionProvider/DirectionContext.d.ts +15 -0
  161. package/dist/DirectionProvider/DirectionContext.js +18 -0
  162. package/dist/DirectionProvider/DirectionProvider.d.ts +57 -0
  163. package/dist/DirectionProvider/DirectionProvider.js +59 -0
  164. package/dist/DirectionProvider/index.d.ts +3 -0
  165. package/dist/DirectionProvider/index.js +2 -0
  166. package/dist/DirectionProvider/types.d.ts +34 -0
  167. package/dist/DirectionProvider/types.js +1 -0
  168. package/dist/Divider/Divider.d.ts +59 -0
  169. package/dist/Divider/Divider.js +60 -0
  170. package/dist/Divider/index.d.ts +2 -0
  171. package/dist/Divider/index.js +2 -0
  172. package/dist/Divider/types.d.ts +16 -0
  173. package/dist/Divider/types.js +1 -0
  174. package/dist/Drawer/Drawer.d.ts +268 -0
  175. package/dist/Drawer/Drawer.js +271 -0
  176. package/dist/Drawer/index.d.ts +2 -0
  177. package/dist/Drawer/index.js +2 -0
  178. package/dist/Drawer/types.d.ts +45 -0
  179. package/dist/Drawer/types.js +1 -0
  180. package/dist/Dropdown/Dropdown.d.ts +476 -0
  181. package/dist/Dropdown/Dropdown.js +745 -0
  182. package/dist/Dropdown/DropdownContentContext.d.ts +12 -0
  183. package/dist/Dropdown/DropdownContentContext.js +3 -0
  184. package/dist/Dropdown/DropdownContext.d.ts +10 -0
  185. package/dist/Dropdown/DropdownContext.js +3 -0
  186. package/dist/Dropdown/DropdownGroupContext.d.ts +4 -0
  187. package/dist/Dropdown/DropdownGroupContext.js +3 -0
  188. package/dist/Dropdown/DropdownItemIndicatorContext.d.ts +9 -0
  189. package/dist/Dropdown/DropdownItemIndicatorContext.js +3 -0
  190. package/dist/Dropdown/DropdownRadioGroupContext.d.ts +5 -0
  191. package/dist/Dropdown/DropdownRadioGroupContext.js +3 -0
  192. package/dist/Dropdown/DropdownSubContext.d.ts +8 -0
  193. package/dist/Dropdown/DropdownSubContext.js +3 -0
  194. package/dist/Dropdown/constants.d.ts +2 -0
  195. package/dist/Dropdown/constants.js +3 -0
  196. package/dist/Dropdown/hooks/index.d.ts +9 -0
  197. package/dist/Dropdown/hooks/index.js +9 -0
  198. package/dist/Dropdown/hooks/useCloseSiblingSub.d.ts +7 -0
  199. package/dist/Dropdown/hooks/useCloseSiblingSub.js +13 -0
  200. package/dist/Dropdown/hooks/useDropdownContent.d.ts +296 -0
  201. package/dist/Dropdown/hooks/useDropdownContent.js +149 -0
  202. package/dist/Dropdown/hooks/useDropdownContext.d.ts +1 -0
  203. package/dist/Dropdown/hooks/useDropdownContext.js +1 -0
  204. package/dist/Dropdown/hooks/useDropdownGroup.d.ts +294 -0
  205. package/dist/Dropdown/hooks/useDropdownGroup.js +12 -0
  206. package/dist/Dropdown/hooks/useDropdownItem.d.ts +13 -0
  207. package/dist/Dropdown/hooks/useDropdownItem.js +34 -0
  208. package/dist/Dropdown/hooks/useDropdownLabel.d.ts +292 -0
  209. package/dist/Dropdown/hooks/useDropdownLabel.js +8 -0
  210. package/dist/Dropdown/hooks/useDropdownRoot.d.ts +19 -0
  211. package/dist/Dropdown/hooks/useDropdownRoot.js +25 -0
  212. package/dist/Dropdown/hooks/useDropdownSubContext.d.ts +1 -0
  213. package/dist/Dropdown/hooks/useDropdownSubContext.js +1 -0
  214. package/dist/Dropdown/hooks/useDropdownTrigger.d.ts +302 -0
  215. package/dist/Dropdown/hooks/useDropdownTrigger.js +18 -0
  216. package/dist/Dropdown/index.d.ts +2 -0
  217. package/dist/Dropdown/index.js +2 -0
  218. package/dist/Dropdown/types.d.ts +496 -0
  219. package/dist/Dropdown/types.js +1 -0
  220. package/dist/EmptyState/EmptyState.d.ts +246 -0
  221. package/dist/EmptyState/EmptyState.js +268 -0
  222. package/dist/EmptyState/index.d.ts +2 -0
  223. package/dist/EmptyState/index.js +2 -0
  224. package/dist/EmptyState/types.d.ts +59 -0
  225. package/dist/EmptyState/types.js +1 -0
  226. package/dist/Field/Field.d.ts +178 -0
  227. package/dist/Field/Field.js +211 -0
  228. package/dist/Field/FieldContext.d.ts +15 -0
  229. package/dist/Field/FieldContext.js +3 -0
  230. package/dist/Field/hooks/index.d.ts +2 -0
  231. package/dist/Field/hooks/index.js +2 -0
  232. package/dist/Field/hooks/useFieldContext.d.ts +1 -0
  233. package/dist/Field/hooks/useFieldContext.js +1 -0
  234. package/dist/Field/hooks/useFieldProps.d.ts +25 -0
  235. package/dist/Field/hooks/useFieldProps.js +39 -0
  236. package/dist/Field/index.d.ts +2 -0
  237. package/dist/Field/index.js +2 -0
  238. package/dist/Field/types.d.ts +81 -0
  239. package/dist/Field/types.js +1 -0
  240. package/dist/Fieldset/Fieldset.d.ts +124 -0
  241. package/dist/Fieldset/Fieldset.js +124 -0
  242. package/dist/Fieldset/index.d.ts +2 -0
  243. package/dist/Fieldset/index.js +2 -0
  244. package/dist/Fieldset/types.d.ts +23 -0
  245. package/dist/Fieldset/types.js +1 -0
  246. package/dist/Input/Input.d.ts +104 -0
  247. package/dist/Input/Input.js +116 -0
  248. package/dist/Input/index.d.ts +2 -0
  249. package/dist/Input/index.js +2 -0
  250. package/dist/Input/types.d.ts +27 -0
  251. package/dist/Input/types.js +1 -0
  252. package/dist/InputGroup/InputGroup.d.ts +176 -0
  253. package/dist/InputGroup/InputGroup.js +205 -0
  254. package/dist/InputGroup/index.d.ts +2 -0
  255. package/dist/InputGroup/index.js +2 -0
  256. package/dist/InputGroup/types.d.ts +41 -0
  257. package/dist/InputGroup/types.js +1 -0
  258. package/dist/Listbox/Listbox.d.ts +231 -0
  259. package/dist/Listbox/Listbox.js +339 -0
  260. package/dist/Listbox/ListboxContext.d.ts +19 -0
  261. package/dist/Listbox/ListboxContext.js +25 -0
  262. package/dist/Listbox/constants.d.ts +2 -0
  263. package/dist/Listbox/constants.js +3 -0
  264. package/dist/Listbox/hooks/index.d.ts +1 -0
  265. package/dist/Listbox/hooks/index.js +1 -0
  266. package/dist/Listbox/hooks/useListboxRoot.d.ts +39 -0
  267. package/dist/Listbox/hooks/useListboxRoot.js +299 -0
  268. package/dist/Listbox/index.d.ts +3 -0
  269. package/dist/Listbox/index.js +3 -0
  270. package/dist/Listbox/types.d.ts +214 -0
  271. package/dist/Listbox/types.js +1 -0
  272. package/dist/MillerColumns/MillerColumns.d.ts +309 -0
  273. package/dist/MillerColumns/MillerColumns.js +332 -0
  274. package/dist/MillerColumns/MillerColumnsContext.d.ts +4 -0
  275. package/dist/MillerColumns/MillerColumnsContext.js +5 -0
  276. package/dist/MillerColumns/constants.d.ts +2 -0
  277. package/dist/MillerColumns/constants.js +3 -0
  278. package/dist/MillerColumns/hooks/index.d.ts +7 -0
  279. package/dist/MillerColumns/hooks/index.js +7 -0
  280. package/dist/MillerColumns/hooks/useMillerColumnsColumn.d.ts +8 -0
  281. package/dist/MillerColumns/hooks/useMillerColumnsColumn.js +16 -0
  282. package/dist/MillerColumns/hooks/useMillerColumnsColumnContext.d.ts +1 -0
  283. package/dist/MillerColumns/hooks/useMillerColumnsColumnContext.js +1 -0
  284. package/dist/MillerColumns/hooks/useMillerColumnsContext.d.ts +1 -0
  285. package/dist/MillerColumns/hooks/useMillerColumnsContext.js +1 -0
  286. package/dist/MillerColumns/hooks/useMillerColumnsItem.d.ts +295 -0
  287. package/dist/MillerColumns/hooks/useMillerColumnsItem.js +122 -0
  288. package/dist/MillerColumns/hooks/useMillerColumnsItemContext.d.ts +1 -0
  289. package/dist/MillerColumns/hooks/useMillerColumnsItemContext.js +1 -0
  290. package/dist/MillerColumns/hooks/useMillerColumnsResizeHandle.d.ts +290 -0
  291. package/dist/MillerColumns/hooks/useMillerColumnsResizeHandle.js +105 -0
  292. package/dist/MillerColumns/hooks/useMillerColumnsRoot.d.ts +9 -0
  293. package/dist/MillerColumns/hooks/useMillerColumnsRoot.js +0 -0
  294. package/dist/MillerColumns/index.d.ts +4 -0
  295. package/dist/MillerColumns/index.js +4 -0
  296. package/dist/MillerColumns/types.d.ts +224 -0
  297. package/dist/MillerColumns/types.js +1 -0
  298. package/dist/MillerColumns/useMillerColumnsSelection.d.ts +21 -0
  299. package/dist/MillerColumns/useMillerColumnsSelection.js +28 -0
  300. package/dist/MillerColumns/utils.d.ts +62 -0
  301. package/dist/MillerColumns/utils.js +102 -0
  302. package/dist/Modal/Modal.d.ts +331 -0
  303. package/dist/Modal/Modal.js +386 -0
  304. package/dist/Modal/ModalContext.d.ts +9 -0
  305. package/dist/Modal/ModalContext.js +10 -0
  306. package/dist/Modal/hooks/index.d.ts +4 -0
  307. package/dist/Modal/hooks/index.js +4 -0
  308. package/dist/Modal/hooks/useModalContent.d.ts +5 -0
  309. package/dist/Modal/hooks/useModalContent.js +94 -0
  310. package/dist/Modal/hooks/useModalContext.d.ts +1 -0
  311. package/dist/Modal/hooks/useModalContext.js +1 -0
  312. package/dist/Modal/hooks/useModalRoot.d.ts +11 -0
  313. package/dist/Modal/hooks/useModalRoot.js +39 -0
  314. package/dist/Modal/hooks/useModalTrigger.d.ts +297 -0
  315. package/dist/Modal/hooks/useModalTrigger.js +18 -0
  316. package/dist/Modal/index.d.ts +3 -0
  317. package/dist/Modal/index.js +3 -0
  318. package/dist/Modal/types.d.ts +186 -0
  319. package/dist/Modal/types.js +1 -0
  320. package/dist/NavigationMenu/NavigationMenu.d.ts +495 -0
  321. package/dist/NavigationMenu/NavigationMenu.js +645 -0
  322. package/dist/NavigationMenu/NavigationMenuContext.d.ts +31 -0
  323. package/dist/NavigationMenu/NavigationMenuContext.js +34 -0
  324. package/dist/NavigationMenu/constants.d.ts +4 -0
  325. package/dist/NavigationMenu/constants.js +5 -0
  326. package/dist/NavigationMenu/hooks/index.d.ts +7 -0
  327. package/dist/NavigationMenu/hooks/index.js +7 -0
  328. package/dist/NavigationMenu/hooks/useNavigationMenuEntry.d.ts +13 -0
  329. package/dist/NavigationMenu/hooks/useNavigationMenuEntry.js +21 -0
  330. package/dist/NavigationMenu/hooks/useNavigationMenuIndicator.d.ts +16 -0
  331. package/dist/NavigationMenu/hooks/useNavigationMenuIndicator.js +53 -0
  332. package/dist/NavigationMenu/hooks/useNavigationMenuLink.d.ts +8 -0
  333. package/dist/NavigationMenu/hooks/useNavigationMenuLink.js +37 -0
  334. package/dist/NavigationMenu/hooks/useNavigationMenuRoot.d.ts +26 -0
  335. package/dist/NavigationMenu/hooks/useNavigationMenuRoot.js +202 -0
  336. package/dist/NavigationMenu/hooks/useNavigationMenuTopLevelEntry.d.ts +21 -0
  337. package/dist/NavigationMenu/hooks/useNavigationMenuTopLevelEntry.js +54 -0
  338. package/dist/NavigationMenu/hooks/useNavigationMenuTrigger.d.ts +16 -0
  339. package/dist/NavigationMenu/hooks/useNavigationMenuTrigger.js +100 -0
  340. package/dist/NavigationMenu/hooks/useNavigationMenuViewport.d.ts +21 -0
  341. package/dist/NavigationMenu/hooks/useNavigationMenuViewport.js +85 -0
  342. package/dist/NavigationMenu/index.d.ts +3 -0
  343. package/dist/NavigationMenu/index.js +3 -0
  344. package/dist/NavigationMenu/types.d.ts +236 -0
  345. package/dist/NavigationMenu/types.js +1 -0
  346. package/dist/NavigationMenu/utils.d.ts +37 -0
  347. package/dist/NavigationMenu/utils.js +64 -0
  348. package/dist/Popover/Popover.d.ts +239 -0
  349. package/dist/Popover/Popover.js +293 -0
  350. package/dist/Popover/PopoverContext.d.ts +4 -0
  351. package/dist/Popover/PopoverContext.js +5 -0
  352. package/dist/Popover/hooks/index.d.ts +3 -0
  353. package/dist/Popover/hooks/index.js +3 -0
  354. package/dist/Popover/hooks/usePopoverContent.d.ts +19 -0
  355. package/dist/Popover/hooks/usePopoverContent.js +83 -0
  356. package/dist/Popover/hooks/usePopoverRoot.d.ts +10 -0
  357. package/dist/Popover/hooks/usePopoverRoot.js +49 -0
  358. package/dist/Popover/hooks/usePopoverTrigger.d.ts +297 -0
  359. package/dist/Popover/hooks/usePopoverTrigger.js +19 -0
  360. package/dist/Popover/index.d.ts +2 -0
  361. package/dist/Popover/index.js +2 -0
  362. package/dist/Popover/types.d.ts +183 -0
  363. package/dist/Popover/types.js +1 -0
  364. package/dist/Portal/Portal.d.ts +70 -0
  365. package/dist/Portal/Portal.js +92 -0
  366. package/dist/Portal/index.d.ts +2 -0
  367. package/dist/Portal/index.js +2 -0
  368. package/dist/Portal/types.d.ts +14 -0
  369. package/dist/Portal/types.js +1 -0
  370. package/dist/Progress/Progress.d.ts +126 -0
  371. package/dist/Progress/Progress.js +172 -0
  372. package/dist/Progress/ProgressContext.d.ts +16 -0
  373. package/dist/Progress/ProgressContext.js +7 -0
  374. package/dist/Progress/hooks/index.d.ts +2 -0
  375. package/dist/Progress/hooks/index.js +2 -0
  376. package/dist/Progress/hooks/useProgressContext.d.ts +1 -0
  377. package/dist/Progress/hooks/useProgressContext.js +1 -0
  378. package/dist/Progress/hooks/useProgressRoot.d.ts +17 -0
  379. package/dist/Progress/hooks/useProgressRoot.js +22 -0
  380. package/dist/Progress/index.d.ts +3 -0
  381. package/dist/Progress/index.js +3 -0
  382. package/dist/Progress/types.d.ts +53 -0
  383. package/dist/Progress/types.js +1 -0
  384. package/dist/Radio/Radio.d.ts +128 -0
  385. package/dist/Radio/Radio.js +153 -0
  386. package/dist/Radio/RadioContext.d.ts +13 -0
  387. package/dist/Radio/RadioContext.js +3 -0
  388. package/dist/Radio/hooks/index.d.ts +2 -0
  389. package/dist/Radio/hooks/index.js +2 -0
  390. package/dist/Radio/hooks/useRadioContext.d.ts +1 -0
  391. package/dist/Radio/hooks/useRadioContext.js +1 -0
  392. package/dist/Radio/hooks/useRadioRoot.d.ts +32 -0
  393. package/dist/Radio/hooks/useRadioRoot.js +35 -0
  394. package/dist/Radio/index.d.ts +2 -0
  395. package/dist/Radio/index.js +2 -0
  396. package/dist/Radio/types.d.ts +79 -0
  397. package/dist/Radio/types.js +1 -0
  398. package/dist/RadioCard/RadioCard.d.ts +176 -0
  399. package/dist/RadioCard/RadioCard.js +264 -0
  400. package/dist/RadioCard/RadioCardContext.d.ts +21 -0
  401. package/dist/RadioCard/RadioCardContext.js +9 -0
  402. package/dist/RadioCard/RadioCardItemContext.d.ts +14 -0
  403. package/dist/RadioCard/RadioCardItemContext.js +10 -0
  404. package/dist/RadioCard/hooks/index.d.ts +3 -0
  405. package/dist/RadioCard/hooks/index.js +3 -0
  406. package/dist/RadioCard/hooks/useRadioCardContext.d.ts +1 -0
  407. package/dist/RadioCard/hooks/useRadioCardContext.js +1 -0
  408. package/dist/RadioCard/hooks/useRadioCardItemContext.d.ts +1 -0
  409. package/dist/RadioCard/hooks/useRadioCardItemContext.js +1 -0
  410. package/dist/RadioCard/hooks/useRadioCardRoot.d.ts +14 -0
  411. package/dist/RadioCard/hooks/useRadioCardRoot.js +42 -0
  412. package/dist/RadioCard/index.d.ts +4 -0
  413. package/dist/RadioCard/index.js +4 -0
  414. package/dist/RadioCard/types.d.ts +129 -0
  415. package/dist/RadioCard/types.js +1 -0
  416. package/dist/RadioGroup/RadioGroup.d.ts +192 -0
  417. package/dist/RadioGroup/RadioGroup.js +281 -0
  418. package/dist/RadioGroup/RadioGroupContext.d.ts +12 -0
  419. package/dist/RadioGroup/RadioGroupContext.js +3 -0
  420. package/dist/RadioGroup/RadioGroupItemContext.d.ts +4 -0
  421. package/dist/RadioGroup/RadioGroupItemContext.js +3 -0
  422. package/dist/RadioGroup/hooks/index.d.ts +3 -0
  423. package/dist/RadioGroup/hooks/index.js +3 -0
  424. package/dist/RadioGroup/hooks/useRadioGroupContext.d.ts +1 -0
  425. package/dist/RadioGroup/hooks/useRadioGroupContext.js +1 -0
  426. package/dist/RadioGroup/hooks/useRadioGroupItemContext.d.ts +1 -0
  427. package/dist/RadioGroup/hooks/useRadioGroupItemContext.js +1 -0
  428. package/dist/RadioGroup/hooks/useRadioGroupRoot.d.ts +14 -0
  429. package/dist/RadioGroup/hooks/useRadioGroupRoot.js +53 -0
  430. package/dist/RadioGroup/index.d.ts +2 -0
  431. package/dist/RadioGroup/index.js +2 -0
  432. package/dist/RadioGroup/types.d.ts +130 -0
  433. package/dist/RadioGroup/types.js +1 -0
  434. package/dist/SegmentedControl/SegmentedControl.d.ts +145 -0
  435. package/dist/SegmentedControl/SegmentedControl.js +229 -0
  436. package/dist/SegmentedControl/SegmentedControlContext.d.ts +14 -0
  437. package/dist/SegmentedControl/SegmentedControlContext.js +3 -0
  438. package/dist/SegmentedControl/hooks/index.d.ts +2 -0
  439. package/dist/SegmentedControl/hooks/index.js +2 -0
  440. package/dist/SegmentedControl/hooks/useSegmentedControlContext.d.ts +1 -0
  441. package/dist/SegmentedControl/hooks/useSegmentedControlContext.js +1 -0
  442. package/dist/SegmentedControl/hooks/useSegmentedControlRoot.d.ts +14 -0
  443. package/dist/SegmentedControl/hooks/useSegmentedControlRoot.js +45 -0
  444. package/dist/SegmentedControl/index.d.ts +2 -0
  445. package/dist/SegmentedControl/index.js +2 -0
  446. package/dist/SegmentedControl/types.d.ts +121 -0
  447. package/dist/SegmentedControl/types.js +1 -0
  448. package/dist/Select/Select.d.ts +390 -0
  449. package/dist/Select/Select.js +561 -0
  450. package/dist/Select/SelectContext.d.ts +31 -0
  451. package/dist/Select/SelectContext.js +3 -0
  452. package/dist/Select/SelectItemIndicatorContext.d.ts +23 -0
  453. package/dist/Select/SelectItemIndicatorContext.js +3 -0
  454. package/dist/Select/constants.d.ts +6 -0
  455. package/dist/Select/constants.js +7 -0
  456. package/dist/Select/hooks/index.d.ts +2 -0
  457. package/dist/Select/hooks/index.js +2 -0
  458. package/dist/Select/hooks/useSelectContent.d.ts +301 -0
  459. package/dist/Select/hooks/useSelectContent.js +134 -0
  460. package/dist/Select/hooks/useSelectRoot.d.ts +23 -0
  461. package/dist/Select/hooks/useSelectRoot.js +90 -0
  462. package/dist/Select/index.d.ts +2 -0
  463. package/dist/Select/index.js +2 -0
  464. package/dist/Select/types.d.ts +246 -0
  465. package/dist/Select/types.js +1 -0
  466. package/dist/SkipNav/SkipNav.d.ts +137 -0
  467. package/dist/SkipNav/SkipNav.js +138 -0
  468. package/dist/SkipNav/index.d.ts +1 -0
  469. package/dist/SkipNav/index.js +1 -0
  470. package/dist/SkipNav/types.d.ts +32 -0
  471. package/dist/SkipNav/types.js +1 -0
  472. package/dist/Slider/Slider.d.ts +189 -0
  473. package/dist/Slider/Slider.js +253 -0
  474. package/dist/Slider/SliderContext.d.ts +48 -0
  475. package/dist/Slider/SliderContext.js +7 -0
  476. package/dist/Slider/hooks/index.d.ts +3 -0
  477. package/dist/Slider/hooks/index.js +3 -0
  478. package/dist/Slider/hooks/useSliderContext.d.ts +1 -0
  479. package/dist/Slider/hooks/useSliderContext.js +1 -0
  480. package/dist/Slider/hooks/useSliderRoot.d.ts +23 -0
  481. package/dist/Slider/hooks/useSliderRoot.js +123 -0
  482. package/dist/Slider/hooks/useSliderThumb.d.ts +11 -0
  483. package/dist/Slider/hooks/useSliderThumb.js +57 -0
  484. package/dist/Slider/index.d.ts +3 -0
  485. package/dist/Slider/index.js +3 -0
  486. package/dist/Slider/types.d.ts +194 -0
  487. package/dist/Slider/types.js +1 -0
  488. package/dist/Slider/utils.d.ts +48 -0
  489. package/dist/Slider/utils.js +105 -0
  490. package/dist/Slot/Slot.d.ts +126 -0
  491. package/dist/Slot/Slot.js +210 -0
  492. package/dist/Slot/composeEventHandlers.d.ts +50 -0
  493. package/dist/Slot/composeEventHandlers.js +57 -0
  494. package/dist/Slot/index.d.ts +3 -0
  495. package/dist/Slot/index.js +3 -0
  496. package/dist/Slot/types.d.ts +20 -0
  497. package/dist/Slot/types.js +1 -0
  498. package/dist/SplitButton/SplitButton.d.ts +286 -0
  499. package/dist/SplitButton/SplitButton.js +343 -0
  500. package/dist/SplitButton/SplitButtonContext.d.ts +11 -0
  501. package/dist/SplitButton/SplitButtonContext.js +12 -0
  502. package/dist/SplitButton/index.d.ts +2 -0
  503. package/dist/SplitButton/index.js +1 -0
  504. package/dist/SplitButton/types.d.ts +161 -0
  505. package/dist/SplitButton/types.js +1 -0
  506. package/dist/Status/Status.d.ts +57 -0
  507. package/dist/Status/Status.js +63 -0
  508. package/dist/Status/index.d.ts +2 -0
  509. package/dist/Status/index.js +2 -0
  510. package/dist/Status/types.d.ts +19 -0
  511. package/dist/Status/types.js +1 -0
  512. package/dist/Switch/Switch.d.ts +122 -0
  513. package/dist/Switch/Switch.js +143 -0
  514. package/dist/Switch/SwitchContext.d.ts +12 -0
  515. package/dist/Switch/SwitchContext.js +7 -0
  516. package/dist/Switch/hooks/index.d.ts +2 -0
  517. package/dist/Switch/hooks/index.js +2 -0
  518. package/dist/Switch/hooks/useSwitchContext.d.ts +1 -0
  519. package/dist/Switch/hooks/useSwitchContext.js +1 -0
  520. package/dist/Switch/hooks/useSwitchRoot.d.ts +30 -0
  521. package/dist/Switch/hooks/useSwitchRoot.js +33 -0
  522. package/dist/Switch/index.d.ts +3 -0
  523. package/dist/Switch/index.js +3 -0
  524. package/dist/Switch/types.d.ts +83 -0
  525. package/dist/Switch/types.js +1 -0
  526. package/dist/Table/Table.d.ts +443 -0
  527. package/dist/Table/Table.js +494 -0
  528. package/dist/Table/TableExpandableContext.d.ts +2 -0
  529. package/dist/Table/TableExpandableContext.js +3 -0
  530. package/dist/Table/index.d.ts +2 -0
  531. package/dist/Table/index.js +2 -0
  532. package/dist/Table/types.d.ts +214 -0
  533. package/dist/Table/types.js +1 -0
  534. package/dist/Tabs/Tabs.d.ts +270 -0
  535. package/dist/Tabs/Tabs.js +324 -0
  536. package/dist/Tabs/TabsContext.d.ts +11 -0
  537. package/dist/Tabs/TabsContext.js +12 -0
  538. package/dist/Tabs/hooks/index.d.ts +4 -0
  539. package/dist/Tabs/hooks/index.js +4 -0
  540. package/dist/Tabs/hooks/useTabsContent.d.ts +10 -0
  541. package/dist/Tabs/hooks/useTabsContent.js +27 -0
  542. package/dist/Tabs/hooks/useTabsContext.d.ts +1 -0
  543. package/dist/Tabs/hooks/useTabsContext.js +1 -0
  544. package/dist/Tabs/hooks/useTabsRoot.d.ts +21 -0
  545. package/dist/Tabs/hooks/useTabsRoot.js +97 -0
  546. package/dist/Tabs/hooks/useTabsTrigger.d.ts +13 -0
  547. package/dist/Tabs/hooks/useTabsTrigger.js +83 -0
  548. package/dist/Tabs/index.d.ts +3 -0
  549. package/dist/Tabs/index.js +3 -0
  550. package/dist/Tabs/types.d.ts +139 -0
  551. package/dist/Tabs/types.js +1 -0
  552. package/dist/Tabs/utils.d.ts +4 -0
  553. package/dist/Tabs/utils.js +8 -0
  554. package/dist/Textarea/Textarea.d.ts +81 -0
  555. package/dist/Textarea/Textarea.js +93 -0
  556. package/dist/Textarea/index.d.ts +2 -0
  557. package/dist/Textarea/index.js +2 -0
  558. package/dist/Textarea/types.d.ts +27 -0
  559. package/dist/Textarea/types.js +1 -0
  560. package/dist/Toggle/Toggle.d.ts +82 -0
  561. package/dist/Toggle/Toggle.js +102 -0
  562. package/dist/Toggle/index.d.ts +2 -0
  563. package/dist/Toggle/index.js +2 -0
  564. package/dist/Toggle/types.d.ts +72 -0
  565. package/dist/Toggle/types.js +1 -0
  566. package/dist/ToggleGroup/ToggleGroup.d.ts +144 -0
  567. package/dist/ToggleGroup/ToggleGroup.js +227 -0
  568. package/dist/ToggleGroup/ToggleGroupContext.d.ts +2 -0
  569. package/dist/ToggleGroup/ToggleGroupContext.js +3 -0
  570. package/dist/ToggleGroup/hooks/index.d.ts +2 -0
  571. package/dist/ToggleGroup/hooks/index.js +2 -0
  572. package/dist/ToggleGroup/hooks/useToggleGroupContext.d.ts +1 -0
  573. package/dist/ToggleGroup/hooks/useToggleGroupContext.js +1 -0
  574. package/dist/ToggleGroup/hooks/useToggleGroupRoot.d.ts +21 -0
  575. package/dist/ToggleGroup/hooks/useToggleGroupRoot.js +79 -0
  576. package/dist/ToggleGroup/index.d.ts +2 -0
  577. package/dist/ToggleGroup/index.js +2 -0
  578. package/dist/ToggleGroup/types.d.ts +141 -0
  579. package/dist/ToggleGroup/types.js +1 -0
  580. package/dist/Tooltip/Tooltip.d.ts +231 -0
  581. package/dist/Tooltip/Tooltip.js +279 -0
  582. package/dist/Tooltip/TooltipContext.d.ts +6 -0
  583. package/dist/Tooltip/TooltipContext.js +7 -0
  584. package/dist/Tooltip/hooks/index.d.ts +4 -0
  585. package/dist/Tooltip/hooks/index.js +4 -0
  586. package/dist/Tooltip/hooks/useTooltipContent.d.ts +289 -0
  587. package/dist/Tooltip/hooks/useTooltipContent.js +50 -0
  588. package/dist/Tooltip/hooks/useTooltipProvider.d.ts +9 -0
  589. package/dist/Tooltip/hooks/useTooltipProvider.js +60 -0
  590. package/dist/Tooltip/hooks/useTooltipRoot.d.ts +6 -0
  591. package/dist/Tooltip/hooks/useTooltipRoot.js +100 -0
  592. package/dist/Tooltip/hooks/useTooltipTrigger.d.ts +299 -0
  593. package/dist/Tooltip/hooks/useTooltipTrigger.js +22 -0
  594. package/dist/Tooltip/index.d.ts +2 -0
  595. package/dist/Tooltip/index.js +2 -0
  596. package/dist/Tooltip/types.d.ts +183 -0
  597. package/dist/Tooltip/types.js +1 -0
  598. package/dist/Tree/Tree.d.ts +398 -0
  599. package/dist/Tree/Tree.js +536 -0
  600. package/dist/Tree/TreeContext.d.ts +4 -0
  601. package/dist/Tree/TreeContext.js +5 -0
  602. package/dist/Tree/hooks/index.d.ts +3 -0
  603. package/dist/Tree/hooks/index.js +3 -0
  604. package/dist/Tree/hooks/useTreeItemKeyboard.d.ts +16 -0
  605. package/dist/Tree/hooks/useTreeItemKeyboard.js +71 -0
  606. package/dist/Tree/hooks/useTreePath.d.ts +88 -0
  607. package/dist/Tree/hooks/useTreePath.js +96 -0
  608. package/dist/Tree/hooks/useTreeRoot.d.ts +19 -0
  609. package/dist/Tree/hooks/useTreeRoot.js +185 -0
  610. package/dist/Tree/index.d.ts +4 -0
  611. package/dist/Tree/index.js +4 -0
  612. package/dist/Tree/types.d.ts +269 -0
  613. package/dist/Tree/types.js +1 -0
  614. package/dist/Tree/utils.d.ts +45 -0
  615. package/dist/Tree/utils.js +79 -0
  616. package/dist/VisuallyHidden/VisuallyHidden.d.ts +62 -0
  617. package/dist/VisuallyHidden/VisuallyHidden.js +83 -0
  618. package/dist/VisuallyHidden/index.d.ts +2 -0
  619. package/dist/VisuallyHidden/index.js +2 -0
  620. package/dist/VisuallyHidden/types.d.ts +18 -0
  621. package/dist/VisuallyHidden/types.js +1 -0
  622. package/dist/hooks/index.d.ts +4 -0
  623. package/dist/hooks/index.js +4 -0
  624. package/dist/hooks/useCollection.d.ts +50 -0
  625. package/dist/hooks/useCollection.js +47 -0
  626. package/dist/hooks/useControllableState.d.ts +50 -0
  627. package/dist/hooks/useControllableState.js +14 -0
  628. package/dist/hooks/useRovingTabindex.d.ts +106 -0
  629. package/dist/hooks/useRovingTabindex.js +110 -0
  630. package/dist/hooks/useTypeahead.d.ts +31 -0
  631. package/dist/hooks/useTypeahead.js +65 -0
  632. package/dist/index.d.ts +52 -0
  633. package/dist/index.js +50 -0
  634. package/dist/types.d.ts +6 -0
  635. package/dist/types.js +1 -0
  636. package/dist/useLocalStorage/index.d.ts +1 -0
  637. package/dist/useLocalStorage/index.js +1 -0
  638. package/dist/useLocalStorage/useLocalStorage.d.ts +46 -0
  639. package/dist/useLocalStorage/useLocalStorage.js +125 -0
  640. package/dist/useMediaQuery/index.d.ts +1 -0
  641. package/dist/useMediaQuery/index.js +1 -0
  642. package/dist/useMediaQuery/useMediaQuery.d.ts +30 -0
  643. package/dist/useMediaQuery/useMediaQuery.js +43 -0
  644. package/dist/usePagination/index.d.ts +1 -0
  645. package/dist/usePagination/index.js +1 -0
  646. package/dist/usePagination/usePagination.d.ts +163 -0
  647. package/dist/usePagination/usePagination.js +130 -0
  648. package/dist/utils/createStrictContext.d.ts +33 -0
  649. package/dist/utils/createStrictContext.js +47 -0
  650. package/dist/utils/deriveId.d.ts +25 -0
  651. package/dist/utils/deriveId.js +28 -0
  652. package/dist/utils/focusable.d.ts +8 -0
  653. package/dist/utils/focusable.js +16 -0
  654. package/dist/utils/getKeyToActionMap.d.ts +64 -0
  655. package/dist/utils/getKeyToActionMap.js +49 -0
  656. package/dist/utils/index.d.ts +4 -0
  657. package/dist/utils/index.js +4 -0
  658. package/package.json +7 -6
  659. package/src/AccessibleIcon/AccessibleIcon.tsx +0 -67
  660. package/src/AccessibleIcon/README.md +0 -42
  661. package/src/AccessibleIcon/__tests__/AccessibleIcon.test.tsx +0 -52
  662. package/src/AccessibleIcon/index.ts +0 -2
  663. package/src/AccessibleIcon/types.ts +0 -25
  664. package/src/Accordion/Accordion.tsx +0 -455
  665. package/src/Accordion/AccordionContext.ts +0 -12
  666. package/src/Accordion/README.md +0 -202
  667. package/src/Accordion/__tests__/Accordion.asChild.test.tsx +0 -283
  668. package/src/Accordion/__tests__/Accordion.basic-rendering.test.tsx +0 -348
  669. package/src/Accordion/__tests__/Accordion.controlled-state.test.tsx +0 -175
  670. package/src/Accordion/__tests__/Accordion.data-attributes.test.tsx +0 -272
  671. package/src/Accordion/__tests__/Accordion.disabled-items.test.tsx +0 -353
  672. package/src/Accordion/__tests__/Accordion.error-handling.test.tsx +0 -152
  673. package/src/Accordion/__tests__/Accordion.forceMount.test.tsx +0 -119
  674. package/src/Accordion/__tests__/Accordion.keyboard-interaction.test.tsx +0 -736
  675. package/src/Accordion/__tests__/Accordion.mouse-interaction.test.tsx +0 -212
  676. package/src/Accordion/__tests__/Accordion.multiple-mode.test.tsx +0 -90
  677. package/src/Accordion/__tests__/Accordion.reading-direction.test.tsx +0 -139
  678. package/src/Accordion/__tests__/Accordion.uncontrolled-state.test.tsx +0 -154
  679. package/src/Accordion/hooks/index.ts +0 -6
  680. package/src/Accordion/hooks/useAccordionContext.ts +0 -1
  681. package/src/Accordion/hooks/useAccordionHeaderContext.ts +0 -10
  682. package/src/Accordion/hooks/useAccordionItem.ts +0 -22
  683. package/src/Accordion/hooks/useAccordionItemContext.ts +0 -1
  684. package/src/Accordion/hooks/useAccordionRoot.ts +0 -188
  685. package/src/Accordion/hooks/useAccordionTrigger.ts +0 -98
  686. package/src/Accordion/index.ts +0 -2
  687. package/src/Accordion/types.ts +0 -174
  688. package/src/Alert/Alert.tsx +0 -79
  689. package/src/Alert/README.md +0 -54
  690. package/src/Alert/__tests__/Alert.test.tsx +0 -33
  691. package/src/Alert/index.ts +0 -2
  692. package/src/Alert/types.ts +0 -22
  693. package/src/Avatar/Avatar.tsx +0 -246
  694. package/src/Avatar/AvatarContext.ts +0 -26
  695. package/src/Avatar/README.md +0 -116
  696. package/src/Avatar/__tests__/Avatar.asChild.test.tsx +0 -53
  697. package/src/Avatar/__tests__/Avatar.basic-rendering.test.tsx +0 -24
  698. package/src/Avatar/__tests__/Avatar.error-handling.test.tsx +0 -30
  699. package/src/Avatar/__tests__/Avatar.fallback.test.tsx +0 -105
  700. package/src/Avatar/__tests__/Avatar.image-loading.test.tsx +0 -116
  701. package/src/Avatar/hooks/index.ts +0 -2
  702. package/src/Avatar/hooks/useAvatarContext.ts +0 -1
  703. package/src/Avatar/hooks/useAvatarImage.ts +0 -56
  704. package/src/Avatar/index.ts +0 -3
  705. package/src/Avatar/types.ts +0 -56
  706. package/src/Breadcrumb/Breadcrumb.tsx +0 -374
  707. package/src/Breadcrumb/README.md +0 -158
  708. package/src/Breadcrumb/__tests__/Breadcrumb.asChild.test.tsx +0 -33
  709. package/src/Breadcrumb/__tests__/Breadcrumb.basic-rendering.test.tsx +0 -143
  710. package/src/Breadcrumb/__tests__/Breadcrumb.ellipsis.test.tsx +0 -110
  711. package/src/Breadcrumb/index.ts +0 -2
  712. package/src/Breadcrumb/types.ts +0 -88
  713. package/src/Button/Button.tsx +0 -100
  714. package/src/Button/README.md +0 -112
  715. package/src/Button/__tests__/Button.asChild.test.tsx +0 -91
  716. package/src/Button/__tests__/Button.basic-rendering.test.tsx +0 -132
  717. package/src/Button/__tests__/Button.contract.test.tsx +0 -72
  718. package/src/Button/__tests__/Button.disabled.test.tsx +0 -52
  719. package/src/Button/__tests__/Button.icon-usage.test.tsx +0 -57
  720. package/src/Button/__tests__/Button.keyboard-interaction.test.tsx +0 -70
  721. package/src/Button/index.ts +0 -2
  722. package/src/Button/types.ts +0 -33
  723. package/src/Carousel/Carousel.tsx +0 -972
  724. package/src/Carousel/CarouselContext.ts +0 -15
  725. package/src/Carousel/README.md +0 -1447
  726. package/src/Carousel/__tests__/Carousel.asChild.test.tsx +0 -178
  727. package/src/Carousel/__tests__/Carousel.auto-play.test.tsx +0 -617
  728. package/src/Carousel/__tests__/Carousel.autoplay-status.test.tsx +0 -239
  729. package/src/Carousel/__tests__/Carousel.basic-rendering.test.tsx +0 -569
  730. package/src/Carousel/__tests__/Carousel.controlled-state.test.tsx +0 -137
  731. package/src/Carousel/__tests__/Carousel.drag-status.test.tsx +0 -292
  732. package/src/Carousel/__tests__/Carousel.dynamic-slides.test.tsx +0 -38
  733. package/src/Carousel/__tests__/Carousel.error-handling.test.tsx +0 -81
  734. package/src/Carousel/__tests__/Carousel.ids.test.tsx +0 -111
  735. package/src/Carousel/__tests__/Carousel.imperative-api.test.tsx +0 -213
  736. package/src/Carousel/__tests__/Carousel.indicators.test.tsx +0 -661
  737. package/src/Carousel/__tests__/Carousel.infinite.test.tsx +0 -1453
  738. package/src/Carousel/__tests__/Carousel.instant-scroll.test.tsx +0 -124
  739. package/src/Carousel/__tests__/Carousel.intersection-observer.test.tsx +0 -364
  740. package/src/Carousel/__tests__/Carousel.keyboard-navigation.test.tsx +0 -158
  741. package/src/Carousel/__tests__/Carousel.loop.test.tsx +0 -163
  742. package/src/Carousel/__tests__/Carousel.loopEngine.test.ts +0 -77
  743. package/src/Carousel/__tests__/Carousel.mouse-drag.test.tsx +0 -504
  744. package/src/Carousel/__tests__/Carousel.multi-slide-bounds.test.tsx +0 -91
  745. package/src/Carousel/__tests__/Carousel.orientation.test.tsx +0 -207
  746. package/src/Carousel/__tests__/Carousel.overscroll.test.tsx +0 -532
  747. package/src/Carousel/__tests__/Carousel.page-snap-points.test.tsx +0 -50
  748. package/src/Carousel/__tests__/Carousel.play-pause.test.tsx +0 -232
  749. package/src/Carousel/__tests__/Carousel.prev-next.test.tsx +0 -68
  750. package/src/Carousel/__tests__/Carousel.progress-text.test.tsx +0 -76
  751. package/src/Carousel/__tests__/Carousel.reduced-motion.test.tsx +0 -46
  752. package/src/Carousel/__tests__/Carousel.refresh-progress.test.tsx +0 -84
  753. package/src/Carousel/__tests__/Carousel.scroll-margin.test.tsx +0 -167
  754. package/src/Carousel/__tests__/Carousel.scroll-progress.test.tsx +0 -518
  755. package/src/Carousel/__tests__/Carousel.scroll-snap-change.test.tsx +0 -200
  756. package/src/Carousel/__tests__/Carousel.scroll-sync.test.tsx +0 -322
  757. package/src/Carousel/__tests__/Carousel.scroll-to-index.test.tsx +0 -115
  758. package/src/Carousel/__tests__/Carousel.slide-snap.test.tsx +0 -172
  759. package/src/Carousel/__tests__/Carousel.slides-per-move.test.tsx +0 -329
  760. package/src/Carousel/__tests__/Carousel.slides-per-page.test.tsx +0 -267
  761. package/src/Carousel/__tests__/Carousel.snap-type.test.tsx +0 -35
  762. package/src/Carousel/__tests__/Carousel.ssr.test.tsx +0 -28
  763. package/src/Carousel/__tests__/Carousel.touch-interaction.test.tsx +0 -96
  764. package/src/Carousel/__tests__/Carousel.transition-modes.test.tsx +0 -95
  765. package/src/Carousel/__tests__/Carousel.translations.test.tsx +0 -180
  766. package/src/Carousel/__tests__/Carousel.uncontrolled-state.test.tsx +0 -146
  767. package/src/Carousel/__tests__/Carousel.wheel.test.tsx +0 -160
  768. package/src/Carousel/hooks/index.ts +0 -5
  769. package/src/Carousel/hooks/useCarouselContext.ts +0 -13
  770. package/src/Carousel/hooks/useCarouselLoop.ts +0 -869
  771. package/src/Carousel/hooks/useCarouselRoot.ts +0 -746
  772. package/src/Carousel/hooks/useCarouselSlide.ts +0 -80
  773. package/src/Carousel/hooks/useCarouselViewport.ts +0 -898
  774. package/src/Carousel/index.ts +0 -3
  775. package/src/Carousel/loopEngine.ts +0 -54
  776. package/src/Carousel/types.ts +0 -830
  777. package/src/Checkbox/Checkbox.tsx +0 -217
  778. package/src/Checkbox/CheckboxContext.ts +0 -20
  779. package/src/Checkbox/README.md +0 -137
  780. package/src/Checkbox/__tests__/Checkbox.basic-rendering.test.tsx +0 -93
  781. package/src/Checkbox/__tests__/Checkbox.contract.test.tsx +0 -106
  782. package/src/Checkbox/__tests__/Checkbox.controlled-state.test.tsx +0 -74
  783. package/src/Checkbox/__tests__/Checkbox.disabled.test.tsx +0 -45
  784. package/src/Checkbox/__tests__/Checkbox.form.test.tsx +0 -53
  785. package/src/Checkbox/__tests__/Checkbox.indeterminate.test.tsx +0 -76
  786. package/src/Checkbox/__tests__/Checkbox.indicator.test.tsx +0 -92
  787. package/src/Checkbox/__tests__/Checkbox.uncontrolled-state.test.tsx +0 -105
  788. package/src/Checkbox/hooks/index.ts +0 -3
  789. package/src/Checkbox/hooks/useCheckboxContext.ts +0 -1
  790. package/src/Checkbox/hooks/useCheckboxInput.ts +0 -53
  791. package/src/Checkbox/hooks/useCheckboxRoot.ts +0 -32
  792. package/src/Checkbox/index.ts +0 -2
  793. package/src/Checkbox/types.ts +0 -86
  794. package/src/CheckboxCard/CheckboxCard.tsx +0 -219
  795. package/src/CheckboxCard/CheckboxCardContext.ts +0 -25
  796. package/src/CheckboxCard/README.md +0 -114
  797. package/src/CheckboxCard/__tests__/CheckboxCard.asChild.test.tsx +0 -54
  798. package/src/CheckboxCard/__tests__/CheckboxCard.basic-rendering.test.tsx +0 -65
  799. package/src/CheckboxCard/__tests__/CheckboxCard.controlled-state.test.tsx +0 -77
  800. package/src/CheckboxCard/__tests__/CheckboxCard.disabled.test.tsx +0 -55
  801. package/src/CheckboxCard/__tests__/CheckboxCard.error-handling.test.tsx +0 -20
  802. package/src/CheckboxCard/__tests__/CheckboxCard.indeterminate.test.tsx +0 -60
  803. package/src/CheckboxCard/__tests__/CheckboxCard.indicator.test.tsx +0 -136
  804. package/src/CheckboxCard/__tests__/CheckboxCard.uncontrolled-state.test.tsx +0 -73
  805. package/src/CheckboxCard/hooks/index.ts +0 -2
  806. package/src/CheckboxCard/hooks/useCheckboxCardContext.ts +0 -1
  807. package/src/CheckboxCard/hooks/useCheckboxCardRoot.ts +0 -30
  808. package/src/CheckboxCard/index.ts +0 -3
  809. package/src/CheckboxCard/types.ts +0 -97
  810. package/src/Collapsible/Collapsible.tsx +0 -378
  811. package/src/Collapsible/CollapsibleContext.ts +0 -7
  812. package/src/Collapsible/README.md +0 -214
  813. package/src/Collapsible/__tests__/Collapsible.asChild.test.tsx +0 -329
  814. package/src/Collapsible/__tests__/Collapsible.basic-rendering.test.tsx +0 -145
  815. package/src/Collapsible/__tests__/Collapsible.collapsedHeight.test.tsx +0 -140
  816. package/src/Collapsible/__tests__/Collapsible.controlled-state.test.tsx +0 -134
  817. package/src/Collapsible/__tests__/Collapsible.disabled.test.tsx +0 -132
  818. package/src/Collapsible/__tests__/Collapsible.error-handling.test.tsx +0 -40
  819. package/src/Collapsible/__tests__/Collapsible.forceMount.test.tsx +0 -111
  820. package/src/Collapsible/__tests__/Collapsible.triggerIcon.test.tsx +0 -93
  821. package/src/Collapsible/__tests__/Collapsible.uncontrolled-state.test.tsx +0 -125
  822. package/src/Collapsible/hooks/index.ts +0 -2
  823. package/src/Collapsible/hooks/useCollapsibleRoot.ts +0 -34
  824. package/src/Collapsible/hooks/useCollapsibleTrigger.ts +0 -51
  825. package/src/Collapsible/index.ts +0 -2
  826. package/src/Collapsible/types.ts +0 -148
  827. package/src/Combobox/Combobox.tsx +0 -508
  828. package/src/Combobox/ComboboxContext.ts +0 -23
  829. package/src/Combobox/README.md +0 -170
  830. package/src/Combobox/__tests__/Combobox.asChild.test.tsx +0 -62
  831. package/src/Combobox/__tests__/Combobox.basic-rendering.test.tsx +0 -16
  832. package/src/Combobox/__tests__/Combobox.content.test.tsx +0 -36
  833. package/src/Combobox/__tests__/Combobox.controlled-state.test.tsx +0 -88
  834. package/src/Combobox/__tests__/Combobox.empty.test.tsx +0 -42
  835. package/src/Combobox/__tests__/Combobox.ids.test.tsx +0 -66
  836. package/src/Combobox/__tests__/Combobox.item.test.tsx +0 -76
  837. package/src/Combobox/__tests__/Combobox.keyboard-interaction.test.tsx +0 -196
  838. package/src/Combobox/__tests__/Combobox.light-dismiss.test.tsx +0 -101
  839. package/src/Combobox/__tests__/Combobox.query.test.tsx +0 -105
  840. package/src/Combobox/hooks/index.ts +0 -1
  841. package/src/Combobox/hooks/useComboboxRoot.ts +0 -2
  842. package/src/Combobox/index.ts +0 -3
  843. package/src/Combobox/types.ts +0 -133
  844. package/src/ContextMenu/ContextMenu.tsx +0 -1296
  845. package/src/ContextMenu/ContextMenuContentContext.ts +0 -15
  846. package/src/ContextMenu/ContextMenuContext.ts +0 -21
  847. package/src/ContextMenu/ContextMenuGroupContext.ts +0 -8
  848. package/src/ContextMenu/ContextMenuItemIndicatorContext.ts +0 -8
  849. package/src/ContextMenu/ContextMenuRadioGroupContext.ts +0 -9
  850. package/src/ContextMenu/ContextMenuSubContext.ts +0 -15
  851. package/src/ContextMenu/README.md +0 -275
  852. package/src/ContextMenu/__tests__/ContextMenu.asChild.test.tsx +0 -186
  853. package/src/ContextMenu/__tests__/ContextMenu.basic-rendering.test.tsx +0 -39
  854. package/src/ContextMenu/__tests__/ContextMenu.checkbox-item.test.tsx +0 -168
  855. package/src/ContextMenu/__tests__/ContextMenu.error-handling.test.tsx +0 -113
  856. package/src/ContextMenu/__tests__/ContextMenu.group-label.test.tsx +0 -48
  857. package/src/ContextMenu/__tests__/ContextMenu.item-indicator.test.tsx +0 -88
  858. package/src/ContextMenu/__tests__/ContextMenu.item.test.tsx +0 -106
  859. package/src/ContextMenu/__tests__/ContextMenu.keyboard-interaction.test.tsx +0 -227
  860. package/src/ContextMenu/__tests__/ContextMenu.mouse-interaction.test.tsx +0 -268
  861. package/src/ContextMenu/__tests__/ContextMenu.radio-item.test.tsx +0 -152
  862. package/src/ContextMenu/__tests__/ContextMenu.reading-direction.test.tsx +0 -152
  863. package/src/ContextMenu/__tests__/ContextMenu.separator.test.tsx +0 -47
  864. package/src/ContextMenu/__tests__/ContextMenu.state-modes.test.tsx +0 -119
  865. package/src/ContextMenu/__tests__/ContextMenu.sub.test.tsx +0 -407
  866. package/src/ContextMenu/__tests__/ContextMenu.typeahead.test.tsx +0 -134
  867. package/src/ContextMenu/constants.ts +0 -4
  868. package/src/ContextMenu/index.ts +0 -2
  869. package/src/ContextMenu/types.ts +0 -484
  870. package/src/DirectionProvider/DirectionContext.ts +0 -21
  871. package/src/DirectionProvider/DirectionProvider.tsx +0 -69
  872. package/src/DirectionProvider/README.md +0 -62
  873. package/src/DirectionProvider/__tests__/DirectionProvider.test.tsx +0 -34
  874. package/src/DirectionProvider/index.ts +0 -3
  875. package/src/DirectionProvider/types.ts +0 -36
  876. package/src/Divider/Divider.tsx +0 -74
  877. package/src/Divider/README.md +0 -57
  878. package/src/Divider/__tests__/Divider.contract.test.tsx +0 -66
  879. package/src/Divider/__tests__/Divider.test.tsx +0 -46
  880. package/src/Divider/index.ts +0 -2
  881. package/src/Divider/types.ts +0 -17
  882. package/src/Drawer/Drawer.tsx +0 -315
  883. package/src/Drawer/README.md +0 -124
  884. package/src/Drawer/__tests__/Drawer.behavior.test.tsx +0 -100
  885. package/src/Drawer/__tests__/Drawer.focus-trap.test.tsx +0 -55
  886. package/src/Drawer/__tests__/Drawer.rendering.test.tsx +0 -111
  887. package/src/Drawer/__tests__/Drawer.side.test.tsx +0 -69
  888. package/src/Drawer/__tests__/dialog-polyfill.ts +0 -39
  889. package/src/Drawer/index.ts +0 -2
  890. package/src/Drawer/types.ts +0 -66
  891. package/src/Dropdown/Dropdown.tsx +0 -985
  892. package/src/Dropdown/DropdownContentContext.ts +0 -15
  893. package/src/Dropdown/DropdownContext.ts +0 -17
  894. package/src/Dropdown/DropdownGroupContext.ts +0 -8
  895. package/src/Dropdown/DropdownItemIndicatorContext.ts +0 -13
  896. package/src/Dropdown/DropdownRadioGroupContext.ts +0 -9
  897. package/src/Dropdown/DropdownSubContext.ts +0 -15
  898. package/src/Dropdown/README.md +0 -286
  899. package/src/Dropdown/__tests__/Dropdown.asChild.test.tsx +0 -286
  900. package/src/Dropdown/__tests__/Dropdown.basic-rendering.test.tsx +0 -43
  901. package/src/Dropdown/__tests__/Dropdown.checkbox-item.test.tsx +0 -121
  902. package/src/Dropdown/__tests__/Dropdown.disabled.test.tsx +0 -143
  903. package/src/Dropdown/__tests__/Dropdown.error-handling.test.tsx +0 -85
  904. package/src/Dropdown/__tests__/Dropdown.group-label.test.tsx +0 -68
  905. package/src/Dropdown/__tests__/Dropdown.item-indicator.test.tsx +0 -260
  906. package/src/Dropdown/__tests__/Dropdown.item.test.tsx +0 -72
  907. package/src/Dropdown/__tests__/Dropdown.keyboard-edge-cases.test.tsx +0 -77
  908. package/src/Dropdown/__tests__/Dropdown.keyboard-interaction.test.tsx +0 -310
  909. package/src/Dropdown/__tests__/Dropdown.mouse-interaction.test.tsx +0 -347
  910. package/src/Dropdown/__tests__/Dropdown.radio-item.test.tsx +0 -134
  911. package/src/Dropdown/__tests__/Dropdown.reading-direction.test.tsx +0 -153
  912. package/src/Dropdown/__tests__/Dropdown.separator.test.tsx +0 -46
  913. package/src/Dropdown/__tests__/Dropdown.state-modes.test.tsx +0 -100
  914. package/src/Dropdown/__tests__/Dropdown.sub.test.tsx +0 -185
  915. package/src/Dropdown/__tests__/Dropdown.trigger.test.tsx +0 -110
  916. package/src/Dropdown/__tests__/Dropdown.typeahead.test.tsx +0 -133
  917. package/src/Dropdown/constants.ts +0 -4
  918. package/src/Dropdown/hooks/index.ts +0 -9
  919. package/src/Dropdown/hooks/useCloseSiblingSub.ts +0 -13
  920. package/src/Dropdown/hooks/useDropdownContent.ts +0 -162
  921. package/src/Dropdown/hooks/useDropdownContext.ts +0 -1
  922. package/src/Dropdown/hooks/useDropdownGroup.ts +0 -18
  923. package/src/Dropdown/hooks/useDropdownItem.ts +0 -49
  924. package/src/Dropdown/hooks/useDropdownLabel.ts +0 -15
  925. package/src/Dropdown/hooks/useDropdownRoot.ts +0 -57
  926. package/src/Dropdown/hooks/useDropdownSubContext.ts +0 -1
  927. package/src/Dropdown/hooks/useDropdownTrigger.ts +0 -31
  928. package/src/Dropdown/index.ts +0 -2
  929. package/src/Dropdown/types.ts +0 -558
  930. package/src/EmptyState/EmptyState.tsx +0 -329
  931. package/src/EmptyState/README.md +0 -129
  932. package/src/EmptyState/__tests__/EmptyState.Actions.test.tsx +0 -37
  933. package/src/EmptyState/__tests__/EmptyState.Description.test.tsx +0 -32
  934. package/src/EmptyState/__tests__/EmptyState.Media.test.tsx +0 -34
  935. package/src/EmptyState/__tests__/EmptyState.Root.test.tsx +0 -38
  936. package/src/EmptyState/__tests__/EmptyState.Title.test.tsx +0 -28
  937. package/src/EmptyState/index.ts +0 -2
  938. package/src/EmptyState/types.ts +0 -65
  939. package/src/Field/Field.tsx +0 -276
  940. package/src/Field/FieldContext.ts +0 -22
  941. package/src/Field/README.md +0 -167
  942. package/src/Field/__tests__/Field.asChild.test.tsx +0 -83
  943. package/src/Field/__tests__/Field.basic-rendering.test.tsx +0 -115
  944. package/src/Field/__tests__/Field.contract.test.tsx +0 -91
  945. package/src/Field/__tests__/Field.error-handling.test.tsx +0 -23
  946. package/src/Field/__tests__/Field.state-cascade.test.tsx +0 -96
  947. package/src/Field/hooks/__tests__/useFieldProps.test.tsx +0 -142
  948. package/src/Field/hooks/index.ts +0 -2
  949. package/src/Field/hooks/useFieldContext.ts +0 -1
  950. package/src/Field/hooks/useFieldProps.ts +0 -57
  951. package/src/Field/index.ts +0 -2
  952. package/src/Field/types.ts +0 -85
  953. package/src/Fieldset/Fieldset.tsx +0 -156
  954. package/src/Fieldset/README.md +0 -74
  955. package/src/Fieldset/__tests__/Fieldset.basic-rendering.test.tsx +0 -90
  956. package/src/Fieldset/__tests__/Fieldset.disabled.test.tsx +0 -41
  957. package/src/Fieldset/index.ts +0 -2
  958. package/src/Fieldset/types.ts +0 -25
  959. package/src/Input/Input.tsx +0 -128
  960. package/src/Input/README.md +0 -180
  961. package/src/Input/__tests__/Input.asChild.test.tsx +0 -85
  962. package/src/Input/__tests__/Input.basic-rendering.test.tsx +0 -123
  963. package/src/Input/__tests__/Input.contract.test.tsx +0 -77
  964. package/src/Input/__tests__/Input.disabled.test.tsx +0 -49
  965. package/src/Input/__tests__/Input.field-integration.test.tsx +0 -148
  966. package/src/Input/index.ts +0 -2
  967. package/src/Input/types.ts +0 -28
  968. package/src/InputGroup/InputGroup.tsx +0 -243
  969. package/src/InputGroup/README.md +0 -178
  970. package/src/InputGroup/__tests__/InputGroup.asChild.test.tsx +0 -110
  971. package/src/InputGroup/__tests__/InputGroup.basic-rendering.test.tsx +0 -120
  972. package/src/InputGroup/__tests__/InputGroup.contract.test.tsx +0 -60
  973. package/src/InputGroup/index.ts +0 -2
  974. package/src/InputGroup/types.ts +0 -43
  975. package/src/Listbox/Listbox.tsx +0 -475
  976. package/src/Listbox/ListboxContext.ts +0 -48
  977. package/src/Listbox/README.md +0 -248
  978. package/src/Listbox/__tests__/Listbox.active-descendant.test.tsx +0 -128
  979. package/src/Listbox/__tests__/Listbox.asChild.test.tsx +0 -91
  980. package/src/Listbox/__tests__/Listbox.basic-rendering.test.tsx +0 -16
  981. package/src/Listbox/__tests__/Listbox.controlled-state.test.tsx +0 -114
  982. package/src/Listbox/__tests__/Listbox.disabled.test.tsx +0 -90
  983. package/src/Listbox/__tests__/Listbox.fixtures.ts +0 -27
  984. package/src/Listbox/__tests__/Listbox.group-label.test.tsx +0 -97
  985. package/src/Listbox/__tests__/Listbox.group.test.tsx +0 -45
  986. package/src/Listbox/__tests__/Listbox.keyboard-edge-cases.test.tsx +0 -144
  987. package/src/Listbox/__tests__/Listbox.keyboard-interaction.test.tsx +0 -112
  988. package/src/Listbox/__tests__/Listbox.modifier-keys.test.tsx +0 -86
  989. package/src/Listbox/__tests__/Listbox.multi-select-keyboard.test.tsx +0 -368
  990. package/src/Listbox/__tests__/Listbox.multiple-mode.test.tsx +0 -91
  991. package/src/Listbox/__tests__/Listbox.mutation-hardening.test.tsx +0 -480
  992. package/src/Listbox/__tests__/Listbox.orientation.test.tsx +0 -59
  993. package/src/Listbox/__tests__/Listbox.reading-direction.test.tsx +0 -65
  994. package/src/Listbox/__tests__/Listbox.reorder.test.tsx +0 -78
  995. package/src/Listbox/__tests__/Listbox.selection-follows-focus.test.tsx +0 -64
  996. package/src/Listbox/__tests__/Listbox.strict-context.test.tsx +0 -21
  997. package/src/Listbox/__tests__/Listbox.typeahead.test.tsx +0 -123
  998. package/src/Listbox/__tests__/Listbox.uncontrolled-state.test.tsx +0 -48
  999. package/src/Listbox/constants.ts +0 -2
  1000. package/src/Listbox/hooks/index.ts +0 -1
  1001. package/src/Listbox/hooks/useListboxRoot.ts +0 -407
  1002. package/src/Listbox/index.ts +0 -3
  1003. package/src/Listbox/types.ts +0 -238
  1004. package/src/MillerColumns/MillerColumns.tsx +0 -490
  1005. package/src/MillerColumns/MillerColumnsContext.ts +0 -25
  1006. package/src/MillerColumns/README.md +0 -348
  1007. package/src/MillerColumns/__tests__/MillerColumns.aria.test.tsx +0 -127
  1008. package/src/MillerColumns/__tests__/MillerColumns.asChild.test.tsx +0 -106
  1009. package/src/MillerColumns/__tests__/MillerColumns.auto-scroll.test.tsx +0 -70
  1010. package/src/MillerColumns/__tests__/MillerColumns.basic-rendering.test.tsx +0 -67
  1011. package/src/MillerColumns/__tests__/MillerColumns.column-projection.test.tsx +0 -161
  1012. package/src/MillerColumns/__tests__/MillerColumns.controlled-state.test.tsx +0 -90
  1013. package/src/MillerColumns/__tests__/MillerColumns.data-attributes.test.tsx +0 -125
  1014. package/src/MillerColumns/__tests__/MillerColumns.disabled-items.test.tsx +0 -65
  1015. package/src/MillerColumns/__tests__/MillerColumns.error-handling.test.tsx +0 -57
  1016. package/src/MillerColumns/__tests__/MillerColumns.fixtures.ts +0 -15
  1017. package/src/MillerColumns/__tests__/MillerColumns.item-indicator.test.tsx +0 -57
  1018. package/src/MillerColumns/__tests__/MillerColumns.keyboard-interaction.test.tsx +0 -214
  1019. package/src/MillerColumns/__tests__/MillerColumns.keyboard-selection-state.test.tsx +0 -96
  1020. package/src/MillerColumns/__tests__/MillerColumns.preview-panel.test.tsx +0 -72
  1021. package/src/MillerColumns/__tests__/MillerColumns.preview-visibility.test.tsx +0 -79
  1022. package/src/MillerColumns/__tests__/MillerColumns.resize.test.tsx +0 -326
  1023. package/src/MillerColumns/__tests__/MillerColumns.roving-tabindex.test.tsx +0 -91
  1024. package/src/MillerColumns/__tests__/MillerColumns.selection.test.tsx +0 -54
  1025. package/src/MillerColumns/__tests__/MillerColumns.styled-parts.test.tsx +0 -143
  1026. package/src/MillerColumns/__tests__/MillerColumns.typeahead.test.tsx +0 -104
  1027. package/src/MillerColumns/__tests__/MillerColumns.uncontrolled-state.test.tsx +0 -70
  1028. package/src/MillerColumns/constants.ts +0 -2
  1029. package/src/MillerColumns/hooks/index.ts +0 -7
  1030. package/src/MillerColumns/hooks/useMillerColumnsColumn.ts +0 -26
  1031. package/src/MillerColumns/hooks/useMillerColumnsColumnContext.ts +0 -1
  1032. package/src/MillerColumns/hooks/useMillerColumnsContext.ts +0 -1
  1033. package/src/MillerColumns/hooks/useMillerColumnsItem.ts +0 -179
  1034. package/src/MillerColumns/hooks/useMillerColumnsItemContext.ts +0 -1
  1035. package/src/MillerColumns/hooks/useMillerColumnsResizeHandle.ts +0 -146
  1036. package/src/MillerColumns/hooks/useMillerColumnsRoot.ts +0 -0
  1037. package/src/MillerColumns/index.ts +0 -7
  1038. package/src/MillerColumns/types.ts +0 -252
  1039. package/src/MillerColumns/useMillerColumnsSelection.ts +0 -31
  1040. package/src/MillerColumns/utils.ts +0 -141
  1041. package/src/Modal/Modal.tsx +0 -515
  1042. package/src/Modal/ModalContext.ts +0 -20
  1043. package/src/Modal/README.md +0 -222
  1044. package/src/Modal/__tests__/Modal.accessibility.test.tsx +0 -167
  1045. package/src/Modal/__tests__/Modal.asChild.test.tsx +0 -162
  1046. package/src/Modal/__tests__/Modal.click-outside.test.tsx +0 -115
  1047. package/src/Modal/__tests__/Modal.content.test.tsx +0 -193
  1048. package/src/Modal/__tests__/Modal.controlled-state.test.tsx +0 -120
  1049. package/src/Modal/__tests__/Modal.error-handling.test.tsx +0 -30
  1050. package/src/Modal/__tests__/Modal.escape-hatches.test.tsx +0 -99
  1051. package/src/Modal/__tests__/Modal.focus-trap.test.tsx +0 -162
  1052. package/src/Modal/__tests__/Modal.imperative-api.test.tsx +0 -119
  1053. package/src/Modal/__tests__/Modal.nested.test.tsx +0 -106
  1054. package/src/Modal/__tests__/Modal.overlay.test.tsx +0 -99
  1055. package/src/Modal/__tests__/Modal.portal.test.tsx +0 -90
  1056. package/src/Modal/__tests__/Modal.presence.test.tsx +0 -111
  1057. package/src/Modal/__tests__/Modal.trigger.test.tsx +0 -70
  1058. package/src/Modal/__tests__/Modal.uncontrolled-state.test.tsx +0 -72
  1059. package/src/Modal/__tests__/dialog-polyfill.ts +0 -40
  1060. package/src/Modal/hooks/index.ts +0 -4
  1061. package/src/Modal/hooks/useModalContent.ts +0 -94
  1062. package/src/Modal/hooks/useModalContext.ts +0 -1
  1063. package/src/Modal/hooks/useModalRoot.ts +0 -81
  1064. package/src/Modal/hooks/useModalTrigger.ts +0 -25
  1065. package/src/Modal/index.ts +0 -3
  1066. package/src/Modal/types.ts +0 -206
  1067. package/src/NavigationMenu/NavigationMenu.tsx +0 -890
  1068. package/src/NavigationMenu/NavigationMenuContext.ts +0 -67
  1069. package/src/NavigationMenu/README.md +0 -355
  1070. package/src/NavigationMenu/__tests__/NavigationMenu.anchor-positioning.test.tsx +0 -132
  1071. package/src/NavigationMenu/__tests__/NavigationMenu.asChild.test.tsx +0 -73
  1072. package/src/NavigationMenu/__tests__/NavigationMenu.basic-rendering.test.tsx +0 -92
  1073. package/src/NavigationMenu/__tests__/NavigationMenu.contract.test.tsx +0 -45
  1074. package/src/NavigationMenu/__tests__/NavigationMenu.controlled-state.test.tsx +0 -134
  1075. package/src/NavigationMenu/__tests__/NavigationMenu.error-handling.test.tsx +0 -62
  1076. package/src/NavigationMenu/__tests__/NavigationMenu.fixtures.tsx +0 -79
  1077. package/src/NavigationMenu/__tests__/NavigationMenu.forceMount.test.tsx +0 -52
  1078. package/src/NavigationMenu/__tests__/NavigationMenu.hover-interaction.test.tsx +0 -254
  1079. package/src/NavigationMenu/__tests__/NavigationMenu.indicator.test.tsx +0 -252
  1080. package/src/NavigationMenu/__tests__/NavigationMenu.keyboard-interaction.test.tsx +0 -294
  1081. package/src/NavigationMenu/__tests__/NavigationMenu.keyboard-navigation.test.tsx +0 -126
  1082. package/src/NavigationMenu/__tests__/NavigationMenu.link.test.tsx +0 -139
  1083. package/src/NavigationMenu/__tests__/NavigationMenu.motion.test.tsx +0 -568
  1084. package/src/NavigationMenu/__tests__/NavigationMenu.mouse-interaction.test.tsx +0 -76
  1085. package/src/NavigationMenu/__tests__/NavigationMenu.uncontrolled-state.test.tsx +0 -30
  1086. package/src/NavigationMenu/__tests__/NavigationMenu.viewport.test.tsx +0 -113
  1087. package/src/NavigationMenu/constants.ts +0 -5
  1088. package/src/NavigationMenu/hooks/index.ts +0 -7
  1089. package/src/NavigationMenu/hooks/useNavigationMenuEntry.ts +0 -33
  1090. package/src/NavigationMenu/hooks/useNavigationMenuIndicator.ts +0 -70
  1091. package/src/NavigationMenu/hooks/useNavigationMenuLink.ts +0 -72
  1092. package/src/NavigationMenu/hooks/useNavigationMenuRoot.ts +0 -301
  1093. package/src/NavigationMenu/hooks/useNavigationMenuTopLevelEntry.ts +0 -65
  1094. package/src/NavigationMenu/hooks/useNavigationMenuTrigger.ts +0 -158
  1095. package/src/NavigationMenu/hooks/useNavigationMenuViewport.ts +0 -101
  1096. package/src/NavigationMenu/index.ts +0 -3
  1097. package/src/NavigationMenu/types.ts +0 -259
  1098. package/src/NavigationMenu/utils.ts +0 -89
  1099. package/src/Popover/Popover.tsx +0 -427
  1100. package/src/Popover/PopoverContext.ts +0 -13
  1101. package/src/Popover/README.md +0 -106
  1102. package/src/Popover/__tests__/Popover.anchor.test.tsx +0 -38
  1103. package/src/Popover/__tests__/Popover.asChild.test.tsx +0 -160
  1104. package/src/Popover/__tests__/Popover.basic-rendering.test.tsx +0 -106
  1105. package/src/Popover/__tests__/Popover.click-outside.test.tsx +0 -149
  1106. package/src/Popover/__tests__/Popover.close.test.tsx +0 -70
  1107. package/src/Popover/__tests__/Popover.content.test.tsx +0 -58
  1108. package/src/Popover/__tests__/Popover.controlled-state.test.tsx +0 -45
  1109. package/src/Popover/__tests__/Popover.error-handling.test.tsx +0 -51
  1110. package/src/Popover/__tests__/Popover.focus.test.tsx +0 -43
  1111. package/src/Popover/__tests__/Popover.keyboard-interaction.test.tsx +0 -71
  1112. package/src/Popover/__tests__/Popover.mouse-interaction.test.tsx +0 -69
  1113. package/src/Popover/__tests__/Popover.uncontrolled-state.test.tsx +0 -44
  1114. package/src/Popover/hooks/index.ts +0 -3
  1115. package/src/Popover/hooks/usePopoverContent.ts +0 -98
  1116. package/src/Popover/hooks/usePopoverRoot.ts +0 -84
  1117. package/src/Popover/hooks/usePopoverTrigger.ts +0 -33
  1118. package/src/Popover/index.ts +0 -2
  1119. package/src/Popover/types.ts +0 -197
  1120. package/src/Portal/Portal.tsx +0 -70
  1121. package/src/Portal/README.md +0 -70
  1122. package/src/Portal/__tests__/Portal.basic-rendering.test.tsx +0 -22
  1123. package/src/Portal/index.ts +0 -2
  1124. package/src/Portal/types.ts +0 -15
  1125. package/src/Progress/Progress.tsx +0 -215
  1126. package/src/Progress/ProgressContext.ts +0 -27
  1127. package/src/Progress/README.md +0 -112
  1128. package/src/Progress/__tests__/Progress.asChild.test.tsx +0 -37
  1129. package/src/Progress/__tests__/Progress.basic-rendering.test.tsx +0 -75
  1130. package/src/Progress/__tests__/Progress.error-handling.test.tsx +0 -40
  1131. package/src/Progress/__tests__/Progress.fixtures.ts +0 -7
  1132. package/src/Progress/__tests__/Progress.value.test.tsx +0 -104
  1133. package/src/Progress/hooks/index.ts +0 -2
  1134. package/src/Progress/hooks/useProgressContext.ts +0 -1
  1135. package/src/Progress/hooks/useProgressRoot.ts +0 -45
  1136. package/src/Progress/index.ts +0 -3
  1137. package/src/Progress/types.ts +0 -59
  1138. package/src/Radio/README.md +0 -160
  1139. package/src/Radio/Radio.tsx +0 -210
  1140. package/src/Radio/RadioContext.ts +0 -19
  1141. package/src/Radio/__tests__/Radio.basic-rendering.test.tsx +0 -80
  1142. package/src/Radio/__tests__/Radio.contract.test.tsx +0 -106
  1143. package/src/Radio/__tests__/Radio.controlled-state.test.tsx +0 -79
  1144. package/src/Radio/__tests__/Radio.disabled.test.tsx +0 -48
  1145. package/src/Radio/__tests__/Radio.native-grouping.test.tsx +0 -77
  1146. package/src/Radio/__tests__/Radio.parts.test.tsx +0 -76
  1147. package/src/Radio/__tests__/Radio.uncontrolled-state.test.tsx +0 -96
  1148. package/src/Radio/hooks/index.ts +0 -2
  1149. package/src/Radio/hooks/useRadioContext.ts +0 -1
  1150. package/src/Radio/hooks/useRadioRoot.ts +0 -51
  1151. package/src/Radio/index.ts +0 -2
  1152. package/src/Radio/types.ts +0 -90
  1153. package/src/RadioCard/README.md +0 -134
  1154. package/src/RadioCard/RadioCard.tsx +0 -354
  1155. package/src/RadioCard/RadioCardContext.ts +0 -35
  1156. package/src/RadioCard/RadioCardItemContext.ts +0 -23
  1157. package/src/RadioCard/__tests__/RadioCard.asChild.test.tsx +0 -76
  1158. package/src/RadioCard/__tests__/RadioCard.basic-rendering.test.tsx +0 -95
  1159. package/src/RadioCard/__tests__/RadioCard.controlled-state.test.tsx +0 -107
  1160. package/src/RadioCard/__tests__/RadioCard.disabled-items.test.tsx +0 -111
  1161. package/src/RadioCard/__tests__/RadioCard.error-handling.test.tsx +0 -35
  1162. package/src/RadioCard/__tests__/RadioCard.indicator.test.tsx +0 -119
  1163. package/src/RadioCard/__tests__/RadioCard.keyboard-interaction.test.tsx +0 -211
  1164. package/src/RadioCard/__tests__/RadioCard.orientation.test.tsx +0 -90
  1165. package/src/RadioCard/__tests__/RadioCard.reading-direction.test.tsx +0 -65
  1166. package/src/RadioCard/__tests__/RadioCard.ref-forwarding.test.tsx +0 -54
  1167. package/src/RadioCard/__tests__/RadioCard.uncontrolled-state.test.tsx +0 -129
  1168. package/src/RadioCard/hooks/index.ts +0 -3
  1169. package/src/RadioCard/hooks/useRadioCardContext.ts +0 -1
  1170. package/src/RadioCard/hooks/useRadioCardItemContext.ts +0 -1
  1171. package/src/RadioCard/hooks/useRadioCardRoot.ts +0 -88
  1172. package/src/RadioCard/index.ts +0 -4
  1173. package/src/RadioCard/types.ts +0 -145
  1174. package/src/RadioGroup/README.md +0 -185
  1175. package/src/RadioGroup/RadioGroup.tsx +0 -370
  1176. package/src/RadioGroup/RadioGroupContext.ts +0 -23
  1177. package/src/RadioGroup/RadioGroupItemContext.ts +0 -10
  1178. package/src/RadioGroup/__tests__/RadioGroup.asChild.test.tsx +0 -105
  1179. package/src/RadioGroup/__tests__/RadioGroup.basic-rendering.test.tsx +0 -80
  1180. package/src/RadioGroup/__tests__/RadioGroup.controlled-state.test.tsx +0 -109
  1181. package/src/RadioGroup/__tests__/RadioGroup.disabled-keydown-guards.test.tsx +0 -68
  1182. package/src/RadioGroup/__tests__/RadioGroup.disabled.test.tsx +0 -106
  1183. package/src/RadioGroup/__tests__/RadioGroup.error-handling.test.tsx +0 -33
  1184. package/src/RadioGroup/__tests__/RadioGroup.indicator.test.tsx +0 -85
  1185. package/src/RadioGroup/__tests__/RadioGroup.keyboard-interaction.test.tsx +0 -135
  1186. package/src/RadioGroup/__tests__/RadioGroup.orientation.test.tsx +0 -90
  1187. package/src/RadioGroup/__tests__/RadioGroup.reading-direction.test.tsx +0 -65
  1188. package/src/RadioGroup/__tests__/RadioGroup.ref-forwarding.test.tsx +0 -74
  1189. package/src/RadioGroup/__tests__/RadioGroup.roving-tabindex.test.tsx +0 -136
  1190. package/src/RadioGroup/__tests__/RadioGroup.uncontrolled-state.test.tsx +0 -96
  1191. package/src/RadioGroup/hooks/index.ts +0 -3
  1192. package/src/RadioGroup/hooks/useRadioGroupContext.ts +0 -1
  1193. package/src/RadioGroup/hooks/useRadioGroupItemContext.ts +0 -1
  1194. package/src/RadioGroup/hooks/useRadioGroupRoot.ts +0 -98
  1195. package/src/RadioGroup/index.ts +0 -2
  1196. package/src/RadioGroup/types.ts +0 -146
  1197. package/src/SegmentedControl/README.md +0 -154
  1198. package/src/SegmentedControl/SegmentedControl.tsx +0 -309
  1199. package/src/SegmentedControl/SegmentedControlContext.ts +0 -28
  1200. package/src/SegmentedControl/__tests__/SegmentedControl.asChild.test.tsx +0 -50
  1201. package/src/SegmentedControl/__tests__/SegmentedControl.basic-rendering.test.tsx +0 -100
  1202. package/src/SegmentedControl/__tests__/SegmentedControl.controlled-state.test.tsx +0 -107
  1203. package/src/SegmentedControl/__tests__/SegmentedControl.disabled-keydown-guards.test.tsx +0 -62
  1204. package/src/SegmentedControl/__tests__/SegmentedControl.disabled.test.tsx +0 -151
  1205. package/src/SegmentedControl/__tests__/SegmentedControl.error-handling.test.tsx +0 -17
  1206. package/src/SegmentedControl/__tests__/SegmentedControl.keyboard-interaction.test.tsx +0 -117
  1207. package/src/SegmentedControl/__tests__/SegmentedControl.orientation.test.tsx +0 -54
  1208. package/src/SegmentedControl/__tests__/SegmentedControl.reading-direction.test.tsx +0 -56
  1209. package/src/SegmentedControl/__tests__/SegmentedControl.ref-forwarding.test.tsx +0 -45
  1210. package/src/SegmentedControl/__tests__/SegmentedControl.roving-tabindex.test.tsx +0 -104
  1211. package/src/SegmentedControl/__tests__/SegmentedControl.uncontrolled-state.test.tsx +0 -94
  1212. package/src/SegmentedControl/hooks/index.ts +0 -2
  1213. package/src/SegmentedControl/hooks/useSegmentedControlContext.ts +0 -1
  1214. package/src/SegmentedControl/hooks/useSegmentedControlRoot.ts +0 -87
  1215. package/src/SegmentedControl/index.ts +0 -2
  1216. package/src/SegmentedControl/types.ts +0 -138
  1217. package/src/Select/README.md +0 -168
  1218. package/src/Select/Select.tsx +0 -746
  1219. package/src/Select/SelectContext.ts +0 -38
  1220. package/src/Select/SelectItemIndicatorContext.ts +0 -29
  1221. package/src/Select/__tests__/Select.asChild.test.tsx +0 -36
  1222. package/src/Select/__tests__/Select.basic-rendering.test.tsx +0 -36
  1223. package/src/Select/__tests__/Select.controlled-state.test.tsx +0 -69
  1224. package/src/Select/__tests__/Select.data-attributes.test.tsx +0 -29
  1225. package/src/Select/__tests__/Select.field-integration.test.tsx +0 -150
  1226. package/src/Select/__tests__/Select.form.test.tsx +0 -38
  1227. package/src/Select/__tests__/Select.group.test.tsx +0 -42
  1228. package/src/Select/__tests__/Select.keyboard-edge.test.tsx +0 -95
  1229. package/src/Select/__tests__/Select.keyboard.test.tsx +0 -124
  1230. package/src/Select/__tests__/Select.mutation-hardening.test.tsx +0 -317
  1231. package/src/Select/__tests__/Select.native-item.test.tsx +0 -30
  1232. package/src/Select/__tests__/Select.open-close.test.tsx +0 -57
  1233. package/src/Select/__tests__/Select.placeholder.test.tsx +0 -50
  1234. package/src/Select/__tests__/Select.rich-asChild.test.tsx +0 -60
  1235. package/src/Select/__tests__/Select.rich-mode.test.tsx +0 -16
  1236. package/src/Select/__tests__/Select.selection.test.tsx +0 -104
  1237. package/src/Select/__tests__/Select.separator.test.tsx +0 -71
  1238. package/src/Select/__tests__/Select.strict-context.test.tsx +0 -36
  1239. package/src/Select/__tests__/Select.typeahead.test.tsx +0 -156
  1240. package/src/Select/__tests__/Select.value-mirror.test.tsx +0 -240
  1241. package/src/Select/constants.ts +0 -8
  1242. package/src/Select/hooks/index.ts +0 -2
  1243. package/src/Select/hooks/useSelectContent.ts +0 -149
  1244. package/src/Select/hooks/useSelectRoot.ts +0 -149
  1245. package/src/Select/index.ts +0 -2
  1246. package/src/Select/types.ts +0 -272
  1247. package/src/SkipNav/README.md +0 -87
  1248. package/src/SkipNav/SkipNav.tsx +0 -161
  1249. package/src/SkipNav/__tests__/SkipNav.basic-rendering.test.tsx +0 -29
  1250. package/src/SkipNav/__tests__/SkipNav.ids.test.tsx +0 -19
  1251. package/src/SkipNav/index.ts +0 -1
  1252. package/src/SkipNav/types.ts +0 -34
  1253. package/src/Slider/README.md +0 -245
  1254. package/src/Slider/Slider.tsx +0 -361
  1255. package/src/Slider/SliderContext.ts +0 -58
  1256. package/src/Slider/__tests__/Slider.asChild.test.tsx +0 -119
  1257. package/src/Slider/__tests__/Slider.basic-rendering.test.tsx +0 -157
  1258. package/src/Slider/__tests__/Slider.controlled-state.test.tsx +0 -78
  1259. package/src/Slider/__tests__/Slider.disabled.test.tsx +0 -82
  1260. package/src/Slider/__tests__/Slider.error-handling.test.tsx +0 -45
  1261. package/src/Slider/__tests__/Slider.fixtures.ts +0 -53
  1262. package/src/Slider/__tests__/Slider.form.test.tsx +0 -67
  1263. package/src/Slider/__tests__/Slider.inverted.test.tsx +0 -112
  1264. package/src/Slider/__tests__/Slider.keyboard-interaction.test.tsx +0 -118
  1265. package/src/Slider/__tests__/Slider.multiple-thumbs.test.tsx +0 -84
  1266. package/src/Slider/__tests__/Slider.orientation.test.tsx +0 -101
  1267. package/src/Slider/__tests__/Slider.pointer-interaction.test.tsx +0 -205
  1268. package/src/Slider/__tests__/Slider.reading-direction.test.tsx +0 -99
  1269. package/src/Slider/__tests__/Slider.uncontrolled-state.test.tsx +0 -69
  1270. package/src/Slider/__tests__/Slider.value-commit.test.tsx +0 -103
  1271. package/src/Slider/hooks/index.ts +0 -3
  1272. package/src/Slider/hooks/useSliderContext.ts +0 -1
  1273. package/src/Slider/hooks/useSliderRoot.ts +0 -197
  1274. package/src/Slider/hooks/useSliderThumb.ts +0 -77
  1275. package/src/Slider/index.ts +0 -3
  1276. package/src/Slider/types.ts +0 -205
  1277. package/src/Slider/utils.ts +0 -155
  1278. package/src/Slot/Slot.tsx +0 -238
  1279. package/src/Slot/__tests__/Slot.test.tsx +0 -273
  1280. package/src/Slot/__tests__/composeEventHandlers.test.ts +0 -74
  1281. package/src/Slot/composeEventHandlers.ts +0 -62
  1282. package/src/Slot/index.ts +0 -3
  1283. package/src/Slot/types.ts +0 -21
  1284. package/src/SplitButton/README.md +0 -225
  1285. package/src/SplitButton/SplitButton.tsx +0 -457
  1286. package/src/SplitButton/SplitButtonContext.ts +0 -26
  1287. package/src/SplitButton/__tests__/SplitButton.accessibility.test.tsx +0 -55
  1288. package/src/SplitButton/__tests__/SplitButton.asChild.test.tsx +0 -51
  1289. package/src/SplitButton/__tests__/SplitButton.basic-rendering.test.tsx +0 -57
  1290. package/src/SplitButton/__tests__/SplitButton.data-attributes.test.tsx +0 -28
  1291. package/src/SplitButton/__tests__/SplitButton.disabled.test.tsx +0 -79
  1292. package/src/SplitButton/__tests__/SplitButton.error-handling.test.tsx +0 -29
  1293. package/src/SplitButton/__tests__/SplitButton.keyboard-interaction.test.tsx +0 -56
  1294. package/src/SplitButton/__tests__/SplitButton.state-modes.test.tsx +0 -68
  1295. package/src/SplitButton/index.ts +0 -2
  1296. package/src/SplitButton/types.ts +0 -186
  1297. package/src/Status/README.md +0 -50
  1298. package/src/Status/Status.tsx +0 -72
  1299. package/src/Status/__tests__/Status.test.tsx +0 -33
  1300. package/src/Status/index.ts +0 -2
  1301. package/src/Status/types.ts +0 -20
  1302. package/src/Switch/README.md +0 -126
  1303. package/src/Switch/Switch.tsx +0 -203
  1304. package/src/Switch/SwitchContext.ts +0 -20
  1305. package/src/Switch/__tests__/Switch.asChild.test.tsx +0 -38
  1306. package/src/Switch/__tests__/Switch.basic-rendering.test.tsx +0 -102
  1307. package/src/Switch/__tests__/Switch.contract.test.tsx +0 -114
  1308. package/src/Switch/__tests__/Switch.controlled-state.test.tsx +0 -77
  1309. package/src/Switch/__tests__/Switch.disabled.test.tsx +0 -55
  1310. package/src/Switch/__tests__/Switch.error-handling.test.tsx +0 -20
  1311. package/src/Switch/__tests__/Switch.form.test.tsx +0 -55
  1312. package/src/Switch/__tests__/Switch.keyboard-interaction.test.tsx +0 -56
  1313. package/src/Switch/__tests__/Switch.recipe.test.ts +0 -19
  1314. package/src/Switch/__tests__/Switch.thumb.test.tsx +0 -84
  1315. package/src/Switch/__tests__/Switch.uncontrolled-state.test.tsx +0 -118
  1316. package/src/Switch/hooks/index.ts +0 -2
  1317. package/src/Switch/hooks/useSwitchContext.ts +0 -1
  1318. package/src/Switch/hooks/useSwitchRoot.ts +0 -49
  1319. package/src/Switch/index.ts +0 -3
  1320. package/src/Switch/types.ts +0 -95
  1321. package/src/Table/README.md +0 -307
  1322. package/src/Table/Table.tsx +0 -636
  1323. package/src/Table/TableExpandableContext.ts +0 -7
  1324. package/src/Table/__tests__/Table.Body.test.tsx +0 -61
  1325. package/src/Table/__tests__/Table.Caption.test.tsx +0 -70
  1326. package/src/Table/__tests__/Table.Cell.test.tsx +0 -73
  1327. package/src/Table/__tests__/Table.DetailRow.test.tsx +0 -83
  1328. package/src/Table/__tests__/Table.ExpandTrigger.test.tsx +0 -102
  1329. package/src/Table/__tests__/Table.Expandable.test.tsx +0 -121
  1330. package/src/Table/__tests__/Table.Footer.test.tsx +0 -61
  1331. package/src/Table/__tests__/Table.Head.test.tsx +0 -61
  1332. package/src/Table/__tests__/Table.Header.test.tsx +0 -73
  1333. package/src/Table/__tests__/Table.Root.test.tsx +0 -49
  1334. package/src/Table/__tests__/Table.Row.test.tsx +0 -67
  1335. package/src/Table/__tests__/Table.ScrollArea.test.tsx +0 -83
  1336. package/src/Table/__tests__/Table.contract.test.tsx +0 -80
  1337. package/src/Table/index.ts +0 -2
  1338. package/src/Table/types.ts +0 -237
  1339. package/src/Tabs/README.md +0 -111
  1340. package/src/Tabs/Tabs.tsx +0 -465
  1341. package/src/Tabs/TabsContext.ts +0 -21
  1342. package/src/Tabs/__tests__/Tabs.activation-mode.test.tsx +0 -172
  1343. package/src/Tabs/__tests__/Tabs.asChild.test.tsx +0 -91
  1344. package/src/Tabs/__tests__/Tabs.basic-rendering.test.tsx +0 -498
  1345. package/src/Tabs/__tests__/Tabs.change-event-callbacks.test.tsx +0 -157
  1346. package/src/Tabs/__tests__/Tabs.contract.test.tsx +0 -153
  1347. package/src/Tabs/__tests__/Tabs.controlled-state.test.tsx +0 -152
  1348. package/src/Tabs/__tests__/Tabs.disabled-tabs.test.tsx +0 -239
  1349. package/src/Tabs/__tests__/Tabs.error-handling.test.tsx +0 -82
  1350. package/src/Tabs/__tests__/Tabs.fixtures.ts +0 -171
  1351. package/src/Tabs/__tests__/Tabs.imperative-api.test.tsx +0 -118
  1352. package/src/Tabs/__tests__/Tabs.keyboard-interaction.test.tsx +0 -192
  1353. package/src/Tabs/__tests__/Tabs.lazy-mount.test.tsx +0 -78
  1354. package/src/Tabs/__tests__/Tabs.mouse-interaction.test.tsx +0 -216
  1355. package/src/Tabs/__tests__/Tabs.reading-direction.test.tsx +0 -58
  1356. package/src/Tabs/__tests__/Tabs.uncontrolled-state.test.tsx +0 -197
  1357. package/src/Tabs/hooks/index.ts +0 -4
  1358. package/src/Tabs/hooks/useTabsContent.ts +0 -32
  1359. package/src/Tabs/hooks/useTabsContext.ts +0 -1
  1360. package/src/Tabs/hooks/useTabsRoot.ts +0 -172
  1361. package/src/Tabs/hooks/useTabsTrigger.ts +0 -116
  1362. package/src/Tabs/index.ts +0 -3
  1363. package/src/Tabs/types.ts +0 -166
  1364. package/src/Tabs/utils.ts +0 -8
  1365. package/src/Textarea/README.md +0 -98
  1366. package/src/Textarea/Textarea.tsx +0 -104
  1367. package/src/Textarea/__tests__/Textarea.asChild.test.tsx +0 -85
  1368. package/src/Textarea/__tests__/Textarea.basic-rendering.test.tsx +0 -112
  1369. package/src/Textarea/__tests__/Textarea.disabled.test.tsx +0 -49
  1370. package/src/Textarea/__tests__/Textarea.field-integration.test.tsx +0 -134
  1371. package/src/Textarea/index.ts +0 -2
  1372. package/src/Textarea/types.ts +0 -28
  1373. package/src/Toggle/README.md +0 -97
  1374. package/src/Toggle/Toggle.tsx +0 -126
  1375. package/src/Toggle/__tests__/Toggle.asChild.test.tsx +0 -42
  1376. package/src/Toggle/__tests__/Toggle.basic-rendering.test.tsx +0 -33
  1377. package/src/Toggle/__tests__/Toggle.controlled-state.test.tsx +0 -60
  1378. package/src/Toggle/__tests__/Toggle.disabled.test.tsx +0 -34
  1379. package/src/Toggle/__tests__/Toggle.keyboard-interaction.test.tsx +0 -42
  1380. package/src/Toggle/__tests__/Toggle.uncontrolled-state.test.tsx +0 -40
  1381. package/src/Toggle/index.ts +0 -2
  1382. package/src/Toggle/types.ts +0 -77
  1383. package/src/ToggleGroup/README.md +0 -137
  1384. package/src/ToggleGroup/ToggleGroup.tsx +0 -321
  1385. package/src/ToggleGroup/ToggleGroupContext.ts +0 -9
  1386. package/src/ToggleGroup/__tests__/ToggleGroup.asChild.test.tsx +0 -85
  1387. package/src/ToggleGroup/__tests__/ToggleGroup.basic-rendering.test.tsx +0 -59
  1388. package/src/ToggleGroup/__tests__/ToggleGroup.disabled.test.tsx +0 -54
  1389. package/src/ToggleGroup/__tests__/ToggleGroup.dynamic-items.test.tsx +0 -70
  1390. package/src/ToggleGroup/__tests__/ToggleGroup.error-handling.test.tsx +0 -23
  1391. package/src/ToggleGroup/__tests__/ToggleGroup.keyboard-interaction.test.tsx +0 -173
  1392. package/src/ToggleGroup/__tests__/ToggleGroup.multiple-mode.test.tsx +0 -144
  1393. package/src/ToggleGroup/__tests__/ToggleGroup.reading-direction.test.tsx +0 -28
  1394. package/src/ToggleGroup/__tests__/ToggleGroup.ref-forwarding.test.tsx +0 -58
  1395. package/src/ToggleGroup/__tests__/ToggleGroup.single-mode.test.tsx +0 -139
  1396. package/src/ToggleGroup/hooks/index.ts +0 -2
  1397. package/src/ToggleGroup/hooks/useToggleGroupContext.ts +0 -1
  1398. package/src/ToggleGroup/hooks/useToggleGroupRoot.ts +0 -130
  1399. package/src/ToggleGroup/index.ts +0 -2
  1400. package/src/ToggleGroup/types.ts +0 -165
  1401. package/src/Tooltip/README.md +0 -214
  1402. package/src/Tooltip/Tooltip.tsx +0 -369
  1403. package/src/Tooltip/TooltipContext.ts +0 -20
  1404. package/src/Tooltip/__tests__/Tooltip.asChild.test.tsx +0 -77
  1405. package/src/Tooltip/__tests__/Tooltip.basic-rendering.test.tsx +0 -230
  1406. package/src/Tooltip/__tests__/Tooltip.controlled-state.test.tsx +0 -128
  1407. package/src/Tooltip/__tests__/Tooltip.error-handling.test.tsx +0 -37
  1408. package/src/Tooltip/__tests__/Tooltip.escape-hatches.test.tsx +0 -146
  1409. package/src/Tooltip/__tests__/Tooltip.focus-interaction.test.tsx +0 -88
  1410. package/src/Tooltip/__tests__/Tooltip.hover-interaction.test.tsx +0 -179
  1411. package/src/Tooltip/__tests__/Tooltip.keyboard-interaction.test.tsx +0 -219
  1412. package/src/Tooltip/__tests__/Tooltip.skip-delay.test.tsx +0 -232
  1413. package/src/Tooltip/__tests__/Tooltip.timer-coordination.test.tsx +0 -223
  1414. package/src/Tooltip/__tests__/Tooltip.uncontrolled-state.test.tsx +0 -67
  1415. package/src/Tooltip/hooks/__tests__/useTooltipProvider.test.tsx +0 -40
  1416. package/src/Tooltip/hooks/index.ts +0 -4
  1417. package/src/Tooltip/hooks/useTooltipContent.ts +0 -56
  1418. package/src/Tooltip/hooks/useTooltipProvider.ts +0 -79
  1419. package/src/Tooltip/hooks/useTooltipRoot.ts +0 -130
  1420. package/src/Tooltip/hooks/useTooltipTrigger.ts +0 -44
  1421. package/src/Tooltip/index.ts +0 -2
  1422. package/src/Tooltip/types.ts +0 -193
  1423. package/src/Tree/README.md +0 -403
  1424. package/src/Tree/Tree.tsx +0 -771
  1425. package/src/Tree/TreeContext.ts +0 -24
  1426. package/src/Tree/__tests__/Tree.aria.test.tsx +0 -53
  1427. package/src/Tree/__tests__/Tree.asChild.test.tsx +0 -134
  1428. package/src/Tree/__tests__/Tree.basic-rendering.test.tsx +0 -111
  1429. package/src/Tree/__tests__/Tree.branch-behaviour.test.tsx +0 -87
  1430. package/src/Tree/__tests__/Tree.controlled-expansion.test.tsx +0 -92
  1431. package/src/Tree/__tests__/Tree.data-attributes.test.tsx +0 -88
  1432. package/src/Tree/__tests__/Tree.disabled-items.test.tsx +0 -196
  1433. package/src/Tree/__tests__/Tree.error-handling.test.tsx +0 -71
  1434. package/src/Tree/__tests__/Tree.forceMount.test.tsx +0 -72
  1435. package/src/Tree/__tests__/Tree.keyboard-interaction.test.tsx +0 -150
  1436. package/src/Tree/__tests__/Tree.multiple-selection.test.tsx +0 -151
  1437. package/src/Tree/__tests__/Tree.range-selection.test.tsx +0 -200
  1438. package/src/Tree/__tests__/Tree.recursion-depth.test.tsx +0 -73
  1439. package/src/Tree/__tests__/Tree.roving-tabindex.test.tsx +0 -117
  1440. package/src/Tree/__tests__/Tree.selection-path.test.tsx +0 -404
  1441. package/src/Tree/__tests__/Tree.single-selection.test.tsx +0 -108
  1442. package/src/Tree/__tests__/Tree.styled-wrapper.test.tsx +0 -159
  1443. package/src/Tree/__tests__/Tree.uncontrolled-expansion.test.tsx +0 -69
  1444. package/src/Tree/hooks/index.ts +0 -3
  1445. package/src/Tree/hooks/useTreeItemKeyboard.ts +0 -86
  1446. package/src/Tree/hooks/useTreePath.ts +0 -100
  1447. package/src/Tree/hooks/useTreeRoot.ts +0 -279
  1448. package/src/Tree/index.ts +0 -8
  1449. package/src/Tree/types.ts +0 -298
  1450. package/src/Tree/utils.ts +0 -101
  1451. package/src/VisuallyHidden/README.md +0 -58
  1452. package/src/VisuallyHidden/VisuallyHidden.tsx +0 -94
  1453. package/src/VisuallyHidden/__tests__/VisuallyHidden.test.tsx +0 -73
  1454. package/src/VisuallyHidden/index.ts +0 -2
  1455. package/src/VisuallyHidden/types.ts +0 -19
  1456. package/src/hooks/index.ts +0 -4
  1457. package/src/hooks/useCollection.ts +0 -74
  1458. package/src/hooks/useControllableState.ts +0 -81
  1459. package/src/hooks/useRovingTabindex.ts +0 -178
  1460. package/src/hooks/useTypeahead.ts +0 -95
  1461. package/src/index.ts +0 -52
  1462. package/src/test/intersectionObserverPolyfill.ts +0 -90
  1463. package/src/test/popoverPolyfill.ts +0 -86
  1464. package/src/test/resizeObserverPolyfill.ts +0 -80
  1465. package/src/test/scrollPolyfill.ts +0 -23
  1466. package/src/types.ts +0 -14
  1467. package/src/useLocalStorage/__tests__/useLocalStorage.reading.test.tsx +0 -31
  1468. package/src/useLocalStorage/__tests__/useLocalStorage.resilience.test.tsx +0 -97
  1469. package/src/useLocalStorage/__tests__/useLocalStorage.ssr.test.tsx +0 -20
  1470. package/src/useLocalStorage/__tests__/useLocalStorage.writing.test.tsx +0 -72
  1471. package/src/useLocalStorage/index.ts +0 -1
  1472. package/src/useLocalStorage/useLocalStorage.ts +0 -140
  1473. package/src/useMediaQuery/README.md +0 -66
  1474. package/src/useMediaQuery/__tests__/useMediaQuery.matching.test.tsx +0 -42
  1475. package/src/useMediaQuery/__tests__/useMediaQuery.ssr.test.tsx +0 -19
  1476. package/src/useMediaQuery/__tests__/useMediaQuery.subscription.test.tsx +0 -89
  1477. package/src/useMediaQuery/index.ts +0 -1
  1478. package/src/useMediaQuery/useMediaQuery.ts +0 -49
  1479. package/src/usePagination/README.md +0 -170
  1480. package/src/usePagination/__tests__/usePagination.navigation.test.tsx +0 -109
  1481. package/src/usePagination/__tests__/usePagination.page-count.test.tsx +0 -56
  1482. package/src/usePagination/__tests__/usePagination.page-state.test.tsx +0 -87
  1483. package/src/usePagination/__tests__/usePagination.range.test.tsx +0 -82
  1484. package/src/usePagination/__tests__/usePagination.slice.test.tsx +0 -59
  1485. package/src/usePagination/__tests__/usePagination.windowing.test.tsx +0 -68
  1486. package/src/usePagination/index.ts +0 -1
  1487. package/src/usePagination/usePagination.ts +0 -292
  1488. package/src/utils/__tests__/createStrictContext.test.tsx +0 -69
  1489. package/src/utils/__tests__/deriveId.test.ts +0 -28
  1490. package/src/utils/__tests__/getKeyToActionMap.test.ts +0 -106
  1491. package/src/utils/createStrictContext.ts +0 -53
  1492. package/src/utils/deriveId.ts +0 -31
  1493. package/src/utils/focusable.ts +0 -15
  1494. package/src/utils/getKeyToActionMap.ts +0 -95
  1495. package/src/utils/index.ts +0 -4
@@ -1,972 +0,0 @@
1
- import { forwardRef, MouseEvent, useCallback } from "react";
2
- import type {
3
- ForwardRefExoticComponent,
4
- PropsWithoutRef,
5
- ReactElement,
6
- RefAttributes,
7
- } from "react";
8
-
9
- import { Slot } from "../Slot/index.ts";
10
- import { CarouselProvider } from "./CarouselContext";
11
- import {
12
- useCarouselContext,
13
- useCarouselLoop,
14
- useCarouselRoot,
15
- useCarouselSlide,
16
- useCarouselViewport,
17
- } from "./hooks/index.ts";
18
- import type {
19
- CarouselImperativeApi,
20
- CarouselRootProps,
21
- CarouselViewportProps,
22
- CarouselSlideProps,
23
- CarouselNextTriggerProps,
24
- CarouselPreviousTriggerProps,
25
- CarouselIndicatorGroupProps,
26
- CarouselIndicatorProps,
27
- CarouselIndicatorsProps,
28
- CarouselPlayPauseTriggerProps,
29
- CarouselProgressTextProps,
30
- } from "./types";
31
-
32
- /**
33
- * The root of a Carousel widget. Renders a `<section>` with
34
- * `aria-roledescription="carousel"` so assistive technology announces
35
- * the widget as a carousel rather than a generic region, per the
36
- * WAI-ARIA Carousel pattern.
37
- *
38
- * Every carousel must have an accessible name. Pass exactly one of:
39
- *
40
- * - `ariaLabel` — a short human-readable description (e.g.
41
- * `"Featured products"`).
42
- * - `ariaLabelledBy` — the `id` of an existing heading or label element.
43
- *
44
- * The discriminated union on the props type rejects both-or-neither at
45
- * compile time.
46
- *
47
- * **Orientation.** Pass `orientation="vertical"` to page along the block
48
- * axis instead of the inline axis: the viewport scroll-snaps vertically,
49
- * the viewport `ArrowDown` / `ArrowUp` keys advance / retreat (the
50
- * horizontal arrows go inert), and the resolved value is published as
51
- * `data-orientation` on the rendered `<section>` so consumer CSS can
52
- * switch layout off a single hook. Defaults to `"horizontal"`.
53
- *
54
- * Supports two **page-state modes**, statically discriminated at the type
55
- * level so only one of the two shapes is accepted by TypeScript:
56
- *
57
- * - **Uncontrolled** — pass `defaultPage` (or omit it and start at `0`).
58
- * The component owns and updates the active page internally.
59
- * - **Controlled** — pass `page` *and* `onPageChange` together. The
60
- * parent owns the active page; the component defers every state
61
- * change back through the callback.
62
- *
63
- * The `ref` is an imperative handle ({@link CarouselImperativeApi}), not
64
- * the DOM node — the `<section>`'s native attributes are still spread
65
- * through from the remaining props.
66
- *
67
- * @extends HTMLElement
68
- *
69
- * @example Labelled inline, uncontrolled
70
- * ```tsx
71
- * <Carousel.Root ariaLabel="Featured products" defaultPage={0}>...</Carousel.Root>
72
- * ```
73
- *
74
- * @example Controlled
75
- * ```tsx
76
- * const [page, setPage] = useState(0);
77
- *
78
- * <Carousel.Root
79
- * ariaLabel="Featured products"
80
- * page={page}
81
- * onPageChange={setPage}
82
- * >
83
- * ...
84
- * </Carousel.Root>
85
- * ```
86
- *
87
- * @example Labelled by an existing heading
88
- * ```tsx
89
- * <h2 id="promos">Promotions</h2>
90
- * <Carousel.Root ariaLabelledBy="promos">...</Carousel.Root>
91
- * ```
92
- */
93
- export const CarouselRoot: ForwardRefExoticComponent<
94
- PropsWithoutRef<CarouselRootProps> & RefAttributes<CarouselImperativeApi>
95
- > = forwardRef<CarouselImperativeApi, CarouselRootProps>(function CarouselRoot(
96
- {
97
- className = "",
98
- ariaLabel,
99
- ariaLabelledBy,
100
- defaultPage,
101
- page,
102
- onPageChange,
103
- defaultPlaying,
104
- playing,
105
- onPlayingChange,
106
- autoplay,
107
- onAutoplayStatusChange,
108
- slidesPerPage,
109
- slidesPerMove,
110
- translations,
111
- ids,
112
- transition,
113
- snapAlign,
114
- orientation,
115
- loop,
116
- allowMouseDrag,
117
- onDragStatusChange,
118
- onOverscrollStatusChange,
119
- inViewThreshold,
120
- snapType,
121
- children,
122
- ...rest
123
- },
124
- imperativeRef,
125
- ) {
126
- const { contextValue, rootHandlers } = useCarouselRoot(
127
- {
128
- defaultPage,
129
- page,
130
- onPageChange,
131
- defaultPlaying,
132
- playing,
133
- onPlayingChange,
134
- autoplay,
135
- onAutoplayStatusChange,
136
- slidesPerPage,
137
- slidesPerMove,
138
- translations,
139
- ids,
140
- transition,
141
- snapAlign,
142
- orientation,
143
- loop,
144
- allowMouseDrag,
145
- onDragStatusChange,
146
- onOverscrollStatusChange,
147
- inViewThreshold,
148
- snapType,
149
- },
150
- imperativeRef,
151
- );
152
-
153
- return (
154
- <CarouselProvider value={contextValue}>
155
- <section
156
- aria-roledescription="carousel"
157
- data-orientation={contextValue.orientation}
158
- data-transition={contextValue.transition}
159
- data-loop={contextValue.loop}
160
- className={className}
161
- {...(ariaLabel !== undefined && { "aria-label": ariaLabel })}
162
- {...(ariaLabelledBy !== undefined && {
163
- "aria-labelledby": ariaLabelledBy,
164
- })}
165
- {...(contextValue.ids.root !== undefined && {
166
- id: contextValue.ids.root,
167
- })}
168
- {...rootHandlers}
169
- {...rest}
170
- >
171
- {children}
172
- </section>
173
- </CarouselProvider>
174
- );
175
- });
176
-
177
- CarouselRoot.displayName = "CarouselRoot";
178
-
179
- /**
180
- * The slide container — the scrollable surface that holds
181
- * `Carousel.Slide` children. Rendered as a `<div>` with a
182
- * `data-carousel-viewport` attribute that the recommended scroll-snap
183
- * CSS targets (see this component's README for the recipe).
184
- *
185
- * The viewport must be rendered as a descendant of `Carousel.Root`;
186
- * rendering it elsewhere throws a descriptive error so misuse surfaces
187
- * during development rather than as silent ARIA breakage.
188
- *
189
- * **Live region.** The viewport is also the live region for slide
190
- * changes: `aria-live="polite"` so paged navigation is announced to
191
- * assistive tech, flipping to `aria-live="off"` while autoplay is
192
- * actively rotating so screen readers don't get spammed with every
193
- * tick.
194
- *
195
- * **Styling hooks.** `data-carousel-viewport` is set on the rendered
196
- * element. The component ships no styles — apply your own scroll-snap
197
- * recipe via this attribute. `data-snap-type="mandatory" | "proximity"`
198
- * mirrors the resolved root {@link CarouselRootProps.snapType | `snapType`}
199
- * — scope `scroll-snap-type`'s strictness to it. `data-mouse-drag` is
200
- * present whenever `allowMouseDrag` is `true` (a persistent hook — the
201
- * natural place for a `cursor: grab` affordance, since showing that cursor
202
- * when dragging isn't actually enabled would be misleading); `data-dragging`
203
- * is additionally present only for the duration of an active drag (see
204
- * below) — pair it with `cursor: grabbing`.
205
- *
206
- * **Keyboard navigation.** The Viewport is in the tab order
207
- * (`tabIndex={0}`) so keyboard users can reach the rotation control
208
- * without first tabbing through every slide's interactive content.
209
- * With the Viewport focused:
210
- *
211
- * - `ArrowRight` advances by one page (same as `Carousel.NextTrigger`).
212
- * - `ArrowLeft` retreats by one page (same as `Carousel.PreviousTrigger`).
213
- * - `Home` jumps to the first page.
214
- * - `End` jumps to the last page.
215
- *
216
- * Arrow keys clamp at the boundaries, mirroring the trigger buttons.
217
- * Keypresses are only intercepted when the Viewport itself is the focus
218
- * target — focus inside a slide (e.g. on a link or form control) keeps
219
- * its native arrow-key semantics.
220
- *
221
- * **Mouse click-and-drag** — opt-in via {@link CarouselRootProps.allowMouseDrag |
222
- * `allowMouseDrag`} on `Carousel.Root` (default `false`; an
223
- * unconditionally-on drag could conflict with a consumer's own
224
- * drag-sensitive slide content). When enabled: click and hold, then drag,
225
- * and the viewport scrolls like a swipe: `scrollLeft`/`scrollTop` track
226
- * the pointer, amplified by a sensitivity multiplier (no momentum — the
227
- * multiplier only scales the tracked delta, motion still stops dead on
228
- * release), once the drag clears a small movement threshold — below it,
229
- * nothing happens, so a plain click on a link/button inside a slide
230
- * still reaches it. Release lets `scroll-snap-type` settle to the
231
- * nearest slide (the same `scrollsnapchange` sync a touch swipe already
232
- * drives). A `data-dragging` attribute is set for the duration of an
233
- * active drag. Only `pointerType === "mouse"` is handled — touch/pen
234
- * already scroll natively regardless of this prop.
235
- *
236
- * **Mouse-wheel scroll.** A physical wheel's vertical notches already
237
- * scroll a `orientation="vertical"` carousel natively. On the default
238
- * horizontal orientation, a plain vertical wheel notch (`deltaY`)
239
- * translates into horizontal scroll — browsers only do this
240
- * automatically when `Shift` is held. Stands down whenever `deltaX` is
241
- * non-negligible, so a trackpad/Magic Mouse horizontal swipe (which
242
- * already scrolls a horizontal viewport natively via `deltaX`) is never
243
- * fought.
244
- *
245
- * **Overscroll.** Pushing against a boundary with nowhere further to go —
246
- * via the keyboard, the wheel, or a mouse drag — fires the root's
247
- * {@link CarouselRootProps.onOverscrollStatusChange | `onOverscrollStatusChange`}.
248
- * A mouse drag past a boundary additionally sets a persistent
249
- * `data-overscroll="start" | "end"` attribute on the Viewport for the
250
- * duration (removed once the drag stops pushing past it, whether by
251
- * reversing back within bounds or releasing) — the natural hook for a
252
- * rubber-band resistance visual. Keyboard/wheel overscroll is a single
253
- * instantaneous tap with no equivalent sustained DOM state. Native
254
- * touch/swipe overscroll (OS-level rubber-banding) isn't covered — that's
255
- * browser-owned scroll physics with no JS hook to observe it from.
256
- *
257
- * @extends HTMLDivElement
258
- *
259
- * @example
260
- * ```tsx
261
- * <Carousel.Root ariaLabel="Featured products">
262
- * <Carousel.Viewport>
263
- * <Carousel.Slide>...</Carousel.Slide>
264
- * </Carousel.Viewport>
265
- * </Carousel.Root>
266
- * ```
267
- */
268
- export function CarouselViewport({
269
- className = "",
270
- children,
271
- ...rest
272
- }: CarouselViewportProps): ReactElement {
273
- const { isAutoRotating, ids, allowMouseDrag, snapType, slidesPerPage } =
274
- useCarouselContext();
275
- const {
276
- viewportRef,
277
- onKeyDown,
278
- onDragStart,
279
- onPointerDown,
280
- onPointerMove,
281
- onPointerUp,
282
- onPointerCancel,
283
- onClickCapture,
284
- } = useCarouselViewport();
285
- // Infinite loop swaps the native scroll-snap viewport for a JS transform track
286
- // (RFC 0018, clone-strip revision): the engine translates one contiguous track
287
- // whose real slides are flanked by a full period of aria-hidden clones, so every
288
- // seam is already-painted DOM and a settle-time re-base is invisible (no per-slide
289
- // shifts, no native snap to fight — the two things that flashed on iOS). Every
290
- // other mode renders the slides straight into the scroll viewport as before.
291
- const { trackRef, headCloneRef, tailCloneRef, isInfinite, dragHandlers } =
292
- useCarouselLoop();
293
- // Infinite is transform-driven, so its own pointer engine (drag → fling) owns
294
- // the pointer events; the scroll-snap modes keep useCarouselViewport's
295
- // mouse-drag handlers.
296
- const pointerHandlers = dragHandlers ?? {
297
- onPointerDown,
298
- onPointerMove,
299
- onPointerUp,
300
- onPointerCancel,
301
- };
302
-
303
- return (
304
- <div
305
- ref={viewportRef}
306
- data-carousel-viewport=""
307
- data-snap-type={snapType}
308
- tabIndex={0}
309
- className={className}
310
- aria-live={isAutoRotating ? "off" : "polite"}
311
- onKeyDown={onKeyDown}
312
- onDragStart={onDragStart}
313
- {...pointerHandlers}
314
- onClickCapture={onClickCapture}
315
- {...(allowMouseDrag && { "data-mouse-drag": "" })}
316
- {...(ids.viewport !== undefined && { id: ids.viewport })}
317
- {...rest}
318
- >
319
- {isInfinite ? (
320
- <div
321
- className="primitiv-carousel__track"
322
- data-carousel-track=""
323
- data-slides-per-page={slidesPerPage}
324
- ref={trackRef}
325
- >
326
- {/* Clone buffers (a full period each side) — the engine fills these
327
- display:contents holders with aria-hidden copies so the strip is
328
- periodic and every seam is contiguous painted DOM. */}
329
- <div
330
- data-carousel-clones="head"
331
- aria-hidden="true"
332
- style={{ display: "contents" }}
333
- ref={headCloneRef}
334
- />
335
- {children}
336
- <div
337
- data-carousel-clones="tail"
338
- aria-hidden="true"
339
- style={{ display: "contents" }}
340
- ref={tailCloneRef}
341
- />
342
- </div>
343
- ) : (
344
- children
345
- )}
346
- </div>
347
- );
348
- }
349
-
350
- /** @internal */
351
- CarouselViewport.displayName = "CarouselViewport";
352
-
353
- /**
354
- * An individual slide. Renders a `<div>` with `role="group"` and
355
- * `aria-roledescription="slide"` per the WAI-ARIA Carousel pattern, so
356
- * assistive technology announces each slide as a discrete group rather
357
- * than a generic region.
358
- *
359
- * **Self-registration.** On mount, every slide registers itself with
360
- * `Carousel.Root` via a callback ref. The Root maintains an ordered list
361
- * of registered slide keys, which is how the slide knows its own
362
- * zero-based `data-index` and how every slide receives the live
363
- * `data-total` count. Slides may be added or removed at runtime; the
364
- * indices and totals update automatically.
365
- *
366
- * **Auto-labelling.** Each slide is labelled `"N of M"` (e.g. `"1 of 3"`)
367
- * using its live index and the live total — the format the WAI-ARIA
368
- * Carousel APG example uses, and what most screen readers expect. Pass
369
- * {@link CarouselSlideProps.ariaLabel | `ariaLabel`} to override the
370
- * auto-label with a more meaningful description (e.g.
371
- * `"Hand-picked for you"`).
372
- *
373
- * **Styling hooks.**
374
- * - `data-carousel-slide` — CSS-targeting attribute (recommended scroll-snap
375
- * recipe targets `[data-carousel-slide]`).
376
- * - `data-index="N"` — the slide's zero-based position in registration order.
377
- * - `data-total="N"` — the live total slide count.
378
- * - `data-snap-align="start" | "center" | "end"` — present only on a page's
379
- * leading slide (every slide when `slidesPerPage` is 1), valued from this
380
- * slide's own {@link CarouselSlideProps.snapAlign | `snapAlign`} prop if
381
- * set, else the root's resolved `snapAlign`. The registry stylesheet
382
- * scopes `scroll-snap-align` to this hook, both so an interior slide of a
383
- * multi-slide page is never a valid scroll-snap resting position, and so
384
- * the native resting position agrees with `snapAlign` rather than always
385
- * being `"start"`.
386
- *
387
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
388
- * elsewhere throws a descriptive error.
389
- *
390
- * @extends HTMLDivElement
391
- *
392
- * @example Auto-labelled
393
- * ```tsx
394
- * <Carousel.Viewport>
395
- * <Carousel.Slide>First slide</Carousel.Slide>
396
- * <Carousel.Slide>Second slide</Carousel.Slide>
397
- * </Carousel.Viewport>
398
- * ```
399
- *
400
- * @example Override the auto-label
401
- * ```tsx
402
- * <Carousel.Slide ariaLabel="Hand-picked for you">...</Carousel.Slide>
403
- * ```
404
- *
405
- * @example Per-slide snap alignment (overrides the root default)
406
- * ```tsx
407
- * <Carousel.Slide snapAlign="end">...</Carousel.Slide>
408
- * ```
409
- */
410
- export function CarouselSlide({
411
- className = "",
412
- ariaLabel,
413
- snapAlign: snapAlignOverride,
414
- children,
415
- ...rest
416
- }: CarouselSlideProps): ReactElement {
417
- const { slideRef, index, total, state, snapAlign } =
418
- useCarouselSlide(snapAlignOverride);
419
- const { translations } = useCarouselContext();
420
-
421
- const autoLabel =
422
- index >= 0 && total > 0
423
- ? translations.slideLabel({ index: index + 1, total })
424
- : undefined;
425
- const label = ariaLabel ?? autoLabel;
426
-
427
- return (
428
- <div
429
- ref={slideRef}
430
- role="group"
431
- aria-roledescription="slide"
432
- data-carousel-slide=""
433
- data-index={index}
434
- data-total={total}
435
- data-state={state}
436
- className={className}
437
- {...(label !== undefined && { "aria-label": label })}
438
- {...(snapAlign !== undefined && { "data-snap-align": snapAlign })}
439
- {...rest}
440
- >
441
- {children}
442
- </div>
443
- );
444
- }
445
-
446
- /** @internal */
447
- CarouselSlide.displayName = "CarouselSlide";
448
-
449
- /**
450
- * Advances the active page by one. Renders as
451
- * `<button type="button">` and dispatches the consumer's `onClick`
452
- * before invoking the navigation, so analytics handlers and similar
453
- * still fire when the user advances the carousel.
454
- *
455
- * **Boundary clamping.** The trigger is `disabled` once the active page
456
- * reaches the last slide; the click is also a no-op at boundaries
457
- * because `next()` short-circuits when there's nowhere to go. The
458
- * button is always disabled when there are zero or one slides
459
- * registered. Consumer-supplied `disabled={true}` is also honoured (it
460
- * OR's with the boundary check).
461
- *
462
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
463
- * elsewhere throws a descriptive error.
464
- *
465
- * @extends HTMLButtonElement
466
- *
467
- * @example
468
- * ```tsx
469
- * <Carousel.NextTrigger>Next</Carousel.NextTrigger>
470
- * ```
471
- */
472
- export function CarouselNextTrigger({
473
- className = "",
474
- onClick,
475
- disabled,
476
- asChild = false,
477
- children,
478
- ...rest
479
- }: CarouselNextTriggerProps): ReactElement {
480
- const { next, canGoNext, ids } = useCarouselContext();
481
- const isDisabled = disabled === true || !canGoNext;
482
-
483
- const handleClick = useCallback(
484
- (event: MouseEvent<HTMLButtonElement>) => {
485
- onClick?.(event);
486
- // Guard runs in addition to the HTML disabled attribute on the
487
- // default <button> path. With asChild on a non-button element
488
- // there's no native disabled to block the click, so this is the
489
- // only barrier.
490
- if (isDisabled) return;
491
- next();
492
- },
493
- [next, onClick, isDisabled],
494
- );
495
-
496
- const triggerProps = {
497
- className,
498
- onClick: handleClick,
499
- disabled: isDisabled,
500
- "aria-disabled": isDisabled,
501
- ...(ids.nextTrigger !== undefined && { id: ids.nextTrigger }),
502
- ...rest,
503
- };
504
-
505
- if (asChild) {
506
- return <Slot {...triggerProps}>{children}</Slot>;
507
- }
508
-
509
- return (
510
- <button type="button" {...triggerProps}>
511
- {children}
512
- </button>
513
- );
514
- }
515
-
516
- /** @internal */
517
- CarouselNextTrigger.displayName = "CarouselNextTrigger";
518
-
519
- /**
520
- * Retreats the active page by one. Renders as
521
- * `<button type="button">` and dispatches the consumer's `onClick`
522
- * before invoking the navigation, so analytics handlers and similar
523
- * still fire when the user retreats the carousel.
524
- *
525
- * **Boundary clamping.** The trigger is `disabled` while the active
526
- * page is the first slide; the click is also a no-op at boundaries
527
- * because `previous()` short-circuits when there's nowhere to go. The
528
- * button is always disabled when there are zero or one slides
529
- * registered. Consumer-supplied `disabled={true}` is also honoured.
530
- *
531
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
532
- * elsewhere throws a descriptive error.
533
- *
534
- * @extends HTMLButtonElement
535
- *
536
- * @example
537
- * ```tsx
538
- * <Carousel.PreviousTrigger>Previous</Carousel.PreviousTrigger>
539
- * ```
540
- */
541
- export function CarouselPreviousTrigger({
542
- className = "",
543
- onClick,
544
- disabled,
545
- asChild = false,
546
- children,
547
- ...rest
548
- }: CarouselPreviousTriggerProps): ReactElement {
549
- const { previous, canGoPrevious, ids } = useCarouselContext();
550
- const isDisabled = disabled === true || !canGoPrevious;
551
-
552
- const handleClick = useCallback(
553
- (event: MouseEvent<HTMLButtonElement>) => {
554
- onClick?.(event);
555
- if (isDisabled) return;
556
- previous();
557
- },
558
- [previous, onClick, isDisabled],
559
- );
560
-
561
- const triggerProps = {
562
- className,
563
- onClick: handleClick,
564
- disabled: isDisabled,
565
- "aria-disabled": isDisabled,
566
- ...(ids.previousTrigger !== undefined && { id: ids.previousTrigger }),
567
- ...rest,
568
- };
569
-
570
- if (asChild) {
571
- return <Slot {...triggerProps}>{children}</Slot>;
572
- }
573
-
574
- return (
575
- <button type="button" {...triggerProps}>
576
- {children}
577
- </button>
578
- );
579
- }
580
-
581
- /** @internal */
582
- CarouselPreviousTrigger.displayName = "CarouselPreviousTrigger";
583
-
584
- /**
585
- * A `<div role="group">` wrapping consumer-mapped `Carousel.Indicator`
586
- * dots. Use this when you want manual control over how the dots are
587
- * rendered (e.g. mixing custom content into each one). For the common
588
- * case of one auto-rendered dot per page, prefer `Carousel.Indicators`.
589
- *
590
- * Every group must have an accessible name. Pass exactly one of:
591
- *
592
- * - `label` — a short human-readable description of the picker (e.g.
593
- * `"Choose slide"`).
594
- * - `ariaLabelledBy` — the `id` of an existing heading or label element.
595
- *
596
- * The discriminated union on the props type rejects both-or-neither at
597
- * compile time.
598
- *
599
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
600
- * elsewhere throws a descriptive error.
601
- *
602
- * @extends HTMLDivElement
603
- *
604
- * @example
605
- * ```tsx
606
- * <Carousel.IndicatorGroup label="Choose slide">
607
- * <Carousel.Indicator index={0} />
608
- * <Carousel.Indicator index={1} />
609
- * <Carousel.Indicator index={2} />
610
- * </Carousel.IndicatorGroup>
611
- * ```
612
- */
613
- export function CarouselIndicatorGroup({
614
- className = "",
615
- label,
616
- ariaLabelledBy,
617
- children,
618
- ...rest
619
- }: CarouselIndicatorGroupProps): ReactElement {
620
- const { ids } = useCarouselContext();
621
-
622
- return (
623
- <div
624
- role="group"
625
- className={className}
626
- {...(label !== undefined && { "aria-label": label })}
627
- {...(ariaLabelledBy !== undefined && {
628
- "aria-labelledby": ariaLabelledBy,
629
- })}
630
- {...(ids.indicatorGroup !== undefined && { id: ids.indicatorGroup })}
631
- {...rest}
632
- >
633
- {children}
634
- </div>
635
- );
636
- }
637
-
638
- /** @internal */
639
- CarouselIndicatorGroup.displayName = "CarouselIndicatorGroup";
640
-
641
- /**
642
- * An individual indicator dot — a `<button>` that jumps to the page at
643
- * `index` (zero-based) when clicked. Auto-labelled `"Slide N"` (where
644
- * `N = index + 1`) so the page-position is announced to assistive tech.
645
- *
646
- * **Active-state ARIA.** The indicator at `currentPage` carries
647
- * `aria-disabled="true"` per the WAI-ARIA Carousel APG — a soft disable
648
- * that tells screen readers "you're already on this slide" without
649
- * removing it from the focus order. Non-active indicators carry
650
- * `aria-disabled="false"`. Both states also flip `data-state` between
651
- * `"active"` and `"inactive"` so consumer CSS can paint the active dot.
652
- *
653
- * **`readOnly`.** When `true`, the indicator becomes a presentational-only
654
- * progress dot instead of a navigation control: it renders a `<span>` (no
655
- * button semantics), carries `aria-hidden="true"` (it's decorative, not
656
- * announced), and clicking it no longer calls `goTo` — for a carousel whose
657
- * only navigation is e.g. `allowMouseDrag`, where clickable dots would be a
658
- * redundant/misleading control. It still tracks `data-state`, so CSS-driven
659
- * progress display keeps working, and the consumer's own `onClick` (if
660
- * passed) still fires — only the internal navigation is suppressed.
661
- *
662
- * **Styling hooks.**
663
- * - `data-carousel-indicator` — CSS-targeting attribute.
664
- * - `data-state="active" | "inactive"` — tracks the current page.
665
- *
666
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
667
- * elsewhere throws a descriptive error.
668
- *
669
- * @extends HTMLButtonElement
670
- *
671
- * @example
672
- * ```tsx
673
- * <Carousel.Indicator index={0} />
674
- * <Carousel.Indicator index={0} readOnly />
675
- * ```
676
- */
677
- export function CarouselIndicator({
678
- className = "",
679
- index,
680
- onClick,
681
- readOnly = false,
682
- asChild = false,
683
- children,
684
- ...rest
685
- }: CarouselIndicatorProps): ReactElement {
686
- const { goTo, currentPage, translations } = useCarouselContext();
687
- const isActive = index === currentPage;
688
-
689
- const handleClick = useCallback(
690
- (event: MouseEvent<HTMLButtonElement>) => {
691
- onClick?.(event);
692
- if (!readOnly) goTo(index);
693
- },
694
- [goTo, index, onClick, readOnly],
695
- );
696
-
697
- const indicatorProps = {
698
- className,
699
- "data-carousel-indicator": "",
700
- "data-state": isActive ? "active" : "inactive",
701
- onClick: handleClick,
702
- ...(readOnly
703
- ? { "aria-hidden": true }
704
- : {
705
- "aria-label": translations.indicatorLabel({ index: index + 1 }),
706
- "aria-disabled": isActive,
707
- }),
708
- ...rest,
709
- };
710
-
711
- if (asChild) {
712
- return <Slot {...indicatorProps}>{children}</Slot>;
713
- }
714
-
715
- if (readOnly) {
716
- return <span {...indicatorProps}>{children}</span>;
717
- }
718
-
719
- return (
720
- <button type="button" {...indicatorProps}>
721
- {children}
722
- </button>
723
- );
724
- }
725
-
726
- /** @internal */
727
- CarouselIndicator.displayName = "CarouselIndicator";
728
-
729
- /**
730
- * Convenience wrapper that auto-renders one `Carousel.Indicator` per
731
- * registered slide — the "dots between Prev and Next" you'd reach for
732
- * in 90% of carousels. Internally renders a `Carousel.IndicatorGroup`
733
- * containing one `Carousel.Indicator` per entry in the slide-key list,
734
- * keyed by the slide's stable `useId` so React doesn't shuffle the
735
- * dots when slides mount or unmount in the middle of the range.
736
- *
737
- * For full control over indicator content (e.g. dots that show
738
- * thumbnail previews on hover), drop down to
739
- * `Carousel.IndicatorGroup` + `Carousel.Indicator` instead.
740
- *
741
- * `readOnly` forwards to every generated indicator — see
742
- * `Carousel.Indicator`'s own `readOnly` doc.
743
- *
744
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
745
- * elsewhere throws a descriptive error.
746
- *
747
- * @extends HTMLDivElement
748
- *
749
- * @example
750
- * ```tsx
751
- * <Carousel.Indicators label="Choose slide" />
752
- * <Carousel.Indicators label="Progress" readOnly />
753
- * ```
754
- */
755
- export function CarouselIndicators({
756
- readOnly,
757
- ...props
758
- }: CarouselIndicatorsProps): ReactElement {
759
- const { totalPages } = useCarouselContext();
760
-
761
- return (
762
- <CarouselIndicatorGroup {...props}>
763
- {Array.from({ length: totalPages }, (_, index) => (
764
- <CarouselIndicator key={index} index={index} readOnly={readOnly} />
765
- ))}
766
- </CarouselIndicatorGroup>
767
- );
768
- }
769
-
770
- /** @internal */
771
- CarouselIndicators.displayName = "CarouselIndicators";
772
-
773
- /**
774
- * A `<button>` that toggles the carousel's `playing` flag. Renders the
775
- * accessible name dictated by the WAI-ARIA Carousel APG by default —
776
- * `"Start automatic slide show"` when paused, `"Stop automatic slide
777
- * show"` when playing — and exposes the live `playing` flag both as a
778
- * `data-state="playing" | "paused"` styling hook and to a function
779
- * `children` render prop, so consumers can swap icons or labels per
780
- * state without re-implementing the toggle:
781
- *
782
- * ```tsx
783
- * <Carousel.PlayPauseTrigger>
784
- * {({ playing }) => (playing ? <PauseIcon /> : <PlayIcon />)}
785
- * </Carousel.PlayPauseTrigger>
786
- * ```
787
- *
788
- * Static children also work — useful when you want a single icon and
789
- * style it via `[data-state]` selectors.
790
- *
791
- * Requires autoplay to be enabled on `Carousel.Root` — a control that
792
- * toggled a non-existent slideshow would be misleading, so rendering
793
- * this trigger without an `autoplay` prop on the Root throws a
794
- * descriptive error. Toggling `playing` to `true` starts the timer that
795
- * advances the page on each tick (see {@link CarouselAutoplay}).
796
- *
797
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
798
- * elsewhere throws a descriptive error.
799
- *
800
- * @extends HTMLButtonElement
801
- *
802
- * @example State-aware render prop
803
- * ```tsx
804
- * <Carousel.PlayPauseTrigger>
805
- * {({ playing }) => (playing ? "Pause" : "Play")}
806
- * </Carousel.PlayPauseTrigger>
807
- * ```
808
- */
809
- export function CarouselPlayPauseTrigger({
810
- className = "",
811
- onClick,
812
- asChild = false,
813
- children,
814
- ...rest
815
- }: CarouselPlayPauseTriggerProps): ReactElement {
816
- const { playing, togglePlaying, translations, ids, autoplayEnabled } =
817
- useCarouselContext();
818
-
819
- if (!autoplayEnabled) {
820
- throw new Error(
821
- "Carousel.PlayPauseTrigger requires autoplay to be enabled on Carousel.Root",
822
- );
823
- }
824
-
825
- const handleClick = useCallback(
826
- (event: MouseEvent<HTMLButtonElement>) => {
827
- onClick?.(event);
828
- togglePlaying();
829
- },
830
- [onClick, togglePlaying],
831
- );
832
-
833
- const renderedChildren =
834
- typeof children === "function" ? children({ playing }) : children;
835
-
836
- const triggerProps = {
837
- className,
838
- "aria-label": playing
839
- ? translations.stopSlideshow
840
- : translations.startSlideshow,
841
- "data-state": playing ? "playing" : "paused",
842
- onClick: handleClick,
843
- ...(ids.playPauseTrigger !== undefined && { id: ids.playPauseTrigger }),
844
- ...rest,
845
- };
846
-
847
- if (asChild) {
848
- return <Slot {...triggerProps}>{renderedChildren}</Slot>;
849
- }
850
-
851
- return (
852
- <button type="button" {...triggerProps}>
853
- {renderedChildren}
854
- </button>
855
- );
856
- }
857
-
858
- /** @internal */
859
- CarouselPlayPauseTrigger.displayName = "CarouselPlayPauseTrigger";
860
-
861
- /**
862
- * A `<span>` rendering the live active-page progress as text — `"1 of
863
- * 3"` by default, via `translations.progressText`. Closes the gap
864
- * between the imperative `getProgress()` data and an actual DOM node a
865
- * consumer can drop in without wiring the announcement themselves.
866
- *
867
- * ```tsx
868
- * <Carousel.ProgressText />
869
- * ```
870
- *
871
- * Pass `children` to render custom content instead of the default
872
- * translated text (e.g. an icon alongside the count) — the computed
873
- * text is only used as a fallback.
874
- *
875
- * Must be rendered as a descendant of `Carousel.Root`; rendering it
876
- * elsewhere throws a descriptive error (via the shared Carousel
877
- * context guard).
878
- *
879
- * @extends HTMLSpanElement
880
- *
881
- * @example
882
- * ```tsx
883
- * <Carousel.ProgressText />
884
- * ```
885
- */
886
- export function CarouselProgressText({
887
- children,
888
- ...rest
889
- }: CarouselProgressTextProps): ReactElement {
890
- const { currentPage, totalPages, translations } = useCarouselContext();
891
-
892
- return (
893
- <span {...rest}>
894
- {children ??
895
- translations.progressText({ page: currentPage, totalPages })}
896
- </span>
897
- );
898
- }
899
-
900
- /** @internal */
901
- CarouselProgressText.displayName = "CarouselProgressText";
902
-
903
- /** Static-property shape of the compound {@link Carousel} export: the callable {@link CarouselRoot} plus its namespaced sub-components. */
904
- type CarouselCompound = typeof CarouselRoot & {
905
- Root: typeof CarouselRoot;
906
- Viewport: typeof CarouselViewport;
907
- Slide: typeof CarouselSlide;
908
- NextTrigger: typeof CarouselNextTrigger;
909
- PreviousTrigger: typeof CarouselPreviousTrigger;
910
- IndicatorGroup: typeof CarouselIndicatorGroup;
911
- Indicator: typeof CarouselIndicator;
912
- Indicators: typeof CarouselIndicators;
913
- PlayPauseTrigger: typeof CarouselPlayPauseTrigger;
914
- ProgressText: typeof CarouselProgressText;
915
- };
916
-
917
- /**
918
- * Headless, accessible **Carousel** — a compound component implementing the
919
- * WAI-ARIA Carousel pattern with zero styles.
920
- *
921
- * `Carousel` is both callable (it's an alias of {@link CarouselRoot |
922
- * `Carousel.Root`}) and carries its sub-components as static properties.
923
- * Prefer the namespaced form in application code for readability:
924
- *
925
- * - {@link CarouselRoot | `Carousel.Root`} — the labelled `<section>`
926
- * that wraps the entire widget.
927
- * - {@link CarouselViewport | `Carousel.Viewport`} — the slide
928
- * container that the recommended scroll-snap CSS targets.
929
- * - {@link CarouselSlide | `Carousel.Slide`} — an individual slide,
930
- * self-registering with the Root for live index / total tracking.
931
- * - {@link CarouselNextTrigger | `Carousel.NextTrigger`} — advances
932
- * the active page by one.
933
- * - {@link CarouselPreviousTrigger | `Carousel.PreviousTrigger`} —
934
- * retreats the active page by one.
935
- * - {@link CarouselIndicatorGroup | `Carousel.IndicatorGroup`} — a
936
- * labelled `<div role="group">` for consumer-mapped dot indicators.
937
- * - {@link CarouselIndicator | `Carousel.Indicator`} — an individual
938
- * `<button>` that jumps to a target page when clicked.
939
- * - {@link CarouselIndicators | `Carousel.Indicators`} — convenience
940
- * wrapper that auto-renders one indicator per registered slide.
941
- *
942
- * @example
943
- * ```tsx
944
- * import { Carousel } from "@primitiv-ui/react";
945
- *
946
- * <Carousel.Root ariaLabel="Featured products">
947
- * <Carousel.Viewport>
948
- * <Carousel.Slide>First</Carousel.Slide>
949
- * <Carousel.Slide>Second</Carousel.Slide>
950
- * </Carousel.Viewport>
951
- * <Carousel.PreviousTrigger>Previous</Carousel.PreviousTrigger>
952
- * <Carousel.Indicators label="Choose slide" />
953
- * <Carousel.NextTrigger>Next</Carousel.NextTrigger>
954
- * </Carousel.Root>
955
- * ```
956
- */
957
- const CarouselCompound: CarouselCompound = Object.assign(CarouselRoot, {
958
- Root: CarouselRoot,
959
- Viewport: CarouselViewport,
960
- Slide: CarouselSlide,
961
- NextTrigger: CarouselNextTrigger,
962
- PreviousTrigger: CarouselPreviousTrigger,
963
- IndicatorGroup: CarouselIndicatorGroup,
964
- Indicator: CarouselIndicator,
965
- Indicators: CarouselIndicators,
966
- PlayPauseTrigger: CarouselPlayPauseTrigger,
967
- ProgressText: CarouselProgressText,
968
- });
969
-
970
- CarouselCompound.displayName = "Carousel";
971
-
972
- export { CarouselCompound as Carousel };