@pzerelles/headlessui-svelte 2.1.2-next.31 → 2.1.2-next.33
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.
- package/dist/button/Button.svelte +84 -55
- package/dist/button/Button.svelte.d.ts +4 -32
- package/dist/checkbox/Checkbox.svelte +177 -121
- package/dist/checkbox/Checkbox.svelte.d.ts +14 -32
- package/dist/close-button/CloseButton.svelte +10 -7
- package/dist/close-button/CloseButton.svelte.d.ts +2 -44
- package/dist/data-interactive/DataInteractive.svelte +49 -37
- package/dist/data-interactive/DataInteractive.svelte.d.ts +7 -30
- package/dist/description/Description.svelte +35 -22
- package/dist/description/Description.svelte.d.ts +7 -28
- package/dist/dialog/Dialog.svelte +326 -232
- package/dist/dialog/Dialog.svelte.d.ts +4 -42
- package/dist/dialog/DialogBackdrop.svelte +33 -16
- package/dist/dialog/DialogBackdrop.svelte.d.ts +4 -29
- package/dist/dialog/DialogPanel.svelte +60 -29
- package/dist/dialog/DialogPanel.svelte.d.ts +4 -30
- package/dist/dialog/DialogTitle.svelte +51 -24
- package/dist/dialog/DialogTitle.svelte.d.ts +6 -27
- package/dist/field/Field.svelte +44 -28
- package/dist/field/Field.svelte.d.ts +4 -30
- package/dist/fieldset/Fieldset.svelte +48 -30
- package/dist/fieldset/Fieldset.svelte.d.ts +5 -31
- package/dist/focus-trap/FocusTrap.svelte +430 -298
- package/dist/focus-trap/FocusTrap.svelte.d.ts +5 -34
- package/dist/hooks/use-inert-others.svelte.js +10 -10
- package/dist/hooks/use-resolve-button-type.svelte.js +0 -1
- package/dist/input/Input.svelte +95 -54
- package/dist/input/Input.svelte.d.ts +13 -27
- package/dist/internal/FloatingProvider.svelte +14 -9
- package/dist/internal/FocusSentinel.svelte +49 -40
- package/dist/internal/ForcePortalRoot.svelte +7 -3
- package/dist/internal/FormFields.svelte +47 -34
- package/dist/internal/FormFieldsProvider.svelte +9 -5
- package/dist/internal/FormResolver.svelte +25 -16
- package/dist/internal/Hidden.svelte +45 -38
- package/dist/internal/Hidden.svelte.d.ts +4 -30
- package/dist/internal/MainTreeProvider.svelte +90 -37
- package/dist/internal/Portal.svelte +18 -14
- package/dist/label/Label.svelte +100 -59
- package/dist/label/Label.svelte.d.ts +7 -32
- package/dist/legend/Legend.svelte +27 -4
- package/dist/legend/Legend.svelte.d.ts +4 -3
- package/dist/listbox/Listbox.svelte +518 -391
- package/dist/listbox/Listbox.svelte.d.ts +11 -35
- package/dist/listbox/ListboxButton.svelte +175 -128
- package/dist/listbox/ListboxButton.svelte.d.ts +5 -32
- package/dist/listbox/ListboxOption.svelte +171 -130
- package/dist/listbox/ListboxOption.svelte.d.ts +12 -26
- package/dist/listbox/ListboxOptions.svelte +403 -305
- package/dist/listbox/ListboxOptions.svelte.d.ts +4 -38
- package/dist/listbox/ListboxSelectedOption.svelte +40 -19
- package/dist/listbox/ListboxSelectedOption.svelte.d.ts +8 -33
- package/dist/menu/Menu.svelte +76 -52
- package/dist/menu/Menu.svelte.d.ts +3 -31
- package/dist/menu/MenuButton.svelte +158 -118
- package/dist/menu/MenuButton.svelte.d.ts +4 -34
- package/dist/menu/MenuHeading.svelte +34 -15
- package/dist/menu/MenuHeading.svelte.d.ts +4 -31
- package/dist/menu/MenuItem.svelte +143 -108
- package/dist/menu/MenuItem.svelte.d.ts +5 -32
- package/dist/menu/MenuItems.svelte +301 -230
- package/dist/menu/MenuItems.svelte.d.ts +4 -38
- package/dist/menu/MenuSection.svelte +26 -10
- package/dist/menu/MenuSection.svelte.d.ts +5 -29
- package/dist/menu/MenuSeparator.svelte +20 -5
- package/dist/menu/MenuSeparator.svelte.d.ts +5 -28
- package/dist/popover/Popover.svelte +217 -151
- package/dist/popover/Popover.svelte.d.ts +4 -30
- package/dist/popover/PopoverBackdrop.svelte +71 -42
- package/dist/popover/PopoverBackdrop.svelte.d.ts +6 -34
- package/dist/popover/PopoverButton.svelte +302 -222
- package/dist/popover/PopoverButton.svelte.d.ts +6 -29
- package/dist/popover/PopoverGroup.svelte +64 -36
- package/dist/popover/PopoverGroup.svelte.d.ts +5 -28
- package/dist/popover/PopoverPanel.svelte +335 -248
- package/dist/popover/PopoverPanel.svelte.d.ts +5 -36
- package/dist/popover/index.d.ts +1 -1
- package/dist/portal/InternalPortal.svelte +143 -86
- package/dist/portal/InternalPortal.svelte.d.ts +4 -30
- package/dist/portal/Portal.svelte +8 -4
- package/dist/portal/Portal.svelte.d.ts +2 -18
- package/dist/portal/PortalGroup.svelte +23 -10
- package/dist/portal/PortalGroup.svelte.d.ts +3 -31
- package/dist/select/Select.svelte +100 -69
- package/dist/select/Select.svelte.d.ts +5 -32
- package/dist/switch/Switch.svelte +181 -133
- package/dist/switch/Switch.svelte.d.ts +5 -38
- package/dist/switch/SwitchGroup.svelte +45 -32
- package/dist/switch/SwitchGroup.svelte.d.ts +7 -28
- package/dist/tabs/Tab.svelte +195 -143
- package/dist/tabs/Tab.svelte.d.ts +4 -32
- package/dist/tabs/TabGroup.svelte +87 -57
- package/dist/tabs/TabGroup.svelte.d.ts +4 -34
- package/dist/tabs/TabList.svelte +31 -12
- package/dist/tabs/TabList.svelte.d.ts +5 -28
- package/dist/tabs/TabPanel.svelte +69 -44
- package/dist/tabs/TabPanel.svelte.d.ts +4 -34
- package/dist/tabs/TabPanels.svelte +19 -8
- package/dist/tabs/TabPanels.svelte.d.ts +5 -27
- package/dist/textarea/Textarea.svelte +87 -54
- package/dist/textarea/Textarea.svelte.d.ts +13 -27
- package/dist/transition/InternalTransitionChild.svelte +267 -171
- package/dist/transition/InternalTransitionChild.svelte.d.ts +3 -33
- package/dist/transition/Transition.svelte +88 -67
- package/dist/transition/Transition.svelte.d.ts +3 -36
- package/dist/transition/TransitionChild.svelte +31 -12
- package/dist/transition/TransitionChild.svelte.d.ts +8 -35
- package/dist/transition/context.svelte.js +7 -7
- package/dist/utils/DisabledProvider.svelte +7 -3
- package/dist/utils/ElementOrComponent.svelte +88 -24
- package/dist/utils/ElementOrComponent.svelte.d.ts +32 -27
- package/dist/utils/StableCollection.svelte +54 -36
- package/dist/utils/floating-ui/svelte/components/FloatingNode.svelte +27 -12
- package/dist/utils/floating-ui/svelte/components/FloatingTree.svelte +88 -44
- package/dist/utils/state.js +4 -4
- package/dist/utils/types.d.ts +14 -12
- package/package.json +12 -12
- package/dist/combobox/Combobox.svelte +0 -6
- package/dist/combobox/Combobox.svelte.d.ts +0 -50
- package/dist/utils/Generic.svelte +0 -46
- package/dist/utils/Generic.svelte.d.ts +0 -32
- package/dist/utils/alternative-types.d.ts +0 -20
- package/dist/utils/alternative-types.js +0 -1
|
@@ -1,41 +1,53 @@
|
|
|
1
|
-
<script lang="ts" module>
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
|
|
1
|
+
<script lang="ts" module>
|
|
2
|
+
import type { PropsAsChild } from "../utils/types.js"
|
|
3
|
+
import { useFocusRing } from "../hooks/use-focus-ring.svelte.js"
|
|
4
|
+
import { useActivePress } from "../hooks/use-active-press.svelte.js"
|
|
5
|
+
import { useHover } from "../hooks/use-hover.svelte.js"
|
|
6
|
+
import { mergeProps } from "../utils/render.js"
|
|
7
|
+
import ElementOrComponent from "../utils/ElementOrComponent.svelte"
|
|
8
|
+
|
|
9
|
+
const DEFAULT_DATA_INTERACTIVE_TAG = "svelte:fragment" as const
|
|
10
|
+
|
|
11
|
+
type DataInteractiveRenderPropArg = {
|
|
12
|
+
hover: boolean
|
|
13
|
+
focus: boolean
|
|
14
|
+
active: boolean
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export type DataInteractiveProps = PropsAsChild<DataInteractiveRenderPropArg>
|
|
7
18
|
</script>
|
|
8
19
|
|
|
9
|
-
<script lang="ts"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
const
|
|
20
|
+
<script lang="ts">
|
|
21
|
+
let { ...theirProps }: DataInteractiveProps = $props()
|
|
22
|
+
|
|
23
|
+
// Ideally we can use a `disabled` prop, but that would depend on the props of the child element
|
|
24
|
+
// and we don't have access to that in this component.
|
|
25
|
+
|
|
26
|
+
const disabled = false
|
|
27
|
+
|
|
28
|
+
const { isHovered: hover, hoverProps } = $derived(
|
|
29
|
+
useHover({
|
|
30
|
+
get disabled() {
|
|
31
|
+
return disabled
|
|
32
|
+
},
|
|
33
|
+
})
|
|
34
|
+
)
|
|
35
|
+
const { pressed: active, pressProps } = $derived(
|
|
36
|
+
useActivePress({
|
|
37
|
+
get disabled() {
|
|
38
|
+
return disabled
|
|
39
|
+
},
|
|
40
|
+
})
|
|
41
|
+
)
|
|
42
|
+
const { isFocusVisible: focus, focusProps } = $derived(useFocusRing())
|
|
43
|
+
|
|
44
|
+
const slot = $derived({
|
|
45
|
+
hover,
|
|
46
|
+
focus,
|
|
47
|
+
active,
|
|
48
|
+
} satisfies DataInteractiveRenderPropArg)
|
|
49
|
+
|
|
50
|
+
const ourProps = $derived(mergeProps(focusProps, hoverProps, pressProps))
|
|
32
51
|
</script>
|
|
33
52
|
|
|
34
|
-
<ElementOrComponent
|
|
35
|
-
{ourProps}
|
|
36
|
-
{theirProps}
|
|
37
|
-
{slot}
|
|
38
|
-
defaultTag={DEFAULT_DATA_INTERACTIVE_TAG}
|
|
39
|
-
name="DataInteractive"
|
|
40
|
-
bind:ref
|
|
41
|
-
/>
|
|
53
|
+
<ElementOrComponent {ourProps} {theirProps} {slot} name="DataInteractive" />
|
|
@@ -1,36 +1,13 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { Snippet } from "svelte";
|
|
3
|
-
declare const DEFAULT_DATA_INTERACTIVE_TAG: "svelte:fragment";
|
|
1
|
+
import type { PropsAsChild } from "../utils/types.js";
|
|
4
2
|
type DataInteractiveRenderPropArg = {
|
|
5
3
|
hover: boolean;
|
|
6
4
|
focus: boolean;
|
|
7
5
|
active: boolean;
|
|
8
6
|
};
|
|
9
|
-
type
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
children?: Snippet<[{
|
|
16
|
-
slot: DataInteractiveRenderPropArg;
|
|
17
|
-
props: Record<string, any>;
|
|
18
|
-
}]> | undefined;
|
|
19
|
-
class?: string | ((bag: DataInteractiveRenderPropArg) => string) | null | undefined;
|
|
20
|
-
ref?: HTMLElement;
|
|
21
|
-
};
|
|
22
|
-
events(): {};
|
|
23
|
-
slots(): {};
|
|
24
|
-
bindings(): "ref";
|
|
25
|
-
exports(): {};
|
|
26
|
-
}
|
|
27
|
-
interface $$IsomorphicComponent {
|
|
28
|
-
new <TTag extends ElementType = typeof DEFAULT_DATA_INTERACTIVE_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']>> & {
|
|
29
|
-
$$bindings?: ReturnType<__sveltets_Render<TTag>['bindings']>;
|
|
30
|
-
} & ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
31
|
-
<TTag extends ElementType = typeof DEFAULT_DATA_INTERACTIVE_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
32
|
-
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
33
|
-
}
|
|
34
|
-
declare const DataInteractive: $$IsomorphicComponent;
|
|
35
|
-
type DataInteractive<TTag extends ElementType = typeof DEFAULT_DATA_INTERACTIVE_TAG> = InstanceType<typeof DataInteractive<TTag>>;
|
|
7
|
+
export type DataInteractiveProps = PropsAsChild<DataInteractiveRenderPropArg>;
|
|
8
|
+
declare const DataInteractive: import("svelte").Component<{
|
|
9
|
+
children?: import("svelte").Snippet<[DataInteractiveRenderPropArg & {
|
|
10
|
+
props?: Record<string, any>;
|
|
11
|
+
}]> | undefined;
|
|
12
|
+
}, {}, "">;
|
|
36
13
|
export default DataInteractive;
|
|
@@ -1,26 +1,39 @@
|
|
|
1
|
-
<script lang="ts" module>
|
|
1
|
+
<script lang="ts" module>
|
|
2
|
+
import type { Props } from "../utils/types.js"
|
|
3
|
+
|
|
4
|
+
const DEFAULT_DESCRIPTION_TAG = "p" as const
|
|
5
|
+
|
|
6
|
+
export type DescriptionProps = Props<
|
|
7
|
+
typeof DEFAULT_DESCRIPTION_TAG,
|
|
8
|
+
{},
|
|
9
|
+
{
|
|
10
|
+
id?: string
|
|
11
|
+
element?: HTMLElement
|
|
12
|
+
}
|
|
13
|
+
>
|
|
2
14
|
</script>
|
|
3
15
|
|
|
4
|
-
<script lang="ts"
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
...theirProps
|
|
15
|
-
|
|
16
|
-
const { register } = useDescriptionContext()
|
|
17
|
-
$effect(() => {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
})
|
|
21
|
-
|
|
22
|
-
const
|
|
23
|
-
const
|
|
16
|
+
<script lang="ts">
|
|
17
|
+
import { useId } from "../hooks/use-id.js"
|
|
18
|
+
import { useDisabled } from "../hooks/use-disabled.js"
|
|
19
|
+
import { useDescriptionContext } from "./context.svelte.js"
|
|
20
|
+
import ElementOrComponent from "../utils/ElementOrComponent.svelte"
|
|
21
|
+
import { untrack } from "svelte"
|
|
22
|
+
|
|
23
|
+
const internalId = useId()
|
|
24
|
+
const providedDisabled = useDisabled()
|
|
25
|
+
|
|
26
|
+
let { element = $bindable(), id = `headlessui-description-${internalId}`, ...theirProps }: DescriptionProps = $props()
|
|
27
|
+
|
|
28
|
+
const { register } = useDescriptionContext()
|
|
29
|
+
$effect(() => {
|
|
30
|
+
id
|
|
31
|
+
return untrack(() => register(id))
|
|
32
|
+
})
|
|
33
|
+
|
|
34
|
+
const disabled = $derived(providedDisabled.current || false)
|
|
35
|
+
const slot = $derived({ disabled })
|
|
36
|
+
const ourProps = $derived({ id })
|
|
24
37
|
</script>
|
|
25
38
|
|
|
26
39
|
<ElementOrComponent
|
|
@@ -29,5 +42,5 @@ const ourProps = $derived({ id });
|
|
|
29
42
|
slots={slot}
|
|
30
43
|
defaultTag={DEFAULT_DESCRIPTION_TAG}
|
|
31
44
|
name="Description"
|
|
32
|
-
bind:
|
|
45
|
+
bind:element
|
|
33
46
|
/>
|
|
@@ -1,29 +1,8 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
declare
|
|
3
|
-
export type DescriptionProps
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
children?: import("svelte").Snippet<[{
|
|
9
|
-
slot: {};
|
|
10
|
-
props: Record<string, any>;
|
|
11
|
-
}]> | undefined;
|
|
12
|
-
class?: string | ((bag: {}) => string) | null | undefined;
|
|
13
|
-
ref?: HTMLElement;
|
|
14
|
-
};
|
|
15
|
-
events(): {};
|
|
16
|
-
slots(): {};
|
|
17
|
-
bindings(): "ref";
|
|
18
|
-
exports(): {};
|
|
19
|
-
}
|
|
20
|
-
interface $$IsomorphicComponent {
|
|
21
|
-
new <TTag extends ElementType = typeof DEFAULT_DESCRIPTION_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']>> & {
|
|
22
|
-
$$bindings?: ReturnType<__sveltets_Render<TTag>['bindings']>;
|
|
23
|
-
} & ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
24
|
-
<TTag extends ElementType = typeof DEFAULT_DESCRIPTION_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
25
|
-
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
26
|
-
}
|
|
27
|
-
declare const Description: $$IsomorphicComponent;
|
|
28
|
-
type Description<TTag extends ElementType = typeof DEFAULT_DESCRIPTION_TAG> = InstanceType<typeof Description<TTag>>;
|
|
1
|
+
import type { Props } from "../utils/types.js";
|
|
2
|
+
declare const DEFAULT_DESCRIPTION_TAG: "p";
|
|
3
|
+
export type DescriptionProps = Props<typeof DEFAULT_DESCRIPTION_TAG, {}, {
|
|
4
|
+
id?: string;
|
|
5
|
+
element?: HTMLElement;
|
|
6
|
+
}>;
|
|
7
|
+
declare const Description: import("svelte").Component<DescriptionProps, {}, "element">;
|
|
29
8
|
export default Description;
|