UNPKG

@nurl/panda-preset

Version:

Official Panda-CSS preset for the Ganglion Design System.

101 lines 2.21 kB
// src/recipes/switch.ts import { defineSlotRecipe } from "@pandacss/dev"; import { focusStates } from "./shared/states.js"; var switchInput = defineSlotRecipe({ className: "switch-input", description: "The styles for the SwitchInput component", slots: ["root", "track", "control", "thumb"], base: { root: { // just use the hstack recipe userSelect: "none", _invalid: { color: "danger.text.200" }, _disabled: { opacity: 0.5, cursor: "not-allowed" } }, track: { alignItems: "center", bgColor: "inherit", display: "flex", justifyContent: "flex-start", rounded: "full", outline: "1px solid", outlineColor: "action.border.initial", overflow: "hidden", transition: "all 200ms ease-in-out", _groupChecked: { bgColor: "action.bg.initial" }, _groupInvalid: { outlineColor: "danger.border.initial", _groupChecked: { bgColor: "danger.bg.initial" } } }, control: { display: "none", h: "full", w: "full", rounded: "full", ...focusStates }, thumb: { bgColor: "action.text.100", rounded: "full", shadow: "sm", scale: 0.6, transformOrigin: "center", transition: "all 150ms ease-in-out", willChange: "transform, scale, background-color", _peerInvalid: { bgColor: "danger.bg.initial", _groupChecked: { bgColor: "danger.text.inverse" } }, _peerChecked: { bgColor: "action.text.initial", scale: 1, transform: "translate3d(130%, 0, 0)" } } }, variants: { size: { sm: { track: { h: "1rem", pxi: "2px", w: "2rem" }, thumb: { h: "0.75rem", w: "0.75rem" } }, lg: { track: { h: "1.5rem", pxi: "3px", w: "3rem" }, thumb: { h: "1.125rem", w: "1.125rem" } } } }, defaultVariants: { size: "lg" } }); export { switchInput }; //# sourceMappingURL=switch.js.map