UNPKG

vexip-ui

Version:

A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good

3 lines (2 loc) 2.11 kB
"use strict";const e=require("vue");require("../button/index.cjs");const t=require("@vexip-ui/config"),d=require("@vexip-ui/utils"),p=require("./props.cjs"),g=require("./symbol.cjs"),m=require("../button/button.cjs"),b=e.defineComponent({name:"FormReset",__name:"form-reset",props:p.formResetProps,setup(s){const i=s,n=t.useProps("formReset",i,{size:null,locale:null,type:"default",label:null,dashed:null,text:null,simple:null,ghost:null,disabled:null,loading:null,circle:null,loadingIcon:t.createIconProp(),loadingEffect:null,icon:t.createIconProp(),color:null,buttonType:null,block:null,onBeforeReset:{default:null,isFunc:!0}}),r=e.useSlots(),l=e.inject(g.FORM_ACTIONS,null),u=t.useNameHelper("form"),c=t.useLocale("form",e.toRef(n,"locale")),a=e.computed(()=>!!l||n.inherit);async function f(){if(n.disabled)return;let o=!0;typeof n.onBeforeReset=="function"&&(o=n.onBeforeReset(),d.isPromise(o)&&(o=await o)),o!==!1&&(l==null||l.reset(),t.emitEvent(n.onReset))}return(o,h)=>(e.openBlock(),e.createBlock(e.unref(m),e.mergeProps(o.$attrs,{inherit:a.value,class:e.unref(u).be("reset"),size:e.unref(n).size,type:e.unref(n).type,simple:e.unref(n).simple,ghost:e.unref(n).ghost,dashed:e.unref(n).dashed,text:e.unref(n).text,disabled:e.unref(n).disabled,loading:e.unref(n).loading,circle:e.unref(n).circle,"loading-icon":e.unref(n).loadingIcon,"loading-effect":e.unref(n).loadingEffect,icon:e.unref(n).icon,color:e.unref(n).color,"button-type":e.unref(n).buttonType,block:e.unref(n).block,tag:e.unref(n).tag,onClick:f}),e.createSlots({default:e.withCtx(()=>[e.renderSlot(o.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(n).label||e.unref(c).reset),1)])]),_:2},[r.icon?{name:"icon",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"icon")]),key:"0"}:void 0,r.loading?{name:"loading",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"loading")]),key:"1"}:void 0]),1040,["inherit","class","size","type","simple","ghost","dashed","text","disabled","loading","circle","loading-icon","loading-effect","icon","color","button-type","block","tag"]))}});module.exports=b; //# sourceMappingURL=form-reset.vue2.cjs.map