el-plus-powerful-table
Version:
## [DOCS](https://peng-xiao-shuai.github.io/vite-vue-admin-docs/zh-CN/component_directive/component/powerful-table-doc.html)
2 lines (1 loc) • 6.08 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("element-plus/es"),S=require("../../index.js"),T=require("../../keys.js"),y=require("../../locale/lang.js"),d=require("vue"),h=require("../../locale/packages.js");var m=(e=>(e.BtnPlusChange="btn-plus-change",e.BtnPlusRefresh="btn-plus-refresh",e.BtnClick="btn-click",e.SizeChange="size-change",e.ComponentEvent="component-event",e.SortCustom="sort-custom",e.BatchOperate="batch-operate",e.Select="select",e.SelectionChange="selection-change",e.SelectAll="select-all",e.CellMouseEnter="cell-mouse-enter",e.CellMouseLeave="cell-mouse-leave",e.CellClick="cell-click",e.CellDblclick="cell-dblclick",e.CellContextmenu="cell-contextmenu",e.RowClick="row-click",e.RowContextmenu="row-contextmenu",e.RowDblclick="row-dblclick",e.HeaderClick="header-click",e.HeaderContextmenu="header-contextmenu",e.FilterChange="filter-change",e.CurrentChange="current-change",e.HeaderDragend="header-dragend",e.ExpandChange="expand-change",e))(m||{});const M={btnConfig:{type:Object,default:void 0},size:{type:String,default:"",validator:e=>["","default","small","large"].includes(e)},list:{type:Array,default:()=>[]},selectData:{type:Array,default:()=>[]},isSelect:{type:Boolean,default:!1},selectable:{type:Function,default:void 0},selectCompare:{type:Array,default:()=>["id","id"]},header:{type:Array,default:()=>[]},paginationProperty:{type:Object,default:()=>({})},operateData:{type:Object,default:()=>[{}]},isPagination:{type:Boolean,default:!0},tree:{type:Object,default:()=>({props:{children:"children",hasChildren:"hasChildren"}})},property:{type:Object,default:()=>({})},listRequest:{type:Object,default:void 0}},j={row:{type:Object,default:()=>[{}]},index:{type:Number},aligning:{type:String,default:"center"}},N=(e,t)=>S.isTypeProtect(t,c=>typeof c!="function")?t:t(e||{row:{},index:void 0,props:{}}),F=(e,t)=>S.isTypeProtect(t,c=>typeof c!="function")?t:t(e||{row:{},index:void 0,props:{}}),H=(e,t,c)=>({REmit:(a,...i)=>{e("component-emit",{componentName:t,eventType:a,...c},...i)},event:(a,...i)=>{var o,u;const r=N({row:c.row,index:c.index,props:c.props},c.props.data);typeof(r==null?void 0:r.on)=="object"&&((u=(o=r==null?void 0:r.on)==null?void 0:o[a])==null||u.call(o,{...c},...i))}}),$=e=>{var i,r,o,u,n,s;const t=d.inject(T.PowerfulTableSymbol,{}),c=d.ref(null),f=d.ref(null),p=d.reactive({listLoading:!0,develop:[],currentPage:1,pageSize:(i=e.paginationProperty)!=null&&i.pageSizes?(r=e.paginationProperty)==null?void 0:r.pageSizes[0]:10,currentSelect:[],otherSelect:[],watchCache:[],operate:{value:void 0,disabled:!1,icon:"",prop:"id",style:void 0,operates:[]},total:((o=e.paginationProperty)==null?void 0:o.total)||0}),a=d.reactive({tableLists:[],isPC:!0,isTable:!0});return typeof((u=e.listRequest)==null?void 0:u.listApi)!="function"&&p.watchCache.push(d.watch(()=>e.list,l=>{a.tableLists=l||[]},{immediate:!0,deep:!0})),d.onBeforeUnmount(()=>{p.watchCache.forEach(l=>l())}),{Size:e.size||((s=(n=C.useGlobalConfig())==null?void 0:n.value)==null?void 0:s.size)||"default",multipleTable:c,filterComponents:f,powerfulTableData:p,injectProps:t,stateData:a}},G=(e,t)=>{const{proxy:c}=d.getCurrentInstance();return{handleSelectionChange:n=>{t.currentSelect=S.deepClone(n),e("selection-change",n)},returnEmit:(n,s)=>{switch(n){case"btn-click":e("btn-click",s);break}},componentEmit:(n,...s)=>{e("component-event",n,...s)},sortChange:n=>{Object.keys(n.column||{}).length&&n.column.sortable=="custom"&&e("sort-custom",n)},batchOperate:()=>{if((t.operate==null||t.operate==null)&&t.operate!==0){C.ElMessage.warning(y.t(h.LangKey.SelectOperateType));return}if(t.currentSelect.length==0){C.ElMessage.warning(y.t(h.LangKey.SelectOperateData));return}const n=t.operate.operates.find(s=>s.value==t.operate.value);C.ElMessageBox.confirm(y.t(h.LangKey.BatchOperate)(n.label),y.t(h.LangKey.Hint),{confirmButtonText:y.t(h.LangKey.Confirm),cancelButtonText:y.t(h.LangKey.Cancel),type:"warning"}).then(()=>{const s=t.otherSelect.concat(t.currentSelect).map(g=>g[t.operate.prop||"id"]),l=t.otherSelect.concat(t.currentSelect).map(g=>g);e("batch-operate",{ids:s,item:n,rows:l})}).catch(()=>{})},get:()=>{const n={pageNum:t.currentPage,pageSize:t.pageSize};try{c.$parent._getList({params:n,select:t.otherSelect.concat(t.currentSelect)})}catch{e("size-change",{params:n,select:t.otherSelect.concat(t.currentSelect)})}},matchComponents:n=>({image:"PTImage",btn:"PTButton",switch:"PTSwitch",input:"PTInput",textarea:"PTInput",iconfont:"PTIcon",tag:"PTTags",rate:"PTRate",href:"PTLink",video:"PTVideo"})[n],bindAttr(n,s,l){var g;return{row:s.row,index:s.$index,prop:n,aligning:((g=l.property)==null?void 0:g.align)||l.headerAlign||"center"}}}},Q=(e,t,c,f)=>{var r;const p=(o,u)=>{const n=u.split(".");let s=o;return n.forEach(l=>{s=s[l]}),s};let a,i;return typeof((r=t.listRequest)==null?void 0:r.listApi)=="function"?(i=(o={})=>{var P,v,R,b,q,K,x,k,L,z,O,w,B;const[u,n,s,l,g]=[((P=t.listRequest)==null?void 0:P.pageNoKey)||((v=c.listRequest)==null?void 0:v.pageNoKey)||"pageNo",((R=t.listRequest)==null?void 0:R.pageSizeKey)||((b=c.listRequest)==null?void 0:b.pageSizeKey)||"pageSize",typeof((q=t.listRequest)==null?void 0:q.responseKey)>"u"?typeof((K=c.listRequest)==null?void 0:K.responseKey)>"u"?"data.result":(x=c.listRequest)==null?void 0:x.responseKey:(k=t.listRequest)==null?void 0:k.responseKey,((L=t.listRequest)==null?void 0:L.totalKey)||((z=c.listRequest)==null?void 0:z.totalKey)||"total",((O=t.listRequest)==null?void 0:O.listsKey)||((w=c.listRequest)==null?void 0:w.listsKey)||"rows"];(B=t.listRequest)==null||B.listApi({...t.listRequest.listQuery||{},...o,[u]:e.currentPage,[n]:e.pageSize}).then(A=>{const I=s?p(A,s):A;f.tableLists=I[g],e.total=Number(I[l])})},a=(o={})=>{e.currentPage=1,i(o)},i(),{resetList:a,getListData:i}):{resetList:void 0,getListData:void 0}};exports.EmitEnum=m;exports.isData=N;exports.isProperty=F;exports.powerfulTableComponentProp=j;exports.powerfulTableProps=M;exports.useFunction=G;exports.useInitiateListRequest=Q;exports.usePowerfulTableStates=$;exports.useREmit=H;