1import{ac as se,d as K,S as s,U as j,aZ as E,r as U,C as B,aY as H,ab as be,ay as F,b4 as l,L as u,M as a,O as ue,P as he,Q as S,aa as C,gO as fe,ad as ve,gP as ke,gQ as ge,af as me,aE as xe,V as L,X as pe,Y as N,Z as Ce,gL as ye,gR as we}from"./index-DS-iK04M.js";const O=se("n-checkbox-group"),Re={min:Number,max:Number,size:String,value:Array,defaultValue:{type:Array,default:null},disabled:{type:Boolean,default:void 0},"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onChange:[Function,Array]},Me=K({name:"CheckboxGroup",props:Re,setup(o){const{mergedClsPrefixRef:i}=j(o),m=E(o),{mergedSizeRef:y,mergedDisabledRef:w}=m,x=U(o.defaultValue),T=B(()=>o.value),h=H(T,x),D=B(()=>{var b;return((b=h.value)===null||b===void 0?void 0:b.length)||0}),r=B(()=>Array.isArray(h.value)?new Set(h.value):new Set);function R(b,n){const{nTriggerFormInput:p,nTriggerFormChange:f}=m,{onChange:c,"onUpdate:value":v,onUpdateValue:k}=o;if(Array.isArray(h.value)){const t=Array.from(h.value),A=t.findIndex(I=>I===n);b?~A||(t.push(n),k&&l(k,t,{actionType:"check",value:n}),v&&l(v,t,{actionType:"check",value:n}),p(),f(),x.value=t,c&&l(c,t)):~A&&(t.splice(A,1),k&&l(k,t,{actionType:"uncheck",value:n}),v&&l(v,t,{actionType:"uncheck",value:n}),c&&l(c,t),x.value=t,p(),f())}else b?(k&&l(k,[n],{actionType:"check",value:n}),v&&l(v,[n],{actionType:"check",value:n}),c&&l(c,[n]),x.value=[n],p(),f()):(k&&l(k,[],{actionType:"uncheck",value:n}),v&&l(v,[],{actionType:"uncheck",value:n}),c&&l(c,[]),x.value=[],p(),f())}return be(O,{checkedCountRef:D,maxRef:F(o,"max"),minRef:F(o,"min"),valueSetRef:r,disabledRef:w,mergedSizeRef:y,toggleCheckbox:R}),{mergedClsPrefix:i}},render(){return s("div",{class:`${this.mergedClsPrefix}-checkbox-group`,role:"group"},this.$slots)}}),ze=()=>s("svg",{viewBox:"0 0 64 64",class:"check-icon"},s("path",{d:"M50.42,16.76L22.34,39.45l-8.1-11.46c-1.12-1.58-3.3-1.96-4.88-0.84c-1.58,1.12-1.95,3.3-0.84,4.88l10.26,14.51 c0.56,0.79,1.42,1.31,2.38,1.45c0.16,0.02,0.32,0.03,0.48,0.03c0.8,0,1.57-0.27,2.2-0.78l30.99-25.03c1.5-1.21,1.74-3.42,0.52-4.92 C54.13,15.78,51.93,15.55,50.42,16.76z"})),Se=()=>s("svg",{viewBox:"0 0 100 100",class:"line-icon"},s("path",{d:"M80.2,55.5H21.4c-2.8,0-5.1-2.5-5.1-5.5l0,0c0-3,2.3-5.5,5.1-5.5h58.7c2.8,0,5.1,2.5,5.1,5.5l0,0C85.2,53.1,82.9,55.5,80.2,55.5z"})),Te=u([a("checkbox",` 2 font-size: var(--n-font-size); 3 outline: none; 4 cursor: pointer; 5 display: inline-flex; 6 flex-wrap: nowrap; 7 align-items: flex-start; 8 word-break: break-word; 9 line-height: var(--n-size); 10 --n-merged-color-table: var(--n-color-table); 11 `,[S("show-label","line-height: var(--n-label-line-height);"),u("&:hover",[a("checkbox-box",[C("border","border: var(--n-border-checked);")])]),u("&:focus:not(:active)",[a("checkbox-box",[C("border",` 12 border: var(--n-border-focus); 13 box-shadow: var(--n-box-shadow-focus); 14 `)])]),S("inside-table",[a("checkbox-box",` 15 background-color: var(--n-merged-color-table); 16 `)]),S("checked",[a("checkbox-box",` 17 background-color: var(--n-color-checked); 18 `,[a("checkbox-icon",[u(".check-icon",` 19 opacity: 1; 20 transform: scale(1); 21 `)])])]),S("indeterminate",[a("checkbox-box",[a("checkbox-icon",[u(".check-icon",` 22 opacity: 0; 23 transform: scale(.5); 24 `),u(".line-icon",` 25 opacity: 1; 26 transform: scale(1); 27 `)])])]),S("checked, indeterminate",[u("&:focus:not(:active)",[a("checkbox-box",[C("border",` 28 border: var(--n-border-checked); 29 box-shadow: var(--n-box-shadow-focus); 30 `)])]),a("checkbox-box",` 31 background-color: var(--n-color-checked); 32 border-left: 0; 33 border-top: 0; 34 `,[C("border",{border:"var(--n-border-checked)"})])]),S("disabled",{cursor:"not-allowed"},[S("checked",[a("checkbox-box",` 35 background-color: var(--n-color-disabled-checked); 36 `,[C("border",{border:"var(--n-border-disabled-checked)"}),a("checkbox-icon",[u(".check-icon, .line-icon",{fill:"var(--n-check-mark-color-disabled-checked)"})])])]),a("checkbox-box",` 37 background-color: var(--n-color-disabled); 38 `,[C("border",` 39 border: var(--n-border-disabled); 40 `),a("checkbox-icon",[u(".check-icon, .line-icon",` 41 fill: var(--n-check-mark-color-disabled); 42 `)])]),C("label",` 43 color: var(--n-text-color-disabled); 44 `)]),a("checkbox-box-wrapper",` 45 position: relative; 46 width: var(--n-size); 47 flex-shrink: 0; 48 flex-grow: 0; 49 user-select: none; 50 -webkit-user-select: none; 51 `),a("checkbox-box",` 52 position: absolute; 53 left: 0; 54 top: 50%; 55 transform: translateY(-50%); 56 height: var(--n-size); 57 width: var(--n-size); 58 display: inline-block; 59 box-sizing: border-box; 60 border-radius: var(--n-border-radius); 61 background-color: var(--n-color); 62 transition: background-color 0.3s var(--n-bezier); 63 `,[C("border",` 64 transition: 65 border-color .3s var(--n-bezier), 66 box-shadow .3s var(--n-bezier); 67 border-radius: inherit; 68 position: absolute; 69 left: 0; 70 right: 0; 71 top: 0; 72 bottom: 0; 73 border: var(--n-border); 74 `),a("checkbox-icon",`
75 display: flex; 76 align-items: center; 77 justify-content: center; 78 position: absolute; 79 left: 1px; 80 right: 1px; 81 top: 1px; 82 bottom: 1px; 83 `,[u(".check-icon, .line-icon",` 84 width: 100%; 85 fill: var(--n-check-mark-color); 86 opacity: 0; 87 transform: scale(0.5); 88 transform-origin: center; 89 transition: 90 fill 0.3s var(--n-bezier), 91 transform 0.3s var(--n-bezier), 92 opacity 0.3s var(--n-bezier), 93 border-color 0.3s var(--n-bezier); 94 `),fe({left:"1px",top:"1px"})])]),C("label",` 95 color: var(--n-text-color); 96 transition: color .3s var(--n-bezier); 97 user-select: none; 98 -webkit-user-select: none; 99 padding: var(--n-label-padding); 100 font-weight: var(--n-label-font-weight); 101 `,[u("&:empty",{display:"none"})])]),ue(a("checkbox",` 102 --n-merged-color-table: var(--n-color-table-modal); 103 `)),he(a("checkbox",` 104 --n-merged-color-table: var(--n-color-table-popover); 105 `))]),De=Object.assign(Object.assign({},L.props),{size:String,checked:{type:[Boolean,String,Number],default:void 0},defaultChecked:{type:[Boolean,String,Number],default:!1},value:[String,Number],disabled:{type:Boolean,default:void 0},indeterminate:Boolean,label:String,focusable:{type:Boolean,default:!0},checkedValue:{type:[Boolean,String,Number],default:!0},uncheckedValue:{type:[Boolean,String,Number],default:!1},"onUpdate:checked":[Function,Array],onUpdateChecked:[Function,Array],privateInsideTable:Boolean,onChange:[Function,Array]}),_e=K({name:"Checkbox",props:De,setup(o){const i=me(O,null),m=U(null),{mergedClsPrefixRef:y,inlineThemeDisabled:w,mergedRtlRef:x}=j(o),T=U(o.defaultChecked),h=F(o,"checked"),D=H(h,T),r=xe(()=>{if(i){const e=i.valueSetRef.value;return e&&o.value!==void 0?e.has(o.value):!1}else return D.value===o.checkedValue}),R=E(o,{mergedSize(e){const{size:g}=o;if(g!==void 0)return g;if(i){const{value:d}=i.mergedSizeRef;if(d!==void 0)return d}if(e){const{mergedSize:d}=e;if(d!==void 0)return d.value}return"medium"},mergedDisabled(e){const{disabled:g}=o;if(g!==void 0)return g;if(i){if(i.disabledRef.value)return!0;const{maxRef:{value:d},checkedCountRef:z}=i;if(d!==void 0&&z.value>=d&&!r.value)return!0;const{minRef:{value:M}}=i;if(M!==void 0&&z.value<=M&&r.value)return!0}return e?e.disabled.value:!1}}),{mergedDisabledRef:b,mergedSizeRef:n}=R,p=L("Checkbox","-checkbox",Te,we,o,y);function f(e){if(i&&o.value!==void 0)i.toggleCheckbox(!r.value,o.value);
105else{const{onChange:g,"onUpdate:checked":d,onUpdateChecked:z}=o,{nTriggerFormInput:M,nTriggerFormChange:P}=R,_=r.value?o.uncheckedValue:o.checkedValue;d&&l(d,_,e),z&&l(z,_,e),g&&l(g,_,e),M(),P(),T.value=_}}function c(e){b.value||f(e)}function v(e){if(!b.value)switch(e.key){case" ":case"Enter":f(e)}}function k(e){switch(e.key){case" ":e.preventDefault()}}const t={focus:()=>{var e;(e=m.value)===null||e===void 0||e.focus()},blur:()=>{var e;(e=m.value)===null||e===void 0||e.blur()}},A=pe("Checkbox",x,y),I=B(()=>{const{value:e}=n,{common:{cubicBezierEaseInOut:g},self:{borderRadius:d,color:z,colorChecked:M,colorDisabled:P,colorTableHeader:_,colorTableHeaderModal:V,colorTableHeaderPopover:G,checkMarkColor:Y,checkMarkColorDisabled:Q,border:W,borderFocus:Z,borderDisabled:X,borderChecked:q,boxShadowFocus:J,textColor:ee,textColorDisabled:oe,checkMarkColorDisabledChecked:re,colorDisabledChecked:ne,borderDisabledChecked:ae,labelPadding:ce,labelLineHeight:le,labelFontWeight:ie,[N("fontSize",e)]:te,[N("size",e)]:de}}=p.value;return{"--n-label-line-height":le,"--n-label-font-weight":ie,"--n-size":de,"--n-bezier":g,"--n-border-radius":d,"--n-border":W,"--n-border-checked":q,"--n-border-focus":Z,"--n-border-disabled":X,"--n-border-disabled-checked":ae,"--n-box-shadow-focus":J,"--n-color":z,"--n-color-checked":M,"--n-color-table":_,"--n-color-table-modal":V,"--n-color-table-popover":G,"--n-color-disabled":P,"--n-color-disabled-checked":ne,"--n-text-color":ee,"--n-text-color-disabled":oe,"--n-check-mark-color":Y,"--n-check-mark-color-disabled":Q,"--n-check-mark-color-disabled-checked":re,"--n-font-size":te,"--n-label-padding":ce}}),$=w?Ce("checkbox",B(()=>n.value[0]),I,o):void 0;return Object.assign(R,t,{rtlEnabled:A,selfRef:m,mergedClsPrefix:y,mergedDisabled:b,renderedChecked:r,mergedTheme:p,labelId:ye(),handleClick:c,handleKeyUp:v,handleKeyDown:k,cssVars:w?void 0:I,themeClass:$?.themeClass,onRender:$?.onRender})},render(){var o;const{$slots:i,renderedChecked:m,mergedDisabled:y,indeterminate:w,privateInsideTable:x,cssVars:T,labelId:h,label:D,mergedClsPrefix:r,focusable:R,handleKeyUp:b,handleKeyDown:n,handleClick:p}=this;(o=this.onRender)===null||o===void 0||o.call(this);const f=ve(i.default,c=>D||c?s("span",{class:`${r}-checkbox__label`,id:h},D||c):null);return s("div",{ref:"selfRef",class:[`${r}-checkbox`,this.themeClass,this.rtlEnabled&&`${r}-checkbox--rtl`,m&&`${r}-checkbox--checked`,y&&`${r}-checkbox--disabled`,w&&`${r}-checkbox--indeterminate`,x&&`${r}-checkbox--inside-table`,f&&`${r}-checkbox--show-label`],tabindex:y||!R?void 0:0,role:"checkbox","aria-checked":w?"mixed":m,"aria-labelledby":h,style:T,onKeyup:b,onKeydown:n,onClick:p,onMousedown:()=>{ge("selectstart",window,c=>{c.preventDefault()},{once:!0})}},s("div",{class:`${r}-checkbox-box-wrapper`},"Â ",s("div",{class:`${r}-checkbox-box`},s(ke,null,{default:()=>this.indeterminate?s("div",{key:"indeterminate",class:`${r}-checkbox-icon`},Se()):s("div",{key:"check",class:`${r}-checkbox-icon`},ze())}),s("div",{class:`${r}-checkbox-box__border`}))),f)}});export{Me as N,_e as _};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.