2 lines
2.2 KiB
JavaScript
2 lines
2.2 KiB
JavaScript
import{d as E,aK as V,r as f,a1 as I,aI as o,aP as W,C as h,aQ as F,aX as M}from"./vNwORUzZ.js";var Q=function(t,l){var c={};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&l.indexOf(a)<0&&(c[a]=t[a]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,a=Object.getOwnPropertySymbols(t);n<a.length;n++)l.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(t,a[n])&&(c[a[n]]=t[a[n]]);return c};const R={prefixCls:String,name:String,id:String,type:String,defaultChecked:{type:[Boolean,Number],default:void 0},checked:{type:[Boolean,Number],default:void 0},disabled:Boolean,tabindex:{type:[Number,String]},readonly:Boolean,autofocus:Boolean,value:M.any,required:Boolean},X=E({compatConfig:{MODE:3},name:"Checkbox",inheritAttrs:!1,props:V(R,{prefixCls:"rc-checkbox",type:"checkbox",defaultChecked:!1}),emits:["click","change"],setup(t,l){let{attrs:c,emit:a,expose:n}=l;const d=f(t.checked===void 0?t.defaultChecked:t.checked),s=f();I(()=>t.checked,()=>{d.value=t.checked}),n({focus(){var e;(e=s.value)===null||e===void 0||e.focus()},blur(){var e;(e=s.value)===null||e===void 0||e.blur()}});const i=f(),y=e=>{if(t.disabled)return;t.checked===void 0&&(d.value=e.target.checked),e.shiftKey=i.value;const u={target:o(o({},t),{checked:e.target.checked}),stopPropagation(){e.stopPropagation()},preventDefault(){e.preventDefault()},nativeEvent:e};t.checked!==void 0&&(s.value.checked=!!t.checked),a("change",u),i.value=!1},k=e=>{a("click",e),i.value=e.shiftKey};return()=>{const{prefixCls:e,name:u,id:g,type:m,disabled:b,readonly:x,tabindex:C,autofocus:O,value:P,required:S}=t,_=Q(t,["prefixCls","name","id","type","disabled","readonly","tabindex","autofocus","value","required"]),{class:j,onFocus:B,onBlur:K,onKeydown:N,onKeypress:w,onKeyup:D}=c,v=o(o({},_),c),$=Object.keys(v).reduce((p,r)=>((r.startsWith("data-")||r.startsWith("aria-")||r==="role")&&(p[r]=v[r]),p),{}),q=W(e,j,{[`${e}-checked`]:d.value,[`${e}-disabled`]:b}),A=o(o({name:u,id:g,type:m,readonly:x,disabled:b,tabindex:C,class:`${e}-input`,checked:!!d.value,autofocus:O,value:P},$),{onChange:y,onClick:k,onFocus:B,onBlur:K,onKeydown:N,onKeypress:w,onKeyup:D,required:S});return h("span",{class:q},[h("input",F({ref:s},A),null),h("span",{class:`${e}-inner`},null)])}}});export{X as V};
|