@pzerelles/headlessui-svelte 2.1.2-next.16 → 2.1.2-next.18

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/button/Button.svelte.d.ts +1 -1
  2. package/dist/checkbox/Checkbox.svelte.d.ts +1 -1
  3. package/dist/close-button/CloseButton.svelte.d.ts +2 -2
  4. package/dist/data-interactive/DataInteractive.svelte.d.ts +1 -1
  5. package/dist/description/Description.svelte.d.ts +1 -1
  6. package/dist/dialog/Dialog.svelte.d.ts +1 -1
  7. package/dist/dialog/DialogBackdrop.svelte.d.ts +1 -1
  8. package/dist/dialog/DialogPanel.svelte.d.ts +1 -1
  9. package/dist/dialog/DialogTitle.svelte.d.ts +1 -1
  10. package/dist/dialog/InternalDialog.svelte.d.ts +1 -1
  11. package/dist/field/Field.svelte.d.ts +1 -1
  12. package/dist/fieldset/Fieldset.svelte.d.ts +1 -1
  13. package/dist/focus-trap/FocusTrap.svelte.d.ts +1 -1
  14. package/dist/input/Input.svelte.d.ts +1 -1
  15. package/dist/internal/Hidden.svelte.d.ts +1 -1
  16. package/dist/label/Label.svelte.d.ts +1 -1
  17. package/dist/legend/Legend.svelte +2 -2
  18. package/dist/legend/Legend.svelte.d.ts +18 -30
  19. package/dist/listbox/Listbox.svelte +4 -0
  20. package/dist/listbox/Listbox.svelte.d.ts +4 -2
  21. package/dist/listbox/ListboxButton.svelte.d.ts +1 -1
  22. package/dist/listbox/ListboxOption.svelte +1 -1
  23. package/dist/listbox/ListboxOption.svelte.d.ts +1 -1
  24. package/dist/listbox/ListboxOptions.svelte.d.ts +1 -1
  25. package/dist/listbox/ListboxSelectedOption.svelte.d.ts +1 -1
  26. package/dist/listbox/context.svelte.d.ts +1 -0
  27. package/dist/listbox/context.svelte.js +2 -2
  28. package/dist/menu/Menu.svelte.d.ts +1 -1
  29. package/dist/menu/MenuButton.svelte.d.ts +1 -1
  30. package/dist/menu/MenuHeading.svelte.d.ts +1 -1
  31. package/dist/menu/MenuItem.svelte.d.ts +6 -5
  32. package/dist/menu/MenuItems.svelte.d.ts +1 -1
  33. package/dist/menu/MenuSection.svelte.d.ts +1 -1
  34. package/dist/menu/MenuSeparator.svelte.d.ts +1 -1
  35. package/dist/portal/InternalPortal.svelte.d.ts +1 -1
  36. package/dist/portal/PortalGroup.svelte.d.ts +1 -1
  37. package/dist/select/Select.svelte.d.ts +1 -1
  38. package/dist/switch/Switch.svelte.d.ts +1 -1
  39. package/dist/switch/SwitchGroup.svelte.d.ts +1 -1
  40. package/dist/tabs/Tab.svelte.d.ts +1 -1
  41. package/dist/tabs/TabGroup.svelte.d.ts +2 -2
  42. package/dist/tabs/TabList.svelte.d.ts +1 -1
  43. package/dist/tabs/TabPanel.svelte.d.ts +1 -1
  44. package/dist/tabs/TabPanels.svelte.d.ts +1 -1
  45. package/dist/textarea/Textarea.svelte.d.ts +1 -1
  46. package/dist/transition/InternalTransitionChild.svelte.d.ts +1 -1
  47. package/dist/transition/Transition.svelte.d.ts +1 -1
  48. package/dist/transition/TransitionChild.svelte.d.ts +1 -1
  49. package/dist/utils/ElementOrComponent.svelte.d.ts +2 -2
  50. package/dist/utils/Generic.svelte.d.ts +1 -1
  51. package/dist/utils/alternative-types.d.ts +1 -2
  52. package/dist/utils/types.d.ts +1 -2
  53. package/package.json +5 -5
  54. package/dist/internal/inner.svelte.d.ts +0 -91
  55. package/dist/internal/inner.svelte.js +0 -202
