bits-ui 0.13.0 → 0.13.1

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 (220) hide show
  1. package/dist/bits/accordion/components/accordion-content.svelte +7 -2
  2. package/dist/bits/accordion/components/accordion-header.svelte +3 -2
  3. package/dist/bits/accordion/components/accordion-item.svelte +6 -2
  4. package/dist/bits/accordion/components/accordion-trigger.svelte +6 -2
  5. package/dist/bits/accordion/components/accordion.svelte +3 -2
  6. package/dist/bits/accordion/ctx.d.ts +244 -38
  7. package/dist/bits/accordion/ctx.js +31 -17
  8. package/dist/bits/alert-dialog/components/alert-dialog-action.svelte +3 -2
  9. package/dist/bits/alert-dialog/components/alert-dialog-cancel.svelte +3 -2
  10. package/dist/bits/alert-dialog/components/alert-dialog-content.svelte +3 -2
  11. package/dist/bits/alert-dialog/components/alert-dialog-description.svelte +3 -2
  12. package/dist/bits/alert-dialog/components/alert-dialog-overlay.svelte +3 -2
  13. package/dist/bits/alert-dialog/components/alert-dialog-portal.svelte +3 -2
  14. package/dist/bits/alert-dialog/components/alert-dialog-title.svelte +3 -2
  15. package/dist/bits/alert-dialog/components/alert-dialog-trigger.svelte +3 -2
  16. package/dist/bits/alert-dialog/ctx.d.ts +84 -3
  17. package/dist/bits/alert-dialog/ctx.js +25 -14
  18. package/dist/bits/avatar/components/avatar-fallback.svelte +3 -2
  19. package/dist/bits/avatar/components/avatar-image.svelte +4 -2
  20. package/dist/bits/avatar/components/avatar.svelte +3 -2
  21. package/dist/bits/avatar/ctx.d.ts +8 -2
  22. package/dist/bits/avatar/ctx.js +13 -4
  23. package/dist/bits/calendar/components/calendar-cell.svelte +3 -2
  24. package/dist/bits/calendar/components/calendar-day.svelte +3 -2
  25. package/dist/bits/calendar/components/calendar-grid-body.svelte +2 -1
  26. package/dist/bits/calendar/components/calendar-grid-head.svelte +6 -2
  27. package/dist/bits/calendar/components/calendar-grid-row.svelte +2 -1
  28. package/dist/bits/calendar/components/calendar-grid.svelte +3 -2
  29. package/dist/bits/calendar/components/calendar-head-cell.svelte +2 -1
  30. package/dist/bits/calendar/components/calendar-header.svelte +2 -1
  31. package/dist/bits/calendar/components/calendar-heading.svelte +3 -2
  32. package/dist/bits/calendar/components/calendar-next-button.svelte +3 -2
  33. package/dist/bits/calendar/components/calendar-prev-button.svelte +3 -2
  34. package/dist/bits/calendar/components/calendar.svelte +3 -2
  35. package/dist/bits/calendar/ctx.d.ts +8 -120
  36. package/dist/bits/calendar/ctx.js +22 -17
  37. package/dist/bits/checkbox/components/checkbox-indicator.svelte +3 -2
  38. package/dist/bits/checkbox/components/checkbox.svelte +3 -2
  39. package/dist/bits/checkbox/ctx.d.ts +9 -3
  40. package/dist/bits/checkbox/ctx.js +13 -5
  41. package/dist/bits/collapsible/components/collapsible-content.svelte +3 -2
  42. package/dist/bits/collapsible/components/collapsible-trigger.svelte +3 -2
  43. package/dist/bits/collapsible/components/collapsible.svelte +3 -2
  44. package/dist/bits/collapsible/ctx.d.ts +9 -3
  45. package/dist/bits/collapsible/ctx.js +12 -4
  46. package/dist/bits/context-menu/components/context-menu-content.svelte +3 -2
  47. package/dist/bits/context-menu/components/context-menu-trigger.svelte +3 -2
  48. package/dist/bits/context-menu/ctx.d.ts +9 -3
  49. package/dist/bits/context-menu/ctx.js +30 -22
  50. package/dist/bits/date-field/components/date-field-input.svelte +3 -2
  51. package/dist/bits/date-field/components/date-field-label.svelte +3 -2
  52. package/dist/bits/date-field/components/date-field-segment.svelte +3 -2
  53. package/dist/bits/date-field/ctx.d.ts +8 -191
  54. package/dist/bits/date-field/ctx.js +12 -4
  55. package/dist/bits/date-picker/components/date-picker-arrow.svelte +3 -2
  56. package/dist/bits/date-picker/components/date-picker-calendar.svelte +3 -2
  57. package/dist/bits/date-picker/components/date-picker-cell.svelte +3 -2
  58. package/dist/bits/date-picker/components/date-picker-close.svelte +3 -2
  59. package/dist/bits/date-picker/components/date-picker-content.svelte +3 -2
  60. package/dist/bits/date-picker/components/date-picker-day.svelte +3 -2
  61. package/dist/bits/date-picker/components/date-picker-grid.svelte +3 -2
  62. package/dist/bits/date-picker/components/date-picker-heading.svelte +3 -2
  63. package/dist/bits/date-picker/components/date-picker-input.svelte +3 -2
  64. package/dist/bits/date-picker/components/date-picker-label.svelte +3 -2
  65. package/dist/bits/date-picker/components/date-picker-next-button.svelte +3 -2
  66. package/dist/bits/date-picker/components/date-picker-prev-button.svelte +3 -2
  67. package/dist/bits/date-picker/components/date-picker-segment.svelte +3 -2
  68. package/dist/bits/date-picker/components/date-picker-trigger.svelte +3 -2
  69. package/dist/bits/date-picker/ctx.d.ts +6 -4
  70. package/dist/bits/date-picker/ctx.js +29 -12
  71. package/dist/bits/date-range-field/components/date-range-field-input.svelte +3 -2
  72. package/dist/bits/date-range-field/components/date-range-field-label.svelte +3 -2
  73. package/dist/bits/date-range-field/components/date-range-field-segment.svelte +3 -2
  74. package/dist/bits/date-range-field/ctx.d.ts +4 -307
  75. package/dist/bits/date-range-field/ctx.js +8 -7
  76. package/dist/bits/date-range-picker/components/date-range-picker-arrow.svelte +3 -2
  77. package/dist/bits/date-range-picker/components/date-range-picker-calendar.svelte +3 -2
  78. package/dist/bits/date-range-picker/components/date-range-picker-cell.svelte +3 -2
  79. package/dist/bits/date-range-picker/components/date-range-picker-close.svelte +3 -2
  80. package/dist/bits/date-range-picker/components/date-range-picker-content.svelte +3 -2
  81. package/dist/bits/date-range-picker/components/date-range-picker-day.svelte +3 -2
  82. package/dist/bits/date-range-picker/components/date-range-picker-grid.svelte +3 -2
  83. package/dist/bits/date-range-picker/components/date-range-picker-heading.svelte +3 -2
  84. package/dist/bits/date-range-picker/components/date-range-picker-input.svelte +3 -2
  85. package/dist/bits/date-range-picker/components/date-range-picker-label.svelte +3 -2
  86. package/dist/bits/date-range-picker/components/date-range-picker-next-button.svelte +3 -2
  87. package/dist/bits/date-range-picker/components/date-range-picker-prev-button.svelte +3 -2
  88. package/dist/bits/date-range-picker/components/date-range-picker-segment.svelte +3 -2
  89. package/dist/bits/date-range-picker/components/date-range-picker-trigger.svelte +3 -2
  90. package/dist/bits/date-range-picker/ctx.d.ts +6 -4
  91. package/dist/bits/date-range-picker/ctx.js +29 -12
  92. package/dist/bits/dialog/components/dialog-close.svelte +3 -2
  93. package/dist/bits/dialog/components/dialog-content.svelte +3 -2
  94. package/dist/bits/dialog/components/dialog-description.svelte +3 -2
  95. package/dist/bits/dialog/components/dialog-overlay.svelte +3 -2
  96. package/dist/bits/dialog/components/dialog-portal.svelte +3 -2
  97. package/dist/bits/dialog/components/dialog-title.svelte +3 -2
  98. package/dist/bits/dialog/components/dialog-trigger.svelte +3 -2
  99. package/dist/bits/dialog/ctx.d.ts +8 -3
  100. package/dist/bits/dialog/ctx.js +20 -4
  101. package/dist/bits/floating/helpers.js +10 -10
  102. package/dist/bits/label/components/label.svelte +2 -1
  103. package/dist/bits/label/ctx.d.ts +4 -1
  104. package/dist/bits/label/ctx.js +9 -3
  105. package/dist/bits/link-preview/components/link-preview-arrow.svelte +3 -2
  106. package/dist/bits/link-preview/components/link-preview-content.svelte +3 -2
  107. package/dist/bits/link-preview/components/link-preview-trigger.svelte +3 -2
  108. package/dist/bits/link-preview/ctx.d.ts +10 -4
  109. package/dist/bits/link-preview/ctx.js +24 -13
  110. package/dist/bits/menu/components/menu-arrow.svelte +3 -2
  111. package/dist/bits/menu/components/menu-checkbox-indicator.svelte +2 -1
  112. package/dist/bits/menu/components/menu-checkbox-item.svelte +3 -2
  113. package/dist/bits/menu/components/menu-content.svelte +3 -2
  114. package/dist/bits/menu/components/menu-group.svelte +2 -2
  115. package/dist/bits/menu/components/menu-item.svelte +3 -2
  116. package/dist/bits/menu/components/menu-label.svelte +2 -2
  117. package/dist/bits/menu/components/menu-radio-group.svelte +3 -2
  118. package/dist/bits/menu/components/menu-radio-indicator.svelte +6 -2
  119. package/dist/bits/menu/components/menu-radio-item.svelte +3 -2
  120. package/dist/bits/menu/components/menu-separator.svelte +3 -2
  121. package/dist/bits/menu/components/menu-sub-content.svelte +3 -2
  122. package/dist/bits/menu/components/menu-sub-trigger.svelte +3 -2
  123. package/dist/bits/menu/components/menu-trigger.svelte +3 -2
  124. package/dist/bits/menu/ctx.d.ts +96 -18
  125. package/dist/bits/menu/ctx.js +82 -46
  126. package/dist/bits/menubar/components/menubar-trigger.svelte +3 -2
  127. package/dist/bits/menubar/components/menubar.svelte +3 -2
  128. package/dist/bits/menubar/ctx.d.ts +12 -6
  129. package/dist/bits/menubar/ctx.js +39 -25
  130. package/dist/bits/pagination/components/pagination-next-button.svelte +3 -2
  131. package/dist/bits/pagination/components/pagination-page.svelte +3 -2
  132. package/dist/bits/pagination/components/pagination-prev-button.svelte +3 -2
  133. package/dist/bits/pagination/components/pagination.svelte +3 -2
  134. package/dist/bits/pagination/ctx.d.ts +9 -3
  135. package/dist/bits/pagination/ctx.js +12 -4
  136. package/dist/bits/pin-input/components/pin-input-hidden-input.svelte +3 -2
  137. package/dist/bits/pin-input/components/pin-input-input.svelte +3 -2
  138. package/dist/bits/pin-input/components/pin-input.svelte +3 -2
  139. package/dist/bits/pin-input/ctx.d.ts +9 -3
  140. package/dist/bits/pin-input/ctx.js +12 -4
  141. package/dist/bits/popover/components/popover-arrow.svelte +3 -2
  142. package/dist/bits/popover/components/popover-close.svelte +3 -2
  143. package/dist/bits/popover/components/popover-content.svelte +3 -2
  144. package/dist/bits/popover/components/popover-trigger.svelte +3 -2
  145. package/dist/bits/popover/ctx.d.ts +10 -4
  146. package/dist/bits/popover/ctx.js +22 -11
  147. package/dist/bits/progress/components/progress.svelte +3 -2
  148. package/dist/bits/progress/ctx.d.ts +1 -1
  149. package/dist/bits/progress/ctx.js +11 -4
  150. package/dist/bits/radio-group/components/radio-group-input.svelte +3 -2
  151. package/dist/bits/radio-group/components/radio-group-item-indicator.svelte +6 -2
  152. package/dist/bits/radio-group/components/radio-group-item.svelte +3 -2
  153. package/dist/bits/radio-group/components/radio-group.svelte +3 -2
  154. package/dist/bits/radio-group/ctx.d.ts +65 -8
  155. package/dist/bits/radio-group/ctx.js +18 -7
  156. package/dist/bits/range-calendar/components/range-calendar-cell.svelte +3 -2
  157. package/dist/bits/range-calendar/components/range-calendar-day.svelte +3 -2
  158. package/dist/bits/range-calendar/components/range-calendar-grid-body.svelte +2 -1
  159. package/dist/bits/range-calendar/components/range-calendar-grid-head.svelte +2 -1
  160. package/dist/bits/range-calendar/components/range-calendar-grid-row.svelte +2 -1
  161. package/dist/bits/range-calendar/components/range-calendar-grid.svelte +3 -2
  162. package/dist/bits/range-calendar/components/range-calendar-head-cell.svelte +2 -1
  163. package/dist/bits/range-calendar/components/range-calendar-header.svelte +2 -1
  164. package/dist/bits/range-calendar/components/range-calendar-heading.svelte +3 -2
  165. package/dist/bits/range-calendar/components/range-calendar-next-button.svelte +3 -2
  166. package/dist/bits/range-calendar/components/range-calendar-prev-button.svelte +3 -2
  167. package/dist/bits/range-calendar/components/range-calendar.svelte +3 -2
  168. package/dist/bits/range-calendar/ctx.d.ts +4 -133
  169. package/dist/bits/range-calendar/ctx.js +22 -17
  170. package/dist/bits/select/components/select-arrow.svelte +3 -2
  171. package/dist/bits/select/components/select-content.svelte +3 -2
  172. package/dist/bits/select/components/select-group.svelte +2 -2
  173. package/dist/bits/select/components/select-input.svelte +3 -2
  174. package/dist/bits/select/components/select-item-indicator.svelte +2 -2
  175. package/dist/bits/select/components/select-item.svelte +3 -2
  176. package/dist/bits/select/components/select-label.svelte +2 -2
  177. package/dist/bits/select/components/select-trigger.svelte +3 -2
  178. package/dist/bits/select/components/select-value.svelte +3 -2
  179. package/dist/bits/select/ctx.d.ts +6 -3
  180. package/dist/bits/select/ctx.js +42 -27
  181. package/dist/bits/separator/components/separator.svelte +3 -2
  182. package/dist/bits/separator/ctx.d.ts +1 -1
  183. package/dist/bits/separator/ctx.js +11 -4
  184. package/dist/bits/slider/components/slider-input.svelte +3 -2
  185. package/dist/bits/slider/components/slider-range.svelte +3 -2
  186. package/dist/bits/slider/components/slider-thumb.svelte +3 -2
  187. package/dist/bits/slider/components/slider-tick.svelte +3 -2
  188. package/dist/bits/slider/components/slider.svelte +3 -2
  189. package/dist/bits/slider/ctx.d.ts +5 -3
  190. package/dist/bits/slider/ctx.js +12 -4
  191. package/dist/bits/switch/components/switch-thumb.svelte +3 -2
  192. package/dist/bits/switch/components/switch.svelte +3 -2
  193. package/dist/bits/switch/ctx.d.ts +5 -3
  194. package/dist/bits/switch/ctx.js +12 -4
  195. package/dist/bits/tabs/components/tabs-content.svelte +3 -2
  196. package/dist/bits/tabs/components/tabs-list.svelte +3 -2
  197. package/dist/bits/tabs/components/tabs-trigger.svelte +3 -2
  198. package/dist/bits/tabs/components/tabs.svelte +3 -2
  199. package/dist/bits/tabs/ctx.d.ts +5 -3
  200. package/dist/bits/tabs/ctx.js +12 -4
  201. package/dist/bits/toggle/components/toggle.svelte +3 -2
  202. package/dist/bits/toggle/ctx.d.ts +5 -3
  203. package/dist/bits/toggle/ctx.js +12 -4
  204. package/dist/bits/toggle-group/components/toggle-group-item.svelte +3 -2
  205. package/dist/bits/toggle-group/components/toggle-group.svelte +3 -2
  206. package/dist/bits/toggle-group/ctx.d.ts +3 -3
  207. package/dist/bits/toggle-group/ctx.js +12 -4
  208. package/dist/bits/toolbar/components/toolbar-button.svelte +3 -2
  209. package/dist/bits/toolbar/components/toolbar-group-item.svelte +3 -2
  210. package/dist/bits/toolbar/components/toolbar-group.svelte +3 -2
  211. package/dist/bits/toolbar/components/toolbar-link.svelte +3 -2
  212. package/dist/bits/toolbar/components/toolbar.svelte +3 -2
  213. package/dist/bits/toolbar/ctx.d.ts +8 -4
  214. package/dist/bits/toolbar/ctx.js +18 -7
  215. package/dist/bits/tooltip/components/tooltip-arrow.svelte +3 -2
  216. package/dist/bits/tooltip/components/tooltip-content.svelte +3 -2
  217. package/dist/bits/tooltip/components/tooltip-trigger.svelte +3 -2
  218. package/dist/bits/tooltip/ctx.d.ts +6 -4
  219. package/dist/bits/tooltip/ctx.js +25 -14
  220. package/package.json +1 -1
