bits-ui 0.5.6 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/README.md +4 -0
  2. package/dist/bits/accordion/components/Accordion.svelte.d.ts +2 -2
  3. package/dist/bits/accordion/ctx.d.ts +7 -3
  4. package/dist/bits/alert-dialog/ctx.d.ts +6 -0
  5. package/dist/bits/checkbox/ctx.d.ts +2 -2
  6. package/dist/bits/collapsible/ctx.d.ts +4 -4
  7. package/dist/bits/context-menu/ctx.d.ts +14 -6
  8. package/dist/bits/dialog/ctx.d.ts +6 -0
  9. package/dist/bits/dropdown-menu/ctx.d.ts +14 -6
  10. package/dist/bits/link-preview/ctx.d.ts +4 -0
  11. package/dist/bits/menubar/ctx.d.ts +30 -9
  12. package/dist/bits/popover/ctx.d.ts +5 -1
  13. package/dist/bits/radio-group/components/RadioGroupInput.svelte.d.ts +5 -3
  14. package/dist/bits/radio-group/ctx.d.ts +5 -3
  15. package/dist/bits/select/components/Select.svelte.d.ts +4 -2
  16. package/dist/bits/select/components/SelectContent.svelte +5 -5
  17. package/dist/bits/select/components/SelectInput.svelte +1 -1
  18. package/dist/bits/select/components/SelectInput.svelte.d.ts +3 -4
  19. package/dist/bits/select/components/SelectItem.svelte +1 -10
  20. package/dist/bits/select/ctx.d.ts +65 -60
  21. package/dist/bits/select/ctx.js +1 -1
  22. package/dist/bits/select/index.d.ts +1 -1
  23. package/dist/bits/select/index.js +1 -1
  24. package/dist/bits/select/types.d.ts +2 -6
  25. package/dist/bits/slider/ctx.d.ts +14 -1
  26. package/dist/bits/switch/ctx.d.ts +3 -3
  27. package/dist/bits/toggle/ctx.d.ts +1 -1
  28. package/dist/bits/tooltip/components/Tooltip.svelte.d.ts +2 -0
  29. package/dist/bits/tooltip/ctx.d.ts +8 -1
  30. package/package.json +93 -92
  31. package/dist/bits/select/components/SelectSeparator.svelte +0 -11
  32. package/dist/bits/select/components/SelectSeparator.svelte.d.ts +0 -237
@@ -9,101 +9,100 @@ export declare const ctx: {
9
9
  getGroupLabel: typeof getGroupLabel;
10
10
  setArrow: typeof setArrow;
11
11
  };
12
- declare function get(): SelectReturn;
12
+ type GetReturn = SelectReturn;
13
+ declare function get(): GetReturn;
13
14
  declare function set(props: CreateSelectProps): {
14
15
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
15
16
  elements: {
16
- menu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").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]) => {
17
- style: string;
18
- id: string;
19
- 'aria-labelledby': string;
17
+ group: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
20
18
  role: string;
21
- 'data-portal': string | undefined;
19
+ 'aria-labelledby': string;
20
+ }, string>;
21
+ groupLabel: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
22
+ id: string;
22
23
  }, string>;
23
24
  trigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
24
25
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
25
26
  set: (this: void, value: boolean) => void;
26
27
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
27
- }, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click">, ([$open, $disabled, $required]: [boolean, boolean, boolean]) => {
28
- readonly role: "combobox";
29
- readonly type: "button";
30
- readonly 'aria-autocomplete': "none";
31
- readonly 'aria-haspopup': "listbox";
28
+ }, import("svelte/store").Writable<HTMLElement | null>, import("svelte/store").Writable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "input">, ([$open, $highlightedItem, $disabled]: [boolean, HTMLElement | null, boolean]) => {
29
+ readonly 'aria-activedescendant': string | undefined;
30
+ readonly 'aria-autocomplete': "list";
32
31
  readonly 'aria-controls': string;
33
32
  readonly 'aria-expanded': boolean;
34
- readonly 'aria-required': boolean;
35
- readonly 'data-state': "open" | "closed";
36
- readonly 'data-disabled': true | undefined;
37
33
  readonly 'aria-labelledby': string;
38
- readonly disabled: boolean;
34
+ readonly 'data-melt-id': string;
39
35
  readonly id: string;
40
- readonly tabindex: 0;
36
+ readonly role: "combobox";
37
+ readonly disabled: true | undefined;
41
38
  }, string>;