@@ -17,7 +17,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_BUTTON
17
17
  props(): {
18
18
  as?: TTag | undefined;
19
19
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled" | "autofocus" | "type"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
20
- children?: import("../utils/types.js").Children<ButtonRenderPropArg> | undefined;
20
+ children?: import("svelte").Snippet<[ButtonRenderPropArg, Record<string, any>]> | undefined;
21
21
  ref?: HTMLElement;
22
22
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
23
23
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: ButtonRenderPropArg) => string) | undefined;
@@ -26,7 +26,7 @@ declare class __sveltets_Render<TType, TTag extends ElementType = typeof DEFAULT
26
26
  props(): {
27
27
  as?: TTag | undefined;
28
28
  } & (Exclude<keyof PropsOf<TTag>, "form" | ("as" | "children" | "refName" | "class") | "disabled" | "autofocus" | "value" | "checked" | "name" | "onchange" | "indeterminate" | CheckboxPropsWeControl | "defaultChecked"> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
29
- children?: import("../utils/types.js").Children<CheckboxRenderPropArg> | undefined;
29
+ children?: import("svelte").Snippet<[CheckboxRenderPropArg, Record<string, any>]> | undefined;
30
30
  ref?: HTMLElement;
31
31
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
32
32
  class?: PropsOf<TTag>["class"] | ((bag: CheckboxRenderPropArg) => string) | undefined;
@@ -6,13 +6,13 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_BUTTON
6
6
  props(): {
7
7
  as?: TTag | undefined;
8
8
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled" | "autofocus" | "type"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
9
- children?: import("../utils/types.js").Children<{
9
+ children?: import("svelte").Snippet<[{
10
10
  disabled: boolean;
11
11
  hover: boolean;
12
12
  focus: boolean;
13
13
  active: boolean;
14
14
  autofocus: boolean;
15
- }> | undefined;
15
+ }, Record<string, any>]> | undefined;
16
16
  ref?: HTMLElement;
17
17
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
18
18
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: {
@@ -13,7 +13,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_DATA_I
13
13
  props(): {
14
14
  as?: TTag | undefined;
15
15
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
16
- children?: import("../utils/types.js").Children<DataInteractiveRenderPropArg> | undefined;
16
+ children?: Snippet<[DataInteractiveRenderPropArg, Record<string, any>]> | undefined;
17
17
  ref?: HTMLElement;
18
18
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
19
19
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: DataInteractiveRenderPropArg) => string) | undefined;
@@ -5,7 +5,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_DESCRI
5
5
  props(): {
6
6
  as?: TTag | undefined;
7
7
  } & (Exclude<keyof PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
8
- children?: import("../utils/types.js").Children<{}> | undefined;
8
+ children?: import("svelte").Snippet<[{}, Record<string, any>]> | undefined;
9
9
  ref?: HTMLElement;
10
10
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
11
11
  class?: PropsOf<TTag>["class"] | ((bag: {}) => string) | undefined;
@@ -22,7 +22,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_DIALOG
22
22
  props(): {
23
23
  as?: TTag | undefined;
24
24
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "autofocus" | "unmount" | "static" | "id" | "role" | "onclose" | "initialFocus" | DialogPropsWeControl | "open" | "transition" | "__demoMode"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
25
- children?: import("../utils/types.js").Children<DialogRenderPropArg> | undefined;
25
+ children?: Snippet<[DialogRenderPropArg, Record<string, any>]> | undefined;
26
26
  ref?: HTMLElement;
27
27
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
28
28
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: DialogRenderPropArg) => string) | undefined;
@@ -10,7 +10,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_BACKDR
10
10
  props(): {
11
11
  as?: TTag | undefined;
12
12
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "transition"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
13
- children?: import("../utils/types.js").Children<BackdropRenderPropArg> | undefined;
13
+ children?: import("svelte").Snippet<[BackdropRenderPropArg, Record<string, any>]> | undefined;
14
14
  ref?: HTMLElement;
15
15
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
16
16
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: BackdropRenderPropArg) => string) | undefined;
@@ -11,7 +11,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_PANEL_
11
11
  props(): {
12
12
  as?: TTag | undefined;
13
13
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "id" | "transition"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
14
- children?: import("../utils/types.js").Children<PanelRenderPropArg> | undefined;
14
+ children?: import("svelte").Snippet<[PanelRenderPropArg, Record<string, any>]> | undefined;
15
15
  ref?: HTMLElement;
16
16
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
17
17
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: PanelRenderPropArg) => string) | undefined;
@@ -8,7 +8,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TITLE_
8
8
  props(): {
9
9
  as?: TTag | undefined;
10
10
  } & (Exclude<keyof PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
11
- children?: import("../utils/types.js").Children<TitleRenderPropArg> | undefined;
11
+ children?: import("svelte").Snippet<[TitleRenderPropArg, Record<string, any>]> | undefined;
12
12
  ref?: HTMLElement;
13
13
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
14
14
  class?: PropsOf<TTag>["class"] | ((bag: TitleRenderPropArg) => string) | undefined;
@@ -4,7 +4,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_DIALOG
4
4
  props(): {
5
5
  as?: TTag | undefined;
6
6
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "autofocus" | "unmount" | "static" | "id" | "role" | "onclose" | "initialFocus" | ("aria-describedby" | "aria-labelledby" | "aria-modal") | "open" | "transition" | "__demoMode"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
7
- children?: import("../utils/types.js").Children<DialogRenderPropArg> | undefined;
7
+ children?: import("svelte").Snippet<[DialogRenderPropArg, Record<string, any>]> | undefined;
8
8
  ref?: HTMLElement;
9
9
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
10
10
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: DialogRenderPropArg) => string) | undefined;
@@ -9,7 +9,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_FIELD_
9
9
  props(): {
10
10
  as?: TTag | undefined;
11
11
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
12
- children?: import("../utils/types.js").Children<FieldRenderPropArg> | undefined;
12
+ children?: import("svelte").Snippet<[FieldRenderPropArg, Record<string, any>]> | undefined;
13
13
  ref?: HTMLElement;
14
14
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
15
15
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: FieldRenderPropArg) => string) | undefined;
@@ -9,7 +9,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_FIELDS
9
9
  props(): {
10
10
  as?: TTag | undefined;
11
11
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled" | FieldsetPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
12
- children?: import("../utils/types.js").Children<FieldsetRenderPropArg> | undefined;
12
+ children?: import("svelte").Snippet<[FieldsetRenderPropArg, Record<string, any>]> | undefined;
13
13
  ref?: HTMLElement;
14
14
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
15
15
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: FieldsetRenderPropArg) => string) | undefined;
@@ -15,7 +15,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_FOCUS_
15
15
  props(): {
16
16
  as?: TTag | undefined;
17
17
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "features" | "containers" | "initialFocus" | "initialFocusFallback"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
18
- children?: import("../utils/types.js").Children<FocusTrapRenderPropArg> | undefined;
18
+ children?: import("svelte").Snippet<[FocusTrapRenderPropArg, Record<string, any>]> | undefined;
19
19
  ref?: HTMLElement;
20
20
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
21
21
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: FocusTrapRenderPropArg) => string) | undefined;
@@ -19,7 +19,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_INPUT_
19
19
  as?: TTag | undefined;
20
20
  value?: TValue | undefined;