@@ -1,8 +1,9 @@
1
- <script>import { getCtx, getAttrs } from "../ctx.js";
1
+ <script>import { getCtx } from "../ctx.js";
2
2
  import { srOnlyStyles } from "../../../internal/style.js";
3
3
  export let el = void 0;
4
4
  const {
5
- states: { value }
5
+ states: { value },
6
+ getAttrs
6
7
  } = getCtx();
7
8
  function getValue(value2) {
8
9
  if (value2.length === 1) {
@@ -1,9 +1,10 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getCtx, getAttrs } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  export let asChild = false;
4
4
  export let el = void 0;
5
5
  const {
6
- elements: { range }
6
+ elements: { range },
7
+ getAttrs
7
8
  } = getCtx();
8
9
  const attrs = getAttrs("range");
9
10
  $:
@@ -1,10 +1,11 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getCtx, getAttrs } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let asChild = false;
5
5
  export let el = void 0;
6
6
  const {
7
- elements: { thumb }
7
+ elements: { thumb },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  const dispatch = createDispatcher();
10
11
  const attrs = getAttrs("thumb");
@@ -1,9 +1,10 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getCtx, getAttrs } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  export let asChild = false;
4
4
  export let el = void 0;
5
5
  const {
6
- elements: { tick }
6
+ elements: { tick },
7
+ getAttrs
7
8
  } = getCtx();
