cc1-form 1.2.21 → 1.2.23

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,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):(C=typeof globalThis<"u"?globalThis:C||self,h(C.cc1Form={},C.ElementPlus,C.VueRouter,C.Vue))})(this,(function(C,h,tt,e){"use strict";class u{static router;static routes;static getRouterPath=()=>this.router.currentRoute.value.path;static EDialog={Add:"Add",Update:"Update",View:"View",Remove:"Remove"};static isFun=(n,...c)=>Array.isArray(n)?n.some(l=>typeof l=="function"?l(...c):l):typeof n=="function"?n(...c):n;static getRouterParams=()=>{const n=this.router.currentRoute.value.query||{},c=this.router.currentRoute.value.params||{};return Object.keys(n).length?n:Object.keys(c).length?c:{}};static moduleObj={};static loadModule=async n=>{if(!u.moduleObj[n])throw new Error(`模块${n}未加载,请赋值如:TSys.moduleObj = { ${n}: ()=>import('${n}') }`);const c=await u.moduleObj[n]();return c.default??c};static tipMessages={};static tipMessagesGap=500;static showMessage(n,c,l={}){const a=Date.now();if(!this.tipMessages[n]||a-this.tipMessages[n]>this.tipMessagesGap){this.tipMessages[n]=a;const o=Object.assign({message:n,type:c},l);h.ElMessage(o),setTimeout(()=>{delete this.tipMessages[n]},this.tipMessagesGap)}}static fail=(n,c={})=>{this.showMessage(n,"error",c)};static success=(n,c={})=>{this.showMessage(n,"success",c)};static loadingObj=null;static loadingTimer=null;static loading=(n=!0,c="Loading...")=>{Timer.un(this.loadingTimer),this.loadingTimer=Timer.once(()=>{n?this.loadingObj=h.ElLoading.service({lock:!0,text:c,background:"rgba(0, 0, 0, 0.3)"}):this.loadingObj&&(this.loadingObj.close(),this.loadingObj=null)},50)};static openUrl=(n,c=!0)=>{if(c){let l=screen.width/2-500,a=screen.height/2-800/2-30;window.open(n,"_blank","toolbar=no, location=yes, directories=no, status=yes, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=1000, height=800, top="+a+", left="+l)}else window.open(n,"DescriptiveWindowName"+StrUtil.getId(),"resizable,scrollbars=yes,status=1,width=1024, height=600, top=0, left=0")};static getImgPic=n=>new Promise(async(c,l)=>{let a=document.getElementById(n.id);const o=await u.loadModule("html2canvas");try{o(a,{logging:!1,allowTaint:!0,scale:window.devicePixelRatio,width:n.windowWidth,height:n.windowHeight,windowWidth:n.windowWidth,windowHeight:n.windowHeight,useCORS:!0,backgroundColor:"#ffffff00"}).then(function(t){let i=t.toDataURL("image/png");c(i)})}catch(t){l(t)}})}class w{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:{expandColumn:!1,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:{index:!1,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=n=>{w.config=ObjectUtil.deepMerge(w.config,n)}}class B{static customComponent={};static findOptions=(n,c)=>{const l=n.column.find(o=>o.key===c),a=o=>o.replace(/-([a-z])/g,(t,i)=>i.toUpperCase());if(l)return l.options[a(l.type)]};static setOptionsData=(n,c,l)=>{const a=B.findOptions(n,c);a&&(a.data=l)};static form={openBefore:{parentId:(n,c,l,a)=>{const o=w.config.table.rowKey;n?c.type===u.EDialog.Add?(c.form.parentId=n[o],c.form.sort=n.children.length+1):c.form.parentId=n.parentId.substring(n.parentId.lastIndexOf(",")+1):(c.form.parentId="0",c.form.sort=l.length+1),B.setOptionsData(a,"parentId",[{[o]:"0",title:"根",children:l}])}}}}function ot(r){return r}const I={search:"搜索",add:"新增",edit:"编辑",view:"查看",delete:"删除",export:"导出",exportSelect:"导出选中",exportPage:"导出本页",exportAll:"导出全部",import:"导入",refresh:"刷新",reset:"重置",expandCollapse:"展开/收缩",operation:"操作",close:"关闭",cancel:"取消",submit:"提交",confirm:"确认",deleteTitle:"删除提示",confirmDelete:"确认删除",confirmDeleteMessage:"确认要删除【{count}】条数据吗?",placeholderInput:"请输入",placeholderSelect:"请选择",checkFormData:"请检查表单数据",selectDataToDelete:"请选择要删除的数据",selectDataToExport:"请选择要导出的数据",noData:"暂无数据",operationSuccess:"操作成功",switchOn:"开启",switchOff:"关闭",confirmModify:"确认修改",confirmSwitchMessage:"确认要修改吗?",mergeColumn:"合并栏位",expandColumn:"展开栏位"};class y{static t(n,...c){if(typeof n=="function")return n(...c);n=String(n);let l=0;return n.replace(/{([^}]+)}/g,(a,o)=>l<c.length?String(c[l++]):`{${o}}`)}static setI18n=n=>{y.curd=ObjectUtil.deepMerge(y.curd,n)};static tCurd(n,...c){return this.t(this.curd[n],...c)}static curd=I}class D{static getIdFun=()=>StrUtil.uuid();static setId=(n,c,l)=>{c[n]||(c[n]=[]);const a=w.config.table.rowKey;c[n].forEach(o=>{l.forEach(t=>{let i=t.default??"";t.type==="number"&&(i=t.default??0),t.type==="boolean"&&(i=t.default??!1),t.type==="time"&&(i=t.default??new Date),o[t.value]===void 0&&(o[t.value]=i)}),o[a]||(o[a]=D.getIdFun())})};static add=(n,c,l,a)=>{const o=JSONUtil.cp(l);D.setId(n,c,l);const t=w.config.table.rowKey;c[n].push(o.reduce((i,d)=>{let m=d.default??"";return d.type==="number"&&(m=d.default??0),d.type==="boolean"&&(m=d.default??!1),d.type==="time"&&(m=d.default??new Date),i[d.value]=m,i},{[t]:D.getIdFun()})),a?.(c)};static remove=(n,c,l,a)=>{const o=w.config.table.rowKey;c[n]=c[n].filter(t=>t[o]!==l[o]),a?.(c)};static getNoIdData=(n,c)=>{const l=JSONUtil.cp(n),a=w.config.table.rowKey;return l.forEach(o=>{o[a]&&delete o[a],c&&o[c]&&D.getNoIdData(o[c],c)}),l}}const R={key:0,class:"column curd-form-com-list",style:{width:"100%",gap:"10px"}},K={key:0},x={class:"row items-center",style:{gap:"10px",width:"100%"}},W={key:1},T=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(r,{emit:n}){const c=r,l=e.reactive({show:!1,add:(o,t,i)=>{D.add(o,t,i,()=>{a("change")})},remove:(o,t,i)=>{D.remove(o,t,i,()=>{a("change")})}});e.onMounted(()=>{D.setId(c.field,c.row,c.itemFields),l.show=!0});const a=n;return(o,t)=>{const i=e.resolveComponent("el-button"),d=e.resolveComponent("el-input");return l.show?(e.openBlock(),e.createElementBlock("div",R,[e.renderSlot(o.$slots,"list-start",{row:r.row}),r.addBottom?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",K,[e.createVNode(i,{link:"",type:"primary",onClick:t[0]||(t[0]=m=>l.add(r.field,r.row,r.itemFields))},{default:e.withCtx(()=>t[3]||(t[3]=[e.createTextVNode("添加")])),_:1})])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.row[r.field],m=>(e.openBlock(),e.createElementBlock("div",x,[e.renderSlot(o.$slots,"item-start",{item:m,row:r.row}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.itemFields,f=>(e.openBlock(),e.createBlock(d,{modelValue:m[f.value],"onUpdate:modelValue":s=>m[f.value]=s,style:e.normalizeStyle({width:r.inputWidth}),class:e.normalizeClass(r.inputClass),placeholder:f[r.label]||f[r.value],onChange:t[1]||(t[1]=s=>a("change"))},null,8,["modelValue","onUpdate:modelValue","style","class","placeholder"]))),256)),e.renderSlot(o.$slots,"item-end",{item:m,row:r.row}),e.createVNode(i,{link:"",type:"danger",onClick:f=>l.remove(r.field,r.row,m)},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode("删除")])),_:2},1032,["onClick"])]))),256)),r.addBottom?(e.openBlock(),e.createElementBlock("div",W,[e.createVNode(i,{link:"",type:"primary",onClick:t[2]||(t[2]=m=>l.add(r.field,r.row,r.itemFields))},{default:e.withCtx(()=>t[5]||(t[5]=[e.createTextVNode("添加")])),_:1})])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"list-end",{row:r.row})])):e.createCommentVNode("",!0)}}}),q={class:"row form-item-content",style:{width:"100%"}},J={class:"col"},G={class:"col"},Q=["innerHTML"],M=e.defineComponent({__name:"column",props:{option:{default:{}},type:{default:""}},setup(r,{expose:n}){const c=u.isFun,l=u.EDialog,a=e.ref(),o=r,t=e.reactive({rules:{},show:!0,form:{},formDefault:{},type:o.type||l.Add,formColumn:[],getDisabled:i=>{if(t.type===l.View)return i.disabled?.view===void 0?!0:u.isFun(i.disabled?.view,t.form);const d=i.disabled?.[t.type===l.Add?"create":"update"];return u.isFun(d,t.form)},getBind:i=>i.options?.[t.type===l.Add?"formAdd":"formUpdate"]?.[i.type]||i.options?.[i.type]||{},getOn:i=>i.options?.[t.type===l.Add?"formAdd":"formUpdate"]?.[i.type]?.on||i.options?.[i.type]?.on||{},getColumnSpan:(i,d)=>{if(i.item.form?.spanCol){const m=o.option.form?.maxSpan||12,f=o.option.form?.defaultSpan||m/2,k=d.filter(g=>!u.isFun(g.item.show?.form,t.form,t.type)).reduce((g,p)=>g+(p.item.form?.span||f),0);return(i.item.form?.span||f)+k}return i.item.form?.span},initColumnForm:()=>{const i=o.option;t.formColumn=[],t.rules={},t.formDefault={};const d=[],m=o.option.form?.maxSpan||12,f=o.option.form?.defaultSpan||m/2;let s=[];const k=p=>{if(p.children){p.children.forEach(b=>{k(b)});return}if(t.formDefault[p.key]=p.value,p.isForm&&(typeof p.show?.form!="boolean"||p.show?.form)){p.form=p.form||{span:f},p.form.span=p.form.span??f;const b=p.form.span,E=s.reduce((V,N)=>V+N.span,b),S=s.length;if(s.push({item:p,span:b}),(S===1&&s[0].span===0||E>=m||b===0&&S>1)&&(d.push(s),s=[]),p.rules){const V={input:y.tCurd("placeholderInput"),select:y.tCurd("placeholderSelect")},N=(V[p.type]||V.input)+p.label;t.rules[p.key]=typeof p.rules=="boolean"?[{required:!0,message:N,trigger:"blur"}]:p.rules}}},g=(p,b)=>{p.isForm=b,Array.isArray(p.children)&&p.children.forEach(E=>g(E,b))};i.column.forEach(p=>{g(p,!0),k(p)}),s.length>0&&d.push(s),t.formColumn=d,t.form=JSONUtil.cp(t.formDefault)}});return t.initColumnForm(),n({ref:a,conf:t}),(i,d)=>(e.openBlock(),e.createBlock(e.unref(h.ElForm),{ref_key:"ruleFormRef",ref:a,model:t.form,rules:t.rules},{default:e.withCtx(()=>[t.show?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.formColumn,(m,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[e.unref(c)(m.map(s=>s.item?.show?.form),t.form,t.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row curd-row",{stripe:r.option.form?.stripe===void 0?!0:r.option.form?.stripe}])},[e.renderSlot(i.$slots,"form-start",{row:t.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m,s=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s.item.key},[e.unref(c)(s.item.show?.form,t.form,t.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([s.item.form.span>0?`col-${t.getColumnSpan(s,m)}`:"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||r.option.form?.labelWidth||"100px"},{default:e.withCtx(()=>[e.createElementVNode("div",q,[e.renderSlot(i.$slots,"form-"+s.item.key+"-start",{row:t.form,item:s.item}),e.createElementVNode("div",J,[e.createElementVNode("div",G,[e.renderSlot(i.$slots,"form-"+s.item.key,{row:t.form,item:s.item},()=>[s.item.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:t.form[s.item.key],"onUpdate:modelValue":k=>t.form[s.item.key]=k,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.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:t.form[s.item.key],"onUpdate:modelValue":k=>t.form[s.item.key]=k,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.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:t.form[s.item.key],"onUpdate:modelValue":k=>t.form[s.item.key]=k,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.getDisabled(s.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.item.options?.select?.data,k=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:k.value,label:k.label,value:k.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:t.form[s.item.key],"onUpdate:modelValue":k=>t.form[s.item.key]=k,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.getDisabled(s.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.item.options?.radio?.data,k=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),{key:k.value,label:k.label,value:k.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):s.item.type==="list"?(e.openBlock(),e.createBlock(T,e.mergeProps({key:4,row:t.form,field:s.item.key,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.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:t.form[s.item.key],"onUpdate:modelValue":k=>t.form[s.item.key]=k,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.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:t.form[s.item.key],"onUpdate:modelValue":k=>t.form[s.item.key]=k,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.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:t.form[s.item.key],"onUpdate:modelValue":k=>t.form[s.item.key]=k,ref_for:!0},t.getBind(s.item),e.toHandlers(t.getOn(s.item)),{disabled:t.getDisabled(s.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(i.$slots,"form-"+s.item.key+"-right",{row:t.form,item:s.item})]),e.renderSlot(i.$slots,"form-"+s.item.key+"-tip",{row:t.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(t.form,t.type):s.item.form?.tipText},null,8,Q)):e.createCommentVNode("",!0)])]),e.renderSlot(i.$slots,"form-"+s.item.key+"-end",{row:t.form,item:s.item})])]),_:2},1032,["label","prop","label-width"])],2)):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(i.$slots,"form-end",{row:t.form})],2)):e.createCommentVNode("",!0)],64))),128)):e.createCommentVNode("",!0)]),_:3},8,["model","rules"]))}});class L{static exportToExcel=async(n,c,l)=>{if(!n||n.length===0)return;const a=await u.loadModule("xlsx"),o=n.map(d=>{const m={};return c.forEach(f=>{m[f.label]=d[f.key]}),m}),t=a.utils.json_to_sheet(o),i=a.utils.book_new();a.utils.book_append_sheet(i,t,"Sheet1"),l?typeof l=="function"&&(l=l()):l=`导出数据_${new Date().Format("yyyy-MM-dd")}_${new Date().getTime()}`,a.writeFile(i,`${l}.xlsx`)}}class ${static delAllKey=n=>{Object.keys(n).forEach(c=>{delete n[c]})};static setValue=(n,c,l=!1)=>{l&&$.delAllKey(n),Object.keys(c).forEach(a=>{n[a]!==c[a]&&(n[a]=c[a])})}}const z=u.EDialog,X=r=>{const n=e.ref(),c=e.ref(),l=e.ref(),a=e.reactive({option:r.option,search:{column:{list:[]},form:{},formDefault:{},getPlaceholder:(o,t=y.tCurd("placeholderInput"))=>o.text?.search?.placeholder===void 0?`${t}${o.label}`:o.text?.search?.placeholder,getFormData:()=>{let o={};r.option.column.forEach(i=>{(typeof i.show?.search=="function"?i.show?.search(a.search.form):i.show?.search)&&(o[i.key]=a.search.form[i.key])});const t=r.option.search?.before?.(o);return t&&(o=t),o},reset:()=>{const o=a.search.formDefault;Object.keys(o).forEach(i=>{r.option.search?.resetMode==="none"?o[i]=void 0:o[i]=a.search.formDefault[i]});const t=ObjectUtil.deepMerge(o,{});$.setValue(a.search.form,t,!0),a.page.num=1,r.option.init!==!1&&a.table.getList()},submit:()=>{a.page.num=1,a.table.getList()}},page:{num:1,total:0,layout:r.option.page?.layout||w.config.pagination.layout,showTools:r.option.page?.showTools||w.config.pagination.showTools,size:r.option.page?.size||w.config.pagination.size,sizeList:r.option.page?.sizeList||w.config.pagination.pageSizes,pagerCount:r.option.page?.pagerCount||w.config.pagination.pagerCount,getQuery:(o={})=>({[w.config.field.page.size]:o.size||a.page.size,[w.config.field.page.num]:o.num||a.page.num,...a.search.getFormData()})},table:{op:{width:(...o)=>o.filter(i=>i).length*30+60},loading:!1,data:[],expand:{isExpand:!1,rowKeys:[],change:(o,t)=>{},all:()=>{if(a.table.expand.isExpand)a.table.expand.rowKeys=[];else{const o=t=>{let i=[];return t.forEach(d=>{i.push(d[r.option.table.rowKey]),d.children&&d.children.length>0&&(i=i.concat(o(d.children)))}),i};a.table.expand.rowKeys=o(a.table.data)}a.table.expand.isExpand=!a.table.expand.isExpand}},column:{list:[],show:{listSource:[],list:[]}},header:{group:{expand:!1,toggleExpandAll:()=>{const o=!a.table.header.group.expand;a.table.header.group.expand=o;const t=i=>{i.forEach(d=>{d.table?.header?.group!==void 0&&(d.table.header.group=!o),d.table?.header?.groupKey!==void 0&&(d.table.header.show=o),Array.isArray(d.children)&&d.children.length>0&&t(d.children)})};t(a.table.column.list)}}},getList:async()=>{a.table.loading=!0;const o=r.option.api.list,t=JSONUtil.cp(a.table.selection.list);try{await a.initApiData("init");let i={};if(a.table.sort.prop){const{props:b,order:E}=w.config.table.sort;i={[b.field]:a.table.sort.prop,[E.field]:a.table.sort.order}}const d=await o({...a.page.getQuery(),...i}),m=w.config.field.result,f=d.data||{[m.list]:d};let s=(Array.isArray(f[m.list]),f[m.list]);const k=a.update.formColumn.flat(),p=ObjectUtil.deepMerge({data:s},{}).data.map(b=>(Object.keys(b).forEach(S=>{const V=k.find(N=>N.item.key===S);V&&["select","radio"].includes(V.item.type)&&(V.item.table.format||(V.item.table.format=N=>V.item.options[V.item.type].data?.find(U=>U.value==N[S])?.label||N[S]))}),b));a.table.data=r.option.data?await r.option.data(p,s):p,a.page.total=f[m.total]||0,setTimeout(()=>{a.table.selection.setList(t)},20)}catch(i){console.error(i)}finally{a.table.loading=!1}},selection:{list:[],change:o=>{a.table.selection.list=o},setList:(o,t)=>{a.table.selection.list=[];const i=l.value;if(i?.clearSelection(),!i||!o?.length)return;const d=r.option.table?.rowKey,m=f=>{const s=k=>{for(const g of k){if(d!=null&&d!==""){if(g[d]===f[d])return g}else if(g===f)return g;if(Array.isArray(g.children)&&g.children.length){const p=s(g.children);if(p!==void 0)return p}}};return s(a.table.data)};o.forEach(f=>{const s=m(f);if(s)if(t){const k=()=>{i.toggleRowSelection(s,!0,!1)};t(f)!==!1&&k()}else i.toggleRowSelection(s,!0,!1)})}},sort:{prop:"",order:"",change:o=>{w.config.table.sort.resetPage&&(a.page.num=1);const t=w.config.table.sort;if(t.change){t.change(o,a);return}a.table.sort.prop=o.prop,o.order===null?(a.table.sort.order="",a.table.sort.prop=""):a.table.sort.order=o.order==="ascending"?t.order.asc:t.order.desc,a.table.getList()}}},export:{run:{start:async o=>{let t=await a.export.run[o](),i=r.option.column;const d=ObjectUtil.deepMerge({data:t,columns:i},{}),m=r.option.tools?.export||{};m.before&&m.before(d),L.exportToExcel(d.data,d.columns,m.fileName)},select:async()=>{a.export.loading=!0;try{if(r.option.tools?.export?.select){await r.option.tools?.export?.select({...a.page.getQuery(),items:a.table.selection.list});return}if(a.table.selection.list.length===0)throw u.fail(y.tCurd("selectDataToExport")),new Error(y.tCurd("selectDataToExport"));return a.table.selection.list}catch(o){console.error(o)}finally{a.export.loading=!1}},page:async()=>{a.export.loading=!0;try{if(r.option.tools?.export?.page){await r.option.tools?.export?.page({...a.page.getQuery()});return}if(a.table.data.length===0)throw u.fail(y.tCurd("noData")),new Error(y.tCurd("noData"));return a.table.data}catch(o){console.error(o)}finally{a.export.loading=!1}},all:async()=>{a.export.loading=!0;try{if(r.option.tools?.export?.all){await r.option.tools?.export?.all({...a.page.getQuery()});return}const o=r.option.api.list,t=await o({...a.page.getQuery({size:999999,num:1})});return(t.data||{[w.config.field.result.list]:t})[w.config.field.result.list]}catch(o){console.error(o)}finally{a.export.loading=!1}}},loading:!1,click:o=>{a.export.loading||a.export.run.start(o)}},update:{title:"",rules:{},show:!1,showContent:!1,loading:!1,type:z.Update,form:{},formDefault:{},formColumn:[],getDisabled:(o,t=!1)=>{if(r.option.table?.editMode&&t)return o.disabled?.table===void 0?!1:u.isFun(o.disabled?.table,a.update.form);if(a.update.type===z.View)return o.disabled?.view===void 0?!0:u.isFun(o.disabled?.view,a.update.form);const i=o.disabled?.[a.update.type===z.Add?"create":"update"];return u.isFun(i,a.update.form)},getBind:o=>o.options?.[a.update.type===z.Add?"formAdd":"formUpdate"]?.[o.type]||o.options?.[o.type]||{},getOn:(o,t)=>{const d=o.options?.[a.update.type===z.Add?"formAdd":"formUpdate"]?.[o.type]?.on||o.options?.[o.type]?.on||{},m={};return Object.keys(d).forEach(f=>{const s=d[f];typeof s=="function"?m[f]=function(...k){return s.apply(this,[...k,t||a.update.form,o])}:m[f]=s}),m},getOptions:o=>{try{const i=a.update.formColumn.flat().find(d=>d.item.key===o)?.item;return i?{options:i.options,bind:a.update.getBind(i)}:{options:{},bind:{}}}catch{return{options:{},bind:{}}}},edit:{data:{},getApiData:o=>{if(r.option.form?.editAll)return o;let t={[r.option.table?.rowKey]:a.update.edit.data[r.option.table?.rowKey]};return Object.keys(a.update.edit.data).forEach(i=>{o[i]!==a.update.edit.data[i]&&(t[i]=o[i])}),t}},view:{},open:(o,t)=>{a.update.showContent||FunUtil.throttle(async()=>{u.loading(!0);try{a.update.type=o;const i=o===z.Add;a.update.edit.data=t,a.update.title=y.tCurd(i?"add":o===z.View?"view":"edit");const d=ObjectUtil.deepMerge(i?a.update.formDefault:t,{});$.setValue(a.update.form,d,!0),await a.initApiData("update"),await r.option.form?.openBefore?.(a.update.form,a.update),(!r.option.table?.inlineEdit||i)&&(a.update.show=!0,a.update.showContent=!0),r.option.form?.openAfter?.(a.update.form,a.update)}catch(i){console.error(i)}finally{u.loading(!1)}})},submit:()=>{FunUtil.throttle(async()=>{await c.value?.validate(async(d,m)=>new Promise((f,s)=>{d||(u.fail(y.tCurd("checkFormData")),s(!1)),f()})),a.update.loading=!0;const o=a.update.type===z.Add?r.option.api.create:r.option.api.update;try{await r.option.form?.submitBefore?.(a.update.form,a.update)}catch{a.update.loading=!1;return}let t=ObjectUtil.deepMerge(a.update.form,{});delete t.children;const i=new Set(r.option.column.filter(d=>d.type==="datetime").map(d=>d.key));Object.keys(t).forEach(d=>{if(i.has(d)&&t[d]!=null){const m=new Date(t[d]).getTime();isNaN(m)||(t[d]=m)}});try{if(!o)return;await o({...t}),a.update.close(),await a.table.getList(),r.option.form?.submitAfter?.(t,a.update)}catch(d){console.error(d)}finally{a.update.loading=!1}})},close:()=>{a.update.show=!1,r.option.table?.inlineEdit&&(a.update.form={}),setTimeout(()=>{a.update.showContent=!1},350)}},remove:{title:y.tCurd("deleteTitle"),show:!1,items:[],loading:!1,close:()=>{a.remove.show=!1},open:o=>{if(o.length===0){u.fail(y.tCurd("selectDataToDelete"));return}a.remove.items=o,a.remove.show=!0},submit:()=>{FunUtil.throttle(async()=>{a.remove.loading=!0;const o=r.option.api.delete;try{if(!o)return;await o({[r.option.table?.rowKey]:a.remove.items.map(t=>t[r.option.table?.rowKey]),items:a.remove.items}),u.success(y.tCurd("operationSuccess")),a.table.data.length<=1&&a.page.num>1&&(a.page.num-=1),a.remove.close(),await a.table.getList()}catch(t){console.error(t)}finally{a.remove.loading=!1}})}},init:()=>{a.initCurdConfig(),a.initColumnOptions(),a.initColumnForm()},apiDataMap:{},initApiData:async o=>{const t=[],i=d=>{if(d.children&&d.children.length){d.children.forEach(m=>i(m));return}if(d.options?.[d.type]?.dataApi&&d.options?.[d.type]?.dataApiConfig?.[o]){if(a.apiDataMap[d.key]&&d.options?.[d.type]?.dataApiConfig?.once)return;const m=(async()=>{try{let f=await d.options?.[d.type]?.dataApi?.(a.update.form,a.update.type);if(f){const s=d.options?.[d.type]?.dataPath;!Array.isArray(f)&&s&&(f=ObjectUtil.getPathValue(f,s)),d.options[d.type].data=f,d.options.search[d.type].data=f,d.options.search[d.options.search.type??d.type]||(d.options.search[d.options.search.type??d.type]={}),d.options.search[d.options.search.type??d.type].data=f,d.options.formAdd[d.type].data=f,d.options.formUpdate[d.type].data=f,a.apiDataMap[d.key]=f}}catch{}})();t.push(m)}};return r.option.column.forEach(d=>{i(d)}),await Promise.all(t),!0},initCurdConfig:()=>{const o=ObjectUtil.deepMerge(w.config,{});o.table.emptyText=y.tCurd("noData"),r.option.size=r.option.size||{},o.table.size=r.option.size.table||o.size.table,o.form.size=r.option.size.form||o.size.form,o.size.search=r.option.size.search||o.size.search;const t=ObjectUtil.deepMerge(o,r.option||{});Object.keys(t).forEach(i=>{r.option[i]=t[i]})},initColumnOptions:()=>{let o=JSONUtil.cp(w.config.columnConfig);o.options=ObjectUtil.deepMerge({switch:{activeText:y.tCurd("switchOn"),inactiveText:y.tCurd("switchOff")}},o.options);const t=i=>{for(const d in o){if(d==="table"){if(i.table=ObjectUtil.deepMerge(o.table,i.table||{}),i.children){i.children.forEach(f=>{t(f)});return}}else d==="type"?i.type=i.type||o.type:i[d]=ObjectUtil.deepMerge(o[d],i[d]||{});i.options=i.options||{},i.options[i.type]=i.options[i.type]||{},i.options[i.type].size=r.option.size.form,["search","formAdd","formUpdate"].forEach(f=>{i.options[f]=i.options[f]||ObjectUtil.deepMerge(i.options,{}),i.options[f][i.type]=i.options[f][i.type]||{},i.options[f][i.type].size=f==="search"?r.option.size.search:r.option.size.form}),i.table=ObjectUtil.deepMerge(i.table,i.options[i.type].table||{})}i.type==="switch"&&(i.options.switch.tableBeforeChange=async(d,m)=>{const f=i.options?.switch;try{f.tableConfig?.confirm&&await n.value?.open({title:y.tCurd("confirmModify"),content:y.tCurd("confirmSwitchMessage")});try{if(!r.option.api.update&&!f.tableConfig?.api)return;const s=m[r.option.table?.rowKey];f.loadingMap||(f.loadingMap={}),f.loadingMap[s]||(f.loadingMap[s]={loading:!1}),f.loadingMap[s].loading=!0;const k=m[d]===f.activeValue?f.inactiveValue:f.activeValue,g=f.tableConfig?.api?f.tableConfig.api:r.option.api.update;if(!g)return;try{await g({...m,[d]:k},"switch")}catch{return!1}finally{f.loadingMap[s].loading=!1}return u.success(y.tCurd("operationSuccess")),f.tableConfig?.loadList&&(a.table.loading=!0,a.table.getList(),a.table.loading=!1),!0}catch(s){return console.error(s),!1}finally{a.table.loading=!1}}catch{return!1}}),i.type==="treeSelect"&&(i.options.treeSelect.rowKey=r.option.table?.rowKey,i.options.treeSelect.nodeKey=r.option.table?.rowKey)};r.option.column.forEach(t),r.option.table?.column?.forEach(t)},getColumnSpan:(o,t)=>{if(o.item.form?.spanCol){const i=w.config.form.defaultSpan,m=t.filter(f=>!u.isFun(f.item.show?.form,a.update.form,a.update.type)).reduce((f,s)=>f+(s.item.form?.span||i),0);return(o.item?.form.span||i)+m}return o.item.form.span},initColumnForm:()=>{const o=r.option;a.update.formColumn=[],a.table.column.show={list:[],listSource:[]};const t=[],i=r.option.form?.maxSpan||12,d=r.option.form?.defaultSpan||i/2;let m=[];const f=p=>{if(p.children){a.table.column.show.list.push(p.key),p.children.forEach(b=>{f(b)});return}if(a.update.formDefault[p.key]=p.value,p.table.table&&(p.show.table&&a.table.column.show.list.push(p.key),p.table.table&&a.table.column.show.listSource.push(p.key)),!(p.isForm&&typeof p.show?.form=="boolean")||p.show?.form){p.form=p.form||{span:d},p.form.span=p.form.span??d;let b=p.form.span,E=m.reduce((V,N)=>V+N.span,b);const S=m.length;if(m.push({item:p,span:b}),(S===1&&m[0].span===0||E>=i||b===0&&S>1)&&(t.push(m),m=[]),p.rules){const V={input:y.tCurd("placeholderInput"),select:y.tCurd("placeholderSelect")},N=(V[p.type]||V.input)+p.label,U=typeof p.rules=="boolean"?[{required:!0,message:N,trigger:"blur"}]:p.rules;a.update.rules[p.key]=U.map(O=>{if(O.validator){const Ze=O.validator;return{...O,validator:(_e,ve,et)=>Ze(_e,ve,et,a.update.form)}}return O})}}},s=(p,b)=>{p.isForm=b,Array.isArray(p.children)&&p.children.forEach(E=>s(E,b))};o.column.forEach(p=>{p.isForm=!0,s(p,!0),f(p)}),r.option.table?.column?.forEach(p=>{s(p,!1),f(p)}),a.search.column.list=o.column.concat(o.table?.column||[]),a.table.column.list=a.search.column.list.filter(p=>p.table?.table),a.search.column.list.sort((p,b)=>p.sort?.search-b.sort?.search),a.table.column.list.sort((p,b)=>p.sort?.table-b.sort?.table),m.length>0&&t.push(m),a.update.formColumn=t;const k=r.option.search?.formDefault;k&&Object.keys(k).forEach(p=>{a.search.formDefault[p]=k[p]}),o.column.forEach(p=>{p.show?.search||(a.search.formDefault[p.key]=void 0)});const g=ObjectUtil.deepMerge(a.search.formDefault,{});$.setValue(a.search.form,g,!0)}});return a.init(),e.onMounted(()=>{r.option.init!==!1&&a.table.getList()}),r.form&&e.watch(()=>a.update.form,o=>{Object.keys(a.update.form).forEach(t=>{r.form[t]=a.update.form[t]})},{deep:!0,immediate:!0}),r.searchForm&&e.watch(()=>a.search.form,o=>{Object.keys(a.search.form).forEach(t=>{r.searchForm[t]=a.search.form[t]})},{deep:!0,immediate:!0}),{conf:a,switchConfirmRef:n,ruleFormRef:c,tableRef:l}},P={class:"dialog-footer"},Y=e.defineComponent({__name:"switchConfirm",props:{size:{}},setup(r,{expose:n}){const c=e.ref(!1),l=e.ref("确认修改"),a=e.ref("确认要修改状态吗?");let o=null,t=null;const i=f=>(f?.title&&(l.value=f.title),f?.content&&(a.value=f.content),c.value=!0,new Promise((s,k)=>{o=s,t=k})),d=()=>{c.value=!1,o?.(!0),o=null,t=null},m=()=>{c.value=!1,t?.(new Error("用户取消操作")),o=null,t=null};return n({open:i}),(f,s)=>{const k=e.resolveComponent("el-form");return e.openBlock(),e.createBlock(e.unref(h.ElDialog),{modelValue:c.value,"onUpdate:modelValue":s[0]||(s[0]=g=>c.value=g),title:l.value,"close-on-click-modal":!1,width:"400px"},{footer:e.withCtx(()=>[e.createVNode(k,{size:f.size},{default:e.withCtx(()=>[e.createElementVNode("span",P,[e.createVNode(e.unref(h.ElButton),{onClick:m},{default:e.withCtx(()=>s[1]||(s[1]=[e.createTextVNode("取消")])),_:1}),e.createVNode(e.unref(h.ElButton),{type:"primary",onClick:d},{default:e.withCtx(()=>s[2]||(s[2]=[e.createTextVNode("确认")])),_:1})])]),_:1},8,["size"])]),default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(a.value),1)]),_:1},8,["modelValue","title"])}}}),F=(r,n)=>{const c=r.__vccOpts||r;for(const[l,a]of n)c[l]=a;return c},Z={},_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function v(r,n){return e.openBlock(),e.createElementBlock("svg",_,n[0]||(n[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 ee=F(Z,[["render",v]]),te=["innerHTML"],oe=e.defineComponent({__name:"text",props:{content:{},value:{}},setup(r){const n=r,c=e.computed(()=>typeof n.content=="function"?n.content(n.value):n.content);return(l,a)=>typeof c.value=="object"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{key:0})):(e.openBlock(),e.createElementBlock("div",{key:1,innerHTML:c.value},null,8,te))}}),ne={},ae={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function le(r,n){return e.openBlock(),e.createElementBlock("svg",ae,n[0]||(n[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 re=F(ne,[["render",le]]),ie={},de={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function se(r,n){return e.openBlock(),e.createElementBlock("svg",de,n[0]||(n[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0z"},null,-1)]))}const ce=F(ie,[["render",se]]),fe={},pe={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function me(r,n){return e.openBlock(),e.createElementBlock("svg",pe,n[0]||(n[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896M288 512a38.4 38.4 0 0 0 38.4 38.4h371.2a38.4 38.4 0 0 0 0-76.8H326.4A38.4 38.4 0 0 0 288 512"},null,-1)]))}const he=F(fe,[["render",me]]),ge={class:"row flex-center table-header-label inline"},ye={class:"table-header-tooltip"},ke=["innerHTML"],be=["onClick"],ue={key:1},we=["onClick","innerHTML"],Ce=e.defineComponent({__name:"tableColumn",props:{conf:{},columnList:{},option:{}},setup(r){const n=u.isFun,c=e.getCurrentInstance().type;return(l,a)=>{const o=e.resolveComponent("el-tooltip");return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.columnList,t=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:t.key},[l.conf.table.column.show.list.includes(t.key)&&(t.show?.table===void 0||e.unref(n)(t.show?.table,l.conf.table.data))?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.table?.header?.groupKey===void 0||t.table.header.show?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:0,prop:t.key,label:t.label,ref_for:!0},t.table),{header:e.withCtx(()=>[e.renderSlot(l.$slots,"table-header-"+t.key,{item:t},()=>[e.createElementVNode("div",ge,[t.table?.header?.tooltip?(e.openBlock(),e.createBlock(o,{key:0,effect:"dark",placement:"top"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:t.table?.header?.tooltip},null,8,ke)]),default:e.withCtx(()=>[e.createElementVNode("span",ye,[e.createVNode(re)])]),_:2},1024)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.label)+" ",1),t.table?.header?.group!==void 0?(e.openBlock(),e.createElementBlock("span",{key:1,class:"table-header-plus",onClick:e.withModifiers(()=>{t.table.header.group=!t.table.header.group,l.columnList.forEach(i=>{i.table?.header?.groupKey===t.key&&(i.table.header.show=!t.table.header.group)})},["stop"])},[t.table.header.group?(e.openBlock(),e.createBlock(ce,{key:0})):(e.openBlock(),e.createBlock(he,{key:1}))],8,be)):e.createCommentVNode("",!0)])])]),default:e.withCtx(({row:i})=>[t.children?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[a[0]||(a[0]=e.createTextVNode("   ")),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(c)),{conf:l.conf,columnList:t.children,option:l.option},e.createSlots({_:2},[e.renderList(l.$slots,(d,m)=>({name:m,fn:e.withCtx(f=>[e.renderSlot(l.$slots,m,e.mergeProps({ref_for:!0},f||{}))])}))]),1032,["conf","columnList","option"]))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l.option.table?.editMode?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row",["table-edit-"+t.key]]),style:{width:"100%"}},[e.renderSlot(l.$slots,"table-edit-left-"+t.key,{row:i,item:t}),t.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:i[t.key],"onUpdate:modelValue":d=>i[t.key]=d,disabled:l.conf.update.getDisabled(t,!0),class:"col",ref_for:!0},l.conf.update.getBind(t),e.toHandlers(l.conf.update.getOn(t,i))),e.createSlots({_:2},[t.options?.input?.prepend?{name:"prepend",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof t.options?.input?.prepend=="function"?t.options?.input?.prepend(i):t.options?.input?.prepend),1)]),key:"0"}:void 0]),1040,["modelValue","onUpdate:modelValue","disabled"])):t.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:1,modelValue:i[t.key],"onUpdate:modelValue":d=>i[t.key]=d,disabled:l.conf.update.getDisabled(t,!0),class:"col",ref_for:!0},l.conf.update.getBind(t),e.toHandlers(l.conf.update.getOn(t,i))),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options?.search?.select?.data||t.options?.select?.data,d=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):t.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:2,modelValue:i[t.key],"onUpdate:modelValue":d=>i[t.key]=d,disabled:l.conf.update.getDisabled(t,!0),class:"col",ref_for:!0},l.conf.update.getBind(t),e.toHandlers(l.conf.update.getOn(t,i))),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"table-edit-right-"+t.key,{row:i,item:t})],2)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l.conf.update.type===e.unref(u).EDialog.Update&&e.unref(n)(t.show?.form,l.conf.update.form,e.unref(u).EDialog.Update)&&l.option.table?.inlineEdit&&l.conf.update.form[l.option.table?.rowKey]===i[l.option.table?.rowKey]&&(t.type==="input"||t.type==="select")?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:l.conf.update.form[t.key],"onUpdate:modelValue":d=>l.conf.update.form[t.key]=d,disabled:l.conf.update.getDisabled(t,!0),ref_for:!0},l.conf.update.getBind(t),e.toHandlers(l.conf.update.getOn(t,i)),{style:{width:"100%"}}),e.createSlots({_:2},[t.options?.input?.prepend?{name:"prepend",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof t.options?.input?.prepend=="function"?t.options?.input?.prepend(i):t.options?.input?.prepend),1)]),key:"0"}:void 0]),1040,["modelValue","onUpdate:modelValue","disabled"])):t.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:1,modelValue:l.conf.update.form[t.key],"onUpdate:modelValue":d=>l.conf.update.form[t.key]=d,disabled:l.conf.update.getDisabled(t,!0),ref_for:!0},l.conf.update.getBind(t),e.toHandlers(l.conf.update.getOn(t,i)),{style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options?.search?.select?.data||t.options?.select?.data,d=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):t.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:2,modelValue:l.conf.update.form[t.key],"onUpdate:modelValue":d=>l.conf.update.form[t.key]=d,ref_for:!0},l.conf.update.getBind(t),e.toHandlers(l.conf.update.getOn(t,i)),{disabled:l.conf.update.getDisabled(t,!0)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)],64)):e.renderSlot(l.$slots,"table-"+t.key,{key:1,row:i,item:t},()=>[e.unref(B).customComponent[t.type??""]?.table?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[t.type??""]?.table),e.mergeProps({key:0,modelValue:i[t.key],"onUpdate:modelValue":d=>i[t.key]=d,ref_for:!0},t.options?.[t.type??""],e.toHandlers(t.options?.[t.type??""]?.on||{})),null,16,["modelValue","onUpdate:modelValue"])):t.type==="switch"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.options?.switch?.tableConfig?.change?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:0,modelValue:i[t.key],"onUpdate:modelValue":d=>i[t.key]=d,loading:t.options?.switch?.loadingMap?.[i[l.option.table?.rowKey]]?.loading,"before-change":()=>t.options?.switch?.tableBeforeChange?.(t.key,i),ref_for:!0},t.options?.switch),null,16,["modelValue","onUpdate:modelValue","loading","before-change"])):(e.openBlock(),e.createElementBlock("span",ue,e.toDisplayString(i[t.key]===t.options?.switch?.activeValue?t.options?.switch?.activeText:t.options?.switch?.inactiveText),1))],64)):(e.openBlock(),e.createElementBlock("span",{key:2,style:e.normalizeStyle({"--table-text-click-color":t.table?.click?.color}),class:e.normalizeClass({"table-text-click":t.table?.click?.callback}),onClick:d=>t.table?.click?.callback?.(i),innerHTML:t.table?.format?t.table?.format(i):i[t.key]},null,14,we))])],64))],64))]),_:2},1040,["prop","label"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),128)}}}),Be={class:"row form-item-content",style:{width:"100%"}},Ve={class:"col column form-item-content-item"},Ee={class:"col"},Se=["innerHTML"],Ne=e.defineComponent({__name:"formColumn",props:{conf:{},item:{}},setup(r){return(n,c)=>(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{label:n.item.item.text?.form?.label??n.item.item.label,prop:n.item.item.key,"label-width":n.item.item.text?.form?.label==""?0:n.item.item.form?.labelWidth||n.conf.option.form?.labelWidth},{default:e.withCtx(()=>[e.createElementVNode("div",Be,[e.renderSlot(n.$slots,"form-"+n.item.item.key+"-start",{row:n.conf.update.form,item:n.item.item}),e.createElementVNode("div",Ve,[e.createElementVNode("div",Ee,[e.renderSlot(n.$slots,"form-"+n.item.item.key,{row:n.conf.update.form,item:n.item.item},()=>[n.item.item.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:n.conf.update.form[n.item.item.key],"onUpdate:modelValue":c[0]||(c[0]=l=>n.conf.update.form[n.item.item.key]=l)},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item)}),e.createSlots({_:2},[n.item.item.options?.input?.prepend?{name:"prepend",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof n.item.item.options?.input?.prepend=="function"?n.item.item.options?.input?.prepend(n.conf.update.form):n.item.item.options?.input?.prepend),1)]),key:"0"}:void 0]),1040,["modelValue","disabled"])):n.item.item.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:1,modelValue:n.conf.update.form[n.item.item.key],"onUpdate:modelValue":c[1]||(c[1]=l=>n.conf.update.form[n.item.item.key]=l)},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item)}),null,16,["modelValue","disabled"])):n.item.item.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:2,modelValue:n.conf.update.form[n.item.item.key],"onUpdate:modelValue":c[2]||(c[2]=l=>n.conf.update.form[n.item.item.key]=l)},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.conf.update.getBind(n.item.item).data,l=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),e.mergeProps({key:l.value,ref_for:!0},l,e.toHandlers(l.on||{})),null,16))),128))]),_:1},16,["modelValue","disabled"])):n.item.item.type==="radio"?(e.openBlock(),e.createBlock(e.unref(h.ElRadioGroup),e.mergeProps({key:3,modelValue:n.conf.update.form[n.item.item.key],"onUpdate:modelValue":c[3]||(c[3]=l=>n.conf.update.form[n.item.item.key]=l)},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.conf.update.getBind(n.item.item).data,l=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),e.mergeProps({key:l.value,ref_for:!0},l,e.toHandlers(l.on||{})),null,16))),128))]),_:1},16,["modelValue","disabled"])):n.item.item.type==="list"?(e.openBlock(),e.createBlock(T,e.mergeProps({key:4,row:n.conf.update.form,field:n.item.item.key},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item),style:{width:"100%"}}),null,16,["row","field","disabled"])):n.item.item.type==="treeSelect"?(e.openBlock(),e.createBlock(e.unref(h.ElTreeSelect),e.mergeProps({key:5,modelValue:n.conf.update.form[n.item.item.key],"onUpdate:modelValue":c[4]||(c[4]=l=>n.conf.update.form[n.item.item.key]=l)},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item),style:{width:"100%"}}),null,16,["modelValue","disabled"])):n.item.item.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(h.ElDatePicker),e.mergeProps({key:6,modelValue:n.conf.update.form[n.item.item.key],"onUpdate:modelValue":c[5]||(c[5]=l=>n.conf.update.form[n.item.item.key]=l)},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item)}),null,16,["modelValue","disabled"])):n.item.item.type&&(e.unref(B).customComponent[n.item.item.type]||e.unref(B).customComponent[n.item.item.type]?.form)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[n.item.item.type]?.form||e.unref(B).customComponent[n.item.item.type]),e.mergeProps({key:7,modelValue:n.conf.update.form[n.item.item.key],"onUpdate:modelValue":c[6]||(c[6]=l=>n.conf.update.form[n.item.item.key]=l)},n.conf.update.getBind(n.item.item),e.toHandlers(n.conf.update.getOn(n.item.item)),{disabled:n.conf.update.getDisabled(n.item.item)}),null,16,["modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(n.$slots,"form-"+n.item.item.key+"-right",{row:n.conf.update.form,item:n.item.item})]),e.renderSlot(n.$slots,"form-"+n.item.item.key+"-tip",{row:n.conf.update.form,item:n.item.item},()=>[n.item.item.form?.tipText?(e.openBlock(),e.createElementBlock("div",{key:0,class:"form-tip-text",innerHTML:typeof n.item.item.form?.tipText=="function"?n.item.item.form?.tipText(n.conf.update.form,n.conf.update.type):n.item.item.form?.tipText},null,8,Se)):e.createCommentVNode("",!0)])]),e.renderSlot(n.$slots,"form-"+n.item.item.key+"-end",{row:n.conf.update.form,item:n.item.item})])]),_:3},8,["label","prop","label-width"]))}}),De={},ze={xmlns:"http://www.w3.org/2000/svg",viewBox:"64 64 896 896"};function Fe(r,n){return e.openBlock(),e.createElementBlock("svg",ze,n[0]||(n[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M482.2 508.4L331.3 389c-3-2.4-7.3-.2-7.3 3.6V478H184V184h204v128c0 2.2 1.8 4 4 4h60c2.2 0 4-1.8 4-4V144c0-15.5-12.5-28-28-28H144c-15.5 0-28 12.5-28 28v736c0 15.5 12.5 28 28 28h284c15.5 0 28-12.5 28-28V712c0-2.2-1.8-4-4-4h-60c-2.2 0-4 1.8-4 4v128H184V546h140v85.4c0 3.8 4.4 6 7.3 3.6l150.9-119.4a4.5 4.5 0 000-7.2zM880 116H596c-15.5 0-28 12.5-28 28v168c0 2.2 1.8 4 4 4h60c2.2 0 4-1.8 4-4V184h204v294H700v-85.4c0-3.8-4.3-6-7.3-3.6l-151 119.4a4.52 4.52 0 000 7.1l151 119.5c2.9 2.3 7.3.2 7.3-3.6V546h140v294H636V712c0-2.2-1.8-4-4-4h-60c-2.2 0-4 1.8-4 4v168c0 15.5 12.5 28 28 28h284c15.5 0 28-12.5 28-28V144c0-15.5-12.5-28-28-28z"},null,-1)]))}const $e=F(De,[["render",Fe]]),Te={},Oe={xmlns:"http://www.w3.org/2000/svg",viewBox:"64 64 896 896"};function Ue(r,n){return e.openBlock(),e.createElementBlock("svg",Oe,n[0]||(n[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M180 176h-60c-4.4 0-8 3.6-8 8v656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V184c0-4.4-3.6-8-8-8zm724 0h-60c-4.4 0-8 3.6-8 8v656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V184c0-4.4-3.6-8-8-8zM785.3 504.3L657.7 403.6a7.23 7.23 0 00-11.7 5.7V476H378v-62.8c0-6-7-9.4-11.7-5.7L238.7 508.3a7.14 7.14 0 000 11.3l127.5 100.8c4.7 3.7 11.7.4 11.7-5.7V548h268v62.8c0 6 7 9.4 11.7 5.7l127.5-100.8c3.8-2.9 3.8-8.5.2-11.4z"},null,-1)]))}const Me=F(Te,[["render",Ue]]),H=e.defineComponent({__name:"searchField",props:{item:{},conf:{},type:{}},setup(r){const n=r,c=e.computed({get:()=>n.conf.search.form?.[n.item?.key],set:l=>{n.item?.key!==void 0&&(n.conf.search.form[n.item.key]=l)}});return(l,a)=>e.unref(B).customComponent[l.type??""]?.search?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[l.type??""]?.search),e.mergeProps({key:0,modelValue:c.value,"onUpdate:modelValue":a[0]||(a[0]=o=>c.value=o)},l.item.options?.search?.[l.type??""],e.toHandlers(l.item.options?.search?.[l.type??""]?.on||{})),null,16,["modelValue"])):l.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:1,modelValue:c.value,"onUpdate:modelValue":a[1]||(a[1]=o=>c.value=o),placeholder:l.conf.search.getPlaceholder(l.item),clearable:"",disabled:l.item.disabled?.search},l.item.options?.search?.input||l.item.options?.input,e.toHandlers(l.item.options?.search?.input?.on||l.item.options?.input?.on||{})),null,16,["modelValue","placeholder","disabled"])):l.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:2,modelValue:c.value,"onUpdate:modelValue":a[2]||(a[2]=o=>c.value=o),placeholder:l.conf.search.getPlaceholder(l.item,e.unref(y).tCurd("placeholderSelect")),clearable:"",disabled:l.item.disabled?.search},l.item.options?.search?.switch||l.item.options?.switch,e.toHandlers(l.item.options?.search?.switch?.on||l.item.options?.switch?.on||{})),{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:l.item.options?.switch?.activeValue,label:l.item.options?.switch?.activeText,value:l.item.options?.switch?.activeValue},null,8,["label","value"])),(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:l.item.options?.switch?.inactiveValue,label:l.item.options?.switch?.inactiveText,value:l.item.options?.switch?.inactiveValue},null,8,["label","value"]))]),_:1},16,["modelValue","placeholder","disabled"])):l.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:3,modelValue:c.value,"onUpdate:modelValue":a[3]||(a[3]=o=>c.value=o),placeholder:l.conf.search.getPlaceholder(l.item,e.unref(y).tCurd("placeholderSelect")),clearable:"",disabled:l.item.disabled?.search},l.item.options?.search?.select||l.item.options?.select,e.toHandlers(l.item.options?.search?.select?.on||l.item.options?.select?.on||{})),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.item.options?.search?.select?.data||l.item.options?.select?.data||[],o=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","placeholder","disabled"])):l.type==="radio"?(e.openBlock(),e.createBlock(e.unref(h.ElRadioGroup),e.mergeProps({key:4,modelValue:c.value,"onUpdate:modelValue":a[4]||(a[4]=o=>c.value=o),disabled:l.item.disabled?.search},l.item.options?.search?.radio||l.item.options?.radio,e.toHandlers(l.item.options?.search?.radio?.on||l.item.options?.radio?.on||{})),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.item.options?.radio?.data,o=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled"])):l.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(h.ElDatePicker),e.mergeProps({key:5,modelValue:c.value,"onUpdate:modelValue":a[5]||(a[5]=o=>c.value=o),disabled:l.item.disabled?.search},l.item.options?.search?.datetime||l.item.options?.datetime,e.toHandlers(l.item.options?.search?.datetime?.on||l.item.options?.datetime?.on||{})),null,16,["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:6,modelValue:c.value,"onUpdate:modelValue":a[6]||(a[6]=o=>c.value=o)},l.item.options?.search?.[l.type]||l.item.options?.[l.type],e.toHandlers(l.item.options?.search?.[l.type]?.on||l.item.options?.[l.type]?.on||{}),{disabled:l.item.disabled?.search}),null,16,["modelValue","disabled"])):e.createCommentVNode("",!0)}}),Le={key:0,class:"relative curd-search fit-width"},He={class:"mb-10 flex justify-between items-center fit-width"},Ae={class:"flex items-center",style:{gap:"10px"}},je={key:0},Ie={key:1},Re={key:2},Ke={class:"export-btn"},xe={key:1,class:"export-btn"},We={class:"flex items-center table-tools-right",style:{gap:"10px"}},qe={class:"row justify-end mt-10 mb-10 table-bottom-pagination"},Je={class:"dialog-footer"},Ge={key:0},Qe={key:1},Xe={class:"dialog-footer"},A=e.defineComponent({__name:"index",props:{option:{default:{}},form:{default:{}},searchForm:{default:{}}},setup(r,{expose:n}){const c=u.EDialog,l=r,a=u.isFun,{conf:o,switchConfirmRef:t,ruleFormRef:i,tableRef:d}=X(l);return n({conf:o}),(m,f)=>{const s=e.resolveComponent("el-tooltip"),k=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["relative cc1-form-box",[r.option.table?.fitHeight?"col":"no-min-height"]])},[e.createElementVNode("div",{class:e.normalizeClass(["row",[r.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",[r.option.table?.fitHeight?"col":""]])},[r.option.search?.show!==!1?(e.openBlock(),e.createElementBlock("div",Le,[e.createVNode(e.unref(h.ElForm),{model:e.unref(o).search.form,inline:"",size:r.option.size?.search},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"search-start",{row:e.unref(o).search.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o).search.column.list,g=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g.key},[e.renderSlot(m.$slots,"search-"+g.key+"-start",{row:e.unref(o).search.form}),(typeof g.show?.search=="function"?g.show?.search(e.unref(o).search.form):g.show?.search)?(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{key:0,label:g.text?.search?.label??g.label},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"search-"+g.key+"-left",{row:e.unref(o).search.form}),e.renderSlot(m.$slots,"search-"+g.key,{row:e.unref(o).search.form},()=>[g.options?.search?.type?(e.openBlock(),e.createBlock(H,{key:0,item:g,conf:e.unref(o),type:g.options.search.type},null,8,["item","conf","type"])):(e.openBlock(),e.createBlock(H,{key:1,item:g,conf:e.unref(o),type:g.type},null,8,["item","conf","type"]))]),e.renderSlot(m.$slots,"search-"+g.key+"-right",{row:e.unref(o).search.form})]),_:2},1032,["label"])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"search-"+g.key+"-end",{row:e.unref(o).search.form})],64))),128)),e.renderSlot(m.$slots,"search-center",{row:e.unref(o).search.form}),r.option.tools?.search||r.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{key:0},{default:e.withCtx(()=>[r.option.tools?.search?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,type:"primary",onClick:e.unref(o).search.submit},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("search")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),r.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:1,onClick:e.unref(o).search.reset},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("reset")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"search-end",{row:e.unref(o).search.form})]),_:3},8,["model","size"])])):e.createCommentVNode("",!0),e.createElementVNode("div",He,[e.createElementVNode("div",Ae,[e.unref(a)(r.option.tools?.add)?(e.openBlock(),e.createElementBlock("div",je,[e.createVNode(e.unref(h.ElButton),{type:"primary",onClick:f[0]||(f[0]=g=>e.unref(o).update.open(e.unref(c).Add)),size:r.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("add")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),r.option.table?.selectable&&e.unref(a)(r.option.tools?.delete)?(e.openBlock(),e.createElementBlock("div",Ie,[e.createVNode(e.unref(h.ElButton),{type:"danger",onClick:f[1]||(f[1]=g=>e.unref(o).remove.open(e.unref(o).table.selection.list)),size:r.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("delete")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),r.option.tools?.expand?(e.openBlock(),e.createElementBlock("div",Re,[e.createVNode(e.unref(h.ElButton),{type:"warning",onClick:f[2]||(f[2]=g=>e.unref(o).table.expand.all()),size:r.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("expandCollapse")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),r.option.tools?.export?.show?(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[r.option.tools?.export?.dropdown?.show?(e.openBlock(),e.createBlock(e.unref(h.ElDropdown),{key:0,onCommand:e.unref(o).export.click},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(h.ElDropdownMenu),{size:r.option.size?.search},{default:e.withCtx(()=>[r.option.tools?.export?.dropdown?.select&&(r.option.table?.selectable||e.unref(a)(r.option.tools?.delete))?(e.openBlock(),e.createBlock(e.unref(h.ElDropdownItem),{key:0,command:"select"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("exportSelect")),1)]),_:1})):e.createCommentVNode("",!0),r.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(y).tCurd("exportPage")),1)]),_:1})):e.createCommentVNode("",!0),r.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(y).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(o).export.loading,size:r.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("export")),1)]),_:1},8,["loading","size"])])]),_:1},8,["onCommand"])):(e.openBlock(),e.createElementBlock("div",xe,[e.createVNode(e.unref(h.ElButton),{type:"warning",loading:e.unref(o).export.loading,size:r.option.size?.search,onClick:f[3]||(f[3]=g=>e.unref(o).export.run.start("all"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("export")),1)]),_:1},8,["loading","size"])]))],64)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"tools-left")]),e.createElementVNode("div",We,[e.renderSlot(m.$slots,"tools-right"),e.unref(o).page.showTools?(e.openBlock(),e.createBlock(e.unref(h.ElPagination),e.mergeProps({key:0,"current-page":e.unref(o).page.num,"onUpdate:currentPage":f[4]||(f[4]=g=>e.unref(o).page.num=g),"page-size":e.unref(o).page.size,"onUpdate:pageSize":f[5]||(f[5]=g=>e.unref(o).page.size=g),background:"","page-sizes":e.unref(o).page.sizeList,"pager-count":e.unref(o).page.pagerCount,layout:e.unref(o).page.layout,total:e.unref(o).page.total,size:r.option.size?.table,onSizeChange:e.unref(o).table.getList,onCurrentChange:e.unref(o).table.getList},r.option.page?.pagination||{},e.toHandlers(r.option.page?.pagination?.on||{})),null,16,["current-page","page-size","page-sizes","pager-count","layout","total","size","onSizeChange","onCurrentChange"])):e.createCommentVNode("",!0),r.option.tools?.expandColumn===void 0||r.option.tools?.expandColumn?(e.openBlock(),e.createBlock(s,{key:1,effect:"dark",content:e.unref(o).table.header.group.expand?e.unref(y).tCurd("mergeColumn"):e.unref(y).tCurd("expandColumn"),placement:"top"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["refresh-btn",[r.option.size?.search]]),onClick:f[6]||(f[6]=(...g)=>e.unref(o).table.header.group.toggleExpandAll&&e.unref(o).table.header.group.toggleExpandAll(...g))},[e.unref(o).table.header.group.expand?(e.openBlock(),e.createBlock($e,{key:0})):(e.openBlock(),e.createBlock(Me,{key:1}))],2)]),_:1},8,["content"])):e.createCommentVNode("",!0),r.option.tools?.refresh===void 0||r.option.tools?.refresh?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["refresh-btn",[r.option.size?.search]]),onClick:f[7]||(f[7]=(...g)=>e.unref(o).table.getList&&e.unref(o).table.getList(...g))},[e.createVNode(ee)],2)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(["fit-width relative form-box",[r.option.table?.fitHeight?"col ":"",r.option.table?.editMode?"edit-mode":""]])},[e.createElementVNode("div",{class:e.normalizeClass(["column form-box-content",[r.option.table?.fitHeight?"absolute fit":""]])},[e.withDirectives((e.openBlock(),e.createBlock(e.unref(h.ElTable),e.mergeProps({ref_key:"tableRef",ref:d,data:e.unref(o).table.data,border:r.option.table?.border===void 0?!0:r.option.table?.border,onSelectionChange:e.unref(o).table.selection.change,onSortChange:e.unref(o).table.sort.change,"expand-row-keys":e.unref(o).table.expand.rowKeys,onExpandChange:e.unref(o).table.expand.change},r.option.table,e.toHandlers(r.option.table?.on||{})),{default:e.withCtx(()=>[(typeof r.option.table?.selectable=="object"?r.option.table?.selectable?.show:r.option.table?.selectable)||e.unref(a)(r.option.tools?.delete)||r.option.tools?.export?.show&&r.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 r.option.table?.selectable=="object"?r.option.table?.selectable:{},e.toHandlers(typeof r.option.table?.selectable=="object"?r.option.table?.selectable?.on||{}:{})),null,16)):e.createCommentVNode("",!0),(typeof r.option.table?.index=="object"?r.option.table?.index?.show:r.option.table?.index)?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:1,type:"index",fixed:"left",width:"40",align:"center",label:"#","show-overflow-tooltip":!1,className:"cc1-form-index-column"},typeof r.option.table?.index=="object"?r.option.table?.index:{},e.toHandlers(typeof r.option.table?.index=="object"?r.option.table?.index?.on||{}:{})),null,16)):e.createCommentVNode("",!0),e.createVNode(Ce,{conf:e.unref(o),columnList:e.unref(o).table.column.list,option:r.option},e.createSlots({_:2},[e.renderList(m.$slots,(g,p)=>({name:p,fn:e.withCtx(b=>[e.renderSlot(m.$slots,p,e.normalizeProps(e.guardReactiveProps(b||{})))])}))]),1032,["conf","columnList","option"]),e.unref(a)(r.option.table?.add)||e.unref(a)(r.option.table?.update)||e.unref(a)(r.option.table?.delete)||e.unref(a)(r.option.table?.view)||m.$slots["table-op-left"]||m.$slots["table-op-right"]?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:2,width:"auto","max-width":"200",align:"center",fixed:"right"},r.option.table?.operate,{"show-overflow-tooltip":!1}),{header:e.withCtx(()=>[e.renderSlot(m.$slots,"table-header-op",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("operation")),1)])]),default:e.withCtx(({row:g})=>[e.createVNode(e.unref(h.ElForm),{size:r.option.size?.table},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"table-op-left",{row:g}),e.unref(o).update.type===e.unref(c).Update&&r.option.table?.inlineEdit&&e.unref(o).update.form[l.option.table?.rowKey]===g[l.option.table?.rowKey]?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(e.unref(h.ElButton),{link:"",type:"info",onClick:e.unref(o).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("cancel")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(h.ElButton),{link:"",type:"primary",onClick:e.unref(o).update.submit,loading:e.unref(o).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("confirm")),1)]),_:1},8,["onClick","loading"]),e.renderSlot(m.$slots,"table-op-edit-right",{row:g})],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(a)(r.option.table?.add,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,link:"",type:"primary",onClick:p=>e.unref(o).update.open(e.unref(c).Add,g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("add")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.unref(a)(r.option.table?.view,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:1,link:"",type:"primary",onClick:p=>e.unref(o).update.open(e.unref(c).View,g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("view")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.unref(a)(r.option.table?.update,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:2,link:"",type:"warning",onClick:p=>e.unref(o).update.open(e.unref(c).Update,g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("edit")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.unref(a)(r.option.table?.delete,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:3,link:"",type:"danger",onClick:p=>e.unref(o).remove.open([g])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("delete")),1)]),_:2},1032,["onClick"])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"table-op-right",{row:g})],64))]),_:2},1032,["size"])]),_:3},16)):e.createCommentVNode("",!0)]),_:3},16,["data","border","onSelectionChange","onSortChange","expand-row-keys","onExpandChange"])),[[k,e.unref(o).table.loading]])],2)],2),e.createElementVNode("div",qe,[(r.option.page?.show===void 0||r.option.page?.show)&&!e.unref(o).page.showTools?(e.openBlock(),e.createBlock(e.unref(h.ElPagination),e.mergeProps({key:0,"current-page":e.unref(o).page.num,"onUpdate:currentPage":f[8]||(f[8]=g=>e.unref(o).page.num=g),"page-size":e.unref(o).page.size,"onUpdate:pageSize":f[9]||(f[9]=g=>e.unref(o).page.size=g),background:"","page-sizes":e.unref(o).page.sizeList,"pager-count":e.unref(o).page.pagerCount,layout:e.unref(o).page.layout,total:e.unref(o).page.total,size:r.option.size?.table,onSizeChange:e.unref(o).table.getList,onCurrentChange:e.unref(o).table.getList},r.option.page?.pagination||{},e.toHandlers(r.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(h.ElDialog),e.mergeProps({modelValue:e.unref(o).update.show,"onUpdate:modelValue":f[10]||(f[10]=g=>e.unref(o).update.show=g),title:e.unref(o).update.title,"before-close":e.unref(o).update.close},r.option.dialog),{footer:e.withCtx(()=>[e.createElementVNode("span",Je,[e.createVNode(e.unref(h.ElForm),{size:r.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(h.ElButton),{onClick:e.unref(o).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("close")),1)]),_:1},8,["onClick"]),e.unref(o).update.type!==e.unref(c).View?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,type:"primary",onClick:e.unref(o).update.submit,loading:e.unref(o).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).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:i,model:e.unref(o).update.form,rules:e.unref(o).update.rules,size:r.option.size?.form,class:"update-dialog-form"},{default:e.withCtx(()=>[e.unref(o).update.showContent?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(o).update.formColumn,g=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a)((()=>{const p=[],b=E=>{E?.item?.children?b(E.item.children):p.push(...E.map(S=>S.item?.show?.form))};return b(g),p})(),e.unref(o).update.form,e.unref(o).update.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row curd-row",{stripe:r.option.form?.stripe===void 0?!0:r.option.form?.stripe}])},[e.renderSlot(m.$slots,"form-start",{row:e.unref(o).update.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g,p=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a)(p.item.show?.form,e.unref(o).update.form,e.unref(o).update.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([p.item.form.span>0?`col-${e.unref(o).getColumnSpan(p,g)}`:"col",`form-item-col-${p.item.key}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.item.children?p.children:[p],b=>(e.openBlock(),e.createBlock(Ne,{key:b.item.key,conf:e.unref(o),item:b},e.createSlots({_:2},[e.renderList(m.$slots,(E,S)=>({name:S,fn:e.withCtx(V=>[e.renderSlot(m.$slots,S,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(o).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(o).remove.show,"onUpdate:modelValue":f[11]||(f[11]=g=>e.unref(o).remove.show=g),title:e.unref(o).remove.title,"close-on-click-modal":!1},{footer:e.withCtx(()=>[e.createElementVNode("span",Xe,[e.createVNode(e.unref(h.ElForm),{size:r.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(h.ElButton),{onClick:e.unref(o).remove.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("close")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(h.ElButton),{type:"danger",onClick:e.unref(o).remove.submit,loading:e.unref(o).remove.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("confirmDelete")),1)]),_:1},8,["onClick","loading"])]),_:1},8,["size"])])]),default:e.withCtx(()=>[r.option.dialog?.delete?.content?(e.openBlock(),e.createElementBlock("div",Ge,[e.createVNode(oe,{content:r.option.dialog?.delete?.content,value:e.unref(o).remove.items},null,8,["content","value"])])):(e.openBlock(),e.createElementBlock("div",Qe,e.toDisplayString(e.unref(y).tCurd("confirmDeleteMessage",e.unref(o).remove.items.length)),1))]),_:1},8,["modelValue","title"]),e.createVNode(Y,{ref_key:"switchConfirmRef",ref:t,size:r.option.size?.form},null,8,["size"])],2)}}});class Pe{static async download(n,c="download.png"){const l=document.createElement("a");l.style.display="none",l.href=n,l.setAttribute("download",c),typeof l.download>"u"&&l.setAttribute("target","_blank"),document.body.appendChild(l),l.click(),document.body.removeChild(l),window.URL.revokeObjectURL(n)}static exportJSONFile=(n,c)=>{const l=new Blob([JSON.stringify(n)],{type:"application/json"}),a=URL.createObjectURL(l),o=document.createElement("a");o.href=a,o.download=`${c||"config"}.json`,o.click()};static importFile=async n=>new Promise((c,l)=>{const a=document.createElement("input");a.type="file";const o=n?.accept||".json";a.accept=o,a.style.display="none",a.onchange=t=>{const i=t.target.files[0];if(!i){u.fail("未选择文件"),l("未选择文件");return}const d=new FileReader;d.onload=async m=>{const f=o==".json"?JSON.parse(m.target.result):m.target.result;c(f)},d.onerror=()=>{u.fail("文件读取失败"),l("文件读取失败")},d.readAsText(i),document.body.removeChild(a)},document.body.appendChild(a),a.click()})}const j=(r,n)=>{if(r.component("TCurd",A),r.component("TFormList",T),r.component("TColumn",M),n?.customComponent){B.customComponent=n.customComponent;for(const c in n.customComponent)r.component(c,n.customComponent[c])}},Ye={install:j};C.ArrUtil=D,C.ExcelUtil=L,C.TColumn=M,C.TCurd=A,C.TFile=Pe,C.TForm=B,C.TFormConfig=w,C.TFormI18n=y,C.TFormList=T,C.TSys=u,C.default=Ye,C.install=j,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(C,h){typeof exports=="object"&&typeof module<"u"?h(exports,require("element-plus"),require("vue-router"),require("vue"),require("cc1-vue3")):typeof define=="function"&&define.amd?define(["exports","element-plus","vue-router","vue","cc1-vue3"],h):(C=typeof globalThis<"u"?globalThis:C||self,h(C.cc1Form={},C.ElementPlus,C.VueRouter,C.Vue,C.cc1Vue3))})(this,(function(C,h,ot,e,U){"use strict";class u{static router;static routes;static getRouterPath=()=>this.router.currentRoute.value.path;static EDialog={Add:"Add",Update:"Update",View:"View",Remove:"Remove"};static isFun=(i,...c)=>Array.isArray(i)?i.some(f=>typeof f=="function"?f(...c):f):typeof i=="function"?i(...c):i;static getRouterParams=()=>{const i=this.router.currentRoute.value.query||{},c=this.router.currentRoute.value.params||{};return Object.keys(i).length?i:Object.keys(c).length?c:{}};static moduleObj={};static loadModule=async i=>{if(!u.moduleObj[i])throw new Error(`模块${i}未加载,请赋值如:TSys.moduleObj = { ${i}: ()=>import('${i}') }`);const c=await u.moduleObj[i]();return c.default??c};static tipMessages={};static tipMessagesGap=500;static showMessage(i,c,f={}){const a=Date.now();if(!this.tipMessages[i]||a-this.tipMessages[i]>this.tipMessagesGap){this.tipMessages[i]=a;const n=Object.assign({message:i,type:c},f);h.ElMessage(n),setTimeout(()=>{delete this.tipMessages[i]},this.tipMessagesGap)}}static fail=(i,c={})=>{this.showMessage(i,"error",c)};static success=(i,c={})=>{this.showMessage(i,"success",c)};static loadingObj=null;static loadingTimer=null;static loading=(i=!0,c="Loading...")=>{Timer.un(this.loadingTimer),this.loadingTimer=Timer.once(()=>{i?this.loadingObj=h.ElLoading.service({lock:!0,text:c,background:"rgba(0, 0, 0, 0.3)"}):this.loadingObj&&(this.loadingObj.close(),this.loadingObj=null)},50)};static openUrl=(i,c=!0)=>{if(c){let f=screen.width/2-500,a=screen.height/2-800/2-30;window.open(i,"_blank","toolbar=no, location=yes, directories=no, status=yes, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=1000, height=800, top="+a+", left="+f)}else window.open(i,"DescriptiveWindowName"+StrUtil.getId(),"resizable,scrollbars=yes,status=1,width=1024, height=600, top=0, left=0")};static getImgPic=i=>new Promise(async(c,f)=>{let a=document.getElementById(i.id);const n=await u.loadModule("html2canvas");try{n(a,{logging:!1,allowTaint:!0,scale:window.devicePixelRatio,width:i.windowWidth,height:i.windowHeight,windowWidth:i.windowWidth,windowHeight:i.windowHeight,useCORS:!0,backgroundColor:"#ffffff00"}).then(function(o){let l=o.toDataURL("image/png");c(l)})}catch(o){f(o)}})}class w{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:{expandColumn:!1,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:{index:!1,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=i=>{w.config=ObjectUtil.deepMerge(w.config,i)}}class B{static customComponent={};static findOptions=(i,c)=>{const f=i.column.find(n=>n.key===c),a=n=>n.replace(/-([a-z])/g,(o,l)=>l.toUpperCase());if(f)return f.options[a(f.type)]};static setOptionsData=(i,c,f)=>{const a=B.findOptions(i,c);a&&(a.data=f)};static form={openBefore:{parentId:(i,c,f,a)=>{const n=w.config.table.rowKey;i?c.type===u.EDialog.Add?(c.form.parentId=i[n],c.form.sort=i.children.length+1):c.form.parentId=i.parentId.substring(i.parentId.lastIndexOf(",")+1):(c.form.parentId="0",c.form.sort=f.length+1),B.setOptionsData(a,"parentId",[{[n]:"0",title:"根",children:f}])}}}}function nt(t){return t}const R={search:"搜索",add:"新增",edit:"编辑",view:"查看",delete:"删除",export:"导出",exportSelect:"导出选中",exportPage:"导出本页",exportAll:"导出全部",import:"导入",refresh:"刷新",reset:"重置",expandCollapse:"展开/收缩",operation:"操作",close:"关闭",cancel:"取消",submit:"提交",confirm:"确认",deleteTitle:"删除提示",confirmDelete:"确认删除",confirmDeleteMessage:"确认要删除【{count}】条数据吗?",placeholderInput:"请输入",placeholderSelect:"请选择",checkFormData:"部分内容未输入或输入错误,请检查",selectDataToDelete:"请选择要删除的数据",selectDataToExport:"请选择要导出的数据",noData:"暂无数据",operationSuccess:"操作成功",switchOn:"开启",switchOff:"关闭",confirmModify:"确认修改",confirmSwitchMessage:"确认要修改吗?",mergeColumn:"合并栏位",expandColumn:"展开栏位"};class y{static t(i,...c){if(typeof i=="function")return i(...c);i=String(i);let f=0;return i.replace(/{([^}]+)}/g,(a,n)=>f<c.length?String(c[f++]):`{${n}}`)}static setI18n=i=>{y.curd=ObjectUtil.deepMerge(y.curd,i)};static tCurd(i,...c){return this.t(this.curd[i],...c)}static curd=R}class N{static getIdFun=()=>StrUtil.uuid();static setId=(i,c,f)=>{c[i]||(c[i]=[]);const a=w.config.table.rowKey;c[i].forEach(n=>{f.forEach(o=>{let l=o.default??"";o.type==="number"&&(l=o.default??0),o.type==="boolean"&&(l=o.default??!1),o.type==="time"&&(l=o.default??new Date),n[o.value]===void 0&&(n[o.value]=l)}),n[a]||(n[a]=N.getIdFun())})};static add=(i,c,f,a)=>{const n=JSONUtil.cp(f);N.setId(i,c,f);const o=w.config.table.rowKey;c[i].push(n.reduce((l,r)=>{let p=r.default??"";return r.type==="number"&&(p=r.default??0),r.type==="boolean"&&(p=r.default??!1),r.type==="time"&&(p=r.default??new Date),l[r.value]=p,l},{[o]:N.getIdFun()})),a?.(c)};static remove=(i,c,f,a)=>{const n=w.config.table.rowKey;c[i]=c[i].filter(o=>o[n]!==f[n]),a?.(c)};static getNoIdData=(i,c)=>{const f=JSONUtil.cp(i),a=w.config.table.rowKey;return f.forEach(n=>{n[a]&&delete n[a],c&&n[c]&&N.getNoIdData(n[c],c)}),f}}const I={key:0,class:"column curd-form-com-list",style:{width:"100%",gap:"10px"}},K={key:0},W={class:"row items-center",style:{gap:"10px",width:"100%"}},q={key:1},$=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:i}){const c=t,f=e.reactive({show:!1,add:(n,o,l)=>{N.add(n,o,l,()=>{a("change")})},remove:(n,o,l)=>{N.remove(n,o,l,()=>{a("change")})}});e.onMounted(()=>{N.setId(c.field,c.row,c.itemFields),f.show=!0});const a=i;return(n,o)=>{const l=e.resolveComponent("el-button"),r=e.resolveComponent("el-input");return f.show?(e.openBlock(),e.createElementBlock("div",I,[e.renderSlot(n.$slots,"list-start",{row:t.row}),t.addBottom?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",K,[e.createVNode(l,{link:"",type:"primary",onClick:o[0]||(o[0]=p=>f.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],p=>(e.openBlock(),e.createElementBlock("div",W,[e.renderSlot(n.$slots,"item-start",{item:p,row:t.row}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.itemFields,s=>(e.openBlock(),e.createBlock(r,{modelValue:p[s.value],"onUpdate:modelValue":d=>p[s.value]=d,style:e.normalizeStyle({width:t.inputWidth}),class:e.normalizeClass(t.inputClass),placeholder:s[t.label]||s[t.value],onChange:o[1]||(o[1]=d=>a("change"))},null,8,["modelValue","onUpdate:modelValue","style","class","placeholder"]))),256)),e.renderSlot(n.$slots,"item-end",{item:p,row:t.row}),e.createVNode(l,{link:"",type:"danger",onClick:s=>f.remove(t.field,t.row,p)},{default:e.withCtx(()=>[...o[4]||(o[4]=[e.createTextVNode("删除",-1)])]),_:1},8,["onClick"])]))),256)),t.addBottom?(e.openBlock(),e.createElementBlock("div",q,[e.createVNode(l,{link:"",type:"primary",onClick:o[2]||(o[2]=p=>f.add(t.field,t.row,t.itemFields))},{default:e.withCtx(()=>[...o[5]||(o[5]=[e.createTextVNode("添加",-1)])]),_:1})])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"list-end",{row:t.row})])):e.createCommentVNode("",!0)}}}),J={class:"row form-item-content",style:{width:"100%"}},G={class:"col"},Q={class:"col"},P=["innerHTML"],M=e.defineComponent({__name:"column",props:{option:{default:{}},type:{default:""},form:{default:{}}},setup(t,{expose:i}){const c=u.isFun,f=u.EDialog,a=e.ref(),n=t;try{U.Scope.getConf()?.formRef?.set("formRef",a)}catch{}const o=e.reactive({rules:{},show:!0,form:{},formDefault:{},type:n.type||f.Add,formColumn:[],getDisabled:l=>{if(o.type===f.View)return l.disabled?.view===void 0?!0:u.isFun(l.disabled?.view,o.form);const r=l.disabled?.[o.type===f.Add?"create":"update"];return u.isFun(r,o.form)},getBind:l=>l.options?.[o.type===f.Add?"formAdd":"formUpdate"]?.[l.type]||l.options?.[l.type]||{},getOn:l=>l.options?.[o.type===f.Add?"formAdd":"formUpdate"]?.[l.type]?.on||l.options?.[l.type]?.on||{},getColumnSpan:(l,r)=>{if(l.item.form?.spanCol){const p=n.option.form?.maxSpan||12,s=n.option.form?.defaultSpan||p/2,k=r.filter(g=>!u.isFun(g.item.show?.form,o.form,o.type)).reduce((g,m)=>g+(m.item.form?.span||s),0);return(l.item.form?.span||s)+k}return l.item.form?.span},initColumnForm:()=>{const l=n.option;o.formColumn=[],o.rules={},o.formDefault={};const r=[],p=n.option.form?.maxSpan||12,s=n.option.form?.defaultSpan||p/2;let d=[];const k=m=>{if(m.children){m.children.forEach(b=>{k(b)});return}if(o.formDefault[m.key]=m.value,m.isForm&&(typeof m.show?.form!="boolean"||m.show?.form)){m.form=m.form||{span:s},m.form.span=m.form.span??s;const b=m.form.span,E=d.reduce((V,S)=>V+S.span,b),x=d.length;if(d.push({item:m,span:b}),(x===1&&d[0].span===0||E>=p||b===0&&x>1)&&(r.push(d),d=[]),m.rules){const V={input:y.tCurd("placeholderInput"),select:y.tCurd("placeholderSelect")},S=(V[m.type]||V.input)+m.label;o.rules[m.key]=typeof m.rules=="boolean"?[{required:!0,message:S,trigger:"blur"}]:m.rules}}},g=(m,b)=>{m.isForm=b,Array.isArray(m.children)&&m.children.forEach(E=>g(E,b))};l.column.forEach(m=>{g(m,!0),k(m)}),d.length>0&&r.push(d),o.formColumn=r,o.form=JSONUtil.cp(o.formDefault)}});return o.initColumnForm(),n.form&&e.watch(()=>o.form,l=>{Object.keys(o.form).forEach(r=>{n.form[r]=o.form[r]})},{deep:!0,immediate:!0}),i({ref:a,conf:o}),(l,r)=>(e.openBlock(),e.createBlock(e.unref(h.ElForm),{ref_key:"ruleFormRef",ref:a,model:o.form,rules:o.rules},{default:e.withCtx(()=>[o.show?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(o.formColumn,(p,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s},[e.unref(c)(p.map(d=>d.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(l.$slots,"form-start",{row:o.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p,d=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d.item.key},[e.unref(c)(d.item.show?.form,o.form,o.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([d.item.form.span>0?`col-${o.getColumnSpan(d,p)}`:"col",`form-item-col-${d.item.key}`])},[e.createVNode(e.unref(h.ElFormItem),{label:d.item.text?.form?.label??d.item.label,prop:d.item.key,"label-width":d.item.text?.form?.label==""?0:d.item.form?.labelWidth||t.option.form?.labelWidth||"100px"},{default:e.withCtx(()=>[e.createElementVNode("div",J,[e.renderSlot(l.$slots,"form-"+d.item.key+"-start",{row:o.form,item:d.item}),e.createElementVNode("div",G,[e.createElementVNode("div",Q,[e.renderSlot(l.$slots,"form-"+d.item.key,{row:o.form,item:d.item},()=>[d.item.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:o.form[d.item.key],"onUpdate:modelValue":k=>o.form[d.item.key]=k},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):d.item.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:1,modelValue:o.form[d.item.key],"onUpdate:modelValue":k=>o.form[d.item.key]=k},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):d.item.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:2,modelValue:o.form[d.item.key],"onUpdate:modelValue":k=>o.form[d.item.key]=k},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.item.options?.select?.data,k=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:k.value,label:k.label,value:k.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):d.item.type==="radio"?(e.openBlock(),e.createBlock(e.unref(h.ElRadioGroup),e.mergeProps({key:3,modelValue:o.form[d.item.key],"onUpdate:modelValue":k=>o.form[d.item.key]=k},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item),style:{width:"100%"}}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.item.options?.radio?.data,k=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),{key:k.value,label:k.label,value:k.value},null,8,["label","value"]))),128))]),_:2},1040,["modelValue","onUpdate:modelValue","disabled"])):d.item.type==="list"?(e.openBlock(),e.createBlock($,e.mergeProps({key:4,row:o.form,field:d.item.key},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item),style:{width:"100%"}}),null,16,["row","field","disabled"])):d.item.type==="treeSelect"?(e.openBlock(),e.createBlock(e.unref(h.ElTreeSelect),e.mergeProps({key:5,modelValue:o.form[d.item.key],"onUpdate:modelValue":k=>o.form[d.item.key]=k},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item),style:{width:"100%"}}),null,16,["modelValue","onUpdate:modelValue","disabled"])):d.item.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(h.ElDatePicker),e.mergeProps({key:6,modelValue:o.form[d.item.key],"onUpdate:modelValue":k=>o.form[d.item.key]=k},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):d.item.type&&(e.unref(B).customComponent[d.item.type]||e.unref(B).customComponent[d.item.type]?.form)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[d.item.type]?.form||e.unref(B).customComponent[d.item.type]),e.mergeProps({key:7,modelValue:o.form[d.item.key],"onUpdate:modelValue":k=>o.form[d.item.key]=k},{ref_for:!0},o.getBind(d.item),e.toHandlers(o.getOn(d.item)),{disabled:o.getDisabled(d.item)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)]),e.renderSlot(l.$slots,"form-"+d.item.key+"-right",{row:o.form,item:d.item})]),e.renderSlot(l.$slots,"form-"+d.item.key+"-tip",{row:o.form,item:d.item},()=>[d.item.form?.tipText?(e.openBlock(),e.createElementBlock("div",{key:0,class:"form-tip-text",innerHTML:typeof d.item.form?.tipText=="function"?d.item.form?.tipText(o.form,o.type):d.item.form?.tipText},null,8,P)):e.createCommentVNode("",!0)])]),e.renderSlot(l.$slots,"form-"+d.item.key+"-end",{row:o.form,item:d.item})])]),_:2},1032,["label","prop","label-width"])],2)):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(l.$slots,"form-end",{row:o.form})],2)):e.createCommentVNode("",!0)],64))),128)):e.createCommentVNode("",!0)]),_:3},8,["model","rules"]))}});class L{static exportToExcel=async(i,c,f)=>{if(!i||i.length===0)return;const a=await u.loadModule("xlsx"),n=i.map(r=>{const p={};return c.forEach(s=>{p[s.label]=r[s.key]}),p}),o=a.utils.json_to_sheet(n),l=a.utils.book_new();a.utils.book_append_sheet(l,o,"Sheet1"),f?typeof f=="function"&&(f=f()):f=`导出数据_${new Date().Format("yyyy-MM-dd")}_${new Date().getTime()}`,a.writeFile(l,`${f}.xlsx`)}}class F{static delAllKey=i=>{Object.keys(i).forEach(c=>{delete i[c]})};static setValue=(i,c,f=!1)=>{f&&F.delAllKey(i),Object.keys(c).forEach(a=>{i[a]!==c[a]&&(i[a]=c[a])})}}const D=u.EDialog,X=t=>{const i=e.ref(),c=e.ref(),f=e.ref(),a=e.reactive({formRef:{map:{},set(n,o){a.formRef.map[n]=o},validate:()=>new Promise(async(n,o)=>{try{const l=Object.keys(a.formRef.map);for(let r=0;r<l.length;r++)await a.formRef.map[l[r]]?.validate(async(p,s)=>new Promise((d,k)=>{p||k(!1),d(!0)}));n(!0)}catch(l){o(l)}})},option:t.option,search:{column:{list:[]},form:{},formDefault:{},getPlaceholder:(n,o=y.tCurd("placeholderInput"))=>n.text?.search?.placeholder===void 0?`${o}${n.label}`:n.text?.search?.placeholder,getFormData:()=>{let n={};t.option.column.forEach(l=>{(typeof l.show?.search=="function"?l.show?.search(a.search.form):l.show?.search)&&(n[l.key]=a.search.form[l.key])});const o=t.option.search?.before?.(n);return o&&(n=o),n},reset:()=>{const n=a.search.formDefault;Object.keys(n).forEach(l=>{t.option.search?.resetMode==="none"?n[l]=void 0:n[l]=a.search.formDefault[l]});const o=ObjectUtil.deepMerge(n,{});F.setValue(a.search.form,o,!0),a.page.num=1,t.option.init!==!1&&a.table.getList()},submit:()=>{a.page.num=1,a.table.getList()}},page:{num:1,total:0,layout:t.option.page?.layout||w.config.pagination.layout,showTools:t.option.page?.showTools||w.config.pagination.showTools,size:t.option.page?.size||w.config.pagination.size,sizeList:t.option.page?.sizeList||w.config.pagination.pageSizes,pagerCount:t.option.page?.pagerCount||w.config.pagination.pagerCount,getQuery:(n={})=>({[w.config.field.page.size]:n.size||a.page.size,[w.config.field.page.num]:n.num||a.page.num,...a.search.getFormData()})},table:{op:{width:(...n)=>n.filter(l=>l).length*30+60},loading:!1,data:[],expand:{isExpand:!1,rowKeys:[],change:(n,o)=>{},all:()=>{if(a.table.expand.isExpand)a.table.expand.rowKeys=[];else{const n=o=>{let l=[];return o.forEach(r=>{l.push(r[t.option.table.rowKey]),r.children&&r.children.length>0&&(l=l.concat(n(r.children)))}),l};a.table.expand.rowKeys=n(a.table.data)}a.table.expand.isExpand=!a.table.expand.isExpand}},column:{list:[],show:{listSource:[],list:[]}},header:{group:{expand:!1,toggleExpandAll:()=>{const n=!a.table.header.group.expand;a.table.header.group.expand=n;const o=l=>{l.forEach(r=>{r.table?.header?.group!==void 0&&(r.table.header.group=!n),r.table?.header?.groupKey!==void 0&&(r.table.header.show=n),Array.isArray(r.children)&&r.children.length>0&&o(r.children)})};o(a.table.column.list)}}},getList:async()=>{a.table.loading=!0;const n=t.option.api.list,o=JSONUtil.cp(a.table.selection.list);try{await a.initApiData("init");let l={};if(a.table.sort.prop){const{props:b,order:E}=w.config.table.sort;l={[b.field]:a.table.sort.prop,[E.field]:a.table.sort.order}}const r=await n({...a.page.getQuery(),...l}),p=w.config.field.result,s=r.data||{[p.list]:r};let d=(Array.isArray(s[p.list]),s[p.list]);const k=a.update.formColumn.flat(),m=ObjectUtil.deepMerge({data:d},{}).data.map(b=>(Object.keys(b).forEach(x=>{const V=k.find(S=>S.item.key===x);V&&["select","radio"].includes(V.item.type)&&(V.item.table.format||(V.item.table.format=S=>V.item.options[V.item.type].data?.find(T=>T.value==S[x])?.label||S[x]))}),b));a.table.data=t.option.data?await t.option.data(m,d):m,a.page.total=s[p.total]||0,setTimeout(()=>{a.table.selection.setList(o)},20)}catch(l){console.error(l)}finally{a.table.loading=!1}},selection:{list:[],change:n=>{a.table.selection.list=n},setList:(n,o)=>{a.table.selection.list=[];const l=f.value;if(l?.clearSelection(),!l||!n?.length)return;const r=t.option.table?.rowKey,p=s=>{const d=k=>{for(const g of k){if(r!=null&&r!==""){if(g[r]===s[r])return g}else if(g===s)return g;if(Array.isArray(g.children)&&g.children.length){const m=d(g.children);if(m!==void 0)return m}}};return d(a.table.data)};n.forEach(s=>{const d=p(s);if(d)if(o){const k=()=>{l.toggleRowSelection(d,!0,!1)};o(s)!==!1&&k()}else l.toggleRowSelection(d,!0,!1)})}},sort:{prop:"",order:"",change:n=>{w.config.table.sort.resetPage&&(a.page.num=1);const o=w.config.table.sort;if(o.change){o.change(n,a);return}a.table.sort.prop=n.prop,n.order===null?(a.table.sort.order="",a.table.sort.prop=""):a.table.sort.order=n.order==="ascending"?o.order.asc:o.order.desc,a.table.getList()}}},export:{run:{start:async n=>{let o=await a.export.run[n](),l=t.option.column;const r=ObjectUtil.deepMerge({data:o,columns:l},{}),p=t.option.tools?.export||{};p.before&&p.before(r),L.exportToExcel(r.data,r.columns,p.fileName)},select:async()=>{a.export.loading=!0;try{if(t.option.tools?.export?.select){await t.option.tools?.export?.select({...a.page.getQuery(),items:a.table.selection.list});return}if(a.table.selection.list.length===0)throw u.fail(y.tCurd("selectDataToExport")),new Error(y.tCurd("selectDataToExport"));return a.table.selection.list}catch(n){console.error(n)}finally{a.export.loading=!1}},page:async()=>{a.export.loading=!0;try{if(t.option.tools?.export?.page){await t.option.tools?.export?.page({...a.page.getQuery()});return}if(a.table.data.length===0)throw u.fail(y.tCurd("noData")),new Error(y.tCurd("noData"));return a.table.data}catch(n){console.error(n)}finally{a.export.loading=!1}},all:async()=>{a.export.loading=!0;try{if(t.option.tools?.export?.all){await t.option.tools?.export?.all({...a.page.getQuery()});return}const n=t.option.api.list,o=await n({...a.page.getQuery({size:999999,num:1})});return(o.data||{[w.config.field.result.list]:o})[w.config.field.result.list]}catch(n){console.error(n)}finally{a.export.loading=!1}}},loading:!1,click:n=>{a.export.loading||a.export.run.start(n)}},update:{title:"",rules:{},show:!1,showContent:!1,loading:!1,type:D.Update,form:{},formDefault:{},formColumn:[],getDisabled:(n,o=!1)=>{if(t.option.table?.editMode&&o)return n.disabled?.table===void 0?!1:u.isFun(n.disabled?.table,a.update.form);if(a.update.type===D.View)return n.disabled?.view===void 0?!0:u.isFun(n.disabled?.view,a.update.form);const l=n.disabled?.[a.update.type===D.Add?"create":"update"];return u.isFun(l,a.update.form)},getBind:n=>n.options?.[a.update.type===D.Add?"formAdd":"formUpdate"]?.[n.type]||n.options?.[n.type]||{},getOn:(n,o)=>{const r=n.options?.[a.update.type===D.Add?"formAdd":"formUpdate"]?.[n.type]?.on||n.options?.[n.type]?.on||{},p={};return Object.keys(r).forEach(s=>{const d=r[s];typeof d=="function"?p[s]=function(...k){return d.apply(this,[...k,o||a.update.form,n])}:p[s]=d}),p},getOptions:n=>{try{const l=a.update.formColumn.flat().find(r=>r.item.key===n)?.item;return l?{options:l.options,bind:a.update.getBind(l)}:{options:{},bind:{}}}catch{return{options:{},bind:{}}}},edit:{data:{},getApiData:n=>{if(t.option.form?.editAll)return n;let o={[t.option.table?.rowKey]:a.update.edit.data[t.option.table?.rowKey]};return Object.keys(a.update.edit.data).forEach(l=>{n[l]!==a.update.edit.data[l]&&(o[l]=n[l])}),o}},view:{},open:(n,o)=>{a.update.showContent||FunUtil.throttle(async()=>{u.loading(!0);try{a.update.type=n;const l=n===D.Add;a.update.edit.data=o,a.update.title=y.tCurd(l?"add":n===D.View?"view":"edit");const r=ObjectUtil.deepMerge(l?a.update.formDefault:o,{});F.setValue(a.update.form,r,!0),await a.initApiData("update"),await t.option.form?.openBefore?.(a.update.form,a.update),(!t.option.table?.inlineEdit||l)&&(a.update.show=!0,a.update.showContent=!0),t.option.form?.openAfter?.(a.update.form,a.update)}catch(l){console.error(l)}finally{u.loading(!1)}})},submit:()=>{FunUtil.throttle(async()=>{try{await Promise.all([c.value?.validate(async(r,p)=>new Promise((s,d)=>{r||d(!1),s()})),a.formRef.validate()])}catch{u.fail(y.tCurd("checkFormData"));return}t.form&&Object.keys(t.form).forEach(r=>{a.update.form[r]=t.form[r]}),a.update.loading=!0;const n=a.update.type===D.Add?t.option.api.create:t.option.api.update;try{await t.option.form?.submitBefore?.(a.update.form,a.update)}catch{a.update.loading=!1;return}let o=ObjectUtil.deepMerge(a.update.form,{});delete o.children;const l=new Set(t.option.column.filter(r=>r.type==="datetime").map(r=>r.key));Object.keys(o).forEach(r=>{if(l.has(r)&&o[r]!=null){const p=new Date(o[r]).getTime();isNaN(p)||(o[r]=p)}});try{if(!n)return;await n({...o}),a.update.close(),await a.table.getList(),t.option.form?.submitAfter?.(o,a.update)}catch(r){console.error(r)}finally{a.update.loading=!1}})},close:()=>{a.update.show=!1,t.option.table?.inlineEdit&&(a.update.form={}),setTimeout(()=>{a.update.showContent=!1},350)}},remove:{title:y.tCurd("deleteTitle"),show:!1,items:[],loading:!1,close:()=>{a.remove.show=!1},open:n=>{if(n.length===0){u.fail(y.tCurd("selectDataToDelete"));return}a.remove.items=n,a.remove.show=!0},submit:()=>{FunUtil.throttle(async()=>{a.remove.loading=!0;const n=t.option.api.delete;try{if(!n)return;await n({[t.option.table?.rowKey]:a.remove.items.map(o=>o[t.option.table?.rowKey]),items:a.remove.items}),u.success(y.tCurd("operationSuccess")),a.table.data.length<=1&&a.page.num>1&&(a.page.num-=1),a.remove.close(),await a.table.getList()}catch(o){console.error(o)}finally{a.remove.loading=!1}})}},init:()=>{a.initCurdConfig(),a.initColumnOptions(),a.initColumnForm()},apiDataMap:{},initApiData:async n=>{const o=[],l=r=>{if(r.children&&r.children.length){r.children.forEach(p=>l(p));return}if(r.options?.[r.type]?.dataApi&&r.options?.[r.type]?.dataApiConfig?.[n]){if(a.apiDataMap[r.key]&&r.options?.[r.type]?.dataApiConfig?.once)return;const p=(async()=>{try{let s=await r.options?.[r.type]?.dataApi?.(a.update.form,a.update.type);if(s){const d=r.options?.[r.type]?.dataPath;!Array.isArray(s)&&d&&(s=ObjectUtil.getPathValue(s,d)),r.options[r.type].data=s,r.options.search[r.type].data=s,r.options.search[r.options.search.type??r.type]||(r.options.search[r.options.search.type??r.type]={}),r.options.search[r.options.search.type??r.type].data=s,r.options.formAdd[r.type].data=s,r.options.formUpdate[r.type].data=s,a.apiDataMap[r.key]=s}}catch{}})();o.push(p)}};return t.option.column.forEach(r=>{l(r)}),await Promise.all(o),!0},initCurdConfig:()=>{const n=ObjectUtil.deepMerge(w.config,{});n.table.emptyText=y.tCurd("noData"),t.option.size=t.option.size||{},n.table.size=t.option.size.table||n.size.table,n.form.size=t.option.size.form||n.size.form,n.size.search=t.option.size.search||n.size.search;const o=ObjectUtil.deepMerge(n,t.option||{});Object.keys(o).forEach(l=>{t.option[l]=o[l]})},initColumnOptions:()=>{let n=JSONUtil.cp(w.config.columnConfig);n.options=ObjectUtil.deepMerge({switch:{activeText:y.tCurd("switchOn"),inactiveText:y.tCurd("switchOff")}},n.options);const o=l=>{for(const r in n){if(r==="table"){if(l.table=ObjectUtil.deepMerge(n.table,l.table||{}),l.children){l.children.forEach(s=>{o(s)});return}}else r==="type"?l.type=l.type||n.type:l[r]=ObjectUtil.deepMerge(n[r],l[r]||{});l.options=l.options||{},l.options[l.type]=l.options[l.type]||{},l.options[l.type].size=t.option.size.form,["search","formAdd","formUpdate"].forEach(s=>{l.options[s]=l.options[s]||ObjectUtil.deepMerge(l.options,{}),l.options[s][l.type]=l.options[s][l.type]||{},l.options[s][l.type].size=s==="search"?t.option.size.search:t.option.size.form}),l.table=ObjectUtil.deepMerge(l.table,l.options[l.type].table||{})}l.type==="switch"&&(l.options.switch.tableBeforeChange=async(r,p)=>{const s=l.options?.switch;try{s.tableConfig?.confirm&&await i.value?.open({title:y.tCurd("confirmModify"),content:y.tCurd("confirmSwitchMessage")});try{if(!t.option.api.update&&!s.tableConfig?.api)return;const d=p[t.option.table?.rowKey];s.loadingMap||(s.loadingMap={}),s.loadingMap[d]||(s.loadingMap[d]={loading:!1}),s.loadingMap[d].loading=!0;const k=p[r]===s.activeValue?s.inactiveValue:s.activeValue,g=s.tableConfig?.api?s.tableConfig.api:t.option.api.update;if(!g)return;try{await g({...p,[r]:k},"switch")}catch{return!1}finally{s.loadingMap[d].loading=!1}return u.success(y.tCurd("operationSuccess")),s.tableConfig?.loadList&&(a.table.loading=!0,a.table.getList(),a.table.loading=!1),!0}catch(d){return console.error(d),!1}finally{a.table.loading=!1}}catch{return!1}}),l.type==="treeSelect"&&(l.options.treeSelect.rowKey=t.option.table?.rowKey,l.options.treeSelect.nodeKey=t.option.table?.rowKey)};t.option.column.forEach(o),t.option.table?.column?.forEach(o)},getColumnSpan:(n,o)=>{if(n.item.form?.spanCol){const l=w.config.form.defaultSpan,p=o.filter(s=>!u.isFun(s.item.show?.form,a.update.form,a.update.type)).reduce((s,d)=>s+(d.item.form?.span||l),0);return(n.item?.form.span||l)+p}return n.item.form.span},initColumnForm:()=>{const n=t.option;a.update.formColumn=[],a.table.column.show={list:[],listSource:[]};const o=[],l=t.option.form?.maxSpan||12,r=t.option.form?.defaultSpan||l/2;let p=[];const s=m=>{if(m.children){a.table.column.show.list.push(m.key),m.children.forEach(b=>{s(b)});return}if(a.update.formDefault[m.key]=m.value,m.table.table&&(m.show.table&&a.table.column.show.list.push(m.key),m.table.table&&a.table.column.show.listSource.push(m.key)),!(m.isForm&&typeof m.show?.form=="boolean")||m.show?.form){m.form=m.form||{span:r},m.form.span=m.form.span??r;let b=m.form.span,E=p.reduce((V,S)=>V+S.span,b);const x=p.length;if(p.push({item:m,span:b}),(x===1&&p[0].span===0||E>=l||b===0&&x>1)&&(o.push(p),p=[]),m.rules){const V={input:y.tCurd("placeholderInput"),select:y.tCurd("placeholderSelect")},S=(V[m.type]||V.input)+m.label,T=typeof m.rules=="boolean"?[{required:!0,message:S,trigger:"blur"}]:m.rules;a.update.rules[m.key]=T.map(O=>{if(O.validator){const _e=O.validator;return{...O,validator:(ve,et,tt)=>_e(ve,et,tt,a.update.form)}}return O})}}},d=(m,b)=>{m.isForm=b,Array.isArray(m.children)&&m.children.forEach(E=>d(E,b))};n.column.forEach(m=>{m.isForm=!0,d(m,!0),s(m)}),t.option.table?.column?.forEach(m=>{d(m,!1),s(m)}),a.search.column.list=n.column.concat(n.table?.column||[]),a.table.column.list=a.search.column.list.filter(m=>m.table?.table),a.search.column.list.sort((m,b)=>m.sort?.search-b.sort?.search),a.table.column.list.sort((m,b)=>m.sort?.table-b.sort?.table),p.length>0&&o.push(p),a.update.formColumn=o;const k=t.option.search?.formDefault;k&&Object.keys(k).forEach(m=>{a.search.formDefault[m]=k[m]}),n.column.forEach(m=>{m.show?.search||(a.search.formDefault[m.key]=void 0)});const g=ObjectUtil.deepMerge(a.search.formDefault,{});F.setValue(a.search.form,g,!0)}});return a.init(),e.onMounted(()=>{t.option.init!==!1&&a.table.getList()}),t.form&&e.watch(()=>a.update.form,n=>{Object.keys(a.update.form).forEach(o=>{t.form[o]=a.update.form[o]})},{deep:!0,immediate:!0}),t.searchForm&&e.watch(()=>a.search.form,n=>{Object.keys(a.search.form).forEach(o=>{t.searchForm[o]=a.search.form[o]})},{deep:!0,immediate:!0}),U.Scope.setConf(a),{conf:a,switchConfirmRef:i,ruleFormRef:c,tableRef:f}},Y={class:"dialog-footer"},Z=e.defineComponent({__name:"switchConfirm",props:{size:{}},setup(t,{expose:i}){const c=e.ref(!1),f=e.ref("确认修改"),a=e.ref("确认要修改状态吗?");let n=null,o=null;const l=s=>(s?.title&&(f.value=s.title),s?.content&&(a.value=s.content),c.value=!0,new Promise((d,k)=>{n=d,o=k})),r=()=>{c.value=!1,n?.(!0),n=null,o=null},p=()=>{c.value=!1,o?.(new Error("用户取消操作")),n=null,o=null};return i({open:l}),(s,d)=>{const k=e.resolveComponent("el-form");return e.openBlock(),e.createBlock(e.unref(h.ElDialog),{modelValue:c.value,"onUpdate:modelValue":d[0]||(d[0]=g=>c.value=g),title:f.value,"close-on-click-modal":!1,width:"400px"},{footer:e.withCtx(()=>[e.createVNode(k,{size:t.size},{default:e.withCtx(()=>[e.createElementVNode("span",Y,[e.createVNode(e.unref(h.ElButton),{onClick:p},{default:e.withCtx(()=>[...d[1]||(d[1]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(h.ElButton),{type:"primary",onClick:r},{default:e.withCtx(()=>[...d[2]||(d[2]=[e.createTextVNode("确认",-1)])]),_:1})])]),_:1},8,["size"])]),default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(a.value),1)]),_:1},8,["modelValue","title"])}}}),z=(t,i)=>{const c=t.__vccOpts||t;for(const[f,a]of i)c[f]=a;return c},_={},v={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function ee(t,i){return e.openBlock(),e.createElementBlock("svg",v,[...i[0]||(i[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 te=z(_,[["render",ee]]),oe=["innerHTML"],ne=e.defineComponent({__name:"text",props:{content:{},value:{}},setup(t){const i=t,c=e.computed(()=>typeof i.content=="function"?i.content(i.value):i.content);return(f,a)=>typeof c.value=="object"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{key:0})):(e.openBlock(),e.createElementBlock("div",{key:1,innerHTML:c.value},null,8,oe))}}),ae={},le={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function re(t,i){return e.openBlock(),e.createElementBlock("svg",le,[...i[0]||(i[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 ie=z(ae,[["render",re]]),de={},ce={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function se(t,i){return e.openBlock(),e.createElementBlock("svg",ce,[...i[0]||(i[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0z"},null,-1)])])}const fe=z(de,[["render",se]]),me={},pe={"data-v-58697b5c":"",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"};function he(t,i){return e.openBlock(),e.createElementBlock("svg",pe,[...i[0]||(i[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896M288 512a38.4 38.4 0 0 0 38.4 38.4h371.2a38.4 38.4 0 0 0 0-76.8H326.4A38.4 38.4 0 0 0 288 512"},null,-1)])])}const ge=z(me,[["render",he]]),ye={class:"row flex-center table-header-label inline"},ke={class:"table-header-tooltip"},be=["innerHTML"],ue=["onClick"],we={key:1},Ce=["onClick","innerHTML"],Be=e.defineComponent({__name:"tableColumn",props:{conf:{},columnList:{},option:{}},setup(t){const i=u.isFun,c=e.getCurrentInstance().type;return(f,a)=>{const n=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)&&(o.show?.table===void 0||e.unref(i)(o.show?.table,t.conf.table.data))?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.table?.header?.groupKey===void 0||o.table.header.show?(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(f.$slots,"table-header-"+o.key,{item:o},()=>[e.createElementVNode("div",ye,[o.table?.header?.tooltip?(e.openBlock(),e.createBlock(n,{key:0,effect:"dark",placement:"top"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:o.table?.header?.tooltip},null,8,be)]),default:e.withCtx(()=>[e.createElementVNode("span",ke,[e.createVNode(ie)])]),_:2},1024)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(o.label)+" ",1),o.table?.header?.group!==void 0?(e.openBlock(),e.createElementBlock("span",{key:1,class:"table-header-plus",onClick:e.withModifiers(()=>{o.table.header.group=!o.table.header.group,t.columnList.forEach(l=>{l.table?.header?.groupKey===o.key&&(l.table.header.show=!o.table.header.group)})},["stop"])},[o.table.header.group?(e.openBlock(),e.createBlock(fe,{key:0})):(e.openBlock(),e.createBlock(ge,{key:1}))],8,ue)):e.createCommentVNode("",!0)])])]),default:e.withCtx(({row:l})=>[o.children?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[a[0]||(a[0]=e.createTextVNode("   ",-1)),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(c)),{conf:t.conf,columnList:o.children,option:t.option},e.createSlots({_:2},[e.renderList(f.$slots,(r,p)=>({name:p,fn:e.withCtx(s=>[e.renderSlot(f.$slots,p,e.mergeProps({ref_for:!0},s||{}))])}))]),1032,["conf","columnList","option"]))],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.option.table?.editMode?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["row",["table-edit-"+o.key]]),style:{width:"100%"}},[e.renderSlot(f.$slots,"table-edit-left-"+o.key,{row:l,item:o}),o.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:0,modelValue:l[o.key],"onUpdate:modelValue":r=>l[o.key]=r,disabled:t.conf.update.getDisabled(o,!0),class:"col"},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o,l))),e.createSlots({_:2},[o.options?.input?.prepend?{name:"prepend",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof o.options?.input?.prepend=="function"?o.options?.input?.prepend(l):o.options?.input?.prepend),1)]),key:"0"}:void 0]),1040,["modelValue","onUpdate:modelValue","disabled"])):o.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:1,modelValue:l[o.key],"onUpdate:modelValue":r=>l[o.key]=r,disabled:t.conf.update.getDisabled(o,!0),class:"col"},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o,l))),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options?.search?.select?.data||o.options?.select?.data,r=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:r.value,label:r.label,value:r.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:l[o.key],"onUpdate:modelValue":r=>l[o.key]=r,disabled:t.conf.update.getDisabled(o,!0),class:"col"},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o,l))),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"table-edit-right-"+o.key,{row:l,item:o})],2)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.conf.update.type===e.unref(u).EDialog.Update&&e.unref(i)(o.show?.form,t.conf.update.form,e.unref(u).EDialog.Update)&&t.option.table?.inlineEdit&&t.conf.update.form[t.option.table?.rowKey]===l[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(h.ElInput),e.mergeProps({key:0,modelValue:t.conf.update.form[o.key],"onUpdate:modelValue":r=>t.conf.update.form[o.key]=r,disabled:t.conf.update.getDisabled(o,!0)},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o,l)),{style:{width:"100%"}}),e.createSlots({_:2},[o.options?.input?.prepend?{name:"prepend",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof o.options?.input?.prepend=="function"?o.options?.input?.prepend(l):o.options?.input?.prepend),1)]),key:"0"}:void 0]),1040,["modelValue","onUpdate:modelValue","disabled"])):o.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:1,modelValue:t.conf.update.form[o.key],"onUpdate:modelValue":r=>t.conf.update.form[o.key]=r,disabled:t.conf.update.getDisabled(o,!0)},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o,l)),{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,r=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:r.value,label:r.label,value:r.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:t.conf.update.form[o.key],"onUpdate:modelValue":r=>t.conf.update.form[o.key]=r},{ref_for:!0},t.conf.update.getBind(o),e.toHandlers(t.conf.update.getOn(o,l)),{disabled:t.conf.update.getDisabled(o,!0)}),null,16,["modelValue","onUpdate:modelValue","disabled"])):e.createCommentVNode("",!0)],64)):e.renderSlot(f.$slots,"table-"+o.key,{key:1,row:l,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:l[o.key],"onUpdate:modelValue":r=>l[o.key]=r},{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:l[o.key],"onUpdate:modelValue":r=>l[o.key]=r,loading:o.options?.switch?.loadingMap?.[l[t.option.table?.rowKey]]?.loading,"before-change":()=>o.options?.switch?.tableBeforeChange?.(o.key,l)},{ref_for:!0},o.options?.switch),null,16,["modelValue","onUpdate:modelValue","loading","before-change"])):(e.openBlock(),e.createElementBlock("span",we,e.toDisplayString(l[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:r=>o.table?.click?.callback?.(l),innerHTML:o.table?.format?o.table?.format(l):l[o.key]},null,14,Ce))])],64))],64))]),_:2},1040,["prop","label"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64))),128)}}}),Ve={class:"row form-item-content",style:{width:"100%"}},Ee={class:"col column form-item-content-item"},xe={class:"col"},Se=["innerHTML"],Ne=e.defineComponent({__name:"formColumn",props:{conf:{},item:{}},setup(t){return(i,c)=>(e.openBlock(),e.createBlock(e.unref(h.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",Ve,[e.renderSlot(i.$slots,"form-"+t.item.item.key+"-start",{row:t.conf.update.form,item:t.item.item}),e.createElementVNode("div",Ee,[e.createElementVNode("div",xe,[e.renderSlot(i.$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(h.ElInput),e.mergeProps({key:0,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":c[0]||(c[0]=f=>t.conf.update.form[t.item.item.key]=f)},t.conf.update.getBind(t.item.item),e.toHandlers(t.conf.update.getOn(t.item.item)),{disabled:t.conf.update.getDisabled(t.item.item)}),e.createSlots({_:2},[t.item.item.options?.input?.prepend?{name:"prepend",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(typeof t.item.item.options?.input?.prepend=="function"?t.item.item.options?.input?.prepend(t.conf.update.form):t.item.item.options?.input?.prepend),1)]),key:"0"}:void 0]),1040,["modelValue","disabled"])):t.item.item.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSwitch),e.mergeProps({key:1,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":c[1]||(c[1]=f=>t.conf.update.form[t.item.item.key]=f)},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(h.ElSelect),e.mergeProps({key:2,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":c[2]||(c[2]=f=>t.conf.update.form[t.item.item.key]=f)},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,f=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),e.mergeProps({key:f.value},{ref_for:!0},f,e.toHandlers(f.on||{})),null,16))),128))]),_:1},16,["modelValue","disabled"])):t.item.item.type==="radio"?(e.openBlock(),e.createBlock(e.unref(h.ElRadioGroup),e.mergeProps({key:3,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":c[3]||(c[3]=f=>t.conf.update.form[t.item.item.key]=f)},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,f=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),e.mergeProps({key:f.value},{ref_for:!0},f,e.toHandlers(f.on||{})),null,16))),128))]),_:1},16,["modelValue","disabled"])):t.item.item.type==="list"?(e.openBlock(),e.createBlock($,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(h.ElTreeSelect),e.mergeProps({key:5,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":c[4]||(c[4]=f=>t.conf.update.form[t.item.item.key]=f)},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(h.ElDatePicker),e.mergeProps({key:6,modelValue:t.conf.update.form[t.item.item.key],"onUpdate:modelValue":c[5]||(c[5]=f=>t.conf.update.form[t.item.item.key]=f)},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":c[6]||(c[6]=f=>t.conf.update.form[t.item.item.key]=f)},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(i.$slots,"form-"+t.item.item.key+"-right",{row:t.conf.update.form,item:t.item.item})]),e.renderSlot(i.$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,Se)):e.createCommentVNode("",!0)])]),e.renderSlot(i.$slots,"form-"+t.item.item.key+"-end",{row:t.conf.update.form,item:t.item.item})])]),_:3},8,["label","prop","label-width"]))}}),De={},ze={xmlns:"http://www.w3.org/2000/svg",viewBox:"64 64 896 896"};function Fe(t,i){return e.openBlock(),e.createElementBlock("svg",ze,[...i[0]||(i[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M482.2 508.4L331.3 389c-3-2.4-7.3-.2-7.3 3.6V478H184V184h204v128c0 2.2 1.8 4 4 4h60c2.2 0 4-1.8 4-4V144c0-15.5-12.5-28-28-28H144c-15.5 0-28 12.5-28 28v736c0 15.5 12.5 28 28 28h284c15.5 0 28-12.5 28-28V712c0-2.2-1.8-4-4-4h-60c-2.2 0-4 1.8-4 4v128H184V546h140v85.4c0 3.8 4.4 6 7.3 3.6l150.9-119.4a4.5 4.5 0 000-7.2zM880 116H596c-15.5 0-28 12.5-28 28v168c0 2.2 1.8 4 4 4h60c2.2 0 4-1.8 4-4V184h204v294H700v-85.4c0-3.8-4.3-6-7.3-3.6l-151 119.4a4.52 4.52 0 000 7.1l151 119.5c2.9 2.3 7.3.2 7.3-3.6V546h140v294H636V712c0-2.2-1.8-4-4-4h-60c-2.2 0-4 1.8-4 4v168c0 15.5 12.5 28 28 28h284c15.5 0 28-12.5 28-28V144c0-15.5-12.5-28-28-28z"},null,-1)])])}const $e=z(De,[["render",Fe]]),Oe={},Te={xmlns:"http://www.w3.org/2000/svg",viewBox:"64 64 896 896"};function Ue(t,i){return e.openBlock(),e.createElementBlock("svg",Te,[...i[0]||(i[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M180 176h-60c-4.4 0-8 3.6-8 8v656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V184c0-4.4-3.6-8-8-8zm724 0h-60c-4.4 0-8 3.6-8 8v656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V184c0-4.4-3.6-8-8-8zM785.3 504.3L657.7 403.6a7.23 7.23 0 00-11.7 5.7V476H378v-62.8c0-6-7-9.4-11.7-5.7L238.7 508.3a7.14 7.14 0 000 11.3l127.5 100.8c4.7 3.7 11.7.4 11.7-5.7V548h268v62.8c0 6 7 9.4 11.7 5.7l127.5-100.8c3.8-2.9 3.8-8.5.2-11.4z"},null,-1)])])}const Me=z(Oe,[["render",Ue]]),H=e.defineComponent({__name:"searchField",props:{item:{},conf:{},type:{}},setup(t){const i=t,c=e.computed({get:()=>i.conf.search.form?.[i.item?.key],set:f=>{i.item?.key!==void 0&&(i.conf.search.form[i.item.key]=f)}});return(f,a)=>e.unref(B).customComponent[t.type??""]?.search?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[t.type??""]?.search),e.mergeProps({key:0,modelValue:c.value,"onUpdate:modelValue":a[0]||(a[0]=n=>c.value=n)},t.item.options?.search?.[t.type??""],e.toHandlers(t.item.options?.search?.[t.type??""]?.on||{})),null,16,["modelValue"])):t.type==="input"?(e.openBlock(),e.createBlock(e.unref(h.ElInput),e.mergeProps({key:1,modelValue:c.value,"onUpdate:modelValue":a[1]||(a[1]=n=>c.value=n),placeholder:t.conf.search.getPlaceholder(t.item),clearable:"",disabled:t.item.disabled?.search},t.item.options?.search?.input||t.item.options?.input,e.toHandlers(t.item.options?.search?.input?.on||t.item.options?.input?.on||{})),null,16,["modelValue","placeholder","disabled"])):t.type==="switch"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:2,modelValue:c.value,"onUpdate:modelValue":a[2]||(a[2]=n=>c.value=n),placeholder:t.conf.search.getPlaceholder(t.item,e.unref(y).tCurd("placeholderSelect")),clearable:"",disabled:t.item.disabled?.search},t.item.options?.search?.switch||t.item.options?.switch,e.toHandlers(t.item.options?.search?.switch?.on||t.item.options?.switch?.on||{})),{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:t.item.options?.switch?.activeValue,label:t.item.options?.switch?.activeText,value:t.item.options?.switch?.activeValue},null,8,["label","value"])),(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:t.item.options?.switch?.inactiveValue,label:t.item.options?.switch?.inactiveText,value:t.item.options?.switch?.inactiveValue},null,8,["label","value"]))]),_:1},16,["modelValue","placeholder","disabled"])):t.type==="select"?(e.openBlock(),e.createBlock(e.unref(h.ElSelect),e.mergeProps({key:3,modelValue:c.value,"onUpdate:modelValue":a[3]||(a[3]=n=>c.value=n),placeholder:t.conf.search.getPlaceholder(t.item,e.unref(y).tCurd("placeholderSelect")),clearable:"",disabled:t.item.disabled?.search},t.item.options?.search?.select||t.item.options?.select,e.toHandlers(t.item.options?.search?.select?.on||t.item.options?.select?.on||{})),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.options?.search?.select?.data||t.item.options?.select?.data||[],n=>(e.openBlock(),e.createBlock(e.unref(h.ElOption),{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","placeholder","disabled"])):t.type==="radio"?(e.openBlock(),e.createBlock(e.unref(h.ElRadioGroup),e.mergeProps({key:4,modelValue:c.value,"onUpdate:modelValue":a[4]||(a[4]=n=>c.value=n),disabled:t.item.disabled?.search},t.item.options?.search?.radio||t.item.options?.radio,e.toHandlers(t.item.options?.search?.radio?.on||t.item.options?.radio?.on||{})),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.item.options?.radio?.data,n=>(e.openBlock(),e.createBlock(e.unref(h.ElRadio),{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue","disabled"])):t.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(h.ElDatePicker),e.mergeProps({key:5,modelValue:c.value,"onUpdate:modelValue":a[5]||(a[5]=n=>c.value=n),disabled:t.item.disabled?.search},t.item.options?.search?.datetime||t.item.options?.datetime,e.toHandlers(t.item.options?.search?.datetime?.on||t.item.options?.datetime?.on||{})),null,16,["modelValue","disabled"])):t.type&&e.unref(B).customComponent[t.type]?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(B).customComponent[t.type]),e.mergeProps({key:6,modelValue:c.value,"onUpdate:modelValue":a[6]||(a[6]=n=>c.value=n)},t.item.options?.search?.[t.type]||t.item.options?.[t.type],e.toHandlers(t.item.options?.search?.[t.type]?.on||t.item.options?.[t.type]?.on||{}),{disabled:t.item.disabled?.search}),null,16,["modelValue","disabled"])):e.createCommentVNode("",!0)}}),Le={key:0,class:"relative curd-search fit-width"},He={class:"mb-10 flex justify-between items-center fit-width"},Ae={class:"flex items-center",style:{gap:"10px"}},je={key:0},Re={key:1},Ie={key:2},Ke={class:"export-btn"},We={key:1,class:"export-btn"},qe={class:"flex items-center table-tools-right",style:{gap:"10px"}},Je={class:"row justify-end mt-10 mb-10 table-bottom-pagination"},Ge={class:"dialog-footer"},Qe={key:0},Pe={key:1},Xe={class:"dialog-footer"},A=e.defineComponent({__name:"index",props:{option:{default:{}},form:{default:{}},searchForm:{default:{}}},setup(t,{expose:i}){const c=u.EDialog,f=t,a=u.isFun,{conf:n,switchConfirmRef:o,ruleFormRef:l,tableRef:r}=X(f);return i({conf:n}),(p,s)=>{const d=e.resolveComponent("el-tooltip"),k=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(p.$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",Le,[e.createVNode(e.unref(h.ElForm),{model:e.unref(n).search.form,inline:"",size:t.option.size?.search},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"search-start",{row:e.unref(n).search.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).search.column.list,g=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g.key},[e.renderSlot(p.$slots,"search-"+g.key+"-start",{row:e.unref(n).search.form}),(typeof g.show?.search=="function"?g.show?.search(e.unref(n).search.form):g.show?.search)?(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{key:0,label:g.text?.search?.label??g.label},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"search-"+g.key+"-left",{row:e.unref(n).search.form}),e.renderSlot(p.$slots,"search-"+g.key,{row:e.unref(n).search.form},()=>[g.options?.search?.type?(e.openBlock(),e.createBlock(H,{key:0,item:g,conf:e.unref(n),type:g.options.search.type},null,8,["item","conf","type"])):(e.openBlock(),e.createBlock(H,{key:1,item:g,conf:e.unref(n),type:g.type},null,8,["item","conf","type"]))]),e.renderSlot(p.$slots,"search-"+g.key+"-right",{row:e.unref(n).search.form})]),_:2},1032,["label"])):e.createCommentVNode("",!0),e.renderSlot(p.$slots,"search-"+g.key+"-end",{row:e.unref(n).search.form})],64))),128)),e.renderSlot(p.$slots,"search-center",{row:e.unref(n).search.form}),t.option.tools?.search||t.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(h.ElFormItem),{key:0},{default:e.withCtx(()=>[t.option.tools?.search?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,type:"primary",onClick:e.unref(n).search.submit},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("search")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),t.option.tools?.reset?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:1,onClick:e.unref(n).search.reset},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("reset")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0)]),_:1})):e.createCommentVNode("",!0),e.renderSlot(p.$slots,"search-end",{row:e.unref(n).search.form})]),_:3},8,["model","size"])])):e.createCommentVNode("",!0),e.createElementVNode("div",He,[e.createElementVNode("div",Ae,[e.unref(a)(t.option.tools?.add)?(e.openBlock(),e.createElementBlock("div",je,[e.createVNode(e.unref(h.ElButton),{type:"primary",onClick:s[0]||(s[0]=g=>e.unref(n).update.open(e.unref(c).Add)),size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("add")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),t.option.table?.selectable&&e.unref(a)(t.option.tools?.delete)?(e.openBlock(),e.createElementBlock("div",Re,[e.createVNode(e.unref(h.ElButton),{type:"danger",onClick:s[1]||(s[1]=g=>e.unref(n).remove.open(e.unref(n).table.selection.list)),size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("delete")),1)]),_:1},8,["size"])])):e.createCommentVNode("",!0),t.option.tools?.expand?(e.openBlock(),e.createElementBlock("div",Ie,[e.createVNode(e.unref(h.ElButton),{type:"warning",onClick:s[2]||(s[2]=g=>e.unref(n).table.expand.all()),size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).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(h.ElDropdown),{key:0,onCommand:e.unref(n).export.click},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(h.ElDropdownMenu),{size:t.option.size?.search},{default:e.withCtx(()=>[t.option.tools?.export?.dropdown?.select&&(t.option.table?.selectable||e.unref(a)(t.option.tools?.delete))?(e.openBlock(),e.createBlock(e.unref(h.ElDropdownItem),{key:0,command:"select"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("exportSelect")),1)]),_:1})):e.createCommentVNode("",!0),t.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(y).tCurd("exportPage")),1)]),_:1})):e.createCommentVNode("",!0),t.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(y).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(n).export.loading,size:t.option.size?.search},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("export")),1)]),_:1},8,["loading","size"])])]),_:1},8,["onCommand"])):(e.openBlock(),e.createElementBlock("div",We,[e.createVNode(e.unref(h.ElButton),{type:"warning",loading:e.unref(n).export.loading,size:t.option.size?.search,onClick:s[3]||(s[3]=g=>e.unref(n).export.run.start("all"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("export")),1)]),_:1},8,["loading","size"])]))],64)):e.createCommentVNode("",!0),e.renderSlot(p.$slots,"tools-left")]),e.createElementVNode("div",qe,[e.renderSlot(p.$slots,"tools-right"),e.unref(n).page.showTools?(e.openBlock(),e.createBlock(e.unref(h.ElPagination),e.mergeProps({key:0,"current-page":e.unref(n).page.num,"onUpdate:currentPage":s[4]||(s[4]=g=>e.unref(n).page.num=g),"page-size":e.unref(n).page.size,"onUpdate:pageSize":s[5]||(s[5]=g=>e.unref(n).page.size=g),background:"","page-sizes":e.unref(n).page.sizeList,"pager-count":e.unref(n).page.pagerCount,layout:e.unref(n).page.layout,total:e.unref(n).page.total,size:t.option.size?.table,onSizeChange:e.unref(n).table.getList,onCurrentChange:e.unref(n).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?.expandColumn===void 0||t.option.tools?.expandColumn?(e.openBlock(),e.createBlock(d,{key:1,effect:"dark",content:e.unref(n).table.header.group.expand?e.unref(y).tCurd("mergeColumn"):e.unref(y).tCurd("expandColumn"),placement:"top"},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["refresh-btn",[t.option.size?.search]]),onClick:s[6]||(s[6]=(...g)=>e.unref(n).table.header.group.toggleExpandAll&&e.unref(n).table.header.group.toggleExpandAll(...g))},[e.unref(n).table.header.group.expand?(e.openBlock(),e.createBlock($e,{key:0})):(e.openBlock(),e.createBlock(Me,{key:1}))],2)]),_:1},8,["content"])):e.createCommentVNode("",!0),t.option.tools?.refresh===void 0||t.option.tools?.refresh?(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["refresh-btn",[t.option.size?.search]]),onClick:s[7]||(s[7]=(...g)=>e.unref(n).table.getList&&e.unref(n).table.getList(...g))},[e.createVNode(te)],2)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",{class:e.normalizeClass(["fit-width relative form-box",[t.option.table?.fitHeight?"col ":"",t.option.table?.editMode?"edit-mode":""]])},[e.createElementVNode("div",{class:e.normalizeClass(["column form-box-content",[t.option.table?.fitHeight?"absolute fit":""]])},[e.withDirectives((e.openBlock(),e.createBlock(e.unref(h.ElTable),e.mergeProps({ref_key:"tableRef",ref:r,data:e.unref(n).table.data,border:t.option.table?.border===void 0?!0:t.option.table?.border,onSelectionChange:e.unref(n).table.selection.change,onSortChange:e.unref(n).table.sort.change,"expand-row-keys":e.unref(n).table.expand.rowKeys,onExpandChange:e.unref(n).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(a)(t.option.tools?.delete)||t.option.tools?.export?.show&&t.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 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),(typeof t.option.table?.index=="object"?t.option.table?.index?.show:t.option.table?.index)?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:1,type:"index",fixed:"left",width:"40",align:"center",label:"#","show-overflow-tooltip":!1,className:"cc1-form-index-column"},typeof t.option.table?.index=="object"?t.option.table?.index:{},e.toHandlers(typeof t.option.table?.index=="object"?t.option.table?.index?.on||{}:{})),null,16)):e.createCommentVNode("",!0),e.createVNode(Be,{conf:e.unref(n),columnList:e.unref(n).table.column.list,option:t.option},e.createSlots({_:2},[e.renderList(p.$slots,(g,m)=>({name:m,fn:e.withCtx(b=>[e.renderSlot(p.$slots,m,e.normalizeProps(e.guardReactiveProps(b||{})))])}))]),1032,["conf","columnList","option"]),e.unref(a)(t.option.table?.add)||e.unref(a)(t.option.table?.update)||e.unref(a)(t.option.table?.delete)||e.unref(a)(t.option.table?.view)||p.$slots["table-op-left"]||p.$slots["table-op-right"]?(e.openBlock(),e.createBlock(e.unref(h.ElTableColumn),e.mergeProps({key:2,width:"auto","max-width":"200",align:"center",fixed:"right"},t.option.table?.operate,{"show-overflow-tooltip":!1}),{header:e.withCtx(()=>[e.renderSlot(p.$slots,"table-header-op",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("operation")),1)])]),default:e.withCtx(({row:g})=>[e.createVNode(e.unref(h.ElForm),{size:t.option.size?.table},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"table-op-left",{row:g}),e.unref(n).update.type===e.unref(c).Update&&t.option.table?.inlineEdit&&e.unref(n).update.form[f.option.table?.rowKey]===g[f.option.table?.rowKey]?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(e.unref(h.ElButton),{link:"",type:"info",onClick:e.unref(n).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("cancel")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(h.ElButton),{link:"",type:"primary",onClick:e.unref(n).update.submit,loading:e.unref(n).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("confirm")),1)]),_:1},8,["onClick","loading"]),e.renderSlot(p.$slots,"table-op-edit-right",{row:g})],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.unref(a)(t.option.table?.add,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,link:"",type:"primary",onClick:m=>e.unref(n).update.open(e.unref(c).Add,g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("add")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.unref(a)(t.option.table?.view,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:1,link:"",type:"primary",onClick:m=>e.unref(n).update.open(e.unref(c).View,g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("view")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.unref(a)(t.option.table?.update,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:2,link:"",type:"warning",onClick:m=>e.unref(n).update.open(e.unref(c).Update,g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("edit")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.unref(a)(t.option.table?.delete,g)?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:3,link:"",type:"danger",onClick:m=>e.unref(n).remove.open([g])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("delete")),1)]),_:1},8,["onClick"])):e.createCommentVNode("",!0),e.renderSlot(p.$slots,"table-op-right",{row:g})],64))]),_:2},1032,["size"])]),_:3},16)):e.createCommentVNode("",!0)]),_:3},16,["data","border","onSelectionChange","onSortChange","expand-row-keys","onExpandChange"])),[[k,e.unref(n).table.loading]])],2)],2),e.createElementVNode("div",Je,[(t.option.page?.show===void 0||t.option.page?.show)&&!e.unref(n).page.showTools?(e.openBlock(),e.createBlock(e.unref(h.ElPagination),e.mergeProps({key:0,"current-page":e.unref(n).page.num,"onUpdate:currentPage":s[8]||(s[8]=g=>e.unref(n).page.num=g),"page-size":e.unref(n).page.size,"onUpdate:pageSize":s[9]||(s[9]=g=>e.unref(n).page.size=g),background:"","page-sizes":e.unref(n).page.sizeList,"pager-count":e.unref(n).page.pagerCount,layout:e.unref(n).page.layout,total:e.unref(n).page.total,size:t.option.size?.table,onSizeChange:e.unref(n).table.getList,onCurrentChange:e.unref(n).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(p.$slots,"box-right")],2),e.createVNode(e.unref(h.ElDialog),e.mergeProps({modelValue:e.unref(n).update.show,"onUpdate:modelValue":s[10]||(s[10]=g=>e.unref(n).update.show=g),title:e.unref(n).update.title,"before-close":e.unref(n).update.close},t.option.dialog),{footer:e.withCtx(()=>[e.createElementVNode("span",Ge,[e.createVNode(e.unref(h.ElForm),{size:t.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(h.ElButton),{onClick:e.unref(n).update.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("close")),1)]),_:1},8,["onClick"]),e.unref(n).update.type!==e.unref(c).View?(e.openBlock(),e.createBlock(e.unref(h.ElButton),{key:0,type:"primary",onClick:e.unref(n).update.submit,loading:e.unref(n).update.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).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:l,model:e.unref(n).update.form,rules:e.unref(n).update.rules,size:t.option.size?.form,class:"update-dialog-form"},{default:e.withCtx(()=>[e.unref(n).update.showContent?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(n).update.formColumn,g=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a)((()=>{const m=[],b=E=>{E?.item?.children?b(E.item.children):m.push(...E.map(x=>x.item?.show?.form))};return b(g),m})(),e.unref(n).update.form,e.unref(n).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(p.$slots,"form-start",{row:e.unref(n).update.form}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g,m=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a)(m.item.show?.form,e.unref(n).update.form,e.unref(n).update.type)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([m.item.form.span>0?`col-${e.unref(n).getColumnSpan(m,g)}`:"col",`form-item-col-${m.item.key}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.item.children?m.children:[m],b=>(e.openBlock(),e.createBlock(Ne,{key:b.item.key,conf:e.unref(n),item:b},e.createSlots({_:2},[e.renderList(p.$slots,(E,x)=>({name:x,fn:e.withCtx(V=>[e.renderSlot(p.$slots,x,e.mergeProps({ref_for:!0},V||{}))])}))]),1032,["conf","item"]))),128))],2)):e.createCommentVNode("",!0)],64))),256)),e.renderSlot(p.$slots,"form-end",{row:e.unref(n).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(n).remove.show,"onUpdate:modelValue":s[11]||(s[11]=g=>e.unref(n).remove.show=g),title:e.unref(n).remove.title,"close-on-click-modal":!1},{footer:e.withCtx(()=>[e.createElementVNode("span",Xe,[e.createVNode(e.unref(h.ElForm),{size:t.option.size?.form},{default:e.withCtx(()=>[e.createVNode(e.unref(h.ElButton),{onClick:e.unref(n).remove.close},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("close")),1)]),_:1},8,["onClick"]),e.createVNode(e.unref(h.ElButton),{type:"danger",onClick:e.unref(n).remove.submit,loading:e.unref(n).remove.loading},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(y).tCurd("confirmDelete")),1)]),_:1},8,["onClick","loading"])]),_:1},8,["size"])])]),default:e.withCtx(()=>[t.option.dialog?.delete?.content?(e.openBlock(),e.createElementBlock("div",Qe,[e.createVNode(ne,{content:t.option.dialog?.delete?.content,value:e.unref(n).remove.items},null,8,["content","value"])])):(e.openBlock(),e.createElementBlock("div",Pe,e.toDisplayString(e.unref(y).tCurd("confirmDeleteMessage",e.unref(n).remove.items.length)),1))]),_:1},8,["modelValue","title"]),e.createVNode(Z,{ref_key:"switchConfirmRef",ref:o,size:t.option.size?.form},null,8,["size"])],2)}}});class Ye{static async download(i,c="download.png"){const f=document.createElement("a");f.style.display="none",f.href=i,f.setAttribute("download",c),typeof f.download>"u"&&f.setAttribute("target","_blank"),document.body.appendChild(f),f.click(),document.body.removeChild(f),window.URL.revokeObjectURL(i)}static exportJSONFile=(i,c)=>{const f=new Blob([JSON.stringify(i)],{type:"application/json"}),a=URL.createObjectURL(f),n=document.createElement("a");n.href=a,n.download=`${c||"config"}.json`,n.click()};static importFile=async i=>new Promise((c,f)=>{const a=document.createElement("input");a.type="file";const n=i?.accept||".json";a.accept=n,a.style.display="none",a.onchange=o=>{const l=o.target.files[0];if(!l){u.fail("未选择文件"),f("未选择文件");return}const r=new FileReader;r.onload=async p=>{const s=n==".json"?JSON.parse(p.target.result):p.target.result;c(s)},r.onerror=()=>{u.fail("文件读取失败"),f("文件读取失败")},r.readAsText(l),document.body.removeChild(a)},document.body.appendChild(a),a.click()})}const j=(t,i)=>{if(t.component("TCurd",A),t.component("TFormList",$),t.component("TColumn",M),i?.customComponent){B.customComponent=i.customComponent;for(const c in i.customComponent)t.component(c,i.customComponent[c])}},Ze={install:j};C.ArrUtil=N,C.ExcelUtil=L,C.TColumn=M,C.TCurd=A,C.TFile=Ye,C.TForm=B,C.TFormConfig=w,C.TFormI18n=y,C.TFormList=$,C.TSys=u,C.default=Ze,C.install=j,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
@@ -2597,6 +2597,9 @@ declare const __VLS_self: import("vue").DefineComponent<import("vue").ExtractPro
2597
2597
  type: {
2598
2598
  default: keyof typeof EDialog;
2599
2599
  };
2600
+ form: {
2601
+ default: any;
2602
+ };
2600
2603
  }>, {
2601
2604
  TForm: typeof TForm;
2602
2605
  FormList: typeof FormList;
@@ -2634,6 +2637,9 @@ declare const __VLS_self: import("vue").DefineComponent<import("vue").ExtractPro
2634
2637
  type: {
2635
2638
  default: keyof typeof EDialog;
2636
2639
  };
2640
+ form: {
2641
+ default: any;
2642
+ };
2637
2643
  }>> & Readonly<{}>, {
2638
2644
  type: "Add" | "Update" | "View" | "Remove";
2639
2645
  option: {
@@ -2645,6 +2651,7 @@ declare const __VLS_self: import("vue").DefineComponent<import("vue").ExtractPro
2645
2651
  };
2646
2652
  column: CurdConfigColumn[];
2647
2653
  };