21
21
  } & (Exclude<keyof PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "invalid" | "disabled" | "autofocus" | "value" | InputPropsWeControl> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
22
- children?: import("../utils/types.js").Children<InputRenderPropArg> | undefined;
22
+ children?: import("svelte").Snippet<[InputRenderPropArg, Record<string, any>]> | undefined;
23
23
  ref?: HTMLElement;
24
24
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
25
25
  class?: PropsOf<TTag>["class"] | ((bag: InputRenderPropArg) => string) | undefined;
@@ -11,7 +11,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_VISUAL
11
11
  props(): {
12
12
  as?: TTag | undefined;
13
13
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "features"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
14
- children?: import("../utils/types.js").Children<HiddenRenderPropArg> | undefined;
14
+ children?: import("svelte").Snippet<[HiddenRenderPropArg, Record<string, any>]> | undefined;
15
15
  ref?: HTMLElement;
16
16
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
17
17
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HiddenRenderPropArg) => string) | undefined;
@@ -8,7 +8,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_LABEL_
8
8
  props(): {
9
9
  as?: TTag | undefined;
10
10
  } & (Exclude<keyof PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
11
- children?: import("../utils/types.js").Children<{}> | undefined;
11
+ children?: import("svelte").Snippet<[{}, Record<string, any>]> | undefined;
12
12
  ref?: HTMLElement;
13
13
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
14
14
  class?: PropsOf<TTag>["class"] | ((bag: {}) => string) | undefined;
@@ -1,8 +1,8 @@
1
1
  <script lang="ts" module>import { Label } from "../index.js";
2
- const DEFAULT_LEGEND_TAG = Label;
2
+ const DEFAULT_LEGEND_TAG = "div";
3
3
  </script>
4
4
 
5
- <script lang="ts" generics="TTag extends ElementType = typeof DEFAULT_LEGEND_TAG">let { ...props } = $props();
5
+ <script lang="ts">let { ...props } = $props();
6
6
  </script>
7
7
 
8
8
  <Label as="div" {...props} />
@@ -1,35 +1,23 @@
1
- import { type LabelProps } from "../index.js";
2
- import type { ElementType, Props } from "../utils/types.js";
3
- import type { Component } from "svelte";
4
- declare const DEFAULT_LEGEND_TAG: Component<LabelProps, any>;
1
+ import type { Props } from "../utils/types.js";
2
+ declare const DEFAULT_LEGEND_TAG: "div";
5
3
  type LegendRenderPropArg = {};
6
4
  type LegendPropsWeControl = never;
7
- export type LegendProps<TTag extends ElementType = typeof DEFAULT_LEGEND_TAG> = Props<TTag, LegendRenderPropArg, LegendPropsWeControl, {}>;
8
- declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_LEGEND_TAG> {
9
- props(): {
10
- as?: TTag | undefined;
11
- } & (Exclude<keyof import("../index.js").PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof import("../index.js").PropsOf<TTag> ? { [P in T]: import("../index.js").PropsOf<TTag>[P]; } : never) & {
12
- children?: import("../index.js").Children<LegendRenderPropArg> | undefined;
13
- ref?: HTMLElement;
14
- } & (true extends (import("../index.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../index.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
15
- class?: import("../index.js").PropsOf<TTag>["class"] | ((bag: LegendRenderPropArg) => string) | undefined;
16
- } : {});
17
- events(): {} & {
18
- [evt: string]: CustomEvent<any>;
5
+ export type LegendProps = Props<typeof DEFAULT_LEGEND_TAG, LegendRenderPropArg, LegendPropsWeControl, {}>;
6
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
7
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
8
+ $$bindings?: Bindings;
9
+ } & Exports;
10
+ (internal: unknown, props: Props & {
11
+ $$events?: Events;
12
+ $$slots?: Slots;
13
+ }): Exports & {
14
+ $set?: any;
15
+ $on?: any;
19
16
  };
20
- slots(): {};
21
- bindings(): "";
22
- exports(): {};
17
+ z_$$bindings?: Bindings;
23
18
  }
24
- interface $$IsomorphicComponent {
25
- new <TTag extends ElementType = typeof DEFAULT_LEGEND_TAG>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TTag>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TTag>['props']>, ReturnType<__sveltets_Render<TTag>['events']>, ReturnType<__sveltets_Render<TTag>['slots']>> & {
26
- $$bindings?: ReturnType<__sveltets_Render<TTag>['bindings']>;
27
- } & ReturnType<__sveltets_Render<TTag>['exports']>;
28
- <TTag extends ElementType = typeof DEFAULT_LEGEND_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {
29
- $$events?: ReturnType<__sveltets_Render<TTag>['events']>;
30
- }): ReturnType<__sveltets_Render<TTag>['exports']>;
31
- z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
32
- }
33
- declare const Legend: $$IsomorphicComponent;
34
- type Legend<TTag extends ElementType = typeof DEFAULT_LEGEND_TAG> = InstanceType<typeof Legend<TTag>>;
19
+ declare const Legend: $$__sveltets_2_IsomorphicComponent<LegendProps, {
20
+ [evt: string]: CustomEvent<any>;
21
+ }, {}, {}, "">;
22
+ type Legend = InstanceType<typeof Legend>;
35
23
  export default Legend;
@@ -208,6 +208,7 @@ let {
208
208
  disabled: ownDisabled = false,
209
209
  horizontal = false,
210
210
  multiple = false,
211
+ closeOnSelect,
211
212
  __demoMode = false,
212
213
  ...theirProps
213
214
  } = $props();
@@ -283,6 +284,9 @@ const data = {
283
284
  get orientation() {
284
285
  return orientation;
285
286
  },
287
+ get closeOnSelect() {
288
+ return closeOnSelect;
289
+ },
286
290
  compare,
287
291
  isSelected,
288
292
  get optionsProps() {
@@ -19,6 +19,7 @@ export type ListboxProps<TTag extends ElementType = typeof DEFAULT_LISTBOX_TAG,
19
19
  form?: string;
20
20
  name?: string;
21
21
  multiple?: boolean;
22
+ closeOnSelect?: boolean;
22
23
  __demoMode?: boolean;
23
24
  }>;
24
25
  export type ListboxChildren<T> = Snippet<[ListboxRenderPropArg<T>]>;
@@ -26,8 +27,8 @@ export * from "./context.svelte.js";
26
27
  declare class __sveltets_Render<TType, TActualType, TTag extends ElementType = typeof DEFAULT_LISTBOX_TAG> {
27
28
  props(): {
28
29
  as?: TTag | undefined;
29
- } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, "form" | ("as" | "children" | "refName" | "class") | "invalid" | "disabled" | "value" | "name" | "onchange" | "multiple" | "__demoMode" | "horizontal" | "defaultValue" | "by"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
30
- children?: import("../utils/types.js").Children<ListboxRenderPropArg<TType>> | undefined;
30
+ } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, "form" | ("as" | "children" | "refName" | "class") | "invalid" | "disabled" | "value" | "name" | "onchange" | "multiple" | "__demoMode" | "horizontal" | "defaultValue" | "by" | "closeOnSelect"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
31
+ children?: Snippet<[ListboxRenderPropArg<TType>, Record<string, any>]> | undefined;
31
32
  ref?: HTMLElement;
32
33
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
33
34
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: ListboxRenderPropArg<TType>) => string) | undefined;
@@ -42,6 +43,7 @@ declare class __sveltets_Render<TType, TActualType, TTag extends ElementType = t
42
43
  form?: string;
43
44
  name?: string;
44
45
  multiple?: boolean;
46
+ closeOnSelect?: boolean;
45
47
  __demoMode?: boolean;
46
48
  };
