UNPKG

@farris/ui-vue

Version:

Farris Vue, a Farris Design based Vue3 component library.

1 lines 78.7 kB
(function(Z,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("../common/index.umd.js"),require("lodash-es"),require("../time-picker/index.umd.js"),require("../button/index.umd.js"),require("../button-edit/index.umd.js"),require("../input-group/index.umd.js"),require("../popover/index.umd.js"),require("../date-picker/index.umd.js"),require("../locale/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../common/index.umd.js","lodash-es","../time-picker/index.umd.js","../button/index.umd.js","../button-edit/index.umd.js","../input-group/index.umd.js","../popover/index.umd.js","../date-picker/index.umd.js","../locale/index.umd.js"],t):(Z=typeof globalThis<"u"?globalThis:Z||self,t(Z["date-picker"]={},Z.Vue,Z.common,Z.LodashES,Z.timePicker,Z.button,Z.FButtonEdit,Z.inputGroup,Z.FPopover,Z.FDatePicker,Z.locale))})(this,function(Z,t,Se,re,st,Da,pa,At,Ta,Lt,wa){"use strict";const xe=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],Oa={Sun:"日",Mon:"一",Tue:"二",Wed:"三",Thu:"四",Fri:"五",Sat:"六"};var de=(e=>(e[e.previous=1]="previous",e[e.current=2]="current",e[e.next=3]="next",e))(de||{}),Te=(e=>(e.Sunday="Sun",e.Monday="Mon",e))(Te||{});const Et={dates:{Type:Array,default:[]},daysInWeek:{Type:Array,default:[]},enableKeyboadNavigate:{Type:Boolean,default:!0},enableMarkCurrent:{Type:Boolean,default:!0},enablePeriod:{Type:Boolean,default:!1},firstDayOfTheWeek:{Type:String,default:Te.Sunday},selected:{Type:Object,default:null},selectedPeriod:{Type:Object,default:null},selectedWeek:{Type:Object,default:null},selectMode:{Type:String,default:"day"},showWeekNumber:{Type:Boolean,default:!1},weekTitle:{Type:String,default:"Week"}};var be=(e=>(e[e.enter=13]="enter",e[e.esc=27]="esc",e[e.space=32]="space",e[e.leftArrow=37]="leftArrow",e[e.upArrow=38]="upArrow",e[e.rightArrow=39]="rightArrow",e[e.downArrow=40]="downArrow",e[e.tab=9]="tab",e[e.shift=16]="shift",e))(be||{});function ut(){function e(a){const f=a.key||a.keyCode;return f==="Enter"||f===13?13:f==="Escape"||f===27?27:f===" "||f===32?32:f==="ArrowLeft"||f===37?37:f==="ArrowUp"||f===38?38:f==="ArrowRight"||f===39?39:f==="ArrowDown"||f===40?40:f==="Tab"||f===9?9:f==="Shift"||f===16?16:-1}return{getKeyCodeFromEvent:e}}function he(e){const a=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&a==="[object Date]"?new e.constructor(+e):typeof e=="number"||a==="[object Number]"||typeof e=="string"||a==="[object String]"?new Date(e):new Date(NaN)}function ze(e,a){return e instanceof Date?new e.constructor(a):new Date(a)}function Ye(e,a){const f=he(e);return isNaN(a)?ze(e,NaN):(a&&f.setDate(f.getDate()+a),f)}function ct(e,a){const f=he(e);if(isNaN(a))return ze(e,NaN);if(!a)return f;const b=f.getDate(),l=ze(e,f.getTime());l.setMonth(f.getMonth()+a+1,0);const c=l.getDate();return b>=c?l:(f.setFullYear(l.getFullYear(),l.getMonth(),b),f)}let Na={};function Rt(){return Na}function dt(e,a){var d,g,p,u;const f=Rt(),b=(a==null?void 0:a.weekStartsOn)??((g=(d=a==null?void 0:a.locale)==null?void 0:d.options)==null?void 0:g.weekStartsOn)??f.weekStartsOn??((u=(p=f.locale)==null?void 0:p.options)==null?void 0:u.weekStartsOn)??0,l=he(e),c=l.getDay(),M=(c<b?7:0)+c-b;return l.setDate(l.getDate()-M),l.setHours(0,0,0,0),l}function Sa(e){const a=he(e);return a.setHours(0,0,0,0),a}function xa(e,a){const f=a*3;return ct(e,f)}function ft(e,a){return ct(e,a*12)}function Pa(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function Va(e){if(!Pa(e)&&typeof e!="number")return!1;const a=he(e);return!isNaN(Number(a))}function yt(e){const a=he(e),f=a.getMonth();return a.setFullYear(a.getFullYear(),f+1,0),a.setHours(23,59,59,999),a}function mt(e){const a=he(e),f=a.getMonth(),b=f-f%3;return a.setMonth(b,1),a.setHours(0,0,0,0),a}function ht(e){const a=he(e);return a.setDate(1),a.setHours(0,0,0,0),a}function Qe(e){const a=he(e),f=a.getFullYear();return a.setFullYear(f+1,0,0),a.setHours(23,59,59,999),a}function Ue(e){const a=he(e),f=ze(e,0);return f.setFullYear(a.getFullYear(),0,1),f.setHours(0,0,0,0),f}function qt(e,a){var d,g,p,u;const f=Rt(),b=(a==null?void 0:a.weekStartsOn)??((g=(d=a==null?void 0:a.locale)==null?void 0:d.options)==null?void 0:g.weekStartsOn)??f.weekStartsOn??((u=(p=f.locale)==null?void 0:p.options)==null?void 0:u.weekStartsOn)??0,l=he(e),c=l.getDay(),M=(c<b?-7:0)+6-(c-b);return l.setDate(l.getDate()+M),l.setHours(23,59,59,999),l}function vt(e){const a=he(e),f=a.getMonth(),b=f-f%3+3;return a.setMonth(b,0),a.setHours(23,59,59,999),a}function Ya(e){const a=he(e);return a.setMilliseconds(0),a}function Fe(e,a){return Ye(e,-a)}function Ca(){return Sa(Date.now())}function bt(e,a){return ct(e,-a)}function _t(e,a){return xa(e,-1)}function zt(e,a){return ft(e,-1)}function Me(){const{formatTo:e,parseToDate:a}=Se.useDateFormat();function f(){return{year:0,month:0,day:0}}function b(i){return new Date(i.year||0,i.month?i.month-1:0,i.day||0,i.hour?i.hour:0,i.minute?i.minute:0,i.second?i.second:0,0)}function l(i){const A=new Date;return i.year||(i.year=A.getFullYear()),i.month||(i.month=A.getMonth()+1),i.day||(i.day=1),new Date(i.year,i.month-1,i.day,i.hour?i.hour:0,i.minute?i.minute:0,i.second?i.second:0,0)}function c(i){return new Date(i.year||1,(i.month||1)-1,i.day,i.hour?i.hour:0,i.minute?i.minute:0,i.second?i.second:0,0).getDay()}function M(i){return xe.indexOf(i)}function d(i){return b(i).getTime()}function g(i){return Math.round(d(i)/1e3)}function p(i,A,Y){const y=d(A),D=d(Y),w=d(i);return D-w>w-y?A:Y}function u(){const i=new Date;return{year:i.getFullYear(),month:i.getMonth()+1,day:i.getDate(),hour:i.getHours(),minute:i.getMinutes(),second:i.getSeconds()}}function o(i,A){const Y=A.match(/[^(DdMmYy)]{1,}/g),y={};if(Y){let D=Y[0];Y[0]!==Y[1]&&(D=Y[0]+Y[1],Y[2]&&Y[1]!==Y[2]&&(D+=Y[2]));const w=new RegExp("["+D+"]"),z=i.split(w),R=A.split(w);for(let Q=0;Q<R.length;Q++)R[Q].indexOf("yyyy")!==-1&&(y.year=Number(z[Q])),R[Q].indexOf("M")!==-1&&(y.month=Number(z[Q]||"1")),R[Q].indexOf("d")!==-1&&(y.day=Number(z[Q]||"1"))}else{const D=(A+"").indexOf("yyyy"),w=(A+"").indexOf("MM"),z=(A+"").indexOf("dd");if(D>=0){const R=i.substring(D,D+4);y.year=Number(R)}w>=0&&(y.month=Number(i.substring(w,w+2)||"1")),z>=0&&(y.day=Number(i.substring(z,z+2)||"01"))}return y.year===void 0&&(y.year=u().year),y}function m(i){return{year:i.getFullYear(),month:i.getMonth()+1,day:i.getDate(),hour:i.getHours(),minute:i.getMinutes(),second:i.getSeconds()}}function O(i,A=!0){const Y=new Date(1900,1,1,0,0,0),y=new Date(9999,12,31,23,59,59),D=A?Y:y;let w;return i instanceof Date?w=i:typeof i=="string"?w=i.trim()?a(i,"yyyy-MM-dd HH:mm:ss"):D:w=D,Va(w)||(w=D),{year:w.getFullYear(),month:w.getMonth()+1,day:w.getDate(),hour:w.getHours(),minute:w.getMinutes(),second:w.getSeconds()}}function S(i){return O(i,!0)}function P(i){return O(i,!1)}function j(i,A=!1){if(i&&typeof i=="string"){const Y=i.replace("时",":").replace("分",":").replace("秒","").split(":");if(Y.length>=2)return{hour:parseInt(Y[0],10),minute:parseInt(Y[1]),second:parseInt(Y[2]||"0")||0}}else{const Y=new Date,y=Y.getHours(),D=Y.getMinutes(),w=Y.getSeconds();return A?{hour:0,minute:0,second:0}:{hour:y,minute:D,second:w}}return{hour:0,minute:0,second:0}}function N(i){if(i&&typeof i=="string"){const D=i.replace("时",":").replace("分",":").replace("秒","").split(":");if(D.length>=2)return{hour:D[0],minute:D[1],second:D[2]?D[2]:0}}return{hour:23,minute:59,second:59}}return{emptyDate:f,getDate:b,getDate2:l,getDayNumber:c,getEpocTime:g,getNearDate:p,getWeekdayIndex:M,getTimeInMilliseconds:d,getToday:u,getDateObject:o,getMinDate:S,getMaxDate:P,getTimeValue:j,getEndTimeValue:N,convertDateToDateObject:m}}function we(){const{getTimeInMilliseconds:e}=Me();function a(o){return o&&o.year!==0&&o.month!==0&&o.day!==0}function f(o){return o&&o.year!==0&&o.month!==0}function b(o){return o&&o.year!==0}function l(o,m){return e(o)<e(m)}function c(o,m){return e(o)<=e(m)}function M(o,m){return e(o)===e(m)}function d(o,m){const O=e(m);return e(o.from)===O||e(o.to)===O}function g(o,m){return!m||!a(m.to)||!a(m.from)?!1:c(m.from,o)&&c(o,m.to)}function p(o,m){return a(m)&&e(o)>=e(m)}function u(o,m){return a(m)&&e(o)<=e(m)}return{isDateEarlier:l,equal:M,inPeriod:g,isPoint:d,equalOrEarlier:c,isInitializedDate:a,isInitializedMonth:f,isInitializedYear:b,isMonthDisabledByDisableSince:p,isMonthDisabledByDisableUntil:u}}const Ke=t.defineComponent({name:"FDatePickerCalendarView",props:Et,emits:["click","clickWeek","keyDown","mouseEnter","mouseLeave"],setup(e,a){const f=t.ref(e.dates),b=t.ref(e.daysInWeek),l=t.ref(e.enableKeyboadNavigate),c=t.ref(e.enableMarkCurrent),M=t.ref(e.enablePeriod),d=t.ref(e.selected),g=t.ref(e.selectedPeriod),p=t.ref(e.selectedWeek),u=t.ref(e.selectMode),o=t.ref(e.showWeekNumber),m=t.ref(e.weekTitle||"周");t.watch(()=>e.dates,()=>{f.value=e.dates}),t.watch(()=>e.selected,()=>{d.value=e.selected}),t.watch(()=>e.enablePeriod,(h,C)=>{h!==C&&(M.value=h)}),t.watch(()=>e.selectedPeriod,h=>{g.value=h}),t.watch(()=>e.selectedWeek,h=>{p.value=h});const{equal:O,inPeriod:S,isInitializedDate:P,equalOrEarlier:j,isPoint:N}=we(),{getKeyCodeFromEvent:i}=ut(),A=h=>{const C=!!p.value&&h.numberInTheYear===p.value.numberInTheYear;return{"f-datepicker-selectWeek":u.value==="week","f-datepicker-selectedWeek":u.value==="week"&&C}};function Y(h){return S(h,g.value)}function y(h){if(!g.value)return!1;const C={from:{year:g.value.from.year,month:g.value.from.month,day:g.value.from.day},to:{year:g.value.to.year,month:g.value.to.month,day:g.value.to.day}};return!!g.value&&N(C,h)}function D(h){return!!d.value&&O({year:d.value.year,month:d.value.month,day:d.value.day},{year:h.year,month:h.month,day:h.day})}const w=(h,C,B)=>{const x=u.value!=="week"&&h.tag===de.current&&(M.value&&Y(h.date)&&!y(h.date)||h.range),_=h.tag===de.previous||h.tag===de.next,J={"f-datepicker-range":x,"f-datepicker-no-currmonth":_,"f-datepicker-disabled":h.disable,"f-datepicker-singledate":!h.disable},ee=`d_${C}_${B}`;return J[ee]=!0,J},z=h=>{const C=u.value!=="week"&&h.tag===de.current&&(!M.value&&D(h.date)||M.value&&y(h.date)),B=h.isCurrent&&c.value,x=h.highlight&&(h.tag===de.previous||h.tag===de.next||h.disable);return{"f-datepicker-date":!0,"f-datepicker-selected":C,"f-datepicker-current":B,"f-datepicker-opacity":x,"f-datepicker-highlight":h.highlight,"f-datepicker-disabled":h.disable}};function R(h,C){C.disable||u.value==="week"||(h.stopPropagation(),a.emit("click",{event:h,dayItem:C}))}function Q(h,C){u.value==="week"&&(h.stopPropagation(),a.emit("clickWeek",C))}function F(h,C){const B=i(h);B!==be.tab&&(h.preventDefault(),B===be.enter||B===be.space?R(h,C):l.value&&a.emit("keyDown",C.date))}function L(h){if(g.value&&P(g.value.from)&&(!P(g.value.to)||JSON.stringify(g.value.from)===JSON.stringify(g.value.to))){const{from:C}=g.value;f.value.forEach(B=>{B.days.forEach(x=>{x.range=j(C,x.date)&&j(x.date,h.date)||j(x.date,C)&&j(h.date,x.date)})}),a.emit("mouseEnter",h.date)}}function V(){f.value.forEach(h=>{h.days.forEach(C=>{C.range=!1})}),a.emit("mouseLeave")}return()=>t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"f-datepicker-table-wrapper"},[t.createVNode("table",{class:"f-datepicker-table",cellpadding:"0"},[t.createVNode("thead",null,[t.createVNode("tr",null,[o.value&&t.createVNode("th",{class:"f-datepicker-weeknbr-title",style:"padding-bottom: 8px;padding-top: 4px"},[m.value]),b.value&&b.value.map(h=>t.createVNode("th",{scope:"col",style:"padding-bottom: 8px;padding-top: 4px"},[h]))])]),t.createVNode("tbody",null,[f.value&&f.value.map((h,C)=>t.createVNode("tr",{class:A(h),onClick:B=>Q(B,h)},[o.value&&t.createVNode("td",{class:"f-datepicker-weeknbr"},[t.createVNode("div",{class:"f-datepicker-date"},[h.numberInTheYear])]),h.days&&h.days.map((B,x)=>t.createVNode("td",{id:`d_${C}_${x}`,tabindex:"0",class:w(B,C,x),onKeydown:_=>F(_,B),onMouseenter:()=>L(B),onMouseleave:()=>V()},[B.marked&&B.marked.marked&&t.createVNode("span",{class:"f-datepicker-markdate",style:{"background-color":B.marked.color}},null),t.createVNode("div",{class:z(B),onClick:_=>R(_,B)},[B.date.day])]))]))])])])])}}),Wa={activeMonth:{type:Object,require:!0},ariaLabelPrevMonth:{type:String,default:""},ariaLabelNextMonth:{type:String,default:""},dateFormat:{type:String,default:"yyyy-MM-dd"},disablePrePage:{type:Boolean,default:!1},disablePreRecord:{type:Boolean,default:!1},disableNextRecord:{type:Boolean,default:!1},disableNextPage:{type:Boolean,default:!1},years:{type:Array,default:[[{}]]},selectingMonth:{type:Boolean,default:!1},selectingYear:{type:Boolean,default:!1},selectMode:{type:String,default:"day"},minDate:{type:Object},maxDate:{type:Object},minYear:{type:Number,default:1900},maxYear:{type:Number,default:9999}};function gt(){const{getTimeInMilliseconds:e}=Me(),{isInitializedDate:a}=we();function f(l,c){return a(c)&&e(l)<e(c)}function b(l,c){return a(c)&&e(l)>e(c)}return{isMonthDisabledByDisableSince:b,isMonthDisabledByDisableUntil:f}}function Mt(){const{getToday:e}=Me(),{isMonthDisabledByDisableSince:a,isMonthDisabledByDisableUntil:f}=gt();function b(u){const o={displayTextOfMonth:"",month:0,year:0,displayTextOfYear:""};if(u){const m=u.match(/[^0-9]/),O=m&&m.length?m[0]:"",S=u.split(O);o.month=S[0].length===2?Number(S[0]):Number(S[1]),o.year=S[0].length===2?Number(S[1]):Number(S[0])}return o}function l(u,o){return new Date(o,u,0).getDate()}function c(u,o,m){return new Date(u,o-1,m,0,0,0,0)}function M(u,o){const m=c(o,u,1);return m.setMonth(m.getMonth()-1),l(m.getMonth()+1,m.getFullYear())}function d(u,o,m,O){const S=e(),P=[],{year:j}=o,N=3,i={year:m.year,month:m.month,day:m.day},A={year:O.year,month:O.month,day:O.day};for(let Y=1;Y<=12;Y+=N){const y=[];for(let D=Y;D<Y+N;D++){const w=a({year:j,month:D,day:1},i)||f({year:j,month:D,day:l(D,j||0)},A);y.push({month:D,displayText:u[D],isCurrent:D===S.month&&j===S.year,disable:w,date:{year:j,month:D}})}P.push(y)}return P}function g(u,o){const m={year:u===12?o+1:o},O=u===12?1:u+1;return m.month=O,m}function p(u,o){const m={year:u===1?o-1:o},O=u===1?12:u-1;return m.month=O,m}return{daysInMonth:l,daysInPreMonth:M,generateMonths:d,parseDefaultMonth:b,getNextMonth:g,getPreviousMonth:p}}const kt=t.defineComponent({name:"FDatePickerCalendarNavbar",props:Wa,emits:["clickMonth","clickYear","prePage","preRecord","nextRecord","nextPage"],setup(e,a){const f=t.ref(e.ariaLabelPrevMonth),b=t.ref(e.ariaLabelNextMonth),l=t.ref(e.dateFormat),c=t.ref(e.disablePrePage),M=t.ref(e.disablePreRecord),d=t.ref(e.disableNextRecord),g=t.ref(e.disableNextPage),p=t.ref(e.activeMonth),u=t.ref(e.years),o=t.ref(e.selectingMonth),m=t.ref(e.selectingYear),O=t.ref(e.selectMode),S=t.ref(!0),P=t.ref(!0),{isMonthDisabledByDisableSince:j,isMonthDisabledByDisableUntil:N}=gt(),{daysInMonth:i}=Mt();t.watch(()=>e.selectingMonth,(k,I)=>{o.value=k}),t.watch(()=>e.selectingYear,(k,I)=>{m.value=k});const A=(k,I)=>({year:I===1?k-1:k,month:I===1?12:I-1,day:i(I===1?12:I-1,I===1?k-1:k)}),Y=(k,I)=>({year:I===12?k+1:k,month:I===12?1:I+1,day:1}),y=k=>({year:k-1,month:12,day:31}),D=k=>({year:k+1,month:1,day:1});function w(k,I,te,X,fe="page"){fe==="page"?(c.value=te||k,g.value=X||I):fe==="record"&&(M.value=te||k,d.value=X||I)}function z(k,I){const{minDate:te,maxDate:X,minYear:fe,maxYear:ye}=e,me=te?N(y(k),te):!0,Pe=X?j(D(I),X):!0;w(me,Pe,k<=fe,I>=ye)}function R(k,I){var fe,ye;const te=k||((fe=u.value[0][1])==null?void 0:fe.year),X=I||((ye=u.value[3][1])==null?void 0:ye.year);te!==void 0&&X!==void 0&&z(te,X)}function Q(k,I){const{minDate:te,maxDate:X,minYear:fe,maxYear:ye}=e,me=A(I,k),Pe=Y(I,k),ke=te?N(me,{year:te.year,month:te.month,day:te.day}):!0,Re=X?j(Pe,{year:X.year,month:X.month,day:X.day}):!0;w(ke,Re,k===1&&I===fe,k===12&&I===ye,"record"),R(I,I)}function F(k){const{minDate:I,maxDate:te,minYear:X,maxYear:fe}=e,ye=I?N(y(k),I):!0,me=te?j(D(k),te):!0;w(ye,me,k===X,k===fe)}t.watch(()=>e.selectingMonth,(k,I)=>{k&&F(p.value.year)}),t.watch(()=>e.selectingYear,(k,I)=>{k&&R()}),t.watch(()=>e.years,(k,I)=>{u.value=k,m.value&&R()}),t.watch(()=>e.activeMonth,()=>{const k=e.activeMonth;k&&(p.value={month:k.month,year:k.year,displayTextOfMonth:k.displayTextOfMonth,displayTextOfYear:k.displayTextOfYear},!e.selectingMonth&&!e.selectingYear?Q(p.value.month,p.value.year):e.selectingMonth?F(p.value.year):R())},{immediate:!0});const L=t.computed(()=>({"f-datepicker-header":!0,monthYearSelBarBorder:o.value||m.value})),V=t.computed(()=>({"f-datepicker-header-btn":!0,"f-datepicker-header-btn-disabled":c.value})),h=t.computed(()=>!o.value&&!m.value),C=t.computed(()=>({"f-datepicker-header-btn":!0,"f-datepicker-header-btn-disabled":M.value})),B=t.computed(()=>({"f-datepicker-header-btn":!0,"f-datepicker-header-btn-disabled":d.value})),x=t.computed(()=>({"f-datepicker-header-btn":!0,"f-datepicker-header-btn-disabled":g.value})),_=t.computed(()=>({"f-datepicker-header-btn":!0,"f-datepicker-yearLabel":S.value,"f-datepicker-labelBtnNotEdit":!S.value})),J=t.computed(()=>({"f-datepicker-header-btn":!0,"f-datepicker-monthLabel":P.value,"f-datepicker-labelBtnNotEdit":!P.value})),ee=t.computed(()=>{const k=l.value?l.value.indexOf("yyyy"):0,I=l.value?l.value.indexOf("MM"):0;return k>I?"MM-yyyy":"yyyy-MM"});function oe(k){k.stopPropagation(),!c.value&&a.emit("prePage")}function U(k){k.stopPropagation(),!M.value&&a.emit("preRecord")}function ne(k){k.stopPropagation(),a.emit("clickYear")}function T(k){k.stopPropagation(),a.emit("clickMonth")}function H(k){k.stopPropagation(),!d.value&&a.emit("nextRecord")}function K(k){k.stopPropagation(),!g.value&&a.emit("nextPage")}const ie=t.computed(()=>{const k={};return O.value==="year"&&(k.cursor="default"),k});function ue(){return t.createVNode("button",{type:"button",style:ie.value,class:_.value,onClick:k=>{S.value&&ne(k)},tabindex:S.value?"0":"-1",disabled:O.value==="year"},[m.value?u.value.length>3?u.value[0][1].year+" - "+u.value[3][1].year:"":p.value.displayTextOfYear])}function ve(){return!m.value&&O.value!=="month"&&t.createVNode("button",{type:"button",class:J.value,onClick:k=>{P.value&&T(k)},tabindex:P.value?"0":"-1"},[p.value.displayTextOfMonth])}const W={opacity:.4,cursor:"default"};return()=>t.createVNode("div",{class:L.value,style:"height:40px; overflow:hidden;"},[t.createVNode("div",{class:"f-datepicker-prev-btn"},[t.createVNode("button",{type:"button",class:V.value,style:c.value?W:{},onClick:oe},[t.createVNode("i",{class:"f-icon f-icon-arrow-double-60-left"},null)]),h.value&&t.createVNode("button",{style:M.value?W:{},type:"button","aria-label":f.value,class:C.value,onClick:U},[t.createVNode("i",{class:"f-icon f-icon-arrow-chevron-left"},null)])]),t.createVNode("div",{class:"f-datepicker-monthYearText"},[ee.value==="yyyy-MM"?[ue(),ve()]:[ve(),ue()]]),t.createVNode("div",{class:"f-datepicker-next-btn"},[h.value&&t.createVNode("button",{style:d.value?W:{},type:"button","aria-label":b.value,class:B.value,onClick:H},[t.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right"},null)]),t.createVNode("button",{style:g.value?W:{},type:"button",class:x.value,onClick:K},[t.createVNode("i",{class:"f-icon f-icon-arrow-double-60-right"},null)])])])}}),Dt={1:"一月",2:"二月",3:"三月",4:"四月",5:"五月",6:"六月",7:"七月",8:"八月",9:"九月",10:"十月",11:"十一月",12:"十二月"},Qt={locales:{type:Object,default:{}},top:{type:Number,default:0},left:{type:Number,default:0},position:{type:String,default:"bottom"},enablePeriod:{type:Boolean,default:!1},dateFormat:{type:String,default:"yyyy-MM-dd"},valueFormat:{type:String,default:"yyyy-MM-dd"},dates:{type:Array,default:[]},disableDates:{Type:Array,default:[]},disablePeriod:{Type:Array,default:[]},disableSince:{Type:Object,default:{year:0,month:0,day:0}},disableWeekdays:{Type:Array,default:[]},disableWeekends:{Type:Boolean,default:!1},disableUntil:{Type:Object,default:{year:0,month:0,day:0}},enableKeyboadNavigate:{type:Boolean,default:!0},enableMarkCurrent:{type:Boolean,default:!0},firstDayOfTheWeek:{type:String,default:Te.Sunday},highlightDates:{Type:Array,default:[]},highlightSaturday:{Type:Boolean,default:!1},highlightSunday:{Type:Boolean,default:!1},maxYear:{Type:Number,default:1e4},minYear:{Type:Number,default:1},mode:{Type:String,default:"Embedded"},months:{type:Array,default:[[]]},nameOfMonths:{Type:Object,default:Dt},secondaryDates:{type:Array,default:[]},secondaryMonths:{type:Array,default:[[]]},selectedDate:{type:Object,default:null},selectedSecondDate:{type:Object,default:null},selectedMonth:{type:Object,default:null},selectedWeek:{type:Object,default:null},selectMode:{type:String,default:"day"},showWeekNumber:{type:Boolean,default:!1},weekTitle:{type:String,default:"周"},years:{Type:Array,default:[[]]},value:{type:String,default:null},showTime:{type:Boolean,default:!1},inlineDateTime:{type:Boolean,default:!0},enableQuickSelect:{type:Boolean,default:!1},defaultTime:{type:String,default:null}},Ba={months:{Type:Array,default:[[]]},enableMarkCurrent:{Type:Boolean,default:!1},enableKeyboadNavigate:{Type:Boolean,default:!0},enablePeriod:{Type:Boolean,default:!1},selected:{Type:Object,default:null},selectedPeriod:{Type:Object,default:null},selectMode:{Type:String,default:"day"}},pt=t.defineComponent({name:"FDatePickerMonthView",props:Ba,emits:["click","keyDown","mouseEnter","mouseLeave"],setup(e,a){const f=t.ref(e.months),b=t.ref(e.enableMarkCurrent),l=t.ref(e.enableKeyboadNavigate),c=t.ref(e.enablePeriod),M=t.ref(e.selected),d=t.ref(e.selectedPeriod),{inPeriod:g,isInitializedDate:p,equalOrEarlier:u}=we(),{getKeyCodeFromEvent:o}=ut();t.watch(()=>e.months,()=>{f.value=e.months}),t.watch(()=>e.selected,()=>{M.value=e.selected}),t.watch(()=>e.selectedPeriod,y=>{d.value=y});function m(y,D){y.stopPropagation(),!D.disable&&a.emit("click",D.date)}function O(y,D){const w=o(y);w!==be.tab&&(y.preventDefault(),w===be.enter||w===be.space?m(y,D):l.value&&a.emit("keyDown",D))}function S(y){d.value&&p(d.value.from)&&!p(d.value.to)&&(f.value.forEach(D=>{D.forEach(w=>{w.range=!!d.value&&(u(d.value.from,w.date)&&u(w.date,y.date)||u(w.date,d.value.from)&&u(y.date,w.date))})}),a.emit("mouseEnter",y))}function P(){f.value.forEach(y=>{y.forEach(D=>{D.range=!1})}),a.emit("mouseLeave")}const j=(y,D)=>y.year===D.year&&y.month===D.month;function N(y){return!!M.value&&j(M.value,y)}function i(y){return!!d.value&&(j(d.value.from,y)||j(d.value.to,y))}function A(y){return g(y,d.value)}const Y=y=>({"f-datepicker-month-cell":!0,"f-datepicker-current":y.isCurrent&&b.value,"f-datepicker-selected":(!c.value||e.selectMode==="week")&&N(y.date)||c.value&&i(y.date),"f-datepicker-disabled":y.disable,"f-datepicker-range":A({...y.date,day:1})||y.range});return()=>t.createVNode("div",{class:"f-datepicker-table-wrapper"},[t.createVNode("table",{class:"f-datepicker-table"},[t.createVNode("tbody",null,[f.value&&f.value.map((y,D)=>t.createVNode("tr",null,[y.map((w,z)=>t.createVNode("td",{id:`m_${D}_${z}`,class:`m_${D}_${z}`,onKeydown:R=>O(R,w),onMouseenter:()=>S(w),onMouseleave:()=>P(),tabindex:"0",style:"width: 33.3%"},[t.createVNode("div",{class:"f-datepicker-month",onClick:R=>m(R,w)},[t.createVNode("span",{class:Y(w)},[w.displayText])])]))]))])])])}}),$a={years:{Type:Array,default:[[]]},enableKeyboadNavigate:{Type:Boolean,default:!0},enableMarkCurrent:{Type:Boolean,default:!0},enablePeriod:{Type:Boolean,default:!1},selected:{Type:Object,default:null},selectedPeriod:{Type:Object,default:null},selectMode:{Type:String,default:"day"}},Tt=t.defineComponent({name:"FDatePickerYearView",props:$a,emits:["click","keyDown","mouseEnter","mouseLeave"],setup(e,a){const f=t.ref(e.years),b=t.ref(e.enableMarkCurrent),l=t.ref(e.enableKeyboadNavigate),c=t.ref(e.enablePeriod),M=t.ref(e.selected),d=t.ref(e.selectedPeriod),{equal:g,isInitializedDate:p,equalOrEarlier:u}=we(),{getKeyCodeFromEvent:o}=ut();t.watch(()=>e.years,()=>{f.value=e.years}),t.watch(()=>e.selected,()=>{M.value=e.selected});const m=(y,D)=>{const w=`y_${y}_${D}`,z={"f-datepicker-no-currmonth":y===0&&D===0||y===3&&D===2};return z[w]=!0,z};function O(y){if(!d.value)return!1;const{from:D,to:w}=d.value;return!p(w)||!p(D)?!1:y!=null&&y.year&&(D!=null&&D.year)&&(w!=null&&w.year)?y.year>=D.year&&y.year<=w.year:!1}function S(y){return!!M.value&&g({year:M.value.year},y)}function P(y){return!!d.value&&(g({year:d.value.from.year},y)||g({year:d.value.to.year},y))}const j=y=>({"f-datepicker-year-cell":!0,"f-datepicker-current":y.isCurrent&&b.value,"f-datepicker-selected":(!c.value||e.selectMode==="week")&&S(y.date)||c.value&&P(y.date),"f-datepicker-disabled":y.disable,"f-datepicker-range":O(y.date)||y.range});function N(y,D){y.stopPropagation(),!D.disable&&a.emit("click",D)}function i(y,D){const w=o(y);w!==be.tab&&(y.preventDefault(),w===be.enter||w===be.space?N(y,D):l.value&&a.emit("keyDown",D))}function A(y){d.value&&p(d.value.from)&&!p(d.value.to)&&(f.value.forEach(D=>{D.forEach(w=>{w.range=!!d.value&&(u(d.value.from,w.date)&&u(w.date,y.date)||u(w.date,d.value.from)&&u(y.date,w.date))})}),a.emit("mouseEnter",y))}function Y(){f.value.forEach(y=>{y.forEach(D=>{D.range=!1})}),a.emit("mouseLeave")}return()=>t.createVNode("table",{class:"f-datepicker-table-wrapper"},[t.createVNode("tbody",{class:"f-datepicker-table"},[f.value&&f.value.map((y,D)=>t.createVNode("tr",null,[y.map((w,z)=>t.createVNode("td",{id:"y_{yi}_{i}",class:m(D,z),onKeydown:R=>i(R,w),onMouseenter:()=>A(w),onMouseleave:()=>Y(),tabindex:"0"},[t.createVNode("div",{class:"f-datepicker-year",onClick:R=>N(R,w)},[t.createVNode("span",{class:j(w)},[w.year])])]))]))])])}});function Ae(){function e(l){return new Date(l.year||0,(l.month||1)-1,l.day,l.hour?l.hour:0,l.minute?l.minute:0,l.second?l.second:0,0).getDay()}function a(l){if(!l)return 1;if(!/^\d+$/.test(l.value))return-1;let c=Number(l.value);return(l.format.length===1&&l.value.length!==1&&c<10||l.format.length===1&&l.value.length!==2&&c>=10||l.format.length===2&&l.value.length>2)&&(c=-1),c}function f(l,c){if(l.value){for(let M=1;M<=12;M++)if(l.value.toLowerCase()===c[M].toLowerCase())return M}return-1}function b(l){const c=new Date(l.year||0,(l.month||1)-1,l.day,0,0,0,0);return c.setDate(c.getDate()+(c.getDay()===0?-3:4-c.getDay())),Math.round((c.getTime()-new Date(c.getFullYear(),0,4).getTime())/864e5/7)+1}return{getNumberByValue:a,getDayNumber:e,getMonthNumberByMonthName:f,getWeekNumber:b}}function Ut(e,a,f,b,l,c,M,d){const{getTimeInMilliseconds:g,getWeekdayIndex:p}=Me(),{isInitializedDate:u}=we(),{getDayNumber:o}=Ae();function m(O){if(O.year&&O.year<e||O.year&&O.year>a)return!0;const S=g(O),P=O.hour!==void 0;if(u(b)&&(P?S:S+24*60*60*1e3-1)<g(b)||u(f)&&S>g(f))return!0;if(M){const N=o(O);if(N===0||N===6)return!0}const j=o(O);return!!(d.length>0&&d.find(i=>p(i)===j)||l.length>0&&l.find(i=>(i.year===0||i.year===O.year)&&(i.month===0||i.month===O.month)&&i.day===O.day)||c.length>0&&c.find(i=>u(i.from)&&u(i.to)&&S>=g(i.from)&&S<=g(i.to)))}return{isDisabledDate:m}}function ja(){const{getDayNumber:e}=Ae();function a(b,l,c){let M=[];M=l.reduce((g,p)=>{const u=p.dates.map(o=>({date:o,color:p.color}));return[...g,...u]},M);const d=M.find(g=>(g.date.year===0||g.date.year===b.year)&&(g.date.month===0||g.date.month===b.month)&&g.date.day===b.day);if(d)return{marked:!0,color:d.color};if(c&&c.marked){const g=e(b);if(g===0||g===6)return{marked:!0,color:c.color}}return{marked:!1,color:""}}function f(b,l,c,M){const d=e(b);return l&&d===0||c&&d===6?!0:!!M.find(p=>(p.year===0||p.year===b.year)&&(p.month===0||p.month===b.month)&&p.day===b.day)}return{isHighlightedDate:f,isMarkedDate:a}}function Ha({isDisabledDate:e}){const{getToday:a}=Me(),{daysInMonth:f,daysInPreMonth:b}=Mt(),{isHighlightedDate:l,isMarkedDate:c}=ja(),{getWeekNumber:M}=Ae();function d(o){const m=xe.indexOf(o);return m>0?7-m:0}function g(o,m,O){const S=new Date;S.setDate(1),S.setMonth(m-1),S.setFullYear(o);const P=S.getDay()+O;return P>=7?P-7:P}function p(o,m,O,S,P){return o===P.day&&m===P.month&&O===P.year&&S===de.current}function u(o,m,O,S,P,j,N,i,A){const Y=[],y=a(),D=g(m,o,d(O)),w=f(o,m),z=b(o,m);let R=1,Q=de.previous;for(let F=1;F<7;F++){const L=[];if(F===1){const C=z-D+1;for(let x=C;x<=z;x++){const _={year:o===1?m-1:m,month:o===1?12:o-1,day:x},J=p(x,o,m,Q,y),ee=e(_),oe=c(_,S,P),U=l(_,i,N,j);L.push({date:_,tag:Q,isCurrent:J,disable:ee,marked:oe,highlight:U})}Q=de.current;const B=7-L.length;for(let x=0;x<B;x++){const _={year:m,month:o,day:R},J=p(R,o,m,Q,y),ee=e(_),oe=c(_,S,P),U=l(_,i,N,j);L.push({date:_,tag:Q,isCurrent:J,disable:ee,marked:oe,highlight:U}),R++}}else for(let C=1;C<=7;C++){R>w&&(R=1,Q=de.next);const B={year:Q===de.next&&o===12?m+1:m,month:Q===de.current?o:Q===de.next&&o<12?o+1:1,day:R},x=p(R,o,m,Q,y),_=e(B),J=c(B,S,P),ee=l(B,i,N,j);L.push({date:B,tag:Q,isCurrent:x,disable:_,marked:J,highlight:ee}),R++}const V=O===Te.Monday?0:6,h=M(L[V].date);Y.push({days:L,numberInTheYear:h,year:m})}return Y}return{generateCalendar:u}}function Ia(){const{getToday:e}=Me();function a(f,b,l,c,M,d){const g=[],p=f-f%10,{year:u,month:o}=b,m=e(),O=3,S=p+10;for(let P=p-1;P<S;P+=O){const j=[];for(let N=P;N<P+O;N++){const i=N<l||N>c;j.push({year:N,isCurrent:N===m.year,selected:N===u,disable:i,date:{year:N}})}g.push(j)}return g}return{generateYears:a}}function Fa(){function e(l,c,M){const d=[];if(M){let g=M[0];M[0]!==M[1]&&(g=M[0]+M[1],M[2]&&M[1]!==M[2]&&(g+=M[2]));const p=new RegExp("["+g+"]"),u=l.split(p),o=c.split(p);for(let m=0;m<o.length;m++)o[m].indexOf("yyyy")!==-1&&(d[0]={value:u[m],format:o[m]}),o[m].indexOf("M")!==-1&&(d[1]=u[m]===void 0?{value:"1",format:o[m]}:{value:u[m],format:o[m]}),o[m].indexOf("d")!==-1&&(d[2]=u[m]===void 0?{value:"1",format:o[m]}:{value:u[m],format:o[m]})}else{const g=(c+"").indexOf("yyyy"),p=(c+"").indexOf("MM"),u=(c+"").indexOf("dd");g>=0&&(d[0]={value:l.substring(g,g+4),format:c.substring(g,g+4)}),p>=0&&(d[1]={value:l.substring(p,p+2),format:c.substring(p,p+2)}),u>=0&&(d[2]={value:l.substring(u,u+2),format:c.substring(u,u+2)})}return d}function a(l){return l<10?"0"+Number(l):String(l)}function f(l,c){const M=l.match(/[^(DdMmYy)]{1,}/g),d=l.indexOf(c);return d<0?l:d===0?M?l.substring(3):l.substring(2):d+2===l.length?M?l.substring(0,l.length-3):l.substring(0,l.length-2):M?l.substring(0,d)+l.substring(d+3):l.substring(0,d)+l.substring(d+2)}function b(l,c,M){!l.month&&c.indexOf("MM")===-1&&(c=f(c,"MM")),!l.day&&c.indexOf("dd")===-1&&(c=f(c,"dd"));let d=c.replace("yyyy",String(l.year));return c.indexOf("M")===-1?d=d.replace("MM","01"):(c.indexOf("MMM")!==-1&&(d=d.replace("MMM",M[l.month||1])),c.indexOf("MM")!==-1?d=d.replace("MM",a(l.month||1)):d=d.replace("M",String(l.month||1))),c.indexOf("dd")===-1?d=d.replace("dd","01"):c.indexOf("dd")!==-1?d=d.replace("dd",a(l.day||1)):d=d.replace("d",String(l.day||1)),d=d.replace("MM","mm").replace("HH",a(l.hour||0)).replace("mm",a(l.minute||0)).replace("ss",a(l.second||0)),d&&d.length>2?d:""}return{getDateValue:e,formatDate:b,preZero:a,remove:f}}function Aa(e){const{displayFormat:a,minYear:f,maxYear:b,selectMode:l,valueFormat:c,showTime:M,periodDelimiter:d}=e,{emptyDate:g,getToday:p}=Me(),{getDateValue:u,preZero:o}=Fa(),{getNumberByValue:m,getMonthNumberByMonthName:O,getWeekNumber:S}=Ae(),{isInitializedDate:P,isDateEarlier:j}=we(),{isDisabledDate:N}=Ut(e.minYear,e.maxYear,e.disableSince,e.disableUntil,e.disableDates,e.disablePeriod,e.disableWeekends,e.disableWeekdays),i=t.ref(e.nameOfMonths),A=[31,28,31,30,31,30,31,31,30,31,30,31];function Y(){const F=p(),L=F.year,V=F.month;switch(l){case"month":return{startMonth:{month:0,year:L},endMonth:{month:0,year:L+1}};case"year":return{startMonth:{month:0,year:L},endMonth:{month:0,year:L+10}};default:{const h={month:V,year:L};let C={month:V+1,year:L};return V>=12&&(C={month:1,year:L+1}),{startMonth:h,endMonth:C}}}}function y(F,L=!1){let V=M,h=a,C=F;return L&&(h=c.replace(/[年,月]/g,"-").replace(/[日]/,"").replace(/[时,分]/g,":").replace(/[秒]/g,""),C=C.replace(/[年,月]/g,"-").replace(/[日]/,"").replace(/[时,分]/g,":").replace(/[秒]/g,""),(C[C.length-1]==="-"||C[C.length-1]===":")&&(C=C.substring(0,C.length-1)),!M&&c.toLocaleLowerCase().indexOf("hh:mm")>-1&&(V=!0)),{actualFormat:h,shouldDisplayTime:V,targetDateString:C}}function D(F,L=!1){const V={year:0,month:0,day:0};if(!F)return V;const{actualFormat:h,shouldDisplayTime:C,targetDateString:B}=y(F,L),x=h.indexOf("MMM")!==-1;let _=B,J=0,ee=0,oe=0,U=h.match(/[^(DdMmYy)]{1,}/g);if(C&&B){_=B.split(" ")[0],Object.assign(V,{hour:0,minute:0,second:0});const ie=B.split(" ")[1];if(ie){const ue=ie.replace("时",":").replace("分",":").replace("秒","").split(":");ue[0]&&(J=Number(ue[0].substr(0,2)),J=isNaN(J)?0:J),ue[1]&&(ee=Number(ue[1].substr(0,2)),ee=isNaN(ee)?0:ee),ue[2]&&(oe=Number(ue[2].substr(0,2)),oe=isNaN(oe)?0:oe)}else if(U=null,/^\d{1,}$/.test(B)){const ve=h;_=B.substr(0,8);let W=B.substr(8);W&&(ve.includes("HH")&&W&&(J=+W.slice(0,2),W=W.slice(2)),ve.includes("mm")&&W&&(ee=+W.slice(0,2),W=W.slice(2)),ve.includes("ss")&&W&&(oe=+W.slice(0,2)))}}else _=B?B.split(" ")[0]:"";const ne=u(_,h,U),T=m(ne[0]),H=x?O(ne[1],i.value):m(ne[1]),K=m(ne[2]);if(l==="year")return{year:T,month:1,day:1};if(H!==-1&&K!==-1&&T!==-1){if(T<f||T>b||H<1||H>12)return V;const ie=M?{year:T,month:H,day:K,hour:J,minute:ee,second:oe}:{year:T,month:H,day:K};return N(ie)||((T%400===0||T%100!==0&&T%4===0)&&(A[1]=29),K<1||K>A[H-1])?V:l==="month"?{year:ie.year,month:ie.month}:l==="year"?{year:ie.year}:ie}return V}function w(F){let L={from:{year:0,month:0,day:0},to:{year:0,month:0,day:0}};if(F&&F.length){const V=F.split(d||"~");if(V&&V.length===2){const[h,C]=V;let B=h?D(h,!0):null,x=C?D(C,!0):null;if(!B&&x&&(B={...x}),!x&&B&&(x={...B}),!B&&!x)return L;L={from:B,to:x}}}return L}function z(F,L){const{from:V,to:h}=F,C=P(V),B=P(h)&&JSON.stringify(V)!==JSON.stringify(h);if(C&&B)F.from=L,F.to=g();else if(!C)F.from=L,!B&&e.showTime&&(F.to=L);else{if(j(L,V)){const _=V;F.to=_,F.from=L}else F.to=L;return{from:F.from,to:F.to,emit:!0}}return{from:F.from,to:F.to}}function R(F){const L=o(F.getHours()),V=o(F.getMinutes()),h=o(F.getSeconds());return`${L}:${V}:${h}`}function Q(F){const L=w(F),V=L.from,h=L.to;if(P(V)&&P(h)){const C=o(V.hour||0),B=o(V.minute||0),x=o(V.second||0),_=`${C}:${B}:${x}`,J=o(h.hour||0),ee=o(h.minute||0),oe=o(h.second||0),U=`${J}:${ee}:${oe}`,ne={year:V.year||1,month:V.month||1,displayTextOfMonth:i.value[V.month||"1"],displayTextOfYear:`${V.year}`},T={year:h.year||1,month:h.month||1,displayTextOfMonth:i.value[h.month||"1"],displayTextOfYear:`${h.year}`};if(V.month===h.month&&V.year===h.year)if(!F)T.month>=12?(T.month=1,T.year=T.year+1):(T.month=T.month+1,l==="month"&&(T.year=T.year+1),T.displayTextOfMonth=i.value[T.month]);else{const ue=F.split("~"),ve=ue[0],W=ue[1];!ve&&W?(ne.month===1?(ne.year=ne.year-1,ne.month=12):ne.month=ne.month-1,ne.displayTextOfMonth=i.value[ne.month]):(T.month===12?(T.year=T.year+1,T.month=1):T.month=T.month+1,T.displayTextOfMonth=i.value[T.month])}else l==="month"&&V.year===h.year&&(T.year=T.year+1);T.displayTextOfYear=`${T.year}`;const H=e.firstDayOfTheWeek===Te.Sunday?h:V,ie={numberInTheYear:S(H),year:H.year};return{beginDateActiveMonth:ne,endDateActiveMonth:T,dateRange:L,beginTime:_,endTime:U,selectedWeekInfo:ie}}return{dateRange:L}}return{normalizeDate:D,normalizeDateRange:w,setNewDateRange:z,getActiveMonth:Q,getTimeStr:R,getMonthAndYear:Y}}function La(){function e(a,f){if(f===Te.Monday){a.setDate(a.getDate()-(a.getDay()+6)%7);const b={year:a.getFullYear(),month:a.getMonth()+1,day:a.getDate()};a.setDate(a.getDate()+6);const l={year:a.getFullYear(),month:a.getMonth()+1,day:a.getDate()};return{from:b,to:l}}else{a.getDay()!==0&&a.setDate(a.getDate()-a.getDay());const b={year:a.getFullYear(),month:a.getMonth()+1,day:a.getDate()};a.setDate(a.getDate()+6-a.getDay());const l={year:a.getFullYear(),month:a.getMonth()+1,day:a.getDate()};return{from:b,to:l}}}return{getNowWeekTime:e}}function Je(e,a=0){return Ye(dt(e,{weekStartsOn:a}),a?0:1)}function Ea(e,a){const{locales:f}=e,{quickSelectors:b}=f,l=e.showTime?Ya(Date.now()):Ca(),c=e.firstDayOfTheWeek==="Mon"?1:0,M=[{label:"今天",value:l,description:"选择今天日期",code:"today"},{label:"昨天",value:Fe(l,1),description:"选择昨天日期",code:"yesterday"},{label:"明天",value:Ye(l,1),description:"选择明天日期",code:"tomorrow"},{label:"本周一",value:Je(l,c),description:"本周一",code:"thisMonday"},{label:"下周一",value:Ye(Je(l,c),7),description:"下周一",code:"nextMonday"},{label:"本月初",value:ht(l),description:"本月第一天",code:"firstDayOfMonth"},{label:"本月末",value:yt(l),description:"本月最后一天",code:"lastDayOfMonth"},{label:"年初",value:Ue(l),description:"今年第一天",code:"firstDayOfYear"},{label:"年末",value:Qe(l),description:"今年最后一天",code:"lastDayOfYear"},{label:"本季度初",value:mt(l),description:"本季度第一天",code:"firstDayOfQuarter"},{label:"本季度末",value:vt(l),description:"本季度最后一天",code:"lastDayOfQuarter"}],d=[{label:"今天",value:[l,l],description:"选择今天日期",code:"today"},{label:"昨天",value:[Fe(l,1),Fe(l,1)],description:"选择昨天日期",code:"yesterday"},{label:"本周",value:[dt(l,{weekStartsOn:c}),qt(l,{weekStartsOn:c})],description:"本周一至周日",code:"thisWeek"},{label:"上周",value:[dt(Ye(Je(l,c),-7),{weekStartsOn:c}),qt(Ye(Je(l,c),-7),{weekStartsOn:c})],description:"上周一至周日",code:"lastWeek"},{label:"过去7天",value:[Fe(l,6),l],description:"7天前至今天",code:"past7Days"},{label:"过去30天",value:[Fe(l,29),l],description:"30天前至今天",code:"past30Days"},{label:"本月",value:[ht(l),yt(l)],description:"本月1号至月末",code:"thisMonth"},{label:"上月",value:[ht(bt(l,1)),yt(bt(l,1))],description:"上月1号至月末",code:"lastMonth"},{label:"最近三个月",value:[bt(l,2),l],description:"3个月前至今天",code:"recent3Months"},{label:"本季度",value:[mt(l),vt(l)],description:"本季度第1天至本季度最后1天",code:"thisQuarter"},{label:"上季度",value:[mt(_t(l)),vt(_t(l))],description:"上季度第1天至最后1天",code:"lastQuarter"},{label:"去年",value:[Ue(zt(l)),Qe(zt(l))],description:"去年1月1日至12月31日",code:"lastYear"},{label:"今年",value:[Ue(l),Qe(l)],description:"本年1月1日至12月31日",code:"thisYear"},{label:"明年",value:[Ue(ft(l,1)),Qe(ft(l,1))],description:"明年1月1日至12月31日",code:"nextYear"}],g=u=>u.map(o=>(o.label=b[o.code]||o.label,o));return{quickSelectorList:{single:g(M),range:g(d)}}}function Ra(){const{equal:e,isDateEarlier:a}=we();function f(c,M,d){const g=c.hour||0,p=M.hour||0,u=[],o={year:d.year,month:d.month,day:d.day},m={year:c.year,month:c.month,day:c.day},O={year:M.year,month:M.month,day:M.day};if(a(o,m))return Array.from({length:24},(S,P)=>P);if(a(O,o))return Array.from({length:24},(S,P)=>P);if(e(o,m))for(let S=0;S<g;S++)u.push(S);if(e(o,O))for(let S=p+1;S<24;S++)u.push(S);return u}function b(c,M,d,g){const p=M.hour||0,u=M.minute||0,o=c.hour||0,m=c.minute||0,O=[],S={year:g.year,month:g.month,day:g.day},P={year:c.year,month:c.month,day:c.day},j={year:M.year,month:M.month,day:M.day};if(a(S,P)||a(j,S))return Array.from({length:60},(N,i)=>i);if(e(S,P)){if(d<o)return Array.from({length:60},(N,i)=>i);if(d===o)for(let N=0;N<m;N++)O.push(N)}if(e(S,j)){if(d>p)return Array.from({length:60},(N,i)=>i);if(d===p)for(let N=u+1;N<60;N++)O.push(N)}return O}function l(c,M,d,g,p){const u=M.hour||0,o=M.minute||0,m=M.second||0,O=c.hour||0,S=c.minute||0,P=c.second||0,j=[],N={year:p.year,month:p.month,day:p.day},i={year:c.year,month:c.month,day:c.day},A={year:M.year,month:M.month,day:M.day};if(a(N,i)||a(A,N))return Array.from({length:60},(Y,y)=>y);if(e(N,i)){if(d<O)return Array.from({length:60},(Y,y)=>y);if(d===O){if(g<S)return Array.from({length:60},(Y,y)=>y);if(g===S)for(let Y=0;Y<P;Y++)j.push(Y)}}if(e(N,A)){if(d>u)return Array.from({length:60},(Y,y)=>y);if(d===u){if(g>o)return Array.from({length:60},(Y,y)=>y);if(g===o)for(let Y=m+1;Y<60;Y++)j.push(Y)}}return j}return{getDisabledHours:f,getDisabledMinutes:b,getDisabledSeconds:l}}const Le=t.defineComponent({name:"FDateView",props:Qt,emits:["datePicked","confirm"],setup(e,a){var ga,Ma,ka;const f=t.ref(),b=t.ref(""),l=t.ref(e.defaultTime||""),c=t.ref(""),M=t.ref(e.mode),d=t.ref(e.top),g=t.ref(e.left),p=t.ref(e.position),u=t.ref(e.enablePeriod),o=t.ref(e.selectMode),m=t.ref(e.dateFormat),O=t.ref(e.nameOfMonths),S=t.ref(e.valueFormat),P=t.ref(!1),j=t.ref(!1),N=t.ref(!1),i=t.ref(!1),A=t.ref(!1),Y=t.ref(!1),y=t.ref(!1),D=t.ref(!1),w=t.ref(!1),z=t.ref(!1),R=t.ref(!1),Q=t.ref(!1),F=t.ref(!1),L=t.ref([]),V=t.ref(e.enableKeyboadNavigate),h=t.ref(e.enableMarkCurrent),C=t.ref(e.firstDayOfTheWeek),B=t.ref(e.showWeekNumber),x=t.ref(e.selectedDate),_=t.ref(e.selectedSecondDate),J=t.ref(e.value),ee=t.ref(e.selectedWeek),oe=t.ref(e.weekTitle),U=t.ref(e.selectedMonth),ne=t.ref(e.minYear),T=t.ref(e.maxYear),H=t.ref(e.disableSince),K=t.ref(e.disableUntil),ie=t.ref(e.disableDates),ue=t.ref(e.disablePeriod),ve=t.ref(e.disableWeekdays),W=t.ref(e.disableWeekends),{quickSelectorList:k}=Ea(e),{getToday:I,getDateObject:te,getTimeValue:X,getEndTimeValue:fe,emptyDate:ye,convertDateToDateObject:me,getNearDate:Pe}=Me(),{setNewDateRange:ke,getActiveMonth:Re,getTimeStr:Ge,getMonthAndYear:Ot}=Aa(e),$=t.ref({from:{...ye()},to:{...ye()}});function Ua(){const{weekDayLabels:n}=e.locales,s=[],r=xe.indexOf(C.value);if(r!==-1){let v=r;for(let E=0;E<xe.length;E++)s.push(n[xe[v]]),v=xe[v]==="Sat"?0:v+1}return s}L.value=Ua(),(ga=e.locales)!=null&&ga.weekTitle&&(oe.value=e.locales.weekTitle);const Oe=Ut(ne.value,T.value,H.value,K.value,ie.value,ue.value,W.value,ve.value),{formatTo:Xe,parseToDate:Nt}=Se.useDateFormat(),{isMonthDisabledByDisableSince:Ka,isMonthDisabledByDisableUntil:Ja}=gt(),{generateCalendar:Gt}=Ha(Oe),{generateMonths:Xt,getNextMonth:Zt,getPreviousMonth:ea,daysInMonth:Ga}=Mt(),{getNowWeekTime:ta}=La(),{getWeekNumber:Xa}=Ae(),{generateYears:aa}=Ia(),{equalOrEarlier:le,isInitializedDate:De,isDateEarlier:Za}=we();let ae=I();ae=Oe.isDisabledDate(ae)?Pe(ae,K.value,H.value):ae;const Ve=t.computed(()=>{const n=re.cloneDeep(ae),s=J.value&&!u.value?Nt(J.value,S.value):null;return s?te(Xe(s,"yyyy-MM-dd"),"yyyy-MM-dd"):n});if(J.value&&!u.value){const n=Nt(J.value,S.value);n&&(x.value=te(Xe(n,"yyyy-MM-dd"),"yyyy-MM-dd"))}const q=t.ref({year:Ve.value.year||1,month:Ve.value.month||1,displayTextOfMonth:O.value[Ve.value.month||"1"],displayTextOfYear:`${Ve.value.year}`}),Ze=t.ref(re.cloneDeep(q.value));U.value={year:(Ma=x.value)==null?void 0:Ma.year,month:(ka=x.value)==null?void 0:ka.month};const{endMonth:na}=Ot(),la=na.year,oa=na.month,G=t.ref({year:la,month:oa,displayTextOfMonth:O.value[oa],displayTextOfYear:`${la}`}),ra=t.ref(re.cloneDeep(G.value)),Ce=t.computed(()=>Gt(q.value.month,q.value.year,C.value,[],{marked:!0,color:""},e.highlightDates,e.highlightSaturday,e.highlightSunday,B.value));t.watch(()=>e.defaultTime,n=>{l.value=n||""});const et=t.ref(Ce.value);t.watch(()=>Ce.value,(n,s)=>{et.value=n});const We=t.computed(()=>Gt(G.value.month,G.value.year,C.value,[],{marked:!0,color:""},e.highlightDates,e.highlightSaturday,e.highlightSunday,B.value)),tt=t.ref(We.value);t.watch(()=>We.value,(n,s)=>{tt.value=n});const at=t.computed(()=>Xt(O.value,{year:q.value.year,month:q.value.month},H.value,K.value)),St=t.ref(at.value);t.watch(()=>at.value,(n,s)=>{St.value=n});const Be=t.computed(()=>aa(q.value.year,{year:q.value.year,month:q.value.month},ne.value,T.value,H.value,K.value)),$e=t.ref(Be.value);t.watch(()=>Be.value,(n,s)=>{$e.value=n});const qe=t.computed(()=>aa(G.value.year,{year:G.value.year,month:G.value.month},ne.value,T.value,H.value,K.value)),nt=t.ref(qe.value);t.watch(()=>qe.value,(n,s)=>{nt.value=n});const lt=t.computed(()=>Xt(O.value,{year:G.value.year,month:G.value.month},H.value,K.value)),xt=t.ref(lt.value);t.watch(()=>lt.value,(n,s)=>{xt.value=n}),t.watch(()=>e.enablePeriod,(n,s)=>{n!==s&&(u.value=n)});const je=t.computed(()=>n=>n?o.value!=="week"&&!j.value&&!i.value&&!A.value:!P.value&&!N.value&&!A.value);function en(){return u.value&&o.value!=="week"?575:e.showTime&&o.value!=="week"&&e.inlineDateTime?487:287}const tn=t.computed(()=>({top:`${d.value}px`,left:`${g.value}px`,width:`${en()+(e.enableQuickSelect?90:0)}px`,position:"relative","z-index":M.value==="Embedded"?0:9999,"margin-top":"0px"}));function _n(n){}function an(n){n.stopPropagation()}function nn(n,s){if(s){const r=G.value.year-(i.value?10:1),v={year:r,month:G.value.month,displayTextOfMonth:O.value[G.value.month||"1"],displayTextOfYear:`${r}`};G.value=v}else{const r=q.value.year-(N.value?10:1),v={year:r,month:q.value.month,displayTextOfMonth:O.value[q.value.month||"1"],displayTextOfYear:`${r}`};q.value=v,(P.value||je.value(!1))&&(U.value={...U.value,year:v.year,month:v.month})}}function Pt(n,s){if(s){const r=ea(G.value.month,G.value.year),v={year:r.year||1,month:r.month||1,displayTextOfMonth:O.value[r.month||"1"],displayTextOfYear:`${r.year}`};G.value=v}else{const r=ea(q.value.month,q.value.year),v={year:r.year||1,month:r.month||1,displayTextOfMonth:O.value[r.month||"1"],displayTextOfYear:`${r.year}`};q.value=v,U.value={...U.value,year:v.year,month:v.month}}}function Vt(n,s){if(s){const r=Zt(G.value.month,G.value.year),v={year:r.year||1,month:r.month||1,displayTextOfMonth:O.value[r.month||"1"],displayTextOfYear:`${r.year}`};G.value=v}else{const r=Zt(q.value.month,q.value.year),v={year:r.year||1,month:r.month||1,displayTextOfMonth:O.value[r.month||"1"],displayTextOfYear:`${r.year}`};q.value=v,U.value={...U.value,year:v.year,month:v.month}}}function ln(n,s){if(s){let r=G.value.year+1;i.value&&(r=qe.value[3][0].year+2);const v={year:r,month:G.value.month,displayTextOfMonth:O.value[G.value.month||"1"],displayTextOfYear:`${r}`};G.value=v}else{let r=q.value.year+1;N.value&&(r=Be.value[3][0].year+2);const v={year:r,month:q.value.month,displayTextOfMonth:O.value[q.value.month||"1"],displayTextOfYear:`${r}`};q.value=v,(P.value||je.value(!1))&&(U.value={...U.value,year:v.year,month:v.month})}}function Yt(n){A.value=!1,n?(j.value=!j.value,i.value=!1):(P.value=!P.value,N.value=!1)}function Ct(n){A.value=!1,n?(i.value=o.value==="year"?!0:!i.value,o.value==="month"?j.value=!j.value:j.value=!1,i.value?ra.value=re.cloneDeep(G.value):G.value=re.cloneDeep(ra.value)):(N.value=o.value==="year"?!0:!N.value,o.value==="month"?P.value=!P.value:P.value=!1,N.value?Ze.value=re.cloneDeep(q.value):q.value=re.cloneDeep(Ze.value))}function on(){if($.value){const{from:n,to:s}=$.value,r=De(n),v=De(s),E=new Date;(!r||!v)&&(r||($.value.from={year:E.getFullYear(),month:E.getMonth()+1,day:E.getDate()}),$.value.to={...$.value.from},b.value=Ge(E),c.value=Ge(E))}A.value=!A.value,P.value=!1,N.value=!1,i.value=!1,j.value=!1}const rn=t.computed(()=>({"active-month":q.value,"date-format":m.value,"disable-pre-page":Y.value,"disable-pre-record":y.value,"disable-next-record":D.value,"disable-next-page":w.value,years:$e.value,"selecting-month":P.value,"selecting-year":N.value,"select-mode":o.value,minDate:K.value,maxDate:H.value})),sn=t.computed(()=>({"active-month":G.value,"date-format":m.value,"disable-pre-page":z.value,"disable-pre-record":R.value,"disable-next-record":Q.value,"disable-next-page":F.value,years:nt.value,"selecting-month":j.value,"selecting-year":i.value,"select-mode":o.value,minDate:K.value,maxDate:H.value}));function ia(n,s){return t.createVNode(kt,t.mergeProps(n,{onPrePage:r=>nn(r,s),onPreRecord:r=>Pt(r,s),onNextRecord:r=>Vt(r,s),onNextPage:r=>ln(r,s),onClickMonth:r=>Yt(s),onClickYear:r=>Ct(s)}),null)}const ot=t.computed(()=>P.value&&!N.value),rt=t.computed(()=>N.value&&!P.value),un=t.computed(()=>({dates:et.value,daysInWeek:L.value,enableKeyboadNavigate:V.value,enableMarkCurrent:h.value,enablePeriod:u.value,firstDayOfTheWeek:C.value,selected:x.value||null,selectedPeriod:$.value,selectedWeek:ee.value,selectMode:o.value,showWeekNumber:B.value,weekTitle:oe.value})),cn=t.computed(()=>({dates:tt.value,daysInWeek:L.value,enableKeyboadNavigate:V.value,enableMarkCurrent:h.value,enablePeriod:u.value,firstDayOfTheWeek:C.value,selected:_.value,selectedPeriod:$.value,selectMode:o.value,showWeekNumber:B.value,weekTitle:oe.value}));function dn(n,s){var ge;const{event:r,dayItem:v}=n,E=v.date;if(v.tag===1?Pt(r,s):v.tag===3&&Vt(r,s),u.value){const{from:He,to:Ie,emit:_e}=ke($.value,E);$.value={from:re.cloneDeep(He),to:re.cloneDeep(Ie)},!e.showTime&&_e&&a.emit("datePicked",{startDate:He,endDate:Ie})}else if(!e.showTime)a.emit("datePicked",E);else{const{year:He,month:Ie,day:_e}=E;x.value=Object.assign(x.value||{},{year:He,month:Ie,day:_e}),(ge=f.value)==null||ge.refresh()}const{year:se,month:ce}=E;U.value={year:se,month:ce}}function fn(n){const s=S.value.toLowerCase().indexOf("hh:mm")>-1;ee.value={numberInTheYear:n.numberInTheYear,year:n.year},s&&(n.days[0].date.hour=0,n.days[0].date.minute=0,n.days[0].date.second=0,n.days[6].date.hour=23,n.days[6].date.minute=59,n.days[6].date.second=59),ke($.value,n.days[0].date);const{from:r,to:v,emit:E}=ke($.value,n.days[6].date);$.value={from:r,to:v},E&&a.emit("datePicked",{startDate:r,endDate:v})}function zn(n){}function yn(n,s){if(s){for(const r of Ce.value)for(const v of r.days)v.range=le($.value.from,v.date)&&le(v.date,n)||le(v.date,$.value.from)&&le(n,v.date);et.value=re.cloneDeep(Ce.value)}else{for(const r of We.value)for(const v of r.days)v.range=le($.value.from,v.date)&&le(v.date,n)||le(v.date,$.value.from)&&le(n,v.date);tt.value=re.cloneDeep(We.value)}}function mn(n,s){if(s){for(const r of Ce.value)for(const v of r.days)v.range=!1;et.value=re.cloneDeep(Ce.value)}else{for(const r of We.value)for(const v of r.days)v.range=!1;tt.value=re.cloneDeep(We.value)}}function sa(n,s){return t.createVNode(Ke,t.mergeProps(n,{onClick:r=>dn(r,s),onClickWeek:r=>fn(r),onKeyDown:r=>void 0,onMouseEnter:r=>yn(r,s),onMouseLeave:r=>mn(r,s)}),null)}const hn=t.computed(()=>({months:St.value,enableMarkCurrent:h.value,enableKeyboadNavigate:V.value,enablePeriod:u.value,selected:U.value,selectedPeriod:$.value,selectMode:o.value})),vn=t.computed(()=>({months:xt.value,enableMarkCurrent:h.value,enableKeyboadNavigate:V.value,enablePeriod:u.value,selected:U.value,selectedPeriod:$.value})),Ne=n=>{const{from:s,to:r}=$.value,v=De(s),E=De(r);if(v&&E)$.value.from={year:n.year,month:n.month},!P.value&&!N.value&&($.value.from.day=0),$.value.to=ye();else if(!v)$.value.from={year:n.year,month:n.month},!P.value&&!N.value&&($.value.from.day=0);else{if(Za({year:n.year,month:n.month},s)){const ce=$.value.from;$.value.to={...ce},$.value.from={year:n.year,month:n.month}}else $.value.to={year:n.year,month:n.month};a.emit("datePicked",{startDate:$.value.from,endDate:$.value.to})}},it=t.computed(()=>{const{from:n