@base-ui/react 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1301) hide show
  1. package/CHANGELOG.md +143 -0
  2. package/accordion/header/AccordionHeaderDataAttributes.d.mts +13 -15
  3. package/accordion/header/AccordionHeaderDataAttributes.d.ts +13 -15
  4. package/accordion/header/AccordionHeaderDataAttributes.js +14 -17
  5. package/accordion/header/AccordionHeaderDataAttributes.mjs +13 -16
  6. package/accordion/item/AccordionItemDataAttributes.d.mts +13 -15
  7. package/accordion/item/AccordionItemDataAttributes.d.ts +13 -15
  8. package/accordion/item/AccordionItemDataAttributes.js +14 -17
  9. package/accordion/item/AccordionItemDataAttributes.mjs +13 -16
  10. package/accordion/item/stateAttributesMapping.js +3 -2
  11. package/accordion/item/stateAttributesMapping.mjs +1 -1
  12. package/accordion/panel/AccordionPanel.js +3 -3
  13. package/accordion/panel/AccordionPanel.mjs +1 -1
  14. package/accordion/panel/AccordionPanelCssVars.d.mts +10 -12
  15. package/accordion/panel/AccordionPanelCssVars.d.ts +10 -12
  16. package/accordion/panel/AccordionPanelCssVars.js +11 -14
  17. package/accordion/panel/AccordionPanelCssVars.mjs +10 -13
  18. package/accordion/panel/AccordionPanelDataAttributes.d.mts +25 -27
  19. package/accordion/panel/AccordionPanelDataAttributes.d.ts +25 -27
  20. package/accordion/panel/AccordionPanelDataAttributes.js +26 -29
  21. package/accordion/panel/AccordionPanelDataAttributes.mjs +26 -28
  22. package/accordion/root/AccordionRoot.d.mts +1 -0
  23. package/accordion/root/AccordionRoot.d.ts +1 -0
  24. package/accordion/root/AccordionRoot.js +2 -9
  25. package/accordion/root/AccordionRoot.mjs +2 -9
  26. package/accordion/root/AccordionRootDataAttributes.d.mts +8 -10
  27. package/accordion/root/AccordionRootDataAttributes.d.ts +8 -10
  28. package/accordion/root/AccordionRootDataAttributes.js +9 -12
  29. package/accordion/root/AccordionRootDataAttributes.mjs +8 -11
  30. package/accordion/trigger/AccordionTriggerDataAttributes.d.mts +8 -10
  31. package/accordion/trigger/AccordionTriggerDataAttributes.d.ts +8 -10
  32. package/accordion/trigger/AccordionTriggerDataAttributes.js +9 -12
  33. package/accordion/trigger/AccordionTriggerDataAttributes.mjs +8 -11
  34. package/alert-dialog/root/AlertDialogRoot.d.mts +1 -1
  35. package/alert-dialog/root/AlertDialogRoot.d.ts +1 -1
  36. package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.d.mts +8 -10
  37. package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.d.ts +8 -10
  38. package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.js +9 -12
  39. package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.mjs +9 -11
  40. package/autocomplete/clear/AutocompleteClearDataAttributes.d.mts +1 -1
  41. package/autocomplete/clear/AutocompleteClearDataAttributes.d.ts +1 -1
  42. package/autocomplete/clear/AutocompleteClearDataAttributes.js +11 -7
  43. package/autocomplete/clear/AutocompleteClearDataAttributes.mjs +1 -1
  44. package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.d.mts +49 -51
  45. package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.d.ts +49 -51
  46. package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.js +50 -53
  47. package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.mjs +49 -52
  48. package/autocomplete/item/AutocompleteItemDataAttributes.d.mts +8 -10
  49. package/autocomplete/item/AutocompleteItemDataAttributes.d.ts +8 -10
  50. package/autocomplete/item/AutocompleteItemDataAttributes.js +11 -13
  51. package/autocomplete/item/AutocompleteItemDataAttributes.mjs +10 -12
  52. package/autocomplete/root/AutocompleteRoot.d.mts +24 -2
  53. package/autocomplete/root/AutocompleteRoot.d.ts +24 -2
  54. package/autocomplete/root/AutocompleteRoot.js +10 -23
  55. package/autocomplete/root/AutocompleteRoot.mjs +10 -23
  56. package/autocomplete/trigger/AutocompleteTrigger.d.mts +4 -0
  57. package/autocomplete/trigger/AutocompleteTrigger.d.ts +4 -0
  58. package/autocomplete/trigger/AutocompleteTriggerDataAttributes.d.mts +53 -55
  59. package/autocomplete/trigger/AutocompleteTriggerDataAttributes.d.ts +53 -55
  60. package/autocomplete/trigger/AutocompleteTriggerDataAttributes.js +54 -57
  61. package/autocomplete/trigger/AutocompleteTriggerDataAttributes.mjs +54 -56
  62. package/avatar/image/AvatarImage.d.mts +6 -0
  63. package/avatar/image/AvatarImage.d.ts +6 -0
  64. package/avatar/image/AvatarImage.js +75 -9
  65. package/avatar/image/AvatarImage.mjs +75 -9
  66. package/avatar/image/AvatarImageDataAttributes.d.mts +16 -10
  67. package/avatar/image/AvatarImageDataAttributes.d.ts +16 -10
  68. package/avatar/image/AvatarImageDataAttributes.js +17 -12
  69. package/avatar/image/AvatarImageDataAttributes.mjs +17 -11
  70. package/avatar/image/useImageLoadingStatus.d.mts +1 -1
  71. package/avatar/image/useImageLoadingStatus.d.ts +1 -1
  72. package/avatar/image/useImageLoadingStatus.js +8 -4
  73. package/avatar/image/useImageLoadingStatus.mjs +8 -4
  74. package/button/ButtonDataAttributes.d.mts +4 -6
  75. package/button/ButtonDataAttributes.d.ts +4 -6
  76. package/button/ButtonDataAttributes.js +5 -8
  77. package/button/ButtonDataAttributes.mjs +4 -7
  78. package/checkbox/indicator/CheckboxIndicator.js +2 -0
  79. package/checkbox/indicator/CheckboxIndicator.mjs +2 -0
  80. package/checkbox/indicator/CheckboxIndicatorDataAttributes.d.mts +56 -58
  81. package/checkbox/indicator/CheckboxIndicatorDataAttributes.d.ts +56 -58
  82. package/checkbox/indicator/CheckboxIndicatorDataAttributes.js +57 -60
  83. package/checkbox/indicator/CheckboxIndicatorDataAttributes.mjs +57 -59
  84. package/checkbox/root/CheckboxRoot.js +32 -44
  85. package/checkbox/root/CheckboxRoot.mjs +32 -44
  86. package/checkbox/root/CheckboxRootDataAttributes.d.mts +48 -50
  87. package/checkbox/root/CheckboxRootDataAttributes.d.ts +48 -50
  88. package/checkbox/root/CheckboxRootDataAttributes.js +49 -52
  89. package/checkbox/root/CheckboxRootDataAttributes.mjs +48 -51
  90. package/checkbox/utils/getCheckboxStateAttributesMapping.js +4 -2
  91. package/checkbox/utils/getCheckboxStateAttributesMapping.mjs +3 -2
  92. package/checkbox-group/CheckboxGroup.js +17 -8
  93. package/checkbox-group/CheckboxGroup.mjs +17 -8
  94. package/checkbox-group/CheckboxGroupContext.d.mts +6 -0
  95. package/checkbox-group/CheckboxGroupContext.d.ts +6 -0
  96. package/checkbox-group/CheckboxGroupDataAttributes.d.mts +4 -6
  97. package/checkbox-group/CheckboxGroupDataAttributes.d.ts +4 -6
  98. package/checkbox-group/CheckboxGroupDataAttributes.js +5 -8
  99. package/checkbox-group/CheckboxGroupDataAttributes.mjs +4 -7
  100. package/checkbox-group/useCheckboxGroupParent.d.mts +5 -3
  101. package/checkbox-group/useCheckboxGroupParent.d.ts +5 -3
  102. package/checkbox-group/useCheckboxGroupParent.js +37 -9
  103. package/checkbox-group/useCheckboxGroupParent.mjs +37 -9
  104. package/collapsible/panel/CollapsiblePanel.js +3 -3
  105. package/collapsible/panel/CollapsiblePanel.mjs +1 -1
  106. package/collapsible/panel/CollapsiblePanelCssVars.d.mts +10 -12
  107. package/collapsible/panel/CollapsiblePanelCssVars.d.ts +10 -12
  108. package/collapsible/panel/CollapsiblePanelCssVars.js +11 -14
  109. package/collapsible/panel/CollapsiblePanelCssVars.mjs +10 -13
  110. package/collapsible/panel/CollapsiblePanelDataAttributes.d.mts +16 -18
  111. package/collapsible/panel/CollapsiblePanelDataAttributes.d.ts +16 -18
  112. package/collapsible/panel/CollapsiblePanelDataAttributes.js +17 -20
  113. package/collapsible/panel/CollapsiblePanelDataAttributes.mjs +17 -19
  114. package/collapsible/panel/useCollapsiblePanel.js +2 -2
  115. package/collapsible/panel/useCollapsiblePanel.mjs +1 -1
  116. package/collapsible/root/CollapsibleRootDataAttributes.d.mts +16 -18
  117. package/collapsible/root/CollapsibleRootDataAttributes.d.ts +16 -18
  118. package/collapsible/root/CollapsibleRootDataAttributes.js +17 -20
  119. package/collapsible/root/CollapsibleRootDataAttributes.mjs +17 -19
  120. package/collapsible/root/useCollapsibleRoot.js +1 -1
  121. package/collapsible/root/useCollapsibleRoot.mjs +1 -1
  122. package/collapsible/trigger/CollapsibleTriggerDataAttributes.d.mts +4 -6
  123. package/collapsible/trigger/CollapsibleTriggerDataAttributes.d.ts +4 -6
  124. package/collapsible/trigger/CollapsibleTriggerDataAttributes.js +5 -8
  125. package/collapsible/trigger/CollapsibleTriggerDataAttributes.mjs +4 -7
  126. package/combobox/arrow/ComboboxArrow.js +1 -3
  127. package/combobox/arrow/ComboboxArrow.mjs +1 -3
  128. package/combobox/arrow/ComboboxArrowDataAttributes.d.mts +22 -24
  129. package/combobox/arrow/ComboboxArrowDataAttributes.d.ts +22 -24
  130. package/combobox/arrow/ComboboxArrowDataAttributes.js +23 -26
  131. package/combobox/arrow/ComboboxArrowDataAttributes.mjs +23 -25
  132. package/combobox/backdrop/ComboboxBackdrop.js +3 -5
  133. package/combobox/backdrop/ComboboxBackdrop.mjs +3 -5
  134. package/combobox/backdrop/ComboboxBackdropDataAttributes.d.mts +16 -18
  135. package/combobox/backdrop/ComboboxBackdropDataAttributes.d.ts +16 -18
  136. package/combobox/backdrop/ComboboxBackdropDataAttributes.js +17 -20
  137. package/combobox/backdrop/ComboboxBackdropDataAttributes.mjs +17 -19
  138. package/combobox/chip/ComboboxChip.js +7 -9
  139. package/combobox/chip/ComboboxChip.mjs +7 -9
  140. package/combobox/chip-remove/ComboboxChipRemove.js +9 -11
  141. package/combobox/chip-remove/ComboboxChipRemove.mjs +9 -11
  142. package/combobox/chips/ComboboxChips.js +4 -6
  143. package/combobox/chips/ComboboxChips.mjs +4 -6
  144. package/combobox/clear/ComboboxClear.js +14 -16
  145. package/combobox/clear/ComboboxClear.mjs +14 -16
  146. package/combobox/clear/ComboboxClearDataAttributes.d.mts +20 -22
  147. package/combobox/clear/ComboboxClearDataAttributes.d.ts +20 -22
  148. package/combobox/clear/ComboboxClearDataAttributes.js +21 -24
  149. package/combobox/clear/ComboboxClearDataAttributes.mjs +21 -23
  150. package/combobox/collection/GroupCollectionContext.d.mts +1 -1
  151. package/combobox/collection/GroupCollectionContext.d.ts +1 -1
  152. package/combobox/empty/ComboboxEmpty.js +1 -1
  153. package/combobox/empty/ComboboxEmpty.mjs +1 -1
  154. package/combobox/group/ComboboxGroup.js +6 -1
  155. package/combobox/group/ComboboxGroup.mjs +6 -1
  156. package/combobox/group-label/ComboboxGroupLabel.js +2 -1
  157. package/combobox/group-label/ComboboxGroupLabel.mjs +2 -1
  158. package/combobox/index.d.mts +3 -1
  159. package/combobox/index.d.ts +3 -1
  160. package/combobox/index.parts.d.mts +2 -1
  161. package/combobox/index.parts.d.ts +2 -1
  162. package/combobox/index.parts.js +8 -1
  163. package/combobox/index.parts.mjs +2 -1
  164. package/combobox/input/ComboboxInput.js +44 -40
  165. package/combobox/input/ComboboxInput.mjs +44 -40
  166. package/combobox/input/ComboboxInputDataAttributes.d.mts +53 -55
  167. package/combobox/input/ComboboxInputDataAttributes.d.ts +53 -55
  168. package/combobox/input/ComboboxInputDataAttributes.js +54 -57
  169. package/combobox/input/ComboboxInputDataAttributes.mjs +54 -56
  170. package/combobox/input-group/ComboboxInputGroup.js +7 -9
  171. package/combobox/input-group/ComboboxInputGroup.mjs +7 -9
  172. package/combobox/input-group/ComboboxInputGroupDataAttributes.d.mts +53 -55
  173. package/combobox/input-group/ComboboxInputGroupDataAttributes.d.ts +53 -55
  174. package/combobox/input-group/ComboboxInputGroupDataAttributes.js +54 -57
  175. package/combobox/input-group/ComboboxInputGroupDataAttributes.mjs +53 -56
  176. package/combobox/item/ComboboxItem.js +28 -26
  177. package/combobox/item/ComboboxItem.mjs +29 -27
  178. package/combobox/item/ComboboxItemDataAttributes.d.mts +12 -14
  179. package/combobox/item/ComboboxItemDataAttributes.d.ts +12 -14
  180. package/combobox/item/ComboboxItemDataAttributes.js +13 -16
  181. package/combobox/item/ComboboxItemDataAttributes.mjs +12 -15
  182. package/combobox/item-indicator/ComboboxItemIndicator.js +2 -0
  183. package/combobox/item-indicator/ComboboxItemIndicator.mjs +2 -0
  184. package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.mts +8 -10
  185. package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.ts +8 -10
  186. package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.js +9 -12
  187. package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.mjs +9 -11
  188. package/combobox/items/createItems.d.mts +53 -0
  189. package/combobox/items/createItems.d.ts +53 -0
  190. package/combobox/items/createItems.js +93 -0
  191. package/combobox/items/createItems.mjs +88 -0
  192. package/combobox/items/itemCollection.d.mts +39 -0
  193. package/combobox/items/itemCollection.d.ts +39 -0
  194. package/combobox/items/itemCollection.js +33 -0
  195. package/combobox/items/itemCollection.mjs +27 -0
  196. package/combobox/label/ComboboxLabel.js +4 -6
  197. package/combobox/label/ComboboxLabel.mjs +4 -6
  198. package/combobox/list/ComboboxList.js +13 -11
  199. package/combobox/list/ComboboxList.mjs +13 -11
  200. package/combobox/popup/ComboboxPopup.js +17 -19
  201. package/combobox/popup/ComboboxPopup.mjs +17 -19
  202. package/combobox/popup/ComboboxPopupDataAttributes.d.mts +34 -37
  203. package/combobox/popup/ComboboxPopupDataAttributes.d.ts +34 -37
  204. package/combobox/popup/ComboboxPopupDataAttributes.js +35 -39
  205. package/combobox/popup/ComboboxPopupDataAttributes.mjs +35 -38
  206. package/combobox/portal/ComboboxPortal.js +2 -4
  207. package/combobox/portal/ComboboxPortal.mjs +2 -4
  208. package/combobox/positioner/ComboboxPositioner.js +10 -12
  209. package/combobox/positioner/ComboboxPositioner.mjs +10 -12
  210. package/combobox/positioner/ComboboxPositionerCssVars.d.mts +25 -27
  211. package/combobox/positioner/ComboboxPositionerCssVars.d.ts +25 -27
  212. package/combobox/positioner/ComboboxPositionerCssVars.js +26 -29
  213. package/combobox/positioner/ComboboxPositionerCssVars.mjs +25 -28
  214. package/combobox/positioner/ComboboxPositionerDataAttributes.d.mts +26 -28
  215. package/combobox/positioner/ComboboxPositionerDataAttributes.d.ts +26 -28
  216. package/combobox/positioner/ComboboxPositionerDataAttributes.js +27 -30
  217. package/combobox/positioner/ComboboxPositionerDataAttributes.mjs +27 -29
  218. package/combobox/root/AriaCombobox.d.mts +32 -11
  219. package/combobox/root/AriaCombobox.d.ts +32 -11
  220. package/combobox/root/AriaCombobox.js +308 -168
  221. package/combobox/root/AriaCombobox.mjs +310 -171
  222. package/combobox/root/ComboboxRoot.d.mts +7 -3
  223. package/combobox/root/ComboboxRoot.d.ts +7 -3
  224. package/combobox/root/ComboboxRootContext.d.mts +5 -1
  225. package/combobox/root/ComboboxRootContext.d.ts +5 -1
  226. package/combobox/root/utils/index.d.mts +5 -2
  227. package/combobox/root/utils/index.d.ts +5 -2
  228. package/combobox/root/utils/index.js +2 -1
  229. package/combobox/root/utils/index.mjs +2 -1
  230. package/combobox/root/utils/useFilter.d.mts +2 -1
  231. package/combobox/root/utils/useFilter.d.ts +2 -1
  232. package/combobox/root/utils/useFilteredItems.d.mts +1 -0
  233. package/combobox/root/utils/useFilteredItems.d.ts +1 -0
  234. package/combobox/root/utils/useFilteredItems.js +1 -0
  235. package/combobox/root/utils/useFilteredItems.mjs +1 -0
  236. package/combobox/store.d.mts +55 -28
  237. package/combobox/store.d.ts +55 -28
  238. package/combobox/store.js +5 -0
  239. package/combobox/store.mjs +6 -0
  240. package/combobox/trigger/ComboboxTrigger.d.mts +4 -0
  241. package/combobox/trigger/ComboboxTrigger.d.ts +4 -0
  242. package/combobox/trigger/ComboboxTrigger.js +34 -33
  243. package/combobox/trigger/ComboboxTrigger.mjs +34 -33
  244. package/combobox/trigger/ComboboxTriggerDataAttributes.d.mts +57 -59
  245. package/combobox/trigger/ComboboxTriggerDataAttributes.d.ts +57 -59
  246. package/combobox/trigger/ComboboxTriggerDataAttributes.js +58 -61
  247. package/combobox/trigger/ComboboxTriggerDataAttributes.mjs +58 -60
  248. package/combobox/utils/ComboboxInternalDismissButton.js +1 -1
  249. package/combobox/utils/ComboboxInternalDismissButton.mjs +1 -1
  250. package/combobox/utils/handleInputPress.d.mts +1 -1
  251. package/combobox/utils/handleInputPress.d.ts +1 -1
  252. package/combobox/utils/handleInputPress.js +4 -4
  253. package/combobox/utils/handleInputPress.mjs +4 -4
  254. package/combobox/utils/parts.d.mts +1 -1
  255. package/combobox/utils/parts.d.ts +1 -1
  256. package/combobox/utils/parts.js +6 -8
  257. package/combobox/utils/parts.mjs +6 -8
  258. package/combobox/utils/stateAttributesMapping.d.mts +4 -4
  259. package/combobox/utils/stateAttributesMapping.d.ts +4 -4
  260. package/combobox/utils/stateAttributesMapping.js +4 -2
  261. package/combobox/utils/stateAttributesMapping.mjs +3 -2
  262. package/combobox/value/ComboboxValue.d.mts +5 -0
  263. package/combobox/value/ComboboxValue.d.ts +5 -0
  264. package/combobox/value/ComboboxValue.js +6 -8
  265. package/combobox/value/ComboboxValue.mjs +6 -8
  266. package/context-menu/index.d.mts +1 -1
  267. package/context-menu/index.d.ts +1 -1
  268. package/context-menu/index.parts.d.mts +1 -1
  269. package/context-menu/index.parts.d.ts +1 -1
  270. package/context-menu/index.parts.js +2 -2
  271. package/context-menu/index.parts.mjs +1 -1
  272. package/context-menu/positioner/ContextMenuPositioner.d.mts +95 -0
  273. package/context-menu/positioner/ContextMenuPositioner.d.ts +95 -0
  274. package/context-menu/positioner/ContextMenuPositioner.js +15 -0
  275. package/context-menu/positioner/ContextMenuPositioner.mjs +10 -0
  276. package/context-menu/positioner/ContextMenuPositionerCssVars.d.mts +1 -0
  277. package/context-menu/positioner/ContextMenuPositionerCssVars.d.ts +1 -0
  278. package/context-menu/positioner/ContextMenuPositionerCssVars.js +16 -0
  279. package/context-menu/positioner/ContextMenuPositionerCssVars.mjs +1 -0
  280. package/context-menu/positioner/ContextMenuPositionerDataAttributes.d.mts +1 -0
  281. package/context-menu/positioner/ContextMenuPositionerDataAttributes.d.ts +1 -0
  282. package/context-menu/positioner/ContextMenuPositionerDataAttributes.js +16 -0
  283. package/context-menu/positioner/ContextMenuPositionerDataAttributes.mjs +1 -0
  284. package/context-menu/root/ContextMenuRoot.d.mts +7 -2
  285. package/context-menu/root/ContextMenuRoot.d.ts +7 -2
  286. package/context-menu/trigger/ContextMenuTriggerDataAttributes.d.mts +8 -10
  287. package/context-menu/trigger/ContextMenuTriggerDataAttributes.d.ts +8 -10
  288. package/context-menu/trigger/ContextMenuTriggerDataAttributes.js +9 -12
  289. package/context-menu/trigger/ContextMenuTriggerDataAttributes.mjs +9 -11
  290. package/csp-provider/CSPProvider.d.mts +1 -1
  291. package/csp-provider/CSPProvider.d.ts +1 -1
  292. package/dialog/backdrop/DialogBackdropDataAttributes.d.mts +16 -18
  293. package/dialog/backdrop/DialogBackdropDataAttributes.d.ts +16 -18
  294. package/dialog/backdrop/DialogBackdropDataAttributes.js +17 -20
  295. package/dialog/backdrop/DialogBackdropDataAttributes.mjs +17 -19
  296. package/dialog/close/DialogCloseDataAttributes.d.mts +4 -6
  297. package/dialog/close/DialogCloseDataAttributes.d.ts +4 -6
  298. package/dialog/close/DialogCloseDataAttributes.js +5 -8
  299. package/dialog/close/DialogCloseDataAttributes.mjs +4 -7
  300. package/dialog/popup/DialogPopup.js +2 -1
  301. package/dialog/popup/DialogPopup.mjs +2 -1
  302. package/dialog/popup/DialogPopupCssVars.d.mts +5 -7
  303. package/dialog/popup/DialogPopupCssVars.d.ts +5 -7
  304. package/dialog/popup/DialogPopupCssVars.js +6 -9
  305. package/dialog/popup/DialogPopupCssVars.mjs +5 -8
  306. package/dialog/popup/DialogPopupDataAttributes.d.mts +24 -26
  307. package/dialog/popup/DialogPopupDataAttributes.d.ts +24 -26
  308. package/dialog/popup/DialogPopupDataAttributes.js +25 -28
  309. package/dialog/popup/DialogPopupDataAttributes.mjs +25 -27
  310. package/dialog/root/DialogRoot.d.mts +1 -1
  311. package/dialog/root/DialogRoot.d.ts +1 -1
  312. package/dialog/root/DialogRoot.js +5 -3
  313. package/dialog/root/DialogRoot.mjs +4 -2
  314. package/dialog/root/useRenderDialogRoot.d.mts +2 -1
  315. package/dialog/root/useRenderDialogRoot.d.ts +2 -1
  316. package/dialog/store/DialogStore.js +2 -7
  317. package/dialog/store/DialogStore.mjs +3 -8
  318. package/dialog/trigger/DialogTrigger.js +2 -1
  319. package/dialog/trigger/DialogTrigger.mjs +2 -1
  320. package/dialog/trigger/DialogTriggerDataAttributes.d.mts +8 -10
  321. package/dialog/trigger/DialogTriggerDataAttributes.d.ts +8 -10
  322. package/dialog/trigger/DialogTriggerDataAttributes.js +9 -12
  323. package/dialog/trigger/DialogTriggerDataAttributes.mjs +9 -11
  324. package/dialog/utils/stateAttributesMapping.js +3 -1
  325. package/dialog/utils/stateAttributesMapping.mjs +3 -1
  326. package/dialog/viewport/DialogViewportDataAttributes.d.mts +24 -26
  327. package/dialog/viewport/DialogViewportDataAttributes.d.ts +24 -26
  328. package/dialog/viewport/DialogViewportDataAttributes.js +25 -28
  329. package/dialog/viewport/DialogViewportDataAttributes.mjs +25 -27
  330. package/docs/index.md +2 -1
  331. package/docs/react/components/accordion.md +326 -5
  332. package/docs/react/components/alert-dialog.md +376 -16
  333. package/docs/react/components/autocomplete.md +49 -43
  334. package/docs/react/components/avatar.md +49 -0
  335. package/docs/react/components/button.md +7 -3
  336. package/docs/react/components/collapsible.md +18 -0
  337. package/docs/react/components/combobox.md +990 -226
  338. package/docs/react/components/context-menu.md +47 -49
  339. package/docs/react/components/dialog.md +358 -14
  340. package/docs/react/components/field.md +14 -14
  341. package/docs/react/components/menu.md +29 -28
  342. package/docs/react/components/navigation-menu.md +4 -0
  343. package/docs/react/components/popover.md +1 -0
  344. package/docs/react/components/preview-card.md +5 -4
  345. package/docs/react/components/select.md +7 -7
  346. package/docs/react/components/slider.md +414 -49
  347. package/docs/react/components/tabs.md +1 -4
  348. package/docs/react/components/toast.md +19 -4
  349. package/docs/react/overview/community.md +2 -5
  350. package/docs/react/overview/releases/v1-8-0.md +148 -0
  351. package/docs/react/overview/releases.md +11 -1
  352. package/docs/react/utils/use-render.md +4 -362
  353. package/drawer/backdrop/DrawerBackdrop.js +4 -4
  354. package/drawer/backdrop/DrawerBackdrop.mjs +2 -2
  355. package/drawer/backdrop/DrawerBackdropCssVars.d.mts +5 -7
  356. package/drawer/backdrop/DrawerBackdropCssVars.d.ts +5 -7
  357. package/drawer/backdrop/DrawerBackdropCssVars.js +6 -9
  358. package/drawer/backdrop/DrawerBackdropCssVars.mjs +5 -8
  359. package/drawer/backdrop/DrawerBackdropDataAttributes.d.mts +16 -18
  360. package/drawer/backdrop/DrawerBackdropDataAttributes.d.ts +16 -18
  361. package/drawer/backdrop/DrawerBackdropDataAttributes.js +17 -20
  362. package/drawer/backdrop/DrawerBackdropDataAttributes.mjs +17 -19
  363. package/drawer/content/DrawerContent.js +2 -2
  364. package/drawer/content/DrawerContent.mjs +1 -1
  365. package/drawer/indent/DrawerIndent.js +9 -9
  366. package/drawer/indent/DrawerIndent.mjs +2 -2
  367. package/drawer/popup/DrawerPopup.js +22 -22
  368. package/drawer/popup/DrawerPopup.mjs +3 -3
  369. package/drawer/popup/DrawerPopupCssVars.d.mts +35 -37
  370. package/drawer/popup/DrawerPopupCssVars.d.ts +35 -37
  371. package/drawer/popup/DrawerPopupCssVars.js +36 -39
  372. package/drawer/popup/DrawerPopupCssVars.mjs +35 -38
  373. package/drawer/popup/DrawerPopupDataAttributes.d.mts +41 -43
  374. package/drawer/popup/DrawerPopupDataAttributes.d.ts +41 -43
  375. package/drawer/popup/DrawerPopupDataAttributes.js +42 -45
  376. package/drawer/popup/DrawerPopupDataAttributes.mjs +42 -44
  377. package/drawer/provider/DrawerProvider.d.mts +1 -1
  378. package/drawer/provider/DrawerProvider.d.ts +1 -1
  379. package/drawer/root/DrawerRoot.d.mts +1 -1
  380. package/drawer/root/DrawerRoot.d.ts +1 -1
  381. package/drawer/root/useDrawerSnapPoints.js +1 -1
  382. package/drawer/root/useDrawerSnapPoints.mjs +1 -1
  383. package/drawer/swipe-area/DrawerSwipeArea.js +34 -25
  384. package/drawer/swipe-area/DrawerSwipeArea.mjs +14 -5
  385. package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.mts +21 -23
  386. package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.ts +21 -23
  387. package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.js +22 -25
  388. package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.mjs +22 -24
  389. package/drawer/viewport/DrawerViewport.js +66 -35
  390. package/drawer/viewport/DrawerViewport.mjs +54 -23
  391. package/drawer/viewport/DrawerViewportCssVars.d.mts +6 -8
  392. package/drawer/viewport/DrawerViewportCssVars.d.ts +6 -8
  393. package/drawer/viewport/DrawerViewportCssVars.js +7 -10
  394. package/drawer/viewport/DrawerViewportCssVars.mjs +6 -9
  395. package/drawer/viewport/DrawerViewportDataAttributes.d.mts +20 -22
  396. package/drawer/viewport/DrawerViewportDataAttributes.d.ts +20 -22
  397. package/drawer/viewport/DrawerViewportDataAttributes.js +21 -24
  398. package/drawer/viewport/DrawerViewportDataAttributes.mjs +21 -23
  399. package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.d.mts +1 -1
  400. package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.d.ts +1 -1
  401. package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.js +4 -4
  402. package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.mjs +2 -2
  403. package/field/control/FieldControl.js +67 -20
  404. package/field/control/FieldControl.mjs +67 -20
  405. package/field/control/FieldControlDataAttributes.d.mts +28 -30
  406. package/field/control/FieldControlDataAttributes.d.ts +28 -30
  407. package/field/control/FieldControlDataAttributes.js +29 -32
  408. package/field/control/FieldControlDataAttributes.mjs +28 -31
  409. package/field/description/FieldDescriptionDataAttributes.d.mts +28 -30
  410. package/field/description/FieldDescriptionDataAttributes.d.ts +28 -30
  411. package/field/description/FieldDescriptionDataAttributes.js +29 -32
  412. package/field/description/FieldDescriptionDataAttributes.mjs +28 -31
  413. package/field/error/FieldErrorDataAttributes.d.mts +36 -38
  414. package/field/error/FieldErrorDataAttributes.d.ts +36 -38
  415. package/field/error/FieldErrorDataAttributes.js +37 -40
  416. package/field/error/FieldErrorDataAttributes.mjs +37 -39
  417. package/field/item/FieldItemDataAttributes.d.mts +28 -30
  418. package/field/item/FieldItemDataAttributes.d.ts +28 -30
  419. package/field/item/FieldItemDataAttributes.js +29 -32
  420. package/field/item/FieldItemDataAttributes.mjs +28 -31
  421. package/field/label/FieldLabelDataAttributes.d.mts +28 -30
  422. package/field/label/FieldLabelDataAttributes.d.ts +28 -30
  423. package/field/label/FieldLabelDataAttributes.js +29 -32
  424. package/field/label/FieldLabelDataAttributes.mjs +28 -31
  425. package/field/root/FieldRoot.d.mts +3 -2
  426. package/field/root/FieldRoot.d.ts +3 -2
  427. package/field/root/FieldRoot.js +4 -2
  428. package/field/root/FieldRoot.mjs +4 -2
  429. package/field/root/FieldRootDataAttributes.d.mts +28 -30
  430. package/field/root/FieldRootDataAttributes.d.ts +28 -30
  431. package/field/root/FieldRootDataAttributes.js +29 -32
  432. package/field/root/FieldRootDataAttributes.mjs +28 -31
  433. package/field/root/useFieldValidation.d.mts +3 -2
  434. package/field/root/useFieldValidation.d.ts +3 -2
  435. package/field/root/useFieldValidation.js +116 -91
  436. package/field/root/useFieldValidation.mjs +116 -91
  437. package/floating-ui-react/components/FloatingDelayGroup.js +2 -1
  438. package/floating-ui-react/components/FloatingDelayGroup.mjs +2 -1
  439. package/floating-ui-react/components/FloatingPortal.d.mts +5 -0
  440. package/floating-ui-react/components/FloatingPortal.d.ts +5 -0
  441. package/floating-ui-react/components/FloatingPortal.js +2 -0
  442. package/floating-ui-react/components/FloatingPortal.mjs +2 -0
  443. package/floating-ui-react/hooks/useDismiss.d.mts +1 -1
  444. package/floating-ui-react/hooks/useDismiss.d.ts +1 -1
  445. package/floating-ui-react/hooks/useDismiss.js +65 -10
  446. package/floating-ui-react/hooks/useDismiss.mjs +66 -11
  447. package/floating-ui-react/hooks/useFloatingRootContext.js +0 -2
  448. package/floating-ui-react/hooks/useFloatingRootContext.mjs +0 -2
  449. package/floating-ui-react/hooks/useFocus.js +1 -0
  450. package/floating-ui-react/hooks/useFocus.mjs +1 -0
  451. package/floating-ui-react/hooks/useHoverReferenceInteraction.js +1 -1
  452. package/floating-ui-react/hooks/useHoverReferenceInteraction.mjs +1 -1
  453. package/floating-ui-react/hooks/useListNavigation.js +1 -2
  454. package/floating-ui-react/hooks/useListNavigation.mjs +1 -2
  455. package/floating-ui-react/hooks/useSyncedFloatingRootContext.d.mts +9 -4
  456. package/floating-ui-react/hooks/useSyncedFloatingRootContext.d.ts +9 -4
  457. package/floating-ui-react/hooks/useSyncedFloatingRootContext.js +5 -0
  458. package/floating-ui-react/hooks/useSyncedFloatingRootContext.mjs +6 -0
  459. package/floating-ui-react/middleware/arrow.js +11 -4
  460. package/floating-ui-react/middleware/arrow.mjs +11 -4
  461. package/floating-ui-react/utils/element.d.mts +1 -1
  462. package/floating-ui-react/utils/element.d.ts +1 -1
  463. package/floating-ui-react/utils/element.js +5 -3
  464. package/floating-ui-react/utils/element.mjs +4 -3
  465. package/form/Form.js +13 -7
  466. package/form/Form.mjs +13 -7
  467. package/index.js +1 -1
  468. package/index.mjs +1 -1
  469. package/input/InputDataAttributes.d.mts +28 -30
  470. package/input/InputDataAttributes.d.ts +28 -30
  471. package/input/InputDataAttributes.js +29 -32
  472. package/input/InputDataAttributes.mjs +28 -31
  473. package/internals/PrehydrationScript.d.mts +2 -1
  474. package/internals/PrehydrationScript.d.ts +2 -1
  475. package/internals/TransitionStatusDataAttributes.d.mts +8 -0
  476. package/internals/TransitionStatusDataAttributes.d.ts +8 -0
  477. package/internals/TransitionStatusDataAttributes.js +15 -0
  478. package/internals/TransitionStatusDataAttributes.mjs +9 -0
  479. package/internals/composite/list/CompositeList.d.mts +1 -1
  480. package/internals/composite/list/CompositeList.d.ts +1 -1
  481. package/internals/composite/list/CompositeList.js +10 -2
  482. package/internals/composite/list/CompositeList.mjs +10 -2
  483. package/internals/composite/root/CompositeRoot.d.mts +1 -1
  484. package/internals/composite/root/CompositeRoot.d.ts +1 -1
  485. package/internals/composite/root/useCompositeRoot.js +45 -3
  486. package/internals/composite/root/useCompositeRoot.mjs +44 -2
  487. package/internals/field-constants/constants.js +4 -2
  488. package/internals/field-constants/constants.mjs +3 -2
  489. package/internals/field-register-control/useFieldControlRegistration.d.mts +1 -0
  490. package/internals/field-register-control/useFieldControlRegistration.d.ts +1 -0
  491. package/internals/field-register-control/useFieldControlRegistration.js +8 -0
  492. package/internals/field-register-control/useFieldControlRegistration.mjs +8 -0
  493. package/internals/filter.js +1 -1
  494. package/internals/filter.mjs +1 -1
  495. package/internals/form-context/FormContext.d.mts +1 -1
  496. package/internals/form-context/FormContext.d.ts +1 -1
  497. package/internals/form-context/FormContext.js +2 -2
  498. package/internals/form-context/FormContext.mjs +2 -2
  499. package/internals/itemEquality.d.mts +4 -1
  500. package/internals/itemEquality.d.ts +4 -1
  501. package/internals/itemEquality.js +40 -5
  502. package/internals/itemEquality.mjs +38 -5
  503. package/internals/labelable-provider/LabelableContext.d.mts +3 -1
  504. package/internals/labelable-provider/LabelableContext.d.ts +3 -1
  505. package/internals/labelable-provider/LabelableContext.js +1 -0
  506. package/internals/labelable-provider/LabelableContext.mjs +1 -0
  507. package/internals/labelable-provider/LabelableProvider.d.mts +0 -2
  508. package/internals/labelable-provider/LabelableProvider.d.ts +0 -2
  509. package/internals/labelable-provider/LabelableProvider.js +21 -12
  510. package/internals/labelable-provider/LabelableProvider.mjs +21 -12
  511. package/internals/labelable-provider/useLabel.d.mts +2 -2
  512. package/internals/labelable-provider/useLabel.d.ts +2 -2
  513. package/internals/labelable-provider/useLabel.js +1 -1
  514. package/internals/labelable-provider/useLabel.mjs +1 -1
  515. package/internals/labelable-provider/useLabelableId.d.mts +6 -7
  516. package/internals/labelable-provider/useLabelableId.d.ts +6 -7
  517. package/internals/labelable-provider/useLabelableId.js +27 -20
  518. package/internals/labelable-provider/useLabelableId.mjs +27 -20
  519. package/internals/resolveValueLabel.d.mts +1 -0
  520. package/internals/resolveValueLabel.d.ts +1 -0
  521. package/internals/resolveValueLabel.js +13 -3
  522. package/internals/resolveValueLabel.mjs +12 -3
  523. package/internals/stateAttributesMapping.d.mts +2 -10
  524. package/internals/stateAttributesMapping.d.ts +2 -10
  525. package/internals/stateAttributesMapping.js +5 -13
  526. package/internals/stateAttributesMapping.mjs +4 -13
  527. package/internals/temporal-adapter-luxon/TemporalAdapterLuxon.d.mts +1 -1
  528. package/internals/temporal-adapter-luxon/TemporalAdapterLuxon.d.ts +1 -1
  529. package/internals/useAnchorPositioning.js +34 -25
  530. package/internals/useAnchorPositioning.mjs +34 -25
  531. package/internals/useAnimationsFinished.d.mts +4 -1
  532. package/internals/useAnimationsFinished.d.ts +4 -1
  533. package/internals/useAnimationsFinished.js +45 -5
  534. package/internals/useAnimationsFinished.mjs +44 -5
  535. package/internals/useOpenChangeComplete.d.mts +6 -0
  536. package/internals/useOpenChangeComplete.d.ts +6 -0
  537. package/internals/useOpenChangeComplete.js +2 -1
  538. package/internals/useOpenChangeComplete.mjs +2 -1
  539. package/internals/usePressAndHold.js +8 -0
  540. package/internals/usePressAndHold.mjs +8 -0
  541. package/internals/useRenderElement.js +27 -15
  542. package/internals/useRenderElement.mjs +27 -15
  543. package/internals/useTransitionStatus.d.mts +5 -1
  544. package/internals/useTransitionStatus.d.ts +5 -1
  545. package/internals/useTransitionStatus.js +9 -2
  546. package/internals/useTransitionStatus.mjs +9 -2
  547. package/menu/arrow/MenuArrowDataAttributes.d.mts +22 -24
  548. package/menu/arrow/MenuArrowDataAttributes.d.ts +22 -24
  549. package/menu/arrow/MenuArrowDataAttributes.js +23 -26
  550. package/menu/arrow/MenuArrowDataAttributes.mjs +23 -25
  551. package/menu/backdrop/MenuBackdropDataAttributes.d.mts +16 -18
  552. package/menu/backdrop/MenuBackdropDataAttributes.d.ts +16 -18
  553. package/menu/backdrop/MenuBackdropDataAttributes.js +17 -20
  554. package/menu/backdrop/MenuBackdropDataAttributes.mjs +17 -19
  555. package/menu/checkbox-item/MenuCheckboxItemDataAttributes.d.mts +16 -18
  556. package/menu/checkbox-item/MenuCheckboxItemDataAttributes.d.ts +16 -18
  557. package/menu/checkbox-item/MenuCheckboxItemDataAttributes.js +17 -20
  558. package/menu/checkbox-item/MenuCheckboxItemDataAttributes.mjs +16 -19
  559. package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.js +2 -0
  560. package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.mjs +2 -0
  561. package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.d.mts +20 -22
  562. package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.d.ts +20 -22
  563. package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.js +21 -24
  564. package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.mjs +21 -23
  565. package/menu/group-label/MenuGroupLabel.js +1 -1
  566. package/menu/group-label/MenuGroupLabel.mjs +1 -1
  567. package/menu/item/MenuItemDataAttributes.d.mts +8 -10
  568. package/menu/item/MenuItemDataAttributes.d.ts +8 -10
  569. package/menu/item/MenuItemDataAttributes.js +9 -12
  570. package/menu/item/MenuItemDataAttributes.mjs +8 -11
  571. package/menu/link-item/MenuLinkItemDataAttributes.d.mts +4 -6
  572. package/menu/link-item/MenuLinkItemDataAttributes.d.ts +4 -6
  573. package/menu/link-item/MenuLinkItemDataAttributes.js +5 -8
  574. package/menu/link-item/MenuLinkItemDataAttributes.mjs +4 -7
  575. package/menu/popup/MenuPopupDataAttributes.d.mts +31 -33
  576. package/menu/popup/MenuPopupDataAttributes.d.ts +31 -33
  577. package/menu/popup/MenuPopupDataAttributes.js +32 -35
  578. package/menu/popup/MenuPopupDataAttributes.mjs +32 -34
  579. package/menu/portal/MenuPortal.js +9 -2
  580. package/menu/portal/MenuPortal.mjs +9 -2
  581. package/menu/positioner/MenuPositioner.d.mts +17 -1
  582. package/menu/positioner/MenuPositioner.d.ts +17 -1
  583. package/menu/positioner/MenuPositionerCssVars.d.mts +37 -39
  584. package/menu/positioner/MenuPositionerCssVars.d.ts +37 -39
  585. package/menu/positioner/MenuPositionerCssVars.js +38 -41
  586. package/menu/positioner/MenuPositionerCssVars.mjs +37 -40
  587. package/menu/positioner/MenuPositionerDataAttributes.d.mts +22 -24
  588. package/menu/positioner/MenuPositionerDataAttributes.d.ts +22 -24
  589. package/menu/positioner/MenuPositionerDataAttributes.js +23 -26
  590. package/menu/positioner/MenuPositionerDataAttributes.mjs +23 -25
  591. package/menu/radio-item/MenuRadioItemDataAttributes.d.mts +16 -18
  592. package/menu/radio-item/MenuRadioItemDataAttributes.d.ts +16 -18
  593. package/menu/radio-item/MenuRadioItemDataAttributes.js +17 -20
  594. package/menu/radio-item/MenuRadioItemDataAttributes.mjs +16 -19
  595. package/menu/radio-item-indicator/MenuRadioItemIndicator.js +2 -0
  596. package/menu/radio-item-indicator/MenuRadioItemIndicator.mjs +2 -0
  597. package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.d.mts +20 -22
  598. package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.d.ts +20 -22
  599. package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.js +21 -24
  600. package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.mjs +21 -23
  601. package/menu/root/MenuRoot.d.mts +1 -1
  602. package/menu/root/MenuRoot.d.ts +1 -1
  603. package/menu/root/MenuRoot.js +98 -19
  604. package/menu/root/MenuRoot.mjs +99 -20
  605. package/menu/store/MenuStore.d.mts +2 -2
  606. package/menu/store/MenuStore.d.ts +2 -2
  607. package/menu/store/MenuStore.js +12 -11
  608. package/menu/store/MenuStore.mjs +12 -11
  609. package/menu/submenu-root/MenuSubmenuRoot.d.mts +1 -1
  610. package/menu/submenu-root/MenuSubmenuRoot.d.ts +1 -1
  611. package/menu/submenu-trigger/MenuSubmenuTrigger.d.mts +1 -0
  612. package/menu/submenu-trigger/MenuSubmenuTrigger.d.ts +1 -0
  613. package/menu/submenu-trigger/MenuSubmenuTrigger.js +16 -5
  614. package/menu/submenu-trigger/MenuSubmenuTrigger.mjs +16 -5
  615. package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.d.mts +12 -14
  616. package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.d.ts +12 -14
  617. package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.js +13 -16
  618. package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.mjs +13 -15
  619. package/menu/trigger/MenuTriggerDataAttributes.d.mts +12 -10
  620. package/menu/trigger/MenuTriggerDataAttributes.d.ts +12 -10
  621. package/menu/trigger/MenuTriggerDataAttributes.js +13 -12
  622. package/menu/trigger/MenuTriggerDataAttributes.mjs +13 -11
  623. package/menu/utils/stateAttributesMapping.js +4 -3
  624. package/menu/utils/stateAttributesMapping.mjs +1 -1
  625. package/menu/viewport/MenuViewportCssVars.d.mts +12 -14
  626. package/menu/viewport/MenuViewportCssVars.d.ts +12 -14
  627. package/menu/viewport/MenuViewportCssVars.js +13 -16
  628. package/menu/viewport/MenuViewportCssVars.mjs +12 -15
  629. package/menu/viewport/MenuViewportDataAttributes.d.mts +24 -26
  630. package/menu/viewport/MenuViewportDataAttributes.d.ts +24 -26
  631. package/menu/viewport/MenuViewportDataAttributes.js +25 -28
  632. package/menu/viewport/MenuViewportDataAttributes.mjs +24 -27
  633. package/menubar/Menubar.js +2 -2
  634. package/menubar/Menubar.mjs +1 -1
  635. package/menubar/MenubarDataAttributes.d.mts +13 -15
  636. package/menubar/MenubarDataAttributes.d.ts +13 -15
  637. package/menubar/MenubarDataAttributes.js +14 -17
  638. package/menubar/MenubarDataAttributes.mjs +13 -16
  639. package/meter/root/MeterRoot.js +2 -2
  640. package/meter/root/MeterRoot.mjs +2 -2
  641. package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.d.mts +22 -24
  642. package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.d.ts +22 -24
  643. package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.js +23 -26
  644. package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.mjs +23 -25
  645. package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.d.mts +16 -18
  646. package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.d.ts +16 -18
  647. package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.js +17 -20
  648. package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.mjs +17 -19
  649. package/navigation-menu/content/NavigationMenuContent.js +2 -1
  650. package/navigation-menu/content/NavigationMenuContent.mjs +2 -1
  651. package/navigation-menu/content/NavigationMenuContentDataAttributes.d.mts +21 -23
  652. package/navigation-menu/content/NavigationMenuContentDataAttributes.d.ts +21 -23
  653. package/navigation-menu/content/NavigationMenuContentDataAttributes.js +22 -25
  654. package/navigation-menu/content/NavigationMenuContentDataAttributes.mjs +22 -24
  655. package/navigation-menu/icon/NavigationMenuIconDataAttributes.d.mts +4 -6
  656. package/navigation-menu/icon/NavigationMenuIconDataAttributes.d.ts +4 -6
  657. package/navigation-menu/icon/NavigationMenuIconDataAttributes.js +5 -8
  658. package/navigation-menu/icon/NavigationMenuIconDataAttributes.mjs +5 -7
  659. package/navigation-menu/link/NavigationMenuLinkDataAttributes.d.mts +4 -6
  660. package/navigation-menu/link/NavigationMenuLinkDataAttributes.d.ts +4 -6
  661. package/navigation-menu/link/NavigationMenuLinkDataAttributes.js +5 -8
  662. package/navigation-menu/link/NavigationMenuLinkDataAttributes.mjs +4 -7
  663. package/navigation-menu/popup/NavigationMenuPopupCssVars.d.mts +10 -12
  664. package/navigation-menu/popup/NavigationMenuPopupCssVars.d.ts +10 -12
  665. package/navigation-menu/popup/NavigationMenuPopupCssVars.js +11 -14
  666. package/navigation-menu/popup/NavigationMenuPopupCssVars.mjs +10 -13
  667. package/navigation-menu/popup/NavigationMenuPopupDataAttributes.d.mts +30 -32
  668. package/navigation-menu/popup/NavigationMenuPopupDataAttributes.d.ts +30 -32
  669. package/navigation-menu/popup/NavigationMenuPopupDataAttributes.js +31 -34
  670. package/navigation-menu/popup/NavigationMenuPopupDataAttributes.mjs +31 -33
  671. package/navigation-menu/positioner/NavigationMenuPositionerCssVars.d.mts +35 -37
  672. package/navigation-menu/positioner/NavigationMenuPositionerCssVars.d.ts +35 -37
  673. package/navigation-menu/positioner/NavigationMenuPositionerCssVars.js +36 -39
  674. package/navigation-menu/positioner/NavigationMenuPositionerCssVars.mjs +35 -38
  675. package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.d.mts +26 -28
  676. package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.d.ts +26 -28
  677. package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.js +27 -30
  678. package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.mjs +27 -29
  679. package/navigation-menu/root/NavigationMenuRoot.js +3 -3
  680. package/navigation-menu/root/NavigationMenuRoot.mjs +1 -1
  681. package/navigation-menu/trigger/NavigationMenuTrigger.d.mts +11 -1
  682. package/navigation-menu/trigger/NavigationMenuTrigger.d.ts +11 -1
  683. package/navigation-menu/trigger/NavigationMenuTrigger.js +25 -37
  684. package/navigation-menu/trigger/NavigationMenuTrigger.mjs +9 -21
  685. package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.d.mts +12 -10
  686. package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.d.ts +12 -10
  687. package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.js +13 -12
  688. package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.mjs +13 -11
  689. package/navigation-menu/utils/setSharedFixedSize.js +7 -6
  690. package/navigation-menu/utils/setSharedFixedSize.mjs +2 -2
  691. package/number-field/decrement/NumberFieldDecrementDataAttributes.d.mts +40 -42
  692. package/number-field/decrement/NumberFieldDecrementDataAttributes.d.ts +40 -42
  693. package/number-field/decrement/NumberFieldDecrementDataAttributes.js +41 -44
  694. package/number-field/decrement/NumberFieldDecrementDataAttributes.mjs +40 -43
  695. package/number-field/group/NumberFieldGroupDataAttributes.d.mts +40 -42
  696. package/number-field/group/NumberFieldGroupDataAttributes.d.ts +40 -42
  697. package/number-field/group/NumberFieldGroupDataAttributes.js +41 -44
  698. package/number-field/group/NumberFieldGroupDataAttributes.mjs +40 -43
  699. package/number-field/increment/NumberFieldIncrementDataAttributes.d.mts +40 -42
  700. package/number-field/increment/NumberFieldIncrementDataAttributes.d.ts +40 -42
  701. package/number-field/increment/NumberFieldIncrementDataAttributes.js +41 -44
  702. package/number-field/increment/NumberFieldIncrementDataAttributes.mjs +40 -43
  703. package/number-field/input/NumberFieldInput.js +1 -12
  704. package/number-field/input/NumberFieldInput.mjs +1 -12
  705. package/number-field/input/NumberFieldInputDataAttributes.d.mts +40 -42
  706. package/number-field/input/NumberFieldInputDataAttributes.d.ts +40 -42
  707. package/number-field/input/NumberFieldInputDataAttributes.js +41 -44
  708. package/number-field/input/NumberFieldInputDataAttributes.mjs +40 -43
  709. package/number-field/root/NumberFieldRoot.js +33 -7
  710. package/number-field/root/NumberFieldRoot.mjs +33 -7
  711. package/number-field/root/NumberFieldRootContext.d.mts +1 -0
  712. package/number-field/root/NumberFieldRootContext.d.ts +1 -0
  713. package/number-field/root/NumberFieldRootDataAttributes.d.mts +40 -42
  714. package/number-field/root/NumberFieldRootDataAttributes.d.ts +40 -42
  715. package/number-field/root/NumberFieldRootDataAttributes.js +41 -44
  716. package/number-field/root/NumberFieldRootDataAttributes.mjs +40 -43
  717. package/number-field/root/useNumberFieldStepperButton.js +2 -1
  718. package/number-field/root/useNumberFieldStepperButton.mjs +2 -1
  719. package/number-field/scrub-area/NumberFieldScrubArea.js +2 -1
  720. package/number-field/scrub-area/NumberFieldScrubArea.mjs +2 -1
  721. package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.d.mts +40 -42
  722. package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.d.ts +40 -42
  723. package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.js +41 -44
  724. package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.mjs +40 -43
  725. package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.d.mts +40 -42
  726. package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.d.ts +40 -42
  727. package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.js +41 -44
  728. package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.mjs +40 -43
  729. package/number-field/utils/parse.js +1 -1
  730. package/number-field/utils/parse.mjs +1 -1
  731. package/number-field/utils/validate.js +2 -2
  732. package/number-field/utils/validate.mjs +2 -2
  733. package/otp-field/input/OTPFieldInputDataAttributes.d.mts +40 -42
  734. package/otp-field/input/OTPFieldInputDataAttributes.d.ts +40 -42
  735. package/otp-field/input/OTPFieldInputDataAttributes.js +41 -44
  736. package/otp-field/input/OTPFieldInputDataAttributes.mjs +40 -43
  737. package/otp-field/root/OTPFieldRoot.js +1 -1
  738. package/otp-field/root/OTPFieldRoot.mjs +1 -1
  739. package/otp-field/root/OTPFieldRootDataAttributes.d.mts +40 -42
  740. package/otp-field/root/OTPFieldRootDataAttributes.d.ts +40 -42
  741. package/otp-field/root/OTPFieldRootDataAttributes.js +41 -44
  742. package/otp-field/root/OTPFieldRootDataAttributes.mjs +40 -43
  743. package/package.json +3 -45
  744. package/popover/arrow/PopoverArrowDataAttributes.d.mts +22 -24
  745. package/popover/arrow/PopoverArrowDataAttributes.d.ts +22 -24
  746. package/popover/arrow/PopoverArrowDataAttributes.js +23 -26
  747. package/popover/arrow/PopoverArrowDataAttributes.mjs +23 -25
  748. package/popover/backdrop/PopoverBackdropDataAttributes.d.mts +16 -18
  749. package/popover/backdrop/PopoverBackdropDataAttributes.d.ts +16 -18
  750. package/popover/backdrop/PopoverBackdropDataAttributes.js +17 -20
  751. package/popover/backdrop/PopoverBackdropDataAttributes.mjs +17 -19
  752. package/popover/popup/PopoverPopupCssVars.d.mts +8 -10
  753. package/popover/popup/PopoverPopupCssVars.d.ts +8 -10
  754. package/popover/popup/PopoverPopupCssVars.js +9 -12
  755. package/popover/popup/PopoverPopupCssVars.mjs +8 -11
  756. package/popover/popup/PopoverPopupDataAttributes.d.mts +31 -33
  757. package/popover/popup/PopoverPopupDataAttributes.d.ts +31 -33
  758. package/popover/popup/PopoverPopupDataAttributes.js +32 -35
  759. package/popover/popup/PopoverPopupDataAttributes.mjs +32 -34
  760. package/popover/positioner/PopoverPositionerCssVars.d.mts +37 -39
  761. package/popover/positioner/PopoverPositionerCssVars.d.ts +37 -39
  762. package/popover/positioner/PopoverPositionerCssVars.js +38 -41
  763. package/popover/positioner/PopoverPositionerCssVars.mjs +37 -40
  764. package/popover/positioner/PopoverPositionerDataAttributes.d.mts +22 -24
  765. package/popover/positioner/PopoverPositionerDataAttributes.d.ts +22 -24
  766. package/popover/positioner/PopoverPositionerDataAttributes.js +23 -26
  767. package/popover/positioner/PopoverPositionerDataAttributes.mjs +23 -25
  768. package/popover/root/PopoverRoot.d.mts +1 -1
  769. package/popover/root/PopoverRoot.d.ts +1 -1
  770. package/popover/root/PopoverRoot.js +4 -2
  771. package/popover/root/PopoverRoot.mjs +4 -2
  772. package/popover/store/PopoverStore.js +4 -8
  773. package/popover/store/PopoverStore.mjs +5 -9
  774. package/popover/trigger/PopoverTrigger.js +2 -1
  775. package/popover/trigger/PopoverTrigger.mjs +2 -1
  776. package/popover/trigger/PopoverTriggerDataAttributes.d.mts +12 -10
  777. package/popover/trigger/PopoverTriggerDataAttributes.d.ts +12 -10
  778. package/popover/trigger/PopoverTriggerDataAttributes.js +13 -12
  779. package/popover/trigger/PopoverTriggerDataAttributes.mjs +13 -11
  780. package/popover/viewport/PopoverViewportCssVars.d.mts +12 -14
  781. package/popover/viewport/PopoverViewportCssVars.d.ts +12 -14
  782. package/popover/viewport/PopoverViewportCssVars.js +13 -16
  783. package/popover/viewport/PopoverViewportCssVars.mjs +12 -15
  784. package/popover/viewport/PopoverViewportDataAttributes.d.mts +24 -26
  785. package/popover/viewport/PopoverViewportDataAttributes.d.ts +24 -26
  786. package/popover/viewport/PopoverViewportDataAttributes.js +25 -28
  787. package/popover/viewport/PopoverViewportDataAttributes.mjs +24 -27
  788. package/preview-card/arrow/PreviewCardArrowDataAttributes.d.mts +22 -24
  789. package/preview-card/arrow/PreviewCardArrowDataAttributes.d.ts +22 -24
  790. package/preview-card/arrow/PreviewCardArrowDataAttributes.js +23 -26
  791. package/preview-card/arrow/PreviewCardArrowDataAttributes.mjs +23 -25
  792. package/preview-card/backdrop/PreviewCardBackdropDataAttributes.d.mts +16 -18
  793. package/preview-card/backdrop/PreviewCardBackdropDataAttributes.d.ts +16 -18
  794. package/preview-card/backdrop/PreviewCardBackdropDataAttributes.js +17 -20
  795. package/preview-card/backdrop/PreviewCardBackdropDataAttributes.mjs +17 -19
  796. package/preview-card/popup/PreviewCardPopupDataAttributes.d.mts +26 -28
  797. package/preview-card/popup/PreviewCardPopupDataAttributes.d.ts +26 -28
  798. package/preview-card/popup/PreviewCardPopupDataAttributes.js +27 -30
  799. package/preview-card/popup/PreviewCardPopupDataAttributes.mjs +27 -29
  800. package/preview-card/positioner/PreviewCardPositionerCssVars.d.mts +37 -39
  801. package/preview-card/positioner/PreviewCardPositionerCssVars.d.ts +37 -39
  802. package/preview-card/positioner/PreviewCardPositionerCssVars.js +38 -41
  803. package/preview-card/positioner/PreviewCardPositionerCssVars.mjs +37 -40
  804. package/preview-card/positioner/PreviewCardPositionerDataAttributes.d.mts +22 -24
  805. package/preview-card/positioner/PreviewCardPositionerDataAttributes.d.ts +22 -24
  806. package/preview-card/positioner/PreviewCardPositionerDataAttributes.js +23 -26
  807. package/preview-card/positioner/PreviewCardPositionerDataAttributes.mjs +23 -25
  808. package/preview-card/root/PreviewCardRoot.d.mts +1 -1
  809. package/preview-card/root/PreviewCardRoot.d.ts +1 -1
  810. package/preview-card/store/PreviewCardStore.js +1 -2
  811. package/preview-card/store/PreviewCardStore.mjs +2 -3
  812. package/preview-card/trigger/PreviewCardTriggerDataAttributes.d.mts +4 -6
  813. package/preview-card/trigger/PreviewCardTriggerDataAttributes.d.ts +4 -6
  814. package/preview-card/trigger/PreviewCardTriggerDataAttributes.js +5 -8
  815. package/preview-card/trigger/PreviewCardTriggerDataAttributes.mjs +5 -7
  816. package/preview-card/viewport/PreviewCardViewportCssVars.d.mts +12 -14
  817. package/preview-card/viewport/PreviewCardViewportCssVars.d.ts +12 -14
  818. package/preview-card/viewport/PreviewCardViewportCssVars.js +13 -16
  819. package/preview-card/viewport/PreviewCardViewportCssVars.mjs +12 -15
  820. package/preview-card/viewport/PreviewCardViewportDataAttributes.d.mts +24 -26
  821. package/preview-card/viewport/PreviewCardViewportDataAttributes.d.ts +24 -26
  822. package/preview-card/viewport/PreviewCardViewportDataAttributes.js +25 -28
  823. package/preview-card/viewport/PreviewCardViewportDataAttributes.mjs +24 -27
  824. package/progress/indicator/ProgressIndicatorDataAttributes.d.mts +12 -14
  825. package/progress/indicator/ProgressIndicatorDataAttributes.d.ts +12 -14
  826. package/progress/indicator/ProgressIndicatorDataAttributes.js +13 -16
  827. package/progress/indicator/ProgressIndicatorDataAttributes.mjs +12 -15
  828. package/progress/label/ProgressLabelDataAttributes.d.mts +12 -14
  829. package/progress/label/ProgressLabelDataAttributes.d.ts +12 -14
  830. package/progress/label/ProgressLabelDataAttributes.js +13 -16
  831. package/progress/label/ProgressLabelDataAttributes.mjs +12 -15
  832. package/progress/root/ProgressRoot.js +2 -2
  833. package/progress/root/ProgressRoot.mjs +2 -2
  834. package/progress/root/ProgressRootDataAttributes.d.mts +12 -14
  835. package/progress/root/ProgressRootDataAttributes.d.ts +12 -14
  836. package/progress/root/ProgressRootDataAttributes.js +13 -16
  837. package/progress/root/ProgressRootDataAttributes.mjs +12 -15
  838. package/progress/root/stateAttributesMapping.js +18 -3
  839. package/progress/root/stateAttributesMapping.mjs +17 -3
  840. package/progress/track/ProgressTrackDataAttributes.d.mts +12 -14
  841. package/progress/track/ProgressTrackDataAttributes.d.ts +12 -14
  842. package/progress/track/ProgressTrackDataAttributes.js +13 -16
  843. package/progress/track/ProgressTrackDataAttributes.mjs +12 -15
  844. package/progress/value/ProgressValueDataAttributes.d.mts +12 -14
  845. package/progress/value/ProgressValueDataAttributes.d.ts +12 -14
  846. package/progress/value/ProgressValueDataAttributes.js +13 -16
  847. package/progress/value/ProgressValueDataAttributes.mjs +12 -15
  848. package/radio/indicator/RadioIndicator.js +2 -0
  849. package/radio/indicator/RadioIndicator.mjs +2 -0
  850. package/radio/indicator/RadioIndicatorDataAttributes.d.mts +52 -54
  851. package/radio/indicator/RadioIndicatorDataAttributes.d.ts +52 -54
  852. package/radio/indicator/RadioIndicatorDataAttributes.js +53 -56
  853. package/radio/indicator/RadioIndicatorDataAttributes.mjs +53 -55
  854. package/radio/root/RadioRoot.js +1 -3
  855. package/radio/root/RadioRoot.mjs +1 -3
  856. package/radio/root/RadioRootDataAttributes.d.mts +44 -46
  857. package/radio/root/RadioRootDataAttributes.d.ts +44 -46
  858. package/radio/root/RadioRootDataAttributes.js +45 -48
  859. package/radio/root/RadioRootDataAttributes.mjs +44 -47
  860. package/radio/utils/stateAttributesMapping.js +4 -2
  861. package/radio/utils/stateAttributesMapping.mjs +3 -2
  862. package/radio-group/RadioGroupDataAttributes.d.mts +4 -6
  863. package/radio-group/RadioGroupDataAttributes.d.ts +4 -6
  864. package/radio-group/RadioGroupDataAttributes.js +5 -8
  865. package/radio-group/RadioGroupDataAttributes.mjs +4 -7
  866. package/scroll-area/content/ScrollAreaContentDataAttributes.d.mts +28 -30
  867. package/scroll-area/content/ScrollAreaContentDataAttributes.d.ts +28 -30
  868. package/scroll-area/content/ScrollAreaContentDataAttributes.js +29 -32
  869. package/scroll-area/content/ScrollAreaContentDataAttributes.mjs +28 -31
  870. package/scroll-area/corner/ScrollAreaCorner.js +1 -0
  871. package/scroll-area/corner/ScrollAreaCorner.mjs +1 -0
  872. package/scroll-area/root/ScrollAreaRoot.js +5 -6
  873. package/scroll-area/root/ScrollAreaRoot.mjs +5 -6
  874. package/scroll-area/root/ScrollAreaRootCssVars.d.mts +10 -12
  875. package/scroll-area/root/ScrollAreaRootCssVars.d.ts +10 -12
  876. package/scroll-area/root/ScrollAreaRootCssVars.js +11 -14
  877. package/scroll-area/root/ScrollAreaRootCssVars.mjs +10 -13
  878. package/scroll-area/root/ScrollAreaRootDataAttributes.d.mts +28 -30
  879. package/scroll-area/root/ScrollAreaRootDataAttributes.d.ts +28 -30
  880. package/scroll-area/root/ScrollAreaRootDataAttributes.js +29 -32
  881. package/scroll-area/root/ScrollAreaRootDataAttributes.mjs +28 -31
  882. package/scroll-area/root/stateAttributes.js +8 -7
  883. package/scroll-area/root/stateAttributes.mjs +7 -7
  884. package/scroll-area/scrollbar/ScrollAreaScrollbar.js +12 -4
  885. package/scroll-area/scrollbar/ScrollAreaScrollbar.mjs +14 -5
  886. package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.d.mts +10 -12
  887. package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.d.ts +10 -12
  888. package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.js +11 -14
  889. package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.mjs +10 -13
  890. package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.d.mts +37 -39
  891. package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.d.ts +37 -39
  892. package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.js +38 -41
  893. package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.mjs +37 -40
  894. package/scroll-area/thumb/ScrollAreaThumbDataAttributes.d.mts +9 -11
  895. package/scroll-area/thumb/ScrollAreaThumbDataAttributes.d.ts +9 -11
  896. package/scroll-area/thumb/ScrollAreaThumbDataAttributes.js +10 -13
  897. package/scroll-area/thumb/ScrollAreaThumbDataAttributes.mjs +9 -12
  898. package/scroll-area/viewport/ScrollAreaViewport.js +6 -5
  899. package/scroll-area/viewport/ScrollAreaViewport.mjs +6 -6
  900. package/scroll-area/viewport/ScrollAreaViewportCssVars.d.mts +20 -22
  901. package/scroll-area/viewport/ScrollAreaViewportCssVars.d.ts +20 -22
  902. package/scroll-area/viewport/ScrollAreaViewportCssVars.js +21 -24
  903. package/scroll-area/viewport/ScrollAreaViewportCssVars.mjs +20 -23
  904. package/scroll-area/viewport/ScrollAreaViewportDataAttributes.d.mts +28 -30
  905. package/scroll-area/viewport/ScrollAreaViewportDataAttributes.d.ts +28 -30
  906. package/scroll-area/viewport/ScrollAreaViewportDataAttributes.js +29 -32
  907. package/scroll-area/viewport/ScrollAreaViewportDataAttributes.mjs +28 -31
  908. package/select/arrow/SelectArrow.js +2 -6
  909. package/select/arrow/SelectArrow.mjs +2 -6
  910. package/select/arrow/SelectArrowDataAttributes.d.mts +22 -24
  911. package/select/arrow/SelectArrowDataAttributes.d.ts +22 -24
  912. package/select/arrow/SelectArrowDataAttributes.js +23 -26
  913. package/select/arrow/SelectArrowDataAttributes.mjs +23 -25
  914. package/select/backdrop/SelectBackdrop.js +4 -8
  915. package/select/backdrop/SelectBackdrop.mjs +4 -8
  916. package/select/backdrop/SelectBackdropDataAttributes.d.mts +16 -18
  917. package/select/backdrop/SelectBackdropDataAttributes.d.ts +16 -18
  918. package/select/backdrop/SelectBackdropDataAttributes.js +17 -20
  919. package/select/backdrop/SelectBackdropDataAttributes.mjs +17 -19
  920. package/select/group-label/SelectGroupLabel.js +2 -1
  921. package/select/group-label/SelectGroupLabel.mjs +2 -1
  922. package/select/icon/SelectIcon.js +2 -6
  923. package/select/icon/SelectIcon.mjs +2 -6
  924. package/select/icon/SelectIconDataAttributes.d.mts +4 -6
  925. package/select/icon/SelectIconDataAttributes.d.ts +4 -6
  926. package/select/icon/SelectIconDataAttributes.js +5 -8
  927. package/select/icon/SelectIconDataAttributes.mjs +5 -7
  928. package/select/item/SelectItem.js +38 -37
  929. package/select/item/SelectItem.mjs +40 -39
  930. package/select/item/SelectItemDataAttributes.d.mts +12 -14
  931. package/select/item/SelectItemDataAttributes.d.ts +12 -14
  932. package/select/item/SelectItemDataAttributes.js +13 -16
  933. package/select/item/SelectItemDataAttributes.mjs +12 -15
  934. package/select/item-indicator/SelectItemIndicator.js +2 -0
  935. package/select/item-indicator/SelectItemIndicator.mjs +2 -0
  936. package/select/item-indicator/SelectItemIndicatorDataAttributes.d.mts +8 -10
  937. package/select/item-indicator/SelectItemIndicatorDataAttributes.d.ts +8 -10
  938. package/select/item-indicator/SelectItemIndicatorDataAttributes.js +9 -12
  939. package/select/item-indicator/SelectItemIndicatorDataAttributes.mjs +9 -11
  940. package/select/item-text/SelectItemText.js +4 -7
  941. package/select/item-text/SelectItemText.mjs +4 -7
  942. package/select/label/SelectLabel.js +3 -7
  943. package/select/label/SelectLabel.mjs +3 -7
  944. package/select/list/SelectList.js +9 -10
  945. package/select/list/SelectList.mjs +10 -11
  946. package/select/popup/SelectPopup.js +43 -52
  947. package/select/popup/SelectPopup.mjs +44 -53
  948. package/select/popup/SelectPopupDataAttributes.d.mts +26 -28
  949. package/select/popup/SelectPopupDataAttributes.d.ts +26 -28
  950. package/select/popup/SelectPopupDataAttributes.js +27 -30
  951. package/select/popup/SelectPopupDataAttributes.mjs +27 -29
  952. package/select/portal/SelectPortal.js +3 -7
  953. package/select/portal/SelectPortal.mjs +3 -7
  954. package/select/positioner/SelectPositioner.js +24 -39
  955. package/select/positioner/SelectPositioner.mjs +25 -40
  956. package/select/positioner/SelectPositionerCssVars.d.mts +25 -27
  957. package/select/positioner/SelectPositionerCssVars.d.ts +25 -27
  958. package/select/positioner/SelectPositionerCssVars.js +26 -29
  959. package/select/positioner/SelectPositionerCssVars.mjs +25 -28
  960. package/select/positioner/SelectPositionerDataAttributes.d.mts +22 -24
  961. package/select/positioner/SelectPositionerDataAttributes.d.ts +22 -24
  962. package/select/positioner/SelectPositionerDataAttributes.js +23 -26
  963. package/select/positioner/SelectPositionerDataAttributes.mjs +23 -25
  964. package/select/root/SelectRoot.js +60 -56
  965. package/select/root/SelectRoot.mjs +63 -59
  966. package/select/root/SelectRootContext.d.mts +11 -30
  967. package/select/root/SelectRootContext.d.ts +11 -30
  968. package/select/root/SelectRootContext.js +29 -4
  969. package/select/root/SelectRootContext.mjs +27 -3
  970. package/select/scroll-arrow/SelectScrollArrow.js +11 -19
  971. package/select/scroll-arrow/SelectScrollArrow.mjs +11 -19
  972. package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.d.mts +22 -24
  973. package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.d.ts +22 -24
  974. package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.js +23 -26
  975. package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.mjs +23 -25
  976. package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.d.mts +22 -24
  977. package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.d.ts +22 -24
  978. package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.js +23 -26
  979. package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.mjs +23 -25
  980. package/select/store.d.mts +30 -2
  981. package/select/store.d.ts +30 -2
  982. package/select/store.js +5 -0
  983. package/select/store.mjs +6 -0
  984. package/select/trigger/SelectTrigger.js +23 -27
  985. package/select/trigger/SelectTrigger.mjs +24 -28
  986. package/select/trigger/SelectTriggerDataAttributes.d.mts +53 -55
  987. package/select/trigger/SelectTriggerDataAttributes.d.ts +53 -55
  988. package/select/trigger/SelectTriggerDataAttributes.js +54 -57
  989. package/select/trigger/SelectTriggerDataAttributes.mjs +54 -56
  990. package/select/value/SelectValue.d.mts +2 -0
  991. package/select/value/SelectValue.d.ts +2 -0
  992. package/select/value/SelectValue.js +7 -12
  993. package/select/value/SelectValue.mjs +7 -12
  994. package/select/value/SelectValueDataAttributes.d.mts +4 -6
  995. package/select/value/SelectValueDataAttributes.d.ts +4 -6
  996. package/select/value/SelectValueDataAttributes.js +5 -8
  997. package/select/value/SelectValueDataAttributes.mjs +4 -7
  998. package/separator/SeparatorDataAttributes.d.mts +5 -7
  999. package/separator/SeparatorDataAttributes.d.ts +5 -7
  1000. package/separator/SeparatorDataAttributes.js +6 -9
  1001. package/separator/SeparatorDataAttributes.mjs +5 -8
  1002. package/slider/control/SliderControl.js +1 -1
  1003. package/slider/control/SliderControl.mjs +1 -1
  1004. package/slider/control/SliderControlDataAttributes.d.mts +33 -35
  1005. package/slider/control/SliderControlDataAttributes.d.ts +33 -35
  1006. package/slider/control/SliderControlDataAttributes.js +34 -37
  1007. package/slider/control/SliderControlDataAttributes.mjs +33 -36
  1008. package/slider/indicator/SliderIndicatorDataAttributes.d.mts +33 -35
  1009. package/slider/indicator/SliderIndicatorDataAttributes.d.ts +33 -35
  1010. package/slider/indicator/SliderIndicatorDataAttributes.js +34 -37
  1011. package/slider/indicator/SliderIndicatorDataAttributes.mjs +33 -36
  1012. package/slider/root/SliderRoot.js +2 -2
  1013. package/slider/root/SliderRoot.mjs +2 -2
  1014. package/slider/root/SliderRootDataAttributes.d.mts +33 -35
  1015. package/slider/root/SliderRootDataAttributes.d.ts +33 -35
  1016. package/slider/root/SliderRootDataAttributes.js +34 -37
  1017. package/slider/root/SliderRootDataAttributes.mjs +33 -36
  1018. package/slider/thumb/SliderThumb.d.mts +1 -2
  1019. package/slider/thumb/SliderThumb.d.ts +1 -2
  1020. package/slider/thumb/SliderThumb.js +4 -3
  1021. package/slider/thumb/SliderThumb.mjs +4 -3
  1022. package/slider/thumb/SliderThumbDataAttributes.d.mts +37 -39
  1023. package/slider/thumb/SliderThumbDataAttributes.d.ts +37 -39
  1024. package/slider/thumb/SliderThumbDataAttributes.js +38 -41
  1025. package/slider/thumb/SliderThumbDataAttributes.mjs +37 -40
  1026. package/slider/track/SliderTrackDataAttributes.d.mts +33 -35
  1027. package/slider/track/SliderTrackDataAttributes.d.ts +33 -35
  1028. package/slider/track/SliderTrackDataAttributes.js +34 -37
  1029. package/slider/track/SliderTrackDataAttributes.mjs +33 -36
  1030. package/slider/utils/getPushedThumbValues.js +1 -1
  1031. package/slider/utils/getPushedThumbValues.mjs +1 -1
  1032. package/slider/utils/getSliderValue.js +1 -1
  1033. package/slider/utils/getSliderValue.mjs +1 -1
  1034. package/slider/utils/resolveThumbCollision.js +1 -1
  1035. package/slider/utils/resolveThumbCollision.mjs +1 -1
  1036. package/slider/value/SliderValue.js +1 -1
  1037. package/slider/value/SliderValue.mjs +1 -1
  1038. package/slider/value/SliderValueDataAttributes.d.mts +33 -35
  1039. package/slider/value/SliderValueDataAttributes.d.ts +33 -35
  1040. package/slider/value/SliderValueDataAttributes.js +34 -37
  1041. package/slider/value/SliderValueDataAttributes.mjs +33 -36
  1042. package/switch/root/SwitchRoot.js +3 -8
  1043. package/switch/root/SwitchRoot.mjs +3 -8
  1044. package/switch/root/SwitchRootDataAttributes.d.mts +44 -46
  1045. package/switch/root/SwitchRootDataAttributes.d.ts +44 -46
  1046. package/switch/root/SwitchRootDataAttributes.js +45 -48
  1047. package/switch/root/SwitchRootDataAttributes.mjs +44 -47
  1048. package/switch/stateAttributesMapping.js +4 -2
  1049. package/switch/stateAttributesMapping.mjs +3 -2
  1050. package/switch/thumb/SwitchThumbDataAttributes.d.mts +44 -46
  1051. package/switch/thumb/SwitchThumbDataAttributes.d.ts +44 -46
  1052. package/switch/thumb/SwitchThumbDataAttributes.js +45 -48
  1053. package/switch/thumb/SwitchThumbDataAttributes.mjs +44 -47
  1054. package/tabs/indicator/TabsIndicator.js +133 -17
  1055. package/tabs/indicator/TabsIndicator.mjs +133 -17
  1056. package/tabs/indicator/TabsIndicatorCssVars.d.mts +30 -32
  1057. package/tabs/indicator/TabsIndicatorCssVars.d.ts +30 -32
  1058. package/tabs/indicator/TabsIndicatorCssVars.js +31 -34
  1059. package/tabs/indicator/TabsIndicatorCssVars.mjs +30 -33
  1060. package/tabs/indicator/TabsIndicatorDataAttributes.d.mts +10 -12
  1061. package/tabs/indicator/TabsIndicatorDataAttributes.d.ts +10 -12
  1062. package/tabs/indicator/TabsIndicatorDataAttributes.js +11 -14
  1063. package/tabs/indicator/TabsIndicatorDataAttributes.mjs +10 -13
  1064. package/tabs/indicator/prehydrationScript.min.d.mts +1 -1
  1065. package/tabs/indicator/prehydrationScript.min.d.ts +1 -1
  1066. package/tabs/indicator/prehydrationScript.min.js +1 -1
  1067. package/tabs/indicator/prehydrationScript.min.mjs +1 -1
  1068. package/tabs/list/TabsListDataAttributes.d.mts +10 -12
  1069. package/tabs/list/TabsListDataAttributes.d.ts +10 -12
  1070. package/tabs/list/TabsListDataAttributes.js +11 -14
  1071. package/tabs/list/TabsListDataAttributes.mjs +10 -13
  1072. package/tabs/panel/TabsPanel.js +2 -1
  1073. package/tabs/panel/TabsPanel.mjs +2 -1
  1074. package/tabs/panel/TabsPanelDataAttributes.d.mts +26 -28
  1075. package/tabs/panel/TabsPanelDataAttributes.d.ts +26 -28
  1076. package/tabs/panel/TabsPanelDataAttributes.js +27 -30
  1077. package/tabs/panel/TabsPanelDataAttributes.mjs +27 -29
  1078. package/tabs/root/TabsRootDataAttributes.d.mts +10 -12
  1079. package/tabs/root/TabsRootDataAttributes.d.ts +10 -12
  1080. package/tabs/root/TabsRootDataAttributes.js +11 -14
  1081. package/tabs/root/TabsRootDataAttributes.mjs +10 -13
  1082. package/tabs/root/stateAttributesMapping.js +3 -1
  1083. package/tabs/root/stateAttributesMapping.mjs +2 -1
  1084. package/tabs/tab/TabsTabDataAttributes.d.mts +18 -20
  1085. package/tabs/tab/TabsTabDataAttributes.d.ts +18 -20
  1086. package/tabs/tab/TabsTabDataAttributes.js +19 -22
  1087. package/tabs/tab/TabsTabDataAttributes.mjs +18 -21
  1088. package/toast/action/ToastActionDataAttributes.d.mts +5 -7
  1089. package/toast/action/ToastActionDataAttributes.d.ts +5 -7
  1090. package/toast/action/ToastActionDataAttributes.js +6 -9
  1091. package/toast/action/ToastActionDataAttributes.mjs +5 -8
  1092. package/toast/arrow/ToastArrowDataAttributes.d.mts +14 -16
  1093. package/toast/arrow/ToastArrowDataAttributes.d.ts +14 -16
  1094. package/toast/arrow/ToastArrowDataAttributes.js +15 -18
  1095. package/toast/arrow/ToastArrowDataAttributes.mjs +15 -17
  1096. package/toast/close/ToastCloseDataAttributes.d.mts +5 -7
  1097. package/toast/close/ToastCloseDataAttributes.d.ts +5 -7
  1098. package/toast/close/ToastCloseDataAttributes.js +6 -9
  1099. package/toast/close/ToastCloseDataAttributes.mjs +5 -8
  1100. package/toast/content/ToastContentDataAttributes.d.mts +10 -12
  1101. package/toast/content/ToastContentDataAttributes.d.ts +10 -12
  1102. package/toast/content/ToastContentDataAttributes.js +11 -14
  1103. package/toast/content/ToastContentDataAttributes.mjs +10 -13
  1104. package/toast/createToastManager.d.mts +2 -2
  1105. package/toast/createToastManager.d.ts +2 -2
  1106. package/toast/createToastManager.js +2 -2
  1107. package/toast/createToastManager.mjs +2 -2
  1108. package/toast/description/ToastDescriptionDataAttributes.d.mts +5 -7
  1109. package/toast/description/ToastDescriptionDataAttributes.d.ts +5 -7
  1110. package/toast/description/ToastDescriptionDataAttributes.js +6 -9
  1111. package/toast/description/ToastDescriptionDataAttributes.mjs +5 -8
  1112. package/toast/positioner/ToastPositioner.js +2 -1
  1113. package/toast/positioner/ToastPositioner.mjs +2 -1
  1114. package/toast/positioner/ToastPositionerCssVars.d.mts +25 -27
  1115. package/toast/positioner/ToastPositionerCssVars.d.ts +25 -27
  1116. package/toast/positioner/ToastPositionerCssVars.js +26 -29
  1117. package/toast/positioner/ToastPositionerCssVars.mjs +25 -28
  1118. package/toast/positioner/ToastPositionerDataAttributes.d.mts +14 -16
  1119. package/toast/positioner/ToastPositionerDataAttributes.d.ts +14 -16
  1120. package/toast/positioner/ToastPositionerDataAttributes.js +15 -18
  1121. package/toast/positioner/ToastPositionerDataAttributes.mjs +15 -17
  1122. package/toast/provider/ToastProvider.js +1 -1
  1123. package/toast/provider/ToastProvider.mjs +1 -1
  1124. package/toast/root/ToastRoot.js +10 -7
  1125. package/toast/root/ToastRoot.mjs +10 -7
  1126. package/toast/root/ToastRootCssVars.d.mts +25 -27
  1127. package/toast/root/ToastRootCssVars.d.ts +25 -27
  1128. package/toast/root/ToastRootCssVars.js +26 -29
  1129. package/toast/root/ToastRootCssVars.mjs +25 -28
  1130. package/toast/root/ToastRootDataAttributes.d.mts +33 -35
  1131. package/toast/root/ToastRootDataAttributes.d.ts +33 -35
  1132. package/toast/root/ToastRootDataAttributes.js +34 -37
  1133. package/toast/root/ToastRootDataAttributes.mjs +34 -36
  1134. package/toast/store.d.mts +1 -1
  1135. package/toast/store.d.ts +1 -1
  1136. package/toast/store.js +9 -1
  1137. package/toast/store.mjs +9 -1
  1138. package/toast/title/ToastTitleDataAttributes.d.mts +5 -7
  1139. package/toast/title/ToastTitleDataAttributes.d.ts +5 -7
  1140. package/toast/title/ToastTitleDataAttributes.js +6 -9
  1141. package/toast/title/ToastTitleDataAttributes.mjs +5 -8
  1142. package/toast/useToastManager.d.mts +1 -1
  1143. package/toast/useToastManager.d.ts +1 -1
  1144. package/toast/viewport/ToastViewport.js +2 -1
  1145. package/toast/viewport/ToastViewport.mjs +2 -1
  1146. package/toast/viewport/ToastViewportCssVars.d.mts +5 -7
  1147. package/toast/viewport/ToastViewportCssVars.d.ts +5 -7
  1148. package/toast/viewport/ToastViewportCssVars.js +6 -9
  1149. package/toast/viewport/ToastViewportCssVars.mjs +5 -8
  1150. package/toast/viewport/ToastViewportDataAttributes.d.mts +5 -7
  1151. package/toast/viewport/ToastViewportDataAttributes.d.ts +5 -7
  1152. package/toast/viewport/ToastViewportDataAttributes.js +6 -9
  1153. package/toast/viewport/ToastViewportDataAttributes.mjs +5 -8
  1154. package/toggle/Toggle.js +1 -2
  1155. package/toggle/Toggle.mjs +1 -2
  1156. package/toggle/ToggleDataAttributes.d.mts +8 -10
  1157. package/toggle/ToggleDataAttributes.d.ts +8 -10
  1158. package/toggle/ToggleDataAttributes.js +9 -12
  1159. package/toggle/ToggleDataAttributes.mjs +8 -11
  1160. package/toggle-group/ToggleGroup.js +3 -1
  1161. package/toggle-group/ToggleGroup.mjs +3 -1
  1162. package/toggle-group/ToggleGroupDataAttributes.d.mts +13 -15
  1163. package/toggle-group/ToggleGroupDataAttributes.d.ts +13 -15
  1164. package/toggle-group/ToggleGroupDataAttributes.js +14 -17
  1165. package/toggle-group/ToggleGroupDataAttributes.mjs +13 -16
  1166. package/toolbar/button/ToolbarButtonDataAttributes.d.mts +13 -15
  1167. package/toolbar/button/ToolbarButtonDataAttributes.d.ts +13 -15
  1168. package/toolbar/button/ToolbarButtonDataAttributes.js +14 -17
  1169. package/toolbar/button/ToolbarButtonDataAttributes.mjs +13 -16
  1170. package/toolbar/group/ToolbarGroupDataAttributes.d.mts +9 -11
  1171. package/toolbar/group/ToolbarGroupDataAttributes.d.ts +9 -11
  1172. package/toolbar/group/ToolbarGroupDataAttributes.js +10 -13
  1173. package/toolbar/group/ToolbarGroupDataAttributes.mjs +9 -12
  1174. package/toolbar/input/ToolbarInputDataAttributes.d.mts +13 -15
  1175. package/toolbar/input/ToolbarInputDataAttributes.d.ts +13 -15
  1176. package/toolbar/input/ToolbarInputDataAttributes.js +14 -17
  1177. package/toolbar/input/ToolbarInputDataAttributes.mjs +13 -16
  1178. package/toolbar/link/ToolbarLinkDataAttributes.d.mts +5 -7
  1179. package/toolbar/link/ToolbarLinkDataAttributes.d.ts +5 -7
  1180. package/toolbar/link/ToolbarLinkDataAttributes.js +6 -9
  1181. package/toolbar/link/ToolbarLinkDataAttributes.mjs +5 -8
  1182. package/toolbar/root/ToolbarRootDataAttributes.d.mts +9 -11
  1183. package/toolbar/root/ToolbarRootDataAttributes.d.ts +9 -11
  1184. package/toolbar/root/ToolbarRootDataAttributes.js +10 -13
  1185. package/toolbar/root/ToolbarRootDataAttributes.mjs +9 -12
  1186. package/toolbar/separator/ToolbarSeparatorDataAttributes.d.mts +5 -7
  1187. package/toolbar/separator/ToolbarSeparatorDataAttributes.d.ts +5 -7
  1188. package/toolbar/separator/ToolbarSeparatorDataAttributes.js +6 -9
  1189. package/toolbar/separator/ToolbarSeparatorDataAttributes.mjs +5 -8
  1190. package/tooltip/arrow/TooltipArrowDataAttributes.d.mts +27 -29
  1191. package/tooltip/arrow/TooltipArrowDataAttributes.d.ts +27 -29
  1192. package/tooltip/arrow/TooltipArrowDataAttributes.js +28 -31
  1193. package/tooltip/arrow/TooltipArrowDataAttributes.mjs +28 -30
  1194. package/tooltip/popup/TooltipPopupDataAttributes.d.mts +31 -33
  1195. package/tooltip/popup/TooltipPopupDataAttributes.d.ts +31 -33
  1196. package/tooltip/popup/TooltipPopupDataAttributes.js +32 -35
  1197. package/tooltip/popup/TooltipPopupDataAttributes.mjs +32 -34
  1198. package/tooltip/positioner/TooltipPositionerCssVars.d.mts +37 -39
  1199. package/tooltip/positioner/TooltipPositionerCssVars.d.ts +37 -39
  1200. package/tooltip/positioner/TooltipPositionerCssVars.js +38 -41
  1201. package/tooltip/positioner/TooltipPositionerCssVars.mjs +37 -40
  1202. package/tooltip/positioner/TooltipPositionerDataAttributes.d.mts +22 -24
  1203. package/tooltip/positioner/TooltipPositionerDataAttributes.d.ts +22 -24
  1204. package/tooltip/positioner/TooltipPositionerDataAttributes.js +23 -26
  1205. package/tooltip/positioner/TooltipPositionerDataAttributes.mjs +23 -25
  1206. package/tooltip/root/TooltipRoot.d.mts +1 -1
  1207. package/tooltip/root/TooltipRoot.d.ts +1 -1
  1208. package/tooltip/store/TooltipStore.js +1 -2
  1209. package/tooltip/store/TooltipStore.mjs +2 -3
  1210. package/tooltip/trigger/TooltipTrigger.js +7 -5
  1211. package/tooltip/trigger/TooltipTrigger.mjs +7 -5
  1212. package/tooltip/trigger/TooltipTriggerDataAttributes.d.mts +8 -10
  1213. package/tooltip/trigger/TooltipTriggerDataAttributes.d.ts +8 -10
  1214. package/tooltip/trigger/TooltipTriggerDataAttributes.js +9 -12
  1215. package/tooltip/trigger/TooltipTriggerDataAttributes.mjs +9 -11
  1216. package/tooltip/viewport/TooltipViewportCssVars.d.mts +12 -14
  1217. package/tooltip/viewport/TooltipViewportCssVars.d.ts +12 -14
  1218. package/tooltip/viewport/TooltipViewportCssVars.js +13 -16
  1219. package/tooltip/viewport/TooltipViewportCssVars.mjs +12 -15
  1220. package/tooltip/viewport/TooltipViewportDataAttributes.d.mts +24 -26
  1221. package/tooltip/viewport/TooltipViewportDataAttributes.d.ts +24 -26
  1222. package/tooltip/viewport/TooltipViewportDataAttributes.js +25 -28
  1223. package/tooltip/viewport/TooltipViewportDataAttributes.mjs +24 -27
  1224. package/utils/CommonPopupCssVars.d.mts +12 -0
  1225. package/utils/CommonPopupCssVars.d.ts +12 -0
  1226. package/utils/CommonPopupCssVars.js +18 -0
  1227. package/utils/CommonPopupCssVars.mjs +12 -0
  1228. package/utils/CommonPopupDataAttributes.d.mts +30 -0
  1229. package/utils/CommonPopupDataAttributes.d.ts +30 -0
  1230. package/utils/CommonPopupDataAttributes.js +44 -0
  1231. package/utils/CommonPopupDataAttributes.mjs +38 -0
  1232. package/utils/CommonPositionerCssVars.d.mts +37 -0
  1233. package/utils/CommonPositionerCssVars.d.ts +37 -0
  1234. package/utils/CommonPositionerCssVars.js +43 -0
  1235. package/utils/CommonPositionerCssVars.mjs +37 -0
  1236. package/utils/CommonTriggerDataAttributes.d.mts +8 -0
  1237. package/utils/CommonTriggerDataAttributes.d.ts +8 -0
  1238. package/utils/CommonTriggerDataAttributes.js +15 -0
  1239. package/utils/CommonTriggerDataAttributes.mjs +9 -0
  1240. package/utils/CommonViewportDataAttributes.d.mts +7 -0
  1241. package/utils/CommonViewportDataAttributes.d.ts +7 -0
  1242. package/utils/CommonViewportDataAttributes.js +13 -0
  1243. package/utils/CommonViewportDataAttributes.mjs +7 -0
  1244. package/utils/NullStore.d.mts +2 -2
  1245. package/utils/NullStore.d.ts +2 -2
  1246. package/utils/collapsibleOpenStateMapping.js +6 -5
  1247. package/utils/collapsibleOpenStateMapping.mjs +2 -2
  1248. package/utils/getElementTransform.d.mts +12 -0
  1249. package/utils/getElementTransform.d.ts +12 -0
  1250. package/utils/getElementTransform.js +40 -0
  1251. package/utils/getElementTransform.mjs +35 -0
  1252. package/utils/popupStateMapping.d.mts +12 -51
  1253. package/utils/popupStateMapping.d.ts +12 -51
  1254. package/utils/popupStateMapping.js +11 -51
  1255. package/utils/popupStateMapping.mjs +10 -54
  1256. package/utils/popups/popupHandle.js +2 -2
  1257. package/utils/popups/popupHandle.mjs +2 -2
  1258. package/utils/popups/popupStoreUtils.d.mts +28 -11
  1259. package/utils/popups/popupStoreUtils.d.ts +28 -11
  1260. package/utils/popups/popupStoreUtils.js +82 -55
  1261. package/utils/popups/popupStoreUtils.mjs +81 -54
  1262. package/utils/popups/store.d.mts +7 -5
  1263. package/utils/popups/store.d.ts +7 -5
  1264. package/utils/popups/store.js +13 -18
  1265. package/utils/popups/store.mjs +13 -17
  1266. package/utils/scrollEdges.js +1 -1
  1267. package/utils/scrollEdges.mjs +1 -1
  1268. package/utils/styles.d.mts +1 -1
  1269. package/utils/styles.d.ts +1 -1
  1270. package/utils/usePopupAutoResize.js +10 -8
  1271. package/utils/usePopupAutoResize.mjs +11 -8
  1272. package/utils/usePopupViewport.js +5 -3
  1273. package/utils/usePopupViewport.mjs +5 -3
  1274. package/utils/useSwipeDismiss.d.mts +0 -5
  1275. package/utils/useSwipeDismiss.d.ts +0 -5
  1276. package/utils/useSwipeDismiss.js +14 -33
  1277. package/utils/useSwipeDismiss.mjs +14 -32
  1278. package/internals/areArraysEqual.d.mts +0 -3
  1279. package/internals/areArraysEqual.d.ts +0 -3
  1280. package/internals/areArraysEqual.js +0 -9
  1281. package/internals/areArraysEqual.mjs +0 -3
  1282. package/internals/clamp.d.mts +0 -1
  1283. package/internals/clamp.d.ts +0 -1
  1284. package/internals/clamp.js +0 -9
  1285. package/internals/clamp.mjs +0 -3
  1286. package/internals/shadowDom.d.mts +0 -3
  1287. package/internals/shadowDom.d.ts +0 -3
  1288. package/internals/shadowDom.js +0 -48
  1289. package/internals/shadowDom.mjs +0 -40
  1290. package/utils/formatNumber.d.mts +0 -3
  1291. package/utils/formatNumber.d.ts +0 -3
  1292. package/utils/formatNumber.js +0 -29
  1293. package/utils/formatNumber.mjs +0 -21
  1294. package/utils/stringifyLocale.d.mts +0 -1
  1295. package/utils/stringifyLocale.d.ts +0 -1
  1296. package/utils/stringifyLocale.js +0 -15
  1297. package/utils/stringifyLocale.mjs +0 -9
  1298. /package/drawer/content/{DrawerContentDataAttributes.d.mts → drawerContentAttribute.d.mts} +0 -0
  1299. /package/drawer/content/{DrawerContentDataAttributes.d.ts → drawerContentAttribute.d.ts} +0 -0
  1300. /package/drawer/content/{DrawerContentDataAttributes.js → drawerContentAttribute.js} +0 -0
  1301. /package/drawer/content/{DrawerContentDataAttributes.mjs → drawerContentAttribute.mjs} +0 -0