47
49
  events(): {} & {
@@ -21,7 +21,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_BUTTON
21
21
  props(): {
22
22
  as?: TTag | undefined;
23
23
  } & (Exclude<keyof PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "autofocus" | ButtonPropsWeControl> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
24
- children?: import("../utils/types.js").Children<ButtonRenderPropArg> | undefined;
24
+ children?: Snippet<[ButtonRenderPropArg, Record<string, any>]> | undefined;
25
25
  ref?: HTMLElement;
26
26
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
27
27
  class?: PropsOf<TTag>["class"] | ((bag: ButtonRenderPropArg) => string) | undefined;
@@ -75,7 +75,7 @@ onMount(() => {
75
75
  const handleClick = (event) => {
76
76
  if (disabled) return event.preventDefault();
77
77
  actions.onChange(value);
78
- if (data.mode === ValueMode.Single) {
78
+ if (data.closeOnSelect === true || data.closeOnSelect === void 0 && data.mode === ValueMode.Single) {
79
79
  actions.closeListbox();
80
80
  data.buttonElement?.focus({ preventScroll: true });
81
81
  }
@@ -20,7 +20,7 @@ declare class __sveltets_Render<TType, TTag extends ElementType = typeof DEFAULT
20
20
  props(): {
21
21
  as?: TTag | undefined;
22
22
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled" | "value" | "id" | OptionPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
23
- children?: import("../utils/types.js").Children<OptionRenderPropArg> | undefined;
23
+ children?: Snippet<[OptionRenderPropArg, Record<string, any>]> | undefined;
24
24
  ref?: HTMLElement;
25
25
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
26
26
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: OptionRenderPropArg) => string) | undefined;
@@ -20,7 +20,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_OPTION
20
20
  props(): {
21
21
  as?: TTag | undefined;
22
22
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "anchor" | "unmount" | "static" | "id" | "transition" | OptionsPropsWeControl | "portal" | "modal"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
23
- children?: import("../utils/types.js").Children<OptionsRenderPropArg> | undefined;
23
+ children?: Snippet<[OptionsRenderPropArg, Record<string, any>]> | undefined;
24
24
  ref?: HTMLElement;
25
25
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
26
26
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: OptionsRenderPropArg) => string) | undefined;
@@ -11,7 +11,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_SELECT
11
11
  props(): {
12
12
  as?: TTag | undefined;
13
13
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "placeholder" | "options"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
14
- children?: import("../utils/types.js").Children<SelectedOptionRenderPropArg> | undefined;
14
+ children?: Snippet<[SelectedOptionRenderPropArg, Record<string, any>]> | undefined;
15
15
  ref?: HTMLElement;
16
16
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
17
17
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: SelectedOptionRenderPropArg) => string) | undefined;
@@ -62,6 +62,7 @@ export type ListboxDataContext<T = unknown> = {
62
62
  mode: ValueMode;
63
63
  orientation: "horizontal" | "vertical";
64
64
  activeOptionIndex: number | null;
65
+ closeOnSelect?: boolean;
65
66
  compare(a: T, z: T): boolean;
66
67
  isSelected(value: T): boolean;
67
68
  optionsProps: {
@@ -17,7 +17,7 @@ export var ActivationTrigger;
17
17
  export function useActions(component) {
18
18
  const context = getContext("ListboxActionsContext");
19
19
  if (!context) {
20
- let err = new Error(`<${component} /> is missing a parent <Listbox /> component.`);
20
+ const err = new Error(`<${component} /> is missing a parent <Listbox /> component.`);
21
21
  if (Error.captureStackTrace)
22
22
  Error.captureStackTrace(err, useActions);
23
23
  throw err;
@@ -27,7 +27,7 @@ export function useActions(component) {
27
27
  export function useData(component) {
28
28
  const context = getContext("ListboxDataContext");
29
29
  if (!context) {
30
- let err = new Error(`<${component} /> is missing a parent <Listbox /> component.`);
30
+ const err = new Error(`<${component} /> is missing a parent <Listbox /> component.`);
31
31
  if (Error.captureStackTrace)
32
32
  Error.captureStackTrace(err, useData);
33
33
  throw err;
@@ -14,7 +14,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_MENU_T
14
14
  props(): {
15
15
  as?: TTag | undefined;
16
16
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "__demoMode"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
17
- children?: import("../utils/types.js").Children<MenuRenderPropArg> | undefined;
17
+ children?: Snippet<[MenuRenderPropArg, Record<string, any>]> | undefined;
18
18
  ref?: HTMLElement;
19
19
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
20
20
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: MenuRenderPropArg) => string) | undefined;
@@ -21,7 +21,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_BUTTON
21
21
  props(): {
22
22
  as?: TTag | undefined;
23
23
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled" | "autofocus" | "type" | "id" | ButtonPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
24
- children?: import("../utils/types.js").Children<ButtonRenderPropArg> | undefined;
24
+ children?: Snippet<[ButtonRenderPropArg, Record<string, any>]> | undefined;
25
25
  ref?: HTMLElement;
26
26
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
27
27
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: ButtonRenderPropArg) => string) | undefined;
@@ -11,7 +11,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_HEADIN
11
11
  props(): {
12
12
  as?: TTag | undefined;
13
13
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "id" | "role"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
14
- children?: import("../utils/types.js").Children<HeadingRenderPropArg> | undefined;
14
+ children?: Snippet<[HeadingRenderPropArg, Record<string, any>]> | undefined;
15
15
  ref?: HTMLElement;
16
16
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
17
17
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HeadingRenderPropArg) => string) | undefined;
@@ -1,4 +1,5 @@
1
- import type { Props, ElementType, Children } from "../utils/types.js";
1
+ import type { Props, ElementType } from "../utils/types.js";
2
+ import { type Snippet } from "svelte";
2
3
  declare const DEFAULT_ITEM_TAG: "svelte:fragment";
3
4
  type ItemRenderPropArg = {
4
5
  /** @deprecated use `focus` instead */
@@ -12,21 +13,21 @@ type ItemPropsWeControl = "aria-describedby" | "aria-disabled" | "aria-labelledb
12
13
  export type MenuItemProps<TTag extends ElementType = typeof DEFAULT_ITEM_TAG> = Props<TTag, ItemRenderPropArg, ItemPropsWeControl | "children", {
13
14
  id?: string;
14
15
  disabled?: boolean;
15
- children: Children<ItemRenderPropArg>;
16
+ children: Snippet<[ItemRenderPropArg]>;
16
17
  }>;
17
- export type MenuItemChildren = Children<ItemRenderPropArg>;
18
+ export type MenuItemChildren = Snippet<[ItemRenderPropArg]>;
18
19
  declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_ITEM_TAG> {
19
20
  props(): {
20
21
  as?: TTag | undefined;
21
22
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled" | "id" | ItemPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
22
- children?: Children<ItemRenderPropArg> | undefined;
23
+ children?: Snippet<[ItemRenderPropArg, Record<string, any>]> | undefined;
23
24
  ref?: HTMLElement;
24
25
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
25
26
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: ItemRenderPropArg) => string) | undefined;
26
27
  } : {}) & {
27
28
  id?: string;
28
29
  disabled?: boolean;
29
- children: Children<ItemRenderPropArg>;
30
+ children: Snippet<[ItemRenderPropArg]>;
30
31
  };
31
32
  events(): {} & {
32
33
  [evt: string]: CustomEvent<any>;
@@ -20,7 +20,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_ITEMS_
20
20
  props(): {
21
21
  as?: TTag | undefined;
22
22
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "anchor" | "unmount" | "static" | "id" | "transition" | "portal" | "modal" | ItemsPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
23
- children?: import("../utils/types.js").Children<ItemsRenderPropArg> | undefined;
23
+ children?: Snippet<[ItemsRenderPropArg, Record<string, any>]> | undefined;
24
24
  ref?: HTMLElement;
25
25
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
26
26
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: ItemsRenderPropArg) => string) | undefined;
@@ -9,7 +9,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_SECTIO
9
9
  props(): {
10
10
  as?: TTag | undefined;
11
11
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | SectionPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
12
- children?: import("../utils/types.js").Children<SectionRenderPropArg> | undefined;
12
+ children?: Snippet<[SectionRenderPropArg, Record<string, any>]> | undefined;
13
13
  ref?: HTMLElement;
14
14
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
15
15
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: SectionRenderPropArg) => string) | undefined;
@@ -9,7 +9,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_SEPARA
9
9
  props(): {
10
10
  as?: TTag | undefined;
11
11
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "role"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
12
- children?: import("../utils/types.js").Children<SeparatorRenderPropArg> | undefined;
12
+ children?: Snippet<[SeparatorRenderPropArg, Record<string, any>]> | undefined;
13
13
  ref?: HTMLElement;
14
14
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
15
15
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: SeparatorRenderPropArg) => string) | undefined;
@@ -15,7 +15,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_PORTAL
15
15
  props(): {
16
16
  as?: TTag | undefined;
17
17
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "enabled"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
18
- children?: import("../utils/types.js").Children<PortalRenderPropArg> | undefined;
18
+ children?: import("svelte").Snippet<[PortalRenderPropArg, Record<string, any>]> | undefined;
19
19
  ref?: HTMLElement;
20
20
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
21
21
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: PortalRenderPropArg) => string) | undefined;
@@ -12,7 +12,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_GROUP_
12
12
  props(): {
13
13
  as?: TTag | undefined;
14
14
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "target"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
15
- children?: import("../utils/types.js").Children<GroupRenderPropArg> | undefined;
15
+ children?: import("svelte").Snippet<[GroupRenderPropArg, Record<string, any>]> | undefined;
16
16
  ref?: HTMLElement;
17
17
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
18
18
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: GroupRenderPropArg) => string) | undefined;
@@ -18,7 +18,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_SELECT
18
18
  props(): {
19
19
  as?: TTag | undefined;
20
20
  } & (Exclude<keyof PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "invalid" | "disabled" | "autofocus" | SelectPropsWeControl> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
21
- children?: import("../utils/types.js").Children<SelectRenderPropArg> | undefined;
21
+ children?: import("svelte").Snippet<[SelectRenderPropArg, Record<string, any>]> | undefined;
22
22
  ref?: HTMLElement;
23
23
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
24
24
  class?: PropsOf<TTag>["class"] | ((bag: SelectRenderPropArg) => string) | undefined;
@@ -25,7 +25,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_SWITCH
25
25
  props(): {
26
26
  as?: TTag | undefined;
27
27
  } & (Exclude<keyof PropsOf<TTag>, "form" | ("as" | "children" | "refName" | "class") | "disabled" | "autofocus" | "value" | "checked" | "name" | "onchange" | "tabIndex" | "defaultChecked" | SwitchPropsWeControl> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
28
- children?: import("../utils/types.js").Children<SwitchRenderPropArg> | undefined;
28
+ children?: import("svelte").Snippet<[SwitchRenderPropArg, Record<string, any>]> | undefined;
29
29
  ref?: HTMLElement;
30
30
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
31
31
  class?: PropsOf<TTag>["class"] | ((bag: SwitchRenderPropArg) => string) | undefined;
@@ -8,7 +8,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_GROUP_
8
8
  props(): {
9
9
  as?: TTag | undefined;
10
10
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
11
- children?: import("../utils/types.js").Children<{}> | undefined;
11
+ children?: import("svelte").Snippet<[{}, Record<string, any>]> | undefined;
12
12
  ref?: HTMLElement;
13
13
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
14
14
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: {}) => string) | undefined;
@@ -18,7 +18,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TAB_TA
18
18
  props(): {
19
19
  as?: TTag | undefined;
20
20
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "disabled" | "autofocus" | "id" | TabPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
21
- children?: import("../utils/types.js").Children<TabRenderPropArg> | undefined;
21
+ children?: import("svelte").Snippet<[TabRenderPropArg, Record<string, any>]> | undefined;
22
22
  ref?: HTMLElement;
23
23
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
24
24
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: TabRenderPropArg) => string) | undefined;
@@ -34,8 +34,8 @@ import type { MutableRefObject } from "../utils/ref.svelte.js";
34
34
  declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TABS_TAG> {
35
35
  props(): {
36
36
  as?: TTag | undefined;
37
- } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "onchange" | "vertical" | "manual" | "defaultIndex" | "selectedIndex"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
38
- children?: import("../utils/types.js").Children<TabsRenderPropArg> | undefined;
37
+ } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "onchange" | "manual" | "vertical" | "defaultIndex" | "selectedIndex"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
38
+ children?: import("svelte").Snippet<[TabsRenderPropArg, Record<string, any>]> | undefined;
39
39
  ref?: HTMLElement;
40
40
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
41
41
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: TabsRenderPropArg) => string) | undefined;
@@ -9,7 +9,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_LIST_T
9
9
  props(): {
10
10
  as?: TTag | undefined;
11
11
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | ListPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
12
- children?: import("../utils/types.js").Children<ListRenderPropArg> | undefined;
12
+ children?: import("svelte").Snippet<[ListRenderPropArg, Record<string, any>]> | undefined;
13
13
  ref?: HTMLElement;
14
14
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
15
15
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: ListRenderPropArg) => string) | undefined;
@@ -15,7 +15,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_PANEL_
15
15
  props(): {
16
16
  as?: TTag | undefined;
17
17
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "unmount" | "static" | "id" | "tabIndex" | PanelPropsWeControl> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
18
- children?: import("../utils/types.js").Children<PanelRenderPropArg> | undefined;
18
+ children?: import("svelte").Snippet<[PanelRenderPropArg, Record<string, any>]> | undefined;
19
19
  ref?: HTMLElement;
20
20
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
21
21
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: PanelRenderPropArg) => string) | undefined;
@@ -8,7 +8,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_PANELS
8
8
  props(): {
9
9
  as?: TTag | undefined;
10
10
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
11
- children?: import("../utils/types.js").Children<PanelsRenderPropArg> | undefined;
11
+ children?: import("svelte").Snippet<[PanelsRenderPropArg, Record<string, any>]> | undefined;
12
12
  ref?: HTMLElement;
13
13
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
14
14
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: PanelsRenderPropArg) => string) | undefined;
@@ -19,7 +19,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TEXTAR
19
19
  as?: TTag | undefined;