42
- option: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<{
43
- update: (updater: import("svelte/store").Updater<import("@melt-ui/svelte").SelectOption<unknown> | undefined>, sideEffect?: ((newValue: import("@melt-ui/svelte").SelectOption<unknown> | undefined) => void) | undefined) => void;
44
- set: (this: void, value: import("@melt-ui/svelte").SelectOption<unknown> | undefined) => void;
45
- subscribe(this: void, run: import("svelte/store").Subscriber<import("@melt-ui/svelte").SelectOption<unknown> | undefined>, invalidate?: import("svelte/store").Invalidator<import("@melt-ui/svelte").SelectOption<unknown> | undefined> | undefined): import("svelte/store").Unsubscriber;
46
- }, (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click" | "focusin" | "focusout" | "pointerleave" | "pointermove">, ($selected: import("@melt-ui/svelte").SelectOption<unknown> | undefined) => (props: import("@melt-ui/svelte").SelectOptionProps<unknown>) => {
47
- readonly role: "option";
48
- readonly 'aria-selected': boolean;
49
- readonly 'data-selected': "" | undefined;
39
+ option: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
40
+ update: (updater: import("svelte/store").Updater<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined>, sideEffect?: ((newValue: import("@melt-ui/svelte").ComboboxOption<unknown> | undefined) => void) | undefined) => void;
41
+ set: (this: void, value: import("@melt-ui/svelte").ComboboxOption<unknown> | undefined) => void;
42
+ subscribe(this: void, run: import("svelte/store").Subscriber<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined>, invalidate?: import("svelte/store").Invalidator<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined> | undefined): import("svelte/store").Unsubscriber;
43
+ }], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"click" | "pointermove">, ([$selected]: [import("@melt-ui/svelte").ComboboxOption<unknown> | undefined]) => (props: import("@melt-ui/svelte").ComboboxOptionProps<unknown>) => {
50
44
  readonly 'data-value': string;
51
45
  readonly 'data-label': string | undefined;
52
- readonly 'data-disabled': "" | undefined;
53
- readonly tabindex: -1;
46
+ readonly 'data-disabled': true | undefined;
47
+ readonly 'aria-disabled': true | undefined;
48
+ readonly 'aria-selected': boolean;
49
+ readonly 'data-selected': "" | undefined;
50
+ readonly id: string;
51
+ readonly role: "option";
52
+ readonly style: string;
54
53
  }, string>;
55
- input: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
56
- update: (updater: import("svelte/store").Updater<import("@melt-ui/svelte").SelectOption<unknown> | undefined>, sideEffect?: ((newValue: import("@melt-ui/svelte").SelectOption<unknown> | undefined) => void) | undefined) => void;
57
- set: (this: void, value: import("@melt-ui/svelte").SelectOption<unknown> | undefined) => void;
58
- subscribe(this: void, run: import("svelte/store").Subscriber<import("@melt-ui/svelte").SelectOption<unknown> | undefined>, invalidate?: import("svelte/store").Invalidator<import("@melt-ui/svelte").SelectOption<unknown> | undefined> | undefined): import("svelte/store").Unsubscriber;
59
- }, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<string | undefined>], import("svelte/action").Action<any, any, Record<never, any>>, ([$value, $required, $disabled, $nameStore]: [import("@melt-ui/svelte").SelectOption<unknown> | undefined, boolean, boolean, string | undefined]) => {
60
- type: string;
54
+ menu: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"pointerleave">, ([$isVisible]: [boolean]) => {
55
+ readonly hidden: true | undefined;
56
+ readonly id: string;
57
+ readonly role: "listbox";
58
+ readonly style: string;
59
+ }, string>;
60
+ label: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"mousedown">, () => {
61
+ id: string;
62
+ for: string;
63
+ }, string>;
64
+ hiddenInput: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[{
65
+ update: (updater: import("svelte/store").Updater<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined>, sideEffect?: ((newValue: import("@melt-ui/svelte").ComboboxOption<unknown> | undefined) => void) | undefined) => void;
66
+ set: (this: void, value: import("@melt-ui/svelte").ComboboxOption<unknown> | undefined) => void;
67
+ subscribe(this: void, run: import("svelte/store").Subscriber<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined>, invalidate?: import("svelte/store").Invalidator<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined> | undefined): import("svelte/store").Unsubscriber;
68
+ }, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<string | undefined>], import("svelte/action").Action<any, any, Record<never, any>>, ([$selected, $required, $name]: [import("@melt-ui/svelte").ComboboxOption<unknown> | undefined, boolean, string | undefined]) => {
69
+ required: boolean | undefined;
70
+ value: unknown;
61
71
  name: string | undefined;
62
- value: import("@melt-ui/svelte").SelectOption<unknown> | undefined;
72
+ type: string;
63
73
  'aria-hidden': boolean;
64
74
  hidden: boolean;
65
75
  tabIndex: number;
66
- required: boolean;
67
- disabled: boolean;
68
76
  style: string;
69
77
  }, string>;
70
- group: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
71
- role: string;
72
- 'aria-labelledby': string;
73
- }, string>;
74
- groupLabel: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
75
- id: string;
76
- }, string>;
77
- arrow: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Writable<number>, import("svelte/action").Action<any, any, Record<never, any>>, ($arrowSize: number) => {
78
+ arrow: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Writable<number | undefined>, import("svelte/action").Action<any, any, Record<never, any>>, ($arrowSize: number | undefined) => {
78
79
  'data-arrow': boolean;
79
80
  style: string;
80
81
  }, string>;
81
- separator: 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]) => {
82
- role: string;
83
- 'aria-orientation': "vertical" | undefined;
84
- 'aria-hidden': boolean;
85
- 'data-orientation': import("@melt-ui/svelte/internal/types").Orientation;
86
- }, "separator">;
87
- label: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, <Node_1 extends unknown>(node: Node_1) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"click">, () => {
88
- id: string;
89
- for: string;
90
- }, string>;
91
82
  };
