ui-ingredients 0.31.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion/accordion-item.svelte +3 -0
- package/dist/accordion/accordion-root.svelte +13 -7
- package/dist/accordion/accordion-root.svelte.d.ts +2 -2
- package/dist/accordion/create-accordion.svelte.d.ts +1 -2
- package/dist/accordion/create-accordion.svelte.js +7 -13
- package/dist/alert/alert-root.svelte +11 -5
- package/dist/alert/alert-root.svelte.d.ts +2 -2
- package/dist/alert/create-alert.svelte.d.ts +1 -1
- package/dist/alert/create-alert.svelte.js +3 -5
- package/dist/alert-dialog/alert-dialog-anatomy.js +1 -1
- package/dist/alert-dialog/alert-dialog-root.svelte +9 -3
- package/dist/alert-dialog/alert-dialog-root.svelte.d.ts +2 -1
- package/dist/alert-dialog/create-alert-dialog.svelte.d.ts +1 -3
- package/dist/alert-dialog/create-alert-dialog.svelte.js +11 -16
- package/dist/angle-slider/angle-slider-root.svelte +10 -5
- package/dist/angle-slider/angle-slider-root.svelte.d.ts +2 -2
- package/dist/angle-slider/create-angle-slider.svelte.d.ts +1 -2
- package/dist/angle-slider/create-angle-slider.svelte.js +3 -7
- package/dist/avatar/avatar-root.svelte +12 -4
- package/dist/avatar/avatar-root.svelte.d.ts +2 -2
- package/dist/avatar/create-avatar.svelte.d.ts +1 -2
- package/dist/avatar/create-avatar.svelte.js +3 -7
- package/dist/breadcrumbs/breadcrumbs-anatomy.d.ts +3 -0
- package/dist/breadcrumbs/breadcrumbs-anatomy.js +3 -0
- package/dist/breadcrumbs/breadcrumbs-context.svelte.d.ts +3 -0
- package/dist/breadcrumbs/breadcrumbs-context.svelte.js +3 -0
- package/dist/breadcrumbs/breadcrumbs-item.svelte +5 -0
- package/dist/breadcrumbs/breadcrumbs-item.svelte.d.ts +1 -0
- package/dist/breadcrumbs/breadcrumbs-link.svelte +5 -0
- package/dist/breadcrumbs/breadcrumbs-link.svelte.d.ts +1 -0
- package/dist/breadcrumbs/breadcrumbs-list.svelte +5 -0
- package/dist/breadcrumbs/breadcrumbs-list.svelte.d.ts +1 -0
- package/dist/breadcrumbs/breadcrumbs-root.svelte +5 -0
- package/dist/breadcrumbs/breadcrumbs-root.svelte.d.ts +1 -0
- package/dist/breadcrumbs/breadcrumbs-separator.svelte +5 -0
- package/dist/breadcrumbs/breadcrumbs-separator.svelte.d.ts +1 -0
- package/dist/breadcrumbs/create-breadcrumbs.d.ts +6 -0
- package/dist/breadcrumbs/create-breadcrumbs.js +3 -0
- package/dist/carousel/carousel-root.svelte +11 -5
- package/dist/carousel/carousel-root.svelte.d.ts +2 -2
- package/dist/carousel/create-carousel.svelte.d.ts +1 -2
- package/dist/carousel/create-carousel.svelte.js +3 -7
- package/dist/checkbox/checkbox-root.svelte +10 -5
- package/dist/checkbox/checkbox-root.svelte.d.ts +2 -2
- package/dist/checkbox/create-checkbox.svelte.d.ts +1 -2
- package/dist/checkbox/create-checkbox.svelte.js +5 -9
- package/dist/clipboard/clipboard-root.svelte +11 -5
- package/dist/clipboard/clipboard-root.svelte.d.ts +2 -2
- package/dist/clipboard/create-clipboard.svelte.d.ts +1 -2
- package/dist/clipboard/create-clipboard.svelte.js +2 -6
- package/dist/collapsible/collapsible-root.svelte +13 -8
- package/dist/collapsible/collapsible-root.svelte.d.ts +2 -2
- package/dist/collapsible/create-collapsible.svelte.d.ts +1 -3
- package/dist/collapsible/create-collapsible.svelte.js +3 -8
- package/dist/color-picker/color-picker-channel-slider-value-text.svelte +1 -1
- package/dist/color-picker/color-picker-root.svelte +15 -8
- package/dist/color-picker/color-picker-root.svelte.d.ts +2 -2
- package/dist/color-picker/create-color-picker.svelte.d.ts +5 -5
- package/dist/color-picker/create-color-picker.svelte.js +9 -13
- package/dist/combobox/combobox-item-group.svelte +2 -2
- package/dist/combobox/combobox-root.svelte +16 -8
- package/dist/combobox/combobox-root.svelte.d.ts +2 -2
- package/dist/combobox/create-combobox.svelte.d.ts +1 -5
- package/dist/combobox/create-combobox.svelte.js +6 -14
- package/dist/date-picker/create-date-picker.svelte.d.ts +1 -7
- package/dist/date-picker/create-date-picker.svelte.js +4 -24
- package/dist/date-picker/date-picker-anatomy.d.ts +1 -2
- package/dist/date-picker/date-picker-anatomy.js +1 -3
- package/dist/date-picker/date-picker-root.svelte +20 -11
- package/dist/date-picker/date-picker-root.svelte.d.ts +2 -2
- package/dist/dialog/create-dialog.svelte.d.ts +1 -3
- package/dist/dialog/create-dialog.svelte.js +3 -8
- package/dist/dialog/dialog-root.svelte +9 -3
- package/dist/dialog/dialog-root.svelte.d.ts +2 -1
- package/dist/drawer/create-drawer.svelte.d.ts +8 -3
- package/dist/drawer/create-drawer.svelte.js +38 -20
- package/dist/drawer/drawer-root.svelte +9 -3
- package/dist/drawer/drawer-root.svelte.d.ts +2 -1
- package/dist/editable/create-editable.svelte.d.ts +1 -3
- package/dist/editable/create-editable.svelte.js +5 -10
- package/dist/editable/editable-root.svelte +12 -6
- package/dist/editable/editable-root.svelte.d.ts +2 -2
- package/dist/field/create-field.svelte.d.ts +2 -1
- package/dist/field/create-field.svelte.js +11 -3
- package/dist/field/field-root.svelte +12 -7
- package/dist/field/field-root.svelte.d.ts +2 -2
- package/dist/file-upload/create-file-upload.svelte.d.ts +1 -2
- package/dist/file-upload/create-file-upload.svelte.js +5 -9
- package/dist/file-upload/file-upload-root.svelte +9 -6
- package/dist/file-upload/file-upload-root.svelte.d.ts +2 -2
- package/dist/floating-panel/create-floating-panel.svelte.d.ts +1 -2
- package/dist/floating-panel/create-floating-panel.svelte.js +3 -7
- package/dist/floating-panel/floating-panel-anatomy.d.ts +1 -1
- package/dist/floating-panel/floating-panel-anatomy.js +1 -1
- package/dist/floating-panel/floating-panel-root.svelte +6 -3
- package/dist/floating-panel/floating-panel-root.svelte.d.ts +2 -1
- package/dist/focus-trap/focus-trap.svelte +104 -0
- package/dist/focus-trap/focus-trap.svelte.d.ts +11 -0
- package/dist/focus-trap/index.d.ts +1 -0
- package/dist/focus-trap/index.js +1 -0
- package/dist/highlight/highlight.svelte +8 -2
- package/dist/hover-card/create-hover-card.svelte.d.ts +1 -3
- package/dist/hover-card/create-hover-card.svelte.js +3 -8
- package/dist/hover-card/hover-card-root.svelte +14 -6
- package/dist/hover-card/hover-card-root.svelte.d.ts +2 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/locale-provider/index.d.ts +2 -2
- package/dist/locale-provider/index.js +2 -2
- package/dist/locale-provider/{local-provider.svelte → locale-provider.svelte} +1 -1
- package/dist/locale-provider/locale-provider.svelte.d.ts +8 -0
- package/dist/menu/create-menu.svelte.d.ts +2 -4
- package/dist/menu/create-menu.svelte.js +4 -9
- package/dist/menu/menu-arrow-tip.svelte +1 -1
- package/dist/menu/menu-arrow.svelte +1 -1
- package/dist/menu/menu-content.svelte +5 -1
- package/dist/menu/menu-context-trigger.svelte +3 -1
- package/dist/menu/menu-indicator.svelte +3 -1
- package/dist/menu/menu-item-group-label.svelte +1 -1
- package/dist/menu/menu-item-group.svelte +3 -3
- package/dist/menu/menu-item.svelte +9 -2
- package/dist/menu/menu-option-item-indicator.svelte +1 -1
- package/dist/menu/menu-option-item-text.svelte +1 -1
- package/dist/menu/menu-option-item.svelte +10 -2
- package/dist/menu/menu-positioner.svelte +5 -1
- package/dist/menu/menu-root.svelte +13 -8
- package/dist/menu/menu-root.svelte.d.ts +2 -1
- package/dist/menu/menu-separator.svelte +3 -1
- package/dist/menu/menu-trigger.svelte +1 -1
- package/dist/number-input/create-number-input.svelte.d.ts +1 -2
- package/dist/number-input/create-number-input.svelte.js +5 -9
- package/dist/number-input/number-input-root.svelte +10 -5
- package/dist/number-input/number-input-root.svelte.d.ts +2 -2
- package/dist/pagination/create-pagination.svelte.d.ts +1 -2
- package/dist/pagination/create-pagination.svelte.js +3 -7
- package/dist/pagination/pagination-root.svelte +11 -5
- package/dist/pagination/pagination-root.svelte.d.ts +2 -2
- package/dist/pin-input/create-pin-input.svelte.d.ts +1 -4
- package/dist/pin-input/create-pin-input.svelte.js +5 -19
- package/dist/pin-input/index.d.ts +0 -1
- package/dist/pin-input/pin-input-anatomy.d.ts +1 -2
- package/dist/pin-input/pin-input-anatomy.js +1 -3
- package/dist/pin-input/pin-input-root.svelte +11 -5
- package/dist/pin-input/pin-input-root.svelte.d.ts +2 -2
- package/dist/pin-input/pin-input.d.ts +0 -1
- package/dist/pin-input/pin-input.js +0 -1
- package/dist/popover/create-popover.svelte.d.ts +1 -3
- package/dist/popover/create-popover.svelte.js +3 -8
- package/dist/popover/popover-root.svelte +11 -6
- package/dist/popover/popover-root.svelte.d.ts +2 -1
- package/dist/presence/create-presence.svelte.d.ts +2 -2
- package/dist/presence/create-presence.svelte.js +5 -13
- package/dist/presence/presence.svelte +10 -1
- package/dist/progress/create-progress.svelte.d.ts +1 -2
- package/dist/progress/create-progress.svelte.js +4 -7
- package/dist/progress/progress-root.svelte +12 -5
- package/dist/progress/progress-root.svelte.d.ts +2 -2
- package/dist/qr-code/create-qr-code.svelte.d.ts +1 -2
- package/dist/qr-code/create-qr-code.svelte.js +3 -7
- package/dist/qr-code/qr-code-root.svelte +11 -5
- package/dist/qr-code/qr-code-root.svelte.d.ts +2 -2
- package/dist/radio-group/create-radio-group.svelte.d.ts +1 -2
- package/dist/radio-group/create-radio-group.svelte.js +3 -7
- package/dist/radio-group/radio-group-root.svelte +11 -5
- package/dist/radio-group/radio-group-root.svelte.d.ts +2 -2
- package/dist/rating-group/create-rating-group.svelte.d.ts +1 -2
- package/dist/rating-group/create-rating-group.svelte.js +5 -9
- package/dist/rating-group/rating-group-root.svelte +11 -5
- package/dist/rating-group/rating-group-root.svelte.d.ts +2 -2
- package/dist/segment-group/create-segment-group.svelte.d.ts +1 -2
- package/dist/segment-group/create-segment-group.svelte.js +28 -15
- package/dist/segment-group/segment-group-root.svelte +11 -5
- package/dist/segment-group/segment-group-root.svelte.d.ts +2 -2
- package/dist/select/create-select.svelte.d.ts +1 -5
- package/dist/select/create-select.svelte.js +6 -11
- package/dist/select/select-item-group.svelte +2 -2
- package/dist/select/select-root.svelte +17 -8
- package/dist/select/select-root.svelte.d.ts +2 -2
- package/dist/signature-pad/create-signature-pad.svelte.d.ts +1 -2
- package/dist/signature-pad/create-signature-pad.svelte.js +3 -7
- package/dist/signature-pad/signature-pad-root.svelte +9 -5
- package/dist/signature-pad/signature-pad-root.svelte.d.ts +2 -2
- package/dist/slider/create-slider.svelte.d.ts +1 -2
- package/dist/slider/create-slider.svelte.js +3 -7
- package/dist/slider/slider-root.svelte +11 -5
- package/dist/slider/slider-root.svelte.d.ts +2 -2
- package/dist/splitter/create-splitter.svelte.d.ts +1 -2
- package/dist/splitter/create-splitter.svelte.js +3 -7
- package/dist/splitter/splitter-root.svelte +11 -5
- package/dist/splitter/splitter-root.svelte.d.ts +2 -2
- package/dist/steps/create-steps.svelte.d.ts +1 -2
- package/dist/steps/create-steps.svelte.js +3 -7
- package/dist/steps/steps-root.svelte +13 -7
- package/dist/steps/steps-root.svelte.d.ts +2 -2
- package/dist/switch/create-switch.svelte.d.ts +1 -2
- package/dist/switch/create-switch.svelte.js +5 -9
- package/dist/switch/switch-root.svelte +11 -5
- package/dist/switch/switch-root.svelte.d.ts +2 -2
- package/dist/tabs/create-tabs.svelte.d.ts +1 -2
- package/dist/tabs/create-tabs.svelte.js +3 -7
- package/dist/tabs/tabs-root.svelte +9 -5
- package/dist/tabs/tabs-root.svelte.d.ts +2 -2
- package/dist/tabs/tabs-trigger.svelte +10 -3
- package/dist/tabs/tabs-trigger.svelte.d.ts +6 -1
- package/dist/tags-input/create-tags-input.svelte.d.ts +1 -2
- package/dist/tags-input/create-tags-input.svelte.js +5 -9
- package/dist/tags-input/tags-input-root.svelte +11 -5
- package/dist/tags-input/tags-input-root.svelte.d.ts +2 -2
- package/dist/time-picker/create-time-picker.svelte.d.ts +1 -3
- package/dist/time-picker/create-time-picker.svelte.js +3 -8
- package/dist/time-picker/time-picker-root.svelte +16 -8
- package/dist/time-picker/time-picker-root.svelte.d.ts +2 -2
- package/dist/timer/create-timer.svelte.d.ts +1 -2
- package/dist/timer/create-timer.svelte.js +2 -6
- package/dist/timer/timer-root.svelte +10 -5
- package/dist/timer/timer-root.svelte.d.ts +2 -2
- package/dist/toast/create-toaster.svelte.d.ts +4 -7
- package/dist/toast/create-toaster.svelte.js +3 -9
- package/dist/toast/index.d.ts +1 -3
- package/dist/toast/index.js +1 -3
- package/dist/toast/toast-anatomy.d.ts +1 -1
- package/dist/toast/toast-anatomy.js +1 -1
- package/dist/toast/toast-context.svelte.js +1 -0
- package/dist/toast/toast-provider.svelte +27 -0
- package/dist/toast/toast-provider.svelte.d.ts +11 -0
- package/dist/toast/toast-root.svelte +2 -2
- package/dist/toast/toast-root.svelte.d.ts +2 -2
- package/dist/toast/toaster.svelte +23 -37
- package/dist/toast/toaster.svelte.d.ts +7 -6
- package/dist/toggle/create-toggle.svelte.d.ts +3 -13
- package/dist/toggle/create-toggle.svelte.js +4 -31
- package/dist/toggle/index.d.ts +1 -0
- package/dist/toggle/toggle-anatomy.d.ts +1 -2
- package/dist/toggle/toggle-anatomy.js +1 -3
- package/dist/toggle/toggle-indicator.svelte +29 -0
- package/dist/toggle/toggle-indicator.svelte.d.ts +6 -0
- package/dist/toggle/toggle-root.svelte +1 -0
- package/dist/toggle/toggle.d.ts +1 -0
- package/dist/toggle/toggle.js +1 -0
- package/dist/toggle-group/create-toggle-group.svelte.d.ts +1 -2
- package/dist/toggle-group/create-toggle-group.svelte.js +3 -7
- package/dist/toggle-group/toggle-group-root.svelte +11 -5
- package/dist/toggle-group/toggle-group-root.svelte.d.ts +2 -2
- package/dist/tooltip/create-tooltip.svelte.d.ts +1 -3
- package/dist/tooltip/create-tooltip.svelte.js +3 -8
- package/dist/tooltip/tooltip-root.svelte +9 -3
- package/dist/tooltip/tooltip-root.svelte.d.ts +2 -1
- package/dist/tour/create-tour.svelte.d.ts +7 -3
- package/dist/tour/create-tour.svelte.js +9 -12
- package/dist/tour/tour-root.svelte +9 -3
- package/dist/tour/tour-root.svelte.d.ts +2 -1
- package/dist/tree-view/create-tree-view.svelte.d.ts +1 -2
- package/dist/tree-view/create-tree-view.svelte.js +3 -7
- package/dist/tree-view/tree-view-branch.svelte +3 -0
- package/dist/tree-view/tree-view-root.svelte +14 -7
- package/dist/tree-view/tree-view-root.svelte.d.ts +2 -2
- package/dist/types.d.ts +1 -0
- package/package.json +403 -403
- package/dist/create-unique-id.d.ts +0 -1
- package/dist/create-unique-id.js +0 -15
- package/dist/locale-provider/local-provider.svelte.d.ts +0 -8
- package/dist/pin-input/pin-input-clear-trigger.svelte +0 -31
- package/dist/pin-input/pin-input-clear-trigger.svelte.d.ts +0 -6
- package/dist/toast/create-toast.svelte.d.ts +0 -6
- package/dist/toast/create-toast.svelte.js +0 -6
- package/dist/toast/toast-actor.svelte +0 -19
- package/dist/toast/toast-actor.svelte.d.ts +0 -10
- package/dist/toast/toast-context.svelte.d.ts +0 -2
- /package/dist/locale-provider/{local-provider-context.svelte.d.ts → locale-provider-context.svelte.d.ts} +0 -0
- /package/dist/locale-provider/{local-provider-context.svelte.js → locale-provider-context.svelte.js} +0 -0
@@ -1,2 +1 @@
|
|
1
|
-
export
|
2
|
-
export declare const parts: Record<"root" | "label" | "control" | "input" | "clearTrigger", import("@zag-js/anatomy").AnatomyPart>;
|
1
|
+
export { anatomy } from '@zag-js/pin-input';
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<script lang="ts" module>
|
2
|
-
import type {Assign, HtmlIngredientProps} from '../types.js';
|
2
|
+
import type {Assign, HtmlIngredientProps, Optional} from '../types.js';
|
3
3
|
import type {
|
4
4
|
CreatePinInputProps,
|
5
5
|
CreatePinInputReturn,
|
@@ -8,7 +8,7 @@
|
|
8
8
|
export interface PinInputProps
|
9
9
|
extends Assign<
|
10
10
|
HtmlIngredientProps<'div', HTMLDivElement, CreatePinInputReturn>,
|
11
|
-
CreatePinInputProps
|
11
|
+
Optional<CreatePinInputProps, 'id'>
|
12
12
|
> {}
|
13
13
|
</script>
|
14
14
|
|
@@ -20,19 +20,22 @@
|
|
20
20
|
import {setPinInputContext} from './pin-input-context.svelte.js';
|
21
21
|
|
22
22
|
let {
|
23
|
+
id,
|
23
24
|
ref = $bindable(null),
|
24
25
|
asChild,
|
25
26
|
children,
|
26
27
|
...props
|
27
28
|
}: PinInputProps = $props();
|
28
29
|
|
30
|
+
let uid = $props.id();
|
31
|
+
|
29
32
|
let [createPinInputProps, localProps] = $derived(
|
30
|
-
createSplitProps<CreatePinInputProps
|
33
|
+
createSplitProps<Omit<CreatePinInputProps, 'id'>>([
|
31
34
|
'autoFocus',
|
32
35
|
'blurOnComplete',
|
36
|
+
'defaultValue',
|
33
37
|
'disabled',
|
34
38
|
'form',
|
35
|
-
'id',
|
36
39
|
'ids',
|
37
40
|
'invalid',
|
38
41
|
'mask',
|
@@ -52,7 +55,10 @@
|
|
52
55
|
])(props),
|
53
56
|
);
|
54
57
|
|
55
|
-
let pinInput = createPinInputContext(
|
58
|
+
let pinInput = createPinInputContext(
|
59
|
+
reflect(() => ({...createPinInputProps, id: id ?? uid})),
|
60
|
+
);
|
61
|
+
|
56
62
|
let mergedProps = $derived(mergeProps(pinInput.getRootProps(), localProps));
|
57
63
|
|
58
64
|
setPinInputContext(pinInput);
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import type { Assign, HtmlIngredientProps } from '../types.js';
|
1
|
+
import type { Assign, HtmlIngredientProps, Optional } from '../types.js';
|
2
2
|
import type { CreatePinInputProps, CreatePinInputReturn } from './create-pin-input.svelte.js';
|
3
|
-
export interface PinInputProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreatePinInputReturn>, CreatePinInputProps
|
3
|
+
export interface PinInputProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreatePinInputReturn>, Optional<CreatePinInputProps, 'id'>> {
|
4
4
|
}
|
5
5
|
declare const PinInputRoot: import("svelte").Component<PinInputProps, {}, "ref">;
|
6
6
|
type PinInputRoot = ReturnType<typeof PinInputRoot>;
|
@@ -1,4 +1,3 @@
|
|
1
|
-
export { default as ClearTrigger } from './pin-input-clear-trigger.svelte';
|
2
1
|
export { default as Control } from './pin-input-control.svelte';
|
3
2
|
export { default as HiddenInput } from './pin-input-hidden-input.svelte';
|
4
3
|
export { default as Input } from './pin-input-input.svelte';
|
@@ -1,4 +1,3 @@
|
|
1
|
-
export { default as ClearTrigger } from './pin-input-clear-trigger.svelte';
|
2
1
|
export { default as Control } from './pin-input-control.svelte';
|
3
2
|
export { default as HiddenInput } from './pin-input-hidden-input.svelte';
|
4
3
|
export { default as Input } from './pin-input-input.svelte';
|
@@ -1,7 +1,5 @@
|
|
1
1
|
import * as popover from '@zag-js/popover';
|
2
|
-
export interface CreatePopoverProps extends Omit<popover.
|
3
|
-
id?: string;
|
4
|
-
openControlled?: boolean;
|
2
|
+
export interface CreatePopoverProps extends Omit<popover.Props, 'dir' | 'getRootNode'> {
|
5
3
|
}
|
6
4
|
export interface CreatePopoverReturn extends popover.Api {
|
7
5
|
}
|
@@ -1,19 +1,14 @@
|
|
1
1
|
import * as popover from '@zag-js/popover';
|
2
2
|
import { normalizeProps, reflect, useMachine } from '@zag-js/svelte';
|
3
|
-
import { createUniqueId } from '../create-unique-id.js';
|
4
3
|
import { getEnvironmentContext } from '../environment-provider/enviroment-provider-context.svelte.js';
|
5
|
-
import { getLocaleContext } from '../locale-provider/
|
4
|
+
import { getLocaleContext } from '../locale-provider/locale-provider-context.svelte.js';
|
6
5
|
export function createPopover(props) {
|
7
6
|
const locale = getLocaleContext();
|
8
7
|
const environment = getEnvironmentContext();
|
9
|
-
const
|
10
|
-
const context = reflect(() => ({
|
11
|
-
id,
|
8
|
+
const service = useMachine(popover.machine, () => ({
|
12
9
|
dir: locale?.dir,
|
13
10
|
getRootNode: environment?.getRootNode,
|
14
|
-
'open.controlled': props.openControlled,
|
15
11
|
...props,
|
16
12
|
}));
|
17
|
-
|
18
|
-
return reflect(() => popover.connect(state, send, normalizeProps));
|
13
|
+
return reflect(() => popover.connect(service, normalizeProps));
|
19
14
|
}
|
@@ -1,13 +1,14 @@
|
|
1
1
|
<script lang="ts" module>
|
2
2
|
import type {Snippet} from 'svelte';
|
3
3
|
import type {PresenceStrategyProps} from '../presence/create-presence.svelte.js';
|
4
|
+
import type {Optional} from '../types.js';
|
4
5
|
import type {
|
5
6
|
CreatePopoverProps,
|
6
7
|
CreatePopoverReturn,
|
7
8
|
} from './create-popover.svelte.js';
|
8
9
|
|
9
10
|
export interface PopoverProps
|
10
|
-
extends CreatePopoverProps,
|
11
|
+
extends Optional<CreatePopoverProps, 'id'>,
|
11
12
|
PresenceStrategyProps {
|
12
13
|
children?: Snippet<[CreatePopoverReturn]>;
|
13
14
|
}
|
@@ -21,14 +22,16 @@
|
|
21
22
|
import {createPopover} from './create-popover.svelte.js';
|
22
23
|
import {setPopoverContext} from './popover-context.svelte.js';
|
23
24
|
|
24
|
-
let {children, ...props}: PopoverProps = $props();
|
25
|
+
let {id, children, ...props}: PopoverProps = $props();
|
26
|
+
|
27
|
+
let uid = $props.id();
|
25
28
|
|
26
29
|
let [createPopoverProps, presenceStrategyProps] = $derived(
|
27
|
-
createSplitProps<CreatePopoverProps
|
30
|
+
createSplitProps<Omit<CreatePopoverProps, 'id'>>([
|
28
31
|
'autoFocus',
|
29
32
|
'closeOnEscape',
|
30
33
|
'closeOnInteractOutside',
|
31
|
-
'
|
34
|
+
'defaultOpen',
|
32
35
|
'ids',
|
33
36
|
'initialFocusEl',
|
34
37
|
'modal',
|
@@ -38,14 +41,16 @@
|
|
38
41
|
'onOpenChange',
|
39
42
|
'onPointerDownOutside',
|
40
43
|
'open',
|
41
|
-
'openControlled',
|
42
44
|
'persistentElements',
|
43
45
|
'portalled',
|
44
46
|
'positioning',
|
45
47
|
])(props),
|
46
48
|
);
|
47
49
|
|
48
|
-
let popover = createPopover(
|
50
|
+
let popover = createPopover(
|
51
|
+
reflect(() => ({...createPopoverProps, id: id ?? uid})),
|
52
|
+
);
|
53
|
+
|
49
54
|
let presence = createPresence(
|
50
55
|
reflect(() => ({
|
51
56
|
...presenceStrategyProps,
|
@@ -1,7 +1,8 @@
|
|
1
1
|
import type { Snippet } from 'svelte';
|
2
2
|
import type { PresenceStrategyProps } from '../presence/create-presence.svelte.js';
|
3
|
+
import type { Optional } from '../types.js';
|
3
4
|
import type { CreatePopoverProps, CreatePopoverReturn } from './create-popover.svelte.js';
|
4
|
-
export interface PopoverProps extends CreatePopoverProps, PresenceStrategyProps {
|
5
|
+
export interface PopoverProps extends Optional<CreatePopoverProps, 'id'>, PresenceStrategyProps {
|
5
6
|
children?: Snippet<[CreatePopoverReturn]>;
|
6
7
|
}
|
7
8
|
declare const PopoverRoot: import("svelte").Component<PopoverProps, {}, "">;
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import * as presence from '@zag-js/presence';
|
1
2
|
import type { Action } from 'svelte/action';
|
2
3
|
import type { HTMLAttributes } from 'svelte/elements';
|
3
4
|
export interface PresenceStrategyProps {
|
@@ -6,8 +7,7 @@ export interface PresenceStrategyProps {
|
|
6
7
|
/** @default true */
|
7
8
|
keepMounted?: boolean;
|
8
9
|
}
|
9
|
-
export interface CreatePresenceProps extends PresenceStrategyProps {
|
10
|
-
present: boolean;
|
10
|
+
export interface CreatePresenceProps extends PresenceStrategyProps, presence.Props {
|
11
11
|
}
|
12
12
|
export interface CreatePresenceReturn {
|
13
13
|
setReference: Action;
|
@@ -1,20 +1,12 @@
|
|
1
1
|
import * as presence from '@zag-js/presence';
|
2
2
|
import { normalizeProps, useMachine } from '@zag-js/svelte';
|
3
3
|
export function createPresence(props) {
|
4
|
-
const
|
5
|
-
const
|
6
|
-
const keepMounted = $derived(props.keepMounted ?? true);
|
7
|
-
const context = $derived({
|
8
|
-
get present() {
|
9
|
-
return present;
|
10
|
-
},
|
11
|
-
});
|
12
|
-
const [state, send] = useMachine(presence.machine(context), { context });
|
13
|
-
const api = $derived(presence.connect(state, send, normalizeProps));
|
4
|
+
const service = useMachine(presence.machine, props);
|
5
|
+
const api = $derived(presence.connect(service, normalizeProps));
|
14
6
|
function getPresenceProps() {
|
15
7
|
return {
|
16
8
|
hidden: !api.present,
|
17
|
-
'data-state':
|
9
|
+
'data-state': props.present ? 'open' : 'closed',
|
18
10
|
};
|
19
11
|
}
|
20
12
|
let wasPresent = $state(false);
|
@@ -28,9 +20,9 @@ export function createPresence(props) {
|
|
28
20
|
const unmounted = $derived.by(() => {
|
29
21
|
if (api.present)
|
30
22
|
return false;
|
31
|
-
if (!wasPresent && lazyMount)
|
23
|
+
if (!wasPresent && props.lazyMount)
|
32
24
|
return true;
|
33
|
-
if (wasPresent && !keepMounted)
|
25
|
+
if (wasPresent && !props.keepMounted)
|
34
26
|
return true;
|
35
27
|
return false;
|
36
28
|
});
|
@@ -20,15 +20,24 @@
|
|
20
20
|
|
21
21
|
let [createPresenceProps, localProps] = $derived(
|
22
22
|
createSplitProps<CreatePresenceProps>([
|
23
|
+
'immediate',
|
23
24
|
'keepMounted',
|
24
25
|
'lazyMount',
|
25
26
|
'present',
|
27
|
+
'onExitComplete',
|
26
28
|
])(props),
|
27
29
|
);
|
28
30
|
|
29
31
|
let presence = createPresence(reflect(() => createPresenceProps));
|
30
32
|
let mergedProps = $derived(
|
31
|
-
mergeProps(
|
33
|
+
mergeProps(
|
34
|
+
presence.getPresenceProps(),
|
35
|
+
{
|
36
|
+
'data-scope': 'presence',
|
37
|
+
'data-part': 'root',
|
38
|
+
},
|
39
|
+
localProps,
|
40
|
+
),
|
32
41
|
);
|
33
42
|
</script>
|
34
43
|
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import * as progress from '@zag-js/progress';
|
2
|
-
export interface CreateProgressProps extends Omit<progress.
|
3
|
-
id?: string;
|
2
|
+
export interface CreateProgressProps extends Omit<progress.Props, 'dir' | 'getRootNode'> {
|
4
3
|
}
|
5
4
|
export interface CreateProgressReturn extends progress.Api<any> {
|
6
5
|
}
|
@@ -1,18 +1,15 @@
|
|
1
1
|
import * as progress from '@zag-js/progress';
|
2
2
|
import { normalizeProps, reflect, useMachine } from '@zag-js/svelte';
|
3
|
-
import { createUniqueId } from '../create-unique-id.js';
|
4
3
|
import { getEnvironmentContext } from '../environment-provider/enviroment-provider-context.svelte.js';
|
5
|
-
import { getLocaleContext } from '../locale-provider/
|
4
|
+
import { getLocaleContext } from '../locale-provider/locale-provider-context.svelte.js';
|
6
5
|
export function createProgress(props) {
|
7
6
|
const locale = getLocaleContext();
|
8
7
|
const environment = getEnvironmentContext();
|
9
|
-
const
|
10
|
-
const context = reflect(() => ({
|
11
|
-
id,
|
8
|
+
const service = useMachine(progress.machine, () => ({
|
12
9
|
dir: locale?.dir,
|
10
|
+
locale: locale?.locale,
|
13
11
|
getRootNode: environment?.getRootNode,
|
14
12
|
...props,
|
15
13
|
}));
|
16
|
-
|
17
|
-
return reflect(() => progress.connect(state, send, normalizeProps));
|
14
|
+
return reflect(() => progress.connect(service, normalizeProps));
|
18
15
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<script lang="ts" module>
|
2
|
-
import type {Assign, HtmlIngredientProps} from '../types.js';
|
2
|
+
import type {Assign, HtmlIngredientProps, Optional} from '../types.js';
|
3
3
|
import type {
|
4
4
|
CreateProgressProps,
|
5
5
|
CreateProgressReturn,
|
@@ -8,7 +8,7 @@
|
|
8
8
|
export interface ProgressProps
|
9
9
|
extends Assign<
|
10
10
|
HtmlIngredientProps<'div', HTMLDivElement, CreateProgressReturn>,
|
11
|
-
CreateProgressProps
|
11
|
+
Optional<CreateProgressProps, 'id'>
|
12
12
|
> {}
|
13
13
|
</script>
|
14
14
|
|
@@ -20,16 +20,21 @@
|
|
20
20
|
import {setProgressContext} from './progress-context.svelte.js';
|
21
21
|
|
22
22
|
let {
|
23
|
+
id,
|
23
24
|
ref = $bindable(null),
|
24
25
|
asChild,
|
25
26
|
children,
|
26
27
|
...props
|
27
28
|
}: ProgressProps = $props();
|
28
29
|
|
30
|
+
let uid = $props.id();
|
31
|
+
|
29
32
|
let [createProgressProps, localProps] = $derived(
|
30
|
-
createSplitProps<CreateProgressProps
|
31
|
-
'
|
33
|
+
createSplitProps<Omit<CreateProgressProps, 'id'>>([
|
34
|
+
'defaultValue',
|
35
|
+
'formatOptions',
|
32
36
|
'ids',
|
37
|
+
'locale',
|
33
38
|
'max',
|
34
39
|
'min',
|
35
40
|
'onValueChange',
|
@@ -39,7 +44,9 @@
|
|
39
44
|
])(props),
|
40
45
|
);
|
41
46
|
|
42
|
-
let progress = createProgress(
|
47
|
+
let progress = createProgress(
|
48
|
+
reflect(() => ({...createProgressProps, id: id ?? uid})),
|
49
|
+
);
|
43
50
|
|
44
51
|
let mergedProps = $derived(mergeProps(progress.getRootProps(), localProps));
|
45
52
|
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import type { Assign, HtmlIngredientProps } from '../types.js';
|
1
|
+
import type { Assign, HtmlIngredientProps, Optional } from '../types.js';
|
2
2
|
import type { CreateProgressProps, CreateProgressReturn } from './create-progress.svelte.js';
|
3
|
-
export interface ProgressProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreateProgressReturn>, CreateProgressProps
|
3
|
+
export interface ProgressProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreateProgressReturn>, Optional<CreateProgressProps, 'id'>> {
|
4
4
|
}
|
5
5
|
declare const ProgressRoot: import("svelte").Component<ProgressProps, {}, "ref">;
|
6
6
|
type ProgressRoot = ReturnType<typeof ProgressRoot>;
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import * as qrCode from '@zag-js/qr-code';
|
2
|
-
export interface CreateQrCodeProps extends Omit<qrCode.
|
3
|
-
id?: string;
|
2
|
+
export interface CreateQrCodeProps extends Omit<qrCode.Props, 'dir' | 'getRootNode'> {
|
4
3
|
}
|
5
4
|
export interface CreateQrCodeReturn extends qrCode.Api {
|
6
5
|
}
|
@@ -1,18 +1,14 @@
|
|
1
1
|
import * as qrCode from '@zag-js/qr-code';
|
2
2
|
import { normalizeProps, reflect, useMachine } from '@zag-js/svelte';
|
3
|
-
import { createUniqueId } from '../create-unique-id.js';
|
4
3
|
import { getEnvironmentContext } from '../environment-provider/enviroment-provider-context.svelte.js';
|
5
|
-
import { getLocaleContext } from '../locale-provider/
|
4
|
+
import { getLocaleContext } from '../locale-provider/locale-provider-context.svelte.js';
|
6
5
|
export function createQRCode(props) {
|
7
6
|
const locale = getLocaleContext();
|
8
7
|
const environment = getEnvironmentContext();
|
9
|
-
const
|
10
|
-
const context = reflect(() => ({
|
11
|
-
id,
|
8
|
+
const service = useMachine(qrCode.machine, () => ({
|
12
9
|
dir: locale?.dir,
|
13
10
|
getRootNode: environment?.getRootNode,
|
14
11
|
...props,
|
15
12
|
}));
|
16
|
-
|
17
|
-
return reflect(() => qrCode.connect(state, send, normalizeProps));
|
13
|
+
return reflect(() => qrCode.connect(service, normalizeProps));
|
18
14
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<script lang="ts" module>
|
2
|
-
import type {Assign, HtmlIngredientProps} from '../types.js';
|
2
|
+
import type {Assign, HtmlIngredientProps, Optional} from '../types.js';
|
3
3
|
import type {
|
4
4
|
CreateQrCodeProps,
|
5
5
|
CreateQrCodeReturn,
|
@@ -8,7 +8,7 @@
|
|
8
8
|
export interface QrCodeProps
|
9
9
|
extends Assign<
|
10
10
|
HtmlIngredientProps<'div', HTMLDivElement, CreateQrCodeReturn>,
|
11
|
-
CreateQrCodeProps
|
11
|
+
Optional<CreateQrCodeProps, 'id'>
|
12
12
|
> {}
|
13
13
|
</script>
|
14
14
|
|
@@ -20,23 +20,29 @@
|
|
20
20
|
import {setQrCodeContext} from './qr-code-context.svelte.js';
|
21
21
|
|
22
22
|
let {
|
23
|
+
id,
|
23
24
|
ref = $bindable(null),
|
24
25
|
asChild,
|
25
26
|
children,
|
26
27
|
...props
|
27
28
|
}: QrCodeProps = $props();
|
28
29
|
|
30
|
+
let uid = $props.id();
|
31
|
+
|
29
32
|
let [createQrCodeProps, localProps] = $derived(
|
30
|
-
createSplitProps<CreateQrCodeProps
|
33
|
+
createSplitProps<Omit<CreateQrCodeProps, 'id'>>([
|
34
|
+
'defaultValue',
|
31
35
|
'encoding',
|
32
|
-
'id',
|
33
36
|
'ids',
|
34
37
|
'onValueChange',
|
38
|
+
'pixelSize',
|
35
39
|
'value',
|
36
40
|
])(props),
|
37
41
|
);
|
38
42
|
|
39
|
-
let qrCode = createQRCode(
|
43
|
+
let qrCode = createQRCode(
|
44
|
+
reflect(() => ({...createQrCodeProps, id: id ?? uid})),
|
45
|
+
);
|
40
46
|
|
41
47
|
let mergedProps = $derived(mergeProps(qrCode.getRootProps(), localProps));
|
42
48
|
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import type { Assign, HtmlIngredientProps } from '../types.js';
|
1
|
+
import type { Assign, HtmlIngredientProps, Optional } from '../types.js';
|
2
2
|
import type { CreateQrCodeProps, CreateQrCodeReturn } from './create-qr-code.svelte.js';
|
3
|
-
export interface QrCodeProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreateQrCodeReturn>, CreateQrCodeProps
|
3
|
+
export interface QrCodeProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreateQrCodeReturn>, Optional<CreateQrCodeProps, 'id'>> {
|
4
4
|
}
|
5
5
|
declare const QrCodeRoot: import("svelte").Component<QrCodeProps, {}, "ref">;
|
6
6
|
type QrCodeRoot = ReturnType<typeof QrCodeRoot>;
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import * as radioGroup from '@zag-js/radio-group';
|
2
|
-
export interface CreateRadioGroupProps extends Omit<radioGroup.
|
3
|
-
id?: string;
|
2
|
+
export interface CreateRadioGroupProps extends Omit<radioGroup.Props, 'dir' | 'getRootNode'> {
|
4
3
|
}
|
5
4
|
export interface CreateRadioGroupReturn extends radioGroup.Api {
|
6
5
|
}
|
@@ -1,18 +1,14 @@
|
|
1
1
|
import * as radioGroup from '@zag-js/radio-group';
|
2
2
|
import { normalizeProps, reflect, useMachine } from '@zag-js/svelte';
|
3
|
-
import { createUniqueId } from '../create-unique-id.js';
|
4
3
|
import { getEnvironmentContext } from '../environment-provider/enviroment-provider-context.svelte.js';
|
5
|
-
import { getLocaleContext } from '../locale-provider/
|
4
|
+
import { getLocaleContext } from '../locale-provider/locale-provider-context.svelte.js';
|
6
5
|
export function createRadioGroup(props) {
|
7
6
|
const locale = getLocaleContext();
|
8
7
|
const environment = getEnvironmentContext();
|
9
|
-
const
|
10
|
-
const context = reflect(() => ({
|
11
|
-
id,
|
8
|
+
const service = useMachine(radioGroup.machine, () => ({
|
12
9
|
dir: locale?.dir,
|
13
10
|
getRootNode: environment?.getRootNode,
|
14
11
|
...props,
|
15
12
|
}));
|
16
|
-
|
17
|
-
return reflect(() => radioGroup.connect(state, send, normalizeProps));
|
13
|
+
return reflect(() => radioGroup.connect(service, normalizeProps));
|
18
14
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<script lang="ts" module>
|
2
|
-
import type {Assign, HtmlIngredientProps} from '../types.js';
|
2
|
+
import type {Assign, HtmlIngredientProps, Optional} from '../types.js';
|
3
3
|
import type {
|
4
4
|
CreateRadioGroupProps,
|
5
5
|
CreateRadioGroupReturn,
|
@@ -8,7 +8,7 @@
|
|
8
8
|
export interface RadioGroupProps
|
9
9
|
extends Assign<
|
10
10
|
HtmlIngredientProps<'div', HTMLDivElement, CreateRadioGroupReturn>,
|
11
|
-
CreateRadioGroupProps
|
11
|
+
Optional<CreateRadioGroupProps, 'id'>
|
12
12
|
> {}
|
13
13
|
</script>
|
14
14
|
|
@@ -20,17 +20,20 @@
|
|
20
20
|
import {setRadioGroupContext} from './radio-group-context.svelte.js';
|
21
21
|
|
22
22
|
let {
|
23
|
+
id,
|
23
24
|
ref = $bindable(null),
|
24
25
|
asChild,
|
25
26
|
children,
|
26
27
|
...props
|
27
28
|
}: RadioGroupProps = $props();
|
28
29
|
|
30
|
+
let uid = $props.id();
|
31
|
+
|
29
32
|
let [createRadioGroupProps, localProps] = $derived(
|
30
|
-
createSplitProps<CreateRadioGroupProps
|
33
|
+
createSplitProps<Omit<CreateRadioGroupProps, 'id'>>([
|
34
|
+
'defaultValue',
|
31
35
|
'disabled',
|
32
36
|
'form',
|
33
|
-
'id',
|
34
37
|
'ids',
|
35
38
|
'name',
|
36
39
|
'onValueChange',
|
@@ -40,7 +43,10 @@
|
|
40
43
|
])(props),
|
41
44
|
);
|
42
45
|
|
43
|
-
let radioGroup = createRadioGroup(
|
46
|
+
let radioGroup = createRadioGroup(
|
47
|
+
reflect(() => ({...createRadioGroupProps, id: id ?? uid})),
|
48
|
+
);
|
49
|
+
|
44
50
|
let mergedProps = $derived(mergeProps(radioGroup.getRootProps(), localProps));
|
45
51
|
|
46
52
|
setRadioGroupContext(radioGroup);
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import type { Assign, HtmlIngredientProps } from '../types.js';
|
1
|
+
import type { Assign, HtmlIngredientProps, Optional } from '../types.js';
|
2
2
|
import type { CreateRadioGroupProps, CreateRadioGroupReturn } from './create-radio-group.svelte.js';
|
3
|
-
export interface RadioGroupProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreateRadioGroupReturn>, CreateRadioGroupProps
|
3
|
+
export interface RadioGroupProps extends Assign<HtmlIngredientProps<'div', HTMLDivElement, CreateRadioGroupReturn>, Optional<CreateRadioGroupProps, 'id'>> {
|
4
4
|
}
|
5
5
|
declare const RadioGroupRoot: import("svelte").Component<RadioGroupProps, {}, "ref">;
|
6
6
|
type RadioGroupRoot = ReturnType<typeof RadioGroupRoot>;
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import * as ratingGroup from '@zag-js/rating-group';
|
2
|
-
export interface CreateRatingGroupProps extends Omit<ratingGroup.
|
3
|
-
id?: string;
|
2
|
+
export interface CreateRatingGroupProps extends Omit<ratingGroup.Props, 'dir' | 'getRootNode'> {
|
4
3
|
}
|
5
4
|
export interface CreateRatingGroupReturn extends ratingGroup.Api {
|
6
5
|
}
|
@@ -1,16 +1,13 @@
|
|
1
1
|
import * as ratingGroup from '@zag-js/rating-group';
|
2
2
|
import { normalizeProps, reflect, useMachine } from '@zag-js/svelte';
|
3
|
-
import { createUniqueId } from '../create-unique-id.js';
|
4
3
|
import { getEnvironmentContext } from '../environment-provider/enviroment-provider-context.svelte.js';
|
5
4
|
import { getFieldContext } from '../field/field-context.svelte.js';
|
6
|
-
import { getLocaleContext } from '../locale-provider/
|
5
|
+
import { getLocaleContext } from '../locale-provider/locale-provider-context.svelte.js';
|
7
6
|
export function createRatingGroup(props) {
|
8
7
|
const field = getFieldContext();
|
9
8
|
const locale = getLocaleContext();
|
10
9
|
const environment = getEnvironmentContext();
|
11
|
-
const
|
12
|
-
const context = reflect(() => ({
|
13
|
-
id,
|
10
|
+
const service = useMachine(ratingGroup.machine, () => ({
|
14
11
|
dir: locale?.dir,
|
15
12
|
ids: {
|
16
13
|
label: field?.ids.label,
|
@@ -22,15 +19,14 @@ export function createRatingGroup(props) {
|
|
22
19
|
getRootNode: environment?.getRootNode,
|
23
20
|
...props,
|
24
21
|
}));
|
25
|
-
const [state, send] = useMachine(ratingGroup.machine(context), { context });
|
26
22
|
return reflect(() => {
|
27
|
-
const
|
23
|
+
const api = ratingGroup.connect(service, normalizeProps);
|
28
24
|
return {
|
29
|
-
...
|
25
|
+
...api,
|
30
26
|
getHiddenInputProps() {
|
31
27
|
return {
|
32
28
|
'aria-describedby': field?.['aria-describedby'],
|
33
|
-
...
|
29
|
+
...api.getHiddenInputProps(),
|
34
30
|
};
|
35
31
|
},
|
36
32
|
};
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<script lang="ts" module>
|
2
|
-
import type {Assign, HtmlIngredientProps} from '../types.js';
|
2
|
+
import type {Assign, HtmlIngredientProps, Optional} from '../types.js';
|
3
3
|
import type {
|
4
4
|
CreateRatingGroupProps,
|
5
5
|
CreateRatingGroupReturn,
|
@@ -8,7 +8,7 @@
|
|
8
8
|
export interface RatingGroupProps
|
9
9
|
extends Assign<
|
10
10
|
HtmlIngredientProps<'div', HTMLDivElement, CreateRatingGroupReturn>,
|
11
|
-
CreateRatingGroupProps
|
11
|
+
Optional<CreateRatingGroupProps, 'id'>
|
12
12
|
> {}
|
13
13
|
</script>
|
14
14
|
|
@@ -20,20 +20,23 @@
|
|
20
20
|
import {setRatingGroupContext} from './rating-group-context.svelte.js';
|
21
21
|
|
22
22
|
let {
|
23
|
+
id,
|
23
24
|
ref = $bindable(null),
|
24
25
|
asChild,
|
25
26
|
children,
|
26
27
|
...props
|
27
28
|
}: RatingGroupProps = $props();
|
28
29
|
|
30
|
+
let uid = $props.id();
|
31
|
+
|
29
32
|
let [createRatingGroupProps, localProps] = $derived(
|
30
|
-
createSplitProps<CreateRatingGroupProps
|
33
|
+
createSplitProps<Omit<CreateRatingGroupProps, 'id'>>([
|
31
34
|
'allowHalf',
|
32
35
|
'autoFocus',
|
33
36
|
'count',
|
37
|
+
'defaultValue',
|
34
38
|
'disabled',
|
35
39
|
'form',
|
36
|
-
'id',
|
37
40
|
'ids',
|
38
41
|
'name',
|
39
42
|
'onHoverChange',
|
@@ -45,7 +48,10 @@
|
|
45
48
|
])(props),
|
46
49
|
);
|
47
50
|
|
48
|
-
let ratingGroup = createRatingGroup(
|
51
|
+
let ratingGroup = createRatingGroup(
|
52
|
+
reflect(() => ({...createRatingGroupProps, id: id ?? uid})),
|
53
|
+
);
|
54
|
+
|
49
55
|
let mergedProps = $derived(
|
50
56
|
mergeProps(ratingGroup.getRootProps(), localProps),
|
51
57
|
);
|