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,61 +1,66 @@
1
- import { DOMContext } from "svelte-toolbelt";
1
+ import { DOMContext, type ReadableBoxedValues, type WritableBoxedValues } from "svelte-toolbelt";
2
2
  import { Context } from "runed";
3
- import type { ReadableBoxedValues, WritableBoxedValues } from "../../internal/box.svelte.js";
4
3
  import { CustomEventDispatcher } from "../../internal/events.js";
5
- import type { AnyFn, BitsFocusEvent, BitsKeyboardEvent, BitsMouseEvent, BitsPointerEvent, WithRefProps } from "../../internal/types.js";
6
- import { useRovingFocus } from "../../internal/use-roving-focus.svelte.js";
4
+ import type { AnyFn, BitsFocusEvent, BitsKeyboardEvent, BitsMouseEvent, BitsPointerEvent, OnChangeFn, WithRefOpts } from "../../internal/types.js";
7
5
  import type { Direction } from "../../shared/index.js";
8
6
  import { IsUsingKeyboard } from "../../index.js";
9
7
  import type { KeyboardEventHandler, PointerEventHandler } from "svelte/elements";
8
+ import { RovingFocusGroup } from "../../internal/roving-focus-group.js";
10
9
  export declare const CONTEXT_MENU_TRIGGER_ATTR = "data-context-menu-trigger";
11
10
  export declare const MenuCheckboxGroupContext: Context<MenuCheckboxGroupState>;
12
11
  type MenuVariant = "context-menu" | "dropdown-menu" | "menubar";
13
- export type MenuRootStateProps = ReadableBoxedValues<{
12
+ export interface MenuRootStateOpts extends ReadableBoxedValues<{
14
13
  dir: Direction;
15
14
  variant: MenuVariant;
16
- }> & {
15
+ }> {
17
16
  onClose: AnyFn;
18
- };
17
+ }
19
18
  export declare const MenuOpenEvent: CustomEventDispatcher<unknown>;
