tm-table 1.1.13 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +215 -31
- package/dist/vue2/tm-table.css +1 -1
- package/dist/vue2/tm-table.es.js +1063 -859
- package/dist/vue2/tm-table.umd.js +1 -1
- package/dist/vue3/tm-table.css +1 -1
- package/dist/vue3/tm-table.es.js +1664 -1441
- package/dist/vue3/tm-table.umd.js +1 -1
- package/package.json +44 -44
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(u,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue"),require("sortablejs")):typeof define=="function"&&define.amd?define(["exports","vue","sortablejs"],e):(u=typeof globalThis!="undefined"?globalThis:u||self,e(u.TmTable={},u.Vue,u.Sortable))})(this,function(u,e,g){"use strict";var Tl=Object.defineProperty,wl=Object.defineProperties;var zl=Object.getOwnPropertyDescriptors;var R=Object.getOwnPropertySymbols;var se=Object.prototype.hasOwnProperty,ne=Object.prototype.propertyIsEnumerable;var ie=(u,e,g)=>e in u?Tl(u,e,{enumerable:!0,configurable:!0,writable:!0,value:g}):u[e]=g,b=(u,e)=>{for(var g in e||(e={}))se.call(e,g)&&ie(u,g,e[g]);if(R)for(var g of R(e))ne.call(e,g)&&ie(u,g,e[g]);return u},B=(u,e)=>wl(u,zl(e));var oe=(u,e)=>{var g={};for(var _ in u)se.call(u,_)&&e.indexOf(_)<0&&(g[_]=u[_]);if(u!=null&&R)for(var _ of R(u))e.indexOf(_)<0&&ne.call(u,_)&&(g[_]=u[_]);return g};const _={mini:"small",small:"small",default:"default",large:"large"},D=t=>_[t]||_.default,T=()=>"default",ae={"zh-CN":{today:"今天",yesterday:"昨天",last7days:"最近7天",last30days:"最近30天",thisMonth:"本月",lastMonth:"上月",checkAll:"全选",search:"搜索",query:"查询",reset:"重置",columnSetting:"列设置",refresh:"刷新",cancel:"取消",fixedLeft:"固定在左侧",fixedRight:"固定在右侧",top:"置顶",restoreDefault:"恢复默认",saveAndApply:"保存并应用",startDate:"开始日期",endDate:"结束日期",all:"全选",SelectableFields:"可选择字段",fixedColumns:"固定列",leftmost:"左侧最多",rightmost:"右侧最多",items:"项",accurateSearchTips:"每行一个,支持多个值",accurateSearchPlaceholder:"精确搜索,一行一项",selectPlaceholder:"请选择",clear:"清空",saveSuccess:"保存成功",cancelRightFixed:"取消右侧固定",rightFixed:"固定到右侧",cancelLeftFixed:"取消左侧固定",leftFixed:"固定到左侧",cancelTop:"取消置顶",copySuccess:"复制成功",copyFailed:"复制失败"},"en-US":{today:"Today",yesterday:"Yesterday",last7days:"Last 7 days",last30days:"Last 30 days",thisMonth:"This month",lastMonth:"Last month",checkAll:"Check all",search:"Search",query:"Search",reset:"Reset",columnSetting:"Column Setting",refresh:"Refresh",cancel:"Cancel",fixedLeft:"Fixed left",fixedRight:"Fixed right",top:"Top",restoreDefault:"Restore default",saveAndApply:"Save and apply",startDate:"Start date",endDate:"End date",all:"All",SelectableFields:"Fields",fixedColumns:"Fixed columns",leftmost:"Leftmost",rightmost:"Rightmost",items:"item(s)",accurateSearchTips:"One per line, supporting multiple values",accurateSearchPlaceholder:"Accurate search, one per line",selectPlaceholder:"Please select",clear:"Clear",saveSuccess:"Successfully saved",cancelRightFixed:"Cancel right fixed",rightFixed:"Fixed to right",cancelLeftFixed:"Cancel left fixed",leftFixed:"Fixed to left",cancelTop:"Cancel top",copySuccess:"Copy successfully",copyFailed:"Copy failed"}};let N={value:"zh-CN"};N=e.ref("zh-CN");const re=t=>{var s;return((s=ae[N.value])==null?void 0:s[t])||t},M=t=>{N.value=t},w=()=>({t:re,setLang:M,currentLang:N}),y=(t,s)=>{const l=t.__vccOpts||t;for(const[o,i]of s)l[o]=i;return l},ce=!1,de=!0,P="modelValue",he="update:modelValue",ue={name:"TmSelectFilter",props:{[P]:{type:[String,Number,Array],default:""},field:{type:[String,Number],default:""},options:{type:[Array,Function],default:()=>[]},labelOptions:{type:Array,default:()=>[]},props:{type:Object,default:()=>({label:"label",value:"value"})},filterable:{type:Boolean,default:!0},clearable:{type:Boolean,default:!0},collapseTags:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},showCheckAll:{type:Boolean,default:!0},placeholder:{type:String,default:""}},data(){return{t:w().t,isVue2:ce,isVue3:de,getDefaultSize:T,optionsList:[],loading:!1,indeterminate:!1,checkAll:!1,activedSelect:""}},computed:{computedValue:{get(){return this[P]},set(t){this.$emit(he,t),this.$emit("change",t)}},fieldValue:{get(){return this.field},set(t){this.$emit("field-change",t)}},propMap(){return{label:this.props.label||"label",value:this.props.value||"value"}}},watch:{[P](t){!this.multiple||!this.showCheckAll||(t.length===0?(this.checkAll=!1,this.indeterminate=!1):t.length===this.optionsList.length?(this.checkAll=!0,this.indeterminate=!1):this.indeterminate=!0)}},created(){this.initOptions()},methods:{async initOptions(){if(Array.isArray(this.options))this.optionsList=this.options;else if(typeof this.options=="function")try{this.loading=!0;const t=await this.options();Array.isArray(t)&&(this.optionsList=t)}catch(t){console.error(t)}finally{this.loading=!1}},handleCheckAll(t){this.indeterminate=!1;let s=[];t&&(s=this.optionsList.map(l=>l[this.propMap.value])),this.computedValue=s},setActivedSelect(t){this.activedSelect=t}}},me={key:0,class:"check-all-option"};function pe(t,s,l,o,i,n){const a=e.resolveComponent("el-option"),h=e.resolveComponent("el-select"),c=e.resolveComponent("el-checkbox");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["advanced-select",{hasField:l.labelOptions&&l.labelOptions.length>0}])},[l.labelOptions&&l.labelOptions.length>0?(e.openBlock(),e.createBlock(h,{key:0,size:i.getDefaultSize(),class:e.normalizeClass(["field-select",`field-select--${i.isVue2?"v2":"v3"}`]),modelValue:n.fieldValue,"onUpdate:modelValue":s[0]||(s[0]=d=>n.fieldValue=d),onFocus:s[1]||(s[1]=d=>n.setActivedSelect("left")),style:e.normalizeStyle(`z-index:${i.activedSelect==="left"?2:0}`)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.labelOptions,d=>(e.openBlock(),e.createBlock(a,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["size","class","modelValue","style"])):e.createCommentVNode("",!0),e.createVNode(h,e.mergeProps({ref:"select",class:["select",`select--${i.isVue3?"v3":"v2"}`],onFocus:s[4]||(s[4]=d=>n.setActivedSelect("right")),style:`z-index:${i.activedSelect==="right"?2:0}`,modelValue:n.computedValue,"onUpdate:modelValue":s[5]||(s[5]=d=>n.computedValue=d)},B(b({},t.$attrs),{size:i.getDefaultSize(),filterable:l.filterable,clearable:l.clearable,collapseTags:l.collapseTags,multiple:l.multiple,placeholder:l.placeholder,loading:i.loading}),e.toHandlers(i.isVue2?t.$listeners:{}),{loading:i.loading}),{header:e.withCtx(()=>[i.isVue3&&l.multiple&&l.showCheckAll?(e.openBlock(),e.createBlock(c,{key:0,modelValue:i.checkAll,"onUpdate:modelValue":s[3]||(s[3]=d=>i.checkAll=d),indeterminate:i.indeterminate,size:i.getDefaultSize(),onChange:n.handleCheckAll,style:{width:"100%",height:"20px","padding-left":"10px"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("all")),1)]),_:1},8,["modelValue","indeterminate","size","onChange"])):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[i.isVue2&&l.multiple&&l.showCheckAll?(e.openBlock(),e.createElementBlock("div",me,[e.createVNode(c,{style:{width:"100%"},modelValue:i.checkAll,"onUpdate:modelValue":s[2]||(s[2]=d=>i.checkAll=d),indeterminate:i.indeterminate,size:i.getDefaultSize(),onChange:n.handleCheckAll},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("all")),1)]),_:1},8,["modelValue","indeterminate","size","onChange"])])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.optionsList,d=>(e.openBlock(),e.createBlock(a,{key:d[n.propMap.value],label:d[n.propMap.label],value:d[n.propMap.value],disabled:d.disabled},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"option",{item:d},()=>[e.createTextVNode(e.toDisplayString(d[n.propMap.label]),1)],!0)]),_:2},1032,["label","value","disabled"]))),128))]),_:3},16,["class","style","modelValue","loading"])],2)}const I=y(ue,[["render",pe],["__scopeId","data-v-467dcdd3"]]),fe={name:"BaseIcon",props:{path:{type:String},size:{type:[String,Number]},color:{type:String}},methods:{handleClick(){}}},ge=["width","height"],be=["d"];function ye(t,s,l,o,i,n){return e.openBlock(),e.createElementBlock("i",{class:"tm-icon",onClick:s[0]||(s[0]=(...a)=>n.handleClick&&n.handleClick(...a))},[(e.openBlock(),e.createElementBlock("svg",{width:l.size,height:l.size,style:e.normalizeStyle({color:l.color}),viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:l.path},null,8,be)],12,ge))])}const Ce=y(fe,[["render",ye],["__scopeId","data-v-1c30ca93"]]),S=Object.entries({menu:"M160 448a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32zm448 0a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32zM160 896a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32zm448 0a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32z",more:"M76.92892277 192.94787572h864.34120754c23.20379058 0 46.40758118-17.40284367 46.40758118-46.40758118s-23.20379058-46.40758118-46.40758118-46.40758116H76.92892277c-29.00473897 0-46.40758264 17.40284367-46.40758264 46.40758116s23.20379058 46.40758118 46.40758264 46.40758118zM941.27013031 465.59241882H76.92892277c-29.00473897 0-46.40758264 17.40284367-46.40758264 46.40758118s23.20379058 46.40758118 46.40758264 46.40758118h864.34120754c23.20379058 0 46.40758118-17.40284367 46.40758118-46.40758118s-23.20379058-46.40758118-46.40758118-46.40758118zM941.27013031 825.25117589H76.92892277c-29.00473897 0-46.40758264 17.40284367-46.40758264 46.40758118s23.20379058 46.40758118 46.40758264 46.40758264h864.34120754c23.20379058 0 46.40758118-17.40284367 46.40758118-46.40758264s-23.20379058-46.40758118-46.40758118-46.40758118z",refresh:"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",move:"M238.93333333 102.4a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m409.6 0a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0zM238.93333333 375.46666667a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m409.6 0a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m-409.6 273.06666666a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m409.6 0a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m-341.33333333 204.8a68.26666667 68.26666667 0 1 0 0 136.53333334 68.26666667 68.26666667 0 0 0 0-136.53333334z m341.33333333 68.26666667a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z","column-setting":"M436.05333334 18.36373333a109.22666667 109.22666667 0 0 1 109.22666666 0l345.56586667 199.54346667c33.792 19.52426667 54.61333333 55.56906667 54.61333333 94.54933333V580.26666667h-81.92V312.45653333a27.30666667 27.30666667 0 0 0-13.65333333-23.62026666L504.32 89.2928a27.30666667 27.30666667 0 0 0-27.30666666 0L131.44746667 288.83626667a27.30666667 27.30666667 0 0 0-13.65333333 23.62026666v399.08693334a27.30666667 27.30666667 0 0 0 13.65333333 23.62026666L477.01333334 934.7072a27.30666667 27.30666667 0 0 0 27.30666666 0l54.61333334-31.5392v94.54933333l-13.65333334 7.91893334a109.22666667 109.22666667 0 0 1-109.22666666 0l-345.56586667-199.54346667a109.22666667 109.22666667 0 0 1-54.61333333-94.54933333V312.45653333c0-38.98026667 20.82133333-75.09333333 54.61333333-94.54933333L436.05333334 18.36373333z","fixed-left":"M843.36363653 311.54545478l-53.18181827 1e-8-20.45454521 28.63636347-163.63636435 204.54545479-24.54545391 28.63636347 12.27272695 36.81818175c8.18181826 28.63636347 12.27272695 57.27272695 12.27272696 85.90909042 0 32.72727305-4.09090869 61.36363652-16.36363565 90-4.09090869 16.36363653-12.27272695 32.72727306-24.54545479 49.09090957l-163.63636347-163.63636347-40.90909131-40.90909132-12.27272695-12.27272695-163.63636348-163.63636347c28.63636347-16.36363653 61.36363652-28.63636347 94.09090869-32.72727305 45-8.18181826 90-4.09090869 134.99999999 8.18181826l36.81818175 12.27272695 28.63636347-24.54545391 204.54545479-163.63636435 28.63636347-16.36363564 0-32.72727305L712.45454521 184.72727305l130.90909132 126.81818173zM941.54545479 327.90909131c0-8.18181826-4.09090869-16.36363653-8.18181826-24.54545478L720.63636348 94.72727305c-12.27272695-16.36363653-36.81818174-12.27272695-49.09090869 4.0909087-20.45454521 28.63636347-28.63636347 65.45454521-28.63636348 98.18181825l0 4.09090869-204.54545478 163.63636436c-110.45454521-36.81818174-233.18181826-16.36363653-327.27272784 61.36363564-8.18181826 8.18181826-12.27272695 16.36363653-12.27272694 24.54545478 0 8.18181826 4.09090869 16.36363653 8.18181825 24.5454548l196.36363653 196.36363652-212.72727305 212.72727216c-4.09090869 4.09090869-8.18181826 12.27272695-8.18181826 20.4545461s4.09090869 16.36363653 8.18181826 20.4545452c12.27272695 12.27272695 32.72727306 12.27272695 45 1e-8L352.45454522 716.54545479l196.36363652 196.36363652c12.27272695 12.27272695 36.81818174 12.27272695 49.09090957-4.09090957C651.09090869 847.45454521 675.63636347 773.81818174 675.63636346 696.09090869c0-36.81818173-4.09090869-73.63636348-16.36363651-106.36363564l163.63636436-204.54545479c36.81818173 0 73.63636348-8.18181826 106.36363564-28.63636347C937.45454519 348.36363653 941.54545478 336.09090869 941.54545479 327.90909131z","fixed-right":"M311.54545479 180.63636347v53.18181827l28.63636347 20.45454521 204.54545479 163.63636436 28.63636347 24.5454539 36.81818174-12.27272695c28.63636347-8.18181826 57.27272695-12.27272695 85.90909043-12.27272695 32.72727305 0 61.36363652 4.09090869 90 16.36363564 16.36363653 4.09090869 32.72727305 12.27272695 49.09090957 24.54545479l-163.63636347 163.63636347-40.90909132 40.90909131-12.27272695 12.27272695-163.63636347 163.63636348c-16.36363653-28.63636347-28.63636347-61.36363652-32.72727305-94.09090869-8.18181826-45-4.09090869-90 8.18181826-135l12.27272695-36.81818174-24.5454539-28.63636347-163.63636436-204.54545479-16.36363564-28.63636347h-32.72727305H184.72727305l126.81818174-130.90909132zM327.90909131 82.45454521c-8.18181826 0-16.36363653 4.09090869-24.54545478 8.18181826L94.72727305 303.36363652c-16.36363653 12.27272695-12.27272695 36.81818174 4.09090869 49.09090869 28.63636347 20.45454521 65.45454521 28.63636347 98.18181826 28.63636348h4.09090869l163.63636436 204.54545478c-36.81818174 110.45454521-16.36363653 233.18181826 61.36363564 327.27272784 8.18181826 8.18181826 16.36363653 12.27272695 24.54545478 12.27272695 8.18181826 0 16.36363653-4.09090869 24.54545479-8.18181826l196.36363653-196.36363653 212.72727216 212.72727305c4.09090869 4.09090869 12.27272695 8.18181826 20.4545461 8.18181827s16.36363653-4.09090869 20.45454521-8.18181827c12.27272695-12.27272695 12.27272695-32.72727305 0-45L716.54545479 671.54545479l196.36363652-196.36363653c12.27272695-12.27272695 12.27272695-36.81818174-4.09090957-49.09090957C847.45454521 372.90909131 773.81818174 348.36363653 696.09090869 348.36363653c-36.81818174 0-73.63636348 4.09090869-106.36363564 16.36363652l-204.54545479-163.63636436c0-36.81818174-8.18181826-73.63636348-28.63636347-106.36363564C348.36363653 86.54545479 336.09090869 82.45454521 327.90909131 82.45454521z",upload:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-578.304V704h-64V247.296L237.248 490.048 192 444.8 508.8 128l316.8 316.8-45.312 45.248z",download:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-253.696 236.288-236.352 45.248 45.248L508.8 704 192 387.2l45.248-45.248L480 584.704V128h64z",delete:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32",copy:"M128 320v576h576V320zm-32-64h640a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32M960 96v704a32 32 0 0 1-32 32h-96v-64h64V128H384v64h-64V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32M256 672h320v64H256zm0-192h320v64H256z"}).reduce((t,[s,l])=>{const o=`${s}Icon`,i={name:o,props:{path:{type:String,default:l},size:{type:[String,Number]},color:{type:String}},render(n){return e.h(Ce,this.$props)}};return i.install=n=>{n.component(o,i)},t[s]=i,t},{}),ke=S.menu,Ve=S.refresh,xe=S.move;S["column-setting"];const _e=S.more,Se=S["fixed-left"],Te=S["fixed-right"],we=S.upload,ze=S.download,Be=S.delete,te=S.copy,{t:v}=w(),Fe=!1,Le=!0,Ee={name:"TmEllipsisText",components:{CopyIcon:te},props:{text:{type:String,required:!0},width:{type:[String,Number],default:"auto"},maxWidth:{type:[String,Number],default:"100%"},lines:{type:Number,default:1},showTooltip:{type:Boolean,default:!0},lineHeight:{type:[String,Number]},copyable:{type:Boolean,default:!1}},data(){return{isVue2:Fe,isVue3:Le,isOverflow:!1,currentLines:1,resizeObserver:null}},computed:{tooltipDisabled(){return!this.showTooltip||!this.isOverflow},textStyle(){const t=typeof this.width=="number"?`${this.width}px`:this.width,s=typeof this.maxWidth=="number"?`${this.maxWidth}px`:this.maxWidth;return{width:t,maxWidth:s,lineHeight:this.lineHeight,display:"-webkit-inline-box",overflow:"hidden",WebkitBoxOrient:"vertical",WebkitLineClamp:this.lines}}},mounted(){this.checkOverflow(),this.setupResizeObserver()},beforeDestroy(){this.cleanupResizeObserver()},beforeUnmount(){this.cleanupResizeObserver()},watch:{text(){this.$nextTick(this.checkOverflow)}},methods:{checkOverflow(){this.$refs.textEl&&this.$nextTick(()=>{this.$nextTick(()=>{this.performOverflowCheck()})})},performOverflowCheck(){var d;const t=this.$refs.textEl;if(!t)return;const s=getComputedStyle(t);if(!s.width||s.width==="0px"){this.$nextTick(()=>{this.performOverflowCheck()});return}const l=t.scrollHeight,o=t.scrollWidth,i=t.clientHeight,n=t.clientWidth,a=1,h=l>i+a,c=o>n+a;if(h||c){this.isOverflow=!0;const p=parseFloat(s.lineHeight)||16;this.currentLines=Math.ceil(l/p)}else{const p=t.getBoundingClientRect(),V=(d=t.parentElement)==null?void 0:d.getBoundingClientRect();if(V){const x=p.height>V.height||p.width>V.width;this.isOverflow=x}else this.isOverflow=!1;this.currentLines=1}},setupResizeObserver(){window.ResizeObserver&&this.$nextTick(()=>{try{this.resizeObserver=new ResizeObserver(()=>{this.checkOverflow()});const t=this.$el;t&&t instanceof Element&&this.resizeObserver.observe(t)}catch(t){console.warn("Failed to setup ResizeObserver:",t)}})},cleanupResizeObserver(){if(this.resizeObserver)try{this.resizeObserver.disconnect()}catch(t){console.warn("Failed to disconnect ResizeObserver:",t)}finally{this.resizeObserver=null}},handleCopy(){navigator.clipboard&&window.isSecureContext?navigator.clipboard.writeText(this.text).then(()=>{this.$message.success(v("copySuccess"))}).catch(()=>{this.fallbackCopy()}):this.fallbackCopy()},fallbackCopy(){const t=document.createElement("textarea");t.value=this.text,t.style.position="fixed",t.style.left="-999999px",t.style.top="-999999px",document.body.appendChild(t),t.focus(),t.select();try{document.execCommand("copy"),this.$message.success(v("copySuccess"))}catch(s){this.$message.error(v("copyFailed"))}document.body.removeChild(t)}}},De={class:"ellipsis-text-container"};function Oe(t,s,l,o,i,n){const a=e.resolveComponent("CopyIcon"),h=e.resolveComponent("el-tooltip");return e.openBlock(),e.createBlock(h,e.mergeProps({disabled:n.tooltipDisabled,content:l.text,effect:"dark",placement:"top"},{[i.isVue2?"open-delay":"show-after"]:300}),{default:e.withCtx(()=>[e.createElementVNode("div",De,[e.createElementVNode("div",{ref:"textEl",class:"ellipsis-text",style:e.normalizeStyle(n.textStyle)},e.toDisplayString(l.text),5),e.createElementVNode("div",{class:e.normalizeClass(["toolbar",{multiline:i.currentLines>1&&l.lines>1}])},[l.copyable?(e.openBlock(),e.createBlock(a,{key:0,class:"icon-item",onClick:n.handleCopy},null,8,["onClick"])):e.createCommentVNode("",!0)],2)])]),_:1},16,["disabled","content"])}const F=y(Ee,[["render",Oe],["__scopeId","data-v-0979131f"]]),Ne=!1,Me=!0,He={name:"TmAdvancedInputFilter",components:{MoreIcon:_e,EllipsisText:F},props:{label:{type:String,default:""},value:{type:String,default:""},field:{type:[String,Number],default:""},placeholder:{type:String,default:""},multiple:{type:Boolean,default:!1},labelOptions:{type:Array,default:()=>[]}},data(){return{t:w().t,isVue3:Me,isVue2:Ne,getDefaultSize:T,getCompatSize:D,exactValue:"",inputValue:"",isExactMode:!1,currentOptionMultiple:!1}},computed:{width(){return this.labelOptions&&this.labelOptions.length||this.label?"305px":"200px"},fieldValue:{get(){return this.field},set(t){this.$emit("field-change",t)}},shouldShowMultiple(){return this.currentOptionMultiple!==null?this.currentOptionMultiple:this.multiple},selectedOption(){return!this.labelOptions||!this.labelOptions.length||!this.field?null:this.labelOptions.find(t=>t.value===this.field)}},watch:{labelOptions:{handler(t){t&&t.length>0&&(this.field||this.$emit("field-change",t[0].value),this.updateCurrentOptionMultiple())},deep:!0,immediate:!0},field:{handler(){this.updateCurrentOptionMultiple()},immediate:!0},isExactMode(t){t?this.$emit("value-change",this.exactValue):this.$emit("value-change",this.inputValue)},exactValue(t){this.$emit("value-change",t)},inputValue(t){this.$emit("value-change",t)},value:{handler(t){this.isExactMode?this.exactValue=t:this.inputValue=t},immediate:!0}},methods:{handlePopoverClose(){document.activeElement&&document.activeElement.blur(),this.isExactMode=!1},handleVisibleChange(t){this.isExactMode=t},handlefieldChange(t){this.$emit("field-change",t),this.updateCurrentOptionMultiple()},updateCurrentOptionMultiple(){const t=this.selectedOption;t&&"multiple"in t?this.currentOptionMultiple=t.multiple:this.currentOptionMultiple=this.multiple},handleExactSearch(){this.$emit("value-change",this.exactValue),this.$emit("search",this.exactValue)},handleClear(){this.exactValue="",this.$emit("value-change","")},handleEnter(){this.$emit("search")}},created(){this.updateCurrentOptionMultiple()}},Ae={key:1,class:"input-label"},Re={class:"popover-content"},Pe={class:"popover-subtitle"},Ie={class:"popover-footer"};function ve(t,s,l,o,i,n){const a=e.resolveComponent("el-option"),h=e.resolveComponent("el-select"),c=e.resolveComponent("EllipsisText"),d=e.resolveComponent("el-input"),p=e.resolveComponent("el-button"),V=e.resolveComponent("MoreIcon"),x=e.resolveComponent("el-popover");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["tm-advanced-input",`tm-advanced-input--${i.isVue3?"v3":"v2"}`]),style:e.normalizeStyle({width:n.width})},[l.labelOptions&&l.labelOptions.length?(e.openBlock(),e.createBlock(h,{key:0,modelValue:n.fieldValue,"onUpdate:modelValue":s[0]||(s[0]=k=>n.fieldValue=k),placeholder:i.t("selectPlaceholder"),style:{width:"100px","flex-shrink":"0"},size:i.getDefaultSize(),class:"left-select",onChange:n.handlefieldChange},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.labelOptions,k=>(e.openBlock(),e.createBlock(a,{key:k.value,label:k.label,value:k.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","size","onChange"])):l.label?(e.openBlock(),e.createElementBlock("div",Ae,[e.createVNode(c,{text:l.label,lines:2},null,8,["text"])])):e.createCommentVNode("",!0),e.createVNode(d,{modelValue:i.inputValue,"onUpdate:modelValue":s[2]||(s[2]=k=>i.inputValue=k),size:i.getDefaultSize(),placeholder:l.placeholder,onKeyup:e.withKeys(n.handleEnter,["enter","native"]),clearable:"",class:e.normalizeClass(["right-input",{"has-label":l.labelOptions&&l.labelOptions.length}])},{default:e.withCtx(()=>[n.shouldShowMultiple?(e.openBlock(),e.createBlock(x,e.mergeProps({key:0,slot:"append"},{[i.isVue3?"visible":"value"]:i.isExactMode,placement:"bottom-end",width:260,trigger:"click"},e.toHandlers({[i.isVue3?"update:visible":"input"]:n.handleVisibleChange})),{reference:e.withCtx(()=>[e.createVNode(V,{style:{cursor:"pointer"}})]),default:e.withCtx(()=>[e.createElementVNode("div",Re,[e.createElementVNode("p",Pe,e.toDisplayString(i.t("accurateSearchTips")),1),e.createVNode(d,{size:i.getDefaultSize(),type:"textarea",rows:8,modelValue:i.exactValue,"onUpdate:modelValue":s[1]||(s[1]=k=>i.exactValue=k),placeholder:i.t("accurateSearchPlaceholder"),style:{"font-size":"12px"}},null,8,["size","modelValue","placeholder"]),e.createElementVNode("div",Ie,[e.createVNode(p,{style:{float:"left"},size:i.getCompatSize("mini"),onClick:n.handleClear},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("clear")),1)]),_:1},8,["size","onClick"]),e.createVNode(p,{size:i.getCompatSize("mini"),onClick:n.handlePopoverClose},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("cancel")),1)]),_:1},8,["size","onClick"]),e.createVNode(p,{type:"primary",size:i.getCompatSize("mini"),onClick:n.handleExactSearch},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("search")),1)]),_:1},8,["size","onClick"])])])]),_:1},16)):e.createCommentVNode("",!0)]),_:1},8,["modelValue","size","placeholder","onKeyup","class"])],6)}const W=y(He,[["render",ve],["__scopeId","data-v-6b474dac"]]),{t:C}=w(),We=!1,Ue=!0,je="modelValue",Je={name:"TmAdvancedDateFilter",components:{EllipsisText:F},props:{value:{type:[Array,String,Date],default:()=>null},field:{type:[String,Number],default:""},start:{type:[String,Number],default:""},end:{type:[String,Number],default:""},size:{type:String,default:"mini"},labelOptions:{type:Array,default:()=>[]},label:{type:String,default:""},type:{type:String,default:"daterange",validator:t=>["date","daterange","datetime","datetimerange","year","month","dates","months","years","week","monthrange"].includes(t)},format:{type:String,default:""},startPlaceholder:{type:String,default:void 0},endPlaceholder:{type:String,default:void 0},placeholder:{type:String,default:void 0},rangeSeparator:{type:String,default:"-"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},readonly:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},align:{type:String,default:"left"},popperClass:{type:String,default:""},defaultValue:{type:[Date,Array],default:null},defaultTime:{type:[Date,String,Array],default:null},shortcuts:{type:Array,default:()=>[]},pastOnly:{type:Boolean,default:!1}},computed:{isRangeType(){return["daterange","datetimerange","monthrange"].includes(this.type)},computedStartPlaceholder(){if(this.isRangeType)return this.startPlaceholder!==void 0?this.startPlaceholder:C("startDate")},computedEndPlaceholder(){if(this.isRangeType)return this.endPlaceholder!==void 0?this.endPlaceholder:C("endDate")},computedDatePickerStyle(){const t=this.labelOptions&&this.labelOptions.length>0,s=this.label&&!this.isRangeType&&(!this.labelOptions||this.labelOptions.length===0);return t?"width: 206px":s?"width: 200px":"width: 306px"},computedFormat(){const t="YYYY";return this.format?this.format:this.type==="year"?t:this.type==="month"?`${t}-MM`:this.type==="date"?`${t}-MM-DD`:this.type==="dates"?`${t}-MM-DD`:this.type==="months"?`${t}-MM`:this.type==="years"?t:this.type==="week"?`${t}-MM-WW`:this.type==="datetime"?`${t}-MM-DD HH:mm:ss`:this.type==="datetimerange"?`${t}-MM-DD HH:mm:ss`:this.type==="daterange"?`${t}-MM-DD`:this.type==="monthrange"?`${t}-MM`:""},computedPickerOptions(){const t={};if(this.pastOnly&&(t.disabledDate=s=>s.getTime()>Date.now()),["daterange","datetimerange"].includes(this.type)){const s=this.type==="datetimerange";t.shortcuts=this.shortcuts.length>0?this.shortcuts:[{text:C("today"),onClick(l){const o=new Date,i=new Date;s&&(i.setHours(0,0,0,0),o.setHours(23,59,59,999)),l.$emit("pick",[i,o])}},{text:C("yesterday"),onClick(l){const o=new Date,i=new Date;i.setTime(i.getTime()-3600*1e3*24),o.setTime(o.getTime()-3600*1e3*24),s&&(i.setHours(0,0,0,0),o.setHours(23,59,59,999)),l.$emit("pick",[i,o])}},{text:C("last7days"),onClick(l){const o=new Date,i=new Date;i.setTime(i.getTime()-3600*1e3*24*7),s&&(i.setHours(0,0,0,0),o.setHours(23,59,59,999)),l.$emit("pick",[i,o])}},{text:C("last30days"),onClick(l){const o=new Date,i=new Date;i.setTime(i.getTime()-3600*1e3*24*30),s&&(i.setHours(0,0,0,0),o.setHours(23,59,59,999)),l.$emit("pick",[i,o])}},{text:C("thisMonth"),onClick(l){const o=new Date,i=new Date;i.setDate(1),s&&(i.setHours(0,0,0,0),o.setHours(23,59,59,999)),l.$emit("pick",[i,o])}},{text:C("lastMonth"),onClick(l){const o=new Date,i=new Date;i.setMonth(i.getMonth()-1),i.setDate(1),o.setDate(0),s&&(i.setHours(0,0,0,0),o.setHours(23,59,59,999)),l.$emit("pick",[i,o])}}]}return t},computedShortcuts(){if(!["daterange","datetimerange"].includes(this.type))return[];if(this.shortcuts&&this.shortcuts.length>0)return this.shortcuts;const t=this.type==="datetimerange";return[{text:C("today"),value:()=>{const s=new Date,l=new Date;return t&&(l.setHours(0,0,0,0),s.setHours(23,59,59,999)),[l,s]}},{text:C("yesterday"),value:()=>{const s=new Date,l=new Date;return l.setTime(l.getTime()-3600*1e3*24),s.setTime(s.getTime()-3600*1e3*24),t&&(l.setHours(0,0,0,0),s.setHours(23,59,59,999)),[l,s]}},{text:C("last7days"),value:()=>{const s=new Date,l=new Date;return l.setTime(l.getTime()-3600*1e3*24*7),t&&(l.setHours(0,0,0,0),s.setHours(23,59,59,999)),[l,s]}},{text:C("last30days"),value:()=>{const s=new Date,l=new Date;return l.setTime(l.getTime()-3600*1e3*24*30),t&&(l.setHours(0,0,0,0),s.setHours(23,59,59,999)),[l,s]}},{text:C("thisMonth"),value:()=>{const s=new Date,l=new Date;return l.setDate(1),t&&(l.setHours(0,0,0,0),s.setHours(23,59,59,999)),[l,s]}},{text:C("lastMonth"),value:()=>{const s=new Date,l=new Date;return l.setMonth(l.getMonth()-1),l.setDate(1),s.setDate(0),t&&(l.setHours(0,0,0,0),s.setHours(23,59,59,999)),[l,s]}}]},computedDisabledDate(){return this.pastOnly?t=>t.getTime()>Date.now():null},computedDefaultTime(){let t=this.defaultTime;if(this.type==="datetimerange"&&!this.defaultTime&&(t=["00:00:00","23:59:59"]),this.isVue2)return t;if(t){if(this.type==="datetimerange"&&Array.isArray(t))return t.map(s=>{if(typeof s=="string"){const l=new Date,[o,i,n]=s.split(":").map(Number);return new Date(l.getFullYear(),l.getMonth(),l.getDate(),o,i,n||0)}return s});if(this.type==="datetime"&&typeof t=="string"){const s=new Date,[l,o,i]=t.split(":").map(Number);return new Date(s.getFullYear(),s.getMonth(),s.getDate(),l,o,i||0)}return t}},dateValue(){return this.isRangeType?this.start||this.end?[this.start,this.end]:this.value:this.value},fieldValue:{get(){return this.field},set(t){this.$emit("field-change",t)}}},data(){return{t:C,isVue2:We,isVue3:Ue,getDefaultSize:T,valueField:je}},methods:{handleDateChange(t){this.isRangeType?(this.$emit("value-change",t),t&&Array.isArray(t)&&t.length===2?(this.$emit("start-change",t),this.$emit("end-change",t)):(this.$emit("start-change",[]),this.$emit("end-change",[]))):this.$emit("value-change",t)},handleBlur(t){this.$emit("blur",t)},handleFocus(t){this.$emit("focus",t)}},watch:{labelOptions:{handler(t){t&&t.length>0&&!this.field&&this.$emit("field-change",t[0].value)},deep:!0,immediate:!0}}},Ke={key:1,class:"date-label"};function Qe(t,s,l,o,i,n){const a=e.resolveComponent("el-option"),h=e.resolveComponent("el-select"),c=e.resolveComponent("EllipsisText"),d=e.resolveComponent("el-date-picker");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["tm-date-picker",[`tm-date-picker--${i.isVue3?"v3":"v2"}`,{"has-select":l.labelOptions&&l.labelOptions.length>0,"has-label":l.label&&!n.isRangeType&&(!l.labelOptions||l.labelOptions.length===0)}]])},[l.labelOptions&&l.labelOptions.length>0?(e.openBlock(),e.createBlock(h,{key:0,modelValue:n.fieldValue,"onUpdate:modelValue":s[0]||(s[0]=p=>n.fieldValue=p),size:i.getDefaultSize(),style:{width:"100px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.labelOptions,p=>(e.openBlock(),e.createBlock(a,{key:p.value,label:p.label,value:p.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","size"])):l.label?(e.openBlock(),e.createElementBlock("div",Ke,[e.createVNode(c,{text:l.label,lines:2},null,8,["text"])])):e.createCommentVNode("",!0),i.isVue2?(e.openBlock(),e.createBlock(d,{key:2,value:n.dateValue,type:l.type,size:i.getDefaultSize(),"range-separator":l.rangeSeparator,"start-placeholder":n.computedStartPlaceholder,"end-placeholder":n.computedEndPlaceholder,placeholder:l.placeholder,"picker-options":n.computedPickerOptions,style:e.normalizeStyle(n.computedDatePickerStyle),format:n.computedFormat,"value-format":n.computedFormat,disabled:l.disabled,clearable:l.clearable,readonly:l.readonly,editable:l.editable,align:l.align,"popper-class":l.popperClass,"default-value":l.defaultValue,"default-time":n.computedDefaultTime,onInput:n.handleDateChange,onChange:n.handleDateChange,onBlur:n.handleBlur,onFocus:n.handleFocus},null,8,["value","type","size","range-separator","start-placeholder","end-placeholder","placeholder","picker-options","style","format","value-format","disabled","clearable","readonly","editable","align","popper-class","default-value","default-time","onInput","onChange","onBlur","onFocus"])):(e.openBlock(),e.createBlock(d,{key:3,"model-value":n.dateValue,type:l.type,size:i.getDefaultSize(),"range-separator":l.rangeSeparator,"start-placeholder":n.computedStartPlaceholder,"end-placeholder":n.computedEndPlaceholder,placeholder:l.placeholder,shortcuts:n.computedShortcuts,"disabled-date":n.computedDisabledDate,style:e.normalizeStyle(n.computedDatePickerStyle),format:n.computedFormat,"value-format":n.computedFormat,disabled:l.disabled,clearable:l.clearable,readonly:l.readonly,editable:l.editable,teleported:!1,"popper-class":l.popperClass,"default-value":l.defaultValue,"default-time":n.computedDefaultTime,"onUpdate:modelValue":n.handleDateChange,onChange:n.handleDateChange,onBlur:n.handleBlur,onFocus:n.handleFocus},null,8,["model-value","type","size","range-separator","start-placeholder","end-placeholder","placeholder","shortcuts","disabled-date","style","format","value-format","disabled","clearable","readonly","editable","popper-class","default-value","default-time","onUpdate:modelValue","onChange","onBlur","onFocus"]))],2)}const U=y(Je,[["render",Qe],["__scopeId","data-v-7d46d46b"]]),qe=!1,Ye={name:"TmCascaderFilter",props:{value:{type:[String,Number,Array],default:""},options:{type:[Array,Function],default:()=>[]},props:{type:Object,default:()=>({label:"label",value:"value",children:"children",expandTrigger:"hover"})},filterable:{type:Boolean,default:!0},clearable:{type:Boolean,default:!0},collapseTags:{type:Boolean,default:!0},collapseTagsTooltip:{type:Boolean,default:!0},placeholder:{type:String,default:""}},data(){return{isVue2:qe,getDefaultSize:T,selectedValue:this.value,optionsList:[],loading:!1}},computed:{propMap(){return{label:this.props.label||"label",value:this.props.value||"value",children:this.props.children||"children"}},cascaderProps(){return B(b({},this.props),{expandTrigger:this.props.expandTrigger||"hover"})}},watch:{value:{immediate:!0,handler(t){this.selectedValue=t}},options:{immediate:!0,handler(t){this.initOptions(t)}},selectedValue(t){this.$emit("input",t),this.$emit("change",t)}},methods:{async initOptions(t){if(typeof t=="function")try{this.loading=!0;const s=await t();Array.isArray(s)&&(this.optionsList=s)}catch(s){console.error(s)}finally{this.loading=!1}else Array.isArray(t)&&(this.optionsList=t)}}};function Ge(t,s,l,o,i,n){const a=e.resolveComponent("el-cascader");return e.openBlock(),e.createBlock(a,e.mergeProps({ref:"cascader",class:["tm-cascader",`tm-cascader--${i.isVue2?"v2":"v3"}`],modelValue:i.selectedValue,"onUpdate:modelValue":s[0]||(s[0]=h=>i.selectedValue=h),style:{width:"200px"}},B(b({},t.$attrs),{size:i.getDefaultSize(),filterable:l.filterable,clearable:l.clearable,collapseTags:l.collapseTags,collapseTagsTooltip:l.collapseTagsTooltip,props:n.cascaderProps,placeholder:l.placeholder,options:i.optionsList,loading:i.loading}),e.toHandlers(i.isVue2?t.$listeners:{})),{default:e.withCtx(({node:h,data:c})=>[e.renderSlot(t.$slots,"default",{node:h,data:c},()=>[e.createElementVNode("span",null,e.toDisplayString(c[n.propMap.label]),1)])]),_:3},16,["class","modelValue"])}const j=y(Ye,[["render",Ge]]),Xe=!1,Ze=!0,$e={name:"TmRadioFilter",props:{value:{type:[String,Number],default:""},options:{type:[Array,Function],default:()=>[]},props:{type:Object,default:()=>({label:"label",value:"value"})},size:{type:String,default:"mini"},width:{type:[String,Number],default:200}},data(){return{isVue2:Xe,isVue3:Ze,getDefaultSize:T,selectedValue:this.value,optionsList:[],loading:!1}},computed:{propMap(){return{label:this.props.label||"label",value:this.props.value||"value"}},hasWideOptions(){return this.optionsList.length>4},calculateItemWidth(){if(!this.optionsList.length)return{};const s=`${(this.hasWideOptions?305:200)/this.optionsList.length}px`;return{width:s,flex:`0 0 ${s}`}}},watch:{value:{immediate:!0,handler(t){this.selectedValue=t}},options:{immediate:!0,handler(t){this.$slots.default||this.initOptions(t)}},selectedValue(t){this.$emit("input",t),this.$emit("change",t)}},methods:{async initOptions(t){if(typeof t=="function")try{this.loading=!0;const s=await t();Array.isArray(s)&&(this.optionsList=s)}catch(s){console.error(s)}finally{this.loading=!1}else Array.isArray(t)&&(this.optionsList=t)}}};function et(t,s,l,o,i,n){const a=e.resolveComponent("el-radio-button"),h=e.resolveComponent("el-radio-group");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["tm-radio",{"wide-mode":n.hasWideOptions,"tm-radio--v3":i.isVue3,"tm-radio--v2":i.isVue2}])},[e.createVNode(h,e.mergeProps({ref:"radioGroup",modelValue:i.selectedValue,"onUpdate:modelValue":s[0]||(s[0]=c=>i.selectedValue=c)},B(b({},t.$attrs),{size:i.getDefaultSize()}),e.toHandlers(i.isVue2?t.$listeners:{})),{default:e.withCtx(()=>[t.$slots.default?e.renderSlot(t.$slots,"default",{key:0},void 0,!0):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(i.optionsList,c=>(e.openBlock(),e.createBlock(a,e.mergeProps({ref_for:!0},{[i.isVue3?"value":"label"]:c[n.propMap.value],disabled:c.disabled,style:n.calculateItemWidth},{key:c[n.propMap.value]}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"option",{item:c},()=>[e.createTextVNode(e.toDisplayString(c[n.propMap.label]),1)],!0)]),_:2},1040))),128))]),_:3},16,["modelValue"])],2)}const J=y($e,[["render",et],["__scopeId","data-v-61fed13d"]]),tt=!1,lt=!0,it={name:"TmCheckboxFilter",props:{value:{type:Array,default:()=>[]},options:{type:[Array,Function],default:()=>[]},props:{type:Object,default:()=>({label:"label",value:"value"})},size:{type:String,default:"mini"},width:{type:[String,Number],default:200}},data(){return{isVue2:tt,isVue3:lt,getDefaultSize:T,selectedValue:this.value||[],optionsList:[],loading:!1}},computed:{propMap(){return{label:this.props.label||"label",value:this.props.value||"value"}},hasWideOptions(){return this.optionsList.length>4},calculateItemWidth(){if(!this.optionsList.length)return{};const t=Math.ceil(this.optionsList.length/(this.hasWideOptions?6:4)),s=Math.ceil(this.optionsList.length/t),o=`${(this.hasWideOptions?305:200)/s}px`;return{width:o,flex:`0 0 ${o}`}}},watch:{value:{immediate:!0,handler(t){this.selectedValue=t||[]}},options:{immediate:!0,handler(t){this.$slots.default||this.initOptions(t)}},selectedValue(t){this.$emit("input",t),this.$emit("change",t)}},methods:{async initOptions(t){if(typeof t=="function")try{this.loading=!0;const s=await t();Array.isArray(s)&&(this.optionsList=s)}catch(s){console.error(s)}finally{this.loading=!1}else Array.isArray(t)&&(this.optionsList=t)}}};function st(t,s,l,o,i,n){const a=e.resolveComponent("el-checkbox-button"),h=e.resolveComponent("el-checkbox-group");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["tm-checkbox",{"wide-mode":n.hasWideOptions,"tm-checkbox--v3":i.isVue3,"tm-checkbox--v2":i.isVue2}])},[e.createVNode(h,e.mergeProps({ref:"checkboxGroup",modelValue:i.selectedValue,"onUpdate:modelValue":s[0]||(s[0]=c=>i.selectedValue=c)},B(b({},t.$attrs),{size:i.getDefaultSize()}),e.toHandlers(i.isVue2?t.$listeners:{})),{default:e.withCtx(()=>[t.$slots.default?e.renderSlot(t.$slots,"default",{key:0},void 0,!0):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(i.optionsList,c=>(e.openBlock(),e.createBlock(a,e.mergeProps({key:c[n.propMap.value]},{ref_for:!0},{[i.isVue3?"value":"label"]:c[n.propMap.value],disabled:c.disabled,style:n.calculateItemWidth}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"option",{item:c},()=>[e.createTextVNode(e.toDisplayString(c[n.propMap.label]),1)],!0)]),_:2},1040))),128))]),_:3},16,["modelValue"])],2)}const K=y(it,[["render",st],["__scopeId","data-v-b44866b1"]]),nt=!1,ot={name:"TmSwitchFilter",props:{value:{type:Boolean,default:!1},label:{type:String,default:""}},data(){return{isVue2:nt,getDefaultSize:T,switchValue:this.value}},computed:{containerWidthClass(){const t=n=>{if(!n)return 0;let a=0;for(let h=0;h<n.length;h++){const c=n.charAt(h);a+=/[\u4e00-\u9fa5]/.test(c)?2:1}return a},s=t(this.$attrs["active-text"]),l=t(this.$attrs["inactive-text"]),o=t(this.$attrs.label),i=s+l+o;return i>20?"wide-container":i>6?"medium-container":"narrow-container"}},watch:{value:{immediate:!0,handler(t){this.switchValue=t}},switchValue(t){this.$emit("input",t),this.$emit("change",t)}}},at={key:0,class:"switch-label"};function rt(t,s,l,o,i,n){const a=e.resolveComponent("el-switch");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["tm-switch",n.containerWidthClass])},[l.label?(e.openBlock(),e.createElementBlock("span",at,e.toDisplayString(l.label),1)):e.createCommentVNode("",!0),e.createVNode(a,e.mergeProps({ref:"switch",modelValue:i.switchValue,"onUpdate:modelValue":s[0]||(s[0]=h=>i.switchValue=h)},t.$attrs,e.toHandlers(i.isVue2?t.$listeners:{}),{size:i.getDefaultSize()}),null,16,["modelValue","size"])],2)}const Q=y(ot,[["render",rt],["__scopeId","data-v-9e7a342f"]]),ct={name:"DynamicSlot",props:{name:{type:String,required:!0},slotProps:{type:Object,default:()=>({})}},render(t){var i;const s=n=>{var a;return n?(a=n.$slots)==null?void 0:a[this.name]:null},l=n=>{var a,h,c,d;return n?((h=(a=n.$)==null?void 0:a.type)==null?void 0:h.name)==="TmTable"||((d=(c=n.$)==null?void 0:c.type)==null?void 0:d.__name)==="TmTable":!1};let o=s(this.$parent);if(!o){let n=(i=this.$parent)==null?void 0:i.$parent;for(;n&&!o;){if(l(n)){o=s(n);break}n=n.$parent}}return o?typeof o=="function"?o(this.slotProps):o:null}},{t:dt}=w(),ht=!1,ut=!0,mt=["date","daterange","datetime","datetimerange","year","month","dates","months","years","week","monthrange"],pt={name:"TmTableSearch",components:{TmSelect:I,TmAdvancedInput:W,TmAdvancedDate:U,TmCascader:j,TmRadio:J,TmCheckbox:K,TmSwitch:Q,DynamicSlot:ct},props:{disabled:{type:Boolean,default:!1},searchColumns:{type:Array,default:null},searchForm:{type:Object,default:()=>({})}},data(){return{t:dt,isVue2:ht,isVue3:ut,getCompatSize:D,getDefaultSize:T,DATE_TYPES:mt,defaultValues:{}}},computed:{computedSearchForm:{get(){return this.searchForm},set(t){this.$emit("update:search-form",t)}}},mounted(){this.initDefaultValues()},methods:{isDateType(t){return this.DATE_TYPES.includes(t)},hasDefaultSlot(){const t=this.$slots.default;return t?this.isVue2?!!t:t()[0].children.length>0:!1},handleUpdate(t,s,l){const o=this.getFieldValue(t,l);o&&this.$emit("update:search-form",B(b({},this.computedSearchForm),{[o]:s}))},handleUpdateDate(t,s){const l=s||[],o=this.getFieldValue(t,"start"),i=this.getFieldValue(t,"end"),n=this.getFieldValue(t,"value"),a={};o&&(a[o]=l[0]),i&&(a[i]=l[1]),n&&(a[n]=l),this.$emit("update:search-form",b(b({},this.computedSearchForm),a))},getFieldValue(t,s){if(typeof t=="string")return t;if(t.fields&&s in t.fields){const l=t.fields[s];if(typeof l=="string")return l;if(Array.isArray(l))return l[0];if(l&&typeof l=="object")return l.name}},getFieldDefault(t,s){if(t.fields&&s in t.fields){const l=t.fields[s];if(Array.isArray(l)&&l.length>1)return l[1];if(l&&typeof l=="object"&&"default"in l)return l.default}},hasSearchSlot(t){const s="$slots";if(this[s][t])return!0;let o=this.$parent;for(;o;){const i=o[s];if(o.$options.name==="TmTable"&&(i!=null&&i[t]))return!0;o=o.$parent}return!1},initDefaultValues(){if(!this.searchColumns||!this.searchColumns.length)return;const t={};this.searchColumns.forEach(s=>{if(typeof s=="string"||!s.fields)return;const l=this.getFieldValue(s,"value"),o=this.getFieldValue(s,"label");if(s.type==="input"&&s.labelOptions&&s.labelOptions.length>0){const n=s.labelOptions[0];if(o)if(o in this.computedSearchForm)t[o]=this.computedSearchForm[o];else{const a=this.getFieldDefault(s,"label");a!==void 0?t[o]=a:n&&n.value!==void 0&&(t[o]=n.value)}l&&!(l in this.computedSearchForm)&&(t[l]="")}else if(this.isDateType(s.type)&&s.labelOptions&&s.labelOptions.length>0){const n=s.labelOptions[0];if(l&&!(l in this.computedSearchForm)&&(t[l]=[]),o)if(o in this.computedSearchForm)t[o]=this.computedSearchForm[o];else{const a=this.getFieldDefault(s,"label");a!==void 0?t[o]=a:n&&n.value!==void 0&&(t[o]=n.value)}}else if(s.type==="select"&&s.labelOptions&&s.labelOptions.length>0){const n=s.labelOptions[0];if(l&&!(l in this.computedSearchForm)&&(t[l]=s.multiple?[]:""),o)if(o in this.computedSearchForm)t[o]=this.computedSearchForm[o];else{const a=this.getFieldDefault(s,"label");a!==void 0?t[o]=a:n&&n.value!==void 0&&(t[o]=n.value)}}const i=this.getFieldDefault(s,"value");if(l&&i!==void 0&&!(l in this.computedSearchForm)?this.isDateType(s.type)&&!Array.isArray(i)?t[l]=[]:s.type==="checkbox"&&!Array.isArray(i)?t[l]=i?[i]:[]:s.type==="switch"&&typeof i!="boolean"?t[l]=!!i:t[l]=i:l&&!(l in this.computedSearchForm)&&(s.type==="checkbox"?t[l]=[]:s.type==="switch"&&(t[l]=!1)),this.isDateType(s.type)){const n=this.getFieldValue(s,"start"),a=this.getFieldValue(s,"end"),h=this.getFieldDefault(s,"start"),c=this.getFieldDefault(s,"end");n&&h!==void 0&&!(n in this.computedSearchForm)&&(t[n]=h),a&&c!==void 0&&!(a in this.computedSearchForm)&&(t[a]=c)}}),this.defaultValues=t,this.$emit("update:search-form",b(b({},t),this.computedSearchForm))},getSearchForm(){return this.computedSearchForm},handleSearch(){setTimeout(()=>{this.$emit("search",this.computedSearchForm)})},handleReset(){this.$emit("update:search-form",b({},this.defaultValues)),this.$emit("reset")}}},ft={class:"search-content"},gt={class:"search-actions"};function bt(t,s,l,o,i,n){const a=e.resolveComponent("dynamic-slot"),h=e.resolveComponent("tm-advanced-input"),c=e.resolveComponent("tm-advanced-date"),d=e.resolveComponent("tm-select"),p=e.resolveComponent("tm-cascader"),V=e.resolveComponent("tm-radio"),x=e.resolveComponent("tm-checkbox"),k=e.resolveComponent("tm-switch"),L=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["table-search",`table-search--${i.isVue2?"v2":"v3"}`])},[e.createElementVNode("div",ft,[n.hasDefaultSlot()?e.renderSlot(t.$slots,"default",{key:0},void 0,!0):l.searchColumns&&l.searchColumns.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(l.searchColumns,(r,z)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[typeof r=="string"?(e.openBlock(),e.createElementBlock("div",{key:`str-${r}-${z}`,class:"search-item"},[(e.openBlock(),e.createBlock(a,{name:`search-${r}`,"slot-props":{searchForm:l.searchForm},key:r},null,8,["name","slot-props"]))])):(e.openBlock(),e.createElementBlock("div",{key:`obj-${z}`,class:"search-item"},[r.fields?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[n.hasSearchSlot(`search-${n.getFieldValue(r,"value")}`)?(e.openBlock(),e.createBlock(a,{name:`search-${n.getFieldValue(r,"value")}`,"slot-props":{searchForm:l.searchForm,col:r},key:n.getFieldValue(r,"value")},null,8,["name","slot-props"])):(e.openBlock(),e.createElementBlock("div",{style:{display:"flex"},key:n.getFieldValue(r,"value")||`col-${z}`},[r.type==="input"?(e.openBlock(),e.createBlock(h,{key:0,label:r.label,value:n.computedSearchForm[n.getFieldValue(r,"value")],field:n.computedSearchForm[n.getFieldValue(r,"label")],onValueChange:f=>n.handleUpdate(r,f,"value"),onFieldChange:f=>n.handleUpdate(r,f,"label"),multiple:r.multiple,labelOptions:r.labelOptions,placeholder:r.placeholder,onSearch:n.handleSearch},null,8,["label","value","field","onValueChange","onFieldChange","multiple","labelOptions","placeholder","onSearch"])):e.createCommentVNode("",!0),n.isDateType(r.type)?(e.openBlock(),e.createBlock(c,{key:1,type:r.type,label:r.label,value:n.computedSearchForm[n.getFieldValue(r,"value")],field:n.computedSearchForm[n.getFieldValue(r,"label")],start:n.computedSearchForm[n.getFieldValue(r,"start")],end:n.computedSearchForm[n.getFieldValue(r,"end")],onFieldChange:f=>n.handleUpdate(r,f,"label"),onValueChange:f=>n.handleUpdateDate(r,f),onStartChange:f=>n.handleUpdateDate(r,f),onEndChange:f=>n.handleUpdateDate(r,f),labelOptions:r.labelOptions,"start-placeholder":r.startPlaceholder,"end-placeholder":r.endPlaceholder,placeholder:r.placeholder,"range-separator":r.rangeSeparator,disabled:r.disabled,clearable:r.clearable,readonly:r.readonly,editable:r.editable,align:r.align,"popper-class":r.popperClass,"default-value":r.defaultValue,"default-time":r.defaultTime,shortcuts:r.shortcuts,"past-only":r.pastOnly,format:r.format},null,8,["type","label","value","field","start","end","onFieldChange","onValueChange","onStartChange","onEndChange","labelOptions","start-placeholder","end-placeholder","placeholder","range-separator","disabled","clearable","readonly","editable","align","popper-class","default-value","default-time","shortcuts","past-only","format"])):e.createCommentVNode("",!0),r.type==="select"?(e.openBlock(),e.createBlock(d,{key:2,label:r.label,modelValue:n.computedSearchForm[n.getFieldValue(r,"value")],"onUpdate:modelValue":f=>n.computedSearchForm[n.getFieldValue(r,"value")]=f,field:n.computedSearchForm[n.getFieldValue(r,"label")],options:r.options,labelOptions:r.labelOptions,placeholder:r.placeholder,multiple:r.multiple,"show-check-all":r.checkAll,onFieldChange:f=>n.handleUpdate(r,f,"label")},null,8,["label","modelValue","onUpdate:modelValue","field","options","labelOptions","placeholder","multiple","show-check-all","onFieldChange"])):e.createCommentVNode("",!0),r.type==="cascader"?(e.openBlock(),e.createBlock(p,{key:3,modelValue:n.computedSearchForm[n.getFieldValue(r,"value")],"onUpdate:modelValue":f=>n.computedSearchForm[n.getFieldValue(r,"value")]=f,label:r.label,options:r.options,labelOptions:r.labelOptions,props:r.props,placeholder:r.placeholder,"show-check-all":r.checkAll},null,8,["modelValue","onUpdate:modelValue","label","options","labelOptions","props","placeholder","show-check-all"])):e.createCommentVNode("",!0),r.type==="radio"?(e.openBlock(),e.createBlock(V,{key:4,modelValue:n.computedSearchForm[n.getFieldValue(r,"value")],"onUpdate:modelValue":f=>n.computedSearchForm[n.getFieldValue(r,"value")]=f,label:r.label,options:r.options,props:r.props},null,8,["modelValue","onUpdate:modelValue","label","options","props"])):e.createCommentVNode("",!0),r.type==="checkbox"?(e.openBlock(),e.createBlock(x,{key:5,modelValue:n.computedSearchForm[n.getFieldValue(r,"value")],"onUpdate:modelValue":f=>n.computedSearchForm[n.getFieldValue(r,"value")]=f,label:r.label,options:r.options,props:r.props},null,8,["modelValue","onUpdate:modelValue","label","options","props"])):e.createCommentVNode("",!0),r.type==="switch"?(e.openBlock(),e.createBlock(k,{key:6,modelValue:n.computedSearchForm[n.getFieldValue(r,"value")],"onUpdate:modelValue":f=>n.computedSearchForm[n.getFieldValue(r,"value")]=f,"active-text":r.activeText,"inactive-text":r.inactiveText,label:r.label,"active-color":r.activeColor,"inactive-color":r.inactiveColor},null,8,["modelValue","onUpdate:modelValue","active-text","inactive-text","label","active-color","inactive-color"])):e.createCommentVNode("",!0)]))],64)):(e.openBlock(),e.createElementBlock("div",{key:`error-${z}`,class:"search-error-message"}," 缺少 fields 配置,无法渲染此组件 "))]))],64))),256)):e.createCommentVNode("",!0),e.createElementVNode("div",gt,[e.createVNode(L,{type:"primary",size:i.getDefaultSize(),onClick:n.handleSearch},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("query")),1)]),_:1},8,["size","onClick"]),e.createVNode(L,{size:i.getDefaultSize(),onClick:n.handleReset},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("reset")),1)]),_:1},8,["size","onClick"])])])],2)}const q=y(pt,[["render",bt],["__scopeId","data-v-85117d96"]]),yt=!1,Ct={name:"TablePagination",props:{current:{type:Number,default:1},small:{type:Boolean,default:!0},pageSize:{type:Number,default:20},total:{type:Number,default:0}},data(){return{isVue2:yt,getCompatSize:D}},methods:{handleSizeChange(t){this.$emit("size-change",t)},handleCurrentChange(t){this.$emit("current-change",t)}}},kt={class:"tm-pagination"};function Vt(t,s,l,o,i,n){const a=e.resolveComponent("el-pagination");return e.openBlock(),e.createElementBlock("div",kt,[e.createVNode(a,e.mergeProps(t.$attrs,e.toHandlers(i.isVue2?t.$listeners:{}),{style:{"text-align":"right"},"current-page":l.current,"page-size":l.pageSize,total:l.total,"page-sizes":[10,20,50,100,300,500,1e3,2e3],size:i.getCompatSize("mini"),layout:"total, sizes, prev, pager, next, jumper",onSizeChange:n.handleSizeChange,"onUpdate:currentPage":s[0]||(s[0]=h=>t.$emit("update:current",h)),"onUpdate:pageSize":s[1]||(s[1]=h=>t.$emit("update:pageSize",h)),onCurrentChange:n.handleCurrentChange}),null,16,["current-page","page-size","total","size","onSizeChange","onCurrentChange"])])}const xt=y(Ct,[["render",Vt],["__scopeId","data-v-4dbdf6e7"]]),_t={name:"TmTableMenu",props:{size:{type:String,default:"mini"}}},St={size:"small",class:"tm-table-menu",inline:""},Tt={class:"left"},wt={class:"right"};function zt(t,s,l,o,i,n){return e.openBlock(),e.createElementBlock("div",St,[e.createElementVNode("div",Tt,[e.renderSlot(t.$slots,"left",{},void 0,!0)]),e.createElementVNode("div",wt,[e.renderSlot(t.$slots,"right",{},void 0,!0)])])}const Bt=y(_t,[["render",zt],["__scopeId","data-v-579dd2c3"]]),H=t=>t?t.props||{}:{},Y=(t,s)=>{t&&(t.props||(t.props={}),typeof s=="object"&&Object.assign(t.props,s))},A={getTableConfig(t){try{const s=localStorage.getItem(`tm-table-config-${t}`);return Promise.resolve({data:{code:200,data:s}})}catch(s){return Promise.reject(s)}},setTableConfig(t){try{return localStorage.setItem(`tm-table-config-${t.key}`,t.info),Promise.resolve({data:{code:200,message:"success"}})}catch(s){return Promise.reject(s)}}},Ft=t=>A.getTableConfig(t.key),Lt=t=>A.setTableConfig(t),Et=t=>{t&&(typeof t.getTableConfig=="function"&&(A.getTableConfig=t.getTableConfig),typeof t.setTableConfig=="function"&&(A.setTableConfig=t.setTableConfig))},{t:Dt}=w(),Ot=!1,Nt=!0,Mt={formatter:(t,s,l,o)=>[void 0,null,""].includes(l)?"-":l},Ht={name:"TmColumnConfig",components:{MoveIcon:xe,FixedLeftIcon:Se,FixedRightIcon:Te,UploadIcon:we,DownloadIcon:ze,DeleteIcon:Be,MenuIcon:ke,tmEllipsisText:F},props:{columns:{type:Array,default:()=>[]},tableKey:{type:String,default:"",required:!0},defaultColumns:{type:Array,default:()=>[]},maxFixedLeftQuantity:{type:[Number,String],default:void 0},maxFixedRightQuantity:{type:[Number,String],default:void 0},ignoredColumnConfigTypes:{type:Array,default:()=>["selection"]}},data(){return{t:Dt,isVue2:Ot,isVue3:Nt,getDefaultSize:T,getCompatSize:D,buttonType:{link:!0,type:"primary"},afterOpenDelay:{"show-after":300},popoverVisible:!1,keyWord:"",sortedTableColumns:[],tableColumns:[],defaultColumnsConfig:[],columnMap:{},processedColumns:[],placement:"bottom",isDraggingFrozen:!1,isDraggingFrozenRight:!1,sortable:null,isConfigLoaded:!1,columnsCopy:[]}},computed:{filteredSortedTableColumns(){return this.keyWord?this.sortedTableColumns.filter(t=>this.getColumnLabel(t.prop).includes(this.keyWord)):this.sortedTableColumns},showFixedLimitTips(){return this.maxFixedLeftQuantity!==void 0||this.maxFixedRightQuantity!==void 0},isThanMaxFrozen(){return this.maxFixedLeftQuantity===void 0?!1:this.sortedTableColumns.filter(t=>t.fixed==="left").length>=this.maxFixedLeftQuantity},isThanMaxRightFrozen(){return this.maxFixedRightQuantity===void 0?!1:this.sortedTableColumns.filter(t=>t.fixed==="right").length>=this.maxFixedRightQuantity},computedTableKey(){if(this.tableKey)return this.tableKey;if(this.$route&&this.$route.path)return this.$route.path.slice(1).replace(/\//g,"-");throw new Error("tableKey is required")}},watch:{popoverVisible(t){t||this.handlePopoverHide()},columns:{handler(t){t&&t.length>0&&!this.isConfigLoaded&&this.initializeColumnConfig()},immediate:!0},tableColumns:{handler(t){t!=null&&t.length&&(this.initSortedTableColumns(),this.crateSortable(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)))},deep:!0}},methods:{findLastIndex(t,s){for(let l=t.length-1;l>=0;l--)if(s(t[l],l,t))return l;return-1},getColumnLabel(t){return!t||!this.columnMap[t]?t||"":H(this.columnMap[t]).label||t},initializeColumnConfig(){this.defaultColumns&&this.defaultColumns.length>0?this.defaultColumnsConfig=this.defaultColumns:this.processOriginalColumns(),this.loadColumnConfig()},processOriginalColumns(){const t=this.columns||[];let s={};this.defaultColumnsConfig=t.filter(l=>{const o=H(l);return!(!o.prop||this.ignoredColumnConfigTypes.includes(o.type))}).map((l,o)=>{const i=H(l),n=b(b({},Mt),i);Y(l,n),i.prop&&(s[i.prop]=l);const a=i.hasOwnProperty("visible")?i.visible!==!1:!0;return{prop:i.prop,fixed:i.fixed||"",sort:o,cancellable:i.hasOwnProperty("cancellable")?i.cancellable:!0,visible:a}}),this.columnMap=s},loadColumnConfig(){Ft({key:this.computedTableKey}).then(t=>{var l;if(t.data.code!==200)return;let s=JSON.parse(((l=t.data)==null?void 0:l.data)||null)||{};s.columnsConfig&&JSON.stringify(this.defaultColumnsConfig)===JSON.stringify(s.defaultColumnsConfig)?this.tableColumns=s.columnsConfig.map(o=>b({},o)):this.tableColumns=this.defaultColumnsConfig.map(o=>b({},o)),this.processedColumns=this.applyColumnConfig(this.tableColumns),this.isConfigLoaded=!0,this.$emit("complete",{columns:this.processedColumns,isInitialLoad:!0})}).catch(()=>{this.tableColumns=this.defaultColumnsConfig.map(t=>b({},t)),this.processedColumns=this.applyColumnConfig(this.tableColumns),this.isConfigLoaded=!0,this.$emit("complete",{columns:this.processedColumns,isInitialLoad:!0})})},applyColumnConfig(t,s=!1){let l=this.columns.filter(i=>{const n=H(i);return this.ignoredColumnConfigTypes.includes(n.type)}),o=[];return[...t].sort((i,n)=>{const a=i.sort!==void 0?i.sort:1/0,h=n.sort!==void 0?n.sort:1/0;return a-h}).forEach(i=>{if(i.prop){let n=this.columnMap[i.prop];n&&(Y(n,{fixed:i.fixed||void 0,visible:i.visible}),(!s&&i.visible||s)&&o.push(n))}}),l.forEach(i=>{Y(i,{visible:!0})}),[...l,...o]},crateSortable(){const t=this.$refs.sortListRef;if(!t)return;this.sortable&&(this.sortable.destroy(),this.sortable=null);const s=new g(t,{ghostClass:"blue-background-class",animation:150,easing:"cubic-bezier(1, 0, 0, 1)",handle:".row-title",draggable:".sort-item-wrapper",fallbackOnBody:!1,preventOnFilter:!0,removeCloneOnHide:!0,group:"columns",dragClass:"sortable-drag",onStart:({item:l})=>{const o=l.getAttribute("data-prop"),i=this.sortedTableColumns.find(n=>n.prop===o);this.isDraggingFrozen=i&&i.fixed==="left",this.isDraggingFrozenRight=i&&i.fixed==="right",this.draggedItemIndex=Array.from(t.children).indexOf(l),l.classList.add("sortable-drag")},onMove:l=>{const{target:o,related:i}=l;if(!o||!i)return!1;const n=i?i.getAttribute("data-prop"):null,a=n?this.sortedTableColumns.find(d=>d.prop===n):null,h=a&&a.fixed==="left",c=a&&a.fixed==="right";return this.isDraggingFrozen&&!h||this.isDraggingFrozenRight&&!c||!this.isDraggingFrozen&&!this.isDraggingFrozenRight&&(h||c)?(o.classList.add("no-drop-zone"),!1):(document.querySelectorAll(".no-drop-zone").forEach(d=>{d.classList.remove("no-drop-zone")}),!0)},onEnd:({item:l,newIndex:o,oldIndex:i})=>{if(o===void 0||i===void 0||o<0||i<0||o>=this.sortedTableColumns.length||i>=this.sortedTableColumns.length)return;document.querySelectorAll(".no-drop-zone").forEach(V=>{V.classList.remove("no-drop-zone")}),l.classList.remove("sortable-drag");const n=this.sortedTableColumns[i],a=n.fixed==="left",h=n.fixed==="right",c=o>0?this.sortedTableColumns[o-1]:null,d=o<this.sortedTableColumns.length-1?this.sortedTableColumns[o+1]:null;let p=!1;if(a?(c&&c.fixed!=="left"||d&&d.fixed==="right")&&(p=!0):h?(c&&c.fixed!=="right"||d&&d.fixed!=="right")&&(p=!0):(c&&c.fixed==="right"||d&&d.fixed==="left")&&(p=!0),p){this.rollbackSort();return}this.updateSortAfterDrag()}});this.sortable=s},rollbackSort(){this.sortedTableColumns=JSON.parse(JSON.stringify(this.columnsCopy))},updateSortAfterDrag(){const t=this.$refs.sortListRef;if(!t)return;Array.from(t.children||[]).filter(l=>l&&l.dataset&&l.dataset.prop).map(l=>l.dataset.prop).forEach((l,o)=>{this.sortedTableColumns.some(i=>i.prop===l?(i.sort=o,!0):!1)}),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns)},init(){this.tableColumns=Array.isArray(this.tableColumns)?[...this.tableColumns]:Array.isArray(this.defaultColumnsConfig)?[...this.defaultColumnsConfig]:[],this.initSortedTableColumns()},initSortedTableColumns(){this.tableColumns.forEach((t,s)=>{t.sort===void 0&&(t.sort=s)}),this.sortedTableColumns=[...this.tableColumns].sort((t,s)=>t.fixed==="left"&&s.fixed!=="left"?-1:t.fixed!=="left"&&s.fixed==="left"||t.fixed==="right"&&s.fixed!=="right"?1:t.fixed!=="right"&&s.fixed==="right"?-1:t.sort-s.sort)},setPlacement(){const s=this.$refs.operationRef.$el.getBoundingClientRect();(window.innerHeight||document.documentElement.clientHeight)-(s.bottom-window.scrollY)>512?this.placement="bottom":this.placement="left"},handleVisibleChange(t){this.popoverVisible=t},handlePopoverShow(){this.setPlacement(),this.init(),(()=>{try{document.removeEventListener("mouseup",window.sortableGlobalMouseUp),document.removeEventListener("mousemove",window.sortableGlobalMouseMove)}catch(s){}})(),this.$nextTick(()=>{this.crateSortable()})},handlePopoverHide(){this.sortable&&(this.sortable.destroy(),this.sortable=null);try{document.removeEventListener("mouseup",window.sortableGlobalMouseUp),document.removeEventListener("mousemove",window.sortableGlobalMouseMove),typeof g!="undefined"&&g.utils&&(document.removeEventListener("mousemove",g.utils.throttleCall),document.removeEventListener("mouseup",g.utils.throttleCall))}catch(t){}},handleSelectAll(){const t=this.tableColumns.some(s=>!s.visible);this.tableColumns.forEach(s=>{s.cancellable&&(s.visible=t)})},handleRestoreDefault(){this.tableColumns=JSON.parse(JSON.stringify(this.defaultColumnsConfig)),this.sortedTableColumns=[...this.tableColumns].sort((t,s)=>t.sort-s.sort)},canMoveTop(t,s){if(s===0)return!1;if(t.fixed==="left"){const l=this.sortedTableColumns[s-1];return l&&l.fixed==="left"}if(!t.fixed){const l=this.sortedTableColumns[s-1];return l&&l.fixed==="left"?!1:l&&!l.fixed}return t.fixed==="right"},moveTop(t,s){const l=this.sortedTableColumns,o=t.prop;if(t.fixed==="right"&&(t.fixed=""),t.fixed==="left")l.unshift(l.splice(s,1)[0]);else{const i=this.findLastIndex(this.sortedTableColumns,n=>n.fixed==="left");l.splice(i+1,0,l.splice(s,1)[0])}this.updateSortValues(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns),this.$nextTick(()=>{const i=this.$refs.sortListRef;if(i){const n=Array.from(i.children).find(a=>a.dataset&&a.dataset.prop===o);n&&n.scrollIntoView({behavior:"smooth",block:"nearest"})}})},frozenLeftHandle(t){const s=this.sortedTableColumns,l=s.splice(t,1)[0];if(l.fixed=l.fixed==="left"?"":"left",l.fixed==="left"){const o=this.findLastIndex(this.sortedTableColumns,i=>i.fixed==="left");s.splice(o+1,0,l)}else{const o=this.findLastIndex(this.sortedTableColumns,i=>i.fixed==="left");s.splice(o+1,0,l)}this.updateSortValues(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns)},frozenRightHandle(t){const s=this.sortedTableColumns,l=s.splice(t,1)[0];if(l.fixed=l.fixed==="right"?"":"right",l.fixed==="right"){const o=s.findIndex(i=>i.fixed==="right");o===-1?s.push(l):s.splice(o,0,l)}else{const o=s.findIndex(i=>i.fixed==="right");o===-1?s.push(l):s.splice(o,0,l)}this.updateSortValues(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns)},onSave(){var s;this.updateSortValues();const t=(s=this.tableColumns)==null?void 0:s.map(l=>{const o=this.sortedTableColumns.find(h=>h.prop===l.prop);o&&(l.sort=o.sort,l.fixed=o.fixed,l.visible=o.visible);const a=l,{label:i}=a;return oe(a,["label"])});Lt({key:this.computedTableKey,info:JSON.stringify({columnsConfig:t,defaultColumnsConfig:this.defaultColumnsConfig})}).then(l=>{l.data.code===200&&(this.processedColumns=this.applyColumnConfig(t,!0),this.$emit("complete",{columns:this.processedColumns,isInitialLoad:!1}),this.$message.success(this.t("saveSuccess")),this.popoverVisible=!1)})},updateSortValues(){this.sortedTableColumns.forEach((t,s)=>{t.sort=s})}},mounted(){var t;(t=this.tableColumns)!=null&&t.length&&(this.initSortedTableColumns(),this.crateSortable(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)))},beforeDestroy(){this.sortable&&(this.sortable.destroy(),this.sortable=null);try{document.removeEventListener("mouseup",window.sortableGlobalMouseUp),document.removeEventListener("mousemove",window.sortableGlobalMouseMove),typeof g!="undefined"&&g.utils&&(document.removeEventListener("mousemove",g.utils.throttleCall),document.removeEventListener("mouseup",g.utils.throttleCall))}catch(t){}}},At={key:0,class:"container"},Rt={class:"main-container"},Pt={class:"left-content"},It={class:"title"},vt={class:"option-list"},Wt={style:{height:"100%","overflow-y":"auto"}},Ut={class:"right-content"},jt={class:"search-box"},Jt={key:0,class:"tips"},Kt={class:"sort-list",ref:"sortListRef"},Qt=["data-prop"],qt={key:0,class:"sort-item"},Yt={class:"row-title"},Gt={class:"operation-btns"},Xt={class:"footer"},Zt={class:"footer-left"},$t={class:"footer-right"},el={style:{display:"inline-block","margin-left":"10px"}};function tl(t,s,l,o,i,n){const a=e.resolveComponent("el-button"),h=e.resolveComponent("TmEllipsisText"),c=e.resolveComponent("el-checkbox"),d=e.resolveComponent("el-input"),p=e.resolveComponent("MoveIcon"),V=e.resolveComponent("DeleteIcon"),x=e.resolveComponent("el-tooltip"),k=e.resolveComponent("UploadIcon"),L=e.resolveComponent("FixedLeftIcon"),r=e.resolveComponent("FixedRightIcon"),z=e.resolveComponent("MenuIcon"),f=e.resolveComponent("el-popover");return e.openBlock(),e.createBlock(f,e.mergeProps({"popper-class":"column-config-popover"},{[i.isVue3?"visible":"value"]:i.popoverVisible},e.toHandlers({[i.isVue3?"update:visible":"input"]:n.handleVisibleChange}),{width:680,"show-arrow":!1,placement:i.placement,trigger:"click",onShow:n.handlePopoverShow,onHide:n.handlePopoverHide}),{reference:e.withCtx(()=>[e.createElementVNode("div",el,[e.createVNode(x,e.mergeProps({content:i.t("columnSetting")},i.afterOpenDelay,{placement:"top"}),{default:e.withCtx(()=>[e.createVNode(a,{size:i.getDefaultSize(),ref:"operationRef",circle:""},{default:e.withCtx(()=>[e.createVNode(z)]),_:1},8,["size"])]),_:1},16,["content"])])]),default:e.withCtx(()=>[i.popoverVisible?(e.openBlock(),e.createElementBlock("div",At,[e.createElementVNode("div",Rt,[e.createElementVNode("div",Pt,[e.createElementVNode("div",It,[e.createElementVNode("span",null,e.toDisplayString(i.t("SelectableFields"))+"("+e.toDisplayString(i.tableColumns.length)+")",1),e.createVNode(a,e.mergeProps({style:{"margin-left":"10px"}},i.buttonType,{onClick:n.handleSelectAll}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("all")),1)]),_:1},16,["onClick"])]),e.createElementVNode("div",vt,[e.createElementVNode("div",Wt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.tableColumns,(m,E)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[m.prop?(e.openBlock(),e.createElementBlock("div",{style:{width:"110px",display:"inline-block"},key:E+m.prop},[e.createVNode(c,{disabled:!m.cancellable,class:"el-checkbox",modelValue:m.visible,"onUpdate:modelValue":O=>m.visible=O,label:m.prop,value:m.prop},{default:e.withCtx(()=>[e.createVNode(h,{width:"80px",text:n.getColumnLabel(m.prop)},null,8,["text"])]),_:2},1032,["disabled","modelValue","onUpdate:modelValue","label","value"])])):e.createCommentVNode("",!0)],64))),256))])])]),e.createElementVNode("div",Ut,[e.createElementVNode("div",jt,[e.createVNode(d,{size:i.getCompatSize("small"),class:"search-input",clearable:"",placeholder:i.t("search"),modelValue:i.keyWord,"onUpdate:modelValue":s[0]||(s[0]=m=>i.keyWord=m)},null,8,["size","placeholder","modelValue"])]),n.showFixedLimitTips?(e.openBlock(),e.createElementBlock("div",Jt)):e.createCommentVNode("",!0),e.createElementVNode("div",Kt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.filteredSortedTableColumns,(m,E)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sort-item-wrapper",[m.fixed==="left"?"frozen":"",m.fixed==="right"?"frozenRight":"",m.fixed?"":"noFrozen"]]),"data-prop":m.prop,key:m.prop},[m.visible?(e.openBlock(),e.createElementBlock("div",qt,[e.createElementVNode("div",Yt,[e.createVNode(p,{style:{"flex-shrink":"0"}}),e.createVNode(h,{text:n.getColumnLabel(m.prop)},null,8,["text"])]),e.createElementVNode("div",Gt,[m.cancellable?(e.openBlock(),e.createBlock(x,e.mergeProps({key:0,content:i.t("cancel"),placement:"top"},{ref_for:!0},i.afterOpenDelay),{default:e.withCtx(()=>[e.createVNode(a,e.mergeProps({ref_for:!0},i.buttonType,{size:i.getCompatSize("mini"),class:"iconfont-button delete-button",onClick:O=>m.visible=!1}),{default:e.withCtx(()=>[e.createVNode(V)]),_:2},1040,["size","onClick"])]),_:2},1040,["content"])):e.createCommentVNode("",!0),n.canMoveTop(m,E)?(e.openBlock(),e.createBlock(x,e.mergeProps({key:1,content:i.t("top"),placement:"top"},{ref_for:!0},i.afterOpenDelay),{default:e.withCtx(()=>[e.createVNode(a,e.mergeProps({ref_for:!0},i.buttonType,{size:i.getCompatSize("mini"),class:"iconfont-button top-button",onClick:O=>n.moveTop(m,E)}),{default:e.withCtx(()=>[e.createVNode(k)]),_:2},1040,["size","onClick"])]),_:2},1040,["content"])):e.createCommentVNode("",!0),m.fixed!=="right"?(e.openBlock(),e.createBlock(x,e.mergeProps({key:2,content:m.fixed==="left"?i.t("cancelLeftFixed"):i.t("leftFixed"),placement:"top"},{ref_for:!0},i.afterOpenDelay),{default:e.withCtx(()=>[e.createVNode(a,e.mergeProps({ref_for:!0},i.buttonType,{size:i.getCompatSize("mini"),class:["iconfont-button left-fixed-btn",{"active-fixed":m.fixed==="left"}],onClick:O=>n.frozenLeftHandle(E),disabled:m.fixed!=="left"&&n.isThanMaxFrozen}),{default:e.withCtx(()=>[e.createVNode(L)]),_:2},1040,["size","class","onClick","disabled"])]),_:2},1040,["content"])):e.createCommentVNode("",!0),m.fixed!=="left"?(e.openBlock(),e.createBlock(x,e.mergeProps({key:3,content:m.fixed==="right"?i.t("cancelRightFixed"):i.t("rightFixed"),placement:"top"},{ref_for:!0},i.afterOpenDelay),{default:e.withCtx(()=>[e.createVNode(a,e.mergeProps({ref_for:!0},i.buttonType,{size:i.getCompatSize("mini"),class:["iconfont-button right-fixed-btn",{"active-fixed":m.fixed==="right"}],onClick:O=>n.frozenRightHandle(E),disabled:m.fixed!=="right"&&n.isThanMaxRightFrozen}),{default:e.withCtx(()=>[e.createVNode(r)]),_:2},1040,["size","class","onClick","disabled"])]),_:2},1040,["content"])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)],10,Qt))),128))],512)])]),e.createElementVNode("div",Xt,[e.createElementVNode("div",Zt,[e.createVNode(a,{size:i.getCompatSize("mini"),onClick:n.handleRestoreDefault},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("restoreDefault")),1)]),_:1},8,["size","onClick"])]),e.createElementVNode("div",$t,[e.createVNode(a,{size:i.getCompatSize("mini"),onClick:s[1]||(s[1]=m=>i.popoverVisible=!1)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("cancel")),1)]),_:1},8,["size"]),e.createVNode(a,{size:i.getCompatSize("mini"),type:"primary",onClick:n.onSave},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.t("saveAndApply")),1)]),_:1},8,["size","onClick"])])])])):e.createCommentVNode("",!0)]),_:1},16,["placement","onShow","onHide"])}const ll=y(Ht,[["render",tl],["__scopeId","data-v-127cbd33"]]),il=!1,sl=!0;function G(t){if(!Array.isArray(t))return t;const s=[];for(const l of t)if(l)if(typeof l.type=="symbol"&&l.children){let o=l.children;if(typeof o=="function")continue;if(Array.isArray(o)){const i=G(o);s.push(...i)}else{const i=G([o]);s.push(...i)}}else s.push(l);return s}const nl={name:"TmTable",components:{TableSearch:q,TablePagination:xt,TableMenu:Bt,ColumnConfig:ll,RefreshIcon:Ve,ColumnRenderer:{props:["vnode"],render(){return this.vnode}}},inheritAttrs:!1,props:{data:{type:[Array,Function],default:()=>[]},showSearch:{type:Boolean,default:!0},showMenu:{type:Boolean,default:!0},showPagination:{type:Boolean,default:!0},pagination:{type:Object,default:()=>({})},height:{type:[String,Number]},calcHeight:{type:Number,default:0},dataAdapter:{type:Function,default:null},columnSettingButton:{type:Boolean,default:!0},refreshButton:{type:Boolean,default:!0},tableKey:{type:String,default:""},firstLoad:{type:Boolean,default:!0},maxFixedLeftQuantity:{type:Number},maxFixedRightQuantity:{type:Number},border:{type:Boolean,default:!0},searchColumns:{type:Array,default:null},searchForm:{type:Object,default:()=>({})}},data(){return{getDefaultSize:T,getCompatSize:D,isVue3:sl,isVue2:il,t:w().t,tableData:[],tableLoading:!1,columnsLoading:!1,tableReload:1,tableHeight:null,selectedRows:[],paginationInfo:{current:1,pageSize:20,total:void 0},originalColumns:[],displayColumns:[],isColumnConfigLoaded:!1,afterOpenDelay:{"show-after":300}}},computed:{pageLoading(){return this.tableLoading||this.columnsLoading},computedTableKey(){if(this.tableKey)return this.tableKey;if(this.$route&&this.$route.path)return this.$route.path.slice(1).replace(/\//g,"-");throw new Error("tableKey is required")},computedShowPagination(){return this.showPagination&&typeof this.data=="function"}},watch:{data:{immediate:!0,handler(t){typeof t=="function"?!this.columnSettingButton||this.isColumnConfigLoaded&&!this.firstLoad?this.loadData():Array.isArray(t)&&(this.tableData=t):this.tableData=t}},height:{immediate:!0,handler(){this.getTableHeight()}}},created(){{const t=this.$slots.default();this.originalColumns=G(t)}this.columnSettingButton?this.columnsLoading=!0:(this.displayColumns=this.originalColumns,this.isColumnConfigLoaded=!0)},mounted(){this.getTableHeight(),window.addEventListener("resize",this.getTableHeight)},beforeDestroy(){window.removeEventListener("resize",this.getTableHeight)},methods:{handleUpdateSearchForm(t){this.$emit("update:search-form",t)},handleColumnConfigComplete(t){Array.isArray(t.columns)?this.displayColumns=[...t.columns]:this.displayColumns=[...this.originalColumns],t.isInitialLoad?(this.isColumnConfigLoaded=!0,this.columnsLoading=!1,this.firstLoad&&typeof this.data=="function"&&this.loadData()):this.reloadTable()},isAutoHeight(){return this.height==="auto"},handleRefresh(){this.loadData()},async loadData(){if(Array.isArray(this.data))this.tableData=this.data;else if(typeof this.data=="function"){if(this.tableLoading)return;this.tableLoading=!0;try{const t=await this.data({paginationInfo:{pageSize:this.paginationInfo.pageSize,current:this.paginationInfo.current},params:this.searchForm}),{list:s,total:l,pageSize:o,current:i}=t;this.tableData=s;let n=b({},this.paginationInfo);l!==void 0&&(n.total=l),i!==void 0&&(n.current=i),o!==void 0&&(n.pageSize=o),this.paginationInfo=n}catch(t){}finally{this.tableLoading=!1}}},getTableHeight(){this.isAutoHeight()?this.$nextTick(()=>{const t=this.$refs.table,s=this.$refs.tmPagination;if(!t)return;const l=t.$el,o=s&&s.$el&&s.$el.offsetHeight||0;this.tableHeight=document.documentElement.clientHeight-l.offsetTop-o-this.calcHeight}):this.tableHeight=this.height,this.refreshTable()},search(){this.paginationInfo.current=1,this.loadData()},reset(){this.paginationInfo.current=1,this.$nextTick(()=>{this.loadData()})},handleSelectionChange(t){this.selectedRows=t,this.$emit("selection-change",t)},handleSizeChange(t){this.paginationInfo.pageSize=t,this.loadData(),this.$emit("size-change",t)},handleCurrentChange(t){this.paginationInfo.current=t,this.loadData(),this.$emit("current-change",t)},refreshTable(){this.$refs.table&&this.$refs.table.doLayout()},reloadTable(){this.tableReload++}}},ol={class:"tm-table",ref:"tablePage"};function al(t,s,l,o,i,n){const a=e.resolveComponent("table-search"),h=e.resolveComponent("RefreshIcon"),c=e.resolveComponent("el-button"),d=e.resolveComponent("el-tooltip"),p=e.resolveComponent("ColumnConfig"),V=e.resolveComponent("table-menu"),x=e.resolveComponent("columnRenderer"),k=e.resolveComponent("el-table"),L=e.resolveComponent("table-pagination"),r=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",ol,[l.searchColumns&&l.searchColumns.length>0?(e.openBlock(),e.createBlock(a,{key:0,ref:"search",onSearch:n.search,onReset:n.reset,"onUpdate:searchForm":n.handleUpdateSearchForm,disabled:n.pageLoading,"search-columns":l.searchColumns,"search-form":l.searchForm},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"search",{},void 0,!0)]),_:3},8,["onSearch","onReset","onUpdate:searchForm","disabled","search-columns","search-form"])):e.createCommentVNode("",!0),l.showMenu?(e.openBlock(),e.createBlock(V,{key:1},{left:e.withCtx(()=>[e.renderSlot(t.$slots,"menu-left",{},void 0,!0)]),right:e.withCtx(()=>[e.renderSlot(t.$slots,"menu-right",{},void 0,!0),l.refreshButton&&typeof l.data=="function"?(e.openBlock(),e.createBlock(d,e.mergeProps({key:0,content:i.t("refresh"),placement:"top"},i.afterOpenDelay),{default:e.withCtx(()=>[e.createVNode(c,{onClick:n.handleRefresh,circle:"",size:i.getDefaultSize()},{default:e.withCtx(()=>[e.createVNode(h)]),_:1},8,["onClick","size"])]),_:1},16,["content"])):e.createCommentVNode("",!0),l.columnSettingButton?(e.openBlock(),e.createBlock(p,{key:1,maxFixedLeftQuantity:l.maxFixedLeftQuantity,maxFixedRightQuantity:l.maxFixedRightQuantity,tableKey:n.computedTableKey,columns:i.originalColumns,onComplete:n.handleColumnConfigComplete},null,8,["maxFixedLeftQuantity","maxFixedRightQuantity","tableKey","columns","onComplete"])):e.createCommentVNode("",!0)]),_:3})):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(k,e.mergeProps({ref:"table"},B(b({},t.$attrs),{border:l.border}),e.toHandlers(i.isVue2?t.$listeners:{}),{data:i.tableData,height:i.tableHeight,size:i.getCompatSize("mini"),onSelectionChange:n.handleSelectionChange,key:i.tableReload}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.displayColumns,z=>(e.openBlock(),e.createBlock(x,{vnode:z,key:i.isVue3?z.id:z.data.attrs.prop},null,8,["vnode"]))),128))]),_:1},16,["data","height","size","onSelectionChange"])),[[r,n.pageLoading]]),n.computedShowPagination?(e.openBlock(),e.createBlock(L,{key:2,ref:"tmPagination","page-size":i.paginationInfo.pageSize,current:i.paginationInfo.current,total:i.paginationInfo.total,disabled:i.tableLoading,onSizeChange:n.handleSizeChange,onCurrentChange:n.handleCurrentChange},null,8,["page-size","current","total","disabled","onSizeChange","onCurrentChange"])):e.createCommentVNode("",!0)],512)}const X=y(nl,[["render",al],["__scopeId","data-v-8db1f265"]]),rl=!1,cl=!0,dl={name:"TmTableColumn",inheritAttrs:!1,computed:{isVisible(){return this.$attrs.visible!==!1},slots(){return this.$slots}},data(){return{isVue2:rl,isVue3:cl}},created(){this.$parent&&this.$parent.$emit&&this.$parent.$emit("column-initialized",{prop:this.$attrs.prop,visible:this.$attrs.visible!==!1})}};function hl(t,s,l,o,i,n){const a=e.resolveComponent("el-table-column");return n.isVisible?(e.openBlock(),e.createBlock(a,e.mergeProps({key:0},t.$attrs,e.toHandlers(i.isVue2?t.$listeners:{})),e.createSlots({_:2},[e.renderList(n.slots,(h,c)=>({name:c,fn:e.withCtx(d=>[e.renderSlot(t.$slots,c,e.normalizeProps(e.guardReactiveProps(d)))])}))]),1040)):e.createCommentVNode("",!0)}const Z=y(dl,[["render",hl]]),{t:$}=w(),ul={name:"TmAdvancedEllipsisText",components:{CopyIcon:te},props:{rows:{type:Number,default:1},width:{type:String,default:"100%"},maxWidth:{type:String,default:""},showToolbar:{type:Boolean,default:!1},text:{type:String,default:""},showTooltip:{type:Boolean,default:!0},copyable:{type:Boolean,default:!1}},data(){return{isVue2:!1,originalText:"",isHovered:!1,lineHeight:0,containerWidth:0,resizeObserver:null,isCalculating:!1,frontLines:[],lastLineText:"",isLastLineEllipsis:!1,tableRowElement:null}},computed:{containerStyle(){const t={};return this.maxWidth?(t.maxWidth=this.maxWidth,t.width=this.width):t.width=this.width,t},hasToolbarSlot(){return this.$slots.toolbar?this.$slots.toolbar&&this.$slots.toolbar().length>0:!1},hasToolbarContent(){return this.copyable||this.hasToolbarSlot},shouldShowToolbar(){return this.showToolbar||this.isHovered&&this.hasToolbarContent}},mounted(){this.initComponent(),this.setupResizeObserver(),this.setupTableRowHover()},updated(){const t=this.getTextContent();t!==this.originalText&&(this.originalText=t,this.$nextTick(()=>{this.calculateLayout()}))},beforeDestroy(){this.cleanupResizeObserver(),this.cleanupTableRowHover()},beforeUnmount(){this.cleanupResizeObserver(),this.cleanupTableRowHover()},watch:{text:{handler(){this.$nextTick(()=>{this.originalText=this.getTextContent(),this.calculateLayout()})},immediate:!0},rows(){this.$nextTick(()=>{this.calculateLayout()})},shouldShowToolbar(){this.$nextTick(()=>{this.calculateLayout()})},"$slots.default":{handler(){this.$nextTick(()=>{this.originalText=this.getTextContent(),this.calculateLayout()})},deep:!0}},methods:{initComponent(){this.$nextTick(()=>{this.originalText=this.getTextContent(),this.calculateLineHeight(),this.$nextTick(()=>{this.calculateLayout()})})},handleCopy(){navigator.clipboard&&window.isSecureContext?navigator.clipboard.writeText(this.originalText).then(()=>{this.$message.success($("copySuccess"))}).catch(()=>{this.fallbackCopy()}):this.fallbackCopy()},fallbackCopy(){const t=document.createElement("textarea");t.value=this.originalText,t.style.position="fixed",t.style.left="-999999px",t.style.top="-999999px",document.body.appendChild(t),t.focus(),t.select();try{document.execCommand("copy"),this.$message.success($("copySuccess"))}catch(s){this.$message.error($("copyFailed"))}document.body.removeChild(t)},getTextContent(){if(this.$slots.default){const t=this.$slots.default;return t().map(s=>typeof s.children=="string"?s.children:Array.isArray(s.children)?s.children.map(l=>l.children||"").join(""):"").join("")}return this.text||""},calculateLineHeight(){const t=this.$refs.containerRef;if(!t)return;const s=window.getComputedStyle(t);this.containerWidth=t.offsetWidth;const l=this.$refs.measureRef;if(l){this.setMeasureElementStyle(l,{width:this.containerWidth+"px",wordBreak:"break-all",whiteSpace:"normal"}),l.textContent="测",l.offsetHeight;const o=l.offsetHeight;l.innerHTML="",this.lineHeight=o}else{const o=s.lineHeight;if(o&&o!=="normal")this.lineHeight=parseInt(o);else{const i=parseInt(s.fontSize);this.lineHeight=i*1.2}}},calculateLayout(){if(!this.isCalculating){if(!this.originalText||this.rows<=0){this.frontLines=[],this.lastLineText=this.originalText||"",this.isLastLineEllipsis=!1;return}this.isCalculating=!0,this.$nextTick(()=>{requestAnimationFrame(()=>{this.performLayoutCalculation()})})}},performLayoutCalculation(){const t=this.originalText;if(this.rows===1)this.frontLines=[],this.lastLineText=t,this.isLastLineEllipsis=this.checkIfTextOverflows(t);else{const s=this.lineHeight;if(this.getTextHeight(t)<=s)this.frontLines=[],this.lastLineText=t,this.isLastLineEllipsis=this.checkIfTextOverflows(t);else{const o=this.lineHeight*(this.rows-1),i=this.findTextForHeight(t,o);this.frontLines=this.splitTextToLines(i);const n=t.substring(i.length);this.lastLineText=n,this.isLastLineEllipsis=n.length>0&&this.checkIfTextOverflows(n)}}this.isCalculating=!1},findTextForHeight(t,s){if(this.getTextHeight(t)<=s)return t;let l=0,o=t.length,i="";for(;l<=o;){const n=Math.floor((l+o)/2),a=t.substring(0,n);this.getTextHeight(a)<=s?(i=a,l=n+1):o=n-1}return i},splitTextToLines(t){if(!t)return[];const s=[];let l=t;for(;l.length>0;){const o=this.findTextForHeight(l,this.lineHeight);if(o.length===0)break;s.push(o),l=l.substring(o.length)}return s},checkIfTextOverflows(t){if(!t)return!1;const s=this.getTextWidth(t),l=this.shouldShowToolbar&&this.hasToolbarContent?this.getToolbarWidth():0,o=this.containerWidth-l-5;return s>o},getToolbarWidth(){let t=0;return this.copyable&&(t+=20),this.hasToolbarSlot&&(t+=40),t},getTextHeight(t){return this.measureText(t,{width:this.containerWidth+"px",wordBreak:"break-all",whiteSpace:"normal"})},getTextWidth(t){return this.measureText(t,{whiteSpace:"nowrap"})},measureText(t,s={}){if(!this.$refs.containerRef||!this.$refs.measureRef)return 0;const l=this.$refs.measureRef,o=l.style.cssText;this.setMeasureElementStyle(l,s),l.textContent=t,l.offsetHeight;const i=s.whiteSpace==="nowrap"?l.offsetWidth:l.offsetHeight;return l.style.cssText=o,l.innerHTML="",i},setMeasureElementStyle(t,s={}){const l=window.getComputedStyle(this.$refs.containerRef);t.style.cssText="",t.style.position="absolute",t.style.left="-9999px",t.style.top="-9999px",t.style.visibility="hidden",t.style.pointerEvents="none",t.style.zIndex="-1",t.style.fontSize=l.fontSize,t.style.fontFamily=l.fontFamily,t.style.fontWeight=l.fontWeight,t.style.lineHeight=l.lineHeight,t.style.letterSpacing=l.letterSpacing,t.style.wordSpacing=l.wordSpacing,t.style.padding="0",t.style.margin="0",t.style.border="none",t.style.boxSizing="border-box",Object.entries(s).forEach(([o,i])=>{t.style[o]=i})},handleMouseEnter(){this.isHovered=!0},handleMouseLeave(){this.isHovered=!1},setupResizeObserver(){typeof ResizeObserver!="undefined"&&(this.resizeObserver=new ResizeObserver(t=>{const s=t[0];if(s){const l=s.contentRect.width;Math.abs(l-this.containerWidth)>1&&requestAnimationFrame(()=>{this.calculateLineHeight(),this.calculateLayout()})}}),this.$refs.containerRef&&this.resizeObserver.observe(this.$refs.containerRef))},cleanupResizeObserver(){this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)},setupTableRowHover(){let t=this.$el;for(;t&&t!==document.body;){if(t.classList&&t.classList.contains("el-table__row")){this.tableRowElement=t;break}t=t.parentElement}this.tableRowElement&&(this.tableRowElement.addEventListener("mouseenter",this.handleMouseEnter),this.tableRowElement.addEventListener("mouseleave",this.handleMouseLeave))},cleanupTableRowHover(){this.tableRowElement&&(this.tableRowElement.removeEventListener("mouseenter",this.handleMouseEnter),this.tableRowElement.removeEventListener("mouseleave",this.handleMouseLeave),this.tableRowElement=null)}}},ml={class:"tm-ellipsis-text-wrapper"},pl=["innerHTML"],fl={class:"tm-ellipsis-last-line"},gl=["innerHTML"],bl={key:0,class:"tm-ellipsis-toolbar-part"},yl={key:1,class:"tm-ellipsis-text-wrapper"},Cl=["innerHTML"],kl={class:"tm-ellipsis-last-line"},Vl=["innerHTML"],xl={key:0,class:"tm-ellipsis-toolbar-part"},_l={ref:"measureRef",class:"tm-ellipsis-measure"};function Sl(t,s,l,o,i,n){const a=e.resolveComponent("CopyIcon"),h=e.resolveComponent("el-tooltip");return e.openBlock(),e.createElementBlock("div",{ref:"containerRef",style:e.normalizeStyle(n.containerStyle),class:"tm-ellipsis-text",onMouseenter:s[0]||(s[0]=(...c)=>n.handleMouseEnter&&n.handleMouseEnter(...c)),onMouseleave:s[1]||(s[1]=(...c)=>n.handleMouseLeave&&n.handleMouseLeave(...c))},[l.showTooltip&&i.isLastLineEllipsis?(e.openBlock(),e.createBlock(h,e.mergeProps({key:0,content:i.originalText,disabled:!l.showTooltip||!i.isLastLineEllipsis},{[i.isVue2?"open-delay":"show-after"]:300},{placement:"top"}),{default:e.withCtx(()=>[e.createElementVNode("div",ml,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.frontLines,(c,d)=>(e.openBlock(),e.createElementBlock("div",{key:"front-"+d,class:"tm-ellipsis-line",innerHTML:c},null,8,pl))),128)),e.createElementVNode("div",fl,[e.createElementVNode("div",{class:"tm-ellipsis-text-part",innerHTML:i.lastLineText},null,8,gl),n.shouldShowToolbar&&n.hasToolbarContent?(e.openBlock(),e.createElementBlock("div",bl,[l.copyable?(e.openBlock(),e.createBlock(a,{key:0,class:"icon-item",onClick:n.handleCopy},null,8,["onClick"])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"toolbar",{},void 0,!0)])):e.createCommentVNode("",!0)])])]),_:3},16,["content","disabled"])):(e.openBlock(),e.createElementBlock("div",yl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.frontLines,(c,d)=>(e.openBlock(),e.createElementBlock("div",{key:"front-"+d,class:"tm-ellipsis-line",innerHTML:c},null,8,Cl))),128)),e.createElementVNode("div",kl,[e.createElementVNode("div",{class:"tm-ellipsis-text-part",innerHTML:i.lastLineText},null,8,Vl),n.shouldShowToolbar&&n.hasToolbarContent?(e.openBlock(),e.createElementBlock("div",xl,[l.copyable?(e.openBlock(),e.createBlock(a,{key:0,class:"icon-item",onClick:n.handleCopy},null,8,["onClick"])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"toolbar",{},void 0,!0)])):e.createCommentVNode("",!0)])])),e.createElementVNode("div",_l,null,512)],36)}const ee=y(ul,[["render",Sl],["__scopeId","data-v-16643222"]]),le={install:{install(t,s={}){[X,Z,F,ee].forEach(l=>t.component(l.name,l)),s.tableConfigProvider&&Et(s.tableConfigProvider),s.lang&&M(s.lang||"zh-CN")}}.install,Table:X,Column:Z,Search:q,Select:I,AdvancedInput:W,AdvancedDate:U,Cascader:j,Radio:J,Checkbox:K,Switch:Q,EllipsisText:F,AdvancedEllipsisText:ee,setLang:M,useLocale:w};typeof window!="undefined"&&window.Vue&&le.install(window.Vue),u.AdvancedDate=U,u.AdvancedEllipsisText=ee,u.AdvancedInput=W,u.Cascader=j,u.Checkbox=K,u.Column=Z,u.EllipsisText=F,u.Radio=J,u.Search=q,u.Select=I,u.Switch=Q,u.Table=X,u.default=le,u.setLang=M,u.useLocale=w,Object.defineProperties(u,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(u,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue"),require("sortablejs")):typeof define=="function"&&define.amd?define(["exports","vue","sortablejs"],t):(u=typeof globalThis!="undefined"?globalThis:u||self,t(u.TmTable={},u.Vue,u.Sortable))})(this,function(u,t,g){"use strict";var vl=Object.defineProperty,Wl=Object.defineProperties;var Ul=Object.getOwnPropertyDescriptors;var P=Object.getOwnPropertySymbols;var ce=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable;var re=(u,t,g)=>t in u?vl(u,t,{enumerable:!0,configurable:!0,writable:!0,value:g}):u[t]=g,b=(u,t)=>{for(var g in t||(t={}))ce.call(t,g)&&re(u,g,t[g]);if(P)for(var g of P(t))de.call(t,g)&&re(u,g,t[g]);return u},F=(u,t)=>Wl(u,Ul(t));var he=(u,t)=>{var g={};for(var S in u)ce.call(u,S)&&t.indexOf(S)<0&&(g[S]=u[S]);if(u!=null&&P)for(var S of P(u))t.indexOf(S)<0&&de.call(u,S)&&(g[S]=u[S]);return g};const S={mini:"small",small:"small",default:"default",large:"large"},N=e=>S[e]||S.default,V=()=>"default",ue={"zh-CN":{today:"今天",yesterday:"昨天",last7days:"最近7天",last30days:"最近30天",thisMonth:"本月",lastMonth:"上月",checkAll:"全选",search:"搜索",query:"查询",reset:"重置",columnSetting:"列设置",refresh:"刷新",cancel:"取消",fixedLeft:"固定在左侧",fixedRight:"固定在右侧",top:"置顶",restoreDefault:"恢复默认",saveAndApply:"保存并应用",startDate:"开始日期",endDate:"结束日期",all:"全选",SelectableFields:"可选择字段",fixedColumns:"固定列",leftmost:"左侧最多",rightmost:"右侧最多",items:"项",accurateSearchTips:"每行一个,支持多个值",accurateSearchPlaceholder:"精确搜索,一行一项",selectPlaceholder:"请选择",clear:"清空",saveSuccess:"保存成功",cancelRightFixed:"取消右侧固定",rightFixed:"固定到右侧",cancelLeftFixed:"取消左侧固定",leftFixed:"固定到左侧",cancelTop:"取消置顶",copySuccess:"复制成功",copyFailed:"复制失败"},"en-US":{today:"Today",yesterday:"Yesterday",last7days:"Last 7 days",last30days:"Last 30 days",thisMonth:"This month",lastMonth:"Last month",checkAll:"Check all",search:"Search",query:"Search",reset:"Reset",columnSetting:"Column Setting",refresh:"Refresh",cancel:"Cancel",fixedLeft:"Fixed left",fixedRight:"Fixed right",top:"Top",restoreDefault:"Restore default",saveAndApply:"Save and apply",startDate:"Start date",endDate:"End date",all:"All",SelectableFields:"Fields",fixedColumns:"Fixed columns",leftmost:"Leftmost",rightmost:"Rightmost",items:"item(s)",accurateSearchTips:"One per line, supporting multiple values",accurateSearchPlaceholder:"Accurate search, one per line",selectPlaceholder:"Please select",clear:"Clear",saveSuccess:"Successfully saved",cancelRightFixed:"Cancel right fixed",rightFixed:"Fixed to right",cancelLeftFixed:"Cancel left fixed",leftFixed:"Fixed to left",cancelTop:"Cancel top",copySuccess:"Copy successfully",copyFailed:"Copy failed"}};let M={value:"zh-CN"};M=t.ref("zh-CN");const pe=e=>{var i;return((i=ue[M.value])==null?void 0:i[e])||e},A=e=>{M.value=e},x=()=>({t:pe,setLang:A,currentLang:M}),y=(e,i)=>{const l=e.__vccOpts||e;for(const[a,n]of i)l[a]=n;return l},me={name:"BaseIcon",props:{path:{type:String},size:{type:[String,Number]},color:{type:String}},methods:{handleClick(){}}},fe=["width","height"],ge=["d"];function be(e,i,l,a,n,o){return t.openBlock(),t.createElementBlock("i",{class:"tm-icon",onClick:i[0]||(i[0]=(...r)=>o.handleClick&&o.handleClick(...r))},[(t.openBlock(),t.createElementBlock("svg",{width:l.size,height:l.size,style:t.normalizeStyle({color:l.color}),viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},[t.createElementVNode("path",{d:l.path},null,8,ge)],12,fe))])}const ye=y(me,[["render",be],["__scopeId","data-v-1c30ca93"]]),k=Object.entries({menu:"M160 448a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32zm448 0a32 32 0 0 1-32-32V160.064a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32V416a32 32 0 0 1-32 32zM160 896a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32zm448 0a32 32 0 0 1-32-32V608a32 32 0 0 1 32-32h255.936a32 32 0 0 1 32 32v256a32 32 0 0 1-32 32z",more:"M76.92892277 192.94787572h864.34120754c23.20379058 0 46.40758118-17.40284367 46.40758118-46.40758118s-23.20379058-46.40758118-46.40758118-46.40758116H76.92892277c-29.00473897 0-46.40758264 17.40284367-46.40758264 46.40758116s23.20379058 46.40758118 46.40758264 46.40758118zM941.27013031 465.59241882H76.92892277c-29.00473897 0-46.40758264 17.40284367-46.40758264 46.40758118s23.20379058 46.40758118 46.40758264 46.40758118h864.34120754c23.20379058 0 46.40758118-17.40284367 46.40758118-46.40758118s-23.20379058-46.40758118-46.40758118-46.40758118zM941.27013031 825.25117589H76.92892277c-29.00473897 0-46.40758264 17.40284367-46.40758264 46.40758118s23.20379058 46.40758118 46.40758264 46.40758264h864.34120754c23.20379058 0 46.40758118-17.40284367 46.40758118-46.40758264s-23.20379058-46.40758118-46.40758118-46.40758118z",refresh:"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",move:"M238.93333333 102.4a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m409.6 0a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0zM238.93333333 375.46666667a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m409.6 0a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m-409.6 273.06666666a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m409.6 0a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z m-341.33333333 204.8a68.26666667 68.26666667 0 1 0 0 136.53333334 68.26666667 68.26666667 0 0 0 0-136.53333334z m341.33333333 68.26666667a68.26666667 68.26666667 0 1 1 136.53333334 0 68.26666667 68.26666667 0 0 1-136.53333334 0z","column-setting":"M436.05333334 18.36373333a109.22666667 109.22666667 0 0 1 109.22666666 0l345.56586667 199.54346667c33.792 19.52426667 54.61333333 55.56906667 54.61333333 94.54933333V580.26666667h-81.92V312.45653333a27.30666667 27.30666667 0 0 0-13.65333333-23.62026666L504.32 89.2928a27.30666667 27.30666667 0 0 0-27.30666666 0L131.44746667 288.83626667a27.30666667 27.30666667 0 0 0-13.65333333 23.62026666v399.08693334a27.30666667 27.30666667 0 0 0 13.65333333 23.62026666L477.01333334 934.7072a27.30666667 27.30666667 0 0 0 27.30666666 0l54.61333334-31.5392v94.54933333l-13.65333334 7.91893334a109.22666667 109.22666667 0 0 1-109.22666666 0l-345.56586667-199.54346667a109.22666667 109.22666667 0 0 1-54.61333333-94.54933333V312.45653333c0-38.98026667 20.82133333-75.09333333 54.61333333-94.54933333L436.05333334 18.36373333z","fixed-left":"M843.36363653 311.54545478l-53.18181827 1e-8-20.45454521 28.63636347-163.63636435 204.54545479-24.54545391 28.63636347 12.27272695 36.81818175c8.18181826 28.63636347 12.27272695 57.27272695 12.27272696 85.90909042 0 32.72727305-4.09090869 61.36363652-16.36363565 90-4.09090869 16.36363653-12.27272695 32.72727306-24.54545479 49.09090957l-163.63636347-163.63636347-40.90909131-40.90909132-12.27272695-12.27272695-163.63636348-163.63636347c28.63636347-16.36363653 61.36363652-28.63636347 94.09090869-32.72727305 45-8.18181826 90-4.09090869 134.99999999 8.18181826l36.81818175 12.27272695 28.63636347-24.54545391 204.54545479-163.63636435 28.63636347-16.36363564 0-32.72727305L712.45454521 184.72727305l130.90909132 126.81818173zM941.54545479 327.90909131c0-8.18181826-4.09090869-16.36363653-8.18181826-24.54545478L720.63636348 94.72727305c-12.27272695-16.36363653-36.81818174-12.27272695-49.09090869 4.0909087-20.45454521 28.63636347-28.63636347 65.45454521-28.63636348 98.18181825l0 4.09090869-204.54545478 163.63636436c-110.45454521-36.81818174-233.18181826-16.36363653-327.27272784 61.36363564-8.18181826 8.18181826-12.27272695 16.36363653-12.27272694 24.54545478 0 8.18181826 4.09090869 16.36363653 8.18181825 24.5454548l196.36363653 196.36363652-212.72727305 212.72727216c-4.09090869 4.09090869-8.18181826 12.27272695-8.18181826 20.4545461s4.09090869 16.36363653 8.18181826 20.4545452c12.27272695 12.27272695 32.72727306 12.27272695 45 1e-8L352.45454522 716.54545479l196.36363652 196.36363652c12.27272695 12.27272695 36.81818174 12.27272695 49.09090957-4.09090957C651.09090869 847.45454521 675.63636347 773.81818174 675.63636346 696.09090869c0-36.81818173-4.09090869-73.63636348-16.36363651-106.36363564l163.63636436-204.54545479c36.81818173 0 73.63636348-8.18181826 106.36363564-28.63636347C937.45454519 348.36363653 941.54545478 336.09090869 941.54545479 327.90909131z","fixed-right":"M311.54545479 180.63636347v53.18181827l28.63636347 20.45454521 204.54545479 163.63636436 28.63636347 24.5454539 36.81818174-12.27272695c28.63636347-8.18181826 57.27272695-12.27272695 85.90909043-12.27272695 32.72727305 0 61.36363652 4.09090869 90 16.36363564 16.36363653 4.09090869 32.72727305 12.27272695 49.09090957 24.54545479l-163.63636347 163.63636347-40.90909132 40.90909131-12.27272695 12.27272695-163.63636347 163.63636348c-16.36363653-28.63636347-28.63636347-61.36363652-32.72727305-94.09090869-8.18181826-45-4.09090869-90 8.18181826-135l12.27272695-36.81818174-24.5454539-28.63636347-163.63636436-204.54545479-16.36363564-28.63636347h-32.72727305H184.72727305l126.81818174-130.90909132zM327.90909131 82.45454521c-8.18181826 0-16.36363653 4.09090869-24.54545478 8.18181826L94.72727305 303.36363652c-16.36363653 12.27272695-12.27272695 36.81818174 4.09090869 49.09090869 28.63636347 20.45454521 65.45454521 28.63636347 98.18181826 28.63636348h4.09090869l163.63636436 204.54545478c-36.81818174 110.45454521-16.36363653 233.18181826 61.36363564 327.27272784 8.18181826 8.18181826 16.36363653 12.27272695 24.54545478 12.27272695 8.18181826 0 16.36363653-4.09090869 24.54545479-8.18181826l196.36363653-196.36363653 212.72727216 212.72727305c4.09090869 4.09090869 12.27272695 8.18181826 20.4545461 8.18181827s16.36363653-4.09090869 20.45454521-8.18181827c12.27272695-12.27272695 12.27272695-32.72727305 0-45L716.54545479 671.54545479l196.36363652-196.36363653c12.27272695-12.27272695 12.27272695-36.81818174-4.09090957-49.09090957C847.45454521 372.90909131 773.81818174 348.36363653 696.09090869 348.36363653c-36.81818174 0-73.63636348 4.09090869-106.36363564 16.36363652l-204.54545479-163.63636436c0-36.81818174-8.18181826-73.63636348-28.63636347-106.36363564C348.36363653 86.54545479 336.09090869 82.45454521 327.90909131 82.45454521z",upload:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-578.304V704h-64V247.296L237.248 490.048 192 444.8 508.8 128l316.8 316.8-45.312 45.248z",download:"M160 832h704a32 32 0 1 1 0 64H160a32 32 0 1 1 0-64m384-253.696 236.288-236.352 45.248 45.248L508.8 704 192 387.2l45.248-45.248L480 584.704V128h64z",delete:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32",copy:"M128 320v576h576V320zm-32-64h640a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32M960 96v704a32 32 0 0 1-32 32h-96v-64h64V128H384v64h-64V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32M256 672h320v64H256zm0-192h320v64H256z"}).reduce((e,[i,l])=>{const a=`${i}Icon`,n={name:a,props:{path:{type:String,default:l},size:{type:[String,Number]},color:{type:String}},render(o){return t.h(ye,this.$props)}};return n.install=o=>{o.component(a,n)},e[i]=n,e},{}),Ce=k.menu,_e=k.refresh,Se=k.move;k["column-setting"];const Ve=k.more,xe=k["fixed-left"],ke=k["fixed-right"],Te=k.upload,we=k.download,Fe=k.delete,le=k.copy,{t:v}=x(),ze=!1,Le=!0,Be={name:"TmEllipsisText",components:{CopyIcon:le},props:{text:{type:String,required:!0},width:{type:[String,Number],default:"auto"},maxWidth:{type:[String,Number],default:"100%"},lines:{type:Number,default:1},showTooltip:{type:Boolean,default:!0},lineHeight:{type:[String,Number]},copyable:{type:Boolean,default:!1}},data(){return{isVue2:ze,isVue3:Le,isOverflow:!1,currentLines:1,resizeObserver:null}},computed:{tooltipDisabled(){return!this.showTooltip||!this.isOverflow},textStyle(){const e=typeof this.width=="number"?`${this.width}px`:this.width,i=typeof this.maxWidth=="number"?`${this.maxWidth}px`:this.maxWidth;return{width:e,maxWidth:i,lineHeight:this.lineHeight,display:"-webkit-inline-box",overflow:"hidden",WebkitBoxOrient:"vertical",WebkitLineClamp:this.lines}}},mounted(){this.checkOverflow(),this.setupResizeObserver()},beforeDestroy(){this.cleanupResizeObserver()},beforeUnmount(){this.cleanupResizeObserver()},watch:{text(){this.$nextTick(this.checkOverflow)}},methods:{checkOverflow(){this.$refs.textEl&&this.$nextTick(()=>{this.$nextTick(()=>{this.performOverflowCheck()})})},performOverflowCheck(){var h;const e=this.$refs.textEl;if(!e)return;const i=getComputedStyle(e);if(!i.width||i.width==="0px"){this.$nextTick(()=>{this.performOverflowCheck()});return}const l=e.scrollHeight,a=e.scrollWidth,n=e.clientHeight,o=e.clientWidth,r=1,d=l>n+r,c=a>o+r;if(d||c){this.isOverflow=!0;const p=parseFloat(i.lineHeight)||16;this.currentLines=Math.ceil(l/p)}else{const p=e.getBoundingClientRect(),_=(h=e.parentElement)==null?void 0:h.getBoundingClientRect();if(_){const T=p.height>_.height||p.width>_.width;this.isOverflow=T}else this.isOverflow=!1;this.currentLines=1}},setupResizeObserver(){window.ResizeObserver&&this.$nextTick(()=>{try{this.resizeObserver=new ResizeObserver(()=>{this.checkOverflow()});const e=this.$el;e&&e instanceof Element&&this.resizeObserver.observe(e)}catch(e){console.warn("Failed to setup ResizeObserver:",e)}})},cleanupResizeObserver(){if(this.resizeObserver)try{this.resizeObserver.disconnect()}catch(e){console.warn("Failed to disconnect ResizeObserver:",e)}finally{this.resizeObserver=null}},handleCopy(){navigator.clipboard&&window.isSecureContext?navigator.clipboard.writeText(this.text).then(()=>{this.$message.success(v("copySuccess"))}).catch(()=>{this.fallbackCopy()}):this.fallbackCopy()},fallbackCopy(){const e=document.createElement("textarea");e.value=this.text,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select();try{document.execCommand("copy"),this.$message.success(v("copySuccess"))}catch(i){this.$message.error(v("copyFailed"))}document.body.removeChild(e)}}},Ne={class:"ellipsis-text-container"};function Ee(e,i,l,a,n,o){const r=t.resolveComponent("CopyIcon"),d=t.resolveComponent("el-tooltip");return t.openBlock(),t.createBlock(d,t.mergeProps({disabled:o.tooltipDisabled,content:l.text,effect:"dark",placement:"top"},{[n.isVue2?"open-delay":"show-after"]:300}),{default:t.withCtx(()=>[t.createElementVNode("div",Ne,[t.createElementVNode("div",{ref:"textEl",class:"ellipsis-text",style:t.normalizeStyle(o.textStyle)},t.toDisplayString(l.text),5),t.createElementVNode("div",{class:t.normalizeClass(["toolbar",{multiline:n.currentLines>1&&l.lines>1}])},[l.copyable?(t.openBlock(),t.createBlock(r,{key:0,class:"icon-item",onClick:o.handleCopy},null,8,["onClick"])):t.createCommentVNode("",!0)],2)])]),_:1},16,["disabled","content"])}const E=y(Be,[["render",Ee],["__scopeId","data-v-a51a2011"]]);var Oe=Object.defineProperty,De=Object.defineProperties,Me=Object.getOwnPropertyDescriptors,ie=Object.getOwnPropertySymbols,Ae=Object.prototype.hasOwnProperty,He=Object.prototype.propertyIsEnumerable,ne=(e,i,l)=>i in e?Oe(e,i,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[i]=l,oe=(e,i)=>{for(var l in i||(i={}))Ae.call(i,l)&&ne(e,l,i[l]);if(ie)for(var l of ie(i))He.call(i,l)&&ne(e,l,i[l]);return e},ae=(e,i)=>De(e,Me(i));const Re={name:"RenderVue3",inheritAttrs:!1},Ie=t.defineComponent(ae(oe({},Re),{props:{renderFn:{type:Function},data:{}},setup(e){const i=e,l=t.useAttrs(),a=t.useSlots(),n=t.computed(()=>ae(oe({},i.data||{}),{$attrs:l,$slots:a})),o=t.computed(()=>{try{if(!i.renderFn||typeof i.renderFn!="function")return console.warn("[RenderComponent] renderFn must be a function"),null;const r=i.renderFn.toString(),d=/\(\s*h\s*[,)]/.test(r)||i.renderFn.length>=1;let c;return d?c=i.renderFn(t.h,n.value):c=i.renderFn(n.value),c}catch(r){return console.error("[RenderComponent] Error in render function:",r),null}});return(r,d)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value)))}})),Pe=!1,ve=!0,We={name:"FormItemLayout",components:{EllipsisText:E,RenderComponent:Ie},props:{direction:{type:String,default:"horizontal",validator:e=>["horizontal","vertical"].includes(e)},labelWidth:{type:[String,Number],default:120},inputWidth:{type:[String,Number],default:240},label:{type:[String,Function,Object,Array],default:""},labelOptions:{type:Array,default:()=>[]},field:{type:[String,Number],default:""}},data(){return{t:x().t,isVue2:Pe,isVue3:ve,getDefaultSize:V}},computed:{hasLabel(){return this.labelOptions&&this.labelOptions.length||this.label},containerStyle(){const e={};if(this.direction==="horizontal"){const i=this.hasLabel?this.parsedLabelWidth+this.parsedInputWidth:this.parsedInputWidth;e.width=`${i}px`}else e.width=`${this.parsedInputWidth}px`;return e},labelStyle(){const e={};return this.direction==="horizontal"?e.width=`${this.parsedLabelWidth}px`:e.width=`${this.parsedInputWidth}px`,e},inputStyle(){return{width:`${this.parsedInputWidth}px`}},parsedLabelWidth(){return typeof this.labelWidth=="string"?parseInt(this.labelWidth):this.labelWidth},parsedInputWidth(){return typeof this.inputWidth=="string"?parseInt(this.inputWidth):this.inputWidth},fieldValue:{get(){return this.field},set(e){this.$emit("field-change",e)}}},watch:{labelOptions:{handler(e){e&&e.length>0&&!this.field&&this.$emit("field-change",e[0].value)},deep:!0,immediate:!0}},methods:{handleFieldChange(e){this.$emit("field-change",e)}}},Ue={key:0,class:"label-text"},je={key:1,class:"label-render"};function Je(e,i,l,a,n,o){const r=t.resolveComponent("el-option"),d=t.resolveComponent("el-select"),c=t.resolveComponent("EllipsisText"),h=t.resolveComponent("RenderComponent");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["form-item-layout",{"form-item-layout--horizontal":l.direction==="horizontal","form-item-layout--vertical":l.direction==="vertical"}]),style:t.normalizeStyle(o.containerStyle)},[o.hasLabel?(t.openBlock(),t.createElementBlock("div",{key:0,class:"form-item-label",style:t.normalizeStyle(o.labelStyle)},[l.labelOptions&&l.labelOptions.length?(t.openBlock(),t.createBlock(d,{key:0,modelValue:o.fieldValue,"onUpdate:modelValue":i[0]||(i[0]=p=>o.fieldValue=p),placeholder:n.t("selectPlaceholder"),size:n.getDefaultSize(),class:"label-select",onChange:o.handleFieldChange},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.labelOptions,p=>(t.openBlock(),t.createBlock(r,{key:p.value,label:p.label,value:p.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","size","onChange"])):l.label?(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[typeof l.label=="string"?(t.openBlock(),t.createElementBlock("div",Ue,[t.createVNode(c,{text:l.label,lines:2},null,8,["text"])])):typeof l.label=="function"?(t.openBlock(),t.createElementBlock("div",je,[t.createVNode(h,{"render-fn":l.label},null,8,["render-fn"])])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],4)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"form-item-input",style:t.normalizeStyle(o.inputStyle)},[t.renderSlot(e.$slots,"default",{},void 0,!0)],4)],6)}const z=y(We,[["render",Je],["__scopeId","data-v-e75cd736"]]),Ke=!1,Qe=!0,H="modelValue",qe="update:modelValue",Ye={name:"TmSelectFilter",components:{FormItemLayout:z},props:{[H]:{type:[String,Number,Array],default:""},field:{type:[String,Number],default:""},options:{type:[Array,Function],default:()=>[]},labelOptions:{type:Array,default:()=>[]},label:{type:[String,Function,Object,Array],default:null},props:{type:Object,default:()=>({label:"label",value:"value"})},filterable:{type:Boolean,default:!0},clearable:{type:Boolean,default:!0},collapseTags:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},showCheckAll:{type:Boolean,default:!0},placeholder:{type:String,default:""},valueOnClear:{type:[String,Number,Boolean,Array,Function],default:void 0},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{t:x().t,isVue2:Ke,isVue3:Qe,getDefaultSize:V,optionsList:[],loading:!1,indeterminate:!1,checkAll:!1}},computed:{computedValue:{get(){return this[H]},set(e){let i=e;if(this.multiple&&Array.isArray(e)&&e.length===0&&this.valueOnClear!==void 0){const l=this[H];Array.isArray(l)&&l.length>0&&(i=typeof this.valueOnClear=="function"?this.valueOnClear():this.valueOnClear)}this.$emit(qe,i),this.$emit("change",i)}},propMap(){return{label:this.props.label||"label",value:this.props.value||"value"}}},watch:{[H](e){!this.multiple||!this.showCheckAll||(e.length===0?(this.checkAll=!1,this.indeterminate=!1):e.length===this.optionsList.length?(this.checkAll=!0,this.indeterminate=!1):this.indeterminate=!0)}},created(){this.initOptions()},methods:{handleFieldChange(e){this.$emit("field-change",e)},async initOptions(){if(Array.isArray(this.options))this.optionsList=this.options;else if(typeof this.options=="function")try{this.loading=!0;const e=await this.options();Array.isArray(e)&&(this.optionsList=e)}catch(e){console.error(e)}finally{this.loading=!1}},handleCheckAll(e){this.indeterminate=!1;let i=[];e&&(i=this.optionsList.map(l=>l[this.propMap.value])),this.computedValue=i},handleClear(){if(this.valueOnClear!==void 0){const e=typeof this.valueOnClear=="function"?this.valueOnClear():this.valueOnClear;this.$nextTick(()=>{this.computedValue=e})}}}},Ge={key:0,class:"check-all-option"};function Xe(e,i,l,a,n,o){const r=t.resolveComponent("el-checkbox"),d=t.resolveComponent("el-option"),c=t.resolveComponent("el-select"),h=t.resolveComponent("FormItemLayout");return t.openBlock(),t.createBlock(h,{label:l.label,"label-options":l.labelOptions,field:l.field,onFieldChange:o.handleFieldChange,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.createVNode(c,t.mergeProps({ref:"select",class:"select",onClear:o.handleClear,modelValue:o.computedValue,"onUpdate:modelValue":i[2]||(i[2]=p=>o.computedValue=p)},F(b({},e.$attrs),{size:n.getDefaultSize(),filterable:l.filterable,clearable:l.clearable,collapseTags:l.collapseTags,multiple:l.multiple,placeholder:l.placeholder,loading:n.loading}),t.toHandlers(n.isVue2?e.$listeners:{}),{loading:n.loading}),{header:t.withCtx(()=>[n.isVue3&&l.multiple&&l.showCheckAll?(t.openBlock(),t.createBlock(r,{key:0,modelValue:n.checkAll,"onUpdate:modelValue":i[1]||(i[1]=p=>n.checkAll=p),indeterminate:n.indeterminate,size:n.getDefaultSize(),onChange:o.handleCheckAll,style:{width:"100%",height:"20px","padding-left":"10px"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("all")),1)]),_:1},8,["modelValue","indeterminate","size","onChange"])):t.createCommentVNode("",!0)]),default:t.withCtx(()=>[n.isVue2&&l.multiple&&l.showCheckAll?(t.openBlock(),t.createElementBlock("div",Ge,[t.createVNode(r,{style:{width:"100%"},modelValue:n.checkAll,"onUpdate:modelValue":i[0]||(i[0]=p=>n.checkAll=p),indeterminate:n.indeterminate,size:n.getDefaultSize(),onChange:o.handleCheckAll},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("all")),1)]),_:1},8,["modelValue","indeterminate","size","onChange"])])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.optionsList,p=>(t.openBlock(),t.createBlock(d,{key:p[o.propMap.value],label:p[o.propMap.label],value:p[o.propMap.value],disabled:p.disabled},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"option",{item:p},()=>[t.createTextVNode(t.toDisplayString(p[o.propMap.label]),1)],!0)]),_:2},1032,["label","value","disabled"]))),128))]),_:3},16,["onClear","modelValue","loading"])]),_:3},8,["label","label-options","field","onFieldChange","label-width","input-width","direction"])}const W=y(Ye,[["render",Xe],["__scopeId","data-v-b85e9ccb"]]),Ze={name:"TmAdvancedInputFilter",components:{MoreIcon:Ve,FormItemLayout:z},props:{label:{type:[String,Function,Object,Array],default:""},value:{type:String,default:""},field:{type:[String,Number],default:""},placeholder:{type:String,default:""},multiple:{type:Boolean,default:!1},labelOptions:{type:Array,default:()=>[]},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{t:x().t,getDefaultSize:V,getCompatSize:N,exactValue:"",inputValue:"",isExactMode:!1,currentOptionMultiple:!1}},computed:{shouldShowMultiple(){return this.currentOptionMultiple!==null?this.currentOptionMultiple:this.multiple},selectedOption(){return!this.labelOptions||!this.labelOptions.length||!this.field?null:this.labelOptions.find(e=>e.value===this.field)}},watch:{isExactMode(e){e?this.$emit("value-change",this.exactValue):this.$emit("value-change",this.inputValue)},exactValue(e){this.$emit("value-change",e)},inputValue(e){this.$emit("value-change",e)},value:{handler(e){this.isExactMode?this.exactValue=e:this.inputValue=e},immediate:!0}},methods:{handlePopoverClose(){document.activeElement&&document.activeElement.blur(),this.isExactMode=!1},handleVisibleChange(e){this.isExactMode=e},handlefieldChange(e){this.$emit("field-change",e),this.updateCurrentOptionMultiple()},updateCurrentOptionMultiple(){const e=this.selectedOption;e&&"multiple"in e?this.currentOptionMultiple=e.multiple:this.currentOptionMultiple=this.multiple},handleExactSearch(){this.$emit("value-change",this.exactValue),this.$emit("search",this.exactValue)},handleClear(){this.exactValue="",this.$emit("value-change","")},handleEnter(){this.$emit("search")}},created(){this.updateCurrentOptionMultiple()}},$e={class:"popover-content"},et={class:"popover-subtitle"},tt={class:"popover-footer"};function lt(e,i,l,a,n,o){const r=t.resolveComponent("el-input"),d=t.resolveComponent("el-button"),c=t.resolveComponent("MoreIcon"),h=t.resolveComponent("el-popover"),p=t.resolveComponent("FormItemLayout");return t.openBlock(),t.createBlock(p,{label:l.label,"label-options":l.labelOptions,field:l.field,onFieldChange:o.handlefieldChange,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.createVNode(r,{modelValue:n.inputValue,"onUpdate:modelValue":i[1]||(i[1]=_=>n.inputValue=_),size:n.getDefaultSize(),placeholder:l.placeholder,onKeyup:t.withKeys(o.handleEnter,["enter","native"]),clearable:"",class:"advanced-input"},t.createSlots({_:2},[o.shouldShowMultiple?{name:"append",fn:t.withCtx(()=>[t.createVNode(h,{visible:n.isExactMode,placement:"bottom-end",width:260,trigger:"click","onUpdate:visible":o.handleVisibleChange},{reference:t.withCtx(()=>[t.createVNode(c,{style:{cursor:"pointer"}})]),default:t.withCtx(()=>[t.createElementVNode("div",$e,[t.createElementVNode("p",et,t.toDisplayString(n.t("accurateSearchTips")),1),t.createVNode(r,{size:n.getDefaultSize(),type:"textarea",rows:8,modelValue:n.exactValue,"onUpdate:modelValue":i[0]||(i[0]=_=>n.exactValue=_),placeholder:n.t("accurateSearchPlaceholder"),style:{"font-size":"12px"}},null,8,["size","modelValue","placeholder"]),t.createElementVNode("div",tt,[t.createVNode(d,{style:{float:"left"},size:n.getCompatSize("mini"),onClick:o.handleClear},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("clear")),1)]),_:1},8,["size","onClick"]),t.createVNode(d,{size:n.getCompatSize("mini"),onClick:o.handlePopoverClose},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("cancel")),1)]),_:1},8,["size","onClick"]),t.createVNode(d,{type:"primary",size:n.getCompatSize("mini"),onClick:o.handleExactSearch},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("search")),1)]),_:1},8,["size","onClick"])])])]),_:1},8,["visible","onUpdate:visible"])]),key:"0"}:void 0]),1032,["modelValue","size","placeholder","onKeyup"])]),_:1},8,["label","label-options","field","onFieldChange","label-width","input-width","direction"])}const U=y(Ze,[["render",lt],["__scopeId","data-v-1a69f415"]]),{t:C}=x(),it=!1,nt=!0,ot="modelValue",at={name:"TmAdvancedDateFilter",components:{FormItemLayout:z},props:{value:{type:[Array,String,Date],default:()=>null},field:{type:[String,Number],default:""},start:{type:[String,Number],default:""},end:{type:[String,Number],default:""},size:{type:String,default:"mini"},labelOptions:{type:Array,default:()=>[]},label:{type:[String,Function,Object,Array],default:""},type:{type:String,default:"daterange",validator:e=>["date","daterange","datetime","datetimerange","year","month","dates","months","years","week","monthrange"].includes(e)},format:{type:String,default:""},startPlaceholder:{type:String,default:void 0},endPlaceholder:{type:String,default:void 0},placeholder:{type:String,default:void 0},rangeSeparator:{type:String,default:"-"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},readonly:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},align:{type:String,default:"left"},popperClass:{type:String,default:""},defaultValue:{type:[Date,Array],default:null},defaultTime:{type:[Date,String,Array],default:null},shortcuts:{type:Array,default:()=>[]},pastOnly:{type:Boolean,default:!1},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},computed:{isRangeType(){return["daterange","datetimerange","monthrange"].includes(this.type)},computedStartPlaceholder(){if(this.isRangeType)return this.startPlaceholder!==void 0?this.startPlaceholder:C("startDate")},computedEndPlaceholder(){if(this.isRangeType)return this.endPlaceholder!==void 0?this.endPlaceholder:C("endDate")},computedFormat(){const e="YYYY";return this.format?this.format:this.type==="year"?e:this.type==="month"?`${e}-MM`:this.type==="date"?`${e}-MM-DD`:this.type==="dates"?`${e}-MM-DD`:this.type==="months"?`${e}-MM`:this.type==="years"?e:this.type==="week"?`${e}-MM-WW`:this.type==="datetime"?`${e}-MM-DD HH:mm:ss`:this.type==="datetimerange"?`${e}-MM-DD HH:mm:ss`:this.type==="daterange"?`${e}-MM-DD`:this.type==="monthrange"?`${e}-MM`:""},computedPickerOptions(){const e={};if(this.pastOnly&&(e.disabledDate=i=>i.getTime()>Date.now()),["daterange","datetimerange"].includes(this.type)){const i=this.type==="datetimerange";e.shortcuts=this.shortcuts.length>0?this.shortcuts:[{text:C("today"),onClick(l){const a=new Date,n=new Date;i&&(n.setHours(0,0,0,0),a.setHours(23,59,59,999)),l.$emit("pick",[n,a])}},{text:C("yesterday"),onClick(l){const a=new Date,n=new Date;n.setTime(n.getTime()-3600*1e3*24),a.setTime(a.getTime()-3600*1e3*24),i&&(n.setHours(0,0,0,0),a.setHours(23,59,59,999)),l.$emit("pick",[n,a])}},{text:C("last7days"),onClick(l){const a=new Date,n=new Date;n.setTime(n.getTime()-3600*1e3*24*7),i&&(n.setHours(0,0,0,0),a.setHours(23,59,59,999)),l.$emit("pick",[n,a])}},{text:C("last30days"),onClick(l){const a=new Date,n=new Date;n.setTime(n.getTime()-3600*1e3*24*30),i&&(n.setHours(0,0,0,0),a.setHours(23,59,59,999)),l.$emit("pick",[n,a])}},{text:C("thisMonth"),onClick(l){const a=new Date,n=new Date;n.setDate(1),i&&(n.setHours(0,0,0,0),a.setHours(23,59,59,999)),l.$emit("pick",[n,a])}},{text:C("lastMonth"),onClick(l){const a=new Date,n=new Date;n.setMonth(n.getMonth()-1),n.setDate(1),a.setDate(0),i&&(n.setHours(0,0,0,0),a.setHours(23,59,59,999)),l.$emit("pick",[n,a])}}]}return e},computedShortcuts(){if(!["daterange","datetimerange"].includes(this.type))return[];if(this.shortcuts&&this.shortcuts.length>0)return this.shortcuts;const e=this.type==="datetimerange";return[{text:C("today"),value:()=>{const i=new Date,l=new Date;return e&&(l.setHours(0,0,0,0),i.setHours(23,59,59,999)),[l,i]}},{text:C("yesterday"),value:()=>{const i=new Date,l=new Date;return l.setTime(l.getTime()-3600*1e3*24),i.setTime(i.getTime()-3600*1e3*24),e&&(l.setHours(0,0,0,0),i.setHours(23,59,59,999)),[l,i]}},{text:C("last7days"),value:()=>{const i=new Date,l=new Date;return l.setTime(l.getTime()-3600*1e3*24*7),e&&(l.setHours(0,0,0,0),i.setHours(23,59,59,999)),[l,i]}},{text:C("last30days"),value:()=>{const i=new Date,l=new Date;return l.setTime(l.getTime()-3600*1e3*24*30),e&&(l.setHours(0,0,0,0),i.setHours(23,59,59,999)),[l,i]}},{text:C("thisMonth"),value:()=>{const i=new Date,l=new Date;return l.setDate(1),e&&(l.setHours(0,0,0,0),i.setHours(23,59,59,999)),[l,i]}},{text:C("lastMonth"),value:()=>{const i=new Date,l=new Date;return l.setMonth(l.getMonth()-1),l.setDate(1),i.setDate(0),e&&(l.setHours(0,0,0,0),i.setHours(23,59,59,999)),[l,i]}}]},computedDisabledDate(){return this.pastOnly?e=>e.getTime()>Date.now():null},computedDefaultTime(){let e=this.defaultTime;if(this.type==="datetimerange"&&!this.defaultTime&&(e=["00:00:00","23:59:59"]),this.isVue2)return e;if(e){if(this.type==="datetimerange"&&Array.isArray(e))return e.map(i=>{if(typeof i=="string"){const l=new Date,[a,n,o]=i.split(":").map(Number);return new Date(l.getFullYear(),l.getMonth(),l.getDate(),a,n,o||0)}return i});if(this.type==="datetime"&&typeof e=="string"){const i=new Date,[l,a,n]=e.split(":").map(Number);return new Date(i.getFullYear(),i.getMonth(),i.getDate(),l,a,n||0)}return e}},dateValue(){return this.isRangeType?this.start||this.end?[this.start,this.end]:this.value:this.value}},data(){return{t:C,isVue2:it,isVue3:nt,getDefaultSize:V,valueField:ot}},methods:{handleFieldChange(e){this.$emit("field-change",e)},handleDateChange(e){this.isRangeType?(this.$emit("value-change",e),e&&Array.isArray(e)&&e.length===2?(this.$emit("start-change",e),this.$emit("end-change",e)):(this.$emit("start-change",[]),this.$emit("end-change",[]))):this.$emit("value-change",e)},handleBlur(e){this.$emit("blur",e)},handleFocus(e){this.$emit("focus",e)}}};function st(e,i,l,a,n,o){const r=t.resolveComponent("el-date-picker"),d=t.resolveComponent("FormItemLayout");return t.openBlock(),t.createBlock(d,{label:l.label,"label-options":l.labelOptions,field:l.field,onFieldChange:o.handleFieldChange,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.createVNode(r,{"model-value":o.dateValue,type:l.type,size:n.getDefaultSize(),"range-separator":l.rangeSeparator,"start-placeholder":o.computedStartPlaceholder,"end-placeholder":o.computedEndPlaceholder,placeholder:l.placeholder,shortcuts:o.computedShortcuts,"disabled-date":o.computedDisabledDate,class:"date-picker",format:o.computedFormat,"value-format":o.computedFormat,disabled:l.disabled,clearable:l.clearable,readonly:l.readonly,editable:l.editable,teleported:!1,"popper-class":l.popperClass,"default-value":l.defaultValue,"default-time":o.computedDefaultTime,"onUpdate:modelValue":o.handleDateChange,onChange:o.handleDateChange,onBlur:o.handleBlur,onFocus:o.handleFocus},null,8,["model-value","type","size","range-separator","start-placeholder","end-placeholder","placeholder","shortcuts","disabled-date","format","value-format","disabled","clearable","readonly","editable","popper-class","default-value","default-time","onUpdate:modelValue","onChange","onBlur","onFocus"])]),_:1},8,["label","label-options","field","onFieldChange","label-width","input-width","direction"])}const j=y(at,[["render",st],["__scopeId","data-v-6d9d8fa1"]]),rt=!1,ct={name:"TmCascaderFilter",components:{FormItemLayout:z},props:{value:{type:[String,Number,Array],default:""},options:{type:[Array,Function],default:()=>[]},label:{type:[String,Function,Object,Array],default:null},props:{type:Object,default:()=>({label:"label",value:"value",children:"children",expandTrigger:"hover"})},filterable:{type:Boolean,default:!0},clearable:{type:Boolean,default:!0},collapseTags:{type:Boolean,default:!0},collapseTagsTooltip:{type:Boolean,default:!0},placeholder:{type:String,default:""},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{isVue2:rt,getDefaultSize:V,selectedValue:this.value,optionsList:[],loading:!1}},computed:{propMap(){return{label:this.props.label||"label",value:this.props.value||"value",children:this.props.children||"children"}},cascaderProps(){return F(b({},this.props),{expandTrigger:this.props.expandTrigger||"hover"})}},watch:{value:{immediate:!0,handler(e){this.selectedValue=e}},options:{immediate:!0,handler(e){this.initOptions(e)}},selectedValue(e){this.$emit("input",e),this.$emit("change",e)}},methods:{async initOptions(e){if(typeof e=="function")try{this.loading=!0;const i=await e();Array.isArray(i)&&(this.optionsList=i)}catch(i){console.error(i)}finally{this.loading=!1}else Array.isArray(e)&&(this.optionsList=e)}}},dt={class:"cascader"};function ht(e,i,l,a,n,o){const r=t.resolveComponent("el-cascader"),d=t.resolveComponent("FormItemLayout");return t.openBlock(),t.createBlock(d,{label:l.label,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.createElementVNode("div",dt,[t.createVNode(r,t.mergeProps({ref:"cascader",modelValue:n.selectedValue,"onUpdate:modelValue":i[0]||(i[0]=c=>n.selectedValue=c)},F(b({},e.$attrs),{size:n.getDefaultSize(),filterable:l.filterable,clearable:l.clearable,collapseTags:l.collapseTags,collapseTagsTooltip:l.collapseTagsTooltip,props:o.cascaderProps,placeholder:l.placeholder,options:n.optionsList,loading:n.loading}),t.toHandlers(n.isVue2?e.$listeners:{})),{default:t.withCtx(({node:c,data:h})=>[t.renderSlot(e.$slots,"default",{node:c,data:h},()=>[t.createElementVNode("span",null,t.toDisplayString(h[o.propMap.label]),1)],!0)]),_:3},16,["modelValue"])])]),_:3},8,["label","label-width","input-width","direction"])}const J=y(ct,[["render",ht],["__scopeId","data-v-7cde104c"]]),ut=!1,pt=!0,mt={name:"TmRadioFilter",components:{FormItemLayout:z},props:{value:{type:[String,Number],default:""},options:{type:[Array,Function],default:()=>[]},props:{type:Object,default:()=>({label:"label",value:"value"})},size:{type:String,default:"mini"},width:{type:[String,Number],default:200},label:{type:[String,Function,Object,Array],default:null},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{isVue2:ut,isVue3:pt,getDefaultSize:V,selectedValue:this.value,optionsList:[],loading:!1}},computed:{propMap(){return{label:this.props.label||"label",value:this.props.value||"value"}}},watch:{value:{immediate:!0,handler(e){this.selectedValue=e}},options:{immediate:!0,handler(e){this.$slots.default||this.initOptions(e)}},selectedValue(e){this.$emit("input",e),this.$emit("change",e)}},methods:{async initOptions(e){if(typeof e=="function")try{this.loading=!0;const i=await e();Array.isArray(i)&&(this.optionsList=i)}catch(i){console.error(i)}finally{this.loading=!1}else Array.isArray(e)&&(this.optionsList=e)}}};function ft(e,i,l,a,n,o){const r=t.resolveComponent("el-radio-button"),d=t.resolveComponent("el-radio-group"),c=t.resolveComponent("FormItemLayout");return t.openBlock(),t.createBlock(c,{label:l.label,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.createVNode(d,t.mergeProps({ref:"radioGroup",modelValue:n.selectedValue,"onUpdate:modelValue":i[0]||(i[0]=h=>n.selectedValue=h)},F(b({},e.$attrs),{size:n.getDefaultSize()}),{class:"radio-group"},t.toHandlers(n.isVue2?e.$listeners:{})),{default:t.withCtx(()=>[e.$slots.default?t.renderSlot(e.$slots,"default",{key:0},void 0,!0):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(n.optionsList,h=>(t.openBlock(),t.createBlock(r,t.mergeProps({ref_for:!0},{[n.isVue3?"value":"label"]:h[o.propMap.value],disabled:h.disabled},{style:{flex:"1"},key:h[o.propMap.value]}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"option",{item:h},()=>[t.createTextVNode(t.toDisplayString(h[o.propMap.label]),1)],!0)]),_:2},1040))),128))]),_:3},16,["modelValue"])]),_:3},8,["label","label-width","input-width","direction"])}const K=y(mt,[["render",ft],["__scopeId","data-v-44b00fff"]]),gt=!1,bt=!0,yt={name:"TmCheckboxFilter",components:{FormItemLayout:z},props:{value:{type:Array,default:()=>[]},options:{type:[Array,Function],default:()=>[]},props:{type:Object,default:()=>({label:"label",value:"value"})},size:{type:String,default:"mini"},label:{type:[String,Function,Object,Array],default:null},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{isVue2:gt,isVue3:bt,getDefaultSize:V,selectedValue:this.value||[],optionsList:[],loading:!1}},computed:{propMap(){return{label:this.props.label||"label",value:this.props.value||"value"}}},watch:{value:{immediate:!0,handler(e){this.selectedValue=e||[]}},options:{immediate:!0,handler(e){this.$slots.default||this.initOptions(e)}},selectedValue(e){this.$emit("input",e),this.$emit("change",e)}},methods:{async initOptions(e){if(typeof e=="function")try{this.loading=!0;const i=await e();Array.isArray(i)&&(this.optionsList=i)}catch(i){console.error(i)}finally{this.loading=!1}else Array.isArray(e)&&(this.optionsList=e)}}},Ct={class:"checkbox-content"};function _t(e,i,l,a,n,o){const r=t.resolveComponent("el-checkbox-button"),d=t.resolveComponent("el-checkbox-group"),c=t.resolveComponent("FormItemLayout");return t.openBlock(),t.createBlock(c,{label:l.label,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.createElementVNode("div",Ct,[t.createVNode(d,t.mergeProps({ref:"checkboxGroup",modelValue:n.selectedValue,"onUpdate:modelValue":i[0]||(i[0]=h=>n.selectedValue=h)},F(b({},e.$attrs),{size:n.getDefaultSize()}),t.toHandlers(n.isVue2?e.$listeners:{})),{default:t.withCtx(()=>[e.$slots.default?t.renderSlot(e.$slots,"default",{key:0},void 0,!0):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(n.optionsList,h=>(t.openBlock(),t.createBlock(r,t.mergeProps({key:h[o.propMap.value]},{ref_for:!0},{[n.isVue3?"value":"label"]:h[o.propMap.value],disabled:h.disabled},{style:{flex:"1"}}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"option",{item:h},()=>[t.createTextVNode(t.toDisplayString(h[o.propMap.label]),1)],!0)]),_:2},1040))),128))]),_:3},16,["modelValue"])])]),_:3},8,["label","label-width","input-width","direction"])}const Q=y(yt,[["render",_t],["__scopeId","data-v-d9e8a314"]]),St=!1,Vt={name:"TmSwitchFilter",components:{FormItemLayout:z},props:{value:{type:Boolean,default:!1},label:{type:[String,Function,Object,Array],default:""},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{isVue2:St,getDefaultSize:V,switchValue:this.value}},watch:{value:{immediate:!0,handler(e){this.switchValue=e}},switchValue(e){this.$emit("input",e),this.$emit("change",e)}}},xt={class:"switch-content"};function kt(e,i,l,a,n,o){const r=t.resolveComponent("el-switch"),d=t.resolveComponent("FormItemLayout");return t.openBlock(),t.createBlock(d,{label:l.label,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.createElementVNode("div",xt,[t.createVNode(r,t.mergeProps({ref:"switch",modelValue:n.switchValue,"onUpdate:modelValue":i[0]||(i[0]=c=>n.switchValue=c)},e.$attrs,t.toHandlers(n.isVue2?e.$listeners:{}),{size:n.getDefaultSize()}),null,16,["modelValue","size"])])]),_:1},8,["label","label-width","input-width","direction"])}const q=y(Vt,[["render",kt],["__scopeId","data-v-5ca0dc56"]]),Tt={name:"DynamicSlot",props:{name:{type:String,required:!0},slotProps:{type:Object,default:()=>({})}},render(e){var n;const i=o=>{var r;return o?(r=o.$slots)==null?void 0:r[this.name]:null},l=o=>{var r,d,c,h;return o?((d=(r=o.$)==null?void 0:r.type)==null?void 0:d.name)==="TmTable"||((h=(c=o.$)==null?void 0:c.type)==null?void 0:h.__name)==="TmTable":!1};let a=i(this.$parent);if(!a){let o=(n=this.$parent)==null?void 0:n.$parent;for(;o&&!a;){if(l(o)){a=i(o);break}o=o.$parent}}return a?typeof a=="function"?a(this.slotProps):a:null}},{t:wt}=x(),Ft=!1,zt=!0,Lt=["date","daterange","datetime","datetimerange","year","month","dates","months","years","week","monthrange"],Bt={name:"TmTableSearch",components:{TmSelect:W,TmAdvancedInput:U,TmAdvancedDate:j,TmCascader:J,TmRadio:K,TmCheckbox:Q,TmSwitch:q,DynamicSlot:Tt},props:{disabled:{type:Boolean,default:!1},searchColumns:{type:Array,default:null},searchForm:{type:Object,default:()=>({})},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{t:wt,isVue2:Ft,isVue3:zt,getCompatSize:N,getDefaultSize:V,DATE_TYPES:Lt,defaultValues:{}}},computed:{computedSearchForm:{get(){return this.searchForm},set(e){this.$emit("update:search-form",e)}},getLayoutProps(){return e=>{const i={};return e.labelWidth!==void 0?i.labelWidth=e.labelWidth:this.labelWidth!==void 0&&(i.labelWidth=this.labelWidth),e.inputWidth!==void 0?i.inputWidth=e.inputWidth:this.inputWidth!==void 0&&(i.inputWidth=this.inputWidth),e.direction!==void 0?i.direction=e.direction:this.direction!==void 0&&(i.direction=this.direction),i}}},mounted(){this.initDefaultValues()},methods:{isDateType(e){return this.DATE_TYPES.includes(e)},hasDefaultSlot(){const e=this.$slots.default;return e?this.isVue2?!!e:e()[0].children.length>0:!1},handleUpdate(e,i,l){const a=this.getFieldValue(e,l);a&&this.$emit("update:search-form",F(b({},this.computedSearchForm),{[a]:i}))},handleUpdateDate(e,i){const l=i||[],a=this.getFieldValue(e,"start"),n=this.getFieldValue(e,"end"),o=this.getFieldValue(e,"value"),r={};a&&(r[a]=l[0]),n&&(r[n]=l[1]),o&&(r[o]=l),this.$emit("update:search-form",b(b({},this.computedSearchForm),r))},getFieldValue(e,i){if(typeof e=="string")return e;if(e.fields&&i in e.fields){const l=e.fields[i];if(typeof l=="string")return l;if(Array.isArray(l))return l[0];if(l&&typeof l=="object")return l.name}},getFieldDefault(e,i){if(e.fields&&i in e.fields){const l=e.fields[i];if(Array.isArray(l)&&l.length>1)return l[1];if(l&&typeof l=="object"&&"default"in l)return l.default}},hasSearchSlot(e){const i="$slots";if(this[i][e])return!0;let a=this.$parent;for(;a;){const n=a[i];if(a.$options.name==="TmTable"&&(n!=null&&n[e]))return!0;a=a.$parent}return!1},initDefaultValues(){if(!this.searchColumns||!this.searchColumns.length)return;const e={};this.searchColumns.forEach(i=>{if(typeof i=="string"||!i.fields)return;const l=this.getFieldValue(i,"value"),a=this.getFieldValue(i,"label");if(i.type==="input"&&i.labelOptions&&i.labelOptions.length>0){const o=i.labelOptions[0];if(a)if(a in this.computedSearchForm)e[a]=this.computedSearchForm[a];else{const r=this.getFieldDefault(i,"label");r!==void 0?e[a]=r:o&&o.value!==void 0&&(e[a]=o.value)}l&&!(l in this.computedSearchForm)&&(e[l]="")}else if(this.isDateType(i.type)&&i.labelOptions&&i.labelOptions.length>0){const o=i.labelOptions[0];if(l&&!(l in this.computedSearchForm)&&(e[l]=[]),a)if(a in this.computedSearchForm)e[a]=this.computedSearchForm[a];else{const r=this.getFieldDefault(i,"label");r!==void 0?e[a]=r:o&&o.value!==void 0&&(e[a]=o.value)}}else if(i.type==="select"&&i.labelOptions&&i.labelOptions.length>0){const o=i.labelOptions[0];if(l&&!(l in this.computedSearchForm)&&(e[l]=i.multiple?[]:""),a)if(a in this.computedSearchForm)e[a]=this.computedSearchForm[a];else{const r=this.getFieldDefault(i,"label");r!==void 0?e[a]=r:o&&o.value!==void 0&&(e[a]=o.value)}}const n=this.getFieldDefault(i,"value");if(l&&n!==void 0&&!(l in this.computedSearchForm)?this.isDateType(i.type)&&!Array.isArray(n)?e[l]=[]:i.type==="checkbox"&&!Array.isArray(n)?e[l]=n?[n]:[]:i.type==="switch"&&typeof n!="boolean"?e[l]=!!n:e[l]=n:l&&!(l in this.computedSearchForm)&&(i.type==="checkbox"?e[l]=[]:i.type==="switch"&&(e[l]=!1)),this.isDateType(i.type)){const o=this.getFieldValue(i,"start"),r=this.getFieldValue(i,"end"),d=this.getFieldDefault(i,"start"),c=this.getFieldDefault(i,"end");o&&d!==void 0&&!(o in this.computedSearchForm)&&(e[o]=d),r&&c!==void 0&&!(r in this.computedSearchForm)&&(e[r]=c)}}),this.defaultValues=e,this.$emit("update:search-form",b(b({},e),this.computedSearchForm))},getSearchForm(){return this.computedSearchForm},handleSearch(){setTimeout(()=>{this.$emit("search",this.computedSearchForm)})},handleReset(){this.$emit("update:search-form",b({},this.defaultValues)),this.$emit("reset")}}},Nt={class:"search-content"},Et={class:"search-actions"};function Ot(e,i,l,a,n,o){const r=t.resolveComponent("dynamic-slot"),d=t.resolveComponent("tm-advanced-input"),c=t.resolveComponent("tm-advanced-date"),h=t.resolveComponent("tm-select"),p=t.resolveComponent("tm-cascader"),_=t.resolveComponent("tm-radio"),T=t.resolveComponent("tm-checkbox"),O=t.resolveComponent("tm-switch"),L=t.resolveComponent("el-button");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["table-search",`table-search--${n.isVue2?"v2":"v3"}`])},[t.createElementVNode("div",Nt,[o.hasDefaultSlot()?t.renderSlot(e.$slots,"default",{key:0},void 0,!0):l.searchColumns&&l.searchColumns.length?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(l.searchColumns,(s,w)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[typeof s=="string"?(t.openBlock(),t.createElementBlock("div",{key:`str-${s}-${w}`,class:"search-item"},[(t.openBlock(),t.createBlock(r,{name:`search-${s}`,"slot-props":{searchForm:l.searchForm},key:s},null,8,["name","slot-props"]))])):(t.openBlock(),t.createElementBlock("div",{key:`obj-${w}`,class:"search-item"},[s.fields?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[o.hasSearchSlot(`search-${o.getFieldValue(s,"value")}`)?(t.openBlock(),t.createBlock(r,{name:`search-${o.getFieldValue(s,"value")}`,"slot-props":{searchForm:l.searchForm,col:s},key:o.getFieldValue(s,"value")},null,8,["name","slot-props"])):(t.openBlock(),t.createElementBlock("div",{style:{display:"flex"},key:o.getFieldValue(s,"value")||`col-${w}`},[s.type==="input"?(t.openBlock(),t.createBlock(d,t.mergeProps({key:0,label:s.label,value:o.computedSearchForm[o.getFieldValue(s,"value")],field:o.computedSearchForm[o.getFieldValue(s,"label")],onValueChange:f=>o.handleUpdate(s,f,"value"),onFieldChange:f=>o.handleUpdate(s,f,"label"),multiple:s.multiple,labelOptions:s.labelOptions,placeholder:s.placeholder,onSearch:o.handleSearch},{ref_for:!0},o.getLayoutProps(s)),null,16,["label","value","field","onValueChange","onFieldChange","multiple","labelOptions","placeholder","onSearch"])):t.createCommentVNode("",!0),o.isDateType(s.type)?(t.openBlock(),t.createBlock(c,t.mergeProps({key:1,type:s.type,label:s.label,value:o.computedSearchForm[o.getFieldValue(s,"value")],field:o.computedSearchForm[o.getFieldValue(s,"label")],start:o.computedSearchForm[o.getFieldValue(s,"start")],end:o.computedSearchForm[o.getFieldValue(s,"end")],onFieldChange:f=>o.handleUpdate(s,f,"label"),onValueChange:f=>o.handleUpdateDate(s,f),onStartChange:f=>o.handleUpdateDate(s,f),onEndChange:f=>o.handleUpdateDate(s,f),labelOptions:s.labelOptions,"start-placeholder":s.startPlaceholder,"end-placeholder":s.endPlaceholder,placeholder:s.placeholder,"range-separator":s.rangeSeparator,disabled:s.disabled,clearable:s.clearable,readonly:s.readonly,editable:s.editable,align:s.align,"popper-class":s.popperClass,"default-value":s.defaultValue,"default-time":s.defaultTime,shortcuts:s.shortcuts,"past-only":s.pastOnly,format:s.format},{ref_for:!0},o.getLayoutProps(s)),null,16,["type","label","value","field","start","end","onFieldChange","onValueChange","onStartChange","onEndChange","labelOptions","start-placeholder","end-placeholder","placeholder","range-separator","disabled","clearable","readonly","editable","align","popper-class","default-value","default-time","shortcuts","past-only","format"])):t.createCommentVNode("",!0),s.type==="select"?(t.openBlock(),t.createBlock(h,t.mergeProps({key:2,label:s.label,modelValue:o.computedSearchForm[o.getFieldValue(s,"value")],"onUpdate:modelValue":f=>o.computedSearchForm[o.getFieldValue(s,"value")]=f,field:o.computedSearchForm[o.getFieldValue(s,"label")],options:s.options,labelOptions:s.labelOptions,placeholder:s.placeholder,multiple:s.multiple,"show-check-all":s.checkAll,"value-on-clear":s.valueOnClear,clearable:s.clearable,onFieldChange:f=>o.handleUpdate(s,f,"label")},{ref_for:!0},o.getLayoutProps(s)),null,16,["label","modelValue","onUpdate:modelValue","field","options","labelOptions","placeholder","multiple","show-check-all","value-on-clear","clearable","onFieldChange"])):t.createCommentVNode("",!0),s.type==="cascader"?(t.openBlock(),t.createBlock(p,t.mergeProps({key:3,modelValue:o.computedSearchForm[o.getFieldValue(s,"value")],"onUpdate:modelValue":f=>o.computedSearchForm[o.getFieldValue(s,"value")]=f,label:s.label,options:s.options,labelOptions:s.labelOptions,props:s.props,placeholder:s.placeholder,"show-check-all":s.checkAll},{ref_for:!0},o.getLayoutProps(s)),null,16,["modelValue","onUpdate:modelValue","label","options","labelOptions","props","placeholder","show-check-all"])):t.createCommentVNode("",!0),s.type==="radio"?(t.openBlock(),t.createBlock(_,t.mergeProps({key:4,modelValue:o.computedSearchForm[o.getFieldValue(s,"value")],"onUpdate:modelValue":f=>o.computedSearchForm[o.getFieldValue(s,"value")]=f,label:s.label,options:s.options,props:s.props},{ref_for:!0},o.getLayoutProps(s)),null,16,["modelValue","onUpdate:modelValue","label","options","props"])):t.createCommentVNode("",!0),s.type==="checkbox"?(t.openBlock(),t.createBlock(T,t.mergeProps({key:5,modelValue:o.computedSearchForm[o.getFieldValue(s,"value")],"onUpdate:modelValue":f=>o.computedSearchForm[o.getFieldValue(s,"value")]=f,label:s.label,options:s.options,props:s.props},{ref_for:!0},o.getLayoutProps(s)),null,16,["modelValue","onUpdate:modelValue","label","options","props"])):t.createCommentVNode("",!0),s.type==="switch"?(t.openBlock(),t.createBlock(O,t.mergeProps({key:6,modelValue:o.computedSearchForm[o.getFieldValue(s,"value")],"onUpdate:modelValue":f=>o.computedSearchForm[o.getFieldValue(s,"value")]=f,"active-text":s.activeText,"inactive-text":s.inactiveText,label:s.label,"active-color":s.activeColor,"inactive-color":s.inactiveColor},{ref_for:!0},o.getLayoutProps(s)),null,16,["modelValue","onUpdate:modelValue","active-text","inactive-text","label","active-color","inactive-color"])):t.createCommentVNode("",!0)]))],64)):(t.openBlock(),t.createElementBlock("div",{key:`error-${w}`,class:"search-error-message"}," 缺少 fields 配置,无法渲染此组件 "))]))],64))),256)):t.createCommentVNode("",!0),t.createElementVNode("div",Et,[t.createVNode(L,{type:"primary",size:n.getDefaultSize(),onClick:o.handleSearch},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("query")),1)]),_:1},8,["size","onClick"]),t.createVNode(L,{size:n.getDefaultSize(),onClick:o.handleReset},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("reset")),1)]),_:1},8,["size","onClick"])])])],2)}const Y=y(Bt,[["render",Ot],["__scopeId","data-v-4c4fd376"]]),Dt=!1,Mt={name:"TablePagination",props:{current:{type:Number,default:1},small:{type:Boolean,default:!0},pageSize:{type:Number,default:20},total:{type:Number,default:0}},data(){return{isVue2:Dt,getCompatSize:N}},methods:{handleSizeChange(e){this.$emit("size-change",e)},handleCurrentChange(e){this.$emit("current-change",e)}}},At={class:"tm-pagination"};function Ht(e,i,l,a,n,o){const r=t.resolveComponent("el-pagination");return t.openBlock(),t.createElementBlock("div",At,[t.createVNode(r,t.mergeProps(e.$attrs,t.toHandlers(n.isVue2?e.$listeners:{}),{style:{"text-align":"right"},"current-page":l.current,"page-size":l.pageSize,total:l.total,"page-sizes":[10,20,50,100,300,500,1e3,2e3],size:n.getCompatSize("mini"),layout:"total, sizes, prev, pager, next, jumper",onSizeChange:o.handleSizeChange,"onUpdate:currentPage":i[0]||(i[0]=d=>e.$emit("update:current",d)),"onUpdate:pageSize":i[1]||(i[1]=d=>e.$emit("update:pageSize",d)),onCurrentChange:o.handleCurrentChange}),null,16,["current-page","page-size","total","size","onSizeChange","onCurrentChange"])])}const Rt=y(Mt,[["render",Ht],["__scopeId","data-v-4dbdf6e7"]]),It={name:"TmTableMenu",props:{size:{type:String,default:"mini"}}},Pt={size:"small",class:"tm-table-menu",inline:""},vt={class:"left"},Wt={class:"right"};function Ut(e,i,l,a,n,o){return t.openBlock(),t.createElementBlock("div",Pt,[t.createElementVNode("div",vt,[t.renderSlot(e.$slots,"left",{},void 0,!0)]),t.createElementVNode("div",Wt,[t.renderSlot(e.$slots,"right",{},void 0,!0)])])}const jt=y(It,[["render",Ut],["__scopeId","data-v-579dd2c3"]]),R=e=>e?e.props||{}:{},G=(e,i)=>{e&&(e.props||(e.props={}),typeof i=="object"&&Object.assign(e.props,i))},I={getTableConfig(e){try{const i=localStorage.getItem(`tm-table-config-${e}`);return Promise.resolve({data:{code:200,data:i}})}catch(i){return Promise.reject(i)}},setTableConfig(e){try{return localStorage.setItem(`tm-table-config-${e.key}`,e.info),Promise.resolve({data:{code:200,message:"success"}})}catch(i){return Promise.reject(i)}}},Jt=e=>I.getTableConfig(e.key),Kt=e=>I.setTableConfig(e),Qt=e=>{e&&(typeof e.getTableConfig=="function"&&(I.getTableConfig=e.getTableConfig),typeof e.setTableConfig=="function"&&(I.setTableConfig=e.setTableConfig))},{t:qt}=x(),Yt=!1,Gt=!0,Xt={formatter:(e,i,l,a)=>[void 0,null,""].includes(l)?"-":l},Zt={name:"TmColumnConfig",components:{MoveIcon:Se,FixedLeftIcon:xe,FixedRightIcon:ke,UploadIcon:Te,DownloadIcon:we,DeleteIcon:Fe,MenuIcon:Ce,tmEllipsisText:E},props:{columns:{type:Array,default:()=>[]},tableKey:{type:String,default:"",required:!0},defaultColumns:{type:Array,default:()=>[]},maxFixedLeftQuantity:{type:[Number,String],default:void 0},maxFixedRightQuantity:{type:[Number,String],default:void 0},ignoredColumnConfigTypes:{type:Array,default:()=>["selection"]}},data(){return{t:qt,isVue2:Yt,isVue3:Gt,getDefaultSize:V,getCompatSize:N,buttonType:{link:!0,type:"primary"},afterOpenDelay:{"show-after":300},popoverVisible:!1,keyWord:"",sortedTableColumns:[],tableColumns:[],defaultColumnsConfig:[],columnMap:{},processedColumns:[],placement:"bottom",isDraggingFrozen:!1,isDraggingFrozenRight:!1,sortable:null,isConfigLoaded:!1,columnsCopy:[]}},computed:{filteredSortedTableColumns(){return this.keyWord?this.sortedTableColumns.filter(e=>this.getColumnLabel(e.prop).includes(this.keyWord)):this.sortedTableColumns},showFixedLimitTips(){return this.maxFixedLeftQuantity!==void 0||this.maxFixedRightQuantity!==void 0},isThanMaxFrozen(){return this.maxFixedLeftQuantity===void 0?!1:this.sortedTableColumns.filter(e=>e.fixed==="left").length>=this.maxFixedLeftQuantity},isThanMaxRightFrozen(){return this.maxFixedRightQuantity===void 0?!1:this.sortedTableColumns.filter(e=>e.fixed==="right").length>=this.maxFixedRightQuantity},computedTableKey(){if(this.tableKey)return this.tableKey;if(this.$route&&this.$route.path)return this.$route.path.slice(1).replace(/\//g,"-");throw new Error("tableKey is required")}},watch:{popoverVisible(e){e||this.handlePopoverHide()},columns:{handler(e){e&&e.length>0&&!this.isConfigLoaded&&this.initializeColumnConfig()},immediate:!0},tableColumns:{handler(e){e!=null&&e.length&&(this.initSortedTableColumns(),this.crateSortable(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)))},deep:!0}},methods:{findLastIndex(e,i){for(let l=e.length-1;l>=0;l--)if(i(e[l],l,e))return l;return-1},getColumnLabel(e){return!e||!this.columnMap[e]?e||"":R(this.columnMap[e]).label||e},initializeColumnConfig(){this.defaultColumns&&this.defaultColumns.length>0?this.defaultColumnsConfig=this.defaultColumns:this.processOriginalColumns(),this.loadColumnConfig()},processOriginalColumns(){const e=this.columns||[];let i={};this.defaultColumnsConfig=e.filter(l=>{const a=R(l);return!(!a.prop||this.ignoredColumnConfigTypes.includes(a.type))}).map((l,a)=>{const n=R(l),o=b(b({},Xt),n);G(l,o),n.prop&&(i[n.prop]=l);const r=n.hasOwnProperty("visible")?n.visible!==!1:!0;return{prop:n.prop,fixed:n.fixed||"",sort:a,cancellable:n.hasOwnProperty("cancellable")?n.cancellable:!0,visible:r}}),this.columnMap=i},loadColumnConfig(){Jt({key:this.computedTableKey}).then(e=>{var l;if(e.data.code!==200)return;let i=JSON.parse(((l=e.data)==null?void 0:l.data)||null)||{};i.columnsConfig&&JSON.stringify(this.defaultColumnsConfig)===JSON.stringify(i.defaultColumnsConfig)?this.tableColumns=i.columnsConfig.map(a=>b({},a)):this.tableColumns=this.defaultColumnsConfig.map(a=>b({},a)),this.processedColumns=this.applyColumnConfig(this.tableColumns),this.isConfigLoaded=!0,this.$emit("complete",{columns:this.processedColumns,isInitialLoad:!0})}).catch(()=>{this.tableColumns=this.defaultColumnsConfig.map(e=>b({},e)),this.processedColumns=this.applyColumnConfig(this.tableColumns),this.isConfigLoaded=!0,this.$emit("complete",{columns:this.processedColumns,isInitialLoad:!0})})},applyColumnConfig(e,i=!1){let l=this.columns.filter(n=>{const o=R(n);return this.ignoredColumnConfigTypes.includes(o.type)}),a=[];return[...e].sort((n,o)=>{const r=n.sort!==void 0?n.sort:1/0,d=o.sort!==void 0?o.sort:1/0;return r-d}).forEach(n=>{if(n.prop){let o=this.columnMap[n.prop];o&&(G(o,{fixed:n.fixed||void 0,visible:n.visible}),(!i&&n.visible||i)&&a.push(o))}}),l.forEach(n=>{G(n,{visible:!0})}),[...l,...a]},crateSortable(){const e=this.$refs.sortListRef;if(!e)return;this.sortable&&(this.sortable.destroy(),this.sortable=null);const i=new g(e,{ghostClass:"blue-background-class",animation:150,easing:"cubic-bezier(1, 0, 0, 1)",handle:".row-title",draggable:".sort-item-wrapper",fallbackOnBody:!1,preventOnFilter:!0,removeCloneOnHide:!0,group:"columns",dragClass:"sortable-drag",onStart:({item:l})=>{const a=l.getAttribute("data-prop"),n=this.sortedTableColumns.find(o=>o.prop===a);this.isDraggingFrozen=n&&n.fixed==="left",this.isDraggingFrozenRight=n&&n.fixed==="right",this.draggedItemIndex=Array.from(e.children).indexOf(l),l.classList.add("sortable-drag")},onMove:l=>{const{target:a,related:n}=l;if(!a||!n)return!1;const o=n?n.getAttribute("data-prop"):null,r=o?this.sortedTableColumns.find(h=>h.prop===o):null,d=r&&r.fixed==="left",c=r&&r.fixed==="right";return this.isDraggingFrozen&&!d||this.isDraggingFrozenRight&&!c||!this.isDraggingFrozen&&!this.isDraggingFrozenRight&&(d||c)?(a.classList.add("no-drop-zone"),!1):(document.querySelectorAll(".no-drop-zone").forEach(h=>{h.classList.remove("no-drop-zone")}),!0)},onEnd:({item:l,newIndex:a,oldIndex:n})=>{if(a===void 0||n===void 0||a<0||n<0||a>=this.sortedTableColumns.length||n>=this.sortedTableColumns.length)return;document.querySelectorAll(".no-drop-zone").forEach(_=>{_.classList.remove("no-drop-zone")}),l.classList.remove("sortable-drag");const o=this.sortedTableColumns[n],r=o.fixed==="left",d=o.fixed==="right",c=a>0?this.sortedTableColumns[a-1]:null,h=a<this.sortedTableColumns.length-1?this.sortedTableColumns[a+1]:null;let p=!1;if(r?(c&&c.fixed!=="left"||h&&h.fixed==="right")&&(p=!0):d?(c&&c.fixed!=="right"||h&&h.fixed!=="right")&&(p=!0):(c&&c.fixed==="right"||h&&h.fixed==="left")&&(p=!0),p){this.rollbackSort();return}this.updateSortAfterDrag()}});this.sortable=i},rollbackSort(){this.sortedTableColumns=JSON.parse(JSON.stringify(this.columnsCopy))},updateSortAfterDrag(){const e=this.$refs.sortListRef;if(!e)return;Array.from(e.children||[]).filter(l=>l&&l.dataset&&l.dataset.prop).map(l=>l.dataset.prop).forEach((l,a)=>{this.sortedTableColumns.some(n=>n.prop===l?(n.sort=a,!0):!1)}),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns)},init(){this.tableColumns=Array.isArray(this.tableColumns)?[...this.tableColumns]:Array.isArray(this.defaultColumnsConfig)?[...this.defaultColumnsConfig]:[],this.initSortedTableColumns()},initSortedTableColumns(){this.tableColumns.forEach((e,i)=>{e.sort===void 0&&(e.sort=i)}),this.sortedTableColumns=[...this.tableColumns].sort((e,i)=>e.fixed==="left"&&i.fixed!=="left"?-1:e.fixed!=="left"&&i.fixed==="left"||e.fixed==="right"&&i.fixed!=="right"?1:e.fixed!=="right"&&i.fixed==="right"?-1:e.sort-i.sort)},setPlacement(){const i=this.$refs.operationRef.$el.getBoundingClientRect();(window.innerHeight||document.documentElement.clientHeight)-(i.bottom-window.scrollY)>512?this.placement="bottom":this.placement="left"},handleVisibleChange(e){this.popoverVisible=e},handlePopoverShow(){this.setPlacement(),this.init(),(()=>{try{document.removeEventListener("mouseup",window.sortableGlobalMouseUp),document.removeEventListener("mousemove",window.sortableGlobalMouseMove)}catch(i){}})(),this.$nextTick(()=>{this.crateSortable()})},handlePopoverHide(){this.sortable&&(this.sortable.destroy(),this.sortable=null);try{document.removeEventListener("mouseup",window.sortableGlobalMouseUp),document.removeEventListener("mousemove",window.sortableGlobalMouseMove),typeof g!="undefined"&&g.utils&&(document.removeEventListener("mousemove",g.utils.throttleCall),document.removeEventListener("mouseup",g.utils.throttleCall))}catch(e){}},handleSelectAll(){const e=this.tableColumns.some(i=>!i.visible);this.tableColumns.forEach(i=>{i.cancellable&&(i.visible=e)})},handleRestoreDefault(){this.tableColumns=JSON.parse(JSON.stringify(this.defaultColumnsConfig)),this.sortedTableColumns=[...this.tableColumns].sort((e,i)=>e.sort-i.sort)},canMoveTop(e,i){if(i===0)return!1;if(e.fixed==="left"){const l=this.sortedTableColumns[i-1];return l&&l.fixed==="left"}if(!e.fixed){const l=this.sortedTableColumns[i-1];return l&&l.fixed==="left"?!1:l&&!l.fixed}return e.fixed==="right"},moveTop(e,i){const l=this.sortedTableColumns,a=e.prop;if(e.fixed==="right"&&(e.fixed=""),e.fixed==="left")l.unshift(l.splice(i,1)[0]);else{const n=this.findLastIndex(this.sortedTableColumns,o=>o.fixed==="left");l.splice(n+1,0,l.splice(i,1)[0])}this.updateSortValues(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns),this.$nextTick(()=>{const n=this.$refs.sortListRef;if(n){const o=Array.from(n.children).find(r=>r.dataset&&r.dataset.prop===a);o&&o.scrollIntoView({behavior:"smooth",block:"nearest"})}})},frozenLeftHandle(e){const i=this.sortedTableColumns,l=i.splice(e,1)[0];if(l.fixed=l.fixed==="left"?"":"left",l.fixed==="left"){const a=this.findLastIndex(this.sortedTableColumns,n=>n.fixed==="left");i.splice(a+1,0,l)}else{const a=this.findLastIndex(this.sortedTableColumns,n=>n.fixed==="left");i.splice(a+1,0,l)}this.updateSortValues(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns)},frozenRightHandle(e){const i=this.sortedTableColumns,l=i.splice(e,1)[0];if(l.fixed=l.fixed==="right"?"":"right",l.fixed==="right"){const a=i.findIndex(n=>n.fixed==="right");a===-1?i.push(l):i.splice(a,0,l)}else{const a=i.findIndex(n=>n.fixed==="right");a===-1?i.push(l):i.splice(a,0,l)}this.updateSortValues(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)),this.$emit("on-sort-change",this.sortedTableColumns)},onSave(){var i;this.updateSortValues();const e=(i=this.tableColumns)==null?void 0:i.map(l=>{const a=this.sortedTableColumns.find(d=>d.prop===l.prop);a&&(l.sort=a.sort,l.fixed=a.fixed,l.visible=a.visible);const r=l,{label:n}=r;return he(r,["label"])});Kt({key:this.computedTableKey,info:JSON.stringify({columnsConfig:e,defaultColumnsConfig:this.defaultColumnsConfig})}).then(l=>{l.data.code===200&&(this.processedColumns=this.applyColumnConfig(e,!0),this.$emit("complete",{columns:this.processedColumns,isInitialLoad:!1}),this.$message.success(this.t("saveSuccess")),this.popoverVisible=!1)})},updateSortValues(){this.sortedTableColumns.forEach((e,i)=>{e.sort=i})}},mounted(){var e;(e=this.tableColumns)!=null&&e.length&&(this.initSortedTableColumns(),this.crateSortable(),this.columnsCopy=JSON.parse(JSON.stringify(this.sortedTableColumns)))},beforeDestroy(){this.sortable&&(this.sortable.destroy(),this.sortable=null);try{document.removeEventListener("mouseup",window.sortableGlobalMouseUp),document.removeEventListener("mousemove",window.sortableGlobalMouseMove),typeof g!="undefined"&&g.utils&&(document.removeEventListener("mousemove",g.utils.throttleCall),document.removeEventListener("mouseup",g.utils.throttleCall))}catch(e){}}},$t={key:0,class:"container"},el={class:"main-container"},tl={class:"left-content"},ll={class:"title"},il={class:"option-list"},nl={style:{height:"100%","overflow-y":"auto"}},ol={class:"right-content"},al={class:"search-box"},sl={key:0,class:"tips"},rl={class:"sort-list",ref:"sortListRef"},cl=["data-prop"],dl={key:0,class:"sort-item"},hl={class:"row-title"},ul={class:"operation-btns"},pl={class:"footer"},ml={class:"footer-left"},fl={class:"footer-right"},gl={style:{display:"inline-block","margin-left":"10px"}};function bl(e,i,l,a,n,o){const r=t.resolveComponent("el-button"),d=t.resolveComponent("TmEllipsisText"),c=t.resolveComponent("el-checkbox"),h=t.resolveComponent("el-input"),p=t.resolveComponent("MoveIcon"),_=t.resolveComponent("DeleteIcon"),T=t.resolveComponent("el-tooltip"),O=t.resolveComponent("UploadIcon"),L=t.resolveComponent("FixedLeftIcon"),s=t.resolveComponent("FixedRightIcon"),w=t.resolveComponent("MenuIcon"),f=t.resolveComponent("el-popover");return t.openBlock(),t.createBlock(f,t.mergeProps({"popper-class":"column-config-popover"},{[n.isVue3?"visible":"value"]:n.popoverVisible},t.toHandlers({[n.isVue3?"update:visible":"input"]:o.handleVisibleChange}),{width:680,"show-arrow":!1,placement:n.placement,trigger:"click",onShow:o.handlePopoverShow,onHide:o.handlePopoverHide}),{reference:t.withCtx(()=>[t.createElementVNode("div",gl,[t.createVNode(T,t.mergeProps({content:n.t("columnSetting")},n.afterOpenDelay,{placement:"top"}),{default:t.withCtx(()=>[t.createVNode(r,{size:n.getDefaultSize(),ref:"operationRef",circle:""},{default:t.withCtx(()=>[t.createVNode(w)]),_:1},8,["size"])]),_:1},16,["content"])])]),default:t.withCtx(()=>[n.popoverVisible?(t.openBlock(),t.createElementBlock("div",$t,[t.createElementVNode("div",el,[t.createElementVNode("div",tl,[t.createElementVNode("div",ll,[t.createElementVNode("span",null,t.toDisplayString(n.t("SelectableFields"))+"("+t.toDisplayString(n.tableColumns.length)+")",1),t.createVNode(r,t.mergeProps({style:{"margin-left":"10px"}},n.buttonType,{onClick:o.handleSelectAll}),{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("all")),1)]),_:1},16,["onClick"])]),t.createElementVNode("div",il,[t.createElementVNode("div",nl,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.tableColumns,(m,B)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[m.prop?(t.openBlock(),t.createElementBlock("div",{style:{width:"110px",display:"inline-block"},key:B+m.prop},[t.createVNode(c,{disabled:!m.cancellable,class:"el-checkbox",modelValue:m.visible,"onUpdate:modelValue":D=>m.visible=D,label:m.prop,value:m.prop},{default:t.withCtx(()=>[t.createVNode(d,{width:"80px",text:o.getColumnLabel(m.prop)},null,8,["text"])]),_:2},1032,["disabled","modelValue","onUpdate:modelValue","label","value"])])):t.createCommentVNode("",!0)],64))),256))])])]),t.createElementVNode("div",ol,[t.createElementVNode("div",al,[t.createVNode(h,{size:n.getCompatSize("small"),class:"search-input",clearable:"",placeholder:n.t("search"),modelValue:n.keyWord,"onUpdate:modelValue":i[0]||(i[0]=m=>n.keyWord=m)},null,8,["size","placeholder","modelValue"])]),o.showFixedLimitTips?(t.openBlock(),t.createElementBlock("div",sl)):t.createCommentVNode("",!0),t.createElementVNode("div",rl,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.filteredSortedTableColumns,(m,B)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["sort-item-wrapper",[m.fixed==="left"?"frozen":"",m.fixed==="right"?"frozenRight":"",m.fixed?"":"noFrozen"]]),"data-prop":m.prop,key:m.prop},[m.visible?(t.openBlock(),t.createElementBlock("div",dl,[t.createElementVNode("div",hl,[t.createVNode(p,{style:{"flex-shrink":"0"}}),t.createVNode(d,{text:o.getColumnLabel(m.prop)},null,8,["text"])]),t.createElementVNode("div",ul,[m.cancellable?(t.openBlock(),t.createBlock(T,t.mergeProps({key:0,content:n.t("cancel"),placement:"top"},{ref_for:!0},n.afterOpenDelay),{default:t.withCtx(()=>[t.createVNode(r,t.mergeProps({ref_for:!0},n.buttonType,{size:n.getCompatSize("mini"),class:"iconfont-button delete-button",onClick:D=>m.visible=!1}),{default:t.withCtx(()=>[t.createVNode(_)]),_:2},1040,["size","onClick"])]),_:2},1040,["content"])):t.createCommentVNode("",!0),o.canMoveTop(m,B)?(t.openBlock(),t.createBlock(T,t.mergeProps({key:1,content:n.t("top"),placement:"top"},{ref_for:!0},n.afterOpenDelay),{default:t.withCtx(()=>[t.createVNode(r,t.mergeProps({ref_for:!0},n.buttonType,{size:n.getCompatSize("mini"),class:"iconfont-button top-button",onClick:D=>o.moveTop(m,B)}),{default:t.withCtx(()=>[t.createVNode(O)]),_:2},1040,["size","onClick"])]),_:2},1040,["content"])):t.createCommentVNode("",!0),m.fixed!=="right"?(t.openBlock(),t.createBlock(T,t.mergeProps({key:2,content:m.fixed==="left"?n.t("cancelLeftFixed"):n.t("leftFixed"),placement:"top"},{ref_for:!0},n.afterOpenDelay),{default:t.withCtx(()=>[t.createVNode(r,t.mergeProps({ref_for:!0},n.buttonType,{size:n.getCompatSize("mini"),class:["iconfont-button left-fixed-btn",{"active-fixed":m.fixed==="left"}],onClick:D=>o.frozenLeftHandle(B),disabled:m.fixed!=="left"&&o.isThanMaxFrozen}),{default:t.withCtx(()=>[t.createVNode(L)]),_:2},1040,["size","class","onClick","disabled"])]),_:2},1040,["content"])):t.createCommentVNode("",!0),m.fixed!=="left"?(t.openBlock(),t.createBlock(T,t.mergeProps({key:3,content:m.fixed==="right"?n.t("cancelRightFixed"):n.t("rightFixed"),placement:"top"},{ref_for:!0},n.afterOpenDelay),{default:t.withCtx(()=>[t.createVNode(r,t.mergeProps({ref_for:!0},n.buttonType,{size:n.getCompatSize("mini"),class:["iconfont-button right-fixed-btn",{"active-fixed":m.fixed==="right"}],onClick:D=>o.frozenRightHandle(B),disabled:m.fixed!=="right"&&o.isThanMaxRightFrozen}),{default:t.withCtx(()=>[t.createVNode(s)]),_:2},1040,["size","class","onClick","disabled"])]),_:2},1040,["content"])):t.createCommentVNode("",!0)])])):t.createCommentVNode("",!0)],10,cl))),128))],512)])]),t.createElementVNode("div",pl,[t.createElementVNode("div",ml,[t.createVNode(r,{size:n.getCompatSize("mini"),onClick:o.handleRestoreDefault},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("restoreDefault")),1)]),_:1},8,["size","onClick"])]),t.createElementVNode("div",fl,[t.createVNode(r,{size:n.getCompatSize("mini"),onClick:i[1]||(i[1]=m=>n.popoverVisible=!1)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("cancel")),1)]),_:1},8,["size"]),t.createVNode(r,{size:n.getCompatSize("mini"),type:"primary",onClick:o.onSave},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.t("saveAndApply")),1)]),_:1},8,["size","onClick"])])])])):t.createCommentVNode("",!0)]),_:1},16,["placement","onShow","onHide"])}const yl=y(Zt,[["render",bl],["__scopeId","data-v-127cbd33"]]),Cl=!1,_l=!0;function X(e){if(!Array.isArray(e))return e;const i=[];for(const l of e)if(l)if(typeof l.type=="symbol"&&l.children){let a=l.children;if(typeof a=="function")continue;if(Array.isArray(a)){const n=X(a);i.push(...n)}else{const n=X([a]);i.push(...n)}}else i.push(l);return i}const Sl={name:"TmTable",components:{TableSearch:Y,TablePagination:Rt,TableMenu:jt,ColumnConfig:yl,RefreshIcon:_e,ColumnRenderer:{props:["vnode"],render(){return this.vnode}}},inheritAttrs:!1,props:{data:{type:[Array,Function],default:()=>[]},showSearch:{type:Boolean,default:!0},showMenu:{type:Boolean,default:!0},showPagination:{type:Boolean,default:!0},pagination:{type:Object,default:()=>({})},height:{type:[String,Number]},calcHeight:{type:Number,default:0},dataAdapter:{type:Function,default:null},columnSettingButton:{type:Boolean,default:!0},refreshButton:{type:Boolean,default:!0},tableKey:{type:String,default:""},firstLoad:{type:Boolean,default:!0},maxFixedLeftQuantity:{type:Number},maxFixedRightQuantity:{type:Number},border:{type:Boolean,default:!0},searchColumns:{type:Array,default:null},searchForm:{type:Object,default:()=>({})},labelWidth:{type:[String,Number],default:void 0},inputWidth:{type:[String,Number],default:void 0},direction:{type:String,default:void 0,validator:e=>!e||["horizontal","vertical"].includes(e)}},data(){return{getDefaultSize:V,getCompatSize:N,isVue3:_l,isVue2:Cl,t:x().t,tableData:[],tableLoading:!1,columnsLoading:!1,tableReload:1,tableHeight:null,selectedRows:[],paginationInfo:{current:1,pageSize:20,total:void 0},originalColumns:[],displayColumns:[],isColumnConfigLoaded:!1,afterOpenDelay:{"show-after":300}}},computed:{pageLoading(){return this.tableLoading||this.columnsLoading},computedTableKey(){if(this.tableKey)return this.tableKey;if(this.$route&&this.$route.path)return this.$route.path.slice(1).replace(/\//g,"-");throw new Error("tableKey is required")},computedShowPagination(){return this.showPagination&&typeof this.data=="function"}},watch:{data:{immediate:!0,handler(e){typeof e=="function"?!this.columnSettingButton||this.isColumnConfigLoaded&&!this.firstLoad?this.loadData():Array.isArray(e)&&(this.tableData=e):this.tableData=e}},height:{immediate:!0,handler(){this.getTableHeight()}}},created(){{const e=this.$slots.default();this.originalColumns=X(e)}this.columnSettingButton?this.columnsLoading=!0:(this.displayColumns=this.originalColumns,this.isColumnConfigLoaded=!0)},mounted(){this.getTableHeight(),window.addEventListener("resize",this.getTableHeight)},beforeDestroy(){window.removeEventListener("resize",this.getTableHeight)},methods:{handleUpdateSearchForm(e){this.$emit("update:search-form",e)},handleColumnConfigComplete(e){Array.isArray(e.columns)?this.displayColumns=[...e.columns]:this.displayColumns=[...this.originalColumns],e.isInitialLoad?(this.isColumnConfigLoaded=!0,this.columnsLoading=!1,this.firstLoad&&typeof this.data=="function"&&this.loadData()):this.reloadTable()},isAutoHeight(){return this.height==="auto"},handleRefresh(){this.loadData()},async loadData(){if(Array.isArray(this.data))this.tableData=this.data;else if(typeof this.data=="function"){if(this.tableLoading)return;this.tableLoading=!0;try{const e=await this.data({paginationInfo:{pageSize:this.paginationInfo.pageSize,current:this.paginationInfo.current},params:this.searchForm}),{list:i,total:l,pageSize:a,current:n}=e;this.tableData=i;let o=b({},this.paginationInfo);l!==void 0&&(o.total=l),n!==void 0&&(o.current=n),a!==void 0&&(o.pageSize=a),this.paginationInfo=o}catch(e){}finally{this.tableLoading=!1}}},getTableHeight(){this.isAutoHeight()?this.$nextTick(()=>{const e=this.$refs.table,i=this.$refs.tmPagination;if(!e)return;const l=e.$el,a=i&&i.$el&&i.$el.offsetHeight||0;this.tableHeight=document.documentElement.clientHeight-l.offsetTop-a-this.calcHeight}):this.tableHeight=this.height,this.refreshTable()},search(){this.paginationInfo.current=1,this.loadData()},reset(){this.paginationInfo.current=1,this.$nextTick(()=>{this.loadData()})},handleSelectionChange(e){this.selectedRows=e,this.$emit("selection-change",e)},handleSizeChange(e){this.paginationInfo.pageSize=e,this.loadData(),this.$emit("size-change",e)},handleCurrentChange(e){this.paginationInfo.current=e,this.loadData(),this.$emit("current-change",e)},refreshTable(){this.$refs.table&&this.$refs.table.doLayout()},reloadTable(){this.tableReload++}}},Vl={class:"tm-table",ref:"tablePage"};function xl(e,i,l,a,n,o){const r=t.resolveComponent("table-search"),d=t.resolveComponent("RefreshIcon"),c=t.resolveComponent("el-button"),h=t.resolveComponent("el-tooltip"),p=t.resolveComponent("ColumnConfig"),_=t.resolveComponent("table-menu"),T=t.resolveComponent("columnRenderer"),O=t.resolveComponent("el-table"),L=t.resolveComponent("table-pagination"),s=t.resolveDirective("loading");return t.openBlock(),t.createElementBlock("div",Vl,[l.searchColumns&&l.searchColumns.length>0?(t.openBlock(),t.createBlock(r,{key:0,ref:"search",onSearch:o.search,onReset:o.reset,"onUpdate:searchForm":o.handleUpdateSearchForm,disabled:o.pageLoading,"search-columns":l.searchColumns,"search-form":l.searchForm,"label-width":l.labelWidth,"input-width":l.inputWidth,direction:l.direction},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"search",{},void 0,!0)]),_:3},8,["onSearch","onReset","onUpdate:searchForm","disabled","search-columns","search-form","label-width","input-width","direction"])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"between-search-menu",{},void 0,!0),l.showMenu?(t.openBlock(),t.createBlock(_,{key:1},{left:t.withCtx(()=>[t.renderSlot(e.$slots,"menu-left",{},void 0,!0)]),right:t.withCtx(()=>[t.renderSlot(e.$slots,"menu-right",{},void 0,!0),l.refreshButton&&typeof l.data=="function"?(t.openBlock(),t.createBlock(h,t.mergeProps({key:0,content:n.t("refresh"),placement:"top"},n.afterOpenDelay),{default:t.withCtx(()=>[t.createVNode(c,{onClick:o.handleRefresh,circle:"",size:n.getDefaultSize()},{default:t.withCtx(()=>[t.createVNode(d)]),_:1},8,["onClick","size"])]),_:1},16,["content"])):t.createCommentVNode("",!0),l.columnSettingButton?(t.openBlock(),t.createBlock(p,{key:1,maxFixedLeftQuantity:l.maxFixedLeftQuantity,maxFixedRightQuantity:l.maxFixedRightQuantity,tableKey:o.computedTableKey,columns:n.originalColumns,onComplete:o.handleColumnConfigComplete},null,8,["maxFixedLeftQuantity","maxFixedRightQuantity","tableKey","columns","onComplete"])):t.createCommentVNode("",!0)]),_:3})):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"between-menu-table",{},void 0,!0),t.withDirectives((t.openBlock(),t.createBlock(O,t.mergeProps({ref:"table"},F(b({},e.$attrs),{border:l.border}),t.toHandlers(n.isVue2?e.$listeners:{}),{data:n.tableData,height:n.tableHeight,size:n.getCompatSize("mini"),onSelectionChange:o.handleSelectionChange,key:n.tableReload}),{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.displayColumns,w=>(t.openBlock(),t.createBlock(T,{vnode:w,key:n.isVue3?w.id:w.data.attrs.prop},null,8,["vnode"]))),128))]),_:1},16,["data","height","size","onSelectionChange"])),[[s,o.pageLoading]]),t.renderSlot(e.$slots,"between-table-pagination",{},void 0,!0),o.computedShowPagination?(t.openBlock(),t.createBlock(L,{key:2,ref:"tmPagination","page-size":n.paginationInfo.pageSize,current:n.paginationInfo.current,total:n.paginationInfo.total,disabled:n.tableLoading,onSizeChange:o.handleSizeChange,onCurrentChange:o.handleCurrentChange},null,8,["page-size","current","total","disabled","onSizeChange","onCurrentChange"])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"after-pagination",{},void 0,!0)],512)}const Z=y(Sl,[["render",xl],["__scopeId","data-v-5c3f3820"]]),kl=!1,Tl=!0,wl={name:"TmTableColumn",inheritAttrs:!1,computed:{isVisible(){return this.$attrs.visible!==!1},slots(){return this.$slots}},data(){return{isVue2:kl,isVue3:Tl}},created(){this.$parent&&this.$parent.$emit&&this.$parent.$emit("column-initialized",{prop:this.$attrs.prop,visible:this.$attrs.visible!==!1})}};function Fl(e,i,l,a,n,o){const r=t.resolveComponent("el-table-column");return o.isVisible?(t.openBlock(),t.createBlock(r,t.mergeProps({key:0},e.$attrs,t.toHandlers(n.isVue2?e.$listeners:{})),t.createSlots({_:2},[t.renderList(o.slots,(d,c)=>({name:c,fn:t.withCtx(h=>[t.renderSlot(e.$slots,c,t.normalizeProps(t.guardReactiveProps(h)))])}))]),1040)):t.createCommentVNode("",!0)}const $=y(wl,[["render",Fl]]),{t:ee}=x(),zl={name:"TmAdvancedEllipsisText",components:{CopyIcon:le},props:{rows:{type:Number,default:1},width:{type:String,default:"100%"},maxWidth:{type:String,default:""},showToolbar:{type:Boolean,default:!1},text:{type:String,default:""},showTooltip:{type:Boolean,default:!0},copyable:{type:Boolean,default:!1}},data(){return{isVue2:!1,originalText:"",isHovered:!1,lineHeight:0,containerWidth:0,resizeObserver:null,isCalculating:!1,frontLines:[],lastLineText:"",isLastLineEllipsis:!1,tableRowElement:null}},computed:{containerStyle(){const e={};return this.maxWidth?(e.maxWidth=this.maxWidth,e.width=this.width):e.width=this.width,e},hasToolbarSlot(){return this.$slots.toolbar?this.$slots.toolbar&&this.$slots.toolbar().length>0:!1},hasToolbarContent(){return this.copyable||this.hasToolbarSlot},shouldShowToolbar(){return this.showToolbar||this.isHovered&&this.hasToolbarContent}},mounted(){this.initComponent(),this.setupResizeObserver(),this.setupTableRowHover()},updated(){const e=this.getTextContent();e!==this.originalText&&(this.originalText=e,this.$nextTick(()=>{this.calculateLayout()}))},beforeDestroy(){this.cleanupResizeObserver(),this.cleanupTableRowHover()},beforeUnmount(){this.cleanupResizeObserver(),this.cleanupTableRowHover()},watch:{text:{handler(){this.$nextTick(()=>{this.originalText=this.getTextContent(),this.calculateLayout()})},immediate:!0},rows(){this.$nextTick(()=>{this.calculateLayout()})},shouldShowToolbar(){this.$nextTick(()=>{this.calculateLayout()})},"$slots.default":{handler(){this.$nextTick(()=>{this.originalText=this.getTextContent(),this.calculateLayout()})},deep:!0}},methods:{initComponent(){this.$nextTick(()=>{this.originalText=this.getTextContent(),this.calculateLineHeight(),this.$nextTick(()=>{this.calculateLayout()})})},handleCopy(){navigator.clipboard&&window.isSecureContext?navigator.clipboard.writeText(this.originalText).then(()=>{this.$message.success(ee("copySuccess"))}).catch(()=>{this.fallbackCopy()}):this.fallbackCopy()},fallbackCopy(){const e=document.createElement("textarea");e.value=this.originalText,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select();try{document.execCommand("copy"),this.$message.success(ee("copySuccess"))}catch(i){this.$message.error(ee("copyFailed"))}document.body.removeChild(e)},getTextContent(){if(this.$slots.default){const e=this.$slots.default;return e().map(i=>typeof i.children=="string"?i.children:Array.isArray(i.children)?i.children.map(l=>l.children||"").join(""):"").join("")}return this.text||""},calculateLineHeight(){const e=this.$refs.containerRef;if(!e)return;const i=window.getComputedStyle(e);this.containerWidth=e.offsetWidth;const l=this.$refs.measureRef;if(l){this.setMeasureElementStyle(l,{width:this.containerWidth+"px",wordBreak:"break-all",whiteSpace:"normal"}),l.textContent="测",l.offsetHeight;const a=l.offsetHeight;l.innerHTML="",this.lineHeight=a}else{const a=i.lineHeight;if(a&&a!=="normal")this.lineHeight=parseInt(a);else{const n=parseInt(i.fontSize);this.lineHeight=n*1.2}}},calculateLayout(){if(!this.isCalculating){if(!this.originalText||this.rows<=0){this.frontLines=[],this.lastLineText=this.originalText||"",this.isLastLineEllipsis=!1;return}this.isCalculating=!0,this.$nextTick(()=>{requestAnimationFrame(()=>{this.performLayoutCalculation()})})}},performLayoutCalculation(){const e=this.originalText;if(this.rows===1)this.frontLines=[],this.lastLineText=e,this.isLastLineEllipsis=this.checkIfTextOverflows(e);else{const i=this.lineHeight;if(this.getTextHeight(e)<=i)this.frontLines=[],this.lastLineText=e,this.isLastLineEllipsis=this.checkIfTextOverflows(e);else{const a=this.lineHeight*(this.rows-1),n=this.findTextForHeight(e,a);this.frontLines=this.splitTextToLines(n);const o=e.substring(n.length);this.lastLineText=o,this.isLastLineEllipsis=o.length>0&&this.checkIfTextOverflows(o)}}this.isCalculating=!1},findTextForHeight(e,i){if(this.getTextHeight(e)<=i)return e;let l=0,a=e.length,n="";for(;l<=a;){const o=Math.floor((l+a)/2),r=e.substring(0,o);this.getTextHeight(r)<=i?(n=r,l=o+1):a=o-1}return n},splitTextToLines(e){if(!e)return[];const i=[];let l=e;for(;l.length>0;){const a=this.findTextForHeight(l,this.lineHeight);if(a.length===0)break;i.push(a),l=l.substring(a.length)}return i},checkIfTextOverflows(e){if(!e)return!1;const i=this.getTextWidth(e),l=this.shouldShowToolbar&&this.hasToolbarContent?this.getToolbarWidth():0,a=this.containerWidth-l-5;return i>a},getToolbarWidth(){let e=0;return this.copyable&&(e+=20),this.hasToolbarSlot&&(e+=40),e},getTextHeight(e){return this.measureText(e,{width:this.containerWidth+"px",wordBreak:"break-all",whiteSpace:"normal"})},getTextWidth(e){return this.measureText(e,{whiteSpace:"nowrap"})},measureText(e,i={}){if(!this.$refs.containerRef||!this.$refs.measureRef)return 0;const l=this.$refs.measureRef,a=l.style.cssText;this.setMeasureElementStyle(l,i),l.textContent=e,l.offsetHeight;const n=i.whiteSpace==="nowrap"?l.offsetWidth:l.offsetHeight;return l.style.cssText=a,l.innerHTML="",n},setMeasureElementStyle(e,i={}){const l=window.getComputedStyle(this.$refs.containerRef);e.style.cssText="",e.style.position="absolute",e.style.left="-9999px",e.style.top="-9999px",e.style.visibility="hidden",e.style.pointerEvents="none",e.style.zIndex="-1",e.style.fontSize=l.fontSize,e.style.fontFamily=l.fontFamily,e.style.fontWeight=l.fontWeight,e.style.lineHeight=l.lineHeight,e.style.letterSpacing=l.letterSpacing,e.style.wordSpacing=l.wordSpacing,e.style.padding="0",e.style.margin="0",e.style.border="none",e.style.boxSizing="border-box",Object.entries(i).forEach(([a,n])=>{e.style[a]=n})},handleMouseEnter(){this.isHovered=!0},handleMouseLeave(){this.isHovered=!1},setupResizeObserver(){typeof ResizeObserver!="undefined"&&(this.resizeObserver=new ResizeObserver(e=>{const i=e[0];if(i){const l=i.contentRect.width;Math.abs(l-this.containerWidth)>1&&requestAnimationFrame(()=>{this.calculateLineHeight(),this.calculateLayout()})}}),this.$refs.containerRef&&this.resizeObserver.observe(this.$refs.containerRef))},cleanupResizeObserver(){this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)},setupTableRowHover(){let e=this.$el;for(;e&&e!==document.body;){if(e.classList&&e.classList.contains("el-table__row")){this.tableRowElement=e;break}e=e.parentElement}this.tableRowElement&&(this.tableRowElement.addEventListener("mouseenter",this.handleMouseEnter),this.tableRowElement.addEventListener("mouseleave",this.handleMouseLeave))},cleanupTableRowHover(){this.tableRowElement&&(this.tableRowElement.removeEventListener("mouseenter",this.handleMouseEnter),this.tableRowElement.removeEventListener("mouseleave",this.handleMouseLeave),this.tableRowElement=null)}}},Ll={class:"tm-ellipsis-text-wrapper"},Bl=["innerHTML"],Nl={class:"tm-ellipsis-last-line"},El=["innerHTML"],Ol={key:0,class:"tm-ellipsis-toolbar-part"},Dl={key:1,class:"tm-ellipsis-text-wrapper"},Ml=["innerHTML"],Al={class:"tm-ellipsis-last-line"},Hl=["innerHTML"],Rl={key:0,class:"tm-ellipsis-toolbar-part"},Il={ref:"measureRef",class:"tm-ellipsis-measure"};function Pl(e,i,l,a,n,o){const r=t.resolveComponent("CopyIcon"),d=t.resolveComponent("el-tooltip");return t.openBlock(),t.createElementBlock("div",{ref:"containerRef",style:t.normalizeStyle(o.containerStyle),class:"tm-ellipsis-text",onMouseenter:i[0]||(i[0]=(...c)=>o.handleMouseEnter&&o.handleMouseEnter(...c)),onMouseleave:i[1]||(i[1]=(...c)=>o.handleMouseLeave&&o.handleMouseLeave(...c))},[l.showTooltip&&n.isLastLineEllipsis?(t.openBlock(),t.createBlock(d,t.mergeProps({key:0,content:n.originalText,disabled:!l.showTooltip||!n.isLastLineEllipsis},{[n.isVue2?"open-delay":"show-after"]:300},{placement:"top"}),{default:t.withCtx(()=>[t.createElementVNode("div",Ll,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.frontLines,(c,h)=>(t.openBlock(),t.createElementBlock("div",{key:"front-"+h,class:"tm-ellipsis-line",innerHTML:c},null,8,Bl))),128)),t.createElementVNode("div",Nl,[t.createElementVNode("div",{class:"tm-ellipsis-text-part",innerHTML:n.lastLineText},null,8,El),o.shouldShowToolbar&&o.hasToolbarContent?(t.openBlock(),t.createElementBlock("div",Ol,[l.copyable?(t.openBlock(),t.createBlock(r,{key:0,class:"icon-item",onClick:o.handleCopy},null,8,["onClick"])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"toolbar",{},void 0,!0)])):t.createCommentVNode("",!0)])])]),_:3},16,["content","disabled"])):(t.openBlock(),t.createElementBlock("div",Dl,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.frontLines,(c,h)=>(t.openBlock(),t.createElementBlock("div",{key:"front-"+h,class:"tm-ellipsis-line",innerHTML:c},null,8,Ml))),128)),t.createElementVNode("div",Al,[t.createElementVNode("div",{class:"tm-ellipsis-text-part",innerHTML:n.lastLineText},null,8,Hl),o.shouldShowToolbar&&o.hasToolbarContent?(t.openBlock(),t.createElementBlock("div",Rl,[l.copyable?(t.openBlock(),t.createBlock(r,{key:0,class:"icon-item",onClick:o.handleCopy},null,8,["onClick"])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"toolbar",{},void 0,!0)])):t.createCommentVNode("",!0)])])),t.createElementVNode("div",Il,null,512)],36)}const te=y(zl,[["render",Pl],["__scopeId","data-v-14f27c2e"]]),se={install:{install(e,i={}){[Z,$,E,te].forEach(l=>e.component(l.name,l)),i.tableConfigProvider&&Qt(i.tableConfigProvider),i.lang&&A(i.lang||"zh-CN")}}.install,Table:Z,Column:$,Search:Y,Select:W,AdvancedInput:U,AdvancedDate:j,Cascader:J,Radio:K,Checkbox:Q,Switch:q,EllipsisText:E,AdvancedEllipsisText:te,setLang:A,useLocale:x};typeof window!="undefined"&&window.Vue&&se.install(window.Vue),u.AdvancedDate=j,u.AdvancedEllipsisText=te,u.AdvancedInput=U,u.Cascader=J,u.Checkbox=Q,u.Column=$,u.EllipsisText=E,u.Radio=K,u.Search=Y,u.Select=W,u.Switch=q,u.Table=Z,u.default=se,u.setLang=A,u.useLocale=x,Object.defineProperties(u,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
package/package.json
CHANGED
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "tm-table",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "A table component for Vue",
|
|
5
|
-
"main": "dist/vue2/tm-table.umd.js",
|
|
6
|
-
"module": "dist/vue2/tm-table.es.js",
|
|
7
|
-
"types": "types/index.ts",
|
|
8
|
-
"files": [
|
|
9
|
-
"dist",
|
|
10
|
-
"types"
|
|
11
|
-
],
|
|
12
|
-
"scripts": {
|
|
13
|
-
"build:vue2": "cd build/vue2 && vite build --config build.ts",
|
|
14
|
-
"build:vue3": "cd build/vue3 && vite build --config build.ts",
|
|
15
|
-
"build": "pnpm build:vue2 && pnpm build:vue3"
|
|
16
|
-
},
|
|
17
|
-
"exports": {
|
|
18
|
-
".": {
|
|
19
|
-
"types": "./types/index.ts",
|
|
20
|
-
"import": "./dist/vue2/tm-table.es.js",
|
|
21
|
-
"require": "./dist/vue2/tm-table.umd.js",
|
|
22
|
-
"default": "./dist/vue2/tm-table.umd.js"
|
|
23
|
-
},
|
|
24
|
-
"./v3": {
|
|
25
|
-
"types": "./types/index.ts",
|
|
26
|
-
"import": "./dist/vue3/tm-table.es.js",
|
|
27
|
-
"require": "./dist/vue3/tm-table.umd.js",
|
|
28
|
-
"default": "./dist/vue3/tm-table.umd.js"
|
|
29
|
-
},
|
|
30
|
-
"./style": "./dist/vue2/tm-table.css"
|
|
31
|
-
},
|
|
32
|
-
"dependencies": {
|
|
33
|
-
"sortablejs": "^1.15.6"
|
|
34
|
-
},
|
|
35
|
-
"peerDependencies": {
|
|
36
|
-
"vue": "^2.0.0 || >=3.0.0"
|
|
37
|
-
},
|
|
38
|
-
"publishConfig": {
|
|
39
|
-
"access": "public"
|
|
40
|
-
},
|
|
41
|
-
"devDependencies": {
|
|
42
|
-
"@types/node": "^22.17.0",
|
|
43
|
-
"vite": "^7.0.6"
|
|
44
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "tm-table",
|
|
3
|
+
"version": "1.2.0",
|
|
4
|
+
"description": "A table component for Vue",
|
|
5
|
+
"main": "dist/vue2/tm-table.umd.js",
|
|
6
|
+
"module": "dist/vue2/tm-table.es.js",
|
|
7
|
+
"types": "types/index.ts",
|
|
8
|
+
"files": [
|
|
9
|
+
"dist",
|
|
10
|
+
"types"
|
|
11
|
+
],
|
|
12
|
+
"scripts": {
|
|
13
|
+
"build:vue2": "cd build/vue2 && npx cross-env VUE2=true VUE3=false vite build --config build.ts",
|
|
14
|
+
"build:vue3": "cd build/vue3 && npx cross-env VUE2=false VUE3=true vite build --config build.ts",
|
|
15
|
+
"build": "pnpm build:vue2 && pnpm build:vue3"
|
|
16
|
+
},
|
|
17
|
+
"exports": {
|
|
18
|
+
".": {
|
|
19
|
+
"types": "./types/index.ts",
|
|
20
|
+
"import": "./dist/vue2/tm-table.es.js",
|
|
21
|
+
"require": "./dist/vue2/tm-table.umd.js",
|
|
22
|
+
"default": "./dist/vue2/tm-table.umd.js"
|
|
23
|
+
},
|
|
24
|
+
"./v3": {
|
|
25
|
+
"types": "./types/index.ts",
|
|
26
|
+
"import": "./dist/vue3/tm-table.es.js",
|
|
27
|
+
"require": "./dist/vue3/tm-table.umd.js",
|
|
28
|
+
"default": "./dist/vue3/tm-table.umd.js"
|
|
29
|
+
},
|
|
30
|
+
"./style": "./dist/vue2/tm-table.css"
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"sortablejs": "^1.15.6"
|
|
34
|
+
},
|
|
35
|
+
"peerDependencies": {
|
|
36
|
+
"vue": "^2.0.0 || >=3.0.0"
|
|
37
|
+
},
|
|
38
|
+
"publishConfig": {
|
|
39
|
+
"access": "public"
|
|
40
|
+
},
|
|
41
|
+
"devDependencies": {
|
|
42
|
+
"@types/node": "^22.17.0",
|
|
43
|
+
"vite": "^7.0.6"
|
|
44
|
+
}
|
|
45
45
|
}
|