bits-ui 0.8.5 → 0.9.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 (35) hide show
  1. package/dist/bits/accordion/components/AccordionTrigger.svelte +1 -0
  2. package/dist/bits/alert-dialog/components/AlertDialogAction.svelte +1 -0
  3. package/dist/bits/alert-dialog/components/AlertDialogCancel.svelte +1 -0
  4. package/dist/bits/alert-dialog/components/AlertDialogTrigger.svelte +1 -0
  5. package/dist/bits/checkbox/components/Checkbox.svelte +2 -0
  6. package/dist/bits/collapsible/components/CollapsibleTrigger.svelte +1 -1
  7. package/dist/bits/dialog/components/DialogClose.svelte +1 -0
  8. package/dist/bits/dialog/components/DialogTrigger.svelte +1 -0
  9. package/dist/bits/dropdown-menu/components/DropdownMenuTrigger.svelte +1 -0
  10. package/dist/bits/index.d.ts +1 -0
  11. package/dist/bits/index.js +1 -0
  12. package/dist/bits/menubar/components/MenubarTrigger.svelte +1 -0
  13. package/dist/bits/popover/components/PopoverClose.svelte +1 -0
  14. package/dist/bits/popover/components/PopoverClose.svelte.d.ts +2 -2
  15. package/dist/bits/popover/components/PopoverTrigger.svelte +1 -0
  16. package/dist/bits/popover/types.d.ts +1 -1
  17. package/dist/bits/radio-group/components/RadioGroupItem.svelte +1 -0
  18. package/dist/bits/select/components/SelectTrigger.svelte +1 -0
  19. package/dist/bits/switch/components/Switch.svelte +1 -0
  20. package/dist/bits/tabs/components/TabsTrigger.svelte +1 -0
  21. package/dist/bits/tabs/components/TabsTrigger.svelte.d.ts +110 -102
  22. package/dist/bits/tabs/types.d.ts +2 -1
  23. package/dist/bits/toggle/components/Toggle.svelte +1 -0
  24. package/dist/bits/toggle-group/components/ToggleGroup.svelte +54 -0
  25. package/dist/bits/toggle-group/components/ToggleGroup.svelte.d.ts +243 -0
  26. package/dist/bits/toggle-group/components/ToggleGroupItem.svelte +28 -0
  27. package/dist/bits/toggle-group/components/ToggleGroupItem.svelte.d.ts +255 -0
  28. package/dist/bits/toggle-group/ctx.d.ts +51 -0
  29. package/dist/bits/toggle-group/ctx.js +17 -0
  30. package/dist/bits/toggle-group/index.d.ts +4 -0
  31. package/dist/bits/toggle-group/index.js +6 -0
  32. package/dist/bits/toggle-group/types.d.ts +18 -0
  33. package/dist/bits/toggle-group/types.js +1 -0
  34. package/dist/bits/tooltip/components/TooltipTrigger.svelte +1 -0
  35. package/package.json +1 -1
@@ -14,6 +14,7 @@ const attrs = getAttrs("trigger");
14
14
  {:else}
15
15
  <button
16
16
  {...builder} use:builder.action
17
+ type="button"
17
18
  {...$$restProps}
18
19
  {...attrs}
19
20
  on:m-keydown={dispatch}
@@ -16,6 +16,7 @@ const attrs = getAttrs("action");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -16,6 +16,7 @@ const attrs = getAttrs("cancel");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -16,6 +16,7 @@ const attrs = getAttrs("trigger");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  on:m-click={dispatch}
20
21
  on:m-keydown={dispatch}
21
22
  {...$$restProps}
@@ -47,10 +47,12 @@ const attrs = getAttrs("root");
47
47
  {:else}
48
48
  <button
49
49
  {...builder} use:builder.action
50
+ type="button"
50
51
  {...$$restProps}
51
52
  {...attrs}
52
53
  on:m-click={dispatch}
53
54
  on:m-keydown={dispatch}
55
+ disabled={disabled ? true : undefined}
54
56
  >
55
57
  <slot {builder} {attrs} />
