@wx-design/components 0.10.1 → 0.10.2

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.
@@ -7,9 +7,6 @@ declare const CellRender: (props: import("vxe-table").VxeColumnProps<import("vxe
7
7
  editable?: boolean;
8
8
  slots?: Partial<import("../../../types/table").SabColumnSlots<import("vxe-table").VxeTableDataRow>> | undefined;
9
9
  visible?: boolean;
10
- sabFilter?: {
11
- autoCollectFilterOptions?: boolean;
12
- };
13
10
  headerFilterConfig?: import("../../../types/table").SabColumnFilterParams;
14
11
  xTable?: VxeTableInstance;
15
12
  batchForbidden?: boolean;
package/lib/index.js CHANGED
@@ -2,4 +2,4 @@
2
2
  Copyright (c) 2018 Jed Watson.
3
3
  Licensed under the MIT License (MIT), see
4
4
  http://jedwatson.github.io/classnames
5
- */(function(e){(function(){var t={}.hasOwnProperty;function r(){for(var l="",s=0;s<arguments.length;s++){var i=arguments[s];i&&(l=a(l,n(i)))}return l}function n(l){if(typeof l=="string"||typeof l=="number")return l;if(typeof l!="object")return"";if(Array.isArray(l))return r.apply(null,l);if(l.toString!==Object.prototype.toString&&!l.toString.toString().includes("[native code]"))return l.toString();var s="";for(var i in l)t.call(l,i)&&l[i]&&(s=a(s,i));return s}function a(l,s){return s?l?l+" "+s:l+s:l}e.exports?(r.default=r,e.exports=r):window.classNames=r})()})(rn);var j1=rn.exports;const nn=I(j1);var D1=function(t){return L1(t)&&!K1(t)};function L1(e){return!!e&&typeof e=="object"}function K1(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||G1(e)}var U1=typeof Symbol=="function"&&Symbol.for,H1=U1?Symbol.for("react.element"):60103;function G1(e){return e.$$typeof===H1}function q1(e){return Array.isArray(e)?[]:{}}function re(e,t){return t.clone!==!1&&t.isMergeableObject(e)?H(q1(e),e,t):e}function z1(e,t,r){return e.concat(t).map(function(n){return re(n,r)})}function W1(e,t){if(!t.customMerge)return H;var r=t.customMerge(e);return typeof r=="function"?r:H}function Y1(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function dr(e){return Object.keys(e).concat(Y1(e))}function an(e,t){try{return t in e}catch{return!1}}function X1(e,t){return an(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function J1(e,t,r){var n={};return r.isMergeableObject(e)&&dr(e).forEach(function(a){n[a]=re(e[a],r)}),dr(t).forEach(function(a){X1(e,a)||(an(e,a)&&r.isMergeableObject(t[a])?n[a]=W1(a,r)(e[a],t[a],r):n[a]=re(t[a],r))}),n}function H(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||z1,r.isMergeableObject=r.isMergeableObject||D1,r.cloneUnlessOtherwiseSpecified=re;var n=Array.isArray(t),a=Array.isArray(e),l=n===a;return l?n?r.arrayMerge(e,t,r):J1(e,t,r):re(t,r)}H.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,a){return H(n,a,r)},{})};var Z1=H,Q1=Z1;const E=I(Q1);function ey(e){return e!==e}var ty=ey;function ry(e,t,r){for(var n=r-1,a=e.length;++n<a;)if(e[n]===t)return n;return-1}var ny=ry,ay=Qr,oy=ty,ly=ny;function iy(e,t,r){return t===t?ly(e,t,r):ay(e,oy,r)}var sy=iy,uy=sy;function cy(e,t){var r=e==null?0:e.length;return!!r&&uy(e,t,0)>-1}var fy=cy;function dy(e,t,r){for(var n=-1,a=e==null?0:e.length;++n<a;)if(r(t,e[n]))return!0;return!1}var gy=dy;function vy(){}var py=vy,Ve=Mr,by=py,hy=ft,yy=1/0,my=Ve&&1/hy(new Ve([,-0]))[1]==yy?function(e){return new Ve(e)}:by,$y=my,_y=Ur,Cy=fy,wy=gy,Ty=Hr,Sy=$y,Ay=ft,Oy=200;function Ey(e,t,r){var n=-1,a=Cy,l=e.length,s=!0,i=[],u=i;if(r)s=!1,a=wy;else if(l>=Oy){var c=t?null:Sy(e);if(c)return Ay(c);s=!1,a=Ty,u=new _y}else u=t?[]:i;e:for(;++n<l;){var h=e[n],d=t?t(h):h;if(h=r||h!==0?h:0,s&&d===d){for(var f=u.length;f--;)if(u[f]===d)continue e;t&&u.push(d),i.push(h)}else a(u,d,r)||(u!==i&&u.push(d),i.push(h))}return i}var Py=Ey,xy=ue,Iy=Py;function My(e,t){return e&&e.length?Iy(e,xy(t)):[]}var Fy=My;const on=I(Fy);var w=(e=>(e.Input="input",e.InputNumber="input-number",e.Select="select",e.DatePciker="date-picker",e.Image="image",e.Color="color",e.Boolean="boolean",e.Popover="popover",e.Dynamic="dynamic",e))(w||{});const V=(e,t)=>{var n,a,l,s;const{column:r}=e;return t||r.editorProps||((n=r.editRender)==null?void 0:n.editorProps)||((a=r.getEditorProps)==null?void 0:a.call(r,e))||((s=(l=r.editRender)==null?void 0:l.getEditorProps)==null?void 0:s.call(l,e))},ln=o.defineComponent({name:"SabCellEditInput",emits:["update:modelValue"],setup(e,{attrs:t,emit:r}){const n=a=>{r("update:modelValue",a)};return()=>o.createVNode(A.ElInput,o.mergeProps({size:"small",modelValue:e.modelValue,onInput:n},t),null)}}),sn={sabCellType:w.Input,editRender:{autofocus:".el-input__inner"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return o.createVNode(ln,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a),null)}}},un=o.defineComponent({name:"SabCellEditInput",emits:["update:modelValue"],setup(e,{attrs:t,emit:r}){const n=(a,l)=>{r("update:modelValue",a,l)};return()=>o.createVNode(A.ElInputNumber,o.mergeProps({size:"small",modelValue:e.modelValue,controlsPosition:"right","onUpdate:modelValue":n},t),null)}}),cn={cellType:"number",sabCellType:w.InputNumber,editRender:{autofocus:".el-input__inner"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return o.createVNode(un,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a),null)}}},fn=o.defineComponent({name:"SabCellEditInput",emits:["update:modelValue"],setup(e,{attrs:t,emit:r}){const n=a=>{r("update:modelValue",a)};return()=>o.createVNode(A.ElDatePicker,o.mergeProps({size:"small",format:"YYYY-MM-DD HH:mm:ss",valueFormat:"YYYY-MM-DD HH:mm:ss",modelValue:e.modelValue,"onUpdate:modelValue":n},t),null)}}),dn={sabCellType:w.DatePciker,editRender:{autofocus:".el-input__inner"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return o.createVNode(fn,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a),null)}}},Ge=o.defineComponent({props:{options:Array,modelValue:{type:[String,Number,Array],default:""},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},disabledKey:{type:String,default:"disabled"},dynamicOptions:Function,dynamicDebounce:Object,remote:Boolean,revalidateOnFocus:Boolean,onChange:Function},name:"SabCellEditSelect",emits:["update:modelValue","update:label"],setup(e,{attrs:t,emit:r}){var g;const{renderOption:n,renderOptionLabel:a,scope:l,...s}=t,i=o.ref([]),u=o.computed(()=>e.options||i.value||[]),c=o.ref(""),h=o.computed(()=>c.value&&!e.remote?u.value.filter(v=>`${v[e.labelKey]}${v[e.valueKey]}`.toLowerCase().includes(c.value.toLowerCase())):u.value),d=v=>{var m,p;if(r("update:modelValue",v),Array.isArray(v)){const $=v.map(C=>{var _;return(_=u.value.find(T=>T[e.valueKey]===C))==null?void 0:_[e.labelKey]});r("update:label",$)}else{const $=(m=u.value.find(C=>C[e.valueKey]===v))==null?void 0:m[e.labelKey];r("update:label",$)}(p=e==null?void 0:e.onChange)==null||p.call(e,v,{options:u.value})},f=o.ref(!1),b=ye(async v=>{var m;try{f.value=!0;const p=await((m=e.dynamicOptions)==null?void 0:m.call(e,{...l,keywords:v}));i.value=p}finally{f.value=!1}},((g=e.dynamicDebounce)==null?void 0:g.delay)??300,{leading:!1,trailing:!0,...e.dynamicDebounce});o.onMounted(()=>{typeof e.dynamicOptions=="function"&&b()});const y=()=>{e.revalidateOnFocus&&b()};return()=>o.createVNode(A.ElSelect,o.mergeProps({size:"small",filterable:!0,modelValue:e.modelValue,loading:f.value,teleported:!1,filterMethod:v=>c.value=v,remote:e.remote,remoteMethod:b,onFocus:y},s,{onChange:d}),{default:()=>{var v;return[(v=h.value)==null?void 0:v.map(m=>{const p=typeof a=="function"?a(m):m[e.labelKey];return o.createVNode(A.ElOption,{key:m[e.valueKey],value:m[e.valueKey],label:p,disabled:m[e.disabledKey]},{default:()=>[typeof n=="function"?n(m):o.createVNode("span",{style:{fontWeight:"normal"}},[m[e.labelKey]])]})})]}})}}),gn={sabCellType:w.Input,editRender:{autofocus:".el-input__inner, .el-select__input"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return a!=null&&a.effectValueField?o.createVNode(Ge,o.mergeProps({automaticDropdown:!0,modelValue:r[a.effectValueField],"onUpdate:modelValue":l=>r[a.effectValueField]=l,label:r[n.field],"onUpdate:label":l=>r[n.field]=l},a,{scope:e}),null):o.createVNode(Ge,o.mergeProps({automaticDropdown:!0,modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a,{scope:e}),null)}}},vn=o.defineComponent({name:"SabCellBoolean",emits:["update:modelValue"],props:["modelValue","showType","valueTrue","valueFalse","row","column","onChange","disabled"],setup(e,{emit:t,attrs:r}){const n=(s,i)=>{const u=s?i.valueTrue:i.valueFalse;return typeof u=="function"?u({row:i.row,column:i.column}):u},a=o.computed({get(){return typeof e.valueTrue=="function"?e.modelValue===e.valueTrue({row:e.row,column:e.column}):e.modelValue===(e.valueTrue??!0)},set(s){const i=n(s,e)??s;t("update:modelValue",i)}}),l=s=>{a.value=!!s,o.nextTick(()=>{var i;(i=e.onChange)==null||i.call(e,{value:a.value,row:e.row,column:e.column})})};return e.showType==="switch"?()=>o.createVNode(A.ElSwitch,o.mergeProps({size:"small",style:{lineHieght:1},modelValue:a.value,onChange:l,disabled:e.disabled},r),null):()=>o.createVNode(A.ElCheckbox,o.mergeProps({style:{lineHieght:1},modelValue:a.value,onChange:l,disabled:e.disabled},r),null)}}),pn={sabCellType:w.Boolean,className:"sab-cell-boolean",align:"center",showOverflow:!1,editRender:{enabled:!1},filterMethod:e=>{const{column:t,row:r,option:n}=e;if(n.data===!1)return!0;const a=V(e);return typeof a.valueTrue<"u"?(typeof a.valueTrue=="function"?a.valueTrue({value:n.data,column:t,row:r}):a.valueTrue)===r[t.field]:n.data===r[t.field]},slots:{default:(e,t)=>{const{row:r,column:n}=e,a=V(e,t),l=o.inject("table-config"),s=o.computed(()=>{var i,u;return n.editable||((u=(i=l.value)==null?void 0:i.editConfig)==null?void 0:u.enabled)});return o.createVNode(vn,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":i=>r[n.field]=i,showType:"checkbox",row:r,column:n,disabled:s.value===!1},a),null)}}},Ny=o.defineComponent({props:{column:Object,headerFilterModel:Object},setup(e,{emit:t}){const r=e.column,n=r.headerFilterConfig,a=(n==null?void 0:n.sabCellType)||r.sabCellType,l=o.computed(()=>{var i;return n!=null&&n.extendFromColumnEditor?E(r.editorProps||((i=r.editRender)==null?void 0:i.editorProps)||{},(n==null?void 0:n.editorProps)||{}):n==null?void 0:n.editorProps}),s=o.ref(e.headerFilterModel[r.field]);return()=>a===w.InputNumber?o.createVNode(un,o.mergeProps({modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value),null):a===w.Boolean?o.createVNode(vn,o.mergeProps({modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value),null):a===w.DatePciker?o.createVNode(fn,o.mergeProps({format:"YYYY-MM-DD HH:mm:ss",modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value,{type:"datetimerange",prefixIcon:o.createVNode("span",null,null)}),null):a===w.Select?o.createVNode(Ge,o.mergeProps({modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value,{teleported:!0,clearable:!0,"collapse-tags":!0,"collapse-tags-tooltip":!0}),null):a===w.Image||a===w.Dynamic||!r.field?null:o.createVNode(ln,o.mergeProps({modelValue:s.value,"onUpdate:modelValue":i=>s.value=i},l.value,{onChange:i=>{var u;e.headerFilterModel[r.field]=i,t("update:headerFilterModel",{...e.headerFilterModel,[r.field]:i}),(u=l==null?void 0:l.onChange)==null||u.call(l,i)}}),null)}}),By=o.defineComponent({props:{column:Object,headerFilterModel:Object},setup(e,{slots:t}){const{column:r}=e;return()=>{var n,a,l;return o.createVNode("div",{class:"sab-table-header",key:(n=e.column)==null?void 0:n.field},[o.createVNode("div",{class:"sab-table-header-title"},[(a=t.default)==null?void 0:a.call(t)]),((l=r==null?void 0:r.headerFilterConfig)==null?void 0:l.enable)&&o.createVNode("div",{onClick:s=>s.stopPropagation()},[o.createVNode("div",{class:"sab-table-header-filter"},[o.createVNode(Ny,{headerFilterModel:e.headerFilterModel,"onUpdate:headerFilterModel":s=>e.headerFilterModel=s,column:e.column},null)])])])}}}),Vy=e=>{var u;const{column:t,headerFilterModel:r,xTable:n,data:a}=e,l=t.field,s=o.computed(()=>{var c,h,d;if((c=t.headerFilterConfig)!=null&&c.enable&&((h=t.headerFilterConfig)!=null&&h.autoCollect))return on(a,l).sort((f,b)=>f[l]<b[l]?1:-1).map(f=>({label:f[l],value:f[l]}));if((d=t.headerFilterConfig)!=null&&d.enable)return[{data:""}]}),i=({option:c,row:h,...d})=>{var y,g,v;if(typeof t.filterMethod=="function")return t.filterMethod({option:c,row:h,...d});if(typeof((y=t.headerFilterConfig)==null?void 0:y.filterMethod)=="function")return t.headerFilterConfig.filterMethod({option:c,row:h,...d});const f=o.computed(()=>{var m,p,$,C;return(m=t==null?void 0:t.headerFilterConfig)!=null&&m.extendFromColumnEditor?E(t.editorProps||((p=t.editRender)==null?void 0:p.editorProps)||{},(($=t.headerFilterConfig)==null?void 0:$.editorProps)||{}):(C=t==null?void 0:t.headerFilterConfig)==null?void 0:C.editorProps}),b=c.data??c.value;if(typeof b<"u"&&t.field){let m=((v=h[((g=f.value)==null?void 0:g.effectValueField)||t.field])==null?void 0:v.toString().toLowerCase())||"";if(Array.isArray(b)){for(let p of b)if(m.includes(p==null?void 0:p.toString().toLowerCase()))return!0;if(b.length===2){let[p,$]=b;return t.sabCellType===w.DatePciker&&(p=new Date(p),$=new Date($),m=new Date(m)),m>=p&&m<=$}}return m.includes(b==null?void 0:b.toString().toLowerCase())}return!0};return o.watch(()=>r[t.field],c=>{var d,f,b;if(!((d=t.headerFilterConfig)!=null&&d.enable))return;const h=n.value;if(h){const y=h.getColumnByField(t.field);if(y){const g=y.filters[0];g.data=c,c===""||c===null||typeof c>"u"||Array.isArray(c)&&c.length===0?g.checked=!1:g.checked=!0,h.updateData();const v=(f=n.value)==null?void 0:f.getCheckedFilters();(b=e.onFilter)==null||b.call(e,{$table:n.value,column:t,field:t.field,values:Array.isArray(c)?c:[c],filters:v,filterList:v})}}}),{filters:s,filterMethod:(u=t.headerFilterConfig)!=null&&u.autoCollect?void 0:i}},Ry=o.defineComponent({props:{data:Array,xTable:Object},setup(e,{attrs:t,slots:r,emit:n}){const{slots:a,editorProps:l,title:s,headerFilterModel:i,...u}=t,c=o.computed(()=>{const g={};return Object.keys(a||{}).forEach(v=>{g[v]=m=>typeof a[v]=="string"?r[a[v]](m):typeof a[v]=="function"?a[v](m,l):null}),g}),h=o.computed(()=>e.xTable),{filters:d,filterMethod:f}=Vy({data:e.data,column:u,headerFilterModel:i,xTable:h,onFilter:g=>n("filter-change",g)}),b=o.computed(()=>{var g,v;return nn(u.headerClassName,{"sab-table-header-filter-column":((g=u.headerFilterConfig)==null?void 0:g.enable)&&!((v=u.headerFilterConfig)!=null&&v.autoCollect)})}),y=o.computed(()=>{var g,v;return((g=u.headerFilterConfig)==null?void 0:g.enable)&&!((v=u.headerFilterConfig)!=null&&v.autoCollect)&&u.type!="checkbox"&&u.type!="radio"&&u.type!="seq"});return()=>o.createVNode(me.Column,o.mergeProps(u,{filters:d.value,headerClassName:b.value,filterMethod:f}),{...c.value,header:y?g=>o.createVNode(By,{column:t,headerFilterModel:i},{default:()=>{var v,m;return((m=(v=c.value).header)==null?void 0:m.call(v,g))??s}}):void 0})}}),bn={fit:!0,border:!0,showHeader:!0,size:"mini",showOverflow:!0,height:"auto",minHeight:"0px",withSeq:!0,mouseConfig:{selected:!0},seqConfig:{clearOtherSelectedWhenClick:!0},headerFilterConfig:{enable:!1,autoCollect:!1},autoResize:!0,keepSource:!0,showHeaderOverflow:!0,autoColumnWidth:!0,checkboxConfig:{trigger:"cell",range:!0,highlight:!0,isShiftKey:!0},editable:!0,editConfig:{trigger:"click",mode:"cell",autoClear:!0,showStatus:!0,showIcon:!0},rowConfig:{useKey:!0,isCurrent:!0,isHover:!0},keyboardConfig:{isArrow:!0,isEsc:!0,isTab:!0,isEnter:!1,isEdit:!0},columnConfig:{resizable:!0},sortConfig:{trigger:"cell",orders:["desc","asc",null]},scrollY:{enabled:!0,gt:80,oSize:10},scrollX:{enabled:!0,gt:50,oSize:10},rowBackgroundHighlight:!0,rowBorderHighlight:!0},ky=(e,t={})=>{var n,a,l,s;let r=E(bn,e);return r=E(r,t),r.editable===!1?delete r.editConfig:r.editable===!0&&(r.editConfig=E({},r.editConfig||{})),r.withCheckbox===!0&&!((n=r.columns)!=null&&n.some(i=>i.field==="sab-table-checkbox"))&&((a=r.columns)==null||a.unshift({type:"checkbox",fixed:"left",field:"sab-table-checkbox",width:40})),r.withSeq===!0&&!((l=r.columns)!=null&&l.some(i=>i.field==="sab-table-seq"))&&((s=r.columns)==null||s.unshift({type:"checkbox",fixed:"left",field:"sab-table-seq",width:50,className:"sab-table-seq",headerClassName:"sab-table-seq-header",slots:{header:()=>null,checkbox:({seq:i})=>i}})),r.rowBackgroundHighlight===!1&&(r.checkboxConfig&&(r.checkboxConfig.highlight=!1),r.rowConfig&&(r.rowConfig.isCurrent=!1,r.rowConfig.isHover=!1)),r},jy=o.defineComponent({name:"SabCellImage",props:{src:String,preview:Boolean},setup(e,{attrs:t}){return e.src?e.preview?()=>o.createVNode(A.ElImage,o.mergeProps({lazy:!0,fit:"contain",src:e.src,style:{verticalAlign:"middle",height:"40px",width:"40px"},"preview-src-list":[e.src],hideOnClickModal:!0,previewTeleported:!0},t),null):()=>o.createVNode(A.ElPopover,{transition:"el-zoom-in-top",trigger:"click",persistent:!1},{reference:()=>o.createVNode(A.ElIcon,{size:17,style:{cursor:"pointer",verticalAlign:"middle"}},{default:()=>[o.createVNode(sr,null,null)]}),default:()=>o.createVNode(A.ElImage,o.mergeProps({lazy:!0,src:e.src,style:{verticalAlign:"middle"},"preview-src-list":[e.src]},t),null)}):()=>o.createVNode(A.ElIcon,{size:17,style:{cursor:"not-allowed",verticalAlign:"middle",opacity:"0.5"}},{default:()=>[o.createVNode(sr,null,null)]})}}),hn={sabCellType:w.Image,showOverflow:!1,align:"center",slots:{default:({row:e,column:t})=>o.createVNode(jy,{src:e[t.field]},null)}},Dy=o.defineComponent({props:{color:String},name:"SabCellColor",setup(e){const t=o.computed(()=>{var r,n;return((r=e.color)==null?void 0:r.length)===6?`#${e.color}`:((n=e.color)==null?void 0:n.length)===9?`rgb(${e.color.substring(0,3)},${e.color.substring(3,6)},${e.color.substring(6,9)})`:e.color});return()=>o.createVNode("div",{class:"sab-cell-color__inner",style:{background:t.value}},[o.createVNode("span",null,[e.color])])}}),yn={sabCellType:w.Color,className:"sab-cell-color",slots:{default:({row:e,column:t})=>o.createVNode(Dy,{color:e[t.field]},null)}},Ly=o.defineComponent({props:{column:Object,scope:Object,popover:Object},name:"SabCellEditPopover",setup(e,{slots:t,expose:r}){const{scope:n,popover:a}=e,l=o.ref(),s=o.computed(()=>a.showType==="dialog"),i=o.ref(!1),u=o.ref(),c=()=>{const b=o.ref(!1);return{showDialog:b,onCloseDialog:()=>{b.value=!1},onShowDialog:()=>{b.value=!0,i.value=!0}}},{showDialog:h,onCloseDialog:d,onShowDialog:f}=c();return r({popoverRef:o.computed(()=>({...u.value,hide:()=>{var b;i.value=!1,s.value||(b=u.value)==null||b.hide()}}))}),()=>{var b;return o.createVNode("div",null,[o.createVNode("div",{class:"sab-cell-popover-inner",style:{overflow:"hidden",textOverflow:"ellipsis"},ref:l,onClick:f},[o.createVNode("span",{class:"sab-cell-popover-inner-ctx"},[(b=t.default)==null?void 0:b.call(t)]),!(a!=null&&a.hideIcon)&&o.createVNode(A.ElButton,{round:!1,class:"sab-cell-popover-inner-btn",size:"small",icon:o.createVNode(ch,null,null)},null)]),s.value?h.value&&o.createVNode(A.ElDialog,o.mergeProps({ref:u,modelValue:i.value,"onUpdate:modelValue":y=>i.value=y,"destroy-on-close":!0,draggable:!0,"append-to-body":!0,transition:"el-zoom-in-top","close-on-click-modal":!1,onClosed:d},a,{modalClass:nn(["sab-cell-popover-dialog",a.modalClass])}),{default:()=>{var y;return[(y=t.popover)==null?void 0:y.call(t,n)]}}):o.createVNode(A.ElPopover,o.mergeProps({ref:u,persistent:!1,"virtual-ref":l,"virtual-triggering":!0,trigger:a.trigger||"click",transition:"el-zoom-in-top"},a),{default:()=>{var y;return[(y=t.popover)==null?void 0:y.call(t,n)]}})])}}}),mn={sabCellType:w.Popover,className:"sab-cell-popover",editRender:{enabled:!1},slots:{default:(e,t)=>{const{row:r,column:n}=e,a=V(e,t),l=o.ref(),s=o.computed(()=>{var i;return(i=l.value)==null?void 0:i.popoverRef});return o.createVNode(Ly,{ref:l,scope:e,popover:a},{default:()=>r[n.field],popover:i=>n.slots.popover({...i,popoverRef:s.value})})}}},$n={sabCellType:w.Dynamic,editRender:{autofocus:".el-input__inner"},slots:{default:(e,t)=>{var c;const r=V(e,t),{getSabCellType:n,getEditorProps:a}=r||{},l=n==null?void 0:n(e),s=gr(l),i=a==null?void 0:a(e),u=(c=s==null?void 0:s.slots)==null?void 0:c.default;return typeof u=="function"?u(e,i):e.row[e.column.field]},edit:(e,t)=>{var h,d;const r=V(e,t),{getSabCellType:n,getEditorProps:a}=r||{},l=n==null?void 0:n(e),s=gr(l),i=a==null?void 0:a(e),u=(h=s==null?void 0:s.slots)==null?void 0:h.edit;if(typeof u=="function")return u(e,i);const c=(d=s==null?void 0:s.slots)==null?void 0:d.default;return typeof c=="function"?c(e,i):u}}},Ky=14,Uy=6,Hy=20,Re=26;function Gy(e){const t=/[a-z,\.\_\|\`\!\^\*\(\)\·]/g,r=e.match(t);return r?r.length:0}const qy=e=>{const t=e.title||"",r=Gy(t),n=t.length-r;let a=r*Uy+n*Ky+Hy;return(e.editable||typeof e.editable>"u"&&e.editRender)&&(a+=Re),e.sortable&&(a+=Re),e.filters&&(a+=Re),a},zy={},gr=e=>{if(e===w.Input)return sn;if(e===w.InputNumber)return cn;if(e===w.DatePciker)return dn;if(e===w.Select)return gn;if(e===w.Image)return hn;if(e===w.Color)return yn;if(e===w.Boolean)return pn;if(e===w.Popover)return mn;if(e===w.Dynamic)return $n},Wy=(e,t)=>{var r;return e.sabCellType===w.Input?e=E(sn,e):e.sabCellType===w.InputNumber?e=E(cn,e):e.sabCellType===w.DatePciker?e=E(dn,e):e.sabCellType===w.Select?e=E(gn,e):e.sabCellType===w.Image?e=E(hn,e):e.sabCellType===w.Color?e=E(yn,e):e.sabCellType===w.Boolean?e=E(pn,e):e.sabCellType===w.Popover?e=E(mn,e):e.sabCellType===w.Dynamic&&(e=E($n,e)),(e.editorProps||e.getEditorProps)&&(e.editRender=Object.assign({},e.editRender,{editorProps:e.editorProps,getEditorProps:e.getEditorProps})),e.editable===!1?delete e.editRender:e.editable===!0&&(e.editRender=E({},e.editRender||{})),t!=null&&t.headerFilterConfig&&(e.headerFilterConfig=E((t==null?void 0:t.headerFilterConfig)||{},e.headerFilterConfig||{})),e.headerFilterConfig&&(e.headerFilterConfig.sabCellType=e.headerFilterConfig.sabCellType??e.sabCellType),(r=t==null?void 0:t.sortConfig)!=null&&r.enableAll&&(e.sortable=e.sortable??!0),e},Yy=(e,t)=>(t.autoColumnWidth===!0&&typeof e.width>"u"&&(e.width=qy(e)),e),Xy=(e,t)=>e.map(r=>Yy(E(zy,Wy(r,t)),t));var ge=(e=>(e.Shift="shift",e.Control="control",e.Meta="meta",e))(ge||{});let vr=!1,te=new Set;function Jy(){vr||(vr=!0,document.addEventListener("keydown",e=>{var t;te.add((t=e.key)==null?void 0:t.toLowerCase())}),document.addEventListener("keyup",e=>{var t;te.delete((t=e.key)==null?void 0:t.toLowerCase())}))}const _n=["keydown-start","keydown","keydown-end","current-change","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","filter-change","filter-visible","clear-filter","resizable-change","toggle-row-expand","toggle-tree-expand","menu-click","cell-selected","edit-closed","edit-actived","edit-disabled","valid-error","scroll","custom"],Zy=e=>{const{checkboxRecords:t,emit:r,xTable:n,tableConfig:a}=e,l=(d=[])=>{var g,v,m,p;const f=((g=n.value)==null?void 0:g.getCheckboxRecords())||[],b=((v=n.value)==null?void 0:v.getCheckboxRecords(!0))||[],y=((m=a.value.rowConfig)==null?void 0:m.keyField)||((p=a.value.rowConfig)!=null&&p.useKey?"_X_ROW_KEY":void 0);return y?on([...d,...f,...b],y):f},s=d=>{const f=l(d.records);t.value=f||[],r("checkbox-change",{...d,records:f})},i=d=>{const f=l(d.records);t.value=f||[],r("checkbox-all",{...d,records:f})},u=d=>{const f=l(d.records);t.value=f||[],r("checkbox-range-end",{...d,records:f})},c={"cell-click":async d=>{var g,v,m,p,$,C;const{row:f,column:b}=d,y=(g=n.value)==null?void 0:g.isCheckedByCheckboxRow(f);if(te.has(ge.Shift)&&b.field=="sab-table-seq"){s(d);return}if((te.has(ge.Control)||te.has(ge.Meta))&&b.field=="sab-table-seq"){y||await((v=n.value)==null?void 0:v.setCheckboxRow(f,!1)),u(d);return}b.field==="sab-table-seq"&&((m=a.value.seqConfig)!=null&&m.clearOtherSelectedWhenClick&&await((p=n.value)==null?void 0:p.clearCheckboxRow()),await(($=n.value)==null?void 0:$.setCheckboxRow(f,!0)),(C=n.value)==null||C.setCurrentRow(f),s(d)),r("cell-click",d)},"checkbox-change":async d=>{d.column.field==="sab-table-seq"||s(d)},"checkbox-range-end":d=>{u(d)},"checkbox-all":d=>{i(d)}},h={};return _n.map(d=>(h[d]=(...f)=>{typeof c[d]=="function"?c[d](...f):r(d,...f)},d)),{onEvents:h}};function gt(e,t){return t===void 0&&(t=15),+parseFloat(Number(e).toPrecision(t))}function B(e){var t=e.toString().split(/[eE]/),r=(t[0].split(".")[1]||"").length-+(t[1]||0);return r>0?r:0}function ne(e){if(e.toString().indexOf("e")===-1)return Number(e.toString().replace(".",""));var t=B(e);return t>0?gt(Number(e)*Math.pow(10,t)):Number(e)}function qe(e){wn&&(e>Number.MAX_SAFE_INTEGER||e<Number.MIN_SAFE_INTEGER)&&console.warn(e+" is beyond boundary when transfer to integer, the results may not be accurate")}function xe(e){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];var n=t[0],a=t.slice(1);return a.reduce(function(l,s){return e(l,s)},n)}}var k=xe(function(e,t){var r=ne(e),n=ne(t),a=B(e)+B(t),l=r*n;return qe(l),l/Math.pow(10,a)}),Qy=xe(function(e,t){var r=Math.pow(10,Math.max(B(e),B(t)));return(k(e,r)+k(t,r))/r}),em=xe(function(e,t){var r=Math.pow(10,Math.max(B(e),B(t)));return(k(e,r)-k(t,r))/r}),Cn=xe(function(e,t){var r=ne(e),n=ne(t);return qe(r),qe(n),k(r/n,gt(Math.pow(10,B(t)-B(e))))});function tm(e,t){var r=Math.pow(10,t),n=Cn(Math.round(Math.abs(k(e,r))),r);return e<0&&n!==0&&(n=k(n,-1)),n}var wn=!0;function rm(e){e===void 0&&(e=!0),wn=e}var nm={strip:gt,plus:Qy,minus:em,times:k,divide:Cn,round:tm,digitLength:B,float2Fixed:ne,enableBoundaryChecking:rm};const am=e=>{const{locale:t}=dt(),r=e.reduce((n,a)=>(a.field&&(n[a.field]=a),n),{});return({columns:n,data:a})=>[n.map((l,s)=>{var i,u,c,h,d,f;return s===0&&(!l.field||l.type)?((c=(u=(i=t.value)==null?void 0:i.sabDesign)==null?void 0:u.table)==null?void 0:c.total)||((d=(h=t==null?void 0:t.sabDesign)==null?void 0:h.table)==null?void 0:d.total):(f=r[l.field])!=null&&f.withSummary?a.reduce((b,y)=>nm.plus(b,y[l.field]||0),0):null})]},om={class:"sab-table-inner"},U=o.defineComponent({name:"SabTable",__name:"index",props:o.mergeDefaults({size:{},id:{},data:{},height:{},minHeight:{},maxHeight:{},stripe:{type:Boolean},round:{type:Boolean},border:{type:[Boolean,String]},loading:{type:Boolean},align:{},headerAlign:{},footerAlign:{},showHeader:{type:Boolean},showFooter:{type:Boolean},footerData:{},footerMethod:{type:Function},rowClassName:{type:[String,Function]},cellClassName:{type:[String,Function]},headerRowClassName:{type:[String,Function]},headerCellClassName:{type:[String,Function]},footerRowClassName:{type:[String,Function]},footerCellClassName:{type:[String,Function]},cellStyle:{type:[Object,Function]},rowStyle:{type:[Object,Function]},headerCellStyle:{type:[Object,Function]},headerRowStyle:{type:[Object,Function]},footerRowStyle:{type:[Object,Function]},footerCellStyle:{type:[Object,Function]},mergeCells:{},mergeFooterItems:{},spanMethod:{type:Function},footerSpanMethod:{type:Function},showOverflow:{type:[Boolean,String,null]},showHeaderOverflow:{type:[Boolean,String,null]},showFooterOverflow:{type:[Boolean,String,null]},keepSource:{type:Boolean},autoResize:{type:Boolean},syncResize:{type:[Boolean,String,Number]},columnConfig:{},rowConfig:{},customConfig:{},resizeConfig:{},resizableConfig:{},seqConfig:{},sortConfig:{},filterConfig:{},radioConfig:{},checkboxConfig:{},tooltipConfig:{},exportConfig:{},importConfig:{},printConfig:{},expandConfig:{},treeConfig:{},menuConfig:{},mouseConfig:{},areaConfig:{},fnrConfig:{},keyboardConfig:{},clipConfig:{},editConfig:{},validConfig:{},editRules:{},emptyText:{},emptyRender:{},loadingConfig:{},scrollX:{},scrollY:{},params:{},resizable:{type:Boolean},highlightCurrentRow:{type:Boolean},highlightHoverRow:{type:Boolean},highlightCurrentColumn:{type:Boolean},highlightHoverColumn:{type:Boolean},highlightCell:{type:Boolean},columnKey:{type:Boolean},rowKey:{type:Boolean},rowId:{},fit:{type:Boolean},animat:{type:Boolean},delayHover:{},name:{},class:{},wrapClassName:{},columns:{},editable:{type:Boolean},checkboxRecords:{},withSeq:{type:Boolean},withCheckbox:{type:Boolean},headerFilterConfig:{},headerFilterModel:{},showToolbar:{type:Boolean},autoClearSelected:{type:Boolean},autoColumnWidth:{type:Boolean},rowBackgroundHighlight:{type:Boolean},rowBorderHighlight:{type:Boolean},tableSetConfig:{}},bn),emits:[..._n,"update:columns","update:checkboxRecords"],setup(e,{expose:t,emit:r}){const n=e,a=o.ref(),{locale:l}=dt(),s=o.computed(()=>{const g=ky({keyboardConfig:{editMethod({row:v,column:m}){return a.value.setEditCell(v,m),!0}}},Ue(n,"data"));return g.columns=Xy(g.columns||[],g),g}),i=o.computed(()=>{var g;return fa((g=s.value.columns)==null?void 0:g.map(v=>v.slots?Object.values(v.slots).filter(m=>typeof m=="string"):[]))}),u=r,c=o.computed({get(){return n.checkboxRecords||[]},set:ah(function(g){var v;u("update:checkboxRecords",g),(v=a.value)==null||v.setCheckboxRow(g,!0)},300,{leading:!1,trailing:!0})});o.watch(()=>n.checkboxRecords,g=>{var v;Array.isArray(g)&&((v=a.value)==null||v.setCheckboxRow(g,!0))});const{onEvents:h}=Zy({checkboxRecords:c,emit:u,xTable:a,tableConfig:s}),d=o.computed(()=>Ob(Ue(s.value,"columns","data"),xb));o.provide("table-config",d);const f=o.ref(!0);o.watch(()=>{var g;return(g=s.value.columns)==null?void 0:g.filter(v=>v.visible!=!1).map(v=>v.field).join(",")},()=>{var g,v;(g=n.headerFilterConfig)!=null&&g.enable?(f.value=!1,o.nextTick(()=>{f.value=!0})):(v=a.value)==null||v.reloadColumn(s.value.columns),c.value=[],u("checkbox-all",{checked:!1,records:[]})});const b=o.computed(()=>n.showToolbar||!!n.tableSetConfig),y=o.ref(n.headerFilterModel||{});return t({getInstance:()=>a.value,reloadRow:g=>{var v;Array.isArray(g)?g.forEach(async m=>{var p;return await((p=a.value)==null?void 0:p.reloadRow(m))}):(v=a.value)==null||v.reloadRow(g)},getCheckedFilters(){var g;return(g=a.value)==null?void 0:g.getCheckedFilters()}}),(g,v)=>{var m,p,$;return o.openBlock(),o.createElementBlock("div",{class:o.normalizeClass(["sab-table-wrap",n.wrapClassName])},[b.value?(o.openBlock(),o.createBlock(k1,{key:0,"table-ref":a.value,columns:n.columns,name:n.name,tableSetConfig:g.tableSetConfig,"onUpdate:columns":v[0]||(v[0]=C=>u("update:columns",C))},{"toolbar-right":o.withCtx(()=>[o.renderSlot(g.$slots,"toolbar-right")]),default:o.withCtx(()=>[o.renderSlot(g.$slots,"toolbar")]),_:3},8,["table-ref","columns","name","tableSetConfig"])):o.createCommentVNode("",!0),o.createElementVNode("div",om,[f.value?(o.openBlock(),o.createBlock(o.unref(me.Table),o.mergeProps({key:0,ref_key:"xTable",ref:a,data:n.data,footerMethod:o.unref(am)(s.value.columns||[])},d.value,o.toHandlers(o.unref(h)),{"empty-text":(m=o.unref(l))==null?void 0:m.sabDesign.table.emptyText,"loading-config":{text:(p=o.unref(l))==null?void 0:p.sabDesign.table.loadingText},class:["sab-table",s.value.class,{"sab-table-row-no-bg-highlight":s.value.rowBackgroundHighlight===!1,"sab-table-header-filters":(($=g.headerFilterConfig)==null?void 0:$.enable)!=!1}]}),{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.value.columns,C=>(o.openBlock(),o.createBlock(o.unref(Ry),o.mergeProps({data:g.data,key:C.field},C,{xTable:a.value,visible:C.visible!=!1,headerFilterModel:y.value,"onUpdate:headerFilterModel":v[1]||(v[1]=_=>y.value=_),onFilterChange:o.unref(h)["filter-change"]}),o.createSlots({_:2},[o.renderList(i.value,_=>({name:_,fn:o.withCtx(T=>[o.renderSlot(g.$slots,_,o.normalizeProps(o.guardReactiveProps(T)))])}))]),1040,["data","xTable","visible","headerFilterModel","onFilterChange"]))),128))]),_:3},16,["data","footerMethod","empty-text","loading-config","class"])):o.createCommentVNode("",!0)]),o.renderSlot(g.$slots,"table-footer")],2)}}});U.install=e=>{e.component(U.name,U),e.use(me),Jy()};U.use=me.use;const ze=o.defineComponent({name:"SabSelect",__name:"index",props:{remoteMethod:{},labelKey:{default:"label"},valueKey:{default:"value"},modelValue:{},labelInValue:{type:Boolean},options:{},multiple:{type:Boolean},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},enableLoadmore:{type:Boolean},revalidateWhenFocus:{type:Boolean},selectType:{default:"v2"},autoSelectFirstOption:{type:Boolean},pagination:{}},emits:["update:modelValue","focus","blur"],setup(e,{emit:t}){const r=t,n=e,a={mounted(p,$){var T;const C=p.querySelector(".el-tooltip__trigger"),_=()=>{requestAnimationFrame(()=>{var P,R;const x=C.getAttribute("aria-describedby");if(x){const K=(P=document.getElementById(x))==null?void 0:P.querySelector(".el-select-dropdown__wrap");K==null||K.addEventListener("scroll",function(){var vt;K.scrollHeight-K.scrollTop-1<=K.clientHeight&&((vt=$==null?void 0:$.value)==null||vt.call($))}),(R=C.querySelector("input"))==null||R.removeEventListener("focus",_)}})};(T=C.querySelector("input"))==null||T.addEventListener("focus",_)}},l=o.ref([]);o.watch(()=>n.options,()=>{l.value=n.options||[]},{immediate:!0});const s=o.reactive(Object.assign({current:1,size:20,pages:1},n.pagination)),i=o.ref(!1),u=o.ref(""),c=o.ref(!1),h=async(p="",$=1)=>{var C;if(n.remoteMethod&&(u.value=p,!($!=1&&c.value))){s.current=$;try{i.value=!0;const _=await((C=n.remoteMethod)==null?void 0:C.call(n,p,s));Array.isArray(_)||!_?(s.current===1?l.value=_||[]:l.value.push(..._||[]),c.value=(_==null?void 0:_.length)<s.size):(s.current===1?l.value=_.records||[]:l.value.push(..._.records||[]),s.pages=Math.max(1,_.pages||0),c.value=s.current>=s.pages)}finally{i.value=!1}}},d=ye(p=>h(p,1),500,{leading:!1,trailing:!0}),f=ye(()=>{if(n.enableLoadmore)return s.current++,h(u.value,s.current)},500,{leading:!0,trailing:!1});o.onMounted(()=>{d()});const b=p=>{r("focus",p),n.revalidateWhenFocus&&h()},y=p=>{r("blur",p)},g=o.computed({get(){var p;return n.labelInValue?Array.isArray(n.modelValue)?n.modelValue.map($=>$[n.valueKey]):(p=n.modelValue)==null?void 0:p[n.valueKey]:n.modelValue},set(p){if(n.labelInValue)if(Array.isArray(p)){const $=l.value.filter(C=>p.includes(C[n.valueKey]));r("update:modelValue",$)}else{const $=l.value.find(C=>p===C[n.valueKey]);r("update:modelValue",$)}else r("update:modelValue",p)}}),v=o.watchEffect(()=>{var p,$,C;if(n.autoSelectFirstOption){if(l.value.length&&(g.value===null||g.value===void 0)){let _=n.labelInValue?(p=l.value)==null?void 0:p[0]:(C=($=l.value)==null?void 0:$[0])==null?void 0:C[n.valueKey];n.multiple&&typeof _<"u"?g.value=[_]:g.value=_,setTimeout(()=>v())}}else setTimeout(()=>v())}),m=Ue(n,"modelValue","options","labelInValue","labelKey","valueKey");return(p,$)=>{const C=o.resolveComponent("el-option");return p.enableLoadmore||p.selectType==="v1"?o.withDirectives((o.openBlock(),o.createBlock(o.unref(A.ElSelect),o.mergeProps({key:0,modelValue:g.value,"onUpdate:modelValue":$[0]||($[0]=_=>g.value=_),onFocus:b,onBlur:y},{...o.unref(m),...p.$attrs}),{default:o.withCtx(()=>{var _,T,x;return[p.labelInValue&&((_=p.modelValue)!=null&&_[p.labelKey])&&!l.value.find(P=>{var R;return P[p.valueKey]===((R=p.modelValue)==null?void 0:R[p.valueKey])})?(o.openBlock(),o.createBlock(C,{key:0,label:(T=p.modelValue)==null?void 0:T[p.labelKey],value:(x=p.modelValue)==null?void 0:x[p.valueKey]},{default:o.withCtx(()=>[o.renderSlot(p.$slots,"default",{item:p.modelValue})]),_:3},8,["label","value"])):o.createCommentVNode("",!0),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(l.value,P=>(o.openBlock(),o.createBlock(C,{key:P[p.valueKey],label:P[p.labelKey],value:P[p.valueKey]},{default:o.withCtx(()=>[o.renderSlot(p.$slots,"default",{item:P})]),_:2},1032,["label","value"]))),128))]}),_:3},16,["modelValue"])),[[a,o.unref(f)]]):o.withDirectives((o.openBlock(),o.createBlock(o.unref(A.ElSelectV2),o.mergeProps({key:1,modelValue:g.value,"onUpdate:modelValue":$[1]||($[1]=_=>g.value=_),props:{value:p.valueKey,label:p.labelKey,...p.$attrs.props||{}},options:l.value,onFocus:b,onBlur:y},{...o.unref(m),...p.$attrs}),{default:o.withCtx(_=>[o.renderSlot(p.$slots,"default",o.normalizeProps(o.guardReactiveProps(_)))]),_:3},16,["modelValue","props","options"])),[[a,o.unref(f)]])}}}),lm=o.defineComponent({__name:"index",props:{lang:{}},setup(e){const t=e,r=o.computed(()=>t.lang||""),{locale:n}=sh(r);return o.provide(Zr,n),(a,l)=>o.renderSlot(a.$slots,"default")}}),Tn={install(e){e.component(ze.name,ze),U.install(e)}};exports.SabCellType=w;exports.SabDesignConfigProvider=lm;exports.SabSelect=ze;exports.SabTable=U;exports.SabTableSet=tn;exports.SabUI=Tn;exports.default=Tn;
5
+ */(function(e){(function(){var t={}.hasOwnProperty;function r(){for(var l="",s=0;s<arguments.length;s++){var i=arguments[s];i&&(l=a(l,n(i)))}return l}function n(l){if(typeof l=="string"||typeof l=="number")return l;if(typeof l!="object")return"";if(Array.isArray(l))return r.apply(null,l);if(l.toString!==Object.prototype.toString&&!l.toString.toString().includes("[native code]"))return l.toString();var s="";for(var i in l)t.call(l,i)&&l[i]&&(s=a(s,i));return s}function a(l,s){return s?l?l+" "+s:l+s:l}e.exports?(r.default=r,e.exports=r):window.classNames=r})()})(rn);var j1=rn.exports;const nn=I(j1);var D1=function(t){return L1(t)&&!K1(t)};function L1(e){return!!e&&typeof e=="object"}function K1(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||G1(e)}var U1=typeof Symbol=="function"&&Symbol.for,H1=U1?Symbol.for("react.element"):60103;function G1(e){return e.$$typeof===H1}function q1(e){return Array.isArray(e)?[]:{}}function re(e,t){return t.clone!==!1&&t.isMergeableObject(e)?H(q1(e),e,t):e}function z1(e,t,r){return e.concat(t).map(function(n){return re(n,r)})}function W1(e,t){if(!t.customMerge)return H;var r=t.customMerge(e);return typeof r=="function"?r:H}function Y1(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function dr(e){return Object.keys(e).concat(Y1(e))}function an(e,t){try{return t in e}catch{return!1}}function X1(e,t){return an(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function J1(e,t,r){var n={};return r.isMergeableObject(e)&&dr(e).forEach(function(a){n[a]=re(e[a],r)}),dr(t).forEach(function(a){X1(e,a)||(an(e,a)&&r.isMergeableObject(t[a])?n[a]=W1(a,r)(e[a],t[a],r):n[a]=re(t[a],r))}),n}function H(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||z1,r.isMergeableObject=r.isMergeableObject||D1,r.cloneUnlessOtherwiseSpecified=re;var n=Array.isArray(t),a=Array.isArray(e),l=n===a;return l?n?r.arrayMerge(e,t,r):J1(e,t,r):re(t,r)}H.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,a){return H(n,a,r)},{})};var Z1=H,Q1=Z1;const E=I(Q1);function ey(e){return e!==e}var ty=ey;function ry(e,t,r){for(var n=r-1,a=e.length;++n<a;)if(e[n]===t)return n;return-1}var ny=ry,ay=Qr,oy=ty,ly=ny;function iy(e,t,r){return t===t?ly(e,t,r):ay(e,oy,r)}var sy=iy,uy=sy;function cy(e,t){var r=e==null?0:e.length;return!!r&&uy(e,t,0)>-1}var fy=cy;function dy(e,t,r){for(var n=-1,a=e==null?0:e.length;++n<a;)if(r(t,e[n]))return!0;return!1}var gy=dy;function vy(){}var py=vy,Ve=Mr,by=py,hy=ft,yy=1/0,my=Ve&&1/hy(new Ve([,-0]))[1]==yy?function(e){return new Ve(e)}:by,$y=my,_y=Ur,Cy=fy,wy=gy,Ty=Hr,Sy=$y,Ay=ft,Oy=200;function Ey(e,t,r){var n=-1,a=Cy,l=e.length,s=!0,i=[],u=i;if(r)s=!1,a=wy;else if(l>=Oy){var c=t?null:Sy(e);if(c)return Ay(c);s=!1,a=Ty,u=new _y}else u=t?[]:i;e:for(;++n<l;){var h=e[n],d=t?t(h):h;if(h=r||h!==0?h:0,s&&d===d){for(var f=u.length;f--;)if(u[f]===d)continue e;t&&u.push(d),i.push(h)}else a(u,d,r)||(u!==i&&u.push(d),i.push(h))}return i}var Py=Ey,xy=ue,Iy=Py;function My(e,t){return e&&e.length?Iy(e,xy(t)):[]}var Fy=My;const on=I(Fy);var w=(e=>(e.Input="input",e.InputNumber="input-number",e.Select="select",e.DatePciker="date-picker",e.Image="image",e.Color="color",e.Boolean="boolean",e.Popover="popover",e.Dynamic="dynamic",e))(w||{});const V=(e,t)=>{var n,a,l,s;const{column:r}=e;return t||r.editorProps||((n=r.editRender)==null?void 0:n.editorProps)||((a=r.getEditorProps)==null?void 0:a.call(r,e))||((s=(l=r.editRender)==null?void 0:l.getEditorProps)==null?void 0:s.call(l,e))},ln=o.defineComponent({name:"SabCellEditInput",emits:["update:modelValue"],setup(e,{attrs:t,emit:r}){const n=a=>{r("update:modelValue",a)};return()=>o.createVNode(A.ElInput,o.mergeProps({size:"small",modelValue:e.modelValue,onInput:n},t),null)}}),sn={sabCellType:w.Input,editRender:{autofocus:".el-input__inner"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return o.createVNode(ln,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a),null)}}},un=o.defineComponent({name:"SabCellEditInput",emits:["update:modelValue"],setup(e,{attrs:t,emit:r}){const n=(a,l)=>{r("update:modelValue",a,l)};return()=>o.createVNode(A.ElInputNumber,o.mergeProps({size:"small",modelValue:e.modelValue,controlsPosition:"right","onUpdate:modelValue":n},t),null)}}),cn={cellType:"number",sabCellType:w.InputNumber,editRender:{autofocus:".el-input__inner"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return o.createVNode(un,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a),null)}}},fn=o.defineComponent({name:"SabCellEditInput",emits:["update:modelValue"],setup(e,{attrs:t,emit:r}){const n=a=>{r("update:modelValue",a)};return()=>o.createVNode(A.ElDatePicker,o.mergeProps({size:"small",format:"YYYY-MM-DD HH:mm:ss",valueFormat:"YYYY-MM-DD HH:mm:ss",modelValue:e.modelValue,"onUpdate:modelValue":n},t),null)}}),dn={sabCellType:w.DatePciker,editRender:{autofocus:".el-input__inner"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return o.createVNode(fn,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a),null)}}},Ge=o.defineComponent({props:{options:Array,modelValue:{type:[String,Number,Array],default:""},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},disabledKey:{type:String,default:"disabled"},dynamicOptions:Function,dynamicDebounce:Object,remote:Boolean,revalidateOnFocus:Boolean,onChange:Function},name:"SabCellEditSelect",emits:["update:modelValue","update:label"],setup(e,{attrs:t,emit:r}){var g;const{renderOption:n,renderOptionLabel:a,scope:l,...s}=t,i=o.ref([]),u=o.computed(()=>e.options||i.value||[]),c=o.ref(""),h=o.computed(()=>c.value&&!e.remote?u.value.filter(v=>`${v[e.labelKey]}${v[e.valueKey]}`.toLowerCase().includes(c.value.toLowerCase())):u.value),d=v=>{var m,p;if(r("update:modelValue",v),Array.isArray(v)){const $=v.map(C=>{var _;return(_=u.value.find(T=>T[e.valueKey]===C))==null?void 0:_[e.labelKey]});r("update:label",$)}else{const $=(m=u.value.find(C=>C[e.valueKey]===v))==null?void 0:m[e.labelKey];r("update:label",$)}(p=e==null?void 0:e.onChange)==null||p.call(e,v,{options:u.value})},f=o.ref(!1),b=ye(async v=>{var m;try{f.value=!0;const p=await((m=e.dynamicOptions)==null?void 0:m.call(e,{...l,keywords:v}));i.value=p}finally{f.value=!1}},((g=e.dynamicDebounce)==null?void 0:g.delay)??300,{leading:!1,trailing:!0,...e.dynamicDebounce});o.onMounted(()=>{typeof e.dynamicOptions=="function"&&b()});const y=()=>{e.revalidateOnFocus&&b()};return()=>o.createVNode(A.ElSelect,o.mergeProps({size:"small",filterable:!0,modelValue:e.modelValue,loading:f.value,teleported:!1,filterMethod:v=>c.value=v,remote:e.remote,remoteMethod:b,onFocus:y},s,{onChange:d}),{default:()=>{var v;return[(v=h.value)==null?void 0:v.map(m=>{const p=typeof a=="function"?a(m):m[e.labelKey];return o.createVNode(A.ElOption,{key:m[e.valueKey],value:m[e.valueKey],label:p,disabled:m[e.disabledKey]},{default:()=>[typeof n=="function"?n(m):o.createVNode("span",{style:{fontWeight:"normal"}},[m[e.labelKey]])]})})]}})}}),gn={sabCellType:w.Input,editRender:{autofocus:".el-input__inner, .el-select__input"},slots:{edit:(e,t)=>{const{row:r,column:n}=e,a=V(e,t);return a!=null&&a.effectValueField?o.createVNode(Ge,o.mergeProps({automaticDropdown:!0,modelValue:r[a.effectValueField],"onUpdate:modelValue":l=>r[a.effectValueField]=l,label:r[n.field],"onUpdate:label":l=>r[n.field]=l},a,{scope:e}),null):o.createVNode(Ge,o.mergeProps({automaticDropdown:!0,modelValue:r[n.field],"onUpdate:modelValue":l=>r[n.field]=l},a,{scope:e}),null)}}},vn=o.defineComponent({name:"SabCellBoolean",emits:["update:modelValue"],props:["modelValue","showType","valueTrue","valueFalse","row","column","onChange","disabled"],setup(e,{emit:t,attrs:r}){const n=(s,i)=>{const u=s?i.valueTrue:i.valueFalse;return typeof u=="function"?u({row:i.row,column:i.column}):u},a=o.computed({get(){return typeof e.valueTrue=="function"?e.modelValue===e.valueTrue({row:e.row,column:e.column}):e.modelValue===(e.valueTrue??!0)},set(s){const i=n(s,e)??s;t("update:modelValue",i)}}),l=s=>{a.value=!!s,o.nextTick(()=>{var i;(i=e.onChange)==null||i.call(e,{value:a.value,row:e.row,column:e.column})})};return e.showType==="switch"?()=>o.createVNode(A.ElSwitch,o.mergeProps({size:"small",style:{lineHieght:1},modelValue:a.value,onChange:l,disabled:e.disabled},r),null):()=>o.createVNode(A.ElCheckbox,o.mergeProps({style:{lineHieght:1},modelValue:a.value,onChange:l,disabled:e.disabled},r),null)}}),pn={sabCellType:w.Boolean,className:"sab-cell-boolean",align:"center",showOverflow:!1,editRender:{enabled:!1},filterMethod:e=>{const{column:t,row:r,option:n}=e;if(n.data===!1)return!0;const a=V(e);return typeof a.valueTrue<"u"?(typeof a.valueTrue=="function"?a.valueTrue({value:n.data,column:t,row:r}):a.valueTrue)===r[t.field]:n.data===r[t.field]},slots:{default:(e,t)=>{const{row:r,column:n}=e,a=V(e,t),l=o.inject("table-config"),s=o.computed(()=>{var i,u;return n.editable||((u=(i=l.value)==null?void 0:i.editConfig)==null?void 0:u.enabled)});return o.createVNode(vn,o.mergeProps({modelValue:r[n.field],"onUpdate:modelValue":i=>r[n.field]=i,showType:"checkbox",row:r,column:n,disabled:s.value===!1},a),null)}}},Ny=o.defineComponent({props:{column:Object,headerFilterModel:Object},setup(e,{emit:t}){const r=e.column,n=r.headerFilterConfig,a=(n==null?void 0:n.sabCellType)||r.sabCellType,l=o.computed(()=>{var i;return n!=null&&n.extendFromColumnEditor?E(r.editorProps||((i=r.editRender)==null?void 0:i.editorProps)||{},(n==null?void 0:n.editorProps)||{}):n==null?void 0:n.editorProps}),s=o.ref(e.headerFilterModel[r.field]);return()=>a===w.InputNumber?o.createVNode(un,o.mergeProps({modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value),null):a===w.Boolean?o.createVNode(vn,o.mergeProps({modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value),null):a===w.DatePciker?o.createVNode(fn,o.mergeProps({format:"YYYY-MM-DD HH:mm:ss",modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value,{type:"datetimerange",prefixIcon:o.createVNode("span",null,null)}),null):a===w.Select?o.createVNode(Ge,o.mergeProps({modelValue:e.headerFilterModel[r.field],"onUpdate:modelValue":i=>e.headerFilterModel[r.field]=i},l.value,{teleported:!0,clearable:!0,"collapse-tags":!0,"collapse-tags-tooltip":!0}),null):a===w.Image||a===w.Dynamic||!r.field?null:o.createVNode(ln,o.mergeProps({modelValue:s.value,"onUpdate:modelValue":i=>s.value=i},l.value,{onChange:i=>{var u;e.headerFilterModel[r.field]=i,t("update:headerFilterModel",{...e.headerFilterModel,[r.field]:i}),(u=l==null?void 0:l.onChange)==null||u.call(l,i)}}),null)}}),By=o.defineComponent({props:{column:Object,headerFilterModel:Object},setup(e,{slots:t}){const{column:r}=e;return()=>{var n,a,l;return o.createVNode("div",{class:"sab-table-header",key:(n=e.column)==null?void 0:n.field},[o.createVNode("div",{class:"sab-table-header-title"},[(a=t.default)==null?void 0:a.call(t)]),((l=r==null?void 0:r.headerFilterConfig)==null?void 0:l.enable)&&o.createVNode("div",{onClick:s=>s.stopPropagation()},[o.createVNode("div",{class:"sab-table-header-filter"},[o.createVNode(Ny,{headerFilterModel:e.headerFilterModel,"onUpdate:headerFilterModel":s=>e.headerFilterModel=s,column:e.column},null)])])])}}}),Vy=e=>{var u;const{column:t,headerFilterModel:r,xTable:n,data:a}=e,l=t.field,s=o.computed(()=>{var c,h,d;if((c=t.headerFilterConfig)!=null&&c.enable&&((h=t.headerFilterConfig)!=null&&h.autoCollect))return on(a,l).sort((f,b)=>f[l]<b[l]?1:-1).map(f=>({label:f[l],value:f[l]}));if((d=t.headerFilterConfig)!=null&&d.enable)return[{data:""}]}),i=({option:c,row:h,...d})=>{var y,g,v;if(typeof t.filterMethod=="function")return t.filterMethod({option:c,row:h,...d});if(typeof((y=t.headerFilterConfig)==null?void 0:y.filterMethod)=="function")return t.headerFilterConfig.filterMethod({option:c,row:h,...d});const f=o.computed(()=>{var m,p,$,C;return(m=t==null?void 0:t.headerFilterConfig)!=null&&m.extendFromColumnEditor?E(t.editorProps||((p=t.editRender)==null?void 0:p.editorProps)||{},(($=t.headerFilterConfig)==null?void 0:$.editorProps)||{}):(C=t==null?void 0:t.headerFilterConfig)==null?void 0:C.editorProps}),b=c.data??c.value;if(typeof b<"u"&&t.field){let m=((v=h[((g=f.value)==null?void 0:g.effectValueField)||t.field])==null?void 0:v.toString().toLowerCase())||"";if(Array.isArray(b)){for(let p of b)if(m.includes(p==null?void 0:p.toString().toLowerCase()))return!0;if(b.length===2){let[p,$]=b;return t.sabCellType===w.DatePciker&&(p=new Date(p),$=new Date($),m=new Date(m)),m>=p&&m<=$}}return m.includes(b==null?void 0:b.toString().toLowerCase())}return!0};return o.watch(()=>r[t.field],c=>{var d,f,b;if(!((d=t.headerFilterConfig)!=null&&d.enable))return;const h=n.value;if(h){const y=h.getColumnByField(t.field);if(y){const g=y.filters[0];g.data=c,c===""||c===null||typeof c>"u"||Array.isArray(c)&&c.length===0?g.checked=!1:g.checked=!0,h.updateData();const v=(f=n.value)==null?void 0:f.getCheckedFilters();(b=e.onFilter)==null||b.call(e,{$table:n.value,column:t,field:t.field,values:Array.isArray(c)?c:[c],filters:v,filterList:v})}}}),{filters:s,filterMethod:(u=t.headerFilterConfig)!=null&&u.autoCollect?void 0:i}},Ry=o.defineComponent({props:{data:Array,xTable:Object},setup(e,{attrs:t,slots:r,emit:n}){const{slots:a,editorProps:l,title:s,headerFilterModel:i,...u}=t,c=o.computed(()=>{const g={};return Object.keys(a||{}).forEach(v=>{g[v]=m=>typeof a[v]=="string"?r[a[v]](m):typeof a[v]=="function"?a[v](m,l):null}),g}),h=o.computed(()=>e.xTable),{filters:d,filterMethod:f}=Vy({data:e.data,column:u,headerFilterModel:i,xTable:h,onFilter:g=>n("filter-change",g)}),b=o.computed(()=>{var g,v;return nn(u.headerClassName,{"sab-table-header-filter-column":((g=u.headerFilterConfig)==null?void 0:g.enable)&&!((v=u.headerFilterConfig)!=null&&v.autoCollect)})}),y=o.computed(()=>{var g,v;return((g=u.headerFilterConfig)==null?void 0:g.enable)&&!((v=u.headerFilterConfig)!=null&&v.autoCollect)&&u.type!="checkbox"&&u.type!="radio"&&u.type!="seq"});return()=>o.createVNode(me.Column,o.mergeProps(u,{filters:d.value,headerClassName:b.value,filterMethod:f}),{...c.value,header:y.value?g=>o.createVNode(By,{column:t,headerFilterModel:i},{default:()=>{var v,m;return((m=(v=c.value).header)==null?void 0:m.call(v,g))??s}}):void 0})}}),bn={fit:!0,border:!0,showHeader:!0,size:"mini",showOverflow:!0,height:"auto",minHeight:"0px",withSeq:!0,mouseConfig:{selected:!0},seqConfig:{clearOtherSelectedWhenClick:!0},headerFilterConfig:{enable:!1,autoCollect:!1},autoResize:!0,keepSource:!0,showHeaderOverflow:!0,autoColumnWidth:!0,checkboxConfig:{trigger:"cell",range:!0,highlight:!0,isShiftKey:!0},editable:!0,editConfig:{trigger:"click",mode:"cell",autoClear:!0,showStatus:!0,showIcon:!0},rowConfig:{useKey:!0,isCurrent:!0,isHover:!0},keyboardConfig:{isArrow:!0,isEsc:!0,isTab:!0,isEnter:!1,isEdit:!0},columnConfig:{resizable:!0},sortConfig:{trigger:"cell",orders:["desc","asc",null]},scrollY:{enabled:!0,gt:80,oSize:10},scrollX:{enabled:!0,gt:50,oSize:10},rowBackgroundHighlight:!0,rowBorderHighlight:!0},ky=(e,t={})=>{var n,a,l,s;let r=E(bn,e);return r=E(r,t),r.editable===!1?delete r.editConfig:r.editable===!0&&(r.editConfig=E({},r.editConfig||{})),r.withCheckbox===!0&&!((n=r.columns)!=null&&n.some(i=>i.field==="sab-table-checkbox"))&&((a=r.columns)==null||a.unshift({type:"checkbox",fixed:"left",field:"sab-table-checkbox",width:40})),r.withSeq===!0&&!((l=r.columns)!=null&&l.some(i=>i.field==="sab-table-seq"))&&((s=r.columns)==null||s.unshift({type:"checkbox",fixed:"left",field:"sab-table-seq",width:50,className:"sab-table-seq",headerClassName:"sab-table-seq-header",slots:{header:()=>null,checkbox:({seq:i})=>i}})),r.rowBackgroundHighlight===!1&&(r.checkboxConfig&&(r.checkboxConfig.highlight=!1),r.rowConfig&&(r.rowConfig.isCurrent=!1,r.rowConfig.isHover=!1)),r},jy=o.defineComponent({name:"SabCellImage",props:{src:String,preview:Boolean},setup(e,{attrs:t}){return e.src?e.preview?()=>o.createVNode(A.ElImage,o.mergeProps({lazy:!0,fit:"contain",src:e.src,style:{verticalAlign:"middle",height:"40px",width:"40px"},"preview-src-list":[e.src],hideOnClickModal:!0,previewTeleported:!0},t),null):()=>o.createVNode(A.ElPopover,{transition:"el-zoom-in-top",trigger:"click",persistent:!1},{reference:()=>o.createVNode(A.ElIcon,{size:17,style:{cursor:"pointer",verticalAlign:"middle"}},{default:()=>[o.createVNode(sr,null,null)]}),default:()=>o.createVNode(A.ElImage,o.mergeProps({lazy:!0,src:e.src,style:{verticalAlign:"middle"},"preview-src-list":[e.src]},t),null)}):()=>o.createVNode(A.ElIcon,{size:17,style:{cursor:"not-allowed",verticalAlign:"middle",opacity:"0.5"}},{default:()=>[o.createVNode(sr,null,null)]})}}),hn={sabCellType:w.Image,showOverflow:!1,align:"center",slots:{default:({row:e,column:t})=>o.createVNode(jy,{src:e[t.field]},null)}},Dy=o.defineComponent({props:{color:String},name:"SabCellColor",setup(e){const t=o.computed(()=>{var r,n;return((r=e.color)==null?void 0:r.length)===6?`#${e.color}`:((n=e.color)==null?void 0:n.length)===9?`rgb(${e.color.substring(0,3)},${e.color.substring(3,6)},${e.color.substring(6,9)})`:e.color});return()=>o.createVNode("div",{class:"sab-cell-color__inner",style:{background:t.value}},[o.createVNode("span",null,[e.color])])}}),yn={sabCellType:w.Color,className:"sab-cell-color",slots:{default:({row:e,column:t})=>o.createVNode(Dy,{color:e[t.field]},null)}},Ly=o.defineComponent({props:{column:Object,scope:Object,popover:Object},name:"SabCellEditPopover",setup(e,{slots:t,expose:r}){const{scope:n,popover:a}=e,l=o.ref(),s=o.computed(()=>a.showType==="dialog"),i=o.ref(!1),u=o.ref(),c=()=>{const b=o.ref(!1);return{showDialog:b,onCloseDialog:()=>{b.value=!1},onShowDialog:()=>{b.value=!0,i.value=!0}}},{showDialog:h,onCloseDialog:d,onShowDialog:f}=c();return r({popoverRef:o.computed(()=>({...u.value,hide:()=>{var b;i.value=!1,s.value||(b=u.value)==null||b.hide()}}))}),()=>{var b;return o.createVNode("div",null,[o.createVNode("div",{class:"sab-cell-popover-inner",style:{overflow:"hidden",textOverflow:"ellipsis"},ref:l,onClick:f},[o.createVNode("span",{class:"sab-cell-popover-inner-ctx"},[(b=t.default)==null?void 0:b.call(t)]),!(a!=null&&a.hideIcon)&&o.createVNode(A.ElButton,{round:!1,class:"sab-cell-popover-inner-btn",size:"small",icon:o.createVNode(ch,null,null)},null)]),s.value?h.value&&o.createVNode(A.ElDialog,o.mergeProps({ref:u,modelValue:i.value,"onUpdate:modelValue":y=>i.value=y,"destroy-on-close":!0,draggable:!0,"append-to-body":!0,transition:"el-zoom-in-top","close-on-click-modal":!1,onClosed:d},a,{modalClass:nn(["sab-cell-popover-dialog",a.modalClass])}),{default:()=>{var y;return[(y=t.popover)==null?void 0:y.call(t,n)]}}):o.createVNode(A.ElPopover,o.mergeProps({ref:u,persistent:!1,"virtual-ref":l,"virtual-triggering":!0,trigger:a.trigger||"click",transition:"el-zoom-in-top"},a),{default:()=>{var y;return[(y=t.popover)==null?void 0:y.call(t,n)]}})])}}}),mn={sabCellType:w.Popover,className:"sab-cell-popover",editRender:{enabled:!1},slots:{default:(e,t)=>{const{row:r,column:n}=e,a=V(e,t),l=o.ref(),s=o.computed(()=>{var i;return(i=l.value)==null?void 0:i.popoverRef});return o.createVNode(Ly,{ref:l,scope:e,popover:a},{default:()=>r[n.field],popover:i=>n.slots.popover({...i,popoverRef:s.value})})}}},$n={sabCellType:w.Dynamic,editRender:{autofocus:".el-input__inner"},slots:{default:(e,t)=>{var c;const r=V(e,t),{getSabCellType:n,getEditorProps:a}=r||{},l=n==null?void 0:n(e),s=gr(l),i=a==null?void 0:a(e),u=(c=s==null?void 0:s.slots)==null?void 0:c.default;return typeof u=="function"?u(e,i):e.row[e.column.field]},edit:(e,t)=>{var h,d;const r=V(e,t),{getSabCellType:n,getEditorProps:a}=r||{},l=n==null?void 0:n(e),s=gr(l),i=a==null?void 0:a(e),u=(h=s==null?void 0:s.slots)==null?void 0:h.edit;if(typeof u=="function")return u(e,i);const c=(d=s==null?void 0:s.slots)==null?void 0:d.default;return typeof c=="function"?c(e,i):u}}},Ky=14,Uy=6,Hy=20,Re=26;function Gy(e){const t=/[a-z,\.\_\|\`\!\^\*\(\)\·]/g,r=e.match(t);return r?r.length:0}const qy=e=>{const t=e.title||"",r=Gy(t),n=t.length-r;let a=r*Uy+n*Ky+Hy;return(e.editable||typeof e.editable>"u"&&e.editRender)&&(a+=Re),e.sortable&&(a+=Re),e.filters&&(a+=Re),a},zy={},gr=e=>{if(e===w.Input)return sn;if(e===w.InputNumber)return cn;if(e===w.DatePciker)return dn;if(e===w.Select)return gn;if(e===w.Image)return hn;if(e===w.Color)return yn;if(e===w.Boolean)return pn;if(e===w.Popover)return mn;if(e===w.Dynamic)return $n},Wy=(e,t)=>{var r;return e.sabCellType===w.Input?e=E(sn,e):e.sabCellType===w.InputNumber?e=E(cn,e):e.sabCellType===w.DatePciker?e=E(dn,e):e.sabCellType===w.Select?e=E(gn,e):e.sabCellType===w.Image?e=E(hn,e):e.sabCellType===w.Color?e=E(yn,e):e.sabCellType===w.Boolean?e=E(pn,e):e.sabCellType===w.Popover?e=E(mn,e):e.sabCellType===w.Dynamic&&(e=E($n,e)),(e.editorProps||e.getEditorProps)&&(e.editRender=Object.assign({},e.editRender,{editorProps:e.editorProps,getEditorProps:e.getEditorProps})),e.editable===!1?delete e.editRender:e.editable===!0&&(e.editRender=E({},e.editRender||{})),t!=null&&t.headerFilterConfig&&(e.headerFilterConfig=E((t==null?void 0:t.headerFilterConfig)||{},e.headerFilterConfig||{})),e.headerFilterConfig&&(e.headerFilterConfig.sabCellType=e.headerFilterConfig.sabCellType??e.sabCellType),(r=t==null?void 0:t.sortConfig)!=null&&r.enableAll&&(e.sortable=e.sortable??!0),e},Yy=(e,t)=>(t.autoColumnWidth===!0&&typeof e.width>"u"&&(e.width=qy(e)),e),Xy=(e,t)=>e.map(r=>Yy(E(zy,Wy(r,t)),t));var ge=(e=>(e.Shift="shift",e.Control="control",e.Meta="meta",e))(ge||{});let vr=!1,te=new Set;function Jy(){vr||(vr=!0,document.addEventListener("keydown",e=>{var t;te.add((t=e.key)==null?void 0:t.toLowerCase())}),document.addEventListener("keyup",e=>{var t;te.delete((t=e.key)==null?void 0:t.toLowerCase())}))}const _n=["keydown-start","keydown","keydown-end","current-change","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","filter-change","filter-visible","clear-filter","resizable-change","toggle-row-expand","toggle-tree-expand","menu-click","cell-selected","edit-closed","edit-actived","edit-disabled","valid-error","scroll","custom"],Zy=e=>{const{checkboxRecords:t,emit:r,xTable:n,tableConfig:a}=e,l=(d=[])=>{var g,v,m,p;const f=((g=n.value)==null?void 0:g.getCheckboxRecords())||[],b=((v=n.value)==null?void 0:v.getCheckboxRecords(!0))||[],y=((m=a.value.rowConfig)==null?void 0:m.keyField)||((p=a.value.rowConfig)!=null&&p.useKey?"_X_ROW_KEY":void 0);return y?on([...d,...f,...b],y):f},s=d=>{const f=l(d.records);t.value=f||[],r("checkbox-change",{...d,records:f})},i=d=>{const f=l(d.records);t.value=f||[],r("checkbox-all",{...d,records:f})},u=d=>{const f=l(d.records);t.value=f||[],r("checkbox-range-end",{...d,records:f})},c={"cell-click":async d=>{var g,v,m,p,$,C;const{row:f,column:b}=d,y=(g=n.value)==null?void 0:g.isCheckedByCheckboxRow(f);if(te.has(ge.Shift)&&b.field=="sab-table-seq"){s(d);return}if((te.has(ge.Control)||te.has(ge.Meta))&&b.field=="sab-table-seq"){y||await((v=n.value)==null?void 0:v.setCheckboxRow(f,!1)),u(d);return}b.field==="sab-table-seq"&&((m=a.value.seqConfig)!=null&&m.clearOtherSelectedWhenClick&&await((p=n.value)==null?void 0:p.clearCheckboxRow()),await(($=n.value)==null?void 0:$.setCheckboxRow(f,!0)),(C=n.value)==null||C.setCurrentRow(f),s(d)),r("cell-click",d)},"checkbox-change":async d=>{d.column.field==="sab-table-seq"||s(d)},"checkbox-range-end":d=>{u(d)},"checkbox-all":d=>{i(d)}},h={};return _n.map(d=>(h[d]=(...f)=>{typeof c[d]=="function"?c[d](...f):r(d,...f)},d)),{onEvents:h}};function gt(e,t){return t===void 0&&(t=15),+parseFloat(Number(e).toPrecision(t))}function B(e){var t=e.toString().split(/[eE]/),r=(t[0].split(".")[1]||"").length-+(t[1]||0);return r>0?r:0}function ne(e){if(e.toString().indexOf("e")===-1)return Number(e.toString().replace(".",""));var t=B(e);return t>0?gt(Number(e)*Math.pow(10,t)):Number(e)}function qe(e){wn&&(e>Number.MAX_SAFE_INTEGER||e<Number.MIN_SAFE_INTEGER)&&console.warn(e+" is beyond boundary when transfer to integer, the results may not be accurate")}function xe(e){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];var n=t[0],a=t.slice(1);return a.reduce(function(l,s){return e(l,s)},n)}}var k=xe(function(e,t){var r=ne(e),n=ne(t),a=B(e)+B(t),l=r*n;return qe(l),l/Math.pow(10,a)}),Qy=xe(function(e,t){var r=Math.pow(10,Math.max(B(e),B(t)));return(k(e,r)+k(t,r))/r}),em=xe(function(e,t){var r=Math.pow(10,Math.max(B(e),B(t)));return(k(e,r)-k(t,r))/r}),Cn=xe(function(e,t){var r=ne(e),n=ne(t);return qe(r),qe(n),k(r/n,gt(Math.pow(10,B(t)-B(e))))});function tm(e,t){var r=Math.pow(10,t),n=Cn(Math.round(Math.abs(k(e,r))),r);return e<0&&n!==0&&(n=k(n,-1)),n}var wn=!0;function rm(e){e===void 0&&(e=!0),wn=e}var nm={strip:gt,plus:Qy,minus:em,times:k,divide:Cn,round:tm,digitLength:B,float2Fixed:ne,enableBoundaryChecking:rm};const am=e=>{const{locale:t}=dt(),r=e.reduce((n,a)=>(a.field&&(n[a.field]=a),n),{});return({columns:n,data:a})=>[n.map((l,s)=>{var i,u,c,h,d,f;return s===0&&(!l.field||l.type)?((c=(u=(i=t.value)==null?void 0:i.sabDesign)==null?void 0:u.table)==null?void 0:c.total)||((d=(h=t==null?void 0:t.sabDesign)==null?void 0:h.table)==null?void 0:d.total):(f=r[l.field])!=null&&f.withSummary?a.reduce((b,y)=>nm.plus(b,y[l.field]||0),0):null})]},om={class:"sab-table-inner"},U=o.defineComponent({name:"SabTable",__name:"index",props:o.mergeDefaults({size:{},id:{},data:{},height:{},minHeight:{},maxHeight:{},stripe:{type:Boolean},round:{type:Boolean},border:{type:[Boolean,String]},loading:{type:Boolean},align:{},headerAlign:{},footerAlign:{},showHeader:{type:Boolean},showFooter:{type:Boolean},footerData:{},footerMethod:{type:Function},rowClassName:{type:[String,Function]},cellClassName:{type:[String,Function]},headerRowClassName:{type:[String,Function]},headerCellClassName:{type:[String,Function]},footerRowClassName:{type:[String,Function]},footerCellClassName:{type:[String,Function]},cellStyle:{type:[Object,Function]},rowStyle:{type:[Object,Function]},headerCellStyle:{type:[Object,Function]},headerRowStyle:{type:[Object,Function]},footerRowStyle:{type:[Object,Function]},footerCellStyle:{type:[Object,Function]},mergeCells:{},mergeFooterItems:{},spanMethod:{type:Function},footerSpanMethod:{type:Function},showOverflow:{type:[Boolean,String,null]},showHeaderOverflow:{type:[Boolean,String,null]},showFooterOverflow:{type:[Boolean,String,null]},keepSource:{type:Boolean},autoResize:{type:Boolean},syncResize:{type:[Boolean,String,Number]},columnConfig:{},rowConfig:{},customConfig:{},resizeConfig:{},resizableConfig:{},seqConfig:{},sortConfig:{},filterConfig:{},radioConfig:{},checkboxConfig:{},tooltipConfig:{},exportConfig:{},importConfig:{},printConfig:{},expandConfig:{},treeConfig:{},menuConfig:{},mouseConfig:{},areaConfig:{},fnrConfig:{},keyboardConfig:{},clipConfig:{},editConfig:{},validConfig:{},editRules:{},emptyText:{},emptyRender:{},loadingConfig:{},scrollX:{},scrollY:{},params:{},resizable:{type:Boolean},highlightCurrentRow:{type:Boolean},highlightHoverRow:{type:Boolean},highlightCurrentColumn:{type:Boolean},highlightHoverColumn:{type:Boolean},highlightCell:{type:Boolean},columnKey:{type:Boolean},rowKey:{type:Boolean},rowId:{},fit:{type:Boolean},animat:{type:Boolean},delayHover:{},name:{},class:{},wrapClassName:{},columns:{},editable:{type:Boolean},checkboxRecords:{},withSeq:{type:Boolean},withCheckbox:{type:Boolean},headerFilterConfig:{},headerFilterModel:{},showToolbar:{type:Boolean},autoClearSelected:{type:Boolean},autoColumnWidth:{type:Boolean},rowBackgroundHighlight:{type:Boolean},rowBorderHighlight:{type:Boolean},tableSetConfig:{}},bn),emits:[..._n,"update:columns","update:checkboxRecords"],setup(e,{expose:t,emit:r}){const n=e,a=o.ref(),{locale:l}=dt(),s=o.computed(()=>{const g=ky({keyboardConfig:{editMethod({row:v,column:m}){return a.value.setEditCell(v,m),!0}}},Ue(n,"data"));return g.columns=Xy(g.columns||[],g),g}),i=o.computed(()=>{var g;return fa((g=s.value.columns)==null?void 0:g.map(v=>v.slots?Object.values(v.slots).filter(m=>typeof m=="string"):[]))}),u=r,c=o.computed({get(){return n.checkboxRecords||[]},set:ah(function(g){var v;u("update:checkboxRecords",g),(v=a.value)==null||v.setCheckboxRow(g,!0)},300,{leading:!1,trailing:!0})});o.watch(()=>n.checkboxRecords,g=>{var v;Array.isArray(g)&&((v=a.value)==null||v.setCheckboxRow(g,!0))});const{onEvents:h}=Zy({checkboxRecords:c,emit:u,xTable:a,tableConfig:s}),d=o.computed(()=>Ob(Ue(s.value,"columns","data"),xb));o.provide("table-config",d);const f=o.ref(!0);o.watch(()=>{var g;return(g=s.value.columns)==null?void 0:g.filter(v=>v.visible!=!1).map(v=>v.field).join(",")},()=>{var g,v;(g=n.headerFilterConfig)!=null&&g.enable?(f.value=!1,o.nextTick(()=>{f.value=!0})):(v=a.value)==null||v.reloadColumn(s.value.columns),c.value=[],u("checkbox-all",{checked:!1,records:[]})});const b=o.computed(()=>n.showToolbar||!!n.tableSetConfig),y=o.ref(n.headerFilterModel||{});return t({getInstance:()=>a.value,reloadRow:g=>{var v;Array.isArray(g)?g.forEach(async m=>{var p;return await((p=a.value)==null?void 0:p.reloadRow(m))}):(v=a.value)==null||v.reloadRow(g)},getCheckedFilters(){var g;return(g=a.value)==null?void 0:g.getCheckedFilters()}}),(g,v)=>{var m,p,$;return o.openBlock(),o.createElementBlock("div",{class:o.normalizeClass(["sab-table-wrap",n.wrapClassName])},[b.value?(o.openBlock(),o.createBlock(k1,{key:0,"table-ref":a.value,columns:n.columns,name:n.name,tableSetConfig:g.tableSetConfig,"onUpdate:columns":v[0]||(v[0]=C=>u("update:columns",C))},{"toolbar-right":o.withCtx(()=>[o.renderSlot(g.$slots,"toolbar-right")]),default:o.withCtx(()=>[o.renderSlot(g.$slots,"toolbar")]),_:3},8,["table-ref","columns","name","tableSetConfig"])):o.createCommentVNode("",!0),o.createElementVNode("div",om,[f.value?(o.openBlock(),o.createBlock(o.unref(me.Table),o.mergeProps({key:0,ref_key:"xTable",ref:a,data:n.data,footerMethod:o.unref(am)(s.value.columns||[])},d.value,o.toHandlers(o.unref(h)),{"empty-text":(m=o.unref(l))==null?void 0:m.sabDesign.table.emptyText,"loading-config":{text:(p=o.unref(l))==null?void 0:p.sabDesign.table.loadingText},class:["sab-table",s.value.class,{"sab-table-row-no-bg-highlight":s.value.rowBackgroundHighlight===!1,"sab-table-header-filters":(($=g.headerFilterConfig)==null?void 0:$.enable)!=!1}]}),{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.value.columns,C=>(o.openBlock(),o.createBlock(o.unref(Ry),o.mergeProps({data:g.data,key:C.field},C,{xTable:a.value,visible:C.visible!=!1,headerFilterModel:y.value,"onUpdate:headerFilterModel":v[1]||(v[1]=_=>y.value=_),onFilterChange:o.unref(h)["filter-change"]}),o.createSlots({_:2},[o.renderList(i.value,_=>({name:_,fn:o.withCtx(T=>[o.renderSlot(g.$slots,_,o.normalizeProps(o.guardReactiveProps(T)))])}))]),1040,["data","xTable","visible","headerFilterModel","onFilterChange"]))),128))]),_:3},16,["data","footerMethod","empty-text","loading-config","class"])):o.createCommentVNode("",!0)]),o.renderSlot(g.$slots,"table-footer")],2)}}});U.install=e=>{e.component(U.name,U),e.use(me),Jy()};U.use=me.use;const ze=o.defineComponent({name:"SabSelect",__name:"index",props:{remoteMethod:{},labelKey:{default:"label"},valueKey:{default:"value"},modelValue:{},labelInValue:{type:Boolean},options:{},multiple:{type:Boolean},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},enableLoadmore:{type:Boolean},revalidateWhenFocus:{type:Boolean},selectType:{default:"v2"},autoSelectFirstOption:{type:Boolean},pagination:{}},emits:["update:modelValue","focus","blur"],setup(e,{emit:t}){const r=t,n=e,a={mounted(p,$){var T;const C=p.querySelector(".el-tooltip__trigger"),_=()=>{requestAnimationFrame(()=>{var P,R;const x=C.getAttribute("aria-describedby");if(x){const K=(P=document.getElementById(x))==null?void 0:P.querySelector(".el-select-dropdown__wrap");K==null||K.addEventListener("scroll",function(){var vt;K.scrollHeight-K.scrollTop-1<=K.clientHeight&&((vt=$==null?void 0:$.value)==null||vt.call($))}),(R=C.querySelector("input"))==null||R.removeEventListener("focus",_)}})};(T=C.querySelector("input"))==null||T.addEventListener("focus",_)}},l=o.ref([]);o.watch(()=>n.options,()=>{l.value=n.options||[]},{immediate:!0});const s=o.reactive(Object.assign({current:1,size:20,pages:1},n.pagination)),i=o.ref(!1),u=o.ref(""),c=o.ref(!1),h=async(p="",$=1)=>{var C;if(n.remoteMethod&&(u.value=p,!($!=1&&c.value))){s.current=$;try{i.value=!0;const _=await((C=n.remoteMethod)==null?void 0:C.call(n,p,s));Array.isArray(_)||!_?(s.current===1?l.value=_||[]:l.value.push(..._||[]),c.value=(_==null?void 0:_.length)<s.size):(s.current===1?l.value=_.records||[]:l.value.push(..._.records||[]),s.pages=Math.max(1,_.pages||0),c.value=s.current>=s.pages)}finally{i.value=!1}}},d=ye(p=>h(p,1),500,{leading:!1,trailing:!0}),f=ye(()=>{if(n.enableLoadmore)return s.current++,h(u.value,s.current)},500,{leading:!0,trailing:!1});o.onMounted(()=>{d()});const b=p=>{r("focus",p),n.revalidateWhenFocus&&h()},y=p=>{r("blur",p)},g=o.computed({get(){var p;return n.labelInValue?Array.isArray(n.modelValue)?n.modelValue.map($=>$[n.valueKey]):(p=n.modelValue)==null?void 0:p[n.valueKey]:n.modelValue},set(p){if(n.labelInValue)if(Array.isArray(p)){const $=l.value.filter(C=>p.includes(C[n.valueKey]));r("update:modelValue",$)}else{const $=l.value.find(C=>p===C[n.valueKey]);r("update:modelValue",$)}else r("update:modelValue",p)}}),v=o.watchEffect(()=>{var p,$,C;if(n.autoSelectFirstOption){if(l.value.length&&(g.value===null||g.value===void 0)){let _=n.labelInValue?(p=l.value)==null?void 0:p[0]:(C=($=l.value)==null?void 0:$[0])==null?void 0:C[n.valueKey];n.multiple&&typeof _<"u"?g.value=[_]:g.value=_,setTimeout(()=>v())}}else setTimeout(()=>v())}),m=Ue(n,"modelValue","options","labelInValue","labelKey","valueKey");return(p,$)=>{const C=o.resolveComponent("el-option");return p.enableLoadmore||p.selectType==="v1"?o.withDirectives((o.openBlock(),o.createBlock(o.unref(A.ElSelect),o.mergeProps({key:0,modelValue:g.value,"onUpdate:modelValue":$[0]||($[0]=_=>g.value=_),onFocus:b,onBlur:y},{...o.unref(m),...p.$attrs}),{default:o.withCtx(()=>{var _,T,x;return[p.labelInValue&&((_=p.modelValue)!=null&&_[p.labelKey])&&!l.value.find(P=>{var R;return P[p.valueKey]===((R=p.modelValue)==null?void 0:R[p.valueKey])})?(o.openBlock(),o.createBlock(C,{key:0,label:(T=p.modelValue)==null?void 0:T[p.labelKey],value:(x=p.modelValue)==null?void 0:x[p.valueKey]},{default:o.withCtx(()=>[o.renderSlot(p.$slots,"default",{item:p.modelValue})]),_:3},8,["label","value"])):o.createCommentVNode("",!0),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(l.value,P=>(o.openBlock(),o.createBlock(C,{key:P[p.valueKey],label:P[p.labelKey],value:P[p.valueKey]},{default:o.withCtx(()=>[o.renderSlot(p.$slots,"default",{item:P})]),_:2},1032,["label","value"]))),128))]}),_:3},16,["modelValue"])),[[a,o.unref(f)]]):o.withDirectives((o.openBlock(),o.createBlock(o.unref(A.ElSelectV2),o.mergeProps({key:1,modelValue:g.value,"onUpdate:modelValue":$[1]||($[1]=_=>g.value=_),props:{value:p.valueKey,label:p.labelKey,...p.$attrs.props||{}},options:l.value,onFocus:b,onBlur:y},{...o.unref(m),...p.$attrs}),{default:o.withCtx(_=>[o.renderSlot(p.$slots,"default",o.normalizeProps(o.guardReactiveProps(_)))]),_:3},16,["modelValue","props","options"])),[[a,o.unref(f)]])}}}),lm=o.defineComponent({__name:"index",props:{lang:{}},setup(e){const t=e,r=o.computed(()=>t.lang||""),{locale:n}=sh(r);return o.provide(Zr,n),(a,l)=>o.renderSlot(a.$slots,"default")}}),Tn={install(e){e.component(ze.name,ze),U.install(e)}};exports.SabCellType=w;exports.SabDesignConfigProvider=lm;exports.SabSelect=ze;exports.SabTable=U;exports.SabTableSet=tn;exports.SabUI=Tn;exports.default=Tn;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wx-design/components",
3
- "version": "0.10.1",
3
+ "version": "0.10.2",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -235,11 +235,6 @@ export type SabColumnProps<D = VxeTableDataRow> = VxeColumnProps<D> & {
235
235
  slots?: Partial<SabColumnSlots<D>>;
236
236
  // 是否可见列,默认true
237
237
  visible?: boolean;
238
- // 筛选控制
239
- sabFilter?: {
240
- // TODO: 是否自动收集筛选条件
241
- autoCollectFilterOptions?: boolean;
242
- };
243
238
  // 自定义头部的筛选
244
239
  headerFilterConfig?: SabColumnFilterParams;
245
240
  // vxe-table 实例
@@ -16,14 +16,14 @@ import {
16
16
 
17
17
  // 头部筛选条,默认不展示
18
18
  export type SabHeaderFilterProps<D = VxeTableDataRow> = {
19
- // 是否启用筛选条,默认 true
19
+ // 是否启用筛选条,默认 false
20
20
  enable?: boolean;
21
21
  // 触发方式
22
22
  // change - 当筛选项发生变动后立即触发
23
23
  trigger?: "change";
24
24
  // 筛选方法调用
25
25
  filterMethod?: VxeColumnPropTypes.FilterMethod<D>;
26
- // 是否启用收集, 走表格自带的筛选 filters
26
+ // 是否启用收集, 与项目内置筛选冲突, 走表格自带的筛选 filters
27
27
  autoCollect?: boolean;
28
28
  };
29
29