@cdx-ui/primitives 0.0.1-beta.12 → 0.0.1-beta.120
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/README.md +74 -33
- package/lib/commonjs/CLAUDE.md +86 -0
- package/lib/commonjs/avatar/AvatarRoot.js +38 -0
- package/lib/commonjs/avatar/AvatarRoot.js.map +1 -0
- package/lib/commonjs/avatar/index.js +14 -24
- package/lib/commonjs/avatar/index.js.map +1 -1
- package/lib/commonjs/button/ButtonRoot.js +85 -0
- package/lib/commonjs/button/ButtonRoot.js.map +1 -0
- package/lib/commonjs/button/index.js +7 -24
- package/lib/commonjs/button/index.js.map +1 -1
- package/lib/commonjs/checkbox/CheckboxGroup.js +52 -0
- package/lib/commonjs/checkbox/CheckboxGroup.js.map +1 -0
- package/lib/commonjs/checkbox/CheckboxRoot.js +103 -0
- package/lib/commonjs/checkbox/CheckboxRoot.js.map +1 -0
- package/lib/commonjs/checkbox/CheckboxRoot.web.js +94 -0
- package/lib/commonjs/checkbox/CheckboxRoot.web.js.map +1 -0
- package/lib/commonjs/checkbox/index.js +21 -24
- package/lib/commonjs/checkbox/index.js.map +1 -1
- package/lib/commonjs/chip/ChipRoot.js +147 -0
- package/lib/commonjs/chip/ChipRoot.js.map +1 -0
- package/lib/commonjs/chip/context.js +11 -0
- package/lib/commonjs/chip/context.js.map +1 -0
- package/lib/commonjs/chip/index.js +20 -0
- package/lib/commonjs/chip/index.js.map +1 -0
- package/lib/commonjs/chip/types.js.map +1 -0
- package/lib/commonjs/dialog/DialogClose.js +32 -0
- package/lib/commonjs/dialog/DialogClose.js.map +1 -0
- package/lib/commonjs/dialog/DialogContent.js +80 -0
- package/lib/commonjs/dialog/DialogContent.js.map +1 -0
- package/lib/commonjs/dialog/DialogOverlay.js +54 -0
- package/lib/commonjs/dialog/DialogOverlay.js.map +1 -0
- package/lib/commonjs/dialog/DialogPopup.js +161 -0
- package/lib/commonjs/dialog/DialogPopup.js.map +1 -0
- package/lib/commonjs/dialog/DialogPortal.js +37 -0
- package/lib/commonjs/dialog/DialogPortal.js.map +1 -0
- package/lib/commonjs/dialog/DialogRoot.js +57 -0
- package/lib/commonjs/dialog/DialogRoot.js.map +1 -0
- package/lib/commonjs/dialog/DialogTrigger.js +32 -0
- package/lib/commonjs/dialog/DialogTrigger.js.map +1 -0
- package/lib/commonjs/dialog/index.js +49 -41
- package/lib/commonjs/dialog/index.js.map +1 -1
- package/lib/commonjs/field/FieldLabel.js +48 -0
- package/lib/commonjs/field/FieldLabel.js.map +1 -0
- package/lib/commonjs/field/FieldLabel.web.js +60 -0
- package/lib/commonjs/field/FieldLabel.web.js.map +1 -0
- package/lib/commonjs/field/FieldRoot.js +38 -0
- package/lib/commonjs/field/FieldRoot.js.map +1 -0
- package/lib/commonjs/field/index.js +14 -40
- package/lib/commonjs/field/index.js.map +1 -1
- package/lib/commonjs/form/FormRoot.js +25 -0
- package/lib/commonjs/form/FormRoot.js.map +1 -0
- package/lib/commonjs/form/FormRoot.web.js +27 -0
- package/lib/commonjs/form/FormRoot.web.js.map +1 -0
- package/lib/commonjs/form/index.js +7 -9
- package/lib/commonjs/form/index.js.map +1 -1
- package/lib/commonjs/full-window-overlay/index.js +47 -0
- package/lib/commonjs/full-window-overlay/index.js.map +1 -0
- package/lib/commonjs/full-window-overlay/index.web.js +19 -0
- package/lib/commonjs/full-window-overlay/index.web.js.map +1 -0
- package/lib/commonjs/index.js +145 -5
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/input/InputField.android.js +98 -0
- package/lib/commonjs/input/InputField.android.js.map +1 -0
- package/lib/commonjs/input/InputField.js +92 -0
- package/lib/commonjs/input/InputField.js.map +1 -0
- package/lib/commonjs/input/InputField.web.js +131 -0
- package/lib/commonjs/input/InputField.web.js.map +1 -0
- package/lib/commonjs/input/InputRoot.js +92 -0
- package/lib/commonjs/input/InputRoot.js.map +1 -0
- package/lib/commonjs/input/index.js +21 -16
- package/lib/commonjs/input/index.js.map +1 -1
- package/lib/commonjs/link/LinkRoot.js +88 -0
- package/lib/commonjs/link/LinkRoot.js.map +1 -0
- package/lib/commonjs/link/context.js +11 -0
- package/lib/commonjs/link/context.js.map +1 -0
- package/lib/commonjs/link/index.js +16 -3
- package/lib/commonjs/link/index.js.map +1 -1
- package/lib/commonjs/list-item/ListItemRoot.js +149 -0
- package/lib/commonjs/list-item/ListItemRoot.js.map +1 -0
- package/lib/commonjs/list-item/context.js.map +1 -1
- package/lib/commonjs/list-item/index.js +7 -36
- package/lib/commonjs/list-item/index.js.map +1 -1
- package/lib/commonjs/otp-input/OtpInputField.js +120 -0
- package/lib/commonjs/otp-input/OtpInputField.js.map +1 -0
- package/lib/commonjs/otp-input/index.js +39 -16
- package/lib/commonjs/otp-input/index.js.map +1 -1
- package/lib/commonjs/otp-input/useOtpInput.js +120 -0
- package/lib/commonjs/otp-input/useOtpInput.js.map +1 -0
- package/lib/commonjs/overlay/useAnchorPosition.js +60 -11
- package/lib/commonjs/overlay/useAnchorPosition.js.map +1 -1
- package/lib/commonjs/overlay/useDismissOverlay.js +0 -2
- package/lib/commonjs/overlay/useDismissOverlay.js.map +1 -1
- package/lib/commonjs/overlay/useEscapeKey.js +0 -2
- package/lib/commonjs/overlay/useEscapeKey.js.map +1 -1
- package/lib/commonjs/portal/index.js +17 -0
- package/lib/commonjs/portal/index.js.map +1 -0
- package/lib/commonjs/portal/portal.js +110 -0
- package/lib/commonjs/portal/portal.js.map +1 -0
- package/lib/commonjs/progress-bar/ProgressBarIndicator.js +45 -0
- package/lib/commonjs/progress-bar/ProgressBarIndicator.js.map +1 -0
- package/lib/commonjs/progress-bar/ProgressBarRoot.js +100 -0
- package/lib/commonjs/progress-bar/ProgressBarRoot.js.map +1 -0
- package/lib/commonjs/progress-bar/context.js.map +1 -0
- package/lib/commonjs/progress-bar/index.js +27 -0
- package/lib/commonjs/progress-bar/index.js.map +1 -0
- package/lib/commonjs/progress-bar/types.js +6 -0
- package/lib/commonjs/progress-bar/types.js.map +1 -0
- package/lib/commonjs/radio/RadioGroup.js +74 -0
- package/lib/commonjs/radio/RadioGroup.js.map +1 -0
- package/lib/commonjs/radio/RadioRoot.js +99 -0
- package/lib/commonjs/radio/RadioRoot.js.map +1 -0
- package/lib/commonjs/radio/RadioRoot.web.js +91 -0
- package/lib/commonjs/radio/RadioRoot.web.js.map +1 -0
- package/lib/commonjs/radio/index.js +21 -20
- package/lib/commonjs/radio/index.js.map +1 -1
- package/lib/commonjs/select/SelectContent.js +105 -0
- package/lib/commonjs/select/SelectContent.js.map +1 -0
- package/lib/commonjs/select/SelectItem.js +104 -0
- package/lib/commonjs/select/SelectItem.js.map +1 -0
- package/lib/commonjs/select/SelectRoot.js +105 -0
- package/lib/commonjs/select/SelectRoot.js.map +1 -0
- package/lib/commonjs/select/SelectTrigger.js +72 -0
- package/lib/commonjs/select/SelectTrigger.js.map +1 -0
- package/lib/commonjs/select/SelectTrigger.web.js +175 -0
- package/lib/commonjs/select/SelectTrigger.web.js.map +1 -0
- package/lib/commonjs/select/context.js +3 -12
- package/lib/commonjs/select/context.js.map +1 -1
- package/lib/commonjs/select/index.js +41 -32
- package/lib/commonjs/select/index.js.map +1 -1
- package/lib/commonjs/select/useContentFocus.js +1 -1
- package/lib/commonjs/select/useSelectTrigger.js +214 -0
- package/lib/commonjs/select/useSelectTrigger.js.map +1 -0
- package/lib/commonjs/select/useSelectTrigger.web.js +201 -0
- package/lib/commonjs/select/useSelectTrigger.web.js.map +1 -0
- package/lib/commonjs/slider/SliderRail.js +131 -0
- package/lib/commonjs/slider/SliderRail.js.map +1 -0
- package/lib/commonjs/slider/SliderRoot.js +186 -0
- package/lib/commonjs/slider/SliderRoot.js.map +1 -0
- package/lib/commonjs/slider/SliderThumb.js +228 -0
- package/lib/commonjs/slider/SliderThumb.js.map +1 -0
- package/lib/commonjs/slider/context.js +11 -0
- package/lib/commonjs/slider/context.js.map +1 -0
- package/lib/commonjs/slider/index.js +65 -0
- package/lib/commonjs/slider/index.js.map +1 -0
- package/lib/commonjs/slider/types.js +6 -0
- package/lib/commonjs/slider/types.js.map +1 -0
- package/lib/commonjs/slider/useSliderPointer.js +116 -0
- package/lib/commonjs/slider/useSliderPointer.js.map +1 -0
- package/lib/commonjs/slider/utils.js +155 -0
- package/lib/commonjs/slider/utils.js.map +1 -0
- package/lib/commonjs/slot/index.js +141 -0
- package/lib/commonjs/slot/index.js.map +1 -0
- package/lib/commonjs/switch/index.js +7 -9
- package/lib/commonjs/switch/index.js.map +1 -1
- package/lib/commonjs/switch/useSwitch.js +81 -0
- package/lib/commonjs/switch/useSwitch.js.map +1 -0
- package/lib/commonjs/tile/TileGroup.js +111 -0
- package/lib/commonjs/tile/TileGroup.js.map +1 -0
- package/lib/commonjs/tile/TileRoot.js +129 -0
- package/lib/commonjs/tile/TileRoot.js.map +1 -0
- package/lib/commonjs/tile/context.js +30 -0
- package/lib/commonjs/tile/context.js.map +1 -0
- package/lib/commonjs/tile/index.js +33 -0
- package/lib/commonjs/tile/index.js.map +1 -0
- package/lib/commonjs/tile/types.js +6 -0
- package/lib/commonjs/tile/types.js.map +1 -0
- package/lib/commonjs/toast/ToastRoot.js +41 -0
- package/lib/commonjs/toast/ToastRoot.js.map +1 -0
- package/lib/commonjs/toast/context.js +11 -0
- package/lib/commonjs/toast/context.js.map +1 -0
- package/lib/commonjs/toast/index.js +26 -0
- package/lib/commonjs/toast/index.js.map +1 -0
- package/lib/commonjs/toast/types.js +6 -0
- package/lib/commonjs/toast/types.js.map +1 -0
- package/lib/commonjs/utils/assignRef.js +16 -0
- package/lib/commonjs/utils/assignRef.js.map +1 -0
- package/lib/commonjs/utils/createPortal.js +3 -1
- package/lib/commonjs/utils/createPortal.js.map +1 -1
- package/lib/commonjs/utils/dataAttributes.js +12 -25
- package/lib/commonjs/utils/dataAttributes.js.map +1 -1
- package/lib/commonjs/utils/dataAttributes.web.js +25 -0
- package/lib/commonjs/utils/dataAttributes.web.js.map +1 -1
- package/lib/commonjs/utils/domDataAttributes.js +64 -0
- package/lib/commonjs/utils/domDataAttributes.js.map +1 -0
- package/lib/module/CLAUDE.md +86 -0
- package/lib/module/avatar/AvatarRoot.js +34 -0
- package/lib/module/avatar/AvatarRoot.js.map +1 -0
- package/lib/module/avatar/index.js +2 -23
- package/lib/module/avatar/index.js.map +1 -1
- package/lib/module/button/ButtonRoot.js +81 -0
- package/lib/module/button/ButtonRoot.js.map +1 -0
- package/lib/module/button/index.js +1 -23
- package/lib/module/button/index.js.map +1 -1
- package/lib/module/checkbox/CheckboxGroup.js +48 -0
- package/lib/module/checkbox/CheckboxGroup.js.map +1 -0
- package/lib/module/checkbox/CheckboxRoot.js +99 -0
- package/lib/module/checkbox/CheckboxRoot.js.map +1 -0
- package/lib/module/checkbox/CheckboxRoot.web.js +90 -0
- package/lib/module/checkbox/CheckboxRoot.web.js.map +1 -0
- package/lib/module/checkbox/index.js +3 -23
- package/lib/module/checkbox/index.js.map +1 -1
- package/lib/module/chip/ChipRoot.js +142 -0
- package/lib/module/chip/ChipRoot.js.map +1 -0
- package/lib/module/chip/context.js +5 -0
- package/lib/module/chip/context.js.map +1 -0
- package/lib/module/chip/index.js +5 -0
- package/lib/module/chip/index.js.map +1 -0
- package/lib/module/chip/types.js.map +1 -0
- package/lib/module/dialog/DialogClose.js +28 -0
- package/lib/module/dialog/DialogClose.js.map +1 -0
- package/lib/module/dialog/DialogContent.js +76 -0
- package/lib/module/dialog/DialogContent.js.map +1 -0
- package/lib/module/dialog/DialogOverlay.js +50 -0
- package/lib/module/dialog/DialogOverlay.js.map +1 -0
- package/lib/module/dialog/DialogPopup.js +157 -0
- package/lib/module/dialog/DialogPopup.js.map +1 -0
- package/lib/module/dialog/DialogPortal.js +33 -0
- package/lib/module/dialog/DialogPortal.js.map +1 -0
- package/lib/module/dialog/DialogRoot.js +53 -0
- package/lib/module/dialog/DialogRoot.js.map +1 -0
- package/lib/module/dialog/DialogTrigger.js +28 -0
- package/lib/module/dialog/DialogTrigger.js.map +1 -0
- package/lib/module/dialog/index.js +8 -42
- package/lib/module/dialog/index.js.map +1 -1
- package/lib/module/field/FieldLabel.js +44 -0
- package/lib/module/field/FieldLabel.js.map +1 -0
- package/lib/module/field/FieldLabel.web.js +55 -0
- package/lib/module/field/FieldLabel.web.js.map +1 -0
- package/lib/module/field/FieldRoot.js +34 -0
- package/lib/module/field/FieldRoot.js.map +1 -0
- package/lib/module/field/index.js +2 -39
- package/lib/module/field/index.js.map +1 -1
- package/lib/module/form/FormRoot.js +21 -0
- package/lib/module/form/FormRoot.js.map +1 -0
- package/lib/module/form/FormRoot.web.js +22 -0
- package/lib/module/form/FormRoot.web.js.map +1 -0
- package/lib/module/form/index.js +1 -8
- package/lib/module/form/index.js.map +1 -1
- package/lib/module/full-window-overlay/index.js +43 -0
- package/lib/module/full-window-overlay/index.js.map +1 -0
- package/lib/module/full-window-overlay/index.web.js +15 -0
- package/lib/module/full-window-overlay/index.web.js.map +1 -0
- package/lib/module/index.js +14 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/input/InputField.android.js +94 -0
- package/lib/module/input/InputField.android.js.map +1 -0
- package/lib/module/input/InputField.js +88 -0
- package/lib/module/input/InputField.js.map +1 -0
- package/lib/module/input/InputField.web.js +126 -0
- package/lib/module/input/InputField.web.js.map +1 -0
- package/lib/module/input/InputRoot.js +88 -0
- package/lib/module/input/InputRoot.js.map +1 -0
- package/lib/module/input/index.js +3 -15
- package/lib/module/input/index.js.map +1 -1
- package/lib/module/link/LinkRoot.js +84 -0
- package/lib/module/link/LinkRoot.js.map +1 -0
- package/lib/module/link/context.js +5 -0
- package/lib/module/link/context.js.map +1 -0
- package/lib/module/link/index.js +2 -1
- package/lib/module/link/index.js.map +1 -1
- package/lib/module/list-item/ListItemRoot.js +144 -0
- package/lib/module/list-item/ListItemRoot.js.map +1 -0
- package/lib/module/list-item/context.js.map +1 -1
- package/lib/module/list-item/index.js +1 -35
- package/lib/module/list-item/index.js.map +1 -1
- package/lib/module/otp-input/OtpInputField.js +116 -0
- package/lib/module/otp-input/OtpInputField.js.map +1 -0
- package/lib/module/otp-input/index.js +3 -15
- package/lib/module/otp-input/index.js.map +1 -1
- package/lib/module/otp-input/useOtpInput.js +116 -0
- package/lib/module/otp-input/useOtpInput.js.map +1 -0
- package/lib/module/overlay/useAnchorPosition.js +60 -11
- package/lib/module/overlay/useAnchorPosition.js.map +1 -1
- package/lib/module/overlay/useDismissOverlay.js +0 -2
- package/lib/module/overlay/useDismissOverlay.js.map +1 -1
- package/lib/module/overlay/useEscapeKey.js +0 -2
- package/lib/module/overlay/useEscapeKey.js.map +1 -1
- package/lib/module/portal/index.js +4 -0
- package/lib/module/portal/index.js.map +1 -0
- package/lib/module/portal/portal.js +103 -0
- package/lib/module/portal/portal.js.map +1 -0
- package/lib/module/progress-bar/ProgressBarIndicator.js +41 -0
- package/lib/module/progress-bar/ProgressBarIndicator.js.map +1 -0
- package/lib/module/progress-bar/ProgressBarRoot.js +96 -0
- package/lib/module/progress-bar/ProgressBarRoot.js.map +1 -0
- package/lib/module/progress-bar/context.js.map +1 -0
- package/lib/module/progress-bar/index.js +6 -0
- package/lib/module/progress-bar/index.js.map +1 -0
- package/lib/module/progress-bar/types.js +4 -0
- package/lib/module/progress-bar/types.js.map +1 -0
- package/lib/module/radio/RadioGroup.js +70 -0
- package/lib/module/radio/RadioGroup.js.map +1 -0
- package/lib/module/radio/RadioRoot.js +95 -0
- package/lib/module/radio/RadioRoot.js.map +1 -0
- package/lib/module/radio/RadioRoot.web.js +87 -0
- package/lib/module/radio/RadioRoot.web.js.map +1 -0
- package/lib/module/radio/index.js +3 -19
- package/lib/module/radio/index.js.map +1 -1
- package/lib/module/select/SelectContent.js +100 -0
- package/lib/module/select/SelectContent.js.map +1 -0
- package/lib/module/select/SelectItem.js +100 -0
- package/lib/module/select/SelectItem.js.map +1 -0
- package/lib/module/select/SelectRoot.js +101 -0
- package/lib/module/select/SelectRoot.js.map +1 -0
- package/lib/module/select/SelectTrigger.js +67 -0
- package/lib/module/select/SelectTrigger.js.map +1 -0
- package/lib/module/select/SelectTrigger.web.js +170 -0
- package/lib/module/select/SelectTrigger.web.js.map +1 -0
- package/lib/module/select/context.js +1 -8
- package/lib/module/select/context.js.map +1 -1
- package/lib/module/select/index.js +5 -31
- package/lib/module/select/index.js.map +1 -1
- package/lib/module/select/useContentFocus.js +1 -1
- package/lib/module/select/useSelectTrigger.js +210 -0
- package/lib/module/select/useSelectTrigger.js.map +1 -0
- package/lib/module/select/useSelectTrigger.web.js +197 -0
- package/lib/module/select/useSelectTrigger.web.js.map +1 -0
- package/lib/module/slider/SliderRail.js +127 -0
- package/lib/module/slider/SliderRail.js.map +1 -0
- package/lib/module/slider/SliderRoot.js +182 -0
- package/lib/module/slider/SliderRoot.js.map +1 -0
- package/lib/module/slider/SliderThumb.js +224 -0
- package/lib/module/slider/SliderThumb.js.map +1 -0
- package/lib/module/slider/context.js +5 -0
- package/lib/module/slider/context.js.map +1 -0
- package/lib/module/slider/index.js +8 -0
- package/lib/module/slider/index.js.map +1 -0
- package/lib/module/slider/types.js +4 -0
- package/lib/module/slider/types.js.map +1 -0
- package/lib/module/slider/useSliderPointer.js +110 -0
- package/lib/module/slider/useSliderPointer.js.map +1 -0
- package/lib/module/slider/utils.js +138 -0
- package/lib/module/slider/utils.js.map +1 -0
- package/lib/module/slot/index.js +135 -0
- package/lib/module/slot/index.js.map +1 -0
- package/lib/module/switch/index.js +1 -8
- package/lib/module/switch/index.js.map +1 -1
- package/lib/module/switch/useSwitch.js +77 -0
- package/lib/module/switch/useSwitch.js.map +1 -0
- package/lib/module/tile/TileGroup.js +107 -0
- package/lib/module/tile/TileGroup.js.map +1 -0
- package/lib/module/tile/TileRoot.js +125 -0
- package/lib/module/tile/TileRoot.js.map +1 -0
- package/lib/module/tile/context.js +21 -0
- package/lib/module/tile/context.js.map +1 -0
- package/lib/module/tile/index.js +6 -0
- package/lib/module/tile/index.js.map +1 -0
- package/lib/module/tile/types.js +4 -0
- package/lib/module/tile/types.js.map +1 -0
- package/lib/module/toast/ToastRoot.js +37 -0
- package/lib/module/toast/ToastRoot.js.map +1 -0
- package/lib/module/toast/context.js +5 -0
- package/lib/module/toast/context.js.map +1 -0
- package/lib/module/toast/index.js +5 -0
- package/lib/module/toast/index.js.map +1 -0
- package/lib/module/toast/types.js +4 -0
- package/lib/module/toast/types.js.map +1 -0
- package/lib/module/utils/assignRef.js +12 -0
- package/lib/module/utils/assignRef.js.map +1 -0
- package/lib/module/utils/createPortal.js +3 -1
- package/lib/module/utils/createPortal.js.map +1 -1
- package/lib/module/utils/dataAttributes.js +4 -22
- package/lib/module/utils/dataAttributes.js.map +1 -1
- package/lib/module/utils/dataAttributes.web.js +24 -0
- package/lib/module/utils/dataAttributes.web.js.map +1 -1
- package/lib/module/utils/domDataAttributes.js +59 -0
- package/lib/module/utils/domDataAttributes.js.map +1 -0
- package/lib/typescript/avatar/AvatarRoot.d.ts +8 -0
- package/lib/typescript/avatar/AvatarRoot.d.ts.map +1 -0
- package/lib/typescript/avatar/index.d.ts +3 -10
- package/lib/typescript/avatar/index.d.ts.map +1 -1
- package/lib/typescript/avatar/types.d.ts +1 -17
- package/lib/typescript/avatar/types.d.ts.map +1 -1
- package/lib/typescript/button/ButtonRoot.d.ts +9 -0
- package/lib/typescript/button/ButtonRoot.d.ts.map +1 -0
- package/lib/typescript/button/index.d.ts +1 -9
- package/lib/typescript/button/index.d.ts.map +1 -1
- package/lib/typescript/button/types.d.ts +5 -34
- package/lib/typescript/button/types.d.ts.map +1 -1
- package/lib/typescript/checkbox/CheckboxGroup.d.ts +9 -0
- package/lib/typescript/checkbox/CheckboxGroup.d.ts.map +1 -0
- package/lib/typescript/checkbox/CheckboxRoot.d.ts +6 -0
- package/lib/typescript/checkbox/CheckboxRoot.d.ts.map +1 -0
- package/lib/typescript/checkbox/CheckboxRoot.web.d.ts +6 -0
- package/lib/typescript/checkbox/CheckboxRoot.web.d.ts.map +1 -0
- package/lib/typescript/checkbox/index.d.ts +4 -10
- package/lib/typescript/checkbox/index.d.ts.map +1 -1
- package/lib/typescript/checkbox/types.d.ts +0 -17
- package/lib/typescript/checkbox/types.d.ts.map +1 -1
- package/lib/typescript/checkbox/useCheckboxRoot.d.ts +3 -1
- package/lib/typescript/checkbox/useCheckboxRoot.d.ts.map +1 -1
- package/lib/typescript/chip/ChipRoot.d.ts +7 -0
- package/lib/typescript/chip/ChipRoot.d.ts.map +1 -0
- package/lib/typescript/chip/context.d.ts +6 -0
- package/lib/typescript/chip/context.d.ts.map +1 -0
- package/lib/typescript/chip/index.d.ts +4 -0
- package/lib/typescript/chip/index.d.ts.map +1 -0
- package/lib/typescript/chip/types.d.ts +16 -0
- package/lib/typescript/chip/types.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogClose.d.ts +5 -0
- package/lib/typescript/dialog/DialogClose.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogContent.d.ts +16 -0
- package/lib/typescript/dialog/DialogContent.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogOverlay.d.ts +11 -0
- package/lib/typescript/dialog/DialogOverlay.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogPopup.d.ts +14 -0
- package/lib/typescript/dialog/DialogPopup.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogPortal.d.ts +16 -0
- package/lib/typescript/dialog/DialogPortal.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogRoot.d.ts +7 -0
- package/lib/typescript/dialog/DialogRoot.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogTrigger.d.ts +5 -0
- package/lib/typescript/dialog/DialogTrigger.d.ts.map +1 -0
- package/lib/typescript/dialog/index.d.ts +9 -17
- package/lib/typescript/dialog/index.d.ts.map +1 -1
- package/lib/typescript/dialog/types.d.ts +34 -21
- package/lib/typescript/dialog/types.d.ts.map +1 -1
- package/lib/typescript/field/FieldLabel.d.ts +12 -0
- package/lib/typescript/field/FieldLabel.d.ts.map +1 -0
- package/lib/typescript/field/FieldLabel.web.d.ts +24 -0
- package/lib/typescript/field/FieldLabel.web.d.ts.map +1 -0
- package/lib/typescript/field/FieldRoot.d.ts +8 -0
- package/lib/typescript/field/FieldRoot.d.ts.map +1 -0
- package/lib/typescript/field/index.d.ts +3 -12
- package/lib/typescript/field/index.d.ts.map +1 -1
- package/lib/typescript/field/types.d.ts +0 -20
- package/lib/typescript/field/types.d.ts.map +1 -1
- package/lib/typescript/form/FormRoot.d.ts +8 -0
- package/lib/typescript/form/FormRoot.d.ts.map +1 -0
- package/lib/typescript/form/FormRoot.web.d.ts +8 -0
- package/lib/typescript/form/FormRoot.web.d.ts.map +1 -0
- package/lib/typescript/form/index.d.ts +2 -5
- package/lib/typescript/form/index.d.ts.map +1 -1
- package/lib/typescript/form/types.d.ts +8 -9
- package/lib/typescript/form/types.d.ts.map +1 -1
- package/lib/typescript/full-window-overlay/index.d.ts +46 -0
- package/lib/typescript/full-window-overlay/index.d.ts.map +1 -0
- package/lib/typescript/full-window-overlay/index.web.d.ts +29 -0
- package/lib/typescript/full-window-overlay/index.web.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +14 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/input/InputField.android.d.ts +5 -0
- package/lib/typescript/input/InputField.android.d.ts.map +1 -0
- package/lib/typescript/input/InputField.d.ts +5 -0
- package/lib/typescript/input/InputField.d.ts.map +1 -0
- package/lib/typescript/input/InputField.web.d.ts +6 -0
- package/lib/typescript/input/InputField.web.d.ts.map +1 -0
- package/lib/typescript/input/InputRoot.d.ts +5 -0
- package/lib/typescript/input/InputRoot.d.ts.map +1 -0
- package/lib/typescript/input/index.d.ts +4 -8
- package/lib/typescript/input/index.d.ts.map +1 -1
- package/lib/typescript/input/types.d.ts +22 -35
- package/lib/typescript/input/types.d.ts.map +1 -1
- package/lib/typescript/link/LinkRoot.d.ts +9 -0
- package/lib/typescript/link/LinkRoot.d.ts.map +1 -0
- package/lib/typescript/link/context.d.ts +10 -0
- package/lib/typescript/link/context.d.ts.map +1 -0
- package/lib/typescript/link/index.d.ts +3 -1
- package/lib/typescript/link/index.d.ts.map +1 -1
- package/lib/typescript/link/types.d.ts +1 -0
- package/lib/typescript/link/types.d.ts.map +1 -1
- package/lib/typescript/list-item/ListItemRoot.d.ts +7 -0
- package/lib/typescript/list-item/ListItemRoot.d.ts.map +1 -0
- package/lib/typescript/list-item/context.d.ts +3 -3
- package/lib/typescript/list-item/context.d.ts.map +1 -1
- package/lib/typescript/list-item/index.d.ts +2 -14
- package/lib/typescript/list-item/index.d.ts.map +1 -1
- package/lib/typescript/list-item/types.d.ts +5 -59
- package/lib/typescript/list-item/types.d.ts.map +1 -1
- package/lib/typescript/otp-input/OtpInputField.d.ts +19 -0
- package/lib/typescript/otp-input/OtpInputField.d.ts.map +1 -0
- package/lib/typescript/otp-input/index.d.ts +4 -8
- package/lib/typescript/otp-input/index.d.ts.map +1 -1
- package/lib/typescript/otp-input/types.d.ts +0 -9
- package/lib/typescript/otp-input/types.d.ts.map +1 -1
- package/lib/typescript/otp-input/useOtpInput.d.ts +19 -0
- package/lib/typescript/otp-input/useOtpInput.d.ts.map +1 -0
- package/lib/typescript/overlay/useAnchorPosition.d.ts +7 -1
- package/lib/typescript/overlay/useAnchorPosition.d.ts.map +1 -1
- package/lib/typescript/overlay/useDismissOverlay.d.ts.map +1 -1
- package/lib/typescript/overlay/useEscapeKey.d.ts.map +1 -1
- package/lib/typescript/portal/index.d.ts +2 -0
- package/lib/typescript/portal/index.d.ts.map +1 -0
- package/lib/typescript/portal/portal.d.ts +25 -0
- package/lib/typescript/portal/portal.d.ts.map +1 -0
- package/lib/typescript/progress-bar/ProgressBarIndicator.d.ts +6 -0
- package/lib/typescript/progress-bar/ProgressBarIndicator.d.ts.map +1 -0
- package/lib/typescript/progress-bar/ProgressBarRoot.d.ts +6 -0
- package/lib/typescript/progress-bar/ProgressBarRoot.d.ts.map +1 -0
- package/lib/typescript/progress-bar/context.d.ts.map +1 -0
- package/lib/typescript/progress-bar/index.d.ts +6 -0
- package/lib/typescript/progress-bar/index.d.ts.map +1 -0
- package/lib/typescript/progress-bar/types.d.ts +22 -0
- package/lib/typescript/progress-bar/types.d.ts.map +1 -0
- package/lib/typescript/radio/RadioGroup.d.ts +9 -0
- package/lib/typescript/radio/RadioGroup.d.ts.map +1 -0
- package/lib/typescript/radio/RadioRoot.d.ts +6 -0
- package/lib/typescript/radio/RadioRoot.d.ts.map +1 -0
- package/lib/typescript/radio/RadioRoot.web.d.ts +6 -0
- package/lib/typescript/radio/RadioRoot.web.d.ts.map +1 -0
- package/lib/typescript/radio/index.d.ts +4 -9
- package/lib/typescript/radio/index.d.ts.map +1 -1
- package/lib/typescript/radio/types.d.ts +0 -11
- package/lib/typescript/radio/types.d.ts.map +1 -1
- package/lib/typescript/radio/useRadioRoot.d.ts +3 -1
- package/lib/typescript/radio/useRadioRoot.d.ts.map +1 -1
- package/lib/typescript/select/SelectContent.d.ts +9 -0
- package/lib/typescript/select/SelectContent.d.ts.map +1 -0
- package/lib/typescript/select/SelectItem.d.ts +8 -0
- package/lib/typescript/select/SelectItem.d.ts.map +1 -0
- package/lib/typescript/select/SelectRoot.d.ts +8 -0
- package/lib/typescript/select/SelectRoot.d.ts.map +1 -0
- package/lib/typescript/select/SelectTrigger.d.ts +9 -0
- package/lib/typescript/select/SelectTrigger.d.ts.map +1 -0
- package/lib/typescript/select/SelectTrigger.web.d.ts +13 -0
- package/lib/typescript/select/SelectTrigger.web.d.ts.map +1 -0
- package/lib/typescript/select/context.d.ts +1 -11
- package/lib/typescript/select/context.d.ts.map +1 -1
- package/lib/typescript/select/index.d.ts +6 -12
- package/lib/typescript/select/index.d.ts.map +1 -1
- package/lib/typescript/select/types.d.ts +1 -9
- package/lib/typescript/select/types.d.ts.map +1 -1
- package/lib/typescript/select/useContentFocus.d.ts +1 -1
- package/lib/typescript/select/useSelectTrigger.d.ts +78 -0
- package/lib/typescript/select/useSelectTrigger.d.ts.map +1 -0
- package/lib/typescript/select/useSelectTrigger.web.d.ts +16 -0
- package/lib/typescript/select/useSelectTrigger.web.d.ts.map +1 -0
- package/lib/typescript/slider/SliderRail.d.ts +6 -0
- package/lib/typescript/slider/SliderRail.d.ts.map +1 -0
- package/lib/typescript/slider/SliderRoot.d.ts +7 -0
- package/lib/typescript/slider/SliderRoot.d.ts.map +1 -0
- package/lib/typescript/slider/SliderThumb.d.ts +6 -0
- package/lib/typescript/slider/SliderThumb.d.ts.map +1 -0
- package/lib/typescript/slider/context.d.ts +37 -0
- package/lib/typescript/slider/context.d.ts.map +1 -0
- package/lib/typescript/slider/index.d.ts +8 -0
- package/lib/typescript/slider/index.d.ts.map +1 -0
- package/lib/typescript/slider/types.d.ts +37 -0
- package/lib/typescript/slider/types.d.ts.map +1 -0
- package/lib/typescript/slider/useSliderPointer.d.ts +23 -0
- package/lib/typescript/slider/useSliderPointer.d.ts.map +1 -0
- package/lib/typescript/slider/utils.d.ts +23 -0
- package/lib/typescript/slider/utils.d.ts.map +1 -0
- package/lib/typescript/slot/index.d.ts +8 -0
- package/lib/typescript/slot/index.d.ts.map +1 -0
- package/lib/typescript/switch/index.d.ts +2 -6
- package/lib/typescript/switch/index.d.ts.map +1 -1
- package/lib/typescript/switch/types.d.ts +35 -6
- package/lib/typescript/switch/types.d.ts.map +1 -1
- package/lib/typescript/switch/useSwitch.d.ts +20 -0
- package/lib/typescript/switch/useSwitch.d.ts.map +1 -0
- package/lib/typescript/tile/TileGroup.d.ts +5 -0
- package/lib/typescript/tile/TileGroup.d.ts.map +1 -0
- package/lib/typescript/tile/TileRoot.d.ts +5 -0
- package/lib/typescript/tile/TileRoot.d.ts.map +1 -0
- package/lib/typescript/tile/context.d.ts +9 -0
- package/lib/typescript/tile/context.d.ts.map +1 -0
- package/lib/typescript/tile/index.d.ts +5 -0
- package/lib/typescript/tile/index.d.ts.map +1 -0
- package/lib/typescript/tile/types.d.ts +108 -0
- package/lib/typescript/tile/types.d.ts.map +1 -0
- package/lib/typescript/toast/ToastRoot.d.ts +7 -0
- package/lib/typescript/toast/ToastRoot.d.ts.map +1 -0
- package/lib/typescript/toast/context.d.ts +6 -0
- package/lib/typescript/toast/context.d.ts.map +1 -0
- package/lib/typescript/toast/index.d.ts +3 -0
- package/lib/typescript/toast/index.d.ts.map +1 -0
- package/lib/typescript/toast/types.d.ts +16 -0
- package/lib/typescript/toast/types.d.ts.map +1 -0
- package/lib/typescript/utils/assignRef.d.ts +3 -0
- package/lib/typescript/utils/assignRef.d.ts.map +1 -0
- package/lib/typescript/utils/createPortal.d.ts.map +1 -1
- package/lib/typescript/utils/dataAttributes.d.ts +4 -10
- package/lib/typescript/utils/dataAttributes.d.ts.map +1 -1
- package/lib/typescript/utils/dataAttributes.web.d.ts +16 -0
- package/lib/typescript/utils/dataAttributes.web.d.ts.map +1 -1
- package/lib/typescript/utils/domDataAttributes.d.ts +28 -0
- package/lib/typescript/utils/domDataAttributes.d.ts.map +1 -0
- package/package.json +5 -5
- package/src/CLAUDE.md +86 -0
- package/src/avatar/AvatarRoot.tsx +39 -0
- package/src/avatar/index.ts +3 -43
- package/src/avatar/types.ts +1 -47
- package/src/button/ButtonRoot.tsx +115 -0
- package/src/button/index.ts +3 -0
- package/src/button/types.ts +5 -52
- package/src/checkbox/CheckboxGroup.tsx +50 -0
- package/src/checkbox/CheckboxRoot.tsx +102 -0
- package/src/checkbox/CheckboxRoot.web.tsx +92 -0
- package/src/checkbox/index.ts +4 -42
- package/src/checkbox/types.ts +1 -32
- package/src/chip/ChipRoot.tsx +168 -0
- package/src/chip/context.tsx +4 -0
- package/src/chip/index.ts +3 -0
- package/src/chip/types.ts +20 -0
- package/src/dialog/DialogClose.tsx +26 -0
- package/src/dialog/DialogContent.tsx +78 -0
- package/src/dialog/DialogOverlay.tsx +51 -0
- package/src/dialog/DialogPopup.tsx +162 -0
- package/src/dialog/DialogPortal.tsx +29 -0
- package/src/dialog/DialogRoot.tsx +72 -0
- package/src/dialog/DialogTrigger.tsx +26 -0
- package/src/dialog/index.tsx +11 -86
- package/src/dialog/types.ts +38 -54
- package/src/field/FieldLabel.tsx +43 -0
- package/src/field/FieldLabel.web.tsx +71 -0
- package/src/field/FieldRoot.tsx +39 -0
- package/src/field/index.tsx +3 -68
- package/src/field/types.tsx +0 -34
- package/src/form/FormRoot.tsx +18 -0
- package/src/form/FormRoot.web.tsx +17 -0
- package/src/form/index.tsx +2 -12
- package/src/form/types.tsx +9 -11
- package/src/full-window-overlay/index.tsx +65 -0
- package/src/full-window-overlay/index.web.tsx +32 -0
- package/src/index.ts +18 -2
- package/src/input/InputField.android.tsx +107 -0
- package/src/input/InputField.tsx +100 -0
- package/src/input/InputField.web.tsx +141 -0
- package/src/input/InputRoot.tsx +115 -0
- package/src/input/index.tsx +4 -38
- package/src/input/types.ts +23 -49
- package/src/link/LinkRoot.tsx +108 -0
- package/src/link/context.tsx +10 -0
- package/src/link/index.tsx +3 -1
- package/src/link/types.ts +1 -0
- package/src/list-item/ListItemRoot.tsx +183 -0
- package/src/list-item/context.tsx +2 -2
- package/src/list-item/index.ts +1 -80
- package/src/list-item/types.ts +5 -89
- package/src/otp-input/OtpInputField.tsx +122 -0
- package/src/otp-input/index.ts +16 -0
- package/src/otp-input/types.ts +0 -23
- package/src/otp-input/useOtpInput.ts +156 -0
- package/src/overlay/useAnchorPosition.ts +79 -11
- package/src/overlay/useDismissOverlay.ts +0 -2
- package/src/overlay/useEscapeKey.ts +0 -2
- package/src/portal/index.ts +1 -0
- package/src/portal/portal.tsx +116 -0
- package/src/progress-bar/ProgressBarIndicator.tsx +34 -0
- package/src/progress-bar/ProgressBarRoot.tsx +117 -0
- package/src/progress-bar/index.ts +5 -0
- package/src/progress-bar/types.ts +24 -0
- package/src/radio/RadioGroup.tsx +85 -0
- package/src/radio/RadioRoot.tsx +98 -0
- package/src/radio/RadioRoot.web.tsx +90 -0
- package/src/radio/index.ts +4 -36
- package/src/radio/types.ts +0 -22
- package/src/select/SelectContent.tsx +120 -0
- package/src/select/SelectItem.tsx +139 -0
- package/src/select/SelectRoot.tsx +154 -0
- package/src/select/SelectTrigger.tsx +82 -0
- package/src/select/SelectTrigger.web.tsx +238 -0
- package/src/select/context.tsx +1 -10
- package/src/select/index.ts +17 -0
- package/src/select/types.ts +1 -32
- package/src/select/useContentFocus.ts +1 -1
- package/src/select/useSelectTrigger.ts +359 -0
- package/src/select/useSelectTrigger.web.ts +280 -0
- package/src/slider/SliderRail.tsx +143 -0
- package/src/slider/SliderRoot.tsx +266 -0
- package/src/slider/SliderThumb.tsx +268 -0
- package/src/slider/context.tsx +38 -0
- package/src/slider/index.ts +19 -0
- package/src/slider/types.ts +44 -0
- package/src/slider/useSliderPointer.ts +157 -0
- package/src/slider/utils.ts +181 -0
- package/src/slot/index.tsx +162 -0
- package/src/switch/index.ts +7 -16
- package/src/switch/types.ts +35 -10
- package/src/switch/useSwitch.ts +75 -0
- package/src/tile/TileGroup.tsx +137 -0
- package/src/tile/TileRoot.tsx +137 -0
- package/src/tile/context.tsx +23 -0
- package/src/tile/index.ts +18 -0
- package/src/tile/types.ts +121 -0
- package/src/toast/ToastRoot.tsx +39 -0
- package/src/toast/context.tsx +4 -0
- package/src/toast/index.ts +2 -0
- package/src/toast/types.ts +17 -0
- package/src/uniwind.d.ts +1 -0
- package/src/utils/assignRef.ts +11 -0
- package/src/utils/createPortal.ts +3 -1
- package/src/utils/dataAttributes.ts +7 -25
- package/src/utils/dataAttributes.web.ts +24 -0
- package/src/utils/domDataAttributes.ts +63 -0
- package/lib/commonjs/avatar/createAvatarBadge.js +0 -20
- package/lib/commonjs/avatar/createAvatarBadge.js.map +0 -1
- package/lib/commonjs/avatar/createAvatarIcon.js +0 -30
- package/lib/commonjs/avatar/createAvatarIcon.js.map +0 -1
- package/lib/commonjs/avatar/createAvatarImage.js +0 -51
- package/lib/commonjs/avatar/createAvatarImage.js.map +0 -1
- package/lib/commonjs/avatar/createAvatarRoot.js +0 -34
- package/lib/commonjs/avatar/createAvatarRoot.js.map +0 -1
- package/lib/commonjs/avatar/createAvatarText.js +0 -42
- package/lib/commonjs/avatar/createAvatarText.js.map +0 -1
- package/lib/commonjs/button/createButtonGroup.js +0 -80
- package/lib/commonjs/button/createButtonGroup.js.map +0 -1
- package/lib/commonjs/button/createButtonIcon.js +0 -18
- package/lib/commonjs/button/createButtonIcon.js.map +0 -1
- package/lib/commonjs/button/createButtonRoot.js +0 -81
- package/lib/commonjs/button/createButtonRoot.js.map +0 -1
- package/lib/commonjs/button/createButtonSpinner.js +0 -34
- package/lib/commonjs/button/createButtonSpinner.js.map +0 -1
- package/lib/commonjs/button/createButtonText.js +0 -38
- package/lib/commonjs/button/createButtonText.js.map +0 -1
- package/lib/commonjs/checkbox/createCheckboxGroup.js +0 -44
- package/lib/commonjs/checkbox/createCheckboxGroup.js.map +0 -1
- package/lib/commonjs/checkbox/createCheckboxIcon.js +0 -29
- package/lib/commonjs/checkbox/createCheckboxIcon.js.map +0 -1
- package/lib/commonjs/checkbox/createCheckboxIndicator.js +0 -47
- package/lib/commonjs/checkbox/createCheckboxIndicator.js.map +0 -1
- package/lib/commonjs/checkbox/createCheckboxLabel.js +0 -46
- package/lib/commonjs/checkbox/createCheckboxLabel.js.map +0 -1
- package/lib/commonjs/checkbox/createCheckboxRoot.js +0 -99
- package/lib/commonjs/checkbox/createCheckboxRoot.js.map +0 -1
- package/lib/commonjs/checkbox/createCheckboxRoot.web.js +0 -90
- package/lib/commonjs/checkbox/createCheckboxRoot.web.js.map +0 -1
- package/lib/commonjs/dialog/createDialogBody.js +0 -21
- package/lib/commonjs/dialog/createDialogBody.js.map +0 -1
- package/lib/commonjs/dialog/createDialogClose.js +0 -37
- package/lib/commonjs/dialog/createDialogClose.js.map +0 -1
- package/lib/commonjs/dialog/createDialogContent.js +0 -141
- package/lib/commonjs/dialog/createDialogContent.js.map +0 -1
- package/lib/commonjs/dialog/createDialogDescription.js +0 -30
- package/lib/commonjs/dialog/createDialogDescription.js.map +0 -1
- package/lib/commonjs/dialog/createDialogFooter.js +0 -21
- package/lib/commonjs/dialog/createDialogFooter.js.map +0 -1
- package/lib/commonjs/dialog/createDialogHeader.js +0 -21
- package/lib/commonjs/dialog/createDialogHeader.js.map +0 -1
- package/lib/commonjs/dialog/createDialogRoot.js +0 -54
- package/lib/commonjs/dialog/createDialogRoot.js.map +0 -1
- package/lib/commonjs/dialog/createDialogTitle.js +0 -21
- package/lib/commonjs/dialog/createDialogTitle.js.map +0 -1
- package/lib/commonjs/dialog/createDialogTrigger.js +0 -37
- package/lib/commonjs/dialog/createDialogTrigger.js.map +0 -1
- package/lib/commonjs/field/createFieldError.js +0 -41
- package/lib/commonjs/field/createFieldError.js.map +0 -1
- package/lib/commonjs/field/createFieldErrorIcon.js +0 -18
- package/lib/commonjs/field/createFieldErrorIcon.js.map +0 -1
- package/lib/commonjs/field/createFieldErrorText.js +0 -18
- package/lib/commonjs/field/createFieldErrorText.js.map +0 -1
- package/lib/commonjs/field/createFieldHelper.js +0 -41
- package/lib/commonjs/field/createFieldHelper.js.map +0 -1
- package/lib/commonjs/field/createFieldHelperText.js +0 -18
- package/lib/commonjs/field/createFieldHelperText.js.map +0 -1
- package/lib/commonjs/field/createFieldLabel.js +0 -36
- package/lib/commonjs/field/createFieldLabel.js.map +0 -1
- package/lib/commonjs/field/createFieldRoot.js +0 -35
- package/lib/commonjs/field/createFieldRoot.js.map +0 -1
- package/lib/commonjs/form/createFormRoot.js +0 -21
- package/lib/commonjs/form/createFormRoot.js.map +0 -1
- package/lib/commonjs/input/createInputField.js +0 -95
- package/lib/commonjs/input/createInputField.js.map +0 -1
- package/lib/commonjs/input/createInputRoot.js +0 -82
- package/lib/commonjs/input/createInputRoot.js.map +0 -1
- package/lib/commonjs/input/createInputSlot.js +0 -44
- package/lib/commonjs/input/createInputSlot.js.map +0 -1
- package/lib/commonjs/link/createLink.js +0 -74
- package/lib/commonjs/link/createLink.js.map +0 -1
- package/lib/commonjs/list-item/createListItemContent.js +0 -30
- package/lib/commonjs/list-item/createListItemContent.js.map +0 -1
- package/lib/commonjs/list-item/createListItemDescription.js +0 -25
- package/lib/commonjs/list-item/createListItemDescription.js.map +0 -1
- package/lib/commonjs/list-item/createListItemLeadingSlot.js +0 -34
- package/lib/commonjs/list-item/createListItemLeadingSlot.js.map +0 -1
- package/lib/commonjs/list-item/createListItemMeta.js +0 -25
- package/lib/commonjs/list-item/createListItemMeta.js.map +0 -1
- package/lib/commonjs/list-item/createListItemRoot.js +0 -142
- package/lib/commonjs/list-item/createListItemRoot.js.map +0 -1
- package/lib/commonjs/list-item/createListItemSectionHeader.js +0 -54
- package/lib/commonjs/list-item/createListItemSectionHeader.js.map +0 -1
- package/lib/commonjs/list-item/createListItemTitle.js +0 -25
- package/lib/commonjs/list-item/createListItemTitle.js.map +0 -1
- package/lib/commonjs/list-item/createListItemTrailingSlot.js +0 -28
- package/lib/commonjs/list-item/createListItemTrailingSlot.js.map +0 -1
- package/lib/commonjs/otp-input/createOtpInputCell.js +0 -29
- package/lib/commonjs/otp-input/createOtpInputCell.js.map +0 -1
- package/lib/commonjs/otp-input/createOtpInputField.js +0 -104
- package/lib/commonjs/otp-input/createOtpInputField.js.map +0 -1
- package/lib/commonjs/otp-input/createOtpInputRoot.js +0 -136
- package/lib/commonjs/otp-input/createOtpInputRoot.js.map +0 -1
- package/lib/commonjs/progress/context.js.map +0 -1
- package/lib/commonjs/progress/createProgressIndicator.js +0 -42
- package/lib/commonjs/progress/createProgressIndicator.js.map +0 -1
- package/lib/commonjs/progress/createProgressRoot.js +0 -96
- package/lib/commonjs/progress/createProgressRoot.js.map +0 -1
- package/lib/commonjs/progress/index.js +0 -25
- package/lib/commonjs/progress/index.js.map +0 -1
- package/lib/commonjs/progress/types.js.map +0 -1
- package/lib/commonjs/radio/createRadioGroup.js +0 -66
- package/lib/commonjs/radio/createRadioGroup.js.map +0 -1
- package/lib/commonjs/radio/createRadioIndicator.js +0 -43
- package/lib/commonjs/radio/createRadioIndicator.js.map +0 -1
- package/lib/commonjs/radio/createRadioLabel.js +0 -38
- package/lib/commonjs/radio/createRadioLabel.js.map +0 -1
- package/lib/commonjs/radio/createRadioRoot.js +0 -95
- package/lib/commonjs/radio/createRadioRoot.js.map +0 -1
- package/lib/commonjs/radio/createRadioRoot.web.js +0 -87
- package/lib/commonjs/radio/createRadioRoot.web.js.map +0 -1
- package/lib/commonjs/select/createSelectContent.js +0 -102
- package/lib/commonjs/select/createSelectContent.js.map +0 -1
- package/lib/commonjs/select/createSelectIcon.js +0 -41
- package/lib/commonjs/select/createSelectIcon.js.map +0 -1
- package/lib/commonjs/select/createSelectItem.js +0 -101
- package/lib/commonjs/select/createSelectItem.js.map +0 -1
- package/lib/commonjs/select/createSelectItemLabel.js +0 -41
- package/lib/commonjs/select/createSelectItemLabel.js.map +0 -1
- package/lib/commonjs/select/createSelectRoot.js +0 -102
- package/lib/commonjs/select/createSelectRoot.js.map +0 -1
- package/lib/commonjs/select/createSelectTrigger.js +0 -179
- package/lib/commonjs/select/createSelectTrigger.js.map +0 -1
- package/lib/commonjs/select/createSelectValue.js +0 -53
- package/lib/commonjs/select/createSelectValue.js.map +0 -1
- package/lib/commonjs/switch/createSwitchRoot.js +0 -73
- package/lib/commonjs/switch/createSwitchRoot.js.map +0 -1
- package/lib/module/avatar/createAvatarBadge.js +0 -15
- package/lib/module/avatar/createAvatarBadge.js.map +0 -1
- package/lib/module/avatar/createAvatarIcon.js +0 -25
- package/lib/module/avatar/createAvatarIcon.js.map +0 -1
- package/lib/module/avatar/createAvatarImage.js +0 -46
- package/lib/module/avatar/createAvatarImage.js.map +0 -1
- package/lib/module/avatar/createAvatarRoot.js +0 -29
- package/lib/module/avatar/createAvatarRoot.js.map +0 -1
- package/lib/module/avatar/createAvatarText.js +0 -37
- package/lib/module/avatar/createAvatarText.js.map +0 -1
- package/lib/module/button/createButtonGroup.js +0 -74
- package/lib/module/button/createButtonGroup.js.map +0 -1
- package/lib/module/button/createButtonIcon.js +0 -13
- package/lib/module/button/createButtonIcon.js.map +0 -1
- package/lib/module/button/createButtonRoot.js +0 -76
- package/lib/module/button/createButtonRoot.js.map +0 -1
- package/lib/module/button/createButtonSpinner.js +0 -29
- package/lib/module/button/createButtonSpinner.js.map +0 -1
- package/lib/module/button/createButtonText.js +0 -33
- package/lib/module/button/createButtonText.js.map +0 -1
- package/lib/module/checkbox/createCheckboxGroup.js +0 -39
- package/lib/module/checkbox/createCheckboxGroup.js.map +0 -1
- package/lib/module/checkbox/createCheckboxIcon.js +0 -24
- package/lib/module/checkbox/createCheckboxIcon.js.map +0 -1
- package/lib/module/checkbox/createCheckboxIndicator.js +0 -42
- package/lib/module/checkbox/createCheckboxIndicator.js.map +0 -1
- package/lib/module/checkbox/createCheckboxLabel.js +0 -41
- package/lib/module/checkbox/createCheckboxLabel.js.map +0 -1
- package/lib/module/checkbox/createCheckboxRoot.js +0 -94
- package/lib/module/checkbox/createCheckboxRoot.js.map +0 -1
- package/lib/module/checkbox/createCheckboxRoot.web.js +0 -85
- package/lib/module/checkbox/createCheckboxRoot.web.js.map +0 -1
- package/lib/module/dialog/createDialogBody.js +0 -15
- package/lib/module/dialog/createDialogBody.js.map +0 -1
- package/lib/module/dialog/createDialogClose.js +0 -31
- package/lib/module/dialog/createDialogClose.js.map +0 -1
- package/lib/module/dialog/createDialogContent.js +0 -136
- package/lib/module/dialog/createDialogContent.js.map +0 -1
- package/lib/module/dialog/createDialogDescription.js +0 -24
- package/lib/module/dialog/createDialogDescription.js.map +0 -1
- package/lib/module/dialog/createDialogFooter.js +0 -15
- package/lib/module/dialog/createDialogFooter.js.map +0 -1
- package/lib/module/dialog/createDialogHeader.js +0 -15
- package/lib/module/dialog/createDialogHeader.js.map +0 -1
- package/lib/module/dialog/createDialogRoot.js +0 -49
- package/lib/module/dialog/createDialogRoot.js.map +0 -1
- package/lib/module/dialog/createDialogTitle.js +0 -15
- package/lib/module/dialog/createDialogTitle.js.map +0 -1
- package/lib/module/dialog/createDialogTrigger.js +0 -31
- package/lib/module/dialog/createDialogTrigger.js.map +0 -1
- package/lib/module/field/createFieldError.js +0 -35
- package/lib/module/field/createFieldError.js.map +0 -1
- package/lib/module/field/createFieldErrorIcon.js +0 -13
- package/lib/module/field/createFieldErrorIcon.js.map +0 -1
- package/lib/module/field/createFieldErrorText.js +0 -13
- package/lib/module/field/createFieldErrorText.js.map +0 -1
- package/lib/module/field/createFieldHelper.js +0 -35
- package/lib/module/field/createFieldHelper.js.map +0 -1
- package/lib/module/field/createFieldHelperText.js +0 -13
- package/lib/module/field/createFieldHelperText.js.map +0 -1
- package/lib/module/field/createFieldLabel.js +0 -31
- package/lib/module/field/createFieldLabel.js.map +0 -1
- package/lib/module/field/createFieldRoot.js +0 -29
- package/lib/module/field/createFieldRoot.js.map +0 -1
- package/lib/module/form/createFormRoot.js +0 -15
- package/lib/module/form/createFormRoot.js.map +0 -1
- package/lib/module/input/createInputField.js +0 -90
- package/lib/module/input/createInputField.js.map +0 -1
- package/lib/module/input/createInputRoot.js +0 -76
- package/lib/module/input/createInputRoot.js.map +0 -1
- package/lib/module/input/createInputSlot.js +0 -39
- package/lib/module/input/createInputSlot.js.map +0 -1
- package/lib/module/link/createLink.js +0 -68
- package/lib/module/link/createLink.js.map +0 -1
- package/lib/module/list-item/createListItemContent.js +0 -24
- package/lib/module/list-item/createListItemContent.js.map +0 -1
- package/lib/module/list-item/createListItemDescription.js +0 -19
- package/lib/module/list-item/createListItemDescription.js.map +0 -1
- package/lib/module/list-item/createListItemLeadingSlot.js +0 -28
- package/lib/module/list-item/createListItemLeadingSlot.js.map +0 -1
- package/lib/module/list-item/createListItemMeta.js +0 -19
- package/lib/module/list-item/createListItemMeta.js.map +0 -1
- package/lib/module/list-item/createListItemRoot.js +0 -136
- package/lib/module/list-item/createListItemRoot.js.map +0 -1
- package/lib/module/list-item/createListItemSectionHeader.js +0 -48
- package/lib/module/list-item/createListItemSectionHeader.js.map +0 -1
- package/lib/module/list-item/createListItemTitle.js +0 -19
- package/lib/module/list-item/createListItemTitle.js.map +0 -1
- package/lib/module/list-item/createListItemTrailingSlot.js +0 -22
- package/lib/module/list-item/createListItemTrailingSlot.js.map +0 -1
- package/lib/module/otp-input/createOtpInputCell.js +0 -24
- package/lib/module/otp-input/createOtpInputCell.js.map +0 -1
- package/lib/module/otp-input/createOtpInputField.js +0 -99
- package/lib/module/otp-input/createOtpInputField.js.map +0 -1
- package/lib/module/otp-input/createOtpInputRoot.js +0 -131
- package/lib/module/otp-input/createOtpInputRoot.js.map +0 -1
- package/lib/module/progress/context.js.map +0 -1
- package/lib/module/progress/createProgressIndicator.js +0 -37
- package/lib/module/progress/createProgressIndicator.js.map +0 -1
- package/lib/module/progress/createProgressRoot.js +0 -91
- package/lib/module/progress/createProgressRoot.js.map +0 -1
- package/lib/module/progress/index.js +0 -15
- package/lib/module/progress/index.js.map +0 -1
- package/lib/module/progress/types.js.map +0 -1
- package/lib/module/radio/createRadioGroup.js +0 -61
- package/lib/module/radio/createRadioGroup.js.map +0 -1
- package/lib/module/radio/createRadioIndicator.js +0 -38
- package/lib/module/radio/createRadioIndicator.js.map +0 -1
- package/lib/module/radio/createRadioLabel.js +0 -33
- package/lib/module/radio/createRadioLabel.js.map +0 -1
- package/lib/module/radio/createRadioRoot.js +0 -90
- package/lib/module/radio/createRadioRoot.js.map +0 -1
- package/lib/module/radio/createRadioRoot.web.js +0 -82
- package/lib/module/radio/createRadioRoot.web.js.map +0 -1
- package/lib/module/select/createSelectContent.js +0 -97
- package/lib/module/select/createSelectContent.js.map +0 -1
- package/lib/module/select/createSelectIcon.js +0 -36
- package/lib/module/select/createSelectIcon.js.map +0 -1
- package/lib/module/select/createSelectItem.js +0 -96
- package/lib/module/select/createSelectItem.js.map +0 -1
- package/lib/module/select/createSelectItemLabel.js +0 -36
- package/lib/module/select/createSelectItemLabel.js.map +0 -1
- package/lib/module/select/createSelectRoot.js +0 -97
- package/lib/module/select/createSelectRoot.js.map +0 -1
- package/lib/module/select/createSelectTrigger.js +0 -174
- package/lib/module/select/createSelectTrigger.js.map +0 -1
- package/lib/module/select/createSelectValue.js +0 -48
- package/lib/module/select/createSelectValue.js.map +0 -1
- package/lib/module/switch/createSwitchRoot.js +0 -67
- package/lib/module/switch/createSwitchRoot.js.map +0 -1
- package/lib/typescript/avatar/createAvatarBadge.d.ts +0 -4
- package/lib/typescript/avatar/createAvatarBadge.d.ts.map +0 -1
- package/lib/typescript/avatar/createAvatarIcon.d.ts +0 -4
- package/lib/typescript/avatar/createAvatarIcon.d.ts.map +0 -1
- package/lib/typescript/avatar/createAvatarImage.d.ts +0 -4
- package/lib/typescript/avatar/createAvatarImage.d.ts.map +0 -1
- package/lib/typescript/avatar/createAvatarRoot.d.ts +0 -4
- package/lib/typescript/avatar/createAvatarRoot.d.ts.map +0 -1
- package/lib/typescript/avatar/createAvatarText.d.ts +0 -4
- package/lib/typescript/avatar/createAvatarText.d.ts.map +0 -1
- package/lib/typescript/button/createButtonGroup.d.ts +0 -4
- package/lib/typescript/button/createButtonGroup.d.ts.map +0 -1
- package/lib/typescript/button/createButtonIcon.d.ts +0 -2
- package/lib/typescript/button/createButtonIcon.d.ts.map +0 -1
- package/lib/typescript/button/createButtonRoot.d.ts +0 -6
- package/lib/typescript/button/createButtonRoot.d.ts.map +0 -1
- package/lib/typescript/button/createButtonSpinner.d.ts +0 -4
- package/lib/typescript/button/createButtonSpinner.d.ts.map +0 -1
- package/lib/typescript/button/createButtonText.d.ts +0 -4
- package/lib/typescript/button/createButtonText.d.ts.map +0 -1
- package/lib/typescript/checkbox/createCheckboxGroup.d.ts +0 -3
- package/lib/typescript/checkbox/createCheckboxGroup.d.ts.map +0 -1
- package/lib/typescript/checkbox/createCheckboxIcon.d.ts +0 -3
- package/lib/typescript/checkbox/createCheckboxIcon.d.ts.map +0 -1
- package/lib/typescript/checkbox/createCheckboxIndicator.d.ts +0 -5
- package/lib/typescript/checkbox/createCheckboxIndicator.d.ts.map +0 -1
- package/lib/typescript/checkbox/createCheckboxLabel.d.ts +0 -5
- package/lib/typescript/checkbox/createCheckboxLabel.d.ts.map +0 -1
- package/lib/typescript/checkbox/createCheckboxRoot.d.ts +0 -2
- package/lib/typescript/checkbox/createCheckboxRoot.d.ts.map +0 -1
- package/lib/typescript/checkbox/createCheckboxRoot.web.d.ts +0 -2
- package/lib/typescript/checkbox/createCheckboxRoot.web.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogBody.d.ts +0 -4
- package/lib/typescript/dialog/createDialogBody.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogClose.d.ts +0 -4
- package/lib/typescript/dialog/createDialogClose.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogContent.d.ts +0 -4
- package/lib/typescript/dialog/createDialogContent.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogDescription.d.ts +0 -4
- package/lib/typescript/dialog/createDialogDescription.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogFooter.d.ts +0 -4
- package/lib/typescript/dialog/createDialogFooter.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogHeader.d.ts +0 -4
- package/lib/typescript/dialog/createDialogHeader.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogRoot.d.ts +0 -4
- package/lib/typescript/dialog/createDialogRoot.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogTitle.d.ts +0 -4
- package/lib/typescript/dialog/createDialogTitle.d.ts.map +0 -1
- package/lib/typescript/dialog/createDialogTrigger.d.ts +0 -4
- package/lib/typescript/dialog/createDialogTrigger.d.ts.map +0 -1
- package/lib/typescript/field/createFieldError.d.ts +0 -5
- package/lib/typescript/field/createFieldError.d.ts.map +0 -1
- package/lib/typescript/field/createFieldErrorIcon.d.ts +0 -5
- package/lib/typescript/field/createFieldErrorIcon.d.ts.map +0 -1
- package/lib/typescript/field/createFieldErrorText.d.ts +0 -5
- package/lib/typescript/field/createFieldErrorText.d.ts.map +0 -1
- package/lib/typescript/field/createFieldHelper.d.ts +0 -5
- package/lib/typescript/field/createFieldHelper.d.ts.map +0 -1
- package/lib/typescript/field/createFieldHelperText.d.ts +0 -5
- package/lib/typescript/field/createFieldHelperText.d.ts.map +0 -1
- package/lib/typescript/field/createFieldLabel.d.ts +0 -6
- package/lib/typescript/field/createFieldLabel.d.ts.map +0 -1
- package/lib/typescript/field/createFieldRoot.d.ts +0 -6
- package/lib/typescript/field/createFieldRoot.d.ts.map +0 -1
- package/lib/typescript/form/createFormRoot.d.ts +0 -4
- package/lib/typescript/form/createFormRoot.d.ts.map +0 -1
- package/lib/typescript/input/createInputField.d.ts +0 -4
- package/lib/typescript/input/createInputField.d.ts.map +0 -1
- package/lib/typescript/input/createInputRoot.d.ts +0 -4
- package/lib/typescript/input/createInputRoot.d.ts.map +0 -1
- package/lib/typescript/input/createInputSlot.d.ts +0 -4
- package/lib/typescript/input/createInputSlot.d.ts.map +0 -1
- package/lib/typescript/link/createLink.d.ts +0 -6
- package/lib/typescript/link/createLink.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemContent.d.ts +0 -3
- package/lib/typescript/list-item/createListItemContent.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemDescription.d.ts +0 -3
- package/lib/typescript/list-item/createListItemDescription.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemLeadingSlot.d.ts +0 -4
- package/lib/typescript/list-item/createListItemLeadingSlot.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemMeta.d.ts +0 -3
- package/lib/typescript/list-item/createListItemMeta.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemRoot.d.ts +0 -4
- package/lib/typescript/list-item/createListItemRoot.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemSectionHeader.d.ts +0 -4
- package/lib/typescript/list-item/createListItemSectionHeader.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemTitle.d.ts +0 -3
- package/lib/typescript/list-item/createListItemTitle.d.ts.map +0 -1
- package/lib/typescript/list-item/createListItemTrailingSlot.d.ts +0 -3
- package/lib/typescript/list-item/createListItemTrailingSlot.d.ts.map +0 -1
- package/lib/typescript/otp-input/createOtpInputCell.d.ts +0 -4
- package/lib/typescript/otp-input/createOtpInputCell.d.ts.map +0 -1
- package/lib/typescript/otp-input/createOtpInputField.d.ts +0 -4
- package/lib/typescript/otp-input/createOtpInputField.d.ts.map +0 -1
- package/lib/typescript/otp-input/createOtpInputRoot.d.ts +0 -4
- package/lib/typescript/otp-input/createOtpInputRoot.d.ts.map +0 -1
- package/lib/typescript/progress/context.d.ts.map +0 -1
- package/lib/typescript/progress/createProgressIndicator.d.ts +0 -3
- package/lib/typescript/progress/createProgressIndicator.d.ts.map +0 -1
- package/lib/typescript/progress/createProgressRoot.d.ts +0 -4
- package/lib/typescript/progress/createProgressRoot.d.ts.map +0 -1
- package/lib/typescript/progress/index.d.ts +0 -10
- package/lib/typescript/progress/index.d.ts.map +0 -1
- package/lib/typescript/progress/types.d.ts +0 -25
- package/lib/typescript/progress/types.d.ts.map +0 -1
- package/lib/typescript/radio/createRadioGroup.d.ts +0 -3
- package/lib/typescript/radio/createRadioGroup.d.ts.map +0 -1
- package/lib/typescript/radio/createRadioIndicator.d.ts +0 -5
- package/lib/typescript/radio/createRadioIndicator.d.ts.map +0 -1
- package/lib/typescript/radio/createRadioLabel.d.ts +0 -5
- package/lib/typescript/radio/createRadioLabel.d.ts.map +0 -1
- package/lib/typescript/radio/createRadioRoot.d.ts +0 -3
- package/lib/typescript/radio/createRadioRoot.d.ts.map +0 -1
- package/lib/typescript/radio/createRadioRoot.web.d.ts +0 -3
- package/lib/typescript/radio/createRadioRoot.web.d.ts.map +0 -1
- package/lib/typescript/select/createSelectContent.d.ts +0 -4
- package/lib/typescript/select/createSelectContent.d.ts.map +0 -1
- package/lib/typescript/select/createSelectIcon.d.ts +0 -2
- package/lib/typescript/select/createSelectIcon.d.ts.map +0 -1
- package/lib/typescript/select/createSelectItem.d.ts +0 -6
- package/lib/typescript/select/createSelectItem.d.ts.map +0 -1
- package/lib/typescript/select/createSelectItemLabel.d.ts +0 -4
- package/lib/typescript/select/createSelectItemLabel.d.ts.map +0 -1
- package/lib/typescript/select/createSelectRoot.d.ts +0 -4
- package/lib/typescript/select/createSelectRoot.d.ts.map +0 -1
- package/lib/typescript/select/createSelectTrigger.d.ts +0 -7
- package/lib/typescript/select/createSelectTrigger.d.ts.map +0 -1
- package/lib/typescript/select/createSelectValue.d.ts +0 -4
- package/lib/typescript/select/createSelectValue.d.ts.map +0 -1
- package/lib/typescript/switch/createSwitchRoot.d.ts +0 -3
- package/lib/typescript/switch/createSwitchRoot.d.ts.map +0 -1
- package/src/avatar/createAvatarBadge.tsx +0 -12
- package/src/avatar/createAvatarIcon.tsx +0 -16
- package/src/avatar/createAvatarImage.tsx +0 -40
- package/src/avatar/createAvatarRoot.tsx +0 -23
- package/src/avatar/createAvatarText.tsx +0 -30
- package/src/button/createButtonGroup.tsx +0 -88
- package/src/button/createButtonIcon.tsx +0 -8
- package/src/button/createButtonRoot.tsx +0 -102
- package/src/button/createButtonSpinner.tsx +0 -20
- package/src/button/createButtonText.tsx +0 -22
- package/src/button/index.tsx +0 -53
- package/src/checkbox/createCheckboxGroup.tsx +0 -32
- package/src/checkbox/createCheckboxIcon.tsx +0 -18
- package/src/checkbox/createCheckboxIndicator.tsx +0 -43
- package/src/checkbox/createCheckboxLabel.tsx +0 -42
- package/src/checkbox/createCheckboxRoot.tsx +0 -100
- package/src/checkbox/createCheckboxRoot.web.tsx +0 -79
- package/src/dialog/createDialogBody.tsx +0 -11
- package/src/dialog/createDialogClose.tsx +0 -27
- package/src/dialog/createDialogContent.tsx +0 -122
- package/src/dialog/createDialogDescription.tsx +0 -20
- package/src/dialog/createDialogFooter.tsx +0 -11
- package/src/dialog/createDialogHeader.tsx +0 -11
- package/src/dialog/createDialogRoot.tsx +0 -66
- package/src/dialog/createDialogTitle.tsx +0 -11
- package/src/dialog/createDialogTrigger.tsx +0 -27
- package/src/field/createFieldError.tsx +0 -32
- package/src/field/createFieldErrorIcon.tsx +0 -9
- package/src/field/createFieldErrorText.tsx +0 -9
- package/src/field/createFieldHelper.tsx +0 -28
- package/src/field/createFieldHelperText.tsx +0 -9
- package/src/field/createFieldLabel.tsx +0 -30
- package/src/field/createFieldRoot.tsx +0 -27
- package/src/form/createFormRoot.tsx +0 -13
- package/src/input/createInputField.tsx +0 -114
- package/src/input/createInputRoot.tsx +0 -92
- package/src/input/createInputSlot.tsx +0 -39
- package/src/link/createLink.tsx +0 -71
- package/src/list-item/createListItemContent.tsx +0 -23
- package/src/list-item/createListItemDescription.tsx +0 -19
- package/src/list-item/createListItemLeadingSlot.tsx +0 -30
- package/src/list-item/createListItemMeta.tsx +0 -17
- package/src/list-item/createListItemRoot.tsx +0 -163
- package/src/list-item/createListItemSectionHeader.tsx +0 -53
- package/src/list-item/createListItemTitle.tsx +0 -17
- package/src/list-item/createListItemTrailingSlot.tsx +0 -21
- package/src/otp-input/createOtpInputCell.tsx +0 -22
- package/src/otp-input/createOtpInputField.tsx +0 -98
- package/src/otp-input/createOtpInputRoot.tsx +0 -179
- package/src/otp-input/index.tsx +0 -34
- package/src/progress/createProgressIndicator.tsx +0 -35
- package/src/progress/createProgressRoot.tsx +0 -109
- package/src/progress/index.ts +0 -28
- package/src/progress/types.ts +0 -37
- package/src/radio/createRadioGroup.tsx +0 -67
- package/src/radio/createRadioIndicator.tsx +0 -32
- package/src/radio/createRadioLabel.tsx +0 -28
- package/src/radio/createRadioRoot.tsx +0 -100
- package/src/radio/createRadioRoot.web.tsx +0 -81
- package/src/select/createSelectContent.tsx +0 -115
- package/src/select/createSelectIcon.tsx +0 -27
- package/src/select/createSelectItem.tsx +0 -121
- package/src/select/createSelectItemLabel.tsx +0 -30
- package/src/select/createSelectRoot.tsx +0 -134
- package/src/select/createSelectTrigger.tsx +0 -218
- package/src/select/createSelectValue.tsx +0 -38
- package/src/select/index.tsx +0 -73
- package/src/switch/createSwitchRoot.tsx +0 -72
- /package/lib/commonjs/{progress → chip}/types.js +0 -0
- /package/lib/commonjs/{progress → progress-bar}/context.js +0 -0
- /package/lib/module/{progress → chip}/types.js +0 -0
- /package/lib/module/{progress → progress-bar}/context.js +0 -0
- /package/lib/typescript/{progress → progress-bar}/context.d.ts +0 -0
- /package/src/{progress → progress-bar}/context.tsx +0 -0
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
import { forwardRef, useCallback, useMemo, useRef, type ComponentRef } from 'react';
|
|
2
|
+
import {
|
|
3
|
+
PanResponder,
|
|
4
|
+
Platform,
|
|
5
|
+
Pressable,
|
|
6
|
+
View,
|
|
7
|
+
type GestureResponderEvent,
|
|
8
|
+
type LayoutChangeEvent,
|
|
9
|
+
type PressableProps,
|
|
10
|
+
type ViewStyle,
|
|
11
|
+
} from 'react-native';
|
|
12
|
+
import { composeEventHandlers } from '@cdx-ui/utils';
|
|
13
|
+
import { useFocus, useFocusRing } from '@react-native-aria/focus';
|
|
14
|
+
import { useHover, usePress } from '@react-native-aria/interactions';
|
|
15
|
+
import { Slot } from '../slot';
|
|
16
|
+
import { assignRef } from '../utils/assignRef';
|
|
17
|
+
import { dataAttributes } from '../utils/dataAttributes';
|
|
18
|
+
import { useSliderContext } from './context';
|
|
19
|
+
import type { InterfaceSliderThumbProps } from './types';
|
|
20
|
+
import { getPointerCoords, useWebSliderDrag } from './useSliderPointer';
|
|
21
|
+
import { clamp, getThumbTravel, percentToThumbOffset } from './utils';
|
|
22
|
+
|
|
23
|
+
export interface SliderThumbProps extends InterfaceSliderThumbProps {}
|
|
24
|
+
|
|
25
|
+
export const SliderThumb = forwardRef<ComponentRef<typeof Pressable>, SliderThumbProps>(
|
|
26
|
+
(
|
|
27
|
+
{
|
|
28
|
+
asChild,
|
|
29
|
+
style,
|
|
30
|
+
onLayout,
|
|
31
|
+
onHoverIn,
|
|
32
|
+
onHoverOut,
|
|
33
|
+
onFocus,
|
|
34
|
+
onBlur,
|
|
35
|
+
onPressIn,
|
|
36
|
+
onPressOut,
|
|
37
|
+
children,
|
|
38
|
+
...props
|
|
39
|
+
},
|
|
40
|
+
ref,
|
|
41
|
+
) => {
|
|
42
|
+
const {
|
|
43
|
+
percent,
|
|
44
|
+
orientation,
|
|
45
|
+
isDisabled,
|
|
46
|
+
isDragging,
|
|
47
|
+
trackLayout,
|
|
48
|
+
thumbSize,
|
|
49
|
+
setValueFromRatio,
|
|
50
|
+
setIsDragging,
|
|
51
|
+
setIsHovered,
|
|
52
|
+
setIsFocused,
|
|
53
|
+
setThumbSize,
|
|
54
|
+
thumbRef,
|
|
55
|
+
} = useSliderContext();
|
|
56
|
+
|
|
57
|
+
const percentRef = useRef(percent);
|
|
58
|
+
percentRef.current = percent;
|
|
59
|
+
|
|
60
|
+
const dragStartRatio = useRef(0);
|
|
61
|
+
const lastRatioRef = useRef(percent / 100);
|
|
62
|
+
|
|
63
|
+
// The native PanResponder is created once (stable across renders) so an
|
|
64
|
+
// in-flight gesture is never handed a fresh internal `gestureState`
|
|
65
|
+
// mid-drag. In controlled mode `setValueFromRatio`/`trackLayout` change
|
|
66
|
+
// identity on every value update, so the handlers read the current values
|
|
67
|
+
// through refs instead of closing over them (which would force the
|
|
68
|
+
// `useMemo` to re-create the responder on every move and reset `dx`).
|
|
69
|
+
const orientationRef = useRef(orientation);
|
|
70
|
+
orientationRef.current = orientation;
|
|
71
|
+
const trackLayoutRef = useRef(trackLayout);
|
|
72
|
+
trackLayoutRef.current = trackLayout;
|
|
73
|
+
const thumbSizeRef = useRef(thumbSize);
|
|
74
|
+
thumbSizeRef.current = thumbSize;
|
|
75
|
+
const isDisabledRef = useRef(isDisabled);
|
|
76
|
+
isDisabledRef.current = isDisabled;
|
|
77
|
+
const setValueFromRatioRef = useRef(setValueFromRatio);
|
|
78
|
+
setValueFromRatioRef.current = setValueFromRatio;
|
|
79
|
+
const setIsDraggingRef = useRef(setIsDragging);
|
|
80
|
+
setIsDraggingRef.current = setIsDragging;
|
|
81
|
+
|
|
82
|
+
const { hoverProps, isHovered } = useHover();
|
|
83
|
+
const { focusProps, isFocused } = useFocus();
|
|
84
|
+
const { isFocusVisible, focusProps: focusRingProps } = useFocusRing() as {
|
|
85
|
+
isFocusVisible: boolean;
|
|
86
|
+
focusProps: typeof focusProps;
|
|
87
|
+
};
|
|
88
|
+
const { pressProps: pressableProps, isPressed } = usePress({ isDisabled }) as {
|
|
89
|
+
isPressed: boolean;
|
|
90
|
+
pressProps: Pick<PressableProps, 'onPressIn' | 'onPressOut'>;
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
const { startDrag } = useWebSliderDrag({
|
|
94
|
+
isDisabled,
|
|
95
|
+
setIsDragging,
|
|
96
|
+
setValueFromRatio,
|
|
97
|
+
trackLayout,
|
|
98
|
+
orientation,
|
|
99
|
+
thumbSize,
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
const panResponder = useMemo(
|
|
103
|
+
() =>
|
|
104
|
+
PanResponder.create({
|
|
105
|
+
onStartShouldSetPanResponder: () => !isDisabledRef.current,
|
|
106
|
+
onMoveShouldSetPanResponder: () => !isDisabledRef.current,
|
|
107
|
+
onPanResponderGrant: () => {
|
|
108
|
+
if (isDisabledRef.current) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
setIsDraggingRef.current(true);
|
|
112
|
+
dragStartRatio.current = percentRef.current / 100;
|
|
113
|
+
lastRatioRef.current = dragStartRatio.current;
|
|
114
|
+
},
|
|
115
|
+
onPanResponderMove: (_event, gestureState) => {
|
|
116
|
+
const layout = trackLayoutRef.current;
|
|
117
|
+
if (!layout) {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
const isHorizontal = orientationRef.current === 'horizontal';
|
|
121
|
+
const trackSize = isHorizontal ? layout.width : layout.height;
|
|
122
|
+
const travel = getThumbTravel(trackSize, thumbSizeRef.current);
|
|
123
|
+
if (travel <= 0) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const delta = isHorizontal ? gestureState.dx : -gestureState.dy;
|
|
127
|
+
const nextRatio = clamp(dragStartRatio.current + delta / travel, 0, 1);
|
|
128
|
+
lastRatioRef.current = nextRatio;
|
|
129
|
+
setValueFromRatioRef.current(nextRatio);
|
|
130
|
+
},
|
|
131
|
+
onPanResponderRelease: () => {
|
|
132
|
+
setIsDraggingRef.current(false);
|
|
133
|
+
setValueFromRatioRef.current(lastRatioRef.current, true);
|
|
134
|
+
},
|
|
135
|
+
onPanResponderTerminate: () => {
|
|
136
|
+
setIsDraggingRef.current(false);
|
|
137
|
+
setValueFromRatioRef.current(lastRatioRef.current, true);
|
|
138
|
+
},
|
|
139
|
+
}),
|
|
140
|
+
[],
|
|
141
|
+
);
|
|
142
|
+
|
|
143
|
+
const thumbStyle = useMemo((): ViewStyle => {
|
|
144
|
+
const trackSize =
|
|
145
|
+
trackLayout == null
|
|
146
|
+
? 0
|
|
147
|
+
: orientation === 'horizontal'
|
|
148
|
+
? trackLayout.width
|
|
149
|
+
: trackLayout.height;
|
|
150
|
+
const offset = percentToThumbOffset(percent, trackSize, thumbSize);
|
|
151
|
+
|
|
152
|
+
if (orientation === 'vertical') {
|
|
153
|
+
return {
|
|
154
|
+
position: 'absolute',
|
|
155
|
+
left: '50%',
|
|
156
|
+
bottom: offset,
|
|
157
|
+
marginLeft: -thumbSize / 2,
|
|
158
|
+
zIndex: 2,
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
return {
|
|
163
|
+
position: 'absolute',
|
|
164
|
+
top: '50%',
|
|
165
|
+
left: offset,
|
|
166
|
+
transform: [{ translateY: -thumbSize / 2 }],
|
|
167
|
+
zIndex: 2,
|
|
168
|
+
};
|
|
169
|
+
}, [orientation, percent, thumbSize, trackLayout]);
|
|
170
|
+
|
|
171
|
+
const handleLayout = useCallback(
|
|
172
|
+
(event: LayoutChangeEvent) => {
|
|
173
|
+
const { width, height } = event.nativeEvent.layout;
|
|
174
|
+
const measured = orientation === 'horizontal' ? width : height;
|
|
175
|
+
if (measured > 0) {
|
|
176
|
+
setThumbSize(measured);
|
|
177
|
+
}
|
|
178
|
+
if (onLayout) {
|
|
179
|
+
onLayout(event);
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
[onLayout, orientation, setThumbSize],
|
|
183
|
+
);
|
|
184
|
+
|
|
185
|
+
const handlePointerDown = useCallback(
|
|
186
|
+
(event: GestureResponderEvent) => {
|
|
187
|
+
if (Platform.OS !== 'web' || isDisabled) {
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
event.preventDefault();
|
|
191
|
+
event.stopPropagation();
|
|
192
|
+
const { x, y } = getPointerCoords(event.nativeEvent);
|
|
193
|
+
startDrag(x, y, percentRef.current / 100);
|
|
194
|
+
},
|
|
195
|
+
[isDisabled, startDrag],
|
|
196
|
+
);
|
|
197
|
+
|
|
198
|
+
const isWeb = Platform.OS === 'web';
|
|
199
|
+
|
|
200
|
+
// Native drag is driven by PanResponder. Its `panHandlers` set the same
|
|
201
|
+
// responder props (`onResponderGrant/Move/Release`, etc.) that RN's
|
|
202
|
+
// `Pressable`/`Pressability` also set internally — and `Pressable` spreads
|
|
203
|
+
// its own handlers last, silently clobbering ours. So on native the thumb
|
|
204
|
+
// must be a plain `View` that carries `panHandlers` directly. Web keeps
|
|
205
|
+
// `Pressable` for its pointer-event, hover, and focus-ring behavior.
|
|
206
|
+
const Comp = asChild ? Slot : isWeb ? Pressable : View;
|
|
207
|
+
|
|
208
|
+
const setThumbRef = useCallback(
|
|
209
|
+
(node: ComponentRef<typeof Pressable> | null) => {
|
|
210
|
+
thumbRef.current = node;
|
|
211
|
+
assignRef(ref, node);
|
|
212
|
+
},
|
|
213
|
+
[ref, thumbRef],
|
|
214
|
+
);
|
|
215
|
+
|
|
216
|
+
const webInteractionProps: PressableProps = {
|
|
217
|
+
onPointerDown: handlePointerDown as unknown as PressableProps['onPointerDown'],
|
|
218
|
+
onHoverIn: composeEventHandlers(
|
|
219
|
+
onHoverIn,
|
|
220
|
+
composeEventHandlers(hoverProps.onHoverIn, () => setIsHovered(true)),
|
|
221
|
+
),
|
|
222
|
+
onHoverOut: composeEventHandlers(
|
|
223
|
+
onHoverOut,
|
|
224
|
+
composeEventHandlers(hoverProps.onHoverOut, () => setIsHovered(false)),
|
|
225
|
+
),
|
|
226
|
+
onPressIn: composeEventHandlers(onPressIn, pressableProps.onPressIn),
|
|
227
|
+
onPressOut: composeEventHandlers(onPressOut, pressableProps.onPressOut),
|
|
228
|
+
disabled: isDisabled,
|
|
229
|
+
tabIndex: -1,
|
|
230
|
+
};
|
|
231
|
+
|
|
232
|
+
return (
|
|
233
|
+
<Comp
|
|
234
|
+
ref={setThumbRef}
|
|
235
|
+
{...(props as PressableProps)}
|
|
236
|
+
{...(isWeb ? webInteractionProps : panResponder.panHandlers)}
|
|
237
|
+
onLayout={handleLayout}
|
|
238
|
+
onFocus={composeEventHandlers(
|
|
239
|
+
composeEventHandlers(onFocus as (...args: unknown[]) => unknown, focusProps.onFocus),
|
|
240
|
+
composeEventHandlers(focusRingProps.onFocus, () => setIsFocused(true)),
|
|
241
|
+
)}
|
|
242
|
+
onBlur={composeEventHandlers(
|
|
243
|
+
composeEventHandlers(onBlur as (...args: unknown[]) => unknown, focusProps.onBlur),
|
|
244
|
+
composeEventHandlers(focusRingProps.onBlur, () => setIsFocused(false)),
|
|
245
|
+
)}
|
|
246
|
+
style={[thumbStyle, style]}
|
|
247
|
+
accessibilityRole="none"
|
|
248
|
+
importantForAccessibility="no"
|
|
249
|
+
{...dataAttributes({
|
|
250
|
+
slot: 'slider-thumb',
|
|
251
|
+
hover: isHovered,
|
|
252
|
+
focus: isFocused,
|
|
253
|
+
focusVisible: isFocusVisible,
|
|
254
|
+
// On native there is no `Pressable`, so `usePress` never fires; the
|
|
255
|
+
// drag state stands in for "active" so the thumb still scales while
|
|
256
|
+
// the user is dragging (see `data-[active=true]:scale-105`).
|
|
257
|
+
active: isPressed || isDragging,
|
|
258
|
+
dragging: isDragging,
|
|
259
|
+
disabled: isDisabled,
|
|
260
|
+
})}
|
|
261
|
+
>
|
|
262
|
+
{children}
|
|
263
|
+
</Comp>
|
|
264
|
+
);
|
|
265
|
+
},
|
|
266
|
+
);
|
|
267
|
+
|
|
268
|
+
SliderThumb.displayName = 'SliderThumb';
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { RefObject } from 'react';
|
|
2
|
+
import type { View } from 'react-native';
|
|
3
|
+
import { createContext } from '@cdx-ui/utils';
|
|
4
|
+
import type { SliderOrientation } from './types';
|
|
5
|
+
|
|
6
|
+
export interface SliderTrackLayout {
|
|
7
|
+
readonly width: number;
|
|
8
|
+
readonly height: number;
|
|
9
|
+
readonly x: number;
|
|
10
|
+
readonly y: number;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface SliderContextValue {
|
|
14
|
+
readonly value: number;
|
|
15
|
+
readonly min: number;
|
|
16
|
+
readonly max: number;
|
|
17
|
+
readonly step: number;
|
|
18
|
+
readonly percent: number;
|
|
19
|
+
readonly orientation: SliderOrientation;
|
|
20
|
+
readonly isDisabled: boolean;
|
|
21
|
+
readonly isDragging: boolean;
|
|
22
|
+
readonly isHovered: boolean;
|
|
23
|
+
readonly isFocused: boolean;
|
|
24
|
+
readonly trackLayout: SliderTrackLayout | null;
|
|
25
|
+
readonly thumbSize: number;
|
|
26
|
+
readonly setValue: (value: number, complete?: boolean) => void;
|
|
27
|
+
readonly setValueFromRatio: (ratio: number, complete?: boolean) => void;
|
|
28
|
+
readonly setTrackLayout: (layout: SliderTrackLayout) => void;
|
|
29
|
+
readonly setThumbSize: (size: number) => void;
|
|
30
|
+
readonly setIsDragging: (dragging: boolean) => void;
|
|
31
|
+
readonly setIsHovered: (hovered: boolean) => void;
|
|
32
|
+
readonly setIsFocused: (focused: boolean) => void;
|
|
33
|
+
readonly getValueLabel: () => string;
|
|
34
|
+
readonly thumbRef: RefObject<View | null>;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export const [SliderProvider, useSliderContext] =
|
|
38
|
+
createContext<SliderContextValue>('SliderContext');
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type {
|
|
2
|
+
ISliderProps,
|
|
3
|
+
ISliderRailProps,
|
|
4
|
+
ISliderThumbProps,
|
|
5
|
+
SliderAccessibilityValue,
|
|
6
|
+
SliderOrientation,
|
|
7
|
+
} from './types';
|
|
8
|
+
export type { SliderContextValue, SliderTrackLayout } from './context';
|
|
9
|
+
export { useSliderContext } from './context';
|
|
10
|
+
export { SliderRoot, type SliderRootProps } from './SliderRoot';
|
|
11
|
+
export { SliderRail, type SliderRailProps } from './SliderRail';
|
|
12
|
+
export { SliderThumb, type SliderThumbProps } from './SliderThumb';
|
|
13
|
+
export {
|
|
14
|
+
getMarkerPositionStyle,
|
|
15
|
+
getMarkerStepValues,
|
|
16
|
+
percentToFillExtent,
|
|
17
|
+
SLIDER_MARKER_SIZE,
|
|
18
|
+
valueToPercent,
|
|
19
|
+
} from './utils';
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { PressableProps, ViewProps } from 'react-native';
|
|
3
|
+
|
|
4
|
+
export type SliderOrientation = 'horizontal' | 'vertical';
|
|
5
|
+
|
|
6
|
+
export type SliderAccessibilityValue = NonNullable<ViewProps['accessibilityValue']>;
|
|
7
|
+
|
|
8
|
+
export interface InterfaceSliderProps extends Omit<ViewProps, 'children' | 'accessibilityValue'> {
|
|
9
|
+
readonly value?: number;
|
|
10
|
+
readonly defaultValue?: number;
|
|
11
|
+
readonly onChange?: (value: number) => void;
|
|
12
|
+
readonly onChangeComplete?: (value: number) => void;
|
|
13
|
+
readonly min?: number;
|
|
14
|
+
readonly max?: number;
|
|
15
|
+
readonly step?: number;
|
|
16
|
+
readonly isDisabled?: boolean;
|
|
17
|
+
readonly orientation?: SliderOrientation;
|
|
18
|
+
/**
|
|
19
|
+
* Screen reader label when there is no visible label.
|
|
20
|
+
*/
|
|
21
|
+
readonly accessibilityLabel?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Screen reader value for the slider. Merged with derived `min`, `max`, `now`, and formatted
|
|
24
|
+
* `text` when fields are omitted. `text` overrides the numeric announcement when set.
|
|
25
|
+
*/
|
|
26
|
+
readonly accessibilityValue?: SliderAccessibilityValue;
|
|
27
|
+
readonly children?: ReactNode;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export type ISliderProps = InterfaceSliderProps;
|
|
31
|
+
|
|
32
|
+
export interface InterfaceSliderRailProps extends ViewProps {
|
|
33
|
+
readonly asChild?: boolean;
|
|
34
|
+
readonly children?: ReactNode;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export type ISliderRailProps = InterfaceSliderRailProps;
|
|
38
|
+
|
|
39
|
+
export interface InterfaceSliderThumbProps extends PressableProps {
|
|
40
|
+
readonly asChild?: boolean;
|
|
41
|
+
readonly children?: ReactNode;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export type ISliderThumbProps = InterfaceSliderThumbProps;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef } from 'react';
|
|
2
|
+
import { Platform } from 'react-native';
|
|
3
|
+
import type { SliderTrackLayout } from './context';
|
|
4
|
+
import type { SliderOrientation } from './types';
|
|
5
|
+
import { clamp, getThumbTravel, pointerCoordToRatio, pointerCoordToVerticalRatio } from './utils';
|
|
6
|
+
|
|
7
|
+
export function getPointerCoords(nativeEvent: {
|
|
8
|
+
pageX?: number;
|
|
9
|
+
pageY?: number;
|
|
10
|
+
clientX?: number;
|
|
11
|
+
clientY?: number;
|
|
12
|
+
}): { x: number; y: number } {
|
|
13
|
+
if (Platform.OS === 'web' && nativeEvent.clientX != null && nativeEvent.clientY != null) {
|
|
14
|
+
return { x: nativeEvent.clientX, y: nativeEvent.clientY };
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
return {
|
|
18
|
+
x: nativeEvent.pageX ?? 0,
|
|
19
|
+
y: nativeEvent.pageY ?? 0,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export function getRatioFromPagePoint(
|
|
24
|
+
pageX: number,
|
|
25
|
+
pageY: number,
|
|
26
|
+
trackLayout: SliderTrackLayout | null,
|
|
27
|
+
orientation: SliderOrientation,
|
|
28
|
+
thumbSize: number,
|
|
29
|
+
): number {
|
|
30
|
+
if (!trackLayout) {
|
|
31
|
+
return 0;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
if (orientation === 'horizontal') {
|
|
35
|
+
return pointerCoordToRatio(pageX, trackLayout.x, trackLayout.width, thumbSize);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return pointerCoordToVerticalRatio(pageY, trackLayout.y, trackLayout.height, thumbSize);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
interface WebDragContext {
|
|
42
|
+
readonly startPointer: number;
|
|
43
|
+
readonly startRatio: number;
|
|
44
|
+
readonly travel: number;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export function useWebSliderDrag({
|
|
48
|
+
isDisabled,
|
|
49
|
+
setIsDragging,
|
|
50
|
+
setValueFromRatio,
|
|
51
|
+
trackLayout,
|
|
52
|
+
orientation,
|
|
53
|
+
thumbSize,
|
|
54
|
+
}: {
|
|
55
|
+
isDisabled: boolean;
|
|
56
|
+
setIsDragging: (dragging: boolean) => void;
|
|
57
|
+
setValueFromRatio: (ratio: number, complete?: boolean) => void;
|
|
58
|
+
trackLayout: SliderTrackLayout | null;
|
|
59
|
+
orientation: SliderOrientation;
|
|
60
|
+
thumbSize: number;
|
|
61
|
+
}) {
|
|
62
|
+
const draggingRef = useRef(false);
|
|
63
|
+
const lastRatioRef = useRef(0);
|
|
64
|
+
const dragContextRef = useRef<WebDragContext | null>(null);
|
|
65
|
+
const cleanupRef = useRef<(() => void) | null>(null);
|
|
66
|
+
|
|
67
|
+
useEffect(() => {
|
|
68
|
+
return () => {
|
|
69
|
+
cleanupRef.current?.();
|
|
70
|
+
cleanupRef.current = null;
|
|
71
|
+
};
|
|
72
|
+
}, []);
|
|
73
|
+
|
|
74
|
+
const endDrag = useCallback(() => {
|
|
75
|
+
if (!draggingRef.current) {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
draggingRef.current = false;
|
|
79
|
+
dragContextRef.current = null;
|
|
80
|
+
setIsDragging(false);
|
|
81
|
+
setValueFromRatio(lastRatioRef.current, true);
|
|
82
|
+
}, [setIsDragging, setValueFromRatio]);
|
|
83
|
+
|
|
84
|
+
const startDrag = useCallback(
|
|
85
|
+
(
|
|
86
|
+
pageX: number,
|
|
87
|
+
pageY: number,
|
|
88
|
+
anchorRatio?: number,
|
|
89
|
+
trackLayoutOverride?: SliderTrackLayout,
|
|
90
|
+
) => {
|
|
91
|
+
if (isDisabled || Platform.OS !== 'web' || typeof window === 'undefined') {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
const layout = trackLayoutOverride ?? trackLayout;
|
|
96
|
+
if (!layout) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
const trackSize = orientation === 'horizontal' ? layout.width : layout.height;
|
|
101
|
+
const travel = getThumbTravel(trackSize, thumbSize);
|
|
102
|
+
if (travel <= 0) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
const startPointer = orientation === 'horizontal' ? pageX : pageY;
|
|
107
|
+
const startRatio =
|
|
108
|
+
anchorRatio != null
|
|
109
|
+
? clamp(anchorRatio, 0, 1)
|
|
110
|
+
: getRatioFromPagePoint(pageX, pageY, layout, orientation, thumbSize);
|
|
111
|
+
|
|
112
|
+
lastRatioRef.current = startRatio;
|
|
113
|
+
draggingRef.current = true;
|
|
114
|
+
dragContextRef.current = { startPointer, startRatio, travel };
|
|
115
|
+
setIsDragging(true);
|
|
116
|
+
setValueFromRatio(startRatio);
|
|
117
|
+
|
|
118
|
+
const onMove = (event: PointerEvent) => {
|
|
119
|
+
if (!draggingRef.current || !dragContextRef.current) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
event.preventDefault();
|
|
123
|
+
const pointer = orientation === 'horizontal' ? event.clientX : event.clientY;
|
|
124
|
+
const delta = pointer - dragContextRef.current.startPointer;
|
|
125
|
+
const deltaAlongTrack = orientation === 'horizontal' ? delta : -delta;
|
|
126
|
+
const nextRatio = clamp(
|
|
127
|
+
dragContextRef.current.startRatio + deltaAlongTrack / dragContextRef.current.travel,
|
|
128
|
+
0,
|
|
129
|
+
1,
|
|
130
|
+
);
|
|
131
|
+
lastRatioRef.current = nextRatio;
|
|
132
|
+
setValueFromRatio(nextRatio);
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
const onUp = () => {
|
|
136
|
+
cleanupRef.current = null;
|
|
137
|
+
window.removeEventListener('pointermove', onMove);
|
|
138
|
+
window.removeEventListener('pointerup', onUp);
|
|
139
|
+
window.removeEventListener('pointercancel', onUp);
|
|
140
|
+
endDrag();
|
|
141
|
+
};
|
|
142
|
+
|
|
143
|
+
window.addEventListener('pointermove', onMove);
|
|
144
|
+
window.addEventListener('pointerup', onUp);
|
|
145
|
+
window.addEventListener('pointercancel', onUp);
|
|
146
|
+
|
|
147
|
+
cleanupRef.current = () => {
|
|
148
|
+
window.removeEventListener('pointermove', onMove);
|
|
149
|
+
window.removeEventListener('pointerup', onUp);
|
|
150
|
+
window.removeEventListener('pointercancel', onUp);
|
|
151
|
+
};
|
|
152
|
+
},
|
|
153
|
+
[endDrag, isDisabled, orientation, setIsDragging, setValueFromRatio, thumbSize, trackLayout],
|
|
154
|
+
);
|
|
155
|
+
|
|
156
|
+
return { startDrag };
|
|
157
|
+
}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import type { ViewStyle } from 'react-native';
|
|
2
|
+
import type { SliderTrackLayout } from './context';
|
|
3
|
+
import type { SliderOrientation } from './types';
|
|
4
|
+
|
|
5
|
+
type PercentString = `${number}%`;
|
|
6
|
+
|
|
7
|
+
function toPercentDimension(percent: number): PercentString {
|
|
8
|
+
return `${String(percent)}%` as PercentString;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const SLIDER_MARKER_SIZE = 3;
|
|
12
|
+
|
|
13
|
+
export function clamp(value: number, min: number, max: number): number {
|
|
14
|
+
return Math.min(max, Math.max(min, value));
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export function getThumbTravel(trackSize: number, _thumbSize: number): number {
|
|
18
|
+
return Math.max(trackSize, 0);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/** Thumb leading-edge offset along the track axis (center-based). */
|
|
22
|
+
export function percentToThumbOffset(
|
|
23
|
+
percent: number,
|
|
24
|
+
trackSize: number,
|
|
25
|
+
thumbSize: number,
|
|
26
|
+
): number {
|
|
27
|
+
if (trackSize <= 0) return 0;
|
|
28
|
+
return (clamp(percent, 0, 100) / 100) * trackSize - thumbSize / 2;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** Filled track extent to the thumb center. */
|
|
32
|
+
export function percentToFillExtent(
|
|
33
|
+
percent: number,
|
|
34
|
+
trackSize: number,
|
|
35
|
+
_thumbSize: number,
|
|
36
|
+
): number {
|
|
37
|
+
if (trackSize <= 0) return 0;
|
|
38
|
+
return (clamp(percent, 0, 100) / 100) * trackSize;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/** Map a pointer coordinate on the track axis to a 0–1 ratio. */
|
|
42
|
+
export function pointerCoordToRatio(
|
|
43
|
+
pointerCoord: number,
|
|
44
|
+
trackStart: number,
|
|
45
|
+
trackSize: number,
|
|
46
|
+
_thumbSize: number,
|
|
47
|
+
): number {
|
|
48
|
+
if (trackSize <= 0) {
|
|
49
|
+
return 0;
|
|
50
|
+
}
|
|
51
|
+
return clamp((pointerCoord - trackStart) / trackSize, 0, 1);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/** Vertical slider: bottom = min (0), top = max (1). */
|
|
55
|
+
export function pointerCoordToVerticalRatio(
|
|
56
|
+
pointerCoord: number,
|
|
57
|
+
trackStart: number,
|
|
58
|
+
trackSize: number,
|
|
59
|
+
_thumbSize: number,
|
|
60
|
+
): number {
|
|
61
|
+
if (trackSize <= 0) {
|
|
62
|
+
return 0;
|
|
63
|
+
}
|
|
64
|
+
return clamp((trackStart + trackSize - pointerCoord) / trackSize, 0, 1);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export function snapToStep(value: number, min: number, max: number, step: number): number {
|
|
68
|
+
if (step <= 0) {
|
|
69
|
+
return clamp(value, min, max);
|
|
70
|
+
}
|
|
71
|
+
const stepped = min + Math.round((value - min) / step) * step;
|
|
72
|
+
return clamp(stepped, min, max);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export function valueToPercent(value: number, min: number, max: number): number {
|
|
76
|
+
if (max <= min) {
|
|
77
|
+
return 0;
|
|
78
|
+
}
|
|
79
|
+
return ((clamp(value, min, max) - min) / (max - min)) * 100;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export function percentToValue(percent: number, min: number, max: number, step: number): number {
|
|
83
|
+
const ratio = clamp(percent, 0, 100) / 100;
|
|
84
|
+
return snapToStep(min + ratio * (max - min), min, max, step);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export function formatSliderValue(value: number): string {
|
|
88
|
+
return Number.isInteger(value) ? String(value) : value.toFixed(1);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export function getMarkerStepValues(min: number, max: number, step: number): number[] {
|
|
92
|
+
if (step <= 0 || max <= min) {
|
|
93
|
+
return [];
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const decimals = getDecimalPlaces(step);
|
|
97
|
+
const stepCount = Math.floor((max - min) / step);
|
|
98
|
+
const values = Array.from({ length: stepCount + 1 }, (_, index) =>
|
|
99
|
+
roundTo(min + index * step, decimals),
|
|
100
|
+
);
|
|
101
|
+
if (values[values.length - 1] < max) {
|
|
102
|
+
values.push(max);
|
|
103
|
+
}
|
|
104
|
+
return values;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function getDecimalPlaces(n: number): number {
|
|
108
|
+
const str = String(n);
|
|
109
|
+
const dotIndex = str.indexOf('.');
|
|
110
|
+
return dotIndex === -1 ? 0 : str.length - dotIndex - 1;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
function roundTo(value: number, decimals: number): number {
|
|
114
|
+
const factor = 10 ** decimals;
|
|
115
|
+
return Math.round(value * factor) / factor;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/** Marker leading-edge offset (center-aligned to the thumb coordinate system). */
|
|
119
|
+
export function percentToMarkerCenterOffset(
|
|
120
|
+
percent: number,
|
|
121
|
+
trackSize: number,
|
|
122
|
+
markerSize = SLIDER_MARKER_SIZE,
|
|
123
|
+
): number {
|
|
124
|
+
if (trackSize <= 0) return 0;
|
|
125
|
+
return (clamp(percent, 0, 100) / 100) * trackSize - markerSize / 2;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export function getMarkerPositionStyle(
|
|
129
|
+
percent: number,
|
|
130
|
+
orientation: SliderOrientation,
|
|
131
|
+
trackLayout: SliderTrackLayout | null,
|
|
132
|
+
_thumbSize: number,
|
|
133
|
+
markerSize = SLIDER_MARKER_SIZE,
|
|
134
|
+
): ViewStyle {
|
|
135
|
+
const trackSize =
|
|
136
|
+
trackLayout == null ? 0 : orientation === 'horizontal' ? trackLayout.width : trackLayout.height;
|
|
137
|
+
|
|
138
|
+
if (trackSize > 0) {
|
|
139
|
+
const offset = percentToMarkerCenterOffset(percent, trackSize, markerSize);
|
|
140
|
+
if (orientation === 'vertical') {
|
|
141
|
+
return {
|
|
142
|
+
position: 'absolute',
|
|
143
|
+
left: '50%',
|
|
144
|
+
bottom: offset,
|
|
145
|
+
width: markerSize,
|
|
146
|
+
height: markerSize,
|
|
147
|
+
marginLeft: -markerSize / 2,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
return {
|
|
151
|
+
position: 'absolute',
|
|
152
|
+
top: '50%',
|
|
153
|
+
left: offset,
|
|
154
|
+
width: markerSize,
|
|
155
|
+
height: markerSize,
|
|
156
|
+
marginTop: -markerSize / 2,
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
if (orientation === 'vertical') {
|
|
161
|
+
return {
|
|
162
|
+
position: 'absolute',
|
|
163
|
+
left: '50%',
|
|
164
|
+
bottom: toPercentDimension(percent),
|
|
165
|
+
width: markerSize,
|
|
166
|
+
height: markerSize,
|
|
167
|
+
marginLeft: -markerSize / 2,
|
|
168
|
+
transform: [{ translateY: markerSize / 2 }],
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
return {
|
|
173
|
+
position: 'absolute',
|
|
174
|
+
top: '50%',
|
|
175
|
+
left: toPercentDimension(percent),
|
|
176
|
+
width: markerSize,
|
|
177
|
+
height: markerSize,
|
|
178
|
+
marginTop: -markerSize / 2,
|
|
179
|
+
transform: [{ translateX: -markerSize / 2 }],
|
|
180
|
+
};
|
|
181
|
+
}
|