20
- export declare const menuAttrs: import("../../internal/attrs.js").BitsAttrs<readonly ["trigger", "content", "sub-trigger", "item", "group", "group-heading", "checkbox-group", "checkbox-item", "radio-group", "radio-item", "separator", "sub-content", "arrow"]>;
21
- declare class MenuRootState {
22
- readonly opts: MenuRootStateProps;
23
- isUsingKeyboard: IsUsingKeyboard;
19
+ export declare const menuAttrs: import("../../internal/attrs.js").CreateBitsAttrsReturn<readonly ["trigger", "content", "sub-trigger", "item", "group", "group-heading", "checkbox-group", "checkbox-item", "radio-group", "radio-item", "separator", "sub-content", "arrow"]>;
20
+ export declare class MenuRootState {
21
+ static create(opts: MenuRootStateOpts): MenuRootState;
22
+ readonly opts: MenuRootStateOpts;
23
+ readonly isUsingKeyboard: IsUsingKeyboard;
24
24
  ignoreCloseAutoFocus: boolean;
25
25
  isPointerInTransit: boolean;
26
- constructor(opts: MenuRootStateProps);
26
+ constructor(opts: MenuRootStateOpts);
27
27
  getBitsAttr: typeof menuAttrs.getAttr;
28
28
  }
29
- type MenuMenuStateProps = WritableBoxedValues<{
29
+ interface MenuMenuStateOpts extends WritableBoxedValues<{
30
30
  open: boolean;
31
- }>;
32
- declare class MenuMenuState {
33
- readonly opts: MenuMenuStateProps;
31
+ }>, ReadableBoxedValues<{
32
+ onOpenChangeComplete: OnChangeFn<boolean>;
33
+ }> {
34
+ }
35
+ export declare class MenuMenuState {
36
+ static create(opts: MenuMenuStateOpts, root: MenuRootState): MenuMenuState;
37
+ readonly opts: MenuMenuStateOpts;
34
38
  readonly root: MenuRootState;
35
39
  readonly parentMenu: MenuMenuState | null;
36
40
  contentId: import("svelte-toolbelt").ReadableBox<string>;
37
41
  contentNode: HTMLElement | null;
38
42
  triggerNode: HTMLElement | null;
39
- constructor(opts: MenuMenuStateProps, root: MenuRootState, parentMenu: MenuMenuState | null);
43
+ constructor(opts: MenuMenuStateOpts, root: MenuRootState, parentMenu: MenuMenuState | null);
40
44
  toggleOpen(): void;
41
45
  onOpen(): void;
42
46
  onClose(): void;
43
47
  }
44
- type MenuContentStateProps = WithRefProps & ReadableBoxedValues<{
48
+ interface MenuContentStateOpts extends WithRefOpts, ReadableBoxedValues<{
45
49
  loop: boolean;
46
50
  onCloseAutoFocus: (event: Event) => void;
47
- }> & {
51
+ }> {
48
52
  isSub?: boolean;
49
- };
50
- declare class MenuContentState {
53
+ }
54
+ export declare class MenuContentState {
51
55
  #private;
52
- readonly opts: MenuContentStateProps;
56
+ static create(opts: MenuContentStateOpts): MenuContentState;
57
+ readonly opts: MenuContentStateOpts;
53
58
  readonly parentMenu: MenuMenuState;
59
+ readonly rovingFocusGroup: RovingFocusGroup;
60
+ readonly domContext: DOMContext;
54
61
  search: string;
55
- rovingFocusGroup: ReturnType<typeof useRovingFocus>;
56
62
  mounted: boolean;
57
- domContext: DOMContext;
58
- constructor(opts: MenuContentStateProps, parentMenu: MenuMenuState);
63
+ constructor(opts: MenuContentStateOpts, parentMenu: MenuMenuState);
59
64
  onCloseAutoFocus: (e: Event) => void;
60
65
  handleTabKeyDown(e: BitsKeyboardEvent): void;
61
66
  onkeydown(e: BitsKeyboardEvent): void;
@@ -66,10 +71,10 @@ declare class MenuContentState {
66
71
  onTriggerLeave(): boolean;
67
72
  onOpenAutoFocus: (e: Event) => void;
68
73
  handleInteractOutside(e: PointerEvent): void;
69
- snippetProps: {
74
+ readonly snippetProps: {
70
75
  open: boolean;
71
76
  };
72
- props: {
77
+ readonly props: {
73
78
  readonly id: string;
74
79
  readonly role: "menu";
75
80
  readonly "aria-orientation": "horizontal" | "vertical";
@@ -82,23 +87,24 @@ declare class MenuContentState {
82
87
  readonly pointerEvents: "auto";
83
88
  };
84
89
  };
85
- popperProps: {
90
+ readonly popperProps: {
86
91
  onCloseAutoFocus: (e: Event) => void;
87
92
  };
88
93
  }
89
- type MenuItemSharedStateProps = WithRefProps & ReadableBoxedValues<{
94
+ interface MenuItemSharedStateOpts extends WithRefOpts, ReadableBoxedValues<{
90
95
  disabled: boolean;
91
- }>;
96
+ }> {
97
+ }
92
98
  declare class MenuItemSharedState {
93
99
  #private;
94
- readonly opts: MenuItemSharedStateProps;
100
+ readonly opts: MenuItemSharedStateOpts;
95
101
  readonly content: MenuContentState;
96
- constructor(opts: MenuItemSharedStateProps, content: MenuContentState);
102
+ constructor(opts: MenuItemSharedStateOpts, content: MenuContentState);
97
103
  onpointermove(e: BitsPointerEvent): void;
98
104
  onpointerleave(e: BitsPointerEvent): void;
99
105
  onfocus(e: BitsFocusEvent): void;
100
106
  onblur(e: BitsFocusEvent): void;
101
- props: {
107
+ readonly props: {
102
108
  readonly id: string;
103
109
  readonly tabindex: -1;
104
110
  readonly role: "menuitem";
@@ -111,21 +117,24 @@ declare class MenuItemSharedState {
111
117
  readonly onblur: (e: BitsFocusEvent) => void;
112
118
  };
113
119
  }
114
- type MenuItemStateProps = ReadableBoxedValues<{
120
+ type MenuItemCombinedProps = MenuItemSharedStateOpts & MenuItemStateOpts;
121
+ interface MenuItemStateOpts extends ReadableBoxedValues<{
115
122
  onSelect: AnyFn;
116
123
  closeOnSelect: boolean;
117
- }>;
118
- declare class MenuItemState {
124
+ }> {
125
+ }
126
+ export declare class MenuItemState {
119
127
  #private;
120
- readonly opts: MenuItemStateProps;
128
+ static create(opts: MenuItemCombinedProps): MenuItemState;
129
+ readonly opts: MenuItemStateOpts;
121
130
  readonly item: MenuItemSharedState;
122
- root: MenuRootState;
123
- constructor(opts: MenuItemStateProps, item: MenuItemSharedState);
131
+ readonly root: MenuRootState;
132
+ constructor(opts: MenuItemStateOpts, item: MenuItemSharedState);
124
133
  onkeydown(e: BitsKeyboardEvent): void;
125
134
  onclick(_: BitsMouseEvent): void;
126
135
  onpointerup(e: BitsPointerEvent): void;
127
136
  onpointerdown(_: BitsPointerEvent): void;
128
- props: {
137
+ readonly props: {
129
138
  readonly id: string;
130
139
  readonly tabindex: -1;
131
140
  readonly role: "menuitem";
@@ -145,18 +154,21 @@ declare class MenuItemState {
145
154
  style?: string;
146
155
  };
147
156
  }
148
- declare class MenuSubTriggerState {
157
+ interface MenuSubTriggerStateOpts extends MenuItemSharedStateOpts, Pick<MenuItemStateOpts, "onSelect"> {
158
+ }
159
+ export declare class MenuSubTriggerState {
149
160
  #private;
150
- readonly opts: MenuItemSharedStateProps & Pick<MenuItemStateProps, "onSelect">;
161
+ static create(opts: MenuSubTriggerStateOpts): MenuSubTriggerState;
162
+ readonly opts: MenuSubTriggerStateOpts;
151
163
  readonly item: MenuItemSharedState;
152
164
  readonly content: MenuContentState;
153
165
  readonly submenu: MenuMenuState;
154
- constructor(opts: MenuItemSharedStateProps & Pick<MenuItemStateProps, "onSelect">, item: MenuItemSharedState, content: MenuContentState, submenu: MenuMenuState);
166
+ constructor(opts: MenuSubTriggerStateOpts, item: MenuItemSharedState, content: MenuContentState, submenu: MenuMenuState);
155
167
  onpointermove(e: BitsPointerEvent): void;
156
168
  onpointerleave(e: BitsPointerEvent): void;
157
169
  onkeydown(e: BitsKeyboardEvent): void;
158
170
  onclick(e: BitsMouseEvent): void;
159
- props: {
171
+ readonly props: {
160
172
  readonly id: string;
161
173
  readonly tabindex: -1;
162
174
  readonly role: "menuitem";
@@ -180,23 +192,25 @@ declare class MenuSubTriggerState {
180
192
  style?: string;
181
193
  };
182
194
  }
183
- type MenuCheckboxItemStateProps = WritableBoxedValues<{
195
+ interface MenuCheckboxItemStateOpts extends WritableBoxedValues<{
184
196
  checked: boolean;
185
197
  indeterminate: boolean;
186
- }> & ReadableBoxedValues<{
198
+ }>, ReadableBoxedValues<{
187
199
  value: string;
188
- }>;
189
- declare class MenuCheckboxItemState {
190
- readonly opts: MenuCheckboxItemStateProps;
200
+ }> {
201
+ }
202
+ export declare class MenuCheckboxItemState {
203
+ static create(opts: MenuItemCombinedProps & MenuCheckboxItemStateOpts, checkboxGroup: MenuCheckboxGroupState | null): MenuCheckboxItemState;
204
+ readonly opts: MenuCheckboxItemStateOpts;
191
205
  readonly item: MenuItemState;
192
206
  readonly group: MenuCheckboxGroupState | null;
193
- constructor(opts: MenuCheckboxItemStateProps, item: MenuItemState, group?: MenuCheckboxGroupState | null);
207
+ constructor(opts: MenuCheckboxItemStateOpts, item: MenuItemState, group?: MenuCheckboxGroupState | null);
194
208
  toggleChecked(): void;
195
- snippetProps: {
209
+ readonly snippetProps: {
196
210
  checked: boolean;
197
211
  indeterminate: boolean;
198
212
  };
199
- props: {
213
+ readonly props: {
200
214
  readonly role: "menuitemcheckbox";
201
215
  readonly "aria-checked": "true" | "false" | "mixed";
202
216
  readonly "data-state": "checked" | "indeterminate" | "unchecked";
@@ -216,73 +230,84 @@ declare class MenuCheckboxItemState {
216
230
  readonly style?: string;
217
231
  };
218
232
  }
219
- type MenuGroupStateProps = WithRefProps;
220
- declare class MenuGroupState {
221
- readonly opts: MenuGroupStateProps;
233
+ interface MenuGroupStateOpts extends WithRefOpts {
234
+ }
235
+ export declare class MenuGroupState {
236
+ static create(opts: MenuGroupStateOpts): MenuGroupState | MenuRadioGroupState;
237
+ readonly opts: MenuGroupStateOpts;
222
238
  readonly root: MenuRootState;
223
239
  groupHeadingId: string | undefined;
224
- constructor(opts: MenuGroupStateProps, root: MenuRootState);
225
- props: {
240
+ constructor(opts: MenuGroupStateOpts, root: MenuRootState);
241
+ readonly props: {
226
242
  readonly id: string;
227
243
  readonly role: "group";
228
244
  readonly "aria-labelledby": string | undefined;
229
245
  };
230
246
  }
231
- type MenuGroupHeadingStateProps = WithRefProps;
232
- declare class MenuGroupHeadingState {
233
- readonly opts: MenuGroupHeadingStateProps;
247
+ interface MenuGroupHeadingStateOpts extends WithRefOpts {
248
+ }
249
+ export declare class MenuGroupHeadingState {
250
+ static create(opts: MenuGroupHeadingStateOpts): MenuGroupHeadingState;
251
+ readonly opts: MenuGroupHeadingStateOpts;
234
252
  readonly group: MenuGroupState | MenuRadioGroupState | MenuCheckboxGroupState;
235
- constructor(opts: MenuGroupHeadingStateProps, group: MenuGroupState | MenuRadioGroupState | MenuCheckboxGroupState);
236
- props: {
253
+ constructor(opts: MenuGroupHeadingStateOpts, group: MenuGroupState | MenuRadioGroupState | MenuCheckboxGroupState);
254
+ readonly props: {
237
255
  readonly id: string;
238
256
  readonly role: "group";
239
257
  };
240
258
  }
241
- type MenuSeparatorStateProps = WithRefProps;
242
- declare class MenuSeparatorState {
243
- readonly opts: MenuSeparatorStateProps;
259
+ interface MenuSeparatorStateOpts extends WithRefOpts {
260
+ }
261
+ export declare class MenuSeparatorState {
262
+ static create(opts: MenuSeparatorStateOpts): MenuSeparatorState;
263
+ readonly opts: MenuSeparatorStateOpts;
244
264
  readonly root: MenuRootState;
245
- constructor(opts: MenuSeparatorStateProps, root: MenuRootState);
246
- props: {
265
+ constructor(opts: MenuSeparatorStateOpts, root: MenuRootState);
266
+ readonly props: {
247
267
  readonly id: string;
248
268
  readonly role: "group";
249
269
  };
250
270
  }
251
- declare class MenuArrowState {
271
+ export declare class MenuArrowState {
272
+ static create(): MenuArrowState;
252
273
  readonly root: MenuRootState;
253
274
  constructor(root: MenuRootState);
254
- props: {
275
+ readonly props: {
255
276
  readonly [x: string]: "";
256
277
  };
257
278
  }
258
- type MenuRadioGroupStateProps = WithRefProps & WritableBoxedValues<{
279
+ interface MenuRadioGroupStateOpts extends WithRefOpts, WritableBoxedValues<{
259
280
  value: string;
260
- }>;
261
- declare class MenuRadioGroupState {
262
- readonly opts: MenuRadioGroupStateProps;
281
+ }> {
282
+ }
283
+ export declare class MenuRadioGroupState {
284
+ static create(opts: MenuRadioGroupStateOpts): MenuGroupState | MenuRadioGroupState;
285
+ readonly opts: MenuRadioGroupStateOpts;
263
286
  readonly content: MenuContentState;
264
287
  groupHeadingId: string | null;
265
288
  root: MenuRootState;
266
- constructor(opts: MenuRadioGroupStateProps, content: MenuContentState);
289
+ constructor(opts: MenuRadioGroupStateOpts, content: MenuContentState);
267
290
  setValue(v: string): void;
268
- props: {
291
+ readonly props: {
269
292
  readonly id: string;
270
293
  readonly role: "group";
271
294
  readonly "aria-labelledby": string | null;
272
295
  };
273
296
  }
274
- type MenuRadioItemStateProps = WithRefProps & ReadableBoxedValues<{
297
+ interface MenuRadioItemStateOpts extends WithRefOpts, ReadableBoxedValues<{
275
298
  value: string;
276
299
  closeOnSelect: boolean;
277
- }>;
278
- declare class MenuRadioItemState {
279
- readonly opts: MenuRadioItemStateProps;
300
+ }> {
301
+ }
302
+ export declare class MenuRadioItemState {
303
+ static create(opts: MenuRadioItemStateOpts & MenuItemCombinedProps): MenuRadioItemState;
304
+ readonly opts: MenuRadioItemStateOpts;
280
305
  readonly item: MenuItemState;
281
306
  readonly group: MenuRadioGroupState;
282
- isChecked: boolean;
283
- constructor(opts: MenuRadioItemStateProps, item: MenuItemState, group: MenuRadioGroupState);
307
+ readonly isChecked: boolean;
308
+ constructor(opts: MenuRadioItemStateOpts, item: MenuItemState, group: MenuRadioGroupState);
284
309
  selectValue(): void;
285
- props: {
310
+ readonly props: {
286
311
  readonly role: "menuitemradio";
287
312
  readonly "aria-checked": "true" | "false" | "mixed";
288
313
  readonly "data-state": "checked" | "indeterminate" | "unchecked";
@@ -302,18 +327,20 @@ declare class MenuRadioItemState {
302
327
  readonly style?: string;
303
328
  };
304
329
  }
305
- type DropdownMenuTriggerStateProps = WithRefProps & ReadableBoxedValues<{
330
+ interface DropdownMenuTriggerStateOpts extends WithRefOpts, ReadableBoxedValues<{
306
331
  disabled: boolean;
307
- }>;
308
- declare class DropdownMenuTriggerState {
332
+ }> {
333
+ }
334
+ export declare class DropdownMenuTriggerState {
309
335
  #private;
310
- readonly opts: DropdownMenuTriggerStateProps;
336
+ static create(opts: DropdownMenuTriggerStateOpts): DropdownMenuTriggerState;
337
+ readonly opts: DropdownMenuTriggerStateOpts;
311
338
  readonly parentMenu: MenuMenuState;
312
- constructor(opts: DropdownMenuTriggerStateProps, parentMenu: MenuMenuState);
339
+ constructor(opts: DropdownMenuTriggerStateOpts, parentMenu: MenuMenuState);
313
340
  onpointerdown: PointerEventHandler<HTMLElement>;
314
341
  onpointerup: PointerEventHandler<HTMLElement>;
315
342
  onkeydown: KeyboardEventHandler<HTMLElement>;
316
- props: {
343
+ readonly props: {
317
344
  readonly id: string;
318
345
  readonly disabled: boolean;
319
346
  readonly "aria-haspopup": "menu";
@@ -326,23 +353,25 @@ declare class DropdownMenuTriggerState {
326
353
  readonly onkeydown: KeyboardEventHandler<HTMLElement>;
327
354
  };
328
355
  }
329
- type ContextMenuTriggerStateProps = WithRefProps & ReadableBoxedValues<{
356
+ interface ContextMenuTriggerStateOpts extends WithRefOpts, ReadableBoxedValues<{
330
357
  disabled: boolean;
331
- }>;
332
- declare class ContextMenuTriggerState {
358
+ }> {
359
+ }
360
+ export declare class ContextMenuTriggerState {
333
361
  #private;
334
- readonly opts: ContextMenuTriggerStateProps;
362
+ static create(opts: ContextMenuTriggerStateOpts): ContextMenuTriggerState;
363
+ readonly opts: ContextMenuTriggerStateOpts;
335
364
  readonly parentMenu: MenuMenuState;
336
365
  virtualElement: import("svelte-toolbelt").WritableBox<{
337
366
  getBoundingClientRect: () => DOMRect;
338
367
  }>;
339
- constructor(opts: ContextMenuTriggerStateProps, parentMenu: MenuMenuState);
368
+ constructor(opts: ContextMenuTriggerStateOpts, parentMenu: MenuMenuState);
340
369
  oncontextmenu(e: BitsMouseEvent): void;
341
370
  onpointerdown(e: BitsPointerEvent): void;
342
371
  onpointermove(e: BitsPointerEvent): void;
343
372
  onpointercancel(e: BitsPointerEvent): void;
344
373
  onpointerup(e: BitsPointerEvent): void;
345
- props: {
374
+ readonly props: {
346
375
  readonly id: string;
347
376
  readonly disabled: boolean;
348
377
  readonly "data-disabled": "" | undefined;
@@ -356,40 +385,28 @@ declare class ContextMenuTriggerState {
356
385
  readonly oncontextmenu: (e: BitsMouseEvent) => void;
357
386
  };
358
387
  }
359
- type MenuCheckboxGroupStateProps = WithRefProps & ReadableBoxedValues<{
388
+ interface MenuCheckboxGroupStateOpts extends WithRefOpts, ReadableBoxedValues<{
360
389
  onValueChange: (value: string[]) => void;
361
- }> & WritableBoxedValues<{
390
+ }>, WritableBoxedValues<{
362
391
  value: string[];
363
- }>;
364
- declare class MenuCheckboxGroupState {
365
- readonly opts: MenuCheckboxGroupStateProps;
392
+ }> {
393
+ }
394
+ export declare class MenuCheckboxGroupState {
395
+ static create(opts: MenuCheckboxGroupStateOpts): MenuCheckboxGroupState;
396
+ readonly opts: MenuCheckboxGroupStateOpts;
366
397
  readonly content: MenuContentState;
398
+ readonly root: MenuRootState;
367
399
  groupHeadingId: string | null;
368
- root: MenuRootState;
369
- constructor(opts: MenuCheckboxGroupStateProps, content: MenuContentState);
400
+ constructor(opts: MenuCheckboxGroupStateOpts, content: MenuContentState);
370
401
  addValue(checkboxValue: string | undefined): void;
371
402
  removeValue(checkboxValue: string | undefined): void;
372
- props: {
403
+ readonly props: {
373
404
  readonly id: string;
374
405
  readonly role: "group";
375
406
  readonly "aria-labelledby": string | null;
376
407
  };
377
408
  }
378
- type MenuItemCombinedProps = MenuItemSharedStateProps & MenuItemStateProps;
379
- export declare function useMenuRoot(props: MenuRootStateProps): MenuRootState;
380
- export declare function useMenuMenu(root: MenuRootState, props: MenuMenuStateProps): MenuMenuState;
381
- export declare function useMenuSubmenu(props: MenuMenuStateProps): MenuMenuState;
382
- export declare function useMenuSubTrigger(props: MenuItemSharedStateProps & Pick<MenuItemStateProps, "onSelect">): MenuSubTriggerState;
383
- export declare function useMenuDropdownTrigger(props: DropdownMenuTriggerStateProps): DropdownMenuTriggerState;
384
- export declare function useMenuContextTrigger(props: ContextMenuTriggerStateProps): ContextMenuTriggerState;
385
- export declare function useMenuContent(props: MenuContentStateProps): MenuContentState;
386
- export declare function useMenuItem(props: MenuItemCombinedProps): MenuItemState;
387
- export declare function useMenuCheckboxItem(props: MenuItemCombinedProps & MenuCheckboxItemStateProps, checkboxGroup: MenuCheckboxGroupState | null): MenuCheckboxItemState;
388
- export declare function useMenuRadioGroup(props: MenuRadioGroupStateProps): MenuGroupState | MenuRadioGroupState;
389
- export declare function useMenuRadioItem(props: MenuRadioItemStateProps & MenuItemCombinedProps): MenuRadioItemState;
390
- export declare function useMenuGroup(props: MenuGroupStateProps): MenuGroupState | MenuRadioGroupState;
391
- export declare function useMenuGroupHeading(props: MenuGroupHeadingStateProps): MenuGroupHeadingState;
392
- export declare function useMenuSeparator(props: MenuSeparatorStateProps): MenuSeparatorState;
393
- export declare function useMenuArrow(): MenuArrowState;
394
- export declare function useMenuCheckboxGroup(props: MenuCheckboxGroupStateProps): MenuCheckboxGroupState;
409
+ export declare class MenuSubmenuState {
410
+ static create(opts: MenuMenuStateOpts): MenuMenuState;
411
+ }
395
412
  export {};