92
83
  states: {
84
+ selectedLabel: import("svelte/store").Readable<string>;
93
85
  open: {
94
86
  update: (updater: import("svelte/store").Updater<boolean>, sideEffect?: ((newValue: boolean) => void) | undefined) => void;
95
87
  set: (this: void, value: boolean) => void;
96
88
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
97
89
  };
98
90
  selected: {
99
- update: (updater: import("svelte/store").Updater<import("@melt-ui/svelte").SelectOption<unknown> | undefined>, sideEffect?: ((newValue: import("@melt-ui/svelte").SelectOption<unknown> | undefined) => void) | undefined) => void;
100
- set: (this: void, value: import("@melt-ui/svelte").SelectOption<unknown> | undefined) => void;
101
- subscribe(this: void, run: import("svelte/store").Subscriber<import("@melt-ui/svelte").SelectOption<unknown> | undefined>, invalidate?: import("svelte/store").Invalidator<import("@melt-ui/svelte").SelectOption<unknown> | undefined> | undefined): import("svelte/store").Unsubscriber;
91
+ update: (updater: import("svelte/store").Updater<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined>, sideEffect?: ((newValue: import("@melt-ui/svelte").ComboboxOption<unknown> | undefined) => void) | undefined) => void;
92
+ set: (this: void, value: import("@melt-ui/svelte").ComboboxOption<unknown> | undefined) => void;
93
+ subscribe(this: void, run: import("svelte/store").Subscriber<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined>, invalidate?: import("svelte/store").Invalidator<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined> | undefined): import("svelte/store").Unsubscriber;
102
94
  };
103
- selectedLabel: import("svelte/store").Readable<string>;
95
+ highlighted: import("svelte/store").Readable<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined>;
96
+ };
97
+ ids: {
98
+ trigger: string;
99
+ menu: string;
100
+ label: string;
104
101
  };
105
102
  helpers: {
106
103
  isSelected: import("svelte/store").Readable<(value: unknown) => boolean>;
104
+ isHighlighted: import("svelte/store").Readable<(item: unknown) => boolean>;
105
+ closeMenu: () => void;
107
106
  };