20
20
  value?: TValue | undefined;
21
21
  } & (Exclude<keyof PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "invalid" | "disabled" | "autofocus" | "value" | TextareaPropsWeControl> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
22
- children?: import("../utils/types.js").Children<TextareaRenderPropArg> | undefined;
22
+ children?: import("svelte").Snippet<[TextareaRenderPropArg, Record<string, any>]> | undefined;
23
23
  ref?: HTMLElement;
24
24
  } & (true extends (PropsOf<TTag> extends infer T_1 ? T_1 extends PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
25
25
  class?: PropsOf<TTag>["class"] | ((bag: TextareaRenderPropArg) => string) | undefined;
@@ -24,7 +24,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TRANSI
24
24
  props(): {
25
25
  as?: TTag | undefined;
26
26
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "unmount" | "transition" | keyof import("./context.svelte.js").TransitionClasses | keyof import("./context.svelte.js").TransitionEvents | "appear"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
27
- children?: import("../utils/types.js").Children<HTMLElement> | undefined;
27
+ children?: import("svelte").Snippet<[HTMLElement, Record<string, any>]> | undefined;
28
28
  ref?: HTMLElement;
29
29
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
30
30
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HTMLElement) => string) | undefined;
@@ -8,7 +8,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TRANSI
8
8
  props(): {
9
9
  as?: TTag | undefined;
10
10
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "unmount" | "transition" | keyof import("./context.svelte.js").TransitionClasses | keyof import("./context.svelte.js").TransitionEvents | "appear"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
11
- children?: import("../utils/types.js").Children<HTMLElement> | undefined;
11
+ children?: import("svelte").Snippet<[HTMLElement, Record<string, any>]> | undefined;
12
12
  ref?: HTMLElement;
13
13
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
14
14
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HTMLElement) => string) | undefined;
@@ -13,7 +13,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TRANSI
13
13
  props(): {
14
14
  as?: TTag | undefined;
15
15
  } & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "refName" | "class") | "unmount" | "transition" | keyof TransitionClasses | keyof TransitionEvents | "appear"> extends infer T extends keyof import("../utils/types.js").PropsOf<TTag> ? { [P in T]: import("../utils/types.js").PropsOf<TTag>[P]; } : never) & {
16
- children?: import("../utils/types.js").Children<HTMLElement> | undefined;
16
+ children?: import("svelte").Snippet<[HTMLElement, Record<string, any>]> | undefined;
17
17
  ref?: HTMLElement;
18
18
  } & (true extends (import("../utils/types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("../utils/types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
19
19
  class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HTMLElement) => string) | undefined;
@@ -6,7 +6,7 @@ declare class __sveltets_Render<TFeature extends RenderFeatures, TTag extends El
6
6
  [x: string]: any;
7
7
  [x: number]: any;
8
8
  } & {
9
- children?: import("./types.js").Children<TSlot> | undefined;
9
+ children?: import("svelte").Snippet<[TSlot, Record<string, any>]> | undefined;
10
10
  ref?: HTMLElement;
11
11
  } & {
12
12
  class?: any;
@@ -21,7 +21,7 @@ declare class __sveltets_Render<TFeature extends RenderFeatures, TTag extends El
21
21
  } : {}) ? T_1 extends any ? (x: T_1) => any : never : never : never) extends (x: infer R) => any ? R : never>> | undefined;
