mirror of
https://github.com/beak-insights/felicity-lims.git
synced 2025-02-24 17:02:55 +08:00
1 line
1.6 KiB
JavaScript
1 line
1.6 KiB
JavaScript
import{k as i,o as d,c as s,b as l,y as t,t as c}from"./index-e48f6898.js";const u=["for"],m=["id","name","checked"],g=["for"],f={__name:"FelSwitch",props:{modelValue:{type:Boolean,default:!1},label:{type:String,default:""},name:{type:String,default:"toggle"},id:{type:String,default:()=>`toggle-${Math.random().toString(36).substr(2,9)}`},reverse:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(e,{emit:o}){const n=o,r=a=>{n("update:modelValue",a.target.checked)};return(a,b)=>(d(),s("div",{class:t(["flex items-center",[e.reverse?"flex-row-reverse justify-end":"gap-x-3"]])},[l("label",{for:e.id,class:t(["text-medium text-gray-700 flex items-center",[e.reverse?"gap-x-reverse gap-x-2":"gap-x-2"]])},[l("div",{class:t(["relative inline-block w-8 align-middle select-none transition duration-200 ease-in",[e.reverse?"order-first":"order-last"]])},[l("input",{id:e.id,name:e.name,type:"checkbox",checked:e.modelValue,onChange:r,class:t(["toggle-checkbox absolute block w-4 h-4 rounded-full bg-white border-4 border-gray-300 appearance-none cursor-pointer outline-none transition duration-200 ease-in",{"translate-x-full":e.modelValue,"border-blue-500":e.modelValue,"bg-white border-gray-300":!e.modelValue}])},null,42,m),l("label",{for:e.id,class:t(["toggle-label block overflow-hidden h-4 rounded-full cursor-pointer",{"bg-blue-300":e.modelValue,"bg-gray-300":!e.modelValue}])},null,10,g)],2),l("span",null,c(e.label),1)],10,u)],2))}},x=i(f,[["__file","/home/aurthurm/Documents/Development/felicity/felicity-lims/webapp/components/ui/switch/FelSwitch.vue"]]);export{x as default};
|