@@ -19,8 +19,9 @@ var _DirectionContext = require("./direction-context/DirectionContext");
19
19
  var _arrow = require("../floating-ui-react/middleware/arrow");
20
20
  var _hideMiddleware = require("../utils/hideMiddleware");
21
21
  var _adaptiveOriginConstants = require("../utils/adaptiveOriginConstants");
22
- const AVAILABLE_WIDTH_VAR = '--available-width';
23
- const AVAILABLE_HEIGHT_VAR = '--available-height';
22
+ var CommonPositionerCssVars = _interopRequireWildcard(require("../utils/CommonPositionerCssVars"));
23
+ const AVAILABLE_WIDTH_VAR = CommonPositionerCssVars.availableWidth;
24
+ const AVAILABLE_HEIGHT_VAR = CommonPositionerCssVars.availableHeight;
24
25
  function getLogicalSide(sideParam, renderedSide, isRtl) {
25
26
  const isLogicalSideParam = sideParam === 'inline-start' || sideParam === 'inline-end';
26
27
  const logicalRight = isRtl ? 'inline-start' : 'inline-end';
@@ -237,46 +238,53 @@ function useAnchorPositioningWithHook(params, useFloatingHook) {
237
238
  } = rects.reference;
238
239
  const anchorWidth = (Math.round((x + width) * dpr) - Math.round(x * dpr)) / dpr;
239
240
  const anchorHeight = (Math.round((y + height) * dpr) - Math.round(y * dpr)) / dpr;
240
- floatingStyle.setProperty('--anchor-width', `${anchorWidth}px`);
241
- floatingStyle.setProperty('--anchor-height', `${anchorHeight}px`);
241
+ floatingStyle.setProperty(CommonPositionerCssVars.anchorWidth, `${anchorWidth}px`);
242
+ floatingStyle.setProperty(CommonPositionerCssVars.anchorHeight, `${anchorHeight}px`);
242
243
  }
