UNPKG

vue-ace-admin-ui

Version:

Production-ready Vue 3 component library for admin systems. Enhanced Ant Design Vue components with TypeScript support, auto-loading, smart forms, and advanced tables. Works seamlessly with vue-ace-admin

2 lines (1 loc) 6.11 kB
(function(s,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("ant-design-vue")):typeof define=="function"&&define.amd?define(["exports","vue","ant-design-vue"],e):(s=typeof globalThis<"u"?globalThis:s||self,e(s.AceAdminUi={},s.Vue,s.AntDesignVue))})(this,(function(s,e,B){"use strict";const T=t=>!!(t&&t.constructor&&t.call&&t.apply),N=t=>!(!t||!t.then||!T(t.then)),b=e.defineComponent({inheritAttrs:!1,__name:"ProButton",props:{autoLoading:{type:Boolean,default:!1},enableConfirm:{type:Boolean,default:!1},popConfig:{default:()=>({title:"提示",description:"确定删除吗?",okText:"确定",cancelText:"取消"})},onClick:{}},setup(t){const n=t,a=e.useAttrs(),o=e.useSlots(),m=Object.keys(o),f=e.computed(()=>({...a,loading:a.loading||u.value})),u=e.ref(!1),p=async r=>{var d;n.autoLoading&&(u.value=!0);const i=(d=n.onClick)==null?void 0:d.call(n,r);n.autoLoading&&(N(i)?await g(i):c())},c=()=>{u.value=!1},g=async r=>{try{await r.finally(()=>{c()})}catch(i){c(),console.error(i)}};return(r,i)=>{const d=e.resolveComponent("a-button"),C=e.resolveComponent("a-popconfirm");return r.enableConfirm?(e.openBlock(),e.createBlock(C,e.normalizeProps(e.mergeProps({key:0},r.popConfig)),{default:e.withCtx(()=>[e.createVNode(d,e.mergeProps(f.value,{onClick:p}),e.createSlots({_:2},[e.renderList(e.unref(m),(_,l)=>({name:_,fn:e.withCtx(w=>[e.renderSlot(r.$slots,_,e.normalizeProps(e.guardReactiveProps(w||{})))])}))]),1040)]),_:3},16)):(e.openBlock(),e.createBlock(d,e.mergeProps({key:1},f.value,{onClick:p}),e.createSlots({_:2},[e.renderList(e.unref(m),(_,l)=>({name:_,fn:e.withCtx(w=>[e.renderSlot(r.$slots,_,e.normalizeProps(e.guardReactiveProps(w||{})))])}))]),1040))}}}),A={class:"table-toolbar"},E=e.defineComponent({inheritAttrs:!1,__name:"ProTable",props:{isZebra:{default:"none"},useCardWrapper:{type:Boolean,default:!0}},setup(t){const n=t,a=e.useAttrs(),o=e.useSlots(),m=Object.keys(o),f=e.computed(()=>({...a})),u=()=>n.useCardWrapper?"a-card":"div",p=(c,g)=>{const r=g%2===0;return n.isZebra==="even"&&r||n.isZebra==="odd"&&!r?"table-striped":void 0};return(c,g)=>{const r=e.resolveComponent("a-table"),i=e.resolveComponent("a-flex");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(u()),null,{default:e.withCtx(()=>[e.createVNode(i,{gap:"small",vertical:""},{default:e.withCtx(()=>[e.createElementVNode("div",A,[e.renderSlot(c.$slots,"toolbar",{},void 0,!0)]),e.createVNode(r,e.mergeProps({class:"ant-table-striped"},f.value,{"row-class-name":p}),e.createSlots({_:2},[e.renderList(e.unref(m),(d,C)=>({name:d,fn:e.withCtx(_=>[e.renderSlot(c.$slots,d,e.normalizeProps(e.guardReactiveProps(_)),void 0,!0)])}))]),1040)]),_:3})]),_:3})}}}),k=(t,n)=>{const a=t.__vccOpts||t;for(const[o,m]of n)a[o]=m;return a},y=k(E,[["__scopeId","data-v-ba73e7ac"]]),x={class:"search-container"},S=k(e.defineComponent({__name:"ProSearchForm",props:e.mergeModels({fields:{default:()=>[]},defaultValues:{},modelValue:{}},{modelValue:{default:()=>({})},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue","submit","reset"],["update:modelValue"]),setup(t,{emit:n}){const a=t,o=e.useModel(t,"modelValue"),m=n,f=()=>{m("submit",o.value)},u=()=>{for(const p in o.value)o.value[p]="";m("reset")};return(p,c)=>{const g=e.resolveComponent("a-form-item"),r=e.resolveComponent("a-col"),i=e.resolveComponent("a-row"),d=e.resolveComponent("a-button"),C=e.resolveComponent("a-space"),_=e.resolveComponent("a-form");return e.openBlock(),e.createElementBlock("div",x,[e.createVNode(_,{model:o.value,onSubmit:e.withModifiers(f,["prevent"])},{default:e.withCtx(()=>[e.createVNode(i,{gutter:16},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.fields,l=>(e.openBlock(),e.createBlock(r,{key:l.name,span:8},{default:e.withCtx(()=>[e.createVNode(g,{label:l.label},{default:e.withCtx(()=>[e.renderSlot(p.$slots,l.name,{value:o.value[l.name],field:l},()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.component||"a-input"),e.mergeProps({value:o.value[l.name],"onUpdate:value":w=>o.value[l.name]=w},{ref_for:!0},l.props),null,16,["value","onUpdate:value"]))],!0)]),_:2},1032,["label"])]),_:2},1024))),128))]),_:3}),e.createVNode(i,null,{default:e.withCtx(()=>[e.createVNode(r,{span:24,style:{"text-align":"right"}},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"actions",{formState:o.value,handleSubmit:f,handleReset:u},()=>[e.createVNode(C,null,{default:e.withCtx(()=>[e.createVNode(d,{type:"primary",onClick:f},{default:e.withCtx(()=>[...c[0]||(c[0]=[e.createTextVNode(" 搜索 ",-1)])]),_:1}),e.createVNode(d,{onClick:u},{default:e.withCtx(()=>[...c[1]||(c[1]=[e.createTextVNode(" 重置 ",-1)])]),_:1})]),_:1})],!0)]),_:3})]),_:3})]),_:3},8,["model"])])}}}),[["__scopeId","data-v-9c6c9e6f"]]);async function h(t,n="success"){await B.message[n](t)}const P=t=>h(t,"success"),D=t=>h(t,"warning"),V=t=>h(t,"error"),M=t=>h(t,"info");function F(t){const{listRequestFn:n,filterOption:a,options:o}=t,m=e.ref(!1),f=e.ref(1),u=e.ref(0),p=e.ref(10),c=e.ref([]),g=async(i=f.value)=>{var C,_;const d={pageSize:p.value,pageNum:i,...a==null?void 0:a.value};m.value=!0;try{const l=await(e.isRef(n)?n.value(d):n(d));c.value=l.data||[],u.value=l.total||0,(C=o==null?void 0:o.message)!=null&&C.GET_DATA_IF_SUCCEED&&await P(o.message.GET_DATA_IF_SUCCEED),o!=null&&o.requestSuccess&&o.requestSuccess()}catch(l){console.error("loadData",l),(_=o==null?void 0:o.message)!=null&&_.GET_DATA_IF_FAILED&&await V(o.message.GET_DATA_IF_FAILED),o!=null&&o.requestError&&o.requestError()}finally{m.value=!1}};return e.watch([f,p],async()=>{await g(f.value)}),{dataSource:c,loading:m,reset:async()=>{a!=null&&a.value&&(Object.keys(a.value).forEach(i=>{a.value[i]=void 0}),await g())},curPage:f,pageSize:p,total:u,loadData:g}}const L={install(t){t.component("ProButton",b),t.component("ProTable",y),t.component("ProSearchForm",S)}};s.ProButton=b,s.ProSearchForm=S,s.ProTable=y,s.default=L,s.errorMessage=V,s.infoMessage=M,s.message=P,s.showMessage=h,s.useList=F,s.warningMessage=D,Object.defineProperties(s,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));