solid-baseui 0.1.0-alpha.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 (810) hide show
  1. package/LICENSE +26 -0
  2. package/README.md +150 -0
  3. package/dist/lib/client/CSPContext-faVzToiT.js +10 -0
  4. package/dist/lib/client/CheckboxGroupContext-1CRRHK0T.js +8 -0
  5. package/dist/lib/client/DialogHandle-DrN2YWCv.js +518 -0
  6. package/dist/lib/client/DialogPopup-ZlqmGfdk.js +136 -0
  7. package/dist/lib/client/DirectionContext-BwMabICS.js +7 -0
  8. package/dist/lib/client/FieldControl-Bc-z2og6.js +116 -0
  9. package/dist/lib/client/FieldItemContext-Bwzf-4tL.js +7 -0
  10. package/dist/lib/client/FieldRootContext-izCEh80D.js +32 -0
  11. package/dist/lib/client/FieldsetRootContext-BgThSAcd.js +13 -0
  12. package/dist/lib/client/FloatingTree-23B7KKPD.js +83 -0
  13. package/dist/lib/client/FocusManager-grSdNHqW.js +360 -0
  14. package/dist/lib/client/FormContext-BB05lWOI.js +16 -0
  15. package/dist/lib/client/InternalBackdrop-cSK13gaM.js +160 -0
  16. package/dist/lib/client/LabelableContext-DKsB0fIx.js +48 -0
  17. package/dist/lib/client/MenuSubmenuTrigger-QZkQ0F2v.js +1570 -0
  18. package/dist/lib/client/MenubarContext-BYt3fkt-.js +13 -0
  19. package/dist/lib/client/PopupHandle-CcJG4NMy.js +101 -0
  20. package/dist/lib/client/PopupStore-DjB-wO88.js +468 -0
  21. package/dist/lib/client/PopupViewport-DgrIqQea.js +152 -0
  22. package/dist/lib/client/RadioGroupContext-CZexBsPa.js +9 -0
  23. package/dist/lib/client/Separator-9DboD_Si.js +25 -0
  24. package/dist/lib/client/ToggleGroupContext-_THxLgJU.js +9 -0
  25. package/dist/lib/client/ToolbarGroupContext-Dpc3_mFx.js +9 -0
  26. package/dist/lib/client/ToolbarItemOwnerContext-DtVqVnSE.js +9 -0
  27. package/dist/lib/client/ToolbarRootContext-88yZoAOy.js +13 -0
  28. package/dist/lib/client/TriggerFocusGuards-CQ-JuASy.js +56 -0
  29. package/dist/lib/client/accordion/index.js +2 -0
  30. package/dist/lib/client/accordion-sOXt9AlG.js +399 -0
  31. package/dist/lib/client/alert-dialog/index.js +2 -0
  32. package/dist/lib/client/alert-dialog-BH_3ndio.js +30 -0
  33. package/dist/lib/client/autocomplete/index.js +2 -0
  34. package/dist/lib/client/autocomplete-Cob_FZEP.js +113 -0
  35. package/dist/lib/client/avatar/index.js +2 -0
  36. package/dist/lib/client/avatar-AF9vyD4q.js +146 -0
  37. package/dist/lib/client/button/index.js +2 -0
  38. package/dist/lib/client/button-DpUi-2g8.js +82 -0
  39. package/dist/lib/client/buttonSemantics-paljfpOX.js +39 -0
  40. package/dist/lib/client/checkbox/index.js +2 -0
  41. package/dist/lib/client/checkbox-BbAwOptH.js +441 -0
  42. package/dist/lib/client/checkbox-group/index.js +2 -0
  43. package/dist/lib/client/checkbox-group-CSSp_805.js +128 -0
  44. package/dist/lib/client/collapsible/index.js +2 -0
  45. package/dist/lib/client/collapsible-BIbje_ub.js +232 -0
  46. package/dist/lib/client/combobox/index.js +2 -0
  47. package/dist/lib/client/combobox-8O-vgTLL.js +352 -0
  48. package/dist/lib/client/compositeNavigation-sxniYTc7.js +58 -0
  49. package/dist/lib/client/constants-BYjBUIIi.js +424 -0
  50. package/dist/lib/client/context-menu/index.js +2 -0
  51. package/dist/lib/client/context-menu-BTMkXtrs.js +217 -0
  52. package/dist/lib/client/createAnchorPositioning-DcxDXUgB.js +1058 -0
  53. package/dist/lib/client/createAnchoredPopupScrollLock-Cx0cbh1_.js +19 -0
  54. package/dist/lib/client/createClickInteraction-CTaIFBiV.js +45 -0
  55. package/dist/lib/client/createCollapsiblePanel-DeDu0O2t.js +231 -0
  56. package/dist/lib/client/createFocusInteraction-D4w1-235.js +50 -0
  57. package/dist/lib/client/createPopupAutoResize-CGNiLhGq.js +60 -0
  58. package/dist/lib/client/createTransitionStatus-B1L-whed.js +53 -0
  59. package/dist/lib/client/csp-provider/index.js +2 -0
  60. package/dist/lib/client/csp-provider-C7nRHDKK.js +16 -0
  61. package/dist/lib/client/dialog/index.js +2 -0
  62. package/dist/lib/client/dialog-DkaQwIgP.js +19 -0
  63. package/dist/lib/client/direction-provider/index.js +3 -0
  64. package/dist/lib/client/direction-provider-DYhRN-8f.js +13 -0
  65. package/dist/lib/client/dom-BEAeQ9Eb.js +58 -0
  66. package/dist/lib/client/drawer/index.js +2 -0
  67. package/dist/lib/client/drawer-Ce2cChLt.js +1550 -0
  68. package/dist/lib/client/field/index.js +2 -0
  69. package/dist/lib/client/field-C-o7jzKW.js +469 -0
  70. package/dist/lib/client/fieldset/index.js +2 -0
  71. package/dist/lib/client/fieldset-BQTAWv2L.js +65 -0
  72. package/dist/lib/client/form/index.js +2 -0
  73. package/dist/lib/client/form-BINBiW5L.js +106 -0
  74. package/dist/lib/client/form-types-DFBxc1LF.js +8 -0
  75. package/dist/lib/client/index.js +43 -0
  76. package/dist/lib/client/input/index.js +2 -0
  77. package/dist/lib/client/input-gb0ejxkm.js +7 -0
  78. package/dist/lib/client/internals/composeEventHandlers.js +50 -0
  79. package/dist/lib/client/internals/createBaseUIEventDetails.js +31 -0
  80. package/dist/lib/client/internals/csp-context/index.js +2 -0
  81. package/dist/lib/client/internals/direction-context/index.js +2 -0
  82. package/dist/lib/client/internals/field-constants.js +56 -0
  83. package/dist/lib/client/internals/field-root-context/index.js +2 -0
  84. package/dist/lib/client/internals/form-context/index.js +2 -0
  85. package/dist/lib/client/internals/getStateAttributesProps.js +21 -0
  86. package/dist/lib/client/internals/labelable-provider/index.js +19 -0
  87. package/dist/lib/client/internals/mergeStyles.js +9 -0
  88. package/dist/lib/client/internals/reasons.js +2 -0
  89. package/dist/lib/client/internals/stateAttributesMapping.js +8 -0
  90. package/dist/lib/client/internals/types.js +0 -0
  91. package/dist/lib/client/menu/index.js +2 -0
  92. package/dist/lib/client/menu-DeMT08oD.js +326 -0
  93. package/dist/lib/client/menubar/index.js +2 -0
  94. package/dist/lib/client/menubar-C4aomSYv.js +185 -0
  95. package/dist/lib/client/mergeStyleValue-C4ITiiIV.js +42 -0
  96. package/dist/lib/client/meter/index.js +2 -0
  97. package/dist/lib/client/meter-xSU37Q0m.js +171 -0
  98. package/dist/lib/client/navigation-menu/index.js +2 -0
  99. package/dist/lib/client/navigation-menu-ZILQmdn6.js +1083 -0
  100. package/dist/lib/client/number-field/index.js +2 -0
  101. package/dist/lib/client/number-field-B8CsTb_8.js +1035 -0
  102. package/dist/lib/client/otp-field/index.js +2 -0
  103. package/dist/lib/client/otp-field-DBkMcnog.js +582 -0
  104. package/dist/lib/client/platform-Bk5Q32mf.js +13 -0
  105. package/dist/lib/client/popover/index.js +2 -0
  106. package/dist/lib/client/popover-CQwyp-fs.js +929 -0
  107. package/dist/lib/client/popupStateMapping-C9eZl19i.js +367 -0
  108. package/dist/lib/client/preview-card/index.js +2 -0
  109. package/dist/lib/client/preview-card-D_2Q8lpC.js +625 -0
  110. package/dist/lib/client/progress/index.js +2 -0
  111. package/dist/lib/client/progress-D7r0xAC9.js +188 -0
  112. package/dist/lib/client/radio/index.js +2 -0
  113. package/dist/lib/client/radio-CzGQ81z1.js +299 -0
  114. package/dist/lib/client/radio-group/index.js +2 -0
  115. package/dist/lib/client/radio-group-DpHlBKA6.js +193 -0
  116. package/dist/lib/client/reasons-Co5CzjKq.js +41 -0
  117. package/dist/lib/client/resolveStyle-XcgAuaKR.js +11 -0
  118. package/dist/lib/client/rolldown-runtime-Dy4uBu1J.js +11 -0
  119. package/dist/lib/client/runOnceAnimationsFinish-15EM-Z4l.js +48 -0
  120. package/dist/lib/client/safePolygon--bbKn0c8.js +316 -0
  121. package/dist/lib/client/scroll-area/index.js +2 -0
  122. package/dist/lib/client/scroll-area-CffM4U0R.js +701 -0
  123. package/dist/lib/client/scrollable-SRNYlhF7.js +42 -0
  124. package/dist/lib/client/select/index.js +2 -0
  125. package/dist/lib/client/select-IFhiEg73.js +1940 -0
  126. package/dist/lib/client/separator/index.js +2 -0
  127. package/dist/lib/client/setRef-fXF6OIo3.js +7 -0
  128. package/dist/lib/client/slider/index.js +2 -0
  129. package/dist/lib/client/slider-BCagYmGp.js +921 -0
  130. package/dist/lib/client/switch/index.js +2 -0
  131. package/dist/lib/client/switch-RIJeDnvS.js +308 -0
  132. package/dist/lib/client/tabs/index.js +2 -0
  133. package/dist/lib/client/tabs-fOAKs7r3.js +696 -0
  134. package/dist/lib/client/toast/index.js +2 -0
  135. package/dist/lib/client/toast-D2P8UqUs.js +1108 -0
  136. package/dist/lib/client/toggle/index.js +2 -0
  137. package/dist/lib/client/toggle-group/index.js +2 -0
  138. package/dist/lib/client/toggle-group-0Aue0owJ.js +129 -0
  139. package/dist/lib/client/toggle-momVEIBL.js +138 -0
  140. package/dist/lib/client/toolbar/index.js +2 -0
  141. package/dist/lib/client/toolbar-Du22aKCv.js +492 -0
  142. package/dist/lib/client/tooltip/index.js +2 -0
  143. package/dist/lib/client/tooltip-CyK61fl1.js +844 -0
  144. package/dist/lib/client/types/index.js +0 -0
  145. package/dist/lib/client/useFilteredItems-DTekHz39.js +2223 -0
  146. package/dist/lib/client/withoutComponentBinding-CcCW7fSc.js +13 -0
  147. package/dist/lib/server/CSPContext-DOxR0PO7.js +10 -0
  148. package/dist/lib/server/CheckboxGroupContext-DTP679kK.js +8 -0
  149. package/dist/lib/server/DialogHandle-ATZlm9RC.js +689 -0
  150. package/dist/lib/server/DialogPopup-BebI-w5P.js +159 -0
  151. package/dist/lib/server/DirectionContext-YORWLF08.js +10 -0
  152. package/dist/lib/server/FieldControl-Y_kI7ARp.js +174 -0
  153. package/dist/lib/server/FieldItemContext-x-C7ZlmX.js +7 -0
  154. package/dist/lib/server/FieldRootContext-IC-LWzVp.js +34 -0
  155. package/dist/lib/server/FieldsetRootContext-DyNqCjK6.js +14 -0
  156. package/dist/lib/server/FloatingTree-z1JPD1dR.js +101 -0
  157. package/dist/lib/server/FocusManager-BrbZVWME.js +538 -0
  158. package/dist/lib/server/FormContext-pvESt85v.js +17 -0
  159. package/dist/lib/server/InternalBackdrop-C_iDPVR-.js +260 -0
  160. package/dist/lib/server/LabelableContext-DZP3rgAY.js +59 -0
  161. package/dist/lib/server/MenuSubmenuTrigger-DA4gsv6z.js +2072 -0
  162. package/dist/lib/server/MenubarContext-C-62rMnO.js +14 -0
  163. package/dist/lib/server/PopupHandle-DthPgNjy.js +115 -0
  164. package/dist/lib/server/PopupStore-DEs3FAEe.js +645 -0
  165. package/dist/lib/server/PopupViewport-3r_KTFwX.js +220 -0
  166. package/dist/lib/server/RadioGroupContext-D5xmTkDz.js +10 -0
  167. package/dist/lib/server/Separator-vhhYxWGr.js +31 -0
  168. package/dist/lib/server/ToggleGroupContext-COor8gYc.js +10 -0
  169. package/dist/lib/server/ToolbarGroupContext-CzdHxijX.js +10 -0
  170. package/dist/lib/server/ToolbarItemOwnerContext-L5dsZ_vS.js +10 -0
  171. package/dist/lib/server/ToolbarRootContext-DD-qe7s8.js +14 -0
  172. package/dist/lib/server/TriggerFocusGuards-sbGwf45f.js +63 -0
  173. package/dist/lib/server/accordion/index.js +566 -0
  174. package/dist/lib/server/alert-dialog/index.js +36 -0
  175. package/dist/lib/server/autocomplete/index.js +173 -0
  176. package/dist/lib/server/avatar/index.js +199 -0
  177. package/dist/lib/server/button/index.js +119 -0
  178. package/dist/lib/server/buttonSemantics-BSwDxJhh.js +49 -0
  179. package/dist/lib/server/checkbox/index.js +537 -0
  180. package/dist/lib/server/checkbox-group/index.js +198 -0
  181. package/dist/lib/server/collapsible/index.js +307 -0
  182. package/dist/lib/server/combobox/index.js +480 -0
  183. package/dist/lib/server/compositeNavigation-BRVT1C38.js +68 -0
  184. package/dist/lib/server/constants-9H__9xbS.js +706 -0
  185. package/dist/lib/server/context-menu/index.js +263 -0
  186. package/dist/lib/server/createAnchorPositioning-C-cVOPwz.js +381 -0
  187. package/dist/lib/server/createAnchoredPopupScrollLock-DFuUrykR.js +20 -0
  188. package/dist/lib/server/createClickInteraction-BYsMgvup.js +68 -0
  189. package/dist/lib/server/createCollapsiblePanel-DTyVJz0G.js +297 -0
  190. package/dist/lib/server/createFocusInteraction-EIS0QOel.js +77 -0
  191. package/dist/lib/server/createPopupAutoResize-DO50jjNX.js +111 -0
  192. package/dist/lib/server/createTransitionStatus-BTlrerSS.js +61 -0
  193. package/dist/lib/server/csp-provider/index.js +15 -0
  194. package/dist/lib/server/dialog/index.js +19 -0
  195. package/dist/lib/server/direction-provider/index.js +13 -0
  196. package/dist/lib/server/dom-Crg_2R-j.js +67 -0
  197. package/dist/lib/server/drawer/index.js +2351 -0
  198. package/dist/lib/server/field/index.js +677 -0
  199. package/dist/lib/server/fieldset/index.js +91 -0
  200. package/dist/lib/server/form/index.js +136 -0
  201. package/dist/lib/server/form-types-P7-SCWyr.js +8 -0
  202. package/dist/lib/server/index.js +43 -0
  203. package/dist/lib/server/input/index.js +11 -0
  204. package/dist/lib/server/internals/composeEventHandlers.js +60 -0
  205. package/dist/lib/server/internals/createBaseUIEventDetails.js +33 -0
  206. package/dist/lib/server/internals/csp-context/index.js +2 -0
  207. package/dist/lib/server/internals/direction-context/index.js +2 -0
  208. package/dist/lib/server/internals/field-constants.js +64 -0
  209. package/dist/lib/server/internals/field-root-context/index.js +2 -0
  210. package/dist/lib/server/internals/form-context/index.js +2 -0
  211. package/dist/lib/server/internals/getStateAttributesProps.js +23 -0
  212. package/dist/lib/server/internals/labelable-provider/index.js +20 -0
  213. package/dist/lib/server/internals/mergeStyles.js +15 -0
  214. package/dist/lib/server/internals/reasons.js +76 -0
  215. package/dist/lib/server/internals/stateAttributesMapping.js +15 -0
  216. package/dist/lib/server/internals/types.js +1 -0
  217. package/dist/lib/server/menu/index.js +423 -0
  218. package/dist/lib/server/menubar/index.js +242 -0
  219. package/dist/lib/server/mergeStyleValue-Db8bRCM4.js +67 -0
  220. package/dist/lib/server/meter/index.js +217 -0
  221. package/dist/lib/server/navigation-menu/index.js +1436 -0
  222. package/dist/lib/server/number-field/index.js +1497 -0
  223. package/dist/lib/server/otp-field/index.js +811 -0
  224. package/dist/lib/server/platform-DYukKUir.js +13 -0
  225. package/dist/lib/server/popover/index.js +1187 -0
  226. package/dist/lib/server/popupStateMapping-nKoUwoke.js +459 -0
  227. package/dist/lib/server/preview-card/index.js +797 -0
  228. package/dist/lib/server/progress/index.js +252 -0
  229. package/dist/lib/server/radio/index.js +364 -0
  230. package/dist/lib/server/radio-group/index.js +282 -0
  231. package/dist/lib/server/resolveStyle-XCSFDHAL.js +11 -0
  232. package/dist/lib/server/rolldown-runtime-D7D4PA-g.js +13 -0
  233. package/dist/lib/server/runOnceAnimationsFinish-DCHzXWZU.js +59 -0
  234. package/dist/lib/server/safePolygon-CAm5RJGv.js +474 -0
  235. package/dist/lib/server/scroll-area/index.js +993 -0
  236. package/dist/lib/server/scrollable-CjsSxbGr.js +54 -0
  237. package/dist/lib/server/select/index.js +2630 -0
  238. package/dist/lib/server/separator/index.js +2 -0
  239. package/dist/lib/server/setRef-Bt70sW7c.js +7 -0
  240. package/dist/lib/server/slider/index.js +1333 -0
  241. package/dist/lib/server/switch/index.js +389 -0
  242. package/dist/lib/server/tabs/index.js +1007 -0
  243. package/dist/lib/server/toast/index.js +1588 -0
  244. package/dist/lib/server/toggle/index.js +201 -0
  245. package/dist/lib/server/toggle-group/index.js +192 -0
  246. package/dist/lib/server/toolbar/index.js +685 -0
  247. package/dist/lib/server/tooltip/index.js +1092 -0
  248. package/dist/lib/server/types/index.js +1 -0
  249. package/dist/lib/server/useFilteredItems-DvuctLt3.js +3157 -0
  250. package/dist/lib/server/withoutComponentBinding-BHaWr5kU.js +20 -0
  251. package/dist/lib/types/accordion/header/AccordionHeader.d.ts +12 -0
  252. package/dist/lib/types/accordion/index.d.ts +6 -0
  253. package/dist/lib/types/accordion/index.parts.d.ts +5 -0
  254. package/dist/lib/types/accordion/item/AccordionItem.d.ts +29 -0
  255. package/dist/lib/types/accordion/item/AccordionItemContext.d.ts +22 -0
  256. package/dist/lib/types/accordion/item/AccordionItemDataAttributes.d.ts +5 -0
  257. package/dist/lib/types/accordion/item/stateAttributesMapping.d.ts +13 -0
  258. package/dist/lib/types/accordion/panel/AccordionPanel.d.ts +20 -0
  259. package/dist/lib/types/accordion/panel/AccordionPanelCssVars.d.ts +4 -0
  260. package/dist/lib/types/accordion/root/AccordionRoot.d.ts +46 -0
  261. package/dist/lib/types/accordion/root/AccordionRootContext.d.ts +22 -0
  262. package/dist/lib/types/accordion/root/stateAttributesMapping.d.ts +3 -0
  263. package/dist/lib/types/accordion/trigger/AccordionTrigger.d.ts +27 -0
  264. package/dist/lib/types/accordion/trigger/AccordionTriggerDataAttributes.d.ts +4 -0
  265. package/dist/lib/types/alert-dialog/handle.d.ts +6 -0
  266. package/dist/lib/types/alert-dialog/index.d.ts +10 -0
  267. package/dist/lib/types/alert-dialog/index.parts.d.ts +10 -0
  268. package/dist/lib/types/alert-dialog/root/AlertDialogRoot.d.ts +29 -0
  269. package/dist/lib/types/alert-dialog/trigger/AlertDialogTrigger.d.ts +19 -0
  270. package/dist/lib/types/autocomplete/index.d.ts +24 -0
  271. package/dist/lib/types/autocomplete/index.parts.d.ts +23 -0
  272. package/dist/lib/types/autocomplete/input-group/AutocompleteInputGroup.d.ts +26 -0
  273. package/dist/lib/types/autocomplete/item/AutocompleteItem.d.ts +18 -0
  274. package/dist/lib/types/autocomplete/root/AutocompleteRoot.d.ts +195 -0
  275. package/dist/lib/types/autocomplete/root/utils/useFilter.d.ts +9 -0
  276. package/dist/lib/types/autocomplete/separator/AutocompleteSeparator.d.ts +17 -0
  277. package/dist/lib/types/autocomplete/trigger/AutocompleteTrigger.d.ts +24 -0
  278. package/dist/lib/types/autocomplete/value/AutocompleteValue.d.ts +15 -0
  279. package/dist/lib/types/avatar/fallback/AvatarFallback.d.ts +16 -0
  280. package/dist/lib/types/avatar/image/AvatarImage.d.ts +17 -0
  281. package/dist/lib/types/avatar/image/createImageLoadingStatus.d.ts +10 -0
  282. package/dist/lib/types/avatar/index.d.ts +4 -0
  283. package/dist/lib/types/avatar/index.parts.d.ts +3 -0
  284. package/dist/lib/types/avatar/root/AvatarRoot.d.ts +13 -0
  285. package/dist/lib/types/avatar/root/AvatarRootContext.d.ts +10 -0
  286. package/dist/lib/types/button/Button.d.ts +34 -0
  287. package/dist/lib/types/button/index.d.ts +2 -0
  288. package/dist/lib/types/checkbox/index.d.ts +3 -0
  289. package/dist/lib/types/checkbox/index.parts.d.ts +2 -0
  290. package/dist/lib/types/checkbox/indicator/CheckboxIndicator.d.ts +20 -0
  291. package/dist/lib/types/checkbox/root/CheckboxRoot.d.ts +56 -0
  292. package/dist/lib/types/checkbox/root/CheckboxRootContext.d.ts +7 -0
  293. package/dist/lib/types/checkbox/utils/getCheckboxStateAttributesMapping.d.ts +3 -0
  294. package/dist/lib/types/checkbox-group/CheckboxGroup.d.ts +32 -0
  295. package/dist/lib/types/checkbox-group/CheckboxGroupContext.d.ts +30 -0
  296. package/dist/lib/types/checkbox-group/index.d.ts +2 -0
  297. package/dist/lib/types/collapsible/index.d.ts +4 -0
  298. package/dist/lib/types/collapsible/index.parts.d.ts +3 -0
  299. package/dist/lib/types/collapsible/panel/CollapsiblePanel.d.ts +25 -0
  300. package/dist/lib/types/collapsible/panel/createCollapsiblePanel.d.ts +26 -0
  301. package/dist/lib/types/collapsible/root/CollapsibleRoot.d.ts +34 -0
  302. package/dist/lib/types/collapsible/root/CollapsibleRootContext.d.ts +19 -0
  303. package/dist/lib/types/collapsible/root/createCollapsibleTransitionStatus.d.ts +9 -0
  304. package/dist/lib/types/collapsible/root/stateAttributesMapping.d.ts +14 -0
  305. package/dist/lib/types/collapsible/trigger/CollapsibleTrigger.d.ts +28 -0
  306. package/dist/lib/types/combobox/arrow/ComboboxArrow.d.ts +16 -0
  307. package/dist/lib/types/combobox/backdrop/ComboboxBackdrop.d.ts +14 -0
  308. package/dist/lib/types/combobox/chip/ComboboxChip.d.ts +17 -0
  309. package/dist/lib/types/combobox/chip/ComboboxChipContext.d.ts +8 -0
  310. package/dist/lib/types/combobox/chip-remove/ComboboxChipRemove.d.ts +26 -0
  311. package/dist/lib/types/combobox/chips/ComboboxChips.d.ts +16 -0
  312. package/dist/lib/types/combobox/chips/ComboboxChipsContext.d.ts +26 -0
  313. package/dist/lib/types/combobox/clear/ComboboxClear.d.ts +35 -0
  314. package/dist/lib/types/combobox/collection/ComboboxCollection.d.ts +19 -0
  315. package/dist/lib/types/combobox/empty/ComboboxEmpty.d.ts +16 -0
  316. package/dist/lib/types/combobox/group/ComboboxGroup.d.ts +19 -0
  317. package/dist/lib/types/combobox/group/ComboboxGroupContext.d.ts +9 -0
  318. package/dist/lib/types/combobox/group-label/ComboboxGroupLabel.d.ts +11 -0
  319. package/dist/lib/types/combobox/icon/ComboboxIcon.d.ts +12 -0
  320. package/dist/lib/types/combobox/index.d.ts +29 -0
  321. package/dist/lib/types/combobox/index.parts.d.ts +28 -0
  322. package/dist/lib/types/combobox/input/ComboboxInput.d.ts +36 -0
  323. package/dist/lib/types/combobox/input-group/ComboboxInputGroup.d.ts +24 -0
  324. package/dist/lib/types/combobox/item/ComboboxItem.d.ts +40 -0
  325. package/dist/lib/types/combobox/item/ComboboxItemContext.d.ts +9 -0
  326. package/dist/lib/types/combobox/item-indicator/ComboboxItemIndicator.d.ts +22 -0
  327. package/dist/lib/types/combobox/label/ComboboxLabel.d.ts +22 -0
  328. package/dist/lib/types/combobox/list/ComboboxList.d.ts +24 -0
  329. package/dist/lib/types/combobox/popup/ComboboxPopup.d.ts +35 -0
  330. package/dist/lib/types/combobox/portal/ComboboxPortal.d.ts +25 -0
  331. package/dist/lib/types/combobox/portal/ComboboxPortalContext.d.ts +5 -0
  332. package/dist/lib/types/combobox/positioner/ComboboxPositioner.d.ts +37 -0
  333. package/dist/lib/types/combobox/positioner/ComboboxPositionerContext.d.ts +11 -0
  334. package/dist/lib/types/combobox/root/AriaCombobox.d.ts +82 -0
  335. package/dist/lib/types/combobox/root/ComboboxRoot.d.ts +180 -0
  336. package/dist/lib/types/combobox/root/ComboboxRootContext.d.ts +99 -0
  337. package/dist/lib/types/combobox/root/utils/useFilter.d.ts +25 -0
  338. package/dist/lib/types/combobox/root/utils/useFilteredItems.d.ts +5 -0
  339. package/dist/lib/types/combobox/row/ComboboxRow.d.ts +14 -0
  340. package/dist/lib/types/combobox/row/ComboboxRowContext.d.ts +3 -0
  341. package/dist/lib/types/combobox/separator/ComboboxSeparator.d.ts +21 -0
  342. package/dist/lib/types/combobox/status/ComboboxStatus.d.ts +17 -0
  343. package/dist/lib/types/combobox/store/ComboboxItemRegistry.d.ts +39 -0
  344. package/dist/lib/types/combobox/store/ComboboxStore.d.ts +65 -0
  345. package/dist/lib/types/combobox/trigger/ComboboxTrigger.d.ts +36 -0
  346. package/dist/lib/types/combobox/types.d.ts +15 -0
  347. package/dist/lib/types/combobox/utils/ComboboxInternalDismissButton.d.ts +9 -0
  348. package/dist/lib/types/combobox/utils/comboboxPopupId.d.ts +5 -0
  349. package/dist/lib/types/combobox/utils/createInitialLiveRegionTextMutation.d.ts +7 -0
  350. package/dist/lib/types/combobox/utils/handleInputPress.d.ts +7 -0
  351. package/dist/lib/types/combobox/utils/parts.d.ts +4 -0
  352. package/dist/lib/types/combobox/utils/stateAttributesMapping.d.ts +58 -0
  353. package/dist/lib/types/combobox/value/ComboboxValue.d.ts +20 -0
  354. package/dist/lib/types/context-menu/index.d.ts +19 -0
  355. package/dist/lib/types/context-menu/index.parts.d.ts +19 -0
  356. package/dist/lib/types/context-menu/root/ContextMenuRoot.d.ts +21 -0
  357. package/dist/lib/types/context-menu/root/ContextMenuRootContext.d.ts +19 -0
  358. package/dist/lib/types/context-menu/trigger/ContextMenuTrigger.d.ts +21 -0
  359. package/dist/lib/types/csp-provider/CSPProvider.d.ts +14 -0
  360. package/dist/lib/types/csp-provider/index.d.ts +2 -0
  361. package/dist/lib/types/dialog/backdrop/DialogBackdrop.d.ts +18 -0
  362. package/dist/lib/types/dialog/close/DialogClose.d.ts +26 -0
  363. package/dist/lib/types/dialog/description/DialogDescription.d.ts +11 -0
  364. package/dist/lib/types/dialog/index.d.ts +10 -0
  365. package/dist/lib/types/dialog/index.parts.d.ts +10 -0
  366. package/dist/lib/types/dialog/popup/DialogPopup.d.ts +24 -0
  367. package/dist/lib/types/dialog/portal/DialogPortal.d.ts +17 -0
  368. package/dist/lib/types/dialog/portal/DialogPortalContext.d.ts +8 -0
  369. package/dist/lib/types/dialog/root/DialogRoot.d.ts +44 -0
  370. package/dist/lib/types/dialog/root/DialogRootContext.d.ts +38 -0
  371. package/dist/lib/types/dialog/store/DialogHandle.d.ts +11 -0
  372. package/dist/lib/types/dialog/store/DialogStore.d.ts +20 -0
  373. package/dist/lib/types/dialog/title/DialogTitle.d.ts +11 -0
  374. package/dist/lib/types/dialog/trigger/DialogTrigger.d.ts +30 -0
  375. package/dist/lib/types/dialog/utils/mergeDialogStyles.d.ts +2 -0
  376. package/dist/lib/types/dialog/utils/stateAttributesMapping.d.ts +20 -0
  377. package/dist/lib/types/dialog/viewport/DialogViewport.d.ts +16 -0
  378. package/dist/lib/types/direction-provider/DirectionProvider.d.ts +13 -0
  379. package/dist/lib/types/direction-provider/index.d.ts +4 -0
  380. package/dist/lib/types/drawer/backdrop/DrawerBackdrop.d.ts +24 -0
  381. package/dist/lib/types/drawer/backdrop/DrawerBackdropCssVars.d.ts +7 -0
  382. package/dist/lib/types/drawer/content/DrawerContent.d.ts +14 -0
  383. package/dist/lib/types/drawer/content/DrawerContentDataAttributes.d.ts +1 -0
  384. package/dist/lib/types/drawer/handle.d.ts +14 -0
  385. package/dist/lib/types/drawer/indent/DrawerIndent.d.ts +16 -0
  386. package/dist/lib/types/drawer/indent-background/DrawerIndentBackground.d.ts +23 -0
  387. package/dist/lib/types/drawer/index.d.ts +17 -0
  388. package/dist/lib/types/drawer/index.parts.d.ts +16 -0
  389. package/dist/lib/types/drawer/popup/DrawerPopup.d.ts +46 -0
  390. package/dist/lib/types/drawer/popup/DrawerPopupCssVars.d.ts +37 -0
  391. package/dist/lib/types/drawer/popup/DrawerPopupDataAttributes.d.ts +25 -0
  392. package/dist/lib/types/drawer/provider/DrawerProvider.d.ts +15 -0
  393. package/dist/lib/types/drawer/provider/DrawerProviderContext.d.ts +21 -0
  394. package/dist/lib/types/drawer/root/DrawerRoot.d.ts +65 -0
  395. package/dist/lib/types/drawer/root/DrawerRootContext.d.ts +68 -0
  396. package/dist/lib/types/drawer/root/createDrawerSnapPoints.d.ts +24 -0
  397. package/dist/lib/types/drawer/swipe-area/DrawerSwipeArea.d.ts +43 -0
  398. package/dist/lib/types/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.ts +15 -0
  399. package/dist/lib/types/drawer/viewport/DrawerViewport.d.ts +31 -0
  400. package/dist/lib/types/drawer/viewport/DrawerViewportContext.d.ts +12 -0
  401. package/dist/lib/types/drawer/viewport/DrawerViewportCssVars.d.ts +8 -0
  402. package/dist/lib/types/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardContext.d.ts +14 -0
  403. package/dist/lib/types/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.d.ts +14 -0
  404. package/dist/lib/types/field/control/FieldControl.d.ts +35 -0
  405. package/dist/lib/types/field/description/FieldDescription.d.ts +16 -0
  406. package/dist/lib/types/field/error/FieldError.d.ts +19 -0
  407. package/dist/lib/types/field/index.d.ts +8 -0
  408. package/dist/lib/types/field/index.parts.d.ts +8 -0
  409. package/dist/lib/types/field/item/FieldItem.d.ts +16 -0
  410. package/dist/lib/types/field/item/FieldItemContext.d.ts +6 -0
  411. package/dist/lib/types/field/label/FieldLabel.d.ts +24 -0
  412. package/dist/lib/types/field/root/FieldRoot.d.ts +30 -0
  413. package/dist/lib/types/field/root/createFieldValidation.d.ts +22 -0
  414. package/dist/lib/types/field/validity/FieldValidity.d.ts +16 -0
  415. package/dist/lib/types/fieldset/index.d.ts +3 -0
  416. package/dist/lib/types/fieldset/index.parts.d.ts +2 -0
  417. package/dist/lib/types/fieldset/legend/FieldsetLegend.d.ts +21 -0
  418. package/dist/lib/types/fieldset/root/FieldsetRoot.d.ts +21 -0
  419. package/dist/lib/types/fieldset/root/FieldsetRootContext.d.ts +11 -0
  420. package/dist/lib/types/form/Form.d.ts +39 -0
  421. package/dist/lib/types/form/index.d.ts +2 -0
  422. package/dist/lib/types/index.d.ts +41 -0
  423. package/dist/lib/types/input/Input.d.ts +20 -0
  424. package/dist/lib/types/input/index.d.ts +2 -0
  425. package/dist/lib/types/internals/buttonSemantics.d.ts +10 -0
  426. package/dist/lib/types/internals/clamp.d.ts +1 -0
  427. package/dist/lib/types/internals/composeEventHandlers.d.ts +11 -0
  428. package/dist/lib/types/internals/constants.d.ts +4 -0
  429. package/dist/lib/types/internals/createBaseUIEventDetails.d.ts +57 -0
  430. package/dist/lib/types/internals/createTransitionStatus.d.ts +9 -0
  431. package/dist/lib/types/internals/csp-context/CSPContext.d.ts +7 -0
  432. package/dist/lib/types/internals/csp-context/index.d.ts +2 -0
  433. package/dist/lib/types/internals/direction-context/DirectionContext.d.ts +6 -0
  434. package/dist/lib/types/internals/direction-context/index.d.ts +2 -0
  435. package/dist/lib/types/internals/field-constants.d.ts +44 -0
  436. package/dist/lib/types/internals/field-root-context/FieldRootContext.d.ts +31 -0
  437. package/dist/lib/types/internals/field-root-context/index.d.ts +2 -0
  438. package/dist/lib/types/internals/filter.d.ts +18 -0
  439. package/dist/lib/types/internals/form-context/FormContext.d.ts +13 -0
  440. package/dist/lib/types/internals/form-context/index.d.ts +3 -0
  441. package/dist/lib/types/internals/form-types.d.ts +11 -0
  442. package/dist/lib/types/internals/getStateAttributesProps.d.ts +4 -0
  443. package/dist/lib/types/internals/installOwnedEventHandlers.d.ts +3 -0
  444. package/dist/lib/types/internals/isSolidAccessor.d.ts +6 -0
  445. package/dist/lib/types/internals/itemEquality.d.ts +17 -0
  446. package/dist/lib/types/internals/labelable-provider/LabelableContext.d.ts +18 -0
  447. package/dist/lib/types/internals/labelable-provider/LabelableProvider.d.ts +11 -0
  448. package/dist/lib/types/internals/labelable-provider/index.d.ts +2 -0
  449. package/dist/lib/types/internals/mergeStyleValue.d.ts +8 -0
  450. package/dist/lib/types/internals/mergeStyles.d.ts +6 -0
  451. package/dist/lib/types/internals/overlay/FloatingRootStore.d.ts +49 -0
  452. package/dist/lib/types/internals/overlay/FloatingTree.d.ts +48 -0
  453. package/dist/lib/types/internals/overlay/FocusGuard.d.ts +2 -0
  454. package/dist/lib/types/internals/overlay/FocusManager.d.ts +30 -0
  455. package/dist/lib/types/internals/overlay/InternalBackdrop.d.ts +6 -0
  456. package/dist/lib/types/internals/overlay/PopupHandle.d.ts +47 -0
  457. package/dist/lib/types/internals/overlay/PopupPortal.d.ts +37 -0
  458. package/dist/lib/types/internals/overlay/PopupStore.d.ts +89 -0
  459. package/dist/lib/types/internals/overlay/PopupTriggerMap.d.ts +11 -0
  460. package/dist/lib/types/internals/overlay/PopupViewport.d.ts +16 -0
  461. package/dist/lib/types/internals/overlay/ReactiveStore.d.ts +26 -0
  462. package/dist/lib/types/internals/overlay/TriggerFocusGuards.d.ts +14 -0
  463. package/dist/lib/types/internals/overlay/adaptiveOrigin.d.ts +2 -0
  464. package/dist/lib/types/internals/overlay/compositeNavigation.d.ts +20 -0
  465. package/dist/lib/types/internals/overlay/createAnchorPositioning.d.ts +57 -0
  466. package/dist/lib/types/internals/overlay/createAnchoredPopupScrollLock.d.ts +12 -0
  467. package/dist/lib/types/internals/overlay/createClickInteraction.d.ts +20 -0
  468. package/dist/lib/types/internals/overlay/createClientPoint.d.ts +12 -0
  469. package/dist/lib/types/internals/overlay/createContextMenuInteraction.d.ts +17 -0
  470. package/dist/lib/types/internals/overlay/createDelayGroup.d.ts +18 -0
  471. package/dist/lib/types/internals/overlay/createDismiss.d.ts +27 -0
  472. package/dist/lib/types/internals/overlay/createFloatingPosition.d.ts +22 -0
  473. package/dist/lib/types/internals/overlay/createFocusInteraction.d.ts +14 -0
  474. package/dist/lib/types/internals/overlay/createHoverInteraction.d.ts +30 -0
  475. package/dist/lib/types/internals/overlay/createInitialPositioning.d.ts +3 -0
  476. package/dist/lib/types/internals/overlay/createListNavigation.d.ts +26 -0
  477. package/dist/lib/types/internals/overlay/createPopupAutoResize.d.ts +18 -0
  478. package/dist/lib/types/internals/overlay/createPopupPresence.d.ts +18 -0
  479. package/dist/lib/types/internals/overlay/createSwipeDismiss.d.ts +107 -0
  480. package/dist/lib/types/internals/overlay/createTypeahead.d.ts +20 -0
  481. package/dist/lib/types/internals/overlay/dom.d.ts +19 -0
  482. package/dist/lib/types/internals/overlay/eventEmitter.d.ts +7 -0
  483. package/dist/lib/types/internals/overlay/getElementAtPoint.d.ts +8 -0
  484. package/dist/lib/types/internals/overlay/index.d.ts +37 -0
  485. package/dist/lib/types/internals/overlay/inlineRect.d.ts +32 -0
  486. package/dist/lib/types/internals/overlay/markOthers.d.ts +6 -0
  487. package/dist/lib/types/internals/overlay/popupStateMapping.d.ts +46 -0
  488. package/dist/lib/types/internals/overlay/safePolygon.d.ts +24 -0
  489. package/dist/lib/types/internals/overlay/scrollLock.d.ts +10 -0
  490. package/dist/lib/types/internals/overlay/tabbable.d.ts +11 -0
  491. package/dist/lib/types/internals/platform.d.ts +1 -0
  492. package/dist/lib/types/internals/reason-parts.d.ts +35 -0
  493. package/dist/lib/types/internals/reasons.d.ts +4 -0
  494. package/dist/lib/types/internals/resolveClass.d.ts +3 -0
  495. package/dist/lib/types/internals/resolveStyle.d.ts +3 -0
  496. package/dist/lib/types/internals/runOnceAnimationsFinish.d.ts +4 -0
  497. package/dist/lib/types/internals/scrollable.d.ts +18 -0
  498. package/dist/lib/types/internals/setRef.d.ts +2 -0
  499. package/dist/lib/types/internals/stateAttributesMapping.d.ts +8 -0
  500. package/dist/lib/types/internals/types.d.ts +2 -0
  501. package/dist/lib/types/internals/valueLabel.d.ts +28 -0
  502. package/dist/lib/types/internals/withoutComponentBinding.d.ts +7 -0
  503. package/dist/lib/types/menu/arrow/MenuArrow.d.ts +16 -0
  504. package/dist/lib/types/menu/backdrop/MenuBackdrop.d.ts +14 -0
  505. package/dist/lib/types/menu/checkbox-item/MenuCheckboxItem.d.ts +37 -0
  506. package/dist/lib/types/menu/checkbox-item/MenuCheckboxItemContext.d.ts +6 -0
  507. package/dist/lib/types/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.d.ts +18 -0
  508. package/dist/lib/types/menu/group/MenuGroup.d.ts +11 -0
  509. package/dist/lib/types/menu/group/MenuGroupContext.d.ts +9 -0
  510. package/dist/lib/types/menu/group-label/MenuGroupLabel.d.ts +11 -0
  511. package/dist/lib/types/menu/index.d.ts +20 -0
  512. package/dist/lib/types/menu/index.parts.d.ts +21 -0
  513. package/dist/lib/types/menu/item/MenuItem.d.ts +28 -0
  514. package/dist/lib/types/menu/item/createMenuItem.d.ts +24 -0
  515. package/dist/lib/types/menu/link-item/MenuLinkItem.d.ts +25 -0
  516. package/dist/lib/types/menu/popup/MenuPopup.d.ts +28 -0
  517. package/dist/lib/types/menu/portal/MenuPortal.d.ts +17 -0
  518. package/dist/lib/types/menu/portal/MenuPortalContext.d.ts +8 -0
  519. package/dist/lib/types/menu/positioner/MenuPositioner.d.ts +39 -0
  520. package/dist/lib/types/menu/positioner/MenuPositionerContext.d.ts +5 -0
  521. package/dist/lib/types/menu/radio-group/MenuRadioGroup.d.ts +24 -0
  522. package/dist/lib/types/menu/radio-group/MenuRadioGroupContext.d.ts +11 -0
  523. package/dist/lib/types/menu/radio-item/MenuRadioItem.d.ts +30 -0
  524. package/dist/lib/types/menu/radio-item/MenuRadioItemContext.d.ts +6 -0
  525. package/dist/lib/types/menu/radio-item-indicator/MenuRadioItemIndicator.d.ts +18 -0
  526. package/dist/lib/types/menu/root/MenuRoot.d.ts +56 -0
  527. package/dist/lib/types/menu/root/MenuRootContext.d.ts +23 -0
  528. package/dist/lib/types/menu/store/MenuCollection.d.ts +19 -0
  529. package/dist/lib/types/menu/store/MenuHandle.d.ts +10 -0
  530. package/dist/lib/types/menu/store/MenuStore.d.ts +110 -0
  531. package/dist/lib/types/menu/submenu-root/MenuSubmenuRoot.d.ts +17 -0
  532. package/dist/lib/types/menu/submenu-root/MenuSubmenuRootContext.d.ts +8 -0
  533. package/dist/lib/types/menu/submenu-trigger/MenuSubmenuTrigger.d.ts +33 -0
  534. package/dist/lib/types/menu/trigger/MenuTrigger.d.ts +36 -0
  535. package/dist/lib/types/menu/utils/mergeMenuStyles.d.ts +2 -0
  536. package/dist/lib/types/menu/utils/stateAttributesMapping.d.ts +39 -0
  537. package/dist/lib/types/menu/viewport/MenuViewport.d.ts +15 -0
  538. package/dist/lib/types/menubar/Menubar.d.ts +23 -0
  539. package/dist/lib/types/menubar/MenubarContext.d.ts +34 -0
  540. package/dist/lib/types/menubar/index.d.ts +2 -0
  541. package/dist/lib/types/meter/index.d.ts +6 -0
  542. package/dist/lib/types/meter/index.parts.d.ts +5 -0
  543. package/dist/lib/types/meter/indicator/MeterIndicator.d.ts +12 -0
  544. package/dist/lib/types/meter/label/MeterLabel.d.ts +17 -0
  545. package/dist/lib/types/meter/root/MeterRoot.d.ts +28 -0
  546. package/dist/lib/types/meter/root/MeterRootContext.d.ts +12 -0
  547. package/dist/lib/types/meter/track/MeterTrack.d.ts +12 -0
  548. package/dist/lib/types/meter/value/MeterValue.d.ts +16 -0
  549. package/dist/lib/types/navigation-menu/arrow/NavigationMenuArrow.d.ts +16 -0
  550. package/dist/lib/types/navigation-menu/backdrop/NavigationMenuBackdrop.d.ts +14 -0
  551. package/dist/lib/types/navigation-menu/composite/NavigationMenuCompositeContext.d.ts +22 -0
  552. package/dist/lib/types/navigation-menu/content/NavigationMenuContent.d.ts +21 -0
  553. package/dist/lib/types/navigation-menu/icon/NavigationMenuIcon.d.ts +12 -0
  554. package/dist/lib/types/navigation-menu/index.d.ts +14 -0
  555. package/dist/lib/types/navigation-menu/index.parts.d.ts +13 -0
  556. package/dist/lib/types/navigation-menu/item/NavigationMenuItem.d.ts +15 -0
  557. package/dist/lib/types/navigation-menu/item/NavigationMenuItemContext.d.ts +8 -0
  558. package/dist/lib/types/navigation-menu/link/NavigationMenuLink.d.ts +20 -0
  559. package/dist/lib/types/navigation-menu/list/NavigationMenuList.d.ts +12 -0
  560. package/dist/lib/types/navigation-menu/popup/NavigationMenuPopup.d.ts +23 -0
  561. package/dist/lib/types/navigation-menu/portal/NavigationMenuPortal.d.ts +17 -0
  562. package/dist/lib/types/navigation-menu/portal/NavigationMenuPortalContext.d.ts +8 -0
  563. package/dist/lib/types/navigation-menu/positioner/NavigationMenuPositioner.d.ts +37 -0
  564. package/dist/lib/types/navigation-menu/positioner/NavigationMenuPositionerContext.d.ts +5 -0
  565. package/dist/lib/types/navigation-menu/root/NavigationMenuRoot.d.ts +39 -0
  566. package/dist/lib/types/navigation-menu/root/NavigationMenuRootContext.d.ts +19 -0
  567. package/dist/lib/types/navigation-menu/store/NavigationMenuStore.d.ts +64 -0
  568. package/dist/lib/types/navigation-menu/trigger/NavigationMenuTrigger.d.ts +27 -0
  569. package/dist/lib/types/navigation-menu/utils/mergeNavigationMenuStyles.d.ts +2 -0
  570. package/dist/lib/types/navigation-menu/viewport/NavigationMenuViewport.d.ts +11 -0
  571. package/dist/lib/types/number-field/decrement/NumberFieldDecrement.d.ts +12 -0
  572. package/dist/lib/types/number-field/group/NumberFieldGroup.d.ts +12 -0
  573. package/dist/lib/types/number-field/increment/NumberFieldIncrement.d.ts +12 -0
  574. package/dist/lib/types/number-field/increment/NumberFieldStepperButton.d.ts +26 -0
  575. package/dist/lib/types/number-field/index.d.ts +8 -0
  576. package/dist/lib/types/number-field/index.parts.d.ts +7 -0
  577. package/dist/lib/types/number-field/input/NumberFieldInput.d.ts +25 -0
  578. package/dist/lib/types/number-field/root/NumberFieldRoot.d.ts +55 -0
  579. package/dist/lib/types/number-field/root/NumberFieldRootContext.d.ts +39 -0
  580. package/dist/lib/types/number-field/root/createPressAndHold.d.ts +24 -0
  581. package/dist/lib/types/number-field/scrub-area/NumberFieldScrubArea.d.ts +20 -0
  582. package/dist/lib/types/number-field/scrub-area/NumberFieldScrubAreaContext.d.ts +13 -0
  583. package/dist/lib/types/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.d.ts +12 -0
  584. package/dist/lib/types/number-field/utils/format.d.ts +2 -0
  585. package/dist/lib/types/number-field/utils/getViewportRect.d.ts +6 -0
  586. package/dist/lib/types/number-field/utils/parse.d.ts +40 -0
  587. package/dist/lib/types/number-field/utils/platform.d.ts +3 -0
  588. package/dist/lib/types/number-field/utils/stateAttributesMapping.d.ts +10 -0
  589. package/dist/lib/types/number-field/utils/types.d.ts +16 -0
  590. package/dist/lib/types/number-field/utils/validate.d.ts +9 -0
  591. package/dist/lib/types/otp-field/index.d.ts +3 -0
  592. package/dist/lib/types/otp-field/index.parts.d.ts +3 -0
  593. package/dist/lib/types/otp-field/input/OTPFieldInput.d.ts +29 -0
  594. package/dist/lib/types/otp-field/root/OTPFieldRoot.d.ts +56 -0
  595. package/dist/lib/types/otp-field/root/OTPFieldRootContext.d.ts +45 -0
  596. package/dist/lib/types/otp-field/utils/otp.d.ts +14 -0
  597. package/dist/lib/types/otp-field/utils/stateAttributesMapping.d.ts +5 -0
  598. package/dist/lib/types/popover/arrow/PopoverArrow.d.ts +16 -0
  599. package/dist/lib/types/popover/backdrop/PopoverBackdrop.d.ts +14 -0
  600. package/dist/lib/types/popover/close/PopoverClose.d.ts +25 -0
  601. package/dist/lib/types/popover/description/PopoverDescription.d.ts +11 -0
  602. package/dist/lib/types/popover/index.d.ts +12 -0
  603. package/dist/lib/types/popover/index.parts.d.ts +12 -0
  604. package/dist/lib/types/popover/popup/PopoverPopup.d.ts +26 -0
  605. package/dist/lib/types/popover/portal/PopoverPortal.d.ts +17 -0
  606. package/dist/lib/types/popover/portal/PopoverPortalContext.d.ts +8 -0
  607. package/dist/lib/types/popover/positioner/PopoverPositioner.d.ts +38 -0
  608. package/dist/lib/types/popover/positioner/PopoverPositionerContext.d.ts +5 -0
  609. package/dist/lib/types/popover/root/PopoverRoot.d.ts +38 -0
  610. package/dist/lib/types/popover/root/PopoverRootContext.d.ts +25 -0
  611. package/dist/lib/types/popover/store/PopoverHandle.d.ts +10 -0
  612. package/dist/lib/types/popover/store/PopoverStore.d.ts +65 -0
  613. package/dist/lib/types/popover/title/PopoverTitle.d.ts +11 -0
  614. package/dist/lib/types/popover/trigger/PopoverTrigger.d.ts +33 -0
  615. package/dist/lib/types/popover/utils/ClosePartContext.d.ts +10 -0
  616. package/dist/lib/types/popover/utils/mergePopoverStyles.d.ts +2 -0
  617. package/dist/lib/types/popover/utils/stateAttributesMapping.d.ts +26 -0
  618. package/dist/lib/types/popover/viewport/PopoverViewport.d.ts +15 -0
  619. package/dist/lib/types/preview-card/arrow/PreviewCardArrow.d.ts +16 -0
  620. package/dist/lib/types/preview-card/backdrop/PreviewCardBackdrop.d.ts +14 -0
  621. package/dist/lib/types/preview-card/index.d.ts +9 -0
  622. package/dist/lib/types/preview-card/index.parts.d.ts +9 -0
  623. package/dist/lib/types/preview-card/popup/PreviewCardPopup.d.ts +23 -0
  624. package/dist/lib/types/preview-card/portal/PreviewCardPortal.d.ts +17 -0
  625. package/dist/lib/types/preview-card/portal/PreviewCardPortalContext.d.ts +8 -0
  626. package/dist/lib/types/preview-card/positioner/PreviewCardPositioner.d.ts +38 -0
  627. package/dist/lib/types/preview-card/positioner/PreviewCardPositionerContext.d.ts +5 -0
  628. package/dist/lib/types/preview-card/root/PreviewCardRoot.d.ts +37 -0
  629. package/dist/lib/types/preview-card/root/PreviewCardRootContext.d.ts +12 -0
  630. package/dist/lib/types/preview-card/store/PreviewCardHandle.d.ts +10 -0
  631. package/dist/lib/types/preview-card/store/PreviewCardStore.d.ts +34 -0
  632. package/dist/lib/types/preview-card/trigger/PreviewCardTrigger.d.ts +20 -0
  633. package/dist/lib/types/preview-card/utils/mergePreviewCardStyles.d.ts +2 -0
  634. package/dist/lib/types/preview-card/utils/stateAttributesMapping.d.ts +32 -0
  635. package/dist/lib/types/preview-card/viewport/PreviewCardViewport.d.ts +14 -0
  636. package/dist/lib/types/progress/index.d.ts +6 -0
  637. package/dist/lib/types/progress/index.parts.d.ts +6 -0
  638. package/dist/lib/types/progress/indicator/ProgressIndicator.d.ts +12 -0
  639. package/dist/lib/types/progress/label/ProgressLabel.d.ts +17 -0
  640. package/dist/lib/types/progress/root/ProgressRoot.d.ts +31 -0
  641. package/dist/lib/types/progress/root/ProgressRootContext.d.ts +13 -0
  642. package/dist/lib/types/progress/root/stateAttributesMapping.d.ts +3 -0
  643. package/dist/lib/types/progress/track/ProgressTrack.d.ts +12 -0
  644. package/dist/lib/types/progress/value/ProgressValue.d.ts +16 -0
  645. package/dist/lib/types/radio/index.d.ts +3 -0
  646. package/dist/lib/types/radio/index.parts.d.ts +2 -0
  647. package/dist/lib/types/radio/indicator/RadioIndicator.d.ts +20 -0
  648. package/dist/lib/types/radio/root/RadioRoot.d.ts +39 -0
  649. package/dist/lib/types/radio/root/RadioRootContext.d.ts +7 -0
  650. package/dist/lib/types/radio-group/RadioGroup.d.ts +43 -0
  651. package/dist/lib/types/radio-group/RadioGroupContext.d.ts +33 -0
  652. package/dist/lib/types/radio-group/index.d.ts +2 -0
  653. package/dist/lib/types/scroll-area/constants.d.ts +2 -0
  654. package/dist/lib/types/scroll-area/content/ScrollAreaContent.d.ts +12 -0
  655. package/dist/lib/types/scroll-area/corner/ScrollAreaCorner.d.ts +11 -0
  656. package/dist/lib/types/scroll-area/index.d.ts +7 -0
  657. package/dist/lib/types/scroll-area/index.parts.d.ts +6 -0
  658. package/dist/lib/types/scroll-area/root/ScrollAreaRoot.d.ts +58 -0
  659. package/dist/lib/types/scroll-area/root/ScrollAreaRootContext.d.ts +44 -0
  660. package/dist/lib/types/scroll-area/root/stateAttributes.d.ts +3 -0
  661. package/dist/lib/types/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +28 -0
  662. package/dist/lib/types/scroll-area/scrollbar/ScrollAreaScrollbarContext.d.ts +7 -0
  663. package/dist/lib/types/scroll-area/thumb/ScrollAreaThumb.d.ts +22 -0
  664. package/dist/lib/types/scroll-area/utils/dom.d.ts +2 -0
  665. package/dist/lib/types/scroll-area/utils/eventTarget.d.ts +2 -0
  666. package/dist/lib/types/scroll-area/utils/getOffset.d.ts +1 -0
  667. package/dist/lib/types/scroll-area/utils/scrollEdges.d.ts +1 -0
  668. package/dist/lib/types/scroll-area/viewport/ScrollAreaViewport.d.ts +22 -0
  669. package/dist/lib/types/scroll-area/viewport/ScrollAreaViewportContext.d.ts +7 -0
  670. package/dist/lib/types/select/arrow/SelectArrow.d.ts +16 -0
  671. package/dist/lib/types/select/backdrop/SelectBackdrop.d.ts +14 -0
  672. package/dist/lib/types/select/group/SelectGroup.d.ts +11 -0
  673. package/dist/lib/types/select/group/SelectGroupContext.d.ts +9 -0
  674. package/dist/lib/types/select/group-label/SelectGroupLabel.d.ts +11 -0
  675. package/dist/lib/types/select/icon/SelectIcon.d.ts +12 -0
  676. package/dist/lib/types/select/index.d.ts +20 -0
  677. package/dist/lib/types/select/index.parts.d.ts +19 -0
  678. package/dist/lib/types/select/item/SelectItem.d.ts +32 -0
  679. package/dist/lib/types/select/item/SelectItemContext.d.ts +12 -0
  680. package/dist/lib/types/select/item-indicator/SelectItemIndicator.d.ts +18 -0
  681. package/dist/lib/types/select/item-text/SelectItemText.d.ts +11 -0
  682. package/dist/lib/types/select/label/SelectLabel.d.ts +17 -0
  683. package/dist/lib/types/select/list/SelectList.d.ts +16 -0
  684. package/dist/lib/types/select/popup/SelectPopup.d.ts +26 -0
  685. package/dist/lib/types/select/portal/SelectPortal.d.ts +16 -0
  686. package/dist/lib/types/select/portal/SelectPortalContext.d.ts +4 -0
  687. package/dist/lib/types/select/positioner/SelectPositioner.d.ts +37 -0
  688. package/dist/lib/types/select/positioner/SelectPositionerContext.d.ts +16 -0
  689. package/dist/lib/types/select/root/SelectRoot.d.ts +52 -0
  690. package/dist/lib/types/select/root/SelectRootContext.d.ts +63 -0
  691. package/dist/lib/types/select/scroll-arrow/SelectScrollArrow.d.ts +22 -0
  692. package/dist/lib/types/select/scroll-down-arrow/SelectScrollDownArrow.d.ts +15 -0
  693. package/dist/lib/types/select/scroll-up-arrow/SelectScrollUpArrow.d.ts +15 -0
  694. package/dist/lib/types/select/separator/SelectSeparator.d.ts +17 -0
  695. package/dist/lib/types/select/store/SelectCollection.d.ts +25 -0
  696. package/dist/lib/types/select/store/SelectStore.d.ts +82 -0
  697. package/dist/lib/types/select/trigger/SelectTrigger.d.ts +35 -0
  698. package/dist/lib/types/select/types.d.ts +10 -0
  699. package/dist/lib/types/select/utils/equality.d.ts +2 -0
  700. package/dist/lib/types/select/utils/mergeSelectStyles.d.ts +1 -0
  701. package/dist/lib/types/select/utils/scrollEdges.d.ts +3 -0
  702. package/dist/lib/types/select/utils/stateAttributesMapping.d.ts +37 -0
  703. package/dist/lib/types/select/utils/value.d.ts +7 -0
  704. package/dist/lib/types/select/value/SelectValue.d.ts +18 -0
  705. package/dist/lib/types/separator/Separator.d.ts +19 -0
  706. package/dist/lib/types/separator/index.d.ts +2 -0
  707. package/dist/lib/types/slider/control/SliderControl.d.ts +18 -0
  708. package/dist/lib/types/slider/index.d.ts +8 -0
  709. package/dist/lib/types/slider/index.parts.d.ts +7 -0
  710. package/dist/lib/types/slider/indicator/SliderIndicator.d.ts +12 -0
  711. package/dist/lib/types/slider/label/SliderLabel.d.ts +17 -0
  712. package/dist/lib/types/slider/root/SliderRoot.d.ts +57 -0
  713. package/dist/lib/types/slider/root/SliderRootContext.d.ts +63 -0
  714. package/dist/lib/types/slider/stateAttributesMapping.d.ts +14 -0
  715. package/dist/lib/types/slider/thumb/SliderThumb.d.ts +31 -0
  716. package/dist/lib/types/slider/thumb/SliderThumbDataAttributes.d.ts +11 -0
  717. package/dist/lib/types/slider/thumb/prehydrationScript.d.ts +1 -0
  718. package/dist/lib/types/slider/track/SliderTrack.d.ts +12 -0
  719. package/dist/lib/types/slider/utils/dom.d.ts +4 -0
  720. package/dist/lib/types/slider/utils/getPushedThumbValues.d.ts +1 -0
  721. package/dist/lib/types/slider/utils/getSliderValue.d.ts +1 -0
  722. package/dist/lib/types/slider/utils/math.d.ts +4 -0
  723. package/dist/lib/types/slider/utils/resolveThumbCollision.d.ts +7 -0
  724. package/dist/lib/types/slider/utils/roundValueToStep.d.ts +2 -0
  725. package/dist/lib/types/slider/utils/validateMinimumDistance.d.ts +1 -0
  726. package/dist/lib/types/slider/value/SliderValue.d.ts +16 -0
  727. package/dist/lib/types/switch/index.d.ts +3 -0
  728. package/dist/lib/types/switch/index.parts.d.ts +2 -0
  729. package/dist/lib/types/switch/root/SwitchRoot.d.ts +55 -0
  730. package/dist/lib/types/switch/root/SwitchRootContext.d.ts +7 -0
  731. package/dist/lib/types/switch/stateAttributesMapping.d.ts +9 -0
  732. package/dist/lib/types/switch/thumb/SwitchThumb.d.ts +12 -0
  733. package/dist/lib/types/tabs/index.d.ts +6 -0
  734. package/dist/lib/types/tabs/index.parts.d.ts +5 -0
  735. package/dist/lib/types/tabs/indicator/TabsIndicator.d.ts +22 -0
  736. package/dist/lib/types/tabs/indicator/TabsIndicatorCssVars.d.ts +8 -0
  737. package/dist/lib/types/tabs/indicator/prehydrationScript.d.ts +1 -0
  738. package/dist/lib/types/tabs/list/TabsList.d.ts +21 -0
  739. package/dist/lib/types/tabs/list/TabsListContext.d.ts +14 -0
  740. package/dist/lib/types/tabs/panel/TabsPanel.d.ts +30 -0
  741. package/dist/lib/types/tabs/panel/TabsPanelDataAttributes.d.ts +6 -0
  742. package/dist/lib/types/tabs/root/TabsRoot.d.ts +38 -0
  743. package/dist/lib/types/tabs/root/TabsRootContext.d.ts +43 -0
  744. package/dist/lib/types/tabs/root/TabsRootDataAttributes.d.ts +4 -0
  745. package/dist/lib/types/tabs/root/stateAttributesMapping.d.ts +8 -0
  746. package/dist/lib/types/tabs/tab/TabsTab.d.ts +59 -0
  747. package/dist/lib/types/tabs/tab/TabsTabDataAttributes.d.ts +6 -0
  748. package/dist/lib/types/toast/action/ToastAction.d.ts +30 -0
  749. package/dist/lib/types/toast/arrow/ToastArrow.d.ts +18 -0
  750. package/dist/lib/types/toast/close/ToastClose.d.ts +29 -0
  751. package/dist/lib/types/toast/content/ToastContent.d.ts +15 -0
  752. package/dist/lib/types/toast/createToastManager.d.ts +15 -0
  753. package/dist/lib/types/toast/description/ToastDescription.d.ts +16 -0
  754. package/dist/lib/types/toast/index.d.ts +17 -0
  755. package/dist/lib/types/toast/index.parts.d.ts +11 -0
  756. package/dist/lib/types/toast/portal/ToastPortal.d.ts +20 -0
  757. package/dist/lib/types/toast/positioner/ToastPositioner.d.ts +42 -0
  758. package/dist/lib/types/toast/positioner/ToastPositionerContext.d.ts +6 -0
  759. package/dist/lib/types/toast/provider/ToastProvider.d.ts +28 -0
  760. package/dist/lib/types/toast/provider/ToastProviderContext.d.ts +5 -0
  761. package/dist/lib/types/toast/root/ToastRoot.d.ts +39 -0
  762. package/dist/lib/types/toast/root/ToastRootContext.d.ts +14 -0
  763. package/dist/lib/types/toast/store/ToastStore.d.ts +60 -0
  764. package/dist/lib/types/toast/title/ToastTitle.d.ts +13 -0
  765. package/dist/lib/types/toast/types.d.ts +77 -0
  766. package/dist/lib/types/toast/useToastManager.d.ts +11 -0
  767. package/dist/lib/types/toast/utils/createToastLabelPart.d.ts +17 -0
  768. package/dist/lib/types/toast/utils/focusVisible.d.ts +6 -0
  769. package/dist/lib/types/toast/utils/generateToastId.d.ts +5 -0
  770. package/dist/lib/types/toast/utils/isRenderableNode.d.ts +6 -0
  771. package/dist/lib/types/toast/utils/mergeToastStyles.d.ts +2 -0
  772. package/dist/lib/types/toast/utils/resolvePromiseOptions.d.ts +2 -0
  773. package/dist/lib/types/toast/viewport/ToastViewport.d.ts +13 -0
  774. package/dist/lib/types/toggle/Toggle.d.ts +40 -0
  775. package/dist/lib/types/toggle/index.d.ts +2 -0
  776. package/dist/lib/types/toggle-group/ToggleGroup.d.ts +37 -0
  777. package/dist/lib/types/toggle-group/ToggleGroupContext.d.ts +25 -0
  778. package/dist/lib/types/toggle-group/index.d.ts +2 -0
  779. package/dist/lib/types/toolbar/ToolbarItemOwnerContext.d.ts +10 -0
  780. package/dist/lib/types/toolbar/button/ToolbarButton.d.ts +32 -0
  781. package/dist/lib/types/toolbar/createToolbarItem.d.ts +13 -0
  782. package/dist/lib/types/toolbar/group/ToolbarGroup.d.ts +16 -0
  783. package/dist/lib/types/toolbar/group/ToolbarGroupContext.d.ts +8 -0
  784. package/dist/lib/types/toolbar/index.d.ts +8 -0
  785. package/dist/lib/types/toolbar/index.parts.d.ts +7 -0
  786. package/dist/lib/types/toolbar/input/ToolbarInput.d.ts +29 -0
  787. package/dist/lib/types/toolbar/link/ToolbarLink.d.ts +14 -0
  788. package/dist/lib/types/toolbar/root/ToolbarRoot.d.ts +29 -0
  789. package/dist/lib/types/toolbar/root/ToolbarRootContext.d.ts +23 -0
  790. package/dist/lib/types/toolbar/separator/ToolbarSeparator.d.ts +16 -0
  791. package/dist/lib/types/tooltip/arrow/TooltipArrow.d.ts +17 -0
  792. package/dist/lib/types/tooltip/index.d.ts +9 -0
  793. package/dist/lib/types/tooltip/index.parts.d.ts +9 -0
  794. package/dist/lib/types/tooltip/popup/TooltipPopup.d.ts +23 -0
  795. package/dist/lib/types/tooltip/portal/TooltipPortal.d.ts +17 -0
  796. package/dist/lib/types/tooltip/portal/TooltipPortalContext.d.ts +8 -0
  797. package/dist/lib/types/tooltip/positioner/TooltipPositioner.d.ts +37 -0
  798. package/dist/lib/types/tooltip/positioner/TooltipPositionerContext.d.ts +14 -0
  799. package/dist/lib/types/tooltip/provider/TooltipProvider.d.ts +15 -0
  800. package/dist/lib/types/tooltip/provider/TooltipProviderContext.d.ts +10 -0
  801. package/dist/lib/types/tooltip/root/TooltipRoot.d.ts +40 -0
  802. package/dist/lib/types/tooltip/root/TooltipRootContext.d.ts +11 -0
  803. package/dist/lib/types/tooltip/store/TooltipHandle.d.ts +10 -0
  804. package/dist/lib/types/tooltip/store/TooltipStore.d.ts +60 -0
  805. package/dist/lib/types/tooltip/trigger/TooltipTrigger.d.ts +35 -0
  806. package/dist/lib/types/tooltip/utils/mergeTooltipStyles.d.ts +2 -0
  807. package/dist/lib/types/tooltip/utils/stateAttributesMapping.d.ts +68 -0
  808. package/dist/lib/types/tooltip/viewport/TooltipViewport.d.ts +14 -0
  809. package/dist/lib/types/types/index.d.ts +29 -0
  810. package/package.json +583 -0
