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