bits-ui 2.9.9 → 2.11.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 (280) hide show
  1. package/dist/bits/accordion/accordion.svelte.d.ts +9 -7
  2. package/dist/bits/accordion/accordion.svelte.js +36 -13
  3. package/dist/bits/accordion/components/accordion-content.svelte +15 -7
  4. package/dist/bits/accordion/components/accordion-header.svelte +4 -4
  5. package/dist/bits/accordion/components/accordion-item.svelte +5 -5
  6. package/dist/bits/accordion/components/accordion-trigger.svelte +4 -4
  7. package/dist/bits/accordion/components/accordion.svelte +7 -7
  8. package/dist/bits/accordion/components/accordion.svelte.d.ts +1 -1
  9. package/dist/bits/accordion/types.d.ts +17 -8
  10. package/dist/bits/alert-dialog/components/alert-dialog-action.svelte +3 -3
  11. package/dist/bits/alert-dialog/components/alert-dialog-cancel.svelte +4 -4
  12. package/dist/bits/alert-dialog/components/alert-dialog-content.svelte +3 -3
  13. package/dist/bits/alert-dialog/components/alert-dialog.svelte +4 -4
  14. package/dist/bits/aspect-ratio/components/aspect-ratio.svelte +4 -4
  15. package/dist/bits/avatar/components/avatar-fallback.svelte +3 -3
  16. package/dist/bits/avatar/components/avatar-image.svelte +6 -6
  17. package/dist/bits/avatar/components/avatar.svelte +5 -5
  18. package/dist/bits/calendar/calendar.svelte.js +30 -30
  19. package/dist/bits/calendar/components/calendar-cell.svelte +5 -5
  20. package/dist/bits/calendar/components/calendar-day.svelte +3 -3
  21. package/dist/bits/calendar/components/calendar-grid-body.svelte +3 -3
  22. package/dist/bits/calendar/components/calendar-grid-head.svelte +3 -3
  23. package/dist/bits/calendar/components/calendar-grid-row.svelte +3 -3
  24. package/dist/bits/calendar/components/calendar-grid.svelte +3 -3
  25. package/dist/bits/calendar/components/calendar-head-cell.svelte +3 -3
  26. package/dist/bits/calendar/components/calendar-header.svelte +3 -3
  27. package/dist/bits/calendar/components/calendar-heading.svelte +3 -3
  28. package/dist/bits/calendar/components/calendar-month-select.svelte +6 -6
  29. package/dist/bits/calendar/components/calendar-next-button.svelte +3 -3
  30. package/dist/bits/calendar/components/calendar-prev-button.svelte +3 -3
  31. package/dist/bits/calendar/components/calendar-year-select.svelte +6 -6
  32. package/dist/bits/calendar/components/calendar.svelte +24 -24
  33. package/dist/bits/calendar/components/calendar.svelte.d.ts +1 -1
  34. package/dist/bits/checkbox/checkbox.svelte.d.ts +1 -1
  35. package/dist/bits/checkbox/checkbox.svelte.js +7 -7
  36. package/dist/bits/checkbox/components/checkbox-group-label.svelte +3 -3
  37. package/dist/bits/checkbox/components/checkbox-group.svelte +9 -9
  38. package/dist/bits/checkbox/components/checkbox-group.svelte.d.ts +1 -1
  39. package/dist/bits/checkbox/components/checkbox.svelte +11 -11
  40. package/dist/bits/checkbox/components/checkbox.svelte.d.ts +1 -1
  41. package/dist/bits/collapsible/collapsible.svelte.d.ts +2 -0
  42. package/dist/bits/collapsible/collapsible.svelte.js +31 -8
  43. package/dist/bits/collapsible/components/collapsible-content.svelte +15 -7
  44. package/dist/bits/collapsible/components/collapsible-trigger.svelte +4 -4
  45. package/dist/bits/collapsible/components/collapsible.svelte +6 -6
  46. package/dist/bits/collapsible/types.d.ts +12 -3
  47. package/dist/bits/combobox/components/combobox-input.svelte +4 -4
  48. package/dist/bits/combobox/components/combobox-trigger.svelte +3 -3
  49. package/dist/bits/combobox/components/combobox.svelte +12 -12
  50. package/dist/bits/command/command.svelte.js +6 -6
  51. package/dist/bits/command/components/_command-label.svelte +3 -3
  52. package/dist/bits/command/components/command-empty.svelte +4 -4
  53. package/dist/bits/command/components/command-group-heading.svelte +3 -3
  54. package/dist/bits/command/components/command-group-items.svelte +3 -3
  55. package/dist/bits/command/components/command-group.svelte +5 -5
  56. package/dist/bits/command/components/command-input.svelte +5 -5
  57. package/dist/bits/command/components/command-input.svelte.d.ts +1 -1
  58. package/dist/bits/command/components/command-item.svelte +8 -8
  59. package/dist/bits/command/components/command-link-item.svelte +8 -8
  60. package/dist/bits/command/components/command-list.svelte +4 -4
  61. package/dist/bits/command/components/command-loading.svelte +4 -4
  62. package/dist/bits/command/components/command-separator.svelte +4 -4
  63. package/dist/bits/command/components/command-viewport.svelte +3 -3
  64. package/dist/bits/command/components/command.svelte +12 -12
  65. package/dist/bits/command/components/command.svelte.d.ts +1 -1
  66. package/dist/bits/context-menu/components/context-menu-content-static.svelte +5 -5
  67. package/dist/bits/context-menu/components/context-menu-content.svelte +5 -5
  68. package/dist/bits/context-menu/components/context-menu-trigger.svelte +4 -4
  69. package/dist/bits/context-menu/components/context-menu.svelte +5 -5
  70. package/dist/bits/date-field/components/date-field-input.svelte +4 -4
  71. package/dist/bits/date-field/components/date-field-label.svelte +3 -3
  72. package/dist/bits/date-field/components/date-field-segment.svelte +3 -3
  73. package/dist/bits/date-field/components/date-field.svelte +16 -16
  74. package/dist/bits/date-field/date-field.svelte.js +17 -17
  75. package/dist/bits/date-picker/components/date-picker-calendar.svelte +5 -5
  76. package/dist/bits/date-picker/components/date-picker.svelte +32 -32
  77. package/dist/bits/date-range-field/components/date-range-field-input.svelte +4 -4
  78. package/dist/bits/date-range-field/components/date-range-field-label.svelte +3 -3
  79. package/dist/bits/date-range-field/components/date-range-field.svelte +19 -19
  80. package/dist/bits/date-range-field/components/date-range-field.svelte.d.ts +1 -1
  81. package/dist/bits/date-range-field/date-range-field.svelte.js +9 -9
  82. package/dist/bits/date-range-picker/components/date-range-picker-calendar.svelte +3 -3
  83. package/dist/bits/date-range-picker/components/date-range-picker.svelte +37 -37
  84. package/dist/bits/date-range-picker/components/date-range-picker.svelte.d.ts +1 -1
  85. package/dist/bits/dialog/components/dialog-close.svelte +5 -5
  86. package/dist/bits/dialog/components/dialog-content.svelte +3 -3
  87. package/dist/bits/dialog/components/dialog-description.svelte +3 -3
  88. package/dist/bits/dialog/components/dialog-overlay.svelte +3 -3
  89. package/dist/bits/dialog/components/dialog-title.svelte +4 -4
  90. package/dist/bits/dialog/components/dialog-trigger.svelte +4 -4
  91. package/dist/bits/dialog/components/dialog.svelte +4 -4
  92. package/dist/bits/dialog/dialog.svelte.d.ts +1 -1
  93. package/dist/bits/dialog/dialog.svelte.js +4 -4
  94. package/dist/bits/dropdown-menu/components/dropdown-menu-content-static.svelte +5 -5
  95. package/dist/bits/dropdown-menu/components/dropdown-menu-content.svelte +5 -5
  96. package/dist/bits/label/components/label.svelte +3 -3
  97. package/dist/bits/link-preview/components/link-preview-content-static.svelte +5 -5
  98. package/dist/bits/link-preview/components/link-preview-content.svelte +5 -5
  99. package/dist/bits/link-preview/components/link-preview-trigger.svelte +3 -3
  100. package/dist/bits/link-preview/components/link-preview.svelte +6 -6
  101. package/dist/bits/link-preview/link-preview.svelte.js +4 -4
  102. package/dist/bits/menu/components/menu-checkbox-group.svelte +5 -5
  103. package/dist/bits/menu/components/menu-checkbox-group.svelte.d.ts +1 -1
  104. package/dist/bits/menu/components/menu-checkbox-item.svelte +9 -9
  105. package/dist/bits/menu/components/menu-checkbox-item.svelte.d.ts +1 -1
  106. package/dist/bits/menu/components/menu-content-static.svelte +5 -5
  107. package/dist/bits/menu/components/menu-content.svelte +5 -5
  108. package/dist/bits/menu/components/menu-group-heading.svelte +3 -3
  109. package/dist/bits/menu/components/menu-group.svelte +3 -3
  110. package/dist/bits/menu/components/menu-item.svelte +6 -6
  111. package/dist/bits/menu/components/menu-radio-group.svelte +4 -4
  112. package/dist/bits/menu/components/menu-radio-group.svelte.d.ts +1 -1
  113. package/dist/bits/menu/components/menu-radio-item.svelte +7 -7
  114. package/dist/bits/menu/components/menu-separator.svelte +3 -3
  115. package/dist/bits/menu/components/menu-sub-content-static.svelte +5 -5
  116. package/dist/bits/menu/components/menu-sub-content.svelte +5 -5
  117. package/dist/bits/menu/components/menu-sub-trigger.svelte +5 -5
  118. package/dist/bits/menu/components/menu-sub.svelte +3 -3
  119. package/dist/bits/menu/components/menu-trigger.svelte +4 -4
  120. package/dist/bits/menu/components/menu.svelte +5 -5
  121. package/dist/bits/menu/menu.svelte.d.ts +1 -1
  122. package/dist/bits/menu/menu.svelte.js +14 -14
  123. package/dist/bits/menubar/components/menubar-content-static.svelte +8 -8
  124. package/dist/bits/menubar/components/menubar-content.svelte +8 -8
  125. package/dist/bits/menubar/components/menubar-menu.svelte +3 -3
  126. package/dist/bits/menubar/components/menubar-trigger.svelte +4 -4
  127. package/dist/bits/menubar/components/menubar.svelte +6 -6
  128. package/dist/bits/menubar/menubar.svelte.js +5 -5
  129. package/dist/bits/meter/components/meter.svelte +6 -6
  130. package/dist/bits/navigation-menu/components/navigation-menu-content-impl.svelte +3 -3
  131. package/dist/bits/navigation-menu/components/navigation-menu-content.svelte +3 -3
  132. package/dist/bits/navigation-menu/components/navigation-menu-indicator-impl.svelte +3 -3
  133. package/dist/bits/navigation-menu/components/navigation-menu-indicator.svelte +2 -2
  134. package/dist/bits/navigation-menu/components/navigation-menu-item.svelte +5 -5
  135. package/dist/bits/navigation-menu/components/navigation-menu-link.svelte +5 -5
  136. package/dist/bits/navigation-menu/components/navigation-menu-list.svelte +3 -3
  137. package/dist/bits/navigation-menu/components/navigation-menu-sub.svelte +5 -5
  138. package/dist/bits/navigation-menu/components/navigation-menu-sub.svelte.d.ts +1 -1
  139. package/dist/bits/navigation-menu/components/navigation-menu-trigger.svelte +4 -4
  140. package/dist/bits/navigation-menu/components/navigation-menu-viewport.svelte +3 -3
  141. package/dist/bits/navigation-menu/components/navigation-menu.svelte +8 -8
  142. package/dist/bits/navigation-menu/components/navigation-menu.svelte.d.ts +1 -1
  143. package/dist/bits/navigation-menu/navigation-menu.svelte.d.ts +6 -6
  144. package/dist/bits/navigation-menu/navigation-menu.svelte.js +23 -23
  145. package/dist/bits/pagination/components/pagination-next-button.svelte +4 -4
  146. package/dist/bits/pagination/components/pagination-page.svelte +5 -5
  147. package/dist/bits/pagination/components/pagination-prev-button.svelte +4 -4
  148. package/dist/bits/pagination/components/pagination.svelte +9 -9
  149. package/dist/bits/pagination/pagination.svelte.d.ts +1 -1
  150. package/dist/bits/pagination/pagination.svelte.js +2 -2
  151. package/dist/bits/pin-input/components/pin-input-cell.svelte +4 -4
  152. package/dist/bits/pin-input/components/pin-input.svelte +14 -14
  153. package/dist/bits/pin-input/components/pin-input.svelte.d.ts +1 -1
  154. package/dist/bits/pin-input/pin-input.svelte.d.ts +2 -2
  155. package/dist/bits/pin-input/pin-input.svelte.js +5 -5
  156. package/dist/bits/popover/components/popover-close.svelte +3 -3
  157. package/dist/bits/popover/components/popover-content-static.svelte +6 -6
  158. package/dist/bits/popover/components/popover-content.svelte +6 -6
  159. package/dist/bits/popover/components/popover-trigger.svelte +4 -4
  160. package/dist/bits/popover/components/popover.svelte +3 -3
  161. package/dist/bits/popover/popover.svelte.js +4 -4
  162. package/dist/bits/progress/components/progress.svelte +6 -6
  163. package/dist/bits/radio-group/components/radio-group-item.svelte +5 -5
  164. package/dist/bits/radio-group/components/radio-group.svelte +10 -10
  165. package/dist/bits/radio-group/components/radio-group.svelte.d.ts +1 -1
  166. package/dist/bits/radio-group/radio-group.svelte.js +7 -7
  167. package/dist/bits/range-calendar/components/range-calendar-cell.svelte +5 -5
  168. package/dist/bits/range-calendar/components/range-calendar-day.svelte +3 -3
  169. package/dist/bits/range-calendar/components/range-calendar.svelte +26 -26
  170. package/dist/bits/range-calendar/components/range-calendar.svelte.d.ts +1 -1
  171. package/dist/bits/range-calendar/range-calendar.svelte.js +7 -7
  172. package/dist/bits/rating-group/components/rating-group-item.svelte +5 -5
  173. package/dist/bits/rating-group/components/rating-group.svelte +14 -14
  174. package/dist/bits/rating-group/components/rating-group.svelte.d.ts +1 -1
  175. package/dist/bits/rating-group/rating-group.svelte.js +4 -4
  176. package/dist/bits/scroll-area/components/scroll-area-corner-impl.svelte +3 -3
  177. package/dist/bits/scroll-area/components/scroll-area-scrollbar-x.svelte +2 -2
  178. package/dist/bits/scroll-area/components/scroll-area-scrollbar-y.svelte +2 -2
  179. package/dist/bits/scroll-area/components/scroll-area-scrollbar.svelte +4 -4
  180. package/dist/bits/scroll-area/components/scroll-area-thumb-impl.svelte +4 -4
  181. package/dist/bits/scroll-area/components/scroll-area-viewport.svelte +3 -3
  182. package/dist/bits/scroll-area/components/scroll-area.svelte +6 -6
  183. package/dist/bits/scroll-area/scroll-area.svelte.d.ts +2 -2
  184. package/dist/bits/scroll-area/scroll-area.svelte.js +6 -7
  185. package/dist/bits/select/components/select-content-static.svelte +5 -5
  186. package/dist/bits/select/components/select-content.svelte +5 -5
  187. package/dist/bits/select/components/select-group-heading.svelte +3 -3
  188. package/dist/bits/select/components/select-group.svelte +3 -3
  189. package/dist/bits/select/components/select-hidden-input.svelte +2 -2
  190. package/dist/bits/select/components/select-item.svelte +8 -8
  191. package/dist/bits/select/components/select-scroll-down-button.svelte +4 -4
  192. package/dist/bits/select/components/select-scroll-up-button.svelte +4 -4
  193. package/dist/bits/select/components/select-trigger.svelte +3 -3
  194. package/dist/bits/select/components/select-viewport.svelte +3 -3
  195. package/dist/bits/select/components/select.svelte +12 -12
  196. package/dist/bits/select/select.svelte.d.ts +1 -4
  197. package/dist/bits/select/select.svelte.js +17 -26
  198. package/dist/bits/separator/components/separator.svelte +5 -5
  199. package/dist/bits/separator/separator.svelte.d.ts +2 -2
  200. package/dist/bits/separator/separator.svelte.js +4 -4
  201. package/dist/bits/slider/components/slider-range.svelte +3 -3
  202. package/dist/bits/slider/components/slider-thumb-label.svelte +5 -5
  203. package/dist/bits/slider/components/slider-thumb.svelte +5 -5
  204. package/dist/bits/slider/components/slider-tick-label.svelte +5 -5
  205. package/dist/bits/slider/components/slider-tick.svelte +4 -4
  206. package/dist/bits/slider/components/slider.svelte +14 -14
  207. package/dist/bits/slider/components/slider.svelte.d.ts +1 -1
  208. package/dist/bits/slider/slider.svelte.d.ts +16 -16
  209. package/dist/bits/slider/slider.svelte.js +20 -20
  210. package/dist/bits/switch/components/switch-thumb.svelte +3 -3
  211. package/dist/bits/switch/components/switch.svelte +8 -8
  212. package/dist/bits/switch/components/switch.svelte.d.ts +1 -1
  213. package/dist/bits/switch/switch.svelte.js +5 -5
  214. package/dist/bits/tabs/components/tabs-content.svelte +4 -4
  215. package/dist/bits/tabs/components/tabs-list.svelte +3 -3
  216. package/dist/bits/tabs/components/tabs-trigger.svelte +5 -5
  217. package/dist/bits/tabs/components/tabs.svelte +8 -8
  218. package/dist/bits/tabs/components/tabs.svelte.d.ts +1 -1
  219. package/dist/bits/tabs/tabs.svelte.d.ts +5 -5
  220. package/dist/bits/tabs/tabs.svelte.js +11 -11
  221. package/dist/bits/time-field/components/time-field-input.svelte +4 -4
  222. package/dist/bits/time-field/components/time-field-label.svelte +3 -3
  223. package/dist/bits/time-field/components/time-field-segment.svelte +3 -3
  224. package/dist/bits/time-field/components/time-field.svelte +16 -16
  225. package/dist/bits/time-field/time-field.svelte.js +15 -15
  226. package/dist/bits/time-range-field/components/time-range-field-input.svelte +4 -4
  227. package/dist/bits/time-range-field/components/time-range-field-label.svelte +3 -3
  228. package/dist/bits/time-range-field/components/time-range-field.svelte +19 -19
  229. package/dist/bits/time-range-field/components/time-range-field.svelte.d.ts +1 -1
  230. package/dist/bits/time-range-field/time-range-field.svelte.js +7 -7
  231. package/dist/bits/toggle/components/toggle.svelte +5 -5
  232. package/dist/bits/toggle/toggle.svelte.d.ts +0 -1
  233. package/dist/bits/toggle/toggle.svelte.js +5 -10
  234. package/dist/bits/toggle-group/components/toggle-group-item.svelte +5 -5
  235. package/dist/bits/toggle-group/components/toggle-group.svelte +8 -8
  236. package/dist/bits/toggle-group/components/toggle-group.svelte.d.ts +1 -1
  237. package/dist/bits/toggle-group/toggle-group.svelte.d.ts +2 -2
  238. package/dist/bits/toggle-group/toggle-group.svelte.js +7 -7
  239. package/dist/bits/toolbar/components/toolbar-button.svelte +4 -4
  240. package/dist/bits/toolbar/components/toolbar-group-item.svelte +5 -5
  241. package/dist/bits/toolbar/components/toolbar-group.svelte +5 -5
  242. package/dist/bits/toolbar/components/toolbar-group.svelte.d.ts +1 -1
  243. package/dist/bits/toolbar/components/toolbar-link.svelte +3 -3
  244. package/dist/bits/toolbar/components/toolbar.svelte +5 -5
  245. package/dist/bits/toolbar/toolbar.svelte.d.ts +4 -4
  246. package/dist/bits/toolbar/toolbar.svelte.js +11 -11
  247. package/dist/bits/tooltip/components/tooltip-content-static.svelte +5 -5
  248. package/dist/bits/tooltip/components/tooltip-content.svelte +7 -5
  249. package/dist/bits/tooltip/components/tooltip-provider.svelte +7 -7
  250. package/dist/bits/tooltip/components/tooltip-trigger.svelte +4 -4
  251. package/dist/bits/tooltip/components/tooltip.svelte +8 -8
  252. package/dist/bits/tooltip/tooltip.svelte.js +7 -7
  253. package/dist/bits/tooltip/types.d.ts +1 -1
  254. package/dist/bits/utilities/config/bits-config.js +2 -2
  255. package/dist/bits/utilities/config/components/bits-config.svelte +3 -3
  256. package/dist/bits/utilities/config/prop-resolvers.js +2 -2
  257. package/dist/bits/utilities/dismissible-layer/dismissible-layer.svelte +7 -7
  258. package/dist/bits/utilities/dismissible-layer/use-dismissable-layer.svelte.js +4 -3
  259. package/dist/bits/utilities/escape-layer/escape-layer.svelte +4 -4
  260. package/dist/bits/utilities/floating-layer/components/floating-layer-anchor.svelte +3 -3
  261. package/dist/bits/utilities/floating-layer/components/floating-layer-arrow.svelte +3 -3
  262. package/dist/bits/utilities/floating-layer/components/floating-layer-content.svelte +20 -20
  263. package/dist/bits/utilities/floating-layer/use-floating-layer.svelte.d.ts +3 -3
  264. package/dist/bits/utilities/floating-layer/use-floating-layer.svelte.js +9 -9
  265. package/dist/bits/utilities/focus-scope/focus-scope-manager.js +2 -2
  266. package/dist/bits/utilities/focus-scope/focus-scope.svelte +5 -5
  267. package/dist/bits/utilities/presence-layer/presence-layer.svelte +2 -2
  268. package/dist/bits/utilities/text-selection-layer/text-selection-layer.svelte +5 -5
  269. package/dist/index.d.ts +1 -1
  270. package/dist/index.js +1 -1
  271. package/dist/internal/attrs.d.ts +4 -19
  272. package/dist/internal/attrs.js +11 -56
  273. package/dist/internal/body-scroll-lock.svelte.js +5 -5
  274. package/dist/internal/box-auto-reset.svelte.js +2 -2
  275. package/dist/internal/date-time/calendar-helpers.svelte.js +4 -4
  276. package/dist/internal/events.d.ts +0 -6
  277. package/dist/internal/events.js +0 -17
  278. package/dist/internal/floating-svelte/use-floating.svelte.js +2 -2
  279. package/dist/internal/state-machine.js +2 -2
  280. package/package.json +5 -5