243
244
  }), (0, _arrow.arrow)(state => ({
244
245
  // `transform-origin` calculations rely on an element existing. If the arrow hasn't been set,
245
246
  // we'll create a fake element.
246
247
  element: arrowRef.current || (0, _owner.ownerDocument)(state.elements.floating).createElement('div'),
247
- padding: arrowPadding,
248
+ // No padding for the fake arrow: it would displace aligned popups on narrow anchors.
249
+ padding: arrowRef.current ? arrowPadding : 0,
248
250
  offsetParent: 'floating'
249
251
  }), [arrowPadding]), {
250
252
  name: 'transformOrigin',
251
253
  fn(state) {
252
254
  const {
253
- elements,
255
+ elements: {
256
+ floating
257
+ },
254
258
  middlewareData,
255
259
  placement: renderedPlacement,
260
+ platform,
256
261
  rects,
257
262
  y
258
263
  } = state;
259
- const currentRenderedSide = (0, _utils.getSide)(renderedPlacement);
260
- const currentRenderedAxis = (0, _utils.getSideAxis)(currentRenderedSide);
264
+ const renderedSide = (0, _utils.getSide)(renderedPlacement);
265
+ const renderedAlign = (0, _utils.getAlignment)(renderedPlacement);
266
+ const isVertical = (0, _utils.getSideAxis)(renderedSide) === 'y';
261
267
  const arrowEl = arrowRef.current;
262
- const arrowX = middlewareData.arrow?.x || 0;
263
- const arrowY = middlewareData.arrow?.y || 0;
264
- const arrowWidth = arrowEl?.clientWidth || 0;
265
- const arrowHeight = arrowEl?.clientHeight || 0;
266
- const transformX = arrowX + arrowWidth / 2;
267
- const transformY = arrowY + arrowHeight / 2;
268
- const shiftY = Math.abs(middlewareData.shift?.y || 0);
269
- const halfAnchorHeight = rects.reference.height / 2;
270
268
  const sideOffsetValue = typeof sideOffset === 'function' ? sideOffset(getOffsetData(state, sideParam, isRtl)) : sideOffset;
271
- const isOverlappingAnchor = shiftY > sideOffsetValue;
272
- const adjacentTransformOrigin = {
273
- top: `${transformX}px calc(100% + ${sideOffsetValue}px)`,
274
- bottom: `${transformX}px ${-sideOffsetValue}px`,
275
- left: `calc(100% + ${sideOffsetValue}px) ${transformY}px`,
276
- right: `${-sideOffsetValue}px ${transformY}px`
277
- }[currentRenderedSide];
278
- const overlapTransformOrigin = `${transformX}px ${rects.reference.y + halfAnchorHeight - y}px`;
279
- elements.floating.style.setProperty('--transform-origin', crossAxisShiftEnabled && currentRenderedAxis === 'y' && isOverlappingAnchor ? overlapTransformOrigin : adjacentTransformOrigin);
269
+
270
+ // An aligned arrowless popup grows from its aligned edge, until a shift (beyond subpixel)
271
+ // breaks its alignment with the anchor. Everything else grows from the arrow, real or fake.
272
+ let crossOrigin;
273
+ if (!arrowEl && renderedAlign && Math.abs(isVertical ? middlewareData.shift?.x || 0 : middlewareData.shift?.y || 0) <= 1) {
274
+ // The platform direction, not `isRtl`: it must match what Floating UI placed with.
275
+ crossOrigin = renderedAlign === 'start' === (isVertical && platform.isRTL?.(floating) === true) ? '100%' : '0%';
276
+ } else {
277
+ const arrowOffset = isVertical ? middlewareData.arrow?.x || 0 : middlewareData.arrow?.y || 0;
278
+ const arrowSize = isVertical ? arrowEl?.clientWidth || 0 : arrowEl?.clientHeight || 0;
279
+ crossOrigin = `${arrowOffset + arrowSize / 2}px`;
280
+ }
281
+
282
+ // Side axis: the anchor-facing edge, or the anchor's center when the popup overlaps it.
283
+ let sideOrigin = renderedSide === 'top' || renderedSide === 'left' ? `calc(100% + ${sideOffsetValue}px)` : `${-sideOffsetValue}px`;
284
+ if (crossAxisShiftEnabled && isVertical && Math.abs(middlewareData.shift?.y || 0) > sideOffsetValue) {
285
+ sideOrigin = `${rects.reference.y + rects.reference.height / 2 - y}px`;
286
+ }
287
+ floating.style.setProperty(CommonPositionerCssVars.transformOrigin, isVertical ? `${crossOrigin} ${sideOrigin}` : `${sideOrigin} ${crossOrigin}`);
280
288
  return {};
281
289
  }
282
290
  }, _hideMiddleware.hide, adaptiveOrigin);
@@ -293,6 +301,7 @@ function useAnchorPositioningWithHook(params, useFloatingHook) {
293
301
  }
294
302
  }, [mounted, floatingRootContext]);
295
303
  const autoUpdateOptions = React.useMemo(() => ({
304
+ ancestorScroll: !disableAnchorTracking,
296
305
  elementResize: !disableAnchorTracking && typeof ResizeObserver !== 'undefined',
297
306
  layoutShift: !disableAnchorTracking && typeof IntersectionObserver !== 'undefined'
298
307
  }), [disableAnchorTracking]);
@@ -12,8 +12,9 @@ import { useDirection } from "./direction-context/DirectionContext.mjs";
12
12
  import { arrow } from "../floating-ui-react/middleware/arrow.mjs";
13
13
  import { hide } from "../utils/hideMiddleware.mjs";
14
14
  import { DEFAULT_SIDES } from "../utils/adaptiveOriginConstants.mjs";
15
- const AVAILABLE_WIDTH_VAR = '--available-width';
16
- const AVAILABLE_HEIGHT_VAR = '--available-height';
15
+ import * as CommonPositionerCssVars from "../utils/CommonPositionerCssVars.mjs";
16
+ const AVAILABLE_WIDTH_VAR = CommonPositionerCssVars.availableWidth;
17
+ const AVAILABLE_HEIGHT_VAR = CommonPositionerCssVars.availableHeight;
17
18
  function getLogicalSide(sideParam, renderedSide, isRtl) {
18
19
  const isLogicalSideParam = sideParam === 'inline-start' || sideParam === 'inline-end';
19
20
  const logicalRight = isRtl ? 'inline-start' : 'inline-end';
@@ -230,46 +231,53 @@ export function useAnchorPositioningWithHook(params, useFloatingHook) {
230
231
  } = rects.reference;
231
232
  const anchorWidth = (Math.round((x + width) * dpr) - Math.round(x * dpr)) / dpr;
232
233
  const anchorHeight = (Math.round((y + height) * dpr) - Math.round(y * dpr)) / dpr;
233
- floatingStyle.setProperty('--anchor-width', `${anchorWidth}px`);
234
- floatingStyle.setProperty('--anchor-height', `${anchorHeight}px`);
234
+ floatingStyle.setProperty(CommonPositionerCssVars.anchorWidth, `${anchorWidth}px`);
235
+ floatingStyle.setProperty(CommonPositionerCssVars.anchorHeight, `${anchorHeight}px`);
235
236
  }