@@ -0,0 +1,993 @@
1
+ import { t as __exportAll } from "../rolldown-runtime-D7D4PA-g.js";
2
+ import { getStateAttributesProps } from "../internals/getStateAttributesProps.js";
3
+ import { n as resolveClass, t as resolveStyle } from "../resolveStyle-XCSFDHAL.js";
4
+ import { composeEventHandlers } from "../internals/composeEventHandlers.js";
5
+ import { n as useDirection } from "../DirectionContext-YORWLF08.js";
6
+ import { n as useCSPContext } from "../CSPContext-DOxR0PO7.js";
7
+ import { mergeStyles } from "../internals/mergeStyles.js";
8
+ import { Dynamic, escape, memo, mergeProps, ssr, ssrAttribute, ssrHydrationKey } from "@solidjs/web";
9
+ import { Show, createContext, createEffect, createMemo, createRoot, createSignal, createUniqueId, omit, onCleanup, onSettled, untrack, useContext } from "solid-js";
10
+ import { makeResizeObserver } from "@solid-primitives/resize-observer";
11
+ import { makeEventListener } from "@solid-primitives/event-listener";
12
+ //#region src/scroll-area/utils/dom.ts
13
+ function getEventElement(event) {
14
+ const target = event.composedPath()[0] ?? event.target;
15
+ if (!target || typeof target.nodeType !== "number") return null;
16
+ const node = target;
17
+ return node.nodeType === Node.ELEMENT_NODE ? node : node.parentElement;
18
+ }
19
+ function contains(container, target) {
20
+ if (!container || !target || typeof target.nodeType !== "number") return false;
21
+ let node = target;
22
+ while (node) {
23
+ if (container.contains(node)) return true;
24
+ const root = node.getRootNode();
25
+ node = root.nodeType === Node.DOCUMENT_FRAGMENT_NODE && "host" in root ? root.host : null;
26
+ }
27
+ return false;
28
+ }
29
+ //#endregion
30
+ //#region src/scroll-area/utils/getOffset.ts
31
+ function getOffset(element, property, axis) {
32
+ if (!element) return 0;
33
+ const styles = element.ownerDocument.defaultView?.getComputedStyle(element);
34
+ if (!styles) return 0;
35
+ const key = `${property}${axis === "x" ? "Inline" : "Block"}`;
36
+ const start = Number.parseFloat(styles[`${key}Start`]) || 0;
37
+ if (axis === "x" && property === "margin") return start * 2;
38
+ return start + (Number.parseFloat(styles[`${key}End`]) || 0);
39
+ }
40
+ //#endregion
41
+ //#region src/scroll-area/root/ScrollAreaRootContext.ts
42
+ var MISSING_CONTEXT$2 = Symbol("ScrollAreaRootContext");
43
+ var ScrollAreaRootContext = createContext(MISSING_CONTEXT$2);
44
+ function useScrollAreaRootContext() {
45
+ const context = useContext(ScrollAreaRootContext);
46
+ if (context === MISSING_CONTEXT$2) throw new Error("Base UI: ScrollAreaRootContext is missing. ScrollArea parts must be placed within <ScrollArea.Root>.");
47
+ return context;
48
+ }
49
+ //#endregion
50
+ //#region src/scroll-area/root/stateAttributes.ts
51
+ var booleanAttribute = (name) => (value) => value ? { [name]: "" } : null;
52
+ var scrollAreaStateAttributesMapping = {
53
+ hasOverflowX: booleanAttribute("data-has-overflow-x"),
54
+ hasOverflowY: booleanAttribute("data-has-overflow-y"),
55
+ overflowXStart: booleanAttribute("data-overflow-x-start"),
56
+ overflowXEnd: booleanAttribute("data-overflow-x-end"),
57
+ overflowYStart: booleanAttribute("data-overflow-y-start"),
58
+ overflowYEnd: booleanAttribute("data-overflow-y-end"),
59
+ cornerHidden: () => null
60
+ };
61
+ //#endregion
62
+ //#region src/scroll-area/root/ScrollAreaRoot.tsx
63
+ var _tmpl$ = [
64
+ "<style",
65
+ "",
66
+ ">.base-ui-disable-scrollbar{scrollbar-width:none}.base-ui-disable-scrollbar::-webkit-scrollbar{display:none}</style>"
67
+ ];
68
+ var DEFAULT_SIZE = {
69
+ width: 0,
70
+ height: 0
71
+ };
72
+ var DEFAULT_OVERFLOW_EDGES = {
73
+ xStart: false,
74
+ xEnd: false,
75
+ yStart: false,
76
+ yEnd: false
77
+ };
78
+ var DEFAULT_HIDDEN_STATE = {
79
+ x: true,
80
+ y: true,
81
+ corner: true
82
+ };
83
+ /** Groups all parts of the scroll area. */
84
+ function ScrollAreaRoot(props) {
85
+ const csp = useCSPContext();
86
+ const internalProps = props;
87
+ const allProps = props;
88
+ const rootId = `base-ui-${createUniqueId()}`;
89
+ const [viewportElement, setViewportElement] = createSignal();
90
+ const [scrollbarYElement, setScrollbarYElement] = createSignal();
91
+ const [scrollbarXElement, setScrollbarXElement] = createSignal();
92
+ const [thumbYElement, setThumbYElement] = createSignal();
93
+ const [thumbXElement, setThumbXElement] = createSignal();
94
+ const [cornerElement, setCornerElement] = createSignal();
95
+ const [hovering, setHovering] = createSignal(false);
96
+ const [scrollingX, setScrollingX] = createSignal(false);
97
+ const [scrollingY, setScrollingY] = createSignal(false);
98
+ const [touchModality, setTouchModality] = createSignal(false);
99
+ const [hasMeasuredScrollbar, setHasMeasuredScrollbar] = createSignal(false);
100
+ const [cornerSize, setCornerSizeSignal] = createSignal(DEFAULT_SIZE);
101
+ const [thumbSize, setThumbSizeSignal] = createSignal(DEFAULT_SIZE);
102
+ const [overflowEdges, setOverflowEdgesSignal] = createSignal(DEFAULT_OVERFLOW_EDGES);
103
+ const [hiddenState, setHiddenStateSignal] = createSignal(DEFAULT_HIDDEN_STATE);
104
+ let rootElement;
105
+ let activePointerId = null;
106
+ let startY = 0;
107
+ let startX = 0;
108
+ let startScrollTop = 0;
109
+ let startScrollLeft = 0;
110
+ let currentOrientation = "vertical";
111
+ let scrollPosition = {
112
+ x: 0,
113
+ y: 0
114
+ };
115
+ let savedSnapType = null;
116
+ let scrollXTimer;
117
+ let scrollYTimer;
118
+ const others = omit(allProps, "as", "children", "class", "onPointerDown", "onPointerEnter", "onPointerLeave", "onPointerMove", "overflowEdgeThreshold", "ref", "style");
119
+ const overflowEdgeThreshold = createMemo(() => normalizeOverflowEdgeThreshold(internalProps.overflowEdgeThreshold));
120
+ const state = createMemo(() => {
121
+ const hidden = hiddenState();
122
+ const edges = overflowEdges();
123
+ return {
124
+ scrolling: scrollingX() || scrollingY(),
125
+ hasOverflowX: !hidden.x,
126
+ hasOverflowY: !hidden.y,
127
+ overflowXStart: edges.xStart,
128
+ overflowXEnd: edges.xEnd,
129
+ overflowYStart: edges.yStart,
130
+ overflowYEnd: edges.yEnd,
131
+ cornerHidden: hidden.corner
132
+ };
133
+ });
134
+ const classValue = createMemo(() => resolveClass(props.class, state()));
135
+ const styleValue = createMemo(() => {
136
+ const size = cornerSize();
137
+ const external = resolveStyle(props.style, state());
138
+ if (typeof external === "string") return `position:relative;--scroll-area-corner-height:${size.height}px;--scroll-area-corner-width:${size.width}px;${external}`;
139
+ return mergeStyles({
140
+ position: "relative",
141
+ "--scroll-area-corner-height": `${size.height}px`,
142
+ "--scroll-area-corner-width": `${size.width}px`
143
+ }, external === false ? void 0 : external);
144
+ });
145
+ const stateAttributes = createMemo(() => getStateAttributesProps(state(), scrollAreaStateAttributesMapping));
146
+ function setCornerSize(next) {
147
+ setCornerSizeSignal((previous) => sameSize(previous, next) ? previous : next);
148
+ }
149
+ function setThumbSize(next) {
150
+ setThumbSizeSignal((previous) => sameSize(previous, next) ? previous : next);
151
+ }
152
+ function setHiddenState(next) {
153
+ setHiddenStateSignal((previous) => sameHiddenState(previous, next) ? previous : next);
154
+ }
155
+ function setOverflowEdges(next) {
156
+ setOverflowEdgesSignal((previous) => sameOverflowEdges(previous, next) ? previous : next);
157
+ }
158
+ function startScrolling(vertical) {
159
+ const existingTimer = vertical ? scrollYTimer : scrollXTimer;
160
+ if (existingTimer !== void 0) clearTimeout(existingTimer);
161
+ (vertical ? setScrollingY : setScrollingX)(true);
162
+ const timer = setTimeout(() => {
163
+ (vertical ? setScrollingY : setScrollingX)(false);
164
+ }, 500);
165
+ if (vertical) scrollYTimer = timer;
166
+ else scrollXTimer = timer;
167
+ }
168
+ function handleScroll(nextPosition) {
169
+ const offsetX = nextPosition.x - scrollPosition.x;
170
+ const offsetY = nextPosition.y - scrollPosition.y;
171
+ scrollPosition = nextPosition;
172
+ if (offsetY !== 0) startScrolling(true);
173
+ if (offsetX !== 0) startScrolling(false);
174
+ }
175
+ function disableViewportSnap() {
176
+ const viewport = viewportElement();
177
+ if (viewport && savedSnapType === null) {
178
+ savedSnapType = viewport.style.scrollSnapType;
179
+ viewport.style.scrollSnapType = "none";
180
+ }
181
+ }
182
+ function handlePointerDown(event, orientation) {
183
+ if (event.button !== 0) return;
184
+ if (activePointerId !== null) {
185
+ if ((currentOrientation === "vertical" ? thumbYElement() : thumbXElement())?.hasPointerCapture?.(activePointerId)) return;
186
+ }
187
+ activePointerId = event.pointerId;
188
+ currentOrientation = orientation;
189
+ startY = event.clientY;
190
+ startX = event.clientX;
191
+ const viewport = viewportElement();
192
+ if (viewport) {
193
+ startScrollTop = viewport.scrollTop;
194
+ startScrollLeft = viewport.scrollLeft;
195
+ disableViewportSnap();
196
+ }
197
+ (orientation === "vertical" ? thumbYElement() : thumbXElement())?.setPointerCapture?.(event.pointerId);
198
+ }
199
+ function restoreViewportSnap() {
200
+ if (savedSnapType !== null) {
201
+ const viewport = viewportElement();
202
+ if (viewport) viewport.style.scrollSnapType = savedSnapType;
203
+ savedSnapType = null;
204
+ }
205
+ }
206
+ function handlePointerUp(event) {
207
+ if (event.pointerId !== activePointerId) return;
208
+ activePointerId = null;
209
+ (currentOrientation === "vertical" ? setScrollingY : setScrollingX)(false);
210
+ restoreViewportSnap();
211
+ const thumb = currentOrientation === "vertical" ? thumbYElement() : thumbXElement();
212
+ if (thumb?.hasPointerCapture?.(event.pointerId)) thumb.releasePointerCapture(event.pointerId);
213
+ }
214
+ function handlePointerMove(event) {
215
+ if (event.pointerId !== activePointerId) return;
216
+ if ((event.buttons & 1) === 0) {
217
+ handlePointerUp(event);
218
+ return;
219
+ }
220
+ const viewport = viewportElement();
221
+ const vertical = currentOrientation === "vertical";
222
+ const thumb = vertical ? thumbYElement() : thumbXElement();
223
+ const scrollbar = vertical ? scrollbarYElement() : scrollbarXElement();
224
+ if (!viewport || !thumb || !scrollbar) return;
225
+ const axis = vertical ? "y" : "x";
226
+ const scrollbarOffset = getOffset(scrollbar, "padding", axis);
227
+ const thumbOffset = getOffset(thumb, "margin", axis);
228
+ const thumbLength = vertical ? thumb.offsetHeight : thumb.offsetWidth;
229
+ const maxThumbOffset = (vertical ? scrollbar.offsetHeight : scrollbar.offsetWidth) - thumbLength - scrollbarOffset - thumbOffset;
230
+ const delta = vertical ? event.clientY - startY : event.clientX - startX;
231
+ const scrollRatio = maxThumbOffset <= 0 ? 0 : delta / maxThumbOffset;
232
+ const scrollableLength = vertical ? viewport.scrollHeight : viewport.scrollWidth;
233
+ const viewportLength = vertical ? viewport.clientHeight : viewport.clientWidth;
234
+ const nextScroll = (vertical ? startScrollTop : startScrollLeft) + scrollRatio * (scrollableLength - viewportLength);
235
+ if (vertical) viewport.scrollTop = nextScroll;
236
+ else viewport.scrollLeft = nextScroll;
237
+ event.preventDefault();
238
+ startScrolling(vertical);
239
+ }
240
+ function handleTouchModalityChange(event) {
241
+ setTouchModality(event.pointerType === "touch");
242
+ }
243
+ function handlePointerEnterOrMove(event) {
244
+ handleTouchModalityChange(event);
245
+ if (event.pointerType !== "touch") setHovering(contains(rootElement, event.target));
246
+ }
247
+ const onPointerEnter = composeEventHandlers(() => internalProps.onPointerEnter, () => handlePointerEnterOrMove);
248
+ const onPointerMove = composeEventHandlers(() => internalProps.onPointerMove, () => handlePointerEnterOrMove);
249
+ const onPointerDown = composeEventHandlers(() => internalProps.onPointerDown, () => handleTouchModalityChange);
250
+ const onPointerLeave = composeEventHandlers(() => internalProps.onPointerLeave, () => () => setHovering(false));
251
+ const context = {
252
+ cornerElement,
253
+ cornerSize,
254
+ disableViewportSnap,
255
+ handlePointerDown,
256
+ handlePointerMove,
257
+ handlePointerUp,
258
+ handleScroll,
259
+ hasMeasuredScrollbar,
260
+ hiddenState,
261
+ hovering,
262
+ overflowEdges,
263
+ overflowEdgeThreshold,
264
+ rootId,
265
+ scrollbarXElement,
266
+ scrollbarYElement,
267
+ scrollingX,
268
+ scrollingY,
269
+ setCornerElement,
270
+ setCornerSize,
271
+ setHasMeasuredScrollbar,
272
+ setHiddenState,
273
+ setHovering,
274
+ setOverflowEdges,
275
+ setScrollbarXElement,
276
+ setScrollbarYElement,
277
+ setThumbSize,
278
+ setThumbXElement,
279
+ setThumbYElement,
280
+ setViewportElement,
281
+ state,
282
+ thumbSize,
283
+ thumbXElement,
284
+ thumbYElement,
285
+ touchModality,
286
+ viewportElement
287
+ };
288
+ onCleanup(() => {
289
+ if (scrollXTimer !== void 0) clearTimeout(scrollXTimer);
290
+ if (scrollYTimer !== void 0) clearTimeout(scrollYTimer);
291
+ restoreViewportSnap();
292
+ if (activePointerId !== null) {
293
+ const thumb = currentOrientation === "vertical" ? thumbYElement() : thumbXElement();
294
+ if (thumb?.hasPointerCapture?.(activePointerId)) thumb.releasePointerCapture(activePointerId);
295
+ }
296
+ });
297
+ return ScrollAreaRootContext({
298
+ value: context,
299
+ get children() {
300
+ return [memo(() => {
301
+ var _v$, _v$2;
302
+ return escape(memo(() => {
303
+ return !csp.disableStyleElements();
304
+ })() && (_v$ = ssrHydrationKey(), _v$2 = () => {
305
+ return ssrAttribute("nonce", escape(csp.nonce(), true));
306
+ }, ssr(_tmpl$, _v$, _v$2)));
307
+ }), Dynamic(mergeProps({
308
+ get component() {
309
+ return props.as ?? "div";
310
+ },
311
+ ref: [((element) => {
312
+ rootElement = element;
313
+ }), internalProps.ref],
314
+ get ["class"]() {
315
+ return classValue();
316
+ },
317
+ get style() {
318
+ return styleValue();
319
+ },
320
+ role: "presentation",
321
+ onPointerEnter,
322
+ onPointerMove,
323
+ onPointerDown,
324
+ onPointerLeave
325
+ }, stateAttributes, others, { get children() {
326
+ return internalProps.children;
327
+ } }))];
328
+ }
329
+ });
330
+ }
331
+ function normalizeOverflowEdgeThreshold(threshold) {
332
+ const values = typeof threshold === "number" ? {
333
+ xStart: threshold,
334
+ xEnd: threshold,
335
+ yStart: threshold,
336
+ yEnd: threshold
337
+ } : threshold;
338
+ return {
339
+ xStart: Math.max(0, values?.xStart || 0),
340
+ xEnd: Math.max(0, values?.xEnd || 0),
341
+ yStart: Math.max(0, values?.yStart || 0),
342
+ yEnd: Math.max(0, values?.yEnd || 0)
343
+ };
344
+ }
345
+ function sameSize(a, b) {
346
+ return a.width === b.width && a.height === b.height;
347
+ }
348
+ function sameHiddenState(a, b) {
349
+ return a.x === b.x && a.y === b.y && a.corner === b.corner;
350
+ }
351
+ function sameOverflowEdges(a, b) {
352
+ return a.xStart === b.xStart && a.xEnd === b.xEnd && a.yStart === b.yStart && a.yEnd === b.yEnd;
353
+ }
354
+ //#endregion
355
+ //#region src/scroll-area/utils/scrollEdges.ts
356
+ var EDGE_TOLERANCE = 1;
357
+ function normalizeScrollOffset(offset, maxOffset) {
358
+ if (maxOffset <= 0) return 0;
359
+ const clamped = Math.max(0, Math.min(offset, maxOffset));
360
+ const startDistance = clamped;
361
+ const endDistance = maxOffset - clamped;
362
+ const withinStartTolerance = startDistance <= EDGE_TOLERANCE;
363
+ const withinEndTolerance = endDistance <= EDGE_TOLERANCE;
364
+ if (withinStartTolerance && withinEndTolerance) return startDistance <= endDistance ? 0 : maxOffset;
365
+ if (withinStartTolerance) return 0;
366
+ if (withinEndTolerance) return maxOffset;
367
+ return clamped;
368
+ }
369
+ //#endregion
370
+ //#region src/scroll-area/viewport/ScrollAreaViewportContext.ts
371
+ var MISSING_CONTEXT$1 = Symbol("ScrollAreaViewportContext");
372
+ var ScrollAreaViewportContext = createContext(MISSING_CONTEXT$1);
373
+ function useScrollAreaViewportContext() {
374
+ const context = useContext(ScrollAreaViewportContext);
375
+ if (context === MISSING_CONTEXT$1) throw new Error("Base UI: ScrollAreaViewportContext missing. ScrollAreaViewport parts must be placed within <ScrollArea.Viewport>.");
376
+ return context;
377
+ }
378
+ //#endregion
379
+ //#region src/scroll-area/viewport/ScrollAreaViewport.tsx
380
+ var OVERFLOW_EDGE_VARS = [
381
+ "--scroll-area-overflow-x-start",
382
+ "--scroll-area-overflow-x-end",
383
+ "--scroll-area-overflow-y-start",
384
+ "--scroll-area-overflow-y-end"
385
+ ];
386
+ var overflowVariablesRegistered = false;
387
+ /** The native scrollable container of the scroll area. */
388
+ function ScrollAreaViewport(props) {
389
+ const root = useScrollAreaRootContext();
390
+ const direction = useDirection();
391
+ const internalProps = props;
392
+ const others = omit(props, "as", "children", "class", "onKeyDown", "onPointerEnter", "onPointerMove", "onScroll", "onWheel", "ref", "style");
393
+ const state = createMemo(() => root.state());
394
+ const classValue = createMemo(() => ["base-ui-disable-scrollbar", resolveClass(props.class, state())]);
395
+ const styleValue = createMemo(() => {
396
+ const external = resolveStyle(props.style, state());
397
+ if (typeof external === "string") return `overflow:scroll;${external}`;
398
+ return mergeStyles({ overflow: "scroll" }, external === false ? void 0 : external);
399
+ });
400
+ const stateAttributes = createMemo(() => getStateAttributesProps(state(), scrollAreaStateAttributesMapping));
401
+ const lastMeasuredMetrics = [
402
+ NaN,
403
+ NaN,
404
+ NaN,
405
+ NaN
406
+ ];
407
+ let programmaticScroll = true;
408
+ let scrollEndTimer;
409
+ let animationTimer;
410
+ let observedViewport;
411
+ let observerInitialized = false;
412
+ let ownElement;
413
+ function computeThumbPosition() {
414
+ const viewport = root.viewportElement();
415
+ if (!viewport) return;
416
+ const scrollbarY = root.scrollbarYElement();
417
+ const scrollbarX = root.scrollbarXElement();
418
+ const thumbY = root.thumbYElement();
419
+ const thumbX = root.thumbXElement();
420
+ const corner = root.cornerElement();
421
+ const contentHeight = viewport.scrollHeight;
422
+ const contentWidth = viewport.scrollWidth;
423
+ const viewportHeight = viewport.clientHeight;
424
+ const viewportWidth = viewport.clientWidth;
425
+ const scrollTop = viewport.scrollTop;
426
+ const scrollLeft = viewport.scrollLeft;
427
+ const firstMeasurement = Number.isNaN(lastMeasuredMetrics[0]);
428
+ lastMeasuredMetrics[0] = viewportHeight;
429
+ lastMeasuredMetrics[1] = contentHeight;
430
+ lastMeasuredMetrics[2] = viewportWidth;
431
+ lastMeasuredMetrics[3] = contentWidth;
432
+ if (firstMeasurement) root.setHasMeasuredScrollbar(true);
433
+ if (contentHeight === 0 || contentWidth === 0) return;
434
+ const nextHiddenState = getHiddenState(viewport);
435
+ const ratioX = viewportWidth / contentWidth;
436
+ const ratioY = viewportHeight / contentHeight;
437
+ const maxScrollLeft = Math.max(0, contentWidth - viewportWidth);
438
+ const maxScrollTop = Math.max(0, contentHeight - viewportHeight);
439
+ const scrollLeftFromStart = nextHiddenState.x ? 0 : normalizeScrollOffset(direction() === "rtl" ? -scrollLeft : scrollLeft, maxScrollLeft);
440
+ const scrollLeftFromEnd = nextHiddenState.x ? 0 : maxScrollLeft - scrollLeftFromStart;
441
+ const scrollTopFromStart = nextHiddenState.y ? 0 : normalizeScrollOffset(scrollTop, maxScrollTop);
442
+ const scrollTopFromEnd = nextHiddenState.y ? 0 : maxScrollTop - scrollTopFromStart;
443
+ const nextWidth = nextHiddenState.x ? 0 : viewportWidth;
444
+ const nextHeight = nextHiddenState.y ? 0 : viewportHeight;
445
+ let nextCornerWidth = 0;
446
+ let nextCornerHeight = 0;
447
+ if (!nextHiddenState.x && !nextHiddenState.y) {
448
+ nextCornerWidth = scrollbarY?.offsetWidth || 0;
449
+ nextCornerHeight = scrollbarX?.offsetHeight || 0;
450
+ }
451
+ const currentCornerSize = root.cornerSize();
452
+ const cornerNotYetSized = currentCornerSize.width === 0 && currentCornerSize.height === 0;
453
+ const scrollbarXOffset = getOffset(scrollbarX, "padding", "x");
454
+ const scrollbarYOffset = getOffset(scrollbarY, "padding", "y");
455
+ const thumbXOffset = getOffset(thumbX, "margin", "x");
456
+ const thumbYOffset = getOffset(thumbY, "margin", "y");
457
+ const idealWidth = nextWidth - scrollbarXOffset - thumbXOffset;
458
+ const idealHeight = nextHeight - scrollbarYOffset - thumbYOffset;
459
+ const maxWidth = scrollbarX ? Math.min(scrollbarX.offsetWidth - (cornerNotYetSized ? nextCornerWidth : 0), idealWidth) : idealWidth;
460
+ const maxHeight = scrollbarY ? Math.min(scrollbarY.offsetHeight - (cornerNotYetSized ? nextCornerHeight : 0), idealHeight) : idealHeight;
461
+ const nextThumbWidth = Math.max(16, maxWidth * ratioX);
462
+ const nextThumbHeight = Math.max(16, maxHeight * ratioY);
463
+ root.setThumbSize({
464
+ width: nextThumbWidth,
465
+ height: nextThumbHeight
466
+ });
467
+ if (scrollbarY && thumbY) {
468
+ const offset = applyOverscrollThumb(thumbY, "--scroll-area-thumb-height", scrollTop, maxScrollTop, contentHeight, nextThumbHeight, scrollbarY.offsetHeight - nextThumbHeight - scrollbarYOffset - thumbYOffset);
469
+ thumbY.style.transform = `translate3d(0,${offset}px,0)`;
470
+ }
471
+ if (scrollbarX && thumbX) {
472
+ const maxThumbOffset = scrollbarX.offsetWidth - nextThumbWidth - scrollbarXOffset - thumbXOffset;
473
+ const offset = applyOverscrollThumb(thumbX, "--scroll-area-thumb-width", direction() === "rtl" ? -scrollLeft : scrollLeft, maxScrollLeft, contentWidth, nextThumbWidth, maxThumbOffset);
474
+ thumbX.style.transform = `translate3d(${direction() === "rtl" ? -offset : offset}px,0,0)`;
475
+ }
476
+ const metrics = [
477
+ scrollLeftFromStart,
478
+ scrollLeftFromEnd,
479
+ scrollTopFromStart,
480
+ scrollTopFromEnd
481
+ ];
482
+ OVERFLOW_EDGE_VARS.forEach((variable, index) => {
483
+ viewport.style.setProperty(variable, `${metrics[index]}px`);
484
+ });
485
+ if (corner) root.setCornerSize({
486
+ width: nextCornerWidth,
487
+ height: nextCornerHeight
488
+ });
489
+ root.setHiddenState(nextHiddenState);
490
+ const threshold = root.overflowEdgeThreshold();
491
+ root.setOverflowEdges({
492
+ xStart: !nextHiddenState.x && scrollLeftFromStart > threshold.xStart,
493
+ xEnd: !nextHiddenState.x && scrollLeftFromEnd > threshold.xEnd,
494
+ yStart: !nextHiddenState.y && scrollTopFromStart > threshold.yStart,
495
+ yEnd: !nextHiddenState.y && scrollTopFromEnd > threshold.yEnd
496
+ });
497
+ }
498
+ const resizeObserver = typeof ResizeObserver === "undefined" ? void 0 : makeResizeObserver((entries) => {
499
+ if (!observedViewport || !entries.some((entry) => entry.target === observedViewport)) return;
500
+ if (!observerInitialized) {
501
+ observerInitialized = true;
502
+ if (lastMeasuredMetrics[0] === observedViewport.clientHeight && lastMeasuredMetrics[1] === observedViewport.scrollHeight && lastMeasuredMetrics[2] === observedViewport.clientWidth && lastMeasuredMetrics[3] === observedViewport.scrollWidth) return;
503
+ }
504
+ computeThumbPosition();
505
+ });
506
+ createEffect(() => ({
507
+ hidden: root.hiddenState(),
508
+ direction: direction(),
509
+ threshold: root.overflowEdgeThreshold(),
510
+ viewport: root.viewportElement(),
511
+ scrollbarX: root.scrollbarXElement(),
512
+ scrollbarY: root.scrollbarYElement(),
513
+ thumbX: root.thumbXElement(),
514
+ thumbY: root.thumbYElement()
515
+ }), () => {
516
+ queueMicrotask(computeThumbPosition);
517
+ });
518
+ createEffect(root.viewportElement, (viewport) => {
519
+ if (!viewport || !resizeObserver) return;
520
+ observedViewport = viewport;
521
+ observerInitialized = false;
522
+ resizeObserver.observe(viewport);
523
+ animationTimer = setTimeout(() => {
524
+ const getAnimations = viewport.getAnimations?.bind(viewport);
525
+ const animations = getAnimations?.({ subtree: true }) ?? [];
526
+ if (animations.length > 0) Promise.allSettled(animations.map((animation) => animation.finished)).then(computeThumbPosition).catch(() => {});
527
+ }, 0);
528
+ return () => {
529
+ resizeObserver.unobserve(viewport);
530
+ if (observedViewport === viewport) observedViewport = void 0;
531
+ if (animationTimer !== void 0) {
532
+ clearTimeout(animationTimer);
533
+ animationTimer = void 0;
534
+ }
535
+ };
536
+ });
537
+ function handleUserInteraction() {
538
+ programmaticScroll = false;
539
+ }
540
+ function handleScroll() {
541
+ const viewport = root.viewportElement();
542
+ if (!viewport) return;
543
+ computeThumbPosition();
544
+ if (root.touchModality() || !programmaticScroll) root.handleScroll({
545
+ x: viewport.scrollLeft,
546
+ y: viewport.scrollTop
547
+ });
548
+ if (scrollEndTimer !== void 0) clearTimeout(scrollEndTimer);
549
+ scrollEndTimer = setTimeout(() => {
550
+ programmaticScroll = true;
551
+ }, 100);
552
+ }
553
+ const onScroll = composeEventHandlers(() => internalProps.onScroll, () => handleScroll);
554
+ const onWheel = composeEventHandlers(() => internalProps.onWheel, () => handleUserInteraction);
555
+ const onPointerMove = composeEventHandlers(() => internalProps.onPointerMove, () => handleUserInteraction);
556
+ const onPointerEnter = composeEventHandlers(() => internalProps.onPointerEnter, () => handleUserInteraction);
557
+ const onKeyDown = composeEventHandlers(() => internalProps.onKeyDown, () => handleUserInteraction);
558
+ const context = { computeThumbPosition };
559
+ onSettled(() => {
560
+ removeCSSVariableInheritance();
561
+ if (root.viewportElement()?.matches(":hover")) root.setHovering(true);
562
+ });
563
+ onCleanup(() => {
564
+ if (scrollEndTimer !== void 0) clearTimeout(scrollEndTimer);
565
+ if (animationTimer !== void 0) clearTimeout(animationTimer);
566
+ if (root.viewportElement() === ownElement) root.setViewportElement(void 0);
567
+ });
568
+ return ScrollAreaViewportContext({
569
+ value: context,
570
+ get children() {
571
+ return Dynamic(mergeProps({
572
+ get component() {
573
+ return props.as ?? "div";
574
+ },
575
+ ref: [((element) => {
576
+ ownElement = element;
577
+ root.setViewportElement(element);
578
+ }), internalProps.ref],
579
+ get ["class"]() {
580
+ return classValue();
581
+ },
582
+ get style() {
583
+ return styleValue();
584
+ },
585
+ role: "presentation",
586
+ get ["data-id"]() {
587
+ return `${root.rootId}-viewport`;
588
+ },
589
+ get tabindex() {
590
+ return root.hiddenState().x && root.hiddenState().y ? -1 : 0;
591
+ },
592
+ onScroll,
593
+ onWheel,
594
+ onPointerMove,
595
+ onPointerEnter,
596
+ onKeyDown
597
+ }, stateAttributes, others, { get children() {
598
+ return internalProps.children;
599
+ } }));
600
+ }
601
+ });
602
+ }
603
+ function getHiddenState(viewport) {
604
+ const y = viewport.clientHeight >= viewport.scrollHeight;
605
+ const x = viewport.clientWidth >= viewport.scrollWidth;
606
+ return {
607
+ x,
608
+ y,
609
+ corner: x || y
610
+ };
611
+ }
612
+ function applyOverscrollThumb(thumb, sizeVariable, scrollFromStart, maxScroll, contentSize, thumbSize, maxThumbOffset) {
613
+ const clamped = Math.max(0, Math.min(scrollFromStart, maxScroll));
614
+ const overscroll = scrollFromStart - clamped;
615
+ const nextSize = Math.max(16, thumbSize * contentSize / (contentSize + Math.abs(overscroll)));
616
+ thumb.style.setProperty(sizeVariable, overscroll ? `${nextSize}px` : "");
617
+ return (maxScroll ? clamped / maxScroll * maxThumbOffset : 0) + (overscroll > 0 ? thumbSize - nextSize : 0);
618
+ }
619
+ function removeCSSVariableInheritance() {
620
+ if (overflowVariablesRegistered || isWebKit()) return;
621
+ if (typeof CSS !== "undefined" && "registerProperty" in CSS) for (const name of OVERFLOW_EDGE_VARS) try {
622
+ CSS.registerProperty({
623
+ name,
624
+ syntax: "<length>",
625
+ inherits: false,
626
+ initialValue: "0px"
627
+ });
628
+ } catch {}
629
+ overflowVariablesRegistered = true;
630
+ }
631
+ function isWebKit() {
632
+ return typeof CSS !== "undefined" && Boolean(CSS.supports?.("-webkit-backdrop-filter:none"));
633
+ }
634
+ //#endregion
635
+ //#region src/scroll-area/scrollbar/ScrollAreaScrollbarContext.ts
636
+ var MISSING_CONTEXT = Symbol("ScrollAreaScrollbarContext");
637
+ var ScrollAreaScrollbarContext = createContext(MISSING_CONTEXT);
638
+ function useScrollAreaScrollbarContext() {
639
+ const context = useContext(ScrollAreaScrollbarContext);
640
+ if (context === MISSING_CONTEXT) throw new Error("Base UI: ScrollAreaScrollbarContext is missing. ScrollAreaScrollbar parts must be placed within <ScrollArea.Scrollbar>.");
641
+ return context;
642
+ }
643
+ //#endregion
644
+ //#region src/scroll-area/scrollbar/ScrollAreaScrollbar.tsx
645
+ /** A vertical or horizontal custom scrollbar track. */
646
+ function ScrollAreaScrollbar(props) {
647
+ const root = useScrollAreaRootContext();
648
+ const direction = useDirection();
649
+ const internalProps = props;
650
+ const allProps = props;
651
+ const [element, setElement] = createSignal();
652
+ const others = omit(allProps, "as", "children", "class", "keepMounted", "onPointerCancel", "onPointerDown", "onPointerUp", "orientation", "ref", "style");
653
+ const orientation = createMemo(() => internalProps.orientation ?? "vertical");
654
+ const vertical = createMemo(() => orientation() === "vertical");
655
+ const isHidden = createMemo(() => vertical() ? root.hiddenState().y : root.hiddenState().x);
656
+ const shouldRender = createMemo(() => (internalProps.keepMounted ?? false) || !isHidden());
657
+ const hideUntilMeasured = createMemo(() => !root.hasMeasuredScrollbar() && !(internalProps.keepMounted ?? false));
658
+ const state = createMemo(() => ({
659
+ ...root.state(),
660
+ hovering: root.hovering(),
661
+ scrolling: vertical() ? root.scrollingY() : root.scrollingX(),
662
+ orientation: orientation()
663
+ }));
664
+ const classValue = createMemo(() => resolveClass(props.class, state()));
665
+ const styleValue = createMemo(() => {
666
+ const size = root.thumbSize();
667
+ const external = resolveStyle(props.style, state());
668
+ const orientationStyle = vertical() ? `top:0;bottom:var(--scroll-area-corner-height);inset-inline-end:0;--scroll-area-thumb-height:${size.height}px;` : `inset-inline-start:0;inset-inline-end:var(--scroll-area-corner-width);bottom:0;--scroll-area-thumb-width:${size.width}px;`;
669
+ if (typeof external === "string") return `position:absolute;touch-action:none;-webkit-user-select:none;user-select:none;visibility:${hideUntilMeasured() ? "hidden" : "visible"};${orientationStyle}${external}`;
670
+ return mergeStyles({
671
+ position: "absolute",
672
+ "touch-action": "none",
673
+ "-webkit-user-select": "none",
674
+ "user-select": "none",
675
+ visibility: hideUntilMeasured() ? "hidden" : void 0,
676
+ ...vertical() ? {
677
+ top: 0,
678
+ bottom: "var(--scroll-area-corner-height)",
679
+ "inset-inline-end": 0,
680
+ "--scroll-area-thumb-height": `${size.height}px`
681
+ } : {
682
+ "inset-inline-start": 0,
683
+ "inset-inline-end": "var(--scroll-area-corner-width)",
684
+ bottom: 0,
685
+ "--scroll-area-thumb-width": `${size.width}px`
686
+ }
687
+ }, external === false ? void 0 : external);
688
+ });
689
+ const stateAttributes = createMemo(() => getStateAttributesProps(state(), scrollAreaStateAttributesMapping));
690
+ createEffect(() => ({
691
+ element: element(),
692
+ render: shouldRender(),
693
+ vertical: vertical()
694
+ }), (current) => {
695
+ if (!current.element || !current.render) return;
696
+ const setter = current.vertical ? root.setScrollbarYElement : root.setScrollbarXElement;
697
+ const accessor = current.vertical ? root.scrollbarYElement : root.scrollbarXElement;
698
+ setter(current.element);
699
+ return () => {
700
+ if (untrack(accessor) === current.element) setter(void 0);
701
+ };
702
+ });
703
+ createEffect(() => ({
704
+ direction: direction(),
705
+ render: shouldRender(),
706
+ scrollbar: element(),
707
+ vertical: vertical(),
708
+ viewport: root.viewportElement()
709
+ }), (current) => {
710
+ if (!current.render || !current.scrollbar || !current.viewport) return;
711
+ const viewport = current.viewport;
712
+ const scrollbar = current.scrollbar;
713
+ const attach = () => makeEventListener(scrollbar, "wheel", (event) => {
714
+ if (event.ctrlKey) return;
715
+ const horizontal = !current.vertical;
716
+ const delta = horizontal ? event.deltaX : event.deltaY;
717
+ if (delta === 0) return;
718
+ const maxScroll = horizontal ? viewport.scrollWidth - viewport.clientWidth : viewport.scrollHeight - viewport.clientHeight;
719
+ const min = horizontal && current.direction === "rtl" ? -maxScroll : 0;
720
+ const max = horizontal && current.direction === "rtl" ? 0 : maxScroll;
721
+ const value = horizontal ? viewport.scrollLeft : viewport.scrollTop;
722
+ if (value <= min && delta < 0 || value >= max && delta > 0) return;
723
+ event.preventDefault();
724
+ const next = Math.min(max, Math.max(min, value + delta));
725
+ if (horizontal) viewport.scrollLeft = next;
726
+ else viewport.scrollTop = next;
727
+ root.handleScroll({
728
+ x: viewport.scrollLeft,
729
+ y: viewport.scrollTop
730
+ });
731
+ }, { passive: false });
732
+ return createRoot((dispose) => {
733
+ const clear = attach();
734
+ return () => {
735
+ clear();
736
+ dispose();
737
+ };
738
+ });
739
+ });
740
+ function handlePointerDown(event) {
741
+ if (event.button !== 0) return;
742
+ const thumb = vertical() ? root.thumbYElement() : root.thumbXElement();
743
+ if (thumb && contains(thumb, getEventElement(event))) return;
744
+ const viewport = root.viewportElement();
745
+ const scrollbar = element();
746
+ if (!viewport || !thumb || !scrollbar) return;
747
+ const axis = vertical() ? "y" : "x";
748
+ const thumbOffset = getOffset(thumb, "margin", axis);
749
+ const scrollbarOffset = getOffset(scrollbar, "padding", axis);
750
+ const thumbLength = vertical() ? thumb.offsetHeight : thumb.offsetWidth;
751
+ const rect = scrollbar.getBoundingClientRect();
752
+ const clickPosition = vertical() ? event.clientY - rect.top - thumbLength / 2 - scrollbarOffset + thumbOffset / 2 : event.clientX - rect.left - thumbLength / 2 - scrollbarOffset + thumbOffset / 2;
753
+ const scrollableLength = vertical() ? viewport.scrollHeight : viewport.scrollWidth;
754
+ const viewportLength = vertical() ? viewport.clientHeight : viewport.clientWidth;
755
+ const maxThumbOffset = (vertical() ? scrollbar.offsetHeight : scrollbar.offsetWidth) - thumbLength - scrollbarOffset - thumbOffset;
756
+ if (maxThumbOffset <= 0) return;
757
+ const ratio = clickPosition / maxThumbOffset;
758
+ const maxScrollDistance = scrollableLength - viewportLength;
759
+ root.disableViewportSnap();
760
+ if (vertical()) viewport.scrollTop = ratio * maxScrollDistance;
761
+ else if (direction() === "rtl") viewport.scrollLeft = -(1 - ratio) * maxScrollDistance;
762
+ else viewport.scrollLeft = ratio * maxScrollDistance;
763
+ root.handleScroll({
764
+ x: viewport.scrollLeft,
765
+ y: viewport.scrollTop
766
+ });
767
+ root.handlePointerDown(event, orientation());
768
+ }
769
+ const onPointerDown = composeEventHandlers(() => internalProps.onPointerDown, () => handlePointerDown);
770
+ const onPointerUp = composeEventHandlers(() => internalProps.onPointerUp, () => root.handlePointerUp);
771
+ const onPointerCancel = composeEventHandlers(() => internalProps.onPointerCancel, () => root.handlePointerUp);
772
+ return Show({
773
+ get when() {
774
+ return shouldRender();
775
+ },
776
+ get children() {
777
+ return ScrollAreaScrollbarContext({
778
+ value: orientation,
779
+ get children() {
780
+ return Dynamic(mergeProps({
781
+ get component() {
782
+ return props.as ?? "div";
783
+ },
784
+ ref: [((current) => setElement(current)), internalProps.ref],
785
+ get ["class"]() {
786
+ return classValue();
787
+ },
788
+ get style() {
789
+ return styleValue();
790
+ },
791
+ get ["data-id"]() {
792
+ return `${root.rootId}-scrollbar`;
793
+ },
794
+ onPointerDown,
795
+ onPointerUp,
796
+ onPointerCancel
797
+ }, stateAttributes, others, { get children() {
798
+ return internalProps.children;
799
+ } }));
800
+ }
801
+ });
802
+ }
803
+ });
804
+ }
805
+ //#endregion
806
+ //#region src/scroll-area/content/ScrollAreaContent.tsx
807
+ /** Contains the scroll area's content and observes dynamic size changes. */
808
+ function ScrollAreaContent(props) {
809
+ const viewport = useScrollAreaViewportContext();
810
+ const root = useScrollAreaRootContext();
811
+ const internalProps = props;
812
+ const others = omit(props, "as", "children", "class", "ref", "style");
813
+ const state = createMemo(() => root.state());
814
+ const classValue = createMemo(() => resolveClass(props.class, state()));
815
+ const styleValue = createMemo(() => {
816
+ const external = resolveStyle(props.style, state());
817
+ if (typeof external === "string") return `min-width:fit-content;${external}`;
818
+ return mergeStyles({ "min-width": "fit-content" }, external === false ? void 0 : external);
819
+ });
820
+ const stateAttributes = createMemo(() => getStateAttributesProps(state(), scrollAreaStateAttributesMapping));
821
+ const computeOnInitialResize = untrack(root.hasMeasuredScrollbar);
822
+ let observedElement;
823
+ let initialized = false;
824
+ const [contentElement, setContentElement] = createSignal();
825
+ const resizeObserver = typeof ResizeObserver === "undefined" ? void 0 : makeResizeObserver((entries) => {
826
+ if (!observedElement || !entries.some((entry) => entry.target === observedElement)) return;
827
+ if (!initialized) {
828
+ initialized = true;
829
+ if (!computeOnInitialResize) return;
830
+ }
831
+ viewport.computeThumbPosition();
832
+ });
833
+ createEffect(contentElement, (element) => {
834
+ if (!element || !resizeObserver) return;
835
+ observedElement = element;
836
+ initialized = false;
837
+ resizeObserver.observe(element);
838
+ return () => {
839
+ resizeObserver.unobserve(element);
840
+ if (observedElement === element) observedElement = void 0;
841
+ };
842
+ });
843
+ return Dynamic(mergeProps({
844
+ get component() {
845
+ return props.as ?? "div";
846
+ },
847
+ ref: [((element) => setContentElement(element)), internalProps.ref],
848
+ get ["class"]() {
849
+ return classValue();
850
+ },
851
+ get style() {
852
+ return styleValue();
853
+ },
854
+ role: "presentation"
855
+ }, stateAttributes, others, { get children() {
856
+ return internalProps.children;
857
+ } }));
858
+ }
859
+ //#endregion
860
+ //#region src/scroll-area/thumb/ScrollAreaThumb.tsx
861
+ /** The draggable indicator for the current scroll position. */
862
+ function ScrollAreaThumb(props) {
863
+ const root = useScrollAreaRootContext();
864
+ const orientation = useScrollAreaScrollbarContext();
865
+ const internalProps = props;
866
+ const allProps = props;
867
+ const [element, setElement] = createSignal();
868
+ const others = omit(allProps, "as", "children", "class", "onPointerCancel", "onPointerDown", "onPointerMove", "onPointerUp", "ref", "style");
869
+ const vertical = createMemo(() => orientation() === "vertical");
870
+ const state = createMemo(() => ({
871
+ scrolling: vertical() ? root.scrollingY() : root.scrollingX(),
872
+ orientation: orientation()
873
+ }));
874
+ const classValue = createMemo(() => resolveClass(props.class, state()));
875
+ const styleValue = createMemo(() => {
876
+ const external = resolveStyle(props.style, state());
877
+ const sizeStyle = vertical() ? "height:var(--scroll-area-thumb-height);" : "width:var(--scroll-area-thumb-width);";
878
+ if (typeof external === "string") return `visibility:${root.hasMeasuredScrollbar() ? "visible" : "hidden"};${sizeStyle}${external}`;
879
+ return mergeStyles({
880
+ visibility: root.hasMeasuredScrollbar() ? void 0 : "hidden",
881
+ ...vertical() ? { height: "var(--scroll-area-thumb-height)" } : { width: "var(--scroll-area-thumb-width)" }
882
+ }, external === false ? void 0 : external);
883
+ });
884
+ const stateAttributes = createMemo(() => getStateAttributesProps(state()));
885
+ createEffect(() => ({
886
+ element: element(),
887
+ vertical: vertical()
888
+ }), (current) => {
889
+ if (!current.element) return;
890
+ const setter = current.vertical ? root.setThumbYElement : root.setThumbXElement;
891
+ const accessor = current.vertical ? root.thumbYElement : root.thumbXElement;
892
+ setter(current.element);
893
+ return () => {
894
+ if (untrack(accessor) === current.element) setter(void 0);
895
+ };
896
+ });
897
+ const onPointerDown = composeEventHandlers(() => internalProps.onPointerDown, () => (event) => root.handlePointerDown(event, orientation()));
898
+ const onPointerMove = composeEventHandlers(() => internalProps.onPointerMove, () => root.handlePointerMove);
899
+ const onPointerUp = composeEventHandlers(() => internalProps.onPointerUp, () => root.handlePointerUp);
900
+ const onPointerCancel = composeEventHandlers(() => internalProps.onPointerCancel, () => root.handlePointerUp);
901
+ return Dynamic(mergeProps({
902
+ get component() {
903
+ return props.as ?? "div";
904
+ },
905
+ ref: [((current) => setElement(current)), internalProps.ref],
906
+ get ["class"]() {
907
+ return classValue();
908
+ },
909
+ get style() {
910
+ return styleValue();
911
+ },
912
+ onPointerDown,
913
+ onPointerMove,
914
+ onPointerUp,
915
+ onPointerCancel
916
+ }, stateAttributes, others, { get children() {
917
+ return internalProps.children;
918
+ } }));
919
+ }
920
+ //#endregion
921
+ //#region src/scroll-area/corner/ScrollAreaCorner.tsx
922
+ /** Fills the intersection between horizontal and vertical scrollbars. */
923
+ function ScrollAreaCorner(props) {
924
+ const root = useScrollAreaRootContext();
925
+ const internalProps = props;
926
+ const allProps = props;
927
+ const [element, setElement] = createSignal();
928
+ const others = omit(allProps, "as", "children", "class", "ref", "style");
929
+ const state = {};
930
+ const shouldRender = createMemo(() => !root.hiddenState().corner);
931
+ const classValue = createMemo(() => resolveClass(props.class, state));
932
+ const styleValue = createMemo(() => {
933
+ const size = root.cornerSize();
934
+ const external = resolveStyle(props.style, state);
935
+ if (typeof external === "string") return `position:absolute;bottom:0;inset-inline-end:0;width:${size.width}px;height:${size.height}px;${external}`;
936
+ return mergeStyles({
937
+ position: "absolute",
938
+ bottom: 0,
939
+ "inset-inline-end": 0,
940
+ width: `${size.width}px`,
941
+ height: `${size.height}px`
942
+ }, external === false ? void 0 : external);
943
+ });
944
+ createEffect(() => ({
945
+ element: element(),
946
+ render: shouldRender()
947
+ }), (current) => {
948
+ if (!current.element || !current.render) {
949
+ if (!current.render) root.setCornerSize({
950
+ width: 0,
951
+ height: 0
952
+ });
953
+ return;
954
+ }
955
+ root.setCornerElement(current.element);
956
+ return () => {
957
+ if (untrack(root.cornerElement) === current.element) root.setCornerElement(void 0);
958
+ };
959
+ });
960
+ return Show({
961
+ get when() {
962
+ return shouldRender();
963
+ },
964
+ get children() {
965
+ return Dynamic(mergeProps({
966
+ get component() {
967
+ return props.as ?? "div";
968
+ },
969
+ ref: [((current) => setElement(current)), internalProps.ref],
970
+ get ["class"]() {
971
+ return classValue();
972
+ },
973
+ get style() {
974
+ return styleValue();
975
+ }
976
+ }, others, { get children() {
977
+ return internalProps.children;
978
+ } }));
979
+ }
980
+ });
981
+ }
982
+ //#endregion
983
+ //#region src/scroll-area/index.parts.ts
984
+ var index_parts_exports = /* @__PURE__ */ __exportAll({
985
+ Content: () => ScrollAreaContent,
986
+ Corner: () => ScrollAreaCorner,
987
+ Root: () => ScrollAreaRoot,
988
+ Scrollbar: () => ScrollAreaScrollbar,
989
+ Thumb: () => ScrollAreaThumb,
990
+ Viewport: () => ScrollAreaViewport
991
+ });
992
+ //#endregion
993
+ export { index_parts_exports as ScrollArea };