var t,e;import{U as n}from"./uv-picker.134e68a5.js";import{Y as i,Z as r,o as s,j as a,G as o,H as u}from"./index-d4baa715.js";import{_ as h}from"./_plugin-vue_export-helper.1b428a4d.js";const l={props:{value:{type:[String,Number],default:""},modelValue:{type:[String,Number],default:""},show:{type:Boolean,default:!1},showToolbar:{type:Boolean,default:!0},title:{type:String,default:""},mode:{type:String,default:"datetime"},maxDate:{type:Number,default:new Date((new Date).getFullYear()+10,0,1).getTime()},minDate:{type:Number,default:new Date((new Date).getFullYear()-10,0,1).getTime()},minHour:{type:Number,default:0},maxHour:{type:Number,default:23},minMinute:{type:Number,default:0},maxMinute:{type:Number,default:59},filter:{type:[Function,null],default:null},formatter:{type:[Function,null],default:null},loading:{type:Boolean,default:!1},itemHeight:{type:[String,Number],default:44},cancelText:{type:String,default:"取消"},confirmText:{type:String,default:"确认"},cancelColor:{type:String,default:"#909193"},confirmColor:{type:String,default:"#3c9cff"},visibleItemCount:{type:[String,Number],default:5},closeOnClickOverlay:{type:Boolean,default:!0},closeOnClickConfirm:{type:Boolean,default:!0},...null==(e=null==(t=uni.$uv)?void 0:t.props)?void 0:e.datetimePicker}};var c,m,d=Object.getOwnPropertyNames;const f=(c={"C:/Users/LP/Downloads/uvui-plus_3.1.27_example/node_modules/dayjs/dayjs.min.js"(t,e){var n,i;n=t,i=function(){var t=6e4,e=36e5,n="millisecond",i="second",r="minute",s="hour",a="day",o="week",u="month",h="quarter",l="year",c="date",m="Invalid Date",d=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,f=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,p={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return"["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},$=function(t,e,n){var i=String(t);return!i||i.length>=e?t:""+Array(e+1-i.length).join(n)+t},y={s:$,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),i=Math.floor(n/60),r=n%60;return(e<=0?"+":"-")+$(i,2,"0")+":"+$(r,2,"0")},m:function t(e,n){if(e.date()1)return t(a[0])}else{var o=e.name;v[o]=e,r=o}return!i&&r&&(g=r),r||!i&&g},x=function(t,e){if(M(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new S(n)},C=y;C.l=D,C.i=M,C.w=function(t,e){return x(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var S=function(){function p(t){this.$L=D(t.locale,null,!0),this.parse(t)}var $=p.prototype;return $.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(C.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var i=e.match(d);if(i){var r=i[2]-1||0,s=(i[7]||"0").substring(0,3);return n?new Date(Date.UTC(i[1],r,i[3]||1,i[4]||0,i[5]||0,i[6]||0,s)):new Date(i[1],r,i[3]||1,i[4]||0,i[5]||0,i[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init()},$.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},$.$utils=function(){return C},$.isValid=function(){return!(this.$d.toString()===m)},$.isSame=function(t,e){var n=x(t);return this.startOf(e)<=n&&n<=this.endOf(e)},$.isAfter=function(t,e){return x(t)({columns:[],innerDefaultIndex:[],innerFormatter:(t,e)=>e}),watch:{propsChange(){this.init()}},computed:{propsChange(){const t=this.value||this.modelValue;return[this.mode,this.maxDate,this.minDate,this.minHour,this.maxHour,this.minMinute,this.maxMinute,this.filter,t]}},mounted(){this.init()},methods:{init(){this.getValue(),this.updateColumnValue(this.innerValue)},getValue(){const t=this.value||this.modelValue;this.innerValue=this.correctValue(t)},setFormatter(t){this.innerFormatter=t},open(){this.$refs.picker.open(),this.getValue(),this.updateColumnValue(this.innerValue)},close(){this.$emit("close")},cancel(){this.$emit("cancel")},confirm(){this.$emit("confirm",{value:this.innerValue,mode:this.mode}),this.$emit("input",this.innerValue),this.$emit("update:modelValue",this.innerValue)},intercept(t,e){let n=t.match(/\d+/g);return n.length>1?(this.$uv.error("请勿在过滤或格式化函数时添加数字"),0):e&&4==n[0].length?n[0]:n[0].length>2?(this.$uv.error("请勿在过滤或格式化函数时添加数字"),0):n[0]},change(t){const{indexs:e,values:n}=t;let i="";if("time"===this.mode)i=`${this.intercept(n[0][e[0]])}:${this.intercept(n[1][e[1]])}`;else{const t=parseInt(this.intercept(n[0][e[0]],"year")),r=parseInt(this.intercept(n[1][e[1]]));let s=parseInt(n[2]?this.intercept(n[2][e[2]]):1),a=0,o=0;const u=f(`${t}-${r}`).daysInMonth();"year-month"===this.mode&&(s=1),s=Math.min(u,s),"datetime"===this.mode&&(a=parseInt(this.intercept(n[3][e[3]])),o=parseInt(this.intercept(n[4][e[4]]))),i=Number(new Date(t,r-1,s,a,o))}i=this.correctValue(i),this.innerValue=i,this.updateColumnValue(i),this.$emit("change",{value:i,mode:this.mode})},updateColumnValue(t){this.innerValue=t,this.updateColumns(),this.updateIndexs(t)},updateIndexs(t){let e=[];const n=this.formatter||this.innerFormatter;if("time"===this.mode){const i=t.split(":");e=[n("hour",i[0]),n("minute",i[1])]}else e=[n("year",`${f(t).year()}`),n("month",this.$uv.padZero(f(t).month()+1))],"date"===this.mode&&e.push(n("day",this.$uv.padZero(f(t).date()))),"datetime"===this.mode&&e.push(n("day",this.$uv.padZero(f(t).date())),n("hour",this.$uv.padZero(f(t).hour())),n("minute",this.$uv.padZero(f(t).minute())));const i=this.columns.map(((t,n)=>Math.max(0,t.findIndex((t=>t===e[n])))));this.innerDefaultIndex=i},updateColumns(){const t=this.formatter||this.innerFormatter,e=this.getOriginColumns().map((e=>e.values.map((n=>t(e.type,n)))));this.columns=e},getOriginColumns(){return this.getRanges().map((({type:t,range:e})=>{let n=function(t,e){let n=-1;const i=Array(t<0?0:t);for(;++n{let i=e[0]+n;return i="year"===t?`${i}`:this.$uv.padZero(i),i}));return this.filter&&(n=this.filter(t,n)),{type:t,values:n}}))},generateArray:(t,e)=>Array.from(new Array(e+1).keys()).slice(t),correctValue(t){const e="time"!==this.mode;if(e&&!this.$uv.test.date(t)?t=this.minDate:e||t||(t=`${this.$uv.padZero(this.minHour)}:${this.$uv.padZero(this.minMinute)}`),e)return t=f(t).isBefore(f(this.minDate))?this.minDate:t,t=f(t).isAfter(f(this.maxDate))?this.maxDate:t;{if(-1===String(t).indexOf(":"))return this.$uv.error("时间错误,请传递如12:24的格式");let[e,n]=t.split(":");return e=this.$uv.padZero(this.$uv.range(this.minHour,this.maxHour,Number(e))),n=this.$uv.padZero(this.$uv.range(this.minMinute,this.maxMinute,Number(n))),`${e}:${n}`}},getRanges(){if("time"===this.mode)return[{type:"hour",range:[this.minHour,this.maxHour]},{type:"minute",range:[this.minMinute,this.maxMinute]}];const{maxYear:t,maxDate:e,maxMonth:n,maxHour:i,maxMinute:r}=this.getBoundary("max",this.innerValue),{minYear:s,minDate:a,minMonth:o,minHour:u,minMinute:h}=this.getBoundary("min",this.innerValue),l=[{type:"year",range:[s,t]},{type:"month",range:[o,n]},{type:"day",range:[a,e]},{type:"hour",range:[u,i]},{type:"minute",range:[h,r]}];return"date"===this.mode&&l.splice(3,2),"year-month"===this.mode&&l.splice(2,3),l},getBoundary(t,e){const n=new Date(e),i=new Date(this[`${t}Date`]),r=f(i).year();let s=1,a=1,o=0,u=0;return"max"===t&&(s=12,a=f(n).daysInMonth(),o=23,u=59),f(n).year()===r&&(s=f(i).month()+1,f(n).month()+1===s&&(a=f(i).date(),f(n).date()===a&&(o=f(i).hour(),f(n).hour()===o&&(u=f(i).minute())))),{[`${t}Year`]:r,[`${t}Month`]:s,[`${t}Date`]:a,[`${t}Hour`]:o,[`${t}Minute`]:u}}}},[["render",function(t,e,i,r,h,l){const c=o(u("uv-picker"),n);return s(),a(c,{ref:"picker",closeOnClickOverlay:t.closeOnClickOverlay,closeOnClickConfirm:t.closeOnClickConfirm,columns:h.columns,title:t.title,itemHeight:t.itemHeight,showToolbar:t.showToolbar,visibleItemCount:t.visibleItemCount,defaultIndex:h.innerDefaultIndex,cancelText:t.cancelText,confirmText:t.confirmText,cancelColor:t.cancelColor,confirmColor:t.confirmColor,onClose:l.close,onCancel:l.cancel,onConfirm:l.confirm,onChange:l.change},null,8,["closeOnClickOverlay","closeOnClickConfirm","columns","title","itemHeight","showToolbar","visibleItemCount","defaultIndex","cancelText","confirmText","cancelColor","confirmColor","onClose","onCancel","onConfirm","onChange"])}]]);export{p as U};