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,9 +1,10 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getAttrs, getCtx } 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: { grid }
6
+ elements: { grid },
7
+ getAttrs
7
8
  } = getCtx();
8
9
  const attrs = getAttrs("grid");
9
10
  $:
@@ -1,6 +1,7 @@
1
- <script>import { 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
+ const { getAttrs } = getCtx();
4
5
  const attrs = getAttrs("head-cell");
5
6
  </script>
6
7
 
@@ -1,6 +1,7 @@
1
- <script>import { 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
+ const { getAttrs } = getCtx();
4
5
  const attrs = getAttrs("header");
5
6
  </script>
6
7
 
@@ -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
  export let asChild = false;
4
4
  export let el = void 0;
5
5
  const {
6
6
  elements: { heading },
7
- states: { headingValue }
7
+ states: { headingValue },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  const attrs = getAttrs("heading");
10
11
  $:
@@ -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: { nextButton }
7
+ elements: { nextButton },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  const attrs = getAttrs("next-button");
10
11
  const dispatch = createDispatcher();
@@ -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: { prevButton }
7
+ elements: { prevButton },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  const attrs = getAttrs("prev-button");
10
11
  const dispatch = createDispatcher();
@@ -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 { onMount } from "svelte";
5
5
  import { handleCalendarInitialFocus } from "../../../internal/focus.js";
@@ -42,7 +42,8 @@ const {
42
42
  endValue
43
43
  },
44
44
  updateOption,
45
- ids
45
+ ids,
46
+ getAttrs
46
47
  } = setCtx({
47
48
  defaultPlaceholder: placeholder,
48
49
  defaultValue: value,
@@ -1,8 +1,9 @@
1
1
  /// <reference types="svelte" />
2
2
  import { type CreateRangeCalendarProps } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "day" | "header" | "root" | "cell" | "grid" | "heading" | "prev-button" | "next-button" | "grid-head" | "head-cell" | "grid-body" | "grid-row") => Record<string, string>;
3
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
4
4
  export declare function setCtx(props: CreateRangeCalendarProps): {
5
5
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
6
+ getAttrs: (part: "day" | "header" | "root" | "cell" | "grid" | "heading" | "prev-button" | "next-button" | "grid-head" | "head-cell" | "grid-body" | "grid-row") => Record<string, string>;
6
7
  elements: {
7
8
  calendar: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<string>, import("svelte/store").Readable<boolean>, import("svelte/store").Writable<string>, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown">, ([$fullCalendarLabel, $isInvalid, $calendarId, $disabled, $readonly]: [string, boolean, string, boolean, boolean]) => {
8
9
  id: string;
@@ -134,135 +135,5 @@ export declare function setCtx(props: CreateRangeCalendarProps): {
134
135
  accessibleHeading: string;
135
136
  }>;
136
137
  };
137
- export declare function getCtx(): {
138
- elements: {
139
- calendar: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<string>, import("svelte/store").Readable<boolean>, import("svelte/store").Writable<string>, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown">, ([$fullCalendarLabel, $isInvalid, $calendarId, $disabled, $readonly]: [string, boolean, string, boolean, boolean]) => {
140
- id: string;
141
- role: string;
142
- 'aria-label': string;
143
- 'data-invalid': string | undefined;
144
- 'data-disabled': string | undefined;
145
- 'data-readonly': string | undefined;
146
- }, string>;
147
- heading: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Writable<boolean>], import("svelte/action").Action<any, any, Record<never, any>>, ([$disabled]: [boolean]) => {
148
- 'aria-hidden': boolean;
149
- 'data-disabled': string | undefined;
150
- }, string>;
151
- grid: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Writable<boolean>, import("svelte/store").Writable<boolean>], import("svelte/action").Action<any, any, Record<never, any>>, ([$readonly, $disabled]: [boolean, boolean]) => {
152
- tabindex: number;
153
- role: string;
154
- 'aria-readonly': "true" | undefined;
155
- 'aria-disabled': "true" | undefined;
156
- 'data-readonly': string | undefined;
157
- 'data-disabled': string | undefined;
158
- }, string>;
159
- cell: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>, import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>, import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>, import("svelte/store").Readable<{
160
- start: import("@internationalized/date").DateValue;
161
- end: import("@internationalized/date").DateValue;
162
- } | null>, import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>, import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>, {
163
- set: (this: void, value: import("@internationalized/date").DateValue) => void;
164
- update: (this: void, updater: import("svelte/store").Updater<import("@internationalized/date").DateValue>) => void;
165
- subscribe: (this: void, run: import("svelte/store").Subscriber<import("@internationalized/date").DateValue>, invalidate?: import("svelte/store").Invalidator<import("@internationalized/date").DateValue> | undefined) => import("svelte/store").Unsubscriber;
166
- add: (duration: import("@internationalized/date").DateTimeDuration | import("@internationalized/date").DateDuration) => void;
167
- subtract: (duration: import("@internationalized/date").DateTimeDuration | import("@internationalized/date").DateDuration) => void;
168
- setDate: (fields: import("@internationalized/date").DateFields | (import("@internationalized/date").DateFields & import("@internationalized/date").TimeFields), disambiguation?: import("@internationalized/date").Disambiguation | undefined) => void;
169
- reset: () => void;
170
- toWritable: () => {
171
- set: (this: void, value: import("@internationalized/date").DateValue) => void;
172
- subscribe: (this: void, run: import("svelte/store").Subscriber<import("@internationalized/date").DateValue>, invalidate?: import("svelte/store").Invalidator<import("@internationalized/date").DateValue> | undefined) => import("svelte/store").Unsubscriber;
173
- update: (this: void, updater: import("svelte/store").Updater<import("@internationalized/date").DateValue>) => void;
174
- };
175
- nextPage: (amount: number) => void;
176
- prevPage: (amount: number) => void;
177
- }, import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"click" | "focusin" | "mouseenter">, ([$isSelected, $isSelectionEnd, $isSelectionStart, $highlightedRange, $isDateDisabled, $isDateUnavailable, $placeholder, $isOutsideVisibleMonths,]: [(date: import("@internationalized/date").DateValue) => boolean, (date: import("@internationalized/date").DateValue) => boolean, (date: import("@internationalized/date").DateValue) => boolean, {
178
- start: import("@internationalized/date").DateValue;
179
- end: import("@internationalized/date").DateValue;
180
- } | null, (date: import("@internationalized/date").DateValue) => boolean, (date: import("@internationalized/date").DateValue) => boolean, import("@internationalized/date").DateValue, (date: import("@internationalized/date").DateValue) => boolean]) => (cellValue: import("@internationalized/date").DateValue, monthValue: import("@internationalized/date").DateValue) => {
181
- readonly role: "button";
182
- readonly 'aria-label': string;
183
- readonly 'aria-selected': true | undefined;
184
- readonly 'aria-disabled': true | undefined;
185
- readonly 'data-selected': true | undefined;
186
- readonly 'data-selection-start': true | undefined;
187
- readonly 'data-selection-end': true | undefined;
188
- readonly 'data-value': string;
189
- readonly 'data-disabled': "" | undefined;
190
- readonly 'data-unavailable': "" | undefined;
191
- readonly 'data-today': "" | undefined;
192
- readonly 'data-outside-month': "" | undefined;
193
- readonly 'data-outside-visible-months': "" | undefined;
194
- readonly 'data-focused': "" | undefined;
195
- readonly 'data-highlighted': "" | undefined;
196
- readonly tabindex: 0 | -1 | undefined;
197
- }, string>;
198
- nextButton: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"click">, ([$isNextButtonDisabled]: [boolean]) => {
199
- role: string;
200
- 'aria-label': string;
201
- 'aria-disabled': "true" | undefined;
202
- disabled: boolean | undefined;
203
- 'data-disabled': string | undefined;
204
- }, string>;
205
- prevButton: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"click">, ([$isPrevButtonDisabled]: [boolean]) => {
206
- role: string;
207
- 'aria-label': string;
208
- 'aria-disabled': "true" | undefined;
209
- disabled: boolean | undefined;
210
- 'data-disabled': string | undefined;
211
- }, string>;
212
- };
213
- states: {
214
- placeholder: {
215
- set: (this: void, value: import("@internationalized/date").DateValue) => void;
216
- subscribe: (this: void, run: import("svelte/store").Subscriber<import("@internationalized/date").DateValue>, invalidate?: import("svelte/store").Invalidator<import("@internationalized/date").DateValue> | undefined) => import("svelte/store").Unsubscriber;
217
- update: (this: void, updater: import("svelte/store").Updater<import("@internationalized/date").DateValue>) => void;
218
- };
219
- months: import("svelte/store").Writable<import("@melt-ui/svelte").Month<import("@internationalized/date").DateValue>[]>;
220
- weekdays: import("svelte/store").Readable<string[]>;
221
- headingValue: import("svelte/store").Readable<string>;
222
- value: {
223
- update: (updater: import("svelte/store").Updater<import("@melt-ui/svelte").DateRange>, sideEffect?: ((newValue: import("@melt-ui/svelte").DateRange) => void) | undefined) => void;
224
- set: (this: void, value: import("@melt-ui/svelte").DateRange) => void;
225
- subscribe(this: void, run: import("svelte/store").Subscriber<import("@melt-ui/svelte").DateRange>, invalidate?: import("svelte/store").Invalidator<import("@melt-ui/svelte").DateRange> | undefined): import("svelte/store").Unsubscriber;
226
- };
227
- startValue: import("svelte/store").Writable<import("@internationalized/date").DateValue | undefined>;
228
- endValue: import("svelte/store").Writable<import("@internationalized/date").DateValue | undefined>;
229
- };
230
- helpers: {
231
- nextPage: () => void;
232
- prevPage: () => void;
233
- nextYear: () => void;
234
- prevYear: () => void;
235
- setYear: (year: number) => void;
236
- setMonth: (month: number) => void;
237
- isDateDisabled: import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>;
238
- isDateUnavailable: import("svelte/store").Readable<(date: import("@internationalized/date").DateValue) => boolean>;
239
- };
240
- options: import("@melt-ui/svelte/internal/helpers").ToWritableStores<{
241
- disabled: boolean;
242
- onValueChange?: import("@melt-ui/svelte/internal/helpers").ChangeFn<import("@melt-ui/svelte").DateRange> | undefined;
243
- defaultValue: import("@melt-ui/svelte").DateRange;
244
- ids?: Partial<{
245
- calendar: string;
246
- accessibleHeading: string;
247
- }> | undefined;
248
- numberOfMonths: number;
249
- preventDeselect: boolean;
250
- minValue: import("@internationalized/date").DateValue | undefined;
251
- maxValue: import("@internationalized/date").DateValue | undefined;
252
- defaultPlaceholder?: import("@internationalized/date").DateValue | undefined;
253
- onPlaceholderChange?: import("@melt-ui/svelte/internal/helpers").ChangeFn<import("@internationalized/date").DateValue> | undefined;
254
- pagedNavigation: boolean;
255
- weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6;
256
- weekdayFormat: "narrow" | "short" | "long";
257
- isDateDisabled: import("@melt-ui/svelte").Matcher | undefined;
258
- isDateUnavailable: import("@melt-ui/svelte").Matcher | undefined;
259
- fixedWeeks: boolean;
260
- calendarLabel: string;
261
- locale: string;
262
- readonly: boolean;
263
- }>;
264
- ids: import("@melt-ui/svelte/internal/helpers").ToWritableStores<{
265
- calendar: string;
266
- accessibleHeading: string;
267
- }>;
268
- };
138
+ export declare function getCtx(): GetReturn;
139
+ export {};
@@ -1,24 +1,28 @@
1
1
  import { createRangeCalendar } from "@melt-ui/svelte";
2
2
  import { getContext, setContext } from "svelte";
3
3
  import { removeUndefined, getOptionUpdater, createBitAttrs } from "../../internal/index.js";
4
- const NAME = "calendar";
5
- const PARTS = [
6
- "root",
7
- "prev-button",
8
- "next-button",
9
- "heading",
10
- "grid",
11
- "day",
12
- "header",
13
- "grid-head",
14
- "head-cell",
15
- "grid-body",
16
- "cell",
17
- "grid-row"
18
- ];
19
- export const getAttrs = createBitAttrs(NAME, PARTS);
4
+ function getRangeCalendarData() {
5
+ const NAME = "calendar";
6
+ const PARTS = [
7
+ "root",
8
+ "prev-button",
9
+ "next-button",
10
+ "heading",
11
+ "grid",
12
+ "day",
13
+ "header",
14
+ "grid-head",
15
+ "head-cell",
16
+ "grid-body",
17
+ "cell",
18
+ "grid-row"
19
+ ];
20
+ return { NAME, PARTS };
21
+ }
20
22
  export function setCtx(props) {
21
- const rangeCalendar = createRangeCalendar(removeUndefined(props));
23
+ const { NAME, PARTS } = getRangeCalendarData();
24
+ const getAttrs = createBitAttrs(NAME, PARTS);
25
+ const rangeCalendar = { ...createRangeCalendar(removeUndefined(props)), getAttrs };
22
26
  setContext(NAME, rangeCalendar);
23
27
  return {
24
28
  ...rangeCalendar,
@@ -26,5 +30,6 @@ export function setCtx(props) {
26
30
  };
27
31
  }
28
32
  export function getCtx() {
33
+ const { NAME } = getRangeCalendarData();
29
34
  return getContext(NAME);
30
35
  }
@@ -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 asChild = false;
4
4
  export let el = void 0;
5
5
  export let size = 8;
6
6
  const {
7
- elements: { arrow }
7
+ elements: { arrow },
8
+ getAttrs
8
9
  } = setArrow(size);
9
10
  const attrs = getAttrs("arrow");
10
11
  $:
@@ -1,6 +1,6 @@
1
1
  <script>import { createDispatcher } from "../../../internal/events.js";
2
2
  import { melt } from "@melt-ui/svelte";
3
- import { getCtx, getAttrs, updatePositioning } from "../ctx.js";
3
+ import { getCtx, updatePositioning } from "../ctx.js";
4
4
  export let transition = void 0;
5
5
  export let transitionConfig = void 0;
6
6
  export let inTransition = void 0;
@@ -22,7 +22,8 @@ export let el = void 0;
22
22
  const {
23
23
  elements: { menu },
24
24
  states: { open },
25
- ids
25
+ ids,
26
+ getAttrs
26
27
  } = getCtx();
27
28
  const dispatch = createDispatcher();
28
29
  const attrs = getAttrs("content");
@@ -1,8 +1,8 @@
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 asChild = false;
4
4
  export let el = void 0;
5
- const { group, id } = setGroupCtx();
5
+ const { group, id, getAttrs } = setGroupCtx();
6
6
  const attrs = getAttrs("group");
7
7
  $:
8
8
  builder = $group(id);
@@ -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 asChild = false;
4
4
  export let el = void 0;
5
5
  const {
6
6
  elements: { hiddenInput },
7
- options: { disabled }
7
+ options: { disabled },
8
+ getAttrs
8
9
  } = getCtx();
9
10
  $:
10
11
  attrs = {
@@ -1,7 +1,7 @@
1
- <script>import { getAttrs, getItemIndicator } from "../ctx.js";
1
+ <script>import { getItemIndicator } from "../ctx.js";
2
2
  export let asChild = false;
3
3
  export let el = void 0;
4
- const { isSelected, value } = getItemIndicator();
4
+ const { isSelected, value, getAttrs } = getItemIndicator();
5
5
  const attrs = getAttrs("indicator");
6
6
  </script>
7
7
 
@@ -1,5 +1,5 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setItemCtx, getAttrs } from "../ctx.js";
2
+ import { setItemCtx } from "../ctx.js";
3
3
  import { createDispatcher } from "../../../internal/events.js";
4
4
  export let value;
5
5
  export let disabled = void 0;
@@ -7,7 +7,8 @@ export let label = void 0;
7
7
  export let asChild = false;
8
8
  export let el = void 0;
9
9
  const {
10
- elements: { option: item }
10
+ elements: { option: item },
11
+ getAttrs
11
12
  } = setItemCtx(value);
12
13
  const dispatch = createDispatcher();
13
14
  const attrs = getAttrs("item");
@@ -1,9 +1,9 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { getGroupLabel, getAttrs, getCtx } from "../ctx.js";
2
+ import { getGroupLabel, getCtx } from "../ctx.js";
3
3
  export let asChild = false;
4
4
  export let id = void 0;
5
5
  export let el = void 0;
6
- const { ids } = getCtx();
6
+ const { ids, getAttrs } = getCtx();
7
7
  const { groupLabel, id: groupId } = getGroupLabel();
8
8
  const attrs = getAttrs("label");
9
9
  $:
@@ -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 asChild = false;
5
5
  export let id = void 0;
6
6
  export let el = void 0;
7
7
  const {
8
8
  elements: { trigger },
9
- ids
9
+ ids,
10
+ getAttrs
10
11
  } = getCtx();
11
12
  const dispatch = createDispatcher();
12
13
  const attrs = getAttrs("trigger");
@@ -1,9 +1,10 @@
1
- <script>import { getCtx, getAttrs } from "../ctx.js";
1
+ <script>import { getCtx } from "../ctx.js";
2
2
  export let placeholder = "";
3
3
  export let asChild = false;
4
4
  export let el = void 0;
5
5
  const {
6
- states: { selectedLabel }
6
+ states: { selectedLabel },
7
+ getAttrs
7
8
  } = getCtx();
8
9
  const attrs = getAttrs("value");
9
10
  $:
@@ -1,9 +1,8 @@
1
1
  /// <reference types="svelte" />
2
- import { type CreateSelectProps, type Select as SelectReturn } from "@melt-ui/svelte";
2
+ import { type CreateSelectProps } from "@melt-ui/svelte";
3
3
  import type { Writable } from "svelte/store";
4
4
  import type { FloatingProps } from "../floating/_types.js";
5
- export declare const getAttrs: (part: "content" | "value" | "arrow" | "label" | "group" | "input" | "item" | "trigger" | "indicator") => Record<string, string>;
6
- type GetReturn = SelectReturn;
5
+ type GetReturn = Omit<ReturnType<typeof setCtx>, "updateOption">;
7
6
  export declare function getCtx(): GetReturn;
8
7
  type Items<T> = {
9
8
  value: T;
@@ -14,6 +13,7 @@ type Props<T = unknown, M extends boolean = false> = CreateSelectProps<T, M> & {
14
13
  };
15
14
  export declare function setCtx<T = unknown, M extends boolean = false>(props: Props<T, M>): {
16
15
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
16
+ getAttrs: (part: "content" | "value" | "arrow" | "label" | "group" | "input" | "item" | "trigger" | "indicator") => Record<string, string>;
17
17
  elements: {
18
18
  group: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
19
19
  role: string;
@@ -132,6 +132,7 @@ export declare function setGroupCtx(): {
132
132
  'aria-labelledby': string;
133
133
  }, string>;
134
134
  id: string;
135
+ getAttrs: (part: "content" | "value" | "arrow" | "label" | "group" | "input" | "item" | "trigger" | "indicator") => Record<string, string>;
135
136
  };
136
137
  export declare function setItemCtx(value: unknown): GetReturn;
137
138
  export declare function getGroupLabel(): {
@@ -139,10 +140,12 @@ export declare function getGroupLabel(): {
139
140
  id: string;
140
141
  }, string>;
141
142
  id: string;
143
+ getAttrs: (part: "content" | "value" | "arrow" | "label" | "group" | "input" | "item" | "trigger" | "indicator") => Record<string, string>;
142
144
  };
143
145
  export declare function getItemIndicator(): {
144
146
  value: unknown;
145
147
  isSelected: import("svelte/store").Readable<(value: unknown) => boolean>;
148
+ getAttrs: (part: "content" | "value" | "arrow" | "label" | "group" | "input" | "item" | "trigger" | "indicator") => Record<string, string>;
146
149
  };
147
150
  export declare function setArrow(size?: number): GetReturn;
148
151
  export declare function updatePositioning(props: FloatingProps): void;
@@ -2,28 +2,38 @@ import { createSelect } from "@melt-ui/svelte";
2
2
  import { getContext, setContext } from "svelte";
3
3
  import { createBitAttrs, generateId, getOptionUpdater, removeUndefined } from "../../internal/index.js";
4
4
  import { getPositioningUpdater } from "../floating/helpers.js";
5
- const NAME = "select";
6
- const GROUP_NAME = "select-group";
7
- const ITEM_NAME = "select-item";
8
- const PARTS = [
9
- "arrow",
10
- "content",
11
- "group",
12
- "item",
13
- "indicator",
14
- "input",
15
- "label",
16
- "trigger",
17
- "value"
18
- ];
19
- export const getAttrs = createBitAttrs(NAME, PARTS);
5
+ function getSelectData() {
6
+ const NAME = "select";
7
+ const GROUP_NAME = "select-group";
8
+ const ITEM_NAME = "select-item";
9
+ const PARTS = [
10
+ "arrow",
11
+ "content",
12
+ "group",
13
+ "item",
14
+ "indicator",
15
+ "input",
16
+ "label",
17
+ "trigger",
18
+ "value"
19
+ ];
20
+ return {
21
+ NAME,
22
+ GROUP_NAME,
23
+ ITEM_NAME,
24
+ PARTS
25
+ };
26
+ }
20
27
  export function getCtx() {
28
+ const { NAME } = getSelectData();
21
29
  return getContext(NAME);
22
30
  }
23
31
  export function setCtx(
24
32
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
25
33
  props) {
26
- const select = createSelect(removeUndefined(props));
34
+ const { NAME, PARTS } = getSelectData();
35
+ const getAttrs = createBitAttrs(NAME, PARTS);
36
+ const select = { ...createSelect(removeUndefined(props)), getAttrs };
27
37
  setContext(NAME, select);
28
38
  return {
29
39
  ...select,
@@ -31,27 +41,32 @@ props) {
31
41
  };
32
42
  }
33
43
  export function setGroupCtx() {
44
+ const { GROUP_NAME } = getSelectData();
34
45
  const id = generateId();
35
46
  setContext(GROUP_NAME, id);
36
- const { elements: { group } } = getCtx();
37
- return { group, id };
47
+ const { elements: { group }, getAttrs } = getCtx();
48
+ return { group, id, getAttrs };
38
49
  }
39
50
  export function setItemCtx(value) {
51
+ const { ITEM_NAME } = getSelectData();
40
52
  const select = getCtx();
41
53
  setContext(ITEM_NAME, value);
42
54
  return select;
43
55
  }
44
56
  export function getGroupLabel() {
57
+ const { GROUP_NAME } = getSelectData();
45
58
  const id = getContext(GROUP_NAME);
46
- const { elements: { groupLabel } } = getCtx();
47
- return { groupLabel, id };
59
+ const { elements: { groupLabel }, getAttrs } = getCtx();
60
+ return { groupLabel, id, getAttrs };
48
61
  }
49
62
  export function getItemIndicator() {
50
- const { helpers: { isSelected } } = getCtx();
63
+ const { ITEM_NAME } = getSelectData();
64
+ const { helpers: { isSelected }, getAttrs } = getCtx();
51
65
  const value = getContext(ITEM_NAME);
52
66
  return {
53
67
  value,
54
- isSelected
68
+ isSelected,
69
+ getAttrs
55
70
  };
56
71
  }
57
72
  export function setArrow(size = 8) {
@@ -59,12 +74,12 @@ export function setArrow(size = 8) {
59
74
  select.options.arrowSize?.set(size);
60
75
  return select;
61
76
  }
62
- const defaultPlacement = {
63
- side: "bottom",
64
- align: "center",
65
- sameWidth: true
66
- };
67
77
  export function updatePositioning(props) {
78
+ const defaultPlacement = {
79
+ side: "bottom",
80
+ align: "center",
81
+ sameWidth: true
82
+ };
68
83
  const withDefaults = { ...defaultPlacement, ...props };
69
84
  const { options: { positioning } } = getCtx();
70
85
  const updater = getPositioningUpdater(positioning);
@@ -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 orientation = "horizontal";
4
4
  export let decorative = true;
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({ orientation, decorative });
11
12
  const attrs = getAttrs("root");
12
13
  $:
@@ -1,8 +1,8 @@
1
1
  /// <reference types="svelte" />
2
2
  import { type CreateSeparatorProps } from "@melt-ui/svelte";
3
- export declare const getAttrs: (part: "root") => Record<string, string>;
4
3
  export declare function setCtx(props: CreateSeparatorProps): {
5
4
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
5
+ getAttrs: (part: "root") => Record<string, string>;
6
6
  elements: {
7
7
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Writable<import("@melt-ui/svelte/internal/types").Orientation>, import("svelte/store").Writable<boolean>], import("svelte/action").Action<any, any, Record<never, any>>, ([$orientation, $decorative]: [import("@melt-ui/svelte/internal/types").Orientation, boolean]) => {
8
8
  role: string;
@@ -1,10 +1,17 @@
1
1
  import { createSeparator } from "@melt-ui/svelte";
2
2
  import { createBitAttrs, getOptionUpdater, removeUndefined } from "../../internal/index.js";
3
- const NAME = "separator";
4
- const PARTS = ["root"];
5
- export const getAttrs = createBitAttrs(NAME, PARTS);
3
+ function getSeparatorData() {
4
+ const NAME = "separator";
5
+ const PARTS = ["root"];
6
+ return {
7
+ NAME,
8
+ PARTS
9
+ };
10
+ }
6
11
  export function setCtx(props) {
7
- const separator = createSeparator(removeUndefined(props));
12
+ const { NAME, PARTS } = getSeparatorData();
13
+ const getAttrs = createBitAttrs(NAME, PARTS);
14
+ const separator = { ...createSeparator(removeUndefined(props)), getAttrs };
8
15
  return {
9
16
  ...separator,
10
17
  updateOption: getOptionUpdater(separator.options)