56
58
  </button>
@@ -14,7 +14,7 @@ const attrs = getAttrs("trigger");
14
14
  {#if asChild}
15
15
  <slot {builder} {attrs} />
16
16
  {:else}
17
- <button {...builder} use:builder.action {...$$restProps} {...attrs} on:m-click={dispatch}>
17
+ <button {...builder} use:builder.action type="button" {...$$restProps} {...attrs} on:m-click={dispatch}>
18
18
  <slot {builder} {attrs} />
19
19
  </button>
20
20
  {/if}
@@ -16,6 +16,7 @@ const attrs = getAttrs("close");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -16,6 +16,7 @@ const attrs = getAttrs("trigger");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -16,6 +16,7 @@ const attrs = getAttrs("trigger");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-keydown={dispatch}
@@ -20,4 +20,5 @@ export * as Slider from "./slider/index.js";
20
20
  export * as Switch from "./switch/index.js";
21
21
  export * as Tabs from "./tabs/index.js";
22
22
  export * as Toggle from "./toggle/index.js";
23
+ export * as ToggleGroup from "./toggle-group/index.js";
23
24
  export * as Tooltip from "./tooltip/index.js";
@@ -20,4 +20,5 @@ export * as Slider from "./slider/index.js";
20
20
  export * as Switch from "./switch/index.js";
21
21
  export * as Tabs from "./tabs/index.js";
22
22
  export * as Toggle from "./toggle/index.js";
23
+ export * as ToggleGroup from "./toggle-group/index.js";
23
24
  export * as Tooltip from "./tooltip/index.js";
@@ -16,6 +16,7 @@ const attrs = getAttrs("trigger");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -16,6 +16,7 @@ const attrs = getAttrs("close");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -1,5 +1,5 @@
1
1
  import { SvelteComponent } from "svelte";
2
- import type { TriggerEvents } from "../types.js";
2
+ import type { CloseEvents } from "../types.js";
3
3
  declare const __propDef: {
4
4
  props: {
5
5
  asChild?: boolean | undefined;
@@ -234,7 +234,7 @@ declare const __propDef: {
234
234
  attrs: Record<string, string>;
235
235
  };
236
236
  };
237
- events: TriggerEvents;
237
+ events: CloseEvents;
238
238
  };
239
239
  export type PopoverCloseProps = typeof __propDef.props;
240
240
  export type PopoverCloseEvents = typeof __propDef.events;
@@ -16,6 +16,7 @@ const attrs = getAttrs("trigger");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -8,7 +8,7 @@ type Props = Expand<OmitOpen<CreatePopoverProps> & {
8
8
  }>;
9
9
  type ContentProps<T extends Transition = Transition, In extends Transition = Transition, Out extends Transition = Transition> = Expand<TransitionProps<T, In, Out> & AsChild> & HTMLDivAttributes;
10
10
  type TriggerProps = AsChild & HTMLButtonAttributes;
11
- type CloseProps = AsChild & HTMLButtonAttributes;
11
+ type CloseProps = TriggerProps;
12
12
  type ArrowProps = Expand<{
13
13
  size?: number;
14
14
  } & AsChild> & HTMLDivAttributes;
@@ -18,6 +18,7 @@ const attrs = getAttrs("item");
18
18
  {:else}
19
19
  <button
20
20
  {...builder} use:builder.action
21
+ type="button"
21
22
  {...$$restProps}
22
23
  {...attrs}
23
24
  on:m-click={dispatch}
@@ -16,6 +16,7 @@ const attrs = getAttrs("trigger");
16
16
  {:else}
17
17
  <button
18
18
  {...builder} use:builder.action
19
+ type="button"
19
20
  {...$$restProps}
20
21
  {...attrs}
21
22
  on:m-click={dispatch}
@@ -51,6 +51,7 @@ $:
51
51
  {:else}
52
52
  <button
53
53
  {...builder} use:builder.action
54
+ type="button"
54
55
  {...$$restProps}
55
56
  {...attrs}
56
57
  on:m-click={dispatch}
@@ -18,6 +18,7 @@ const attrs = getAttrs("trigger");
18
18
  {:else}
19
19
  <button
20
20
  {...builder} use:builder.action
21
+ type="button"
21
22
  {...$$restProps}
22
23
  {...attrs}
23
24
  on:m-click={dispatch}
@@ -2,9 +2,17 @@ import { SvelteComponent } from "svelte";
2
2
  import type { TriggerEvents } from "../types.js";
3
3
  declare const __propDef: {
4
4
  props: {
5
- value: string;
5
+ value: string | (string & string[]);
6
6
  disabled?: boolean | undefined;
7
7
  asChild?: boolean | undefined;
8
+ form?: string | null | undefined;
9
+ formaction?: string | null | undefined;
10
+ formenctype?: string | null | undefined;
11
+ formmethod?: string | null | undefined;
12
+ formnovalidate?: boolean | null | undefined;
13
+ formtarget?: string | null | undefined;
14
+ name?: string | null | undefined;
15
+ type?: "button" | "submit" | "reset" | null | undefined;
8
16
  accesskey?: string | null | undefined;
9
17
  autofocus?: boolean | null | undefined;
10
18
  class?: string | null | undefined;
@@ -110,109 +118,109 @@ declare const __propDef: {
110
118
  'aria-valuemin'?: number | null | undefined;
111
119
  'aria-valuenow'?: number | null | undefined;
112
120
  'aria-valuetext'?: string | null | undefined;
113
- 'on:copy'?: import("svelte/elements.js").ClipboardEventHandler<HTMLDivElement> | null | undefined;
114
- 'on:cut'?: import("svelte/elements.js").ClipboardEventHandler<HTMLDivElement> | null | undefined;
115
- 'on:paste'?: import("svelte/elements.js").ClipboardEventHandler<HTMLDivElement> | null | undefined;
116
- 'on:compositionend'?: import("svelte/elements.js").CompositionEventHandler<HTMLDivElement> | null | undefined;
117
- 'on:compositionstart'?: import("svelte/elements.js").CompositionEventHandler<HTMLDivElement> | null | undefined;
118
- 'on:compositionupdate'?: import("svelte/elements.js").CompositionEventHandler<HTMLDivElement> | null | undefined;
119
- 'on:focus'?: import("svelte/elements.js").FocusEventHandler<HTMLDivElement> | null | undefined;
120
- 'on:focusin'?: import("svelte/elements.js").FocusEventHandler<HTMLDivElement> | null | undefined;
121
- 'on:focusout'?: import("svelte/elements.js").FocusEventHandler<HTMLDivElement> | null | undefined;
122
- 'on:blur'?: import("svelte/elements.js").FocusEventHandler<HTMLDivElement> | null | undefined;
123
- 'on:change'?: import("svelte/elements.js").FormEventHandler<HTMLDivElement> | null | undefined;
124
- 'on:beforeinput'?: import("svelte/elements.js").EventHandler<InputEvent, HTMLDivElement> | null | undefined;
125
- 'on:input'?: import("svelte/elements.js").FormEventHandler<HTMLDivElement> | null | undefined;
126
- 'on:reset'?: import("svelte/elements.js").FormEventHandler<HTMLDivElement> | null | undefined;
127
- 'on:submit'?: import("svelte/elements.js").EventHandler<SubmitEvent, HTMLDivElement> | null | undefined;
128
- 'on:invalid'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
129
- 'on:formdata'?: import("svelte/elements.js").EventHandler<FormDataEvent, HTMLDivElement> | null | undefined;
121
+ 'on:copy'?: import("svelte/elements.js").ClipboardEventHandler<HTMLButtonElement> | null | undefined;
122
+ 'on:cut'?: import("svelte/elements.js").ClipboardEventHandler<HTMLButtonElement> | null | undefined;
123
+ 'on:paste'?: import("svelte/elements.js").ClipboardEventHandler<HTMLButtonElement> | null | undefined;
124
+ 'on:compositionend'?: import("svelte/elements.js").CompositionEventHandler<HTMLButtonElement> | null | undefined;
125
+ 'on:compositionstart'?: import("svelte/elements.js").CompositionEventHandler<HTMLButtonElement> | null | undefined;
126
+ 'on:compositionupdate'?: import("svelte/elements.js").CompositionEventHandler<HTMLButtonElement> | null | undefined;
127
+ 'on:focus'?: import("svelte/elements.js").FocusEventHandler<HTMLButtonElement> | null | undefined;
128
+ 'on:focusin'?: import("svelte/elements.js").FocusEventHandler<HTMLButtonElement> | null | undefined;
129
+ 'on:focusout'?: import("svelte/elements.js").FocusEventHandler<HTMLButtonElement> | null | undefined;
130
+ 'on:blur'?: import("svelte/elements.js").FocusEventHandler<HTMLButtonElement> | null | undefined;
131
+ 'on:change'?: import("svelte/elements.js").FormEventHandler<HTMLButtonElement> | null | undefined;
132
+ 'on:beforeinput'?: import("svelte/elements.js").EventHandler<InputEvent, HTMLButtonElement> | null | undefined;
133
+ 'on:input'?: import("svelte/elements.js").FormEventHandler<HTMLButtonElement> | null | undefined;
134
+ 'on:reset'?: import("svelte/elements.js").FormEventHandler<HTMLButtonElement> | null | undefined;
135
+ 'on:submit'?: import("svelte/elements.js").EventHandler<SubmitEvent, HTMLButtonElement> | null | undefined;
136
+ 'on:invalid'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
137
+ 'on:formdata'?: import("svelte/elements.js").EventHandler<FormDataEvent, HTMLButtonElement> | null | undefined;
130
138
  'on:load'?: import("svelte/elements.js").EventHandler<Event, Element> | null | undefined;
131
139
  'on:error'?: import("svelte/elements.js").EventHandler<Event, Element> | null | undefined;
132
- 'on:toggle'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
133
- 'on:keydown'?: import("svelte/elements.js").KeyboardEventHandler<HTMLDivElement> | null | undefined;
134
- 'on:keypress'?: import("svelte/elements.js").KeyboardEventHandler<HTMLDivElement> | null | undefined;
135
- 'on:keyup'?: import("svelte/elements.js").KeyboardEventHandler<HTMLDivElement> | null | undefined;
136
- 'on:abort'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
137
- 'on:canplay'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
138
- 'on:canplaythrough'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
139
- 'on:cuechange'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
140
- 'on:durationchange'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
141
- 'on:emptied'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
142
- 'on:encrypted'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
143
- 'on:ended'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
144
- 'on:loadeddata'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
145
- 'on:loadedmetadata'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
146
- 'on:loadstart'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
147
- 'on:pause'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
148
- 'on:play'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
149
- 'on:playing'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
150
- 'on:progress'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
151
- 'on:ratechange'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
152
- 'on:seeked'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
153
- 'on:seeking'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
154
- 'on:stalled'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
155
- 'on:suspend'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
156
- 'on:timeupdate'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
157
- 'on:volumechange'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
158
- 'on:waiting'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
159
- 'on:auxclick'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
160
- 'on:click'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
161
- 'on:contextmenu'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
162
- 'on:dblclick'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
163
- 'on:drag'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
164
- 'on:dragend'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
165
- 'on:dragenter'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
166
- 'on:dragexit'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
167
- 'on:dragleave'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
168
- 'on:dragover'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
169
- 'on:dragstart'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
170
- 'on:drop'?: import("svelte/elements.js").DragEventHandler<HTMLDivElement> | null | undefined;
171
- 'on:mousedown'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
172
- 'on:mouseenter'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
173
- 'on:mouseleave'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
174
- 'on:mousemove'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
175
- 'on:mouseout'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
176
- 'on:mouseover'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
177
- 'on:mouseup'?: import("svelte/elements.js").MouseEventHandler<HTMLDivElement> | null | undefined;
178
- 'on:select'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
179
- 'on:selectionchange'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
180
- 'on:selectstart'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
181
- 'on:touchcancel'?: import("svelte/elements.js").TouchEventHandler<HTMLDivElement> | null | undefined;
182
- 'on:touchend'?: import("svelte/elements.js").TouchEventHandler<HTMLDivElement> | null | undefined;
183
- 'on:touchmove'?: import("svelte/elements.js").TouchEventHandler<HTMLDivElement> | null | undefined;
184
- 'on:touchstart'?: import("svelte/elements.js").TouchEventHandler<HTMLDivElement> | null | undefined;
185
- 'on:gotpointercapture'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
186
- 'on:pointercancel'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
187
- 'on:pointerdown'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
188
- 'on:pointerenter'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
189
- 'on:pointerleave'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
190
- 'on:pointermove'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
191
- 'on:pointerout'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
192
- 'on:pointerover'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
193
- 'on:pointerup'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
194
- 'on:lostpointercapture'?: import("svelte/elements.js").PointerEventHandler<HTMLDivElement> | null | undefined;
195
- 'on:scroll'?: import("svelte/elements.js").UIEventHandler<HTMLDivElement> | null | undefined;
196
- 'on:resize'?: import("svelte/elements.js").UIEventHandler<HTMLDivElement> | null | undefined;
197
- 'on:wheel'?: import("svelte/elements.js").WheelEventHandler<HTMLDivElement> | null | undefined;
198
- 'on:animationstart'?: import("svelte/elements.js").AnimationEventHandler<HTMLDivElement> | null | undefined;
199
- 'on:animationend'?: import("svelte/elements.js").AnimationEventHandler<HTMLDivElement> | null | undefined;
200
- 'on:animationiteration'?: import("svelte/elements.js").AnimationEventHandler<HTMLDivElement> | null | undefined;
201
- 'on:transitionstart'?: import("svelte/elements.js").TransitionEventHandler<HTMLDivElement> | null | undefined;
202
- 'on:transitionrun'?: import("svelte/elements.js").TransitionEventHandler<HTMLDivElement> | null | undefined;
203
- 'on:transitionend'?: import("svelte/elements.js").TransitionEventHandler<HTMLDivElement> | null | undefined;
204
- 'on:transitioncancel'?: import("svelte/elements.js").TransitionEventHandler<HTMLDivElement> | null | undefined;
205
- 'on:outrostart'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLDivElement> | null | undefined;
206
- 'on:outroend'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLDivElement> | null | undefined;
207
- 'on:introstart'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLDivElement> | null | undefined;
208
- 'on:introend'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLDivElement> | null | undefined;
209
- 'on:message'?: import("svelte/elements.js").MessageEventHandler<HTMLDivElement> | null | undefined;
210
- 'on:messageerror'?: import("svelte/elements.js").MessageEventHandler<HTMLDivElement> | null | undefined;
211
- 'on:visibilitychange'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
212
- 'on:cancel'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
213
- 'on:close'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
214
- 'on:fullscreenchange'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
215
- 'on:fullscreenerror'?: import("svelte/elements.js").EventHandler<Event, HTMLDivElement> | null | undefined;
140
+ 'on:toggle'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
141
+ 'on:keydown'?: import("svelte/elements.js").KeyboardEventHandler<HTMLButtonElement> | null | undefined;
142
+ 'on:keypress'?: import("svelte/elements.js").KeyboardEventHandler<HTMLButtonElement> | null | undefined;
143
+ 'on:keyup'?: import("svelte/elements.js").KeyboardEventHandler<HTMLButtonElement> | null | undefined;
144
+ 'on:abort'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
145
+ 'on:canplay'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
146
+ 'on:canplaythrough'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
147
+ 'on:cuechange'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
148
+ 'on:durationchange'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
149
+ 'on:emptied'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
150
+ 'on:encrypted'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
151
+ 'on:ended'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
152
+ 'on:loadeddata'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
153
+ 'on:loadedmetadata'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
154
+ 'on:loadstart'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
155
+ 'on:pause'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
156
+ 'on:play'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
157
+ 'on:playing'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
158
+ 'on:progress'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
159
+ 'on:ratechange'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
160
+ 'on:seeked'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
161
+ 'on:seeking'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
162
+ 'on:stalled'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
163
+ 'on:suspend'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
164
+ 'on:timeupdate'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
165
+ 'on:volumechange'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
166
+ 'on:waiting'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
167
+ 'on:auxclick'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
168
+ 'on:click'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
169
+ 'on:contextmenu'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
170
+ 'on:dblclick'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
171
+ 'on:drag'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
172
+ 'on:dragend'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
173
+ 'on:dragenter'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
174
+ 'on:dragexit'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
175
+ 'on:dragleave'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
176
+ 'on:dragover'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
177
+ 'on:dragstart'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
178
+ 'on:drop'?: import("svelte/elements.js").DragEventHandler<HTMLButtonElement> | null | undefined;
179
+ 'on:mousedown'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
180
+ 'on:mouseenter'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
181
+ 'on:mouseleave'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
182
+ 'on:mousemove'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
183
+ 'on:mouseout'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
184
+ 'on:mouseover'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
185
+ 'on:mouseup'?: import("svelte/elements.js").MouseEventHandler<HTMLButtonElement> | null | undefined;
186
+ 'on:select'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
187
+ 'on:selectionchange'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
188
+ 'on:selectstart'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
189
+ 'on:touchcancel'?: import("svelte/elements.js").TouchEventHandler<HTMLButtonElement> | null | undefined;
190
+ 'on:touchend'?: import("svelte/elements.js").TouchEventHandler<HTMLButtonElement> | null | undefined;
191
+ 'on:touchmove'?: import("svelte/elements.js").TouchEventHandler<HTMLButtonElement> | null | undefined;
192
+ 'on:touchstart'?: import("svelte/elements.js").TouchEventHandler<HTMLButtonElement> | null | undefined;
193
+ 'on:gotpointercapture'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
194
+ 'on:pointercancel'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
195
+ 'on:pointerdown'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
196
+ 'on:pointerenter'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
197
+ 'on:pointerleave'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
198
+ 'on:pointermove'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
199
+ 'on:pointerout'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
200
+ 'on:pointerover'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
201
+ 'on:pointerup'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
202
+ 'on:lostpointercapture'?: import("svelte/elements.js").PointerEventHandler<HTMLButtonElement> | null | undefined;
203
+ 'on:scroll'?: import("svelte/elements.js").UIEventHandler<HTMLButtonElement> | null | undefined;
204
+ 'on:resize'?: import("svelte/elements.js").UIEventHandler<HTMLButtonElement> | null | undefined;
205
+ 'on:wheel'?: import("svelte/elements.js").WheelEventHandler<HTMLButtonElement> | null | undefined;
206
+ 'on:animationstart'?: import("svelte/elements.js").AnimationEventHandler<HTMLButtonElement> | null | undefined;
207
+ 'on:animationend'?: import("svelte/elements.js").AnimationEventHandler<HTMLButtonElement> | null | undefined;
208
+ 'on:animationiteration'?: import("svelte/elements.js").AnimationEventHandler<HTMLButtonElement> | null | undefined;
209
+ 'on:transitionstart'?: import("svelte/elements.js").TransitionEventHandler<HTMLButtonElement> | null | undefined;
210
+ 'on:transitionrun'?: import("svelte/elements.js").TransitionEventHandler<HTMLButtonElement> | null | undefined;
211
+ 'on:transitionend'?: import("svelte/elements.js").TransitionEventHandler<HTMLButtonElement> | null | undefined;
212
+ 'on:transitioncancel'?: import("svelte/elements.js").TransitionEventHandler<HTMLButtonElement> | null | undefined;
213
+ 'on:outrostart'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLButtonElement> | null | undefined;
214
+ 'on:outroend'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLButtonElement> | null | undefined;
215
+ 'on:introstart'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLButtonElement> | null | undefined;
216
+ 'on:introend'?: import("svelte/elements.js").EventHandler<CustomEvent<null>, HTMLButtonElement> | null | undefined;
217
+ 'on:message'?: import("svelte/elements.js").MessageEventHandler<HTMLButtonElement> | null | undefined;
218
+ 'on:messageerror'?: import("svelte/elements.js").MessageEventHandler<HTMLButtonElement> | null | undefined;
219
+ 'on:visibilitychange'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
220
+ 'on:cancel'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
221
+ 'on:close'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
222
+ 'on:fullscreenchange'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
223
+ 'on:fullscreenerror'?: import("svelte/elements.js").EventHandler<Event, HTMLButtonElement> | null | undefined;
216
224
  };
217
225
  slots: {
218
226
  default: {
@@ -1,5 +1,6 @@
1
1
  import type { CreateTabsProps, TabsTriggerProps } from "@melt-ui/svelte";
2
2
  import type { AsChild, Expand, HTMLDivAttributes, ObjectVariation, OmitValue, OnChangeFn } from "../../internal/index.js";
3
+ import type { HTMLButtonAttributes } from "svelte/elements";
3
4
  import type { CustomEventHandler } from "../../index.js";
4
5
  type Props = Expand<OmitValue<CreateTabsProps> & {
5
6
  orientation?: CreateTabsProps["orientation"] & {};
@@ -9,7 +10,7 @@ type Props = Expand<OmitValue<CreateTabsProps> & {
9
10
  type ContentProps = Expand<{
10
11
  value: string;
11
12
  } & AsChild> & HTMLDivAttributes;
12
- type TriggerProps = Expand<ObjectVariation<TabsTriggerProps> & AsChild> & HTMLDivAttributes;
13
+ type TriggerProps = Expand<ObjectVariation<TabsTriggerProps> & AsChild> & HTMLButtonAttributes;
13
14
  type ListProps = AsChild & HTMLDivAttributes;
14
15
  type TriggerEvents<T extends Element = HTMLButtonElement> = {
15
16
  click: CustomEventHandler<MouseEvent, T>;
@@ -35,6 +35,7 @@ const attrs = getAttrs("root");
35
35
  {:else}
36
36
  <button
37
37
  {...builder} use:builder.action
38
+ type="button"
38
39
  {...$$restProps}
39
40
  {...attrs}
40
41
  on:m-click={dispatch}
@@ -0,0 +1,54 @@
1
+ <script>import { melt } from "@melt-ui/svelte";
2
+ import { setCtx, getAttrs } from "../ctx.js";
3
+ export let kind = "single";
4
+ export let disabled = void 0;
5
+ export let loop = void 0;
6
+ export let value = void 0;
7
+ export let orientation = void 0;
8
+ export let onValueChange = void 0;
9
+ export let asChild = false;
10
+ const {
11
+ elements: { root },
12
+ states: { value: localValue },
13
+ updateOption
14
+ } = setCtx({
15
+ disabled,
16
+ type: kind,
17
+ defaultValue: value,
18
+ loop,
19
+ orientation,
20
+ onValueChange: ({ next }) => {
21
+ if (Array.isArray(next)) {
22
+ onValueChange?.(next);
23
+ value = next;
24
+ return next;
25
+ }
26
+ if (value !== next) {
27
+ onValueChange?.(next);
28
+ value = next;
29
+ }
30
+ return next;
31
+ }
32
+ });
33
+ $:
34
+ value !== void 0 && localValue.set(value);
35
+ $:
36
+ updateOption("disabled", disabled);
37
+ $:
38
+ updateOption("loop", loop);
39
+ $:
40
+ updateOption("type", kind);
41
+ $:
42
+ updateOption("orientation", orientation);
43
+ $:
44
+ builder = $root;
45
+ const attrs = getAttrs("root");
46
+ </script>
47
+
48
+ {#if asChild}
49
+ <slot {builder} {attrs} />
50
+ {:else}
51
+ <div {...builder} use:builder.action {...$$restProps} {...attrs}>
52
+ <slot {builder} {attrs} />
53
+ </div>
54
+ {/if}