import{v as e,o as t,d as s,w as a,e as i,L as r,f as h,t as m,X as n,I as u,K as o,J as l,x as y,i as d,h as p,aC as c,aD as f,b8 as g,G as b}from"./index-Cd91A6jN.js";import{_ as A}from"./u-input.Drw88frE.js";import{r as N}from"./uni-app.es._xPf64vy.js";import{_ as k}from"./u-popup.D3lI-JJq.js";import{_ as M}from"./_plugin-vue_export-helper.BCo6x5W8.js";const T=M({name:"jnpf-dateTime",components:{Select:M({name:"u-picker",props:{params:{type:Object,default:()=>({year:!0,month:!0,day:!0,hour:!1,minute:!1,second:!1,timestamp:!0})},range:{type:Array,default:()=>[]},defaultSelector:{type:Array,default:()=>[0]},rangeKey:{type:String,default:""},mode:{type:String,default:"time"},startDate:{type:String,default:"1899-01-01 00:00:00"},endDate:{type:String,default:"2250-12-31 23:59:59"},cancelColor:{type:String,default:"#606266"},confirmColor:{type:String,default:"#2979ff"},defaultTime:{type:String,default:""},showTimeTag:{type:Boolean,default:!0},safeAreaInsetBottom:{type:Boolean,default:!1},maskCloseAble:{type:Boolean,default:!1},modelValue:{type:Boolean,default:!1},zIndex:{type:[String,Number],default:0},title:{type:String,default:""},cancelText:{type:String,default:"取消"},confirmText:{type:String,default:"确认"},format:{type:String,default:"yyyy-MM-dd HH:mm:ss"}},data:()=>({years:[],months:[],days:[],hours:[],minutes:[],seconds:[],year:0,month:0,day:0,hour:0,minute:0,second:0,reset:!1,valueArr:[],moving:!1,showPopup:!1}),mounted(){this.init()},computed:{propsChange(){return`${this.mode}-${this.defaultTime}-${this.startYear}-${this.endYear}-${this.defaultRegion}-${this.areaCode}`},yearAndMonth(){return`${this.year}-${this.month}`},uZIndex(){return this.zIndex?this.zIndex:this.$u.zIndex.popup}},watch:{propsChange(){this.reset=!0,setTimeout((()=>this.init()),10)},yearAndMonth(e){this.params.year&&this.setDays()},modelValue:{handler(e){e&&(this.showPopup=e,this.reset=!0,setTimeout((()=>this.init()),10))},immediate:!0}},methods:{pickstart(){},pickend(){},getIndex:function(e,t){let s=e.indexOf(t);return~s?s:0},initTimeValue(){let e=this.defaultTime.replace(/\-/g,"/");e=e&&-1==e.indexOf("/")?`1899/01/01 ${e}`:e;let t=null;t=e?new Date(e):new Date,this.year=t.getFullYear(),this.month=Number(t.getMonth())+1,this.day=t.getDate(),this.hour=t.getHours(),this.minute=t.getMinutes(),this.second=t.getSeconds()},init(){this.valueArr=[],this.reset=!1,this.initTimeValue(),this.params.year&&(this.valueArr.push(0),this.setYears()),this.params.month&&(this.valueArr.push(0),this.setMonths()),this.params.day&&(this.valueArr.push(0),this.setDays()),this.params.hour&&(this.valueArr.push(0),this.setHours()),this.params.minute&&(this.valueArr.push(0),this.setMinutes()),this.params.second&&(this.valueArr.push(0),this.setSeconds())},setYears(){this.generateArray("year"),this.years[0]>this.year&&(this.year=this.years[0]),this.years[this.years.length-1]this.month&&(this.month=this.months[0]),this.months[this.months.length-1]this.day&&(this.day=this.days[0]),this.days[this.days.length-1]this.hour&&(this.hour=this.hours[0]),this.hours[this.hours.length-1]this.minute&&(this.minute=this.minutes[0]),this.minutes[this.minutes.length-1]this.second&&(this.second=this.seconds[0]),this.seconds[this.seconds.length-1]h?p:h,this.years=[...Array(p+1).keys()].slice(h),this.generateArray("month");else if("month"==e){let e=[];e=h==Number(this.year)?p==Number(this.year)?[...Array(c+1).keys()].slice(m):[...Array(13).keys()].slice(m):p==Number(this.year)?[...Array(c+1).keys()].slice(1):[...Array(13).keys()].slice(1),this.months=e,this.generateArray("day")}else if("day"===e){let e=[];e=h==Number(this.year)&&m==Number(this.month)?p==Number(this.year)&&c==Number(this.month)?[...Array(f+1).keys()].slice(n):[...Array(a+1).keys()].slice(n):p==Number(this.year)&&c==Number(this.month)?[...Array(f+1).keys()].slice(1):[...Array(a+1).keys()].slice(1),this.days=e,this.generateArray("hour")}else if("hour"===e){let e=[];e=h==Number(this.year)&&m==Number(this.month)&&n==Number(this.day)?p==Number(this.year)&&c==Number(this.month)&&f==Number(this.day)?[...Array(g+1).keys()].slice(u):[...Array(24).keys()].slice(u):p==Number(this.year)&&c==Number(this.month)&&f==Number(this.day)?[...Array(g+1).keys()].slice(0):[...Array(24).keys()].slice(0),this.hours=e,this.generateArray("minute")}else if("minute"===e){let e=[];e=h==Number(this.year)&&m==Number(this.month)&&n==Number(this.day)&&u==Number(this.hour)?p==Number(this.year)&&c==Number(this.month)&&f==Number(this.day)&&g==Number(this.hour)?[...Array(b+1).keys()].slice(o):[...Array(60).keys()].slice(o):p==Number(this.year)&&c==Number(this.month)&&f==Number(this.day)&&g==Number(this.hour)?[...Array(b+1).keys()].slice(0):[...Array(60).keys()].slice(0),this.minutes=e,this.generateArray("seconds")}else{let e=[];e=h==Number(this.year)&&m==Number(this.month)&&n==Number(this.day)&&u==Number(this.hour)&&o==Number(this.minute)?p==Number(this.year)&&c==Number(this.month)&&f==Number(this.day)&&g==Number(this.hour)&&b==Number(this.minute)?[...Array(A+1).keys()].slice(l):[...Array(60).keys()].slice(l):p==Number(this.year)&&c==Number(this.month)&&f==Number(this.day)&&g==Number(this.hour)&&b==Number(this.minute)?[...Array(A+1).keys()].slice(0):[...Array(60).keys()].slice(0),this.seconds=e}},close(){this.$emit("close")},change(e){this.valueArr=e.detail.value;let t=0;if(this.params.year&&(this.year=this.years[this.valueArr[t++]],this.generateArray("year")),this.params.month&&(this.month=this.months[this.valueArr[t++]],this.generateArray("month")),this.params.day){const e=this.valueArr[t++];this.day=this.days[e]?this.days[e]:this.days[0],this.generateArray("day")}this.params.hour&&(this.hour=this.hours[this.valueArr[t++]],this.generateArray("hour")),this.params.minute&&(this.minute=this.minutes[this.valueArr[t++]],this.generateArray("minute")),this.params.second&&(this.second=this.seconds[this.valueArr[t++]],this.generateArray("second"))},getResult(){let e={};this.params.year&&(e.year=this.formatNumber(this.year||0)),this.params.month&&(e.month=this.formatNumber(this.month||0)),this.params.day&&(e.day=this.formatNumber(this.day||0)),this.params.hour&&(e.hour=this.formatNumber(this.hour||0)),this.params.minute&&(e.minute=this.formatNumber(this.minute||0)),this.params.second&&(e.second=this.formatNumber(this.second||0)),this.params.timestamp&&(e.timestamp=this.getTimestamp()),this.$emit("confirm",e),this.close()},formatNumber:e=>+e<10?"0"+e:String(e),getTimestamp(){let e=this.jnpf.handelFormat(this.format),t="yyyy"===e?"/01/01 00:00:00":"yyyy-MM"===e?"/01 00:00:00":"yyyy-MM-dd"===e?" 00:00:00":"",s="";return s=!this.params.year||this.params.month||this.params.day||this.params.hour||this.params.minute||this.params.second?!this.params.year||!this.params.month||this.params.day||this.params.hour||this.params.minute||this.params.second?this.params.year&&this.params.month&&this.params.day&&!this.params.hour&&!this.params.minute&&!this.params.second?this.year+"/"+this.month+"/"+this.day+t:this.params.year&&this.params.month&&this.params.day&&this.params.hour&&!this.params.minute&&!this.params.second?this.year+"/"+this.month+"/"+this.day+" "+this.hour+t:this.params.year&&this.params.month&&this.params.day&&this.params.hour&&this.params.minute&&!this.params.second?this.year+"/"+this.month+"/"+this.day+" "+this.hour+":"+this.minute+t:this.year+"/"+this.month+"/"+this.day+" "+this.hour+":"+this.minute+":"+this.second+t:this.year+"/"+this.month+t:this.year+t,new Date(s).getTime()}}},[["render",function(g,b,A,M,T,D){const v=d,_=p,V=c,S=f,Y=N(e("u-popup"),k);return t(),s(v,null,{default:a((()=>[i(Y,{maskCloseAble:A.maskCloseAble,mode:"bottom",popup:!1,modelValue:T.showPopup,"onUpdate:modelValue":b[2]||(b[2]=e=>T.showPopup=e),length:"auto",safeAreaInsetBottom:A.safeAreaInsetBottom,onClose:D.close,"z-index":D.uZIndex},{default:a((()=>[i(v,{class:"u-datetime-picker"},{default:a((()=>[i(v,{class:"u-picker-header"},{default:a((()=>[i(v,{class:"u-btn-picker u-btn-picker--tips",style:r({color:A.cancelColor}),"hover-class":"u-opacity","hover-stay-time":150,onClick:b[0]||(b[0]=e=>D.close())},{default:a((()=>[h(m(A.cancelText),1)])),_:1},8,["style"]),i(v,{class:"u-picker__title"},{default:a((()=>[h(m(A.title),1)])),_:1}),i(v,{class:"u-btn-picker u-btn-picker--primary",style:r({color:T.moving?A.cancelColor:A.confirmColor}),"hover-class":"u-opacity","hover-stay-time":150,onClick:b[1]||(b[1]=n((e=>D.getResult("confirm")),["stop"]))},{default:a((()=>[h(m(A.confirmText),1)])),_:1},8,["style"])])),_:1}),i(v,{class:"u-picker-body"},{default:a((()=>[T.valueArr.length?(t(),s(S,{key:0,value:T.valueArr,onChange:D.change,class:"u-picker-view",onPickstart:D.pickstart,onPickend:D.pickend},{default:a((()=>[!T.reset&&A.params.year?(t(),s(V,{key:0},{default:a((()=>[(t(!0),u(o,null,l(T.years,((e,i)=>(t(),s(v,{class:"u-column-item",key:i},{default:a((()=>[h(m(e)+" ",1),A.showTimeTag?(t(),s(_,{key:0,class:"u-text"},{default:a((()=>[h("年")])),_:1})):y("",!0)])),_:2},1024)))),128))])),_:1})):y("",!0),!T.reset&&A.params.month?(t(),s(V,{key:1},{default:a((()=>[(t(!0),u(o,null,l(T.months,((e,i)=>(t(),s(v,{class:"u-column-item",key:i},{default:a((()=>[h(m(D.formatNumber(e))+" ",1),A.showTimeTag?(t(),s(_,{key:0,class:"u-text"},{default:a((()=>[h("月")])),_:1})):y("",!0)])),_:2},1024)))),128))])),_:1})):y("",!0),!T.reset&&A.params.day?(t(),s(V,{key:2},{default:a((()=>[(t(!0),u(o,null,l(T.days,((e,i)=>(t(),s(v,{class:"u-column-item",key:i},{default:a((()=>[h(m(D.formatNumber(e))+" ",1),A.showTimeTag?(t(),s(_,{key:0,class:"u-text"},{default:a((()=>[h("日")])),_:1})):y("",!0)])),_:2},1024)))),128))])),_:1})):y("",!0),!T.reset&&A.params.hour?(t(),s(V,{key:3},{default:a((()=>[(t(!0),u(o,null,l(T.hours,((e,i)=>(t(),s(v,{class:"u-column-item",key:i},{default:a((()=>[h(m(D.formatNumber(e))+" ",1),A.showTimeTag?(t(),s(_,{key:0,class:"u-text"},{default:a((()=>[h("时")])),_:1})):y("",!0)])),_:2},1024)))),128))])),_:1})):y("",!0),!T.reset&&A.params.minute?(t(),s(V,{key:4},{default:a((()=>[(t(!0),u(o,null,l(T.minutes,((e,i)=>(t(),s(v,{class:"u-column-item",key:i},{default:a((()=>[h(m(D.formatNumber(e))+" ",1),A.showTimeTag?(t(),s(_,{key:0,class:"u-text"},{default:a((()=>[h("分")])),_:1})):y("",!0)])),_:2},1024)))),128))])),_:1})):y("",!0),!T.reset&&A.params.second?(t(),s(V,{key:5},{default:a((()=>[(t(!0),u(o,null,l(T.seconds,((e,i)=>(t(),s(v,{class:"u-column-item",key:i},{default:a((()=>[h(m(D.formatNumber(e))+" ",1),A.showTimeTag?(t(),s(_,{key:0,class:"u-text"},{default:a((()=>[h("秒")])),_:1})):y("",!0)])),_:2},1024)))),128))])),_:1})):y("",!0)])),_:1},8,["value","onChange","onPickstart","onPickend"])):y("",!0)])),_:1})])),_:1})])),_:1},8,["maskCloseAble","modelValue","safeAreaInsetBottom","onClose","z-index"])])),_:1})}],["__scopeId","data-v-0300f936"]])},props:{scene:{type:String,default:"form"},inputType:{type:String,default:"select"},modelValue:{type:[String,Number],default:""},placeholder:{type:String,default:"请选择"},disabled:{type:Boolean,default:!1},type:{type:String,default:"date"},startTime:{type:[String,Number],default:0},selectType:{type:String,default:""},endTime:{type:[String,Number],default:0},format:{type:String,default:"yyyy-MM-dd HH:mm:ss"}},data:()=>({startDate:"",endDate:"",params:{year:!0,month:!0,day:!0,hour:!0,minute:!0,second:!0,timestamp:!0},defaultTime:"",selectShow:!1,innerValue:"",startTimestamp:-25140,endTimestamp:7289625599e3,formatObj:{yyyy:"yyyy","yyyy-MM":"yyyy-mm","yyyy-MM-dd":"yyyy-mm-dd","yyyy-MM-dd HH:mm":"yyyy-mm-dd hh:MM","yyyy-MM-dd HH:mm:ss":"yyyy-mm-dd hh:MM:ss","HH:mm:ss":"hh:MM:ss","HH:mm":"hh:MM",YYYY:"yyyy","YYYY-MM":"yyyy-mm","YYYY-MM-DD":"yyyy-mm-dd","YYYY-MM-DD HH:mm":"yyyy-mm-dd hh:MM","YYYY-MM-DD HH:mm:ss":"yyyy-mm-dd hh:MM:ss"}}),watch:{modelValue(e){this.setDefault()},startTime(e){this.setMode()},endTime(e){this.setMode()}},created(){this.setMode(),this.setDefault()},methods:{setMode(){let e=this.formatObj[this.format]||"yyyy-mm-dd hh:MM:ss",t=e.trim().split(" ");if("time"===this.type){let e=t[0].split(":")||[];this.params={...this.params,year:!1,month:!1,day:!1,hour:e.includes("hh"),minute:e.includes("MM"),second:e.includes("ss")},this.startDate=this.startTime?this.getYearDate()+" "+this.startTime:this.getYearDate()+" 00:00:00",this.endDate=this.endTime?this.getYearDate()+" "+this.endTime:this.getYearDate()+" 23:59:59"}else{let s=t[0]?t[0].split("-"):[],a=t[1]?t[1].split(":"):[];this.params={...this.params,year:s.includes("yyyy"),month:s.includes("mm"),day:s.includes("dd"),hour:a.includes("hh"),minute:a.includes("MM"),second:a.includes("ss")},this.startDate=this.startTime?this.$u.timeFormat(this.startTime,e):"970-1-1 00:00:00",this.endDate=this.endTime?this.$u.timeFormat(this.endTime,e):"2500-12-31 23:59:59"}},getYearDate(){let e=new Date;return e.getFullYear()+"-"+(e.getMonth()+1)+"-"+e.getDate()},setDefault(){if(!this.modelValue)return this.innerValue="";if("time"===this.type){let e=this.modelValue.split(":"),t=this.formatObj[this.format].split(":");this.innerValue=this.modelValue,e.length!=t.length&&(this.innerValue=e[0]+":"+e[1]),this.defaultTime=this.getYearDate()+" "+this.modelValue}else{const e="yyyy-mm-dd hh:MM:ss";this.innerValue=this.$u.timeFormat(this.modelValue,this.formatObj[this.format]),this.defaultTime=this.$u.timeFormat(this.modelValue,e)}},openSelect(){if(g(),!this.disabled)return new Date(this.startDate).getTime()>new Date(this.endDate).getTime()?this.$u.toast("开始时间不能大于结束时间"):void(this.selectShow=!0)},handleConfirm(e){this.format,this.innerValue="",this.params.year&&(this.innerValue+=e.year),this.params.month&&(this.innerValue+="-"+e.month),this.params.day&&(this.innerValue+="-"+e.day),this.params.hour&&(this.innerValue+=("time"===this.type?"":" ")+e.hour),this.params.minute&&(this.innerValue+=":"+e.minute),this.params.second&&(this.innerValue+=":"+e.second);const t="time"===this.type?this.innerValue:e.timestamp;this.modelValue!==t&&(this.$emit("update:modelValue",t),this.$emit("change",t,this.selectType))},handleClose(){this.selectShow=!1}}},[["render",function(r,h,m,n,u,o){const l=N(e("u-input"),A),p=b("Select"),c=d;return t(),s(c,{class:"jnpf-date-time"},{default:a((()=>[i(l,{"input-align":"right",type:"select","select-open":u.selectShow,modelValue:u.innerValue,"onUpdate:modelValue":h[0]||(h[0]=e=>u.innerValue=e),placeholder:m.placeholder,onClick:o.openSelect},null,8,["select-open","modelValue","placeholder","onClick"]),u.selectShow?(t(),s(p,{key:0,modelValue:u.selectShow,"onUpdate:modelValue":h[1]||(h[1]=e=>u.selectShow=e),mode:"time",defaultTime:u.defaultTime,params:u.params,startDate:u.startDate,endDate:u.endDate,format:m.format,onClose:o.handleClose,onConfirm:o.handleConfirm},null,8,["modelValue","defaultTime","params","startDate","endDate","format","onClose","onConfirm"])):y("",!0)])),_:1})}],["__scopeId","data-v-50e8577c"]]);export{T as _};