cc1-form 1.2.5 → 1.2.6

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.
@@ -1 +1 @@
1
- (function(C,p){typeof exports=="object"&&typeof module<"u"?p(exports,require("element-plus"),require("vue-router"),require("vue")):typeof define=="function"&&define.amd?define(["exports","element-plus","vue-router","vue"],p):(C=typeof globalThis<"u"?globalThis:C||self,p(C.cc1Form={},C.ElementPlus,C.VueRouter,C.Vue))})(this,(function(C,p,xe,e){"use strict";class b{static router;static routes;static getRouterPath=()=>this.router.currentRoute.value.path;static EDialog={Add:"Add",Update:"Update",View:"View",Remove:"Remove"};static isFun=(c,...s)=>Array.isArray(c)?c.some(n=>typeof n=="function"?n(...s):n):typeof c=="function"?c(...s):c;static getRouterParams=()=>{const c=this.router.currentRoute.value.query||{},s=this.router.currentRoute.value.params||{};return Object.keys(c).length?c:Object.keys(s).length?s:{}};static moduleObj={};static loadModule=async c=>{if(!b.moduleObj[c])throw new Error(`模块${c}未加载,请赋值如:TSys.moduleObj = { ${c}: ()=>import('${c}') }`);const s=await b.moduleObj[c]();return s.default??s};static tipMessages={};static tipMessagesGap=500;static showMessage(c,s,n={}){const r=Date.now();if(!this.tipMessages[c]||r-this.tipMessages[c]>this.tipMessagesGap){this.tipMessages[c]=r;const a=Object.assign({message:c,type:s},n);p.ElMessage(a),setTimeout(()=>{delete this.tipMessages[c]},this.tipMessagesGap)}}static fail=(c,s={})=>{this.showMessage(c,"error",s)};static success=(c,s={})=>{this.showMessage(c,"success",s)};static loadingObj=null;static loadingTimer=null;static loading=(c=!0,s="Loading...")=>{Timer.un(this.loadingTimer),this.loadingTimer=Timer.once(()=>{c?this.loadingObj=p.ElLoading.service({lock:!0,text:s,background:"rgba(0, 0, 0, 0.3)"}):this.loadingObj&&(this.loadingObj.close(),this.loadingObj=null)},50)};static openUrl=(c,s=!0)=>{if(s){let n=screen.width/2-500,r=screen.height/2-800/2-30;window.open(c,"_blank","toolbar=no, location=yes, directories=no, status=yes, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=1000, height=800, top="+r+", left="+n)}else window.open(c,"DescriptiveWindowName"+StrUtil.getId(),"resizable,scrollbars=yes,status=1,width=1024, height=600, top=0, left=0")};static getImgPic=c=>new Promise(async(s,n)=>{let r=document.getElementById(c.id);const a=await b.loadModule("html2canvas");try{a(r,{logging:!1,allowTaint:!0,scale:window.devicePixelRatio,width:c.windowWidth,height:c.windowHeight,windowWidth:c.windowWidth,windowHeight:c.windowHeight,useCORS:!0,backgroundColor:"#ffffff00"}).then(function(o){let i=o.toDataURL("image/png");s(i)})}catch(o){n(o)}})}class u{static config={field:{page:{num:"num",size:"size"},result:{list:"list",pages:"pages",num:"num",size:"size",total:"total"}},dialog:{width:"980px",closeOnClickModal:!1},pagination:{layout:"total, sizes, prev, pager, next, jumper",pageSizes:[10,20,50,100],size:10,pagerCount:7,showTools:!1},size:{table:"default",form:"default",search:"default"},tools:{refresh:!0,expand:!1,search:!0,reset:!0,add:!0,delete:!0,export:{show:!0,dropdown:{show:!0,select:!0,page:!0,all:!0},fileName:"Export Data "}},form:{size:"default",labelWidth:"120px",stripe:!0,editAll:!1,maxSpan:12,defaultSpan:6,openBefore:void 0,openAfter:void 0,closeBefore:void 0,submitBefore:void 0,submitAfter:void 0},table:{labelWidth:"100px",size:"default",emptyText:"",headerCellClassName:"table-header",rowKey:"_id",highlightCurrentRow:!0,border:!0,selectable:!1,column:[],showOverflowTooltip:!0,showSummary:!1,summaryMethod:()=>[],inlineEdit:!1,operate:{width:void 0},add:!1,update:!0,delete:!0,sort:{props:{field:"sortField"},order:{field:"sortOrder",asc:"asc",desc:"desc"},resetPage:!1,change:void 0},fitHeight:!0},columnConfig:{type:"input",form:{width:"100%",spanCol:!1},table:{table:!0,minWidth:120,width:void 0,fixed:void 0,align:"center",showOverflowTooltip:!0,format:void 0,click:{callback:void 0,color:"#409EFF"},tooltip:void 0},show:{table:!0,search:!1,form:!0},sort:{search:0,table:0,form:0},disabled:{view:!0},options:{switch:{activeValue:!0,inactiveValue:!1,tableConfig:{change:!0,confirm:!0,loadList:!0}},treeSelect:{multiple:!0,renderAfterExpand:!1,showCheckbox:!0,checkStrictly:!0,checkOnClickNode:!0,props:{label:"title",children:"children"}},datetime:{type:"datetime"},select:{data:[],clearable:!0,filterable:!0,dataPath:"data.data",dataApiConfig:{once:!0,init:!0,create:!0,update:!0}},radio:{data:[],dataPath:"data.data",dataApiConfig:{once:!0,init:!0,create:!0,update:!0}}}}};static setConfig=c=>{u.config=ObjectUtil.deepMerge(u.config,c)}}class B{static customComponent={};static findOptions=(c,s)=>{const n=c.column.find(a=>a.key===s),r=a=>a.replace(/-([a-z])/g,(o,i)=>i.toUpperCase());if(n)return n.options[r(n.type)]};static setOptionsData=(c,s,n)=>{const r=B.findOptions(c,s);r&&(r.data=n)};static form={openBefore:{parentId:(c,s,n,r)=>{const a=u.config.table.rowKey;c?s.type===b.EDialog.Add?(s.form.parentId=c[a],s.form.sort=c.children.length+1):s.form.parentId=c.parentId.substring(c.parentId.lastIndexOf(",")+1):(s.form.parentId="0",s.form.sort=n.length+1),B.setOptionsData(r,"parentId",[{[a]:"0",title:"根",children:n}])}}}}function Se(t){return t}const L={search:"搜索",add:"新增",edit:"编辑",view:"查看",delete:"删除",export:"导出",exportSelect:"导出选中",exportPage:"导出本页",exportAll:"导出全部",import:"导入",refresh:"刷新",reset:"重置",expandCollapse:"展开/收缩",operation:"操作",close:"关闭",cancel:"取消",submit:"提交",confirm:"确认",confirmDelete:"确认删除",confirmDeleteMessage:"确认要删除【{count}】条数据吗?",placeholderInput:"请输入",placeholderSelect:"请选择",checkFormData:"请检查表单数据",selectDataToDelete:"请选择要删除的数据",selectDataToExport:"请选择要导出的数据",noData:"暂无数据",operationSuccess:"操作成功",switchOn:"开启",switchOff:"关闭",confirmModify:"确认修改",confirmSwitchMessage:"确认要修改吗?"};class h{static t(c,...s){if(typeof c=="function")return c(...s);c=String(c);let n=0;return c.replace(/{([^}]+)}/g,(r,a)=>n<s.length?String(s[n++]):`{${a}}`)}static setI18n=c=>{h.curd=ObjectUtil.deepMerge(h.curd,c)};static tCurd(c,...s){return this.t(this.curd[c],...s)}static curd=L}class E{static getIdFun=()=>StrUtil.uuid();static setId=(c,s,n)=>{s[c]||(s[c]=[]);const r=u.config.table.rowKey;s[c].forEach(a=>{n.forEach(o=>{let i=o.default??"";o.type==="number"&&(i=o.default??0),o.type==="boolean"&&(i=o.default??!1),o.type==="time"&&(i=o.default??new Date),a[o.value]===void 0&&(a[o.value]=i)}),a[r]||(a[r]=E.getIdFun())})};static add=(c,s,n,r)=>{const a=JSONUtil.cp(n);E.setId(c,s,n);const o=u.config.table.rowKey;s[c].push(a.reduce((i,m)=>{let f=m.default??"";return m.type==="number"&&(f=m.default??0),m.type==="boolean"&&(f=m.default??!1),m.type==="time"&&(f=m.default??new Date),i[m.value]=f,i},{[o]:E.getIdFun()})),r?.(s)};static remove=(c,s,n,r)=>{const a=u.config.table.rowKey;s[c]=s[c].filter(o=>o[a]!==n[a]),r?.(s)};static getNoIdData=(c,s)=>{const n=JSONUtil.cp(c),r=u.config.table.rowKey;return n.forEach(a=>{a[r]&&delete a[r],s&&a[s]&&E.getNoIdData(a[s],s)}),n}}const M={key:0,class:"column curd-form-com-list",style:{width:"100%",gap:"10px"}},A={key:0},H={class:"row items-center",style:{gap:"10px",width:"100%"}},j={key:1},N=e.defineComponent({__name:"list",props:{row:{default:{}},label:{default:"label"},value:{default:"value"},itemFields:{default:[{label:"label",value:"label"},{label:"value",value:"value"}]},field:{default:"value"},inputWidth:{default:"120px"},inputClass:{default:""},addBottom:{default:!1}},emits:["change"],setup(t,{emit:c}){const s=t,n=e.reactive({show:!1,add:(a,o,i)=>{E.add(a,o,i,()=>{r("change")})},remove:(a,o,i)=>{E.remove(a,o,i,()=>{r("change")})}});e.onMounted(()=>{E.setId(s.field,s.row,s.itemFields),n.show=!0});const r=c;return(a,o)=>{const i=e.resolveComponent("el-button"),m=e.resolveComponent("el-input");return n.show?(e.openBlock(),e.createElementBlock("div",M,[e.renderSlot(a.$slots,"list-start",{row:t.row}),t.addBottom?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",A,[e.createVNode(i,{link:"",type:"primary",onClick:o[0]||(o[0]=f=>n.add(t.field,t.row,t.itemFields))},{default:e.withCtx(()=>[...o[3]||(o[3]=[e.createTextVNode("添加",-1)])]),_:1})])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.row[t.field],f=>(e.openBlock(),e.createElementBlock("div",H,[e.renderSlot(a.$slots,"item-start",{item:f,row:t.row}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.itemFields,g=>(e.openBlock(),e.createBlock(m,{modelValue:f[g.value],"onUpdate:modelValue":l=>f[g.value]=l,style:e.normalizeStyle({width:t.inputWidth}),class:e.normalizeClass(t.inputClass),placeholder:g[t.label]||g[t.value],onChange:o[1]||(o[1]=l=>r("change"))},null,8,["modelValue","onUpdate:modelValue","style","class","placeholder"]))),256)),e.renderSlot(a.$slots,"item-end",{item:f,row:t.row}),e.createVNode(i,{link:"",type:"danger",onClick:g=>n.remove(t.field,t.row,f)},{default:e.withCtx(()=>[...o[4]||(o[4]=[e.createTextVNode("删除",-1)])]),_:1},8,["onClick"])]))),256)),t.addBottom?(e.openBlock(),e.createElementBlock("div",j,[e.createVNode(i,{link:"",type:"primary",onClick:o[2]||(o[2]=f=>n.add(t.field,t.row,t.itemFields))},{default:e.withCtx(()=>[...o[5]||(o[5]=[e.createTextVNode("添加",-1)])]),_:1})])):e.createCommentVNode("",!0),e.renderSlot(a.$slots,"list-end",{row:t.row})])):e.createCommentVNode("",!0)}}}),I={class:"row form-item-content",style:{width:"100%"}},R={class:"col"},K={class:"col"},J=["innerHTML"],F=e.defineComponent({__name:"column",props:{option:{default:{}},type:{default:""}},setup(t,{expose:c}){const s=b.isFun,n=b.EDialog,r=e.ref(),a=t,o=e.reactive({rules:{},show:!0,form:{},formDefault:{},type:a.type||n.Add,formColumn:[],getDisabled:i=>o.type===n.View?i.disabled?.view===void 0?!0:i.disabled?.view:i.disabled?.[o.type===n.Add?"create":"update"],getBind:i=>i.options?.[o.type===n.Add?"formAdd":"formUpdate"]?.[i.type]||i.options?.[i.type]||{},getOn:i=>i.options?.[o.type===n.Add?"formAdd":"formUpdate"]?.[i.type]?.on||i.options?.[i.type]?.on||{},getColumnSpan:(i,m)=>{if(i.item.form?.spanCol){const f=a.option.form?.maxSpan||12,g=a.option.form?.defaultSpan||f/2,d=m.filter(k=>!b.isFun(k.item.show?.form,o.form,o.type)).reduce((k,y)=>k+(y.item.form?.span||g),0);return(i.item.form?.span||g)+d}return i.item.form?.span},initColumnForm:()=>{const i=a.option;o.formColumn=[],o.rules={},o.formDefault={};const m=[],f=a.option.form?.maxSpan||12,g=a.option.form?.defaultSpan||f/2;let l=[];const d=y=>{if(y.children){y.children.forEach(w=>{d(w)});return}if(o.formDefault[y.key]=y.value,y.isForm&&(typeof y.show?.form!="boolean"||y.show?.form)){y.form=y.form||{span:g},y.form.span=y.form.span??g;const w=y.form.span,V=l.reduce((D,z)=>D+z.span,w),S=l.length;if(l.push({item:y,span:w}),(S===1&&l[0].span===0||V>=f||w===0&&S>1)&&(m.push(l),l=[]),y.rules){const D={input:h.tCurd("placeholderInput"),select:h.tCurd("placeholderSelect")},z=(D[y.type]||D.input)+y.label;o.rules[y.key]=typeof y.rules=="boolean"?[{required:!0,message:z,trigger:"blur"}]:y.rules}}},k=(y,w)=>{y.isForm=w,Array.isArray(y.children)&&y.children.forEach(V=>k(V,w))};i.column.forEach(y=>{k(y,!0),d(y)}),l.length>0&&m.push(l),o.formColumn=m,o.form=JSONUtil.cp(o.formDefault)}});return o.initColumnForm(),c({ref:r,conf:o}),(i,m)=>(e.openBlock(),e.createBlock(e.unref(p.ElForm),{ref_key:"ruleFormRef",ref:r,model:o.form,rules:o.rules},{default:e.withCtx(()=>[o.show?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(o.formColumn,(f,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g},[e.unref(s)(f.map(l=>l.item?.show?.form),o.form,o.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row curd-row",{stripe:t.option.form?.stripe===void 0?!0:t.option.form?.stripe}])},[e.renderSlot(i.$slots,"form-start",{row:o.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f,l=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:l.item.key},[e.unref(s)(l.item.show?.form,o.form,o.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([l.item.form.span>0?`col-${o.getColumnSpan(l,f)}`:"col",`form-item-col-${l.item.key}`])},[e.createVNode(e.unref(p.ElFormItem),{label:l.item.text?.form?.label??l.item.label,prop:l.item.key,"label-width":l.item.text?.form?.label==""?0:l.item.form?.labelWidth||t.option.form?.labelWidth||"100px"},{default:e.withCtx(()=>[e.createElementVNode("div",I,[e.renderSlot(i.$slots,"form-"+l.item.key+"-start",{row:o.form,item:l.item}),e.createElementVNode("div",R,[e.createElementVNode("div",K,[e.renderSlot(i.$slots,"form-"+l.item.key,{row:o.form,item:l.item},()=>[l.item.type==="input"?(e.openBlock(),e.createBlock(e.unref(p.ElInput),e.mergeProps({key:0,modelValue:o.form[l.item.key],"onUpdate:modelValue":d=>o.form[l.item.key]=d},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):l.item.type==="switch"?(e.openBlock(),e.createBlock(e.unref(p.ElSwitch),e.mergeProps({key:1,modelValue:o.form[l.item.key],"onUpdate:modelValue":d=>o.form[l.item.key]=d},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):l.item.type==="select"?(e.openBlock(),e.createBlock(e.unref(p.ElSelect),e.mergeProps({key:2,modelValue:o.form[l.item.key],"onUpdate:modelValue":d=>o.form[l.item.key]=d},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.item.options?.select?.data,d=>(e.openBlock(),e.createBlock(e.unref(p.ElOption),{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):l.item.type==="radio"?(e.openBlock(),e.createBlock(e.unref(p.ElRadioGroup),e.mergeProps({key:3,modelValue:o.form[l.item.key],"onUpdate:modelValue":d=>o.form[l.item.key]=d},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.item.options?.radio?.data,d=>(e.openBlock(),e.createBlock(e.unref(p.ElRadio),{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):l.item.type==="list"?(e.openBlock(),e.createBlock(N,e.mergeProps({key:4,row:o.form,field:l.item.key},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item),style:{width:"100%"}}),null,16,["row","field","disabled"])):l.item.type==="treeSelect"?(e.openBlock(),e.createBlock(e.unref(p.ElTreeSelect),e.mergeProps({key:5,modelValue:o.form[l.item.key],"onUpdate:modelValue":d=>o.form[l.item.key]=d},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item),style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","disabled"])):l.item.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(p.ElDatePicker),e.mergeProps({key:6,modelValue:o.form[l.item.key],"onUpdate:modelValue":d=>o.form[l.item.key]=d},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):l.item.type&&(e.unref(B).customComponent[l.item.type]||e.unref(B).customComponent[l.item.type]?.form)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[l.item.type]?.form||e.unref(B).customComponent[l.item.type]),e.mergeProps({key:7,modelValue:o.form[l.item.key],"onUpdate:modelValue":d=>o.form[l.item.key]=d},{ref_for:!0},o.getBind(l.item),e.toHandlers(o.getOn(l.item)),{disabled:o.getDisabled(l.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(i.$slots,"form-"+l.item.key+"-right",{row:o.form,item:l.item})]),e.renderSlot(i.$slots,"form-"+l.item.key+"-tip",{row:o.form,item:l.item},()=>[l.item.form?.tipText?(e.openBlock(),e.createElementBlock("div",{key:0,class:"form-tip-text",innerHTML:typeof l.item.form?.tipText=="function"?l.item.form?.tipText(o.form,o.type):l.item.form?.tipText},null,8,J)):e.createCommentVNode("",!0)])]),e.renderSlot(i.$slots,"form-"+l.item.key+"-end",{row:o.form,item:l.item})])]),_:2},1032,["label","prop","label-width"])],2)):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(i.$slots,"form-end",{row:o.form})],2)):e.createCommentVNode("",!0)],64))),128)):e.createCommentVNode("",!0)]),_:3},8,["model","rules"]))}});class ${static exportToExcel=async(c,s,n)=>{if(!c||c.length===0)return;const r=await b.loadModule("xlsx"),a=c.map(m=>{const f={};return s.forEach(g=>{f[g.label]=m[g.key]}),f}),o=r.utils.json_to_sheet(a),i=r.utils.book_new();r.utils.book_append_sheet(i,o,"Sheet1"),n?typeof n=="function"&&(n=n()):n=`导出数据_${new Date().Format("yyyy-MM-dd")}_${new Date().getTime()}`,r.writeFile(i,`${n}.xlsx`)}}const x=b.EDialog,W=t=>{const c=e.ref(),s=e.ref(),n=e.reactive({option:t.option,search:{column:{list:[]},form:{},formDefault:{},getPlaceholder:(r,a=h.tCurd("placeholderInput"))=>r.text?.search?.placeholder===void 0?`${a}${r.label}`:r.text?.search?.placeholder,getFormData:()=>{let r={};t.option.column.forEach(o=>{(typeof o.show?.search=="function"?o.show?.search(n.search.form):o.show?.search)&&(r[o.key]=n.search.form[o.key])});const a=t.option.search?.before?.(r);return a&&(r=a),r},reset:()=>{const r=n.search.formDefault;Object.keys(r).forEach(a=>{t.option.search?.resetMode==="none"?r[a]=void 0:r[a]=n.search.formDefault[a]}),n.search.form=JSONUtil.cp(r),n.page.num=1,t.option.init!==!1&&n.table.getList()},submit:()=>{n.page.num=1,n.table.getList()}},page:{num:1,total:0,layout:t.option.page?.layout||u.config.pagination.layout,showTools:t.option.page?.showTools||u.config.pagination.showTools,size:t.option.page?.size||u.config.pagination.size,sizeList:t.option.page?.sizeList||u.config.pagination.pageSizes,pagerCount:t.option.page?.pagerCount||u.config.pagination.pagerCount,getQuery:(r={})=>({[u.config.field.page.size]:r.size||n.page.size,[u.config.field.page.num]:r.num||n.page.num,...n.search.getFormData()})},table:{op:{width:(...r)=>r.filter(o=>o).length*30+60},loading:!1,data:[],expand:{isExpand:!1,rowKeys:[],change:(r,a)=>{},all:()=>{if(n.table.expand.isExpand)n.table.expand.rowKeys=[];else{const r=a=>{let o=[];return a.forEach(i=>{o.push(i[t.option.table.rowKey]),i.children&&i.children.length>0&&(o=o.concat(r(i.children)))}),o};n.table.expand.rowKeys=r(n.table.data)}n.table.expand.isExpand=!n.table.expand.isExpand}},column:{list:[],show:{listSource:[],list:[]}},getList:async()=>{n.table.loading=!0;const r=t.option.api.list;try{await n.initApiData("init");let a={};if(n.table.sort.prop){const{props:d,order:k}=u.config.table.sort;a={[d.field]:n.table.sort.prop,[k.field]:n.table.sort.order}}const o=await r({...n.page.getQuery(),...a}),i=u.config.field.result,m=o.data||{[i.list]:o};let f=(Array.isArray(m[i.list]),m[i.list]);const g=n.update.formColumn.flat(),l=JSONUtil.cp(f).map(d=>(Object.keys(d).forEach(y=>{const w=g.find(V=>V.item.key===y);w&&["select","radio"].includes(w.item.type)&&(w.item.table.format||(w.item.table.format=V=>w.item.options[w.item.type].data?.find(S=>S.value==V[y])?.label||V[y]))}),d));n.table.data=t.option.data?await t.option.data(l,f):l,n.page.total=m[i.total]||0}catch(a){console.error(a)}finally{n.table.loading=!1}},selection:{list:[],change:r=>{n.table.selection.list=r}},sort:{prop:"",order:"",change:r=>{u.config.table.sort.resetPage&&(n.page.num=1);const a=u.config.table.sort;if(a.change){a.change(r,n);return}n.table.sort.prop=r.prop,r.order===null?n.table.sort.order="":n.table.sort.order=r.order==="ascending"?a.order.asc:a.order.desc,n.table.getList()}}},export:{run:{start:async r=>{let a=await n.export.run[r](),o=t.option.column;const i=JSONUtil.cp({data:a,columns:o}),m=t.option.tools?.export||{};m.before&&m.before(i),$.exportToExcel(i.data,i.columns,m.fileName)},select:async()=>{n.export.loading=!0;try{if(t.option.tools?.export?.select){await t.option.tools?.export?.select({...n.page.getQuery(),items:n.table.selection.list});return}if(n.table.selection.list.length===0)throw b.fail(h.tCurd("selectDataToExport")),new Error(h.tCurd("selectDataToExport"));return n.table.selection.list}catch(r){console.error(r)}finally{n.export.loading=!1}},page:async()=>{n.export.loading=!0;try{if(t.option.tools?.export?.page){await t.option.tools?.export?.page({...n.page.getQuery()});return}if(n.table.data.length===0)throw b.fail(h.tCurd("noData")),new Error(h.tCurd("noData"));return n.table.data}catch(r){console.error(r)}finally{n.export.loading=!1}},all:async()=>{n.export.loading=!0;try{if(t.option.tools?.export?.all){await t.option.tools?.export?.all({...n.page.getQuery()});return}const r=t.option.api.list,a=await r({...n.page.getQuery({size:999999,num:1})});return(a.data||{[u.config.field.result.list]:a})[u.config.field.result.list]}catch(r){console.error(r)}finally{n.export.loading=!1}}},loading:!1,click:r=>{n.export.loading||n.export.run.start(r)}},update:{title:"",rules:{},show:!1,showContent:!1,loading:!1,type:x.Add,form:{},formDefault:{},formColumn:[],getDisabled:r=>n.update.type===x.View?r.disabled?.view===void 0?!0:r.disabled?.view:r.disabled?.[n.update.type===x.Add?"create":"update"],getBind:r=>r.options?.[n.update.type===x.Add?"formAdd":"formUpdate"]?.[r.type]||r.options?.[r.type]||{},getOn:r=>r.options?.[n.update.type===x.Add?"formAdd":"formUpdate"]?.[r.type]?.on||r.options?.[r.type]?.on||{},getOptions:r=>{try{const o=n.update.formColumn.flat().find(i=>i.item.key===r)?.item;return o?{options:o.options,bind:n.update.getBind(o)}:{options:{},bind:{}}}catch{return{options:{},bind:{}}}},edit:{data:{},getApiData:r=>{if(t.option.form?.editAll)return r;let a={[t.option.table?.rowKey]:n.update.edit.data[t.option.table?.rowKey]};return Object.keys(n.update.edit.data).forEach(o=>{r[o]!==n.update.edit.data[o]&&(a[o]=r[o])}),a}},view:{},open:(r,a)=>{n.update.showContent||FunUtil.throttle(async()=>{b.loading(!0);try{n.update.type=r,await n.initApiData("update");const o=r===x.Add;n.update.edit.data=a,n.update.title=h.tCurd(o?"add":r===x.View?"view":"edit"),n.update.form=JSONUtil.cp(o?n.update.formDefault:a),await t.option.form?.openBefore?.(n.update.form,n.update),(!t.option.table?.inlineEdit||o)&&(n.update.show=!0,n.update.showContent=!0),t.option.form?.openAfter?.(n.update.form,n.update)}catch(o){console.error(o)}finally{b.loading(!1)}})},submit:()=>{FunUtil.throttle(async()=>{await s.value?.validate(async(i,m)=>new Promise((f,g)=>{i||(b.fail(h.tCurd("checkFormData")),g(!1)),f()})),n.update.loading=!0;const r=n.update.type===x.Add?t.option.api.create:t.option.api.update;try{await t.option.form?.submitBefore?.(n.update.form,n.update)}catch{n.update.loading=!1;return}let a=JSONUtil.cp(n.update.form);delete a.children;const o=new Set(t.option.column.filter(i=>i.type==="datetime").map(i=>i.key));Object.keys(a).forEach(i=>{if(o.has(i)&&a[i]!=null){const m=new Date(a[i]).getTime();isNaN(m)||(a[i]=m)}});try{if(!r)return;await r({...a}),n.update.close(),await n.table.getList(),t.option.form?.submitAfter?.(a,n.update)}catch(i){console.error(i)}finally{n.update.loading=!1}})},close:()=>{n.update.show=!1,t.option.table?.inlineEdit&&(n.update.form={}),setTimeout(()=>{n.update.showContent=!1},350)}},remove:{title:h.tCurd("confirmDelete"),show:!1,items:[],loading:!1,close:()=>{n.remove.show=!1},open:r=>{if(r.length===0){b.fail(h.tCurd("selectDataToDelete"));return}n.remove.items=r,n.remove.show=!0},submit:()=>{FunUtil.throttle(async()=>{n.remove.loading=!0;const r=t.option.api.delete;try{if(!r)return;await r({[t.option.table?.rowKey]:n.remove.items.map(a=>a[t.option.table?.rowKey]),items:n.remove.items}),b.success(h.tCurd("operationSuccess")),n.table.data.length<=1&&n.page.num>1&&(n.page.num-=1),n.remove.close(),await n.table.getList()}catch(a){console.error(a)}finally{n.remove.loading=!1}})}},init:()=>{n.initCurdConfig(),n.initColumnOptions(),n.initColumnForm()},apiDataMap:{},initApiData:async r=>{const a=[],o=i=>{if(i.children&&i.children.length){i.children.forEach(m=>o(m));return}if(i.options?.[i.type]?.dataApi&&i.options?.[i.type]?.dataApiConfig?.[r]){if(n.apiDataMap[i.key]&&i.options?.[i.type]?.dataApiConfig?.once)return;const m=(async()=>{try{let f=await i.options?.[i.type]?.dataApi?.(n.update.form,r);if(f){const g=i.options?.[i.type]?.dataPath;!Array.isArray(f)&&g&&(f=ObjectUtil.getPathValue(f,g)),i.options[i.type].data=f,i.options.search[i.type].data=f,i.options.formAdd[i.type].data=f,i.options.formUpdate[i.type].data=f,n.apiDataMap[i.key]=f}}catch{}})();a.push(m)}};return t.option.column.forEach(i=>{o(i)}),await Promise.all(a),!0},initCurdConfig:()=>{const r=JSONUtil.cp(u.config);r.table.emptyText=h.tCurd("noData"),t.option.size=t.option.size||{},r.table.size=t.option.size.table||r.size.table,r.form.size=t.option.size.form||r.size.form,r.size.search=t.option.size.search||r.size.search;const a=ObjectUtil.deepMerge(r,t.option||{});Object.keys(a).forEach(o=>{t.option[o]=a[o]})},initColumnOptions:()=>{let r=JSONUtil.cp(u.config.columnConfig);r.options=ObjectUtil.deepMerge({switch:{activeText:h.tCurd("switchOn"),inactiveText:h.tCurd("switchOff")}},r.options);const a=o=>{for(const i in r){if(i==="table"){if(o.table=ObjectUtil.deepMerge(r.table,o.table||{}),o.children){o.children.forEach(f=>{a(f)});return}}else i==="type"?o.type=o.type||r.type:o[i]=ObjectUtil.deepMerge(r[i],o[i]||{});o.options=o.options||{},o.options[o.type]=o.options[o.type]||{},o.options[o.type].size=t.option.size.form,["search","formAdd","formUpdate"].forEach(f=>{o.options[f]=o.options[f]||JSONUtil.cp(o.options),o.options[f][o.type]=o.options[f][o.type]||{},o.options[f][o.type].size=f==="search"?t.option.size.search:t.option.size.form}),o.table=ObjectUtil.deepMerge(o.table,o.options[o.type].table||{})}o.type==="switch"&&(o.options.switch.tableBeforeChange=async(i,m)=>{const f=o.options?.switch;try{f.tableConfig?.confirm&&await c.value?.open({title:h.tCurd("confirmModify"),content:h.tCurd("confirmSwitchMessage")});try{if(!t.option.api.update&&!f.tableConfig?.api)return;const g=m[t.option.table?.rowKey];f.loadingMap||(f.loadingMap={}),f.loadingMap[g]||(f.loadingMap[g]={loading:!1}),f.loadingMap[g].loading=!0;const l=m[i]===f.activeValue?f.inactiveValue:f.activeValue,d=f.tableConfig?.api?f.tableConfig.api:t.option.api.update;if(!d)return;try{await d({...m,[i]:l},"switch")}catch{return!1}finally{f.loadingMap[g].loading=!1}return b.success(h.tCurd("operationSuccess")),f.tableConfig?.loadList&&(n.table.loading=!0,n.table.getList(),n.table.loading=!1),!0}catch(g){return console.error(g),!1}finally{n.table.loading=!1}}catch{return!1}}),o.type==="treeSelect"&&(o.options.treeSelect.rowKey=t.option.table?.rowKey,o.options.treeSelect.nodeKey=t.option.table?.rowKey)};t.option.column.forEach(a),t.option.table?.column?.forEach(a)},getColumnSpan:(r,a)=>{if(r.item.form?.spanCol){const o=u.config.form.defaultSpan,m=a.filter(f=>!b.isFun(f.item.show?.form,n.update.form,n.update.type)).reduce((f,g)=>f+(g.item.form?.span||o),0);return(r.item?.form.span||o)+m}return r.item.form.span},initColumnForm:()=>{const r=t.option;n.update.formColumn=[],n.table.column.show={list:[],listSource:[]};const a=[],o=t.option.form?.maxSpan||12,i=t.option.form?.defaultSpan||o/2;let m=[];const f=d=>{if(d.children){n.table.column.show.list.push(d.key),d.children.forEach(k=>{f(k)});return}if(n.update.formDefault[d.key]=d.value,d.table.table&&(d.show.table&&n.table.column.show.list.push(d.key),d.table.table&&n.table.column.show.listSource.push(d.key)),!(d.isForm&&typeof d.show?.form=="boolean")||d.show?.form){d.form=d.form||{span:i},d.form.span=d.form.span??i;let k=d.form.span,y=m.reduce((V,S)=>V+S.span,k);const w=m.length;if(m.push({item:d,span:k}),(w===1&&m[0].span===0||y>=o||k===0&&w>1)&&(a.push(m),m=[]),d.rules){const V={input:h.tCurd("placeholderInput"),select:h.tCurd("placeholderSelect")},S=(V[d.type]||V.input)+d.label;n.update.rules[d.key]=typeof d.rules=="boolean"?[{required:!0,message:S,trigger:"blur"}]:d.rules}}},g=(d,k)=>{d.isForm=k,Array.isArray(d.children)&&d.children.forEach(y=>g(y,k))};r.column.forEach(d=>{d.isForm=!0,g(d,!0),f(d)}),t.option.table?.column?.forEach(d=>{g(d,!1),f(d)}),n.search.column.list=r.column.concat(r.table?.column||[]),n.table.column.list=n.search.column.list.filter(d=>d.table?.table),n.search.column.list.sort((d,k)=>d.sort?.search-k.sort?.search),n.table.column.list.sort((d,k)=>d.sort?.table-k.sort?.table),m.length>0&&a.push(m),n.update.formColumn=a;const l=t.option.search?.formDefault;l&&Object.keys(l).forEach(d=>{n.search.formDefault[d]=l[d]}),r.column.forEach(d=>{d.show?.search||(n.search.formDefault[d.key]=void 0)}),n.search.form=JSONUtil.cp(n.search.formDefault)}});return n.init(),e.onMounted(()=>{t.option.init!==!1&&n.table.getList()}),{conf:n,switchConfirmRef:c,ruleFormRef:s}},q={class:"dialog-footer"},Q=e.defineComponent({__name:"switchConfirm",props:{size:{}},setup(t,{expose:c}){const s=e.ref(!1),n=e.ref("确认修改"),r=e.ref("确认要修改状态吗?");let a=null,o=null;const i=g=>(g?.title&&(n.value=g.title),g?.content&&(r.value=g.content),s.value=!0,new Promise((l,d)=>{a=l,o=d})),m=()=>{s.value=!1,a?.(!0),a=null,o=null},f=()=>{s.value=!1,o?.(new Error("用户取消操作")),a=null,o=null};return c({open:i}),(g,l)=>{const d=e.resolveComponent("el-form");return e.openBlock(),e.createBlock(e.unref(p.ElDialog),{modelValue:s.value,"onUpdate:modelValue":l[0]||(l[0]=k=>s.value=k),title:n.value,"close-on-click-modal":!1,width:"400px"},{footer:e.withCtx(()=>[e.createVNode(d,{size:t.size},{default:e.withCtx(()=>[e.createElementVNode("span",q,[e.createVNode(e.unref(p.ElButton),{onClick:f},{default:e.withCtx(()=>[...l[1]||(l[1]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(p.ElButton),{type:"primary",onClick:m},{default:e.withCtx(()=>[...l[2]||(l[2]=[e.createTextVNode("确认",-1)])]),_:1})])]),_:1},8,["size"])]),default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(r.value),1)]),_:1},8,["modelValue","title"])}}}),O=(t,c)=>{const s=t.__vccOpts||t;for(const[n,r]of c)s[n]=r;return s},G={},X={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function Y(t,c){return e.openBlock(),e.createElementBlock("svg",X,[...c[0]||(c[0]=[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"},null,-1)])])}const Z=O(G,[["render",Y]]),P={},_={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function v(t,c){return e.openBlock(),e.createElementBlock("svg",_,[...c[0]||(c[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m23.744 191.488c-52.096 0-92.928 14.784-123.2 44.352-30.976 29.568-45.76 70.4-45.76 122.496h80.256c0-29.568 5.632-52.8 17.6-68.992 13.376-19.712 35.2-28.864 66.176-28.864 23.936 0 42.944 6.336 56.32 19.712 12.672 13.376 19.712 31.68 19.712 54.912 0 17.6-6.336 34.496-19.008 49.984l-8.448 9.856c-45.76 40.832-73.216 70.4-82.368 89.408-9.856 19.008-14.08 42.24-14.08 68.992v9.856h80.96v-9.856c0-16.896 3.52-31.68 10.56-45.76 6.336-12.672 15.488-24.64 28.16-35.2 33.792-29.568 54.208-48.576 60.544-55.616 16.896-22.528 26.048-51.392 26.048-86.592q0-64.416-42.24-101.376c-28.16-25.344-65.472-37.312-111.232-37.312m-12.672 406.208a54.27 54.27 0 0 0-38.72 14.784 49.4 49.4 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.85 54.85 0 0 0 523.072 768c15.488 0 28.16-4.928 38.72-14.784a51.52 51.52 0 0 0 16.192-38.72 51.97 51.97 0 0 0-15.488-38.016 55.94 55.94 0 0 0-39.424-14.784"},null,-1)])])}const ee=O(P,[["render",v]]),te={class:"row flex-center table-header-label inline"},oe={class:"table-header-tooltip"},ne={key:1},ae=["onClick","innerHTML"],le=e.defineComponent({__name:"tableColumn",props:{conf:{},columnList:{},option:{}},setup(t){const c=b.isFun,s=e.getCurrentInstance().type;return(n,r)=>{const a=e.resolveComponent("el-tooltip");return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columnList,o=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:o.key},[t.conf.table.column.show.list.includes(o.key)?(e.openBlock(),e.createBlock(e.unref(p.ElTableColumn),e.mergeProps({key:0,prop:o.key,label:o.label},{ref_for:!0},o.table),{header:e.withCtx(()=>[e.renderSlot(n.$slots,"table-header-"+o.key,{item:o},()=>[e.createElementVNode("div",te,[o.table?.tooltip?(e.openBlock(),e.createBlock(a,{key:0,effect:"dark",content:o.table?.tooltip,placement:"top"},{default:e.withCtx(()=>[e.createElementVNode("span",oe,[e.createVNode(ee)])]),_:1},8,["content"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(o.label),1)])])]),default:e.withCtx(({row:i})=>[o.children?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[r[0]||(r[0]=e.createTextVNode("   ",-1)),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(s)),{conf:t.conf,columnList:o.children,option:t.option},e.createSlots({_:2},[e.renderList(n.$slots,(m,f)=>({name:f,fn:e.withCtx(g=>[e.renderSlot(n.$slots,f,e.mergeProps({ref_for:!0},g||{}))])}))]),1032,["conf","columnList","option"]))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.conf.update.type===e.unref(b).EDialog.Update&&e.unref(c)(o.show?.form,t.conf.update.form,e.unref(b).EDialog.Update)&&t.option.table?.inlineEdit&&t.conf.update.form[t.option.table?.rowKey]===i[t.option.table?.rowKey]&&(o.type==="input"||o.type==="select")?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.type==="input"?(e.openBlock(),e.createBlock(e.unref(p.ElInput),e.mergeProps({key:0,modelValue:t.conf.update.form[o.key],"onUpdate:modelValue":m=>t.conf.update.form[o.key]=m,disabled:t.conf.update.getDisabled(o)},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o)),{style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","disabled"])):o.type==="select"?(e.openBlock(),e.createBlock(e.unref(p.ElSelect),e.mergeProps({key:1,modelValue:t.conf.update.form[o.key],"onUpdate:modelValue":m=>t.conf.update.form[o.key]=m,disabled:t.conf.update.getDisabled(o)},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o)),{style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options?.search?.select?.data||o.options?.select?.data,m=>(e.openBlock(),e.createBlock(e.unref(p.ElOption),{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):o.type==="switch"?(e.openBlock(),e.createBlock(e.unref(p.ElSwitch),e.mergeProps({key:2,modelValue:t.conf.update.form[o.key],"onUpdate:modelValue":m=>t.conf.update.form[o.key]=m},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o)),{disabled:t.conf.update.getDisabled(o)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)],64)):e.renderSlot(n.$slots,"table-"+o.key,{key:1,row:i,item:o},()=>[e.unref(B).customComponent[o.type??""]?.table?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[o.type??""]?.table),e.mergeProps({key:0,modelValue:i[o.key],"onUpdate:modelValue":m=>i[o.key]=m},{ref_for:!0},o.options?.[o.type??""],e.toHandlers(o.options?.[o.type??""]?.on||{})),null,16,["modelValue","onUpdate:modelValue"])):o.type==="switch"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[o.options?.switch?.tableConfig?.change?(e.openBlock(),e.createBlock(e.unref(p.ElSwitch),e.mergeProps({key:0,modelValue:i[o.key],"onUpdate:modelValue":m=>i[o.key]=m,loading:o.options?.switch?.loadingMap?.[i[t.option.table?.rowKey]]?.loading,"before-change":()=>o.options?.switch?.tableBeforeChange?.(o.key,i)},{ref_for:!0},o.options?.switch),null,16,["modelValue","onUpdate:modelValue","loading","before-change"])):(e.openBlock(),e.createElementBlock("span",ne,e.toDisplayString(i[o.key]===o.options?.switch?.activeValue?o.options?.switch?.activeText:o.options?.switch?.inactiveText),1))],64)):(e.openBlock(),e.createElementBlock("span",{key:2,style:e.normalizeStyle({"--table-text-click-color":o.table?.click?.color}),class:e.normalizeClass({"table-text-click":o.table?.click?.callback}),onClick:m=>o.table?.click?.callback?.(i),innerHTML:o.table?.format?o.table?.format(i):i[o.key]},null,14,ae))])],64))]),_:2},1040,["prop","label"])):e.createCommentVNode("",!0)],64))),128)}}}),re={class:"row form-item-content",style:{width:"100%"}},ie={class:"col column form-item-content-item"},de={class:"col"},ce=["innerHTML"],se=e.defineComponent({__name:"formColumn",props:{conf:{},item:{}},setup(t){return(c,s)=>(e.openBlock(),e.createBlock(e.unref(p.ElFormItem),{label:t.item.item.text?.form?.label??t.item.item.label,prop:t.item.item.key,"label-width":t.item.item.text?.form?.label==""?0:t.item.item.form?.labelWidth||t.conf.option.form?.labelWidth},{default:e.withCtx(()=>[e.createElementVNode("div",re,[e.renderSlot(c.$slots,"form-"+t.item.item.key+"-start",{row:t.conf.update.form,item:t.item.item}),e.createElementVNode("div",ie,[e.createElementVNode("div",de,[e.renderSlot(c.$slots,"form-"+t.item.item.key,{row:t.conf.update.form,item:t.item.item},()=>[t.item.item.type==="input"?(e.openBlock(),e.createBlock(e.unref(p.ElInput),e.mergeProps({key:0,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":s[0]||(s[0]=n=>t.conf.update.form[t.item.item.key]=n)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item)}),null,16,["modelValue","disabled"])):t.item.item.type==="switch"?(e.openBlock(),e.createBlock(e.unref(p.ElSwitch),e.mergeProps({key:1,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":s[1]||(s[1]=n=>t.conf.update.form[t.item.item.key]=n)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item)}),null,16,["modelValue","disabled"])):t.item.item.type==="select"?(e.openBlock(),e.createBlock(e.unref(p.ElSelect),e.mergeProps({key:2,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":s[2]||(s[2]=n=>t.conf.update.form[t.item.item.key]=n)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.conf.update.getBind(t.item.item).data,n=>(e.openBlock(),e.createBlock(e.unref(p.ElOption),{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled"])):t.item.item.type==="radio"?(e.openBlock(),e.createBlock(e.unref(p.ElRadioGroup),e.mergeProps({key:3,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":s[3]||(s[3]=n=>t.conf.update.form[t.item.item.key]=n)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.conf.update.getBind(t.item.item).data,n=>(e.openBlock(),e.createBlock(e.unref(p.ElRadio),{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled"])):t.item.item.type==="list"?(e.openBlock(),e.createBlock(N,e.mergeProps({key:4,row:t.conf.update.form,field:t.item.item.key},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item),style:{width:"100%"}}),null,16,["row","field","disabled"])):t.item.item.type==="treeSelect"?(e.openBlock(),e.createBlock(e.unref(p.ElTreeSelect),e.mergeProps({key:5,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":s[4]||(s[4]=n=>t.conf.update.form[t.item.item.key]=n)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item),style:{width:"100%"}}),null,16,["modelValue","disabled"])):t.item.item.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(p.ElDatePicker),e.mergeProps({key:6,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":s[5]||(s[5]=n=>t.conf.update.form[t.item.item.key]=n)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item)}),null,16,["modelValue","disabled"])):t.item.item.type&&(e.unref(B).customComponent[t.item.item.type]||e.unref(B).customComponent[t.item.item.type]?.form)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[t.item.item.type]?.form||e.unref(B).customComponent[t.item.item.type]),e.mergeProps({key:7,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":s[6]||(s[6]=n=>t.conf.update.form[t.item.item.key]=n)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item)}),null,16,["modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(c.$slots,"form-"+t.item.item.key+"-right",{row:t.conf.update.form,item:t.item.item})]),e.renderSlot(c.$slots,"form-"+t.item.item.key+"-tip",{row:t.conf.update.form,item:t.item.item},()=>[t.item.item.form?.tipText?(e.openBlock(),e.createElementBlock("div",{key:0,class:"form-tip-text",innerHTML:typeof t.item.item.form?.tipText=="function"?t.item.item.form?.tipText(t.conf.update.form,t.conf.update.type):t.item.item.form?.tipText},null,8,ce)):e.createCommentVNode("",!0)])]),e.renderSlot(c.$slots,"form-"+t.item.item.key+"-end",{row:t.conf.update.form,item:t.item.item})])]),_:3},8,["label","prop","label-width"]))}}),fe={key:0,class:"relative curd-search fit-width"},me={class:"mb-10 flex justify-between items-center fit-width"},pe={class:"flex items-center",style:{gap:"10px"}},ge={key:0},he={key:1},ye={key:2},ke={class:"export-btn"},be={key:1,class:"export-btn"},ue={class:"flex items-center table-tools-right",style:{gap:"10px"}},we={class:"row justify-end mt-10 mb-10 table-bottom-pagination"},Ce={class:"dialog-footer"},Be={class:"dialog-footer"},T=e.defineComponent({__name:"index",props:{option:{default:{}}},setup(t,{expose:c}){const s=b.EDialog,n=t,r=b.isFun,{conf:a,switchConfirmRef:o,ruleFormRef:i}=W(n);return c({conf:a}),(m,f)=>{const g=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative cc1-form-box",[t.option.table?.fitHeight?"col":"no-min-height"]])},[e.createElementVNode("div",{class:e.normalizeClass(["row",[t.option.table?.fitHeight?"absolute fit":""]]),style:{overflow:"hidden"}},[e.renderSlot(m.$slots,"box-left"),e.createElementVNode("div",{class:e.normalizeClass(["column fit-width no-wrap",[t.option.table?.fitHeight?"col":""]])},[t.option.search?.show!==!1?(e.openBlock(),e.createElementBlock("div",fe,[e.createVNode(e.unref(p.ElForm),{model:e.unref(a).search.form,inline:"",size:t.option.size?.search},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"search-start",{row:e.unref(a).search.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a).search.column.list,l=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:l.key},[(typeof l.show?.search=="function"?l.show?.search(e.unref(a).search.form):l.show?.search)?(e.openBlock(),e.createBlock(e.unref(p.ElFormItem),{key:0,label:l.text?.search?.label??l.label},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"search-"+l.key,{row:e.unref(a).search.form},()=>[l.type==="input"?(e.openBlock(),e.createBlock(e.unref(p.ElInput),e.mergeProps({key:0,modelValue:e.unref(a).search.form[l.key],"onUpdate:modelValue":d=>e.unref(a).search.form[l.key]=d,placeholder:e.unref(a).search.getPlaceholder(l),clearable:"",disabled:l.disabled?.search},{ref_for:!0},l.options?.search?.input||l.options?.input,e.toHandlers(l.options?.search?.input?.on||l.options?.input?.on||{})),null,16,["modelValue","onUpdate:modelValue","placeholder","disabled"])):l.type==="switch"?(e.openBlock(),e.createBlock(e.unref(p.ElSelect),e.mergeProps({key:1,modelValue:e.unref(a).search.form[l.key],"onUpdate:modelValue":d=>e.unref(a).search.form[l.key]=d,placeholder:e.unref(a).search.getPlaceholder(l,e.unref(h).tCurd("placeholderSelect")),clearable:"",disabled:l.disabled?.search},{ref_for:!0},l.options?.search?.switch||l.options?.switch,e.toHandlers(l.options?.search?.switch?.on||l.options?.switch?.on||{})),{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(p.ElOption),{key:l.options?.switch?.activeValue,label:l.options?.switch?.activeText,value:l.options?.switch?.activeValue},null,8,["label","value"])),(e.openBlock(),e.createBlock(e.unref(p.ElOption),{key:l.options?.switch?.inactiveValue,label:l.options?.switch?.inactiveText,value:l.options?.switch?.inactiveValue},null,8,["label","value"]))]),_:2},1040,["modelValue","onUpdate:modelValue","placeholder","disabled"])):l.type==="select"?(e.openBlock(),e.createBlock(e.unref(p.ElSelect),e.mergeProps({key:2,modelValue:e.unref(a).search.form[l.key],"onUpdate:modelValue":d=>e.unref(a).search.form[l.key]=d,placeholder:e.unref(a).search.getPlaceholder(l,e.unref(h).tCurd("placeholderSelect")),clearable:"",disabled:l.disabled?.search},{ref_for:!0},l.options?.search?.select||l.options?.select,e.toHandlers(l.options?.search?.select?.on||l.options?.select?.on||{})),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.options?.select?.data,d=>(e.openBlock(),e.createBlock(e.unref(p.ElOption),{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","placeholder","disabled"])):l.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(p.ElDatePicker),e.mergeProps({key:3,modelValue:e.unref(a).search.form[l.key],"onUpdate:modelValue":d=>e.unref(a).search.form[l.key]=d,disabled:l.disabled?.search},{ref_for:!0},l.options?.search?.datetime||l.options?.datetime,e.toHandlers(l.options?.search?.datetime?.on||l.options?.datetime?.on||{})),null,16,["modelValue","onUpdate:modelValue","disabled"])):l.type&&e.unref(B).customComponent[l.type]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[l.type]),e.mergeProps({key:4,modelValue:e.unref(a).search.form[l.key],"onUpdate:modelValue":d=>e.unref(a).search.form[l.key]=d},{ref_for:!0},l.options?.search?.[l.type]||l.options?.[l.type],e.toHandlers(l.options?.search?.[l.type]?.on||l.options?.[l.type]?.on||{}),{disabled:l.disabled?.search}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(m.$slots,"search-"+l.key+"-right",{row:e.unref(a).search.form})]),_:2},1032,["label"])):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(m.$slots,"search-center",{row:e.unref(a).search.form}),t.option.tools?.search||t.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(p.ElFormItem),{key:0},{default:e.withCtx(()=>[t.option.tools?.search?(e.openBlock(),e.createBlock(e.unref(p.ElButton),{key:0,type:"primary",onClick:e.unref(a).search.submit},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("search")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),t.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(p.ElButton),{key:1,onClick:e.unref(a).search.reset},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("reset")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"search-end",{row:e.unref(a).search.form})]),_:3},8,["model","size"])])):e.createCommentVNode("",!0),e.createElementVNode("div",me,[e.createElementVNode("div",pe,[e.unref(r)(t.option.tools?.add)?(e.openBlock(),e.createElementBlock("div",ge,[e.createVNode(e.unref(p.ElButton),{type:"primary",onClick:f[0]||(f[0]=l=>e.unref(a).update.open(e.unref(s).Add)),size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("add")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),t.option.table?.selectable&&e.unref(r)(t.option.tools?.delete)?(e.openBlock(),e.createElementBlock("div",he,[e.createVNode(e.unref(p.ElButton),{type:"danger",onClick:f[1]||(f[1]=l=>e.unref(a).remove.open(e.unref(a).table.selection.list)),size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("delete")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),t.option.tools?.expand?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(e.unref(p.ElButton),{type:"warning",onClick:f[2]||(f[2]=l=>e.unref(a).table.expand.all()),size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("expandCollapse")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),t.option.tools?.export?.show?(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[t.option.tools?.export?.dropdown?.show?(e.openBlock(),e.createBlock(e.unref(p.ElDropdown),{key:0,onCommand:e.unref(a).export.click},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(p.ElDropdownMenu),{size:t.option.size?.search},{default:e.withCtx(()=>[t.option.tools?.export?.dropdown?.select&&(t.option.table?.selectable||e.unref(r)(t.option.tools?.delete))?(e.openBlock(),e.createBlock(e.unref(p.ElDropdownItem),{key:0,command:"select"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("exportSelect")),1)]),_:1})):e.createCommentVNode("",!0),t.option.tools?.export?.dropdown?.page?(e.openBlock(),e.createBlock(e.unref(p.ElDropdownItem),{key:1,command:"page"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("exportPage")),1)]),_:1})):e.createCommentVNode("",!0),t.option.tools?.export?.dropdown?.all?(e.openBlock(),e.createBlock(e.unref(p.ElDropdownItem),{key:2,command:"all"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("exportAll")),1)]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["size"])]),default:e.withCtx(()=>[e.createElementVNode("div",ke,[e.createVNode(e.unref(p.ElButton),{type:"warning",loading:e.unref(a).export.loading,size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("export")),1)]),_:1},8,["loading","size"])])]),_:1},8,["onCommand"])):(e.openBlock(),e.createElementBlock("div",be,[e.createVNode(e.unref(p.ElButton),{type:"warning",loading:e.unref(a).export.loading,size:t.option.size?.search,onClick:f[3]||(f[3]=l=>e.unref(a).export.run.start("all"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("export")),1)]),_:1},8,["loading","size"])]))],64)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"tools-left")]),e.createElementVNode("div",ue,[e.renderSlot(m.$slots,"tools-right"),e.unref(a).page.showTools?(e.openBlock(),e.createBlock(e.unref(p.ElPagination),e.mergeProps({key:0,"current-page":e.unref(a).page.num,"onUpdate:currentPage":f[4]||(f[4]=l=>e.unref(a).page.num=l),"page-size":e.unref(a).page.size,"onUpdate:pageSize":f[5]||(f[5]=l=>e.unref(a).page.size=l),background:"","page-sizes":e.unref(a).page.sizeList,"pager-count":e.unref(a).page.pagerCount,layout:e.unref(a).page.layout,total:e.unref(a).page.total,size:t.option.size?.table,onSizeChange:e.unref(a).table.getList,onCurrentChange:e.unref(a).table.getList},t.option.page?.pagination||{},e.toHandlers(t.option.page?.pagination?.on||{})),null,16,["current-page","page-size","page-sizes","pager-count","layout","total","size","onSizeChange","onCurrentChange"])):e.createCommentVNode("",!0),t.option.tools?.refresh===void 0||t.option.tools?.refresh?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["refresh-btn",[t.option.size?.search]]),onClick:f[6]||(f[6]=(...l)=>e.unref(a).table.getList&&e.unref(a).table.getList(...l))},[e.createVNode(Z)],2)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(["fit-width relative form-box",[t.option.table?.fitHeight?"col ":""]])},[e.createElementVNode("div",{class:e.normalizeClass(["column form-box-content",[t.option.table?.fitHeight?"absolute fit":""]])},[e.withDirectives((e.openBlock(),e.createBlock(e.unref(p.ElTable),e.mergeProps({data:e.unref(a).table.data,border:t.option.table?.border===void 0?!0:t.option.table?.border,onSelectionChange:e.unref(a).table.selection.change,onSortChange:e.unref(a).table.sort.change,"expand-row-keys":e.unref(a).table.expand.rowKeys,onExpandChange:e.unref(a).table.expand.change},t.option.table,e.toHandlers(t.option.table?.on||{})),{default:e.withCtx(()=>[(typeof t.option.table?.selectable=="object"?t.option.table?.selectable?.show:t.option.table?.selectable)||e.unref(r)(t.option.tools?.delete)||t.option.tools?.export?.show&&t.option.tools?.export?.select?(e.openBlock(),e.createBlock(e.unref(p.ElTableColumn),e.mergeProps({key:0,type:"selection",width:"40",align:"center",fixed:"left","show-overflow-tooltip":!1,className:"cc1-form-selectable-column"},typeof t.option.table?.selectable=="object"?t.option.table?.selectable:{},e.toHandlers(typeof t.option.table?.selectable=="object"?t.option.table?.selectable?.on||{}:{})),null,16)):e.createCommentVNode("",!0),e.createVNode(le,{conf:e.unref(a),columnList:e.unref(a).table.column.list,option:t.option},e.createSlots({_:2},[e.renderList(m.$slots,(l,d)=>({name:d,fn:e.withCtx(k=>[e.renderSlot(m.$slots,d,e.normalizeProps(e.guardReactiveProps(k||{})))])}))]),1032,["conf","columnList","option"]),e.unref(r)(t.option.table?.add)||e.unref(r)(t.option.table?.update)||e.unref(r)(t.option.table?.delete)||e.unref(r)(t.option.table?.view)||m.$slots["table-op-left"]||m.$slots["table-op-right"]?(e.openBlock(),e.createBlock(e.unref(p.ElTableColumn),e.mergeProps({key:1,width:e.unref(a).table.op.width(e.unref(r)(t.option.table?.add),e.unref(r)(t.option.table?.update),e.unref(r)(t.option.table?.delete),e.unref(r)(t.option.table?.view),m.$slots["table-op-left"],m.$slots["table-op-right"]),align:"center",fixed:"right"},t.option.table?.operate),{header:e.withCtx(()=>[e.renderSlot(m.$slots,"table-header-op",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("operation")),1)])]),default:e.withCtx(({row:l})=>[e.createVNode(e.unref(p.ElForm),{size:t.option.size?.table},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"table-op-left",{row:l}),e.unref(a).update.type===e.unref(s).Update&&t.option.table?.inlineEdit&&e.unref(a).update.form[n.option.table?.rowKey]===l[n.option.table?.rowKey]?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(e.unref(p.ElButton),{link:"",type:"info",onClick:e.unref(a).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("cancel")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(p.ElButton),{link:"",type:"primary",onClick:e.unref(a).update.submit,loading:e.unref(a).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("confirm")),1)]),_:1},8,["onClick","loading"]),e.renderSlot(m.$slots,"table-op-edit-right",{row:l})],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(r)(t.option.table?.add,l)?(e.openBlock(),e.createBlock(e.unref(p.ElButton),{key:0,link:"",type:"primary",onClick:d=>e.unref(a).update.open(e.unref(s).Add,l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("add")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.unref(r)(t.option.table?.view,l)?(e.openBlock(),e.createBlock(e.unref(p.ElButton),{key:1,link:"",type:"primary",onClick:d=>e.unref(a).update.open(e.unref(s).View,l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("view")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.unref(r)(t.option.table?.update,l)?(e.openBlock(),e.createBlock(e.unref(p.ElButton),{key:2,link:"",type:"warning",onClick:d=>e.unref(a).update.open(e.unref(s).Update,l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("edit")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.unref(r)(t.option.table?.delete,l)?(e.openBlock(),e.createBlock(e.unref(p.ElButton),{key:3,link:"",type:"danger",onClick:d=>e.unref(a).remove.open([l])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("delete")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"table-op-right",{row:l})],64))]),_:2},1032,["size"])]),_:3},16,["width"])):e.createCommentVNode("",!0)]),_:3},16,["data","border","onSelectionChange","onSortChange","expand-row-keys","onExpandChange"])),[[g,e.unref(a).table.loading]])],2)],2),e.createElementVNode("div",we,[(t.option.page?.show===void 0||t.option.page?.show)&&!e.unref(a).page.showTools?(e.openBlock(),e.createBlock(e.unref(p.ElPagination),e.mergeProps({key:0,"current-page":e.unref(a).page.num,"onUpdate:currentPage":f[7]||(f[7]=l=>e.unref(a).page.num=l),"page-size":e.unref(a).page.size,"onUpdate:pageSize":f[8]||(f[8]=l=>e.unref(a).page.size=l),background:"","page-sizes":e.unref(a).page.sizeList,"pager-count":e.unref(a).page.pagerCount,layout:e.unref(a).page.layout,total:e.unref(a).page.total,size:t.option.size?.table,onSizeChange:e.unref(a).table.getList,onCurrentChange:e.unref(a).table.getList},t.option.page?.pagination||{},e.toHandlers(t.option.page?.pagination?.on||{})),null,16,["current-page","page-size","page-sizes","pager-count","layout","total","size","onSizeChange","onCurrentChange"])):e.createCommentVNode("",!0)])],2),e.renderSlot(m.$slots,"box-right")],2),e.createVNode(e.unref(p.ElDialog),e.mergeProps({modelValue:e.unref(a).update.show,"onUpdate:modelValue":f[9]||(f[9]=l=>e.unref(a).update.show=l),title:e.unref(a).update.title,"before-close":e.unref(a).update.close},t.option.dialog),{footer:e.withCtx(()=>[e.createElementVNode("span",Ce,[e.createVNode(e.unref(p.ElForm),{size:t.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(p.ElButton),{onClick:e.unref(a).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("close")),1)]),_:1},8,["onClick"]),e.unref(a).update.type!==e.unref(s).View?(e.openBlock(),e.createBlock(e.unref(p.ElButton),{key:0,type:"primary",onClick:e.unref(a).update.submit,loading:e.unref(a).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("submit")),1)]),_:1},8,["onClick","loading"])):e.createCommentVNode("",!0)]),_:1},8,["size"])])]),default:e.withCtx(()=>[e.createVNode(e.unref(p.ElForm),{ref_key:"ruleFormRef",ref:i,model:e.unref(a).update.form,rules:e.unref(a).update.rules,size:t.option.size?.form},{default:e.withCtx(()=>[e.unref(a).update.showContent?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(a).update.formColumn,l=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(r)((()=>{const d=[],k=y=>{y?.item?.children?k(y.item.children):d.push(...y.map(w=>w.item?.show?.form))};return k(l),d})(),e.unref(a).update.form,e.unref(a).update.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row curd-row",{stripe:t.option.form?.stripe===void 0?!0:t.option.form?.stripe}])},[e.renderSlot(m.$slots,"form-start",{row:e.unref(a).update.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l,d=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(r)(d.item.show?.form,e.unref(a).update.form,e.unref(a).update.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([d.item.form.span>0?`col-${e.unref(a).getColumnSpan(d,l)}`:"col",`form-item-col-${d.item.key}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.item.children?d.children:[d],k=>(e.openBlock(),e.createBlock(se,{key:k.item.key,conf:e.unref(a),item:k},e.createSlots({_:2},[e.renderList(m.$slots,(y,w)=>({name:w,fn:e.withCtx(V=>[e.renderSlot(m.$slots,w,e.mergeProps({ref_for:!0},V||{}))])}))]),1032,["conf","item"]))),128))],2)):e.createCommentVNode("",!0)],64))),256)),e.renderSlot(m.$slots,"form-end",{row:e.unref(a).update.form})],2)):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0)]),_:3},8,["model","rules","size"])]),_:3},16,["modelValue","title","before-close"]),e.createVNode(e.unref(p.ElDialog),{modelValue:e.unref(a).remove.show,"onUpdate:modelValue":f[10]||(f[10]=l=>e.unref(a).remove.show=l),title:e.unref(a).remove.title,"close-on-click-modal":!1},{footer:e.withCtx(()=>[e.createElementVNode("span",Be,[e.createVNode(e.unref(p.ElForm),{size:t.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(p.ElButton),{onClick:e.unref(a).remove.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("close")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(p.ElButton),{type:"danger",onClick:e.unref(a).remove.submit,loading:e.unref(a).remove.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(h).tCurd("confirmDelete")),1)]),_:1},8,["onClick","loading"])]),_:1},8,["size"])])]),default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(h).tCurd("confirmDeleteMessage",e.unref(a).remove.items.length)),1)]),_:1},8,["modelValue","title"]),e.createVNode(Q,{ref_key:"switchConfirmRef",ref:o,size:t.option.size?.form},null,8,["size"])],2)}}});class Ve{static async download(c,s="download.png"){const n=document.createElement("a");n.style.display="none",n.href=c,n.setAttribute("download",s),typeof n.download>"u"&&n.setAttribute("target","_blank"),document.body.appendChild(n),n.click(),document.body.removeChild(n),window.URL.revokeObjectURL(c)}static exportJSONFile=(c,s)=>{const n=new Blob([JSON.stringify(c)],{type:"application/json"}),r=URL.createObjectURL(n),a=document.createElement("a");a.href=r,a.download=`${s||"config"}.json`,a.click()};static importFile=async c=>new Promise((s,n)=>{const r=document.createElement("input");r.type="file";const a=c?.accept||".json";r.accept=a,r.style.display="none",r.onchange=o=>{const i=o.target.files[0];if(!i){b.fail("未选择文件"),n("未选择文件");return}const m=new FileReader;m.onload=async f=>{const g=a==".json"?JSON.parse(f.target.result):f.target.result;s(g)},m.onerror=()=>{b.fail("文件读取失败"),n("文件读取失败")},m.readAsText(i),document.body.removeChild(r)},document.body.appendChild(r),r.click()})}const U=(t,c)=>{if(t.component("TCurd",T),t.component("TFormList",N),t.component("TColumn",F),c?.customComponent){B.customComponent=c.customComponent;for(const s in c.customComponent)t.component(s,c.customComponent[s])}},Ee={install:U};C.ArrUtil=E,C.ExcelUtil=$,C.TColumn=F,C.TCurd=T,C.TFile=Ve,C.TForm=B,C.TFormConfig=u,C.TFormI18n=h,C.TFormList=N,C.TSys=b,C.default=Ee,C.install=U,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(w,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("element-plus"),require("vue-router"),require("vue")):typeof define=="function"&&define.amd?define(["exports","element-plus","vue-router","vue"],h):(w=typeof globalThis<"u"?globalThis:w||self,h(w.cc1Form={},w.ElementPlus,w.VueRouter,w.Vue))})(this,(function(w,h,Se,e){"use strict";class b{static router;static routes;static getRouterPath=()=>this.router.currentRoute.value.path;static EDialog={Add:"Add",Update:"Update",View:"View",Remove:"Remove"};static isFun=(a,...f)=>Array.isArray(a)?a.some(d=>typeof d=="function"?d(...f):d):typeof a=="function"?a(...f):a;static getRouterParams=()=>{const a=this.router.currentRoute.value.query||{},f=this.router.currentRoute.value.params||{};return Object.keys(a).length?a:Object.keys(f).length?f:{}};static moduleObj={};static loadModule=async a=>{if(!b.moduleObj[a])throw new Error(`模块${a}未加载,请赋值如:TSys.moduleObj = { ${a}: ()=>import('${a}') }`);const f=await b.moduleObj[a]();return f.default??f};static tipMessages={};static tipMessagesGap=500;static showMessage(a,f,d={}){const n=Date.now();if(!this.tipMessages[a]||n-this.tipMessages[a]>this.tipMessagesGap){this.tipMessages[a]=n;const t=Object.assign({message:a,type:f},d);h.ElMessage(t),setTimeout(()=>{delete this.tipMessages[a]},this.tipMessagesGap)}}static fail=(a,f={})=>{this.showMessage(a,"error",f)};static success=(a,f={})=>{this.showMessage(a,"success",f)};static loadingObj=null;static loadingTimer=null;static loading=(a=!0,f="Loading...")=>{Timer.un(this.loadingTimer),this.loadingTimer=Timer.once(()=>{a?this.loadingObj=h.ElLoading.service({lock:!0,text:f,background:"rgba(0, 0, 0, 0.3)"}):this.loadingObj&&(this.loadingObj.close(),this.loadingObj=null)},50)};static openUrl=(a,f=!0)=>{if(f){let d=screen.width/2-500,n=screen.height/2-800/2-30;window.open(a,"_blank","toolbar=no, location=yes, directories=no, status=yes, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=1000, height=800, top="+n+", left="+d)}else window.open(a,"DescriptiveWindowName"+StrUtil.getId(),"resizable,scrollbars=yes,status=1,width=1024, height=600, top=0, left=0")};static getImgPic=a=>new Promise(async(f,d)=>{let n=document.getElementById(a.id);const t=await b.loadModule("html2canvas");try{t(n,{logging:!1,allowTaint:!0,scale:window.devicePixelRatio,width:a.windowWidth,height:a.windowHeight,windowWidth:a.windowWidth,windowHeight:a.windowHeight,useCORS:!0,backgroundColor:"#ffffff00"}).then(function(o){let r=o.toDataURL("image/png");f(r)})}catch(o){d(o)}})}class u{static config={field:{page:{num:"num",size:"size"},result:{list:"list",pages:"pages",num:"num",size:"size",total:"total"}},dialog:{width:"980px",closeOnClickModal:!1},pagination:{layout:"total, sizes, prev, pager, next, jumper",pageSizes:[10,20,50,100],size:10,pagerCount:7,showTools:!1},size:{table:"default",form:"default",search:"default"},tools:{refresh:!0,expand:!1,search:!0,reset:!0,add:!0,delete:!0,export:{show:!0,dropdown:{show:!0,select:!0,page:!0,all:!0},fileName:"Export Data "}},form:{size:"default",labelWidth:"120px",stripe:!0,editAll:!1,maxSpan:12,defaultSpan:6,openBefore:void 0,openAfter:void 0,closeBefore:void 0,submitBefore:void 0,submitAfter:void 0},table:{labelWidth:"100px",size:"default",emptyText:"",headerCellClassName:"table-header",rowKey:"_id",highlightCurrentRow:!0,border:!0,selectable:!1,column:[],showOverflowTooltip:!0,showSummary:!1,summaryMethod:()=>[],inlineEdit:!1,operate:{width:void 0},add:!1,update:!0,delete:!0,sort:{props:{field:"sortField"},order:{field:"sortOrder",asc:"asc",desc:"desc"},resetPage:!1,change:void 0},fitHeight:!0},columnConfig:{type:"input",form:{width:"100%",spanCol:!1},table:{table:!0,minWidth:120,width:void 0,fixed:void 0,align:"center",showOverflowTooltip:!0,format:void 0,click:{callback:void 0,color:"#409EFF"},tooltip:void 0},show:{table:!0,search:!1,form:!0},sort:{search:0,table:0,form:0},disabled:{view:!0},options:{switch:{activeValue:!0,inactiveValue:!1,tableConfig:{change:!0,confirm:!0,loadList:!0}},treeSelect:{multiple:!0,renderAfterExpand:!1,showCheckbox:!0,checkStrictly:!0,checkOnClickNode:!0,props:{label:"title",children:"children"}},datetime:{type:"datetime"},select:{data:[],clearable:!0,filterable:!0,dataPath:"data.data",dataApiConfig:{once:!0,init:!0,create:!0,update:!0}},radio:{data:[],dataPath:"data.data",dataApiConfig:{once:!0,init:!0,create:!0,update:!0}}}}};static setConfig=a=>{u.config=ObjectUtil.deepMerge(u.config,a)}}class B{static customComponent={};static findOptions=(a,f)=>{const d=a.column.find(t=>t.key===f),n=t=>t.replace(/-([a-z])/g,(o,r)=>r.toUpperCase());if(d)return d.options[n(d.type)]};static setOptionsData=(a,f,d)=>{const n=B.findOptions(a,f);n&&(n.data=d)};static form={openBefore:{parentId:(a,f,d,n)=>{const t=u.config.table.rowKey;a?f.type===b.EDialog.Add?(f.form.parentId=a[t],f.form.sort=a.children.length+1):f.form.parentId=a.parentId.substring(a.parentId.lastIndexOf(",")+1):(f.form.parentId="0",f.form.sort=d.length+1),B.setOptionsData(n,"parentId",[{[t]:"0",title:"根",children:d}])}}}}function De(l){return l}const L={search:"搜索",add:"新增",edit:"编辑",view:"查看",delete:"删除",export:"导出",exportSelect:"导出选中",exportPage:"导出本页",exportAll:"导出全部",import:"导入",refresh:"刷新",reset:"重置",expandCollapse:"展开/收缩",operation:"操作",close:"关闭",cancel:"取消",submit:"提交",confirm:"确认",confirmDelete:"确认删除",confirmDeleteMessage:"确认要删除【{count}】条数据吗?",placeholderInput:"请输入",placeholderSelect:"请选择",checkFormData:"请检查表单数据",selectDataToDelete:"请选择要删除的数据",selectDataToExport:"请选择要导出的数据",noData:"暂无数据",operationSuccess:"操作成功",switchOn:"开启",switchOff:"关闭",confirmModify:"确认修改",confirmSwitchMessage:"确认要修改吗?"};class k{static t(a,...f){if(typeof a=="function")return a(...f);a=String(a);let d=0;return a.replace(/{([^}]+)}/g,(n,t)=>d<f.length?String(f[d++]):`{${t}}`)}static setI18n=a=>{k.curd=ObjectUtil.deepMerge(k.curd,a)};static tCurd(a,...f){return this.t(this.curd[a],...f)}static curd=L}class D{static getIdFun=()=>StrUtil.uuid();static setId=(a,f,d)=>{f[a]||(f[a]=[]);const n=u.config.table.rowKey;f[a].forEach(t=>{d.forEach(o=>{let r=o.default??"";o.type==="number"&&(r=o.default??0),o.type==="boolean"&&(r=o.default??!1),o.type==="time"&&(r=o.default??new Date),t[o.value]===void 0&&(t[o.value]=r)}),t[n]||(t[n]=D.getIdFun())})};static add=(a,f,d,n)=>{const t=JSONUtil.cp(d);D.setId(a,f,d);const o=u.config.table.rowKey;f[a].push(t.reduce((r,c)=>{let g=c.default??"";return c.type==="number"&&(g=c.default??0),c.type==="boolean"&&(g=c.default??!1),c.type==="time"&&(g=c.default??new Date),r[c.value]=g,r},{[o]:D.getIdFun()})),n?.(f)};static remove=(a,f,d,n)=>{const t=u.config.table.rowKey;f[a]=f[a].filter(o=>o[t]!==d[t]),n?.(f)};static getNoIdData=(a,f)=>{const d=JSONUtil.cp(a),n=u.config.table.rowKey;return d.forEach(t=>{t[n]&&delete t[n],f&&t[f]&&D.getNoIdData(t[f],f)}),d}}const A={key:0,class:"column curd-form-com-list",style:{width:"100%",gap:"10px"}},j={key:0},x={class:"row items-center",style:{gap:"10px",width:"100%"}},H={key:1},U=e.defineComponent({__name:"list",props:{row:{default:{}},label:{default:"label"},value:{default:"value"},itemFields:{default:[{label:"label",value:"label"},{label:"value",value:"value"}]},field:{default:"value"},inputWidth:{default:"120px"},inputClass:{default:""},addBottom:{default:!1}},emits:["change"],setup(l,{emit:a}){const f=l,d=e.reactive({show:!1,add:(t,o,r)=>{D.add(t,o,r,()=>{n("change")})},remove:(t,o,r)=>{D.remove(t,o,r,()=>{n("change")})}});e.onMounted(()=>{D.setId(f.field,f.row,f.itemFields),d.show=!0});const n=a;return(t,o)=>{const r=e.resolveComponent("el-button"),c=e.resolveComponent("el-input");return d.show?(e.openBlock(),e.createElementBlock("div",A,[e.renderSlot(t.$slots,"list-start",{row:l.row}),l.addBottom?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",j,[e.createVNode(r,{link:"",type:"primary",onClick:o[0]||(o[0]=g=>d.add(l.field,l.row,l.itemFields))},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode("添加")])),_:1})])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.row[l.field],g=>(e.openBlock(),e.createElementBlock("div",x,[e.renderSlot(t.$slots,"item-start",{item:g,row:l.row}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.itemFields,p=>(e.openBlock(),e.createBlock(c,{modelValue:g[p.value],"onUpdate:modelValue":s=>g[p.value]=s,style:e.normalizeStyle({width:l.inputWidth}),class:e.normalizeClass(l.inputClass),placeholder:p[l.label]||p[l.value],onChange:o[1]||(o[1]=s=>n("change"))},null,8,["modelValue","onUpdate:modelValue","style","class","placeholder"]))),256)),e.renderSlot(t.$slots,"item-end",{item:g,row:l.row}),e.createVNode(r,{link:"",type:"danger",onClick:p=>d.remove(l.field,l.row,g)},{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode("删除")])),_:2},1032,["onClick"])]))),256)),l.addBottom?(e.openBlock(),e.createElementBlock("div",H,[e.createVNode(r,{link:"",type:"primary",onClick:o[2]||(o[2]=g=>d.add(l.field,l.row,l.itemFields))},{default:e.withCtx(()=>o[5]||(o[5]=[e.createTextVNode("添加")])),_:1})])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"list-end",{row:l.row})])):e.createCommentVNode("",!0)}}}),I={class:"row form-item-content",style:{width:"100%"}},R={class:"col"},K={class:"col"},W=["innerHTML"],F=e.defineComponent({__name:"column",props:{option:{default:{}},type:{default:""}},setup(l,{expose:a}){const f=b.isFun,d=b.EDialog,n=e.ref(),t=l,o=e.reactive({rules:{},show:!0,form:{},formDefault:{},type:t.type||d.Add,formColumn:[],getDisabled:r=>o.type===d.View?r.disabled?.view===void 0?!0:r.disabled?.view:r.disabled?.[o.type===d.Add?"create":"update"],getBind:r=>r.options?.[o.type===d.Add?"formAdd":"formUpdate"]?.[r.type]||r.options?.[r.type]||{},getOn:r=>r.options?.[o.type===d.Add?"formAdd":"formUpdate"]?.[r.type]?.on||r.options?.[r.type]?.on||{},getColumnSpan:(r,c)=>{if(r.item.form?.spanCol){const g=t.option.form?.maxSpan||12,p=t.option.form?.defaultSpan||g/2,i=c.filter(m=>!b.isFun(m.item.show?.form,o.form,o.type)).reduce((m,y)=>m+(y.item.form?.span||p),0);return(r.item.form?.span||p)+i}return r.item.form?.span},initColumnForm:()=>{const r=t.option;o.formColumn=[],o.rules={},o.formDefault={};const c=[],g=t.option.form?.maxSpan||12,p=t.option.form?.defaultSpan||g/2;let s=[];const i=y=>{if(y.children){y.children.forEach(C=>{i(C)});return}if(o.formDefault[y.key]=y.value,y.isForm&&(typeof y.show?.form!="boolean"||y.show?.form)){y.form=y.form||{span:p},y.form.span=y.form.span??p;const C=y.form.span,E=s.reduce((S,z)=>S+z.span,C),V=s.length;if(s.push({item:y,span:C}),(V===1&&s[0].span===0||E>=g||C===0&&V>1)&&(c.push(s),s=[]),y.rules){const S={input:k.tCurd("placeholderInput"),select:k.tCurd("placeholderSelect")},z=(S[y.type]||S.input)+y.label;o.rules[y.key]=typeof y.rules=="boolean"?[{required:!0,message:z,trigger:"blur"}]:y.rules}}},m=(y,C)=>{y.isForm=C,Array.isArray(y.children)&&y.children.forEach(E=>m(E,C))};r.column.forEach(y=>{m(y,!0),i(y)}),s.length>0&&c.push(s),o.formColumn=c,o.form=JSONUtil.cp(o.formDefault)}});return o.initColumnForm(),a({ref:n,conf:o}),(r,c)=>(e.openBlock(),e.createBlock(e.unref(h.ElForm),{ref_key:"ruleFormRef",ref:n,model:o.form,rules:o.rules},{default:e.withCtx(()=>[o.show?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(o.formColumn,(g,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:p},[e.unref(f)(g.map(s=>s.item?.show?.form),o.form,o.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row curd-row",{stripe:l.option.form?.stripe===void 0?!0:l.option.form?.stripe}])},[e.renderSlot(r.$slots,"form-start",{row:o.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g,s=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s.item.key},[e.unref(f)(s.item.show?.form,o.form,o.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([s.item.form.span>0?`col-${o.getColumnSpan(s,g)}`:"col",`form-item-col-${s.item.key}`])},[e.createVNode(e.unref(h.ElFormItem),{label:s.item.text?.form?.label??s.item.label,prop:s.item.key,"label-width":s.item.text?.form?.label==""?0:s.item.form?.labelWidth||l.option.form?.labelWidth||"100px"},{default:e.withCtx(()=>[e.createElementVNode("div",I,[e.renderSlot(r.$slots,"form-"+s.item.key+"-start",{row:o.form,item:s.item}),e.createElementVNode("div",R,[e.createElementVNode("div",K,[e.renderSlot(r.$slots,"form-"+s.item.key,{row:o.form,item:s.item},()=>[s.item.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:o.form[s.item.key],"onUpdate:modelValue":i=>o.form[s.item.key]=i,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):s.item.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:1,modelValue:o.form[s.item.key],"onUpdate:modelValue":i=>o.form[s.item.key]=i,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):s.item.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:2,modelValue:o.form[s.item.key],"onUpdate:modelValue":i=>o.form[s.item.key]=i,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.item.options?.select?.data,i=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:i.value,label:i.label,value:i.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):s.item.type==="radio"?(e.openBlock(),e.createBlock(e.unref(h.ElRadioGroup),e.mergeProps({key:3,modelValue:o.form[s.item.key],"onUpdate:modelValue":i=>o.form[s.item.key]=i,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.item.options?.radio?.data,i=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),{key:i.value,label:i.label,value:i.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):s.item.type==="list"?(e.openBlock(),e.createBlock(U,e.mergeProps({key:4,row:o.form,field:s.item.key,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item),style:{width:"100%"}}),null,16,["row","field","disabled"])):s.item.type==="treeSelect"?(e.openBlock(),e.createBlock(e.unref(h.ElTreeSelect),e.mergeProps({key:5,modelValue:o.form[s.item.key],"onUpdate:modelValue":i=>o.form[s.item.key]=i,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item),style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","disabled"])):s.item.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(h.ElDatePicker),e.mergeProps({key:6,modelValue:o.form[s.item.key],"onUpdate:modelValue":i=>o.form[s.item.key]=i,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):s.item.type&&(e.unref(B).customComponent[s.item.type]||e.unref(B).customComponent[s.item.type]?.form)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[s.item.type]?.form||e.unref(B).customComponent[s.item.type]),e.mergeProps({key:7,modelValue:o.form[s.item.key],"onUpdate:modelValue":i=>o.form[s.item.key]=i,ref_for:!0},o.getBind(s.item),e.toHandlers(o.getOn(s.item)),{disabled:o.getDisabled(s.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(r.$slots,"form-"+s.item.key+"-right",{row:o.form,item:s.item})]),e.renderSlot(r.$slots,"form-"+s.item.key+"-tip",{row:o.form,item:s.item},()=>[s.item.form?.tipText?(e.openBlock(),e.createElementBlock("div",{key:0,class:"form-tip-text",innerHTML:typeof s.item.form?.tipText=="function"?s.item.form?.tipText(o.form,o.type):s.item.form?.tipText},null,8,W)):e.createCommentVNode("",!0)])]),e.renderSlot(r.$slots,"form-"+s.item.key+"-end",{row:o.form,item:s.item})])]),_:2},1032,["label","prop","label-width"])],2)):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(r.$slots,"form-end",{row:o.form})],2)):e.createCommentVNode("",!0)],64))),128)):e.createCommentVNode("",!0)]),_:3},8,["model","rules"]))}});class O{static exportToExcel=async(a,f,d)=>{if(!a||a.length===0)return;const n=await b.loadModule("xlsx"),t=a.map(c=>{const g={};return f.forEach(p=>{g[p.label]=c[p.key]}),g}),o=n.utils.json_to_sheet(t),r=n.utils.book_new();n.utils.book_append_sheet(r,o,"Sheet1"),d?typeof d=="function"&&(d=d()):d=`导出数据_${new Date().Format("yyyy-MM-dd")}_${new Date().getTime()}`,n.writeFile(r,`${d}.xlsx`)}}const N=b.EDialog,q=l=>{const a=e.ref(),f=e.ref(),d=e.ref(),n=e.reactive({option:l.option,search:{column:{list:[]},form:{},formDefault:{},getPlaceholder:(t,o=k.tCurd("placeholderInput"))=>t.text?.search?.placeholder===void 0?`${o}${t.label}`:t.text?.search?.placeholder,getFormData:()=>{let t={};l.option.column.forEach(r=>{(typeof r.show?.search=="function"?r.show?.search(n.search.form):r.show?.search)&&(t[r.key]=n.search.form[r.key])});const o=l.option.search?.before?.(t);return o&&(t=o),t},reset:()=>{const t=n.search.formDefault;Object.keys(t).forEach(o=>{l.option.search?.resetMode==="none"?t[o]=void 0:t[o]=n.search.formDefault[o]}),n.search.form=ObjectUtil.deepMerge(t,{}),n.page.num=1,l.option.init!==!1&&n.table.getList()},submit:()=>{n.page.num=1,n.table.getList()}},page:{num:1,total:0,layout:l.option.page?.layout||u.config.pagination.layout,showTools:l.option.page?.showTools||u.config.pagination.showTools,size:l.option.page?.size||u.config.pagination.size,sizeList:l.option.page?.sizeList||u.config.pagination.pageSizes,pagerCount:l.option.page?.pagerCount||u.config.pagination.pagerCount,getQuery:(t={})=>({[u.config.field.page.size]:t.size||n.page.size,[u.config.field.page.num]:t.num||n.page.num,...n.search.getFormData()})},table:{op:{width:(...t)=>t.filter(r=>r).length*30+60},loading:!1,data:[],expand:{isExpand:!1,rowKeys:[],change:(t,o)=>{},all:()=>{if(n.table.expand.isExpand)n.table.expand.rowKeys=[];else{const t=o=>{let r=[];return o.forEach(c=>{r.push(c[l.option.table.rowKey]),c.children&&c.children.length>0&&(r=r.concat(t(c.children)))}),r};n.table.expand.rowKeys=t(n.table.data)}n.table.expand.isExpand=!n.table.expand.isExpand}},column:{list:[],show:{listSource:[],list:[]}},getList:async()=>{n.table.loading=!0;const t=l.option.api.list;try{await n.initApiData("init");let o={};if(n.table.sort.prop){const{props:y,order:C}=u.config.table.sort;o={[y.field]:n.table.sort.prop,[C.field]:n.table.sort.order}}const r=await t({...n.page.getQuery(),...o}),c=u.config.field.result,g=r.data||{[c.list]:r};let p=(Array.isArray(g[c.list]),g[c.list]);const s=n.update.formColumn.flat(),m=ObjectUtil.deepMerge({data:p},{}).data.map(y=>(Object.keys(y).forEach(E=>{const V=s.find(S=>S.item.key===E);V&&["select","radio"].includes(V.item.type)&&(V.item.table.format||(V.item.table.format=S=>V.item.options[V.item.type].data?.find(z=>z.value==S[E])?.label||S[E]))}),y));n.table.data=l.option.data?await l.option.data(m,p):m,n.page.total=g[c.total]||0}catch(o){console.error(o)}finally{n.table.loading=!1}},selection:{list:[],change:t=>{n.table.selection.list=t},setList:t=>{n.table.selection.list=[];const o=d.value;if(o?.clearSelection(),!o||!t?.length)return;const r=l.option.table?.rowKey,c=n.table.data,g=p=>{const s=i=>{for(const m of i){if(r!=null&&r!==""){if(m[r]===p[r])return m}else if(m===p)return m;if(Array.isArray(m.children)&&m.children.length){const y=s(m.children);if(y!==void 0)return y}}};return s(c)};e.nextTick(()=>{t.forEach(p=>{const s=g(p)??p;o.toggleRowSelection(s,!0,!1)})})}},sort:{prop:"",order:"",change:t=>{u.config.table.sort.resetPage&&(n.page.num=1);const o=u.config.table.sort;if(o.change){o.change(t,n);return}n.table.sort.prop=t.prop,t.order===null?n.table.sort.order="":n.table.sort.order=t.order==="ascending"?o.order.asc:o.order.desc,n.table.getList()}}},export:{run:{start:async t=>{let o=await n.export.run[t](),r=l.option.column;const c=ObjectUtil.deepMerge({data:o,columns:r},{}),g=l.option.tools?.export||{};g.before&&g.before(c),O.exportToExcel(c.data,c.columns,g.fileName)},select:async()=>{n.export.loading=!0;try{if(l.option.tools?.export?.select){await l.option.tools?.export?.select({...n.page.getQuery(),items:n.table.selection.list});return}if(n.table.selection.list.length===0)throw b.fail(k.tCurd("selectDataToExport")),new Error(k.tCurd("selectDataToExport"));return n.table.selection.list}catch(t){console.error(t)}finally{n.export.loading=!1}},page:async()=>{n.export.loading=!0;try{if(l.option.tools?.export?.page){await l.option.tools?.export?.page({...n.page.getQuery()});return}if(n.table.data.length===0)throw b.fail(k.tCurd("noData")),new Error(k.tCurd("noData"));return n.table.data}catch(t){console.error(t)}finally{n.export.loading=!1}},all:async()=>{n.export.loading=!0;try{if(l.option.tools?.export?.all){await l.option.tools?.export?.all({...n.page.getQuery()});return}const t=l.option.api.list,o=await t({...n.page.getQuery({size:999999,num:1})});return(o.data||{[u.config.field.result.list]:o})[u.config.field.result.list]}catch(t){console.error(t)}finally{n.export.loading=!1}}},loading:!1,click:t=>{n.export.loading||n.export.run.start(t)}},update:{title:"",rules:{},show:!1,showContent:!1,loading:!1,type:N.Add,form:{},formDefault:{},formColumn:[],getDisabled:t=>l.option.table?.editMode?t.disabled?.table===void 0?!1:t.disabled?.table:n.update.type===N.View?t.disabled?.view===void 0?!0:t.disabled?.view:t.disabled?.[n.update.type===N.Add?"create":"update"],getBind:t=>t.options?.[n.update.type===N.Add?"formAdd":"formUpdate"]?.[t.type]||t.options?.[t.type]||{},getOn:t=>t.options?.[n.update.type===N.Add?"formAdd":"formUpdate"]?.[t.type]?.on||t.options?.[t.type]?.on||{},getOptions:t=>{try{const r=n.update.formColumn.flat().find(c=>c.item.key===t)?.item;return r?{options:r.options,bind:n.update.getBind(r)}:{options:{},bind:{}}}catch{return{options:{},bind:{}}}},edit:{data:{},getApiData:t=>{if(l.option.form?.editAll)return t;let o={[l.option.table?.rowKey]:n.update.edit.data[l.option.table?.rowKey]};return Object.keys(n.update.edit.data).forEach(r=>{t[r]!==n.update.edit.data[r]&&(o[r]=t[r])}),o}},view:{},open:(t,o)=>{n.update.showContent||FunUtil.throttle(async()=>{b.loading(!0);try{n.update.type=t;const r=t===N.Add;n.update.edit.data=o,n.update.title=k.tCurd(r?"add":t===N.View?"view":"edit"),n.update.form=ObjectUtil.deepMerge(r?n.update.formDefault:o,{}),await n.initApiData("update"),await l.option.form?.openBefore?.(n.update.form,n.update),(!l.option.table?.inlineEdit||r)&&(n.update.show=!0,n.update.showContent=!0),l.option.form?.openAfter?.(n.update.form,n.update)}catch(r){console.error(r)}finally{b.loading(!1)}})},submit:()=>{FunUtil.throttle(async()=>{await f.value?.validate(async(c,g)=>new Promise((p,s)=>{c||(b.fail(k.tCurd("checkFormData")),s(!1)),p()})),n.update.loading=!0;const t=n.update.type===N.Add?l.option.api.create:l.option.api.update;try{await l.option.form?.submitBefore?.(n.update.form,n.update)}catch{n.update.loading=!1;return}let o=ObjectUtil.deepMerge(n.update.form,{});delete o.children;const r=new Set(l.option.column.filter(c=>c.type==="datetime").map(c=>c.key));Object.keys(o).forEach(c=>{if(r.has(c)&&o[c]!=null){const g=new Date(o[c]).getTime();isNaN(g)||(o[c]=g)}});try{if(!t)return;await t({...o}),n.update.close(),await n.table.getList(),l.option.form?.submitAfter?.(o,n.update)}catch(c){console.error(c)}finally{n.update.loading=!1}})},close:()=>{n.update.show=!1,l.option.table?.inlineEdit&&(n.update.form={}),setTimeout(()=>{n.update.showContent=!1},350)}},remove:{title:k.tCurd("confirmDelete"),show:!1,items:[],loading:!1,close:()=>{n.remove.show=!1},open:t=>{if(t.length===0){b.fail(k.tCurd("selectDataToDelete"));return}n.remove.items=t,n.remove.show=!0},submit:()=>{FunUtil.throttle(async()=>{n.remove.loading=!0;const t=l.option.api.delete;try{if(!t)return;await t({[l.option.table?.rowKey]:n.remove.items.map(o=>o[l.option.table?.rowKey]),items:n.remove.items}),b.success(k.tCurd("operationSuccess")),n.table.data.length<=1&&n.page.num>1&&(n.page.num-=1),n.remove.close(),await n.table.getList()}catch(o){console.error(o)}finally{n.remove.loading=!1}})}},init:()=>{n.initCurdConfig(),n.initColumnOptions(),n.initColumnForm()},apiDataMap:{},initApiData:async t=>{const o=[],r=c=>{if(c.children&&c.children.length){c.children.forEach(g=>r(g));return}if(c.options?.[c.type]?.dataApi&&c.options?.[c.type]?.dataApiConfig?.[t]){if(n.apiDataMap[c.key]&&c.options?.[c.type]?.dataApiConfig?.once)return;const g=(async()=>{try{let p=await c.options?.[c.type]?.dataApi?.(n.update.form,n.update.type);if(p){const s=c.options?.[c.type]?.dataPath;!Array.isArray(p)&&s&&(p=ObjectUtil.getPathValue(p,s)),c.options[c.type].data=p,c.options.search[c.type].data=p,c.options.formAdd[c.type].data=p,c.options.formUpdate[c.type].data=p,n.apiDataMap[c.key]=p}}catch{}})();o.push(g)}};return l.option.column.forEach(c=>{r(c)}),await Promise.all(o),!0},initCurdConfig:()=>{const t=ObjectUtil.deepMerge(u.config,{});t.table.emptyText=k.tCurd("noData"),l.option.size=l.option.size||{},t.table.size=l.option.size.table||t.size.table,t.form.size=l.option.size.form||t.size.form,t.size.search=l.option.size.search||t.size.search;const o=ObjectUtil.deepMerge(t,l.option||{});Object.keys(o).forEach(r=>{l.option[r]=o[r]})},initColumnOptions:()=>{let t=JSONUtil.cp(u.config.columnConfig);t.options=ObjectUtil.deepMerge({switch:{activeText:k.tCurd("switchOn"),inactiveText:k.tCurd("switchOff")}},t.options);const o=r=>{for(const c in t){if(c==="table"){if(r.table=ObjectUtil.deepMerge(t.table,r.table||{}),r.children){r.children.forEach(p=>{o(p)});return}}else c==="type"?r.type=r.type||t.type:r[c]=ObjectUtil.deepMerge(t[c],r[c]||{});r.options=r.options||{},r.options[r.type]=r.options[r.type]||{},r.options[r.type].size=l.option.size.form,["search","formAdd","formUpdate"].forEach(p=>{r.options[p]=r.options[p]||ObjectUtil.deepMerge(r.options,{}),r.options[p][r.type]=r.options[p][r.type]||{},r.options[p][r.type].size=p==="search"?l.option.size.search:l.option.size.form}),r.table=ObjectUtil.deepMerge(r.table,r.options[r.type].table||{})}r.type==="switch"&&(r.options.switch.tableBeforeChange=async(c,g)=>{const p=r.options?.switch;try{p.tableConfig?.confirm&&await a.value?.open({title:k.tCurd("confirmModify"),content:k.tCurd("confirmSwitchMessage")});try{if(!l.option.api.update&&!p.tableConfig?.api)return;const s=g[l.option.table?.rowKey];p.loadingMap||(p.loadingMap={}),p.loadingMap[s]||(p.loadingMap[s]={loading:!1}),p.loadingMap[s].loading=!0;const i=g[c]===p.activeValue?p.inactiveValue:p.activeValue,m=p.tableConfig?.api?p.tableConfig.api:l.option.api.update;if(!m)return;try{await m({...g,[c]:i},"switch")}catch{return!1}finally{p.loadingMap[s].loading=!1}return b.success(k.tCurd("operationSuccess")),p.tableConfig?.loadList&&(n.table.loading=!0,n.table.getList(),n.table.loading=!1),!0}catch(s){return console.error(s),!1}finally{n.table.loading=!1}}catch{return!1}}),r.type==="treeSelect"&&(r.options.treeSelect.rowKey=l.option.table?.rowKey,r.options.treeSelect.nodeKey=l.option.table?.rowKey)};l.option.column.forEach(o),l.option.table?.column?.forEach(o)},getColumnSpan:(t,o)=>{if(t.item.form?.spanCol){const r=u.config.form.defaultSpan,g=o.filter(p=>!b.isFun(p.item.show?.form,n.update.form,n.update.type)).reduce((p,s)=>p+(s.item.form?.span||r),0);return(t.item?.form.span||r)+g}return t.item.form.span},initColumnForm:()=>{const t=l.option;n.update.formColumn=[],n.table.column.show={list:[],listSource:[]};const o=[],r=l.option.form?.maxSpan||12,c=l.option.form?.defaultSpan||r/2;let g=[];const p=m=>{if(m.children){n.table.column.show.list.push(m.key),m.children.forEach(y=>{p(y)});return}if(n.update.formDefault[m.key]=m.value,m.table.table&&(m.show.table&&n.table.column.show.list.push(m.key),m.table.table&&n.table.column.show.listSource.push(m.key)),!(m.isForm&&typeof m.show?.form=="boolean")||m.show?.form){m.form=m.form||{span:c},m.form.span=m.form.span??c;let y=m.form.span,C=g.reduce((V,S)=>V+S.span,y);const E=g.length;if(g.push({item:m,span:y}),(E===1&&g[0].span===0||C>=r||y===0&&E>1)&&(o.push(g),g=[]),m.rules){const V={input:k.tCurd("placeholderInput"),select:k.tCurd("placeholderSelect")},S=(V[m.type]||V.input)+m.label;n.update.rules[m.key]=typeof m.rules=="boolean"?[{required:!0,message:S,trigger:"blur"}]:m.rules}}},s=(m,y)=>{m.isForm=y,Array.isArray(m.children)&&m.children.forEach(C=>s(C,y))};t.column.forEach(m=>{m.isForm=!0,s(m,!0),p(m)}),l.option.table?.column?.forEach(m=>{s(m,!1),p(m)}),n.search.column.list=t.column.concat(t.table?.column||[]),n.table.column.list=n.search.column.list.filter(m=>m.table?.table),n.search.column.list.sort((m,y)=>m.sort?.search-y.sort?.search),n.table.column.list.sort((m,y)=>m.sort?.table-y.sort?.table),g.length>0&&o.push(g),n.update.formColumn=o;const i=l.option.search?.formDefault;i&&Object.keys(i).forEach(m=>{n.search.formDefault[m]=i[m]}),t.column.forEach(m=>{m.show?.search||(n.search.formDefault[m.key]=void 0)}),n.search.form=ObjectUtil.deepMerge(n.search.formDefault,{})}});return n.init(),e.onMounted(()=>{l.option.init!==!1&&n.table.getList()}),{conf:n,switchConfirmRef:a,ruleFormRef:f,tableRef:d}},J={class:"dialog-footer"},Q=e.defineComponent({__name:"switchConfirm",props:{size:{}},setup(l,{expose:a}){const f=e.ref(!1),d=e.ref("确认修改"),n=e.ref("确认要修改状态吗?");let t=null,o=null;const r=p=>(p?.title&&(d.value=p.title),p?.content&&(n.value=p.content),f.value=!0,new Promise((s,i)=>{t=s,o=i})),c=()=>{f.value=!1,t?.(!0),t=null,o=null},g=()=>{f.value=!1,o?.(new Error("用户取消操作")),t=null,o=null};return a({open:r}),(p,s)=>{const i=e.resolveComponent("el-form");return e.openBlock(),e.createBlock(e.unref(h.ElDialog),{modelValue:f.value,"onUpdate:modelValue":s[0]||(s[0]=m=>f.value=m),title:d.value,"close-on-click-modal":!1,width:"400px"},{footer:e.withCtx(()=>[e.createVNode(i,{size:p.size},{default:e.withCtx(()=>[e.createElementVNode("span",J,[e.createVNode(e.unref(h.ElButton),{onClick:g},{default:e.withCtx(()=>s[1]||(s[1]=[e.createTextVNode("取消")])),_:1}),e.createVNode(e.unref(h.ElButton),{type:"primary",onClick:c},{default:e.withCtx(()=>s[2]||(s[2]=[e.createTextVNode("确认")])),_:1})])]),_:1},8,["size"])]),default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(n.value),1)]),_:1},8,["modelValue","title"])}}}),T=(l,a)=>{const f=l.__vccOpts||l;for(const[d,n]of a)f[d]=n;return f},G={},X={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function Y(l,a){return e.openBlock(),e.createElementBlock("svg",X,a[0]||(a[0]=[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"},null,-1)]))}const Z=T(G,[["render",Y]]),P={},_={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function v(l,a){return e.openBlock(),e.createElementBlock("svg",_,a[0]||(a[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m23.744 191.488c-52.096 0-92.928 14.784-123.2 44.352-30.976 29.568-45.76 70.4-45.76 122.496h80.256c0-29.568 5.632-52.8 17.6-68.992 13.376-19.712 35.2-28.864 66.176-28.864 23.936 0 42.944 6.336 56.32 19.712 12.672 13.376 19.712 31.68 19.712 54.912 0 17.6-6.336 34.496-19.008 49.984l-8.448 9.856c-45.76 40.832-73.216 70.4-82.368 89.408-9.856 19.008-14.08 42.24-14.08 68.992v9.856h80.96v-9.856c0-16.896 3.52-31.68 10.56-45.76 6.336-12.672 15.488-24.64 28.16-35.2 33.792-29.568 54.208-48.576 60.544-55.616 16.896-22.528 26.048-51.392 26.048-86.592q0-64.416-42.24-101.376c-28.16-25.344-65.472-37.312-111.232-37.312m-12.672 406.208a54.27 54.27 0 0 0-38.72 14.784 49.4 49.4 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.85 54.85 0 0 0 523.072 768c15.488 0 28.16-4.928 38.72-14.784a51.52 51.52 0 0 0 16.192-38.72 51.97 51.97 0 0 0-15.488-38.016 55.94 55.94 0 0 0-39.424-14.784"},null,-1)]))}const ee=T(P,[["render",v]]),te={class:"row flex-center table-header-label inline"},oe={class:"table-header-tooltip"},ae={key:1},ne=["onClick","innerHTML"],le=e.defineComponent({__name:"tableColumn",props:{conf:{},columnList:{},option:{}},setup(l){const a=b.isFun,f=e.getCurrentInstance().type;return(d,n)=>{const t=e.resolveComponent("el-tooltip");return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.columnList,o=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:o.key},[d.conf.table.column.show.list.includes(o.key)?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:0,prop:o.key,label:o.label,ref_for:!0},o.table),{header:e.withCtx(()=>[e.renderSlot(d.$slots,"table-header-"+o.key,{item:o},()=>[e.createElementVNode("div",te,[o.table?.tooltip?(e.openBlock(),e.createBlock(t,{key:0,effect:"dark",content:o.table?.tooltip,placement:"top"},{default:e.withCtx(()=>[e.createElementVNode("span",oe,[e.createVNode(ee)])]),_:2},1032,["content"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(o.label),1)])])]),default:e.withCtx(({row:r})=>[o.children?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[n[0]||(n[0]=e.createTextVNode("   ")),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(f)),{conf:d.conf,columnList:o.children,option:d.option},e.createSlots({_:2},[e.renderList(d.$slots,(c,g)=>({name:g,fn:e.withCtx(p=>[e.renderSlot(d.$slots,g,e.mergeProps({ref_for:!0},p||{}))])}))]),1032,["conf","columnList","option"]))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[d.option.table?.editMode?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),{key:0,modelValue:r[o.key],"onUpdate:modelValue":c=>r[o.key]=c,disabled:d.conf.update.getDisabled(o),style:{width:"100%"}},null,8,["modelValue","onUpdate:modelValue","disabled"])):o.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),{key:1,modelValue:r[o.key],"onUpdate:modelValue":c=>r[o.key]=c,disabled:d.conf.update.getDisabled(o),style:{width:"100%"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options?.search?.select?.data||o.options?.select?.data,c=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","disabled"])):o.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),{key:2,modelValue:r[o.key],"onUpdate:modelValue":c=>r[o.key]=c,disabled:d.conf.update.getDisabled(o)},null,8,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[d.conf.update.type===e.unref(b).EDialog.Update&&e.unref(a)(o.show?.form,d.conf.update.form,e.unref(b).EDialog.Update)&&d.option.table?.inlineEdit&&d.conf.update.form[d.option.table?.rowKey]===r[d.option.table?.rowKey]&&(o.type==="input"||o.type==="select")?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:d.conf.update.form[o.key],"onUpdate:modelValue":c=>d.conf.update.form[o.key]=c,disabled:d.conf.update.getDisabled(o),ref_for:!0},d.conf.update.getBind(o),e.toHandlers(d.conf.update.getOn(o)),{style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","disabled"])):o.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:1,modelValue:d.conf.update.form[o.key],"onUpdate:modelValue":c=>d.conf.update.form[o.key]=c,disabled:d.conf.update.getDisabled(o),ref_for:!0},d.conf.update.getBind(o),e.toHandlers(d.conf.update.getOn(o)),{style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options?.search?.select?.data||o.options?.select?.data,c=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):o.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:2,modelValue:d.conf.update.form[o.key],"onUpdate:modelValue":c=>d.conf.update.form[o.key]=c,ref_for:!0},d.conf.update.getBind(o),e.toHandlers(d.conf.update.getOn(o)),{disabled:d.conf.update.getDisabled(o)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)],64)):e.renderSlot(d.$slots,"table-"+o.key,{key:1,row:r,item:o},()=>[e.unref(B).customComponent[o.type??""]?.table?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[o.type??""]?.table),e.mergeProps({key:0,modelValue:r[o.key],"onUpdate:modelValue":c=>r[o.key]=c,ref_for:!0},o.options?.[o.type??""],e.toHandlers(o.options?.[o.type??""]?.on||{})),null,16,["modelValue","onUpdate:modelValue"])):o.type==="switch"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[o.options?.switch?.tableConfig?.change?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:0,modelValue:r[o.key],"onUpdate:modelValue":c=>r[o.key]=c,loading:o.options?.switch?.loadingMap?.[r[d.option.table?.rowKey]]?.loading,"before-change":()=>o.options?.switch?.tableBeforeChange?.(o.key,r),ref_for:!0},o.options?.switch),null,16,["modelValue","onUpdate:modelValue","loading","before-change"])):(e.openBlock(),e.createElementBlock("span",ae,e.toDisplayString(r[o.key]===o.options?.switch?.activeValue?o.options?.switch?.activeText:o.options?.switch?.inactiveText),1))],64)):(e.openBlock(),e.createElementBlock("span",{key:2,style:e.normalizeStyle({"--table-text-click-color":o.table?.click?.color}),class:e.normalizeClass({"table-text-click":o.table?.click?.callback}),onClick:c=>o.table?.click?.callback?.(r),innerHTML:o.table?.format?o.table?.format(r):r[o.key]},null,14,ne))])],64))],64))]),_:2},1040,["prop","label"])):e.createCommentVNode("",!0)],64))),128)}}}),re={class:"row form-item-content",style:{width:"100%"}},ie={class:"col column form-item-content-item"},de={class:"col"},se=["innerHTML"],ce=e.defineComponent({__name:"formColumn",props:{conf:{},item:{}},setup(l){return(a,f)=>(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{label:a.item.item.text?.form?.label??a.item.item.label,prop:a.item.item.key,"label-width":a.item.item.text?.form?.label==""?0:a.item.item.form?.labelWidth||a.conf.option.form?.labelWidth},{default:e.withCtx(()=>[e.createElementVNode("div",re,[e.renderSlot(a.$slots,"form-"+a.item.item.key+"-start",{row:a.conf.update.form,item:a.item.item}),e.createElementVNode("div",ie,[e.createElementVNode("div",de,[e.renderSlot(a.$slots,"form-"+a.item.item.key,{row:a.conf.update.form,item:a.item.item},()=>[a.item.item.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:a.conf.update.form[a.item.item.key],"onUpdate:modelValue":f[0]||(f[0]=d=>a.conf.update.form[a.item.item.key]=d)},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item)}),null,16,["modelValue","disabled"])):a.item.item.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:1,modelValue:a.conf.update.form[a.item.item.key],"onUpdate:modelValue":f[1]||(f[1]=d=>a.conf.update.form[a.item.item.key]=d)},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item)}),null,16,["modelValue","disabled"])):a.item.item.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:2,modelValue:a.conf.update.form[a.item.item.key],"onUpdate:modelValue":f[2]||(f[2]=d=>a.conf.update.form[a.item.item.key]=d)},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.conf.update.getBind(a.item.item).data,d=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled"])):a.item.item.type==="radio"?(e.openBlock(),e.createBlock(e.unref(h.ElRadioGroup),e.mergeProps({key:3,modelValue:a.conf.update.form[a.item.item.key],"onUpdate:modelValue":f[3]||(f[3]=d=>a.conf.update.form[a.item.item.key]=d)},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.conf.update.getBind(a.item.item).data,d=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled"])):a.item.item.type==="list"?(e.openBlock(),e.createBlock(U,e.mergeProps({key:4,row:a.conf.update.form,field:a.item.item.key},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item),style:{width:"100%"}}),null,16,["row","field","disabled"])):a.item.item.type==="treeSelect"?(e.openBlock(),e.createBlock(e.unref(h.ElTreeSelect),e.mergeProps({key:5,modelValue:a.conf.update.form[a.item.item.key],"onUpdate:modelValue":f[4]||(f[4]=d=>a.conf.update.form[a.item.item.key]=d)},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item),style:{width:"100%"}}),null,16,["modelValue","disabled"])):a.item.item.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(h.ElDatePicker),e.mergeProps({key:6,modelValue:a.conf.update.form[a.item.item.key],"onUpdate:modelValue":f[5]||(f[5]=d=>a.conf.update.form[a.item.item.key]=d)},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item)}),null,16,["modelValue","disabled"])):a.item.item.type&&(e.unref(B).customComponent[a.item.item.type]||e.unref(B).customComponent[a.item.item.type]?.form)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[a.item.item.type]?.form||e.unref(B).customComponent[a.item.item.type]),e.mergeProps({key:7,modelValue:a.conf.update.form[a.item.item.key],"onUpdate:modelValue":f[6]||(f[6]=d=>a.conf.update.form[a.item.item.key]=d)},a.conf.update.getBind(a.item.item),e.toHandlers(a.conf.update.getOn(a.item.item)),{disabled:a.conf.update.getDisabled(a.item.item)}),null,16,["modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(a.$slots,"form-"+a.item.item.key+"-right",{row:a.conf.update.form,item:a.item.item})]),e.renderSlot(a.$slots,"form-"+a.item.item.key+"-tip",{row:a.conf.update.form,item:a.item.item},()=>[a.item.item.form?.tipText?(e.openBlock(),e.createElementBlock("div",{key:0,class:"form-tip-text",innerHTML:typeof a.item.item.form?.tipText=="function"?a.item.item.form?.tipText(a.conf.update.form,a.conf.update.type):a.item.item.form?.tipText},null,8,se)):e.createCommentVNode("",!0)])]),e.renderSlot(a.$slots,"form-"+a.item.item.key+"-end",{row:a.conf.update.form,item:a.item.item})])]),_:3},8,["label","prop","label-width"]))}}),fe={key:0,class:"relative curd-search fit-width"},pe={class:"mb-10 flex justify-between items-center fit-width"},me={class:"flex items-center",style:{gap:"10px"}},ge={key:0},he={key:1},ye={key:2},ke={class:"export-btn"},be={key:1,class:"export-btn"},ue={class:"flex items-center table-tools-right",style:{gap:"10px"}},we={class:"row justify-end mt-10 mb-10 table-bottom-pagination"},Ce={class:"dialog-footer"},Be={class:"dialog-footer"},$=e.defineComponent({__name:"index",props:{option:{default:{}}},setup(l,{expose:a}){const f=b.EDialog,d=l,n=b.isFun,{conf:t,switchConfirmRef:o,ruleFormRef:r,tableRef:c}=q(d);return a({conf:t}),(g,p)=>{const s=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative cc1-form-box",[l.option.table?.fitHeight?"col":"no-min-height"]])},[e.createElementVNode("div",{class:e.normalizeClass(["row",[l.option.table?.fitHeight?"absolute fit":""]]),style:{overflow:"hidden"}},[e.renderSlot(g.$slots,"box-left"),e.createElementVNode("div",{class:e.normalizeClass(["column fit-width no-wrap",[l.option.table?.fitHeight?"col":""]])},[l.option.search?.show!==!1?(e.openBlock(),e.createElementBlock("div",fe,[e.createVNode(e.unref(h.ElForm),{model:e.unref(t).search.form,inline:"",size:l.option.size?.search},{default:e.withCtx(()=>[e.renderSlot(g.$slots,"search-start",{row:e.unref(t).search.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(t).search.column.list,i=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i.key},[(typeof i.show?.search=="function"?i.show?.search(e.unref(t).search.form):i.show?.search)?(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{key:0,label:i.text?.search?.label??i.label},{default:e.withCtx(()=>[e.renderSlot(g.$slots,"search-"+i.key,{row:e.unref(t).search.form},()=>[i.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:e.unref(t).search.form[i.key],"onUpdate:modelValue":m=>e.unref(t).search.form[i.key]=m,placeholder:e.unref(t).search.getPlaceholder(i),clearable:"",disabled:i.disabled?.search,ref_for:!0},i.options?.search?.input||i.options?.input,e.toHandlers(i.options?.search?.input?.on||i.options?.input?.on||{})),null,16,["modelValue","onUpdate:modelValue","placeholder","disabled"])):i.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:1,modelValue:e.unref(t).search.form[i.key],"onUpdate:modelValue":m=>e.unref(t).search.form[i.key]=m,placeholder:e.unref(t).search.getPlaceholder(i,e.unref(k).tCurd("placeholderSelect")),clearable:"",disabled:i.disabled?.search,ref_for:!0},i.options?.search?.switch||i.options?.switch,e.toHandlers(i.options?.search?.switch?.on||i.options?.switch?.on||{})),{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:i.options?.switch?.activeValue,label:i.options?.switch?.activeText,value:i.options?.switch?.activeValue},null,8,["label","value"])),(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:i.options?.switch?.inactiveValue,label:i.options?.switch?.inactiveText,value:i.options?.switch?.inactiveValue},null,8,["label","value"]))]),_:2},1040,["modelValue","onUpdate:modelValue","placeholder","disabled"])):i.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:2,modelValue:e.unref(t).search.form[i.key],"onUpdate:modelValue":m=>e.unref(t).search.form[i.key]=m,placeholder:e.unref(t).search.getPlaceholder(i,e.unref(k).tCurd("placeholderSelect")),clearable:"",disabled:i.disabled?.search,ref_for:!0},i.options?.search?.select||i.options?.select,e.toHandlers(i.options?.search?.select?.on||i.options?.select?.on||{})),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.options?.select?.data,m=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","placeholder","disabled"])):i.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(h.ElDatePicker),e.mergeProps({key:3,modelValue:e.unref(t).search.form[i.key],"onUpdate:modelValue":m=>e.unref(t).search.form[i.key]=m,disabled:i.disabled?.search,ref_for:!0},i.options?.search?.datetime||i.options?.datetime,e.toHandlers(i.options?.search?.datetime?.on||i.options?.datetime?.on||{})),null,16,["modelValue","onUpdate:modelValue","disabled"])):i.type&&e.unref(B).customComponent[i.type]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[i.type]),e.mergeProps({key:4,modelValue:e.unref(t).search.form[i.key],"onUpdate:modelValue":m=>e.unref(t).search.form[i.key]=m,ref_for:!0},i.options?.search?.[i.type]||i.options?.[i.type],e.toHandlers(i.options?.search?.[i.type]?.on||i.options?.[i.type]?.on||{}),{disabled:i.disabled?.search}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(g.$slots,"search-"+i.key+"-right",{row:e.unref(t).search.form})]),_:2},1032,["label"])):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(g.$slots,"search-center",{row:e.unref(t).search.form}),l.option.tools?.search||l.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{key:0},{default:e.withCtx(()=>[l.option.tools?.search?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,type:"primary",onClick:e.unref(t).search.submit},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("search")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),l.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:1,onClick:e.unref(t).search.reset},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("reset")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.renderSlot(g.$slots,"search-end",{row:e.unref(t).search.form})]),_:3},8,["model","size"])])):e.createCommentVNode("",!0),e.createElementVNode("div",pe,[e.createElementVNode("div",me,[e.unref(n)(l.option.tools?.add)?(e.openBlock(),e.createElementBlock("div",ge,[e.createVNode(e.unref(h.ElButton),{type:"primary",onClick:p[0]||(p[0]=i=>e.unref(t).update.open(e.unref(f).Add)),size:l.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("add")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),l.option.table?.selectable&&e.unref(n)(l.option.tools?.delete)?(e.openBlock(),e.createElementBlock("div",he,[e.createVNode(e.unref(h.ElButton),{type:"danger",onClick:p[1]||(p[1]=i=>e.unref(t).remove.open(e.unref(t).table.selection.list)),size:l.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("delete")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),l.option.tools?.expand?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(e.unref(h.ElButton),{type:"warning",onClick:p[2]||(p[2]=i=>e.unref(t).table.expand.all()),size:l.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("expandCollapse")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),l.option.tools?.export?.show?(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[l.option.tools?.export?.dropdown?.show?(e.openBlock(),e.createBlock(e.unref(h.ElDropdown),{key:0,onCommand:e.unref(t).export.click},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(h.ElDropdownMenu),{size:l.option.size?.search},{default:e.withCtx(()=>[l.option.tools?.export?.dropdown?.select&&(l.option.table?.selectable||e.unref(n)(l.option.tools?.delete))?(e.openBlock(),e.createBlock(e.unref(h.ElDropdownItem),{key:0,command:"select"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("exportSelect")),1)]),_:1})):e.createCommentVNode("",!0),l.option.tools?.export?.dropdown?.page?(e.openBlock(),e.createBlock(e.unref(h.ElDropdownItem),{key:1,command:"page"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("exportPage")),1)]),_:1})):e.createCommentVNode("",!0),l.option.tools?.export?.dropdown?.all?(e.openBlock(),e.createBlock(e.unref(h.ElDropdownItem),{key:2,command:"all"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("exportAll")),1)]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["size"])]),default:e.withCtx(()=>[e.createElementVNode("div",ke,[e.createVNode(e.unref(h.ElButton),{type:"warning",loading:e.unref(t).export.loading,size:l.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("export")),1)]),_:1},8,["loading","size"])])]),_:1},8,["onCommand"])):(e.openBlock(),e.createElementBlock("div",be,[e.createVNode(e.unref(h.ElButton),{type:"warning",loading:e.unref(t).export.loading,size:l.option.size?.search,onClick:p[3]||(p[3]=i=>e.unref(t).export.run.start("all"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("export")),1)]),_:1},8,["loading","size"])]))],64)):e.createCommentVNode("",!0),e.renderSlot(g.$slots,"tools-left")]),e.createElementVNode("div",ue,[e.renderSlot(g.$slots,"tools-right"),e.unref(t).page.showTools?(e.openBlock(),e.createBlock(e.unref(h.ElPagination),e.mergeProps({key:0,"current-page":e.unref(t).page.num,"onUpdate:currentPage":p[4]||(p[4]=i=>e.unref(t).page.num=i),"page-size":e.unref(t).page.size,"onUpdate:pageSize":p[5]||(p[5]=i=>e.unref(t).page.size=i),background:"","page-sizes":e.unref(t).page.sizeList,"pager-count":e.unref(t).page.pagerCount,layout:e.unref(t).page.layout,total:e.unref(t).page.total,size:l.option.size?.table,onSizeChange:e.unref(t).table.getList,onCurrentChange:e.unref(t).table.getList},l.option.page?.pagination||{},e.toHandlers(l.option.page?.pagination?.on||{})),null,16,["current-page","page-size","page-sizes","pager-count","layout","total","size","onSizeChange","onCurrentChange"])):e.createCommentVNode("",!0),l.option.tools?.refresh===void 0||l.option.tools?.refresh?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["refresh-btn",[l.option.size?.search]]),onClick:p[6]||(p[6]=(...i)=>e.unref(t).table.getList&&e.unref(t).table.getList(...i))},[e.createVNode(Z)],2)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(["fit-width relative form-box",[l.option.table?.fitHeight?"col ":"",l.option.table?.editMode?"edit-mode":""]])},[e.createElementVNode("div",{class:e.normalizeClass(["column form-box-content",[l.option.table?.fitHeight?"absolute fit":""]])},[e.withDirectives((e.openBlock(),e.createBlock(e.unref(h.ElTable),e.mergeProps({ref_key:"tableRef",ref:c,data:e.unref(t).table.data,border:l.option.table?.border===void 0?!0:l.option.table?.border,onSelectionChange:e.unref(t).table.selection.change,onSortChange:e.unref(t).table.sort.change,"expand-row-keys":e.unref(t).table.expand.rowKeys,onExpandChange:e.unref(t).table.expand.change},l.option.table,e.toHandlers(l.option.table?.on||{})),{default:e.withCtx(()=>[(typeof l.option.table?.selectable=="object"?l.option.table?.selectable?.show:l.option.table?.selectable)||e.unref(n)(l.option.tools?.delete)||l.option.tools?.export?.show&&l.option.tools?.export?.select?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:0,type:"selection",width:"40",align:"center",fixed:"left","show-overflow-tooltip":!1,className:"cc1-form-selectable-column"},typeof l.option.table?.selectable=="object"?l.option.table?.selectable:{},e.toHandlers(typeof l.option.table?.selectable=="object"?l.option.table?.selectable?.on||{}:{})),null,16)):e.createCommentVNode("",!0),e.createVNode(le,{conf:e.unref(t),columnList:e.unref(t).table.column.list,option:l.option},e.createSlots({_:2},[e.renderList(g.$slots,(i,m)=>({name:m,fn:e.withCtx(y=>[e.renderSlot(g.$slots,m,e.normalizeProps(e.guardReactiveProps(y||{})))])}))]),1032,["conf","columnList","option"]),e.unref(n)(l.option.table?.add)||e.unref(n)(l.option.table?.update)||e.unref(n)(l.option.table?.delete)||e.unref(n)(l.option.table?.view)||g.$slots["table-op-left"]||g.$slots["table-op-right"]?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:1,width:"auto","max-width":"200",align:"center",fixed:"right"},l.option.table?.operate,{"show-overflow-tooltip":!1}),{header:e.withCtx(()=>[e.renderSlot(g.$slots,"table-header-op",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("operation")),1)])]),default:e.withCtx(({row:i})=>[e.createVNode(e.unref(h.ElForm),{size:l.option.size?.table},{default:e.withCtx(()=>[e.renderSlot(g.$slots,"table-op-left",{row:i}),e.unref(t).update.type===e.unref(f).Update&&l.option.table?.inlineEdit&&e.unref(t).update.form[d.option.table?.rowKey]===i[d.option.table?.rowKey]?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(e.unref(h.ElButton),{link:"",type:"info",onClick:e.unref(t).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("cancel")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(h.ElButton),{link:"",type:"primary",onClick:e.unref(t).update.submit,loading:e.unref(t).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("confirm")),1)]),_:1},8,["onClick","loading"]),e.renderSlot(g.$slots,"table-op-edit-right",{row:i})],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(n)(l.option.table?.add,i)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,link:"",type:"primary",onClick:m=>e.unref(t).update.open(e.unref(f).Add,i)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("add")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.unref(n)(l.option.table?.view,i)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:1,link:"",type:"primary",onClick:m=>e.unref(t).update.open(e.unref(f).View,i)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("view")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.unref(n)(l.option.table?.update,i)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:2,link:"",type:"warning",onClick:m=>e.unref(t).update.open(e.unref(f).Update,i)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("edit")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.unref(n)(l.option.table?.delete,i)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:3,link:"",type:"danger",onClick:m=>e.unref(t).remove.open([i])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("delete")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.renderSlot(g.$slots,"table-op-right",{row:i})],64))]),_:2},1032,["size"])]),_:3},16)):e.createCommentVNode("",!0)]),_:3},16,["data","border","onSelectionChange","onSortChange","expand-row-keys","onExpandChange"])),[[s,e.unref(t).table.loading]])],2)],2),e.createElementVNode("div",we,[(l.option.page?.show===void 0||l.option.page?.show)&&!e.unref(t).page.showTools?(e.openBlock(),e.createBlock(e.unref(h.ElPagination),e.mergeProps({key:0,"current-page":e.unref(t).page.num,"onUpdate:currentPage":p[7]||(p[7]=i=>e.unref(t).page.num=i),"page-size":e.unref(t).page.size,"onUpdate:pageSize":p[8]||(p[8]=i=>e.unref(t).page.size=i),background:"","page-sizes":e.unref(t).page.sizeList,"pager-count":e.unref(t).page.pagerCount,layout:e.unref(t).page.layout,total:e.unref(t).page.total,size:l.option.size?.table,onSizeChange:e.unref(t).table.getList,onCurrentChange:e.unref(t).table.getList},l.option.page?.pagination||{},e.toHandlers(l.option.page?.pagination?.on||{})),null,16,["current-page","page-size","page-sizes","pager-count","layout","total","size","onSizeChange","onCurrentChange"])):e.createCommentVNode("",!0)])],2),e.renderSlot(g.$slots,"box-right")],2),e.createVNode(e.unref(h.ElDialog),e.mergeProps({modelValue:e.unref(t).update.show,"onUpdate:modelValue":p[9]||(p[9]=i=>e.unref(t).update.show=i),title:e.unref(t).update.title,"before-close":e.unref(t).update.close},l.option.dialog),{footer:e.withCtx(()=>[e.createElementVNode("span",Ce,[e.createVNode(e.unref(h.ElForm),{size:l.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(h.ElButton),{onClick:e.unref(t).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("close")),1)]),_:1},8,["onClick"]),e.unref(t).update.type!==e.unref(f).View?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,type:"primary",onClick:e.unref(t).update.submit,loading:e.unref(t).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("submit")),1)]),_:1},8,["onClick","loading"])):e.createCommentVNode("",!0)]),_:1},8,["size"])])]),default:e.withCtx(()=>[e.createVNode(e.unref(h.ElForm),{ref_key:"ruleFormRef",ref:r,model:e.unref(t).update.form,rules:e.unref(t).update.rules,size:l.option.size?.form,class:"update-dialog-form"},{default:e.withCtx(()=>[e.unref(t).update.showContent?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(t).update.formColumn,i=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(n)((()=>{const m=[],y=C=>{C?.item?.children?y(C.item.children):m.push(...C.map(E=>E.item?.show?.form))};return y(i),m})(),e.unref(t).update.form,e.unref(t).update.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row curd-row",{stripe:l.option.form?.stripe===void 0?!0:l.option.form?.stripe}])},[e.renderSlot(g.$slots,"form-start",{row:e.unref(t).update.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i,m=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(n)(m.item.show?.form,e.unref(t).update.form,e.unref(t).update.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([m.item.form.span>0?`col-${e.unref(t).getColumnSpan(m,i)}`:"col",`form-item-col-${m.item.key}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.item.children?m.children:[m],y=>(e.openBlock(),e.createBlock(ce,{key:y.item.key,conf:e.unref(t),item:y},e.createSlots({_:2},[e.renderList(g.$slots,(C,E)=>({name:E,fn:e.withCtx(V=>[e.renderSlot(g.$slots,E,e.mergeProps({ref_for:!0},V||{}))])}))]),1032,["conf","item"]))),128))],2)):e.createCommentVNode("",!0)],64))),256)),e.renderSlot(g.$slots,"form-end",{row:e.unref(t).update.form})],2)):e.createCommentVNode("",!0)],64))),256)):e.createCommentVNode("",!0)]),_:3},8,["model","rules","size"])]),_:3},16,["modelValue","title","before-close"]),e.createVNode(e.unref(h.ElDialog),{modelValue:e.unref(t).remove.show,"onUpdate:modelValue":p[10]||(p[10]=i=>e.unref(t).remove.show=i),title:e.unref(t).remove.title,"close-on-click-modal":!1},{footer:e.withCtx(()=>[e.createElementVNode("span",Be,[e.createVNode(e.unref(h.ElForm),{size:l.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(h.ElButton),{onClick:e.unref(t).remove.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("close")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(h.ElButton),{type:"danger",onClick:e.unref(t).remove.submit,loading:e.unref(t).remove.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(k).tCurd("confirmDelete")),1)]),_:1},8,["onClick","loading"])]),_:1},8,["size"])])]),default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(k).tCurd("confirmDeleteMessage",e.unref(t).remove.items.length)),1)]),_:1},8,["modelValue","title"]),e.createVNode(Q,{ref_key:"switchConfirmRef",ref:o,size:l.option.size?.form},null,8,["size"])],2)}}});class Ve{static async download(a,f="download.png"){const d=document.createElement("a");d.style.display="none",d.href=a,d.setAttribute("download",f),typeof d.download>"u"&&d.setAttribute("target","_blank"),document.body.appendChild(d),d.click(),document.body.removeChild(d),window.URL.revokeObjectURL(a)}static exportJSONFile=(a,f)=>{const d=new Blob([JSON.stringify(a)],{type:"application/json"}),n=URL.createObjectURL(d),t=document.createElement("a");t.href=n,t.download=`${f||"config"}.json`,t.click()};static importFile=async a=>new Promise((f,d)=>{const n=document.createElement("input");n.type="file";const t=a?.accept||".json";n.accept=t,n.style.display="none",n.onchange=o=>{const r=o.target.files[0];if(!r){b.fail("未选择文件"),d("未选择文件");return}const c=new FileReader;c.onload=async g=>{const p=t==".json"?JSON.parse(g.target.result):g.target.result;f(p)},c.onerror=()=>{b.fail("文件读取失败"),d("文件读取失败")},c.readAsText(r),document.body.removeChild(n)},document.body.appendChild(n),n.click()})}const M=(l,a)=>{if(l.component("TCurd",$),l.component("TFormList",U),l.component("TColumn",F),a?.customComponent){B.customComponent=a.customComponent;for(const f in a.customComponent)l.component(f,a.customComponent[f])}},Ee={install:M};w.ArrUtil=D,w.ExcelUtil=O,w.TColumn=F,w.TCurd=$,w.TFile=Ve,w.TForm=B,w.TFormConfig=u,w.TFormI18n=k,w.TFormList=U,w.TSys=b,w.default=Ee,w.install=M,Object.defineProperties(w,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
@@ -24,6 +24,7 @@ declare const conf: {
24
24
  value?: any;
25
25
  children?: /*elided*/ any[] | undefined;
26
26
  disabled?: {
27
+ table?: boolean | undefined;
27
28
  create?: boolean | undefined;
28
29
  update?: boolean | undefined;
29
30
  search?: boolean | undefined;
@@ -446,6 +447,7 @@ declare var __VLS_7: {
446
447
  value?: any;
447
448
  children?: /*elided*/ any[] | undefined;
448
449
  disabled?: {
450
+ table?: boolean | undefined;
449
451
  create?: boolean | undefined;
450
452
  update?: boolean | undefined;
451
453
  search?: boolean | undefined;
@@ -846,6 +848,7 @@ declare var __VLS_7: {
846
848
  value?: any;
847
849
  children?: /*elided*/ any[] | undefined;
848
850
  disabled?: {
851
+ table?: boolean | undefined;
849
852
  create?: boolean | undefined;
850
853
  update?: boolean | undefined;
851
854
  search?: boolean | undefined;
@@ -1246,6 +1249,7 @@ declare var __VLS_7: {
1246
1249
  value?: any;
1247
1250
  children?: /*elided*/ any[] | undefined;
1248
1251
  disabled?: {
1252
+ table?: boolean | undefined;
1249
1253
  create?: boolean | undefined;
1250
1254
  update?: boolean | undefined;
1251
1255
  search?: boolean | undefined;
@@ -1646,6 +1650,7 @@ declare var __VLS_7: {
1646
1650
  value?: any;
1647
1651
  children?: /*elided*/ any[] | undefined;
1648
1652
  disabled?: {
1653
+ table?: boolean | undefined;
1649
1654
  create?: boolean | undefined;
1650
1655
  update?: boolean | undefined;
1651
1656
  search?: boolean | undefined;
@@ -2046,6 +2051,7 @@ declare var __VLS_7: {
2046
2051
  value?: any;
2047
2052
  children?: /*elided*/ any[] | undefined;
2048
2053
  disabled?: {
2054
+ table?: boolean | undefined;
2049
2055
  create?: boolean | undefined;
2050
2056
  update?: boolean | undefined;
2051
2057
  search?: boolean | undefined;
@@ -2562,6 +2568,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
2562
2568
  value?: any;
2563
2569
  children?: /*elided*/ any[] | undefined;
2564
2570
  disabled?: {
2571
+ table?: boolean | undefined;
2565
2572
  create?: boolean | undefined;
2566
2573
  update?: boolean | undefined;
2567
2574
  search?: boolean | undefined;
@@ -15,6 +15,7 @@ declare var __VLS_7: string, __VLS_8: {
15
15
  value?: any;
16
16
  children?: /*elided*/ any[] | undefined;
17
17
  disabled?: {
18
+ table?: boolean | undefined;
18
19
  create?: boolean | undefined;
19
20
  update?: boolean | undefined;
20
21
  search?: boolean | undefined;
@@ -415,6 +416,7 @@ declare var __VLS_7: string, __VLS_8: {
415
416
  value?: any;
416
417
  children?: /*elided*/ any[] | undefined;
417
418
  disabled?: {
419
+ table?: boolean | undefined;
418
420
  create?: boolean | undefined;
419
421
  update?: boolean | undefined;
420
422
  search?: boolean | undefined;
@@ -815,6 +817,7 @@ declare var __VLS_7: string, __VLS_8: {
815
817
  value?: any;
816
818
  children?: /*elided*/ any[] | undefined;
817
819
  disabled?: {
820
+ table?: boolean | undefined;
818
821
  create?: boolean | undefined;
819
822
  update?: boolean | undefined;
820
823
  search?: boolean | undefined;
@@ -1215,6 +1218,7 @@ declare var __VLS_7: string, __VLS_8: {
1215
1218
  value?: any;
1216
1219
  children?: /*elided*/ any[] | undefined;
1217
1220
  disabled?: {
1221
+ table?: boolean | undefined;
1218
1222
  create?: boolean | undefined;
1219
1223
  update?: boolean | undefined;
1220
1224
  search?: boolean | undefined;
@@ -1615,6 +1619,7 @@ declare var __VLS_7: string, __VLS_8: {
1615
1619
  value?: any;
1616
1620
  children?: /*elided*/ any[] | undefined;
1617
1621
  disabled?: {
1622
+ table?: boolean | undefined;
1618
1623
  create?: boolean | undefined;
1619
1624
  update?: boolean | undefined;
1620
1625
  search?: boolean | undefined;
@@ -1,5 +1,5 @@
1
1
  import TSys from '../../utils/TSys';
2
- import { type FormInstance } from 'element-plus';
2
+ import { type FormInstance, type TableInstance } from 'element-plus';
3
3
  import type { CurdConfig, CurdConfigColumn, CurdFormColumn } from './indexType';
4
4
  declare const EDialog: {
5
5
  Add: any;
@@ -42,6 +42,7 @@ export declare const curdConf: (props: {
42
42
  } | undefined;
43
43
  } | undefined;
44
44
  table?: {
45
+ editMode?: boolean | undefined;
45
46
  rowKey?: string | undefined;
46
47
  border?: boolean | undefined;
47
48
  selectable?: boolean | ((data: any) => boolean) | {
@@ -55,6 +56,7 @@ export declare const curdConf: (props: {
55
56
  value?: any;
56
57
  children?: /*elided*/ any[] | undefined;
57
58
  disabled?: {
59
+ table?: boolean | undefined;
58
60
  create?: boolean | undefined;
59
61
  update?: boolean | undefined;
60
62
  search?: boolean | undefined;
@@ -508,6 +510,7 @@ export declare const curdConf: (props: {
508
510
  value?: any;
509
511
  children?: /*elided*/ any[] | undefined;
510
512
  disabled?: {
513
+ table?: boolean | undefined;
511
514
  create?: boolean | undefined;
512
515
  update?: boolean | undefined;
513
516
  search?: boolean | undefined;
@@ -918,6 +921,7 @@ export declare const curdConf: (props: {
918
921
  value?: any;
919
922
  children?: /*elided*/ any[] | undefined;
920
923
  disabled?: {
924
+ table?: boolean | undefined;
921
925
  create?: boolean | undefined;
922
926
  update?: boolean | undefined;
923
927
  search?: boolean | undefined;
@@ -1350,6 +1354,7 @@ export declare const curdConf: (props: {
1350
1354
  value?: any;
1351
1355
  children?: /*elided*/ any[] | undefined;
1352
1356
  disabled?: {
1357
+ table?: boolean | undefined;
1353
1358
  create?: boolean | undefined;
1354
1359
  update?: boolean | undefined;
1355
1360
  search?: boolean | undefined;
@@ -1751,6 +1756,7 @@ export declare const curdConf: (props: {
1751
1756
  selection: {
1752
1757
  list: any[];
1753
1758
  change: (selection: any[]) => void;
1759
+ setList: (list: any[]) => void;
1754
1760
  };
1755
1761
  sort: {
1756
1762
  prop: string;
@@ -1788,6 +1794,7 @@ export declare const curdConf: (props: {
1788
1794
  value?: any;
1789
1795
  children?: /*elided*/ any[] | undefined;
1790
1796
  disabled?: {
1797
+ table?: boolean | undefined;
1791
1798
  create?: boolean | undefined;
1792
1799
  update?: boolean | undefined;
1793
1800
  search?: boolean | undefined;
@@ -2218,6 +2225,7 @@ export declare const curdConf: (props: {
2218
2225
  };
2219
2226
  switchConfirmRef: import("vue").Ref<any, any>;
2220
2227
  ruleFormRef: import("vue").Ref<FormInstance | undefined, FormInstance | undefined>;
2228
+ tableRef: import("vue").Ref<TableInstance | undefined, TableInstance | undefined>;
2221
2229
  };
2222
2230
  export type curdConfType = ReturnType<typeof curdConf>;
2223
2231
  export {};