2654
+ form: any;
2648
2655
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2649
2656
  declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2650
2657
  /**
@@ -2667,6 +2674,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
2667
2674
  type: {
2668
2675
  default: keyof typeof EDialog;
2669
2676
  };
2677
+ form: {
2678
+ default: any;
2679
+ };
2670
2680
  }>, {
2671
2681
  ref: import("vue").Ref<FormInstance | undefined, FormInstance | undefined>;
2672
2682
  conf: {
@@ -3134,6 +3144,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
3134
3144
  type: {
3135
3145
  default: keyof typeof EDialog;
3136
3146
  };
3147
+ form: {
3148
+ default: any;
3149
+ };
3137
3150
  }>> & Readonly<{}>, {
3138
3151
  type: "Add" | "Update" | "View" | "Remove";
3139
3152
  option: {
@@ -3145,6 +3158,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
3145
3158
  };
3146
3159
  column: CurdConfigColumn[];
3147
3160
  };
3161
+ form: any;
3148
3162
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
3149
3163
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
3150
3164
  export default _default;
@@ -13,6 +13,11 @@ export declare const curdConf: (props: {
13
13
  searchForm?: any;
14
14
  }) => {
15
15
  conf: {
16
+ formRef: {
17
+ map: any;
18
+ set: (item: string, ref: any) => void;
19
+ validate: () => Promise<unknown>;
20
+ };
16
21
  option: {
17
22
  init?: boolean | undefined;
18
23
  size?: {
@@ -18,6 +18,11 @@ declare const EDialog: {
18
18
  };
19
19
  declare const isFun: (fun: any, ...args: any[]) => any;
20
20
  declare const conf: {
21
+ formRef: {
22
+ map: any;
23
+ set: (item: string, ref: any) => void;
24
+ validate: () => Promise<unknown>;
25
+ };
21
26
  option: {
22
27
  init?: boolean | undefined;
23
28
  size?: {
@@ -2925,6 +2930,11 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
2925
2930
  };
2926
2931
  }>, {
2927
2932
  conf: {
2933
+ formRef: {
2934
+ map: any;
2935
+ set: (item: string, ref: any) => void;
2936
+ validate: () => Promise<unknown>;
2937
+ };
2928
2938
  option: {
2929
2939
  init?: boolean | undefined;
2930
2940
  size?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cc1-form",
3
- "version": "1.2.21",
3
+ "version": "1.2.23",
4
4
  "description": "我来助你-表单组件库",
5
5
  "repository": {
6
6
  "type": "git",