| 1 |
- import{s as w,f as E,p as N,a as m,g as T}from"./utils.29572938.js";import{P as I}from"./index.aedf61b5.js";import{t as R,N as S,aG as g,d as _,R as h,y as A,Z as y,a_ as u,c as B,E as G,am as K,D as U}from"./index.ff8c07d1.js";const x=new Date().getFullYear(),[Z]=R("date-picker"),b=S({},w,{columnsType:{type:Array,default:()=>["year","month","day"]},minDate:{type:Date,default:()=>new Date(x-10,0,1),validator:g},maxDate:{type:Date,default:()=>new Date(x+10,11,31),validator:g}});var j=_({name:Z,props:b,emits:["confirm","cancel","change","update:modelValue"],setup(a,{emit:r,slots:v}){const n=h(a.modelValue),l=h(!1),M=()=>{const e=a.minDate.getFullYear(),t=a.maxDate.getFullYear();return m(e,t,"year",a.formatter,a.filter)},i=e=>e===a.minDate.getFullYear(),d=e=>e===a.maxDate.getFullYear(),Y=e=>e===a.minDate.getMonth()+1,V=e=>e===a.maxDate.getMonth()+1,s=e=>{const{minDate:t,columnsType:o}=a,c=o.indexOf(e),f=l.value?a.modelValue[c]:n.value[c];if(f)return+f;switch(e){case"year":return t.getFullYear();case"month":return t.getMonth()+1;case"day":return t.getDate()}},C=()=>{const e=s("year"),t=i(e)?a.minDate.getMonth()+1:1,o=d(e)?a.maxDate.getMonth()+1:12;return m(t,o,"month",a.formatter,a.filter)},P=()=>{const e=s("year"),t=s("month"),o=i(e)&&Y(t)?a.minDate.getDate():1,c=d(e)&&V(t)?a.maxDate.getDate():T(e,t);return m(o,c,"day",a.formatter,a.filter)},D=A(()=>a.columnsType.map(e=>{switch(e){case"year":return M();case"month":return C();case"day":return P();default:return[]}}));y(n,e=>{u(e,a.modelValue)||r("update:modelValue",e)}),y(()=>a.modelValue,(e,t)=>{l.value=u(t,n.value),e=E(e,D.value),u(e,n.value)||(n.value=e),l.value=!1},{immediate:!0});const k=(...e)=>r("change",...e),F=(...e)=>r("cancel",...e),O=(...e)=>r("confirm",...e);return()=>B(I,G({modelValue:n.value,"onUpdate:modelValue":e=>n.value=e,columns:D.value,onChange:k,onCancel:F,onConfirm:O},K(a,N)),v)}});const J=U(j);export{J as D};
|