2 lines
2.0 KiB
JavaScript
2 lines
2.0 KiB
JavaScript
import{bD as c,ay as d}from"./bootstrap-CRjSNGHY.js";import{b9 as f,w as Y,ad as o,b2 as n,ae as v,ai as b,j as i,u as r,I as k,bb as y,bp as S,bJ as g,ab as x}from"../jse/index-index-CMeVxoEG.js";const C={class:"mb-2.5"},B={__name:"DurationConfig",props:{value:{type:String,default:""}},emits:["change"],setup(D,{emit:M}){const $=D,H=M,h=[{key:"Y",label:"年",presets:[1,2,3,4]},{key:"M",label:"月",presets:[1,2,3,4]},{key:"D",label:"天",presets:[1,2,3,4]},{key:"H",label:"时",presets:[4,8,12,24]},{key:"m",label:"分",presets:[5,10,30,50]},{key:"S",label:"秒",presets:[5,10,30,50]}],e=f({Y:"",M:"",D:"",H:"",m:"",S:""}),u=f("");function p(a,l){if(!l||Number.isNaN(l)){e.value[a]="";return}e.value[a]=l,m()}function m(){let a="P";e.value.Y&&(a+=`${e.value.Y}Y`),e.value.M&&(a+=`${e.value.M}M`),e.value.D&&(a+=`${e.value.D}D`),(e.value.H||e.value.m||e.value.S)&&(a+="T"),e.value.H&&(a+=`${e.value.H}H`),e.value.m&&(a+=`${e.value.m}M`),e.value.S&&(a+=`${e.value.S}S`),u.value=a==="P"?"":a,H("change",u.value)}return Y(()=>$.value,a=>{if(!a)return;const l=a.match(/^P(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)S)?)?$/);l&&(e.value.Y=l[1]||"",e.value.M=l[2]||"",e.value.D=l[3]||"",e.value.H=l[4]||"",e.value.m=l[5]||"",e.value.S=l[6]||"",m())},{immediate:!0}),(a,l)=>(n(),o("div",null,[v("div",C,[l[1]||(l[1]=b(" 当前选择:",-1)),i(r(c),{value:u.value,"onUpdate:value":l[0]||(l[0]=t=>u.value=t),readonly:"",class:"w-[300px]"},null,8,["value"])]),(n(),o(k,null,y(h,t=>v("div",{key:t.key,class:"mb-2"},[v("span",null,S(t.label)+":",1),i(r(d).Group,null,{default:g(()=>[(n(!0),o(k,null,y(t.presets,s=>(n(),x(r(d),{key:s,size:"small",onClick:N=>p(t.key,s)},{default:g(()=>[b(S(s),1)]),_:2},1032,["onClick"]))),128)),i(r(c),{value:e.value[t.key],"onUpdate:value":s=>e.value[t.key]=s,size:"small",class:"ml-2 w-[60px]",placeholder:"自定义",onChange:s=>p(t.key,e.value[t.key])},null,8,["value","onUpdate:value","onChange"])]),_:2},1024)])),64))]))}};export{B as default};
|