236
237
  }), arrow(state => ({
237
238
  // `transform-origin` calculations rely on an element existing. If the arrow hasn't been set,
238
239
  // we'll create a fake element.
239
240
  element: arrowRef.current || ownerDocument(state.elements.floating).createElement('div'),
240
- padding: arrowPadding,
241
+ // No padding for the fake arrow: it would displace aligned popups on narrow anchors.
242
+ padding: arrowRef.current ? arrowPadding : 0,
241
243
  offsetParent: 'floating'
242
244
  }), [arrowPadding]), {
243
245
  name: 'transformOrigin',
244
246
  fn(state) {
245
247
  const {
246
- elements,
248
+ elements: {
249
+ floating
250
+ },
247
251
  middlewareData,
248
252
  placement: renderedPlacement,
253
+ platform,
249
254
  rects,
250
255
  y
251
256
  } = state;
252
- const currentRenderedSide = getSide(renderedPlacement);
253
- const currentRenderedAxis = getSideAxis(currentRenderedSide);
257
+ const renderedSide = getSide(renderedPlacement);
258
+ const renderedAlign = getAlignment(renderedPlacement);
259
+ const isVertical = getSideAxis(renderedSide) === 'y';
254
260
  const arrowEl = arrowRef.current;
255
- const arrowX = middlewareData.arrow?.x || 0;
256
- const arrowY = middlewareData.arrow?.y || 0;
257
- const arrowWidth = arrowEl?.clientWidth || 0;
258
- const arrowHeight = arrowEl?.clientHeight || 0;
259
- const transformX = arrowX + arrowWidth / 2;
260
- const transformY = arrowY + arrowHeight / 2;
261
- const shiftY = Math.abs(middlewareData.shift?.y || 0);
262
- const halfAnchorHeight = rects.reference.height / 2;
263
261
  const sideOffsetValue = typeof sideOffset === 'function' ? sideOffset(getOffsetData(state, sideParam, isRtl)) : sideOffset;
264
- const isOverlappingAnchor = shiftY > sideOffsetValue;
265
- const adjacentTransformOrigin = {
266
- top: `${transformX}px calc(100% + ${sideOffsetValue}px)`,
267
- bottom: `${transformX}px ${-sideOffsetValue}px`,
268
- left: `calc(100% + ${sideOffsetValue}px) ${transformY}px`,
269
- right: `${-sideOffsetValue}px ${transformY}px`
270
- }[currentRenderedSide];
271
- const overlapTransformOrigin = `${transformX}px ${rects.reference.y + halfAnchorHeight - y}px`;
272
- elements.floating.style.setProperty('--transform-origin', crossAxisShiftEnabled && currentRenderedAxis === 'y' && isOverlappingAnchor ? overlapTransformOrigin : adjacentTransformOrigin);
262
+
263
+ // An aligned arrowless popup grows from its aligned edge, until a shift (beyond subpixel)
264
+ // breaks its alignment with the anchor. Everything else grows from the arrow, real or fake.
265
+ let crossOrigin;
266
+ if (!arrowEl && renderedAlign && Math.abs(isVertical ? middlewareData.shift?.x || 0 : middlewareData.shift?.y || 0) <= 1) {
267
+ // The platform direction, not `isRtl`: it must match what Floating UI placed with.
268
+ crossOrigin = renderedAlign === 'start' === (isVertical && platform.isRTL?.(floating) === true) ? '100%' : '0%';
269
+ } else {
270
+ const arrowOffset = isVertical ? middlewareData.arrow?.x || 0 : middlewareData.arrow?.y || 0;
271
+ const arrowSize = isVertical ? arrowEl?.clientWidth || 0 : arrowEl?.clientHeight || 0;
272
+ crossOrigin = `${arrowOffset + arrowSize / 2}px`;
273
+ }
274
+
275
+ // Side axis: the anchor-facing edge, or the anchor's center when the popup overlaps it.
276
+ let sideOrigin = renderedSide === 'top' || renderedSide === 'left' ? `calc(100% + ${sideOffsetValue}px)` : `${-sideOffsetValue}px`;
277
+ if (crossAxisShiftEnabled && isVertical && Math.abs(middlewareData.shift?.y || 0) > sideOffsetValue) {
278
+ sideOrigin = `${rects.reference.y + rects.reference.height / 2 - y}px`;
279
+ }
280
+ floating.style.setProperty(CommonPositionerCssVars.transformOrigin, isVertical ? `${crossOrigin} ${sideOrigin}` : `${sideOrigin} ${crossOrigin}`);
273
281
  return {};
274
282
  }
275
283
  }, hide, adaptiveOrigin);
