bits-ui 2.6.2 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/README.md +4 -4
  2. package/dist/bits/accordion/accordion.svelte.d.ts +66 -58
  3. package/dist/bits/accordion/accordion.svelte.js +56 -51
  4. package/dist/bits/accordion/components/accordion-content.svelte +4 -4
  5. package/dist/bits/accordion/components/accordion-header.svelte +2 -2
  6. package/dist/bits/accordion/components/accordion-item.svelte +2 -2
  7. package/dist/bits/accordion/components/accordion-trigger.svelte +2 -2
  8. package/dist/bits/accordion/components/accordion.svelte +2 -2
  9. package/dist/bits/alert-dialog/components/alert-dialog-action.svelte +2 -2
  10. package/dist/bits/alert-dialog/components/alert-dialog-cancel.svelte +2 -2
  11. package/dist/bits/alert-dialog/components/alert-dialog-content.svelte +3 -3
  12. package/dist/bits/alert-dialog/components/alert-dialog.svelte +9 -3
  13. package/dist/bits/aspect-ratio/aspect-ratio.svelte.d.ts +10 -16
  14. package/dist/bits/aspect-ratio/aspect-ratio.svelte.js +4 -11
  15. package/dist/bits/aspect-ratio/components/aspect-ratio.svelte +2 -2
  16. package/dist/bits/avatar/avatar.svelte.d.ts +25 -33
  17. package/dist/bits/avatar/avatar.svelte.js +20 -21
  18. package/dist/bits/avatar/components/avatar-fallback.svelte +2 -2
  19. package/dist/bits/avatar/components/avatar-image.svelte +2 -2
  20. package/dist/bits/avatar/components/avatar.svelte +2 -2
  21. package/dist/bits/calendar/calendar.svelte.d.ts +117 -106
  22. package/dist/bits/calendar/calendar.svelte.js +51 -52
  23. package/dist/bits/calendar/components/calendar-cell.svelte +2 -2
  24. package/dist/bits/calendar/components/calendar-day.svelte +2 -2
  25. package/dist/bits/calendar/components/calendar-grid-body.svelte +2 -2
  26. package/dist/bits/calendar/components/calendar-grid-head.svelte +2 -2
  27. package/dist/bits/calendar/components/calendar-grid-row.svelte +2 -2
  28. package/dist/bits/calendar/components/calendar-grid.svelte +2 -2
  29. package/dist/bits/calendar/components/calendar-head-cell.svelte +2 -2
  30. package/dist/bits/calendar/components/calendar-header.svelte +2 -2
  31. package/dist/bits/calendar/components/calendar-heading.svelte +5 -5
  32. package/dist/bits/calendar/components/calendar-month-select.svelte +2 -2
  33. package/dist/bits/calendar/components/calendar-next-button.svelte +2 -2
  34. package/dist/bits/calendar/components/calendar-prev-button.svelte +2 -2
  35. package/dist/bits/calendar/components/calendar-year-select.svelte +2 -2
  36. package/dist/bits/calendar/components/calendar.svelte +2 -2
  37. package/dist/bits/checkbox/checkbox.svelte.d.ts +37 -34
  38. package/dist/bits/checkbox/checkbox.svelte.js +19 -22
  39. package/dist/bits/checkbox/components/checkbox-group-label.svelte +2 -2
  40. package/dist/bits/checkbox/components/checkbox-group.svelte +2 -2
  41. package/dist/bits/checkbox/components/checkbox-input.svelte +2 -2
  42. package/dist/bits/checkbox/components/checkbox.svelte +2 -2
  43. package/dist/bits/collapsible/collapsible.svelte.d.ts +30 -27
  44. package/dist/bits/collapsible/collapsible.svelte.js +23 -15
  45. package/dist/bits/collapsible/components/collapsible-content.svelte +5 -5
  46. package/dist/bits/collapsible/components/collapsible-content.svelte.d.ts +1 -4
  47. package/dist/bits/collapsible/components/collapsible-trigger.svelte +2 -2
  48. package/dist/bits/collapsible/components/collapsible.svelte +4 -2
  49. package/dist/bits/collapsible/types.d.ts +4 -0
  50. package/dist/bits/combobox/components/combobox-input.svelte +2 -2
  51. package/dist/bits/combobox/components/combobox-trigger.svelte +2 -2
  52. package/dist/bits/combobox/components/combobox.svelte +4 -2
  53. package/dist/bits/command/command.svelte.d.ts +103 -92
  54. package/dist/bits/command/command.svelte.js +55 -57
  55. package/dist/bits/command/components/_command-label.svelte +2 -2
  56. package/dist/bits/command/components/command-empty.svelte +2 -2
  57. package/dist/bits/command/components/command-group-heading.svelte +2 -2
  58. package/dist/bits/command/components/command-group-items.svelte +2 -2
  59. package/dist/bits/command/components/command-group.svelte +2 -2
  60. package/dist/bits/command/components/command-input.svelte +2 -2
  61. package/dist/bits/command/components/command-item.svelte +2 -2
  62. package/dist/bits/command/components/command-link-item.svelte +2 -2
  63. package/dist/bits/command/components/command-list.svelte +2 -2
  64. package/dist/bits/command/components/command-loading.svelte +2 -2
  65. package/dist/bits/command/components/command-separator.svelte +2 -2
  66. package/dist/bits/command/components/command-viewport.svelte +2 -2
  67. package/dist/bits/command/components/command.svelte +2 -2
  68. package/dist/bits/context-menu/components/context-menu-content-static.svelte +3 -3
  69. package/dist/bits/context-menu/components/context-menu-content.svelte +3 -3
  70. package/dist/bits/context-menu/components/context-menu-trigger.svelte +2 -2
  71. package/dist/bits/context-menu/components/context-menu.svelte +16 -11
  72. package/dist/bits/date-field/components/date-field-hidden-input.svelte +2 -2
  73. package/dist/bits/date-field/components/date-field-input.svelte +2 -2
  74. package/dist/bits/date-field/components/date-field-label.svelte +2 -2
  75. package/dist/bits/date-field/components/date-field-segment.svelte +2 -2
  76. package/dist/bits/date-field/components/date-field.svelte +2 -2
  77. package/dist/bits/date-field/date-field.svelte.d.ts +85 -74
  78. package/dist/bits/date-field/date-field.svelte.js +55 -53
  79. package/dist/bits/date-picker/components/date-picker-calendar.svelte +2 -2
  80. package/dist/bits/date-picker/components/date-picker.svelte +8 -6
  81. package/dist/bits/date-picker/date-picker.svelte.d.ts +10 -10
  82. package/dist/bits/date-picker/date-picker.svelte.js +6 -5
  83. package/dist/bits/date-picker/types.d.ts +4 -0
  84. package/dist/bits/date-range-field/components/date-range-field-input.svelte +2 -2
  85. package/dist/bits/date-range-field/components/date-range-field-label.svelte +2 -2
  86. package/dist/bits/date-range-field/components/date-range-field.svelte +2 -2
  87. package/dist/bits/date-range-field/date-range-field.svelte.d.ts +32 -29
  88. package/dist/bits/date-range-field/date-range-field.svelte.js +33 -32
  89. package/dist/bits/date-range-picker/components/date-range-picker-calendar.svelte +2 -2
  90. package/dist/bits/date-range-picker/components/date-range-picker.svelte +8 -6
  91. package/dist/bits/date-range-picker/date-range-picker.svelte.d.ts +10 -10
  92. package/dist/bits/date-range-picker/date-range-picker.svelte.js +6 -5
  93. package/dist/bits/date-range-picker/types.d.ts +4 -0
  94. package/dist/bits/dialog/components/dialog-close.svelte +2 -2
  95. package/dist/bits/dialog/components/dialog-content.svelte +3 -3
  96. package/dist/bits/dialog/components/dialog-description.svelte +2 -2
  97. package/dist/bits/dialog/components/dialog-overlay.svelte +3 -6
  98. package/dist/bits/dialog/components/dialog-title.svelte +2 -2
  99. package/dist/bits/dialog/components/dialog-trigger.svelte +2 -2
  100. package/dist/bits/dialog/components/dialog.svelte +9 -3
  101. package/dist/bits/dialog/dialog.svelte.d.ts +75 -65
  102. package/dist/bits/dialog/dialog.svelte.js +47 -38
  103. package/dist/bits/dialog/types.d.ts +4 -0
  104. package/dist/bits/dropdown-menu/components/dropdown-menu-content-static.svelte +3 -3
  105. package/dist/bits/dropdown-menu/components/dropdown-menu-content.svelte +3 -3
  106. package/dist/bits/label/components/label.svelte +2 -2
  107. package/dist/bits/label/label.svelte.d.ts +8 -7
  108. package/dist/bits/label/label.svelte.js +4 -4
  109. package/dist/bits/link-preview/components/link-preview-content-static.svelte +3 -3
  110. package/dist/bits/link-preview/components/link-preview-content.svelte +3 -3
  111. package/dist/bits/link-preview/components/link-preview-trigger.svelte +2 -2
  112. package/dist/bits/link-preview/components/link-preview.svelte +4 -2
  113. package/dist/bits/link-preview/link-preview.svelte.d.ts +28 -25
  114. package/dist/bits/link-preview/link-preview.svelte.js +24 -16
  115. package/dist/bits/link-preview/types.d.ts +4 -0
  116. package/dist/bits/menu/components/menu-arrow.svelte +2 -2
  117. package/dist/bits/menu/components/menu-checkbox-group.svelte +2 -2
  118. package/dist/bits/menu/components/menu-checkbox-item.svelte +2 -2
  119. package/dist/bits/menu/components/menu-content-static.svelte +3 -3
  120. package/dist/bits/menu/components/menu-content.svelte +3 -3
  121. package/dist/bits/menu/components/menu-group-heading.svelte +2 -2
  122. package/dist/bits/menu/components/menu-group.svelte +2 -2
  123. package/dist/bits/menu/components/menu-item.svelte +2 -2
  124. package/dist/bits/menu/components/menu-radio-group.svelte +2 -2
  125. package/dist/bits/menu/components/menu-radio-item.svelte +2 -2
  126. package/dist/bits/menu/components/menu-separator.svelte +2 -2
  127. package/dist/bits/menu/components/menu-sub-content-static.svelte +3 -3
  128. package/dist/bits/menu/components/menu-sub-content.svelte +3 -3
  129. package/dist/bits/menu/components/menu-sub-trigger.svelte +2 -2
  130. package/dist/bits/menu/components/menu-sub.svelte +9 -3
  131. package/dist/bits/menu/components/menu-trigger.svelte +2 -2
  132. package/dist/bits/menu/components/menu.svelte +16 -11
  133. package/dist/bits/menu/menu.svelte.d.ts +136 -119
  134. package/dist/bits/menu/menu.svelte.js +106 -96
  135. package/dist/bits/menu/types.d.ts +8 -0
  136. package/dist/bits/menubar/components/menubar-content-static.svelte +2 -2
  137. package/dist/bits/menubar/components/menubar-content.svelte +2 -2
  138. package/dist/bits/menubar/components/menubar-menu.svelte +2 -2
  139. package/dist/bits/menubar/components/menubar-trigger.svelte +4 -4
  140. package/dist/bits/menubar/components/menubar.svelte +2 -2
  141. package/dist/bits/menubar/menubar.svelte.d.ts +37 -34
  142. package/dist/bits/menubar/menubar.svelte.js +21 -21
  143. package/dist/bits/meter/components/meter.svelte +2 -2
  144. package/dist/bits/meter/meter.svelte.d.ts +10 -9
  145. package/dist/bits/meter/meter.svelte.js +4 -4
  146. package/dist/bits/navigation-menu/components/navigation-menu-content-impl.svelte +2 -2
  147. package/dist/bits/navigation-menu/components/navigation-menu-content.svelte +3 -3
  148. package/dist/bits/navigation-menu/components/navigation-menu-indicator-impl.svelte +2 -2
  149. package/dist/bits/navigation-menu/components/navigation-menu-indicator.svelte +3 -3
  150. package/dist/bits/navigation-menu/components/navigation-menu-item.svelte +2 -2
  151. package/dist/bits/navigation-menu/components/navigation-menu-link.svelte +2 -2
  152. package/dist/bits/navigation-menu/components/navigation-menu-list.svelte +2 -2
  153. package/dist/bits/navigation-menu/components/navigation-menu-sub.svelte +2 -2
  154. package/dist/bits/navigation-menu/components/navigation-menu-trigger.svelte +2 -2
  155. package/dist/bits/navigation-menu/components/navigation-menu-viewport.svelte +3 -3
  156. package/dist/bits/navigation-menu/components/navigation-menu.svelte +2 -2
  157. package/dist/bits/navigation-menu/navigation-menu.svelte.d.ts +116 -109
  158. package/dist/bits/navigation-menu/navigation-menu.svelte.js +78 -81
  159. package/dist/bits/pagination/components/pagination-next-button.svelte +2 -2
  160. package/dist/bits/pagination/components/pagination-page.svelte +2 -2
  161. package/dist/bits/pagination/components/pagination-prev-button.svelte +2 -2
  162. package/dist/bits/pagination/components/pagination.svelte +2 -2
  163. package/dist/bits/pagination/pagination.svelte.d.ts +34 -32
  164. package/dist/bits/pagination/pagination.svelte.js +15 -15
  165. package/dist/bits/pin-input/components/pin-input-cell.svelte +2 -2
  166. package/dist/bits/pin-input/components/pin-input.svelte +2 -2
  167. package/dist/bits/pin-input/pin-input.svelte.d.ts +22 -21
  168. package/dist/bits/pin-input/pin-input.svelte.js +9 -9
  169. package/dist/bits/popover/components/popover-close.svelte +2 -2
  170. package/dist/bits/popover/components/popover-content-static.svelte +3 -3
  171. package/dist/bits/popover/components/popover-content.svelte +3 -3
  172. package/dist/bits/popover/components/popover-trigger.svelte +2 -2
  173. package/dist/bits/popover/components/popover.svelte +9 -3
  174. package/dist/bits/popover/popover.svelte.d.ts +36 -31
  175. package/dist/bits/popover/popover.svelte.js +26 -21
  176. package/dist/bits/popover/types.d.ts +4 -0
  177. package/dist/bits/progress/components/progress.svelte +2 -2
  178. package/dist/bits/progress/progress.svelte.d.ts +10 -9
  179. package/dist/bits/progress/progress.svelte.js +4 -4
  180. package/dist/bits/radio-group/components/radio-group-input.svelte +2 -2
  181. package/dist/bits/radio-group/components/radio-group-item.svelte +2 -2
  182. package/dist/bits/radio-group/components/radio-group.svelte +4 -2
  183. package/dist/bits/radio-group/radio-group.svelte.d.ts +26 -19
  184. package/dist/bits/radio-group/radio-group.svelte.js +26 -19
  185. package/dist/bits/radio-group/types.d.ts +13 -6
  186. package/dist/bits/range-calendar/components/range-calendar-cell.svelte +2 -2
  187. package/dist/bits/range-calendar/components/range-calendar-day.svelte +2 -2
  188. package/dist/bits/range-calendar/components/range-calendar.svelte +2 -2
  189. package/dist/bits/range-calendar/range-calendar.svelte.d.ts +21 -20
  190. package/dist/bits/range-calendar/range-calendar.svelte.js +12 -12
  191. package/dist/bits/rating-group/components/rating-group-input.svelte +2 -2
  192. package/dist/bits/rating-group/components/rating-group-item.svelte +2 -2
  193. package/dist/bits/rating-group/components/rating-group.svelte +2 -2
  194. package/dist/bits/rating-group/rating-group.svelte.d.ts +19 -18
  195. package/dist/bits/rating-group/rating-group.svelte.js +16 -17
  196. package/dist/bits/scroll-area/components/scroll-area-corner-impl.svelte +2 -2
  197. package/dist/bits/scroll-area/components/scroll-area-scrollbar-auto.svelte +3 -3
  198. package/dist/bits/scroll-area/components/scroll-area-scrollbar-hover.svelte +6 -6
  199. package/dist/bits/scroll-area/components/scroll-area-scrollbar-scroll.svelte +3 -3
  200. package/dist/bits/scroll-area/components/scroll-area-scrollbar-shared.svelte +2 -2
  201. package/dist/bits/scroll-area/components/scroll-area-scrollbar-visible.svelte +2 -2
  202. package/dist/bits/scroll-area/components/scroll-area-scrollbar-x.svelte +2 -2
  203. package/dist/bits/scroll-area/components/scroll-area-scrollbar-y.svelte +2 -2
  204. package/dist/bits/scroll-area/components/scroll-area-scrollbar.svelte +2 -2
  205. package/dist/bits/scroll-area/components/scroll-area-thumb-impl.svelte +2 -2
  206. package/dist/bits/scroll-area/components/scroll-area-thumb.svelte +2 -5
  207. package/dist/bits/scroll-area/components/scroll-area-viewport.svelte +2 -2
  208. package/dist/bits/scroll-area/components/scroll-area.svelte +2 -2
  209. package/dist/bits/scroll-area/scroll-area.svelte.d.ts +98 -78
  210. package/dist/bits/scroll-area/scroll-area.svelte.js +78 -74
  211. package/dist/bits/select/components/select-content-static.svelte +3 -3
  212. package/dist/bits/select/components/select-content.svelte +3 -3
  213. package/dist/bits/select/components/select-group-heading.svelte +2 -2
  214. package/dist/bits/select/components/select-group.svelte +2 -2
  215. package/dist/bits/select/components/select-hidden-input.svelte +2 -2
  216. package/dist/bits/select/components/select-item.svelte +2 -2
  217. package/dist/bits/select/components/select-scroll-down-button.svelte +2 -2
  218. package/dist/bits/select/components/select-scroll-up-button.svelte +2 -2
  219. package/dist/bits/select/components/select-trigger.svelte +2 -2
  220. package/dist/bits/select/components/select-viewport.svelte +2 -2
  221. package/dist/bits/select/components/select.svelte +4 -2
  222. package/dist/bits/select/select.svelte.d.ts +127 -113
  223. package/dist/bits/select/select.svelte.js +74 -62
  224. package/dist/bits/select/types.d.ts +4 -0
  225. package/dist/bits/separator/components/separator.svelte +2 -2
  226. package/dist/bits/separator/separator.svelte.d.ts +9 -8
  227. package/dist/bits/separator/separator.svelte.js +4 -4
  228. package/dist/bits/slider/components/slider-range.svelte +2 -2
  229. package/dist/bits/slider/components/slider-thumb-label.svelte +2 -2
  230. package/dist/bits/slider/components/slider-thumb.svelte +2 -2
  231. package/dist/bits/slider/components/slider-tick-label.svelte +2 -2
  232. package/dist/bits/slider/components/slider-tick.svelte +2 -2
  233. package/dist/bits/slider/components/slider.svelte +2 -2
  234. package/dist/bits/slider/slider.svelte.d.ts +82 -73
  235. package/dist/bits/slider/slider.svelte.js +30 -28
  236. package/dist/bits/switch/components/switch-input.svelte +2 -2
  237. package/dist/bits/switch/components/switch-thumb.svelte +2 -2
  238. package/dist/bits/switch/components/switch.svelte +2 -2
  239. package/dist/bits/switch/switch.svelte.d.ts +19 -17
  240. package/dist/bits/switch/switch.svelte.js +13 -13
  241. package/dist/bits/tabs/components/tabs-content.svelte +2 -2
  242. package/dist/bits/tabs/components/tabs-list.svelte +2 -2
  243. package/dist/bits/tabs/components/tabs-trigger.svelte +2 -2
  244. package/dist/bits/tabs/components/tabs.svelte +2 -2
  245. package/dist/bits/tabs/tabs.svelte.d.ts +33 -29
  246. package/dist/bits/tabs/tabs.svelte.js +19 -19
  247. package/dist/bits/time-field/components/time-field-hidden-input.svelte +2 -2
  248. package/dist/bits/time-field/components/time-field-input.svelte +2 -2
  249. package/dist/bits/time-field/components/time-field-label.svelte +2 -2
  250. package/dist/bits/time-field/components/time-field-segment.svelte +2 -2
  251. package/dist/bits/time-field/components/time-field.svelte +2 -2
  252. package/dist/bits/time-field/time-field.svelte.d.ts +72 -66
  253. package/dist/bits/time-field/time-field.svelte.js +37 -42
  254. package/dist/bits/time-range-field/components/time-range-field-input.svelte +2 -2
  255. package/dist/bits/time-range-field/components/time-range-field-label.svelte +2 -2
  256. package/dist/bits/time-range-field/components/time-range-field.svelte +2 -2
  257. package/dist/bits/time-range-field/time-range-field.svelte.d.ts +35 -31
  258. package/dist/bits/time-range-field/time-range-field.svelte.js +34 -32
  259. package/dist/bits/toggle/components/toggle.svelte +2 -2
  260. package/dist/bits/toggle/toggle.svelte.d.ts +11 -10
  261. package/dist/bits/toggle/toggle.svelte.js +4 -4
  262. package/dist/bits/toggle-group/components/toggle-group-item.svelte +2 -2
  263. package/dist/bits/toggle-group/components/toggle-group.svelte +2 -2
  264. package/dist/bits/toggle-group/toggle-group.svelte.d.ts +48 -43
  265. package/dist/bits/toggle-group/toggle-group.svelte.js +24 -25
  266. package/dist/bits/toolbar/components/toolbar-button.svelte +2 -2
  267. package/dist/bits/toolbar/components/toolbar-group-item.svelte +2 -2
  268. package/dist/bits/toolbar/components/toolbar-group.svelte +2 -2
  269. package/dist/bits/toolbar/components/toolbar-link.svelte +2 -2
  270. package/dist/bits/toolbar/components/toolbar.svelte +2 -2
  271. package/dist/bits/toolbar/toolbar.svelte.d.ts +59 -51
  272. package/dist/bits/toolbar/toolbar.svelte.js +32 -30
  273. package/dist/bits/tooltip/components/tooltip-content-static.svelte +3 -3
  274. package/dist/bits/tooltip/components/tooltip-content.svelte +3 -3
  275. package/dist/bits/tooltip/components/tooltip-provider.svelte +2 -2
  276. package/dist/bits/tooltip/components/tooltip-trigger.svelte +2 -2
  277. package/dist/bits/tooltip/components/tooltip.svelte +4 -2
  278. package/dist/bits/tooltip/tooltip.svelte.d.ts +33 -29
  279. package/dist/bits/tooltip/tooltip.svelte.js +33 -28
  280. package/dist/bits/tooltip/types.d.ts +4 -0
  281. package/dist/bits/utilities/config/bits-config.d.ts +1 -1
  282. package/dist/bits/utilities/dismissible-layer/dismissible-layer.svelte +2 -2
  283. package/dist/bits/utilities/dismissible-layer/use-dismissable-layer.svelte.d.ts +6 -7
  284. package/dist/bits/utilities/dismissible-layer/use-dismissable-layer.svelte.js +3 -3
  285. package/dist/bits/utilities/escape-layer/escape-layer.svelte +2 -2
  286. package/dist/bits/utilities/escape-layer/use-escape-layer.svelte.d.ts +6 -7
  287. package/dist/bits/utilities/escape-layer/use-escape-layer.svelte.js +3 -3
  288. package/dist/bits/utilities/floating-layer/components/floating-layer-anchor.svelte +2 -2
  289. package/dist/bits/utilities/floating-layer/components/floating-layer-arrow.svelte +2 -2
  290. package/dist/bits/utilities/floating-layer/components/floating-layer-content.svelte +2 -2
  291. package/dist/bits/utilities/floating-layer/components/floating-layer.svelte +2 -2
  292. package/dist/bits/utilities/floating-layer/use-floating-layer.svelte.d.ts +25 -23
  293. package/dist/bits/utilities/floating-layer/use-floating-layer.svelte.js +25 -25
  294. package/dist/bits/utilities/focus-scope/use-focus-scope.svelte.d.ts +1 -1
  295. package/dist/bits/utilities/focus-scope/use-focus-scope.svelte.js +1 -1
  296. package/dist/bits/utilities/popper-layer/popper-layer-force-mount.svelte +1 -1
  297. package/dist/bits/utilities/popper-layer/popper-layer-force-mount.svelte.d.ts +1 -1
  298. package/dist/bits/utilities/popper-layer/popper-layer-inner.svelte +1 -1
  299. package/dist/bits/utilities/popper-layer/popper-layer-inner.svelte.d.ts +1 -1
  300. package/dist/bits/utilities/popper-layer/popper-layer.svelte +3 -3
  301. package/dist/bits/utilities/presence-layer/presence-layer.svelte +8 -8
  302. package/dist/bits/utilities/presence-layer/presence.svelte.d.ts +42 -0
  303. package/dist/bits/utilities/presence-layer/presence.svelte.js +116 -0
  304. package/dist/bits/utilities/presence-layer/types.d.ts +3 -5
  305. package/dist/bits/utilities/scroll-lock/scroll-lock.svelte +2 -2
  306. package/dist/bits/utilities/text-selection-layer/text-selection-layer.svelte +2 -2
  307. package/dist/bits/utilities/text-selection-layer/use-text-selection-layer.svelte.d.ts +7 -7
  308. package/dist/bits/utilities/text-selection-layer/use-text-selection-layer.svelte.js +3 -3
  309. package/dist/internal/animations-complete.d.ts +12 -0
  310. package/dist/internal/animations-complete.js +55 -0
  311. package/dist/internal/arrays.js +20 -36
  312. package/dist/internal/attrs.d.ts +9 -2
  313. package/dist/internal/attrs.js +21 -11
  314. package/dist/internal/body-scroll-lock.svelte.d.ts +10 -0
  315. package/dist/internal/body-scroll-lock.svelte.js +106 -0
  316. package/dist/internal/data-typeahead.svelte.d.ts +15 -0
  317. package/dist/internal/data-typeahead.svelte.js +33 -0
  318. package/dist/internal/date-time/calendar-helpers.svelte.d.ts +1 -1
  319. package/dist/internal/dom-typeahead.svelte.d.ts +14 -0
  320. package/dist/internal/dom-typeahead.svelte.js +44 -0
  321. package/dist/internal/dom.d.ts +0 -2
  322. package/dist/internal/dom.js +0 -15
  323. package/dist/internal/{use-grace-area.svelte.d.ts → grace-area.svelte.d.ts} +5 -4
  324. package/dist/internal/{use-grace-area.svelte.js → grace-area.svelte.js} +60 -56
  325. package/dist/internal/open-change-complete.d.ts +13 -0
  326. package/dist/internal/open-change-complete.js +24 -0
  327. package/dist/internal/{use-roving-focus.svelte.d.ts → roving-focus-group.d.ts} +9 -8
  328. package/dist/internal/{use-roving-focus.svelte.js → roving-focus-group.js} +30 -34
  329. package/dist/internal/shared-state.svelte.d.ts +6 -0
  330. package/dist/internal/shared-state.svelte.js +31 -0
  331. package/dist/internal/should-trap-focus.js +1 -2
  332. package/dist/internal/state-machine.d.ts +16 -0
  333. package/dist/internal/state-machine.js +18 -0
  334. package/dist/internal/svelte-resize-observer.svelte.d.ts +6 -0
  335. package/dist/internal/svelte-resize-observer.svelte.js +25 -0
  336. package/dist/internal/tabbable.d.ts +0 -1
  337. package/dist/internal/tabbable.js +0 -11
  338. package/dist/internal/timeout-fn.d.ts +16 -0
  339. package/dist/internal/timeout-fn.js +38 -0
  340. package/dist/internal/types.d.ts +2 -2
  341. package/package.json +1 -1
  342. package/dist/bits/utilities/presence-layer/use-presence.svelte.d.ts +0 -4
  343. package/dist/bits/utilities/presence-layer/use-presence.svelte.js +0 -97
  344. package/dist/internal/box.svelte.d.ts +0 -21
  345. package/dist/internal/box.svelte.js +0 -26
  346. package/dist/internal/create-event-hook.svelte.d.ts +0 -18
  347. package/dist/internal/create-event-hook.svelte.js +0 -29
  348. package/dist/internal/create-shared-hook.svelte.d.ts +0 -2
  349. package/dist/internal/create-shared-hook.svelte.js +0 -27
  350. package/dist/internal/sleep.d.ts +0 -1
  351. package/dist/internal/sleep.js +0 -3
  352. package/dist/internal/use-after-animations.svelte.d.ts +0 -5
  353. package/dist/internal/use-after-animations.svelte.js +0 -27
  354. package/dist/internal/use-body-scroll-lock.svelte.d.ts +0 -6
  355. package/dist/internal/use-body-scroll-lock.svelte.js +0 -106
  356. package/dist/internal/use-data-typeahead.svelte.d.ts +0 -15
  357. package/dist/internal/use-data-typeahead.svelte.js +0 -34
  358. package/dist/internal/use-dom-typeahead.svelte.d.ts +0 -13
  359. package/dist/internal/use-dom-typeahead.svelte.js +0 -32
  360. package/dist/internal/use-form-control.svelte.d.ts +0 -4
  361. package/dist/internal/use-form-control.svelte.js +0 -16
  362. package/dist/internal/use-resize-observer.svelte.d.ts +0 -2
  363. package/dist/internal/use-resize-observer.svelte.js +0 -17
  364. package/dist/internal/use-state-machine.svelte.d.ts +0 -24
  365. package/dist/internal/use-state-machine.svelte.js +0 -28
  366. package/dist/internal/use-timeout-fn.svelte.d.ts +0 -25
  367. package/dist/internal/use-timeout-fn.svelte.js +0 -39
