dm-vue3-ui
Version:
This Components Library will help get you started developing in Vue 3.
2 lines (1 loc) • 2.19 kB
JavaScript
;const e=require("ant-design-vue/es"),t=require("vue"),o=require("@ant-design/icons-vue"),l=require("@vueuse/core"),r=require("../i18n/index"),n={class:"dm-drawer__container"},i=t.defineComponent({name:"dm-drawer",__name:"index",props:{modelValue:{type:Boolean},title:{},footer:{type:Boolean,default:()=>!0},okText:{default:""},cancelText:{default:""},spinning:{type:Boolean,default:!1},prefixCls:{default:"dm-ui"},okButtonProps:{default:()=>({})},cancelButtonProps:{default:()=>({})}},emits:["update:modelValue","confirm","cancel"],setup(i,{emit:a}){const s=i,d=a,c=t.useSlots(),u=l.useVModel(s,"modelValue",d),f=t.computed((()=>c.footer||s.footer)),p=()=>{d("confirm")},x=e=>{u.value=!1,d("cancel",e)};return(l,i)=>{const a=e.Button,d=e.Drawer;return t.openBlock(),t.createBlock(d,t.mergeProps({maskClosable:!f.value,visible:t.unref(u),"onUpdate:visible":i[0]||(i[0]=e=>t.isRef(u)?u.value=e:null),class:"dm-drawer",destroyOnClose:"",closable:!f.value,prefixCls:`${s.prefixCls}-drawer`},l.$attrs),t.createSlots({closeIcon:t.withCtx((()=>[t.createVNode(t.unref(o.CloseCircleFilled),{style:{fontSize:"24px",color:"#939ABD"}})])),default:t.withCtx((()=>[t.createElementVNode("div",n,[t.renderSlot(l.$slots,"default")])])),_:2},[l.$slots.title||s.title?{name:"title",fn:t.withCtx((()=>[t.renderSlot(l.$slots,"title",{},(()=>[t.createTextVNode(t.toDisplayString(s.title),1)]))])),key:"0"}:void 0,l.$slots.extra?{name:"extra",fn:t.withCtx((()=>[t.renderSlot(l.$slots,"extra")])),key:"1"}:void 0,f.value?{name:"footer",fn:t.withCtx((()=>[t.renderSlot(l.$slots,"footer",{},(()=>[t.createVNode(a,t.mergeProps(s.okButtonProps,{loading:s.spinning,type:"primary",prefixCls:`${s.prefixCls}-btn`,onClick:p}),{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(s.okText||t.unref(r.$t)("datePicker.confirm")),1)])),_:1},16,["loading","prefixCls"]),t.createVNode(a,t.mergeProps(s.cancelButtonProps,{prefixCls:`${s.prefixCls}-btn`,onClick:x}),{default:t.withCtx((()=>[t.createTextVNode(t.toDisplayString(s.cancelText||t.unref(r.$t)("cronPicker.cancel")),1)])),_:1},16,["prefixCls"])]))])),key:"2"}:void 0]),1040,["maskClosable","visible","closable","prefixCls"])}}});module.exports=i;