@@ -286,6 +294,7 @@ export function useAnchorPositioningWithHook(params, useFloatingHook) {
286
294
  }
287
295
  }, [mounted, floatingRootContext]);
288
296
  const autoUpdateOptions = React.useMemo(() => ({
297
+ ancestorScroll: !disableAnchorTracking,
289
298
  elementResize: !disableAnchorTracking && typeof ResizeObserver !== 'undefined',
290
299
  layoutShift: !disableAnchorTracking && typeof IntersectionObserver !== 'undefined'
291
300
  }), [disableAnchorTracking]);
@@ -4,6 +4,9 @@ import * as React from 'react';
4
4
  * If an animation is canceled, waits for any replacement animations before executing.
5
5
  * @param elementOrRef - The element to watch for animations.
6
6
  * @param waitForStartingStyleRemoved - Whether to wait for [data-starting-style] to be removed before checking for animations.
7
+ * @param batch - Whether completions ready in the same microtask may be coalesced into a single
8
+ * commit. A batched callback runs before earlier callbacks' React updates have committed, so only
9
+ * opt in when the callback doesn't read state that another completion can change.
7
10
  * @returns A function that takes a callback to execute once all animations have finished, and an optional AbortSignal to abort the callback
8
11
  */
9
- export declare function useAnimationsFinished(elementOrRef: React.RefObject<HTMLElement | null> | HTMLElement | null, waitForStartingStyleRemoved?: boolean): (fnToExecute: () => void, signal?: AbortSignal | null) => void;
12
+ export declare function useAnimationsFinished(elementOrRef: React.RefObject<HTMLElement | null> | HTMLElement | null, waitForStartingStyleRemoved?: boolean, batch?: boolean): (fnToExecute: () => void, signal?: AbortSignal | null) => void;
@@ -4,6 +4,9 @@ import * as React from 'react';
4
4
  * If an animation is canceled, waits for any replacement animations before executing.