@@ -1,4 +1,4 @@
1
- import { attachRef, DOMContext } from "svelte-toolbelt";
1
+ import { attachRef, DOMContext, } from "svelte-toolbelt";
2
2
  import { Context } from "runed";
3
3
  import { createBitsAttrs, getAriaRequired, getDataDisabled } from "../../internal/attrs.js";
4
4
  import { kbd } from "../../internal/kbd.js";
@@ -6,7 +6,11 @@ const ratingGroupAttrs = createBitsAttrs({
6
6
  component: "rating-group",
7
7
  parts: ["root", "item"],
8
8
  });
9
- class RatingGroupRootState {
9
+ const RatingGroupRootContext = new Context("RatingGroup.Root");
10
+ export class RatingGroupRootState {
11
+ static create(opts) {
12
+ return RatingGroupRootContext.set(new RatingGroupRootState(opts));
13
+ }
10
14
  opts;
11
15
  #hoverValue = $state(null);
12
16
  #keySequence = $state("");
@@ -27,14 +31,13 @@ class RatingGroupRootState {
27
31
  : this.opts.ariaValuetext.current;
28
32
  });
29
33
  items = $derived.by(() => {
30
- const { max, allowHalf } = this.opts;
31
34
  const value = this.valueToUse;
32
- return Array.from({ length: max.current }, (_, i) => {
35
+ return Array.from({ length: this.opts.max.current }, (_, i) => {
33
36
  const itemValue = i + 1;
34
37
  const halfValue = itemValue - 0.5;
35
38
  const state = value >= itemValue
36
39
  ? "active"
37
- : allowHalf.current && value >= halfValue
40
+ : this.opts.allowHalf.current && value >= halfValue
38
41
  ? "partial"
39
42
  : "inactive";
40
43
  return { index: i, state };
@@ -217,7 +220,10 @@ class RatingGroupRootState {
217
220
  };
218
221
  });
219
222
  }
220
- class RatingGroupItemState {
223
+ export class RatingGroupItemState {
224
+ static create(opts) {
225
+ return new RatingGroupItemState(opts, RatingGroupRootContext.get());
226
+ }
221
227
  opts;
222
228
  root;
223
229
  #isDisabled = $derived.by(() => this.opts.disabled.current || this.root.opts.disabled.current);
@@ -292,7 +298,10 @@ class RatingGroupItemState {
292
298
  ...attachRef(this.opts.ref),
293
299
  }));
294
300
  }
295
- class RatingGroupHiddenInputState {
301
+ export class RatingGroupHiddenInputState {
302
+ static create() {
303
+ return new RatingGroupHiddenInputState(RatingGroupRootContext.get());
304
+ }
296
305
  root;
297
306
  shouldRender = $derived.by(() => this.root.opts.name.current !== undefined);
298
307
  props = $derived.by(() => ({
@@ -305,13 +314,3 @@ class RatingGroupHiddenInputState {
305
314
  this.root = root;
306
315
  }
307
316
  }
308
- const RatingGroupRootContext = new Context("RatingGroup.Root");
309
- export function useRatingGroupRoot(props) {
310
- return RatingGroupRootContext.set(new RatingGroupRootState(props));
311
- }
312
- export function useRatingGroupItem(props) {
313
- return new RatingGroupItemState(props, RatingGroupRootContext.get());
314
- }
315
- export function useRatingGroupHiddenInput() {
316
- return new RatingGroupHiddenInputState(RatingGroupRootContext.get());
317
- }
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
2
  import { box, mergeProps } from "svelte-toolbelt";
3
3
  import type { ScrollAreaCornerProps } from "../types.js";
4
- import { useScrollAreaCorner } from "../scroll-area.svelte.js";
4
+ import { ScrollAreaCornerImplState } from "../scroll-area.svelte.js";
5
5
 
6
6
  let {
7
7
  ref = $bindable(null),
@@ -13,7 +13,7 @@
13
13
  id: string;
14
14
  } = $props();
15
15
 
16
- const cornerState = useScrollAreaCorner({
16
+ const cornerState = ScrollAreaCornerImplState.create({
17
17
  id: box.with(() => id),
18
18
  ref: box.with(
19
19
  () => ref,
@@ -1,18 +1,18 @@
1
1
  <script lang="ts">
2
2
  import { mergeProps } from "svelte-toolbelt";
3
- import { useScrollAreaScrollbarAuto } from "../scroll-area.svelte.js";
3
+ import { ScrollAreaScrollbarAutoState } from "../scroll-area.svelte.js";
4
4
  import type { _ScrollbarStubProps } from "../types.js";
5
5
  import ScrollAreaScrollbarVisible from "./scroll-area-scrollbar-visible.svelte";
6
6
  import PresenceLayer from "../../utilities/presence-layer/presence-layer.svelte";
7
7
 
8
8
  let { forceMount = false, ...restProps }: _ScrollbarStubProps = $props();
9
9
 
10
- const scrollbarAutoState = useScrollAreaScrollbarAuto();
10
+ const scrollbarAutoState = ScrollAreaScrollbarAutoState.create();
11
11
  const mergedProps = $derived(mergeProps(restProps, scrollbarAutoState.props));
12
12
  </script>
13
13
 
14
14
  <PresenceLayer
15
- present={forceMount || scrollbarAutoState.isVisible}
15
+ open={forceMount || scrollbarAutoState.isVisible}
16
16
  ref={scrollbarAutoState.scrollbar.opts.ref}
17
17
  >
18
18
  {#snippet presence()}
@@ -1,8 +1,8 @@
1
1
  <script lang="ts">
2
2
  import { mergeProps } from "svelte-toolbelt";
3
3
  import {
4
- useScrollAreaScrollbarAuto,
5
- useScrollAreaScrollbarHover,
4
+ ScrollAreaScrollbarAutoState,
5
+ ScrollAreaScrollbarHoverState,
6
6
  } from "../scroll-area.svelte.js";
7
7
  import type { _ScrollbarStubProps } from "../types.js";
8
8
  import ScrollAreaScrollbarVisible from "./scroll-area-scrollbar-visible.svelte";
@@ -10,20 +10,20 @@
10
10
 
11
11
  let { forceMount = false, ...restProps }: _ScrollbarStubProps = $props();
12
12
 
13
- const scrollbarHoverState = useScrollAreaScrollbarHover();
14
- const scrollbarAutoState = useScrollAreaScrollbarAuto();
13
+ const scrollbarHoverState = ScrollAreaScrollbarHoverState.create();
14
+ const scrollbarAutoState = ScrollAreaScrollbarAutoState.create();
15
15
  const mergedProps = $derived(
16
16
  mergeProps(restProps, scrollbarHoverState.props, scrollbarAutoState.props, {
17
17
  "data-state": scrollbarHoverState.isVisible ? "visible" : "hidden",
18
18
  })
19
19
  );
20
20
 
21
- const present = $derived(
21
+ const open = $derived(
22
22
  forceMount || (scrollbarHoverState.isVisible && scrollbarAutoState.isVisible)
23
23
  );
24
24
  </script>
25
25
 
26
- <PresenceLayer {present} ref={scrollbarAutoState.scrollbar.opts.ref}>
26
+ <PresenceLayer {open} ref={scrollbarAutoState.scrollbar.opts.ref}>
27
27
  {#snippet presence()}
28
28
  <ScrollAreaScrollbarVisible {...mergedProps} />
29
29
  {/snippet}
@@ -1,20 +1,20 @@
1
1
  <script lang="ts">
2
2
  import { mergeProps } from "svelte-toolbelt";
3
- import { useScrollAreaScrollbarScroll } from "../scroll-area.svelte.js";
3
+ import { ScrollAreaScrollbarScrollState } from "../scroll-area.svelte.js";
4
4
  import type { _ScrollbarStubProps } from "../types.js";
5
5
  import ScrollAreaScrollbarVisible from "./scroll-area-scrollbar-visible.svelte";
6
6
  import PresenceLayer from "../../utilities/presence-layer/presence-layer.svelte";
7
7
 
8
8
  let { forceMount = false, ...restProps }: _ScrollbarStubProps = $props();
9
9
 
10
- const scrollbarScrollState = useScrollAreaScrollbarScroll();
10
+ const scrollbarScrollState = ScrollAreaScrollbarScrollState.create();
11
11
 
12
12
  const mergedProps = $derived(mergeProps(restProps, scrollbarScrollState.props));
13
13
  </script>
14
14
 
15
15
  <PresenceLayer
16
16
  {...mergedProps}
17
- present={forceMount || !scrollbarScrollState.isHidden}
17
+ open={forceMount || !scrollbarScrollState.isHidden}
18
18
  ref={scrollbarScrollState.scrollbar.opts.ref}
19
19
  >
20
20
  {#snippet presence()}
@@ -1,11 +1,11 @@
1
1
  <script lang="ts">
2
2
  import { mergeProps } from "svelte-toolbelt";
3
- import { useScrollAreaScrollbarShared } from "../scroll-area.svelte.js";
3
+ import { ScrollAreaScrollbarSharedState } from "../scroll-area.svelte.js";
4
4
  import type { _ScrollbarStubProps } from "../types.js";
5
5
 
6
6
  let { child, children, ...restProps }: _ScrollbarStubProps = $props();
7
7
 
8
- const scrollbarSharedState = useScrollAreaScrollbarShared();
8
+ const scrollbarSharedState = ScrollAreaScrollbarSharedState.create();
9
9
 
10
10
  const mergedProps = $derived(mergeProps(restProps, scrollbarSharedState.props));
11
11
  </script>
@@ -1,12 +1,12 @@
1
1
  <script lang="ts">
2
- import { useScrollAreaScrollbarVisible } from "../scroll-area.svelte.js";
2
+ import { ScrollAreaScrollbarVisibleState } from "../scroll-area.svelte.js";
3
3
  import type { _ScrollbarStubProps } from "../types.js";
4
4
  import ScrollAreaScrollbarX from "./scroll-area-scrollbar-x.svelte";
5
5
  import ScrollAreaScrollbarY from "./scroll-area-scrollbar-y.svelte";
6
6
 
7
7
  let { ...restProps }: Omit<_ScrollbarStubProps, "forceMount"> = $props();
8
8
 
9
- const scrollbarVisibleState = useScrollAreaScrollbarVisible();
9
+ const scrollbarVisibleState = ScrollAreaScrollbarVisibleState.create();
10
10
  </script>
11
11
 
12
12
  {#if scrollbarVisibleState.scrollbar.opts.orientation.current === "horizontal"}
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
2
  import { IsMounted } from "runed";
3
3
  import { box, mergeProps } from "svelte-toolbelt";
4
- import { useScrollAreaScrollbarX } from "../scroll-area.svelte.js";
4
+ import { ScrollAreaScrollbarXState } from "../scroll-area.svelte.js";
5
5
  import type { _ScrollbarStubProps } from "../types.js";
6
6
  import ScrollAreaScrollbarShared from "./scroll-area-scrollbar-shared.svelte";
7
7
 
@@ -9,7 +9,7 @@
9
9
 
10
10
  const isMounted = new IsMounted();
11
11
 
12
- const scrollbarXState = useScrollAreaScrollbarX({
12
+ const scrollbarXState = ScrollAreaScrollbarXState.create({
13
13
  mounted: box.with(() => isMounted.current),
14
14
  });
15
15
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
2
  import { IsMounted } from "runed";
3
3
  import { box, mergeProps } from "svelte-toolbelt";
4
- import { useScrollAreaScrollbarY } from "../scroll-area.svelte.js";
4
+ import { ScrollAreaScrollbarYState } from "../scroll-area.svelte.js";
5
5
  import type { _ScrollbarStubProps } from "../types.js";
6
6
  import ScrollAreaScrollbarShared from "./scroll-area-scrollbar-shared.svelte";
7
7
 
@@ -9,7 +9,7 @@
9
9
 
10
10
  const isMounted = new IsMounted();
11
11
 
12
- const scrollbarYState = useScrollAreaScrollbarY({
12
+ const scrollbarYState = ScrollAreaScrollbarYState.create({
13
13
  mounted: box.with(() => isMounted.current),
14
14
  });
15
15
 
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
2
  import { box } from "svelte-toolbelt";
3
3
  import type { ScrollAreaScrollbarProps } from "../types.js";
4
- import { useScrollAreaScrollbar } from "../scroll-area.svelte.js";
4
+ import { ScrollAreaScrollbarState } from "../scroll-area.svelte.js";
5
5
  import ScrollAreaScrollbarAuto from "./scroll-area-scrollbar-auto.svelte";
6
6
  import ScrollAreaScrollbarScroll from "./scroll-area-scrollbar-scroll.svelte";
7
7
  import ScrollAreaScrollbarHover from "./scroll-area-scrollbar-hover.svelte";
@@ -17,7 +17,7 @@
17
17
  ...restProps
18
18
  }: ScrollAreaScrollbarProps = $props();
19
19
 
20
- const scrollbarState = useScrollAreaScrollbar({
20
+ const scrollbarState = ScrollAreaScrollbarState.create({
21
21
  orientation: box.with(() => orientation),
22
22
  id: box.with(() => id),
23
23
  ref: box.with(
@@ -2,7 +2,7 @@
2
2
  import { box, mergeProps } from "svelte-toolbelt";
3
3
  import { IsMounted } from "runed";
4
4
  import type { ScrollAreaThumbProps } from "../types.js";
5
- import { useScrollAreaThumb } from "../scroll-area.svelte.js";
5
+ import { ScrollAreaThumbImplState } from "../scroll-area.svelte.js";
6
6
 
7
7
  let {
8
8
  ref = $bindable(null),
@@ -18,7 +18,7 @@
18
18
 
19
19
  const isMounted = new IsMounted();
20
20
 
21
- const thumbState = useScrollAreaThumb({
21
+ const thumbState = ScrollAreaThumbImplState.create({
22
22
  id: box.with(() => id),
23
23
  ref: box.with(
24
24
  () => ref,
@@ -17,11 +17,8 @@
17
17
  const scrollbarState = ScrollAreaScrollbarVisibleContext.get();
18
18
  </script>
19
19
 
20
- <PresenceLayer
21
- present={forceMount || scrollbarState.hasThumb}
22
- ref={scrollbarState.scrollbar.opts.ref}
23
- >
20
+ <PresenceLayer open={forceMount || scrollbarState.hasThumb} ref={scrollbarState.scrollbar.opts.ref}>
24
21
  {#snippet presence({ present })}
25
- <ScrollAreaThumbImpl {...restProps} {id} bind:ref present={present.current} />
22
+ <ScrollAreaThumbImpl {...restProps} {id} bind:ref {present} />
26
23
  {/snippet}
27
24
  </PresenceLayer>
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
2
  import { box, mergeProps } from "svelte-toolbelt";
3
3
  import type { ScrollAreaViewportProps } from "../types.js";
4
- import { useScrollAreaViewport } from "../scroll-area.svelte.js";
4
+ import { ScrollAreaViewportState } from "../scroll-area.svelte.js";
5
5
  import { createId } from "../../../internal/create-id.js";
6
6
 
7
7
  const uid = $props.id();
@@ -13,7 +13,7 @@
13
13
  ...restProps
14
14
  }: ScrollAreaViewportProps = $props();
15
15
 
16
- const viewportState = useScrollAreaViewport({
16
+ const viewportState = ScrollAreaViewportState.create({
17
17
  id: box.with(() => id),
18
18
  ref: box.with(
19
19
  () => ref,
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
2
  import { box, mergeProps } from "svelte-toolbelt";
3
3
  import type { ScrollAreaRootProps } from "../types.js";
4
- import { useScrollAreaRoot } from "../scroll-area.svelte.js";
4
+ import { ScrollAreaRootState } from "../scroll-area.svelte.js";
5
5
  import { createId } from "../../../internal/create-id.js";
6
6
 
7
7
  const uid = $props.id();
@@ -17,7 +17,7 @@
17
17
  ...restProps
18
18
  }: ScrollAreaRootProps = $props();
19
19
 
20
- const rootState = useScrollAreaRoot({
20
+ const rootState = ScrollAreaRootState.create({
21
21
  type: box.with(() => type),
22
22
  dir: box.with(() => dir),
23
23
  scrollHideDelay: box.with(() => scrollHideDelay),
@@ -5,12 +5,17 @@
5
5
  * Incredible thought must have went into solving all the intricacies of this component.
6
6
  */
7
7
  import { Context } from "runed";
8
- import { DOMContext } from "svelte-toolbelt";
8
+ import { DOMContext, type ReadableBoxedValues } from "svelte-toolbelt";
9
9
  import type { ScrollAreaType } from "./types.js";
10
- import type { ReadableBoxedValues } from "../../internal/box.svelte.js";
11
- import type { BitsPointerEvent, WithRefProps } from "../../internal/types.js";
10
+ import type { BitsPointerEvent, WithRefOpts } from "../../internal/types.js";
12
11
  import { type Direction, type Orientation } from "../../shared/index.js";
13
- type Sizes = {
12
+ import { StateMachine } from "../../internal/state-machine.js";
13
+ export declare const ScrollAreaRootContext: Context<ScrollAreaRootState>;
14
+ export declare const ScrollAreaScrollbarContext: Context<ScrollAreaScrollbarState>;
15
+ export declare const ScrollAreaScrollbarVisibleContext: Context<ScrollAreaScrollbarVisibleState>;
16
+ export declare const ScrollAreaScrollbarAxisContext: Context<ScrollbarAxis>;
17
+ export declare const ScrollAreaScrollbarSharedContext: Context<ScrollAreaScrollbarSharedState>;
18
+ interface Sizes {
14
19
  content: number;
15
20
  viewport: number;
16
21
  scrollbar: {
@@ -18,14 +23,16 @@ type Sizes = {
18
23
  paddingStart: number;
19
24
  paddingEnd: number;
20
25
  };
21
- };
22
- type ScrollAreaRootStateProps = WithRefProps<ReadableBoxedValues<{
26
+ }
27
+ interface ScrollAreaRootStateOpts extends WithRefOpts, ReadableBoxedValues<{
23
28
  dir: Direction;
24
29
  type: ScrollAreaType;
25
30
  scrollHideDelay: number;
26
- }>>;
27
- declare class ScrollAreaRootState {
28
- readonly opts: ScrollAreaRootStateProps;
31
+ }> {
32
+ }
33
+ export declare class ScrollAreaRootState {
34
+ static create(opts: ScrollAreaRootStateOpts): ScrollAreaRootState;
35
+ readonly opts: ScrollAreaRootStateOpts;
29
36
  scrollAreaNode: HTMLElement | null;
30
37
  viewportNode: HTMLElement | null;
31
38
  contentNode: HTMLElement | null;
@@ -36,8 +43,8 @@ declare class ScrollAreaRootState {
36
43
  scrollbarXEnabled: boolean;
37
44
  scrollbarYEnabled: boolean;
38
45
  domContext: DOMContext;
39
- constructor(opts: ScrollAreaRootStateProps);
40
- props: {
46
+ constructor(opts: ScrollAreaRootStateOpts);
47
+ readonly props: {
41
48
  readonly id: string;
42
49
  readonly dir: Direction;
43
50
  readonly style: {
@@ -47,20 +54,22 @@ declare class ScrollAreaRootState {
47
54
  };
48
55
  };
49
56
  }
50
- type ScrollAreaViewportStateProps = WithRefProps;
51
- declare class ScrollAreaViewportState {
57
+ interface ScrollAreaViewportStateOpts extends WithRefOpts {
58
+ }
59
+ export declare class ScrollAreaViewportState {
52
60
  #private;
53
- readonly opts: ScrollAreaViewportStateProps;
61
+ static create(opts: ScrollAreaViewportStateOpts): ScrollAreaViewportState;
62
+ readonly opts: ScrollAreaViewportStateOpts;
54
63
  readonly root: ScrollAreaRootState;
55
- constructor(opts: ScrollAreaViewportStateProps, root: ScrollAreaRootState);
56
- props: {
64
+ constructor(opts: ScrollAreaViewportStateOpts, root: ScrollAreaRootState);
65
+ readonly props: {
57
66
  readonly id: string;
58
67
  readonly style: {
59
68
  readonly overflowX: "hidden" | "scroll";
60
69
  readonly overflowY: "hidden" | "scroll";
61
70
  };
62
71
  };
63
- contentProps: {
72
+ readonly contentProps: {
64
73
  readonly id: string;
65
74
  readonly "data-scroll-area-content": "";
66
75
  /**
@@ -75,17 +84,20 @@ declare class ScrollAreaViewportState {
75
84
  };
76
85
  };
77
86
  }
78
- type ScrollAreaScrollbarStateProps = WithRefProps<ReadableBoxedValues<{
87
+ interface ScrollAreaScrollbarStateOpts extends WithRefOpts, ReadableBoxedValues<{
79
88
  orientation: Orientation;
80
- }>>;
81
- declare class ScrollAreaScrollbarState {
82
- readonly opts: ScrollAreaScrollbarStateProps;
89
+ }> {
90
+ }
91
+ export declare class ScrollAreaScrollbarState {
92
+ static create(opts: ScrollAreaScrollbarStateOpts): ScrollAreaScrollbarState;
93
+ readonly opts: ScrollAreaScrollbarStateOpts;
83
94
  readonly root: ScrollAreaRootState;
84
95
  readonly isHorizontal: boolean;
85
96
  hasThumb: boolean;
86
- constructor(opts: ScrollAreaScrollbarStateProps, root: ScrollAreaRootState);
97
+ constructor(opts: ScrollAreaScrollbarStateOpts, root: ScrollAreaRootState);
87
98
  }
88
- declare class ScrollAreaScrollbarHoverState {
99
+ export declare class ScrollAreaScrollbarHoverState {
100
+ static create(): ScrollAreaScrollbarHoverState;
89
101
  readonly scrollbar: ScrollAreaScrollbarState;
90
102
  root: ScrollAreaRootState;
91
103
  isVisible: boolean;
@@ -94,13 +106,28 @@ declare class ScrollAreaScrollbarHoverState {
94
106
  readonly "data-state": "hidden" | "visible";
95
107
  };
96
108
  }
97
- declare class ScrollAreaScrollbarScrollState {
109
+ export declare class ScrollAreaScrollbarScrollState {
110
+ static create(): ScrollAreaScrollbarScrollState;
98
111
  readonly scrollbar: ScrollAreaScrollbarState;
99
- root: ScrollAreaRootState;
100
- machine: {
101
- state: import("svelte-toolbelt").WritableBox<"hidden" | "scrolling" | "idle" | "interacting">;
102
- dispatch: (event: string | number | symbol) => void;
103
- };
112
+ readonly root: ScrollAreaRootState;
113
+ readonly machine: StateMachine<{
114
+ hidden: {
115
+ SCROLL: "scrolling";
116
+ };
117
+ scrolling: {
118
+ SCROLL_END: "idle";
119
+ POINTER_ENTER: "interacting";
120
+ };
121
+ interacting: {
122
+ SCROLL: "interacting";
123
+ POINTER_LEAVE: "idle";
124
+ };
125
+ idle: {
126
+ HIDE: "hidden";
127
+ SCROLL: "scrolling";
128
+ POINTER_ENTER: "interacting";
129
+ };
130
+ }>;
104
131
  readonly isHidden: boolean;
105
132
  constructor(scrollbar: ScrollAreaScrollbarState);
106
133
  onpointerenter(_: BitsPointerEvent): void;
@@ -111,18 +138,20 @@ declare class ScrollAreaScrollbarScrollState {
111
138
  readonly onpointerleave: (_: BitsPointerEvent) => void;
112
139
  };
113
140
  }
114
- declare class ScrollAreaScrollbarAutoState {
141
+ export declare class ScrollAreaScrollbarAutoState {
142
+ static create(): ScrollAreaScrollbarAutoState;
115
143
  readonly scrollbar: ScrollAreaScrollbarState;
116
- root: ScrollAreaRootState;
144
+ readonly root: ScrollAreaRootState;
117
145
  isVisible: boolean;
118
146
  constructor(scrollbar: ScrollAreaScrollbarState);
119
147
  readonly props: {
120
148
  readonly "data-state": "hidden" | "visible";
121
149
  };
122
150
  }
123
- declare class ScrollAreaScrollbarVisibleState {
151
+ export declare class ScrollAreaScrollbarVisibleState {
152
+ static create(): ScrollAreaScrollbarVisibleState;
124
153
  readonly scrollbar: ScrollAreaScrollbarState;
125
- root: ScrollAreaRootState;
154
+ readonly root: ScrollAreaRootState;
126
155
  thumbNode: HTMLElement | null;
127
156
  pointerOffset: number;
128
157
  sizes: Sizes;
@@ -141,10 +170,11 @@ declare class ScrollAreaScrollbarVisibleState {
141
170
  yOnWheelScroll(scrollPos: number): void;
142
171
  yOnDragScroll(pointerPos: number): void;
143
172
  }
144
- type ScrollbarAxisStateProps = ReadableBoxedValues<{
173
+ interface ScrollbarAxisStateOpts extends ReadableBoxedValues<{
145
174
  mounted: boolean;
146
- }>;
147
- type ScrollbarAxisState = {
175
+ }> {
176
+ }
177
+ interface ScrollbarAxisState {
148
178
  onThumbPointerDown: (pointerPos: {
149
179
  x: number;
150
180
  y: number;
@@ -162,14 +192,15 @@ type ScrollbarAxisState = {
162
192
  "data-orientation": "horizontal" | "vertical";
163
193
  style: Record<string, string | number | undefined>;
164
194
  };
165
- };
166
- declare class ScrollAreaScrollbarXState implements ScrollbarAxisState {
167
- readonly opts: ScrollbarAxisStateProps;
195
+ }
196
+ export declare class ScrollAreaScrollbarXState implements ScrollbarAxisState {
197
+ static create(opts: ScrollbarAxisStateOpts): ScrollbarAxis;
198
+ readonly opts: ScrollbarAxisStateOpts;
168
199
  readonly scrollbarVis: ScrollAreaScrollbarVisibleState;
169
- root: ScrollAreaRootState;
200
+ readonly root: ScrollAreaRootState;
201
+ readonly scrollbar: ScrollAreaScrollbarState;
170
202
  computedStyle: CSSStyleDeclaration | undefined;
171
- scrollbar: ScrollAreaScrollbarState;
172
- constructor(opts: ScrollbarAxisStateProps, scrollbarVis: ScrollAreaScrollbarVisibleState);
203
+ constructor(opts: ScrollbarAxisStateOpts, scrollbarVis: ScrollAreaScrollbarVisibleState);
173
204
  onThumbPointerDown: (pointerPos: {
174
205
  x: number;
175
206
  y: number;
@@ -194,13 +225,14 @@ declare class ScrollAreaScrollbarXState implements ScrollbarAxisState {
194
225
  };
195
226
  };
196
227
  }
197
- declare class ScrollAreaScrollbarYState implements ScrollbarAxisState {
198
- readonly opts: ScrollbarAxisStateProps;
228
+ export declare class ScrollAreaScrollbarYState implements ScrollbarAxisState {
229
+ static create(opts: ScrollbarAxisStateOpts): ScrollbarAxis;
230
+ readonly opts: ScrollbarAxisStateOpts;
199
231
  readonly scrollbarVis: ScrollAreaScrollbarVisibleState;
200
- root: ScrollAreaRootState;
201
- scrollbar: ScrollAreaScrollbarState;
232
+ readonly root: ScrollAreaRootState;
233
+ readonly scrollbar: ScrollAreaScrollbarState;
202
234
  computedStyle: CSSStyleDeclaration | undefined;
203
- constructor(opts: ScrollbarAxisStateProps, scrollbarVis: ScrollAreaScrollbarVisibleState);
235
+ constructor(opts: ScrollbarAxisStateOpts, scrollbarVis: ScrollAreaScrollbarVisibleState);
204
236
  onThumbPointerDown(pointerPos: {
205
237
  x: number;
206
238
  y: number;
@@ -227,11 +259,12 @@ declare class ScrollAreaScrollbarYState implements ScrollbarAxisState {
227
259
  };
228
260
  }
229
261
  type ScrollbarAxis = ScrollAreaScrollbarXState | ScrollAreaScrollbarYState;
230
- declare class ScrollAreaScrollbarSharedState {
262
+ export declare class ScrollAreaScrollbarSharedState {
263
+ static create(): ScrollAreaScrollbarSharedState;
231
264
  readonly scrollbarState: ScrollbarAxis;
232
- root: ScrollAreaRootState;
233
- scrollbarVis: ScrollAreaScrollbarVisibleState;
234
- scrollbar: ScrollAreaScrollbarState;
265
+ readonly root: ScrollAreaRootState;
266
+ readonly scrollbarVis: ScrollAreaScrollbarVisibleState;
267
+ readonly scrollbar: ScrollAreaScrollbarState;
235
268
  rect: DOMRect | null;
236
269
  prevWebkitUserSelect: string;
237
270
  handleResize: () => void;
@@ -248,16 +281,18 @@ declare class ScrollAreaScrollbarSharedState {
248
281
  onpointerdown(e: BitsPointerEvent): void;
249
282
  onpointermove(e: BitsPointerEvent): void;
250
283
  onpointerup(e: BitsPointerEvent): void;
251
- props: never;
284
+ readonly props: never;
252
285
  }
253
- type ScrollAreaThumbImplStateProps = WithRefProps & ReadableBoxedValues<{
286
+ interface ScrollAreaThumbImplStateOpts extends WithRefOpts, ReadableBoxedValues<{
254
287
  mounted: boolean;
255
- }>;
256
- declare class ScrollAreaThumbImplState {
288
+ }> {
289
+ }
290
+ export declare class ScrollAreaThumbImplState {
257
291
  #private;
258
- readonly opts: ScrollAreaThumbImplStateProps;
292
+ static create(opts: ScrollAreaThumbImplStateOpts): ScrollAreaThumbImplState;
293
+ readonly opts: ScrollAreaThumbImplStateOpts;
259
294
  readonly scrollbarState: ScrollAreaScrollbarSharedState;
260
- constructor(opts: ScrollAreaThumbImplStateProps, scrollbarState: ScrollAreaScrollbarSharedState);
295
+ constructor(opts: ScrollAreaThumbImplStateOpts, scrollbarState: ScrollAreaScrollbarSharedState);
261
296
  onpointerdowncapture(e: BitsPointerEvent): void;
262
297
  onpointerup(_: BitsPointerEvent): void;
263
298
  readonly props: {
@@ -272,13 +307,15 @@ declare class ScrollAreaThumbImplState {
272
307
  readonly onpointerup: (_: BitsPointerEvent) => void;
273
308
  };
274
309
  }
275
- type ScrollAreaCornerImplStateProps = WithRefProps;
276
- declare class ScrollAreaCornerImplState {
310
+ interface ScrollAreaCornerImplStateOpts extends WithRefOpts {
311
+ }
312
+ export declare class ScrollAreaCornerImplState {
277
313
  #private;
278
- readonly opts: ScrollAreaCornerImplStateProps;
314
+ static create(opts: ScrollAreaCornerImplStateOpts): ScrollAreaCornerImplState;
315
+ readonly opts: ScrollAreaCornerImplStateOpts;
279
316
  readonly root: ScrollAreaRootState;
280
317
  readonly hasSize: boolean;
281
- constructor(opts: ScrollAreaCornerImplStateProps, root: ScrollAreaRootState);
318
+ constructor(opts: ScrollAreaCornerImplStateOpts, root: ScrollAreaRootState);
282
319
  readonly props: {
283
320
  id: string;
284
321
  style: {
@@ -291,21 +328,4 @@ declare class ScrollAreaCornerImplState {
291
328
  };
292
329
  };
293
330
  }
294
- export declare const ScrollAreaRootContext: Context<ScrollAreaRootState>;
295
- export declare const ScrollAreaScrollbarContext: Context<ScrollAreaScrollbarState>;
296
- export declare const ScrollAreaScrollbarVisibleContext: Context<ScrollAreaScrollbarVisibleState>;
297
- export declare const ScrollAreaScrollbarAxisContext: Context<ScrollbarAxis>;
298
- export declare const ScrollAreaScrollbarSharedContext: Context<ScrollAreaScrollbarSharedState>;
299
- export declare function useScrollAreaRoot(props: ScrollAreaRootStateProps): ScrollAreaRootState;
300
- export declare function useScrollAreaViewport(props: ScrollAreaViewportStateProps): ScrollAreaViewportState;
301
- export declare function useScrollAreaScrollbar(props: ScrollAreaScrollbarStateProps): ScrollAreaScrollbarState;
302
- export declare function useScrollAreaScrollbarVisible(): ScrollAreaScrollbarVisibleState;
303
- export declare function useScrollAreaScrollbarAuto(): ScrollAreaScrollbarAutoState;
304
- export declare function useScrollAreaScrollbarScroll(): ScrollAreaScrollbarScrollState;
305
- export declare function useScrollAreaScrollbarHover(): ScrollAreaScrollbarHoverState;
306
- export declare function useScrollAreaScrollbarX(props: ScrollbarAxisStateProps): ScrollbarAxis;
307
- export declare function useScrollAreaScrollbarY(props: ScrollbarAxisStateProps): ScrollbarAxis;
308
- export declare function useScrollAreaScrollbarShared(): ScrollAreaScrollbarSharedState;
309
- export declare function useScrollAreaThumb(props: ScrollAreaThumbImplStateProps): ScrollAreaThumbImplState;
310
- export declare function useScrollAreaCorner(props: ScrollAreaCornerImplStateProps): ScrollAreaCornerImplState;
311
331
  export {};