retro-react
Version:
A React component library for building retro-style websites
2 lines (1 loc) • 992 B
JavaScript
"use strict";var e=require("../../_virtual/_tslib.js"),s=require("react"),i=require("../../node_modules/@theme-ui/core/jsx-runtime/dist/theme-ui-core-jsx-runtime.esm.js"),a=require("../../utils/classNames.js"),r=require("../../constants/commonClassNames.js"),t=require("./Switch.styled.js");const c=s.forwardRef(((s,c)=>{var{id:d,sx:l,className:o,size:n="medium",variant:h="rounded",color:m="primary",disabled:u=!1,toggled:w,onChange:j}=s,g=e.__rest(s,["id","sx","className","size","variant","color","disabled","toggled","onChange"]);return i.jsxs(t.Switch,Object.assign({ref:c,id:d,sx:l,className:a.classNames("switch-root",o,r.default),$disabled:u,$size:n},g,{children:[i.jsx(t.SwitchInput,{type:"checkbox",checked:w,onChange:j,disabled:u,className:"switch-input",role:"switch","aria-checked":w,"aria-label":"Toggle switch"},void 0),i.jsx(t.SwitchSlider,{className:`switch-${h}-slider`,$variant:h,$color:m,$size:n,$disabled:u},void 0)]}),void 0)}));c.displayName="Switch",exports.Switch=c;