5
5
  * @param elementOrRef - The element to watch for animations.
6
6
  * @param waitForStartingStyleRemoved - Whether to wait for [data-starting-style] to be removed before checking for animations.
7
+ * @param batch - Whether completions ready in the same microtask may be coalesced into a single
8
+ * commit. A batched callback runs before earlier callbacks' React updates have committed, so only
9
+ * opt in when the callback doesn't read state that another completion can change.
7
10
  * @returns A function that takes a callback to execute once all animations have finished, and an optional AbortSignal to abort the callback
8
11
  */
9
- export declare function useAnimationsFinished(elementOrRef: React.RefObject<HTMLElement | null> | HTMLElement | null, waitForStartingStyleRemoved?: boolean): (fnToExecute: () => void, signal?: AbortSignal | null) => void;
12
+ export declare function useAnimationsFinished(elementOrRef: React.RefObject<HTMLElement | null> | HTMLElement | null, waitForStartingStyleRemoved?: boolean, batch?: boolean): (fnToExecute: () => void, signal?: AbortSignal | null) => void;
@@ -10,14 +10,43 @@ var ReactDOM = _interopRequireWildcard(require("react-dom"));
10
10
  var _useAnimationFrame = require("@base-ui/utils/useAnimationFrame");
11
11
  var _useStableCallback = require("@base-ui/utils/useStableCallback");
12
12
  var _resolveRef = require("../utils/resolveRef");
13
+ var TransitionStatusDataAttributes = _interopRequireWildcard(require("./TransitionStatusDataAttributes"));
14
+ let pendingCallbacks = null;
15
+
16
+ /**
17
+ * Runs the callback in a synchronous flush before the browser paints, so that the
18
+ * browser doesn't paint an intermediate frame: https://github.com/mui/base-ui/issues/979
19
+ * Callbacks that become ready within the same microtask checkpoint (e.g. multiple elements
20
+ * whose animations finish together) are batched into a single commit:
21
+ * https://github.com/mui/base-ui/issues/5481
22
+ */
23
+ function flushBeforePaint(fn) {
24
+ if (!pendingCallbacks) {
25
+ const callbacks = [];
26
+ pendingCallbacks = callbacks;
27
+ queueMicrotask(() => {
28
+ pendingCallbacks = null;
29
+ ReactDOM.flushSync(() => {
30
+ for (const callback of callbacks) {
31
+ callback();
32
+ }
33
+ });
34
+ });
35
+ }
36
+ pendingCallbacks.push(fn);
37
+ }
38
+
13
39
  /**
14
40
  * Executes a function once all animations have finished on the provided element.
15
41
  * If an animation is canceled, waits for any replacement animations before executing.
16
42
  * @param elementOrRef - The element to watch for animations.
17
43
  * @param waitForStartingStyleRemoved - Whether to wait for [data-starting-style] to be removed before checking for animations.
44
+ * @param batch - Whether completions ready in the same microtask may be coalesced into a single
45
+ * commit. A batched callback runs before earlier callbacks' React updates have committed, so only
46
+ * opt in when the callback doesn't read state that another completion can change.
18
47
  * @returns A function that takes a callback to execute once all animations have finished, and an optional AbortSignal to abort the callback
19
48
  */