@@ -1,18 +1,18 @@
1
1
  import { SvelteMap } from "svelte/reactivity";
2
- import { afterTick, box, onDestroyEffect } from "svelte-toolbelt";
2
+ import { afterTick, boxWith, onDestroyEffect, } from "svelte-toolbelt";
3
3
  import { isIOS } from "./is.js";
4
- import { addEventListener } from "./events.js";
5
4
  import { useId } from "./use-id.js";
6
5
  import { watch } from "runed";
7
6
  import { SharedState } from "./shared-state.svelte.js";
8
7
  import { BROWSER } from "esm-env";
8
+ import { on } from "svelte/events";
9
9
  /** A map of lock ids to their `locked` state. */
10
10
  const lockMap = new SvelteMap();
11
11
  let initialBodyStyle = $state(null);
12
12
  let stopTouchMoveListener = null;
13
13
  let cleanupTimeoutId = null;
14
14
  let isInCleanupTransition = false;
15
- const anyLocked = box.with(() => {
15
+ const anyLocked = boxWith(() => {
16
16
  for (const value of lockMap.values()) {
17
17
  if (value)
18
18
  return true;
@@ -104,7 +104,7 @@ const bodyLockStackCount = new SharedState(() => {
104
104
  }
105
105
  if (isIOS) {
106
106
  // IOS devices are special and require a touchmove listener to prevent scrolling
107
- stopTouchMoveListener = addEventListener(document, "touchmove", (e) => {
107
+ stopTouchMoveListener = on(document, "touchmove", (e) => {
108
108
  if (e.target !== document.documentElement)
109
109
  return;
110
110
  if (e.touches.length > 1)
@@ -163,7 +163,7 @@ export class BodyScrollLock {
163
163
  // capture initial style before this lock is registered
164
164
  this.#countState.ensureInitialStyleCaptured();
165
165
  this.#countState.lockMap.set(this.#id, this.#initialState ?? false);
166
- this.locked = box.with(() => this.#countState.lockMap.get(this.#id) ?? false, (v) => this.#countState.lockMap.set(this.#id, v));
166
+ this.locked = boxWith(() => this.#countState.lockMap.get(this.#id) ?? false, (v) => this.#countState.lockMap.set(this.#id, v));
167
167
  onDestroyEffect(() => {
168
168
  this.#countState.lockMap.delete(this.#id);
169
169
  // if not the last lock, we don't need to do anything
@@ -1,4 +1,4 @@
1
- import { box } from "svelte-toolbelt";
1
+ import { boxWith } from "svelte-toolbelt";
2
2
  import { noop } from "./noop.js";
3
3
  const defaultOptions = {
4
4
  afterMs: 10000,
@@ -26,7 +26,7 @@ export function boxAutoReset(defaultValue, options) {
26
26
  getWindow().clearTimeout(timeout);
27
27
  };
28
28
  });
29
- return box.with(() => value, (v) => {
29
+ return boxWith(() => value, (v) => {
30
30
  value = v;
31
31
  onChange?.(v);
32
32
  if (timeout)
@@ -2,7 +2,7 @@ import { endOfMonth, isSameDay, isSameMonth, startOfMonth, } from "@internationa
2
2
  import { afterTick, getDocument, styleToString, } from "svelte-toolbelt";
3
3
  import { untrack } from "svelte";
4
4
  import { getDaysInMonth, getLastFirstDayOfWeek, getNextLastDayOfWeek, hasTime, isAfter, isBefore, parseAnyDateValue, parseStringToDateValue, toDate, } from "./utils.js";
5
- import { createBitsAttrs, getDataDisabled, getDataInvalid, getDataReadonly, } from "../attrs.js";
5
+ import { createBitsAttrs, boolToEmptyStrOrUndef } from "../attrs.js";
6
6
  import { chunk, isValidIndex } from "../arrays.js";
7
7
  import { isBrowser, isHTMLElement } from "../is.js";
8
8
  import { kbd } from "../kbd.js";
@@ -441,9 +441,9 @@ export function getCalendarElementProps({ fullCalendarLabel, id, isInvalid, disa
441
441
  id,
442
442
  role: "application",
443
443
  "aria-label": fullCalendarLabel,
444
- "data-invalid": getDataInvalid(isInvalid),
445
- "data-disabled": getDataDisabled(disabled),
446
- "data-readonly": getDataReadonly(readonly),
444
+ "data-invalid": boolToEmptyStrOrUndef(isInvalid),
445
+ "data-disabled": boolToEmptyStrOrUndef(disabled),
446
+ "data-readonly": boolToEmptyStrOrUndef(readonly),
447
447
  };
448
448
  }
449
449
  export function pickerOpenFocus(e) {
@@ -1,9 +1,4 @@
1
- import type { Arrayable } from "./types.js";
2
1
  export type EventCallback<E extends Event = Event> = (event: E) => void;
3
- type GeneralEventListener<E = Event> = (evt: E) => unknown;
4
- export declare function addEventListener<E extends keyof WindowEventMap>(target: Window, event: Arrayable<E>, handler: (this: Window, ev: WindowEventMap[E]) => unknown, options?: boolean | AddEventListenerOptions): VoidFunction;
5
- export declare function addEventListener<E extends keyof DocumentEventMap>(target: Document, event: Arrayable<E>, handler: (this: Document, ev: DocumentEventMap[E]) => unknown, options?: boolean | AddEventListenerOptions): VoidFunction;
6
- export declare function addEventListener<E extends keyof HTMLElementEventMap>(target: EventTarget, event: Arrayable<E>, handler: GeneralEventListener<HTMLElementEventMap[E]>, options?: boolean | AddEventListenerOptions): VoidFunction;
7
2
  /**
8
3
  * Creates a typed event dispatcher and listener pair for custom events
9
4
  * @template T - The type of data that will be passed in the event detail
@@ -18,4 +13,3 @@ export declare class CustomEventDispatcher<T = unknown> {
18
13
  dispatch(element: EventTarget, detail?: T): CustomEvent<T>;
19
14
  listen(element: EventTarget, callback: (event: CustomEvent<T>) => void, options?: AddEventListenerOptions): () => void;
20
15
  }
21
- export {};
@@ -1,21 +1,4 @@
1
1
  import { on } from "svelte/events";
2
- /**
3
- * Adds an event listener to the specified target element(s) for the given event(s), and returns a function to remove it.
4
- * @param target The target element(s) to add the event listener to.
5
- * @param event The event(s) to listen for.
6
- * @param handler The function to be called when the event is triggered.
7
- * @param options An optional object that specifies characteristics about the event listener.
8
- * @returns A function that removes the event listener from the target element(s).
9
- */
10
- export function addEventListener(target, event, handler, options) {
11
- const events = Array.isArray(event) ? event : [event];
12
- // Add the event listener to each specified event for the target element(s).
13
- events.forEach((_event) => target.addEventListener(_event, handler, options));
14
- // Return a function that removes the event listener from the target element(s).
15
- return () => {
16
- events.forEach((_event) => target.removeEventListener(_event, handler, options));
17
- };
18
- }
19
2
  /**
20
3
  * Creates a typed event dispatcher and listener pair for custom events
21
4
  * @template T - The type of data that will be passed in the event detail
@@ -1,5 +1,5 @@
1
1
  import { computePosition } from "@floating-ui/dom";
2
- import { box } from "svelte-toolbelt";
2
+ import { simpleBox } from "svelte-toolbelt";
3
3
  import { get, getDPR, roundByDPR } from "./floating-utils.svelte.js";
4
4
  export function useFloating(options) {
5
5
  /** Options */
@@ -15,7 +15,7 @@ export function useFloating(options) {
15
15
  /** State */
16
16
  let x = $state(0);
17
17
  let y = $state(0);
18
- const floating = box(null);
18
+ const floating = simpleBox(null);
19
19
  // svelte-ignore state_referenced_locally
20
20
  let strategy = $state(strategyOption);
21
21
  // svelte-ignore state_referenced_locally
@@ -1,9 +1,9 @@
1
- import { box } from "svelte-toolbelt";
1
+ import { simpleBox } from "svelte-toolbelt";
2
2
  export class StateMachine {
3
3
  state;
4
4
  #machine;
5
5
  constructor(initialState, machine) {
6
- this.state = box(initialState);
6
+ this.state = simpleBox(initialState);
7
7
  this.#machine = machine;
8
8
  this.dispatch = this.dispatch.bind(this);
9
9
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bits-ui",
3
- "version": "2.9.9",
3
+ "version": "2.11.0",
4
4
  "license": "MIT",
5
5
  "repository": "github:huntabyte/bits-ui",
6
6
  "funding": "https://github.com/sponsors/huntabyte",
@@ -20,10 +20,10 @@
20
20
  ],
21
21
  "devDependencies": {
22
22
  "@internationalized/date": "^3.8.2",
23
- "@sveltejs/kit": "^2.31.0",
23
+ "@sveltejs/kit": "^2.42.0",
24
24
  "@sveltejs/package": "2.5.0",
25
25
  "@sveltejs/vite-plugin-svelte": "^6.2.0",
26
- "@types/node": "^20.19.0",
26
+ "@types/node": "^20.19.16",
27
27
  "@types/resize-observer-browser": "^0.1.11",
28
28
  "csstype": "^3.1.3",
29
29
  "jsdom": "^24.1.3",
@@ -41,8 +41,8 @@
41
41
  "@floating-ui/core": "^1.7.1",
42
42
  "@floating-ui/dom": "^1.7.1",
43
43
  "esm-env": "^1.1.2",
44
- "runed": "^0.29.1",
45
- "svelte-toolbelt": "^0.9.3",
44
+ "runed": "^0.31.1",
45
+ "svelte-toolbelt": "^0.10.4",
46
46
  "tabbable": "^6.2.0"
47
47
  },
48
48
  "peerDependencies": {