@pzerelles/headlessui-svelte 2.1.2-next.3 → 2.1.2-next.30
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 +1 -1
- package/dist/button/Button.svelte.d.ts +9 -11
- package/dist/checkbox/Checkbox.svelte +4 -4
- package/dist/checkbox/Checkbox.svelte.d.ts +10 -14
- package/dist/close-button/CloseButton.svelte.d.ts +16 -18
- package/dist/data-interactive/DataInteractive.svelte.d.ts +8 -11
- package/dist/description/Description.svelte +19 -14
- package/dist/description/Description.svelte.d.ts +9 -11
- package/dist/description/context.svelte.js +14 -16
- package/dist/dialog/Dialog.svelte +245 -17
- package/dist/dialog/Dialog.svelte.d.ts +12 -14
- package/dist/dialog/DialogBackdrop.svelte +1 -1
- package/dist/dialog/DialogBackdrop.svelte.d.ts +9 -11
- package/dist/dialog/DialogPanel.svelte +1 -2
- package/dist/dialog/DialogPanel.svelte.d.ts +9 -11
- package/dist/dialog/DialogTitle.svelte.d.ts +8 -10
- package/dist/dialog/context.svelte.js +1 -1
- package/dist/field/Field.svelte +24 -12
- package/dist/field/Field.svelte.d.ts +9 -11
- package/dist/fieldset/Fieldset.svelte +1 -1
- package/dist/fieldset/Fieldset.svelte.d.ts +9 -11
- package/dist/focus-trap/FocusTrap.svelte +7 -14
- package/dist/focus-trap/FocusTrap.svelte.d.ts +11 -25
- package/dist/focus-trap/FocusTrapFeatures.d.ts +14 -0
- package/dist/focus-trap/FocusTrapFeatures.js +15 -0
- package/dist/hooks/use-controllable.svelte.js +2 -1
- package/dist/hooks/use-did-element-move.svelte.js +5 -10
- package/dist/hooks/use-disabled.d.ts +6 -1
- package/dist/hooks/use-disabled.js +10 -5
- package/dist/hooks/use-event-listener.svelte.d.ts +1 -1
- package/dist/hooks/use-event-listener.svelte.js +3 -1
- package/dist/hooks/use-root-containers.svelte.d.ts +2 -2
- package/dist/hooks/use-root-containers.svelte.js +5 -5
- package/dist/hooks/use-tab-direction.svelte.js +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.js +4 -2
- package/dist/input/Input.svelte +3 -3
- package/dist/input/Input.svelte.d.ts +10 -14
- package/dist/internal/FloatingProvider.svelte +12 -0
- package/dist/internal/FloatingProvider.svelte.d.ts +6 -0
- package/dist/internal/FocusSentinel.svelte.d.ts +2 -18
- package/dist/internal/ForcePortalRoot.svelte.d.ts +2 -18
- package/dist/internal/FormFields.svelte +22 -19
- package/dist/internal/FormFields.svelte.d.ts +2 -18
- package/dist/internal/FormFieldsProvider.svelte +13 -0
- package/dist/internal/FormFieldsProvider.svelte.d.ts +5 -0
- package/dist/internal/FormResolver.svelte.d.ts +2 -18
- package/dist/internal/Hidden.svelte +18 -8
- package/dist/internal/Hidden.svelte.d.ts +11 -16
- package/dist/internal/HiddenFeatures.d.ts +5 -0
- package/dist/internal/HiddenFeatures.js +9 -0
- package/dist/internal/MainTreeProvider.svelte.d.ts +2 -18
- package/dist/internal/Portal.svelte.d.ts +2 -18
- package/dist/internal/floating-provider.svelte.d.ts +3 -0
- package/dist/internal/floating-provider.svelte.js +206 -0
- package/dist/internal/floating.svelte.d.ts +48 -23
- package/dist/internal/floating.svelte.js +91 -272
- package/dist/internal/form-fields.svelte.d.ts +10 -0
- package/dist/internal/form-fields.svelte.js +23 -0
- package/dist/label/Label.svelte +6 -5
- package/dist/label/Label.svelte.d.ts +9 -11
- package/dist/label/context.svelte.js +1 -1
- package/dist/legend/Legend.svelte +2 -2
- package/dist/legend/Legend.svelte.d.ts +4 -32
- package/dist/listbox/Listbox.svelte +47 -68
- package/dist/listbox/Listbox.svelte.d.ts +18 -80
- package/dist/listbox/ListboxButton.svelte +10 -10
- package/dist/listbox/ListboxButton.svelte.d.ts +10 -15
- package/dist/listbox/ListboxOption.svelte +10 -6
- package/dist/listbox/ListboxOption.svelte.d.ts +9 -12
- package/dist/listbox/ListboxOptions.svelte +108 -54
- package/dist/listbox/ListboxOptions.svelte.d.ts +9 -12
- package/dist/listbox/ListboxSelectedOption.svelte +2 -4
- package/dist/listbox/ListboxSelectedOption.svelte.d.ts +14 -16
- package/dist/listbox/context.svelte.d.ts +76 -0
- package/dist/listbox/context.svelte.js +36 -0
- package/dist/listbox/index.d.ts +4 -4
- package/dist/listbox/index.js +1 -1
- package/dist/menu/Menu.svelte +9 -187
- package/dist/menu/Menu.svelte.d.ts +9 -12
- package/dist/menu/MenuButton.svelte +4 -2
- package/dist/menu/MenuButton.svelte.d.ts +9 -12
- package/dist/menu/MenuHeading.svelte.d.ts +9 -12
- package/dist/menu/MenuItem.svelte.d.ts +11 -16
- package/dist/menu/MenuItems.svelte +15 -11
- package/dist/menu/MenuItems.svelte.d.ts +9 -12
- package/dist/menu/MenuSection.svelte.d.ts +8 -11
- package/dist/menu/MenuSeparator.svelte.d.ts +8 -12
- package/dist/menu/context.svelte.d.ts +2 -1
- package/dist/menu/context.svelte.js +212 -2
- package/dist/menu/index.d.ts +7 -7
- package/dist/popover/Popover.svelte +161 -0
- package/dist/popover/Popover.svelte.d.ts +39 -0
- package/dist/popover/PopoverBackdrop.svelte +56 -0
- package/dist/popover/PopoverBackdrop.svelte.d.ts +43 -0
- package/dist/popover/PopoverButton.svelte +246 -0
- package/dist/popover/PopoverButton.svelte.d.ts +42 -0
- package/dist/popover/PopoverGroup.svelte +43 -0
- package/dist/popover/PopoverGroup.svelte.d.ts +31 -0
- package/dist/popover/PopoverPanel.svelte +274 -0
- package/dist/popover/PopoverPanel.svelte.d.ts +51 -0
- package/dist/popover/context.svelte.d.ts +51 -0
- package/dist/popover/context.svelte.js +108 -0
- package/dist/popover/index.d.ts +5 -0
- package/dist/popover/index.js +5 -0
- package/dist/portal/InternalPortal.svelte.d.ts +9 -11
- package/dist/portal/Portal.svelte.d.ts +2 -6
- package/dist/portal/PortalGroup.svelte.d.ts +9 -11
- package/dist/select/Select.svelte +74 -0
- package/dist/select/Select.svelte.d.ts +46 -0
- package/dist/select/index.d.ts +1 -0
- package/dist/select/index.js +1 -0
- package/dist/switch/Switch.svelte +30 -20
- package/dist/switch/Switch.svelte.d.ts +10 -12
- package/dist/switch/SwitchGroup.svelte.d.ts +8 -10
- package/dist/tabs/Tab.svelte +8 -9
- package/dist/tabs/Tab.svelte.d.ts +9 -11
- package/dist/tabs/TabGroup.svelte +27 -190
- package/dist/tabs/TabGroup.svelte.d.ts +9 -31
- package/dist/tabs/TabList.svelte +4 -4
- package/dist/tabs/TabList.svelte.d.ts +8 -10
- package/dist/tabs/TabPanel.svelte +4 -5
- package/dist/tabs/TabPanel.svelte.d.ts +9 -11
- package/dist/tabs/TabPanels.svelte +3 -3
- package/dist/tabs/TabPanels.svelte.d.ts +8 -10
- package/dist/tabs/context.svelte.d.ts +31 -0
- package/dist/tabs/context.svelte.js +134 -0
- package/dist/textarea/Textarea.svelte +4 -4
- package/dist/textarea/Textarea.svelte.d.ts +21 -20
- package/dist/transition/InternalTransitionChild.svelte.d.ts +9 -11
- package/dist/transition/Transition.svelte.d.ts +9 -11
- package/dist/transition/TransitionChild.svelte.d.ts +9 -11
- package/dist/transition/context.svelte.js +2 -2
- package/dist/utils/DisabledProvider.svelte +6 -0
- package/dist/utils/DisabledProvider.svelte.d.ts +6 -0
- package/dist/utils/ElementOrComponent.svelte +2 -2
- package/dist/utils/ElementOrComponent.svelte.d.ts +12 -11
- package/dist/utils/Generic.svelte +10 -8
- package/dist/utils/Generic.svelte.d.ts +12 -15
- package/dist/utils/StableCollection.svelte.d.ts +2 -18
- package/dist/utils/alternative-types.d.ts +1 -2
- package/dist/utils/floating-ui/svelte/components/FloatingNode.svelte +17 -0
- package/dist/utils/floating-ui/svelte/components/FloatingNode.svelte.d.ts +7 -0
- package/dist/utils/floating-ui/svelte/components/FloatingTree.svelte +50 -0
- package/dist/utils/floating-ui/svelte/components/FloatingTree.svelte.d.ts +25 -0
- package/dist/utils/floating-ui/svelte/hooks/useFloating.svelte.d.ts +6 -0
- package/dist/utils/floating-ui/svelte/hooks/useFloating.svelte.js +158 -0
- package/dist/utils/floating-ui/svelte/hooks/useFloatingRootContext.svelte.d.ts +11 -0
- package/dist/utils/floating-ui/svelte/hooks/useFloatingRootContext.svelte.js +53 -0
- package/dist/utils/floating-ui/svelte/hooks/useId.svelte.d.ts +9 -0
- package/dist/utils/floating-ui/svelte/hooks/useId.svelte.js +28 -0
- package/dist/utils/floating-ui/svelte/hooks/useInteractions.svelte.d.ts +23 -0
- package/dist/utils/floating-ui/svelte/hooks/useInteractions.svelte.js +72 -0
- package/dist/utils/floating-ui/svelte/index.d.ts +5 -0
- package/dist/utils/floating-ui/svelte/index.js +5 -0
- package/dist/utils/floating-ui/svelte/inner.svelte.d.ts +83 -0
- package/dist/utils/floating-ui/svelte/inner.svelte.js +178 -0
- package/dist/utils/floating-ui/svelte/types.d.ts +114 -0
- package/dist/utils/floating-ui/svelte/types.js +1 -0
- package/dist/utils/floating-ui/svelte/utils/createPubSub.d.ts +5 -0
- package/dist/utils/floating-ui/svelte/utils/createPubSub.js +14 -0
- package/dist/utils/floating-ui/svelte/utils/getFloatingFocusElement.d.ts +2 -0
- package/dist/utils/floating-ui/svelte/utils/getFloatingFocusElement.js +13 -0
- package/dist/utils/floating-ui/svelte/utils/log.d.ts +2 -0
- package/dist/utils/floating-ui/svelte/utils/log.js +19 -0
- package/dist/utils/floating-ui/svelte/utils.d.ts +19 -0
- package/dist/utils/floating-ui/svelte/utils.js +136 -0
- package/dist/utils/floating-ui/svelte-dom/arrow.d.ts +22 -0
- package/dist/utils/floating-ui/svelte-dom/arrow.js +29 -0
- package/dist/utils/floating-ui/svelte-dom/index.d.ts +2 -0
- package/dist/utils/floating-ui/svelte-dom/index.js +2 -0
- package/dist/utils/floating-ui/svelte-dom/types.d.ts +80 -0
- package/dist/utils/floating-ui/svelte-dom/types.js +3 -0
- package/dist/utils/floating-ui/svelte-dom/useFloating.svelte.d.ts +6 -0
- package/dist/utils/floating-ui/svelte-dom/useFloating.svelte.js +182 -0
- package/dist/utils/floating-ui/svelte-dom/utils/deepEqual.d.ts +1 -0
- package/dist/utils/floating-ui/svelte-dom/utils/deepEqual.js +50 -0
- package/dist/utils/floating-ui/svelte-dom/utils/getDPR.d.ts +1 -0
- package/dist/utils/floating-ui/svelte-dom/utils/getDPR.js +7 -0
- package/dist/utils/floating-ui/svelte-dom/utils/roundByDPR.d.ts +1 -0
- package/dist/utils/floating-ui/svelte-dom/utils/roundByDPR.js +5 -0
- package/dist/utils/floating-ui/svelte-dom/utils/useLatestRef.d.ts +4 -0
- package/dist/utils/floating-ui/svelte-dom/utils/useLatestRef.js +7 -0
- package/dist/utils/id.d.ts +1 -1
- package/dist/utils/id.js +1 -1
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/style.d.ts +2 -0
- package/dist/utils/style.js +6 -0
- package/dist/utils/types.d.ts +9 -13
- package/package.json +27 -26
- package/dist/dialog/InternalDialog.svelte +0 -233
- package/dist/dialog/InternalDialog.svelte.d.ts +0 -42
- package/dist/internal/HoistFormFields.svelte +0 -11
- package/dist/internal/HoistFormFields.svelte.d.ts +0 -21
- package/dist/internal/id.d.ts +0 -8
- package/dist/internal/id.js +0 -11
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { sortByDomNode } from "../utils/focus-management.js";
|
|
2
|
+
import { match } from "../utils/match.js";
|
|
3
|
+
import { getContext, setContext } from "svelte";
|
|
4
|
+
export var Direction;
|
|
5
|
+
(function (Direction) {
|
|
6
|
+
Direction[Direction["Forwards"] = 0] = "Forwards";
|
|
7
|
+
Direction[Direction["Backwards"] = 1] = "Backwards";
|
|
8
|
+
})(Direction || (Direction = {}));
|
|
9
|
+
export var Ordering;
|
|
10
|
+
(function (Ordering) {
|
|
11
|
+
Ordering[Ordering["Less"] = -1] = "Less";
|
|
12
|
+
Ordering[Ordering["Equal"] = 0] = "Equal";
|
|
13
|
+
Ordering[Ordering["Greater"] = 1] = "Greater";
|
|
14
|
+
})(Ordering || (Ordering = {}));
|
|
15
|
+
export function useTabs(component) {
|
|
16
|
+
const context = getContext("TabsContext");
|
|
17
|
+
if (!context) {
|
|
18
|
+
const err = new Error(`<${component} /> is missing a parent <TabGroup /> component.`);
|
|
19
|
+
if (Error.captureStackTrace)
|
|
20
|
+
Error.captureStackTrace(err, useTabs);
|
|
21
|
+
throw err;
|
|
22
|
+
}
|
|
23
|
+
return context;
|
|
24
|
+
}
|
|
25
|
+
export const createTabContext = (props) => {
|
|
26
|
+
let _selectedIndex = $state($state.snapshot(props.selectedIndex ?? props.defaultIndex));
|
|
27
|
+
let tabs = $state.raw([]);
|
|
28
|
+
let panels = $state.raw([]);
|
|
29
|
+
const isControlled = $derived(props.selectedIndex !== undefined);
|
|
30
|
+
const context = {
|
|
31
|
+
info: {
|
|
32
|
+
get isControlled() {
|
|
33
|
+
return isControlled;
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
get orientation() {
|
|
37
|
+
return props.vertical ? "vertical" : "horizontal";
|
|
38
|
+
},
|
|
39
|
+
get activation() {
|
|
40
|
+
return props.manual ? "manual" : "auto";
|
|
41
|
+
},
|
|
42
|
+
get selectedIndex() {
|
|
43
|
+
return _selectedIndex;
|
|
44
|
+
},
|
|
45
|
+
set selectedIndex(index) {
|
|
46
|
+
if (index === _selectedIndex)
|
|
47
|
+
return;
|
|
48
|
+
tabs = sortByDomNode(tabs, (tab) => tab.current ?? null);
|
|
49
|
+
panels = sortByDomNode(panels, (panel) => panel.current ?? null);
|
|
50
|
+
const focusableTabs = tabs.filter((tab) => !tab?.current?.hasAttribute("disabled"));
|
|
51
|
+
if (
|
|
52
|
+
// Underflow
|
|
53
|
+
index < 0 ||
|
|
54
|
+
// Overflow
|
|
55
|
+
index > tabs.length - 1) {
|
|
56
|
+
const direction = match(Math.sign(index - _selectedIndex), {
|
|
57
|
+
[Ordering.Less]: () => Direction.Backwards,
|
|
58
|
+
[Ordering.Equal]: () => {
|
|
59
|
+
return match(Math.sign(index), {
|
|
60
|
+
[Ordering.Less]: () => Direction.Forwards,
|
|
61
|
+
[Ordering.Equal]: () => Direction.Forwards,
|
|
62
|
+
[Ordering.Greater]: () => Direction.Backwards,
|
|
63
|
+
});
|
|
64
|
+
},
|
|
65
|
+
[Ordering.Greater]: () => Direction.Forwards,
|
|
66
|
+
});
|
|
67
|
+
// If there are no focusable tabs then.
|
|
68
|
+
// We won't change the selected index
|
|
69
|
+
// because it's likely the user is
|
|
70
|
+
// lazy loading tabs and there's
|
|
71
|
+
// nothing to focus on yet
|
|
72
|
+
if (focusableTabs.length === 0)
|
|
73
|
+
return;
|
|
74
|
+
const nextSelectedIndex = match(direction, {
|
|
75
|
+
[Direction.Forwards]: () => tabs.findIndex((tab) => tab === focusableTabs[0]),
|
|
76
|
+
[Direction.Backwards]: () => tabs.findIndex((tab) => tab === focusableTabs[focusableTabs.length - 1]),
|
|
77
|
+
});
|
|
78
|
+
if (nextSelectedIndex !== -1)
|
|
79
|
+
_selectedIndex = nextSelectedIndex;
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
// Middle
|
|
83
|
+
const before = tabs.slice(0, index);
|
|
84
|
+
const after = tabs.slice(index);
|
|
85
|
+
const next = [...after, ...before].find((tab) => focusableTabs.some((_tab) => _tab === tab));
|
|
86
|
+
if (!next)
|
|
87
|
+
return;
|
|
88
|
+
let selectedIndex = tabs.findIndex((tab) => tab === next) ?? _selectedIndex;
|
|
89
|
+
if (selectedIndex === -1)
|
|
90
|
+
selectedIndex = _selectedIndex;
|
|
91
|
+
if (selectedIndex !== _selectedIndex)
|
|
92
|
+
_selectedIndex = selectedIndex;
|
|
93
|
+
},
|
|
94
|
+
get tabs() {
|
|
95
|
+
return tabs;
|
|
96
|
+
},
|
|
97
|
+
get panels() {
|
|
98
|
+
return panels;
|
|
99
|
+
},
|
|
100
|
+
registerTab(tab) {
|
|
101
|
+
const unregisterTab = (tab) => {
|
|
102
|
+
tabs = tabs.filter((_tab) => _tab !== tab);
|
|
103
|
+
};
|
|
104
|
+
if (tabs.some((_tab) => _tab === tab))
|
|
105
|
+
return () => unregisterTab(tab);
|
|
106
|
+
tabs = sortByDomNode([...tabs, tab], (tab) => tab.current ?? null);
|
|
107
|
+
const activeTab = tabs[_selectedIndex];
|
|
108
|
+
// When the component is uncontrolled, then we want to maintain the actively
|
|
109
|
+
// selected tab even if new tabs are inserted or removed before the active
|
|
110
|
+
// tab.
|
|
111
|
+
//
|
|
112
|
+
// When the component is controlled, then we don't want to do this and
|
|
113
|
+
// instead we want to select the tab based on the `selectedIndex` prop.
|
|
114
|
+
if (isControlled) {
|
|
115
|
+
const selectedIndex = tabs.findIndex((tab) => tab === activeTab);
|
|
116
|
+
if (selectedIndex !== _selectedIndex)
|
|
117
|
+
_selectedIndex = selectedIndex;
|
|
118
|
+
}
|
|
119
|
+
return () => unregisterTab(tab);
|
|
120
|
+
},
|
|
121
|
+
registerPanel(panel) {
|
|
122
|
+
const unregisterPanel = (panel) => {
|
|
123
|
+
panels = panels.filter((_panel) => _panel !== panel);
|
|
124
|
+
};
|
|
125
|
+
if (!panels.some((_panel) => _panel === panel)) {
|
|
126
|
+
panels = sortByDomNode([...panels, panel], (panel) => panel.current ?? null);
|
|
127
|
+
}
|
|
128
|
+
return () => unregisterPanel(panel);
|
|
129
|
+
},
|
|
130
|
+
change: props.change,
|
|
131
|
+
};
|
|
132
|
+
setContext("TabsContext", context);
|
|
133
|
+
return context;
|
|
134
|
+
};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<script lang="ts" module>const DEFAULT_TEXTAREA_TAG = "textarea";
|
|
2
2
|
</script>
|
|
3
3
|
|
|
4
|
-
<script lang="ts" generics="TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG">import { htmlid } from "../utils/id.js";
|
|
4
|
+
<script lang="ts" generics="TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG, TValue = string">import { htmlid } from "../utils/id.js";
|
|
5
5
|
import { useDisabled } from "../hooks/use-disabled.js";
|
|
6
|
-
import { useProvidedId } from "../
|
|
6
|
+
import { useProvidedId } from "../utils/id.js";
|
|
7
7
|
import { useLabelledBy } from "../label/context.svelte.js";
|
|
8
8
|
import { useDescribedBy } from "../description/context.svelte.js";
|
|
9
9
|
import { useHover } from "../hooks/use-hover.svelte.js";
|
|
@@ -16,13 +16,13 @@ const providedDisabled = useDisabled();
|
|
|
16
16
|
let {
|
|
17
17
|
ref = $bindable(),
|
|
18
18
|
value = $bindable(),
|
|
19
|
-
id = providedId
|
|
19
|
+
id = providedId || `headlessui-input-${internalId}`,
|
|
20
20
|
disabled: theirDisabled = false,
|
|
21
21
|
autofocus = false,
|
|
22
22
|
invalid = false,
|
|
23
23
|
...theirProps
|
|
24
24
|
} = $props();
|
|
25
|
-
const disabled = $derived(providedDisabled
|
|
25
|
+
const disabled = $derived(providedDisabled.current || theirDisabled);
|
|
26
26
|
const labelledBy = useLabelledBy();
|
|
27
27
|
const describedBy = useDescribedBy();
|
|
28
28
|
const { isFocusVisible: focus, focusProps } = $derived(
|
|
@@ -8,40 +8,41 @@ type TextareaRenderPropArg = {
|
|
|
8
8
|
invalid: boolean;
|
|
9
9
|
};
|
|
10
10
|
type TextareaPropsWeControl = "aria-labelledby" | "aria-describedby";
|
|
11
|
-
export type TextareaProps<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG> = Props<TTag, TextareaRenderPropArg, TextareaPropsWeControl, {
|
|
11
|
+
export type TextareaProps<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG, TValue = string> = Props<TTag, TextareaRenderPropArg, TextareaPropsWeControl, {
|
|
12
|
+
value?: TValue;
|
|
12
13
|
disabled?: boolean;
|
|
13
14
|
invalid?: boolean;
|
|
14
|
-
|
|
15
|
+
autofocus?: boolean;
|
|
15
16
|
}>;
|
|
16
|
-
declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG> {
|
|
17
|
+
declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG, TValue = string> {
|
|
17
18
|
props(): {
|
|
18
19
|
as?: TTag | undefined;
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
value?: TValue | undefined;
|
|
21
|
+
} & (Exclude<keyof PropsOf<TTag>, ("slot" | "as" | "children" | "class" | "ref") | "invalid" | "disabled" | "autofocus" | "value" | TextareaPropsWeControl> extends infer T extends keyof PropsOf<TTag> ? { [P in T]: PropsOf<TTag>[P]; } : never) & {
|
|
22
|
+
children?: import("svelte").Snippet<[{
|
|
23
|
+
slot: TextareaRenderPropArg;
|
|
24
|
+
props: Record<string, any>;
|
|
25
|
+
}]> | undefined;
|
|
26
|
+
class?: string | ((bag: TextareaRenderPropArg) => string) | null | undefined;
|
|
21
27
|
ref?: HTMLElement;
|
|
22
|
-
} &
|
|
23
|
-
|
|
24
|
-
} : {}) & {
|
|
28
|
+
} & {
|
|
29
|
+
value?: TValue | undefined;
|
|
25
30
|
disabled?: boolean;
|
|
26
31
|
invalid?: boolean;
|
|
27
|
-
|
|
28
|
-
};
|
|
29
|
-
events(): {} & {
|
|
30
|
-
[evt: string]: CustomEvent<any>;
|
|
32
|
+
autofocus?: boolean;
|
|
31
33
|
};
|
|
34
|
+
events(): {};
|
|
32
35
|
slots(): {};
|
|
33
36
|
bindings(): "ref" | "value";
|
|
34
37
|
exports(): {};
|
|
35
38
|
}
|
|
36
39
|
interface $$IsomorphicComponent {
|
|
37
|
-
new <TTag extends ElementType = typeof DEFAULT_TEXTAREA_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']>> & {
|
|
38
|
-
$$bindings?: ReturnType<__sveltets_Render<TTag>['bindings']>;
|
|
39
|
-
} & ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
40
|
-
<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {
|
|
41
|
-
|
|
42
|
-
}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
43
|
-
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
40
|
+
new <TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG, TValue = string>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TTag, TValue>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TTag, TValue>['props']>, ReturnType<__sveltets_Render<TTag, TValue>['events']>, ReturnType<__sveltets_Render<TTag, TValue>['slots']>> & {
|
|
41
|
+
$$bindings?: ReturnType<__sveltets_Render<TTag, TValue>['bindings']>;
|
|
42
|
+
} & ReturnType<__sveltets_Render<TTag, TValue>['exports']>;
|
|
43
|
+
<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG, TValue = string>(internal: unknown, props: ReturnType<__sveltets_Render<TTag, TValue>['props']> & {}): ReturnType<__sveltets_Render<TTag, TValue>['exports']>;
|
|
44
|
+
z_$$bindings?: ReturnType<__sveltets_Render<any, any>['bindings']>;
|
|
44
45
|
}
|
|
45
46
|
declare const Textarea: $$IsomorphicComponent;
|
|
46
|
-
type Textarea<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG> = InstanceType<typeof Textarea<TTag>>;
|
|
47
|
+
type Textarea<TTag extends ElementType = typeof DEFAULT_TEXTAREA_TAG, TValue = string> = InstanceType<typeof Textarea<TTag, TValue>>;
|
|
47
48
|
export default Textarea;
|
|
@@ -23,20 +23,20 @@ export declare function shouldForwardRef<TTag extends ElementType = typeof DEFAU
|
|
|
23
23
|
declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG> {
|
|
24
24
|
props(): {
|
|
25
25
|
as?: TTag | undefined;
|
|
26
|
-
} & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "
|
|
27
|
-
children?: import("
|
|
26
|
+
} & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("slot" | "as" | "children" | "class" | "ref") | "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("svelte").Snippet<[{
|
|
28
|
+
slot: HTMLElement;
|
|
29
|
+
props: Record<string, any>;
|
|
30
|
+
}]> | undefined;
|
|
31
|
+
class?: string | ((bag: HTMLElement) => string) | null | undefined;
|
|
28
32
|
ref?: HTMLElement;
|
|
29
|
-
} &
|
|
30
|
-
class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HTMLElement) => string) | undefined;
|
|
31
|
-
} : {}) & {
|
|
33
|
+
} & {
|
|
32
34
|
unmount?: boolean | undefined;
|
|
33
35
|
} & import("./context.svelte.js").TransitionClasses & import("./context.svelte.js").TransitionEvents & {
|
|
34
36
|
transition?: boolean;
|
|
35
37
|
appear?: boolean;
|
|
36
38
|
};
|
|
37
|
-
events(): {}
|
|
38
|
-
[evt: string]: CustomEvent<any>;
|
|
39
|
-
};
|
|
39
|
+
events(): {};
|
|
40
40
|
slots(): {};
|
|
41
41
|
bindings(): "ref";
|
|
42
42
|
exports(): {};
|
|
@@ -45,9 +45,7 @@ interface $$IsomorphicComponent {
|
|
|
45
45
|
new <TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_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']>> & {
|
|
46
46
|
$$bindings?: ReturnType<__sveltets_Render<TTag>['bindings']>;
|
|
47
47
|
} & ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
48
|
-
<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {
|
|
49
|
-
$$events?: ReturnType<__sveltets_Render<TTag>['events']>;
|
|
50
|
-
}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
48
|
+
<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
51
49
|
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
52
50
|
}
|
|
53
51
|
declare const InternalTransitionChild: $$IsomorphicComponent;
|
|
@@ -7,12 +7,14 @@ export type TransitionRootProps<TTag extends ElementType = typeof DEFAULT_TRANSI
|
|
|
7
7
|
declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG> {
|
|
8
8
|
props(): {
|
|
9
9
|
as?: TTag | undefined;
|
|
10
|
-
} & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "
|
|
11
|
-
children?: import("
|
|
10
|
+
} & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("slot" | "as" | "children" | "class" | "ref") | "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("svelte").Snippet<[{
|
|
12
|
+
slot: HTMLElement;
|
|
13
|
+
props: Record<string, any>;
|
|
14
|
+
}]> | undefined;
|
|
15
|
+
class?: string | ((bag: HTMLElement) => string) | null | undefined;
|
|
12
16
|
ref?: HTMLElement;
|
|
13
|
-
} &
|
|
14
|
-
class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HTMLElement) => string) | undefined;
|
|
15
|
-
} : {}) & {
|
|
17
|
+
} & {
|
|
16
18
|
unmount?: boolean | undefined;
|
|
17
19
|
} & import("./context.svelte.js").TransitionClasses & import("./context.svelte.js").TransitionEvents & {
|
|
18
20
|
transition?: boolean;
|
|
@@ -21,9 +23,7 @@ declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TRANSI
|
|
|
21
23
|
show?: boolean;
|
|
22
24
|
appear?: boolean;
|
|
23
25
|
};
|
|
24
|
-
events(): {}
|
|
25
|
-
[evt: string]: CustomEvent<any>;
|
|
26
|
-
};
|
|
26
|
+
events(): {};
|
|
27
27
|
slots(): {};
|
|
28
28
|
bindings(): "ref";
|
|
29
29
|
exports(): {};
|
|
@@ -32,9 +32,7 @@ interface $$IsomorphicComponent {
|
|
|
32
32
|
new <TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_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']>> & {
|
|
33
33
|
$$bindings?: ReturnType<__sveltets_Render<TTag>['bindings']>;
|
|
34
34
|
} & ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
35
|
-
<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {
|
|
36
|
-
$$events?: ReturnType<__sveltets_Render<TTag>['events']>;
|
|
37
|
-
}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
35
|
+
<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
38
36
|
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
39
37
|
}
|
|
40
38
|
declare const Transition: $$IsomorphicComponent;
|
|
@@ -12,20 +12,20 @@ export declare const TransitionChildRenderFeatures = RenderFeatures.RenderStrate
|
|
|
12
12
|
declare class __sveltets_Render<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG> {
|
|
13
13
|
props(): {
|
|
14
14
|
as?: TTag | undefined;
|
|
15
|
-
} & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("as" | "children" | "
|
|
16
|
-
children?: import("
|
|
15
|
+
} & (Exclude<keyof import("../utils/types.js").PropsOf<TTag>, ("slot" | "as" | "children" | "class" | "ref") | "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("svelte").Snippet<[{
|
|
17
|
+
slot: HTMLElement;
|
|
18
|
+
props: Record<string, any>;
|
|
19
|
+
}]> | undefined;
|
|
20
|
+
class?: string | ((bag: HTMLElement) => string) | null | undefined;
|
|
17
21
|
ref?: HTMLElement;
|
|
18
|
-
} &
|
|
19
|
-
class?: import("../utils/types.js").PropsOf<TTag>["class"] | ((bag: HTMLElement) => string) | undefined;
|
|
20
|
-
} : {}) & {
|
|
22
|
+
} & {
|
|
21
23
|
unmount?: boolean | undefined;
|
|
22
24
|
} & TransitionClasses & TransitionEvents & {
|
|
23
25
|
transition?: boolean;
|
|
24
26
|
appear?: boolean;
|
|
25
27
|
};
|
|
26
|
-
events(): {}
|
|
27
|
-
[evt: string]: CustomEvent<any>;
|
|
28
|
-
};
|
|
28
|
+
events(): {};
|
|
29
29
|
slots(): {};
|
|
30
30
|
bindings(): "ref";
|
|
31
31
|
exports(): {};
|
|
@@ -34,9 +34,7 @@ interface $$IsomorphicComponent {
|
|
|
34
34
|
new <TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_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']>> & {
|
|
35
35
|
$$bindings?: ReturnType<__sveltets_Render<TTag>['bindings']>;
|
|
36
36
|
} & ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
37
|
-
<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {
|
|
38
|
-
$$events?: ReturnType<__sveltets_Render<TTag>['events']>;
|
|
39
|
-
}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
37
|
+
<TTag extends ElementType = typeof DEFAULT_TRANSITION_CHILD_TAG>(internal: unknown, props: ReturnType<__sveltets_Render<TTag>['props']> & {}): ReturnType<__sveltets_Render<TTag>['exports']>;
|
|
40
38
|
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
41
39
|
}
|
|
42
40
|
declare const TransitionChild: $$IsomorphicComponent;
|
|
@@ -10,14 +10,14 @@ export var TreeStates;
|
|
|
10
10
|
})(TreeStates || (TreeStates = {}));
|
|
11
11
|
export function useTransitionContext() {
|
|
12
12
|
const context = getContext("TransitionContext");
|
|
13
|
-
if (context
|
|
13
|
+
if (!context) {
|
|
14
14
|
throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
|
|
15
15
|
}
|
|
16
16
|
return context;
|
|
17
17
|
}
|
|
18
18
|
export function useParentNesting() {
|
|
19
19
|
let context = getContext("NestingContext");
|
|
20
|
-
if (context
|
|
20
|
+
if (!context) {
|
|
21
21
|
throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");
|
|
22
22
|
}
|
|
23
23
|
return context;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang="ts" generics="TFeature extends RenderFeatures, TTag extends ElementType, TSlot, TValue">import { mergePropsAdvanced, RenderFeatures
|
|
1
|
+
<script lang="ts" generics="TFeature extends RenderFeatures, TTag extends ElementType, TSlot, TValue">import { mergePropsAdvanced, RenderFeatures } from "./render.js";
|
|
2
2
|
import Generic from "./Generic.svelte";
|
|
3
3
|
let {
|
|
4
4
|
ourProps,
|
|
@@ -23,4 +23,4 @@ const hiddenProps = $derived(
|
|
|
23
23
|
);
|
|
24
24
|
</script>
|
|
25
25
|
|
|
26
|
-
{#if render}<Generic {...rest} {...hiddenProps} {slot} tag={defaultTag}
|
|
26
|
+
{#if render}<Generic {...rest} {...hiddenProps} {slot} tag={defaultTag} bind:ref bind:value bind:checked />{/if}
|
|
@@ -6,10 +6,12 @@ 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("
|
|
9
|
+
children?: import("svelte").Snippet<[{
|
|
10
|
+
slot: TSlot;
|
|
11
|
+
props: Record<string, any>;
|
|
12
|
+
}]> | undefined;
|
|
13
|
+
class?: string | ((bag: TSlot) => string) | null | undefined;
|
|
10
14
|
ref?: HTMLElement;
|
|
11
|
-
} & {
|
|
12
|
-
class?: any;
|
|
13
15
|
} & Expand<((TFeature extends RenderFeatures.Static ? {
|
|
14
16
|
static?: boolean;
|
|
15
17
|
} : {}) extends infer T ? T extends (TFeature extends RenderFeatures.Static ? {
|
|
@@ -21,9 +23,12 @@ declare class __sveltets_Render<TFeature extends RenderFeatures, TTag extends El
|
|
|
21
23
|
} : {}) ? T_1 extends any ? (x: T_1) => any : never : never : never) extends (x: infer R) => any ? R : never>> | undefined;
|
|
22
24
|
theirProps: {
|
|
23
25
|
as?: TTag | undefined;
|
|
24
|
-
children?: import("
|
|
26
|
+
children?: import("svelte").Snippet<[{
|
|
27
|
+
slot: TSlot;
|
|
28
|
+
props: Record<string, any>;
|
|
29
|
+
}]> | undefined;
|
|
30
|
+
class?: string | ((bag: TSlot) => string) | null | undefined;
|
|
25
31
|
ref?: HTMLElement | undefined;
|
|
26
|
-
class?: any;
|
|
27
32
|
};
|
|
28
33
|
slot?: TSlot | undefined;
|
|
29
34
|
slots?: TSlot | undefined;
|
|
@@ -35,9 +40,7 @@ declare class __sveltets_Render<TFeature extends RenderFeatures, TTag extends El
|
|
|
35
40
|
value?: TValue | undefined;
|
|
36
41
|
checked?: boolean;
|
|
37
42
|
};
|
|
38
|
-
events(): {}
|
|
39
|
-
[evt: string]: CustomEvent<any>;
|
|
40
|
-
};
|
|
43
|
+
events(): {};
|
|
41
44
|
slots(): {};
|
|
42
45
|
bindings(): "ref" | "value" | "checked";
|
|
43
46
|
exports(): {};
|
|
@@ -46,9 +49,7 @@ interface $$IsomorphicComponent {
|
|
|
46
49
|
new <TFeature extends RenderFeatures, TTag extends ElementType, TSlot, TValue>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['props']>, ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['events']>, ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['slots']>> & {
|
|
47
50
|
$$bindings?: ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['bindings']>;
|
|
48
51
|
} & ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['exports']>;
|
|
49
|
-
<TFeature extends RenderFeatures, TTag extends ElementType, TSlot, TValue>(internal: unknown, props: ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['props']> & {
|
|
50
|
-
$$events?: ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['events']>;
|
|
51
|
-
}): ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['exports']>;
|
|
52
|
+
<TFeature extends RenderFeatures, TTag extends ElementType, TSlot, TValue>(internal: unknown, props: ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['props']> & {}): ReturnType<__sveltets_Render<TFeature, TTag, TSlot, TValue>['exports']>;
|
|
52
53
|
z_$$bindings?: ReturnType<__sveltets_Render<any, any, any, any>['bindings']>;
|
|
53
54
|
}
|
|
54
55
|
declare const ElementOrComponent: $$IsomorphicComponent;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
<script lang="ts" generics="TTag extends
|
|
1
|
+
<script lang="ts" generics="TTag extends ElementType, TSlot, TValue">import { stateFromSlot } from "./state.js";
|
|
2
2
|
let {
|
|
3
3
|
slot = {},
|
|
4
4
|
tag,
|
|
5
|
-
name,
|
|
6
5
|
ref = $bindable(),
|
|
7
6
|
value = $bindable(),
|
|
8
7
|
checked = $bindable(),
|
|
@@ -18,19 +17,22 @@ const resolvedClass = $derived(
|
|
|
18
17
|
</script>
|
|
19
18
|
|
|
20
19
|
{#if as === "svelte:fragment"}
|
|
21
|
-
{#if children}{@render children(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
{#if children}{@render children({
|
|
21
|
+
slot,
|
|
22
|
+
props: {
|
|
23
|
+
...props,
|
|
24
|
+
...(resolvedClass ? { class: resolvedClass } : {}),
|
|
25
|
+
...stateFromSlot(slot),
|
|
26
|
+
},
|
|
25
27
|
})}{/if}
|
|
26
28
|
{:else if children}
|
|
27
29
|
{#if as === "select"}
|
|
28
30
|
<select bind:this={ref} {...props} class={resolvedClass} {...stateFromSlot(slot)} bind:value>
|
|
29
|
-
{@render children(slot, {})}
|
|
31
|
+
{@render children({ slot, props: {} })}
|
|
30
32
|
</select>
|
|
31
33
|
{:else}
|
|
32
34
|
<svelte:element this={as} bind:this={ref} {...props} class={resolvedClass} {...stateFromSlot(slot)}>
|
|
33
|
-
{@render children(slot, {})}
|
|
35
|
+
{@render children({ slot, props: {} })}
|
|
34
36
|
</svelte:element>
|
|
35
37
|
{/if}
|
|
36
38
|
{:else if as === "input" && props.type === "checkbox"}
|
|
@@ -1,35 +1,32 @@
|
|
|
1
|
-
import type { ElementType
|
|
2
|
-
declare class __sveltets_Render<TTag extends
|
|
1
|
+
import type { ElementType } from "./types.js";
|
|
2
|
+
declare class __sveltets_Render<TTag extends ElementType, TSlot, TValue> {
|
|
3
3
|
props(): {
|
|
4
4
|
as?: TTag | undefined;
|
|
5
5
|
slot: TSlot;
|
|
6
6
|
tag: ElementType;
|
|
7
|
-
name: string;
|
|
8
7
|
ref?: HTMLElement;
|
|
9
8
|
value?: TValue | undefined;
|
|
10
9
|
checked?: boolean;
|
|
11
|
-
} & (Exclude<keyof import("./types.js").PropsOf<TTag>, "as" | "children" | "
|
|
12
|
-
children?: import("
|
|
10
|
+
} & (Exclude<keyof import("./types.js").PropsOf<TTag>, "slot" | "as" | "children" | "class" | "ref"> extends infer T extends keyof import("./types.js").PropsOf<TTag> ? { [P in T]: import("./types.js").PropsOf<TTag>[P]; } : never) & {
|
|
11
|
+
children?: import("svelte").Snippet<[{
|
|
12
|
+
slot: TSlot;
|
|
13
|
+
props: Record<string, any>;
|
|
14
|
+
}]> | undefined;
|
|
15
|
+
class?: string | ((bag: TSlot) => string) | null | undefined;
|
|
13
16
|
ref?: HTMLElement;
|
|
14
|
-
} & (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) ? {
|
|
15
|
-
class?: import("./types.js").PropsOf<TTag>["class"] | ((bag: TSlot) => string) | undefined;
|
|
16
|
-
} : {});
|
|
17
|
-
events(): {} & {
|
|
18
|
-
[evt: string]: CustomEvent<any>;
|
|
19
17
|
};
|
|
18
|
+
events(): {};
|
|
20
19
|
slots(): {};
|
|
21
20
|
bindings(): "ref" | "value" | "checked";
|
|
22
21
|
exports(): {};
|
|
23
22
|
}
|
|
24
23
|
interface $$IsomorphicComponent {
|
|
25
|
-
new <TTag extends
|
|
24
|
+
new <TTag extends ElementType, TSlot, TValue>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TTag, TSlot, TValue>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TTag, TSlot, TValue>['props']>, ReturnType<__sveltets_Render<TTag, TSlot, TValue>['events']>, ReturnType<__sveltets_Render<TTag, TSlot, TValue>['slots']>> & {
|
|
26
25
|
$$bindings?: ReturnType<__sveltets_Render<TTag, TSlot, TValue>['bindings']>;
|
|
27
26
|
} & ReturnType<__sveltets_Render<TTag, TSlot, TValue>['exports']>;
|
|
28
|
-
<TTag extends
|
|
29
|
-
$$events?: ReturnType<__sveltets_Render<TTag, TSlot, TValue>['events']>;
|
|
30
|
-
}): ReturnType<__sveltets_Render<TTag, TSlot, TValue>['exports']>;
|
|
27
|
+
<TTag extends ElementType, TSlot, TValue>(internal: unknown, props: ReturnType<__sveltets_Render<TTag, TSlot, TValue>['props']> & {}): ReturnType<__sveltets_Render<TTag, TSlot, TValue>['exports']>;
|
|
31
28
|
z_$$bindings?: ReturnType<__sveltets_Render<any, any, any>['bindings']>;
|
|
32
29
|
}
|
|
33
30
|
declare const Generic: $$IsomorphicComponent;
|
|
34
|
-
type Generic<TTag extends
|
|
31
|
+
type Generic<TTag extends ElementType, TSlot, TValue> = InstanceType<typeof Generic<TTag, TSlot, TValue>>;
|
|
35
32
|
export default Generic;
|
|
@@ -1,22 +1,6 @@
|
|
|
1
1
|
import { type Snippet } from "svelte";
|
|
2
2
|
export declare function useStableCollectionIndex(group: string): number;
|
|
3
|
-
|
|
4
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
5
|
-
$$bindings?: Bindings;
|
|
6
|
-
} & Exports;
|
|
7
|
-
(internal: unknown, props: Props & {
|
|
8
|
-
$$events?: Events;
|
|
9
|
-
$$slots?: Slots;
|
|
10
|
-
}): Exports & {
|
|
11
|
-
$set?: any;
|
|
12
|
-
$on?: any;
|
|
13
|
-
};
|
|
14
|
-
z_$$bindings?: Bindings;
|
|
15
|
-
}
|
|
16
|
-
declare const StableCollection: $$__sveltets_2_IsomorphicComponent<{
|
|
3
|
+
declare const StableCollection: import("svelte").Component<{
|
|
17
4
|
children: Snippet;
|
|
18
|
-
}, {
|
|
19
|
-
[evt: string]: CustomEvent<any>;
|
|
20
|
-
}, {}, {}, "">;
|
|
21
|
-
type StableCollection = InstanceType<typeof StableCollection>;
|
|
5
|
+
}, {}, "">;
|
|
22
6
|
export default StableCollection;
|
|
@@ -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?:
|
|
11
|
+
children?: Snippet<[TSlot, Record<string, any>]>;
|
|
13
12
|
ref?: HTMLElement;
|
|
14
13
|
class?: string | null | ((bag: TSlot) => string);
|
|
15
14
|
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<script lang="ts" module></script>
|
|
2
|
+
|
|
3
|
+
<script lang="ts">import { setContext } from "svelte";
|
|
4
|
+
import { useFloatingParentNodeId } from "./FloatingTree.svelte";
|
|
5
|
+
const { children, id } = $props();
|
|
6
|
+
const parentId = useFloatingParentNodeId();
|
|
7
|
+
setContext("FloatingNodeContext", {
|
|
8
|
+
get id() {
|
|
9
|
+
return id;
|
|
10
|
+
},
|
|
11
|
+
get parentId() {
|
|
12
|
+
return parentId.value;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
</script>
|
|
16
|
+
|
|
17
|
+
{#if children}{@render children()}{/if}
|