108
107
  options: {
109
108
  multiple: import("svelte/store").Writable<false>;
@@ -111,16 +110,22 @@ declare function set(props: CreateSelectProps): {
111
110
  forceVisible: import("svelte/store").Writable<boolean>;
112
111
  name: import("svelte/store").Writable<string | undefined>;
113
112
  required: import("svelte/store").Writable<boolean>;
113
+ onOpenChange?: import("svelte/store").Writable<import("@melt-ui/svelte/internal/helpers").ChangeFn<boolean> | undefined> | undefined;
114
114
  preventScroll: import("svelte/store").Writable<boolean>;
115
115
  portal: import("svelte/store").Writable<string | HTMLElement | null | undefined>;
116
116
  positioning: import("svelte/store").Writable<import("@melt-ui/svelte/internal/actions").FloatingConfig | {
117
117
  placement: "bottom";
118
118
  sameWidth: true;
119
119
  }>;
120
+ arrowSize?: import("svelte/store").Writable<number | undefined> | undefined;
121
+ scrollAlignment: import("svelte/store").Writable<"center" | "nearest">;
120
122
  loop: import("svelte/store").Writable<boolean>;
123
+ defaultSelected?: import("svelte/store").Writable<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined> | undefined;
124
+ selected?: import("svelte/store").Writable<import("svelte/store").Writable<import("@melt-ui/svelte").ComboboxOption<unknown>> | undefined> | undefined;
125
+ onSelectedChange?: import("svelte/store").Writable<import("@melt-ui/svelte/internal/helpers").ChangeFn<import("@melt-ui/svelte").ComboboxOption<unknown> | undefined> | undefined> | undefined;
121
126
  closeOnOutsideClick: import("svelte/store").Writable<boolean>;
122
127
  closeOnEscape: import("svelte/store").Writable<boolean>;
123
- arrowSize: import("svelte/store").Writable<number>;
128
+ typeahead: import("svelte/store").Writable<boolean>;
124
129
  };
125
130
  };
126
131
  declare function setGroup(): {
@@ -130,7 +135,7 @@ declare function setGroup(): {
130
135
  }, string>;
131
136
  id: string;
132
137
  };
