@ehfuse/mui-virtual-data-table 1.1.19 → 1.1.21

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.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var Ge=Object.defineProperty;var rt=Object.getOwnPropertyDescriptor;var nt=Object.getOwnPropertyNames;var ot=Object.prototype.hasOwnProperty;var it=(s,f)=>{for(var g in f)Ge(s,g,{get:f[g],enumerable:!0})},lt=(s,f,g,y)=>{if(f&&typeof f=="object"||typeof f=="function")for(let v of nt(f))!ot.call(s,v)&&v!==g&&Ge(s,v,{get:()=>f[v],enumerable:!(y=rt(f,v))||y.enumerable});return s};var at=s=>lt(Ge({},"__esModule",{value:!0}),s);var xt={};it(xt,{VirtualDataTable:()=>et});module.exports=at(xt);var u=require("react"),p=require("@mui/material"),Qe=require("react-virtuoso");var Ve=require("react/jsx-runtime"),ve=require("react"),We=require("@mui/material"),Oe=function(){return Oe=Object.assign||function(f){for(var g,y=1,v=arguments.length;y<v;y++){g=arguments[y];for(var I in g)Object.prototype.hasOwnProperty.call(g,I)&&(f[I]=g[I])}return f},Oe.apply(this,arguments)};function Ke(s){var f=s.visible,g=s.onComplete,y=s.fadeoutDuration,v=y===void 0?200:y,I=s.exitDelay,S=I===void 0?0:I,L=s.size,O=L===void 0?40:L,Y=s.className,K=s.style,j=s.sx,U=s.indicator,$=s.background,_=$===void 0?{show:!0,color:"255, 255, 255",opacity:.9}:$,se=(0,ve.useRef)(void 0),d=(0,ve.useRef)(null),G=(0,ve.useState)(f),ce=G[0],ue=G[1],V=_.show,X=V===void 0?!0:V,k=_.color,F=k===void 0?"255, 255, 255":k,te=_.opacity,re=te===void 0?.9:te;if((0,ve.useEffect)(function(){var ne=se.current;if(ne===!0&&f===!1&&d.current){var oe=d.current;oe.style.opacity="0",setTimeout(function(){ue(!1),g?.()},v+S)}else f===!0&&(ue(!0),d.current&&(d.current.style.opacity="1"));se.current=f},[f,g,v,S]),!ce)return null;var we=function(){return typeof U=="string"?(0,Ve.jsx)("img",{src:U,alt:"Loading",style:{width:O,height:O}}):U||(0,Ve.jsx)(We.CircularProgress,{size:O})},de=function(){return X?F.startsWith("rgba")?{backgroundColor:F}:/^\d+,\s*\d+,\s*\d+$/.test(F)?{backgroundColor:"rgba(".concat(F,", ").concat(re,")")}:re!==1?{backgroundColor:F,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:F,opacity:re,zIndex:-1}}:{backgroundColor:F}:{backgroundColor:"transparent"}};return(0,Ve.jsx)(We.Box,{ref:d,className:Y,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:f?1:0,transition:"opacity ".concat(v,"ms ease-out")},de()),j),children:we()})}var n=require("react"),ee=require("react/jsx-runtime"),st=["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"],Ue=(s,f)=>{let g=s.tagName.toLowerCase(),y=["text","password","email","number","search","tel","url","checkbox","radio"];if(g==="input"){let v=s.type;return y.includes(v)}if(["textarea","select","button"].includes(g)||["svg","path","circle","rect","line","polygon","polyline"].includes(g)||s.getAttribute("contenteditable")==="true")return!0;if(f?.excludeSelectors){for(let v of f.excludeSelectors)if(s.matches(v))return!0}return ct(s,f)},ct=(s,f)=>{let g=[...st,...f?.excludeClasses||[]],y=s,v=0,I=5;for(;y&&v<=I;){if(g.some(S=>y.classList.contains(S)))return!0;if(y.classList.contains("MuiDialogContent-root"))break;y=y.parentElement,v++}return!1},ut={},dt={},pt={},ft={},mt={},ht=(0,n.forwardRef)(({className:s="",style:f={},containerStyle:g={},contentStyle:y={},children:v,onScroll:I,thumb:S=ut,track:L=dt,arrows:O=pt,dragScroll:Y=ft,autoHide:K=mt,showScrollbar:j=!0,detectInnerScroll:U=!1},$)=>{let _=(0,n.useRef)({});(0,n.useEffect)(()=>{_.current={children:v,onScroll:I,showScrollbar:j,thumb:S,track:L,arrows:O,dragScroll:Y,autoHide:K}});let se=(0,n.useRef)(null),d=(0,n.useRef)(null),G=(0,n.useRef)(null),ce=(0,n.useRef)(null),ue=(0,n.useRef)(null),V=(0,n.useRef)(null),[X,k]=(0,n.useState)(!1),[F,te]=(0,n.useState)(!1),[re,we]=(0,n.useState)(!1),[de,ne]=(0,n.useState)({y:0,scrollTop:0}),[oe,qe]=(0,n.useState)(0),[je,$e]=(0,n.useState)(0),[Se,Fe]=(0,n.useState)(!1),[he,ke]=(0,n.useState)(!1),[Le,T]=(0,n.useState)({x:0,y:0,scrollTop:0,scrollLeft:0}),[x,Ne]=(0,n.useState)(null),[ge,pe]=(0,n.useState)(null),[Xe,Pe]=(0,n.useState)(!1),be=(0,n.useRef)(null),[Ae,De]=(0,n.useState)(!1),xe=(0,n.useRef)(null),Me=(0,n.useRef)(null),Z=(0,n.useRef)(null),N=(0,n.useMemo)(()=>{let r=S.color??"#606060";return{width:S.width??8,minHeight:S.minHeight??50,radius:S.radius??(S.width??8)/2,color:r,opacity:S.opacity??.6,hoverColor:S.hoverColor??r,hoverOpacity:S.hoverOpacity??1}},[S]),b=(0,n.useMemo)(()=>({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]),P=(0,n.useMemo)(()=>{let r=O.color??"#808080";return{visible:O.visible??!1,step:O.step??50,color:r,opacity:O.opacity??.6,hoverColor:O.hoverColor??r,hoverOpacity:O.hoverOpacity??1}},[O]),fe=(0,n.useMemo)(()=>({enabled:Y.enabled??!0,excludeClasses:Y.excludeClasses??[],excludeSelectors:Y.excludeSelectors??[]}),[Y]),w=(0,n.useMemo)(()=>({enabled:K.enabled??!0,delay:K.delay??1500,delayOnWheel:K.delayOnWheel??700}),[K]),D=N.width,ze=b.width,Ee=N.minHeight,A=P.visible,Ce=P.step,ie=(0,n.useCallback)(()=>{if(!d.current)return;let r=document.activeElement;r&&d.current.contains(r)&&r!==d.current||d.current.focus()},[]);(0,n.useImperativeHandle)($,()=>({getScrollContainer:()=>d.current,scrollTo:r=>{d.current&&d.current.scrollTo(r)},get scrollTop(){return d.current?.scrollTop||0},get scrollHeight(){return d.current?.scrollHeight||0},get clientHeight(){return d.current?.clientHeight||0}}),[]);let E=(0,n.useCallback)(()=>{if(V.current){let i=V.current;if(document.contains(i)&&i.scrollHeight>i.clientHeight+2)return i;V.current=null}if(!d.current)return null;if(G.current&&G.current.scrollHeight>d.current.clientHeight+2)return V.current=d.current,d.current;if(!U)return null;let r=d.current.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]');for(let i of r){let a=i;if(a!==d.current&&a.classList.contains("overlay-scrollbar-container"))continue;let m=a.parentElement,M=!1;for(;m&&m!==d.current;){if(m.classList.contains("overlay-scrollbar-container")&&m!==d.current){M=!0;break}m=m.parentElement}if(!M&&a.scrollHeight>a.clientHeight+2)return V.current=a,a}return null},[]),le=(0,n.useCallback)(()=>E()!==null,[E]),t=(0,n.useCallback)(()=>{xe.current&&(clearTimeout(xe.current),xe.current=null)},[]),o=(0,n.useCallback)(()=>{Me.current&&(clearTimeout(Me.current),Me.current=null)},[]),R=(0,n.useCallback)(()=>{Z.current&&(clearTimeout(Z.current),Z.current=null)},[]),h=(0,n.useCallback)(r=>{w.enabled&&(t(),xe.current=setTimeout(()=>{k(!1),xe.current=null},r))},[t,w.enabled]),l=(0,n.useCallback)(()=>{let r=E();if(!r){k(!1),Fe(!1),t();return}if(Fe(!0),!ce.current)return;w.enabled||(k(!0),t());let i=r.clientHeight,a=r.scrollHeight,m=r.scrollTop,M=0;if(se.current){let Be=window.getComputedStyle(se.current),_e=parseFloat(Be.paddingTop)||0,tt=parseFloat(Be.paddingBottom)||0;M=_e+tt}let C=A?D*2+b.margin*4:b.margin*2,W=i-C+M,q=i/a,ye=Math.max(W*q,Ee),Ie=a-i,J=W-ye,Ye=Ie>0?m/Ie*J:0;qe(ye),$e(Ye)},[E,t,A,D,Ee,w.enabled]),e=(0,n.useCallback)(r=>{r.preventDefault(),r.stopPropagation();let i=E();i&&(te(!0),ne({y:r.clientY,scrollTop:i.scrollTop}),t(),k(!0),ie())},[E,t,ie]),B=(0,n.useCallback)(r=>{if(!F)return;let i=E();if(!i)return;let a=i.clientHeight,m=i.scrollHeight-a,M=r.clientY-de.y,C=a-oe,W=M/C*m,q=Math.max(0,Math.min(m,de.scrollTop+W));i.scrollTop=q,l()},[F,de,oe,l,E]),z=(0,n.useCallback)(()=>{te(!1),le()&&h(w.delay)},[le,h,w.delay]),Re=(0,n.useCallback)(r=>{if(!ce.current)return;let i=ce.current.getBoundingClientRect(),a=r.clientY-i.top,m=E();if(!m)return;let M=m.clientHeight,C=m.scrollHeight,W=a/M*(C-M);m.scrollTop=Math.max(0,Math.min(C-M,W)),l(),k(!0),h(w.delay),ie()},[l,h,w.delay,E,ie]),Q=(0,n.useCallback)(r=>{if(r.preventDefault(),r.stopPropagation(),!d.current)return;let i=Math.max(0,d.current.scrollTop-Ce);d.current.scrollTop=i,l(),k(!0),h(w.delay),ie()},[l,h,Ce,w.delay,ie]),He=(0,n.useCallback)(r=>{if(r.preventDefault(),r.stopPropagation(),!d.current||!G.current)return;let i=d.current,a=G.current.scrollHeight-i.clientHeight,m=Math.min(a,i.scrollTop+Ce);i.scrollTop=m,l(),k(!0),h(w.delay),ie()},[l,h,Ce,w.delay,ie]),Te=(0,n.useCallback)(r=>{if(!fe.enabled)return;let i=r.target;if(Ue(i,fe)||r.button!==0)return;let a=E();a&&(a.scrollHeight<=a.clientHeight||(r.preventDefault(),ke(!0),T({x:r.clientX,y:r.clientY,scrollTop:a.scrollTop,scrollLeft:a.scrollLeft||0}),t()))},[fe,Ue,E,t]),H=(0,n.useCallback)(r=>{if(!he)return;let i=E();if(!i)return;let a=Le.x-r.clientX,m=Le.y-r.clientY;if(Math.abs(m)<3&&Math.abs(a)<3)return;k(!0);let M=Math.max(0,Math.min(i.scrollHeight-i.clientHeight,Le.scrollTop+m));i.scrollTop=M,l()},[he,Le,E,l]),me=(0,n.useCallback)(()=>{ke(!1),le()&&h(w.delay)},[le,h,w.delay]);(0,n.useEffect)(()=>{let r=C=>{l(),t(),k(!0);let W=Ae?w.delayOnWheel:w.delay;h(W),I&&I(C)},i=()=>{De(!0),be.current&&clearTimeout(be.current),be.current=setTimeout(()=>{De(!1)},300),t(),R(),Z.current=setTimeout(()=>{k(!0),Z.current=null},50)},a=[],m=E();m&&a.push(m);let M=d.current;return M&&!m&&(a.push(M),M.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]').forEach(C=>{let W=C;if(W!==M&&W.classList.contains("overlay-scrollbar-container"))return;let q=W.parentElement;for(;q&&q!==M;){if(q.classList.contains("overlay-scrollbar-container")&&q!==M)return;q=q.parentElement}a.push(W)})),a.forEach(C=>{C.addEventListener("scroll",r,{passive:!0}),C.addEventListener("wheel",i,{passive:!0})}),()=>{a.forEach(C=>{C.removeEventListener("scroll",r),C.removeEventListener("wheel",i)}),be.current&&clearTimeout(be.current),Z.current&&clearTimeout(Z.current)}},[E,l,I,t,h,w,Ae]),(0,n.useEffect)(()=>{let r=a=>{let m=E();if(!m)return;let{key:M}=a,{scrollTop:C,scrollHeight:W,clientHeight:q}=m,ye=W-q,Ie=50,J=null;switch(M){case"ArrowUp":a.preventDefault(),J=Math.max(0,C-Ie);break;case"ArrowDown":a.preventDefault(),J=Math.min(ye,C+Ie);break;case"PageUp":a.preventDefault(),J=Math.max(0,C-q);break;case"PageDown":a.preventDefault(),J=Math.min(ye,C+q);break;case"Home":a.preventDefault(),J=0;break;case"End":a.preventDefault(),J=ye;break;default:return}if(J!==null){let Ye=J/ye,Be=A?D*2+b.margin*4:b.margin*2,_e=(q-Be-oe)*Ye;$e(_e),m.scrollTop=J,t(),k(!0),h(w.delay)}},i=d.current;if(i)return i.addEventListener("keydown",r),()=>{i.removeEventListener("keydown",r)}},[E,A,D,b.margin,oe,t,h,w.delay]),(0,n.useEffect)(()=>{if(he)return document.addEventListener("mousemove",H),document.addEventListener("mouseup",me),()=>{document.removeEventListener("mousemove",H),document.removeEventListener("mouseup",me)}},[he,H,me]),(0,n.useEffect)(()=>{if(F)return document.addEventListener("mousemove",B),document.addEventListener("mouseup",z),()=>{document.removeEventListener("mousemove",B),document.removeEventListener("mouseup",z)}},[F,B,z]),(0,n.useEffect)(()=>{l();let r=setTimeout(()=>{l()},100);return()=>clearTimeout(r)},[l]),(0,n.useLayoutEffect)(()=>{Pe(!0),l(),!w.enabled&&le()&&k(!0)},[le,l,w.enabled]),(0,n.useEffect)(()=>{let r=new ResizeObserver(()=>{l()}),i=[];return d.current&&i.push(d.current),G.current&&i.push(G.current),V.current&&document.contains(V.current)&&i.push(V.current),i.forEach(a=>{r.observe(a)}),()=>r.disconnect()},[l]),(0,n.useEffect)(()=>{if(!d.current)return;let r=new MutationObserver(()=>{V.current=null,l()});return r.observe(d.current,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}),()=>r.disconnect()},[l]);let ae=Math.max(ze,D);return(0,n.useEffect)(()=>{let r="overlay-scrollbar-webkit-hide",i=document.getElementById(r);i&&i.remove();let a=document.createElement("style");return a.id=r,a.textContent=`
1
+ "use strict";var Ge=Object.defineProperty;var rt=Object.getOwnPropertyDescriptor;var nt=Object.getOwnPropertyNames;var ot=Object.prototype.hasOwnProperty;var it=(s,f)=>{for(var m in f)Ge(s,m,{get:f[m],enumerable:!0})},lt=(s,f,m,v)=>{if(f&&typeof f=="object"||typeof f=="function")for(let w of nt(f))!ot.call(s,w)&&w!==m&&Ge(s,w,{get:()=>f[w],enumerable:!(v=rt(f,w))||v.enumerable});return s};var at=s=>lt(Ge({},"__esModule",{value:!0}),s);var xt={};it(xt,{VirtualDataTable:()=>et});module.exports=at(xt);var u=require("react"),p=require("@mui/material"),Qe=require("react-virtuoso");var Ve=require("react/jsx-runtime"),ve=require("react"),We=require("@mui/material"),Oe=function(){return Oe=Object.assign||function(f){for(var m,v=1,w=arguments.length;v<w;v++){m=arguments[v];for(var I in m)Object.prototype.hasOwnProperty.call(m,I)&&(f[I]=m[I])}return f},Oe.apply(this,arguments)};function Ke(s){var f=s.visible,m=s.onComplete,v=s.fadeoutDuration,w=v===void 0?200:v,I=s.exitDelay,k=I===void 0?0:I,D=s.size,O=D===void 0?40:D,Y=s.className,K=s.style,j=s.sx,U=s.indicator,$=s.background,_=$===void 0?{show:!0,color:"255, 255, 255",opacity:.9}:$,se=(0,ve.useRef)(void 0),d=(0,ve.useRef)(null),G=(0,ve.useState)(f),ce=G[0],ue=G[1],V=_.show,X=V===void 0?!0:V,L=_.color,F=L===void 0?"255, 255, 255":L,te=_.opacity,re=te===void 0?.9:te;if((0,ve.useEffect)(function(){var ne=se.current;if(ne===!0&&f===!1&&d.current){var oe=d.current;oe.style.opacity="0",setTimeout(function(){ue(!1),m?.()},w+k)}else f===!0&&(ue(!0),d.current&&(d.current.style.opacity="1"));se.current=f},[f,m,w,k]),!ce)return null;var we=function(){return typeof U=="string"?(0,Ve.jsx)("img",{src:U,alt:"Loading",style:{width:O,height:O}}):U||(0,Ve.jsx)(We.CircularProgress,{size:O})},de=function(){return X?F.startsWith("rgba")?{backgroundColor:F}:/^\d+,\s*\d+,\s*\d+$/.test(F)?{backgroundColor:"rgba(".concat(F,", ").concat(re,")")}:re!==1?{backgroundColor:F,"&::before":{content:'""',position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:F,opacity:re,zIndex:-1}}:{backgroundColor:F}:{backgroundColor:"transparent"}};return(0,Ve.jsx)(We.Box,{ref:d,className:Y,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:f?1:0,transition:"opacity ".concat(w,"ms ease-out")},de()),j),children:we()})}var o=require("react"),ee=require("react/jsx-runtime"),st=["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"],Ue=(s,f)=>{let m=s.tagName.toLowerCase(),v=["text","password","email","number","search","tel","url","checkbox","radio"];if(m==="input"){let w=s.type;return v.includes(w)}if(["textarea","select","button"].includes(m)||["svg","path","circle","rect","line","polygon","polyline"].includes(m)||s.getAttribute("contenteditable")==="true")return!0;if(f?.excludeSelectors){for(let w of f.excludeSelectors)if(s.matches(w))return!0}return ct(s,f)},ct=(s,f)=>{let m=[...st,...f?.excludeClasses||[]],v=s,w=0,I=5;for(;v&&w<=I;){if(m.some(k=>v.classList.contains(k)))return!0;if(v.classList.contains("MuiDialogContent-root"))break;v=v.parentElement,w++}return!1},ut={},dt={},pt={},ft={},ht={},mt=(0,o.forwardRef)(({className:s="",style:f={},containerStyle:m={},contentStyle:v={},children:w,onScroll:I,thumb:k=ut,track:D=dt,arrows:O=pt,dragScroll:Y=ft,autoHide:K=ht,showScrollbar:j=!0,detectInnerScroll:U=!1},$)=>{let _=(0,o.useRef)({});(0,o.useEffect)(()=>{_.current={children:w,onScroll:I,showScrollbar:j,thumb:k,track:D,arrows:O,dragScroll:Y,autoHide:K}});let se=(0,o.useRef)(null),d=(0,o.useRef)(null),G=(0,o.useRef)(null),ce=(0,o.useRef)(null),ue=(0,o.useRef)(null),V=(0,o.useRef)(null),[X,L]=(0,o.useState)(!1),[F,te]=(0,o.useState)(!1),[re,we]=(0,o.useState)(!1),[de,ne]=(0,o.useState)({y:0,scrollTop:0}),[oe,qe]=(0,o.useState)(0),[je,$e]=(0,o.useState)(0),[Se,Fe]=(0,o.useState)(!1),[me,ke]=(0,o.useState)(!1),[Le,S]=(0,o.useState)({x:0,y:0,scrollTop:0,scrollLeft:0}),[y,Ne]=(0,o.useState)(null),[ge,pe]=(0,o.useState)(null),[Xe,Pe]=(0,o.useState)(!1),be=(0,o.useRef)(null),[Ae,De]=(0,o.useState)(!1),xe=(0,o.useRef)(null),Me=(0,o.useRef)(null),Z=(0,o.useRef)(null),N=(0,o.useMemo)(()=>{let r=k.color??"#606060";return{width:k.width??8,minHeight:k.minHeight??50,radius:k.radius??(k.width??8)/2,color:r,opacity:k.opacity??.6,hoverColor:k.hoverColor??r,hoverOpacity:k.hoverOpacity??1}},[k]),x=(0,o.useMemo)(()=>({width:D.width??16,color:D.color??"rgba(128, 128, 128, 0.1)",visible:D.visible??!0,alignment:D.alignment??"center",radius:D.radius??N.radius??4,margin:D.margin??4}),[D,N.radius]),P=(0,o.useMemo)(()=>{let r=O.color??"#808080";return{visible:O.visible??!1,step:O.step??50,color:r,opacity:O.opacity??.6,hoverColor:O.hoverColor??r,hoverOpacity:O.hoverOpacity??1}},[O]),fe=(0,o.useMemo)(()=>({enabled:Y.enabled??!0,excludeClasses:Y.excludeClasses??[],excludeSelectors:Y.excludeSelectors??[]}),[Y]),M=(0,o.useMemo)(()=>({enabled:K.enabled??!0,delay:K.delay??1500,delayOnWheel:K.delayOnWheel??700}),[K]),E=N.width,ze=x.width,Ee=N.minHeight,A=P.visible,Ce=P.step,ie=(0,o.useCallback)(()=>{if(!d.current)return;let r=document.activeElement;r&&d.current.contains(r)&&r!==d.current||d.current.focus()},[]);(0,o.useImperativeHandle)($,()=>({getScrollContainer:()=>d.current,scrollTo:r=>{d.current&&d.current.scrollTo(r)},get scrollTop(){return d.current?.scrollTop||0},get scrollHeight(){return d.current?.scrollHeight||0},get clientHeight(){return d.current?.clientHeight||0}}),[]);let R=(0,o.useCallback)(()=>{if(V.current){let i=V.current;if(document.contains(i)&&i.scrollHeight>i.clientHeight+2)return i;V.current=null}if(!d.current)return null;if(G.current&&G.current.scrollHeight>d.current.clientHeight+2)return V.current=d.current,d.current;if(!U)return null;let r=d.current.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]');for(let i of r){let a=i;if(a!==d.current&&a.classList.contains("overlay-scrollbar-container"))continue;let g=a.parentElement,C=!1;for(;g&&g!==d.current;){if(g.classList.contains("overlay-scrollbar-container")&&g!==d.current){C=!0;break}g=g.parentElement}if(!C&&a.scrollHeight>a.clientHeight+2)return V.current=a,a}return null},[]),le=(0,o.useCallback)(()=>R()!==null,[R]),n=(0,o.useCallback)(()=>{xe.current&&(clearTimeout(xe.current),xe.current=null)},[]),t=(0,o.useCallback)(()=>{Me.current&&(clearTimeout(Me.current),Me.current=null)},[]),b=(0,o.useCallback)(()=>{Z.current&&(clearTimeout(Z.current),Z.current=null)},[]),h=(0,o.useCallback)(r=>{M.enabled&&(n(),xe.current=setTimeout(()=>{L(!1),xe.current=null},r))},[n,M.enabled]),l=(0,o.useCallback)(()=>{let r=R();if(!r){L(!1),Fe(!1),n();return}if(Fe(!0),!ce.current)return;M.enabled||(L(!0),n());let i=r.clientHeight,a=r.scrollHeight,g=r.scrollTop,C=0;if(se.current){let Be=window.getComputedStyle(se.current),_e=parseFloat(Be.paddingTop)||0,tt=parseFloat(Be.paddingBottom)||0;C=_e+tt}let T=A?E*2+x.margin*4:x.margin*2,W=i-T+C,q=i/a,ye=Math.max(W*q,Ee),Ie=a-i,J=W-ye,Ye=Ie>0?g/Ie*J:0;qe(ye),$e(Ye)},[R,n,A,E,Ee,M.enabled]),e=(0,o.useCallback)(r=>{r.preventDefault(),r.stopPropagation();let i=R();i&&(te(!0),ne({y:r.clientY,scrollTop:i.scrollTop}),n(),L(!0),ie())},[R,n,ie]),B=(0,o.useCallback)(r=>{if(!F)return;let i=R();if(!i)return;let a=i.clientHeight,g=i.scrollHeight-a,C=r.clientY-de.y,T=a-oe,W=C/T*g,q=Math.max(0,Math.min(g,de.scrollTop+W));i.scrollTop=q,l()},[F,de,oe,l,R]),z=(0,o.useCallback)(()=>{te(!1),le()&&h(M.delay)},[le,h,M.delay]),Re=(0,o.useCallback)(r=>{if(!ce.current)return;let i=ce.current.getBoundingClientRect(),a=r.clientY-i.top,g=R();if(!g)return;let C=g.clientHeight,T=g.scrollHeight,W=a/C*(T-C);g.scrollTop=Math.max(0,Math.min(T-C,W)),l(),L(!0),h(M.delay),ie()},[l,h,M.delay,R,ie]),Q=(0,o.useCallback)(r=>{if(r.preventDefault(),r.stopPropagation(),!d.current)return;let i=Math.max(0,d.current.scrollTop-Ce);d.current.scrollTop=i,l(),L(!0),h(M.delay),ie()},[l,h,Ce,M.delay,ie]),He=(0,o.useCallback)(r=>{if(r.preventDefault(),r.stopPropagation(),!d.current||!G.current)return;let i=d.current,a=G.current.scrollHeight-i.clientHeight,g=Math.min(a,i.scrollTop+Ce);i.scrollTop=g,l(),L(!0),h(M.delay),ie()},[l,h,Ce,M.delay,ie]),Te=(0,o.useCallback)(r=>{if(!fe.enabled)return;let i=r.target;if(Ue(i,fe)||r.button!==0)return;let a=R();a&&(a.scrollHeight<=a.clientHeight||(r.preventDefault(),ke(!0),S({x:r.clientX,y:r.clientY,scrollTop:a.scrollTop,scrollLeft:a.scrollLeft||0}),n()))},[fe,Ue,R,n]),H=(0,o.useCallback)(r=>{if(!me)return;let i=R();if(!i)return;let a=Le.x-r.clientX,g=Le.y-r.clientY;if(Math.abs(g)<3&&Math.abs(a)<3)return;L(!0);let C=Math.max(0,Math.min(i.scrollHeight-i.clientHeight,Le.scrollTop+g));i.scrollTop=C,l()},[me,Le,R,l]),he=(0,o.useCallback)(()=>{ke(!1),le()&&h(M.delay)},[le,h,M.delay]);(0,o.useEffect)(()=>{let r=T=>{l(),n(),L(!0);let W=Ae?M.delayOnWheel:M.delay;h(W),I&&I(T)},i=()=>{De(!0),be.current&&clearTimeout(be.current),be.current=setTimeout(()=>{De(!1)},300),n(),b(),Z.current=setTimeout(()=>{L(!0),Z.current=null},50)},a=[],g=R();g&&a.push(g);let C=d.current;return C&&!g&&(a.push(C),C.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]').forEach(T=>{let W=T;if(W!==C&&W.classList.contains("overlay-scrollbar-container"))return;let q=W.parentElement;for(;q&&q!==C;){if(q.classList.contains("overlay-scrollbar-container")&&q!==C)return;q=q.parentElement}a.push(W)})),a.forEach(T=>{T.addEventListener("scroll",r,{passive:!0}),T.addEventListener("wheel",i,{passive:!0})}),()=>{a.forEach(T=>{T.removeEventListener("scroll",r),T.removeEventListener("wheel",i)}),be.current&&clearTimeout(be.current),Z.current&&clearTimeout(Z.current)}},[R,l,I,n,h,M,Ae]),(0,o.useEffect)(()=>{let r=a=>{let g=R();if(!g)return;let{key:C}=a,{scrollTop:T,scrollHeight:W,clientHeight:q}=g,ye=W-q,Ie=50,J=null;switch(C){case"ArrowUp":a.preventDefault(),J=Math.max(0,T-Ie);break;case"ArrowDown":a.preventDefault(),J=Math.min(ye,T+Ie);break;case"PageUp":a.preventDefault(),J=Math.max(0,T-q);break;case"PageDown":a.preventDefault(),J=Math.min(ye,T+q);break;case"Home":a.preventDefault(),J=0;break;case"End":a.preventDefault(),J=ye;break;default:return}if(J!==null){let Ye=J/ye,Be=A?E*2+x.margin*4:x.margin*2,_e=(q-Be-oe)*Ye;$e(_e),g.scrollTop=J,n(),L(!0),h(M.delay)}},i=d.current;if(i)return i.addEventListener("keydown",r),()=>{i.removeEventListener("keydown",r)}},[R,A,E,x.margin,oe,n,h,M.delay]),(0,o.useEffect)(()=>{if(me)return document.addEventListener("mousemove",H),document.addEventListener("mouseup",he),()=>{document.removeEventListener("mousemove",H),document.removeEventListener("mouseup",he)}},[me,H,he]),(0,o.useEffect)(()=>{if(F)return document.addEventListener("mousemove",B),document.addEventListener("mouseup",z),()=>{document.removeEventListener("mousemove",B),document.removeEventListener("mouseup",z)}},[F,B,z]),(0,o.useEffect)(()=>{l();let r=setTimeout(()=>{l()},100);return()=>clearTimeout(r)},[l]),(0,o.useLayoutEffect)(()=>{Pe(!0),l(),!M.enabled&&le()&&L(!0)},[le,l,M.enabled]),(0,o.useEffect)(()=>{let r=new ResizeObserver(()=>{l()}),i=[];return d.current&&i.push(d.current),G.current&&i.push(G.current),V.current&&document.contains(V.current)&&i.push(V.current),i.forEach(a=>{r.observe(a)}),()=>r.disconnect()},[l]),(0,o.useEffect)(()=>{if(!d.current)return;let r=new MutationObserver(()=>{V.current=null,l()});return r.observe(d.current,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}),()=>r.disconnect()},[l]);let ae=Math.max(ze,E);return(0,o.useEffect)(()=>{let r="overlay-scrollbar-webkit-hide",i=document.getElementById(r);i&&i.remove();let a=document.createElement("style");return a.id=r,a.textContent=`
2
2
  .overlay-scrollbar-container::-webkit-scrollbar {
3
3
  display: none !important;
4
4
  width: 0 !important;
@@ -18,7 +18,7 @@
18
18
  outline: 2px solid rgba(0, 123, 255, 0.5);
19
19
  outline-offset: -2px;
20
20
  }
21
- `,document.head.appendChild(a),()=>{let m=document.getElementById(r);m&&m.remove()}},[]),(0,ee.jsxs)("div",{ref:se,className:`overlay-scrollbar-wrapper ${s}`,style:{display:"flex",flexDirection:"column",position:"relative",minHeight:0,height:"100%",flex:"1 1 0%",...f},children:[(0,ee.jsx)("div",{ref:d,className:"overlay-scrollbar-container",tabIndex:-1,onMouseDown:Te,style:{display:"flex",width:"100%",flex:"1 1 auto",minHeight:0,overflow:"auto",scrollbarWidth:"none",msOverflowStyle:"none",outline:"none",userSelect:he?"none":"auto",...g},children:(0,ee.jsx)("div",{ref:G,className:"overlay-scrollbar-content",style:{flex:"1 1 0%",minHeight:0,display:"flex",flexDirection:"column",...y},children:v})}),j&&Se&&(0,ee.jsxs)("div",{ref:ce,className:"overlay-scrollbar-track",onMouseEnter:()=>{t(),Me.current=setTimeout(()=>{k(!0),Me.current=null},100)},onMouseLeave:()=>{o(),F||h(w.delay)},style:{position:"absolute",top:0,right:0,width:`${ae}px`,height:"100%",opacity:X?1:0,transition:"opacity 0.2s ease-in-out",cursor:"pointer",zIndex:1e3,pointerEvents:"auto"},children:[b.visible&&(0,ee.jsx)("div",{className:"overlay-scrollbar-track-background",onClick:r=>{r.preventDefault(),r.stopPropagation(),Re(r)},style:{position:"absolute",top:A?`${N.width+b.margin*2}px`:`${b.margin}px`,right:b.alignment==="right"?"0px":`${(ae-N.width)/2}px`,width:`${N.width}px`,height:A?`calc(100% - ${N.width*2+b.margin*4}px)`:`calc(100% - ${b.margin*2}px)`,backgroundColor:b.color,borderRadius:`${b.radius}px`,cursor:"pointer"}}),(0,ee.jsx)("div",{ref:ue,className:"overlay-scrollbar-thumb",onMouseDown:e,onMouseEnter:()=>we(!0),onMouseLeave:()=>we(!1),style:{position:"absolute",top:`${(A?D+b.margin*2:b.margin)+je}px`,right:b.alignment==="right"?"0px":`${(ae-D)/2}px`,width:`${D}px`,height:`${Math.max(oe,Ee)}px`,backgroundColor:re||F?N.hoverColor:N.color,opacity:re||F?N.hoverOpacity:N.opacity,borderRadius:`${N.radius}px`,cursor:"pointer",transition:"background-color 0.2s ease-in-out, opacity 0.2s ease-in-out"}})]}),j&&Se&&A&&(0,ee.jsx)("div",{className:"overlay-scrollbar-up-arrow",onClick:Q,onMouseEnter:()=>pe("up"),onMouseLeave:()=>pe(null),style:{position:"absolute",top:`${b.margin}px`,right:b.alignment==="right"?"0px":`${(ae-D)/2}px`,width:`${D}px`,height:`${D}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(D*.75,8)}px`,color:ge==="up"?P.hoverColor:P.color,userSelect:"none",zIndex:1001,opacity:X?ge==="up"?P.hoverOpacity:P.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25B2"}),j&&Se&&A&&(0,ee.jsx)("div",{className:"overlay-scrollbar-down-arrow",onClick:He,onMouseEnter:()=>pe("down"),onMouseLeave:()=>pe(null),style:{position:"absolute",bottom:`${b.margin}px`,right:b.alignment==="right"?"0px":`${(ae-D)/2}px`,width:`${D}px`,height:`${D}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(D*.75,8)}px`,color:ge==="down"?P.hoverColor:P.color,userSelect:"none",zIndex:1001,opacity:X?ge==="down"?P.hoverOpacity:P.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25BC"})]})}),Ze=ht;var c=require("react/jsx-runtime"),gt={alignment:"right",margin:0,radius:0},Je=5;function bt({data:s,loading:f=!1,columns:g,onRowClick:y,getRowId:v,selectedRowId:I,selectedRowSx:S,rowHeight:L=50,columnHeight:O=56,striped:Y,rowDivider:K=!0,onSort:j,onLoadMore:U,sortBy:$,sortDirection:_,showPaper:se=!0,paddingX:d="1rem",paddingTop:G=0,paddingBottom:ce=0,rowHoverColor:ue,rowHoverOpacity:V,viewportBuffer:X,overscan:k,scrollbars:F,emptyMessage:te="NO DATA",LoadingComponent:re,showFooter:we,footerHeight:de,footerSx:ne}){let oe=Math.max(L*12,480),qe=Math.max(L*12,480),je=typeof X=="number"?X:X?.top??oe,$e=typeof X=="number"?X:X?.bottom??qe,Se=Math.max(L*8,420),Fe=Math.max(L*10,520),he=typeof k=="number"?k:{main:k?.main??Se,reverse:k?.reverse??Fe},ke=L+(K?1:0),Le=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),[T]=(0,u.useState)(()=>typeof window>"u"?!1:window.localStorage.getItem("vdt-perf-debug")==="1"),x=(0,u.useRef)({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}),Ne=(0,u.useCallback)(t=>{if(!T)return;let o=x.current;if(!(o.wheelEvents>0||o.rangeChangedCalls>0||o.rowContentCalls>0||o.cellRenderCalls>0))return;let h=o.rowContentCalls>0?o.rowContentMs/o.rowContentCalls:0,l=o.cellRenderCalls>0?o.cellRenderMs/o.cellRenderCalls:0;console.log("[VDT perf]",{reason:t,wheel:{events:o.wheelEvents,inputPx:Math.round(o.wheelInputPx),handlerMs:Number(o.wheelHandlerMs.toFixed(2)),rafFlushes:o.wheelRafFlushes,rafMs:Number(o.wheelRafMs.toFixed(2))},rangeChanged:{calls:o.rangeChangedCalls,totalMs:Number(o.rangeChangedMs.toFixed(2))},rowContent:{calls:o.rowContentCalls,totalMs:Number(o.rowContentMs.toFixed(2)),avgMs:Number(h.toFixed(3)),maxMs:Number(o.rowContentMaxMs.toFixed(3))},cellRender:{calls:o.cellRenderCalls,totalMs:Number(o.cellRenderMs.toFixed(2)),avgMs:Number(l.toFixed(3)),maxMs:Number(o.cellRenderMaxMs.toFixed(3))}}),x.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}},[T]);(0,u.useEffect)(()=>{if(!T||typeof window>"u")return;console.log("[VDT perf] enabled (localStorage vdt-perf-debug=1)");let t=window.setInterval(()=>{Ne("interval")},1500);return()=>{window.clearInterval(t),Ne("cleanup")}},[Ne,T]);let ge=(0,u.useMemo)(()=>(0,u.forwardRef)((t,o)=>{let R=(0,u.useRef)(null),h=(0,u.useRef)(0),l=(0,u.useRef)(null);return(0,u.useEffect)(()=>{let e=R.current;if(!e)return;let B=z=>{let Re=T?performance.now():0;z.preventDefault();let Q=z.deltaY;z.deltaMode===1?Q*=40:z.deltaMode===2&&(Q*=e.clientHeight),T&&(x.current.wheelEvents+=1,x.current.wheelInputPx+=Q),h.current+=Q,l.current===null&&(l.current=requestAnimationFrame(()=>{let He=T?performance.now():0,Te=Math.max(e.clientHeight*.4,160),H=Math.max(-Te,Math.min(Te,h.current));h.current=0,l.current=null,H!==0&&(e.scrollTop+=H),T&&(x.current.wheelRafFlushes+=1,x.current.wheelRafMs+=performance.now()-He)}),T&&(x.current.wheelHandlerMs+=performance.now()-Re))};return e.addEventListener("wheel",B,{passive:!1}),()=>{e.removeEventListener("wheel",B),l.current!==null&&(cancelAnimationFrame(l.current),l.current=null),h.current=0}},[]),(0,c.jsx)(Ze,{detectInnerScroll:!0,track:gt,...F,children:(0,c.jsx)(p.TableContainer,{component:p.Box,...t,ref:e=>{R.current=e,typeof o=="function"?o(e):o&&(o.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:d,paddingTop:G,paddingBottom:ce}}})})}),[]),pe=(0,u.useMemo)(()=>{if(Y===!0)return"#f5f5f5";if(typeof Y=="string")return Y},[Y]),[Xe,Pe]=(0,u.useState)(f),[be,Ae]=(0,u.useState)(0);(0,u.useEffect)(()=>{f&&Pe(!0)},[f]);let De=(0,u.useCallback)(()=>{Pe(!1)},[]),xe=Xe,Me=f&&s.length>0,Z=(0,u.useRef)(!1),N=(0,u.useRef)(null),b=(0,u.useRef)(!1),P=(0,u.useRef)({x:0,y:0});(0,u.useEffect)(()=>{let t=o=>{let R=o.clientX-P.current.x,h=o.clientY-P.current.y;Math.sqrt(R*R+h*h)>Je&&(b.current=!0)};return document.addEventListener("mousemove",t),()=>{document.removeEventListener("mousemove",t)}},[]),(0,u.useEffect)(()=>{let t=document.querySelector('[data-testid="virtuoso-scroller"]');t&&t.querySelectorAll(".MuiTableSortLabel-root").forEach(R=>{let h=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0});R.dispatchEvent(h)})},[$]);let fe=(0,u.useCallback)(t=>{if(!j)return;j(t,$===t&&_==="asc"?"desc":"asc")},[j,$,_]),w=(0,u.useCallback)(t=>{let o=T?performance.now():0;if(!U){T&&(x.current.rangeChangedCalls+=1,x.current.rangeChangedMs+=performance.now()-o);return}if(f&&s.length===0){T&&(x.current.rangeChangedCalls+=1,x.current.rangeChangedMs+=performance.now()-o);return}let R=s.length>=30;if(t>=s.length-1&&R&&!Z.current){Z.current=!0;let l=s.length;U(l,50)}T&&(x.current.rangeChangedCalls+=1,x.current.rangeChangedMs+=performance.now()-o)},[s.length,f,U,T]);(0,u.useEffect)(()=>{f||(Z.current=!1)},[f]),(0,u.useEffect)(()=>{s.length===0&&Ae(t=>t+1)},[s.length]);let D=(0,u.useRef)(s.length);(0,u.useEffect)(()=>{let t=D.current,o=s.length;if(o>t&&t>0){D.current=o;return}N.current&&o>0&&o<=t&&N.current.scrollToIndex({index:0,align:"start",behavior:"auto"}),D.current=o},[s]);let ze=(0,u.useCallback)(()=>{let t={},o=[];if(g.forEach(e=>{e.group?(t[e.group]||(t[e.group]=[]),t[e.group].push(e)):o.push(e)}),!(Object.keys(t).length>0))return(0,c.jsx)(p.TableRow,{children:g.map(e=>(0,c.jsx)(p.TableCell,{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?(0,c.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:(0,c.jsxs)(p.Box,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>fe(String(e.id)),children:[e.text,(0,c.jsx)(p.TableSortLabel,{active:$===e.id,direction:$===e.id?_:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:$===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 h=[...o.map(e=>(0,c.jsx)(p.TableCell,{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&&j?(0,c.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:(0,c.jsxs)(p.Box,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>fe(String(e.id)),children:[e.text,(0,c.jsx)(p.TableSortLabel,{active:$===e.id,direction:$===e.id?_:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:$===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(t).map(([e,B])=>(0,c.jsx)(p.TableCell,{align:"center",colSpan:B.length,style:{fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e},e))],l=[...Object.values(t).flat().map(e=>(0,c.jsx)(p.TableCell,{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&&j?(0,c.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:(0,c.jsxs)(p.Box,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>fe(String(e.id)),children:[e.text,(0,c.jsx)(p.TableSortLabel,{active:$===e.id,direction:$===e.id?_:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:$===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(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(p.TableRow,{children:h}),(0,c.jsx)(p.TableRow,{children:l})]})},[g,$,_,fe,j,O]),Ee=(0,u.useCallback)((t,o)=>{let R=T?performance.now():0;if(!o){if(T){x.current.rowContentCalls+=1;let l=performance.now()-R;x.current.rowContentMs+=l,x.current.rowContentMaxMs=Math.max(x.current.rowContentMaxMs,l)}return null}let h=g.map(l=>{let e=T?performance.now():0,B=l.render?l.render(o,t):String(o[l.id]||"");if(T){let z=performance.now()-e;x.current.cellRenderCalls+=1,x.current.cellRenderMs+=z,x.current.cellRenderMaxMs=Math.max(x.current.cellRenderMaxMs,z)}return(0,c.jsx)(p.TableCell,{align:l.align||"left",style:{width:l.width,minWidth:l.width,...l.style,padding:"8px 16px"},children:B},String(l.id))});if(T){x.current.rowContentCalls+=1;let l=performance.now()-R;x.current.rowContentMs+=l,x.current.rowContentMaxMs=Math.max(x.current.rowContentMaxMs,l)}return(0,c.jsx)(c.Fragment,{children:h})},[g,T]),A=we??g.some(t=>typeof t.footer=="function"),Ce=(0,u.useCallback)(()=>A?(0,c.jsx)(p.TableRow,{children:g.map(t=>(0,c.jsx)(p.TableCell,{align:t.align||"left",style:{width:t.width,minWidth:t.width,...t.style,fontWeight:"bold",padding:"16px"},children:t.footer?t.footer(s):null},String(t.id)))}):null,[A,g,s]),E=(0,u.useMemo)(()=>({Scroller:ge,Table:t=>(0,c.jsx)(p.Table,{...t,sx:{borderCollapse:"separate",tableLayout:"fixed",marginRight:"16px",...A?{height:"100%"}:{}}}),TableHead:(0,u.forwardRef)((t,o)=>(0,c.jsx)(p.TableHead,{...t,ref:o,sx:{userSelect:"none","& tr":{height:O,"& th":{padding:"16px",position:"sticky",top:0,zIndex:2,fontWeight:"bold"}}}})),TableRow:t=>{let{item:o,selected:R,"aria-selected":h,className:l,...e}=t,B=e["data-index"]??0,z=B%2===1,Re=o&&v?v(o,B):B,Q=I!=null&&Re===I,He=Q&&S?typeof S=="function"?S(o,B):S:void 0,Te=String(l??"").split(/\s+/).filter(H=>H!=="Mui-selected"&&H!=="Mui-focusVisible").join(" ");return(0,c.jsx)(p.TableRow,{...e,className:Te||void 0,selected:Q,onMouseDown:H=>{b.current=!1,P.current={x:H.clientX,y:H.clientY}},onClick:H=>{let me=H.clientX-P.current.x,ae=H.clientY-P.current.y;if(Math.sqrt(me*me+ae*ae)>Je||b.current){H.preventDefault(),H.stopPropagation(),b.current=!1;return}o&&y&&y(o,B),b.current=!1},sx:[{userSelect:"none",height:L,backgroundColor:z&&pe?pe:"transparent","& td":{padding:"8px 16px",borderBottom:K?"1px solid rgba(224, 224, 224, 1)":"none"},"& th":{padding:"8px 16px",borderBottom:"none"},"&:hover":y&&!Q?{backgroundColor:H=>{let me=H.palette.mode==="dark",r=ue??"#000000",i=V??.06;if(!ue)return me?`rgba(255, 255, 255, ${i})`:`rgba(0, 0, 0, ${i})`;let a=r.replace("#","").trim();if(a.length!==6)return r;let m=parseInt(a.substring(0,2),16),M=parseInt(a.substring(2,4),16),C=parseInt(a.substring(4,6),16);return`rgba(${m}, ${M}, ${C}, ${i})`}}:void 0,cursor:y?"pointer":void 0},He]})},TableBody:(0,u.forwardRef)((t,o)=>(0,c.jsx)(p.TableBody,{...t,ref:o,sx:A?{height:"100%"}:void 0})),TableFoot:(0,u.forwardRef)((t,o)=>(0,c.jsx)(p.TableFooter,{...t,ref:o,sx:[{position:"sticky",bottom:0,zIndex:2,backgroundColor:R=>R.palette.mode==="dark"?"#1e1e1e":"#ffffff","& tr":{height:de??L},"& td":{padding:"16px",color:"inherit",fontSize:"0.875rem",borderTop:"2px solid rgba(224, 224, 224, 1)",borderBottom:"none"}},...Array.isArray(ne)?ne:ne?[ne]:[]]}))}),[y,v,I,S,L,pe,K,O,ue,V,ge,de,ne,A]),le=(0,c.jsxs)(p.Box,{sx:{position:"relative",height:"100%",width:"100%","& .MuiTableHead-root":{backgroundColor:t=>t.palette.mode==="dark"?"#1e1e1e !important":"#ffffff !important"}},children:[(0,c.jsx)(Qe.TableVirtuoso,{ref:N,data:s,totalCount:U?s.length+1:s.length,defaultItemHeight:ke,fixedItemHeight:ke,fixedHeaderContent:ze,fixedFooterContent:A?Ce:void 0,itemContent:Ee,endReached:w,style:{height:"100%"},increaseViewportBy:{top:je,bottom:$e},overscan:he,followOutput:!1,components:E},be),s.length===0&&!f&&(0,c.jsx)(p.Box,{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"?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(p.Box,{sx:{width:48,height:48,display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",backgroundColor:"#f5f5f5",color:"#999"},children:"\u{1F4C4}"}),(0,c.jsx)(p.Typography,{variant:"body1",sx:{color:"text.secondary"},children:te})]}):te}),xe&&(0,c.jsx)(c.Fragment,{children:re?(0,c.jsx)(re,{visible:f,onComplete:De}):(0,c.jsx)(Ke,{visible:f,onComplete:De,size:40,sx:{top:`${g.some(t=>t.group)?O*2:O}px`},background:{show:s.length===0,opacity:.8}})})]});return se?(0,c.jsx)(p.Paper,{className:"grow",elevation:1,sx:{padding:0,paddingLeft:d,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:le}):(0,c.jsx)(p.Box,{className:"grow",style:{padding:0,paddingLeft:d,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:le})}var et=(0,u.memo)(bt);
21
+ `,document.head.appendChild(a),()=>{let g=document.getElementById(r);g&&g.remove()}},[]),(0,ee.jsxs)("div",{ref:se,className:`overlay-scrollbar-wrapper ${s}`,style:{display:"flex",flexDirection:"column",position:"relative",minHeight:0,height:"100%",flex:"1 1 0%",...f},children:[(0,ee.jsx)("div",{ref:d,className:"overlay-scrollbar-container",tabIndex:-1,onMouseDown:Te,style:{display:"flex",width:"100%",flex:"1 1 auto",minHeight:0,overflow:"auto",scrollbarWidth:"none",msOverflowStyle:"none",outline:"none",userSelect:me?"none":"auto",...m},children:(0,ee.jsx)("div",{ref:G,className:"overlay-scrollbar-content",style:{flex:"1 1 0%",minHeight:0,display:"flex",flexDirection:"column",...v},children:w})}),j&&Se&&(0,ee.jsxs)("div",{ref:ce,className:"overlay-scrollbar-track",onMouseEnter:()=>{n(),Me.current=setTimeout(()=>{L(!0),Me.current=null},100)},onMouseLeave:()=>{t(),F||h(M.delay)},style:{position:"absolute",top:0,right:0,width:`${ae}px`,height:"100%",opacity:X?1:0,transition:"opacity 0.2s ease-in-out",cursor:"pointer",zIndex:1e3,pointerEvents:"auto"},children:[x.visible&&(0,ee.jsx)("div",{className:"overlay-scrollbar-track-background",onClick:r=>{r.preventDefault(),r.stopPropagation(),Re(r)},style:{position:"absolute",top:A?`${N.width+x.margin*2}px`:`${x.margin}px`,right:x.alignment==="right"?"0px":`${(ae-N.width)/2}px`,width:`${N.width}px`,height:A?`calc(100% - ${N.width*2+x.margin*4}px)`:`calc(100% - ${x.margin*2}px)`,backgroundColor:x.color,borderRadius:`${x.radius}px`,cursor:"pointer"}}),(0,ee.jsx)("div",{ref:ue,className:"overlay-scrollbar-thumb",onMouseDown:e,onMouseEnter:()=>we(!0),onMouseLeave:()=>we(!1),style:{position:"absolute",top:`${(A?E+x.margin*2:x.margin)+je}px`,right:x.alignment==="right"?"0px":`${(ae-E)/2}px`,width:`${E}px`,height:`${Math.max(oe,Ee)}px`,backgroundColor:re||F?N.hoverColor:N.color,opacity:re||F?N.hoverOpacity:N.opacity,borderRadius:`${N.radius}px`,cursor:"pointer",transition:"background-color 0.2s ease-in-out, opacity 0.2s ease-in-out"}})]}),j&&Se&&A&&(0,ee.jsx)("div",{className:"overlay-scrollbar-up-arrow",onClick:Q,onMouseEnter:()=>pe("up"),onMouseLeave:()=>pe(null),style:{position:"absolute",top:`${x.margin}px`,right:x.alignment==="right"?"0px":`${(ae-E)/2}px`,width:`${E}px`,height:`${E}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(E*.75,8)}px`,color:ge==="up"?P.hoverColor:P.color,userSelect:"none",zIndex:1001,opacity:X?ge==="up"?P.hoverOpacity:P.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25B2"}),j&&Se&&A&&(0,ee.jsx)("div",{className:"overlay-scrollbar-down-arrow",onClick:He,onMouseEnter:()=>pe("down"),onMouseLeave:()=>pe(null),style:{position:"absolute",bottom:`${x.margin}px`,right:x.alignment==="right"?"0px":`${(ae-E)/2}px`,width:`${E}px`,height:`${E}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(E*.75,8)}px`,color:ge==="down"?P.hoverColor:P.color,userSelect:"none",zIndex:1001,opacity:X?ge==="down"?P.hoverOpacity:P.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25BC"})]})}),Ze=mt;var c=require("react/jsx-runtime"),gt={alignment:"right",margin:0,radius:0},Je=5;function bt({data:s,loading:f=!1,columns:m,onRowClick:v,getRowId:w,selectedRowId:I,selectedRowSx:k,rowHeight:D=50,columnHeight:O=56,striped:Y,rowDivider:K=!0,onSort:j,onLoadMore:U,sortBy:$,sortDirection:_,showPaper:se=!0,paddingX:d="1rem",paddingTop:G=0,paddingBottom:ce=0,rowHoverColor:ue,rowHoverOpacity:V,viewportBuffer:X,overscan:L,scrollbars:F,emptyMessage:te="NO DATA",LoadingComponent:re,showFooter:we,footerHeight:de,footerSx:ne}){let oe=Math.max(D*12,480),qe=Math.max(D*12,480),je=typeof X=="number"?X:X?.top??oe,$e=typeof X=="number"?X:X?.bottom??qe,Se=Math.max(D*8,420),Fe=Math.max(D*10,520),me=typeof L=="number"?L:{main:L?.main??Se,reverse:L?.reverse??Fe},ke=D+(K?1:0),Le=typeof window<"u"&&(window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"),[S]=(0,u.useState)(()=>typeof window>"u"?!1:window.localStorage.getItem("vdt-perf-debug")==="1"),y=(0,u.useRef)({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}),Ne=(0,u.useCallback)(n=>{if(!S)return;let t=y.current;if(!(t.wheelEvents>0||t.rangeChangedCalls>0||t.rowContentCalls>0||t.cellRenderCalls>0))return;let h=t.rowContentCalls>0?t.rowContentMs/t.rowContentCalls:0,l=t.cellRenderCalls>0?t.cellRenderMs/t.cellRenderCalls:0;console.log("[VDT perf]",{reason:n,wheel:{events:t.wheelEvents,inputPx:Math.round(t.wheelInputPx),handlerMs:Number(t.wheelHandlerMs.toFixed(2)),rafFlushes:t.wheelRafFlushes,rafMs:Number(t.wheelRafMs.toFixed(2))},rangeChanged:{calls:t.rangeChangedCalls,totalMs:Number(t.rangeChangedMs.toFixed(2))},rowContent:{calls:t.rowContentCalls,totalMs:Number(t.rowContentMs.toFixed(2)),avgMs:Number(h.toFixed(3)),maxMs:Number(t.rowContentMaxMs.toFixed(3))},cellRender:{calls:t.cellRenderCalls,totalMs:Number(t.cellRenderMs.toFixed(2)),avgMs:Number(l.toFixed(3)),maxMs:Number(t.cellRenderMaxMs.toFixed(3))}}),y.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}},[S]);(0,u.useEffect)(()=>{if(!S||typeof window>"u")return;console.log("[VDT perf] enabled (localStorage vdt-perf-debug=1)");let n=window.setInterval(()=>{Ne("interval")},1500);return()=>{window.clearInterval(n),Ne("cleanup")}},[Ne,S]);let ge=(0,u.useMemo)(()=>(0,u.forwardRef)((n,t)=>{let b=(0,u.useRef)(null),h=(0,u.useRef)(0),l=(0,u.useRef)(null);return(0,u.useEffect)(()=>{let e=b.current;if(!e)return;let B=z=>{let Re=S?performance.now():0;z.preventDefault();let Q=z.deltaY;z.deltaMode===1?Q*=40:z.deltaMode===2&&(Q*=e.clientHeight),S&&(y.current.wheelEvents+=1,y.current.wheelInputPx+=Q),h.current+=Q,l.current===null&&(l.current=requestAnimationFrame(()=>{let He=S?performance.now():0,Te=Math.max(e.clientHeight*.4,160),H=Math.max(-Te,Math.min(Te,h.current));h.current=0,l.current=null,H!==0&&(e.scrollTop+=H),S&&(y.current.wheelRafFlushes+=1,y.current.wheelRafMs+=performance.now()-He)}),S&&(y.current.wheelHandlerMs+=performance.now()-Re))};return e.addEventListener("wheel",B,{passive:!1}),()=>{e.removeEventListener("wheel",B),l.current!==null&&(cancelAnimationFrame(l.current),l.current=null),h.current=0}},[]),(0,c.jsx)(Ze,{detectInnerScroll:!0,track:gt,...F,children:(0,c.jsx)(p.TableContainer,{component:p.Box,...n,ref:e=>{b.current=e,typeof t=="function"?t(e):t&&(t.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:d,paddingTop:G,paddingBottom:ce}}})})}),[]),pe=(0,u.useMemo)(()=>{if(Y===!0)return"#f5f5f5";if(typeof Y=="string")return Y},[Y]),[Xe,Pe]=(0,u.useState)(f),[be,Ae]=(0,u.useState)(0);(0,u.useEffect)(()=>{f&&Pe(!0)},[f]);let De=(0,u.useCallback)(()=>{Pe(!1)},[]),xe=Xe,Me=f&&s.length>0,Z=(0,u.useRef)(!1),N=(0,u.useRef)(null),x=(0,u.useRef)(!1),P=(0,u.useRef)({x:0,y:0});(0,u.useEffect)(()=>{let n=t=>{let b=t.clientX-P.current.x,h=t.clientY-P.current.y;Math.sqrt(b*b+h*h)>Je&&(x.current=!0)};return document.addEventListener("mousemove",n),()=>{document.removeEventListener("mousemove",n)}},[]),(0,u.useEffect)(()=>{let n=document.querySelector('[data-testid="virtuoso-scroller"]');n&&n.querySelectorAll(".MuiTableSortLabel-root").forEach(b=>{let h=new MouseEvent("mouseleave",{bubbles:!0,cancelable:!0});b.dispatchEvent(h)})},[$]);let fe=(0,u.useCallback)(n=>{if(!j)return;j(n,$===n&&_==="asc"?"desc":"asc")},[j,$,_]),M=(0,u.useCallback)(n=>{let t=S?performance.now():0;if(!U){S&&(y.current.rangeChangedCalls+=1,y.current.rangeChangedMs+=performance.now()-t);return}if(f&&s.length===0){S&&(y.current.rangeChangedCalls+=1,y.current.rangeChangedMs+=performance.now()-t);return}let b=s.length>=30;if(n>=s.length-1&&b&&!Z.current){Z.current=!0;let l=s.length;U(l,50)}S&&(y.current.rangeChangedCalls+=1,y.current.rangeChangedMs+=performance.now()-t)},[s.length,f,U,S]);(0,u.useEffect)(()=>{f||(Z.current=!1)},[f]),(0,u.useEffect)(()=>{s.length===0&&Ae(n=>n+1)},[s.length]);let E=(0,u.useRef)(s.length);(0,u.useEffect)(()=>{let n=E.current,t=s.length;if(t>n&&n>0){E.current=t;return}N.current&&t>0&&t<=n&&N.current.scrollToIndex({index:0,align:"start",behavior:"auto"}),E.current=t},[s]);let ze=(0,u.useCallback)(()=>{let n={},t=[];if(m.forEach(e=>{e.group?(n[e.group]||(n[e.group]=[]),n[e.group].push(e)):t.push(e)}),!(Object.keys(n).length>0))return(0,c.jsx)(p.TableRow,{children:m.map(e=>(0,c.jsx)(p.TableCell,{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?(0,c.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:(0,c.jsxs)(p.Box,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>fe(String(e.id)),children:[e.text,(0,c.jsx)(p.TableSortLabel,{active:$===e.id,direction:$===e.id?_:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:$===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 h=[...t.map(e=>(0,c.jsx)(p.TableCell,{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&&j?(0,c.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:(0,c.jsxs)(p.Box,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>fe(String(e.id)),children:[e.text,(0,c.jsx)(p.TableSortLabel,{active:$===e.id,direction:$===e.id?_:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:$===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(n).map(([e,B])=>(0,c.jsx)(p.TableCell,{align:"center",colSpan:B.length,style:{fontWeight:"bold",position:"sticky",top:0,zIndex:2,padding:"16px"},children:e},e))],l=[...Object.values(n).flat().map(e=>(0,c.jsx)(p.TableCell,{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&&j?(0,c.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:e.align==="center"?"center":e.align==="right"?"flex-end":"flex-start",position:"relative",width:"100%"},children:(0,c.jsxs)(p.Box,{sx:{position:"relative",cursor:"default","&:hover .MuiTableSortLabel-root":{opacity:"1 !important","& .MuiSvgIcon-root":{color:"#000",opacity:"1 !important"}}},onClick:()=>fe(String(e.id)),children:[e.text,(0,c.jsx)(p.TableSortLabel,{active:$===e.id,direction:$===e.id?_:"desc",sx:{position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)",marginLeft:"4px",minWidth:"auto",width:"16px",height:"16px",cursor:"default",opacity:$===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(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(p.TableRow,{children:h}),(0,c.jsx)(p.TableRow,{children:l})]})},[m,$,_,fe,j,O]),Ee=(0,u.useCallback)((n,t)=>{let b=S?performance.now():0;if(!t){if(S){y.current.rowContentCalls+=1;let l=performance.now()-b;y.current.rowContentMs+=l,y.current.rowContentMaxMs=Math.max(y.current.rowContentMaxMs,l)}return null}let h=m.map(l=>{let e=S?performance.now():0,B=l.render?l.render(t,n):String(t[l.id]||"");if(S){let z=performance.now()-e;y.current.cellRenderCalls+=1,y.current.cellRenderMs+=z,y.current.cellRenderMaxMs=Math.max(y.current.cellRenderMaxMs,z)}return(0,c.jsx)(p.TableCell,{align:l.align||"left",style:{width:l.width,minWidth:l.width,...l.style,padding:"8px 16px"},children:B},String(l.id))});if(S){y.current.rowContentCalls+=1;let l=performance.now()-b;y.current.rowContentMs+=l,y.current.rowContentMaxMs=Math.max(y.current.rowContentMaxMs,l)}return(0,c.jsx)(c.Fragment,{children:h})},[m,S]),A=we??m.some(n=>typeof n.footer=="function"),Ce=(0,u.useCallback)(()=>{if(!A)return null;let n=[];for(let t=0;t<m.length;t+=1){let b=m[t],h=b.footerColSpan&&b.footerColSpan>1?Math.min(b.footerColSpan,m.length-t):1;n.push((0,c.jsx)(p.TableCell,{align:b.align||"left",colSpan:h>1?h:void 0,style:{...h>1?{}:{width:b.width,minWidth:b.width},...b.style,fontWeight:"bold",padding:"16px"},children:b.footer?b.footer(s):null},String(b.id))),t+=h-1}return(0,c.jsx)(p.TableRow,{children:n})},[A,m,s]),R=(0,u.useMemo)(()=>({Scroller:ge,Table:n=>(0,c.jsx)(p.Table,{...n,sx:{borderCollapse:"separate",tableLayout:"fixed",marginRight:"16px",...A?{height:"100%"}:{}}}),TableHead:(0,u.forwardRef)((n,t)=>(0,c.jsx)(p.TableHead,{...n,ref:t,sx:{userSelect:"none","& tr":{height:O,"& th":{padding:"16px",position:"sticky",top:0,zIndex:2,fontWeight:"bold"}}}})),TableRow:n=>{let{item:t,selected:b,"aria-selected":h,className:l,...e}=n,B=e["data-index"]??0,z=B%2===1,Re=t&&w?w(t,B):B,Q=I!=null&&Re===I,He=Q&&k?typeof k=="function"?k(t,B):k:void 0,Te=String(l??"").split(/\s+/).filter(H=>H!=="Mui-selected"&&H!=="Mui-focusVisible").join(" ");return(0,c.jsx)(p.TableRow,{...e,className:Te||void 0,selected:Q,onMouseDown:H=>{x.current=!1,P.current={x:H.clientX,y:H.clientY}},onClick:H=>{let he=H.clientX-P.current.x,ae=H.clientY-P.current.y;if(Math.sqrt(he*he+ae*ae)>Je||x.current){H.preventDefault(),H.stopPropagation(),x.current=!1;return}t&&v&&v(t,B),x.current=!1},sx:[{userSelect:"none",height:D,backgroundColor:z&&pe?pe:"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:H=>{let he=H.palette.mode==="dark",r=ue??"#000000",i=V??.06;if(!ue)return he?`rgba(255, 255, 255, ${i})`:`rgba(0, 0, 0, ${i})`;let a=r.replace("#","").trim();if(a.length!==6)return r;let g=parseInt(a.substring(0,2),16),C=parseInt(a.substring(2,4),16),T=parseInt(a.substring(4,6),16);return`rgba(${g}, ${C}, ${T}, ${i})`}}:void 0,cursor:v?"pointer":void 0},He]})},TableBody:(0,u.forwardRef)((n,t)=>(0,c.jsx)(p.TableBody,{...n,ref:t,sx:A?{height:"100%"}:void 0})),TableFoot:(0,u.forwardRef)((n,t)=>(0,c.jsx)(p.TableFooter,{...n,ref:t,sx:[{position:"sticky",bottom:0,zIndex:2,backgroundColor:b=>b.palette.mode==="dark"?"#1e1e1e":"#ffffff","& tr":{height:de??D},"& td":{padding:"16px",color:"inherit",fontSize:"0.875rem",borderTop:"1px solid #000000",borderBottom:"none"}},...Array.isArray(ne)?ne:ne?[ne]:[]]}))}),[v,w,I,k,D,pe,K,O,ue,V,ge,de,ne,A]),le=(0,c.jsxs)(p.Box,{sx:{position:"relative",height:"100%",width:"100%","& .MuiTableHead-root":{backgroundColor:n=>n.palette.mode==="dark"?"#1e1e1e !important":"#ffffff !important"}},children:[(0,c.jsx)(Qe.TableVirtuoso,{ref:N,data:s,totalCount:U?s.length+1:s.length,defaultItemHeight:ke,fixedItemHeight:ke,fixedHeaderContent:ze,fixedFooterContent:A?Ce:void 0,itemContent:Ee,endReached:M,style:{height:"100%"},increaseViewportBy:{top:je,bottom:$e},overscan:me,followOutput:!1,components:R},be),s.length===0&&!f&&(0,c.jsx)(p.Box,{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"?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(p.Box,{sx:{width:48,height:48,display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",backgroundColor:"#f5f5f5",color:"#999"},children:"\u{1F4C4}"}),(0,c.jsx)(p.Typography,{variant:"body1",sx:{color:"text.secondary"},children:te})]}):te}),xe&&(0,c.jsx)(c.Fragment,{children:re?(0,c.jsx)(re,{visible:f,onComplete:De}):(0,c.jsx)(Ke,{visible:f,onComplete:De,size:40,sx:{top:`${m.some(n=>n.group)?O*2:O}px`},background:{show:s.length===0,opacity:.8}})})]});return se?(0,c.jsx)(p.Paper,{className:"grow",elevation:1,sx:{padding:0,paddingLeft:d,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:le}):(0,c.jsx)(p.Box,{className:"grow",style:{padding:0,paddingLeft:d,height:"100%",minHeight:0,flex:1,display:"flex",flexDirection:"column"},children:le})}var et=(0,u.memo)(bt);
22
22
  /**
23
23
  * Virtual Data Table - A high-performance virtual data table component for React
24
24
  *