22
22
  theirProps: {
23
23
  as?: TTag | undefined;
24
- children?: import("./types.js").Children<TSlot> | undefined;
24
+ children?: import("svelte").Snippet<[TSlot, Record<string, any>]> | undefined;
25
25
  ref?: HTMLElement | undefined;
26
26
  class?: any;
27
27
  };
@@ -8,7 +8,7 @@ declare class __sveltets_Render<TTag extends keyof SvelteHTMLProps, TSlot, TValu
8
8
  value?: TValue | undefined;
9
9
  checked?: boolean;
10
10
  } & (Exclude<keyof import("./types.js").PropsOf<TTag>, "as" | "children" | "refName" | "class"> extends infer T extends keyof import("./types.js").PropsOf<TTag> ? { [P in T]: import("./types.js").PropsOf<TTag>[P]; } : never) & {
11
- children?: import("./types.js").Children<TSlot> | undefined;
11
+ children?: import("svelte").Snippet<[TSlot, Record<string, any>]> | undefined;
12
12
  ref?: HTMLElement;
13
13
  } & (true extends (import("./types.js").PropsOf<TTag> extends infer T_1 ? T_1 extends import("./types.js").PropsOf<TTag> ? T_1 extends never ? never : "class" extends infer T_2 ? T_2 extends "class" ? T_2 extends keyof T_1 ? true : never : never : never : never : never) ? {
14
14
  class?: import("./types.js").PropsOf<TTag>["class"] | ((bag: TSlot) => string) | undefined;
@@ -7,9 +7,8 @@ export type ElementType = keyof SvelteHTMLProps;
7
7
  export type Expand<T> = T extends infer O ? {
8
8
  [K in keyof O]: O[K];
9
9
  } : never;
10
- export type Children<TSlot> = Snippet | Snippet<[TSlot, Record<string, any>]>;
11
10
  type OurProps<TSlot> = {
12
- children?: Children<TSlot>;
11
+ children?: Snippet<[TSlot, Record<string, any>]>;
13
12
  ref?: HTMLElement;
14
13
  class?: string | null | ((bag: TSlot) => string);
15
14
  };
@@ -8,11 +8,10 @@ export type Expand<T> = T extends infer O ? {
8
8
  [K in keyof O]: O[K];
9
9
  } : never;
10
10
  export type PropsOf<TTag extends ElementType> = SvelteHTMLProps[TTag];
11
- export type Children<TSlot> = Snippet | Snippet<[TSlot, Record<string, any>]>;
12
11
  type PropsWeControl = "as" | "children" | "refName" | "class";
13
12
  type CleanProps<TTag extends ElementType, TOmittableProps extends PropertyKey = never> = Omit<PropsOf<TTag>, TOmittableProps | PropsWeControl>;
14
13
  type OurProps<TSlot> = {
15
- children?: Children<TSlot>;
14
+ children?: Snippet<[TSlot, Record<string, any>]>;
16
15
  ref?: HTMLElement;
17
16
  };
18
17
  type HasProperty<T extends object, K extends PropertyKey> = T extends never ? never : K extends keyof T ? true : never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pzerelles/headlessui-svelte",
3
- "version": "2.1.2-next.16",
3
+ "version": "2.1.2-next.18",
4
4
  "exports": {
5
5
  ".": {
6
6
  "types": "./dist/index.d.ts",
@@ -31,7 +31,7 @@
31
31
  "autoprefixer": "^10.4.20",
32
32
  "eslint": "^9.10.0",
33
33
  "eslint-config-prettier": "^9.1.0",
34
- "eslint-plugin-svelte": "^2.43.0",
34
+ "eslint-plugin-svelte": "^2.44.0",
35
35
  "globals": "^15.9.0",
36
36
  "jsdom": "^24.1.3",
37
37
  "outdent": "^0.8.0",
@@ -40,14 +40,14 @@
40
40
  "prettier-plugin-svelte": "^3.2.6",
41
41
  "prettier-plugin-tailwindcss": "^0.6.6",
42
42
  "publint": "^0.2.10",
43
- "svelte": "^5.0.0-next.244",
43
+ "svelte": "^5.0.0-next.245",
44
44
  "svelte-check": "^3.8.6",
45
45
  "tailwindcss": "^3.4.11",
46
46
  "tslib": "^2.7.0",
47
47
  "typescript": "^5.6.2",
48
48
  "typescript-eslint": "^8.5.0",
49
- "vite": "^5.4.4",
50
- "vitest": "^2.0.5"
49
+ "vite": "^5.4.5",
50
+ "vitest": "^2.1.0"
51
51
  },
52
52
  "dependencies": {
53
53
  "@floating-ui/core": "^1.6.7",
@@ -1,91 +0,0 @@
1
- import { type DetectOverflowOptions, type Middleware, type SideObject, type Derivable } from "@floating-ui/dom";
2
- import type { HTMLAttributes } from "svelte/elements";
3
- import type { MutableRefObject } from "../utils/ref.svelte.js";
4
- export declare function warn(...messages: string[]): void;
5
- export declare function error(...messages: string[]): void;
6
- export interface ElementProps {
7
- reference?: HTMLAttributes<Element>;
8
- floating?: HTMLAttributes<HTMLElement>;
9
- item?: HTMLAttributes<HTMLElement> | ((props: Record<string, any>) => HTMLAttributes<HTMLElement>);
10
- }
11
- export declare function getUserAgent(): string;
12
- export interface InnerProps extends DetectOverflowOptions {
13
- /**
14
- * A ref which contains an array of HTML elements.
15
- * @default empty list
16
- */
17
- listRef: MutableRefObject<Array<HTMLElement | null>>;
18
- /**
19
- * The index of the active (focused or highlighted) item in the list.
20
- * @default 0
21
- */
22
- index: number;
23
- /**
24
- * Callback invoked when the fallback state changes.
25
- */
26
- onFallbackChange?: null | ((fallback: boolean) => void);
27
- /**
28
- * The offset to apply to the floating element.
29
- * @default 0
30
- */
31
- offset?: number;
32
- /**
33
- * A ref which contains the overflow of the floating element.
34
- */
35
- overflowRef?: MutableRefObject<SideObject | null>;
36
- /**
37
- * An optional ref containing an HTMLElement. This may be used as the
38
- * scrolling container instead of the floating element — for instance,
39
- * to position inner elements as direct children without being interfered by
40
- * scrolling layout.
41
- */
42
- scrollRef?: MutableRefObject<HTMLElement | null>;
43
- /**
44
- * The minimum number of items that should be visible in the list.
45
- * @default 4
46
- */
47
- minItemsVisible?: number;
48
- /**
49
- * The threshold for the reference element's overflow in pixels.
50
- * @default 0
51
- */
52
- referenceOverflowThreshold?: number;
53
- }
54
- /**
55
- * Positions the floating element such that an inner element inside of it is
56
- * anchored to the reference element.
57
- * @see https://floating-ui.com/docs/inner
58
- */
59
- export declare const inner: (props: InnerProps | Derivable<InnerProps>) => Middleware;
60
- export interface UseInnerOffsetProps {
61
- /**
62
- * Whether the Hook is enabled, including all internal Effects and event
63
- * handlers.
64
- * @default true
65
- */
66
- enabled?: boolean;
67
- /**
68
- * A ref which contains the overflow of the floating element.
69
- */
70
- overflowRef: MutableRefObject<SideObject | null>;
71
- /**
72
- * An optional ref containing an HTMLElement. This may be used as the
73
- * scrolling container instead of the floating element — for instance,
74
- * to position inner elements as direct children without being interfered by
75
- * scrolling layout.
76
- */
77
- scrollRef?: MutableRefObject<HTMLElement | null>;
78
- /**
79
- * Callback invoked when the offset changes.
80
- */
81
- onChange: (offset: number | ((offset: number) => number)) => void;
82
- }
83
- /**
84
- * Changes the `inner` middleware's `offset` upon a `wheel` event to
85
- * expand the floating element's height, revealing more list items.
86
- * @see https://floating-ui.com/docs/inner
87
- */
88
- export declare function useInnerOffset(options: {
89
- context: FloatingRootContext;
90
- props: UseInnerOffsetProps;
91
- }): ElementProps;
@@ -1,202 +0,0 @@
1
- import { evaluate, max, min, round } from "@floating-ui/utils";
2
- import { DEV } from "esm-env";
3
- import { detectOverflow, offset, } from "@floating-ui/dom";
4
- import { tick, untrack } from "svelte";
5
- let devMessageSet;
6
- if (DEV) {
7
- devMessageSet = new Set();
8
- }
9
- export function warn(...messages) {
10
- const message = `Floating UI: ${messages.join(" ")}`;
11
- if (!devMessageSet?.has(message)) {
12
- devMessageSet?.add(message);
13
- console.warn(message);
14
- }
15
- }
16
- export function error(...messages) {
17
- const message = `Floating UI: ${messages.join(" ")}`;
18
- if (!devMessageSet?.has(message)) {
19
- devMessageSet?.add(message);
20
- console.error(message);
21
- }
22
- }
23
- export function getUserAgent() {
24
- const uaData = navigator.userAgentData;
25
- if (uaData && Array.isArray(uaData.brands)) {
26
- return uaData.brands.map(({ brand, version }) => `${brand}/${version}`).join(" ");
27
- }
28
- return navigator.userAgent;
29
- }
30
- // ------
31
- function getArgsWithCustomFloatingHeight(state, height) {
32
- return {
33
- ...state,
34
- rects: {
35
- ...state.rects,
36
- floating: {
37
- ...state.rects.floating,
38
- height,
39
- },
40
- },
41
- };
42
- }
43
- /**
44
- * Positions the floating element such that an inner element inside of it is
45
- * anchored to the reference element.
46
- * @see https://floating-ui.com/docs/inner
47
- */
48
- export const inner = (props) => ({
49
- name: "inner",
50
- options: props,
51
- async fn(state) {
52
- const { listRef, overflowRef, onFallbackChange, offset: innerOffset = 0, index = 0, minItemsVisible = 4, referenceOverflowThreshold = 0, scrollRef, ...detectOverflowOptions } = evaluate(props, state);
53
- const { rects, elements: { floating }, } = state;
54
- const item = listRef.current[index];
55
- const scrollEl = scrollRef?.current || floating;
56
- // Valid combinations:
57
- // 1. Floating element is the scrollRef and has a border (default)
58
- // 2. Floating element is not the scrollRef, floating element has a border
59
- // 3. Floating element is not the scrollRef, scrollRef has a border
60
- // Floating > {...getFloatingProps()} wrapper > scrollRef > items is not
61
- // allowed as VoiceOver doesn't work.
62
- const clientTop = floating.clientTop || scrollEl.clientTop;
63
- const floatingIsBordered = floating.clientTop !== 0;
64
- const scrollElIsBordered = scrollEl.clientTop !== 0;
65
- const floatingIsScrollEl = floating === scrollEl;
66
- if (DEV) {
67
- if (!state.placement.startsWith("bottom")) {
68
- warn('`placement` side must be "bottom" when using the `inner`', "middleware.");
69
- }
70
- }
71
- if (!item) {
72
- return {};
73
- }
74
- const nextArgs = {
75
- ...state,
76
- ...(await offset(-item.offsetTop - floating.clientTop - rects.reference.height / 2 - item.offsetHeight / 2 - innerOffset).fn(state)),
77
- };
78
- const overflow = await detectOverflow(getArgsWithCustomFloatingHeight(nextArgs, scrollEl.scrollHeight + clientTop + floating.clientTop), detectOverflowOptions);
79
- const refOverflow = await detectOverflow(nextArgs, {
80
- ...detectOverflowOptions,
81
- elementContext: "reference",
82
- });
83
- const diffY = max(0, overflow.top);
84
- const nextY = nextArgs.y + diffY;
85
- const maxHeight = round(max(0, scrollEl.scrollHeight +
86
- ((floatingIsBordered && floatingIsScrollEl) || scrollElIsBordered ? clientTop * 2 : 0) -
87
- diffY -
88
- max(0, overflow.bottom)));
89
- scrollEl.style.maxHeight = `${maxHeight}px`;
90
- scrollEl.scrollTop = diffY;
91
- // There is not enough space, fallback to standard anchored positioning
92
- if (onFallbackChange) {
93
- const shouldFallback = (scrollEl.scrollHeight > scrollEl.offsetHeight &&
94
- scrollEl.offsetHeight < item.offsetHeight * minItemsVisible - 1) ||
95
- refOverflow.top >= -referenceOverflowThreshold ||
96
- refOverflow.bottom >= -referenceOverflowThreshold;
97
- onFallbackChange(shouldFallback);
98
- await tick();
99
- }
100
- if (overflowRef) {
101
- overflowRef.current = await detectOverflow(getArgsWithCustomFloatingHeight({ ...nextArgs, y: nextY }, scrollEl.offsetHeight + clientTop + floating.clientTop), detectOverflowOptions);
102
- }
103
- return {
104
- y: nextY,
105
- };
106
- },
107
- });
108
- /**
109
- * Changes the `inner` middleware's `offset` upon a `wheel` event to
110
- * expand the floating element's height, revealing more list items.
111
- * @see https://floating-ui.com/docs/inner
112
- */
113
- export function useInnerOffset(options) {
114
- const { context, props } = $derived(options);
115
- const { open, elements } = $derived(context);
116
- const { enabled = true, overflowRef, scrollRef, onChange: unstable_onChange } = $derived(props);
117
- const onChange = unstable_onChange;
118
- let controlledScrollingRef = $state(false);
119
- let prevScrollTopRef = $state(null);
120
- let initialOverflowRef = $state(null);
121
- $effect(() => {
122
- if (!enabled)
123
- return;
124
- [open, elements.floating, overflowRef, scrollRef, onChange];
125
- untrack(() => {
126
- function onWheel(e) {
127
- if (e.ctrlKey || !el || overflowRef.current == null) {
128
- return;
129
- }
130
- const dY = e.deltaY;
131
- const isAtTop = overflowRef.current.top >= -0.5;
132
- const isAtBottom = overflowRef.current.bottom >= -0.5;
133
- const remainingScroll = el.scrollHeight - el.clientHeight;
134
- const sign = dY < 0 ? -1 : 1;
135
- const method = dY < 0 ? "max" : "min";
136
- if (el.scrollHeight <= el.clientHeight) {
137
- return;
138
- }
139
- if ((!isAtTop && dY > 0) || (!isAtBottom && dY < 0)) {
140
- e.preventDefault();
141
- onChange((d) => d + Math[method](dY, remainingScroll * sign));
142
- tick();
143
- }
144
- else if (/firefox/i.test(getUserAgent())) {
145
- // Needed to propagate scrolling during momentum scrolling phase once
146
- // it gets limited by the boundary. UX improvement, not critical.
147
- el.scrollTop += dY;
148
- }
149
- }
150
- const el = scrollRef?.current || elements.floating;
151
- if (open && el) {
152
- el.addEventListener("wheel", onWheel);
153
- // Wait for the position to be ready.
154
- requestAnimationFrame(() => {
155
- prevScrollTopRef = el.scrollTop;
156
- if (overflowRef.current != null) {
157
- initialOverflowRef = { ...overflowRef.current };
158
- }
159
- });
160
- return () => {
161
- prevScrollTopRef = null;
162
- initialOverflowRef = null;
163
- el.removeEventListener("wheel", onWheel);
164
- };
165
- }
166
- });
167
- });
168
- const floating = $derived({
169
- onKeyDown() {
170
- controlledScrollingRef = true;
171
- },
172
- onWheel() {
173
- controlledScrollingRef = false;
174
- },
175
- onPointerMove() {
176
- controlledScrollingRef = false;
177
- },
178
- async onScroll() {
179
- const el = scrollRef?.current || elements.floating;
180
- if (!overflowRef.current || !el || !controlledScrollingRef) {
181
- return;
182
- }
183
- if (prevScrollTopRef !== null) {
184
- const scrollDiff = el.scrollTop - prevScrollTopRef;
185
- if ((overflowRef.current.bottom < -0.5 && scrollDiff < -1) ||
186
- (overflowRef.current.top < -0.5 && scrollDiff > 1)) {
187
- onChange((d) => d + scrollDiff);
188
- await tick();
189
- }
190
- }
191
- // [Firefox] Wait for the height change to have been applied.
192
- requestAnimationFrame(() => {
193
- prevScrollTopRef = el.scrollTop;
194
- });
195
- },
196
- });
197
- return {
198
- get floating() {
199
- return enabled ? floating : undefined;
200
- },
201
- };
202
- }