bits-ui 0.9.0 → 0.9.2

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 (55) hide show
  1. package/dist/bits/accordion/components/Accordion.svelte.d.ts +1 -1
  2. package/dist/bits/accordion/ctx.d.ts +1 -1
  3. package/dist/bits/alert-dialog/components/AlertDialog.svelte +11 -32
  4. package/dist/bits/alert-dialog/components/AlertDialog.svelte.d.ts +7 -3
  5. package/dist/bits/alert-dialog/components/AlertDialogContent.svelte +7 -18
  6. package/dist/bits/alert-dialog/components/AlertDialogContent.svelte.d.ts +1 -1
  7. package/dist/bits/alert-dialog/components/AlertDialogOverlay.svelte +7 -7
  8. package/dist/bits/alert-dialog/components/AlertDialogTrigger.svelte.d.ts +0 -1
  9. package/dist/bits/alert-dialog/ctx.d.ts +17 -21
  10. package/dist/bits/alert-dialog/ctx.js +1 -5
  11. package/dist/bits/checkbox/components/Checkbox.svelte +1 -0
  12. package/dist/bits/context-menu/components/ContextMenu.svelte.d.ts +6 -2
  13. package/dist/bits/context-menu/components/ContextMenuSub.svelte.d.ts +6 -2
  14. package/dist/bits/context-menu/components/ContextMenuTrigger.svelte.d.ts +1 -0
  15. package/dist/bits/context-menu/ctx.d.ts +37 -36
  16. package/dist/bits/dialog/components/Dialog.svelte +11 -35
  17. package/dist/bits/dialog/components/Dialog.svelte.d.ts +8 -4
  18. package/dist/bits/dialog/components/DialogContent.svelte +7 -18
  19. package/dist/bits/dialog/components/DialogContent.svelte.d.ts +1 -1
  20. package/dist/bits/dialog/components/DialogOverlay.svelte +7 -7
  21. package/dist/bits/dialog/components/DialogTrigger.svelte.d.ts +0 -1
  22. package/dist/bits/dialog/ctx.d.ts +17 -21
  23. package/dist/bits/dialog/ctx.js +1 -5
  24. package/dist/bits/dropdown-menu/components/DropdownMenu.svelte +6 -1
  25. package/dist/bits/dropdown-menu/components/DropdownMenu.svelte.d.ts +4 -0
  26. package/dist/bits/dropdown-menu/components/DropdownMenuSub.svelte +7 -2
  27. package/dist/bits/dropdown-menu/components/DropdownMenuSub.svelte.d.ts +4 -0
  28. package/dist/bits/dropdown-menu/ctx.d.ts +35 -35
  29. package/dist/bits/link-preview/components/LinkPreview.svelte +7 -2
  30. package/dist/bits/link-preview/components/LinkPreview.svelte.d.ts +4 -0
  31. package/dist/bits/link-preview/ctx.d.ts +12 -12
  32. package/dist/bits/menubar/components/Menubar.svelte +6 -2
  33. package/dist/bits/menubar/components/Menubar.svelte.d.ts +3 -0
  34. package/dist/bits/menubar/components/MenubarMenu.svelte +7 -2
  35. package/dist/bits/menubar/components/MenubarMenu.svelte.d.ts +6 -1
  36. package/dist/bits/menubar/components/MenubarSub.svelte +7 -2
  37. package/dist/bits/menubar/components/MenubarSub.svelte.d.ts +4 -0
  38. package/dist/bits/menubar/ctx.d.ts +50 -42
  39. package/dist/bits/popover/components/Popover.svelte +6 -1
  40. package/dist/bits/popover/components/Popover.svelte.d.ts +5 -1
  41. package/dist/bits/popover/ctx.d.ts +6 -6
  42. package/dist/bits/select/components/Select.svelte +11 -2
  43. package/dist/bits/select/components/Select.svelte.d.ts +6 -1
  44. package/dist/bits/select/components/SelectTrigger.svelte.d.ts +0 -1
  45. package/dist/bits/select/ctx.d.ts +6 -7
  46. package/dist/bits/slider/components/Slider.svelte.d.ts +1 -1
  47. package/dist/bits/slider/ctx.d.ts +1 -1
  48. package/dist/bits/tooltip/components/Tooltip.svelte +7 -2
  49. package/dist/bits/tooltip/components/Tooltip.svelte.d.ts +6 -2
  50. package/dist/bits/tooltip/ctx.d.ts +4 -4
  51. package/dist/internal/index.d.ts +0 -1
  52. package/dist/internal/index.js +0 -1
  53. package/package.json +13 -13
  54. package/dist/internal/transition.d.ts +0 -11
  55. package/dist/internal/transition.js +0 -55
