@ehfuse/mui-virtual-data-table 1.1.13 → 1.1.14
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/dist/index.esm.js +2 -2
- package/dist/index.esm.js.map +3 -3
- package/dist/index.js +2 -2
- package/dist/index.js.map +3 -3
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{forwardRef as rt,useCallback as ye,useMemo as nt,useRef as A,useEffect as ke,memo as Lt,useState as dt}from"react";import{Box as ve,Table as Dt,TableBody as Et,TableCell as Ve,TableContainer as Ht,TableHead as Rt,TableRow as Ue,TableSortLabel as ot,Paper as It,Typography as Ot}from"@mui/material";import{TableVirtuoso as $t}from"react-virtuoso";import{jsx as tt}from"react/jsx-runtime";import{useRef as lt,useState as pt,useEffect as ft}from"react";import{Box as mt,CircularProgress as ht}from"@mui/material";var Ye=function(){return Ye=Object.assign||function(f){for(var b,y=1,D=arguments.length;y<D;y++){b=arguments[y];for(var H in b)Object.prototype.hasOwnProperty.call(b,H)&&(f[H]=b[H])}return f},Ye.apply(this,arguments)};function at(s){var f=s.visible,b=s.onComplete,y=s.fadeoutDuration,D=y===void 0?200:y,H=s.exitDelay,x=H===void 0?0:H,E=s.size,R=E===void 0?40:E,F=s.className,J=s.style,Y=s.sx,_=s.indicator,I=s.background,G=I===void 0?{show:!0,color:"255, 255, 255",opacity:.9}:I,pe=lt(void 0),a=lt(null),U=pt(f),fe=U[0],xe=U[1],B=G.show,X=B===void 0?!0:B,M=G.color,$=M===void 0?"255, 255, 255":M,ie=G.opacity,le=ie===void 0?.9:ie;if(ft(function(){var $e=pe.current;if($e===!0&&f===!1&&a.current){var ae=a.current;ae.style.opacity="0",setTimeout(function(){xe(!1),b?.()},D+x)}else f===!0&&(xe(!0),a.current&&(a.current.style.opacity="1"));pe.current=f},[f,b,D,x]),!fe)return null;var Le=function(){return typeof _=="string"?tt("img",{src:_,alt:"Loading",style:{width:R,height:R}}):_||tt(ht,{size:R})},Me=function(){return X?$.startsWith("rgba")?{backgroundColor:$}:/^\d+,\s*\d+,\s*\d+$/.test($)?{backgroundColor:"rgba(".concat($,", ").concat(le,")")}:le!==1?{backgroundColor:$,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:$,opacity:le,zIndex:-1}}:{backgroundColor:$}:{backgroundColor:"transparent"}};return tt(mt,{ref:a,className:F,style:Ye({},J),sx:Ye(Ye({position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e3,opacity:f?1:0,transition:"opacity ".concat(D,"ms ease-out")},Me()),Y),children:Le()})}import{useRef as ne,useEffect as de,useState as V,useCallback as N,useMemo as qe,forwardRef as gt,useImperativeHandle as bt,useLayoutEffect as yt}from"react";import{jsx as Ie,jsxs as ct}from"react/jsx-runtime";var vt=["editor","textarea","input","select","textfield","form-control","contenteditable","MuiInputBase-input","MuiSelect-select","MuiOutlinedInput-input","MuiFilledInput-input","MuiInput-input","MuiFormControl-root","MuiTextField-root","MuiSelect-root","MuiOutlinedInput-root","MuiFilledInput-root","MuiInput-root","MuiAutocomplete-input","MuiDatePicker-input","MuiSlider-thumb","MuiSlider-rail","MuiSlider-track","MuiSlider-mark","MuiSlider-markLabel","MuiSlider-root","MuiSlider-colorPrimary","MuiSlider-sizeMedium","MuiIconButton-root","MuiButton-root","MuiButtonBase-root","MuiTouchRipple-root","MuiCheckbox-root","MuiRadio-root","MuiSwitch-root","PrivateSwitchBase-root","ant-input","ant-input-affix-wrapper","ant-input-group-addon","ant-input-number","ant-input-number-handler","ant-select","ant-select-selector","ant-select-selection-search","ant-select-dropdown","ant-cascader","ant-cascader-input","ant-picker","ant-picker-input","ant-time-picker","ant-calendar-picker","ant-slider","ant-slider-track","ant-slider-handle","ant-switch","ant-checkbox","ant-checkbox-wrapper","ant-radio","ant-radio-wrapper","ant-rate","ant-upload","ant-upload-drag","ant-form-item","ant-form-item-control","ant-btn","ant-dropdown","ant-dropdown-trigger","ant-menu","ant-menu-item","ant-tooltip","ant-popover","ant-modal","ant-drawer","ant-tree-select","ant-auto-complete","ant-mentions","ant-transfer","ui-input","ui-textarea","ui-select","ui-select-trigger","ui-select-content","ui-select-item","ui-button","ui-checkbox","ui-radio-group","ui-switch","ui-slider","ui-range-slider","ui-calendar","ui-date-picker","ui-combobox","ui-command","ui-command-input","ui-popover","ui-dialog","ui-sheet","ui-dropdown-menu","ui-context-menu","ui-menubar","ui-navigation-menu","ui-form","ui-form-control","ui-form-item","ui-form-field","ui-label","radix-ui","radix-select","radix-dropdown","radix-dialog","radix-popover","radix-accordion","radix-tabs","radix-slider","radix-switch","radix-checkbox","radix-radio","ql-editor","ql-container","ql-toolbar","ql-picker","ql-picker-label","ql-picker-options","ql-formats","ql-snow","ql-bubble","quill","quilleditor","monaco-editor","monaco-editor-background","view-lines","decorationsOverviewRuler","monaco-scrollable-element","CodeMirror","CodeMirror-code","CodeMirror-lines","CodeMirror-scroll","CodeMirror-sizer","cm-editor","cm-focused","cm-content","tox-editor-container","tox-editor-header","tox-edit-area","tox-tinymce","mce-content-body","ck-editor","ck-content","ck-toolbar","ck-editor__editable","ck-widget","slate-editor","slate-content","DraftEditor-root","DraftEditor-editorContainer","public-DraftEditor-content","ehfuse-editor","ehfuse-editor-wrapper","ehfuse-editor-content","ehfuse-toolbar","ehfuse-toolbar-group","ehfuse-cursor","text-editor","rich-text-editor","wysiwyg","ace_editor","ace_content"],st=(s,f)=>{let b=s.tagName.toLowerCase(),y=["text","password","email","number","search","tel","url","checkbox","radio"];if(b==="input"){let D=s.type;return y.includes(D)}if(["textarea","select","button"].includes(b)||["svg","path","circle","rect","line","polygon","polyline"].includes(b)||s.getAttribute("contenteditable")==="true")return!0;if(f?.excludeSelectors){for(let D of f.excludeSelectors)if(s.matches(D))return!0}return xt(s,f)},xt=(s,f)=>{let b=[...vt,...f?.excludeClasses||[]],y=s,D=0,H=5;for(;y&&D<=H;){if(b.some(x=>y.classList.contains(x)))return!0;if(y.classList.contains("MuiDialogContent-root"))break;y=y.parentElement,D++}return!1},Mt={},wt={},Tt={},St={},Ct={},kt=gt(({className:s="",style:f={},containerStyle:b={},contentStyle:y={},children:D,onScroll:H,thumb:x=Mt,track:E=wt,arrows:R=Tt,dragScroll:F=St,autoHide:J=Ct,showScrollbar:Y=!0,detectInnerScroll:_=!1},I)=>{let G=ne({});de(()=>{G.current={children:D,onScroll:H,showScrollbar:Y,thumb:x,track:E,arrows:R,dragScroll:F,autoHide:J}});let pe=ne(null),a=ne(null),U=ne(null),fe=ne(null),xe=ne(null),B=ne(null),[X,M]=V(!1),[$,ie]=V(!1),[le,Le]=V(!1),[Me,$e]=V({y:0,scrollTop:0}),[ae,Ke]=V(0),[Je,Fe]=V(0),[Ne,Pe]=V(!1),[se,_e]=V(!1),[we,Ze]=V({x:0,y:0,scrollTop:0,scrollLeft:0}),[it,Qe]=V(null),[De,Be]=V(null),[Ge,je]=V(!1),j=ne(null),[ce,Ae]=V(!1),me=ne(null),he=ne(null),K=ne(null),O=qe(()=>{let t=x.color??"#606060";return{width:x.width??8,minHeight:x.minHeight??50,radius:x.radius??(x.width??8)/2,color:t,opacity:x.opacity??.6,hoverColor:x.hoverColor??t,hoverOpacity:x.hoverOpacity??1}},[x]),g=qe(()=>({width:E.width??16,color:E.color??"rgba(128, 128, 128, 0.1)",visible:E.visible??!0,alignment:E.alignment??"center",radius:E.radius??O.radius??4,margin:E.margin??4}),[E,O.radius]),Z=qe(()=>{let t=R.color??"#808080";return{visible:R.visible??!1,step:R.step??50,color:t,opacity:R.opacity??.6,hoverColor:R.hoverColor??t,hoverOpacity:R.hoverOpacity??1}},[R]),ze=qe(()=>({enabled:F.enabled??!0,excludeClasses:F.excludeClasses??[],excludeSelectors:F.excludeSelectors??[]}),[F]),h=qe(()=>({enabled:J.enabled??!0,delay:J.delay??1500,delayOnWheel:J.delayOnWheel??700}),[J]),C=O.width,Ee=g.width,We=O.minHeight,q=Z.visible,He=Z.step,oe=N(()=>{if(!a.current)return;let t=document.activeElement;t&&a.current.contains(t)&&t!==a.current||a.current.focus()},[]);bt(I,()=>({getScrollContainer:()=>a.current,scrollTo:t=>{a.current&&a.current.scrollTo(t)},get scrollTop(){return a.current?.scrollTop||0},get scrollHeight(){return a.current?.scrollHeight||0},get clientHeight(){return a.current?.clientHeight||0}}),[]);let k=N(()=>{if(B.current){let n=B.current;if(document.contains(n)&&n.scrollHeight>n.clientHeight+2)return n;B.current=null}if(!a.current)return null;if(U.current&&U.current.scrollHeight>a.current.clientHeight+2)return B.current=a.current,a.current;if(!_)return null;let t=a.current.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]');for(let n of t){let o=n;if(o!==a.current&&o.classList.contains("overlay-scrollbar-container"))continue;let l=o.parentElement,u=!1;for(;l&&l!==a.current;){if(l.classList.contains("overlay-scrollbar-container")&&l!==a.current){u=!0;break}l=l.parentElement}if(!u&&o.scrollHeight>o.clientHeight+2)return B.current=o,o}return null},[]),ue=N(()=>k()!==null,[k]),r=N(()=>{me.current&&(clearTimeout(me.current),me.current=null)},[]),i=N(()=>{he.current&&(clearTimeout(he.current),he.current=null)},[]),L=N(()=>{K.current&&(clearTimeout(K.current),K.current=null)},[]),m=N(t=>{h.enabled&&(r(),me.current=setTimeout(()=>{M(!1),me.current=null},t))},[r,h.enabled]),c=N(()=>{let t=k();if(!t){M(!1),Pe(!1),r();return}if(Pe(!0),!fe.current)return;h.enabled||(M(!0),r());let n=t.clientHeight,o=t.scrollHeight,l=t.scrollTop,u=0;if(pe.current){let S=window.getComputedStyle(pe.current),te=parseFloat(S.paddingTop)||0,re=parseFloat(S.paddingBottom)||0;u=te+re}let d=q?C*2+g.margin*4:g.margin*2,v=n-d+u,w=n/o,W=Math.max(v*w,We),ee=o-n,T=v-W,Ce=ee>0?l/ee*T:0;Ke(W),Fe(Ce)},[k,r,q,C,We,h.enabled]),e=N(t=>{t.preventDefault(),t.stopPropagation();let n=k();n&&(ie(!0),$e({y:t.clientY,scrollTop:n.scrollTop}),r(),M(!0),oe())},[k,r,oe]),P=N(t=>{if(!$)return;let n=k();if(!n)return;let o=n.clientHeight,l=n.scrollHeight-o,u=t.clientY-Me.y,d=o-ae,v=u/d*l,w=Math.max(0,Math.min(l,Me.scrollTop+v));n.scrollTop=w,c()},[$,Me,ae,c,k]),Q=N(()=>{ie(!1),ue()&&m(h.delay)},[ue,m,h.delay]),Te=N(t=>{if(!fe.current)return;let n=fe.current.getBoundingClientRect(),o=t.clientY-n.top,l=k();if(!l)return;let u=l.clientHeight,d=l.scrollHeight,v=o/u*(d-u);l.scrollTop=Math.max(0,Math.min(d-u,v)),c(),M(!0),m(h.delay),oe()},[c,m,h.delay,k,oe]),ge=N(t=>{if(t.preventDefault(),t.stopPropagation(),!a.current)return;let n=Math.max(0,a.current.scrollTop-He);a.current.scrollTop=n,c(),M(!0),m(h.delay),oe()},[c,m,He,h.delay,oe]),Re=N(t=>{if(t.preventDefault(),t.stopPropagation(),!a.current||!U.current)return;let n=a.current,o=U.current.scrollHeight-n.clientHeight,l=Math.min(o,n.scrollTop+He);n.scrollTop=l,c(),M(!0),m(h.delay),oe()},[c,m,He,h.delay,oe]),et=N(t=>{if(!ze.enabled)return;let n=t.target;if(st(n,ze)||t.button!==0)return;let o=k();o&&(o.scrollHeight<=o.clientHeight||(t.preventDefault(),_e(!0),Ze({x:t.clientX,y:t.clientY,scrollTop:o.scrollTop,scrollLeft:o.scrollLeft||0}),r()))},[ze,st,k,r]),z=N(t=>{if(!se)return;let n=k();if(!n)return;let o=we.x-t.clientX,l=we.y-t.clientY;if(Math.abs(l)<3&&Math.abs(o)<3)return;M(!0);let u=Math.max(0,Math.min(n.scrollHeight-n.clientHeight,we.scrollTop+l));n.scrollTop=u,c()},[se,we,k,c]),Se=N(()=>{_e(!1),ue()&&m(h.delay)},[ue,m,h.delay]);de(()=>{let t=d=>{c(),r(),M(!0);let v=ce?h.delayOnWheel:h.delay;m(v),H&&H(d)},n=()=>{Ae(!0),j.current&&clearTimeout(j.current),j.current=setTimeout(()=>{Ae(!1)},300),r(),L(),K.current=setTimeout(()=>{M(!0),K.current=null},50)},o=[],l=k();l&&o.push(l);let u=a.current;return u&&!l&&(o.push(u),u.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]').forEach(d=>{let v=d;if(v!==u&&v.classList.contains("overlay-scrollbar-container"))return;let w=v.parentElement;for(;w&&w!==u;){if(w.classList.contains("overlay-scrollbar-container")&&w!==u)return;w=w.parentElement}o.push(v)})),o.forEach(d=>{d.addEventListener("scroll",t,{passive:!0}),d.addEventListener("wheel",n,{passive:!0})}),()=>{o.forEach(d=>{d.removeEventListener("scroll",t),d.removeEventListener("wheel",n)}),j.current&&clearTimeout(j.current),K.current&&clearTimeout(K.current)}},[k,c,H,r,m,h,ce]),de(()=>{let t=o=>{let l=k();if(!l)return;let{key:u}=o,{scrollTop:d,scrollHeight:v,clientHeight:w}=l,W=v-w,ee=50,T=null;switch(u){case"ArrowUp":o.preventDefault(),T=Math.max(0,d-ee);break;case"ArrowDown":o.preventDefault(),T=Math.min(W,d+ee);break;case"PageUp":o.preventDefault(),T=Math.max(0,d-w);break;case"PageDown":o.preventDefault(),T=Math.min(W,d+w);break;case"Home":o.preventDefault(),T=0;break;case"End":o.preventDefault(),T=W;break;default:return}if(T!==null){let Ce=T/W,S=q?C*2+g.margin*4:g.margin*2,te=(w-S-ae)*Ce;Fe(te),l.scrollTop=T,r(),M(!0),m(h.delay)}},n=a.current;if(n)return n.addEventListener("keydown",t),()=>{n.removeEventListener("keydown",t)}},[k,q,C,g.margin,ae,r,m,h.delay]),de(()=>{if(se)return document.addEventListener("mousemove",z),document.addEventListener("mouseup",Se),()=>{document.removeEventListener("mousemove",z),document.removeEventListener("mouseup",Se)}},[se,z,Se]),de(()=>{if($)return document.addEventListener("mousemove",P),document.addEventListener("mouseup",Q),()=>{document.removeEventListener("mousemove",P),document.removeEventListener("mouseup",Q)}},[$,P,Q]),de(()=>{c();let t=setTimeout(()=>{c()},100);return()=>clearTimeout(t)},[c]),yt(()=>{je(!0),c(),!h.enabled&&ue()&&M(!0)},[ue,c,h.enabled]),de(()=>{let t=new ResizeObserver(()=>{c()}),n=[];return a.current&&n.push(a.current),U.current&&n.push(U.current),B.current&&document.contains(B.current)&&n.push(B.current),n.forEach(o=>{t.observe(o)}),()=>t.disconnect()},[c]),de(()=>{if(!a.current)return;let t=new MutationObserver(()=>{B.current=null,c()});return t.observe(a.current,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}),()=>t.disconnect()},[c]);let be=Math.max(Ee,C);return de(()=>{let t="overlay-scrollbar-webkit-hide",n=document.getElementById(t);n&&n.remove();let o=document.createElement("style");return o.id=t,o.textContent=`
|
|
1
|
+
import{forwardRef as Je,useCallback as De,useMemo as Qe,useRef as ee,useEffect as Me,memo as Lt,useState as et}from"react";import{Box as pe,Table as Dt,TableBody as Et,TableCell as Ne,TableContainer as Rt,TableHead as Ht,TableRow as qe,TableSortLabel as tt,Paper as It,Typography as Ot}from"@mui/material";import{TableVirtuoso as $t}from"react-virtuoso";import{jsx as Ze}from"react/jsx-runtime";import{useRef as lt,useState as pt,useEffect as ft}from"react";import{Box as mt,CircularProgress as ht}from"@mui/material";var Oe=function(){return Oe=Object.assign||function(p){for(var x,v=1,k=arguments.length;v<k;v++){x=arguments[v];for(var D in x)Object.prototype.hasOwnProperty.call(x,D)&&(p[D]=x[D])}return p},Oe.apply(this,arguments)};function at(s){var p=s.visible,x=s.onComplete,v=s.fadeoutDuration,k=v===void 0?200:v,D=s.exitDelay,M=D===void 0?0:D,L=s.size,E=L===void 0?40:L,j=s.className,K=s.style,A=s.sx,U=s.indicator,R=s.background,q=R===void 0?{show:!0,color:"255, 255, 255",opacity:.9}:R,le=lt(void 0),a=lt(null),W=pt(p),ae=W[0],se=W[1],$=q.show,z=$===void 0?!0:$,C=q.color,I=C===void 0?"255, 255, 255":C,te=q.opacity,re=te===void 0?.9:te;if(ft(function(){var Re=le.current;if(Re===!0&&p===!1&&a.current){var ne=a.current;ne.style.opacity="0",setTimeout(function(){se(!1),x?.()},k+M)}else p===!0&&(se(!0),a.current&&(a.current.style.opacity="1"));le.current=p},[p,x,k,M]),!ae)return null;var Ce=function(){return typeof U=="string"?Ze("img",{src:U,alt:"Loading",style:{width:E,height:E}}):U||Ze(ht,{size:E})},fe=function(){return z?I.startsWith("rgba")?{backgroundColor:I}:/^\d+,\s*\d+,\s*\d+$/.test(I)?{backgroundColor:"rgba(".concat(I,", ").concat(re,")")}:re!==1?{backgroundColor:I,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:I,opacity:re,zIndex:-1}}:{backgroundColor:I}:{backgroundColor:"transparent"}};return Ze(mt,{ref:a,className:j,style:Oe({},K),sx:Oe(Oe({position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e3,opacity:p?1:0,transition:"opacity ".concat(k,"ms ease-out")},fe()),A),children:Ce()})}import{useRef as J,useEffect as ie,useState as V,useCallback as O,useMemo as $e,forwardRef as gt,useImperativeHandle as bt,useLayoutEffect as xt}from"react";import{jsx as Le,jsxs as ct}from"react/jsx-runtime";var yt=["editor","textarea","input","select","textfield","form-control","contenteditable","MuiInputBase-input","MuiSelect-select","MuiOutlinedInput-input","MuiFilledInput-input","MuiInput-input","MuiFormControl-root","MuiTextField-root","MuiSelect-root","MuiOutlinedInput-root","MuiFilledInput-root","MuiInput-root","MuiAutocomplete-input","MuiDatePicker-input","MuiSlider-thumb","MuiSlider-rail","MuiSlider-track","MuiSlider-mark","MuiSlider-markLabel","MuiSlider-root","MuiSlider-colorPrimary","MuiSlider-sizeMedium","MuiIconButton-root","MuiButton-root","MuiButtonBase-root","MuiTouchRipple-root","MuiCheckbox-root","MuiRadio-root","MuiSwitch-root","PrivateSwitchBase-root","ant-input","ant-input-affix-wrapper","ant-input-group-addon","ant-input-number","ant-input-number-handler","ant-select","ant-select-selector","ant-select-selection-search","ant-select-dropdown","ant-cascader","ant-cascader-input","ant-picker","ant-picker-input","ant-time-picker","ant-calendar-picker","ant-slider","ant-slider-track","ant-slider-handle","ant-switch","ant-checkbox","ant-checkbox-wrapper","ant-radio","ant-radio-wrapper","ant-rate","ant-upload","ant-upload-drag","ant-form-item","ant-form-item-control","ant-btn","ant-dropdown","ant-dropdown-trigger","ant-menu","ant-menu-item","ant-tooltip","ant-popover","ant-modal","ant-drawer","ant-tree-select","ant-auto-complete","ant-mentions","ant-transfer","ui-input","ui-textarea","ui-select","ui-select-trigger","ui-select-content","ui-select-item","ui-button","ui-checkbox","ui-radio-group","ui-switch","ui-slider","ui-range-slider","ui-calendar","ui-date-picker","ui-combobox","ui-command","ui-command-input","ui-popover","ui-dialog","ui-sheet","ui-dropdown-menu","ui-context-menu","ui-menubar","ui-navigation-menu","ui-form","ui-form-control","ui-form-item","ui-form-field","ui-label","radix-ui","radix-select","radix-dropdown","radix-dialog","radix-popover","radix-accordion","radix-tabs","radix-slider","radix-switch","radix-checkbox","radix-radio","ql-editor","ql-container","ql-toolbar","ql-picker","ql-picker-label","ql-picker-options","ql-formats","ql-snow","ql-bubble","quill","quilleditor","monaco-editor","monaco-editor-background","view-lines","decorationsOverviewRuler","monaco-scrollable-element","CodeMirror","CodeMirror-code","CodeMirror-lines","CodeMirror-scroll","CodeMirror-sizer","cm-editor","cm-focused","cm-content","tox-editor-container","tox-editor-header","tox-edit-area","tox-tinymce","mce-content-body","ck-editor","ck-content","ck-toolbar","ck-editor__editable","ck-widget","slate-editor","slate-content","DraftEditor-root","DraftEditor-editorContainer","public-DraftEditor-content","ehfuse-editor","ehfuse-editor-wrapper","ehfuse-editor-content","ehfuse-toolbar","ehfuse-toolbar-group","ehfuse-cursor","text-editor","rich-text-editor","wysiwyg","ace_editor","ace_content"],st=(s,p)=>{let x=s.tagName.toLowerCase(),v=["text","password","email","number","search","tel","url","checkbox","radio"];if(x==="input"){let k=s.type;return v.includes(k)}if(["textarea","select","button"].includes(x)||["svg","path","circle","rect","line","polygon","polyline"].includes(x)||s.getAttribute("contenteditable")==="true")return!0;if(p?.excludeSelectors){for(let k of p.excludeSelectors)if(s.matches(k))return!0}return vt(s,p)},vt=(s,p)=>{let x=[...yt,...p?.excludeClasses||[]],v=s,k=0,D=5;for(;v&&k<=D;){if(x.some(M=>v.classList.contains(M)))return!0;if(v.classList.contains("MuiDialogContent-root"))break;v=v.parentElement,k++}return!1},wt={},Mt={},Ct={},Tt={},St={},kt=gt(({className:s="",style:p={},containerStyle:x={},contentStyle:v={},children:k,onScroll:D,thumb:M=wt,track:L=Mt,arrows:E=Ct,dragScroll:j=Tt,autoHide:K=St,showScrollbar:A=!0,detectInnerScroll:U=!1},R)=>{let q=J({});ie(()=>{q.current={children:k,onScroll:D,showScrollbar:A,thumb:M,track:L,arrows:E,dragScroll:j,autoHide:K}});let le=J(null),a=J(null),W=J(null),ae=J(null),se=J(null),$=J(null),[z,C]=V(!1),[I,te]=V(!1),[re,Ce]=V(!1),[fe,Re]=V({y:0,scrollTop:0}),[ne,ze]=V(0),[Ye,Pe]=V(0),[Te,_e]=V(!1),[m,f]=V(!1),[ce,Fe]=V({x:0,y:0,scrollTop:0,scrollLeft:0}),[Be,rt]=V(null),[me,Se]=V(null),[nt,Ae]=V(!1),he=J(null),[Ge,ke]=V(!1),oe=J(null),ge=J(null),X=J(null),N=$e(()=>{let t=M.color??"#606060";return{width:M.width??8,minHeight:M.minHeight??50,radius:M.radius??(M.width??8)/2,color:t,opacity:M.opacity??.6,hoverColor:M.hoverColor??t,hoverOpacity:M.hoverOpacity??1}},[M]),h=$e(()=>({width:L.width??16,color:L.color??"rgba(128, 128, 128, 0.1)",visible:L.visible??!0,alignment:L.alignment??"center",radius:L.radius??N.radius??4,margin:L.margin??4}),[L,N.radius]),Y=$e(()=>{let t=E.color??"#808080";return{visible:E.visible??!1,step:E.step??50,color:t,opacity:E.opacity??.6,hoverColor:E.hoverColor??t,hoverOpacity:E.hoverOpacity??1}},[E]),be=$e(()=>({enabled:j.enabled??!0,excludeClasses:j.excludeClasses??[],excludeSelectors:j.excludeSelectors??[]}),[j]),y=$e(()=>({enabled:K.enabled??!0,delay:K.delay??1500,delayOnWheel:K.delayOnWheel??700}),[K]),H=N.width,ot=h.width,He=N.minHeight,_=Y.visible,o=Y.step,r=O(()=>{if(!a.current)return;let t=document.activeElement;t&&a.current.contains(t)&&t!==a.current||a.current.focus()},[]);bt(R,()=>({getScrollContainer:()=>a.current,scrollTo:t=>{a.current&&a.current.scrollTo(t)},get scrollTop(){return a.current?.scrollTop||0},get scrollHeight(){return a.current?.scrollHeight||0},get clientHeight(){return a.current?.clientHeight||0}}),[]);let u=O(()=>{if($.current){let n=$.current;if(document.contains(n)&&n.scrollHeight>n.clientHeight+2)return n;$.current=null}if(!a.current)return null;if(W.current&&W.current.scrollHeight>a.current.clientHeight+2)return $.current=a.current,a.current;if(!U)return null;let t=a.current.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]');for(let n of t){let l=n;if(l!==a.current&&l.classList.contains("overlay-scrollbar-container"))continue;let c=l.parentElement,w=!1;for(;c&&c!==a.current;){if(c.classList.contains("overlay-scrollbar-container")&&c!==a.current){w=!0;break}c=c.parentElement}if(!w&&l.scrollHeight>l.clientHeight+2)return $.current=l,l}return null},[]),T=O(()=>u()!==null,[u]),i=O(()=>{oe.current&&(clearTimeout(oe.current),oe.current=null)},[]),e=O(()=>{ge.current&&(clearTimeout(ge.current),ge.current=null)},[]),B=O(()=>{X.current&&(clearTimeout(X.current),X.current=null)},[]),g=O(t=>{y.enabled&&(i(),oe.current=setTimeout(()=>{C(!1),oe.current=null},t))},[i,y.enabled]),b=O(()=>{let t=u();if(!t){C(!1),_e(!1),i();return}if(_e(!0),!ae.current)return;y.enabled||(C(!0),i());let n=t.clientHeight,l=t.scrollHeight,c=t.scrollTop,w=0;if(le.current){let je=window.getComputedStyle(le.current),Xe=parseFloat(je.paddingTop)||0,dt=parseFloat(je.paddingBottom)||0;w=Xe+dt}let S=_?H*2+h.margin*4:h.margin*2,P=n-S+w,F=n/l,we=Math.max(P*F,He),Ie=l-n,Z=P-we,Ue=Ie>0?c/Ie*Z:0;ze(we),Pe(Ue)},[u,i,_,H,He,y.enabled]),Q=O(t=>{t.preventDefault(),t.stopPropagation();let n=u();n&&(te(!0),Re({y:t.clientY,scrollTop:n.scrollTop}),i(),C(!0),r())},[u,i,r]),xe=O(t=>{if(!I)return;let n=u();if(!n)return;let l=n.clientHeight,c=n.scrollHeight-l,w=t.clientY-fe.y,S=l-ne,P=w/S*c,F=Math.max(0,Math.min(c,fe.scrollTop+P));n.scrollTop=F,b()},[I,fe,ne,b,u]),ue=O(()=>{te(!1),T()&&g(y.delay)},[T,g,y.delay]),G=O(t=>{if(!ae.current)return;let n=ae.current.getBoundingClientRect(),l=t.clientY-n.top,c=u();if(!c)return;let w=c.clientHeight,S=c.scrollHeight,P=l/w*(S-w);c.scrollTop=Math.max(0,Math.min(S-w,P)),b(),C(!0),g(y.delay),r()},[b,g,y.delay,u,r]),Ke=O(t=>{if(t.preventDefault(),t.stopPropagation(),!a.current)return;let n=Math.max(0,a.current.scrollTop-o);a.current.scrollTop=n,b(),C(!0),g(y.delay),r()},[b,g,o,y.delay,r]),it=O(t=>{if(t.preventDefault(),t.stopPropagation(),!a.current||!W.current)return;let n=a.current,l=W.current.scrollHeight-n.clientHeight,c=Math.min(l,n.scrollTop+o);n.scrollTop=c,b(),C(!0),g(y.delay),r()},[b,g,o,y.delay,r]),Ve=O(t=>{if(!be.enabled)return;let n=t.target;if(st(n,be)||t.button!==0)return;let l=u();l&&(l.scrollHeight<=l.clientHeight||(t.preventDefault(),f(!0),Fe({x:t.clientX,y:t.clientY,scrollTop:l.scrollTop,scrollLeft:l.scrollLeft||0}),i()))},[be,st,u,i]),ye=O(t=>{if(!m)return;let n=u();if(!n)return;let l=ce.x-t.clientX,c=ce.y-t.clientY;if(Math.abs(c)<3&&Math.abs(l)<3)return;C(!0);let w=Math.max(0,Math.min(n.scrollHeight-n.clientHeight,ce.scrollTop+c));n.scrollTop=w,b()},[m,ce,u,b]),de=O(()=>{f(!1),T()&&g(y.delay)},[T,g,y.delay]);ie(()=>{let t=S=>{b(),i(),C(!0);let P=Ge?y.delayOnWheel:y.delay;g(P),D&&D(S)},n=()=>{ke(!0),he.current&&clearTimeout(he.current),he.current=setTimeout(()=>{ke(!1)},300),i(),B(),X.current=setTimeout(()=>{C(!0),X.current=null},50)},l=[],c=u();c&&l.push(c);let w=a.current;return w&&!c&&(l.push(w),w.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]').forEach(S=>{let P=S;if(P!==w&&P.classList.contains("overlay-scrollbar-container"))return;let F=P.parentElement;for(;F&&F!==w;){if(F.classList.contains("overlay-scrollbar-container")&&F!==w)return;F=F.parentElement}l.push(P)})),l.forEach(S=>{S.addEventListener("scroll",t,{passive:!0}),S.addEventListener("wheel",n,{passive:!0})}),()=>{l.forEach(S=>{S.removeEventListener("scroll",t),S.removeEventListener("wheel",n)}),he.current&&clearTimeout(he.current),X.current&&clearTimeout(X.current)}},[u,b,D,i,g,y,Ge]),ie(()=>{let t=l=>{let c=u();if(!c)return;let{key:w}=l,{scrollTop:S,scrollHeight:P,clientHeight:F}=c,we=P-F,Ie=50,Z=null;switch(w){case"ArrowUp":l.preventDefault(),Z=Math.max(0,S-Ie);break;case"ArrowDown":l.preventDefault(),Z=Math.min(we,S+Ie);break;case"PageUp":l.preventDefault(),Z=Math.max(0,S-F);break;case"PageDown":l.preventDefault(),Z=Math.min(we,S+F);break;case"Home":l.preventDefault(),Z=0;break;case"End":l.preventDefault(),Z=we;break;default:return}if(Z!==null){let Ue=Z/we,je=_?H*2+h.margin*4:h.margin*2,Xe=(F-je-ne)*Ue;Pe(Xe),c.scrollTop=Z,i(),C(!0),g(y.delay)}},n=a.current;if(n)return n.addEventListener("keydown",t),()=>{n.removeEventListener("keydown",t)}},[u,_,H,h.margin,ne,i,g,y.delay]),ie(()=>{if(m)return document.addEventListener("mousemove",ye),document.addEventListener("mouseup",de),()=>{document.removeEventListener("mousemove",ye),document.removeEventListener("mouseup",de)}},[m,ye,de]),ie(()=>{if(I)return document.addEventListener("mousemove",xe),document.addEventListener("mouseup",ue),()=>{document.removeEventListener("mousemove",xe),document.removeEventListener("mouseup",ue)}},[I,xe,ue]),ie(()=>{b();let t=setTimeout(()=>{b()},100);return()=>clearTimeout(t)},[b]),xt(()=>{Ae(!0),b(),!y.enabled&&T()&&C(!0)},[T,b,y.enabled]),ie(()=>{let t=new ResizeObserver(()=>{b()}),n=[];return a.current&&n.push(a.current),W.current&&n.push(W.current),$.current&&document.contains($.current)&&n.push($.current),n.forEach(l=>{t.observe(l)}),()=>t.disconnect()},[b]),ie(()=>{if(!a.current)return;let t=new MutationObserver(()=>{$.current=null,b()});return t.observe(a.current,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}),()=>t.disconnect()},[b]);let ve=Math.max(ot,H);return ie(()=>{let t="overlay-scrollbar-webkit-hide",n=document.getElementById(t);n&&n.remove();let l=document.createElement("style");return l.id=t,l.textContent=`
|
|
2
2
|
.overlay-scrollbar-container::-webkit-scrollbar {
|
|
3
3
|
display: none !important;
|
|
4
4
|
width: 0 !important;
|
|
@@ -18,7 +18,7 @@ import{forwardRef as rt,useCallback as ye,useMemo as nt,useRef as A,useEffect as
|
|
|
18
18
|
outline: 2px solid rgba(0, 123, 255, 0.5);
|
|
19
19
|
outline-offset: -2px;
|
|
20
20
|
}
|
|
21
|
-
`,document.head.appendChild(o),()=>{let l=document.getElementById(t);l&&l.remove()}},[]),ct("div",{ref:pe,className:`overlay-scrollbar-wrapper ${s}`,style:{display:"flex",flexDirection:"column",position:"relative",minHeight:0,height:"100%",flex:"1 1 0%",...f},children:[Ie("div",{ref:a,className:"overlay-scrollbar-container",tabIndex:-1,onMouseDown:et,style:{display:"flex",width:"100%",flex:"1 1 auto",minHeight:0,overflow:"auto",scrollbarWidth:"none",msOverflowStyle:"none",outline:"none",userSelect:se?"none":"auto",...b},children:Ie("div",{ref:U,className:"overlay-scrollbar-content",style:{flex:"1 1 0%",minHeight:0,display:"flex",flexDirection:"column",...y},children:D})}),Y&&Ne&&ct("div",{ref:fe,className:"overlay-scrollbar-track",onMouseEnter:()=>{r(),he.current=setTimeout(()=>{M(!0),he.current=null},100)},onMouseLeave:()=>{i(),$||m(h.delay)},style:{position:"absolute",top:0,right:0,width:`${be}px`,height:"100%",opacity:X?1:0,transition:"opacity 0.2s ease-in-out",cursor:"pointer",zIndex:1e3,pointerEvents:"auto"},children:[g.visible&&Ie("div",{className:"overlay-scrollbar-track-background",onClick:t=>{t.preventDefault(),t.stopPropagation(),Te(t)},style:{position:"absolute",top:q?`${O.width+g.margin*2}px`:`${g.margin}px`,right:g.alignment==="right"?"0px":`${(be-O.width)/2}px`,width:`${O.width}px`,height:q?`calc(100% - ${O.width*2+g.margin*4}px)`:`calc(100% - ${g.margin*2}px)`,backgroundColor:g.color,borderRadius:`${g.radius}px`,cursor:"pointer"}}),Ie("div",{ref:xe,className:"overlay-scrollbar-thumb",onMouseDown:e,onMouseEnter:()=>Le(!0),onMouseLeave:()=>Le(!1),style:{position:"absolute",top:`${(q?C+g.margin*2:g.margin)+Je}px`,right:g.alignment==="right"?"0px":`${(be-C)/2}px`,width:`${C}px`,height:`${Math.max(ae,We)}px`,backgroundColor:le||$?O.hoverColor:O.color,opacity:le||$?O.hoverOpacity:O.opacity,borderRadius:`${O.radius}px`,cursor:"pointer",transition:"background-color 0.2s ease-in-out, opacity 0.2s ease-in-out"}})]}),Y&&Ne&&q&&Ie("div",{className:"overlay-scrollbar-up-arrow",onClick:ge,onMouseEnter:()=>Be("up"),onMouseLeave:()=>Be(null),style:{position:"absolute",top:`${g.margin}px`,right:g.alignment==="right"?"0px":`${(be-C)/2}px`,width:`${C}px`,height:`${C}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(C*.75,8)}px`,color:De==="up"?Z.hoverColor:Z.color,userSelect:"none",zIndex:1001,opacity:X?De==="up"?Z.hoverOpacity:Z.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25B2"}),Y&&Ne&&q&&Ie("div",{className:"overlay-scrollbar-down-arrow",onClick:Re,onMouseEnter:()=>Be("down"),onMouseLeave:()=>Be(null),style:{position:"absolute",bottom:`${g.margin}px`,right:g.alignment==="right"?"0px":`${(be-C)/2}px`,width:`${C}px`,height:`${C}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(C*.75,8)}px`,color:De==="down"?Z.hoverColor:Z.color,userSelect:"none",zIndex:1001,opacity:X?De==="down"?Z.hoverOpacity:Z.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25BC"})]})}),ut=kt;import{Fragment as Xe,jsx as p,jsxs as Oe}from"react/jsx-runtime";var Nt={alignment:"right",margin:0,radius:0};function Pt({data:s,loading:f=!1,columns:b,onRowClick:y,getRowId:D,selectedRowId:H,selectedRowSx:x,rowHeight:E=50,columnHeight:R=56,striped:F,rowDivider:J=!0,onSort:Y,onLoadMore:_,sortBy:I,sortDirection:G,showPaper:pe=!0,paddingX:a="1rem",paddingTop:U=0,paddingBottom:fe=0,rowHoverColor:xe,rowHoverOpacity:B,viewportBuffer:X,overscan:M,scrollbars:$,emptyMessage:ie="NO DATA",LoadingComponent:le}){let Le=Math.max(E*12,480),Me=Math.max(E*12,480),$e=typeof X=="number"?X:X?.top??Le,ae=typeof X=="number"?X:X?.bottom??Me,Ke=Math.max(E*8,420),Je=Math.max(E*10,520),Fe=typeof M=="number"?M:{main:M?.main??Ke,reverse:M?.reverse??Je},Ne=E+(J?1:0),Pe=nt(()=>rt((r,i)=>{let L=A(null),m=A(0),c=A(null);return ke(()=>{let e=L.current;if(!e)return;let P=Q=>{Q.preventDefault();let Te=Q.deltaY;Q.deltaMode===1?Te*=40:Q.deltaMode===2&&(Te*=e.clientHeight),m.current+=Te,c.current===null&&(c.current=requestAnimationFrame(()=>{let ge=Math.max(e.clientHeight*.8,240),Re=Math.max(-ge,Math.min(ge,m.current));m.current=0,c.current=null,Re!==0&&(e.scrollTop+=Re)}))};return e.addEventListener("wheel",P,{passive:!1}),()=>{e.removeEventListener("wheel",P),c.current!==null&&(cancelAnimationFrame(c.current),c.current=null),m.current=0}},[]),p(ut,{detectInnerScroll:!0,track:Nt,...$,children:p(Ht,{component:ve,...r,ref:e=>{L.current=e,typeof i=="function"?i(e):i&&(i.current=e)},sx:{userSelect:"auto",WebkitUserSelect:"auto",position:"relative",width:"100%",height:"100%",overflow:"auto",display:"flex",flexDirection:"column",scrollbarWidth:"none",msOverflowStyle:"none",transform:"translateZ(0)",backfaceVisibility:"hidden",willChange:"scroll-position","&::-webkit-scrollbar":{display:"none"},"& .MuiTable-root":{paddingRight:a,paddingTop:U,paddingBottom:fe}}})})}),[]),se=nt(()=>{if(F===!0)return"#f5f5f5";if(typeof F=="string")return F},[F]),[_e,we]=dt(f),[Ze,it]=dt(0);ke(()=>{f&&we(!0)},[f]);let Qe=ye(()=>{we(!1)},[]),De=_e,Be=f&&s.length>0,Ge=A(!1),je=A(null),j=A(null),ce=A(!1),Ae=A({x:0,y:0,scrollTop:0}),me=A(!1),he=A(0),K=A(0),O=A(!1),g=A({x:0,y:0}),Z=A(null),ze=ye(r=>{},[]),h=ye(r=>{if(!me.current||!j.current)return;let i=r.clientY-Ae.current.y;if(!ce.current&&Math.abs(i)>5&&(ce.current=!0,j.current&&(j.current.style.userSelect="none")),ce.current){let m=i*2;K.current+=-m;let c=j.current,e=Math.max(0,he.current+K.current);c.scrollTop=e,Ae.current.y=r.clientY,r.preventDefault()}},[]),C=ye(()=>{if(me.current=!1,ce.current&&j.current){let r=Math.max(0,he.current+K.current),i=()=>{j.current&&(j.current.scrollTop=r)};i(),setTimeout(i,1),setTimeout(i,5),setTimeout(i,10)}ce.current=!1,K.current=0,j.current&&(j.current.style.userSelect="auto")},[]);ke(()=>{let r=document.querySelector('[data-testid="virtuoso-scroller"]');r&&r.querySelectorAll(".MuiTableSortLabel-root").forEach(L=>{let m=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0});L.dispatchEvent(m)})},[I]);let Ee=ye(r=>{if(!Y)return;Y(r,I===r&&G==="asc"?"desc":"asc")},[Y,I,G]),We=ye(r=>{if(!_||f&&s.length===0)return;let i=Date.now(),L=window.lastRangeChangeTime||0;if(i-L<100)return;window.lastRangeChangeTime=i;let m=Math.max(10,Math.floor(s.length*.1)),c=r.endIndex>=s.length-m,e=s.length>=30;if(c&&e&&_&&!Ge.current){Ge.current=!0;let P=s.length;_(P,50)}},[s.length,f,_]);ke(()=>{f||(Ge.current=!1)},[f]),ke(()=>{s.length===0&&it(r=>r+1)},[s.length]);let q=A(s.length);ke(()=>{let r=q.current,i=s.length;if(i>r&&r>0){q.current=i;return}je.current&&i>0&&i<=r&&je.current.scrollToIndex({index:0,align:"start",behavior:"auto"}),q.current=i},[s]),ke(()=>(document.addEventListener("mousemove",h),document.addEventListener("mouseup",C),()=>{document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",C)}),[h,C]);let He=ye(()=>{let r={},i=[];if(b.forEach(e=>{e.group?(r[e.group]||(r[e.group]=[]),r[e.group].push(e)):i.push(e)}),!(Object.keys(r).length>0))return p(Ue,{children:b.map(e=>p(Ve,{align:e.align||"left",style:{width:e.width,minWidth:e.width,...e.style,fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e.sortable?p("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:Oe(ve,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>Ee(String(e.id)),children:[e.text,p(ot,{active:I===e.id,direction:I===e.id?G:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:I===e.id?1:0,transition:"opacity 0.2s ease","& .MuiTableSortLabel-icon":{position:"relative",marginLeft:0,marginRight:0,opacity:1,transition:"color 0.2s ease"},"& .MuiTableSortLabel-iconDirectionAsc":{transform:"rotate(180deg)"},"& .MuiTableSortLabel-iconDirectionDesc":{transform:"rotate(0deg)"}}})]})}):e.text},String(e.id)))});let m=[...i.map(e=>p(Ve,{rowSpan:2,align:e.align||"left",style:{width:e.width,minWidth:e.width,...e.style,fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e.sortable&&Y?p("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:Oe(ve,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>Ee(String(e.id)),children:[e.text,p(ot,{active:I===e.id,direction:I===e.id?G:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:I===e.id?1:0,transition:"opacity 0.2s ease","&:hover":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}},"& .MuiTableSortLabel-icon":{position:"relative",marginLeft:0,marginRight:0,opacity:1,transition:"color 0.2s ease"},"& .MuiTableSortLabel-iconDirectionAsc":{transform:"rotate(180deg)"},"& .MuiTableSortLabel-iconDirectionDesc":{transform:"rotate(0deg)"}}})]})}):e.text},String(e.id))),...Object.entries(r).map(([e,P])=>p(Ve,{align:"center",colSpan:P.length,style:{fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e},e))],c=[...Object.values(r).flat().map(e=>p(Ve,{align:e.align||"left",style:{width:e.width,minWidth:e.width,...e.style,fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e.sortable&&Y?p("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:Oe(ve,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>Ee(String(e.id)),children:[e.text,p(ot,{active:I===e.id,direction:I===e.id?G:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:I===e.id?1:0,transition:"opacity 0.2s ease","&:hover":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}},"& .MuiTableSortLabel-icon":{position:"relative",marginLeft:0,marginRight:0,opacity:1,transition:"color 0.2s ease"},"& .MuiTableSortLabel-iconDirectionAsc":{transform:"rotate(0deg)"},"& .MuiTableSortLabel-iconDirectionDesc":{transform:"rotate(180deg)"}}})]})}):e.text},String(e.id)))];return Oe(Xe,{children:[p(Ue,{children:m}),p(Ue,{children:c})]})},[b,I,G,Ee,Y,R]),oe=ye((r,i)=>i?p(Xe,{children:b.map(L=>p(Ve,{align:L.align||"left",style:{width:L.width,minWidth:L.width,...L.style,padding:"8px 16px"},children:L.render?L.render(i,r):String(i[L.id]||"")},String(L.id)))}):(console.log("rowContent - \uC544\uC774\uD15C \uC5C6\uC74C, \uC778\uB371\uC2A4:",r),null),[b]),k=nt(()=>({Scroller:Pe,Table:r=>p(Dt,{...r,sx:{borderCollapse:"separate",tableLayout:"fixed",marginRight:"16px"}}),TableHead:rt((r,i)=>p(Rt,{...r,ref:i,sx:{userSelect:"none","& tr":{height:R,"& th":{padding:"16px",position:"sticky",top:0,zIndex:2,fontWeight:"bold"}}}})),TableRow:r=>{let{item:i,selected:L,"aria-selected":m,className:c,...e}=r,P=e["data-index"]??0,Q=P%2===1,Te=i&&D?D(i,P):P,ge=H!=null&&Te===H,Re=ge&&x?typeof x=="function"?x(i,P):x:void 0,et=String(c??"").split(/\s+/).filter(z=>z!=="Mui-selected"&&z!=="Mui-focusVisible").join(" ");return p(Ue,{...e,className:et||void 0,selected:ge,onMouseDown:z=>{O.current=!1,g.current={x:z.clientX,y:z.clientY}},onMouseMove:z=>{let Se=Math.abs(z.clientX-g.current.x),be=Math.abs(z.clientY-g.current.y),t=5;(Se>t||be>t)&&(O.current=!0)},onClick:()=>{!O.current&&!ce.current&&i&&y&&y(i,P),O.current=!1},sx:[{userSelect:"none",height:E,backgroundColor:Q&&se?se:"transparent","& td":{padding:"8px 16px",borderBottom:J?"1px solid rgba(224, 224, 224, 1)":"none"},"& th":{padding:"8px 16px",borderBottom:"none"},"&:hover":y&&!ge?{backgroundColor:z=>{let Se=z.palette.mode==="dark",t=xe??"#000000",n=B??.06,o=t.replace("#",""),l=parseInt(o.substring(0,2),16)/255,u=parseInt(o.substring(2,4),16)/255,d=parseInt(o.substring(4,6),16)/255;if(Se){let v=Math.max(l,u,d),w=Math.min(l,u,d),W=0,ee=0,T=(v+w)/2;if(v!==w){let S=v-w;switch(ee=T>.5?S/(2-v-w):S/(v+w),v){case l:W=((u-d)/S+(u<d?6:0))/6;break;case u:W=((d-l)/S+2)/6;break;case d:W=((l-u)/S+4)/6;break}}T=1-T;let Ce=(S,te,re)=>(re<0&&(re+=1),re>1&&(re-=1),re<1/6?S+(te-S)*6*re:re<1/2?te:re<2/3?S+(te-S)*(2/3-re)*6:S);if(ee===0)l=u=d=T;else{let S=T<.5?T*(1+ee):T+ee-T*ee,te=2*T-S;l=Ce(te,S,W+1/3),u=Ce(te,S,W),d=Ce(te,S,W-1/3)}}return`rgba(${Math.round(l*255)}, ${Math.round(u*255)}, ${Math.round(d*255)}, ${n})`}}:void 0,cursor:y?"pointer":void 0},Re]})},TableBody:rt((r,i)=>p(Et,{...r,ref:i}))}),[y,D,H,x,E,ze,se,J,R,xe,B,Pe]),ue=Oe(ve,{sx:{position:"relative",height:"100%",width:"100%","& .MuiTableHead-root":{backgroundColor:r=>r.palette.mode==="dark"?"#1e1e1e !important":"#ffffff !important"}},children:[p($t,{ref:je,data:s,totalCount:_?s.length+1:s.length,defaultItemHeight:Ne,fixedHeaderContent:He,itemContent:oe,rangeChanged:We,components:k,style:{height:"100%"},increaseViewportBy:{top:$e,bottom:ae},overscan:Fe,followOutput:!1},Ze),s.length===0&&!f&&p(ve,{sx:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2},children:typeof ie=="string"?Oe(Xe,{children:[p(ve,{sx:{width:48,height:48,display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",backgroundColor:"#f5f5f5",color:"#999"},children:"\u{1F4C4}"}),p(Ot,{variant:"body1",sx:{color:"text.secondary"},children:ie})]}):ie}),De&&p(Xe,{children:le?p(le,{visible:f,onComplete:Qe}):p(at,{visible:f,onComplete:Qe,size:40,sx:{top:`${b.some(r=>r.group)?R*2:R}px`},background:{show:s.length===0,opacity:.8}})})]});return pe?p(It,{className:"grow",elevation:1,sx:{padding:0,paddingLeft:a,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:ue}):p(ve,{className:"grow",style:{padding:0,paddingLeft:a,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:ue})}var Bt=Lt(Pt);export{Bt as VirtualDataTable};
|
|
21
|
+
`,document.head.appendChild(l),()=>{let c=document.getElementById(t);c&&c.remove()}},[]),ct("div",{ref:le,className:`overlay-scrollbar-wrapper ${s}`,style:{display:"flex",flexDirection:"column",position:"relative",minHeight:0,height:"100%",flex:"1 1 0%",...p},children:[Le("div",{ref:a,className:"overlay-scrollbar-container",tabIndex:-1,onMouseDown:Ve,style:{display:"flex",width:"100%",flex:"1 1 auto",minHeight:0,overflow:"auto",scrollbarWidth:"none",msOverflowStyle:"none",outline:"none",userSelect:m?"none":"auto",...x},children:Le("div",{ref:W,className:"overlay-scrollbar-content",style:{flex:"1 1 0%",minHeight:0,display:"flex",flexDirection:"column",...v},children:k})}),A&&Te&&ct("div",{ref:ae,className:"overlay-scrollbar-track",onMouseEnter:()=>{i(),ge.current=setTimeout(()=>{C(!0),ge.current=null},100)},onMouseLeave:()=>{e(),I||g(y.delay)},style:{position:"absolute",top:0,right:0,width:`${ve}px`,height:"100%",opacity:z?1:0,transition:"opacity 0.2s ease-in-out",cursor:"pointer",zIndex:1e3,pointerEvents:"auto"},children:[h.visible&&Le("div",{className:"overlay-scrollbar-track-background",onClick:t=>{t.preventDefault(),t.stopPropagation(),G(t)},style:{position:"absolute",top:_?`${N.width+h.margin*2}px`:`${h.margin}px`,right:h.alignment==="right"?"0px":`${(ve-N.width)/2}px`,width:`${N.width}px`,height:_?`calc(100% - ${N.width*2+h.margin*4}px)`:`calc(100% - ${h.margin*2}px)`,backgroundColor:h.color,borderRadius:`${h.radius}px`,cursor:"pointer"}}),Le("div",{ref:se,className:"overlay-scrollbar-thumb",onMouseDown:Q,onMouseEnter:()=>Ce(!0),onMouseLeave:()=>Ce(!1),style:{position:"absolute",top:`${(_?H+h.margin*2:h.margin)+Ye}px`,right:h.alignment==="right"?"0px":`${(ve-H)/2}px`,width:`${H}px`,height:`${Math.max(ne,He)}px`,backgroundColor:re||I?N.hoverColor:N.color,opacity:re||I?N.hoverOpacity:N.opacity,borderRadius:`${N.radius}px`,cursor:"pointer",transition:"background-color 0.2s ease-in-out, opacity 0.2s ease-in-out"}})]}),A&&Te&&_&&Le("div",{className:"overlay-scrollbar-up-arrow",onClick:Ke,onMouseEnter:()=>Se("up"),onMouseLeave:()=>Se(null),style:{position:"absolute",top:`${h.margin}px`,right:h.alignment==="right"?"0px":`${(ve-H)/2}px`,width:`${H}px`,height:`${H}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(H*.75,8)}px`,color:me==="up"?Y.hoverColor:Y.color,userSelect:"none",zIndex:1001,opacity:z?me==="up"?Y.hoverOpacity:Y.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25B2"}),A&&Te&&_&&Le("div",{className:"overlay-scrollbar-down-arrow",onClick:it,onMouseEnter:()=>Se("down"),onMouseLeave:()=>Se(null),style:{position:"absolute",bottom:`${h.margin}px`,right:h.alignment==="right"?"0px":`${(ve-H)/2}px`,width:`${H}px`,height:`${H}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(H*.75,8)}px`,color:me==="down"?Y.hoverColor:Y.color,userSelect:"none",zIndex:1001,opacity:z?me==="down"?Y.hoverOpacity:Y.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25BC"})]})}),ut=kt;import{Fragment as We,jsx as d,jsxs as Ee}from"react/jsx-runtime";var Nt={alignment:"right",margin:0,radius:0};function Pt({data:s,loading:p=!1,columns:x,onRowClick:v,getRowId:k,selectedRowId:D,selectedRowSx:M,rowHeight:L=50,columnHeight:E=56,striped:j,rowDivider:K=!0,onSort:A,onLoadMore:U,sortBy:R,sortDirection:q,showPaper:le=!0,paddingX:a="1rem",paddingTop:W=0,paddingBottom:ae=0,rowHoverColor:se,rowHoverOpacity:$,viewportBuffer:z,overscan:C,scrollbars:I,emptyMessage:te="NO DATA",LoadingComponent:re}){let Ce=Math.max(L*12,480),fe=Math.max(L*12,480),Re=typeof z=="number"?z:z?.top??Ce,ne=typeof z=="number"?z:z?.bottom??fe,ze=Math.max(L*8,420),Ye=Math.max(L*10,520),Pe=typeof C=="number"?C:{main:C?.main??ze,reverse:C?.reverse??Ye},Te=L+(K?1:0),_e=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),[m]=et(()=>typeof window>"u"?!1:window.localStorage.getItem("vdt-perf-debug")==="1"),f=ee({wheelEvents:0,wheelInputPx:0,wheelHandlerMs:0,wheelRafFlushes:0,wheelRafMs:0,rangeChangedCalls:0,rangeChangedMs:0,rowContentCalls:0,rowContentMs:0,rowContentMaxMs:0,cellRenderCalls:0,cellRenderMs:0,cellRenderMaxMs:0}),ce=De(o=>{if(!m)return;let r=f.current;if(!(r.wheelEvents>0||r.rangeChangedCalls>0||r.rowContentCalls>0||r.cellRenderCalls>0))return;let T=r.rowContentCalls>0?r.rowContentMs/r.rowContentCalls:0,i=r.cellRenderCalls>0?r.cellRenderMs/r.cellRenderCalls:0;console.log("[VDT perf]",{reason:o,wheel:{events:r.wheelEvents,inputPx:Math.round(r.wheelInputPx),handlerMs:Number(r.wheelHandlerMs.toFixed(2)),rafFlushes:r.wheelRafFlushes,rafMs:Number(r.wheelRafMs.toFixed(2))},rangeChanged:{calls:r.rangeChangedCalls,totalMs:Number(r.rangeChangedMs.toFixed(2))},rowContent:{calls:r.rowContentCalls,totalMs:Number(r.rowContentMs.toFixed(2)),avgMs:Number(T.toFixed(3)),maxMs:Number(r.rowContentMaxMs.toFixed(3))},cellRender:{calls:r.cellRenderCalls,totalMs:Number(r.cellRenderMs.toFixed(2)),avgMs:Number(i.toFixed(3)),maxMs:Number(r.cellRenderMaxMs.toFixed(3))}}),f.current={wheelEvents:0,wheelInputPx:0,wheelHandlerMs:0,wheelRafFlushes:0,wheelRafMs:0,rangeChangedCalls:0,rangeChangedMs:0,rowContentCalls:0,rowContentMs:0,rowContentMaxMs:0,cellRenderCalls:0,cellRenderMs:0,cellRenderMaxMs:0}},[m]);Me(()=>{if(!m||typeof window>"u")return;console.log("[VDT perf] enabled (localStorage vdt-perf-debug=1)");let o=window.setInterval(()=>{ce("interval")},1500);return()=>{window.clearInterval(o),ce("cleanup")}},[ce,m]);let Fe=Qe(()=>Je((o,r)=>{let u=ee(null),T=ee(0),i=ee(null);return Me(()=>{let e=u.current;if(!e)return;let B=g=>{let b=m?performance.now():0;g.preventDefault();let Q=g.deltaY;g.deltaMode===1?Q*=40:g.deltaMode===2&&(Q*=e.clientHeight),m&&(f.current.wheelEvents+=1,f.current.wheelInputPx+=Q),T.current+=Q,i.current===null&&(i.current=requestAnimationFrame(()=>{let xe=m?performance.now():0,ue=Math.max(e.clientHeight*.4,160),G=Math.max(-ue,Math.min(ue,T.current));T.current=0,i.current=null,G!==0&&(e.scrollTop+=G),m&&(f.current.wheelRafFlushes+=1,f.current.wheelRafMs+=performance.now()-xe)}),m&&(f.current.wheelHandlerMs+=performance.now()-b))};return e.addEventListener("wheel",B,{passive:!1}),()=>{e.removeEventListener("wheel",B),i.current!==null&&(cancelAnimationFrame(i.current),i.current=null),T.current=0}},[]),d(ut,{detectInnerScroll:!0,track:Nt,...I,children:d(Rt,{component:pe,...o,ref:e=>{u.current=e,typeof r=="function"?r(e):r&&(r.current=e)},sx:{userSelect:"auto",WebkitUserSelect:"auto",position:"relative",width:"100%",height:"100%",overflow:"auto",display:"flex",flexDirection:"column",scrollbarWidth:"none",msOverflowStyle:"none",transform:"translateZ(0)",backfaceVisibility:"hidden",willChange:"scroll-position","&::-webkit-scrollbar":{display:"none"},"& .MuiTable-root":{paddingRight:a,paddingTop:W,paddingBottom:ae}}})})}),[]),Be=Qe(()=>{if(j===!0)return"#f5f5f5";if(typeof j=="string")return j},[j]),[rt,me]=et(p),[Se,nt]=et(0);Me(()=>{p&&me(!0)},[p]);let Ae=De(()=>{me(!1)},[]),he=rt,Ge=p&&s.length>0,ke=ee(!1),oe=ee(null),ge=ee(!1),X=ee(!1),N=ee({x:0,y:0});Me(()=>{let o=document.querySelector('[data-testid="virtuoso-scroller"]');o&&o.querySelectorAll(".MuiTableSortLabel-root").forEach(u=>{let T=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0});u.dispatchEvent(T)})},[R]);let h=De(o=>{if(!A)return;A(o,R===o&&q==="asc"?"desc":"asc")},[A,R,q]),Y=De(o=>{let r=m?performance.now():0;if(!U){m&&(f.current.rangeChangedCalls+=1,f.current.rangeChangedMs+=performance.now()-r);return}if(p&&s.length===0){m&&(f.current.rangeChangedCalls+=1,f.current.rangeChangedMs+=performance.now()-r);return}let u=s.length>=30;if(o>=s.length-1&&u&&!ke.current){ke.current=!0;let i=s.length;U(i,50)}m&&(f.current.rangeChangedCalls+=1,f.current.rangeChangedMs+=performance.now()-r)},[s.length,p,U,m]);Me(()=>{p||(ke.current=!1)},[p]),Me(()=>{s.length===0&&nt(o=>o+1)},[s.length]);let be=ee(s.length);Me(()=>{let o=be.current,r=s.length;if(r>o&&o>0){be.current=r;return}oe.current&&r>0&&r<=o&&oe.current.scrollToIndex({index:0,align:"start",behavior:"auto"}),be.current=r},[s]);let y=De(()=>{let o={},r=[];if(x.forEach(e=>{e.group?(o[e.group]||(o[e.group]=[]),o[e.group].push(e)):r.push(e)}),!(Object.keys(o).length>0))return d(qe,{children:x.map(e=>d(Ne,{align:e.align||"left",style:{width:e.width,minWidth:e.width,...e.style,fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e.sortable?d("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:Ee(pe,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>h(String(e.id)),children:[e.text,d(tt,{active:R===e.id,direction:R===e.id?q:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:R===e.id?1:0,transition:"opacity 0.2s ease","& .MuiTableSortLabel-icon":{position:"relative",marginLeft:0,marginRight:0,opacity:1,transition:"color 0.2s ease"},"& .MuiTableSortLabel-iconDirectionAsc":{transform:"rotate(180deg)"},"& .MuiTableSortLabel-iconDirectionDesc":{transform:"rotate(0deg)"}}})]})}):e.text},String(e.id)))});let T=[...r.map(e=>d(Ne,{rowSpan:2,align:e.align||"left",style:{width:e.width,minWidth:e.width,...e.style,fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e.sortable&&A?d("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:Ee(pe,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>h(String(e.id)),children:[e.text,d(tt,{active:R===e.id,direction:R===e.id?q:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:R===e.id?1:0,transition:"opacity 0.2s ease","&:hover":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}},"& .MuiTableSortLabel-icon":{position:"relative",marginLeft:0,marginRight:0,opacity:1,transition:"color 0.2s ease"},"& .MuiTableSortLabel-iconDirectionAsc":{transform:"rotate(180deg)"},"& .MuiTableSortLabel-iconDirectionDesc":{transform:"rotate(0deg)"}}})]})}):e.text},String(e.id))),...Object.entries(o).map(([e,B])=>d(Ne,{align:"center",colSpan:B.length,style:{fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e},e))],i=[...Object.values(o).flat().map(e=>d(Ne,{align:e.align||"left",style:{width:e.width,minWidth:e.width,...e.style,fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e.sortable&&A?d("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:Ee(pe,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>h(String(e.id)),children:[e.text,d(tt,{active:R===e.id,direction:R===e.id?q:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:R===e.id?1:0,transition:"opacity 0.2s ease","&:hover":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}},"& .MuiTableSortLabel-icon":{position:"relative",marginLeft:0,marginRight:0,opacity:1,transition:"color 0.2s ease"},"& .MuiTableSortLabel-iconDirectionAsc":{transform:"rotate(0deg)"},"& .MuiTableSortLabel-iconDirectionDesc":{transform:"rotate(180deg)"}}})]})}):e.text},String(e.id)))];return Ee(We,{children:[d(qe,{children:T}),d(qe,{children:i})]})},[x,R,q,h,A,E]),H=De((o,r)=>{let u=m?performance.now():0;if(!r){if(m){f.current.rowContentCalls+=1;let i=performance.now()-u;f.current.rowContentMs+=i,f.current.rowContentMaxMs=Math.max(f.current.rowContentMaxMs,i)}return null}let T=x.map(i=>{let e=m?performance.now():0,B=i.render?i.render(r,o):String(r[i.id]||"");if(m){let g=performance.now()-e;f.current.cellRenderCalls+=1,f.current.cellRenderMs+=g,f.current.cellRenderMaxMs=Math.max(f.current.cellRenderMaxMs,g)}return d(Ne,{align:i.align||"left",style:{width:i.width,minWidth:i.width,...i.style,padding:"8px 16px"},children:B},String(i.id))});if(m){f.current.rowContentCalls+=1;let i=performance.now()-u;f.current.rowContentMs+=i,f.current.rowContentMaxMs=Math.max(f.current.rowContentMaxMs,i)}return d(We,{children:T})},[x,m]),He=Qe(()=>({Scroller:Fe,Table:o=>d(Dt,{...o,sx:{borderCollapse:"separate",tableLayout:"fixed",marginRight:"16px"}}),TableHead:Je((o,r)=>d(Ht,{...o,ref:r,sx:{userSelect:"none","& tr":{height:E,"& th":{padding:"16px",position:"sticky",top:0,zIndex:2,fontWeight:"bold"}}}})),TableRow:o=>{let{item:r,selected:u,"aria-selected":T,className:i,...e}=o,B=e["data-index"]??0,g=B%2===1,b=r&&k?k(r,B):B,Q=D!=null&&b===D,xe=Q&&M?typeof M=="function"?M(r,B):M:void 0,ue=String(i??"").split(/\s+/).filter(G=>G!=="Mui-selected"&&G!=="Mui-focusVisible").join(" ");return d(qe,{...e,className:ue||void 0,selected:Q,onMouseDown:G=>{X.current=!1,N.current={x:G.clientX,y:G.clientY}},onClick:()=>{!X.current&&!ge.current&&r&&v&&v(r,B),X.current=!1},sx:[{userSelect:"none",height:L,backgroundColor:g&&Be?Be:"transparent","& td":{padding:"8px 16px",borderBottom:K?"1px solid rgba(224, 224, 224, 1)":"none"},"& th":{padding:"8px 16px",borderBottom:"none"},"&:hover":v&&!Q?{backgroundColor:G=>{let Ke=G.palette.mode==="dark",Ve=se??"#000000",ye=$??.06;if(!se)return Ke?`rgba(255, 255, 255, ${ye})`:`rgba(0, 0, 0, ${ye})`;let de=Ve.replace("#","").trim();if(de.length!==6)return Ve;let ve=parseInt(de.substring(0,2),16),t=parseInt(de.substring(2,4),16),n=parseInt(de.substring(4,6),16);return`rgba(${ve}, ${t}, ${n}, ${ye})`}}:void 0,cursor:v?"pointer":void 0},xe]})},TableBody:Je((o,r)=>d(Et,{...o,ref:r}))}),[v,k,D,M,L,Be,K,E,se,$,Fe]),_=Ee(pe,{sx:{position:"relative",height:"100%",width:"100%","& .MuiTableHead-root":{backgroundColor:o=>o.palette.mode==="dark"?"#1e1e1e !important":"#ffffff !important"}},children:[d($t,{ref:oe,data:s,totalCount:U?s.length+1:s.length,defaultItemHeight:Te,fixedItemHeight:Te,fixedHeaderContent:y,itemContent:H,endReached:Y,style:{height:"100%"},increaseViewportBy:{top:Re,bottom:ne},overscan:Pe,followOutput:!1,components:He},Se),s.length===0&&!p&&d(pe,{sx:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2},children:typeof te=="string"?Ee(We,{children:[d(pe,{sx:{width:48,height:48,display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",backgroundColor:"#f5f5f5",color:"#999"},children:"\u{1F4C4}"}),d(Ot,{variant:"body1",sx:{color:"text.secondary"},children:te})]}):te}),he&&d(We,{children:re?d(re,{visible:p,onComplete:Ae}):d(at,{visible:p,onComplete:Ae,size:40,sx:{top:`${x.some(o=>o.group)?E*2:E}px`},background:{show:s.length===0,opacity:.8}})})]});return le?d(It,{className:"grow",elevation:1,sx:{padding:0,paddingLeft:a,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:_}):d(pe,{className:"grow",style:{padding:0,paddingLeft:a,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:_})}var Ft=Lt(Pt);export{Ft as VirtualDataTable};
|
|
22
22
|
/**
|
|
23
23
|
* Virtual Data Table - A high-performance virtual data table component for React
|
|
24
24
|
*
|