dk-plus
Version:
2 lines (1 loc) • 1.69 kB
JavaScript
;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),h=require("./index3.js"),w=require("./index4.js"),o=require("./index5.js"),m=n.defineComponent({name:"DkDatePickerPanel",props:h.dkDatePickerPanelProps,emits:w.datePickerPanelEmits,setup(s,{emit:i}){const t=n.reactive({viewDate:new Date,selected:null}),l=n.computed(()=>{var a;const e=(a=s.firstDayOfWeek)!=null?a:0;return Math.min(6,Math.max(0,e))}),d=n.computed(()=>o.buildWeekdays(l.value)),c=n.computed(()=>{const e=t.viewDate.getFullYear(),a=t.viewDate.getMonth()+1;return`${e} \u5E74 ${a} \u6708`}),r=n.computed(()=>{const e=t.viewDate.getFullYear(),a=t.viewDate.getMonth();return o.buildMonthCells(e,a,t.selected,l.value,s.disabled,s.disabledDate)}),u=n.computed(()=>{const e=r.value;return[e.slice(0,7),e.slice(7,14),e.slice(14,21),e.slice(21,28),e.slice(28,35),e.slice(35,42)]}),D=n.computed(()=>({width:s.width})),v=e=>{const a=o.parseDate(e);t.selected=a,a&&(t.viewDate=new Date(a.getFullYear(),a.getMonth(),1))};return n.watch(()=>s.modelValue,e=>v(e||""),{immediate:!0}),{state:t,rootStyle:D,weekdays:d,headerText:c,rows:u,toPrevMonth:()=>{s.disabled||(t.viewDate=o.addMonths(t.viewDate,-1),i("panel-change",{year:t.viewDate.getFullYear(),month:t.viewDate.getMonth()+1}))},toNextMonth:()=>{s.disabled||(t.viewDate=o.addMonths(t.viewDate,1),i("panel-change",{year:t.viewDate.getFullYear(),month:t.viewDate.getMonth()+1}))},onPick:e=>{if(s.disabled||e.isDisabled)return;t.selected=new Date(e.date.getFullYear(),e.date.getMonth(),e.date.getDate());const a=o.formatDate(t.selected);i("update:modelValue",a),i("change",a)}}}});exports.default=m;