date-picker.aa7cc011.js 65 KB

1
  1. import{Z as et,a0 as ke,at as se,aw as ca,bi as da,ae as Te,cS as Tt,aE as Re,af as $e,bp as fa,am as Ge,r as q,a4 as I,a6 as Oe,X as Ye,aP as Yt,aA as ye,aM as va,dO as pa,dP as ma,bl as ha,i as e,dQ as ba,aa as yt,e as V,y as be,w as te,E as Qe,v as b,G as xt,ag as Fe,p as fe,az as dt,l as ce,f as K,h as U,ak as it,x as oe,aS as Lt,dR as ga,al as Le,dl as me,aU as ka,dS as ya,o as wa,F as he,k as Pe,j as je,dT as Da,m as Ie,g as B,dy as Sa,bC as Ca,ao as Pa,aj as Ma,$ as j,aG as lt,dU as Bt,a3 as Kt,dV as _a,aQ as st,dW as wt,ai as at,bz as ut,ah as Dt,A as pt,bA as ct,q as ht,V as St,ab as zt,c as $a}from"./index.f884e450.js";import{v as It,p as Rt,f as At,m as bt,b as gt,d as Ta,r as Ut,e as Wt,a as Ht,l as Va}from"./localeData.9da533fa.js";import{f as Oa}from"./index.1c1ef502.js";import{v as Nt}from"./index.a400ccf3.js";const Je=i=>!i&&i!==0?[]:Array.isArray(i)?i:[i];var jt={exports:{}};(function(i,f){(function(l,n){i.exports=n()})(et,function(){var l={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},n=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,m=/\d\d/,g=/\d\d?/,k=/\d*[^-_:/,()\s\d]+/,C={},w=function(s){return(s=+s)+(s>68?1900:2e3)},y=function(s){return function(T){this[s]=+T}},D=[/[+-]\d\d:?(\d\d)?|Z/,function(s){(this.zone||(this.zone={})).offset=function(T){if(!T||T==="Z")return 0;var $=T.match(/([+-]|\d\d)/g),u=60*$[1]+(+$[2]||0);return u===0?0:$[0]==="+"?-u:u}(s)}],P=function(s){var T=C[s];return T&&(T.indexOf?T:T.s.concat(T.f))},h=function(s,T){var $,u=C.meridiem;if(u){for(var z=1;z<=24;z+=1)if(s.indexOf(u(z,0,T))>-1){$=z>12;break}}else $=s===(T?"pm":"PM");return $},c={A:[k,function(s){this.afternoon=h(s,!1)}],a:[k,function(s){this.afternoon=h(s,!0)}],S:[/\d/,function(s){this.milliseconds=100*+s}],SS:[m,function(s){this.milliseconds=10*+s}],SSS:[/\d{3}/,function(s){this.milliseconds=+s}],s:[g,y("seconds")],ss:[g,y("seconds")],m:[g,y("minutes")],mm:[g,y("minutes")],H:[g,y("hours")],h:[g,y("hours")],HH:[g,y("hours")],hh:[g,y("hours")],D:[g,y("day")],DD:[m,y("day")],Do:[k,function(s){var T=C.ordinal,$=s.match(/\d+/);if(this.day=$[0],T)for(var u=1;u<=31;u+=1)T(u).replace(/\[|\]/g,"")===s&&(this.day=u)}],M:[g,y("month")],MM:[m,y("month")],MMM:[k,function(s){var T=P("months"),$=(P("monthsShort")||T.map(function(u){return u.slice(0,3)})).indexOf(s)+1;if($<1)throw new Error;this.month=$%12||$}],MMMM:[k,function(s){var T=P("months").indexOf(s)+1;if(T<1)throw new Error;this.month=T%12||T}],Y:[/[+-]?\d+/,y("year")],YY:[m,function(s){this.year=w(s)}],YYYY:[/\d{4}/,y("year")],Z:D,ZZ:D};function d(s){var T,$;T=s,$=C&&C.formats;for(var u=(s=T.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(F,Z,G){var ae=G&&G.toUpperCase();return Z||$[G]||l[G]||$[ae].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(L,ee,de){return ee||de.slice(1)})})).match(n),z=u.length,M=0;M<z;M+=1){var E=u[M],N=c[E],R=N&&N[0],O=N&&N[1];u[M]=O?{regex:R,parser:O}:E.replace(/^\[|\]$/g,"")}return function(F){for(var Z={},G=0,ae=0;G<z;G+=1){var L=u[G];if(typeof L=="string")ae+=L.length;else{var ee=L.regex,de=L.parser,pe=F.slice(ae),W=ee.exec(pe)[0];de.call(Z,W),F=F.replace(W,"")}}return function(A){var a=A.afternoon;if(a!==void 0){var r=A.hours;a?r<12&&(A.hours+=12):r===12&&(A.hours=0),delete A.afternoon}}(Z),Z}}return function(s,T,$){$.p.customParseFormat=!0,s&&s.parseTwoDigitYear&&(w=s.parseTwoDigitYear);var u=T.prototype,z=u.parse;u.parse=function(M){var E=M.date,N=M.utc,R=M.args;this.$u=N;var O=R[1];if(typeof O=="string"){var F=R[2]===!0,Z=R[3]===!0,G=F||Z,ae=R[2];Z&&(ae=R[2]),C=this.$locale(),!F&&ae&&(C=$.Ls[ae]),this.$d=function(pe,W,A){try{if(["x","X"].indexOf(W)>-1)return new Date((W==="X"?1e3:1)*pe);var a=d(W)(pe),r=a.year,v=a.month,S=a.day,H=a.hours,Q=a.minutes,ne=a.seconds,re=a.milliseconds,ie=a.zone,we=new Date,De=S||(r||v?1:we.getDate()),Ae=r||we.getFullYear(),Me=0;r&&!v||(Me=v>0?v-1:we.getMonth());var ve=H||0,Se=Q||0,Ce=ne||0,Ve=re||0;return ie?new Date(Date.UTC(Ae,Me,De,ve,Se,Ce,Ve+60*ie.offset*1e3)):A?new Date(Date.UTC(Ae,Me,De,ve,Se,Ce,Ve)):new Date(Ae,Me,De,ve,Se,Ce,Ve)}catch{return new Date("")}}(E,O,N),this.init(),ae&&ae!==!0&&(this.$L=this.locale(ae).$L),G&&E!=this.format(O)&&(this.$d=new Date("")),C={}}else if(O instanceof Array)for(var L=O.length,ee=1;ee<=L;ee+=1){R[1]=O[ee-1];var de=$.apply(this,R);if(de.isValid()){this.$d=de.$d,this.$L=de.$L,this.init();break}ee===L&&(this.$d=new Date(""))}else z.call(this,M)}}})})(jt);var Ya=jt.exports;const Ft=["hours","minutes","seconds"],Et="HH:mm:ss",nt="YYYY-MM-DD",xa={date:nt,dates:nt,week:"gggg[w]ww",year:"YYYY",month:"YYYY-MM",datetime:`${nt} ${Et}`,monthrange:"YYYY-MM",daterange:nt,datetimerange:`${nt} ${Et}`},Gt=ke({disabledHours:{type:se(Function)},disabledMinutes:{type:se(Function)},disabledSeconds:{type:se(Function)}}),Ia=ke({visible:Boolean,actualVisible:{type:Boolean,default:void 0},format:{type:String,default:""}}),qt=ke({id:{type:se([Array,String])},name:{type:se([Array,String]),default:""},popperClass:{type:String,default:""},format:String,valueFormat:String,dateFormat:String,timeFormat:String,type:{type:String,default:""},clearable:{type:Boolean,default:!0},clearIcon:{type:se([String,Object]),default:ca},editable:{type:Boolean,default:!0},prefixIcon:{type:se([String,Object]),default:""},size:da,readonly:Boolean,disabled:Boolean,placeholder:{type:String,default:""},popperOptions:{type:se(Object),default:()=>({})},modelValue:{type:se([Date,Array,String,Number]),default:""},rangeSeparator:{type:String,default:"-"},startPlaceholder:String,endPlaceholder:String,defaultValue:{type:se([Date,Array])},defaultTime:{type:se([Date,Array])},isRange:Boolean,...Gt,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,label:{type:String,default:void 0},tabindex:{type:se([String,Number]),default:0},validateEvent:{type:Boolean,default:!0},unlinkPanels:Boolean}),Ra=["id","name","placeholder","value","disabled","readonly"],Aa=["id","name","placeholder","value","disabled","readonly"],Na=Te({name:"Picker"}),Fa=Te({...Na,props:qt,emits:["update:modelValue","change","focus","blur","calendar-change","panel-change","visible-change","keydown"],setup(i,{expose:f,emit:l}){const n=i,m=Tt(),{lang:g}=Re(),k=$e("date"),C=$e("input"),w=$e("range"),{form:y,formItem:D}=fa(),P=Ge("ElPopperOptions",{}),h=q(),c=q(),d=q(!1),s=q(!1),T=q(null);let $=!1,u=!1;const z=I(()=>[k.b("editor"),k.bm("editor",n.type),C.e("wrapper"),k.is("disabled",S.value),k.is("active",d.value),w.b("editor"),Be?w.bm("editor",Be.value):"",m.class]),M=I(()=>[C.e("icon"),w.e("close-icon"),De.value?"":w.e("close-icon--hidden")]);Oe(d,t=>{t?Ye(()=>{t&&(T.value=n.modelValue)}):(J.value=null,Ye(()=>{E(n.modelValue)}))});const E=(t,_)=>{(_||!It(t,T.value))&&(l("change",t),n.validateEvent&&D?.validate("change").catch(X=>Yt()))},N=t=>{if(!It(n.modelValue,t)){let _;ye(t)?_=t.map(X=>At(X,n.valueFormat,g.value)):t&&(_=At(t,n.valueFormat,g.value)),l("update:modelValue",t&&_,g.value)}},R=t=>{l("keydown",t)},O=I(()=>{if(c.value){const t=ge.value?c.value:c.value.$el;return Array.from(t.querySelectorAll("input"))}return[]}),F=(t,_,X)=>{const ue=O.value;!ue.length||(!X||X==="min"?(ue[0].setSelectionRange(t,_),ue[0].focus()):X==="max"&&(ue[1].setSelectionRange(t,_),ue[1].focus()))},Z=()=>{A(!0,!0),Ye(()=>{u=!1})},G=(t="",_=!1)=>{_||(u=!0),d.value=_;let X;ye(t)?X=t.map(ue=>ue.toDate()):X=t&&t.toDate(),J.value=null,N(X)},ae=()=>{s.value=!0},L=()=>{l("visible-change",!0)},ee=t=>{t?.key===me.esc&&A(!0,!0)},de=()=>{s.value=!1,d.value=!1,u=!1,l("visible-change",!1)},pe=()=>{d.value=!0},W=()=>{d.value=!1},A=(t=!0,_=!1)=>{u=_;const[X,ue]=e(O);let xe=X;!t&&ge.value&&(xe=ue),xe&&xe.focus()},a=t=>{n.readonly||S.value||d.value||u||(d.value=!0,l("focus",t))};let r;const v=t=>{const _=async()=>{setTimeout(()=>{var X;r===_&&(!(((X=h.value)==null?void 0:X.isFocusInsideContent())&&!$)&&O.value.filter(ue=>ue.contains(document.activeElement)).length===0&&(qe(),d.value=!1,l("blur",t),n.validateEvent&&D?.validate("blur").catch(ue=>Yt())),$=!1)},0)};r=_,_()},S=I(()=>n.disabled||y?.disabled),H=I(()=>{let t;if(Me.value?o.value.getDefaultValue&&(t=o.value.getDefaultValue()):ye(n.modelValue)?t=n.modelValue.map(_=>Rt(_,n.valueFormat,g.value)):t=Rt(n.modelValue,n.valueFormat,g.value),o.value.getRangeAvailableTime){const _=o.value.getRangeAvailableTime(t);va(_,t)||(t=_,N(ye(t)?t.map(X=>X.toDate()):t.toDate()))}return ye(t)&&t.some(_=>!_)&&(t=[]),t}),Q=I(()=>{if(!o.value.panelReady)return"";const t=ze(H.value);return ye(J.value)?[J.value[0]||t&&t[0]||"",J.value[1]||t&&t[1]||""]:J.value!==null?J.value:!re.value&&Me.value||!d.value&&Me.value?"":t?ie.value?t.join(", "):t:""}),ne=I(()=>n.type.includes("time")),re=I(()=>n.type.startsWith("time")),ie=I(()=>n.type==="dates"),we=I(()=>n.prefixIcon||(ne.value?pa:ma)),De=q(!1),Ae=t=>{n.readonly||S.value||De.value&&(t.stopPropagation(),Z(),N(null),E(null,!0),De.value=!1,d.value=!1,o.value.handleClear&&o.value.handleClear())},Me=I(()=>{const{modelValue:t}=n;return!t||ye(t)&&!t.filter(Boolean).length}),ve=async t=>{var _;n.readonly||S.value||(((_=t.target)==null?void 0:_.tagName)!=="INPUT"||O.value.includes(document.activeElement))&&(d.value=!0)},Se=()=>{n.readonly||S.value||!Me.value&&n.clearable&&(De.value=!0)},Ce=()=>{De.value=!1},Ve=t=>{var _;n.readonly||S.value||(((_=t.touches[0].target)==null?void 0:_.tagName)!=="INPUT"||O.value.includes(document.activeElement))&&(d.value=!0)},ge=I(()=>n.type.includes("range")),Be=ha(),tt=I(()=>{var t,_;return(_=(t=e(h))==null?void 0:t.popperRef)==null?void 0:_.contentRef}),_e=I(()=>{var t;return e(ge)?e(c):(t=e(c))==null?void 0:t.$el});ba(_e,t=>{const _=e(tt),X=e(_e);_&&(t.target===_||t.composedPath().includes(_))||t.target===X||t.composedPath().includes(X)||(d.value=!1)});const J=q(null),qe=()=>{if(J.value){const t=Ke(Q.value);t&&Ee(t)&&(N(ye(t)?t.map(_=>_.toDate()):t.toDate()),J.value=null)}J.value===""&&(N(null),E(null),J.value=null)},Ke=t=>t?o.value.parseUserInput(t):null,ze=t=>t?o.value.formatToString(t):null,Ee=t=>o.value.isValidValue(t),Ze=async t=>{if(n.readonly||S.value)return;const{code:_}=t;if(R(t),_===me.esc){d.value===!0&&(d.value=!1,t.preventDefault(),t.stopPropagation());return}if(_===me.down&&(o.value.handleFocusPicker&&(t.preventDefault(),t.stopPropagation()),d.value===!1&&(d.value=!0,await Ye()),o.value.handleFocusPicker)){o.value.handleFocusPicker();return}if(_===me.tab){$=!0;return}if(_===me.enter||_===me.numpadEnter){(J.value===null||J.value===""||Ee(Ke(Q.value)))&&(qe(),d.value=!1),t.stopPropagation();return}if(J.value){t.stopPropagation();return}o.value.handleKeydownInput&&o.value.handleKeydownInput(t)},Ue=t=>{J.value=t,d.value||(d.value=!0)},We=t=>{const _=t.target;J.value?J.value=[_.value,J.value[1]]:J.value=[_.value,null]},ot=t=>{const _=t.target;J.value?J.value=[J.value[0],_.value]:J.value=[null,_.value]},Xe=()=>{var t;const _=J.value,X=Ke(_&&_[0]),ue=e(H);if(X&&X.isValid()){J.value=[ze(X),((t=Q.value)==null?void 0:t[1])||null];const xe=[X,ue&&(ue[1]||null)];Ee(xe)&&(N(xe),J.value=null)}},He=()=>{var t;const _=e(J),X=Ke(_&&_[1]),ue=e(H);if(X&&X.isValid()){J.value=[((t=e(Q))==null?void 0:t[0])||null,ze(X)];const xe=[ue&&ue[0],X];Ee(xe)&&(N(xe),J.value=null)}},o=q({}),Y=t=>{o.value[t[0]]=t[1],o.value.panelReady=!0},p=t=>{l("calendar-change",t)},x=(t,_,X)=>{l("panel-change",t,_,X)};return yt("EP_PICKER_BASE",{props:n}),f({focus:A,handleFocusInput:a,handleBlurInput:v,handleOpen:pe,handleClose:W,onPick:G}),(t,_)=>(V(),be(e(ga),Lt({ref_key:"refPopper",ref:h,visible:d.value,effect:"light",pure:"",trigger:"click"},t.$attrs,{role:"dialog",teleported:"",transition:`${e(k).namespace.value}-zoom-in-top`,"popper-class":[`${e(k).namespace.value}-picker__popper`,t.popperClass],"popper-options":e(P),"fallback-placements":["bottom","top","right","left"],"gpu-acceleration":!1,"stop-popper-mouse-event":!1,"hide-after":0,persistent:"",onBeforeShow:ae,onShow:L,onHide:de}),{default:te(()=>[e(ge)?(V(),K("div",{key:1,ref_key:"inputRef",ref:c,class:b(e(z)),style:xt(t.$attrs.style),onClick:a,onMouseenter:Se,onMouseleave:Ce,onTouchstart:Ve,onKeydown:Ze},[e(we)?(V(),be(e(fe),{key:0,class:b([e(C).e("icon"),e(w).e("icon")]),onMousedown:Fe(ve,["prevent"]),onTouchstart:Ve},{default:te(()=>[(V(),be(dt(e(we))))]),_:1},8,["class","onMousedown"])):ce("v-if",!0),U("input",{id:t.id&&t.id[0],autocomplete:"off",name:t.name&&t.name[0],placeholder:t.startPlaceholder,value:e(Q)&&e(Q)[0],disabled:e(S),readonly:!t.editable||t.readonly,class:b(e(w).b("input")),onMousedown:ve,onInput:We,onChange:Xe,onFocus:a,onBlur:v},null,42,Ra),it(t.$slots,"range-separator",{},()=>[U("span",{class:b(e(w).b("separator"))},oe(t.rangeSeparator),3)]),U("input",{id:t.id&&t.id[1],autocomplete:"off",name:t.name&&t.name[1],placeholder:t.endPlaceholder,value:e(Q)&&e(Q)[1],disabled:e(S),readonly:!t.editable||t.readonly,class:b(e(w).b("input")),onMousedown:ve,onFocus:a,onBlur:v,onInput:ot,onChange:He},null,42,Aa),t.clearIcon?(V(),be(e(fe),{key:1,class:b(e(M)),onClick:Ae},{default:te(()=>[(V(),be(dt(t.clearIcon)))]),_:1},8,["class"])):ce("v-if",!0)],38)):(V(),be(e(Qe),{key:0,id:t.id,ref_key:"inputRef",ref:c,"container-role":"combobox","model-value":e(Q),name:t.name,size:e(Be),disabled:e(S),placeholder:t.placeholder,class:b([e(k).b("editor"),e(k).bm("editor",t.type),t.$attrs.class]),style:xt(t.$attrs.style),readonly:!t.editable||t.readonly||e(ie)||t.type==="week",label:t.label,tabindex:t.tabindex,"validate-event":!1,onInput:Ue,onFocus:a,onBlur:v,onKeydown:Ze,onChange:qe,onMousedown:ve,onMouseenter:Se,onMouseleave:Ce,onTouchstart:Ve,onClick:_[0]||(_[0]=Fe(()=>{},["stop"]))},{prefix:te(()=>[e(we)?(V(),be(e(fe),{key:0,class:b(e(C).e("icon")),onMousedown:Fe(ve,["prevent"]),onTouchstart:Ve},{default:te(()=>[(V(),be(dt(e(we))))]),_:1},8,["class","onMousedown"])):ce("v-if",!0)]),suffix:te(()=>[De.value&&t.clearIcon?(V(),be(e(fe),{key:0,class:b(`${e(C).e("icon")} clear-icon`),onClick:Fe(Ae,["stop"])},{default:te(()=>[(V(),be(dt(t.clearIcon)))]),_:1},8,["class","onClick"])):ce("v-if",!0)]),_:1},8,["id","model-value","name","size","disabled","placeholder","class","style","readonly","label","tabindex","onKeydown"]))]),content:te(()=>[it(t.$slots,"default",{visible:d.value,actualVisible:s.value,parsedValue:e(H),format:t.format,dateFormat:t.dateFormat,timeFormat:t.timeFormat,unlinkPanels:t.unlinkPanels,type:t.type,defaultValue:t.defaultValue,onPick:G,onSelectRange:F,onSetPickerOption:Y,onCalendarChange:p,onPanelChange:x,onKeydown:ee,onMousedown:_[1]||(_[1]=Fe(()=>{},["stop"]))})]),_:3},16,["visible","transition","popper-class","popper-options"]))}});var Ea=Le(Fa,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-picker/src/common/picker.vue"]]);const La=ke({...Ia,datetimeRole:String,parsedValue:{type:se(Object)}}),Ba=({getAvailableHours:i,getAvailableMinutes:f,getAvailableSeconds:l})=>{const n=(k,C,w,y)=>{const D={hour:i,minute:f,second:l};let P=k;return["hour","minute","second"].forEach(h=>{if(D[h]){let c;const d=D[h];switch(h){case"minute":{c=d(P.hour(),C,y);break}case"second":{c=d(P.hour(),P.minute(),C,y);break}default:{c=d(C,y);break}}if(c?.length&&!c.includes(P[h]())){const s=w?0:c.length-1;P=P[h](c[s])}}}),P},m={};return{timePickerOptions:m,getAvailableTime:n,onSetOption:([k,C])=>{m[k]=C}}},kt=i=>{const f=(n,m)=>n||m,l=n=>n!==!0;return i.map(f).filter(l)},Zt=(i,f,l)=>({getHoursList:(k,C)=>bt(24,i&&(()=>i?.(k,C))),getMinutesList:(k,C,w)=>bt(60,f&&(()=>f?.(k,C,w))),getSecondsList:(k,C,w,y)=>bt(60,l&&(()=>l?.(k,C,w,y)))}),Ka=(i,f,l)=>{const{getHoursList:n,getMinutesList:m,getSecondsList:g}=Zt(i,f,l);return{getAvailableHours:(y,D)=>kt(n(y,D)),getAvailableMinutes:(y,D,P)=>kt(m(y,D,P)),getAvailableSeconds:(y,D,P,h)=>kt(g(y,D,P,h))}},za=i=>{const f=q(i.parsedValue);return Oe(()=>i.visible,l=>{l||(f.value=i.parsedValue)}),f},Ua=ke({role:{type:String,required:!0},spinnerDate:{type:se(Object),required:!0},showSeconds:{type:Boolean,default:!0},arrowControl:Boolean,amPmMode:{type:se(String),default:""},...Gt}),Wa=["onClick"],Ha=["onMouseenter"],ja=Te({__name:"basic-time-spinner",props:Ua,emits:["change","select-range","set-option"],setup(i,{emit:f}){const l=i,n=$e("time"),{getHoursList:m,getMinutesList:g,getSecondsList:k}=Zt(l.disabledHours,l.disabledMinutes,l.disabledSeconds);let C=!1;const w=q(),y=q(),D=q(),P=q(),h={hours:y,minutes:D,seconds:P},c=I(()=>l.showSeconds?Ft:Ft.slice(0,2)),d=I(()=>{const{spinnerDate:a}=l,r=a.hour(),v=a.minute(),S=a.second();return{hours:r,minutes:v,seconds:S}}),s=I(()=>{const{hours:a,minutes:r}=e(d);return{hours:m(l.role),minutes:g(a,l.role),seconds:k(a,r,l.role)}}),T=I(()=>{const{hours:a,minutes:r,seconds:v}=e(d);return{hours:gt(a,23),minutes:gt(r,59),seconds:gt(v,59)}}),$=ka(a=>{C=!1,M(a)},200),u=a=>{if(!!!l.amPmMode)return"";const v=l.amPmMode==="A";let S=a<12?" am":" pm";return v&&(S=S.toUpperCase()),S},z=a=>{let r;switch(a){case"hours":r=[0,2];break;case"minutes":r=[3,5];break;case"seconds":r=[6,8];break}const[v,S]=r;f("select-range",v,S),w.value=a},M=a=>{R(a,e(d)[a])},E=()=>{M("hours"),M("minutes"),M("seconds")},N=a=>a.querySelector(`.${n.namespace.value}-scrollbar__wrap`),R=(a,r)=>{if(l.arrowControl)return;const v=e(h[a]);v&&v.$el&&(N(v.$el).scrollTop=Math.max(0,r*O(a)))},O=a=>{const r=e(h[a]),v=r?.$el.querySelector("li");return v&&Number.parseFloat(ya(v,"height"))||0},F=()=>{G(1)},Z=()=>{G(-1)},G=a=>{w.value||z("hours");const r=w.value,v=e(d)[r],S=w.value==="hours"?24:60,H=ae(r,v,a,S);L(r,H),R(r,H),Ye(()=>z(r))},ae=(a,r,v,S)=>{let H=(r+v+S)%S;const Q=e(s)[a];for(;Q[H]&&H!==r;)H=(H+v+S)%S;return H},L=(a,r)=>{if(e(s)[a][r])return;const{hours:H,minutes:Q,seconds:ne}=e(d);let re;switch(a){case"hours":re=l.spinnerDate.hour(r).minute(Q).second(ne);break;case"minutes":re=l.spinnerDate.hour(H).minute(r).second(ne);break;case"seconds":re=l.spinnerDate.hour(H).minute(Q).second(r);break}f("change",re)},ee=(a,{value:r,disabled:v})=>{v||(L(a,r),z(a),R(a,r))},de=a=>{C=!0,$(a);const r=Math.min(Math.round((N(e(h[a]).$el).scrollTop-(pe(a)*.5-10)/O(a)+3)/O(a)),a==="hours"?23:59);L(a,r)},pe=a=>e(h[a]).$el.offsetHeight,W=()=>{const a=r=>{const v=e(h[r]);v&&v.$el&&(N(v.$el).onscroll=()=>{de(r)})};a("hours"),a("minutes"),a("seconds")};wa(()=>{Ye(()=>{!l.arrowControl&&W(),E(),l.role==="start"&&z("hours")})});const A=(a,r)=>{h[r].value=a};return f("set-option",[`${l.role}_scrollDown`,G]),f("set-option",[`${l.role}_emitSelectRange`,z]),Oe(()=>l.spinnerDate,()=>{C||E()}),(a,r)=>(V(),K("div",{class:b([e(n).b("spinner"),{"has-seconds":a.showSeconds}])},[a.arrowControl?ce("v-if",!0):(V(!0),K(he,{key:0},Pe(e(c),v=>(V(),be(e(Da),{key:v,ref_for:!0,ref:S=>A(S,v),class:b(e(n).be("spinner","wrapper")),"wrap-style":"max-height: inherit;","view-class":e(n).be("spinner","list"),noresize:"",tag:"ul",onMouseenter:S=>z(v),onMousemove:S=>M(v)},{default:te(()=>[(V(!0),K(he,null,Pe(e(s)[v],(S,H)=>(V(),K("li",{key:H,class:b([e(n).be("spinner","item"),e(n).is("active",H===e(d)[v]),e(n).is("disabled",S)]),onClick:Q=>ee(v,{value:H,disabled:S})},[v==="hours"?(V(),K(he,{key:0},[je(oe(("0"+(a.amPmMode?H%12||12:H)).slice(-2))+oe(u(H)),1)],64)):(V(),K(he,{key:1},[je(oe(("0"+H).slice(-2)),1)],64))],10,Wa))),128))]),_:2},1032,["class","view-class","onMouseenter","onMousemove"]))),128)),a.arrowControl?(V(!0),K(he,{key:1},Pe(e(c),v=>(V(),K("div",{key:v,class:b([e(n).be("spinner","wrapper"),e(n).is("arrow")]),onMouseenter:S=>z(v)},[Ie((V(),be(e(fe),{class:b(["arrow-up",e(n).be("spinner","arrow")])},{default:te(()=>[B(e(Sa))]),_:1},8,["class"])),[[e(Nt),Z]]),Ie((V(),be(e(fe),{class:b(["arrow-down",e(n).be("spinner","arrow")])},{default:te(()=>[B(e(Ca))]),_:1},8,["class"])),[[e(Nt),F]]),U("ul",{class:b(e(n).be("spinner","list"))},[(V(!0),K(he,null,Pe(e(T)[v],(S,H)=>(V(),K("li",{key:H,class:b([e(n).be("spinner","item"),e(n).is("active",S===e(d)[v]),e(n).is("disabled",e(s)[v][S])])},[typeof S=="number"?(V(),K(he,{key:0},[v==="hours"?(V(),K(he,{key:0},[je(oe(("0"+(a.amPmMode?S%12||12:S)).slice(-2))+oe(u(S)),1)],64)):(V(),K(he,{key:1},[je(oe(("0"+S).slice(-2)),1)],64))],64)):ce("v-if",!0)],2))),128))],2)],42,Ha))),128)):ce("v-if",!0)],2))}});var Ga=Le(ja,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-picker/src/time-picker-com/basic-time-spinner.vue"]]);const qa=Te({__name:"panel-time-pick",props:La,emits:["pick","select-range","set-picker-option"],setup(i,{emit:f}){const l=i,n=Ge("EP_PICKER_BASE"),{arrowControl:m,disabledHours:g,disabledMinutes:k,disabledSeconds:C,defaultValue:w}=n.props,{getAvailableHours:y,getAvailableMinutes:D,getAvailableSeconds:P}=Ka(g,k,C),h=$e("time"),{t:c,lang:d}=Re(),s=q([0,2]),T=za(l),$=I(()=>Pa(l.actualVisible)?`${h.namespace.value}-zoom-in-top`:""),u=I(()=>l.format.includes("ss")),z=I(()=>l.format.includes("A")?"A":l.format.includes("a")?"a":""),M=A=>{const a=j(A).locale(d.value),r=ee(a);return a.isSame(r)},E=()=>{f("pick",T.value,!1)},N=(A=!1,a=!1)=>{a||f("pick",l.parsedValue,A)},R=A=>{if(!l.visible)return;const a=ee(A).millisecond(0);f("pick",a,!0)},O=(A,a)=>{f("select-range",A,a),s.value=[A,a]},F=A=>{const a=[0,3].concat(u.value?[6]:[]),r=["hours","minutes"].concat(u.value?["seconds"]:[]),S=(a.indexOf(s.value[0])+A+a.length)%a.length;G.start_emitSelectRange(r[S])},Z=A=>{const a=A.code,{left:r,right:v,up:S,down:H}=me;if([r,v].includes(a)){F(a===r?-1:1),A.preventDefault();return}if([S,H].includes(a)){const Q=a===S?-1:1;G.start_scrollDown(Q),A.preventDefault();return}},{timePickerOptions:G,onSetOption:ae,getAvailableTime:L}=Ba({getAvailableHours:y,getAvailableMinutes:D,getAvailableSeconds:P}),ee=A=>L(A,l.datetimeRole||"",!0),de=A=>A?j(A,l.format).locale(d.value):null,pe=A=>A?A.format(l.format):null,W=()=>j(w).locale(d.value);return f("set-picker-option",["isValidValue",M]),f("set-picker-option",["formatToString",pe]),f("set-picker-option",["parseUserInput",de]),f("set-picker-option",["handleKeydownInput",Z]),f("set-picker-option",["getRangeAvailableTime",ee]),f("set-picker-option",["getDefaultValue",W]),(A,a)=>(V(),be(Ma,{name:e($)},{default:te(()=>[A.actualVisible||A.visible?(V(),K("div",{key:0,class:b(e(h).b("panel"))},[U("div",{class:b([e(h).be("panel","content"),{"has-seconds":e(u)}])},[B(Ga,{ref:"spinner",role:A.datetimeRole||"start","arrow-control":e(m),"show-seconds":e(u),"am-pm-mode":e(z),"spinner-date":A.parsedValue,"disabled-hours":e(g),"disabled-minutes":e(k),"disabled-seconds":e(C),onChange:R,onSetOption:e(ae),onSelectRange:O},null,8,["role","arrow-control","show-seconds","am-pm-mode","spinner-date","disabled-hours","disabled-minutes","disabled-seconds","onSetOption"])],2),U("div",{class:b(e(h).be("panel","footer"))},[U("button",{type:"button",class:b([e(h).be("panel","btn"),"cancel"]),onClick:E},oe(e(c)("el.datepicker.cancel")),3),U("button",{type:"button",class:b([e(h).be("panel","btn"),"confirm"]),onClick:a[0]||(a[0]=r=>N())},oe(e(c)("el.datepicker.confirm")),3)],2)],2)):ce("v-if",!0)]),_:1},8,["name"]))}});var Ct=Le(qa,[["__file","/home/runner/work/element-plus/element-plus/packages/components/time-picker/src/time-picker-com/panel-time-pick.vue"]]),Xt={exports:{}};(function(i,f){(function(l,n){i.exports=n()})(et,function(){return function(l,n){var m=n.prototype,g=m.format;m.format=function(k){var C=this,w=this.$locale();if(!this.isValid())return g.bind(this)(k);var y=this.$utils(),D=(k||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(P){switch(P){case"Q":return Math.ceil((C.$M+1)/3);case"Do":return w.ordinal(C.$D);case"gggg":return C.weekYear();case"GGGG":return C.isoWeekYear();case"wo":return w.ordinal(C.week(),"W");case"w":case"ww":return y.s(C.week(),P==="w"?1:2,"0");case"W":case"WW":return y.s(C.isoWeek(),P==="W"?1:2,"0");case"k":case"kk":return y.s(String(C.$H===0?24:C.$H),P==="k"?1:2,"0");case"X":return Math.floor(C.$d.getTime()/1e3);case"x":return C.$d.getTime();case"z":return"["+C.offsetName()+"]";case"zzz":return"["+C.offsetName("long")+"]";default:return P}});return g.bind(this)(D)}}})})(Xt);var Za=Xt.exports,Qt={exports:{}};(function(i,f){(function(l,n){i.exports=n()})(et,function(){var l="week",n="year";return function(m,g,k){var C=g.prototype;C.week=function(w){if(w===void 0&&(w=null),w!==null)return this.add(7*(w-this.week()),"day");var y=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var D=k(this).startOf(n).add(1,n).date(y),P=k(this).endOf(l);if(D.isBefore(P))return 1}var h=k(this).startOf(n).date(y).startOf(l).subtract(1,"millisecond"),c=this.diff(h,l,!0);return c<0?k(this).startOf("week").week():Math.ceil(c)},C.weeks=function(w){return w===void 0&&(w=null),this.week(w)}}})})(Qt);var Xa=Qt.exports,Jt={exports:{}};(function(i,f){(function(l,n){i.exports=n()})(et,function(){return function(l,n){n.prototype.weekYear=function(){var m=this.month(),g=this.week(),k=this.year();return g===1&&m===11?k+1:m===0&&g>=52?k-1:k}}})})(Jt);var Qa=Jt.exports,ea={exports:{}};(function(i,f){(function(l,n){i.exports=n()})(et,function(){return function(l,n,m){n.prototype.dayOfYear=function(g){var k=Math.round((m(this).startOf("day")-m(this).startOf("year"))/864e5)+1;return g==null?k:this.add(g-k,"day")}}})})(ea);var Ja=ea.exports,ta={exports:{}};(function(i,f){(function(l,n){i.exports=n()})(et,function(){return function(l,n){n.prototype.isSameOrAfter=function(m,g){return this.isSame(m,g)||this.isAfter(m,g)}}})})(ta);var en=ta.exports,aa={exports:{}};(function(i,f){(function(l,n){i.exports=n()})(et,function(){return function(l,n){n.prototype.isSameOrBefore=function(m,g){return this.isSame(m,g)||this.isBefore(m,g)}}})})(aa);var tn=aa.exports;const Vt=Symbol(),an=ke({...qt,type:{type:se(String),default:"date"}}),nn=["date","dates","year","month","week","range"],Ot=ke({disabledDate:{type:se(Function)},date:{type:se(Object),required:!0},minDate:{type:se(Object)},maxDate:{type:se(Object)},parsedValue:{type:se([Object,Array])},rangeState:{type:se(Object),default:()=>({endDate:null,selecting:!1})}}),na=ke({type:{type:se(String),required:!0,values:Ta},dateFormat:String,timeFormat:String}),la=ke({unlinkPanels:Boolean,parsedValue:{type:se(Array)}}),sa=i=>({type:String,values:nn,default:i}),ln=ke({...na,parsedValue:{type:se([Object,Array])},visible:{type:Boolean},format:{type:String,default:""}}),sn=ke({...Ot,cellClassName:{type:se(Function)},showWeekNumber:Boolean,selectionMode:sa("date")}),on=["changerange","pick","select"],Pt=i=>{if(!ye(i))return!1;const[f,l]=i;return j.isDayjs(f)&&j.isDayjs(l)&&f.isSameOrBefore(l)},oa=(i,{lang:f,unit:l,unlinkPanels:n})=>{let m;if(ye(i)){let[g,k]=i.map(C=>j(C).locale(f));return n||(k=g.add(1,l)),[g,k]}else i?m=j(i):m=j();return m=m.locale(f),[m,m.add(1,l)]},rn=(i,f,{columnIndexOffset:l,startDate:n,nextEndDate:m,now:g,unit:k,relativeDateGetter:C,setCellMetadata:w,setRowMetadata:y})=>{for(let D=0;D<i.row;D++){const P=f[D];for(let h=0;h<i.column;h++){let c=P[h+l];c||(c={row:D,column:h,type:"normal",inRange:!1,start:!1,end:!1});const d=D*i.column+h,s=C(d);c.dayjs=s,c.date=s.toDate(),c.timestamp=s.valueOf(),c.type="normal",c.inRange=!!(n&&s.isSameOrAfter(n,k)&&m&&s.isSameOrBefore(m,k))||!!(n&&s.isSameOrBefore(n,k)&&m&&s.isSameOrAfter(m,k)),n?.isSameOrAfter(m)?(c.start=!!m&&s.isSame(m,k),c.end=n&&s.isSame(n,k)):(c.start=!!n&&s.isSame(n,k),c.end=!!m&&s.isSame(m,k)),s.isSame(g,k)&&(c.type="today"),w?.(c,{rowIndex:D,columnIndex:h}),P[h+l]=c}y?.(P)}},Mt=(i="")=>["normal","today"].includes(i),un=(i,f)=>{const{lang:l}=Re(),n=q(),m=q(),g=q(),k=q(),C=q([[],[],[],[],[],[]]);let w=!1;const y=i.date.$locale().weekStart||7,D=i.date.locale("en").localeData().weekdaysShort().map(a=>a.toLowerCase()),P=I(()=>y>3?7-y:-y),h=I(()=>{const a=i.date.startOf("month");return a.subtract(a.day()||7,"day")}),c=I(()=>D.concat(D).slice(y,y+7)),d=I(()=>Oa(e(M)).some(a=>a.isCurrent)),s=I(()=>{const a=i.date.startOf("month"),r=a.day()||7,v=a.daysInMonth(),S=a.subtract(1,"month").daysInMonth();return{startOfMonthDay:r,dateCountOfMonth:v,dateCountOfLastMonth:S}}),T=I(()=>i.selectionMode==="dates"?Je(i.parsedValue):[]),$=(a,{count:r,rowIndex:v,columnIndex:S})=>{const{startOfMonthDay:H,dateCountOfMonth:Q,dateCountOfLastMonth:ne}=e(s),re=e(P);if(v>=0&&v<=1){const ie=H+re<0?7+H+re:H+re;if(S+v*7>=ie)return a.text=r,!0;a.text=ne-(ie-S%7)+1+v*7,a.type="prev-month"}else return r<=Q?a.text=r:(a.text=r-Q,a.type="next-month"),!0;return!1},u=(a,{columnIndex:r,rowIndex:v},S)=>{const{disabledDate:H,cellClassName:Q}=i,ne=e(T),re=$(a,{count:S,rowIndex:v,columnIndex:r}),ie=a.dayjs.toDate();return a.selected=ne.find(we=>we.valueOf()===a.dayjs.valueOf()),a.isSelected=!!a.selected,a.isCurrent=N(a),a.disabled=H?.(ie),a.customClass=Q?.(ie),re},z=a=>{if(i.selectionMode==="week"){const[r,v]=i.showWeekNumber?[1,7]:[0,6],S=A(a[r+1]);a[r].inRange=S,a[r].start=S,a[v].inRange=S,a[v].end=S}},M=I(()=>{const{minDate:a,maxDate:r,rangeState:v,showWeekNumber:S}=i,H=e(P),Q=e(C),ne="day";let re=1;if(S)for(let ie=0;ie<6;ie++)Q[ie][0]||(Q[ie][0]={type:"week",text:e(h).add(ie*7+1,ne).week()});return rn({row:6,column:7},Q,{startDate:a,columnIndexOffset:S?1:0,nextEndDate:v.endDate||r||v.selecting&&a||null,now:j().locale(e(l)).startOf(ne),unit:ne,relativeDateGetter:ie=>e(h).add(ie-H,ne),setCellMetadata:(...ie)=>{u(...ie,re)&&(re+=1)},setRowMetadata:z}),Q});Oe(()=>i.date,async()=>{var a;(a=e(n))!=null&&a.contains(document.activeElement)&&(await Ye(),await E())});const E=async()=>{var a;return(a=e(m))==null?void 0:a.focus()},N=a=>i.selectionMode==="date"&&Mt(a.type)&&R(a,i.parsedValue),R=(a,r)=>r?j(r).locale(e(l)).isSame(i.date.date(Number(a.text)),"day"):!1,O=(a,r)=>{const v=a*7+(r-(i.showWeekNumber?1:0))-e(P);return e(h).add(v,"day")},F=a=>{var r;if(!i.rangeState.selecting)return;let v=a.target;if(v.tagName==="SPAN"&&(v=(r=v.parentNode)==null?void 0:r.parentNode),v.tagName==="DIV"&&(v=v.parentNode),v.tagName!=="TD")return;const S=v.parentNode.rowIndex-1,H=v.cellIndex;e(M)[S][H].disabled||(S!==e(g)||H!==e(k))&&(g.value=S,k.value=H,f("changerange",{selecting:!0,endDate:O(S,H)}))},Z=a=>!e(d)&&a?.text===1&&a.type==="normal"||a.isCurrent,G=a=>{w||e(d)||i.selectionMode!=="date"||W(a,!0)},ae=a=>{!a.target.closest("td")||(w=!0)},L=a=>{!a.target.closest("td")||(w=!1)},ee=a=>{!i.rangeState.selecting||!i.minDate?(f("pick",{minDate:a,maxDate:null}),f("select",!0)):(a>=i.minDate?f("pick",{minDate:i.minDate,maxDate:a}):f("pick",{minDate:a,maxDate:i.minDate}),f("select",!1))},de=a=>{const r=a.week(),v=`${a.year()}w${r}`;f("pick",{year:a.year(),week:r,value:v,date:a.startOf("week")})},pe=(a,r)=>{const v=r?Je(i.parsedValue).filter(S=>S?.valueOf()!==a.valueOf()):Je(i.parsedValue).concat([a]);f("pick",v)},W=(a,r=!1)=>{const v=a.target.closest("td");if(!v)return;const S=v.parentNode.rowIndex-1,H=v.cellIndex,Q=e(M)[S][H];if(Q.disabled||Q.type==="week")return;const ne=O(S,H);switch(i.selectionMode){case"range":{ee(ne);break}case"date":{f("pick",ne,r);break}case"week":{de(ne);break}case"dates":{pe(ne,!!Q.selected);break}}},A=a=>{if(i.selectionMode!=="week")return!1;let r=i.date.startOf("day");if(a.type==="prev-month"&&(r=r.subtract(1,"month")),a.type==="next-month"&&(r=r.add(1,"month")),r=r.date(Number.parseInt(a.text,10)),i.parsedValue&&!Array.isArray(i.parsedValue)){const v=(i.parsedValue.day()-y+7)%7-1;return i.parsedValue.subtract(v,"day").isSame(r,"day")}return!1};return{WEEKS:c,rows:M,tbodyRef:n,currentCellRef:m,focus:E,isCurrent:N,isWeekActive:A,isSelectedCell:Z,handlePickDate:W,handleMouseUp:L,handleMouseDown:ae,handleMouseMove:F,handleFocus:G}},cn=(i,{isCurrent:f,isWeekActive:l})=>{const n=$e("date-table"),{t:m}=Re(),g=I(()=>[n.b(),{"is-week-mode":i.selectionMode==="week"}]),k=I(()=>m("el.datepicker.dateTablePrompt")),C=I(()=>m("el.datepicker.week"));return{tableKls:g,tableLabel:k,weekLabel:C,getCellClasses:D=>{const P=[];return Mt(D.type)&&!D.disabled?(P.push("available"),D.type==="today"&&P.push("today")):P.push(D.type),f(D)&&P.push("current"),D.inRange&&(Mt(D.type)||i.selectionMode==="week")&&(P.push("in-range"),D.start&&P.push("start-date"),D.end&&P.push("end-date")),D.disabled&&P.push("disabled"),D.selected&&P.push("selected"),D.customClass&&P.push(D.customClass),P.join(" ")},getRowKls:D=>[n.e("row"),{current:l(D)}],t:m}},dn=ke({cell:{type:se(Object)}});var fn=Te({name:"ElDatePickerCell",props:dn,setup(i){const f=$e("date-table-cell"),{slots:l}=Ge(Vt);return()=>{const{cell:n}=i;if(l.default){const m=l.default(n).filter(g=>g.patchFlag!==-2&&g.type.toString()!=="Symbol(Comment)"&&g.type.toString()!=="Symbol(v-cmt)");if(m.length)return m}return B("div",{class:f.b()},[B("span",{class:f.e("text")},[n?.text])])}}});const vn=["aria-label"],pn={key:0,scope:"col"},mn=["aria-label"],hn=["aria-current","aria-selected","tabindex"],bn=Te({__name:"basic-date-table",props:sn,emits:on,setup(i,{expose:f,emit:l}){const n=i,{WEEKS:m,rows:g,tbodyRef:k,currentCellRef:C,focus:w,isCurrent:y,isWeekActive:D,isSelectedCell:P,handlePickDate:h,handleMouseUp:c,handleMouseDown:d,handleMouseMove:s,handleFocus:T}=un(n,l),{tableLabel:$,tableKls:u,weekLabel:z,getCellClasses:M,getRowKls:E,t:N}=cn(n,{isCurrent:y,isWeekActive:D});return f({focus:w}),(R,O)=>(V(),K("table",{"aria-label":e($),class:b(e(u)),cellspacing:"0",cellpadding:"0",role:"grid",onClick:O[1]||(O[1]=(...F)=>e(h)&&e(h)(...F)),onMousemove:O[2]||(O[2]=(...F)=>e(s)&&e(s)(...F)),onMousedown:O[3]||(O[3]=Fe((...F)=>e(d)&&e(d)(...F),["prevent"])),onMouseup:O[4]||(O[4]=(...F)=>e(c)&&e(c)(...F))},[U("tbody",{ref_key:"tbodyRef",ref:k},[U("tr",null,[R.showWeekNumber?(V(),K("th",pn,oe(e(z)),1)):ce("v-if",!0),(V(!0),K(he,null,Pe(e(m),(F,Z)=>(V(),K("th",{key:Z,"aria-label":e(N)("el.datepicker.weeksFull."+F),scope:"col"},oe(e(N)("el.datepicker.weeks."+F)),9,mn))),128))]),(V(!0),K(he,null,Pe(e(g),(F,Z)=>(V(),K("tr",{key:Z,class:b(e(E)(F[1]))},[(V(!0),K(he,null,Pe(F,(G,ae)=>(V(),K("td",{key:`${Z}.${ae}`,ref_for:!0,ref:L=>e(P)(G)&&(C.value=L),class:b(e(M)(G)),"aria-current":G.isCurrent?"date":void 0,"aria-selected":G.isCurrent,tabindex:e(P)(G)?0:-1,onFocus:O[0]||(O[0]=(...L)=>e(T)&&e(T)(...L))},[B(e(fn),{cell:G},null,8,["cell"])],42,hn))),128))],2))),128))],512)],42,vn))}});var _t=Le(bn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/basic-date-table.vue"]]);const gn=ke({...Ot,selectionMode:sa("month")}),kn=["aria-label"],yn=["aria-selected","aria-label","tabindex","onKeydown"],wn={class:"cell"},Dn=Te({__name:"basic-month-table",props:gn,emits:["changerange","pick","select"],setup(i,{expose:f,emit:l}){const n=i,m=(M,E,N)=>{const R=j().locale(N).startOf("month").month(E).year(M),O=R.daysInMonth();return Ut(O).map(F=>R.add(F,"day").toDate())},g=$e("month-table"),{t:k,lang:C}=Re(),w=q(),y=q(),D=q(n.date.locale("en").localeData().monthsShort().map(M=>M.toLowerCase())),P=q([[],[],[]]),h=q(),c=q(),d=I(()=>{var M,E;const N=P.value,R=j().locale(C.value).startOf("month");for(let O=0;O<3;O++){const F=N[O];for(let Z=0;Z<4;Z++){const G=F[Z]||(F[Z]={row:O,column:Z,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1});G.type="normal";const ae=O*4+Z,L=n.date.startOf("year").month(ae),ee=n.rangeState.endDate||n.maxDate||n.rangeState.selecting&&n.minDate||null;G.inRange=!!(n.minDate&&L.isSameOrAfter(n.minDate,"month")&&ee&&L.isSameOrBefore(ee,"month"))||!!(n.minDate&&L.isSameOrBefore(n.minDate,"month")&&ee&&L.isSameOrAfter(ee,"month")),(M=n.minDate)!=null&&M.isSameOrAfter(ee)?(G.start=!!(ee&&L.isSame(ee,"month")),G.end=n.minDate&&L.isSame(n.minDate,"month")):(G.start=!!(n.minDate&&L.isSame(n.minDate,"month")),G.end=!!(ee&&L.isSame(ee,"month"))),R.isSame(L)&&(G.type="today"),G.text=ae,G.disabled=((E=n.disabledDate)==null?void 0:E.call(n,L.toDate()))||!1}}return N}),s=()=>{var M;(M=y.value)==null||M.focus()},T=M=>{const E={},N=n.date.year(),R=new Date,O=M.text;return E.disabled=n.disabledDate?m(N,O,C.value).every(n.disabledDate):!1,E.current=Je(n.parsedValue).findIndex(F=>j.isDayjs(F)&&F.year()===N&&F.month()===O)>=0,E.today=R.getFullYear()===N&&R.getMonth()===O,M.inRange&&(E["in-range"]=!0,M.start&&(E["start-date"]=!0),M.end&&(E["end-date"]=!0)),E},$=M=>{const E=n.date.year(),N=M.text;return Je(n.date).findIndex(R=>R.year()===E&&R.month()===N)>=0},u=M=>{var E;if(!n.rangeState.selecting)return;let N=M.target;if(N.tagName==="A"&&(N=(E=N.parentNode)==null?void 0:E.parentNode),N.tagName==="DIV"&&(N=N.parentNode),N.tagName!=="TD")return;const R=N.parentNode.rowIndex,O=N.cellIndex;d.value[R][O].disabled||(R!==h.value||O!==c.value)&&(h.value=R,c.value=O,l("changerange",{selecting:!0,endDate:n.date.startOf("year").month(R*4+O)}))},z=M=>{var E;const N=(E=M.target)==null?void 0:E.closest("td");if(N?.tagName!=="TD"||Bt(N,"disabled"))return;const R=N.cellIndex,F=N.parentNode.rowIndex*4+R,Z=n.date.startOf("year").month(F);n.selectionMode==="range"?n.rangeState.selecting?(n.minDate&&Z>=n.minDate?l("pick",{minDate:n.minDate,maxDate:Z}):l("pick",{minDate:Z,maxDate:n.minDate}),l("select",!1)):(l("pick",{minDate:Z,maxDate:null}),l("select",!0)):l("pick",F)};return Oe(()=>n.date,async()=>{var M,E;(M=w.value)!=null&&M.contains(document.activeElement)&&(await Ye(),(E=y.value)==null||E.focus())}),f({focus:s}),(M,E)=>(V(),K("table",{role:"grid","aria-label":e(k)("el.datepicker.monthTablePrompt"),class:b(e(g).b()),onClick:z,onMousemove:u},[U("tbody",{ref_key:"tbodyRef",ref:w},[(V(!0),K(he,null,Pe(e(d),(N,R)=>(V(),K("tr",{key:R},[(V(!0),K(he,null,Pe(N,(O,F)=>(V(),K("td",{key:F,ref_for:!0,ref:Z=>$(O)&&(y.value=Z),class:b(T(O)),"aria-selected":`${$(O)}`,"aria-label":e(k)(`el.datepicker.month${+O.text+1}`),tabindex:$(O)?0:-1,onKeydown:[lt(Fe(z,["prevent","stop"]),["space"]),lt(Fe(z,["prevent","stop"]),["enter"])]},[U("div",null,[U("span",wn,oe(e(k)("el.datepicker.months."+D.value[O.text])),1)])],42,yn))),128))]))),128))],512)],42,kn))}});var $t=Le(Dn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/basic-month-table.vue"]]);const{date:Sn,disabledDate:Cn,parsedValue:Pn}=Ot,Mn=ke({date:Sn,disabledDate:Cn,parsedValue:Pn}),_n=["aria-label"],$n=["aria-selected","tabindex","onKeydown"],Tn={class:"cell"},Vn={key:1},On=Te({__name:"basic-year-table",props:Mn,emits:["pick"],setup(i,{expose:f,emit:l}){const n=i,m=(s,T)=>{const $=j(String(s)).locale(T).startOf("year"),z=$.endOf("year").dayOfYear();return Ut(z).map(M=>$.add(M,"day").toDate())},g=$e("year-table"),{t:k,lang:C}=Re(),w=q(),y=q(),D=I(()=>Math.floor(n.date.year()/10)*10),P=()=>{var s;(s=y.value)==null||s.focus()},h=s=>{const T={},$=j().locale(C.value);return T.disabled=n.disabledDate?m(s,C.value).every(n.disabledDate):!1,T.current=Je(n.parsedValue).findIndex(u=>u.year()===s)>=0,T.today=$.year()===s,T},c=s=>s===D.value&&n.date.year()<D.value&&n.date.year()>D.value+9||Je(n.date).findIndex(T=>T.year()===s)>=0,d=s=>{const $=s.target.closest("td");if($&&$.textContent){if(Bt($,"disabled"))return;const u=$.textContent||$.innerText;l("pick",Number(u))}};return Oe(()=>n.date,async()=>{var s,T;(s=w.value)!=null&&s.contains(document.activeElement)&&(await Ye(),(T=y.value)==null||T.focus())}),f({focus:P}),(s,T)=>(V(),K("table",{role:"grid","aria-label":e(k)("el.datepicker.yearTablePrompt"),class:b(e(g).b()),onClick:d},[U("tbody",{ref_key:"tbodyRef",ref:w},[(V(),K(he,null,Pe(3,($,u)=>U("tr",{key:u},[(V(),K(he,null,Pe(4,(z,M)=>(V(),K(he,{key:u+"_"+M},[u*4+M<10?(V(),K("td",{key:0,ref_for:!0,ref:E=>c(e(D)+u*4+M)&&(y.value=E),class:b(["available",h(e(D)+u*4+M)]),"aria-selected":`${c(e(D)+u*4+M)}`,tabindex:c(e(D)+u*4+M)?0:-1,onKeydown:[lt(Fe(d,["prevent","stop"]),["space"]),lt(Fe(d,["prevent","stop"]),["enter"])]},[U("span",Tn,oe(e(D)+u*4+M),1)],42,$n)):(V(),K("td",Vn))],64))),64))])),64))],512)],10,_n))}});var Yn=Le(On,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/basic-year-table.vue"]]);const xn=["onClick"],In=["aria-label"],Rn=["aria-label"],An=["aria-label"],Nn=["aria-label"],Fn=Te({__name:"panel-date-pick",props:ln,emits:["pick","set-picker-option","panel-change"],setup(i,{emit:f}){const l=i,n=(o,Y,p)=>!0,m=$e("picker-panel"),g=$e("date-picker"),k=Tt(),C=Kt(),{t:w,lang:y}=Re(),D=Ge("EP_PICKER_BASE"),P=Ge(_a),{shortcuts:h,disabledDate:c,cellClassName:d,defaultTime:s}=D.props,T=st(D.props,"defaultValue"),$=q(),u=q(j().locale(y.value)),z=q(!1);let M=!1;const E=I(()=>j(s).locale(y.value)),N=I(()=>u.value.month()),R=I(()=>u.value.year()),O=q([]),F=q(null),Z=q(null),G=o=>O.value.length>0?n(o,O.value,l.format||"HH:mm:ss"):!0,ae=o=>s&&!Ce.value&&!z.value&&!M?E.value.year(o.year()).month(o.month()).date(o.date()):re.value?o.millisecond(0):o.startOf("day"),L=(o,...Y)=>{if(!o)f("pick",o,...Y);else if(ye(o)){const p=o.map(ae);f("pick",p,...Y)}else f("pick",ae(o),...Y);F.value=null,Z.value=null,z.value=!1,M=!1},ee=(o,Y)=>{if(r.value==="date"){o=o;let p=l.parsedValue?l.parsedValue.year(o.year()).month(o.month()).date(o.date()):o;G(p)||(p=O.value[0][0].year(o.year()).month(o.month()).date(o.date())),u.value=p,L(p,re.value||Y)}else r.value==="week"?L(o.date):r.value==="dates"&&L(o,!0)},de=o=>{const Y=o?"add":"subtract";u.value=u.value[Y](1,"month"),He("month")},pe=o=>{const Y=u.value,p=o?"add":"subtract";u.value=W.value==="year"?Y[p](10,"year"):Y[p](1,"year"),He("year")},W=q("date"),A=I(()=>{const o=w("el.datepicker.year");if(W.value==="year"){const Y=Math.floor(R.value/10)*10;return o?`${Y} ${o} - ${Y+9} ${o}`:`${Y} - ${Y+9}`}return`${R.value} ${o}`}),a=o=>{const Y=St(o.value)?o.value():o.value;if(Y){M=!0,L(j(Y).locale(y.value));return}o.onClick&&o.onClick({attrs:k,slots:C,emit:f})},r=I(()=>{const{type:o}=l;return["week","month","year","dates"].includes(o)?o:"date"}),v=I(()=>r.value==="date"?W.value:r.value),S=I(()=>!!h.length),H=async o=>{u.value=u.value.startOf("month").month(o),r.value==="month"?L(u.value,!1):(W.value="date",["month","year","date","week"].includes(r.value)&&(L(u.value,!0),await Ye(),We())),He("month")},Q=async o=>{r.value==="year"?(u.value=u.value.startOf("year").year(o),L(u.value,!1)):(u.value=u.value.year(o),W.value="month",["month","year","date","week"].includes(r.value)&&(L(u.value,!0),await Ye(),We())),He("year")},ne=async o=>{W.value=o,await Ye(),We()},re=I(()=>l.type==="datetime"||l.type==="datetimerange"),ie=I(()=>re.value||r.value==="dates"),we=I(()=>c?l.parsedValue?ye(l.parsedValue)?c(l.parsedValue[0].toDate()):c(l.parsedValue.toDate()):!0:!1),De=()=>{if(r.value==="dates")L(l.parsedValue);else{let o=l.parsedValue;if(!o){const Y=j(s).locale(y.value),p=Ue();o=Y.year(p.year()).month(p.month()).date(p.date())}u.value=o,L(o)}},Ae=I(()=>c?c(j().locale(y.value).toDate()):!1),Me=()=>{const Y=j().locale(y.value).toDate();z.value=!0,(!c||!c(Y))&&G(Y)&&(u.value=j().locale(y.value),L(u.value))},ve=I(()=>l.timeFormat||Wt(l.format)),Se=I(()=>l.dateFormat||Ht(l.format)),Ce=I(()=>{if(Z.value)return Z.value;if(!(!l.parsedValue&&!T.value))return(l.parsedValue||u.value).format(ve.value)}),Ve=I(()=>{if(F.value)return F.value;if(!(!l.parsedValue&&!T.value))return(l.parsedValue||u.value).format(Se.value)}),ge=q(!1),Be=()=>{ge.value=!0},tt=()=>{ge.value=!1},_e=o=>({hour:o.hour(),minute:o.minute(),second:o.second(),year:o.year(),month:o.month(),date:o.date()}),J=(o,Y,p)=>{const{hour:x,minute:t,second:_}=_e(o),X=l.parsedValue?l.parsedValue.hour(x).minute(t).second(_):o;u.value=X,L(u.value,!0),p||(ge.value=Y)},qe=o=>{const Y=j(o,ve.value).locale(y.value);if(Y.isValid()&&G(Y)){const{year:p,month:x,date:t}=_e(u.value);u.value=Y.year(p).month(x).date(t),Z.value=null,ge.value=!1,L(u.value,!0)}},Ke=o=>{const Y=j(o,Se.value).locale(y.value);if(Y.isValid()){if(c&&c(Y.toDate()))return;const{hour:p,minute:x,second:t}=_e(u.value);u.value=Y.hour(p).minute(x).second(t),F.value=null,L(u.value,!0)}},ze=o=>j.isDayjs(o)&&o.isValid()&&(c?!c(o.toDate()):!0),Ee=o=>r.value==="dates"?o.map(Y=>Y.format(l.format)):o.format(l.format),Ze=o=>j(o,l.format).locale(y.value),Ue=()=>{const o=j(T.value).locale(y.value);if(!T.value){const Y=E.value;return j().hour(Y.hour()).minute(Y.minute()).second(Y.second()).locale(y.value)}return o},We=async()=>{var o;["week","month","year","date"].includes(r.value)&&((o=$.value)==null||o.focus(),r.value==="week"&&Xe(me.down))},ot=o=>{const{code:Y}=o;[me.up,me.down,me.left,me.right,me.home,me.end,me.pageUp,me.pageDown].includes(Y)&&(Xe(Y),o.stopPropagation(),o.preventDefault()),[me.enter,me.space,me.numpadEnter].includes(Y)&&F.value===null&&Z.value===null&&(o.preventDefault(),L(u.value,!1))},Xe=o=>{var Y;const{up:p,down:x,left:t,right:_,home:X,end:ue,pageUp:xe,pageDown:ia}=me,ua={year:{[p]:-4,[x]:4,[t]:-1,[_]:1,offset:(le,Ne)=>le.setFullYear(le.getFullYear()+Ne)},month:{[p]:-4,[x]:4,[t]:-1,[_]:1,offset:(le,Ne)=>le.setMonth(le.getMonth()+Ne)},week:{[p]:-1,[x]:1,[t]:-1,[_]:1,offset:(le,Ne)=>le.setDate(le.getDate()+Ne*7)},date:{[p]:-7,[x]:7,[t]:-1,[_]:1,[X]:le=>-le.getDay(),[ue]:le=>-le.getDay()+6,[xe]:le=>-new Date(le.getFullYear(),le.getMonth(),0).getDate(),[ia]:le=>new Date(le.getFullYear(),le.getMonth()+1,0).getDate(),offset:(le,Ne)=>le.setDate(le.getDate()+Ne)}},rt=u.value.toDate();for(;Math.abs(u.value.diff(rt,"year",!0))<1;){const le=ua[v.value];if(!le)return;if(le.offset(rt,St(le[o])?le[o](rt):(Y=le[o])!=null?Y:0),c&&c(rt))break;const Ne=j(rt).locale(y.value);u.value=Ne,f("pick",Ne,!0);break}},He=o=>{f("panel-change",u.value.toDate(),o,W.value)};return Oe(()=>r.value,o=>{if(["month","year"].includes(o)){W.value=o;return}W.value="date"},{immediate:!0}),Oe(()=>W.value,()=>{P?.updatePopper()}),Oe(()=>T.value,o=>{o&&(u.value=Ue())},{immediate:!0}),Oe(()=>l.parsedValue,o=>{if(o){if(r.value==="dates"||Array.isArray(o))return;u.value=o}else u.value=Ue()},{immediate:!0}),f("set-picker-option",["isValidValue",ze]),f("set-picker-option",["formatToString",Ee]),f("set-picker-option",["parseUserInput",Ze]),f("set-picker-option",["handleFocusPicker",We]),(o,Y)=>(V(),K("div",{class:b([e(m).b(),e(g).b(),{"has-sidebar":o.$slots.sidebar||e(S),"has-time":e(re)}])},[U("div",{class:b(e(m).e("body-wrapper"))},[it(o.$slots,"sidebar",{class:b(e(m).e("sidebar"))}),e(S)?(V(),K("div",{key:0,class:b(e(m).e("sidebar"))},[(V(!0),K(he,null,Pe(e(h),(p,x)=>(V(),K("button",{key:x,type:"button",class:b(e(m).e("shortcut")),onClick:t=>a(p)},oe(p.text),11,xn))),128))],2)):ce("v-if",!0),U("div",{class:b(e(m).e("body"))},[e(re)?(V(),K("div",{key:0,class:b(e(g).e("time-header"))},[U("span",{class:b(e(g).e("editor-wrap"))},[B(e(Qe),{placeholder:e(w)("el.datepicker.selectDate"),"model-value":e(Ve),size:"small","validate-event":!1,onInput:Y[0]||(Y[0]=p=>F.value=p),onChange:Ke},null,8,["placeholder","model-value"])],2),Ie((V(),K("span",{class:b(e(g).e("editor-wrap"))},[B(e(Qe),{placeholder:e(w)("el.datepicker.selectTime"),"model-value":e(Ce),size:"small","validate-event":!1,onFocus:Be,onInput:Y[1]||(Y[1]=p=>Z.value=p),onChange:qe},null,8,["placeholder","model-value"]),B(e(Ct),{visible:ge.value,format:e(ve),"parsed-value":u.value,onPick:J},null,8,["visible","format","parsed-value"])],2)),[[e(wt),tt]])],2)):ce("v-if",!0),Ie(U("div",{class:b([e(g).e("header"),(W.value==="year"||W.value==="month")&&e(g).e("header--bordered")])},[U("span",{class:b(e(g).e("prev-btn"))},[U("button",{type:"button","aria-label":e(w)("el.datepicker.prevYear"),class:b(["d-arrow-left",e(m).e("icon-btn")]),onClick:Y[2]||(Y[2]=p=>pe(!1))},[B(e(fe),null,{default:te(()=>[B(e(ut))]),_:1})],10,In),Ie(U("button",{type:"button","aria-label":e(w)("el.datepicker.prevMonth"),class:b([e(m).e("icon-btn"),"arrow-left"]),onClick:Y[3]||(Y[3]=p=>de(!1))},[B(e(fe),null,{default:te(()=>[B(e(Dt))]),_:1})],10,Rn),[[at,W.value==="date"]])],2),U("span",{role:"button",class:b(e(g).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:Y[4]||(Y[4]=lt(p=>ne("year"),["enter"])),onClick:Y[5]||(Y[5]=p=>ne("year"))},oe(e(A)),35),Ie(U("span",{role:"button","aria-live":"polite",tabindex:"0",class:b([e(g).e("header-label"),{active:W.value==="month"}]),onKeydown:Y[6]||(Y[6]=lt(p=>ne("month"),["enter"])),onClick:Y[7]||(Y[7]=p=>ne("month"))},oe(e(w)(`el.datepicker.month${e(N)+1}`)),35),[[at,W.value==="date"]]),U("span",{class:b(e(g).e("next-btn"))},[Ie(U("button",{type:"button","aria-label":e(w)("el.datepicker.nextMonth"),class:b([e(m).e("icon-btn"),"arrow-right"]),onClick:Y[8]||(Y[8]=p=>de(!0))},[B(e(fe),null,{default:te(()=>[B(e(pt))]),_:1})],10,An),[[at,W.value==="date"]]),U("button",{type:"button","aria-label":e(w)("el.datepicker.nextYear"),class:b([e(m).e("icon-btn"),"d-arrow-right"]),onClick:Y[9]||(Y[9]=p=>pe(!0))},[B(e(fe),null,{default:te(()=>[B(e(ct))]),_:1})],10,Nn)],2)],2),[[at,W.value!=="time"]]),U("div",{class:b(e(m).e("content")),onKeydown:ot},[W.value==="date"?(V(),be(_t,{key:0,ref_key:"currentViewRef",ref:$,"selection-mode":e(r),date:u.value,"parsed-value":o.parsedValue,"disabled-date":e(c),"cell-class-name":e(d),onPick:ee},null,8,["selection-mode","date","parsed-value","disabled-date","cell-class-name"])):ce("v-if",!0),W.value==="year"?(V(),be(Yn,{key:1,ref_key:"currentViewRef",ref:$,date:u.value,"disabled-date":e(c),"parsed-value":o.parsedValue,onPick:Q},null,8,["date","disabled-date","parsed-value"])):ce("v-if",!0),W.value==="month"?(V(),be($t,{key:2,ref_key:"currentViewRef",ref:$,date:u.value,"parsed-value":o.parsedValue,"disabled-date":e(c),onPick:H},null,8,["date","parsed-value","disabled-date"])):ce("v-if",!0)],34)],2)],2),Ie(U("div",{class:b(e(m).e("footer"))},[Ie(B(e(ht),{text:"",size:"small",class:b(e(m).e("link-btn")),disabled:e(Ae),onClick:Me},{default:te(()=>[je(oe(e(w)("el.datepicker.now")),1)]),_:1},8,["class","disabled"]),[[at,e(r)!=="dates"]]),B(e(ht),{plain:"",size:"small",class:b(e(m).e("link-btn")),disabled:e(we),onClick:De},{default:te(()=>[je(oe(e(w)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])],2),[[at,e(ie)&&W.value==="date"]])],2))}});var En=Le(Fn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/panel-date-pick.vue"]]);const Ln=ke({...na,...la}),Bn=i=>{const{emit:f}=zt(),l=Tt(),n=Kt();return g=>{const k=St(g.value)?g.value():g.value;if(k){f("pick",[j(k[0]).locale(i.value),j(k[1]).locale(i.value)]);return}g.onClick&&g.onClick({attrs:l,slots:n,emit:f})}},ra=(i,{defaultValue:f,leftDate:l,rightDate:n,unit:m,onParsedValueChanged:g})=>{const{emit:k}=zt(),{pickerNs:C}=Ge(Vt),w=$e("date-range-picker"),{t:y,lang:D}=Re(),P=Bn(D),h=q(),c=q(),d=q({endDate:null,selecting:!1}),s=z=>{d.value=z},T=(z=!1)=>{const M=e(h),E=e(c);Pt([M,E])&&k("pick",[M,E],z)},$=z=>{d.value.selecting=z,z||(d.value.endDate=null)},u=()=>{const[z,M]=oa(e(f),{lang:e(D),unit:m,unlinkPanels:i.unlinkPanels});h.value=void 0,c.value=void 0,l.value=z,n.value=M};return Oe(f,z=>{z&&u()},{immediate:!0}),Oe(()=>i.parsedValue,z=>{if(ye(z)&&z.length===2){const[M,E]=z;h.value=M,l.value=M,c.value=E,g(e(h),e(c))}else u()},{immediate:!0}),{minDate:h,maxDate:c,rangeState:d,lang:D,ppNs:C,drpNs:w,handleChangeRange:s,handleRangeConfirm:T,handleShortcutClick:P,onSelect:$,t:y}},Kn=["onClick"],zn=["aria-label"],Un=["aria-label"],Wn=["disabled","aria-label"],Hn=["disabled","aria-label"],jn=["disabled","aria-label"],Gn=["disabled","aria-label"],qn=["aria-label"],Zn=["aria-label"],ft="month",Xn=Te({__name:"panel-date-range",props:Ln,emits:["pick","set-picker-option","calendar-change","panel-change"],setup(i,{emit:f}){const l=i,n=Ge("EP_PICKER_BASE"),{disabledDate:m,cellClassName:g,format:k,defaultTime:C,clearable:w}=n.props,y=st(n.props,"shortcuts"),D=st(n.props,"defaultValue"),{lang:P}=Re(),h=q(j().locale(P.value)),c=q(j().locale(P.value).add(1,ft)),{minDate:d,maxDate:s,rangeState:T,ppNs:$,drpNs:u,handleChangeRange:z,handleRangeConfirm:M,handleShortcutClick:E,onSelect:N,t:R}=ra(l,{defaultValue:D,leftDate:h,rightDate:c,unit:ft,onParsedValueChanged:Y}),O=q({min:null,max:null}),F=q({min:null,max:null}),Z=I(()=>`${h.value.year()} ${R("el.datepicker.year")} ${R(`el.datepicker.month${h.value.month()+1}`)}`),G=I(()=>`${c.value.year()} ${R("el.datepicker.year")} ${R(`el.datepicker.month${c.value.month()+1}`)}`),ae=I(()=>h.value.year()),L=I(()=>h.value.month()),ee=I(()=>c.value.year()),de=I(()=>c.value.month()),pe=I(()=>!!y.value.length),W=I(()=>O.value.min!==null?O.value.min:d.value?d.value.format(S.value):""),A=I(()=>O.value.max!==null?O.value.max:s.value||d.value?(s.value||d.value).format(S.value):""),a=I(()=>F.value.min!==null?F.value.min:d.value?d.value.format(v.value):""),r=I(()=>F.value.max!==null?F.value.max:s.value||d.value?(s.value||d.value).format(v.value):""),v=I(()=>l.timeFormat||Wt(k)),S=I(()=>l.dateFormat||Ht(k)),H=p=>Pt(p)&&(m?!m(p[0].toDate())&&!m(p[1].toDate()):!0),Q=()=>{h.value=h.value.subtract(1,"year"),l.unlinkPanels||(c.value=h.value.add(1,"month")),ve("year")},ne=()=>{h.value=h.value.subtract(1,"month"),l.unlinkPanels||(c.value=h.value.add(1,"month")),ve("month")},re=()=>{l.unlinkPanels?c.value=c.value.add(1,"year"):(h.value=h.value.add(1,"year"),c.value=h.value.add(1,"month")),ve("year")},ie=()=>{l.unlinkPanels?c.value=c.value.add(1,"month"):(h.value=h.value.add(1,"month"),c.value=h.value.add(1,"month")),ve("month")},we=()=>{h.value=h.value.add(1,"year"),ve("year")},De=()=>{h.value=h.value.add(1,"month"),ve("month")},Ae=()=>{c.value=c.value.subtract(1,"year"),ve("year")},Me=()=>{c.value=c.value.subtract(1,"month"),ve("month")},ve=p=>{f("panel-change",[h.value.toDate(),c.value.toDate()],p)},Se=I(()=>{const p=(L.value+1)%12,x=L.value+1>=12?1:0;return l.unlinkPanels&&new Date(ae.value+x,p)<new Date(ee.value,de.value)}),Ce=I(()=>l.unlinkPanels&&ee.value*12+de.value-(ae.value*12+L.value+1)>=12),Ve=I(()=>!(d.value&&s.value&&!T.value.selecting&&Pt([d.value,s.value]))),ge=I(()=>l.type==="datetime"||l.type==="datetimerange"),Be=(p,x)=>{if(!!p)return C?j(C[x]||C).locale(P.value).year(p.year()).month(p.month()).date(p.date()):p},tt=(p,x=!0)=>{const t=p.minDate,_=p.maxDate,X=Be(t,0),ue=Be(_,1);s.value===ue&&d.value===X||(f("calendar-change",[t.toDate(),_&&_.toDate()]),s.value=ue,d.value=X,!(!x||ge.value)&&M())},_e=q(!1),J=q(!1),qe=()=>{_e.value=!1},Ke=()=>{J.value=!1},ze=(p,x)=>{O.value[x]=p;const t=j(p,S.value).locale(P.value);if(t.isValid()){if(m&&m(t.toDate()))return;x==="min"?(h.value=t,d.value=(d.value||h.value).year(t.year()).month(t.month()).date(t.date()),!l.unlinkPanels&&(!s.value||s.value.isBefore(d.value))&&(c.value=t.add(1,"month"),s.value=d.value.add(1,"month"))):(c.value=t,s.value=(s.value||c.value).year(t.year()).month(t.month()).date(t.date()),!l.unlinkPanels&&(!d.value||d.value.isAfter(s.value))&&(h.value=t.subtract(1,"month"),d.value=s.value.subtract(1,"month")))}},Ee=(p,x)=>{O.value[x]=null},Ze=(p,x)=>{F.value[x]=p;const t=j(p,v.value).locale(P.value);t.isValid()&&(x==="min"?(_e.value=!0,d.value=(d.value||h.value).hour(t.hour()).minute(t.minute()).second(t.second()),(!s.value||s.value.isBefore(d.value))&&(s.value=d.value)):(J.value=!0,s.value=(s.value||c.value).hour(t.hour()).minute(t.minute()).second(t.second()),c.value=s.value,s.value&&s.value.isBefore(d.value)&&(d.value=s.value)))},Ue=(p,x)=>{F.value[x]=null,x==="min"?(h.value=d.value,_e.value=!1):(c.value=s.value,J.value=!1)},We=(p,x,t)=>{F.value.min||(p&&(h.value=p,d.value=(d.value||h.value).hour(p.hour()).minute(p.minute()).second(p.second())),t||(_e.value=x),(!s.value||s.value.isBefore(d.value))&&(s.value=d.value,c.value=p))},ot=(p,x,t)=>{F.value.max||(p&&(c.value=p,s.value=(s.value||c.value).hour(p.hour()).minute(p.minute()).second(p.second())),t||(J.value=x),s.value&&s.value.isBefore(d.value)&&(d.value=s.value))},Xe=()=>{h.value=oa(e(D),{lang:e(P),unit:"month",unlinkPanels:l.unlinkPanels})[0],c.value=h.value.add(1,"month"),f("pick",null)},He=p=>ye(p)?p.map(x=>x.format(k)):p.format(k),o=p=>ye(p)?p.map(x=>j(x,k).locale(P.value)):j(p,k).locale(P.value);function Y(p,x){if(l.unlinkPanels&&x){const t=p?.year()||0,_=p?.month()||0,X=x.year(),ue=x.month();c.value=t===X&&_===ue?x.add(1,ft):x}else c.value=h.value.add(1,ft),x&&(c.value=c.value.hour(x.hour()).minute(x.minute()).second(x.second()))}return f("set-picker-option",["isValidValue",H]),f("set-picker-option",["parseUserInput",o]),f("set-picker-option",["formatToString",He]),f("set-picker-option",["handleClear",Xe]),(p,x)=>(V(),K("div",{class:b([e($).b(),e(u).b(),{"has-sidebar":p.$slots.sidebar||e(pe),"has-time":e(ge)}])},[U("div",{class:b(e($).e("body-wrapper"))},[it(p.$slots,"sidebar",{class:b(e($).e("sidebar"))}),e(pe)?(V(),K("div",{key:0,class:b(e($).e("sidebar"))},[(V(!0),K(he,null,Pe(e(y),(t,_)=>(V(),K("button",{key:_,type:"button",class:b(e($).e("shortcut")),onClick:X=>e(E)(t)},oe(t.text),11,Kn))),128))],2)):ce("v-if",!0),U("div",{class:b(e($).e("body"))},[e(ge)?(V(),K("div",{key:0,class:b(e(u).e("time-header"))},[U("span",{class:b(e(u).e("editors-wrap"))},[U("span",{class:b(e(u).e("time-picker-wrap"))},[B(e(Qe),{size:"small",disabled:e(T).selecting,placeholder:e(R)("el.datepicker.startDate"),class:b(e(u).e("editor")),"model-value":e(W),"validate-event":!1,onInput:x[0]||(x[0]=t=>ze(t,"min")),onChange:x[1]||(x[1]=t=>Ee(t,"min"))},null,8,["disabled","placeholder","class","model-value"])],2),Ie((V(),K("span",{class:b(e(u).e("time-picker-wrap"))},[B(e(Qe),{size:"small",class:b(e(u).e("editor")),disabled:e(T).selecting,placeholder:e(R)("el.datepicker.startTime"),"model-value":e(a),"validate-event":!1,onFocus:x[2]||(x[2]=t=>_e.value=!0),onInput:x[3]||(x[3]=t=>Ze(t,"min")),onChange:x[4]||(x[4]=t=>Ue(t,"min"))},null,8,["class","disabled","placeholder","model-value"]),B(e(Ct),{visible:_e.value,format:e(v),"datetime-role":"start","parsed-value":h.value,onPick:We},null,8,["visible","format","parsed-value"])],2)),[[e(wt),qe]])],2),U("span",null,[B(e(fe),null,{default:te(()=>[B(e(pt))]),_:1})]),U("span",{class:b([e(u).e("editors-wrap"),"is-right"])},[U("span",{class:b(e(u).e("time-picker-wrap"))},[B(e(Qe),{size:"small",class:b(e(u).e("editor")),disabled:e(T).selecting,placeholder:e(R)("el.datepicker.endDate"),"model-value":e(A),readonly:!e(d),"validate-event":!1,onInput:x[5]||(x[5]=t=>ze(t,"max")),onChange:x[6]||(x[6]=t=>Ee(t,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"])],2),Ie((V(),K("span",{class:b(e(u).e("time-picker-wrap"))},[B(e(Qe),{size:"small",class:b(e(u).e("editor")),disabled:e(T).selecting,placeholder:e(R)("el.datepicker.endTime"),"model-value":e(r),readonly:!e(d),"validate-event":!1,onFocus:x[7]||(x[7]=t=>e(d)&&(J.value=!0)),onInput:x[8]||(x[8]=t=>Ze(t,"max")),onChange:x[9]||(x[9]=t=>Ue(t,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"]),B(e(Ct),{"datetime-role":"end",visible:J.value,format:e(v),"parsed-value":c.value,onPick:ot},null,8,["visible","format","parsed-value"])],2)),[[e(wt),Ke]])],2)],2)):ce("v-if",!0),U("div",{class:b([[e($).e("content"),e(u).e("content")],"is-left"])},[U("div",{class:b(e(u).e("header"))},[U("button",{type:"button",class:b([e($).e("icon-btn"),"d-arrow-left"]),"aria-label":e(R)("el.datepicker.prevYear"),onClick:Q},[B(e(fe),null,{default:te(()=>[B(e(ut))]),_:1})],10,zn),U("button",{type:"button",class:b([e($).e("icon-btn"),"arrow-left"]),"aria-label":e(R)("el.datepicker.prevMonth"),onClick:ne},[B(e(fe),null,{default:te(()=>[B(e(Dt))]),_:1})],10,Un),p.unlinkPanels?(V(),K("button",{key:0,type:"button",disabled:!e(Ce),class:b([[e($).e("icon-btn"),{"is-disabled":!e(Ce)}],"d-arrow-right"]),"aria-label":e(R)("el.datepicker.nextYear"),onClick:we},[B(e(fe),null,{default:te(()=>[B(e(ct))]),_:1})],10,Wn)):ce("v-if",!0),p.unlinkPanels?(V(),K("button",{key:1,type:"button",disabled:!e(Se),class:b([[e($).e("icon-btn"),{"is-disabled":!e(Se)}],"arrow-right"]),"aria-label":e(R)("el.datepicker.nextMonth"),onClick:De},[B(e(fe),null,{default:te(()=>[B(e(pt))]),_:1})],10,Hn)):ce("v-if",!0),U("div",null,oe(e(Z)),1)],2),B(_t,{"selection-mode":"range",date:h.value,"min-date":e(d),"max-date":e(s),"range-state":e(T),"disabled-date":e(m),"cell-class-name":e(g),onChangerange:e(z),onPick:tt,onSelect:e(N)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])],2),U("div",{class:b([[e($).e("content"),e(u).e("content")],"is-right"])},[U("div",{class:b(e(u).e("header"))},[p.unlinkPanels?(V(),K("button",{key:0,type:"button",disabled:!e(Ce),class:b([[e($).e("icon-btn"),{"is-disabled":!e(Ce)}],"d-arrow-left"]),"aria-label":e(R)("el.datepicker.prevYear"),onClick:Ae},[B(e(fe),null,{default:te(()=>[B(e(ut))]),_:1})],10,jn)):ce("v-if",!0),p.unlinkPanels?(V(),K("button",{key:1,type:"button",disabled:!e(Se),class:b([[e($).e("icon-btn"),{"is-disabled":!e(Se)}],"arrow-left"]),"aria-label":e(R)("el.datepicker.prevMonth"),onClick:Me},[B(e(fe),null,{default:te(()=>[B(e(Dt))]),_:1})],10,Gn)):ce("v-if",!0),U("button",{type:"button","aria-label":e(R)("el.datepicker.nextYear"),class:b([e($).e("icon-btn"),"d-arrow-right"]),onClick:re},[B(e(fe),null,{default:te(()=>[B(e(ct))]),_:1})],10,qn),U("button",{type:"button",class:b([e($).e("icon-btn"),"arrow-right"]),"aria-label":e(R)("el.datepicker.nextMonth"),onClick:ie},[B(e(fe),null,{default:te(()=>[B(e(pt))]),_:1})],10,Zn),U("div",null,oe(e(G)),1)],2),B(_t,{"selection-mode":"range",date:c.value,"min-date":e(d),"max-date":e(s),"range-state":e(T),"disabled-date":e(m),"cell-class-name":e(g),onChangerange:e(z),onPick:tt,onSelect:e(N)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])],2)],2)],2),e(ge)?(V(),K("div",{key:0,class:b(e($).e("footer"))},[e(w)?(V(),be(e(ht),{key:0,text:"",size:"small",class:b(e($).e("link-btn")),onClick:Xe},{default:te(()=>[je(oe(e(R)("el.datepicker.clear")),1)]),_:1},8,["class"])):ce("v-if",!0),B(e(ht),{plain:"",size:"small",class:b(e($).e("link-btn")),disabled:e(Ve),onClick:x[10]||(x[10]=t=>e(M)(!1))},{default:te(()=>[je(oe(e(R)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])],2)):ce("v-if",!0)],2))}});var Qn=Le(Xn,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/panel-date-range.vue"]]);const Jn=ke({...la}),el=["pick","set-picker-option","calendar-change"],tl=({unlinkPanels:i,leftDate:f,rightDate:l})=>{const{t:n}=Re(),m=()=>{f.value=f.value.subtract(1,"year"),i.value||(l.value=l.value.subtract(1,"year"))},g=()=>{i.value||(f.value=f.value.add(1,"year")),l.value=l.value.add(1,"year")},k=()=>{f.value=f.value.add(1,"year")},C=()=>{l.value=l.value.subtract(1,"year")},w=I(()=>`${f.value.year()} ${n("el.datepicker.year")}`),y=I(()=>`${l.value.year()} ${n("el.datepicker.year")}`),D=I(()=>f.value.year()),P=I(()=>l.value.year()===f.value.year()?f.value.year()+1:l.value.year());return{leftPrevYear:m,rightNextYear:g,leftNextYear:k,rightPrevYear:C,leftLabel:w,rightLabel:y,leftYear:D,rightYear:P}},al=["onClick"],nl=["disabled"],ll=["disabled"],vt="year",sl=Te({name:"DatePickerMonthRange"}),ol=Te({...sl,props:Jn,emits:el,setup(i,{emit:f}){const l=i,{lang:n}=Re(),m=Ge("EP_PICKER_BASE"),{shortcuts:g,disabledDate:k,format:C}=m.props,w=st(m.props,"defaultValue"),y=q(j().locale(n.value)),D=q(j().locale(n.value).add(1,vt)),{minDate:P,maxDate:h,rangeState:c,ppNs:d,drpNs:s,handleChangeRange:T,handleRangeConfirm:$,handleShortcutClick:u,onSelect:z}=ra(l,{defaultValue:w,leftDate:y,rightDate:D,unit:vt,onParsedValueChanged:pe}),M=I(()=>!!g.length),{leftPrevYear:E,rightNextYear:N,leftNextYear:R,rightPrevYear:O,leftLabel:F,rightLabel:Z,leftYear:G,rightYear:ae}=tl({unlinkPanels:st(l,"unlinkPanels"),leftDate:y,rightDate:D}),L=I(()=>l.unlinkPanels&&ae.value>G.value+1),ee=(W,A=!0)=>{const a=W.minDate,r=W.maxDate;h.value===r&&P.value===a||(f("calendar-change",[a.toDate(),r&&r.toDate()]),h.value=r,P.value=a,A&&$())},de=W=>W.map(A=>A.format(C));function pe(W,A){if(l.unlinkPanels&&A){const a=W?.year()||0,r=A.year();D.value=a===r?A.add(1,vt):A}else D.value=y.value.add(1,vt)}return f("set-picker-option",["formatToString",de]),(W,A)=>(V(),K("div",{class:b([e(d).b(),e(s).b(),{"has-sidebar":Boolean(W.$slots.sidebar)||e(M)}])},[U("div",{class:b(e(d).e("body-wrapper"))},[it(W.$slots,"sidebar",{class:b(e(d).e("sidebar"))}),e(M)?(V(),K("div",{key:0,class:b(e(d).e("sidebar"))},[(V(!0),K(he,null,Pe(e(g),(a,r)=>(V(),K("button",{key:r,type:"button",class:b(e(d).e("shortcut")),onClick:v=>e(u)(a)},oe(a.text),11,al))),128))],2)):ce("v-if",!0),U("div",{class:b(e(d).e("body"))},[U("div",{class:b([[e(d).e("content"),e(s).e("content")],"is-left"])},[U("div",{class:b(e(s).e("header"))},[U("button",{type:"button",class:b([e(d).e("icon-btn"),"d-arrow-left"]),onClick:A[0]||(A[0]=(...a)=>e(E)&&e(E)(...a))},[B(e(fe),null,{default:te(()=>[B(e(ut))]),_:1})],2),W.unlinkPanels?(V(),K("button",{key:0,type:"button",disabled:!e(L),class:b([[e(d).e("icon-btn"),{[e(d).is("disabled")]:!e(L)}],"d-arrow-right"]),onClick:A[1]||(A[1]=(...a)=>e(R)&&e(R)(...a))},[B(e(fe),null,{default:te(()=>[B(e(ct))]),_:1})],10,nl)):ce("v-if",!0),U("div",null,oe(e(F)),1)],2),B($t,{"selection-mode":"range",date:y.value,"min-date":e(P),"max-date":e(h),"range-state":e(c),"disabled-date":e(k),onChangerange:e(T),onPick:ee,onSelect:e(z)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),U("div",{class:b([[e(d).e("content"),e(s).e("content")],"is-right"])},[U("div",{class:b(e(s).e("header"))},[W.unlinkPanels?(V(),K("button",{key:0,type:"button",disabled:!e(L),class:b([[e(d).e("icon-btn"),{"is-disabled":!e(L)}],"d-arrow-left"]),onClick:A[2]||(A[2]=(...a)=>e(O)&&e(O)(...a))},[B(e(fe),null,{default:te(()=>[B(e(ut))]),_:1})],10,ll)):ce("v-if",!0),U("button",{type:"button",class:b([e(d).e("icon-btn"),"d-arrow-right"]),onClick:A[3]||(A[3]=(...a)=>e(N)&&e(N)(...a))},[B(e(fe),null,{default:te(()=>[B(e(ct))]),_:1})],2),U("div",null,oe(e(Z)),1)],2),B($t,{"selection-mode":"range",date:D.value,"min-date":e(P),"max-date":e(h),"range-state":e(c),"disabled-date":e(k),onChangerange:e(T),onPick:ee,onSelect:e(z)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var rl=Le(ol,[["__file","/home/runner/work/element-plus/element-plus/packages/components/date-picker/src/date-picker-com/panel-month-range.vue"]]);const il=function(i){switch(i){case"daterange":case"datetimerange":return Qn;case"monthrange":return rl;default:return En}};j.extend(Va);j.extend(Za);j.extend(Ya);j.extend(Xa);j.extend(Qa);j.extend(Ja);j.extend(en);j.extend(tn);var ul=Te({name:"ElDatePicker",install:null,props:an,emits:["update:modelValue"],setup(i,{expose:f,emit:l,slots:n}){const m=$e("picker-panel");yt("ElPopperOptions",$a(st(i,"popperOptions"))),yt(Vt,{slots:n,pickerNs:m});const g=q();f({focus:(w=!0)=>{var y;(y=g.value)==null||y.focus(w)},handleOpen:()=>{var w;(w=g.value)==null||w.handleOpen()},handleClose:()=>{var w;(w=g.value)==null||w.handleClose()}});const C=w=>{l("update:modelValue",w)};return()=>{var w;const y=(w=i.format)!=null?w:xa[i.type]||nt,D=il(i.type);return B(Ea,Lt(i,{format:y,type:i.type,ref:g,"onUpdate:modelValue":C}),{default:P=>B(D,P,null),"range-separator":n["range-separator"]})}}});const mt=ul;mt.install=i=>{i.component(mt.name,mt)};const pl=mt;export{pl as E};