dk-plus
Version:
2 lines (1 loc) • 1.51 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=t=>String(t).padStart(2,"0"),m=t=>{const e=t.getFullYear(),n=t.getMonth()+1,o=t.getDate();return`${e}-${i(n)}-${i(o)}`},b=t=>{if(!t)return null;const e=/^\s*(\d{4})-(\d{2})-(\d{2})\s*$/.exec(t);if(!e)return null;const n=Number(e[1]),o=Number(e[2]),a=Number(e[3]);if([n,o,a].some(u=>Number.isNaN(u))||o<1||o>12||a<1||a>31)return null;const s=new Date(n,o-1,a);return s.getFullYear()!==n||s.getMonth()!==o-1||s.getDate()!==a?null:s},d=t=>new Date(t.getFullYear(),t.getMonth(),t.getDate()),D=(t,e)=>t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate(),F=(t,e)=>{const n=t.getFullYear(),o=t.getMonth()+e,a=t.getDate(),s=new Date(n,o,1),u=new Date(s.getFullYear(),s.getMonth()+1,0).getDate();return s.setDate(Math.min(a,u)),s},p=(t,e,n,o,a,s)=>{const f=((new Date(t,e,1).getDay()-o)%7+7)%7,l=new Date(t,e,1-f),h=d(new Date),g=[];for(let c=0;c<42;c++){const r=new Date(l.getFullYear(),l.getMonth(),l.getDate()+c),y=r.getMonth()===e,M=typeof s=="function"?!!s(r):!1;g.push({date:r,text:r.getDate(),isCurrentMonth:y,isToday:D(r,h),isSelected:!!n&&D(r,n),isDisabled:a||M})}return g},w=t=>{const e=["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"],n=(t%7+7)%7;return e.slice(n).concat(e.slice(0,n))};exports.addMonths=F;exports.buildMonthCells=p;exports.buildWeekdays=w;exports.formatDate=m;exports.isSameDay=D;exports.parseDate=b;exports.startOfDay=d;