zxt-table 0.5.2 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/zxt-table.css +1 -1
- package/dist/zxt-table.es.js +375 -361
- package/dist/zxt-table.umd.js +1 -1
- package/package.json +1 -1
package/dist/zxt-table.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("element-plus")):typeof define=="function"&&define.amd?define(["exports","vue","element-plus"],e):(_=typeof globalThis<"u"?globalThis:_||self,e(_.ZxtTable={},_.Vue,_.ElementPlus))})(this,(function(_,e,V){"use strict";const P=(t,o)=>{const n=t.__vccOpts||t;for(const[s,i]of o)n[s]=i;return n},fe={name:"MyButton",props:{type:{type:String,default:"default",validator:t=>["default","primary","success","warning","danger"].includes(t)},disabled:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:o}){return{handleClick:s=>{o("click",s)}}}},ge=["disabled"];function ue(t,o,n,s,i,p){return e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["my-button",[`my-button--${n.type}`,{"is-disabled":n.disabled}]]),disabled:n.disabled,onClick:o[0]||(o[0]=(...l)=>s.handleClick&&s.handleClick(...l))},[e.renderSlot(t.$slots,"default",{},void 0,!0)],10,ge)}const A=P(fe,[["render",ue],["__scopeId","data-v-4480e77d"]]);A.install=function(t){t.component(A.name,A)};const M=e.defineComponent({name:"JsxButton",props:{type:{type:String,default:"default",validator:t=>["default","primary","success","warning","danger"].includes(t)},disabled:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:o,slots:n}){const s=i=>{t.disabled||o("click",i)};return()=>e.createVNode("button",{class:["jsx-button",`jsx-button--${t.type}`,{"is-disabled":t.disabled}],disabled:t.disabled,onClick:s},[n.default?.()])}});M.install=function(t){t.component(M.name,M)};const he=e.defineComponent({name:"ZxtPagination",components:{ElPagination:V.ElPagination},props:{modelValue:{type:Number,default:1},pageSize:{type:Number,default:10},pageSizes:{type:Array,default:()=>[10,20,50,100]},total:{type:Number,default:0},layout:{type:String,default:"total, sizes, prev, pager, next, jumper"}},emits:["update:modelValue","update:pageSize","page-change","size-change"],setup(t,{emit:o}){const n=e.ref(t.modelValue),s=e.ref(t.pageSize);return e.watch(()=>t.modelValue,l=>{n.value=l}),e.watch(()=>t.pageSize,l=>{s.value=l}),{currentPage:n,pageSize:s,handleSizeChange:l=>{s.value=l,n.value=1,o("update:pageSize",l),o("size-change",{page:n.value,size:l})},handleCurrentChange:l=>{n.value=l,o("update:modelValue",l),o("page-change",{page:l,size:s.value})}}}});function Ce(t,o,n,s,i,p){const l=e.resolveComponent("el-pagination");return e.openBlock(),e.createBlock(l,{"current-page":t.currentPage,"onUpdate:currentPage":o[0]||(o[0]=m=>t.currentPage=m),"page-size":t.pageSize,"onUpdate:pageSize":o[1]||(o[1]=m=>t.pageSize=m),"page-sizes":t.pageSizes,total:t.total,layout:t.layout,class:"zxt-pagination",onSizeChange:t.handleSizeChange,onCurrentChange:t.handleCurrentChange},null,8,["current-page","page-size","page-sizes","total","layout","onSizeChange","onCurrentChange"])}const N=P(he,[["render",Ce],["__scopeId","data-v-497aa44d"]]),O={default:({cellValue:t})=>t??"",input:({cellValue:t,row:o,column:n,updateRow:s})=>e.h(V.ElInput,{modelValue:t,size:"small",onInput:i=>s({...o,[n.property]:i})}),select:({cellValue:t,row:o,column:n,updateRow:s,options:i=[]})=>e.h(V.ElSelect,{modelValue:t,size:"small",onChange:p=>s({...o,[n.property]:p})},()=>i.map(p=>e.h(V.ElOption,{label:p.label,value:p.value,key:p.value}))),checkbox:({cellValue:t,row:o,column:n,updateRow:s})=>e.h(V.ElCheckbox,{modelValue:!!t,onChange:i=>s({...o,[n.property]:i})}),link:({cellValue:t,href:o,target:n="_blank"})=>e.h(V.ElLink,{href:o,target:n},()=>t)};function we(t,o){if(!t)return null;if(typeof t=="string"){const n=O[t];return n?n(o):(console.warn(`[ZxtTable] 未找到内置渲染器: ${t}`),o.cellValue??"")}if(typeof t=="function")return t(o);if(typeof t=="object"&&!Array.isArray(t)){const{name:n,props:s={},attrs:i={},events:p={},content:l}=t;return typeof n=="string"&&O[n]?O[n]({...o,...s,...i,...p}):typeof n=="object"||typeof n=="function"?e.h(n,{...s,...i,...p},l):(console.warn("[ZxtTable] cellRender 对象缺少有效的 name 字段"),o.cellValue??"")}return o.cellValue??""}function _e(t,o){O[t]&&console.warn(`[ZxtTable] 内置渲染器 ${t} 已被覆盖`),O[t]=o}const ke=e.defineComponent({name:"ZxtTableColumn",components:{ElTableColumn:V.ElTableColumn},props:{column:{type:Object,required:!0},currentPage:{type:Number,default:1},pageSize:{type:Number,default:10}},setup(t){const o=e.inject("updateRow",()=>{}),n=l=>{const{currentPage:m,pageSize:g}=t;return(m-1)*g+l+1},s=e.computed(()=>{const l=t.column;return{...l,prop:l.prop??l.field,label:l.label??l.title}}),i=e.computed(()=>{const{children:l,...m}=s.value;return m});return{normalizedColumn:s,columnProps:i,renderCell:l=>{const m=s.value,g=l.row[m.prop],d=g??m.defaultValue??"";return we(m.cellRender,{row:l.row,column:m,rowIndex:l.$index,cellValue:d,updateRow:u=>o(u,l.$index)})},defaultIndexMethod:n}}});function ye(t,o,n,s,i,p){const l=e.resolveComponent("ZxtTableColumn",!0),m=e.resolveComponent("el-table-column");return t.normalizedColumn.children&&t.normalizedColumn.children.length?(e.openBlock(),e.createBlock(m,e.mergeProps({key:0},t.columnProps,{key:t.normalizedColumn.prop+"-group"}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.normalizedColumn.children,(g,d)=>(e.openBlock(),e.createBlock(l,{key:d,column:g,"current-page":t.currentPage,"page-size":t.pageSize},e.createSlots({_:2},[e.renderList(t.$slots,(u,c)=>({name:c,fn:e.withCtx(C=>[e.renderSlot(t.$slots,c,e.mergeProps({ref_for:!0},C))])}))]),1032,["column","current-page","page-size"]))),128))]),_:3},16)):(e.openBlock(),e.createBlock(m,e.mergeProps({key:1},t.columnProps,{key:t.normalizedColumn.prop,index:t.normalizedColumn.indexMethod||t.defaultIndexMethod}),e.createSlots({_:2},[!["selection","index"].includes(t.normalizedColumn.type)&&(t.normalizedColumn.type!=="expand"||t.normalizedColumn.slot)?{name:"default",fn:e.withCtx(g=>[t.normalizedColumn.slot?e.renderSlot(t.$slots,t.normalizedColumn.slot,{key:0,row:g.row,index:g.$index,column:t.normalizedColumn}):t.normalizedColumn.cellRender?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.renderCell(g)),{key:1})):t.normalizedColumn.formatter?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createTextVNode(e.toDisplayString(t.normalizedColumn.formatter(g.row,t.normalizedColumn,g.row[t.normalizedColumn.prop],g.$index)),1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[e.createTextVNode(e.toDisplayString(g.row[t.normalizedColumn.prop]),1)],64))]),key:"0"}:void 0]),1040,["index"]))}const be=P(ke,[["render",ye]]),ze=e.defineComponent({name:"ZxtTable",inheritAttrs:!1,components:{ZxtPagination:N,ZxtTableColumn:be,ElTable:V.ElTable},props:{id:{type:String,default:""},columns:{type:Array,default:()=>[]},data:{type:Array,default:()=>[]},height:{type:[String,Number],default:""},pageable:{type:Boolean,default:!0},currentPage:{type:Number,default:1},pageSize:{type:Number,default:10},pageSizes:{type:Array,default:()=>[10,20,50,100]},total:{type:Number,default:0},paginationLayout:{type:String,default:"total, sizes, prev, pager, next, jumper"},proxyConfig:{type:Object,default:null}},emits:["page-change","size-change","sort-change","filter-change","loaded","load-error","update:row"],setup(t,{emit:o}){const n=e.ref(null),s=e.ref(t.pageSize),i=e.ref(t.currentPage),p=e.ref(!1),l=e.ref([]),m=e.ref(0),g=e.ref({prop:"",order:""}),d=e.ref({}),u=e.ref({});e.watch(()=>t.currentPage,h=>{i.value=h}),e.watch(()=>t.pageSize,h=>{s.value=h});const c=e.computed(()=>t.height==="full"?{height:"100%"}:{}),C=e.computed(()=>{if(t.height!=="full")return t.height}),r=e.computed(()=>!!t.proxyConfig),w=e.computed(()=>r.value?m.value:t.total>0?t.total:t.data.length),E=e.computed(()=>r.value?l.value:t.data),L=h=>{r.value&&(i.value=h.page,s.value=h.size,x()),o("size-change",h)},B=h=>{r.value&&(i.value=h.page,s.value=h.size,x()),o("page-change",h)},D=({column:h,prop:k,order:$})=>{g.value={prop:k,order:$},r.value&&x(),o("sort-change",{column:h,prop:k,order:$})},ee=h=>{d.value=h||{},r.value&&x(),o("filter-change",d.value)},x=async h=>{if(!r.value)return;const k=t.proxyConfig||{},$=k.ajax?.query;if(typeof $!="function")return;const R=k.props||{},ae=R.pageField||"page";R.sizeField;const re=R.sortField||"sort",le=R.orderField||"order",se=R.filtersField||"filters";h?.formData!==void 0?u.value=h.formData:k._formData&&(u.value=k._formData);const ie=k.params||{},T={[ae]:{currentPage:h?.page??i.value,pageSize:h?.pageSize??s.value},form:u.value,...ie};g.value?.prop&&(T[re]=g.value.prop,T[le]=g.value.order),d.value&&Object.keys(d.value).length&&(T[se]=d.value),p.value=!0;try{const z=await $(T),Z=k.response||{},ce=Z.listField||"list",de=Z.totalField||"total",y=Z.transform;let a=[],f=0;if(typeof y=="function"){const S=y(z);a=S?.list??[],f=S?.total??0}else z&&typeof z=="object"&&(a=z?.[ce]??z?.data??[],f=z?.[de]??z?.total??0);l.value=Array.isArray(a)?a:[],m.value=Number(f)||0,o("loaded",{data:l.value,total:m.value,payload:T})}catch(z){o("load-error",z)}finally{p.value=!1}},q=(h,k)=>{r.value?l.value.splice(k,1,h):o("update:row",{index:k,row:h})};e.provide("updateRow",q),e.onMounted(()=>{r.value&&x()});const te=()=>n.value,oe=()=>n.value?.getSelectionRows?.()||[],ne=h=>x(h);return{tableRef:n,containerStyle:c,tableHeight:C,getTableRef:te,pageSize:s,currentPage:i,loading:p,renderData:E,total:w,pageSizes:e.computed(()=>t.pageSizes),paginationLayout:e.computed(()=>t.paginationLayout),handleSizeChange:L,handlePageChange:B,handleSortChange:D,handleFilterChange:ee,reload:ne,getSelectedRows:oe,updateRow:q}}});function Be(t,o,n,s,i,p){const l=e.resolveComponent("ZxtTableColumn"),m=e.resolveComponent("el-table"),g=e.resolveComponent("ZxtPagination"),d=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["zxt-table-container",{"zxt-table-container--full":t.height==="full"}]),style:e.normalizeStyle(t.containerStyle)},[e.withDirectives((e.openBlock(),e.createBlock(m,e.mergeProps({ref:"tableRef",data:t.renderData,height:t.tableHeight},t.$attrs,{id:t.id,onSortChange:t.handleSortChange,onFilterChange:t.handleFilterChange}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,(u,c)=>(e.openBlock(),e.createBlock(l,{key:c,column:u,"current-page":t.currentPage,"page-size":t.pageSize},e.createSlots({_:2},[e.renderList(t.$slots,(C,r)=>({name:r,fn:e.withCtx(w=>[e.renderSlot(t.$slots,r,e.mergeProps({ref_for:!0},w),void 0,!0)])}))]),1032,["column","current-page","page-size"]))),128))]),_:3},16,["data","height","id","onSortChange","onFilterChange"])),[[d,t.loading]]),t.pageable?(e.openBlock(),e.createBlock(g,{key:0,"model-value":t.currentPage,"page-size":t.pageSize,"onUpdate:pageSize":o[0]||(o[0]=u=>t.pageSize=u),"page-sizes":t.pageSizes,total:t.total,layout:t.paginationLayout,onPageChange:t.handlePageChange,onSizeChange:t.handleSizeChange},null,8,["model-value","page-size","page-sizes","total","layout","onPageChange","onSizeChange"])):e.createCommentVNode("",!0)],6)}const b=P(ze,[["render",Be],["__scopeId","data-v-b85485fd"]]),F=new Map;class Se{add(o,n){return!o||typeof o!="string"?(console.warn("[ZxtTable] 渲染器名称必须是字符串"),this):!n||typeof n!="object"?(console.warn("[ZxtTable] 渲染器配置必须是对象"),this):(F.has(o)&&console.warn(`[ZxtTable] 渲染器 "${o}" 已存在,将被覆盖`),F.set(o,n),this)}get(o){return F.get(o)}delete(o){return F.delete(o)}has(o){return F.has(o)}getAll(){return Array.from(F.keys())}clear(){F.clear()}}const U=new Se;function Ve(t,o,n={}){if(!t||!t.itemRender)return null;const{name:s}=t.itemRender;if(s&&U.has(s)){const i=U.get(s);if(typeof i.renderItemContent=="function"){const p={data:o,field:t.field||t.prop,item:t,formData:o};try{return i.renderItemContent(n,p)}catch(l){return console.error(`[ZxtTable] 渲染器 "${s}" 执行出错:`,l),null}}}return null}b.install=function(t){t.component(b.name,b)},b.registerRenderer=_e,b.renderer=U;/*! Element Plus Icons Vue v2.3.2 */var Ee=e.defineComponent({name:"ArrowDown",__name:"arrow-down",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.59 30.59 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.59 30.59 0 0 0-42.752 0z"})]))}}),me=Ee,xe=e.defineComponent({name:"Check",__name:"check",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"})]))}}),$e=xe,Pe=e.defineComponent({name:"Close",__name:"close",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"})]))}}),Ne=Pe,Fe=e.defineComponent({name:"CopyDocument",__name:"copy-document",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M768 832a128 128 0 0 1-128 128H192A128 128 0 0 1 64 832V384a128 128 0 0 1 128-128v64a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64z"}),e.createElementVNode("path",{fill:"currentColor",d:"M384 128a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64zm0-64h448a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H384a128 128 0 0 1-128-128V192A128 128 0 0 1 384 64"})]))}}),De=Fe,Re=e.defineComponent({name:"Delete",__name:"delete",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),W=Re,Te=e.defineComponent({name:"Document",__name:"document",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m160 448h384v64H320zm0-192h160v64H320zm0 384h384v64H320z"})]))}}),Ae=Te,Me=e.defineComponent({name:"Download",__name:"download",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-253.696 236.288-236.352 45.248 45.248L508.8 704 192 387.2l45.248-45.248L480 584.704V128h64z"})]))}}),G=Me,Le=e.defineComponent({name:"Edit",__name:"edit",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M832 512a32 32 0 1 1 64 0v352a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h352a32 32 0 0 1 0 64H192v640h640z"}),e.createElementVNode("path",{fill:"currentColor",d:"m469.952 554.24 52.8-7.552L847.104 222.4a32 32 0 1 0-45.248-45.248L477.44 501.44l-7.552 52.8zm422.4-422.4a96 96 0 0 1 0 135.808l-331.84 331.84a32 32 0 0 1-18.112 9.088L436.8 623.68a32 32 0 0 1-36.224-36.224l15.104-105.6a32 32 0 0 1 9.024-18.112l331.904-331.84a96 96 0 0 1 135.744 0z"})]))}}),J=Le,Oe=e.defineComponent({name:"Lock",__name:"lock",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96"}),e.createElementVNode("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32m192-160v-64a192 192 0 1 0-384 0v64zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64"})]))}}),Ze=Oe,He=e.defineComponent({name:"Plus",__name:"plus",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),K=He,je=e.defineComponent({name:"Refresh",__name:"refresh",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M771.776 794.88A384 384 0 0 1 128 512h64a320 320 0 0 0 555.712 216.448H654.72a32 32 0 1 1 0-64h149.056a32 32 0 0 1 32 32v148.928a32 32 0 1 1-64 0v-50.56zM276.288 295.616h92.992a32 32 0 0 1 0 64H220.16a32 32 0 0 1-32-32V178.56a32 32 0 0 1 64 0v50.56A384 384 0 0 1 896.128 512h-64a320 320 0 0 0-555.776-216.384z"})]))}}),H=je,Ie=e.defineComponent({name:"Search",__name:"search",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704"})]))}}),j=Ie,qe=e.defineComponent({name:"Setting",__name:"setting",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357 357 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a352 352 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357 357 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294 294 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293 293 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294 294 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288 288 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293 293 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a288 288 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384m0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256"})]))}}),Q=qe,Ue=e.defineComponent({name:"Share",__name:"share",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m679.872 348.8-301.76 188.608a127.8 127.8 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"})]))}}),We=Ue,Ge=e.defineComponent({name:"Unlock",__name:"unlock",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96"}),e.createElementVNode("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32m178.304-295.296A192.064 192.064 0 0 0 320 320v64h352l96 38.4V448H256V320a256 256 0 0 1 493.76-95.104z"})]))}}),Je=Ge,Ke=e.defineComponent({name:"Upload",__name:"upload",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-578.304V704h-64V247.296L237.248 490.048 192 444.8 508.8 128l316.8 316.8-45.312 45.248z"})]))}}),X=Ke,Qe=e.defineComponent({name:"View",__name:"view",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),Y=Qe,Xe=e.defineComponent({name:"Warning",__name:"warning",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768m48-176a48 48 0 1 1-96 0 48 48 0 0 1 96 0m-48-464a32 32 0 0 1 32 32v288a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32"})]))}}),Ye=Xe;const ve=e.defineComponent({name:"ZxtForm",inheritAttrs:!1,props:{formColumns:{type:Array,default:()=>[]},initialFormData:{type:Object,default:()=>({})},rules:{type:Object,default:()=>({})},labelWidth:{type:String,default:"100px"}},emits:["submit","reset"],setup(t,{emit:o,expose:n}){const s=e.ref(null),i=e.reactive({}),p={input:"el-input",select:"el-select",date:"el-date-picker",daterange:"el-date-picker",datetime:"el-date-picker",datetimerange:"el-date-picker",cascader:"el-cascader"},l=r=>p[r]||"el-input",m=r=>{const w=r.type||"input",E=["select","date","daterange","datetime","datetimerange","cascader"].includes(w),L={placeholder:r.placeholder||`请${E?"选择":"输入"}${r.label}`,disabled:r.disabled,style:"width: 100%","popper-class":"zxt-form-popper"};let B={};switch(w){case"date":case"daterange":case"datetime":case"datetimerange":B={type:r.dateType||w,startPlaceholder:r.startPlaceholder||"开始日期",endPlaceholder:r.endPlaceholder||"结束日期",format:r.format,valueFormat:r.valueFormat};break;case"cascader":B={options:r.options,props:r.cascaderProps,clearable:r.clearable!==!1};break;default:B={}}const D={...L,...B};return"clearable"in r&&(D.clearable=r.clearable),r.props&&typeof r.props=="object"&&Object.assign(D,r.props),D},g=e.computed(()=>t.formColumns.map(r=>({...r,colSpan:{xs:r.xs??r.span??24,sm:r.sm??r.span??12,md:r.md??r.span??12,lg:r.lg??r.span??12,xl:r.xl??r.span??12}})));e.watch(()=>t.initialFormData,r=>{Object.keys(i).forEach(w=>{delete i[w]}),Object.assign(i,r)},{immediate:!0,deep:!0});const d=e.computed(()=>{const r={...t.rules};return Object.keys(r).length===0&&t.formColumns.length>0&&t.formColumns.forEach(w=>{if(w.required){const E=["select","date","daterange","datetime","datetimerange","cascader"].includes(w.type);r[w.prop]=[{required:!0,message:`请${E?"选择":"输入"}${w.label}`,trigger:E?"change":"blur"}]}}),r}),u=()=>{s.value&&s.value.validate(r=>{r&&o("submit",{...i})})},c=()=>{s.value&&s.value.resetFields(),o("reset")},C=r=>()=>Ve(r,i,{})||null;return n({validate:()=>s.value?s.value.validate():Promise.resolve(!1),resetFields:()=>s.value&&s.value.resetFields(),getFormData:()=>({...i}),submitForm:u,resetForm:c}),{formRef:s,formData:i,formRules:d,submitForm:u,resetForm:c,processedColumns:g,getComponentType:l,getComponentProps:m,renderCustomItem:C}}}),et={class:"zxt-form-container"},tt={key:0,class:"form-label"},ot={class:"form-control"};function nt(t,o,n,s,i,p){const l=e.resolveComponent("el-option"),m=e.resolveComponent("el-form-item"),g=e.resolveComponent("el-col"),d=e.resolveComponent("el-row"),u=e.resolveComponent("el-form");return e.openBlock(),e.createElementBlock("div",et,[e.createVNode(u,e.mergeProps({ref:"formRef"},t.$attrs,{model:t.formData,rules:t.formRules,"label-width":t.labelWidth,class:"zxt-form"}),{default:e.withCtx(()=>[e.createVNode(d,{gutter:20},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.processedColumns,(c,C)=>(e.openBlock(),e.createBlock(g,e.mergeProps({key:C},{ref_for:!0},c.colSpan),{default:e.withCtx(()=>[e.createVNode(m,{prop:c.prop,required:c.required,"label-width":"0",class:"custom-form-item"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["form-item-wrapper",{"is-action":c.isAction}])},[c.label?(e.openBlock(),e.createElementBlock("span",tt,e.toDisplayString(c.label),1)):e.createCommentVNode("",!0),e.createElementVNode("div",ot,[c.type==="slot"?e.renderSlot(t.$slots,c.slotName||c.prop,{key:0,formData:t.formData,column:c},void 0,!0):c.itemRender?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.renderCustomItem(c)),{key:1})):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.getComponentType(c.type)),e.mergeProps({key:2,modelValue:t.formData[c.prop],"onUpdate:modelValue":r=>t.formData[c.prop]=r},{ref_for:!0},t.getComponentProps(c),e.toHandlers(c.events||{})),{default:e.withCtx(()=>[c.type==="select"?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(c.options,(r,w)=>(e.openBlock(),e.createBlock(l,{key:w,label:r.label,value:r.value},null,8,["label","value"]))),128)):e.createCommentVNode("",!0)]),_:2},1040,["modelValue","onUpdate:modelValue"]))])],2)]),_:2},1032,["prop","required"])]),_:2},1040))),128))]),_:3})]),_:3},16,["model","rules","label-width"])])}const I=P(ve,[["render",nt],["__scopeId","data-v-6b22a57b"]]),at={Plus:K,Delete:W,Refresh:H,Download:G,Search:j,Edit:J,View:Y,Upload:X,Setting:Q,Warning:Ye,Check:$e,Close:Ne,Document:Ae,CopyDocument:De,Share:We,Lock:Ze,Unlock:Je,ArrowDown:me},rt=e.defineComponent({name:"ActionColumn",components:{ArrowDown:me},props:{buttons:{type:Array,default:()=>[]},row:{type:Object,default:()=>({})},maxVisible:{type:Number,default:2}},emits:["action-click"],setup(t,{emit:o}){const n=e.computed(()=>t.buttons.filter(d=>typeof d.visible=="function"?d.visible(t.row):typeof d.visible=="boolean"?d.visible:!0)),s=e.computed(()=>n.value.length>t.maxVisible),i=e.computed(()=>s.value?n.value.slice(0,t.maxVisible):n.value),p=e.computed(()=>s.value?n.value.slice(t.maxVisible):[]);return{visibleButtons:i,overflowButtons:p,getIconComponent:d=>{if(d)return typeof d=="object"||typeof d=="function"?d:at[d]},handleClick:d=>{o("action-click",{code:d.code,button:d,row:t.row})},handleCommand:d=>{o("action-click",{code:d.code,button:d,row:t.row})}}}}),lt={class:"action-column"};function st(t,o,n,s,i,p){const l=e.resolveComponent("el-button"),m=e.resolveComponent("ArrowDown"),g=e.resolveComponent("el-icon"),d=e.resolveComponent("el-dropdown-item"),u=e.resolveComponent("el-dropdown-menu"),c=e.resolveComponent("el-dropdown");return e.openBlock(),e.createElementBlock("div",lt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.visibleButtons,C=>(e.openBlock(),e.createBlock(l,{key:C.code,type:C.type||"",icon:t.getIconComponent(C.icon),size:"small",link:"",onClick:r=>t.handleClick(C)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C.label),1)]),_:2},1032,["type","icon","onClick"]))),128)),t.overflowButtons.length?(e.openBlock(),e.createBlock(c,{key:0,trigger:"hover",onCommand:t.handleCommand},{dropdown:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.overflowButtons,C=>(e.openBlock(),e.createBlock(d,{key:C.code,command:C,icon:t.getIconComponent(C.icon)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C.label),1)]),_:2},1032,["command","icon"]))),128))]),_:1})]),default:e.withCtx(()=>[e.createVNode(l,{type:"",size:"small",link:""},{default:e.withCtx(()=>[o[0]||(o[0]=e.createTextVNode(" 更多 ",-1)),e.createVNode(g,{class:"el-icon--right"},{default:e.withCtx(()=>[e.createVNode(m)]),_:1})]),_:1})]),_:1},8,["onCommand"])):e.createCommentVNode("",!0)])}const it=P(rt,[["render",st],["__scopeId","data-v-6d75a891"]]),ct=e.defineComponent({name:"ZxtGrid",inheritAttrs:!1,components:{ZxtTable:b,ZxtForm:I,ActionColumn:it,Plus:K,Delete:W,Refresh:H,Download:G,Search:j,Edit:J,View:Y,Upload:X,Setting:Q},props:{gridOptions:{type:Object,default:()=>({id:"grid",columns:[],data:[],height:400,pageable:!0,pageSizes:[10,20,50,100],paginationLayout:"total, sizes, prev, pager, next, jumper",toolbar:null,formMode:!1,formColumns:[],rules:{}})},externalData:{type:Array,default:()=>[]}},emits:["toolbar-click","action-click","submit","reset","page-change","size-change"],setup(t,{emit:o,expose:n}){const s=e.useAttrs(),i=e.useSlots(),p=e.ref(null),l=e.ref(null),m=e.ref(1),g=e.ref(10),d=e.ref(null),u=e.ref(t.gridOptions.formMode!==!1),c=e.ref({}),C={Plus:K,Delete:W,Refresh:H,Download:G,Search:j,Edit:J,View:Y,Upload:X,Setting:Q},r=e.computed(()=>{const f=(t.gridOptions.columns||[]).find(S=>S.actionColumn);return f?f.actionColumn:null}),w=e.computed(()=>(t.gridOptions.columns||[]).map(f=>f.actionColumn?{...f,slot:"__action__",actionColumn:void 0}:f)),E=a=>{o("action-click",a)},L=e.computed(()=>{const a=t.gridOptions.formConfig;if(!a||!a.items)return[];const f=[...a.items];return f.some(pe=>pe.type==="slot"&&pe.slotName==="search-actions")||f.push({type:"slot",slotName:"search-actions",span:6,labelWidth:"0px",isAction:!0,...a.actionConfig}),f}),B=e.computed(()=>{const a=new Set(["search-actions"]);return(L.value||[]).forEach(f=>{f.type==="slot"&&a.add(f.slotName||f.prop)}),a}),D=e.computed(()=>{const a={};for(const f in i)f==="search-actions"||f==="toolbar"||(B.value.has(f)||f.startsWith("form-"))&&(a[f]=i[f]);return a}),ee=e.computed(()=>{const a={};for(const f in i)f!=="toolbar"&&!B.value.has(f)&&!f.startsWith("form-")&&(a[f]=i[f]);return a}),x=()=>{l.value?.submitForm()},q=a=>{o("submit",a),t.gridOptions.proxyConfig&&(c.value={...a},m.value=1,p.value?.reload?.({formData:c.value,page:1}))},te=()=>{l.value?.resetForm()},oe=()=>{o("reset"),t.gridOptions.proxyConfig&&(c.value={},m.value=1,p.value?.reload?.({formData:{},page:1}))},ne=a=>{if(a)return typeof a=="object"||typeof a=="function"?a:C[a]},h=e.computed(()=>{const a=t.gridOptions.proxyConfig;return a?{...a,_formData:c.value}:null}),k=e.computed(()=>{const{formConfig:a,toolbar:f,formMode:S,formColumns:pe,rules:kt,data:yt,proxyConfig:Ct,...wt}=t.gridOptions;return{...wt,proxyConfig:h.value||Ct||null}}),$=e.computed(()=>d.value!==null?d.value:t.externalData.length>0?t.externalData:t.gridOptions.data||[]),R=e.computed(()=>!!t.gridOptions.proxyConfig),ae=e.computed(()=>R.value?0:$.value.length),re=(a,f)=>{o("toolbar-click",{code:a,button:f,grid:p.value})},le=a=>{m.value=a.page,o("page-change",a)},se=a=>{g.value=a.size,o("size-change",a)},ie=()=>p.value,T=()=>l.value,z=()=>p.value?.getTableRef()?.getSelectionRows?.()||[],Z=a=>{d.value=a??null},ce=a=>{u.value=a},de=(a,...f)=>{const S=c.value;switch(a){case"query":m.value=1,p.value?.reload?.({formData:S,page:1});break;case"reload":p.value?.reload?.({formData:S});break;default:console.warn(`[ZxtGrid] commitProxy: unknown type "${a}"`)}};e.watch(()=>t.gridOptions.formMode,a=>{a!==void 0&&(u.value=a)});const y=()=>p.value?.getTableRef?.();return n({getGridRef:ie,getFormRef:T,getElTableRef:y,getSelectedRows:z,reloadData:Z,setFormVisible:ce,commitProxy:de,clearSelection:()=>y()?.clearSelection(),toggleRowSelection:(...a)=>y()?.toggleRowSelection(...a),toggleAllSelection:()=>y()?.toggleAllSelection(),toggleRowExpansion:(...a)=>y()?.toggleRowExpansion(...a),setCurrentRow:(...a)=>y()?.setCurrentRow(...a),clearSort:()=>y()?.clearSort(),clearFilter:(...a)=>y()?.clearFilter(...a),doLayout:()=>y()?.doLayout(),sort:(...a)=>y()?.sort(...a)}),{attrs:s,gridRef:p,searchFormRef:l,currentPage:m,pageSize:g,tableData:$,tableProps:k,mergedColumns:w,actionColumnConfig:r,total:ae,isFormVisible:u,searchFormColumns:L,formFilteredSlots:D,tableFilteredSlots:ee,getIconComponent:ne,handleToolbarClick:re,handleActionClick:E,handlePageChange:le,handleSizeChange:se,handleSearch:x,handleSearchSubmit:q,handleReset:te,handleSearchReset:oe,Search:j,Refresh:H}}}),dt={key:0,class:"grid-search-form"},pt={class:"search-btn-group"},mt={class:"grid-table-wrapper"},ft={key:0,class:"grid-toolbar"};function gt(t,o,n,s,i,p){const l=e.resolveComponent("el-button"),m=e.resolveComponent("ZxtForm"),g=e.resolveComponent("ActionColumn"),d=e.resolveComponent("ZxtTable");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["zxt-grid-container",{"zxt-grid-container--full":t.gridOptions.height==="full"}])},[t.gridOptions.formConfig&&t.isFormVisible?(e.openBlock(),e.createElementBlock("div",dt,[e.createVNode(m,{ref:"searchFormRef","form-columns":t.searchFormColumns,"initial-form-data":t.gridOptions.formConfig.data,rules:t.gridOptions.formConfig.rules,onSubmit:t.handleSearchSubmit,onReset:t.handleSearchReset},e.createSlots({"search-actions":e.withCtx(()=>[e.createElementVNode("div",pt,[e.createVNode(l,{class:"btn-search",icon:t.Search,onClick:t.handleSearch},{default:e.withCtx(()=>[...o[0]||(o[0]=[e.createTextVNode(" 查询 ",-1)])]),_:1},8,["icon","onClick"]),e.createVNode(l,{class:"btn-reset",icon:t.Refresh,onClick:t.handleReset},{default:e.withCtx(()=>[...o[1]||(o[1]=[e.createTextVNode(" 重置 ",-1)])]),_:1},8,["icon","onClick"])])]),_:2},[e.renderList(t.formFilteredSlots,(u,c)=>({name:c,fn:e.withCtx(C=>[e.renderSlot(t.$slots,c,e.normalizeProps(e.guardReactiveProps(C)),void 0,!0)])}))]),1032,["form-columns","initial-form-data","rules","onSubmit","onReset"])])):e.createCommentVNode("",!0),e.createElementVNode("div",mt,[t.gridOptions.toolbar?(e.openBlock(),e.createElementBlock("div",ft,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.gridOptions.toolbar.buttons,(u,c)=>(e.openBlock(),e.createBlock(l,{key:c,type:u.type||"default",size:u.size||"small",icon:t.getIconComponent(u.icon),disabled:u.disabled,onClick:C=>t.handleToolbarClick(u.code,u)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.name),1)]),_:2},1032,["type","size","icon","disabled","onClick"]))),128)),e.renderSlot(t.$slots,"toolbar",{grid:t.$refs.gridRef},void 0,!0)])):e.createCommentVNode("",!0),e.createVNode(d,e.mergeProps({ref:"gridRef"},{...t.tableProps,...t.attrs},{id:t.gridOptions.id,columns:t.mergedColumns,data:t.tableData,height:t.gridOptions.height,pageable:t.gridOptions.pageable!==!1,"current-page":t.currentPage,"page-size":t.pageSize,"page-sizes":t.gridOptions.pageSizes,total:t.total,"pagination-layout":t.gridOptions.paginationLayout,onPageChange:t.handlePageChange,onSizeChange:t.handleSizeChange}),e.createSlots({_:2},[t.actionColumnConfig?{name:"__action__",fn:e.withCtx(({row:u})=>[e.createVNode(g,{buttons:t.actionColumnConfig.buttons,row:u,"max-visible":t.actionColumnConfig.maxVisible||2,onActionClick:t.handleActionClick},null,8,["buttons","row","max-visible","onActionClick"])]),key:"0"}:void 0,e.renderList(t.tableFilteredSlots,(u,c)=>({name:c,fn:e.withCtx(C=>[e.renderSlot(t.$slots,c,e.normalizeProps(e.guardReactiveProps(C)),void 0,!0)])}))]),1040,["id","columns","data","height","pageable","current-page","page-size","page-sizes","total","pagination-layout","onPageChange","onSizeChange"])])],2)}const v=P(ct,[["render",gt],["__scopeId","data-v-329b8be5"]]);N.install=function(t){t.component(N.name,N)};const ut=[A,M,b,v,I,N],ht={install:t=>{ut.forEach(o=>{t.component(o.name,o)})},MyButton:A,JsxButton:M,ZxtTable:b,ZxtGrid:v,ZxtForm:I,ZxtPagination:N,renderer:b.renderer,registerRenderer:b.registerRenderer};_.JsxButton=M,_.MyButton=A,_.ZxtForm=I,_.ZxtGrid=v,_.ZxtPagination=N,_.ZxtTable=b,_.default=ht,Object.defineProperties(_,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
1
|
+
(function(k,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("element-plus")):typeof define=="function"&&define.amd?define(["exports","vue","element-plus"],e):(k=typeof globalThis<"u"?globalThis:k||self,e(k.ZxtTable={},k.Vue,k.ElementPlus))})(this,(function(k,e,V){"use strict";const P=(t,o)=>{const n=t.__vccOpts||t;for(const[s,c]of o)n[s]=c;return n},ge={name:"MyButton",props:{type:{type:String,default:"default",validator:t=>["default","primary","success","warning","danger"].includes(t)},disabled:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:o}){return{handleClick:s=>{o("click",s)}}}},ue=["disabled"];function he(t,o,n,s,c,p){return e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["my-button",[`my-button--${n.type}`,{"is-disabled":n.disabled}]]),disabled:n.disabled,onClick:o[0]||(o[0]=(...l)=>s.handleClick&&s.handleClick(...l))},[e.renderSlot(t.$slots,"default",{},void 0,!0)],10,ue)}const A=P(ge,[["render",he],["__scopeId","data-v-4480e77d"]]);A.install=function(t){t.component(A.name,A)};const L=e.defineComponent({name:"JsxButton",props:{type:{type:String,default:"default",validator:t=>["default","primary","success","warning","danger"].includes(t)},disabled:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:o,slots:n}){const s=c=>{t.disabled||o("click",c)};return()=>e.createVNode("button",{class:["jsx-button",`jsx-button--${t.type}`,{"is-disabled":t.disabled}],disabled:t.disabled,onClick:s},[n.default?.()])}});L.install=function(t){t.component(L.name,L)};const Ce=e.defineComponent({name:"ZxtPagination",components:{ElPagination:V.ElPagination},props:{modelValue:{type:Number,default:1},pageSize:{type:Number,default:10},pageSizes:{type:Array,default:()=>[10,20,50,100]},total:{type:Number,default:0},layout:{type:String,default:"total, sizes, prev, pager, next, jumper"}},emits:["update:modelValue","update:pageSize","page-change","size-change"],setup(t,{emit:o}){const n=e.ref(t.modelValue),s=e.ref(t.pageSize);return e.watch(()=>t.modelValue,l=>{n.value=l}),e.watch(()=>t.pageSize,l=>{s.value=l}),{currentPage:n,pageSize:s,handleSizeChange:l=>{s.value=l,n.value=1,o("update:pageSize",l),o("size-change",{page:n.value,size:l})},handleCurrentChange:l=>{n.value=l,o("update:modelValue",l),o("page-change",{page:l,size:s.value})}}}});function we(t,o,n,s,c,p){const l=e.resolveComponent("el-pagination");return e.openBlock(),e.createBlock(l,{"current-page":t.currentPage,"onUpdate:currentPage":o[0]||(o[0]=m=>t.currentPage=m),"page-size":t.pageSize,"onUpdate:pageSize":o[1]||(o[1]=m=>t.pageSize=m),"page-sizes":t.pageSizes,total:t.total,layout:t.layout,class:"zxt-pagination",onSizeChange:t.handleSizeChange,onCurrentChange:t.handleCurrentChange},null,8,["current-page","page-size","page-sizes","total","layout","onSizeChange","onCurrentChange"])}const F=P(Ce,[["render",we],["__scopeId","data-v-497aa44d"]]),O={default:({cellValue:t})=>t??"",input:({cellValue:t,row:o,column:n,updateRow:s})=>e.h(V.ElInput,{modelValue:t,size:"small",onInput:c=>s({...o,[n.property]:c})}),select:({cellValue:t,row:o,column:n,updateRow:s,options:c=[]})=>e.h(V.ElSelect,{modelValue:t,size:"small",onChange:p=>s({...o,[n.property]:p})},()=>c.map(p=>e.h(V.ElOption,{label:p.label,value:p.value,key:p.value}))),checkbox:({cellValue:t,row:o,column:n,updateRow:s})=>e.h(V.ElCheckbox,{modelValue:!!t,onChange:c=>s({...o,[n.property]:c})}),link:({cellValue:t,href:o,target:n="_blank"})=>e.h(V.ElLink,{href:o,target:n},()=>t)};function _e(t,o){if(!t)return null;if(typeof t=="string"){const n=O[t];return n?n(o):(console.warn(`[ZxtTable] 未找到内置渲染器: ${t}`),o.cellValue??"")}if(typeof t=="function")return t(o);if(typeof t=="object"&&!Array.isArray(t)){const{name:n,props:s={},attrs:c={},events:p={},content:l}=t;return typeof n=="string"&&O[n]?O[n]({...o,...s,...c,...p}):typeof n=="object"||typeof n=="function"?e.h(n,{...s,...c,...p},l):(console.warn("[ZxtTable] cellRender 对象缺少有效的 name 字段"),o.cellValue??"")}return o.cellValue??""}function ke(t,o){O[t]&&console.warn(`[ZxtTable] 内置渲染器 ${t} 已被覆盖`),O[t]=o}const ye=e.defineComponent({name:"ZxtTableColumn",components:{ElTableColumn:V.ElTableColumn},props:{column:{type:Object,required:!0},currentPage:{type:Number,default:1},pageSize:{type:Number,default:10}},setup(t){const o=e.inject("updateRow",()=>{}),n=l=>{const{currentPage:m,pageSize:g}=t;return(m-1)*g+l+1},s=e.computed(()=>{const l=t.column;return{...l,prop:l.prop??l.field,label:l.label??l.title}}),c=e.computed(()=>{const{children:l,...m}=s.value;return m});return{normalizedColumn:s,columnProps:c,renderCell:l=>{const m=s.value,g=l.row[m.prop],d=g??m.defaultValue??"";return _e(m.cellRender,{row:l.row,column:m,rowIndex:l.$index,cellValue:d,updateRow:u=>o(u,l.$index)})},defaultIndexMethod:n}}});function be(t,o,n,s,c,p){const l=e.resolveComponent("ZxtTableColumn",!0),m=e.resolveComponent("el-table-column");return t.normalizedColumn.children&&t.normalizedColumn.children.length?(e.openBlock(),e.createBlock(m,e.mergeProps({key:0},t.columnProps,{key:t.normalizedColumn.prop+"-group"}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.normalizedColumn.children,(g,d)=>(e.openBlock(),e.createBlock(l,{key:d,column:g,"current-page":t.currentPage,"page-size":t.pageSize},e.createSlots({_:2},[e.renderList(t.$slots,(u,i)=>({name:i,fn:e.withCtx(C=>[e.renderSlot(t.$slots,i,e.mergeProps({ref_for:!0},C))])}))]),1032,["column","current-page","page-size"]))),128))]),_:3},16)):(e.openBlock(),e.createBlock(m,e.mergeProps({key:1},t.columnProps,{key:t.normalizedColumn.prop,index:t.normalizedColumn.indexMethod||t.defaultIndexMethod}),e.createSlots({_:2},[!["selection","index"].includes(t.normalizedColumn.type)&&(t.normalizedColumn.type!=="expand"||t.normalizedColumn.slot)?{name:"default",fn:e.withCtx(g=>[t.normalizedColumn.slot?e.renderSlot(t.$slots,t.normalizedColumn.slot,{key:0,row:g.row,index:g.$index,column:t.normalizedColumn}):t.normalizedColumn.cellRender?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.renderCell(g)),{key:1})):t.normalizedColumn.formatter?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createTextVNode(e.toDisplayString(t.normalizedColumn.formatter(g.row,t.normalizedColumn,g.row[t.normalizedColumn.prop],g.$index)),1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[e.createTextVNode(e.toDisplayString(g.row[t.normalizedColumn.prop]),1)],64))]),key:"0"}:void 0]),1040,["index"]))}const ze=P(ye,[["render",be]]),Be=e.defineComponent({name:"ZxtTable",inheritAttrs:!1,components:{ZxtPagination:F,ZxtTableColumn:ze,ElTable:V.ElTable},props:{id:{type:String,default:""},columns:{type:Array,default:()=>[]},data:{type:Array,default:()=>[]},height:{type:[String,Number],default:""},pageable:{type:Boolean,default:!0},currentPage:{type:Number,default:1},pageSize:{type:Number,default:10},pageSizes:{type:Array,default:()=>[10,20,50,100]},total:{type:Number,default:0},paginationLayout:{type:String,default:"total, sizes, prev, pager, next, jumper"},proxyConfig:{type:Object,default:null},autoLoad:{type:Boolean,default:!0}},emits:["page-change","size-change","sort-change","filter-change","loaded","load-error","update:row"],setup(t,{emit:o}){const n=e.ref(null),s=e.ref(t.pageSize),c=e.ref(t.currentPage),p=e.ref(!1),l=e.ref([]),m=e.ref(0),g=e.ref({prop:"",order:""}),d=e.ref({}),u=e.ref({});e.watch(()=>t.currentPage,h=>{c.value=h}),e.watch(()=>t.pageSize,h=>{s.value=h});const i=e.computed(()=>t.height==="full"?{height:"100%"}:{}),C=e.computed(()=>{if(t.height!=="full")return t.height}),r=e.computed(()=>!!t.proxyConfig),w=e.computed(()=>r.value?m.value:t.total>0?t.total:t.data.length),E=e.computed(()=>r.value?l.value:t.data),M=h=>{r.value&&(c.value=h.page,s.value=h.size,x()),o("size-change",h)},S=h=>{r.value&&(c.value=h.page,s.value=h.size,x()),o("page-change",h)},D=({column:h,prop:y,order:$})=>{g.value={prop:y,order:$},r.value&&x(),o("sort-change",{column:h,prop:y,order:$})},te=h=>{d.value=h||{},r.value&&x(),o("filter-change",d.value)},x=async h=>{if(!r.value)return;const y=t.proxyConfig||{},$=y.ajax?.query;if(typeof $!="function")return;const R=y.props||{},re=R.pageField||"page";R.sizeField;const le=R.sortField||"sort",se=R.orderField||"order",ie=R.filtersField||"filters";h?.formData!==void 0?u.value=h.formData:y._formData&&(u.value=y._formData);const ce=y.params||{},T={[re]:{currentPage:h?.page??c.value,pageSize:h?.pageSize??s.value},form:u.value,...ce};g.value?.prop&&(T[le]=g.value.prop,T[se]=g.value.order),d.value&&Object.keys(d.value).length&&(T[ie]=d.value),p.value=!0;try{const z=await $(T),Z=y.response||{},de=Z.listField||"list",pe=Z.totalField||"total",U=Z.transform;let _=[],a=0;if(typeof U=="function"){const f=U(z);_=f?.list??[],a=f?.total??0}else z&&typeof z=="object"&&(_=z?.[de]??z?.data??[],a=z?.[pe]??z?.total??0);l.value=Array.isArray(_)?_:[],m.value=Number(a)||0,o("loaded",{data:l.value,total:m.value,payload:T})}catch(z){o("load-error",z)}finally{p.value=!1}},q=(h,y)=>{r.value?l.value.splice(y,1,h):o("update:row",{index:y,row:h})};e.provide("updateRow",q),e.onMounted(()=>{r.value&&t.autoLoad&&x()});const oe=()=>n.value,ne=()=>n.value?.getSelectionRows?.()||[],ae=h=>x(h);return{tableRef:n,containerStyle:i,tableHeight:C,getTableRef:oe,pageSize:s,currentPage:c,loading:p,renderData:E,total:w,pageSizes:e.computed(()=>t.pageSizes),paginationLayout:e.computed(()=>t.paginationLayout),handleSizeChange:M,handlePageChange:S,handleSortChange:D,handleFilterChange:te,reload:ae,getSelectedRows:ne,updateRow:q}}});function Se(t,o,n,s,c,p){const l=e.resolveComponent("ZxtTableColumn"),m=e.resolveComponent("el-table"),g=e.resolveComponent("ZxtPagination"),d=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["zxt-table-container",{"zxt-table-container--full":t.height==="full"}]),style:e.normalizeStyle(t.containerStyle)},[e.withDirectives((e.openBlock(),e.createBlock(m,e.mergeProps({ref:"tableRef",data:t.renderData,height:t.tableHeight},t.$attrs,{id:t.id,onSortChange:t.handleSortChange,onFilterChange:t.handleFilterChange}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,(u,i)=>(e.openBlock(),e.createBlock(l,{key:i,column:u,"current-page":t.currentPage,"page-size":t.pageSize},e.createSlots({_:2},[e.renderList(t.$slots,(C,r)=>({name:r,fn:e.withCtx(w=>[e.renderSlot(t.$slots,r,e.mergeProps({ref_for:!0},w),void 0,!0)])}))]),1032,["column","current-page","page-size"]))),128))]),_:3},16,["data","height","id","onSortChange","onFilterChange"])),[[d,t.loading]]),t.pageable?(e.openBlock(),e.createBlock(g,{key:0,"model-value":t.currentPage,"page-size":t.pageSize,"onUpdate:pageSize":o[0]||(o[0]=u=>t.pageSize=u),"page-sizes":t.pageSizes,total:t.total,layout:t.paginationLayout,onPageChange:t.handlePageChange,onSizeChange:t.handleSizeChange},null,8,["model-value","page-size","page-sizes","total","layout","onPageChange","onSizeChange"])):e.createCommentVNode("",!0)],6)}const b=P(Be,[["render",Se],["__scopeId","data-v-ebf6786f"]]),N=new Map;class Ve{add(o,n){return!o||typeof o!="string"?(console.warn("[ZxtTable] 渲染器名称必须是字符串"),this):!n||typeof n!="object"?(console.warn("[ZxtTable] 渲染器配置必须是对象"),this):(N.has(o)&&console.warn(`[ZxtTable] 渲染器 "${o}" 已存在,将被覆盖`),N.set(o,n),this)}get(o){return N.get(o)}delete(o){return N.delete(o)}has(o){return N.has(o)}getAll(){return Array.from(N.keys())}clear(){N.clear()}}const W=new Ve;function Ee(t,o,n={}){if(!t||!t.itemRender)return null;const{name:s}=t.itemRender;if(s&&W.has(s)){const c=W.get(s);if(typeof c.renderItemContent=="function"){const p={data:o,field:t.field||t.prop,item:t,formData:o};try{return c.renderItemContent(n,p)}catch(l){return console.error(`[ZxtTable] 渲染器 "${s}" 执行出错:`,l),null}}}return null}b.install=function(t){t.component(b.name,b)},b.registerRenderer=ke,b.renderer=W;/*! Element Plus Icons Vue v2.3.2 */var xe=e.defineComponent({name:"ArrowDown",__name:"arrow-down",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.59 30.59 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.59 30.59 0 0 0-42.752 0z"})]))}}),fe=xe,$e=e.defineComponent({name:"Check",__name:"check",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"})]))}}),Pe=$e,Fe=e.defineComponent({name:"Close",__name:"close",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"})]))}}),Ne=Fe,De=e.defineComponent({name:"CopyDocument",__name:"copy-document",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M768 832a128 128 0 0 1-128 128H192A128 128 0 0 1 64 832V384a128 128 0 0 1 128-128v64a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64z"}),e.createElementVNode("path",{fill:"currentColor",d:"M384 128a64 64 0 0 0-64 64v448a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64V192a64 64 0 0 0-64-64zm0-64h448a128 128 0 0 1 128 128v448a128 128 0 0 1-128 128H384a128 128 0 0 1-128-128V192A128 128 0 0 1 384 64"})]))}}),Re=De,Te=e.defineComponent({name:"Delete",__name:"delete",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),G=Te,Ae=e.defineComponent({name:"Document",__name:"document",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m160 448h384v64H320zm0-192h160v64H320zm0 384h384v64H320z"})]))}}),Le=Ae,Me=e.defineComponent({name:"Download",__name:"download",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-253.696 236.288-236.352 45.248 45.248L508.8 704 192 387.2l45.248-45.248L480 584.704V128h64z"})]))}}),J=Me,Oe=e.defineComponent({name:"Edit",__name:"edit",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M832 512a32 32 0 1 1 64 0v352a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h352a32 32 0 0 1 0 64H192v640h640z"}),e.createElementVNode("path",{fill:"currentColor",d:"m469.952 554.24 52.8-7.552L847.104 222.4a32 32 0 1 0-45.248-45.248L477.44 501.44l-7.552 52.8zm422.4-422.4a96 96 0 0 1 0 135.808l-331.84 331.84a32 32 0 0 1-18.112 9.088L436.8 623.68a32 32 0 0 1-36.224-36.224l15.104-105.6a32 32 0 0 1 9.024-18.112l331.904-331.84a96 96 0 0 1 135.744 0z"})]))}}),K=Oe,Ze=e.defineComponent({name:"Lock",__name:"lock",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96"}),e.createElementVNode("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32m192-160v-64a192 192 0 1 0-384 0v64zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64"})]))}}),He=Ze,je=e.defineComponent({name:"Plus",__name:"plus",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),Q=je,Ie=e.defineComponent({name:"Refresh",__name:"refresh",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M771.776 794.88A384 384 0 0 1 128 512h64a320 320 0 0 0 555.712 216.448H654.72a32 32 0 1 1 0-64h149.056a32 32 0 0 1 32 32v148.928a32 32 0 1 1-64 0v-50.56zM276.288 295.616h92.992a32 32 0 0 1 0 64H220.16a32 32 0 0 1-32-32V178.56a32 32 0 0 1 64 0v50.56A384 384 0 0 1 896.128 512h-64a320 320 0 0 0-555.776-216.384z"})]))}}),H=Ie,qe=e.defineComponent({name:"Search",__name:"search",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704"})]))}}),j=qe,Ue=e.defineComponent({name:"Setting",__name:"setting",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357 357 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a352 352 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357 357 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294 294 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293 293 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294 294 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288 288 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293 293 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a288 288 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384m0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256"})]))}}),X=Ue,We=e.defineComponent({name:"Share",__name:"share",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"m679.872 348.8-301.76 188.608a127.8 127.8 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"})]))}}),Ge=We,Je=e.defineComponent({name:"Unlock",__name:"unlock",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96"}),e.createElementVNode("path",{fill:"currentColor",d:"M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32m178.304-295.296A192.064 192.064 0 0 0 320 320v64h352l96 38.4V448H256V320a256 256 0 0 1 493.76-95.104z"})]))}}),Ke=Je,Qe=e.defineComponent({name:"Upload",__name:"upload",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-578.304V704h-64V247.296L237.248 490.048 192 444.8 508.8 128l316.8 316.8-45.312 45.248z"})]))}}),Y=Qe,Xe=e.defineComponent({name:"View",__name:"view",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),v=Xe,Ye=e.defineComponent({name:"Warning",__name:"warning",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 832a384 384 0 0 0 0-768 384 384 0 0 0 0 768m48-176a48 48 0 1 1-96 0 48 48 0 0 1 96 0m-48-464a32 32 0 0 1 32 32v288a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32"})]))}}),ve=Ye;const et=e.defineComponent({name:"ZxtForm",inheritAttrs:!1,props:{formColumns:{type:Array,default:()=>[]},initialFormData:{type:Object,default:()=>({})},rules:{type:Object,default:()=>({})},labelWidth:{type:String,default:"100px"}},emits:["submit","reset"],setup(t,{emit:o,expose:n}){const s=e.ref(null),c=e.reactive({}),p={input:"el-input",select:"el-select",date:"el-date-picker",daterange:"el-date-picker",datetime:"el-date-picker",datetimerange:"el-date-picker",cascader:"el-cascader"},l=r=>p[r]||"el-input",m=r=>{const w=r.type||"input",E=["select","date","daterange","datetime","datetimerange","cascader"].includes(w),M={placeholder:r.placeholder||`请${E?"选择":"输入"}${r.label}`,disabled:r.disabled,style:"width: 100%","popper-class":"zxt-form-popper"};let S={};switch(w){case"date":case"daterange":case"datetime":case"datetimerange":S={type:r.dateType||w,startPlaceholder:r.startPlaceholder||"开始日期",endPlaceholder:r.endPlaceholder||"结束日期",format:r.format,valueFormat:r.valueFormat};break;case"cascader":S={options:r.options,props:r.cascaderProps,clearable:r.clearable!==!1};break;default:S={}}const D={...M,...S};return"clearable"in r&&(D.clearable=r.clearable),r.props&&typeof r.props=="object"&&Object.assign(D,r.props),D},g=e.computed(()=>t.formColumns.map(r=>({...r,colSpan:{xs:r.xs??r.span??24,sm:r.sm??r.span??12,md:r.md??r.span??12,lg:r.lg??r.span??12,xl:r.xl??r.span??12}})));e.watch(()=>t.initialFormData,r=>{Object.keys(c).forEach(w=>{delete c[w]}),Object.assign(c,r)},{immediate:!0,deep:!0});const d=e.computed(()=>{const r={...t.rules};return Object.keys(r).length===0&&t.formColumns.length>0&&t.formColumns.forEach(w=>{if(w.required){const E=["select","date","daterange","datetime","datetimerange","cascader"].includes(w.type);r[w.prop]=[{required:!0,message:`请${E?"选择":"输入"}${w.label}`,trigger:E?"change":"blur"}]}}),r}),u=()=>{s.value&&s.value.validate(r=>{r&&o("submit",{...c})})},i=()=>{s.value&&s.value.resetFields(),o("reset")},C=r=>()=>Ee(r,c,{})||null;return n({validate:()=>s.value?s.value.validate():Promise.resolve(!1),resetFields:()=>s.value&&s.value.resetFields(),getFormData:()=>({...c}),submitForm:u,resetForm:i}),{formRef:s,formData:c,formRules:d,submitForm:u,resetForm:i,processedColumns:g,getComponentType:l,getComponentProps:m,renderCustomItem:C}}}),tt={class:"zxt-form-container"},ot={key:0,class:"form-label"},nt={class:"form-control"};function at(t,o,n,s,c,p){const l=e.resolveComponent("el-option"),m=e.resolveComponent("el-form-item"),g=e.resolveComponent("el-col"),d=e.resolveComponent("el-row"),u=e.resolveComponent("el-form");return e.openBlock(),e.createElementBlock("div",tt,[e.createVNode(u,e.mergeProps({ref:"formRef"},t.$attrs,{model:t.formData,rules:t.formRules,"label-width":t.labelWidth,class:"zxt-form"}),{default:e.withCtx(()=>[e.createVNode(d,{gutter:20},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.processedColumns,(i,C)=>(e.openBlock(),e.createBlock(g,e.mergeProps({key:C},{ref_for:!0},i.colSpan),{default:e.withCtx(()=>[e.createVNode(m,{prop:i.prop,required:i.required,"label-width":"0",class:"custom-form-item"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["form-item-wrapper",{"is-action":i.isAction}])},[i.label?(e.openBlock(),e.createElementBlock("span",ot,e.toDisplayString(i.label),1)):e.createCommentVNode("",!0),e.createElementVNode("div",nt,[i.type==="slot"?e.renderSlot(t.$slots,i.slotName||i.prop,{key:0,formData:t.formData,column:i},void 0,!0):i.itemRender?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.renderCustomItem(i)),{key:1})):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.getComponentType(i.type)),e.mergeProps({key:2,modelValue:t.formData[i.prop],"onUpdate:modelValue":r=>t.formData[i.prop]=r},{ref_for:!0},t.getComponentProps(i),e.toHandlers(i.events||{})),{default:e.withCtx(()=>[i.type==="select"?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(i.options,(r,w)=>(e.openBlock(),e.createBlock(l,{key:w,label:r.label,value:r.value},null,8,["label","value"]))),128)):e.createCommentVNode("",!0)]),_:2},1040,["modelValue","onUpdate:modelValue"]))])],2)]),_:2},1032,["prop","required"])]),_:2},1040))),128))]),_:3})]),_:3},16,["model","rules","label-width"])])}const I=P(et,[["render",at],["__scopeId","data-v-6b22a57b"]]),rt={Plus:Q,Delete:G,Refresh:H,Download:J,Search:j,Edit:K,View:v,Upload:Y,Setting:X,Warning:ve,Check:Pe,Close:Ne,Document:Le,CopyDocument:Re,Share:Ge,Lock:He,Unlock:Ke,ArrowDown:fe},lt=e.defineComponent({name:"ActionColumn",components:{ArrowDown:fe},props:{buttons:{type:Array,default:()=>[]},row:{type:Object,default:()=>({})},maxVisible:{type:Number,default:2}},emits:["action-click"],setup(t,{emit:o}){const n=e.computed(()=>t.buttons.filter(d=>typeof d.visible=="function"?d.visible(t.row):typeof d.visible=="boolean"?d.visible:!0)),s=e.computed(()=>n.value.length>t.maxVisible),c=e.computed(()=>s.value?n.value.slice(0,t.maxVisible):n.value),p=e.computed(()=>s.value?n.value.slice(t.maxVisible):[]);return{visibleButtons:c,overflowButtons:p,getIconComponent:d=>{if(d)return typeof d=="object"||typeof d=="function"?d:rt[d]},handleClick:d=>{o("action-click",{code:d.code,button:d,row:t.row})},handleCommand:d=>{o("action-click",{code:d.code,button:d,row:t.row})}}}}),st={class:"action-column"};function it(t,o,n,s,c,p){const l=e.resolveComponent("el-button"),m=e.resolveComponent("ArrowDown"),g=e.resolveComponent("el-icon"),d=e.resolveComponent("el-dropdown-item"),u=e.resolveComponent("el-dropdown-menu"),i=e.resolveComponent("el-dropdown");return e.openBlock(),e.createElementBlock("div",st,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.visibleButtons,C=>(e.openBlock(),e.createBlock(l,{key:C.code,type:C.type||"",icon:t.getIconComponent(C.icon),size:"small",link:"",onClick:r=>t.handleClick(C)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C.label),1)]),_:2},1032,["type","icon","onClick"]))),128)),t.overflowButtons.length?(e.openBlock(),e.createBlock(i,{key:0,trigger:"hover",onCommand:t.handleCommand},{dropdown:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.overflowButtons,C=>(e.openBlock(),e.createBlock(d,{key:C.code,command:C,icon:t.getIconComponent(C.icon)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C.label),1)]),_:2},1032,["command","icon"]))),128))]),_:1})]),default:e.withCtx(()=>[e.createVNode(l,{type:"",size:"small",link:""},{default:e.withCtx(()=>[o[0]||(o[0]=e.createTextVNode(" 更多 ",-1)),e.createVNode(g,{class:"el-icon--right"},{default:e.withCtx(()=>[e.createVNode(m)]),_:1})]),_:1})]),_:1},8,["onCommand"])):e.createCommentVNode("",!0)])}const ct=P(lt,[["render",it],["__scopeId","data-v-6d75a891"]]),dt=e.defineComponent({name:"ZxtGrid",inheritAttrs:!1,components:{ZxtTable:b,ZxtForm:I,ActionColumn:ct,Plus:Q,Delete:G,Refresh:H,Download:J,Search:j,Edit:K,View:v,Upload:Y,Setting:X},props:{gridOptions:{type:Object,default:()=>({id:"grid",columns:[],data:[],height:400,pageable:!0,pageSizes:[10,20,50,100],paginationLayout:"total, sizes, prev, pager, next, jumper",toolbar:null,formMode:!1,formColumns:[],rules:{}})},externalData:{type:Array,default:()=>[]}},emits:["toolbar-click","action-click","submit","reset","page-change","size-change"],setup(t,{emit:o,expose:n}){const s=e.useAttrs(),c=e.useSlots(),p=e.ref(null),l=e.ref(null),m=e.ref(1),g=e.ref(10),d=e.ref(null),u=e.ref(t.gridOptions.formMode!==!1),i=e.ref({...t.gridOptions.formConfig?.data||{}}),C={Plus:Q,Delete:G,Refresh:H,Download:J,Search:j,Edit:K,View:v,Upload:Y,Setting:X},r=e.computed(()=>{const f=(t.gridOptions.columns||[]).find(B=>B.actionColumn);return f?f.actionColumn:null}),w=e.computed(()=>(t.gridOptions.columns||[]).map(f=>f.actionColumn?{...f,slot:"__action__",actionColumn:void 0}:f)),E=a=>{o("action-click",a)},M=e.computed(()=>{const a=t.gridOptions.formConfig;if(!a||!a.items)return[];const f=[...a.items];return f.some(me=>me.type==="slot"&&me.slotName==="search-actions")||f.push({type:"slot",slotName:"search-actions",span:6,labelWidth:"0px",isAction:!0,...a.actionConfig}),f}),S=e.computed(()=>{const a=new Set(["search-actions"]);return(M.value||[]).forEach(f=>{f.type==="slot"&&a.add(f.slotName||f.prop)}),a}),D=e.computed(()=>{const a={};for(const f in c)f==="search-actions"||f==="toolbar"||(S.value.has(f)||f.startsWith("form-"))&&(a[f]=c[f]);return a}),te=e.computed(()=>{const a={};for(const f in c)f!=="toolbar"&&!S.value.has(f)&&!f.startsWith("form-")&&(a[f]=c[f]);return a}),x=()=>{l.value?.submitForm()},q=a=>{o("submit",a),t.gridOptions.proxyConfig&&(i.value={...a},m.value=1,p.value?.reload?.({formData:i.value,page:1}))},oe=()=>{l.value?.resetForm()},ne=()=>{o("reset"),t.gridOptions.proxyConfig&&(i.value={},m.value=1,p.value?.reload?.({formData:{},page:1}))},ae=a=>{if(a)return typeof a=="object"||typeof a=="function"?a:C[a]},h=e.computed(()=>{const a=t.gridOptions.proxyConfig;return a?{...a,_formData:i.value}:null}),y=e.computed(()=>{const{formConfig:a,toolbar:f,formMode:B,formColumns:me,rules:yt,data:bt,proxyConfig:wt,..._t}=t.gridOptions;return{..._t,proxyConfig:h.value||wt||null}}),$=e.computed(()=>d.value!==null?d.value:t.externalData.length>0?t.externalData:t.gridOptions.data||[]),R=e.computed(()=>!!t.gridOptions.proxyConfig),re=e.computed(()=>R.value?0:$.value.length),le=(a,f)=>{o("toolbar-click",{code:a,button:f,grid:p.value})},se=a=>{m.value=a.page,o("page-change",a)},ie=a=>{g.value=a.size,o("size-change",a)},ce=()=>p.value,T=()=>l.value,z=()=>p.value?.getTableRef()?.getSelectionRows?.()||[],Z=a=>{d.value=a??null},de=a=>{u.value=a},pe=(a,f=!0)=>{const B=t.gridOptions.formConfig;B?.data&&Object.assign(B.data,a),i.value={...B?.data||{},...a},f&&t.gridOptions.proxyConfig&&(m.value=1,p.value?.reload?.({formData:i.value,page:1}))},U=(a,...f)=>{const B=i.value;switch(a){case"query":m.value=1,p.value?.reload?.({formData:B,page:1});break;case"reload":p.value?.reload?.({formData:B});break;default:console.warn(`[ZxtGrid] commitProxy: unknown type "${a}"`)}};e.watch(()=>t.gridOptions.formMode,a=>{a!==void 0&&(u.value=a)}),e.onMounted(()=>{t.gridOptions.proxyConfig&&t.gridOptions.autoLoad!==!1&&p.value?.reload?.({formData:i.value,page:1})});const _=()=>p.value?.getTableRef?.();return n({getGridRef:ce,getFormRef:T,getElTableRef:_,getSelectedRows:z,reloadData:Z,setFormVisible:de,setFormData:pe,commitProxy:U,clearSelection:()=>_()?.clearSelection(),toggleRowSelection:(...a)=>_()?.toggleRowSelection(...a),toggleAllSelection:()=>_()?.toggleAllSelection(),toggleRowExpansion:(...a)=>_()?.toggleRowExpansion(...a),setCurrentRow:(...a)=>_()?.setCurrentRow(...a),clearSort:()=>_()?.clearSort(),clearFilter:(...a)=>_()?.clearFilter(...a),doLayout:()=>_()?.doLayout(),sort:(...a)=>_()?.sort(...a)}),{attrs:s,gridRef:p,searchFormRef:l,currentPage:m,pageSize:g,tableData:$,tableProps:y,mergedColumns:w,actionColumnConfig:r,total:re,isFormVisible:u,searchFormColumns:M,formFilteredSlots:D,tableFilteredSlots:te,getIconComponent:ae,handleToolbarClick:le,handleActionClick:E,handlePageChange:se,handleSizeChange:ie,handleSearch:x,handleSearchSubmit:q,handleReset:oe,handleSearchReset:ne,Search:j,Refresh:H}}}),pt={key:0,class:"grid-search-form"},mt={class:"search-btn-group"},ft={class:"grid-table-wrapper"},gt={key:0,class:"grid-toolbar"};function ut(t,o,n,s,c,p){const l=e.resolveComponent("el-button"),m=e.resolveComponent("ZxtForm"),g=e.resolveComponent("ActionColumn"),d=e.resolveComponent("ZxtTable");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["zxt-grid-container",{"zxt-grid-container--full":t.gridOptions.height==="full"}])},[t.gridOptions.formConfig&&t.isFormVisible?(e.openBlock(),e.createElementBlock("div",pt,[e.createVNode(m,{ref:"searchFormRef","form-columns":t.searchFormColumns,"initial-form-data":t.gridOptions.formConfig.data,rules:t.gridOptions.formConfig.rules,onSubmit:t.handleSearchSubmit,onReset:t.handleSearchReset},e.createSlots({"search-actions":e.withCtx(()=>[e.createElementVNode("div",mt,[e.createVNode(l,{class:"btn-search",icon:t.Search,onClick:t.handleSearch},{default:e.withCtx(()=>[...o[0]||(o[0]=[e.createTextVNode(" 查询 ",-1)])]),_:1},8,["icon","onClick"]),e.createVNode(l,{class:"btn-reset",icon:t.Refresh,onClick:t.handleReset},{default:e.withCtx(()=>[...o[1]||(o[1]=[e.createTextVNode(" 重置 ",-1)])]),_:1},8,["icon","onClick"])])]),_:2},[e.renderList(t.formFilteredSlots,(u,i)=>({name:i,fn:e.withCtx(C=>[e.renderSlot(t.$slots,i,e.normalizeProps(e.guardReactiveProps(C)),void 0,!0)])}))]),1032,["form-columns","initial-form-data","rules","onSubmit","onReset"])])):e.createCommentVNode("",!0),e.createElementVNode("div",ft,[t.gridOptions.toolbar?(e.openBlock(),e.createElementBlock("div",gt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.gridOptions.toolbar.buttons,(u,i)=>(e.openBlock(),e.createBlock(l,{key:i,type:u.type||"default",size:u.size||"small",icon:t.getIconComponent(u.icon),disabled:u.disabled,onClick:C=>t.handleToolbarClick(u.code,u)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.name),1)]),_:2},1032,["type","size","icon","disabled","onClick"]))),128)),e.renderSlot(t.$slots,"toolbar",{grid:t.$refs.gridRef},void 0,!0)])):e.createCommentVNode("",!0),e.createVNode(d,e.mergeProps({ref:"gridRef"},{...t.tableProps,...t.attrs},{id:t.gridOptions.id,columns:t.mergedColumns,data:t.tableData,height:t.gridOptions.height,"auto-load":!1,pageable:t.gridOptions.pageable!==!1,"current-page":t.currentPage,"page-size":t.pageSize,"page-sizes":t.gridOptions.pageSizes,total:t.total,"pagination-layout":t.gridOptions.paginationLayout,onPageChange:t.handlePageChange,onSizeChange:t.handleSizeChange}),e.createSlots({_:2},[t.actionColumnConfig?{name:"__action__",fn:e.withCtx(({row:u})=>[e.createVNode(g,{buttons:t.actionColumnConfig.buttons,row:u,"max-visible":t.actionColumnConfig.maxVisible||2,onActionClick:t.handleActionClick},null,8,["buttons","row","max-visible","onActionClick"])]),key:"0"}:void 0,e.renderList(t.tableFilteredSlots,(u,i)=>({name:i,fn:e.withCtx(C=>[e.renderSlot(t.$slots,i,e.normalizeProps(e.guardReactiveProps(C)),void 0,!0)])}))]),1040,["id","columns","data","height","pageable","current-page","page-size","page-sizes","total","pagination-layout","onPageChange","onSizeChange"])])],2)}const ee=P(dt,[["render",ut],["__scopeId","data-v-f8b2d913"]]);F.install=function(t){t.component(F.name,F)};const ht=[A,L,b,ee,I,F],Ct={install:t=>{ht.forEach(o=>{t.component(o.name,o)})},MyButton:A,JsxButton:L,ZxtTable:b,ZxtGrid:ee,ZxtForm:I,ZxtPagination:F,renderer:b.renderer,registerRenderer:b.registerRenderer};k.JsxButton=L,k.MyButton=A,k.ZxtForm=I,k.ZxtGrid=ee,k.ZxtPagination=F,k.ZxtTable=b,k.default=Ct,Object.defineProperties(k,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|