@@ -230,7 +230,7 @@ declare class __sveltets_Render<Multiple extends boolean> {
230
230
  };
231
231
  attrs: Record<string, string>;
232
232
  ids: {
233
- root: string;
233
+ [x: string]: string;
234
234
  };
235
235
  };
236
236
  };
@@ -6,7 +6,7 @@ type GetReturn = AccordionReturn;
6
6
  export declare function setCtx<Multiple extends boolean>(props: CreateAccordionProps<Multiple>): {
7
7
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
8
8
  ids: {
9
- root: string;
9
+ [x: string]: string;
10
10
  };
11
11
  elements: {
12
12
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => {
@@ -1,7 +1,5 @@
1
- <script>import { writable } from "svelte/store";
1
+ <script>import { derived } from "svelte/store";
2
2
  import { setCtx } from "../ctx.js";
3
- import { onDestroy } from "svelte";
4
- import { isBrowser } from "../../../internal/is.js";
5
3
  export let preventScroll = void 0;
6
4
  export let closeOnEscape = void 0;
7
5
  export let closeOnOutsideClick = false;
@@ -9,9 +7,6 @@ export let portal = void 0;
9
7
  export let forceVisible = true;
10
8
  export let open = void 0;
11
9
  export let onOpenChange = void 0;
12
- const transitionTimes = writable({});
13
- const tOpen = writable(open);
14
- let timeout = 0;
15
10
  const {
16
11
  states: { open: localOpen },
17
12
  updateOption,
@@ -23,38 +18,22 @@ const {
23
18
  portal,
24
19
  forceVisible,
25
20
  defaultOpen: open,
26
- transitionTimes,
27
- tOpen,
28
21
  onOpenChange: ({ next }) => {
29
22
  if (open !== next) {
30
23
  onOpenChange?.(next);
24
+ open = next;
31
25
  }
32
- if (next !== $tOpen) {
33
- tOpen.set(next);
34
- if (!next) {
35
- window.clearTimeout(timeout);
36
- timeout = window.setTimeout(
37
- () => {
38
- localOpen.set(next);
39
- },
40
- $transitionTimes.out ? $transitionTimes.out * 0.6 : 0
41
- );
42
- open = !next;
43
- return !next;
44
- } else {
45
- open = next;
46
- return next;
47
- }
48
- }
49
- open = next;
50
26
  return next;
51
27
  }
52
28
  });
53
- onDestroy(() => {
54
- if (isBrowser) {
55
- window.clearTimeout(timeout);
56
- }
57
- });
29
+ const idValues = derived(
30
+ [ids.content, ids.description, ids.title],
31
+ ([$contentId, $descriptionId, $titleId]) => ({
32
+ content: $contentId,
33
+ description: $descriptionId,
34
+ title: $titleId
35
+ })
36
+ );
58
37
  $:
59
38
  open !== void 0 && localOpen.set(open);
60
39
  $:
@@ -69,4 +48,4 @@ $:
69
48
  updateOption("forceVisible", forceVisible);
70
49
  </script>
71
50
 
72
- <slot {ids} />
51
+ <slot ids={$idValues} />
@@ -5,9 +5,14 @@ declare const __propDef: {
5
5
  closeOnEscape?: boolean | undefined;
6
6
  closeOnOutsideClick?: boolean | undefined;
7
7
  forceVisible?: boolean | undefined;
8
+ ids?: {
9
+ content: string;
10
+ description: string;
11
+ title: string;
12
+ } | undefined;
8
13
  portal?: string | HTMLElement | null | undefined;
9
- openFocus?: import("@melt-ui/svelte/index.js").FocusProp | undefined;
10
14
  closeFocus?: import("@melt-ui/svelte/index.js").FocusProp | undefined;
15
+ openFocus?: import("@melt-ui/svelte/index.js").FocusProp | undefined;
11
16
  open?: boolean | undefined;
12
17
  onOpenChange?: import("../../../internal/types.js").OnChangeFn<boolean> | undefined;
13
18
  };
@@ -18,9 +23,8 @@ declare const __propDef: {
18
23
  default: {
19
24
  ids: {
20
25
  content: string;
21
- title: string;
22
26
  description: string;
23
- trigger: string;
27
+ title: string;
24
28
  };
25
29
  };
26
30
  };
@@ -1,5 +1,4 @@
1
1
  <script>import { melt } from "@melt-ui/svelte";
2
- import { setTransitionTimes } from "../../../internal/index.js";
3
2
  import { getCtx, getAttrs } from "../ctx.js";
4
3
  export let transition = void 0;
5
4
  export let transitionConfig = void 0;
@@ -10,30 +9,20 @@ export let outTransitionConfig = void 0;
10
9
  export let asChild = false;
11
10
  const {
12
11
  elements: { content },
13
- transitionTimes,
14
- tOpen
12
+ states: { open }
15
13
  } = getCtx();
16
- $:
17
- setTransitionTimes(transitionTimes, {
18
- transition,
19
- transitionConfig,
20
- inTransition,
21
- inTransitionConfig,
22
- outTransition,
23
- outTransitionConfig
24
- });
25
14
  $:
26
15
  builder = $content;
27
16
  const attrs = getAttrs("content");
28
17
  </script>
29
18
 
30
- {#if asChild && $tOpen}
19
+ {#if asChild && $open}
31
20
  <slot {builder} {attrs} />
32
- {:else if transition && $tOpen}
21
+ {:else if transition && $open}
33
22
  <div transition:transition={transitionConfig} {...builder} use:builder.action {...$$restProps} {...attrs}>
34
23
  <slot {builder} {attrs} />
35
24
  </div>
36
- {:else if inTransition && outTransition && $tOpen}
25
+ {:else if inTransition && outTransition && $open}
37
26
  <div
38
27
  in:inTransition={inTransitionConfig}
39
28
  out:outTransition={outTransitionConfig}
@@ -43,15 +32,15 @@ const attrs = getAttrs("content");
43
32
  >
44
33
  <slot {builder} {attrs} />
45
34
  </div>
46
- {:else if inTransition && $tOpen}
35
+ {:else if inTransition && $open}
47
36
  <div in:inTransition={inTransitionConfig} {...builder} use:builder.action {...$$restProps} {...attrs}>
48
37
  <slot {builder} {attrs} />
49
38
  </div>
50
- {:else if outTransition && $tOpen}
39
+ {:else if outTransition && $open}
51
40
  <div out:outTransition={outTransitionConfig} {...builder} use:builder.action {...$$restProps} {...attrs}>
52
41
  <slot {builder} {attrs} />
53
42
  </div>
54
- {:else if $tOpen}
43
+ {:else if $open}
55
44
  <div {...builder} use:builder.action {...$$restProps} {...attrs}>
56
45
  <slot {builder} {attrs} />
57
46
  </div>
@@ -1,5 +1,5 @@
1
1
  import { SvelteComponent } from "svelte";
2
- import { type Transition } from "../../../internal/index.js";
2
+ import type { Transition } from "../../../internal/index.js";
3
3
  declare class __sveltets_Render<T extends Transition, In extends Transition, Out extends Transition> {
4
4
  props(): {
5
5
  transition?: T | undefined;
@@ -9,28 +9,28 @@ export let outTransitionConfig = void 0;
9
9
  export let asChild = false;
10
10
  const {
11
11
  elements: { overlay },
12
- tOpen
12
+ states: { open }
13
13
  } = getCtx();
14
14
  $:
15
15
  builder = $overlay;
16
16
  const attrs = getAttrs("overlay");
17
17
  </script>
18
18
 
19
- {#if asChild && $tOpen}
19
+ {#if asChild && $open}
20
20
  <slot {builder} {attrs} />
21
- {:else if transition && $tOpen}
21
+ {:else if transition && $open}
22
22
  <div transition:transition={transitionConfig} {...builder} use:builder.action {...$$restProps} {...attrs} />
23
- {:else if inTransition && outTransition && $tOpen}
23
+ {:else if inTransition && outTransition && $open}
24
24
  <div
25
25
  in:inTransition={inTransitionConfig}
26
26
  out:outTransition={outTransitionConfig}
27
27
  {...builder} use:builder.action
28
28
  {...$$restProps}
29
29
  />
30
- {:else if inTransition && $tOpen}
30
+ {:else if inTransition && $open}
31
31
  <div in:inTransition={inTransitionConfig} {...builder} use:builder.action {...$$restProps} {...attrs} />
32
- {:else if outTransition && $tOpen}
32
+ {:else if outTransition && $open}
33
33
  <div out:outTransition={outTransitionConfig} {...builder} use:builder.action {...$$restProps} {...attrs} />
34
- {:else if $tOpen}
34
+ {:else if $open}
35
35
  <div {...builder} use:builder.action {...$$restProps} {...attrs} />
36
36
  {/if}
@@ -225,7 +225,6 @@ declare const __propDef: {
225
225
  slots: {
226
226
  default: {
227
227
  builder: {
228
- readonly id: string;
229
228
  readonly 'aria-haspopup': "dialog";
230
229
  readonly 'aria-expanded': boolean;
231
230
  readonly 'aria-controls': string;
@@ -1,21 +1,18 @@
1
1
  /// <reference types="svelte" />
2
2
  import { type Dialog as AlertDialogReturn, type CreateDialogProps as CreateAlertDialogProps } from "@melt-ui/svelte";
3
- import { type TOpen, type TransitionTimesProp } from "../../internal/index.js";
4
- type SetProps = CreateAlertDialogProps & TransitionTimesProp & TOpen;
5
- type GetReturn = AlertDialogReturn & TransitionTimesProp & TOpen;
3
+ type SetProps = CreateAlertDialogProps;
6
4
  export declare const getAttrs: (part: "action" | "content" | "trigger" | "cancel" | "description" | "overlay" | "portal" | "title") => Record<string, string>;
7
5
  export declare function setCtx(props: SetProps): {
8
6
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
9
7
  ids: {
10
- content: string;
11
- title: string;
12
- description: string;
13
- trigger: string;
8
+ title: import("svelte/store").Writable<string>;
9
+ content: import("svelte/store").Writable<string>;
10
+ description: import("svelte/store").Writable<string>;
14
11
  };
15
12
  elements: {
16
- content: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<boolean>], (node: HTMLElement) => {
13
+ content: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<boolean>, import("svelte/store").Writable<string>, import("svelte/store").Writable<string>, import("svelte/store").Writable<string>], (node: HTMLElement) => {
17
14
  destroy: () => void;
18
- }, ([$isVisible]: [boolean]) => {
15
+ }, ([$isVisible, $contentId, $descriptionId, $titleId]: [boolean, string, string, string]) => {
19
16
  id: string;
20
17
  role: "dialog" | "alertdialog";
21
18
  'aria-describedby': string;
@@ -25,21 +22,20 @@ export declare function setCtx(props: SetProps): {
25
22
  hidden: boolean | undefined;
26
23
  style: string;
27
24
  }, string>;
28
- trigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<{
25
+ trigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
29
26
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
30
27
  set: (this: void, value: boolean) => void;
31
28
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
32
- }, (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click">, ($open: boolean) => {
33
- readonly id: string;
29
+ }, import("svelte/store").Writable<string>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click">, ([$open, $contentId]: [boolean, string]) => {
34
30
  readonly 'aria-haspopup': "dialog";
35
31
  readonly 'aria-expanded': boolean;
36
32
  readonly 'aria-controls': string;
37
33
  readonly type: "button";
38
34
  }, string>;
39
- title: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => {
35
+ title: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Writable<string>], import("svelte/action").Action<any, any, Record<never, any>>, ([$titleId]: [string]) => {
40
36
  id: string;
41
37
  }, string>;
42
- description: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => {
38
+ description: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Writable<string>], import("svelte/action").Action<any, any, Record<never, any>>, ([$descriptionId]: [string]) => {
43
39
  id: string;
44
40
  }, string>;
45
41
  overlay: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<boolean>], <Node_1 extends unknown>(node: HTMLElement) => {
@@ -68,18 +64,18 @@ export declare function setCtx(props: SetProps): {
68
64
  };
69
65
  };
70
66
  options: {
71
- preventScroll: import("svelte/store").Writable<boolean>;
72
- closeOnEscape: import("svelte/store").Writable<boolean>;
73
- closeOnOutsideClick: import("svelte/store").Writable<boolean>;
67
+ open?: import("svelte/store").Writable<import("svelte/store").Writable<boolean> | undefined> | undefined;
68
+ forceVisible: import("svelte/store").Writable<boolean>;
74
69
  role: import("svelte/store").Writable<"dialog" | "alertdialog">;
75
70
  defaultOpen: import("svelte/store").Writable<boolean>;
76
- open?: import("svelte/store").Writable<import("svelte/store").Writable<boolean> | undefined> | undefined;
77
71
  onOpenChange?: import("svelte/store").Writable<import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined> | undefined;
72
+ preventScroll: import("svelte/store").Writable<boolean>;
78
73
  portal: import("svelte/store").Writable<string | HTMLElement | null>;
79
- forceVisible: import("svelte/store").Writable<boolean>;
80
- openFocus: import("svelte/store").Writable<import("@melt-ui/svelte").FocusProp | undefined>;
74
+ closeOnOutsideClick: import("svelte/store").Writable<boolean>;
75
+ closeOnEscape: import("svelte/store").Writable<boolean>;
81
76
  closeFocus: import("svelte/store").Writable<import("@melt-ui/svelte").FocusProp | undefined>;
77
+ openFocus: import("svelte/store").Writable<import("@melt-ui/svelte").FocusProp | undefined>;
82
78
  };
83
79
  };
84
- export declare function getCtx(): GetReturn;
80
+ export declare function getCtx(): AlertDialogReturn;
85
81
  export {};
@@ -18,11 +18,7 @@ export function setCtx(props) {
18
18
  ...removeUndefined(props),
19
19
  role: "alertdialog"
20
20
  });
21
- setContext(NAME, {
22
- ...alertDialog,
23
- transitionTimes: props.transitionTimes,
24
- tOpen: props.tOpen
25
- });
21
+ setContext(NAME, alertDialog);
26
22
  return {
27
23
  ...alertDialog,
28
24
  updateOption: getOptionUpdater(alertDialog.options)
@@ -52,6 +52,7 @@ const attrs = getAttrs("root");
52
52
  {...attrs}
53
53
  on:m-click={dispatch}
54
54
  on:m-keydown={dispatch}
55
+ disabled={disabled ? true : undefined}
55
56
  >
56
57
  <slot {builder} {attrs} />
57
58
  </button>
@@ -8,6 +8,10 @@ declare const __propDef: {
8
8
  positioning?: import("@melt-ui/svelte/internal/actions").FloatingConfig | undefined;
9
9
  arrowSize?: number | undefined;
10
10
  forceVisible?: boolean | undefined;
11
+ ids?: {
12
+ trigger: string;
13
+ menu: string;
14
+ } | undefined;
11
15
  portal?: string | HTMLElement | null | undefined;
12
16
  closeFocus?: import("@melt-ui/svelte/index.js").FocusProp | undefined;
13
17
  dir?: import("@melt-ui/svelte/internal/types").TextDirection | undefined;
@@ -22,8 +26,8 @@ declare const __propDef: {
22
26
  slots: {
23
27
  default: {
24
28
  ids: {
25
- menu: string;
26
- trigger: string;
29
+ menu: import("svelte/store").Writable<string>;
30
+ trigger: import("svelte/store").Writable<string>;
27
31
  };
28
32
  };
29
33
  };
@@ -5,6 +5,10 @@ declare const __propDef: {
5
5
  onOpenChange?: import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined;
6
6
  positioning?: import("@melt-ui/svelte/internal/actions").FloatingConfig | undefined;
7
7
  arrowSize?: number | undefined;
8
+ ids?: {
9
+ trigger: string;
10
+ menu: string;
11
+ } | undefined;
8
12
  disabled?: boolean | undefined;
9
13
  };
10
14
  events: {
@@ -13,8 +17,8 @@ declare const __propDef: {
13
17
  slots: {
14
18
  default: {
15
19
  subIds: {
16
- menu: string;
17
- trigger: string;
20
+ menu: import("svelte/store").Writable<string>;
21
+ trigger: import("svelte/store").Writable<string>;
18
22
  };
19
23
  };
20
24
  };
@@ -218,6 +218,7 @@ declare const __propDef: {
218
218
  readonly 'data-state': "open" | "closed";
219
219
  readonly id: string;
220
220
  readonly style: string;
221
+ readonly 'data-id': string;
221
222
  } & {
222
223
  [x: `data-melt-${string}`]: "";
223
224
  } & {
@@ -5,11 +5,11 @@ export declare const getAttrs: (part: "arrow" | "label" | "radio-group" | "separ
5
5
  export declare function setCtx(props: CreateContextMenuProps): {
6
6
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
7
7
  ids: {
8
- menu: string;
9
- trigger: string;
8
+ menu: import("svelte/store").Writable<string>;
9
+ trigger: import("svelte/store").Writable<string>;
10
10
  };
11
11
  elements: {
12
- menu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[Readable<boolean>, import("svelte/store").Writable<string | HTMLElement | null | undefined>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown">, ([$isVisible, $portal]: [boolean, string | HTMLElement | null | undefined]) => {
12
+ menu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[Readable<boolean>, import("svelte/store").Writable<string | HTMLElement | null | undefined>, import("svelte/store").Writable<string>, import("svelte/store").Writable<string>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown">, ([$isVisible, $portal, $menuId, $triggerId]: [boolean, string | HTMLElement | null | undefined, string, string]) => {
13
13
  readonly role: "menu";
14
14
  readonly hidden: true | undefined;
15
15
  readonly style: string;
@@ -19,14 +19,15 @@ export declare function setCtx(props: CreateContextMenuProps): {
19
19
  readonly 'data-portal': "" | undefined;
20
20
  readonly tabindex: -1;
21
21
  }, string>;
22
- trigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<{
22
+ trigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
23
23
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
24
24
  set: (this: void, value: boolean) => void;
25
25
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
26
- }, (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"contextmenu" | "pointercancel" | "pointerdown" | "pointermove" | "pointerup">, ($rootOpen: boolean) => {
26
+ }, import("svelte/store").Writable<string>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"contextmenu" | "pointercancel" | "pointerdown" | "pointermove" | "pointerup">, ([$rootOpen, $triggerId]: [boolean, string]) => {
27
27
  readonly 'data-state': "open" | "closed";
28
28
  readonly id: string;
29
29
  readonly style: string;
30
+ readonly 'data-id': string;
30
31
  }, string>;
31
32
  item: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "focusin" | "focusout" | "pointerdown" | "pointerleave" | "pointermove">, () => {
32
33
  role: string;
@@ -61,15 +62,15 @@ export declare function setCtx(props: CreateContextMenuProps): {
61
62
  builders: {
62
63
  createSubmenu: (args?: import("@melt-ui/svelte/dist/builders/menu")._CreateSubmenuProps | undefined) => {
63
64
  ids: {
64
- menu: string;
65
- trigger: string;
65
+ menu: import("svelte/store").Writable<string>;
66
+ trigger: import("svelte/store").Writable<string>;
66
67
  };
67
68
  elements: {
68
69
  subTrigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
69
70
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
70
71
  set: (this: void, value: boolean) => void;
71
72
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
72
- }, import("svelte/store").Writable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "focusin" | "focusout" | "pointerleave" | "pointermove">, ([$subOpen, $disabled]: [boolean, boolean]) => {
73
+ }, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<string>, import("svelte/store").Writable<string>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "focusin" | "focusout" | "pointerleave" | "pointermove">, ([$subOpen, $disabled, $subMenuId, $subTriggerId]: [boolean, boolean, string, string]) => {
73
74
  readonly role: "menuitem";
74
75
  readonly id: string;
75
76
  readonly tabindex: -1;
@@ -79,7 +80,7 @@ export declare function setCtx(props: CreateContextMenuProps): {
79
80
  readonly 'data-disabled': true | undefined;
80
81
  readonly 'aria-haspopop': "menu";
81
82
  }, string>;
82
- subMenu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[Readable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "focusout" | "pointermove">, ([$subIsVisible]: [boolean]) => {
83
+ subMenu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[Readable<boolean>, import("svelte/store").Writable<string>, import("svelte/store").Writable<string>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "focusout" | "pointermove">, ([$subIsVisible, $subMenuId, $subTriggerId]: [boolean, string, string]) => {
83
84
  readonly role: "menu";
84
85
  readonly hidden: true | undefined;
85
86
  readonly style: string;
@@ -102,21 +103,21 @@ export declare function setCtx(props: CreateContextMenuProps): {
102
103
  };
103
104
  };
104
105
  options: {
106
+ dir: import("svelte/store").Writable<"ltr">;
107
+ disabled: import("svelte/store").Writable<boolean>;
105
108
  open?: import("svelte/store").Writable<import("svelte/store").Writable<boolean> | undefined> | undefined;
109
+ defaultOpen: import("svelte/store").Writable<false>;
106
110
  onOpenChange?: import("svelte/store").Writable<import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined> | undefined;
111
+ preventScroll: import("svelte/store").Writable<true>;
112
+ portal: import("svelte/store").Writable<string>;
107
113
  positioning: import("svelte/store").Writable<import("@melt-ui/svelte/internal/actions").FloatingConfig | {
108
114
  placement: "right-start";
109
115
  gutter: number;
110
116
  }>;
111
117
  arrowSize: import("svelte/store").Writable<number>;
112
- disabled: import("svelte/store").Writable<boolean>;
113
- preventScroll: import("svelte/store").Writable<true>;
114
- closeOnEscape: import("svelte/store").Writable<true>;
115
- closeOnOutsideClick: import("svelte/store").Writable<true>;
116
- portal: import("svelte/store").Writable<string>;
117
118
  loop: import("svelte/store").Writable<false>;
118
- dir: import("svelte/store").Writable<"ltr">;
119
- defaultOpen: import("svelte/store").Writable<false>;
119
+ closeOnOutsideClick: import("svelte/store").Writable<true>;
120
+ closeOnEscape: import("svelte/store").Writable<true>;
120
121
  typeahead: import("svelte/store").Writable<true>;
121
122
  };
122
123
  };
@@ -179,20 +180,20 @@ export declare function setCtx(props: CreateContextMenuProps): {
179
180
  };
180
181
  };
181
182
  options: {
183
+ dir: import("svelte/store").Writable<import("@melt-ui/svelte/internal/types").TextDirection>;
184
+ open?: import("svelte/store").Writable<import("svelte/store").Writable<boolean> | undefined> | undefined;
185
+ forceVisible: import("svelte/store").Writable<boolean>;
186
+ defaultOpen: import("svelte/store").Writable<boolean>;
187
+ onOpenChange?: import("svelte/store").Writable<import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined> | undefined;
188
+ preventScroll: import("svelte/store").Writable<boolean>;
189
+ portal: import("svelte/store").Writable<string | HTMLElement | null | undefined>;
182
190
  positioning: import("svelte/store").Writable<import("@melt-ui/svelte/internal/actions").FloatingConfig | {
183
191
  placement: "bottom-start";
184
192
  }>;
185
193
  arrowSize: import("svelte/store").Writable<number>;
186
- dir: import("svelte/store").Writable<import("@melt-ui/svelte/internal/types").TextDirection>;
187
- preventScroll: import("svelte/store").Writable<boolean>;
188
- closeOnEscape: import("svelte/store").Writable<boolean>;
189
- portal: import("svelte/store").Writable<string | HTMLElement | null | undefined>;
190
- closeOnOutsideClick: import("svelte/store").Writable<boolean>;
191
194
  loop: import("svelte/store").Writable<boolean>;
192
- defaultOpen: import("svelte/store").Writable<boolean>;
193
- open?: import("svelte/store").Writable<import("svelte/store").Writable<boolean> | undefined> | undefined;
194
- onOpenChange?: import("svelte/store").Writable<import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined> | undefined;
195
- forceVisible: import("svelte/store").Writable<boolean>;
195
+ closeOnOutsideClick: import("svelte/store").Writable<boolean>;
196
+ closeOnEscape: import("svelte/store").Writable<boolean>;
196
197
  typeahead: import("svelte/store").Writable<boolean>;
197
198
  closeFocus: import("svelte/store").Writable<import("@melt-ui/svelte").FocusProp | undefined>;
198
199
  disableFocusFirstItem: import("svelte/store").Writable<boolean>;
@@ -202,15 +203,15 @@ export declare function getCtx(): ContextMenuReturn;
202
203
  export declare function setSubMenuCtx(props: CreateContextSubmenuProps): {
203
204
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
204
205
  ids: {
205
- menu: string;
206
- trigger: string;
206
+ menu: import("svelte/store").Writable<string>;
207
+ trigger: import("svelte/store").Writable<string>;
207
208
  };
208
209
  elements: {
209
210
  subTrigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
210
211
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
211
212
  set: (this: void, value: boolean) => void;
212
213
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
213
- }, import("svelte/store").Writable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "focusin" | "focusout" | "pointerleave" | "pointermove">, ([$subOpen, $disabled]: [boolean, boolean]) => {
214
+ }, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<string>, import("svelte/store").Writable<string>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "focusin" | "focusout" | "pointerleave" | "pointermove">, ([$subOpen, $disabled, $subMenuId, $subTriggerId]: [boolean, boolean, string, string]) => {
214
215
  readonly role: "menuitem";
215
216
  readonly id: string;
216
217
  readonly tabindex: -1;
@@ -220,7 +221,7 @@ export declare function setSubMenuCtx(props: CreateContextSubmenuProps): {
220
221
  readonly 'data-disabled': true | undefined;
221
222
  readonly 'aria-haspopop': "menu";
222
223
  }, string>;
223
- subMenu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[Readable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "focusout" | "pointermove">, ([$subIsVisible]: [boolean]) => {
224
+ subMenu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[Readable<boolean>, import("svelte/store").Writable<string>, import("svelte/store").Writable<string>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "focusout" | "pointermove">, ([$subIsVisible, $subMenuId, $subTriggerId]: [boolean, string, string]) => {
224
225
  readonly role: "menu";
225
226
  readonly hidden: true | undefined;
226
227
  readonly style: string;
@@ -243,21 +244,21 @@ export declare function setSubMenuCtx(props: CreateContextSubmenuProps): {
243
244
  };
244
245
  };
245
246
  options: {
247
+ dir: import("svelte/store").Writable<"ltr">;
248
+ disabled: import("svelte/store").Writable<boolean>;
246
249
  open?: import("svelte/store").Writable<import("svelte/store").Writable<boolean> | undefined> | undefined;
250
+ defaultOpen: import("svelte/store").Writable<false>;
247
251
  onOpenChange?: import("svelte/store").Writable<import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined> | undefined;
252
+ preventScroll: import("svelte/store").Writable<true>;
253
+ portal: import("svelte/store").Writable<string>;
248
254
  positioning: import("svelte/store").Writable<import("@melt-ui/svelte/internal/actions").FloatingConfig | {
249
255
  placement: "right-start";
250
256
  gutter: number;
251
257
  }>;
252
258
  arrowSize: import("svelte/store").Writable<number>;
253
- disabled: import("svelte/store").Writable<boolean>;
254
- preventScroll: import("svelte/store").Writable<true>;
255
- closeOnEscape: import("svelte/store").Writable<true>;
256
- closeOnOutsideClick: import("svelte/store").Writable<true>;
257
- portal: import("svelte/store").Writable<string>;
258
259
  loop: import("svelte/store").Writable<false>;
259
- dir: import("svelte/store").Writable<"ltr">;
260
- defaultOpen: import("svelte/store").Writable<false>;
260
+ closeOnOutsideClick: import("svelte/store").Writable<true>;
261
+ closeOnEscape: import("svelte/store").Writable<true>;
261
262
  typeahead: import("svelte/store").Writable<true>;
262
263
  };
263
264
  };