133
- declare function setItem(value: unknown): SelectReturn;
138
+ declare function setItem(value: unknown): GetReturn;
134
139
  declare function getGroupLabel(): {
135
140
  groupLabel: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, import("svelte/action").Action<any, any, Record<never, any>>, () => (groupId: string) => {
136
141
  id: string;
@@ -141,5 +146,5 @@ declare function getItemIndicator(): {
141
146
  value: unknown;
142
147
  isSelected: import("svelte/store").Readable<(value: unknown) => boolean>;
143
148
  };
144
- declare function setArrow(size?: number): SelectReturn;
149
+ declare function setArrow(size?: number): GetReturn;
145
150
  export {};
@@ -50,6 +50,6 @@ function getItemIndicator() {
50
50
  }
51
51
  function setArrow(size = 8) {
52
52
  const select = get();
53
- select.options.arrowSize.set(size);
53
+ select.options.arrowSize?.set(size);
54
54
  return select;
55
55
  }
@@ -6,7 +6,7 @@ import Input from "./components/SelectInput.svelte";
6
6
  import Item from "./components/SelectItem.svelte";
7
7
  import ItemIndicator from "./components/SelectItemIndicator.svelte";
8
8
  import Label from "./components/SelectLabel.svelte";
9
- import Separator from "./components/SelectSeparator.svelte";
9
+ import Separator from "../separator/components/Separator.svelte";
10
10
  import Trigger from "./components/SelectTrigger.svelte";
11
11
  import Value from "./components/SelectValue.svelte";
12
12
  export { Root, Arrow, Content, Group, Input, Item, ItemIndicator, Label, Separator, Trigger, Value, Root as Select, Arrow as SelectArrow, Content as SelectContent, Group as SelectGroup, Input as SelectInput, Item as SelectItem, ItemIndicator as SelectItemIndicator, Label as SelectLabel, Separator as SelectSeparator, Trigger as SelectTrigger, Value as SelectValue };
@@ -6,7 +6,7 @@ import Input from "./components/SelectInput.svelte";
6
6
  import Item from "./components/SelectItem.svelte";
7
7
  import ItemIndicator from "./components/SelectItemIndicator.svelte";
8
8
  import Label from "./components/SelectLabel.svelte";
9
- import Separator from "./components/SelectSeparator.svelte";
9
+ import Separator from "../separator/components/Separator.svelte";
10
10
  import Trigger from "./components/SelectTrigger.svelte";
11
11
  import Value from "./components/SelectValue.svelte";
12
12
  export { Root, Arrow, Content, Group, Input, Item, ItemIndicator, Label, Separator, Trigger, Value,
@@ -23,11 +23,7 @@ type ArrowProps = Expand<{
23
23
  } & AsChild> & HTMLDivAttributes;
24
24
  type ItemEvents<T extends Element = HTMLDivElement> = {
25
25
  click: CustomEventHandler<MouseEvent, T>;
26
- keydown: CustomEventHandler<KeyboardEvent, T>;
27
- focusin: CustomEventHandler<FocusEvent, T>;
28
- focusout: CustomEventHandler<FocusEvent, T>;
29
- pointerleave: CustomEventHandler<MouseEvent, T>;
30
- pointermove: CustomEventHandler<MouseEvent, T>;
26
+ pointermove: CustomEventHandler<PointerEvent, T>;
31
27
  };
32
28
  type TriggerEvents<T extends Element = HTMLButtonElement> = {
33
29
  click: CustomEventHandler<MouseEvent, T>;
@@ -37,6 +33,6 @@ type LabelEvents<T extends Element = HTMLSpanElement> = {
37
33
  click: CustomEventHandler<MouseEvent, T>;
38
34
  };
39
35
  type ContentEvents<T extends Element = HTMLDivElement> = {
40
- keydown: CustomEventHandler<KeyboardEvent, T>;
36
+ pointerleave: CustomEventHandler<PointerEvent, T>;
41
37
  };
42
38
  export type { Props, ArrowProps, ContentProps, GroupProps, InputProps, LabelProps, ItemProps, SeparatorProps, TriggerProps, ValueProps, Props as SelectProps, ArrowProps as SelectArrowProps, ContentProps as SelectContentProps, GroupProps as SelectGroupProps, InputProps as SelectInputProps, LabelProps as SelectLabelProps, ItemProps as SelectItemProps, SeparatorProps as SelectSeparatorProps, TriggerProps as SelectTriggerProps, ValueProps as SelectValueProps, ItemEvents, ContentEvents, TriggerEvents, LabelEvents, ItemEvents as SelectItemEvents, ContentEvents as SelectContentEvents, TriggerEvents as SelectTriggerEvents, LabelEvents as SelectLabelEvents };
@@ -6,9 +6,13 @@ export declare const ctx: {
6
6
  };
7
7
  declare function set(props: CreateSliderProps): {
8
8
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
9
+ ids: {
10
+ root: string;
11
+ };
9
12
  elements: {
10
13
  root: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Writable<boolean>, import("svelte/store").Writable<"horizontal" | "vertical">], import("svelte/action").Action<any, any, Record<never, any>>, ([$disabled, $orientation]: [boolean, "horizontal" | "vertical"]) => {
11
- disabled: boolean;
14
+ disabled: boolean | undefined;
15
+ 'aria-disabled': string | undefined;
12
16
  'data-orientation': "horizontal" | "vertical";
13
17
  style: string | undefined;
14
18
  'data-melt-id': string;
@@ -33,6 +37,14 @@ declare function set(props: CreateSliderProps): {
33
37
  }, import("svelte/store").Writable<"horizontal" | "vertical">, import("svelte/store").Readable<(val: number) => number>], import("svelte/action").Action<any, any, Record<never, any>>, ([$value, $orientation, $position]: [number[], "horizontal" | "vertical", (val: number) => number]) => {
34
38
  style: string;
35
39
  }, string>;
40
+ tick: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<number>, {
41
+ update: (updater: import("svelte/store").Updater<number[]>, sideEffect?: ((newValue: number[]) => void) | undefined) => void;
42
+ set: (this: void, value: number[]) => void;
43
+ subscribe(this: void, run: import("svelte/store").Subscriber<number[]>, invalidate?: import("svelte/store").Invalidator<number[]> | undefined): import("svelte/store").Unsubscriber;
44
+ }, import("svelte/store").Writable<number>, import("svelte/store").Writable<number>, import("svelte/store").Writable<number>, import("svelte/store").Writable<"horizontal" | "vertical">], import("svelte/action").Action<any, any, Record<never, any>>, ([$ticks, $value, $min, $max, $step, $orientation]: [number, number[], number, number, number, "horizontal" | "vertical"]) => () => {
45
+ 'data-bounded': boolean | undefined;
46
+ style: string;
47
+ }, string>;
36
48
  };
37
49
  states: {
38
50
  value: {
@@ -40,6 +52,7 @@ declare function set(props: CreateSliderProps): {
40
52
  set: (this: void, value: number[]) => void;
41
53
  subscribe(this: void, run: import("svelte/store").Subscriber<number[]>, invalidate?: import("svelte/store").Invalidator<number[]> | undefined): import("svelte/store").Unsubscriber;
42
54
  };
55
+ ticks: import("svelte/store").Readable<number>;
43
56
  };
44
57
  options: {
45
58
  disabled: import("svelte/store").Writable<boolean>;
@@ -12,8 +12,8 @@ declare function set(props: CreateSwitchProps): {
12
12
  set: (this: void, value: boolean) => void;
13
13
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
14
14
  }, import("svelte/store").Writable<boolean>, import("svelte/store").Writable<boolean>], <Node_1 extends unknown>(node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click">, ([$checked, $disabled, $required]: [boolean, boolean, boolean]) => {
15
- readonly 'data-disabled': boolean;
16
- readonly disabled: boolean;
15
+ readonly 'data-disabled': true | undefined;
16
+ readonly disabled: true | undefined;
17
17
  readonly 'data-state': "checked" | "unchecked";
18
18
  readonly type: "button";
19
19
  readonly role: "switch";
@@ -33,7 +33,7 @@ declare function set(props: CreateSwitchProps): {
33
33
  readonly value: string;
34
34
  readonly checked: boolean;
35
35
  readonly required: boolean;
36
- readonly disabled: boolean;
36
+ readonly disabled: true | undefined;
37
37
  readonly style: string;
38
38
  }, string>;
39
39
  };
@@ -13,7 +13,7 @@ declare function set(props: CreateToggleProps): {
13
13
  subscribe(this: void, run: import("svelte/store").Subscriber<boolean>, invalidate?: import("svelte/store").Invalidator<boolean> | undefined): import("svelte/store").Unsubscriber;
14
14
  }, import("svelte/store").Writable<boolean>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "click">, ([$pressed, $disabled]: [boolean, boolean]) => {
15
15
  readonly 'data-disabled': true | undefined;
16
- readonly disabled: boolean;
16
+ readonly disabled: true | undefined;
17
17
  readonly 'data-state': "on" | "off";
18
18
  readonly 'aria-pressed': boolean;
19
19
  readonly type: "button";
@@ -2,6 +2,7 @@ import { SvelteComponent } from "svelte";
2
2
  declare const __propDef: {
3
3
  props: {
4
4
  forceVisible?: boolean | undefined;
5
+ group?: string | boolean | undefined;
5
6
  closeOnEscape?: boolean | undefined;
6
7
  portal?: string | HTMLElement | null | undefined;
7
8
  positioning?: import("@melt-ui/svelte/internal/actions").FloatingConfig | undefined;
@@ -9,6 +10,7 @@ declare const __propDef: {
9
10
  openDelay?: number | undefined;
10
11
  closeDelay?: number | undefined;
11
12
  closeOnPointerDown?: boolean | undefined;
13
+ disableHoverableContent?: boolean | undefined;
12
14
  open?: boolean | undefined;
13
15
  onOpenChange?: import("../../../internal/types.js").OnChangeFn<boolean | undefined> | undefined;
14
16
  };
@@ -7,9 +7,14 @@ export declare const ctx: {
7
7
  };
8
8
  declare function set(props: CreateTooltipProps): {
9
9
  updateOption: <K extends string, V extends unknown>(key: K, value: V | undefined) => void;
10
+ ids: {
11
+ readonly content: string;
12
+ readonly trigger: string;
13
+ };
10
14
  elements: {
11
15
  trigger: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<import("svelte/store").Stores | undefined, (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"keydown" | "blur" | "focus" | "pointerdown" | "pointerenter" | "pointerleave">, () => {
12
16
  'aria-describedby': string;
17
+ id: string;
13
18
  }, string>;
14
19
  content: import("@melt-ui/svelte/internal/helpers").ExplicitBuilderReturn<[import("svelte/store").Readable<boolean>, import("svelte/store").Writable<string | HTMLElement | null>], (node: HTMLElement) => import("@melt-ui/svelte/internal/types").MeltActionReturn<"pointerdown" | "pointerenter">, ([$isVisible, $portal]: [boolean, string | HTMLElement | null]) => {
15
20
  role: string;
@@ -39,11 +44,13 @@ declare function set(props: CreateTooltipProps): {
39
44
  positioning: import("svelte/store").Writable<import("@melt-ui/svelte/internal/actions").FloatingConfig | {
40
45
  placement: "bottom";
41
46
  }>;
42
- closeOnEscape: import("svelte/store").Writable<boolean>;
43
47
  arrowSize: import("svelte/store").Writable<number>;
48
+ closeOnEscape: import("svelte/store").Writable<boolean>;
49
+ group: import("svelte/store").Writable<string | boolean | undefined>;
44
50
  openDelay: import("svelte/store").Writable<number>;
45
51
  closeDelay: import("svelte/store").Writable<number>;
46
52
  closeOnPointerDown: import("svelte/store").Writable<boolean>;
53
+ disableHoverableContent: import("svelte/store").Writable<boolean>;
47
54
  };
48
55
  };
49
56
  declare function get(sideOffset?: number): TooltipReturn;
package/package.json CHANGED
@@ -1,93 +1,94 @@
1
1
  {
2
- "name": "bits-ui",
3
- "version": "0.5.6",
4
- "license": "MIT",
5
- "exports": {
6
- ".": {
7
- "types": "./dist/index.d.ts",
8
- "svelte": "./dist/index.js"
9
- }
10
- },
11
- "files": [
12
- "dist",
13
- "!dist/**/*.test.*",
14
- "!dist/**/*.spec.*"
15
- ],
16
- "devDependencies": {
17
- "@changesets/cli": "^2.26.2",
18
- "@huntabyte/mdsvex": "0.16.5",
19
- "@melt-ui/pp": "^0.1.2",
20
- "@playwright/test": "^1.28.1",
21
- "@sveltejs/adapter-auto": "^2.0.0",
22
- "@sveltejs/adapter-vercel": "^3.0.3",
23
- "@sveltejs/kit": "^1.20.4",
24
- "@sveltejs/package": "^2.0.0",
25
- "@tailwindcss/typography": "^0.5.9",
26
- "@typescript-eslint/eslint-plugin": "^5.45.0",
27
- "@typescript-eslint/parser": "^5.45.0",
28
- "autoprefixer": "^10.4.14",
29
- "clsx": "^2.0.0",
30
- "concurrently": "^8.2.0",
31
- "contentlayer": "^0.3.4",
32
- "eslint": "^8.28.0",
33
- "eslint-config-prettier": "^8.5.0",
34
- "eslint-plugin-svelte": "^2.30.0",
35
- "esm-env": "^1.0.0",
36
- "hast-util-to-html": "^9.0.0",
37
- "lucide-svelte": "^0.268.0",
38
- "postcss": "^8.4.24",
39
- "postcss-load-config": "^4.0.1",
40
- "prettier": "^2.8.8",
41
- "prettier-plugin-svelte": "^2.10.1",
42
- "publint": "^0.1.9",
43
- "radix-icons-svelte": "^1.2.1",
44
- "rehype-pretty-code": "^0.10.0",
45
- "remark-gfm": "^3.0.1",
46
- "shiki": "^0.14.3",
47
- "shikiji": "^0.4.0",
48
- "svelte": "^4.0.5",
49
- "svelte-check": "^3.4.3",
50
- "svelte-sequential-preprocessor": "^2.0.1",
51
- "svelte-wrap-balancer": "^0.0.4",
52
- "tailwind-merge": "^1.14.0",
53
- "tailwind-variants": "^0.1.13",
54
- "tailwindcss": "^3.3.2",
55
- "tailwindcss-animate": "^1.0.6",
56
- "tslib": "^2.4.1",
57
- "typescript": "^5.0.0",
58
- "unist-builder": "^4.0.0",
59
- "unist-util-visit": "^5.0.0",
60
- "vite": "^4.4.2",
61
- "vitest": "^0.32.2"
62
- },
63
- "svelte": "./dist/index.js",
64
- "types": "./dist/index.d.ts",
65
- "type": "module",
66
- "dependencies": {
67
- "@melt-ui/svelte": "0.41.2",
68
- "nanoid": "^4.0.2"
69
- },
70
- "peerDependencies": {
71
- "svelte": "^4.0.0"
72
- },
73
- "packageManager": "pnpm@8.6.3",
74
- "scripts": {
75
- "dev": "concurrently \"pnpm:dev:content\" \"pnpm:dev:svelte\"",
76
- "dev:content": "contentlayer dev",
77
- "dev:svelte": "vite dev",
78
- "build": "contentlayer build && vite build && pnpm run package",
79
- "build:content": "contentlayer build",
80
- "build:content-cachebust": "contentlayer build --clearCache",
81
- "preview": "vite preview",
82
- "package": "svelte-kit sync && svelte-package && publint",
83
- "test": "pnpm run test:integration && pnpm run test:unit",
84
- "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
85
- "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
86
- "lint": "prettier --plugin-search-dir . --check . && eslint .",
87
- "format": "prettier --plugin-search-dir . --write .",
88
- "test:integration": "playwright test",
89
- "test:unit": "vitest",
90
- "release": "changeset publish",
91
- "changeset": "changeset"
92
- }
93
- }
2
+ "name": "bits-ui",
3
+ "version": "0.6.0",
4
+ "license": "MIT",
5
+ "scripts": {
6
+ "dev": "concurrently \"pnpm:dev:content\" \"pnpm:dev:svelte\"",
7
+ "dev:content": "contentlayer dev",
8
+ "dev:svelte": "vite dev",
9
+ "build": "contentlayer build && vite build && pnpm run package",
10
+ "build:content": "contentlayer build",
11
+ "build:content-cachebust": "contentlayer build --clearCache",
12
+ "preview": "vite preview",
13
+ "package": "svelte-kit sync && svelte-package && publint",
14
+ "prepublishOnly": "pnpm run package",
15
+ "test": "pnpm run test:integration && pnpm run test:unit",
16
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
17
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
18
+ "lint": "prettier --plugin-search-dir . --check . && eslint .",
19
+ "format": "prettier --plugin-search-dir . --write .",
20
+ "test:integration": "playwright test",
21
+ "test:unit": "vitest",
22
+ "release": "changeset publish",
23
+ "changeset": "changeset"
24
+ },
25
+ "exports": {
26
+ ".": {
27
+ "types": "./dist/index.d.ts",
28
+ "svelte": "./dist/index.js"
29
+ }
30
+ },
31
+ "files": [
32
+ "dist",
33
+ "!dist/**/*.test.*",
34
+ "!dist/**/*.spec.*"
35
+ ],
36
+ "devDependencies": {
37
+ "@changesets/cli": "^2.26.2",
38
+ "@huntabyte/mdsvex": "0.16.5",
39
+ "@melt-ui/pp": "^0.1.2",
40
+ "@playwright/test": "^1.28.1",
41
+ "@sveltejs/adapter-auto": "^2.0.0",
42
+ "@sveltejs/adapter-vercel": "^3.0.3",
43
+ "@sveltejs/kit": "^1.20.4",
44
+ "@sveltejs/package": "^2.0.0",
45
+ "@tailwindcss/typography": "^0.5.9",
46
+ "@typescript-eslint/eslint-plugin": "^5.45.0",
47
+ "@typescript-eslint/parser": "^5.45.0",
48
+ "autoprefixer": "^10.4.14",
49
+ "clsx": "^2.0.0",
50
+ "concurrently": "^8.2.0",
51
+ "contentlayer": "^0.3.4",
52
+ "eslint": "^8.28.0",
53
+ "eslint-config-prettier": "^8.5.0",
54
+ "eslint-plugin-svelte": "^2.30.0",
55
+ "esm-env": "^1.0.0",
56
+ "hast-util-to-html": "^9.0.0",
57
+ "lucide-svelte": "^0.268.0",
58
+ "postcss": "^8.4.24",
59
+ "postcss-load-config": "^4.0.1",
60
+ "prettier": "^2.8.8",
61
+ "prettier-plugin-svelte": "^2.10.1",
62
+ "publint": "^0.1.9",
63
+ "radix-icons-svelte": "^1.2.1",
64
+ "rehype-pretty-code": "^0.10.0",
65
+ "remark-gfm": "^3.0.1",
66
+ "shiki": "^0.14.3",
67
+ "shikiji": "^0.4.0",
68
+ "svelte": "^4.0.5",
69
+ "svelte-check": "^3.4.3",
70
+ "svelte-sequential-preprocessor": "^2.0.1",
71
+ "svelte-wrap-balancer": "^0.0.4",
72
+ "tailwind-merge": "^1.14.0",
73
+ "tailwind-variants": "^0.1.13",
74
+ "tailwindcss": "^3.3.2",
75
+ "tailwindcss-animate": "^1.0.6",
76
+ "tslib": "^2.4.1",
77
+ "typescript": "^5.0.0",
78
+ "unist-builder": "^4.0.0",
79
+ "unist-util-visit": "^5.0.0",
80
+ "vite": "^4.4.2",
81
+ "vitest": "^0.32.2"
82
+ },
83
+ "svelte": "./dist/index.js",
84
+ "types": "./dist/index.d.ts",
85
+ "type": "module",
86
+ "dependencies": {
87
+ "@melt-ui/svelte": "0.55.2",
88
+ "nanoid": "^4.0.2"
89
+ },
90
+ "peerDependencies": {
91
+ "svelte": "^4.0.0"
92
+ },
93
+ "packageManager": "pnpm@8.6.3"
94
+ }
@@ -1,11 +0,0 @@
1
- <script>import { melt } from "@melt-ui/svelte";
2
- import { ctx } from "../ctx.js";
3
- export let asChild = false;
4
- const separator = ctx.get().elements.separator;
5
- </script>
6
-
7
- {#if asChild}
8
- <slot builder={$separator} />
9
- {:else}
10
- <div {...$separator} use:$separator.action {...$$restProps} />
11
- {/if}