dm-vue3-ui
Version:
This Components Library will help get you started developing in Vue 3.
2 lines (1 loc) • 4.58 kB
JavaScript
;const e=require("ant-design-vue/es"),t=require("vue"),a=require("ant-design-vue"),l=require("./utils/index.js"),r=require("./panel/real/index.vue"),i=require("./panel/preset/index.vue"),o=require("./panel/relative/index.vue"),u=require("./panel/absolute/index.vue"),n=require("../i18n/index"),s=require("@ant-design/icons-vue"),d=require("../utils/theme"),c=require("../utils/index"),v=require("@vueuse/core"),p={class:"dm-date-picker"},m={key:0},f={key:1},k=["title","disabled"],y=t.defineComponent({name:"dm-date-picker",__name:"index",props:{placement:{default:"bottom"},disabled:{type:Boolean,default:!1},value:{default:()=>["",""]},items:{default:()=>["preset","real","relative","absolute"]},presetValues:{default:()=>[]},relativeStartUnits:{default:()=>[]},relativeEndUnits:{default:()=>[]},disabledRelativeEndUnit:{type:Boolean,default:!1},relativeStartMaxValue:{default:-1},onlyShowText:{type:Boolean,default:!1},showTooltip:{type:Boolean,default:!1},dateFormat:{default:"YYYY-MM-DD HH:mm:ss"}},emits:["change","update:value"],setup(y,{emit:h}){const B=c.store("platformConfig")||{},b=(null==B?void 0:B.themeColor)||"blue";d.themeManager.initializeTheme(),d.themeManager.applyThemeByType(b);const x=t.ref(!1),g=t.ref(),C=t.ref(),_=t.ref(),V=t.ref(),T=t.ref();let w=t.ref("");const q=y,S=h,E=v.useVModel(q,"value",S),N=t.computed((()=>2===E.value.length?E.value[0].toString():"")),U=t.computed((()=>2===E.value.length?E.value[1].toString():"")),M=t.computed((()=>l.getTimeType(N.value,U.value,q.presetValues))),D=t.computed((()=>l.getLabelText(M.value.type,N.value,U.value,q.presetValues,q.dateFormat))),F=e=>{e.setValue(N.value,U.value)};t.watch((()=>x.value),(()=>{q.disabled&&(x.value=!1),x.value?(w.value=M.value.type,setTimeout((()=>{(()=>{switch(M.value.type){case"preset":F(C.value[0]);break;case"real":F(_.value[0]);break;case"relative":F(V.value[0]);break;case"absolute":F(T.value[0])}})()}),300)):w.value=""}));const P=e=>{E.value=e.date;const t=l.getLabelText(e.type,e.date[0]||"",e.date[1]||"",q.presetValues);S("change",{...e,label:t}),x.value=!1};return(l,d)=>{const c=e.Tooltip,v=e.CollapsePanel,y=e.Collapse,h=e.Card,B=e.Popover;return t.openBlock(),t.createBlock(t.unref(a.ConfigProvider),{prefixCls:"dm-ui"},{default:t.withCtx((()=>[t.createElementVNode("div",p,[l.onlyShowText?(t.openBlock(),t.createElementBlock("div",m,[l.showTooltip?(t.openBlock(),t.createBlock(c,{key:0,title:D.value,placement:"top"},{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(D.value),1)])),_:1},8,["title"])):(t.openBlock(),t.createElementBlock("span",f,t.toDisplayString(D.value),1))])):(t.openBlock(),t.createBlock(B,{key:1,visible:x.value,"onUpdate:visible":d[1]||(d[1]=e=>x.value=e),trigger:"click",placement:l.placement,overlayClassName:"dm-date-picker-popover"},{content:t.withCtx((()=>[t.createVNode(h,{ref_key:"timeCard",ref:g,class:"dm-date-picker__card",bordered:!1},{default:t.withCtx((()=>[t.createVNode(y,{activeKey:t.unref(w),"onUpdate:activeKey":d[0]||(d[0]=e=>t.isRef(w)?w.value=e:w=e),accordion:"","expand-icon-position":"right"},{default:t.withCtx((()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(q.items,(e=>(t.openBlock(),t.createBlock(v,{header:t.unref(n.$t)(`datePicker.${e}.title`),key:e},{default:t.withCtx((()=>["preset"==e?(t.openBlock(),t.createBlock(i,{key:0,onChange:P,"custom-preset-values":l.presetValues,ref_for:!0,ref_key:"preset",ref:C},null,8,["custom-preset-values"])):"real"==e?(t.openBlock(),t.createBlock(r,{key:1,ref_for:!0,ref_key:"real",ref:_,onChange:P},null,512)):"relative"==e?(t.openBlock(),t.createBlock(o,{key:2,onChange:P,"custom-relative-start-units":l.relativeStartUnits,"custom-relative-end-units":l.relativeEndUnits,"disabled-relative-end-unit":l.disabledRelativeEndUnit,"relative-start-max-value":l.relativeStartMaxValue,ref_for:!0,ref_key:"relative",ref:V},null,8,["custom-relative-start-units","custom-relative-end-units","disabled-relative-end-unit","relative-start-max-value"])):"absolute"==e?(t.openBlock(),t.createBlock(u,{key:3,dateFormatBack:q.dateFormat,onChange:P,ref_for:!0,ref_key:"absolute",ref:T},null,8,["dateFormatBack"])):t.createCommentVNode("",!0)])),_:2},1032,["header"])))),128))])),_:1},8,["activeKey"])])),_:1},512)])),default:t.withCtx((()=>[t.createElementVNode("div",{class:t.normalizeClass({"time-content":!0,"disabled-style":l.disabled}),title:D.value,disabled:l.disabled},[t.createTextVNode(t.toDisplayString(D.value)+" ",1),t.createVNode(t.unref(s.DownOutlined))],10,k)])),_:1},8,["visible","placement"]))])])),_:1})}}});module.exports=y;