20
- function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false) {
49
+ function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false, batch = false) {
21
50
  const frame = (0, _useAnimationFrame.useAnimationFrame)();
22
51
  return (0, _useStableCallback.useStableCallback)((fnToExecute,
23
52
  /**
@@ -33,9 +62,20 @@ function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false
33
62
  }
34
63
  const resolvedElement = element;
35
64
  const done = () => {
36
- // Synchronously flush the unmounting of the component so that the browser doesn't
37
- // paint: https://github.com/mui/base-ui/issues/979
38
- ReactDOM.flushSync(fnToExecute);
65
+ if (!batch) {
66
+ // Synchronously flush the unmounting of the component so that the browser doesn't
67
+ // paint: https://github.com/mui/base-ui/issues/979
68
+ // Each callback gets its own commit so that later completions observe the React
69
+ // updates caused by earlier ones.
70
+ ReactDOM.flushSync(fnToExecute);
71
+ return;
72
+ }
73
+ flushBeforePaint(() => {
74
+ // Re-check at flush time: the signal may abort between queueing and the flush.
75
+ if (!signal?.aborted) {
76
+ fnToExecute();
77
+ }
78
+ });
39
79
  };
40
80
  if (typeof resolvedElement.getAnimations !== 'function' || globalThis.BASE_UI_ANIMATIONS_DISABLED) {
41
81
  fnToExecute();
@@ -61,7 +101,7 @@ function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false
61
101
  });
62
102
  }
63
103
  if (waitForStartingStyleRemoved) {
64
- const startingStyleAttribute = 'data-starting-style';
104
+ const startingStyleAttribute = TransitionStatusDataAttributes.startingStyle;
65
105
 
66
106
  // If `[data-starting-style]` isn't present, fall back to waiting one more frame
67
107
  // to give "open" animations a chance to be registered.
@@ -4,15 +4,43 @@ import * as ReactDOM from 'react-dom';
4
4
  import { useAnimationFrame } from '@base-ui/utils/useAnimationFrame';
5
5
  import { useStableCallback } from '@base-ui/utils/useStableCallback';
6
6
  import { resolveRef } from "../utils/resolveRef.mjs";
7
+ import * as TransitionStatusDataAttributes from "./TransitionStatusDataAttributes.mjs";
8
+ let pendingCallbacks = null;
9
+
10
+ /**
11
+ * Runs the callback in a synchronous flush before the browser paints, so that the
12
+ * browser doesn't paint an intermediate frame: https://github.com/mui/base-ui/issues/979
13
+ * Callbacks that become ready within the same microtask checkpoint (e.g. multiple elements
14
+ * whose animations finish together) are batched into a single commit:
15
+ * https://github.com/mui/base-ui/issues/5481
16
+ */
17
+ function flushBeforePaint(fn) {
18
+ if (!pendingCallbacks) {
19
+ const callbacks = [];
20
+ pendingCallbacks = callbacks;
21
+ queueMicrotask(() => {
22
+ pendingCallbacks = null;
23
+ ReactDOM.flushSync(() => {
24
+ for (const callback of callbacks) {
25
+ callback();
26
+ }
27
+ });
28
+ });
29
+ }
30
+ pendingCallbacks.push(fn);
31
+ }
7
32
 
8
33
  /**
9
34
  * Executes a function once all animations have finished on the provided element.
10
35
  * If an animation is canceled, waits for any replacement animations before executing.
11
36
  * @param elementOrRef - The element to watch for animations.
12
37
  * @param waitForStartingStyleRemoved - Whether to wait for [data-starting-style] to be removed before checking for animations.
38
+ * @param batch - Whether completions ready in the same microtask may be coalesced into a single
39
+ * commit. A batched callback runs before earlier callbacks' React updates have committed, so only
40
+ * opt in when the callback doesn't read state that another completion can change.
13
41
  * @returns A function that takes a callback to execute once all animations have finished, and an optional AbortSignal to abort the callback
14
42
  */
15
- export function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false) {
43
+ export function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved = false, batch = false) {
16
44
  const frame = useAnimationFrame();
17
45
  return useStableCallback((fnToExecute,
18
46
  /**
@@ -28,9 +56,20 @@ export function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved
28
56
  }
29
57
  const resolvedElement = element;
30
58
  const done = () => {
31
- // Synchronously flush the unmounting of the component so that the browser doesn't
32
- // paint: https://github.com/mui/base-ui/issues/979
33
- ReactDOM.flushSync(fnToExecute);
59
+ if (!batch) {
60
+ // Synchronously flush the unmounting of the component so that the browser doesn't
61
+ // paint: https://github.com/mui/base-ui/issues/979
62
+ // Each callback gets its own commit so that later completions observe the React
63
+ // updates caused by earlier ones.
64
+ ReactDOM.flushSync(fnToExecute);
65
+ return;
66
+ }
67
+ flushBeforePaint(() => {
68
+ // Re-check at flush time: the signal may abort between queueing and the flush.
69
+ if (!signal?.aborted) {
70
+ fnToExecute();
71
+ }
72
+ });
34
73
  };
35
74
  if (typeof resolvedElement.getAnimations !== 'function' || globalThis.BASE_UI_ANIMATIONS_DISABLED) {
36
75
  fnToExecute();
@@ -56,7 +95,7 @@ export function useAnimationsFinished(elementOrRef, waitForStartingStyleRemoved
56
95
  });
57
96
  }
58
97
  if (waitForStartingStyleRemoved) {
59
- const startingStyleAttribute = 'data-starting-style';
98
+ const startingStyleAttribute = TransitionStatusDataAttributes.startingStyle;
60
99
 
61
100
  // If `[data-starting-style]` isn't present, fall back to waiting one more frame
62
101
  // to give "open" animations a chance to be registered.
@@ -17,6 +17,12 @@ export interface UseOpenChangeCompleteParameters {
17
17
  * Ref to the element being closed.
18
18
  */
19
19
  ref: React.RefObject<HTMLElement | null>;
20
+ /**
21
+ * Whether completions ready in the same microtask may be coalesced into a single commit.
22
+ * Only safe when `onComplete` doesn't read state that another completion can change.
23
+ * @default false
24
+ */
25
+ batch?: boolean | undefined;
20
26
  /**
21
27
  * Function to call when the animation completes (or there is no animation).
22
28
  */
@@ -17,6 +17,12 @@ export interface UseOpenChangeCompleteParameters {
17
17
  * Ref to the element being closed.
18
18
  */
19
19
  ref: React.RefObject<HTMLElement | null>;
20
+ /**
21
+ * Whether completions ready in the same microtask may be coalesced into a single commit.
22
+ * Only safe when `onComplete` doesn't read state that another completion can change.
23
+ * @default false
24
+ */
25
+ batch?: boolean | undefined;
20
26
  /**
21
27
  * Function to call when the animation completes (or there is no animation).
22
28
  */
@@ -17,10 +17,11 @@ function useOpenChangeComplete(parameters) {
17
17
  enabled = true,
18
18
  open,
19
19
  ref,
20
+ batch = false,
20
21
  onComplete: onCompleteParam
21
22
  } = parameters;
22
23
  const onComplete = (0, _useStableCallback.useStableCallback)(onCompleteParam);
23
- const runOnceAnimationsFinish = (0, _useAnimationsFinished.useAnimationsFinished)(ref, open);
24
+ const runOnceAnimationsFinish = (0, _useAnimationsFinished.useAnimationsFinished)(ref, open, batch);
24
25
  React.useEffect(() => {
25
26
  if (!enabled) {
26
27
  return undefined;
@@ -12,10 +12,11 @@ export function useOpenChangeComplete(parameters) {
12
12
  enabled = true,
13
13
  open,
14
14
  ref,
15
+ batch = false,
15
16
  onComplete: onCompleteParam
16
17
  } = parameters;
17
18
  const onComplete = useStableCallback(onCompleteParam);
18
- const runOnceAnimationsFinish = useAnimationsFinished(ref, open);
19
+ const runOnceAnimationsFinish = useAnimationsFinished(ref, open, batch);
19
20
  React.useEffect(() => {
20
21
  if (!enabled) {
21
22
  return undefined;
@@ -106,6 +106,14 @@ function usePressAndHold(params) {
106
106
  stopAutoChange();
107
107
  unsubscribeFromGlobalPointerUpRef.current();
108
108
  }, [stopAutoChange]);
109
+ React.useEffect(() => {
110
+ if (disabled) {
111
+ isPressedRef.current = false;
112
+ isTouchingButtonRef.current = false;
113
+ pointerTypeRef.current = '';
114
+ stopAutoChange();
115
+ }
116
+ }, [disabled, stopAutoChange]);
109
117
  const pointerHandlers = {
110
118
  onTouchStart() {
111
119
  isTouchingButtonRef.current = true;
@@ -99,6 +99,14 @@ export function usePressAndHold(params) {
99
99
  stopAutoChange();
100
100
  unsubscribeFromGlobalPointerUpRef.current();
101
101
  }, [stopAutoChange]);
102
+ React.useEffect(() => {
103
+ if (disabled) {
104
+ isPressedRef.current = false;
105
+ isTouchingButtonRef.current = false;
106
+ pointerTypeRef.current = '';
107
+ stopAutoChange();
108
+ }
109
+ }, [disabled, stopAutoChange]);
102
110
  const pointerHandlers = {
103
111
  onTouchStart() {
104
112
  isTouchingButtonRef.current = true;
@@ -26,8 +26,12 @@ var _mergeProps = require("../merge-props");
26
26
  * @param params Additional parameters for rendering the element.
27
27
  */
28
28
  function useRenderElement(element, componentProps, params = {}) {
29
- const renderProp = componentProps.render;
30
- const outProps = useRenderElementProps(componentProps, params);
29
+ let renderProp = componentProps.render;
30
+ if (params.enabled !== false) {
31
+ // A pending lazy element suspends when unwrapped, so leave it wrapped while disabled.
32
+ renderProp = unwrapLazyRenderProp(renderProp);
33
+ }
34
+ const outProps = useRenderElementProps(componentProps, params, renderProp);
31
35
  if (params.enabled === false) {
32
36
  return null;
33
37
  }
@@ -38,11 +42,10 @@ function useRenderElement(element, componentProps, params = {}) {
38
42
  /**
39
43
  * Computes render element final props.
40
44
  */
41
- function useRenderElementProps(componentProps, params = {}) {
45
+ function useRenderElementProps(componentProps, params, renderProp) {
42
46
  const {
43
47
  className: classNameProp,
44
- style: styleProp,
45
- render: renderProp
48
+ style: styleProp
46
49
  } = componentProps;
47
50
  const {
48
51
  state = _empty.EMPTY_OBJECT,
@@ -102,6 +105,23 @@ function resolveRenderFunctionProps(props) {
102
105
  const REACT_LAZY_TYPE = Symbol.for('react.lazy');
103
106
  const COMPONENT_IDENTIFIER_PATTERN = /^[A-Z][A-Za-z0-9$]*$/;
104
107
  const LOWERCASE_CHARACTER_PATTERN = /[a-z]/;
108
+
109
+ // Workaround for https://github.com/react/react/issues/32392
110
+ // The Flight client hands over a lazy wrapper in place of a render element created in a
111
+ // Server Component. The wrapper exposes no `.props` or `.ref`, so it must be unwrapped
112
+ // before those are read. This works because the toArray() logic unwraps the lazy
113
+ // element type in
114
+ // https://github.com/react/react/blob/a0566250b210499b4c5677f5ac2eedbd71d51a1b/packages/react/src/ReactChildren.js#L186
115
+ function unwrapLazyRenderProp(render) {
116
+ // `$$typeof` is a React internal, absent from the public element types.
117
+ if (render?.$$typeof !== REACT_LAZY_TYPE) {
118
+ return render;
119
+ }
120
+ // Keep the wrapper unless it unwraps to an element, so an invalid render prop is still
121
+ // reported as one instead of silently falling back to the default element.
122
+ const unwrapped = React.Children.toArray(render)[0];
123
+ return /*#__PURE__*/React.isValidElement(unwrapped) ? unwrapped : render;
124
+ }
105
125
  function evaluateRenderProp(element, render, props, state) {
106
126
  if (render) {
107
127
  if (typeof render === 'function') {
@@ -112,14 +132,6 @@ function evaluateRenderProp(element, render, props, state) {
112
132
  }
113
133
  const mergedProps = (0, _mergeProps.mergeProps)(props, render.props);
114
134
  mergedProps.ref = props.ref;
115
- let newElement = render;
116
- // Workaround for https://github.com/react/react/issues/32392
117
- // This works because the toArray() logic unwrap lazy element type in
118
- // https://github.com/react/react/blob/a0566250b210499b4c5677f5ac2eedbd71d51a1b/packages/react/src/ReactChildren.js#L186
119
- if (newElement?.$$typeof === REACT_LAZY_TYPE) {
120
- const children = React.Children.toArray(render);
121
- newElement = children[0];
122
- }
123
135
 
124
136
  // There is a high number of indirections, the error message thrown by React.cloneElement() is
125
137
  // hard to use for developers, this logic provides a better context.
@@ -128,13 +140,13 @@ function evaluateRenderProp(element, render, props, state) {
128
140
  // However, React.cloneElement() throws if React.isValidElement() is false,
129
141
  // so we can throw before with custom message.
130
142
  if (process.env.NODE_ENV !== 'production') {
131
- if (! /*#__PURE__*/React.isValidElement(newElement)) {
143
+ if (! /*#__PURE__*/React.isValidElement(render)) {
132
144
  // TODO: fix mui/no-guarded-throw
133
145
  // eslint-disable-next-line mui/no-guarded-throw
134
146
  throw new Error(['Base UI: The `render` prop was provided an invalid React element as `React.isValidElement(render)` is `false`.', 'A valid React element must be provided to the `render` prop because it is cloned with props to replace the default element.', 'https://base-ui.com/r/invalid-render-prop'].join('\n'));
135
147
  }
136
148
  }
137
- return /*#__PURE__*/React.cloneElement(newElement, mergedProps);
149
+ return /*#__PURE__*/React.cloneElement(render, mergedProps);
138
150
  }
139
151
  if (element) {
140
152
  if (typeof element === 'string') {
@@ -18,8 +18,12 @@ import { createElement as _createElement } from "react";
18
18
  * @param params Additional parameters for rendering the element.
19
19
  */
20
20
  export function useRenderElement(element, componentProps, params = {}) {
21
- const renderProp = componentProps.render;
22
- const outProps = useRenderElementProps(componentProps, params);
21
+ let renderProp = componentProps.render;
22
+ if (params.enabled !== false) {
23
+ // A pending lazy element suspends when unwrapped, so leave it wrapped while disabled.
24
+ renderProp = unwrapLazyRenderProp(renderProp);
25
+ }
26
+ const outProps = useRenderElementProps(componentProps, params, renderProp);
23
27
  if (params.enabled === false) {
24
28
  return null;
25
29
  }
@@ -30,11 +34,10 @@ export function useRenderElement(element, componentProps, params = {}) {
30
34
  /**
31
35
  * Computes render element final props.
32
36
  */
33
- function useRenderElementProps(componentProps, params = {}) {
37
+ function useRenderElementProps(componentProps, params, renderProp) {
34
38
  const {
35
39
  className: classNameProp,
36
- style: styleProp,
37
- render: renderProp
40
+ style: styleProp
38
41
  } = componentProps;
39
42
  const {
40
43
  state = EMPTY_OBJECT,
@@ -94,6 +97,23 @@ function resolveRenderFunctionProps(props) {
94
97
  const REACT_LAZY_TYPE = Symbol.for('react.lazy');
95
98
  const COMPONENT_IDENTIFIER_PATTERN = /^[A-Z][A-Za-z0-9$]*$/;
96
99
  const LOWERCASE_CHARACTER_PATTERN = /[a-z]/;
100
+
101
+ // Workaround for https://github.com/react/react/issues/32392
102
+ // The Flight client hands over a lazy wrapper in place of a render element created in a
103
+ // Server Component. The wrapper exposes no `.props` or `.ref`, so it must be unwrapped
104
+ // before those are read. This works because the toArray() logic unwraps the lazy
105
+ // element type in
106
+ // https://github.com/react/react/blob/a0566250b210499b4c5677f5ac2eedbd71d51a1b/packages/react/src/ReactChildren.js#L186
107
+ function unwrapLazyRenderProp(render) {
108
+ // `$$typeof` is a React internal, absent from the public element types.
109
+ if (render?.$$typeof !== REACT_LAZY_TYPE) {
110
+ return render;
111
+ }
112
+ // Keep the wrapper unless it unwraps to an element, so an invalid render prop is still
113
+ // reported as one instead of silently falling back to the default element.
114
+ const unwrapped = React.Children.toArray(render)[0];
115
+ return /*#__PURE__*/React.isValidElement(unwrapped) ? unwrapped : render;
116
+ }
97
117
  function evaluateRenderProp(element, render, props, state) {
98
118
  if (render) {
99
119
  if (typeof render === 'function') {
@@ -104,14 +124,6 @@ function evaluateRenderProp(element, render, props, state) {
104
124
  }
105
125
  const mergedProps = mergeProps(props, render.props);
106
126
  mergedProps.ref = props.ref;
107
- let newElement = render;
108
- // Workaround for https://github.com/react/react/issues/32392
109
- // This works because the toArray() logic unwrap lazy element type in
110
- // https://github.com/react/react/blob/a0566250b210499b4c5677f5ac2eedbd71d51a1b/packages/react/src/ReactChildren.js#L186
111
- if (newElement?.$$typeof === REACT_LAZY_TYPE) {
112
- const children = React.Children.toArray(render);
113
- newElement = children[0];
114
- }
115
127
 
116
128
  // There is a high number of indirections, the error message thrown by React.cloneElement() is
117
129
  // hard to use for developers, this logic provides a better context.
@@ -120,13 +132,13 @@ function evaluateRenderProp(element, render, props, state) {
120
132
  // However, React.cloneElement() throws if React.isValidElement() is false,
121
133
  // so we can throw before with custom message.
122
134
  if (process.env.NODE_ENV !== 'production') {
123
- if (! /*#__PURE__*/React.isValidElement(newElement)) {
135
+ if (! /*#__PURE__*/React.isValidElement(render)) {
124
136
  // TODO: fix mui/no-guarded-throw
125
137
  // eslint-disable-next-line mui/no-guarded-throw
126
138
  throw new Error(['Base UI: The `render` prop was provided an invalid React element as `React.isValidElement(render)` is `false`.', 'A valid React element must be provided to the `render` prop because it is cloned with props to replace the default element.', 'https://base-ui.com/r/invalid-render-prop'].join('\n'));
127
139
  }
128
140
  }
129
- return /*#__PURE__*/React.cloneElement(newElement, mergedProps);
141
+ return /*#__PURE__*/React.cloneElement(render, mergedProps);
130
142
  }
131
143
  if (element) {
132
144
  if (typeof element === 'string') {
@@ -4,8 +4,12 @@ export type TransitionStatus = 'starting' | 'ending' | 'idle' | undefined;
4
4
  * Provides a status string for CSS animations.
5
5
  * @param open - a boolean that determines if the element is open.
6
6
  * @param enableIdleState - a boolean that enables the `'idle'` state between `'starting'` and `'ending'`
7
+ * @param deferEndingState - a boolean that delays the `'ending'` state by a frame
8
+ * @param animateInitialOpen - a boolean that makes an element which mounts already open still go
9
+ * through `'starting'`. Off by default so content that was open on the first render (a
10
+ * `defaultOpen` popup on page load, SSR'd markup) doesn't animate in.
7
11
  */
8
- export declare function useTransitionStatus(open: boolean, enableIdleState?: boolean, deferEndingState?: boolean): {
12
+ export declare function useTransitionStatus(open: boolean, enableIdleState?: boolean, deferEndingState?: boolean, animateInitialOpen?: boolean): {
9
13
  mounted: boolean;
10
14
  setMounted: React.Dispatch<React.SetStateAction<boolean>>;
11
15
  transitionStatus: TransitionStatus;