8
9
  const attrs = getAttrs("tick");
9
10
  $:
@@ -1,5 +1,5 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setCtx, getAttrs } from "../ctx.js";
2
+ import { setCtx } from "../ctx.js";
3
3
  export let disabled = void 0;
4
4
  export let min = void 0;
5
5
  export let max = void 0;
@@ -12,7 +12,8 @@ export let el = void 0;
12
12
  const {
13
13
  elements: { root },
14
14
  states: { value: localValue, ticks },
15
- updateOption
15
+ updateOption,
16
+ getAttrs
16
17
  } = setCtx({
17
18
  disabled,
18
19
  min,
@@ -1,8 +1,9 @@
1
1
  /// <reference types="svelte" />
2
- import { type CreateSliderProps, type Slider as SliderReturn } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "input" | "root" | "range" | "thumb" | "tick") => Record<string, string>;
2
+ import { type CreateSliderProps } from "@melt-ui/svelte";
3
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
4
4
  export declare function setCtx(props: CreateSliderProps): {
5
5
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
6
+ getAttrs: (part: "input" | "root" | "range" | "thumb" | "tick") => Record<string, string>;
6
7
  elements: {
7
8
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Writable<boolean>, import("svelte/store").Writable<import("@melt-ui/svelte").SliderOrientation>, import("svelte/store").Writable<"ltr" | "rtl">], import("svelte/action").Action<any, any, Record<never, any>>, ([$disabled, $orientation, $dir]: [boolean, import("@melt-ui/svelte").SliderOrientation, "ltr" | "rtl"]) => {
8
9
  dir: "ltr" | "rtl";
@@ -65,4 +66,5 @@ export declare function setCtx(props: CreateSliderProps): {
65
66
  disabled: boolean;
66
67
  }, "defaultValue" | "value" | "onValueChange">>;
67
68
  };
68
- export declare function getCtx(): SliderReturn;
69
+ export declare function getCtx(): GetReturn;
70
+ export {};
@@ -1,11 +1,18 @@
1
1
  import { createBitAttrs, getOptionUpdater, removeUndefined } from "../../internal/index.js";
2
2
  import { createSlider } from "@melt-ui/svelte";
3
3
  import { getContext, setContext } from "svelte";
4
- const NAME = "slider";
5
- const PARTS = ["root", "input", "range", "thumb", "tick"];
6
- export const getAttrs = createBitAttrs(NAME, PARTS);
4
+ function getSliderData() {
5
+ const NAME = "slider";
6
+ const PARTS = ["root", "input", "range", "thumb", "tick"];
7
+ return {
8
+ NAME,
9
+ PARTS
10
+ };
11
+ }
7
12
  export function setCtx(props) {
8
- const slider = createSlider(removeUndefined(props));
13
+ const { NAME, PARTS } = getSliderData();
14
+ const getAttrs = createBitAttrs(NAME, PARTS);
15
+ const slider = { ...createSlider(removeUndefined(props)), getAttrs };
9
16
  setContext(NAME, slider);
10
17
  return {
11
18
  ...slider,
@@ -13,5 +20,6 @@ export function setCtx(props) {
13
20
  };
14
21
  }
15
22
  export function getCtx() {
23
+ const { NAME } = getSliderData();
16
24
  return getContext(NAME);
17
25
  }
@@ -1,8 +1,9 @@
1
- <script>import { getCtx, getAttrs } from "../ctx.js";
1
+ <script>import { getCtx } from "../ctx.js";
2
2
  export let asChild = false;
3
3
  export let el = void 0;
4
4
  const {
5
- states: { checked }
5
+ states: { checked },
6
+ getAttrs
6
7
  } = getCtx();
7
8
  $:
8
9
  attrs = {
@@ -1,5 +1,5 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setCtx, getAttrs } from "../ctx.js";
2
+ import { setCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  import SwitchInput from "./switch-input.svelte";
5
5
  export let checked = void 0;
@@ -15,7 +15,8 @@ export let el = void 0;
15
15
  const {
16
16
  elements: { root },
17
17
  states: { checked: localChecked },
18
- updateOption
18
+ updateOption,
19
+ getAttrs
19
20
  } = setCtx({
20
21
  disabled,
21
22
  name,
@@ -1,8 +1,9 @@
1
1
  /// <reference types="svelte" />
2
- import { type CreateSwitchProps, type Switch as SwitchReturn } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "input" | "root" | "thumb") => Record<string, string>;
2
+ import { type CreateSwitchProps } from "@melt-ui/svelte";
3
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
4
4
  export declare function setCtx(props: CreateSwitchProps): {
5
5
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
6
+ getAttrs: (part: "input" | "root" | "thumb") => Record<string, string>;
6
7
  elements: {
7
8
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
8
9
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
@@ -51,4 +52,5 @@ export declare function setCtx(props: CreateSwitchProps): {
51
52
  value: string;
52
53
  }, "checked">>;
53
54
  };
54
- export declare function getCtx(): SwitchReturn;
55
+ export declare function getCtx(): GetReturn;
56
+ export {};
@@ -1,11 +1,18 @@
1
1
  import { createSwitch } from "@melt-ui/svelte";
2
2
  import { getContext, setContext } from "svelte";
3
3
  import { createBitAttrs, getOptionUpdater, removeUndefined } from "../../internal/index.js";
4
- const NAME = "switch";
5
- const PARTS = ["root", "input", "thumb"];
6
- export const getAttrs = createBitAttrs(NAME, PARTS);
4
+ function getSwitchData() {
5
+ const NAME = "switch";
6
+ const PARTS = ["root", "input", "thumb"];
7
+ return {
8
+ NAME,
9
+ PARTS
10
+ };
11
+ }
7
12
  export function setCtx(props) {
8
- const Switch = createSwitch(removeUndefined(props));
13
+ const { NAME, PARTS } = getSwitchData();
14
+ const getAttrs = createBitAttrs(NAME, PARTS);
15
+ const Switch = { ...createSwitch(removeUndefined(props)), getAttrs };
9
16
  setContext(NAME, Switch);
10
17
  return {
11
18
  ...Switch,
@@ -13,5 +20,6 @@ export function setCtx(props) {
13
20
  };
14
21
  }
15
22
  export function getCtx() {
23
+ const { NAME } = getSwitchData();
16
24
  return getContext(NAME);
17
25
  }
@@ -1,10 +1,11 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getCtx, getAttrs } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  export let value;
4
4
  export let asChild = false;
5
5
  export let el = void 0;
6
6
  const {
7
- elements: { content }
7
+ elements: { content },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  const attrs = getAttrs("content");
10
11
  $:
@@ -1,9 +1,10 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getCtx, getAttrs } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  export let asChild = false;
4
4
  export let el = void 0;
5
5
  const {
6
- elements: { list }
6
+ elements: { list },
7
+ getAttrs
7
8
  } = getCtx();
8
9
  const attrs = getAttrs("list");
9
10
  $:
@@ -1,12 +1,13 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getCtx, getAttrs } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let value;
5
5
  export let disabled = void 0;
6
6
  export let asChild = false;
7
7
  export let el = void 0;
8
8
  const {
9
- elements: { trigger }
9
+ elements: { trigger },
10
+ getAttrs
10
11
  } = getCtx();
11
12
  const dispatch = createDispatcher();
12
13
  const attrs = getAttrs("trigger");
@@ -1,5 +1,5 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setCtx, getAttrs } from "../ctx.js";
2
+ import { setCtx } from "../ctx.js";
3
3
  export let orientation = void 0;
4
4
  export let activateOnFocus = void 0;
5
5
  export let loop = void 0;
@@ -11,7 +11,8 @@ export let el = void 0;
11
11
  const {
12
12
  elements: { root },
13
13
  states: { value: localValue },
14
- updateOption
14
+ updateOption,
15
+ getAttrs
15
16
  } = setCtx({
16
17
  orientation,
17
18
  activateOnFocus,
@@ -1,8 +1,9 @@
1
1
  /// <reference types="svelte" />
2
- import { type CreateTabsProps, type Tabs as TabsReturn } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "content" | "list" | "root" | "trigger") => Record<string, string>;
2
+ import { type CreateTabsProps } from "@melt-ui/svelte";
3
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
4
4
  export declare function setCtx(props: CreateTabsProps): {
5
5
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
6
+ getAttrs: (part: "content" | "list" | "root" | "trigger") => Record<string, string>;
6
7
  elements: {
7
8
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Writable<import("@melt-ui/svelte/internal/types").Orientation>, import("svelte/action").Action<any, any, Record<never, any>>, ($orientation: import("@melt-ui/svelte/internal/types").Orientation) => {
8
9
  'data-orientation': import("@melt-ui/svelte/internal/types").Orientation;
@@ -54,4 +55,5 @@ export declare function setCtx(props: CreateTabsProps): {
54
55
  autoSet: boolean;
55
56
  }, "defaultValue" | "value" | "onValueChange" | "autoSet">>;
56
57
  };
57
- export declare function getCtx(): TabsReturn;
58
+ export declare function getCtx(): GetReturn;
59
+ export {};
@@ -1,11 +1,18 @@
1
1
  import { createTabs } from "@melt-ui/svelte";
2
2
  import { createBitAttrs, getOptionUpdater, removeUndefined } from "../../internal/index.js";
3
3
  import { getContext, setContext } from "svelte";
4
- const NAME = "tabs";
5
- const PARTS = ["root", "content", "list", "trigger"];
6
- export const getAttrs = createBitAttrs(NAME, PARTS);
4
+ function getTabsData() {
5
+ const NAME = "tabs";
6
+ const PARTS = ["root", "content", "list", "trigger"];
7
+ return {
8
+ NAME,
9
+ PARTS
10
+ };
11
+ }
7
12
  export function setCtx(props) {
8
- const tabs = createTabs(removeUndefined(props));
13
+ const { NAME, PARTS } = getTabsData();
14
+ const getAttrs = createBitAttrs(NAME, PARTS);
15
+ const tabs = { ...createTabs(removeUndefined(props)), getAttrs };
9
16
  setContext(NAME, tabs);
10
17
  return {
11
18
  ...tabs,
@@ -13,5 +20,6 @@ export function setCtx(props) {
13
20
  };
14
21
  }
15
22
  export function getCtx() {
23
+ const { NAME } = getTabsData();
16
24
  return getContext(NAME);
17
25
  }
@@ -1,5 +1,5 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setCtx, getAttrs } from "../ctx.js";
2
+ import { setCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let disabled = void 0;
5
5
  export let pressed = void 0;
@@ -9,7 +9,8 @@ export let el = void 0;
9
9
  const {
10
10
  elements: { root },
11
11
  states: { pressed: localPressed },
12
- updateOption
12
+ updateOption,
13
+ getAttrs
13
14
  } = setCtx({
14
15
  disabled,
15
16
  defaultPressed: pressed,
@@ -1,8 +1,9 @@
1
1
  /// <reference types="svelte" />
2
- import { type CreateToggleProps, type Toggle as ToggleReturn } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "input" | "root") => Record<string, string>;
2
+ import { type CreateToggleProps } from "@melt-ui/svelte";
3
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
4
4
  export declare function setCtx(props: CreateToggleProps): {
5
5
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
6
+ getAttrs: (part: "input" | "root") => Record<string, string>;
6
7
  elements: {
7
8
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
8
9
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
@@ -30,4 +31,5 @@ export declare function setCtx(props: CreateToggleProps): {
30
31
  onPressedChange?: import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined;
31
32
  }, "pressed">>;
32
33
  };
33
- export declare function getCtx(): ToggleReturn;
34
+ export declare function getCtx(): GetReturn;
35
+ export {};
@@ -1,11 +1,18 @@
1
1
  import { createBitAttrs, getOptionUpdater, removeUndefined } from "../../internal/index.js";
2
2
  import { createToggle } from "@melt-ui/svelte";
3
3
  import { getContext, setContext } from "svelte";
4
- const NAME = "toggle";
5
- const PARTS = ["root", "input"];
6
- export const getAttrs = createBitAttrs(NAME, PARTS);
4
+ function getToggleData() {
5
+ const NAME = "toggle";
6
+ const PARTS = ["root", "input"];
7
+ return {
8
+ NAME,
9
+ PARTS
10
+ };
11
+ }
7
12
  export function setCtx(props) {
8
- const toggle = createToggle(removeUndefined(props));
13
+ const { NAME, PARTS } = getToggleData();
14
+ const getAttrs = createBitAttrs(NAME, PARTS);
15
+ const toggle = { ...createToggle(removeUndefined(props)), getAttrs };
9
16
  setContext(NAME, toggle);
10
17
  return {
11
18
  ...toggle,
@@ -13,5 +20,6 @@ export function setCtx(props) {
13
20
  };
14
21
  }
15
22
  export function getCtx() {
23
+ const { NAME } = getToggleData();
16
24
  return getContext(NAME);
17
25
  }
@@ -1,12 +1,13 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getCtx, getAttrs } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal";
4
4
  export let value;
5
5
  export let disabled = false;
6
6
  export let asChild = false;
7
7
  export let el = void 0;
8
8
  const {
9
- elements: { item }
9
+ elements: { item },
10
+ getAttrs
10
11
  } = getCtx();
11
12
  const dispatch = createDispatcher();
12
13
  const attrs = getAttrs("item");
@@ -1,5 +1,5 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setCtx, getAttrs } from "../ctx.js";
2
+ import { setCtx } from "../ctx.js";
3
3
  export let type = "single";
4
4
  export let disabled = void 0;
5
5
  export let loop = void 0;
@@ -11,7 +11,8 @@ export let el = void 0;
11
11
  const {
12
12
  elements: { root },
13
13
  states: { value: localValue },
14
- updateOption
14
+ updateOption,
15
+ getAttrs
15
16
  } = setCtx({
16
17
  disabled,
17
18
  type,
@@ -1,9 +1,9 @@
1
1
  /// <reference types="svelte" />
2
- import { type CreateToggleGroupProps, type ToggleGroup as ToggleGroupReturn } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "root" | "item") => Record<string, string>;
4
- type GetReturn = ToggleGroupReturn;
2
+ import { type CreateToggleGroupProps } from "@melt-ui/svelte";
3
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
5
4
  export declare function setCtx<T extends "single" | "multiple">(props: CreateToggleGroupProps<T>): {
6
5
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
6
+ getAttrs: (part: "root" | "item") => Record<string, string>;
7
7
  elements: {
8
8
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Writable<import("@melt-ui/svelte/internal/types").Orientation>, import("svelte/action").Action<any, any, Record<never, any>>, ($orientation: import("@melt-ui/svelte/internal/types").Orientation) => {
9
9
  readonly role: "group";
@@ -1,11 +1,18 @@
1
1
  import { createBitAttrs, getOptionUpdater, removeUndefined } from "../../internal/index.js";
2
2
  import { createToggleGroup } from "@melt-ui/svelte";
3
3
  import { getContext, setContext } from "svelte";
4
- const NAME = "toggle-group";
5
- const PARTS = ["root", "item"];
6
- export const getAttrs = createBitAttrs(NAME, PARTS);
4
+ function getToggleGroupData() {
5
+ const NAME = "toggle-group";
6
+ const PARTS = ["root", "item"];
7
+ return {
8
+ NAME,
9
+ PARTS
10
+ };
11
+ }
7
12
  export function setCtx(props) {
8
- const toggleGroup = createToggleGroup(removeUndefined(props));
13
+ const { NAME, PARTS } = getToggleGroupData();
14
+ const getAttrs = createBitAttrs(NAME, PARTS);
15
+ const toggleGroup = { ...createToggleGroup(removeUndefined(props)), getAttrs };
9
16
  setContext(NAME, toggleGroup);
10
17
  return {
11
18
  ...toggleGroup,
@@ -13,5 +20,6 @@ export function setCtx(props) {
13
20
  };
14
21
  }
15
22
  export function getCtx() {
23
+ const { NAME } = getToggleGroupData();
16
24
  return getContext(NAME);
17
25
  }
@@ -1,10 +1,11 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getAttrs, getCtx } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let asChild = false;
5
5
  export let el = void 0;
6
6
  const {
7
- elements: { button }
7
+ elements: { button },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  const dispatch = createDispatcher();
10
11
  const attrs = getAttrs("button");
@@ -1,12 +1,13 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getGroupCtx, getAttrs } from "../ctx.js";
2
+ import { getGroupCtx } from "../ctx.js";
3
3
  import { createDispatcher, disabledAttrs } from "../../../internal/index.js";
4
4
  export let value;
5
5
  export let disabled = false;
6
6
  export let asChild = false;
7
7
  export let el = void 0;
8
8
  const {
9
- elements: { item }
9
+ elements: { item },
10
+ getAttrs
10
11
  } = getGroupCtx();
11
12
  const dispatch = createDispatcher();
12
13
  $:
@@ -1,5 +1,5 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setGroupCtx, getAttrs } from "../ctx.js";
2
+ import { setGroupCtx } from "../ctx.js";
3
3
  export let type = "single";
4
4
  export let disabled = void 0;
5
5
  export let value = void 0;
@@ -9,7 +9,8 @@ export let el = void 0;
9
9
  const {
10
10
  elements: { group },
11
11
  states: { value: localValue },
12
- updateOption
12
+ updateOption,
13
+ getAttrs
13
14
  } = setGroupCtx({
14
15
  disabled,
15
16
  type,
@@ -1,10 +1,11 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getAttrs, getCtx } from "../ctx.js";
2
+ import { getCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let asChild = false;
5
5
  export let el = void 0;
6
6
  const {
7
- elements: { link }
7
+ elements: { link },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  const dispatch = createDispatcher();
10
11
  const attrs = getAttrs("link");
@@ -1,12 +1,13 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setCtx, getAttrs } from "../ctx.js";
2
+ import { setCtx } from "../ctx.js";
3
3
  export let loop = true;
4
4
  export let orientation = void 0;
5
5
  export let asChild = false;
6
6
  export let el = void 0;
7
7
  const {
8
8
  elements: { root },
9
- updateOption
9
+ updateOption,
10
+ getAttrs
10
11
  } = setCtx({
11
12
  loop,
12
13
  orientation
@@ -1,8 +1,10 @@
1
1
  /// <reference types="svelte" />
2
- import { type Toolbar as ToolbarReturn, type ToolbarGroup as ToolbarGroupReturn, type CreateToolbarProps as ToolbarProps, type CreateToolbarGroupProps as ToolbarGroupProps } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "link" | "group" | "button" | "root" | "group-item") => Record<string, string>;
2
+ import { type CreateToolbarProps as ToolbarProps, type CreateToolbarGroupProps as ToolbarGroupProps } from "@melt-ui/svelte";
3
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
4
+ type GetGroupReturn = Omit<ReturnType<typeof setGroupCtx>, "updateOption">;
4
5
  export declare function setCtx(props: ToolbarProps): {
5
6
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
7
+ getAttrs: (part: "link" | "group" | "button" | "root" | "group-item") => Record<string, string>;
6
8
  elements: {
7
9
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Writable<import("@melt-ui/svelte/internal/types").Orientation>, import("svelte/action").Action<any, any, Record<never, any>>, ($orientation: import("@melt-ui/svelte/internal/types").Orientation) => {
8
10
  role: string;
@@ -75,6 +77,7 @@ export declare function setCtx(props: ToolbarProps): {
75
77
  };
76
78
  export declare function setGroupCtx<T extends "single" | "multiple">(props: ToolbarGroupProps<T>): {
77
79
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
80
+ getAttrs: (part: "link" | "group" | "button" | "root" | "group-item") => Record<string, string>;
78
81
  elements: {
79
82
  group: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Writable<import("@melt-ui/svelte/internal/types").Orientation>, import("svelte/action").Action<any, any, Record<never, any>>, ($orientation: import("@melt-ui/svelte/internal/types").Orientation) => {
80
83
  readonly role: "group";
@@ -116,5 +119,6 @@ export declare function setGroupCtx<T extends "single" | "multiple">(props: Tool
116
119
  disabled: boolean;
117
120
  }>;
118
121
  };
119
- export declare function getCtx(): ToolbarReturn;
120
- export declare function getGroupCtx(): ToolbarGroupReturn;
122
+ export declare function getCtx(): GetReturn;
123
+ export declare function getGroupCtx(): GetGroupReturn;
124
+ export {};
@@ -1,12 +1,20 @@
1
1
  import { createBitAttrs, getOptionUpdater, removeUndefined } from "../../internal/index.js";
2
2
  import { createToolbar } from "@melt-ui/svelte";
3
3
  import { getContext, setContext } from "svelte";
4
- const NAME = "toolbar";
5
- const GROUP_NAME = "toolbar-group";
6
- const PARTS = ["root", "button", "link", "group", "group-item"];
7
- export const getAttrs = createBitAttrs(NAME, PARTS);
4
+ function getToolbarData() {
5
+ const NAME = "toolbar";
6
+ const GROUP_NAME = "toolbar-group";
7
+ const PARTS = ["root", "button", "link", "group", "group-item"];
8
+ return {
9
+ NAME,
10
+ GROUP_NAME,
11
+ PARTS
12
+ };
13
+ }
8
14
  export function setCtx(props) {
9
- const toolbar = createToolbar(removeUndefined(props));
15
+ const { NAME, PARTS } = getToolbarData();
16
+ const getAttrs = createBitAttrs(NAME, PARTS);
17
+ const toolbar = { ...createToolbar(removeUndefined(props)), getAttrs };
10
18
  setContext(NAME, toolbar);
11
19
  return {
12
20
  ...toolbar,
@@ -14,8 +22,9 @@ export function setCtx(props) {
14
22
  };
15
23
  }
16
24
  export function setGroupCtx(props) {
17
- const { builders: { createToolbarGroup } } = getCtx();
18
- const group = createToolbarGroup(removeUndefined(props));
25
+ const { builders: { createToolbarGroup }, getAttrs } = getCtx();
26
+ const group = { ...createToolbarGroup(removeUndefined(props)), getAttrs };
27
+ const { GROUP_NAME } = getToolbarData();
19
28
  setContext(GROUP_NAME, group);
20
29
  return {
21
30
  ...group,
@@ -23,8 +32,10 @@ export function setGroupCtx(props) {
23
32
  };
24
33
  }
25
34
  export function getCtx() {
35
+ const { NAME } = getToolbarData();
26
36
  return getContext(NAME);
27
37
  }
28
38
  export function getGroupCtx() {
39
+ const { GROUP_NAME } = getToolbarData();
29
40
  return getContext(GROUP_NAME);
30
41
  }
@@ -1,10 +1,11 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setArrow, getAttrs } from "../ctx.js";
2
+ import { setArrow } from "../ctx.js";
3
3
  export let size = 8;
4
4
  export let asChild = false;
5
5
  export let el = void 0;
6
6
  const {
7
- elements: { arrow }
7
+ elements: { arrow },
8
+ getAttrs
8
9
  } = setArrow(size);
9
10
  const attrs = getAttrs("arrow");
10
11
  $: