@gopowerteam/table-render 0.0.150 → 0.0.151

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
- "use strict";var fe=Object.defineProperty;var se=(e,t,r)=>t in e?fe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var C=(e,t,r)=>(se(e,typeof t!="symbol"?t+"":t,r),r);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("vue"),h=require("@arco-design/web-vue"),k=require("@gopowerteam/modal-render"),oe=require("exceljs"),_=require("dayjs"),G=require("@gopowerteam/form-render"),me=require("./resolver.cjs");function be(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const d=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,d.get?d:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const ye=be(oe);function he(e,t,r){const[d,...n]=t.index?t.index.split(".").reverse():[t.key],a=n.reverse().reduce((l,c)=>l==null?void 0:l[c],e);a[d]=r}function ge(e){const t=u.ref([]),r=n=>{const a=e.filter(l=>l.formatter);return a.length>0?n.map(l=>(a.forEach(c=>{c.formatter&&he(l,c,c.formatter(l))}),l)):n};return[t,n=>{t.value=r(n)}]}function we(e){return e.filter(t=>t.form).map(t=>({key:t.key,title:t.title,...typeof t.form=="boolean"?{}:t.form}))}function ve(e){const t=u.getCurrentInstance(),r=u.ref();function d(){var a,l;const n=(l=(a=t==null?void 0:t.proxy)==null?void 0:a.$refs)==null?void 0:l[e];n&&(r.value=n)}return u.onMounted(d),u.onUpdated(d),r}function H(e){return(t,r)=>e[t](r)}class q{constructor(t=1,r=10){C(this,"data",u.reactive({index:1,size:10,total:0}));C(this,"pageSizeOpts",[10,20,30,40,50]);C(this,"pageLayouts",["PrevJump","PrevPage","JumpNumber","NextPage","NextJump","Sizes","FullJump","Total"]);this.pageIndex=t,this.pageSize=r}get pageIndex(){return this.data.index}set pageIndex(t){this.data.index=t}get pageSize(){return this.data.size}set pageSize(t){this.data.size=t}get total(){return this.data.total}set total(t){this.data.total=t}reset(){this.pageIndex=1}before(t){t.paramsQuery={...t.paramsQuery,page:this.pageIndex-1,size:this.pageSize}}after(t){var r;this.total=(r=t.data)==null?void 0:r.totalElements}}const xe=Symbol.for("RenderColumnType");function g(e,t,r){return t.$type=e,t.$disableColumnMode=r==null?void 0:r.disableColumnMode,t.$disableViewMode=r==null?void 0:r.disableViewMode,t}function v(e,t){return t.index?t.index.split(".").reduce((r,d)=>r==null?void 0:r[d],e):[t.key].reduce((r,d)=>r==null?void 0:r[d],e)}function O(e){return!!e&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function Se(e){return g("button",(r,d,n)=>{const a=k.useModal(),l=Array.isArray(e)?e:"buttons"in e?e.buttons:[e],c=(f,s)=>typeof f=="function"?f(r):f===void 0?s:f;async function m(f){if(await(f.confirm===!0?new Promise(o=>{a.confirm({title:"提示信息",content:f.confirmText??"您确定要执行该操作?",onOk:()=>o(!0),onCancel:()=>o(!1)})}):Promise.resolve(!0))&&(f!=null&&f.onClick)){const o=f.onClick(r);O(o)&&f.autoReload!==!1&&o.then(()=>{n!=null&&n.emits&&(n==null||n.emits("reload"))}),!O(o)&&f.autoReload===!0&&n!=null&&n.emits&&(n==null||n.emits("reload"))}}return u.createVNode(u.Fragment,null,[l.filter(f=>c(f.visiable,!0)).map(f=>u.createVNode(h.Button,{onClick:()=>m(f),type:f.type||"text",shape:f.shape,size:"mini",disabled:c(f.disabled,!1)},{icon:f.icon,default:()=>(typeof f.content=="function"?f.content(r):f.content)||""}))])},{disableViewMode:!0})}const Ce={thousands:!0,inputUnit:"元",outputUnit:"元"},F={分:10**0,元:10**2,万:10**6};function ke(e){e={...Ce,...e||{}};const t=a=>{if(a==null)return;if((e==null?void 0:e.inputUnit)===(e==null?void 0:e.outputUnit))return a;const l=F[e.inputUnit]/F[e.outputUnit],c=parseFloat((a*l).toFixed(10));return(e==null?void 0:e.precision)===void 0?c:c.toFixed(e==null?void 0:e.precision)},r=a=>{if(a==null)return;const l=a.toString().split(".");return l[0]=l[0].replace(/\B(?=(\d{3})+(?!\d))/g,","),l.join(".")},d=a=>{if((e==null?void 0:e.zeroString)!==void 0&&Number(a)===0)return e==null?void 0:e.zeroString;if((e==null?void 0:e.nullString)!==void 0&&isNaN(Number(a)))return e==null?void 0:e.nullString;const l=t(Number(a));return e!=null&&e.thousands?r(l):l};return g("dict",(a,l)=>{const c=v(a,l);return u.createVNode("div",null,[typeof(e==null?void 0:e.prefix)=="string"?u.createVNode("span",null,[e.prefix]):typeof(e==null?void 0:e.prefix)=="function"?u.createVNode("span",null,[e.prefix()]):void 0,u.createVNode("span",{class:"currency_value"},[d(c)]),typeof(e==null?void 0:e.suffix)=="string"?u.createVNode("span",null,[e.suffix]):typeof(e==null?void 0:e.suffix)=="function"?u.createVNode("span",null,[e.suffix()]):void 0])})}var Te=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ve={exports:{}};(function(e,t){(function(r,d){e.exports=d(_)})(Te,function(r){function d(l){return l&&typeof l=="object"&&"default"in l?l:{default:l}}var n=d(r),a={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(l,c){return c==="W"?l+"周":l+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(l,c){var m=100*l+c;return m<600?"凌晨":m<900?"早上":m<1100?"上午":m<1300?"中午":m<1800?"下午":"晚上"}};return n.default.locale(a,null,!0),a})})(Ve);_.locale("zh-cn");const Ne={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss",time:"HH:mm:ss",week:"ddd"};function Me(e){return g("date",(r,d)=>{const n=v(r,d),a=typeof(e==null?void 0:e.format)=="function"?e==null?void 0:e.format():Ne[(e==null?void 0:e.format)||"datetime"],l=_(n);return u.createVNode("span",null,[l.isValid()&&l.format(a)])})}const Oe={success:"arcoblue",warning:"orange",error:"red"};function _e(e){return e instanceof Map?e:e.dict}function Re(e){const t=e instanceof Map?!1:e.tag;return typeof t=="string"?Oe[t]:t}function qe(e){const t=_e(e),r=Re(e);return g("dict",(n,a)=>{const l=v(n,a);return r?u.createVNode(h.Tag,{color:r===!0?void 0:r},{default:()=>[t.get(l)||l]}):u.createVNode("span",null,[t.get(l)||l])})}function $e(e){const t=k.useModal();async function r(n,a){n.confirm&&!await new Promise((c,m)=>{t.open("confirm",{title:"确认",content:n.confirmText||"是否确认执行该操作?",onOk:()=>c(!0),onCancel:()=>c(!1)})})||n.onClick(a)}return g("dropdown",(n,a)=>{const l=e.options.filter(c=>typeof c.visiable=="function"?c.visiable(n):c.visiable!==!1);return u.createVNode(h.Dropdown,{trigger:(e==null?void 0:e.trigger)||"click"},{default:()=>u.createVNode(h.Button,{disabled:l.length===0,type:"text"},{default:()=>[(e==null?void 0:e.content)||"操作"]}),content:()=>l.map(c=>u.createVNode(h.Dropdown.Option,{onClick:()=>r(c,n)},{default:()=>[typeof c.content=="function"?c.content(n):c.content]}))})})}const je={size:30};function Ee(e){e={...je,...e||{}};function t(n,a){var c;const l=(c=document.getElementById(n))==null?void 0:c.getBoundingClientRect();if(l){const m=new Image(100,100);m.id=`IMAGE_${n}_PREVIEW`,m.src=a,m.setAttribute("style",["position:fixed;",`top:${l.top}px;`,`left:${l.left+l.width}px;`,"min-width:400px;","height:auto;","z-index:100;"].join("")),document.body.appendChild(m)}}function r(n){const a=document.getElementById(`IMAGE_${n}_PREVIEW`);a==null||a.remove()}return g("image",(n,a,l)=>{const c=v(n,a),m=Math.random().toString(32).slice(2).toUpperCase(),f={maxWidth:"100%",maxHeight:"100%",borderRadius:e==null?void 0:e.radius,objectFit:"contain",transform:`rotate(${(e==null?void 0:e.rotate)||0}deg)`,cursor:e!=null&&e.preview?"pointer":"unset"},s=`${a.index||a.key}_parsed`;if(e!=null&&e.parse){const o=e==null?void 0:e.parse(c,n);O(o)?o.then(y=>n[s]=y??""):n[s]=o??""}if(e!=null&&e.parse&&!n[s]===void 0)return u.createVNode("div",null,[u.createTextVNode("Loading...")]);{const o=n[s]||c;return o?u.createVNode("div",{id:m,onMouseenter:()=>(e==null?void 0:e.preview)&&!(l!=null&&l.previewing)&&t(m,o),onMouseleave:()=>(e==null?void 0:e.preview)&&!(l!=null&&l.previewing)&&r(m),style:{display:"flex",justifyContent:"center",alignItems:"center",height:`${e==null?void 0:e.size}px`}},[u.createVNode("img",{alt:"image",style:f,src:o},null)]):u.createVNode(u.Fragment,null,null)}})}const Ye=" ";function ze(e){return e==null?void 0:e.replace(/(\d{3})\d*(\d{4})/g,"$1****$2")}function Pe(e,t){return e==null?void 0:e.replace(/\*/g,"M").replace(/\B(?=(?:\S{4})+$)/g,t??Ye).replace(/M/g,"*")}function Le(e){return g("phone",(r,d)=>{const n=v(r,d),a=Pe(e!=null&&e.safe?ze(n):n,e==null?void 0:e.separator);return e!=null&&e.callable?u.createVNode("a",{style:"text-decoration:none;",href:`tel:${n}`},[a]):u.createVNode("span",null,[a])})}function De(e){return g("render",r=>e(r))}function Be(e){return g("tag",(r,d)=>{const n=(e==null?void 0:e.maxCount)||5,a=e!=null&&e.formatter?e.formatter(r):v(r,d),l=(e==null?void 0:e.textColors)||["#F87335"],c=(e==null?void 0:e.backgroundColors)||["#FFF4E8"],m=a.length>n,f=e==null?void 0:e.minWidth;return u.createVNode("div",{style:{display:"flex",flexWrap:"wrap"}},[a.slice(0,n).map((s,o)=>{const y=typeof l=="function"?l(s,o):l[o%l.length],w=typeof c=="function"?c(s,o):c[o%c.length];return u.createVNode("span",{style:{minWidth:f?`${f}px`:"unset",textAlign:"center",margin:"2px",padding:"2px 5px",border:`solid 2px ${e!=null&&e.border?y:"transparent"}`,borderRadius:`${(e==null?void 0:e.radius)||0}px`,color:y,backgroundColor:w}},[s])}),m&&"..."])})}function W(e){if(typeof e=="string")return e;if(typeof e=="number")return`${e}px`}function Ae(e,t,r){var d,n;return typeof e=="function"?(d=e(r))==null?void 0:d.toString():typeof(e==null?void 0:e.content)=="function"?(n=e==null?void 0:e.content(r))==null?void 0:n.toString():typeof(e==null?void 0:e.content)=="string"?e==null?void 0:e.content:v(r,t)}function Ie(e,t){if(typeof e!="function"){if(typeof(e==null?void 0:e.color)=="function")return e==null?void 0:e.color(t);if(typeof(e==null?void 0:e.color)=="string")return e==null?void 0:e.color}}function Ke(e,t){if(typeof e!="function")return typeof(e==null?void 0:e.size)=="function"?W(e==null?void 0:e.size(t)):W(e==null?void 0:e.size)}function Fe(e,t){let r="";const d=Ie(e,t),n=Ke(e,t);return d&&(r+=`color:${d};`),n&&(r+=`font-size:${n};`),r}function We(e){return g("text",(r,d)=>{const n=Ae(e||{},d,r),a=Fe(e||{},r);return u.createVNode("span",{style:a},[n])})}function Ue(){return{dropdown:$e,text:We,dict:qe,tag:Be,render:De,phone:Le,image:Ee,currency:ke,date:Me,button:Se}}function j(e,t){if(!(e!=null&&e.render))return;const r=e.render({...Ue()});return{render:({record:d})=>r(d,e,t),[xe]:r.$type,disableColumnMode:r.$disableColumnMode,disableViewMode:r.$disableViewMode,isRender:r.$type==="render",type:r.$type}}function U({columns:e,columnsOptions:t,columnsGroups:r,pageMode:d,collapsedColumns:n,events:a}){const l=e.map(c=>({...t||{},...c})).map(c=>Je(c,d,n,a)).filter(Boolean);return He(l,r)}function Ge(e,t){const r=[],d=a=>{if("children"in a&&(a.children=a.children.map(d)),"key"in a){const l=t.find(c=>{var m;return((m=Object.getOwnPropertyDescriptor(c,"key"))==null?void 0:m.value)===a.key});if(l)return r.push(l),l}return a},n=d(e);if(r!=null&&r.length&&n){const a=Math.min(...r.map(l=>t.indexOf(l)));r.forEach(l=>{const c=t.indexOf(l);t.splice(c,1)}),t.splice(a,0,n)}}function He(e,t=[]){return t.forEach(r=>{Ge(r,e)}),e}function Je(e,t,r,d){const{render:n,disableColumnMode:a}=j(e,{previewing:!1,emits:d})||{};if(!(a||e.visiable===!1)&&!(typeof e.visiable=="function"&&e.visiable()===!1)&&!r.value.find(l=>l.key===e.key&&l.collapsed===!0))return{dataIndex:e.index||e.key,title:e.title,width:e.width==="auto"?void 0:e.width,align:e.align??"center",fixed:e.fixed,ellipsis:e.ellipsis??!0,sortable:e.sortable?{sorter:t==="server",sortDirections:["ascend","descend"],defaultSortOrder:e.sortable==="asc"?"ascend":"descend"}:void 0,tooltip:!0,...e.extraProps,key:e.key,render:n}}function Qe(){return new ye.Workbook}function Xe(e,t="Sheet1"){return e.addWorksheet(t,{headerFooter:{firstHeader:"",firstFooter:""}})}function Ze(e,t){e.columns=t}function pe(e,t){e.addRows(t)}async function et({columns:e,rows:t,filename:r}){const d=Qe(),n=Xe(d);Ze(n,e),pe(n,t);const a=await d.xlsx.writeBuffer(),l=new Blob([a]);tt(l,r||`${_().format("YYYY-MM-DD HH:mm:ss")}.xlsx`)}function tt(e,t){const r=document.createElement("a");r.download=t||"download",r.href=URL.createObjectURL(e),r.click(),setTimeout(()=>{URL.revokeObjectURL(r.href)},1e3)}function rt(e,t){const r={};return e.filter(n=>n.exportable!==!1).map(n=>({options:n,render:j(n),content:typeof n.exportable=="object"?n.exportable.content:void 0})).forEach(n=>{var c;const a=(c=n.render)==null?void 0:c.render,l=()=>{var m;switch(!0){case!!n.content:return n.content&&n.content(t);case!!a:{const f=document.createElement("div"),s=u.h(()=>a&&a({record:t}));return u.render(s,f),(m=s.el)==null?void 0:m.innerText}default:return v(t,n.options)}};r[n.options.key]=l()}),r}function nt(e){switch(!0){case typeof e=="number":return e/6;case(typeof e=="string"&&e.endsWith("px")):return parseInt(e.replace("px",""))/6;default:return 30}}function at(e,t,r){const d=e.filter(a=>a.exportable!==!1).map(a=>{var l,c;return{key:a.key,header:((l=a.exportable)==null?void 0:l.header)||a.title,width:((c=a.exportable)==null?void 0:c.width)||nt(a.width)}}),n=t.map(a=>rt(e,a));et({columns:d,rows:n,filename:r})}function lt(){return{exportExcel:at}}class E{constructor(t){C(this,"sort",{});C(this,"defaultSort",{});C(this,"before",t=>{t.paramsQuery={...t.paramsQuery||{},sort:this.stringify(this.sort)}});t&&(this.sort=t,this.defaultSort=t)}update(t,r){t&&r&&(this.sort[t]=r)}remove(t){const r=Object.entries(this.sort).filter(([d])=>d!==t);this.sort={},r&&r.forEach(([d,n])=>{this.sort[d]=n})}reset(){this.sort=this.defaultSort||{}}stringify(t){return typeof t!="object"?[]:(t instanceof E&&(t=t.sort),Object.entries(t).map(([r,d])=>`${r},${d}`))}}const ut=300;function dt(e){const t=e,r=t==null?void 0:t.querySelector(".arco-scrollbar-container.arco-table-body");if(!r)return;let d,n=!1,a;r.addEventListener("mousedown",()=>{console.log("mousedown"),d=setTimeout(()=>{d&&(r.style.cursor="grab",r.style.userSelect="none",n=!0)},ut)}),r.addEventListener("mouseup",()=>{clearTimeout(d),d&&(d=void 0,n=!1,r.style.cursor="",r.style.userSelect="",a=void 0)}),r.addEventListener("mousemove",l=>{if(n)if(a===void 0)a=l.clientX;else{const c=a-l.clientX;a=l.clientX,r.scrollLeft+=c}})}function ct(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!u.isVNode(e)}const it=u.defineComponent({props:{record:{type:Object,required:!0},columns:{type:Array,required:!0},minWidth:{type:Number,required:!1,default:320},border:{type:Boolean,default:!0},exclude:{type:Array,default:()=>[]},layout:{type:String,required:!1,default:"horizontal"},buttons:{type:Array,default:()=>[]}},setup(e){const t=u.getCurrentInstance(),r=u.ref(0),d=e.columns.filter(a=>typeof a.visiable=="boolean"?a.visiable:typeof a.visiable=="function"?a.visiable():!0).map(a=>({options:a,renderer:j(a,{previewing:!0})})).filter(({options:a})=>{var l;return!((l=e.exclude)!=null&&l.includes(a.key))}).filter(({renderer:a})=>!(a!=null&&a.disableViewMode));function n(){var a;if(t){const l=(a=t.proxy)==null?void 0:a.$el;r.value=Math.floor(l.offsetWidth/e.minWidth)}}return u.onMounted(()=>{n()}),()=>{let a;return u.createVNode("div",{class:"preview-container"},[u.createVNode(h.Descriptions,{column:r.value,bordered:!0,align:"left",layout:e.layout},ct(a=d.map(l=>u.createVNode(h.DescriptionsItem,{label:l.options.title},{default:()=>{var c,m;return[(c=l.renderer)!=null&&c.render?(m=l.renderer)==null?void 0:m.render({record:e.record}):v(e.record,l.options)]}})))?a:{default:()=>[a]})])}}});function ft(e,t,{tableForm:r,tableEvents:d}){const n=e.refreshable||e.exportable||t.slots.actions,a=!!(r!=null&&r.length)&&n;return n||a?()=>u.createVNode(u.Fragment,null,[a&&u.createVNode(h.Divider,{margin:0},null),n&&u.createVNode("div",{class:"table-actions",style:{display:"flex",justifyContent:"space-between",margin:"20px 0",flexDirection:e.actionsPosition==="right"?"row":"row-reverse",alignItems:"center"}},[u.createVNode("div",{class:"built-in"},[u.createVNode(h.Space,null,{default:()=>[e.refreshable&&u.createVNode(h.Button,{type:"primary",onClick:()=>d("reload")},{default:()=>[u.createTextVNode("刷新")]}),e.exportable&&u.createVNode(h.Button,{type:"primary",onClick:()=>d("export")},{default:()=>[u.createTextVNode("导出")]}),e.collapsable&&u.createVNode(h.Button,{type:"primary",onClick:()=>d("collapse")},{default:()=>[u.createTextVNode("显示")]})]})]),u.createVNode("div",{class:"customs"},[u.createVNode(h.Space,null,{default:()=>[t.slots.actions&&t.slots.actions()]})])])]):()=>{}}function st(e,t,{tableForm:r,tableEvents:d,formInstance:n}){return r!=null&&r.length?()=>u.createVNode("div",{class:"table-form"},[u.createVNode(G.FormRender,u.mergeProps({form:r,ref:a=>n&&(n.value=a),searchable:!0,onSubmit:()=>d("reload",{reset:!0})},e.formOptions),null)]):()=>{}}function ot(e,t,{tableSource:r}){const d=u.ref([]);function n(){d.value=[],t.emit("update:radio-key",null),t.emit("update:radio-row",null),t.emit("update:checkbox-keys",[]),t.emit("update:checkbox-rows",[])}function a(){u.nextTick(()=>{e.checkboxRows!==void 0&&(d.value=[...e.checkboxRows.map(f=>f[e.rowKey])]),e.checkboxKeys!==void 0&&(d.value=[...e.checkboxKeys]),e.radioKey&&(d.value=[e.radioKey]),e.radioRow&&(d.value=[e.radioRow[e.rowKey]])})}function l(){const f=typeof e.selection=="string"?{type:e.selection}:e.selection;switch(f==null?void 0:f.type){case"radio":return{title:"选择",...f,selectedRowKeys:d.value};case"checkbox":return{showCheckedAll:!0,selectedRowKeys:d.value,...f}}}function c(f,s,o){const{type:y}=l()||{};switch(y){case"radio":t.emit("update:radio-key",s),t.emit("update:radio-row",o);break;case"checkbox":t.emit("update:checkbox-keys",f),t.emit("update:checkbox-rows",f.map(w=>{var N;return r.value.find(x=>x[e.rowKey]===w)||((N=e.checkboxRows)==null?void 0:N.find(x=>x[e.rowKey]===w))}));break}}function m(){u.nextTick(()=>{t.emit("update:checkbox-keys",d.value),t.emit("update:checkbox-rows",d.value.map(f=>{var s;return r.value.find(o=>o[e.rowKey]===f)||((s=e.checkboxRows)==null?void 0:s.find(o=>o[e.rowKey]===f))}))})}return a(),{selectedRowKeys:d,rowSelection:l(),onSelect:c,onSelectAll:m,resetSelection:n,reloadSelection:a}}function mt(e){return u.getCurrentScope()?(u.onScopeDispose(e),!0):!1}function $(e){return typeof e=="function"?e():u.unref(e)}const bt=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;function yt(e,t){var r;if(typeof e=="number")return e+t;const d=((r=e.match(/^-?\d+\.?\d*/))==null?void 0:r[0])||"",n=e.slice(d.length),a=Number.parseFloat(d)+t;return Number.isNaN(a)?e:a+n}const J=bt?window:void 0;function ht(){const e=u.ref(!1),t=u.getCurrentInstance();return t&&u.onMounted(()=>{e.value=!0},t),e}function gt(e){const t=ht();return u.computed(()=>(t.value,!!e()))}function V(e,t={}){const{window:r=J}=t,d=gt(()=>r&&"matchMedia"in r&&typeof r.matchMedia=="function");let n;const a=u.ref(!1),l=f=>{a.value=f.matches},c=()=>{n&&("removeEventListener"in n?n.removeEventListener("change",l):n.removeListener(l))},m=u.watchEffect(()=>{d.value&&(c(),n=r.matchMedia($(e)),"addEventListener"in n?n.addEventListener("change",l):n.addListener(l),a.value=n.matches)});return mt(()=>{m(),c(),n=void 0}),a}function wt(e,t={}){function r(s,o){let y=$(e[$(s)]);return o!=null&&(y=yt(y,o)),typeof y=="number"&&(y=`${y}px`),y}const{window:d=J,strategy:n="min-width"}=t;function a(s){return d?d.matchMedia(s).matches:!1}const l=s=>V(()=>`(min-width: ${r(s)})`,t),c=s=>V(()=>`(max-width: ${r(s)})`,t),m=Object.keys(e).reduce((s,o)=>(Object.defineProperty(s,o,{get:()=>n==="min-width"?l(o):c(o),enumerable:!0,configurable:!0}),s),{});function f(){const s=Object.keys(e).map(o=>[o,l(o)]);return u.computed(()=>s.filter(([,o])=>o.value).map(([o])=>o))}return Object.assign(m,{greaterOrEqual:l,smallerOrEqual:c,greater(s){return V(()=>`(min-width: ${r(s,.1)})`,t)},smaller(s){return V(()=>`(max-width: ${r(s,-.1)})`,t)},between(s,o){return V(()=>`(min-width: ${r(s)}) and (max-width: ${r(o,-.1)})`,t)},isGreater(s){return a(`(min-width: ${r(s,.1)})`)},isGreaterOrEqual(s){return a(`(min-width: ${r(s)})`)},isSmaller(s){return a(`(max-width: ${r(s,-.1)})`)},isSmallerOrEqual(s){return a(`(max-width: ${r(s)})`)},isInBetween(s,o){return a(`(min-width: ${r(s)}) and (max-width: ${r(o,-.1)})`)},current:f,active(){const s=f();return u.computed(()=>s.value.length===0?"":s.value.at(-1))}})}function vt(e,t,{pageService:r,tableEvents:d}){function n(c){r&&(r.pageIndex=c,d("reload"))}function a(c){r&&(r.pageSize=c,d("reload"))}const l=wt({mobile:0,tablet:640,desktop:1024});return r?()=>u.createVNode("div",{class:"table-pagination",style:{padding:"10px 0"}},[u.createVNode(h.Pagination,{current:r.pageIndex,"onUpdate:current":c=>r.pageIndex=c,"page-size":r.pageSize,"onUpdate:page-size":c=>r.pageSize=c,total:r.total,"page-size-options":r.pageSizeOpts,"hide-on-single-page":!e.alwayShowPagination,"show-total":!0,"show-page-size":!0,simple:l.smaller("desktop").value,onChange:c=>n(c),onPageSizeChange:c=>a(c),style:{justifyContent:"flex-end"}},null)]):()=>{}}const xt=u.defineComponent({props:{collapsedColumns:{type:Array,required:!0}},setup(e){const t=k.useModal(),r=u.ref(e.collapsedColumns.map(n=>({label:n.title,value:n.key,disabled:!1}))),d=u.ref(e.collapsedColumns.filter(n=>n.collapsed).map(n=>n.key));return k.onSubmit(()=>{const n=e.collapsedColumns.map(a=>({key:a.key,title:a.title,collapsed:d.value.includes(a.key)}));t.close(n)}),()=>u.createVNode("div",{class:"table-collapsed-render"},[u.createVNode(h.Transfer,{data:r.value,"default-value":d.value,onChange:n=>d.value=[...n],title:["显示列","隐藏列"],style:{justifyContent:"center"}},{default:()=>[u.withDirectives(u.createVNode("template",null,null),[[u.resolveDirective("slot"),"source"]])]})])}}),St=u.defineComponent({props:{value:{type:Object,required:!0},form:{type:Array,required:!0},onSubmit:{type:Function,required:!1}},setup(e){const t=k.useModal();function r(d){e.onSubmit&&e.onSubmit(d),t.close(d)}return console.log(e.value),()=>u.createVNode("div",{class:"edit-form-container"},[u.createVNode(G.FormRender,{name:"form",value:e.value,form:e.form,onSubmit:r},null)])}}),Q=u.defineComponent({props:{rowKey:{type:String,required:!0},form:{type:Object,required:!1},formOptions:{type:Object,required:!1},columns:{type:Object,required:!0},autoLoad:{type:Boolean,required:!1,default:!0},dataLoad:{type:Function,required:!1},height:{type:Number,required:!1},size:{type:String,required:!1,default:"large"},columnsOptions:{type:Object,required:!1},collapsable:{type:Boolean,required:!1,default:!1},selection:{type:[String,Object],required:!1},radioKey:{type:[String,Number],required:!1},checkboxKeys:{type:Array,required:!1},radioRow:{type:Object,required:!1},checkboxRows:{type:Array,required:!1},exportable:{type:[Boolean,Object],required:!1,default:!1},refreshable:{type:Boolean,required:!1},actionsPosition:{type:String,required:!1,default:"right"},pageable:{type:[Object,Boolean,String],required:!1,default:void 0},sortable:{type:[Object],required:!1},draggable:{type:Boolean,required:!1},hoverable:{type:Boolean,required:!1,default:!1},bordered:{type:Boolean,required:!1,default:!1},stripe:{type:Boolean,required:!1,default:!0},columnsGroups:{type:Array,required:!1,default:()=>[]},rowClass:{type:Function,required:!1},expandable:{type:Object,required:!1},grabbable:{type:Boolean,default:!0,required:!1},autoFill:{type:Boolean,default:!1,required:!1},alwayShowPagination:{type:Boolean,default:!1,required:!1}},expose:["preview","export","edit","reload","tableSource","formSource","update:radio-key","update:radio-row","update:checkbox-keys","update:checkbox-rows","formInstance","resetSelection","reloadSelection","reloadColumns","change"],setup(e,t){const r=Math.random().toString(32).slice(2).toUpperCase(),d=u.ref(),n=u.ref(),a=u.ref(),l=u.ref(),[c,m]=ge(e.columns),f=u.ref(!1),s=e.form??we(e.columns),o=N(),y=X(),w=u.ref(e.columns.map(i=>({key:i.key,title:i.title,collapsed:!!i.collapsed})));function N(){switch(!0){case(typeof e.pageable=="string"&&e.pageable==="server"):return new q;case(typeof e.pageable=="boolean"&&e.pageable===!0):return new q;case(typeof e.pageable=="object"&&!!e.pageable.reset):return e.pageable;case(typeof e.pageable=="object"&&(!!e.pageable.index||!!e.pageable.size)):return new q(e.pageable.index,e.pageable.size)}}const x=(()=>{switch(!0){case typeof e.pageable=="string":return e.pageable;case(e.pageable===void 0||e.pageable===!1):return"client";default:return"server"}})();function X(){const i=e.columns.find(b=>!!b.sortable);if(i||e.sortable)return new E({...e.sortable||{},...i?{[i.key]:i.sortable}:{}})}function Y(i){const{exportExcel:b}=lt();b((i==null?void 0:i.columns)||e.columns,(i==null?void 0:i.source)||c.value,(i==null?void 0:i.filename)||(typeof e.exportable=="object"?e.exportable.filename:void 0))}function z(i){let b;switch(!0){case!!(i!=null&&i.key):b=c.value.find(S=>S[e.rowKey]===(i==null?void 0:i.key));break;case!!(i!=null&&i.record):b=i==null?void 0:i.record;break}if(!b)throw new Error("未找到需要预览的数据");return a.value.open(it,{record:b,columns:e.columns},{title:(i==null?void 0:i.title)||"详情",mode:(i==null?void 0:i.mode)||"dialog"})}function P(i){let b;switch(!0){case!!(i!=null&&i.key):b=c.value.find(S=>S[e.rowKey]===(i==null?void 0:i.key));break;case!!(i!=null&&i.record):b=i==null?void 0:i.record;break}if(!b)throw new Error("未找到需要编辑的数据");return a.value.open(St,{value:b,form:i==null?void 0:i.form,onSubmit:i.onSubmit},{title:(i==null?void 0:i.title)||"编辑",mode:(i==null?void 0:i.mode)||"dialog",footer:!0,form:"form"})}function R(i){var A,I;if(!e.dataLoad)return Promise.reject();i!=null&&i.reset&&(o&&o.reset(),y&&y.reset(),(A=d.value)==null||A.resetSorters());const b={...((I=n.value)==null?void 0:I.formSource)||{}};Object.keys(b).forEach(K=>{[null,void 0,""].includes(b[K])&&delete b[K]});const S=e.dataLoad({form:b,page:o,sort:y,update:m});return O(S)?(f.value=!0,Promise.resolve(S).finally(()=>{f.value=!1}),S):Promise.resolve()}function Z(){a.value.open(xt,{collapsedColumns:w.value},{title:"显示列",size:"small",footer:!0}).then(i=>{w.value=i})}const p=(i,{type:b})=>{switch(b){case"drag":{m(i),t.emit("change",i);break}}},T=H({reload:R,preview:z,export:Y,edit:P,collapse:Z});function ee(i,b){!y||x==="client"||(b?y.update(i,b==="descend"?"desc":"asc"):y.remove(i),T("reload"))}const L=u.ref(U({columns:e.columns,columnsOptions:e.columnsOptions,columnsGroups:e.columnsGroups,pageMode:x,collapsedColumns:w,events:T})),M={tableEvents:T,tableForm:s,tableSource:c,formInstance:n,pageService:o,formOptions:e.formOptions},te=st(e,t,M),re=ft(e,t,M),ne=vt(e,t,M),{selectedRowKeys:D,rowSelection:B,onSelect:ae,onSelectAll:le,reloadSelection:ue,resetSelection:de}=ot(e,t,M),ce=u.computed(()=>({rowKey:e.rowKey,size:e.size,bordered:e.bordered,hoverable:e.hoverable,stripe:e.stripe,scroll:{x:e.columns.reduce((i,b)=>i+=typeof b.width!="number"?Math.max(b.title.length*16,80):b.width,0),y:e.height??"100%"},rowSelection:B,draggable:e.draggable?{type:"handle",width:40}:void 0,pagination:e.pageable===void 0||e.pageable==="client",selectedKeys:D.value,expandable:e.expandable}));function ie(){L.value=U({columns:e.columns,columnsOptions:e.columnsOptions,columnsGroups:e.columnsGroups,pageMode:x,collapsedColumns:w,events:T})}return u.onMounted(()=>{l.value&&(l.value.id=`table-${r}`),e.autoLoad&&R(),e.grabbable&&l.value&&dt(l.value)}),{tableId:r,tableInstance:d,tableSource:c,tableOptions:ce,tableColumns:L,tableEvents:T,tableForm:s,tableLoading:f,modalInstance:a,tableRenderElement:l,formSource:u.readonly(u.computed(()=>{var i;return(i=n==null?void 0:n.value)==null?void 0:i.formSource})),formInstance:n,reload:R,preview:z,edit:P,export:Y,onSorterChange:ee,onTableChange:p,renders:{renderTableForm:te,renderTableActions:re,renderTablePagination:ne},tableSelection:{selectedRowKeys:D,rowSelection:B,onSelect:ae,onSelectAll:le},resetSelection:de,reloadSelection:ue,reloadColumns:ie}},render(){this.reloadColumns();const e=()=>u.createVNode("div",{class:"table-body"},[u.createVNode("div",{class:"table-body-wrapper"},[u.createVNode(h.Table,u.mergeProps({loading:this.tableLoading,data:this.tableSource,columns:this.tableColumns,ref:t=>this.tableInstance=t,onSelect:this.tableSelection.onSelect,onSelectAll:this.tableSelection.onSelectAll,onChange:this.onTableChange,rowClass:this.rowClass,onSorterChange:this.onSorterChange,selectedKeys:this.tableSelection.selectedRowKeys.value,"onUpdate:selectedKeys":t=>this.tableSelection.selectedRowKeys.value=t},this.tableOptions),null)])]);return u.createVNode("div",{class:{"table-render":!0,"auto-fill":this.autoFill},ref:t=>this.tableRenderElement=t},[u.createVNode(k.ModalProvider,{ref:t=>this.modalInstance=t},{default:()=>[u.createVNode("div",{class:"table-render-content"},[this.renders.renderTableForm(),this.renders.renderTableActions(),this.$slots.header&&this.$slots.header(),e(),this.renders.renderTablePagination()])]})])}});function Ct(e){return e}function kt(e){return e}const Tt={install(e,t){e.component("TableRender",Q)}};exports.TableRenderResolver=me.TableRenderResolver;exports.TableRender=Q;exports.default=Tt;exports.defineColumns=Ct;exports.defineTableLoad=kt;exports.useEvents=H;exports.useTable=ve;
1
+ "use strict";var he=Object.defineProperty;var ve=(e,t,r)=>t in e?he(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var V=(e,t,r)=>(ve(e,typeof t!="symbol"?t+"":t,r),r);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("vue"),h=require("@arco-design/web-vue"),_=require("@gopowerteam/modal-render"),we=require("exceljs"),$=require("dayjs"),ee=require("@gopowerteam/form-render"),xe=require("./resolver.cjs");function Se(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const u=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,u.get?u:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const Ce=Se(we);function ke(e,t,r){const[u,...a]=t.index?t.index.split(".").reverse():[t.key],n=a.reverse().reduce((l,d)=>l==null?void 0:l[d],e);n[u]=r}function Te(e){const t=c.ref([]),r=a=>{const n=e.filter(l=>l.formatter);return n.length>0?a.map(l=>(n.forEach(d=>{d.formatter&&ke(l,d,d.formatter(l))}),l)):a};return[t,a=>{t.value=r(a)}]}function Ve(e){return e.filter(t=>t.form).map(t=>({key:t.key,title:t.title,...typeof t.form=="boolean"?{}:t.form}))}function Me(e){const t=c.getCurrentInstance(),r=c.ref();function u(){var n,l;const a=(l=(n=t==null?void 0:t.proxy)==null?void 0:n.$refs)==null?void 0:l[e];a&&(r.value=a)}return c.onMounted(u),c.onUpdated(u),r}function te(e){return(t,r)=>e[t](r)}class Y{constructor(t=1,r=10){V(this,"data",c.reactive({index:1,size:10,total:0}));V(this,"pageSizeOpts",[10,20,30,40,50]);V(this,"pageLayouts",["PrevJump","PrevPage","JumpNumber","NextPage","NextJump","Sizes","FullJump","Total"]);this.pageIndex=t,this.pageSize=r}get pageIndex(){return this.data.index}set pageIndex(t){this.data.index=t}get pageSize(){return this.data.size}set pageSize(t){this.data.size=t}get total(){return this.data.total}set total(t){this.data.total=t}reset(){this.pageIndex=1}before(t){t.paramsQuery={...t.paramsQuery,page:this.pageIndex-1,size:this.pageSize}}after(t){var r;this.total=(r=t.data)==null?void 0:r.totalElements}}const Ne=Symbol.for("RenderColumnType");function x(e,t,r){return t.$type=e,t.$disableColumnMode=r==null?void 0:r.disableColumnMode,t.$disableViewMode=r==null?void 0:r.disableViewMode,t}function C(e,t){return t.index?t.index.split(".").reduce((r,u)=>r==null?void 0:r[u],e):[t.key].reduce((r,u)=>r==null?void 0:r[u],e)}function j(e){return!!e&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function _e(e){return x("button",(r,u,a)=>{const n=_.useModal(),l=Array.isArray(e)?e:"buttons"in e?e.buttons:[e],d=(s,f)=>typeof s=="function"?s(r):s===void 0?f:s;async function m(s){if(await(s.confirm===!0?new Promise(o=>{n.confirm({title:"提示信息",content:s.confirmText??"您确定要执行该操作?",onOk:()=>o(!0),onCancel:()=>o(!1)})}):Promise.resolve(!0))&&(s!=null&&s.onClick)){const o=s.onClick(r);j(o)&&s.autoReload!==!1&&o.then(()=>{a!=null&&a.emits&&(a==null||a.emits("reload"))}),!j(o)&&s.autoReload===!0&&a!=null&&a.emits&&(a==null||a.emits("reload"))}}return c.createVNode(c.Fragment,null,[l.filter(s=>d(s.visiable,!0)).map(s=>c.createVNode(h.Button,{onClick:()=>m(s),type:s.type||"text",shape:s.shape,size:"mini",disabled:d(s.disabled,!1)},{icon:s.icon,default:()=>(typeof s.content=="function"?s.content(r):s.content)||""}))])},{disableViewMode:!0})}const Oe={thousands:!0,inputUnit:"元",outputUnit:"元"},J={分:10**0,元:10**2,万:10**6};function Re(e){e={...Oe,...e||{}};const t=n=>{if(n==null)return;if((e==null?void 0:e.inputUnit)===(e==null?void 0:e.outputUnit))return n;const l=J[e.inputUnit]/J[e.outputUnit],d=parseFloat((n*l).toFixed(10));return(e==null?void 0:e.precision)===void 0?d:d.toFixed(e==null?void 0:e.precision)},r=n=>{if(n==null)return;const l=n.toString().split(".");return l[0]=l[0].replace(/\B(?=(\d{3})+(?!\d))/g,","),l.join(".")},u=n=>{if((e==null?void 0:e.zeroString)!==void 0&&Number(n)===0)return e==null?void 0:e.zeroString;if((e==null?void 0:e.nullString)!==void 0&&isNaN(Number(n)))return e==null?void 0:e.nullString;const l=t(Number(n));return e!=null&&e.thousands?r(l):l};return x("dict",(n,l)=>{const d=C(n,l);return c.createVNode("div",null,[typeof(e==null?void 0:e.prefix)=="string"?c.createVNode("span",null,[e.prefix]):typeof(e==null?void 0:e.prefix)=="function"?c.createVNode("span",null,[e.prefix()]):void 0,c.createVNode("span",{class:"currency_value"},[u(d)]),typeof(e==null?void 0:e.suffix)=="string"?c.createVNode("span",null,[e.suffix]):typeof(e==null?void 0:e.suffix)=="function"?c.createVNode("span",null,[e.suffix()]):void 0])})}var qe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ee={exports:{}};(function(e,t){(function(r,u){e.exports=u($)})(qe,function(r){function u(l){return l&&typeof l=="object"&&"default"in l?l:{default:l}}var a=u(r),n={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(l,d){return d==="W"?l+"周":l+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(l,d){var m=100*l+d;return m<600?"凌晨":m<900?"早上":m<1100?"上午":m<1300?"中午":m<1800?"下午":"晚上"}};return a.default.locale(n,null,!0),n})})(Ee);$.locale("zh-cn");const je={date:"YYYY-MM-DD",datetime:"YYYY-MM-DD HH:mm:ss",time:"HH:mm:ss",week:"ddd"};function $e(e){return x("date",(r,u)=>{const a=C(r,u),n=typeof(e==null?void 0:e.format)=="function"?e==null?void 0:e.format():je[(e==null?void 0:e.format)||"datetime"],l=$(a);return c.createVNode("span",null,[l.isValid()&&l.format(n)])})}const Pe={success:"arcoblue",warning:"orange",error:"red"};function Ye(e){return e instanceof Map?e:e.dict}function ze(e){const t=e instanceof Map?!1:e.tag;return typeof t=="string"?Pe[t]:t}function Le(e){const t=Ye(e),r=ze(e);return x("dict",(a,n)=>{const l=C(a,n);return r?c.createVNode(h.Tag,{color:r===!0?void 0:r},{default:()=>[t.get(l)||l]}):c.createVNode("span",null,[t.get(l)||l])})}function Ae(e){const t=_.useModal();async function r(a,n){a.confirm&&!await new Promise((d,m)=>{t.open("confirm",{title:"确认",content:a.confirmText||"是否确认执行该操作?",onOk:()=>d(!0),onCancel:()=>d(!1)})})||a.onClick(n)}return x("dropdown",(a,n)=>{const l=e.options.filter(d=>typeof d.visiable=="function"?d.visiable(a):d.visiable!==!1);return c.createVNode(h.Dropdown,{trigger:(e==null?void 0:e.trigger)||"click"},{default:()=>c.createVNode(h.Button,{disabled:l.length===0,type:"text"},{default:()=>[(e==null?void 0:e.content)||"操作"]}),content:()=>l.map(d=>c.createVNode(h.Dropdown.Option,{onClick:()=>r(d,a)},{default:()=>[typeof d.content=="function"?d.content(a):d.content]}))})})}const Be={size:30};function De(e){e={...Be,...e||{}};function t(a,n){var d;const l=(d=document.getElementById(a))==null?void 0:d.getBoundingClientRect();if(l){const m=new Image(100,100);m.id=`IMAGE_${a}_PREVIEW`,m.src=n,m.setAttribute("style",["position:fixed;",`top:${l.top}px;`,`left:${l.left+l.width}px;`,"min-width:400px;","height:auto;","z-index:100;"].join("")),document.body.appendChild(m)}}function r(a){const n=document.getElementById(`IMAGE_${a}_PREVIEW`);n==null||n.remove()}return x("image",(a,n,l)=>{const d=C(a,n),m=Math.random().toString(32).slice(2).toUpperCase(),s={maxWidth:"100%",maxHeight:"100%",borderRadius:e==null?void 0:e.radius,objectFit:"contain",transform:`rotate(${(e==null?void 0:e.rotate)||0}deg)`,cursor:e!=null&&e.preview?"pointer":"unset"},f=`${n.index||n.key}_parsed`;if(e!=null&&e.parse){const o=e==null?void 0:e.parse(d,a);j(o)?o.then(y=>a[f]=y??""):a[f]=o??""}if(e!=null&&e.parse&&!a[f]===void 0)return c.createVNode("div",null,[c.createTextVNode("Loading...")]);{const o=a[f]||d;return o?c.createVNode("div",{id:m,onMouseenter:()=>(e==null?void 0:e.preview)&&!(l!=null&&l.previewing)&&t(m,o),onMouseleave:()=>(e==null?void 0:e.preview)&&!(l!=null&&l.previewing)&&r(m),style:{display:"flex",justifyContent:"center",alignItems:"center",height:`${e==null?void 0:e.size}px`}},[c.createVNode("img",{alt:"image",style:s,src:o},null)]):c.createVNode(c.Fragment,null,null)}})}function z(e){return c.getCurrentScope()?(c.onScopeDispose(e),!0):!1}function M(e){return typeof e=="function"?e():c.unref(e)}const L=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ie=Object.prototype.toString,We=e=>Ie.call(e)==="[object Object]",Ke=()=>{};function Fe(e){let t;function r(){return t||(t=e()),t}return r.reset=async()=>{const u=t;t=void 0,u&&await u},r}function Ue(e,t){var r;if(typeof e=="number")return e+t;const u=((r=e.match(/^-?\d+\.?\d*/))==null?void 0:r[0])||"",a=e.slice(u.length),n=Number.parseFloat(u)+t;return Number.isNaN(n)?e:n+a}function He(e,t,r={}){const{immediate:u=!0}=r,a=c.ref(!1);let n=null;function l(){n&&(clearTimeout(n),n=null)}function d(){a.value=!1,l()}function m(...s){l(),a.value=!0,n=setTimeout(()=>{a.value=!1,n=null,e(...s)},M(t))}return u&&(a.value=!0,L&&m()),z(d),{isPending:c.readonly(a),start:m,stop:d}}function Ge(e){var t;const r=M(e);return(t=r==null?void 0:r.$el)!=null?t:r}const A=L?window:void 0,re=L?window.navigator:void 0;function ne(...e){let t,r,u,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([r,u,a]=e,t=A):[t,r,u,a]=e,!t)return Ke;Array.isArray(r)||(r=[r]),Array.isArray(u)||(u=[u]);const n=[],l=()=>{n.forEach(f=>f()),n.length=0},d=(f,o,y,v)=>(f.addEventListener(o,y,v),()=>f.removeEventListener(o,y,v)),m=c.watch(()=>[Ge(t),M(a)],([f,o])=>{if(l(),!f)return;const y=We(o)?{...o}:o;n.push(...r.flatMap(v=>u.map(k=>d(f,v,k,y))))},{immediate:!0,flush:"post"}),s=()=>{m(),l()};return z(s),s}function Je(){const e=c.ref(!1),t=c.getCurrentInstance();return t&&c.onMounted(()=>{e.value=!0},t),e}function B(e){const t=Je();return c.computed(()=>(t.value,!!e()))}function q(e,t={}){const{window:r=A}=t,u=B(()=>r&&"matchMedia"in r&&typeof r.matchMedia=="function");let a;const n=c.ref(!1),l=s=>{n.value=s.matches},d=()=>{a&&("removeEventListener"in a?a.removeEventListener("change",l):a.removeListener(l))},m=c.watchEffect(()=>{u.value&&(d(),a=r.matchMedia(M(e)),"addEventListener"in a?a.addEventListener("change",l):a.addListener(l),n.value=a.matches)});return z(()=>{m(),d(),a=void 0}),n}function Qe(e,t={}){function r(f,o){let y=M(e[M(f)]);return o!=null&&(y=Ue(y,o)),typeof y=="number"&&(y=`${y}px`),y}const{window:u=A,strategy:a="min-width"}=t;function n(f){return u?u.matchMedia(f).matches:!1}const l=f=>q(()=>`(min-width: ${r(f)})`,t),d=f=>q(()=>`(max-width: ${r(f)})`,t),m=Object.keys(e).reduce((f,o)=>(Object.defineProperty(f,o,{get:()=>a==="min-width"?l(o):d(o),enumerable:!0,configurable:!0}),f),{});function s(){const f=Object.keys(e).map(o=>[o,l(o)]);return c.computed(()=>f.filter(([,o])=>o.value).map(([o])=>o))}return Object.assign(m,{greaterOrEqual:l,smallerOrEqual:d,greater(f){return q(()=>`(min-width: ${r(f,.1)})`,t)},smaller(f){return q(()=>`(max-width: ${r(f,-.1)})`,t)},between(f,o){return q(()=>`(min-width: ${r(f)}) and (max-width: ${r(o,-.1)})`,t)},isGreater(f){return n(`(min-width: ${r(f,.1)})`)},isGreaterOrEqual(f){return n(`(min-width: ${r(f)})`)},isSmaller(f){return n(`(max-width: ${r(f,-.1)})`)},isSmallerOrEqual(f){return n(`(max-width: ${r(f)})`)},isInBetween(f,o){return n(`(min-width: ${r(f)}) and (max-width: ${r(o,-.1)})`)},current:s,active(){const f=s();return c.computed(()=>f.value.length===0?"":f.value.at(-1))}})}function Q(e,t={}){const{controls:r=!1,navigator:u=re}=t,a=B(()=>u&&"permissions"in u);let n;const l=typeof e=="string"?{name:e}:e,d=c.ref(),m=()=>{n&&(d.value=n.state)},s=Fe(async()=>{if(a.value){if(!n)try{n=await u.permissions.query(l),ne(n,"change",m),m()}catch{d.value="prompt"}return n}});return s(),r?{state:d,isSupported:a,query:s}:d}function Xe(e={}){const{navigator:t=re,read:r=!1,source:u,copiedDuring:a=1500,legacy:n=!1}=e,l=B(()=>t&&"clipboard"in t),d=Q("clipboard-read"),m=Q("clipboard-write"),s=c.computed(()=>l.value||n),f=c.ref(""),o=c.ref(!1),y=He(()=>o.value=!1,a);function v(){l.value&&O(d.value)?t.clipboard.readText().then(g=>{f.value=g}):f.value=P()}s.value&&r&&ne(["copy","cut"],v);async function k(g=M(u)){s.value&&g!=null&&(l.value&&O(m.value)?await t.clipboard.writeText(g):S(g),f.value=g,o.value=!0,y.start())}function S(g){const w=document.createElement("textarea");w.value=g??"",w.style.position="absolute",w.style.opacity="0",document.body.appendChild(w),w.select(),document.execCommand("copy"),w.remove()}function P(){var g,w,N;return(N=(w=(g=document==null?void 0:document.getSelection)==null?void 0:g.call(document))==null?void 0:w.toString())!=null?N:""}function O(g){return g==="granted"||g==="prompt"}return{isSupported:s,text:f,copied:o,copy:k}}const Ze=" ";function pe(e){return e==null?void 0:e.replace(/(\d{3})\d*(\d{4})/g,"$1****$2")}function X(e,t){return e==null?void 0:e.replace(/\*/g,"M").replace(/\B(?=(?:\S{4})+$)/g,t??Ze).replace(/M/g,"*")}function et(e){const t=Xe();return x("phone",(u,a)=>{const n=C(u,a),l=X(pe(n),e==null?void 0:e.separator),d=X(n,e==null?void 0:e.separator);function m(o){if(e!=null&&e.safe&&e.noSafeWhenHover){const y=o.target;y.innerText=d}}function s(o){if(e!=null&&e.safe&&e.noSafeWhenHover){const y=o.target;y.innerText=l}}function f(){t.copy(n).then(()=>{h.Message.success({content:"复制成功",duration:1e3})})}return e!=null&&e.callable?c.createVNode("a",{style:"text-decoration:none;font-family: monospace;cursor:pointer;font-variant-numeric: tabular-nums;",href:`tel:${n}`},[e!=null&&e.safe?l:d]):c.createVNode("a",{onClick:f,style:"text-decoration:none;use-select:none;font-family: monospace;cursor:pointer;font-variant-numeric: tabular-nums;",onMouseenter:m,onMouseleave:s},[e!=null&&e.safe?l:d])})}function tt(e){return x("render",r=>e(r))}function rt(e){return x("tag",(r,u)=>{const a=(e==null?void 0:e.maxCount)||5,n=e!=null&&e.formatter?e.formatter(r):C(r,u),l=(e==null?void 0:e.textColors)||["#F87335"],d=(e==null?void 0:e.backgroundColors)||["#FFF4E8"],m=n.length>a,s=e==null?void 0:e.minWidth;return c.createVNode("div",{style:{display:"flex",flexWrap:"wrap"}},[n.slice(0,a).map((f,o)=>{const y=typeof l=="function"?l(f,o):l[o%l.length],v=typeof d=="function"?d(f,o):d[o%d.length];return c.createVNode("span",{style:{minWidth:s?`${s}px`:"unset",textAlign:"center",margin:"2px",padding:"2px 5px",border:`solid 2px ${e!=null&&e.border?y:"transparent"}`,borderRadius:`${(e==null?void 0:e.radius)||0}px`,color:y,backgroundColor:v}},[f])}),m&&"..."])})}function Z(e){if(typeof e=="string")return e;if(typeof e=="number")return`${e}px`}function nt(e,t,r){var u,a;return typeof e=="function"?(u=e(r))==null?void 0:u.toString():typeof(e==null?void 0:e.content)=="function"?(a=e==null?void 0:e.content(r))==null?void 0:a.toString():typeof(e==null?void 0:e.content)=="string"?e==null?void 0:e.content:C(r,t)}function at(e,t){if(typeof e!="function"){if(typeof(e==null?void 0:e.color)=="function")return e==null?void 0:e.color(t);if(typeof(e==null?void 0:e.color)=="string")return e==null?void 0:e.color}}function lt(e,t){if(typeof e!="function")return typeof(e==null?void 0:e.size)=="function"?Z(e==null?void 0:e.size(t)):Z(e==null?void 0:e.size)}function ut(e,t){let r="";const u=at(e,t),a=lt(e,t);return u&&(r+=`color:${u};`),a&&(r+=`font-size:${a};`),r}function ct(e){return x("text",(r,u)=>{const a=nt(e||{},u,r),n=ut(e||{},r);return c.createVNode("span",{style:n},[a])})}function dt(){return{dropdown:Ae,text:ct,dict:Le,tag:rt,render:tt,phone:et,image:De,currency:Re,date:$e,button:_e}}function D(e,t){if(!(e!=null&&e.render))return;const r=e.render({...dt()});return{render:({record:u})=>r(u,e,t),[Ne]:r.$type,disableColumnMode:r.$disableColumnMode,disableViewMode:r.$disableViewMode,isRender:r.$type==="render",type:r.$type}}function p({columns:e,columnsOptions:t,columnsGroups:r,pageMode:u,collapsedColumns:a,events:n}){const l=e.map(d=>({...t||{},...d})).map(d=>st(d,u,a,n)).filter(Boolean);return ft(l,r)}function it(e,t){const r=[],u=n=>{if("children"in n&&(n.children=n.children.map(u)),"key"in n){const l=t.find(d=>{var m;return((m=Object.getOwnPropertyDescriptor(d,"key"))==null?void 0:m.value)===n.key});if(l)return r.push(l),l}return n},a=u(e);if(r!=null&&r.length&&a){const n=Math.min(...r.map(l=>t.indexOf(l)));r.forEach(l=>{const d=t.indexOf(l);t.splice(d,1)}),t.splice(n,0,a)}}function ft(e,t=[]){return t.forEach(r=>{it(r,e)}),e}function st(e,t,r,u){const{render:a,disableColumnMode:n}=D(e,{previewing:!1,emits:u})||{};if(!(n||e.visiable===!1)&&!(typeof e.visiable=="function"&&e.visiable()===!1)&&!r.value.find(l=>l.key===e.key&&l.collapsed===!0))return{dataIndex:e.index||e.key,title:e.title,width:e.width==="auto"?void 0:e.width,align:e.align??"center",fixed:e.fixed,ellipsis:e.ellipsis??!0,sortable:e.sortable?{sorter:t==="server",sortDirections:["ascend","descend"],defaultSortOrder:e.sortable==="asc"?"ascend":"descend"}:void 0,tooltip:!0,...e.extraProps,key:e.key,render:a}}function ot(){return new Ce.Workbook}function mt(e,t="Sheet1"){return e.addWorksheet(t,{headerFooter:{firstHeader:"",firstFooter:""}})}function yt(e,t){e.columns=t}function bt(e,t){e.addRows(t)}async function gt({columns:e,rows:t,filename:r}){const u=ot(),a=mt(u);yt(a,e),bt(a,t);const n=await u.xlsx.writeBuffer(),l=new Blob([n]);ht(l,r||`${$().format("YYYY-MM-DD HH:mm:ss")}.xlsx`)}function ht(e,t){const r=document.createElement("a");r.download=t||"download",r.href=URL.createObjectURL(e),r.click(),setTimeout(()=>{URL.revokeObjectURL(r.href)},1e3)}function vt(e,t){const r={};return e.filter(a=>a.exportable!==!1).map(a=>({options:a,render:D(a),content:typeof a.exportable=="object"?a.exportable.content:void 0})).forEach(a=>{var d;const n=(d=a.render)==null?void 0:d.render,l=()=>{var m;switch(!0){case!!a.content:return a.content&&a.content(t);case!!n:{const s=document.createElement("div"),f=c.h(()=>n&&n({record:t}));return c.render(f,s),(m=f.el)==null?void 0:m.innerText}default:return C(t,a.options)}};r[a.options.key]=l()}),r}function wt(e){switch(!0){case typeof e=="number":return e/6;case(typeof e=="string"&&e.endsWith("px")):return parseInt(e.replace("px",""))/6;default:return 30}}function xt(e,t,r){const u=e.filter(n=>n.exportable!==!1).map(n=>{var l,d;return{key:n.key,header:((l=n.exportable)==null?void 0:l.header)||n.title,width:((d=n.exportable)==null?void 0:d.width)||wt(n.width)}}),a=t.map(n=>vt(e,n));gt({columns:u,rows:a,filename:r})}function St(){return{exportExcel:xt}}class I{constructor(t){V(this,"sort",{});V(this,"defaultSort",{});V(this,"before",t=>{t.paramsQuery={...t.paramsQuery||{},sort:this.stringify(this.sort)}});t&&(this.sort=t,this.defaultSort=t)}update(t,r){t&&r&&(this.sort[t]=r)}remove(t){const r=Object.entries(this.sort).filter(([u])=>u!==t);this.sort={},r&&r.forEach(([u,a])=>{this.sort[u]=a})}reset(){this.sort=this.defaultSort||{}}stringify(t){return typeof t!="object"?[]:(t instanceof I&&(t=t.sort),Object.entries(t).map(([r,u])=>`${r},${u}`))}}const Ct=300;function kt(e){const t=e,r=t==null?void 0:t.querySelector(".arco-scrollbar-container.arco-table-body");if(!r)return;let u,a=!1,n;r.addEventListener("mousedown",()=>{console.log("mousedown"),u=setTimeout(()=>{u&&(r.style.cursor="grab",r.style.userSelect="none",a=!0)},Ct)}),r.addEventListener("mouseup",()=>{clearTimeout(u),u&&(u=void 0,a=!1,r.style.cursor="",r.style.userSelect="",n=void 0)}),r.addEventListener("mousemove",l=>{if(a)if(n===void 0)n=l.clientX;else{const d=n-l.clientX;n=l.clientX,r.scrollLeft+=d}})}function Tt(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!c.isVNode(e)}const Vt=c.defineComponent({props:{record:{type:Object,required:!0},columns:{type:Array,required:!0},minWidth:{type:Number,required:!1,default:320},border:{type:Boolean,default:!0},exclude:{type:Array,default:()=>[]},layout:{type:String,required:!1,default:"horizontal"},buttons:{type:Array,default:()=>[]}},setup(e){const t=c.getCurrentInstance(),r=c.ref(0),u=e.columns.filter(n=>typeof n.visiable=="boolean"?n.visiable:typeof n.visiable=="function"?n.visiable():!0).map(n=>({options:n,renderer:D(n,{previewing:!0})})).filter(({options:n})=>{var l;return!((l=e.exclude)!=null&&l.includes(n.key))}).filter(({renderer:n})=>!(n!=null&&n.disableViewMode));function a(){var n;if(t){const l=(n=t.proxy)==null?void 0:n.$el;r.value=Math.floor(l.offsetWidth/e.minWidth)}}return c.onMounted(()=>{a()}),()=>{let n;return c.createVNode("div",{class:"preview-container"},[c.createVNode(h.Descriptions,{column:r.value,bordered:!0,align:"left",layout:e.layout},Tt(n=u.map(l=>c.createVNode(h.DescriptionsItem,{label:l.options.title},{default:()=>{var d,m;return[(d=l.renderer)!=null&&d.render?(m=l.renderer)==null?void 0:m.render({record:e.record}):C(e.record,l.options)]}})))?n:{default:()=>[n]})])}}});function Mt(e,t,{tableForm:r,tableEvents:u}){const a=e.refreshable||e.exportable||t.slots.actions,n=!!(r!=null&&r.length)&&a;return a||n?()=>c.createVNode(c.Fragment,null,[n&&c.createVNode(h.Divider,{margin:0},null),a&&c.createVNode("div",{class:"table-actions",style:{display:"flex",justifyContent:"space-between",margin:"20px 0",flexDirection:e.actionsPosition==="right"?"row":"row-reverse",alignItems:"center"}},[c.createVNode("div",{class:"built-in"},[c.createVNode(h.Space,null,{default:()=>[e.refreshable&&c.createVNode(h.Button,{type:"primary",onClick:()=>u("reload")},{default:()=>[c.createTextVNode("刷新")]}),e.exportable&&c.createVNode(h.Button,{type:"primary",onClick:()=>u("export")},{default:()=>[c.createTextVNode("导出")]}),e.collapsable&&c.createVNode(h.Button,{type:"primary",onClick:()=>u("collapse")},{default:()=>[c.createTextVNode("显示")]})]})]),c.createVNode("div",{class:"customs"},[c.createVNode(h.Space,null,{default:()=>[t.slots.actions&&t.slots.actions()]})])])]):()=>{}}function Nt(e,t,{tableForm:r,tableEvents:u,formInstance:a}){return r!=null&&r.length?()=>c.createVNode("div",{class:"table-form"},[c.createVNode(ee.FormRender,c.mergeProps({form:r,ref:n=>a&&(a.value=n),searchable:!0,onSubmit:()=>u("reload",{reset:!0})},e.formOptions),null)]):()=>{}}function _t(e,t,{tableSource:r}){const u=c.ref([]);function a(){u.value=[],t.emit("update:radio-key",null),t.emit("update:radio-row",null),t.emit("update:checkbox-keys",[]),t.emit("update:checkbox-rows",[])}function n(){c.nextTick(()=>{e.checkboxRows!==void 0&&(u.value=[...e.checkboxRows.map(s=>s[e.rowKey])]),e.checkboxKeys!==void 0&&(u.value=[...e.checkboxKeys]),e.radioKey&&(u.value=[e.radioKey]),e.radioRow&&(u.value=[e.radioRow[e.rowKey]])})}function l(){const s=typeof e.selection=="string"?{type:e.selection}:e.selection;switch(s==null?void 0:s.type){case"radio":return{title:"选择",...s,selectedRowKeys:u.value};case"checkbox":return{showCheckedAll:!0,selectedRowKeys:u.value,...s}}}function d(s,f,o){const{type:y}=l()||{};switch(y){case"radio":t.emit("update:radio-key",f),t.emit("update:radio-row",o);break;case"checkbox":t.emit("update:checkbox-keys",s),t.emit("update:checkbox-rows",s.map(v=>{var k;return r.value.find(S=>S[e.rowKey]===v)||((k=e.checkboxRows)==null?void 0:k.find(S=>S[e.rowKey]===v))}));break}}function m(){c.nextTick(()=>{t.emit("update:checkbox-keys",u.value),t.emit("update:checkbox-rows",u.value.map(s=>{var f;return r.value.find(o=>o[e.rowKey]===s)||((f=e.checkboxRows)==null?void 0:f.find(o=>o[e.rowKey]===s))}))})}return n(),{selectedRowKeys:u,rowSelection:l(),onSelect:d,onSelectAll:m,resetSelection:a,reloadSelection:n}}function Ot(e,t,{pageService:r,tableEvents:u}){function a(d){r&&(r.pageIndex=d,u("reload"))}function n(d){r&&(r.pageSize=d,u("reload"))}const l=Qe({mobile:0,tablet:640,desktop:1024});return r?()=>c.createVNode("div",{class:"table-pagination",style:{padding:"10px 0"}},[c.createVNode(h.Pagination,{current:r.pageIndex,"onUpdate:current":d=>r.pageIndex=d,"page-size":r.pageSize,"onUpdate:page-size":d=>r.pageSize=d,total:r.total,"page-size-options":r.pageSizeOpts,"hide-on-single-page":!e.alwayShowPagination,"show-total":!0,"show-page-size":!0,simple:l.smaller("desktop").value,onChange:d=>a(d),onPageSizeChange:d=>n(d),style:{justifyContent:"flex-end"}},null)]):()=>{}}const Rt=c.defineComponent({props:{collapsedColumns:{type:Array,required:!0}},setup(e){const t=_.useModal(),r=c.ref(e.collapsedColumns.map(a=>({label:a.title,value:a.key,disabled:!1}))),u=c.ref(e.collapsedColumns.filter(a=>a.collapsed).map(a=>a.key));return _.onSubmit(()=>{const a=e.collapsedColumns.map(n=>({key:n.key,title:n.title,collapsed:u.value.includes(n.key)}));t.close(a)}),()=>c.createVNode("div",{class:"table-collapsed-render"},[c.createVNode(h.Transfer,{data:r.value,"default-value":u.value,onChange:a=>u.value=[...a],title:["显示列","隐藏列"],style:{justifyContent:"center"}},{default:()=>[c.withDirectives(c.createVNode("template",null,null),[[c.resolveDirective("slot"),"source"]])]})])}}),qt=c.defineComponent({props:{value:{type:Object,required:!0},form:{type:Array,required:!0},onSubmit:{type:Function,required:!1}},setup(e){const t=_.useModal();function r(u){e.onSubmit&&e.onSubmit(u),t.close(u)}return console.log(e.value),()=>c.createVNode("div",{class:"edit-form-container"},[c.createVNode(ee.FormRender,{name:"form",value:e.value,form:e.form,onSubmit:r},null)])}}),ae=c.defineComponent({props:{rowKey:{type:String,required:!0},form:{type:Object,required:!1},formOptions:{type:Object,required:!1},columns:{type:Object,required:!0},autoLoad:{type:Boolean,required:!1,default:!0},dataLoad:{type:Function,required:!1},height:{type:Number,required:!1},size:{type:String,required:!1,default:"large"},columnsOptions:{type:Object,required:!1},collapsable:{type:Boolean,required:!1,default:!1},selection:{type:[String,Object],required:!1},radioKey:{type:[String,Number],required:!1},checkboxKeys:{type:Array,required:!1},radioRow:{type:Object,required:!1},checkboxRows:{type:Array,required:!1},exportable:{type:[Boolean,Object],required:!1,default:!1},refreshable:{type:Boolean,required:!1},actionsPosition:{type:String,required:!1,default:"right"},pageable:{type:[Object,Boolean,String],required:!1,default:void 0},sortable:{type:[Object],required:!1},draggable:{type:Boolean,required:!1},hoverable:{type:Boolean,required:!1,default:!1},bordered:{type:Boolean,required:!1,default:!1},stripe:{type:Boolean,required:!1,default:!0},columnsGroups:{type:Array,required:!1,default:()=>[]},rowClass:{type:Function,required:!1},expandable:{type:Object,required:!1},grabbable:{type:Boolean,default:!0,required:!1},autoFill:{type:Boolean,default:!1,required:!1},alwayShowPagination:{type:Boolean,default:!1,required:!1}},expose:["preview","export","edit","reload","tableSource","formSource","update:radio-key","update:radio-row","update:checkbox-keys","update:checkbox-rows","formInstance","resetSelection","reloadSelection","reloadColumns","change"],setup(e,t){const r=Math.random().toString(32).slice(2).toUpperCase(),u=c.ref(),a=c.ref(),n=c.ref(),l=c.ref(),[d,m]=Te(e.columns),s=c.ref(!1),f=e.form??Ve(e.columns),o=k(),y=P(),v=c.ref(e.columns.map(i=>({key:i.key,title:i.title,collapsed:!!i.collapsed})));function k(){switch(!0){case(typeof e.pageable=="string"&&e.pageable==="server"):return new Y;case(typeof e.pageable=="boolean"&&e.pageable===!0):return new Y;case(typeof e.pageable=="object"&&!!e.pageable.reset):return e.pageable;case(typeof e.pageable=="object"&&(!!e.pageable.index||!!e.pageable.size)):return new Y(e.pageable.index,e.pageable.size)}}const S=(()=>{switch(!0){case typeof e.pageable=="string":return e.pageable;case(e.pageable===void 0||e.pageable===!1):return"client";default:return"server"}})();function P(){const i=e.columns.find(b=>!!b.sortable);if(i||e.sortable)return new I({...e.sortable||{},...i?{[i.key]:i.sortable}:{}})}function O(i){const{exportExcel:b}=St();b((i==null?void 0:i.columns)||e.columns,(i==null?void 0:i.source)||d.value,(i==null?void 0:i.filename)||(typeof e.exportable=="object"?e.exportable.filename:void 0))}function g(i){let b;switch(!0){case!!(i!=null&&i.key):b=d.value.find(T=>T[e.rowKey]===(i==null?void 0:i.key));break;case!!(i!=null&&i.record):b=i==null?void 0:i.record;break}if(!b)throw new Error("未找到需要预览的数据");return n.value.open(Vt,{record:b,columns:e.columns},{title:(i==null?void 0:i.title)||"详情",mode:(i==null?void 0:i.mode)||"dialog"})}function w(i){let b;switch(!0){case!!(i!=null&&i.key):b=d.value.find(T=>T[e.rowKey]===(i==null?void 0:i.key));break;case!!(i!=null&&i.record):b=i==null?void 0:i.record;break}if(!b)throw new Error("未找到需要编辑的数据");return n.value.open(qt,{value:b,form:i==null?void 0:i.form,onSubmit:i.onSubmit},{title:(i==null?void 0:i.title)||"编辑",mode:(i==null?void 0:i.mode)||"dialog",footer:!0,form:"form"})}function N(i){var U,H;if(!e.dataLoad)return Promise.reject();i!=null&&i.reset&&(o&&o.reset(),y&&y.reset(),(U=u.value)==null||U.resetSorters());const b={...((H=a.value)==null?void 0:H.formSource)||{}};Object.keys(b).forEach(G=>{[null,void 0,""].includes(b[G])&&delete b[G]});const T=e.dataLoad({form:b,page:o,sort:y,update:m});return j(T)?(s.value=!0,Promise.resolve(T).finally(()=>{s.value=!1}),T):Promise.resolve()}function le(){n.value.open(Rt,{collapsedColumns:v.value},{title:"显示列",size:"small",footer:!0}).then(i=>{v.value=i})}const ue=(i,{type:b})=>{switch(b){case"drag":{m(i),t.emit("change",i);break}}},R=te({reload:N,preview:g,export:O,edit:w,collapse:le});function ce(i,b){!y||S==="client"||(b?y.update(i,b==="descend"?"desc":"asc"):y.remove(i),R("reload"))}const W=c.ref(p({columns:e.columns,columnsOptions:e.columnsOptions,columnsGroups:e.columnsGroups,pageMode:S,collapsedColumns:v,events:R})),E={tableEvents:R,tableForm:f,tableSource:d,formInstance:a,pageService:o,formOptions:e.formOptions},de=Nt(e,t,E),ie=Mt(e,t,E),fe=Ot(e,t,E),{selectedRowKeys:K,rowSelection:F,onSelect:se,onSelectAll:oe,reloadSelection:me,resetSelection:ye}=_t(e,t,E),be=c.computed(()=>({rowKey:e.rowKey,size:e.size,bordered:e.bordered,hoverable:e.hoverable,stripe:e.stripe,scroll:{x:e.columns.reduce((i,b)=>i+=typeof b.width!="number"?Math.max(b.title.length*16,80):b.width,0),y:e.height??"100%"},rowSelection:F,draggable:e.draggable?{type:"handle",width:40}:void 0,pagination:e.pageable===void 0||e.pageable==="client",selectedKeys:K.value,expandable:e.expandable}));function ge(){W.value=p({columns:e.columns,columnsOptions:e.columnsOptions,columnsGroups:e.columnsGroups,pageMode:S,collapsedColumns:v,events:R})}return c.onMounted(()=>{l.value&&(l.value.id=`table-${r}`),e.autoLoad&&N(),e.grabbable&&l.value&&kt(l.value)}),{tableId:r,tableInstance:u,tableSource:d,tableOptions:be,tableColumns:W,tableEvents:R,tableForm:f,tableLoading:s,modalInstance:n,tableRenderElement:l,formSource:c.readonly(c.computed(()=>{var i;return(i=a==null?void 0:a.value)==null?void 0:i.formSource})),formInstance:a,reload:N,preview:g,edit:w,export:O,onSorterChange:ce,onTableChange:ue,renders:{renderTableForm:de,renderTableActions:ie,renderTablePagination:fe},tableSelection:{selectedRowKeys:K,rowSelection:F,onSelect:se,onSelectAll:oe},resetSelection:ye,reloadSelection:me,reloadColumns:ge}},render(){this.reloadColumns();const e=()=>c.createVNode("div",{class:"table-body"},[c.createVNode("div",{class:"table-body-wrapper"},[c.createVNode(h.Table,c.mergeProps({loading:this.tableLoading,data:this.tableSource,columns:this.tableColumns,ref:t=>this.tableInstance=t,onSelect:this.tableSelection.onSelect,onSelectAll:this.tableSelection.onSelectAll,onChange:this.onTableChange,rowClass:this.rowClass,onSorterChange:this.onSorterChange,selectedKeys:this.tableSelection.selectedRowKeys.value,"onUpdate:selectedKeys":t=>this.tableSelection.selectedRowKeys.value=t},this.tableOptions),null)])]);return c.createVNode("div",{class:{"table-render":!0,"auto-fill":this.autoFill},ref:t=>this.tableRenderElement=t},[c.createVNode(_.ModalProvider,{ref:t=>this.modalInstance=t},{default:()=>[c.createVNode("div",{class:"table-render-content"},[this.renders.renderTableForm(),this.renders.renderTableActions(),this.$slots.header&&this.$slots.header(),e(),this.renders.renderTablePagination()])]})])}});function Et(e){return e}function jt(e){return e}const $t={install(e,t){e.component("TableRender",ae)}};exports.TableRenderResolver=xe.TableRenderResolver;exports.TableRender=ae;exports.default=$t;exports.defineColumns=Et;exports.defineTableLoad=jt;exports.useEvents=te;exports.useTable=Me;
@@ -11,5 +11,5 @@ export interface CurrencyColumnOptions {
11
11
  zeroString?: string;
12
12
  nullString?: string;
13
13
  }
14
- export declare function renderCurrencyColumn<T = DataRecord>(options?: CurrencyColumnOptions): import('../../interfaces').TableColumnRenderResult<T>;
14
+ export declare function renderCurrencyColumn<T = DataRecord>(options?: CurrencyColumnOptions): import('../..').TableColumnRenderResult<T>;
15
15
  export {};
@@ -14,5 +14,5 @@ declare const dateFormats: {
14
14
  * @param options DateColumn列选项
15
15
  * @returns JSX
16
16
  */
17
- export declare function renderDateColumn<T = DataRecord>(options?: DateColumnOptions): import('../../interfaces').TableColumnRenderResult<T>;
17
+ export declare function renderDateColumn<T = DataRecord>(options?: DateColumnOptions): import('../..').TableColumnRenderResult<T>;
18
18
  export {};
@@ -10,5 +10,5 @@ export type DictColumnOptions = Dict | {
10
10
  dict: Dict;
11
11
  tag: boolean | keyof typeof TagType;
12
12
  };
13
- export declare function renderDictColumn<T = DataRecord>(options: DictColumnOptions): import('../../interfaces').TableColumnRenderResult<T>;
13
+ export declare function renderDictColumn<T = DataRecord>(options: DictColumnOptions): import('../..').TableColumnRenderResult<T>;
14
14
  export {};
@@ -14,4 +14,4 @@ export interface DropdownColumnOptions<T> {
14
14
  content?: string;
15
15
  options: DropdownOptionItemOptions<T>[];
16
16
  }
17
- export declare function renderDropdownColumn<T = DataRecord>(options: DropdownColumnOptions<T>): import('../../interfaces').TableColumnRenderResult<T>;
17
+ export declare function renderDropdownColumn<T = DataRecord>(options: DropdownColumnOptions<T>): import('../..').TableColumnRenderResult<T>;
@@ -4,9 +4,9 @@ export declare function TableColumnRenders<T>(): {
4
4
  dict: (options: import('./dict').DictColumnOptions) => import('..').TableColumnRenderResult<T>;
5
5
  tag: (options?: import('./tag').TagColumnOptions<T> | undefined) => import('..').TableColumnRenderResult<T>;
6
6
  render: (renderer: import('./render').RenderColumnOptions<T>) => import('..').TableColumnRenderResult<T>;
7
- phone: (options?: import('./phone').PhoneColumnOptions | undefined) => import('..').TableColumnRenderResult<T>;
7
+ phone: (options?: import('./phone').PhoneColumnOptions) => import('..').TableColumnRenderResult<T>;
8
8
  image: (options?: import('./image').ImageColumnOptions<T> | undefined) => import('..').TableColumnRenderResult<T>;
9
- currency: (options?: import('./currency').CurrencyColumnOptions | undefined) => import('..').TableColumnRenderResult<T>;
10
- date: (options?: import('./date').DateColumnOptions | undefined) => import('..').TableColumnRenderResult<T>;
9
+ currency: (options?: import('./currency').CurrencyColumnOptions) => import('..').TableColumnRenderResult<T>;
10
+ date: (options?: import('./date').DateColumnOptions) => import('..').TableColumnRenderResult<T>;
11
11
  button: (options: import('./button').RenderButtonColumnOptions<T>) => import('..').TableColumnRenderResult<T>;
12
12
  };
@@ -2,7 +2,8 @@ import { DataRecord } from '../../interfaces';
2
2
 
3
3
  export interface PhoneColumnOptions {
4
4
  safe?: boolean;
5
+ noSafeWhenHover?: boolean;
5
6
  separator?: string;
6
7
  callable?: boolean;
7
8
  }
8
- export declare function renderPhoneColumn<T = DataRecord>(options?: PhoneColumnOptions): import('../../interfaces').TableColumnRenderResult<T>;
9
+ export declare function renderPhoneColumn<T = DataRecord>(options?: PhoneColumnOptions): import('../..').TableColumnRenderResult<T>;
@@ -3,4 +3,4 @@ import { DataRecord } from '../../interfaces';
3
3
  export interface RenderColumnOptions<T> {
4
4
  (record: T): JSX.Element;
5
5
  }
6
- export declare function renderRenderColumn<T = DataRecord>(renderer: RenderColumnOptions<T>): import('../../interfaces').TableColumnRenderResult<T>;
6
+ export declare function renderRenderColumn<T = DataRecord>(renderer: RenderColumnOptions<T>): import('../..').TableColumnRenderResult<T>;
@@ -9,4 +9,4 @@ export interface TagColumnOptions<T> {
9
9
  minWidth?: number;
10
10
  formatter?: (record: T) => string[];
11
11
  }
12
- export declare function renderTagColumn<T = DataRecord>(options?: TagColumnOptions<T>): import('../../interfaces').TableColumnRenderResult<T>;
12
+ export declare function renderTagColumn<T = DataRecord>(options?: TagColumnOptions<T>): import('../..').TableColumnRenderResult<T>;
@@ -9,4 +9,4 @@ export interface TextColumnObjectOptions<T> {
9
9
  export interface TextColumnFunctionOptions<T> {
10
10
  (record: T): string | number | undefined;
11
11
  }
12
- export declare function renderTextColumn<T = DataRecord>(options?: TextColumnOptions<T>): import('../../interfaces').TableColumnRenderResult<T>;
12
+ export declare function renderTextColumn<T = DataRecord>(options?: TextColumnOptions<T>): import('../..').TableColumnRenderResult<T>;
@@ -1,4 +1,4 @@
1
- import { TableData } from '@arco-design/web-vue';
1
+ import { TableChangeExtra, TableData, TableExpandable } from '@arco-design/web-vue';
2
2
  import { PropType, Ref } from 'vue';
3
3
  import { DataRecord, FormItemsOptions, FormRenderInstance } from '@gopowerteam/form-render';
4
4
  import { RequestPlugin } from '@gopowerteam/request';
@@ -52,11 +52,11 @@ export declare const TableRender: import('vue').DefineComponent<{
52
52
  };
53
53
  selection: {
54
54
  type: PropType<"radio" | "checkbox" | {
55
- type: 'radio' | 'checkbox';
56
- width?: number | undefined;
57
- title?: string | undefined;
58
- fixed?: boolean | undefined;
59
- selectable?: ((record: any) => boolean) | undefined;
55
+ type: "radio" | "checkbox";
56
+ width?: number;
57
+ title?: string;
58
+ fixed?: boolean;
59
+ selectable?: (record: any) => boolean;
60
60
  }>;
61
61
  required: false;
62
62
  };
@@ -73,7 +73,7 @@ export declare const TableRender: import('vue').DefineComponent<{
73
73
  required: false;
74
74
  };
75
75
  checkboxRows: {
76
- type: PropType<Record<string, any>[]>;
76
+ type: PropType<Array<Record<string, any>>>;
77
77
  required: false;
78
78
  };
79
79
  exportable: {
@@ -93,10 +93,10 @@ export declare const TableRender: import('vue').DefineComponent<{
93
93
  default: string;
94
94
  };
95
95
  pageable: {
96
- type: PropType<boolean | (RequestPlugin & PageableOptions) | {
96
+ type: PropType<(RequestPlugin & PageableOptions) | {
97
97
  index: number;
98
98
  size: number;
99
- } | "client" | "server">;
99
+ } | boolean | "client" | "server">;
100
100
  required: false;
101
101
  default: undefined;
102
102
  };
@@ -154,7 +154,7 @@ export declare const TableRender: import('vue').DefineComponent<{
154
154
  }, {
155
155
  tableId: string;
156
156
  tableInstance: Ref<any>;
157
- tableSource: Ref<import('../interfaces').DataRecord[]>;
157
+ tableSource: Ref<import('..').DataRecord[]>;
158
158
  tableOptions: import('vue').ComputedRef<TableInstance>;
159
159
  tableColumns: any;
160
160
  tableEvents: EventEmits;
@@ -201,7 +201,7 @@ export declare const TableRender: import('vue').DefineComponent<{
201
201
  required: false;
202
202
  };
203
203
  collapsedMode: {
204
- type: PropType<"dialog" | "append">;
204
+ type: PropType<"append" | "dialog">;
205
205
  required: false;
206
206
  default: string;
207
207
  };
@@ -209,7 +209,7 @@ export declare const TableRender: import('vue').DefineComponent<{
209
209
  type: BooleanConstructor;
210
210
  required: false;
211
211
  default: (props: {
212
- collapsedMode: "dialog" | "append";
212
+ collapsedMode: "append" | "dialog";
213
213
  }) => boolean;
214
214
  };
215
215
  submitable: {
@@ -237,13 +237,13 @@ export declare const TableRender: import('vue').DefineComponent<{
237
237
  onCancel?: ((...args: any[]) => any) | undefined;
238
238
  "onUpdate:model-value"?: ((...args: any[]) => any) | undefined;
239
239
  }, {
240
- formId: Ref<string>;
241
- formName: Ref<string>;
242
- formSource: Ref<DataRecord>;
243
- formInstance: Ref<any>;
244
- formColumns: Ref<number>;
240
+ formId: import('vue').Ref<string>;
241
+ formName: import('vue').Ref<string>;
242
+ formSource: import('vue').Ref<DataRecord>;
243
+ formInstance: import('vue').Ref<any>;
244
+ formColumns: import('vue').Ref<number>;
245
245
  formRules: import('vue').ComputedRef<Record<string, any>>;
246
- formCollspased: Ref<boolean>;
246
+ formCollspased: import('vue').Ref<boolean>;
247
247
  formActiosSpan: import('vue').ComputedRef<number>;
248
248
  formItems: import('vue').ComputedRef<import('@gopowerteam/form-render').FormItemOptions<any>[]>;
249
249
  toggleFormCollapsed: () => boolean;
@@ -254,7 +254,7 @@ export declare const TableRender: import('vue').DefineComponent<{
254
254
  validate: () => any;
255
255
  onSubmitSuccess: () => void;
256
256
  openCollapsedDialog: () => void;
257
- modalInstance: Ref<any>;
257
+ modalInstance: import('vue').Ref<any>;
258
258
  }, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("submit" | "cancel" | "update:model-value")[], import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & Readonly<import('vue').ExtractPropTypes<{
259
259
  form: {
260
260
  type: PropType<FormItemsOptions<any>>;
@@ -291,7 +291,7 @@ export declare const TableRender: import('vue').DefineComponent<{
291
291
  required: false;
292
292
  };
293
293
  collapsedMode: {
294
- type: PropType<"dialog" | "append">;
294
+ type: PropType<"append" | "dialog">;
295
295
  required: false;
296
296
  default: string;
297
297
  };
@@ -299,7 +299,7 @@ export declare const TableRender: import('vue').DefineComponent<{
299
299
  type: BooleanConstructor;
300
300
  required: false;
301
301
  default: (props: {
302
- collapsedMode: "dialog" | "append";
302
+ collapsedMode: "append" | "dialog";
303
303
  }) => boolean;
304
304
  };
305
305
  submitable: {
@@ -378,7 +378,7 @@ export declare const TableRender: import('vue').DefineComponent<{
378
378
  required: false;
379
379
  };
380
380
  collapsedMode: {
381
- type: PropType<"dialog" | "append">;
381
+ type: PropType<"append" | "dialog">;
382
382
  required: false;
383
383
  default: string;
384
384
  };
@@ -386,7 +386,7 @@ export declare const TableRender: import('vue').DefineComponent<{
386
386
  type: BooleanConstructor;
387
387
  required: false;
388
388
  default: (props: {
389
- collapsedMode: "dialog" | "append";
389
+ collapsedMode: "append" | "dialog";
390
390
  }) => boolean;
391
391
  };
392
392
  submitable: {
@@ -414,13 +414,13 @@ export declare const TableRender: import('vue').DefineComponent<{
414
414
  onCancel?: ((...args: any[]) => any) | undefined;
415
415
  "onUpdate:model-value"?: ((...args: any[]) => any) | undefined;
416
416
  }, {
417
- formId: Ref<string>;
418
- formName: Ref<string>;
419
- formSource: Ref<DataRecord>;
420
- formInstance: Ref<any>;
421
- formColumns: Ref<number>;
417
+ formId: import('vue').Ref<string>;
418
+ formName: import('vue').Ref<string>;
419
+ formSource: import('vue').Ref<DataRecord>;
420
+ formInstance: import('vue').Ref<any>;
421
+ formColumns: import('vue').Ref<number>;
422
422
  formRules: import('vue').ComputedRef<Record<string, any>>;
423
- formCollspased: Ref<boolean>;
423
+ formCollspased: import('vue').Ref<boolean>;
424
424
  formActiosSpan: import('vue').ComputedRef<number>;
425
425
  formItems: import('vue').ComputedRef<import('@gopowerteam/form-render').FormItemOptions<any>[]>;
426
426
  toggleFormCollapsed: () => boolean;
@@ -431,7 +431,7 @@ export declare const TableRender: import('vue').DefineComponent<{
431
431
  validate: () => any;
432
432
  onSubmitSuccess: () => void;
433
433
  openCollapsedDialog: () => void;
434
- modalInstance: Ref<any>;
434
+ modalInstance: import('vue').Ref<any>;
435
435
  }, {}, {}, {}, {
436
436
  footer: boolean;
437
437
  layout: "horizontal" | "vertical";
@@ -450,8 +450,8 @@ export declare const TableRender: import('vue').DefineComponent<{
450
450
  onTableChange: (data: TableData[], { type }: TableChangeExtra) => void;
451
451
  renders: {
452
452
  renderTableForm: (() => import("vue/jsx-runtime").JSX.Element) | (() => undefined);
453
- renderTableActions: () => JSX.Element | undefined;
454
- renderTablePagination: () => JSX.Element | undefined;
453
+ renderTableActions: () => (JSX.Element | undefined);
454
+ renderTablePagination: () => (JSX.Element | undefined);
455
455
  };
456
456
  tableSelection: {
457
457
  selectedRowKeys: Ref<(string | number)[]>;
@@ -508,11 +508,11 @@ export declare const TableRender: import('vue').DefineComponent<{
508
508
  };
509
509
  selection: {
510
510
  type: PropType<"radio" | "checkbox" | {
511
- type: 'radio' | 'checkbox';
512
- width?: number | undefined;
513
- title?: string | undefined;
514
- fixed?: boolean | undefined;
515
- selectable?: ((record: any) => boolean) | undefined;
511
+ type: "radio" | "checkbox";
512
+ width?: number;
513
+ title?: string;
514
+ fixed?: boolean;
515
+ selectable?: (record: any) => boolean;
516
516
  }>;
517
517
  required: false;
518
518
  };
@@ -529,7 +529,7 @@ export declare const TableRender: import('vue').DefineComponent<{
529
529
  required: false;
530
530
  };
531
531
  checkboxRows: {
532
- type: PropType<Record<string, any>[]>;
532
+ type: PropType<Array<Record<string, any>>>;
533
533
  required: false;
534
534
  };
535
535
  exportable: {
@@ -549,10 +549,10 @@ export declare const TableRender: import('vue').DefineComponent<{
549
549
  default: string;
550
550
  };
551
551
  pageable: {
552
- type: PropType<boolean | (RequestPlugin & PageableOptions) | {
552
+ type: PropType<(RequestPlugin & PageableOptions) | {
553
553
  index: number;
554
554
  size: number;
555
- } | "client" | "server">;
555
+ } | boolean | "client" | "server">;
556
556
  required: false;
557
557
  default: undefined;
558
558
  };
@@ -21,7 +21,7 @@ declare const _default: import('vue').DefineComponent<{
21
21
  default: boolean;
22
22
  };
23
23
  exclude: {
24
- type: PropType<string[]>;
24
+ type: PropType<Array<string>>;
25
25
  default: () => never[];
26
26
  };
27
27
  layout: {
@@ -52,7 +52,7 @@ declare const _default: import('vue').DefineComponent<{
52
52
  default: boolean;
53
53
  };
54
54
  exclude: {
55
- type: PropType<string[]>;
55
+ type: PropType<Array<string>>;
56
56
  default: () => never[];
57
57
  };
58
58
  layout: {