@ehfuse/overlay-scrollbar 1.7.34 → 1.7.36
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 nt=Object.defineProperty;var to=Object.getOwnPropertyDescriptor;var oo=Object.getOwnPropertyNames;var ro=Object.prototype.hasOwnProperty;var no=(r,i)=>{for(var d in i)nt(r,d,{get:i[d],enumerable:!0})},lo=(r,i,d,u)=>{if(i&&typeof i=="object"||typeof i=="function")for(let g of oo(i))!ro.call(r,g)&&g!==d&&nt(r,g,{get:()=>i[g],enumerable:!(u=to(i,g))||u.enumerable});return r};var io=r=>lo(nt({},"__esModule",{value:!0}),r);var xo={};no(xo,{OverlayScrollbar:()=>it,default:()=>it});module.exports=io(xo);var e=require("react");var ao=["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"],Ae=(r,i)=>{if(r instanceof HTMLElement&&r.isContentEditable||r.closest('[role="textbox"],[role="searchbox"]'))return!0;let d=r.tagName.toLowerCase();if(d==="input"){let u=(r.type||"text").toLowerCase();return!["button","submit","reset","image","hidden"].includes(u)}if(["textarea","select","button"].includes(d)||["svg","path","circle","rect","line","polygon","polyline"].includes(d)||r.getAttribute("contenteditable")==="true")return!0;if(i?.excludeSelectors){for(let u of i.excludeSelectors)if(r.matches(u))return!0}return so(r,i)},so=(r,i)=>{if(r.closest('[data-drag-scroll="off"]'))return!0;let d=[...ao,...i?.excludeClasses||[]],u=r,g=0,M=5;for(;u&&g<=M;){if(d.some(D=>u.classList.contains(D)))return!0;if(u.classList.contains("MuiDialogContent-root"))break;u=u.parentElement,g++}return!1};var co=r=>{if(r==null)return null;if(typeof r=="number")return Number.isFinite(r)?r:null;let i=r.trim();if(i==="")return null;let d=/^(-?\d*\.?\d+)(px)?$/.exec(i);if(!d)return null;let u=Number.parseFloat(d[1]);return Number.isFinite(u)?u:null},uo=r=>{if(r==null)return;if(typeof r=="number")return r;let i=r.trim().split(/\s+/);if(!(i.length===0||i[0]===""))return i.length===1||i.length===2?i[0]:i[2]},fo=r=>{let i=typeof r=="number"?[`${r}px`]:r.trim().split(/\s+/),[d,u=d,g=d,M=u]=i;return`${d} ${u} 0 ${M}`},lt=r=>{if(!r)return{style:r,spacerHeight:0};let i=r.paddingBottom!==void 0,d=r.padding!==void 0;if(!i&&!d)return{style:r,spacerHeight:0};let u=i?r.paddingBottom:uo(r.padding),g=co(u);if(g===null||g<=0)return{style:r,spacerHeight:0};let M={...r};return d&&r.padding!==void 0&&(M.padding=fo(r.padding)),i&&(M.paddingBottom=0),{style:M,spacerHeight:g}};var $=require("react"),Ct=({containerRef:r,config:i})=>{let d=i.enabled??!0,u=i.threshold??80,g=i.maxDistance??u*2,M=i.onRefresh,[D,k]=(0,$.useState)(0),[A,X]=(0,$.useState)(!1),W=(0,$.useRef)(0),pe=(0,$.useRef)(0),F=(0,$.useRef)(!1),Z=(0,$.useRef)(!1),oe=(0,$.useRef)(!1),Y=(0,$.useRef)(0),re=(0,$.useRef)(!1);return(0,$.useEffect)(()=>{re.current=A},[A]),(0,$.useEffect)(()=>{let y=r.current;if(!y||!(d&&typeof M=="function"))return;let Me=E=>{let x=E instanceof Element?E:null;for(;x&&x!==y;){if(x instanceof HTMLElement&&x.scrollHeight>x.clientHeight+1&&x.scrollTop>0)return!1;x=x.parentElement}return!0},We=E=>{F.current=!1,Z.current=!1,oe.current=!1,!re.current&&E.touches.length===1&&y.scrollTop===0&&Me(E.target)&&(F.current=!0,W.current=E.touches[0].clientY,pe.current=E.touches[0].clientX)},Q=E=>{if(!F.current||re.current||E.touches.length!==1)return;let x=E.touches[0].clientY-W.current,Be=E.touches[0].clientX-pe.current;if(!Z.current){if(x<=0||y.scrollTop>0){F.current=!1;return}if(x>8&&x>Math.abs(Be))Z.current=!0,oe.current=y.scrollTop<0;else return}!oe.current&&E.cancelable&&E.preventDefault();let He=Math.min(Math.max(x,0)*.5,g);Y.current=He,k(He)},j=()=>{if(!F.current||(F.current=!1,!Z.current))return;Z.current=!1,oe.current=!1;let E=Y.current;Y.current=0,E>=u&&!re.current?(X(!0),k(u),Promise.resolve().then(()=>M()).catch(()=>{}).finally(()=>{X(!1),k(0)})):k(0)},P=!1,he=()=>{P||(y.addEventListener("touchmove",Q,{passive:!1}),P=!0)},Ce=()=>{P&&(y.removeEventListener("touchmove",Q),P=!1)},le=E=>{let x=E.target;x instanceof HTMLElement&&(x.scrollHeight<=x.clientHeight+1||(x.scrollTop<=0?he():F.current||Ce()))};return he(),y.addEventListener("scroll",le,{passive:!0,capture:!0}),y.addEventListener("touchstart",We,{passive:!0}),y.addEventListener("touchend",j,{passive:!0}),y.addEventListener("touchcancel",j,{passive:!0}),()=>{y.removeEventListener("touchstart",We),Ce(),y.removeEventListener("scroll",le,{capture:!0}),y.removeEventListener("touchend",j),y.removeEventListener("touchcancel",j)}},[r,d,M,u,g]),{pullDistance:D,isRefreshing:A,pullProgress:Math.min(D/u,1),pullThreshold:u}};var ze=require("react");function Ht(){let[r,i]=(0,ze.useState)(()=>typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia("(pointer: coarse)").matches);return(0,ze.useEffect)(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;let d=window.matchMedia("(pointer: coarse)"),u=g=>i(g.matches);return i(d.matches),typeof d.addEventListener=="function"?(d.addEventListener("change",u),()=>d.removeEventListener("change",u)):(d.addListener(u),()=>d.removeListener(u))},[]),r}var v=require("react/jsx-runtime"),po={},ho={},mo={},bo={},go={},vo={},yo=(0,e.forwardRef)(({className:r="",style:i={},containerStyle:d={},contentStyle:u={},children:g,onScroll:M,thumb:D=po,track:k=ho,arrows:A=mo,dragScroll:X=bo,autoHide:W=go,pullToRefresh:pe=vo,showScrollbar:F=!0,showHorizontalScrollbar:Z=!0,detectInnerScroll:oe=!1,scrollTopFab:Y=!1},re)=>{let y=Ht(),ne=F,Me=y?!1:Z,Q=`os-${(0,e.useId)().replace(/[^a-zA-Z0-9_-]/g,"")}`,j=Y!==!1&&Y!=null,P=typeof Y=="object"?Y:{},he=P.threshold??600,Ce=P.idleOpacity??P.scrollingOpacity??.45,le=P.hideDelay??1500,E=P.position??"right",x=P.offset??16,Be=P.offsetBottom??x,He=P.background??"#1976d2",Lt=P.color??"#ffffff",Le=P.size??48,[Fe,at]=(0,e.useState)(!1),[Rt,me]=(0,e.useState)(!1),J=(0,e.useRef)(null),Dt=(0,e.useRef)({});(0,e.useEffect)(()=>{Dt.current={children:g,onScroll:M,showScrollbar:ne,showHorizontalScrollbar:Me,thumb:D,track:k,arrows:A,dragScroll:X,autoHide:W}});let Ne=(0,e.useRef)(null),c=(0,e.useRef)(null),be=(0,e.useRef)(null),ge=(0,e.useRef)(null),kt=(0,e.useRef)(null),N=(0,e.useRef)(null),{pullDistance:Ue,isRefreshing:Re,pullProgress:_e}=Ct({containerRef:c,config:pe}),st=pe.indicatorColor??"#1976d2",Pt=Ue>0||Re,[De,C]=(0,e.useState)(!1),[U,ct]=(0,e.useState)(!1),[ut,dt]=(0,e.useState)(!1),[qe,It]=(0,e.useState)({y:0,scrollTop:0}),[ve,ft]=(0,e.useState)(0),[$t,Xe]=(0,e.useState)(0),[ie,pt]=(0,e.useState)(!1),[ht,mt]=(0,e.useState)(!1),[_,bt]=(0,e.useState)(!1),[Ye,Ot]=(0,e.useState)({x:0,scrollLeft:0}),[je,gt]=(0,e.useState)(0),[Ge,vt]=(0,e.useState)(0),[At,yt]=(0,e.useState)(!1),ae=(0,e.useRef)(!1),[se,xt]=(0,e.useState)(!1),Ke=(0,e.useRef)(!1),[ye,zt]=(0,e.useState)({x:0,y:0,scrollTop:0,scrollLeft:0}),[To,wo]=(0,e.useState)(null),[ke,Pe]=(0,e.useState)(null),[So,Wt]=(0,e.useState)(!1),[Bt,Ft]=(0,e.useState)(0),xe=(0,e.useRef)(null),Ve=(0,e.useRef)(!1),Te=(0,e.useRef)(null),ee=(0,e.useRef)(null),te=(0,e.useRef)(null),H=(0,e.useMemo)(()=>{let t=D.color??"#606060";return{width:D.width??8,minHeight:D.minHeight??50,radius:D.radius??(D.width??8)/2,color:t,opacity:D.opacity??.6,hoverColor:D.hoverColor??t,hoverOpacity:D.hoverOpacity??1}},[D]),a=(0,e.useMemo)(()=>({width:k.width??16,color:k.color??"rgba(128, 128, 128, 0.1)",visible:k.visible??!0,alignment:k.alignment??"outside",radius:k.radius??H.radius??4,margin:k.margin??4,overflowX:k.overflowX??!0,overflowY:k.overflowY??!0}),[k,H.radius]),B=(0,e.useMemo)(()=>{let t=A.color??"#808080";return{visible:A.visible??!1,step:A.step??50,color:t,opacity:A.opacity??.6,hoverColor:A.hoverColor??t,hoverOpacity:A.hoverOpacity??1}},[A]),we=(0,e.useMemo)(()=>({enabled:y?!1:X.enabled??!0,excludeClasses:X.excludeClasses??[],excludeSelectors:X.excludeSelectors??[]}),[X,y]),f=(0,e.useMemo)(()=>({enabled:W.enabled??!0,delay:W.delay??1500,delayOnWheel:W.delayOnWheel??700,initialDelay:W.initialDelay??200}),[W]),[ce,Nt]=(0,e.useState)(()=>(W.initialDelay??200)>0),w=H.width,Ut=a.width,Ze=H.minHeight,q=B.visible,Ie=B.step,z=(0,e.useCallback)(()=>{if(!c.current)return;let t=document.activeElement;t&&c.current.contains(t)&&t!==c.current||c.current.focus()},[]);(0,e.useImperativeHandle)(re,()=>({getScrollContainer:()=>c.current,scrollTo:t=>{c.current&&c.current.scrollTo(t)},get scrollTop(){return c.current?.scrollTop||0},get scrollHeight(){return c.current?.scrollHeight||0},get clientHeight(){return c.current?.clientHeight||0}}),[]);let m=(0,e.useCallback)(()=>{if(N.current){let o=N.current;if(document.contains(o)&&(o.scrollHeight>o.clientHeight+2||o.scrollWidth>o.clientWidth+2))return o;N.current=null}if(!c.current)return null;if(c.current.scrollHeight>c.current.clientHeight+2||c.current.scrollWidth>c.current.clientWidth+2)return N.current=c.current,c.current;if(!oe)return null;let t=c.current.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]');for(let o of t){let n=o;if(n!==c.current&&n.classList.contains("overlay-scrollbar-container"))continue;let s=n.parentElement,l=!1;for(;s&&s!==c.current;){if(s.classList.contains("overlay-scrollbar-container")&&s!==c.current){l=!0;break}s=s.parentElement}if(!l&&(n.scrollHeight>n.clientHeight+2||n.scrollWidth>n.clientWidth+2))return N.current=n,n}return null},[]),G=(0,e.useCallback)(()=>m()!==null,[m]),L=(0,e.useCallback)(()=>{Te.current&&(clearTimeout(Te.current),Te.current=null)},[]),$e=(0,e.useCallback)(()=>{ee.current&&(clearTimeout(ee.current),ee.current=null)},[]),Tt=(0,e.useCallback)(()=>{te.current&&(clearTimeout(te.current),te.current=null)},[]),_t=(0,e.useCallback)(()=>{$e(),!(U||_||se||ae.current)&&(L(),C(!1))},[L,$e,U,_,se]),T=(0,e.useCallback)(t=>{f.enabled&&(L(),Te.current=setTimeout(()=>{C(!1),Te.current=null},t))},[L,f.enabled]),h=(0,e.useCallback)(()=>{let t=m()??c.current;if(!t){C(!1),pt(!1),yt(!1),L();return}!f.enabled&&!ce&&(C(!0),L());let o=t.clientHeight,n=t.scrollHeight,s=t.scrollTop,l=t.clientWidth,p=t.scrollWidth,S=t.scrollLeft,R=n-o>0,b=p-l>0,de=R||b;pt(R),yt(b),de||(C(!1),L());let Se=0,O=0;if(Ne.current){let K=window.getComputedStyle(Ne.current),V=parseFloat(K.paddingTop)||0;O=parseFloat(K.paddingBottom)||0,Se=V+O,Ft(O)}if(R){let K=q?w*2+a.margin*4:a.margin*2,V=o-K+Se,Oe=o/n,fe=Math.max(V*Oe,Ze),Mt=n-o,Jt=V-fe,eo=Mt>0?s/Mt*Jt:0;ft(fe),Xe(eo)}else ft(0),Xe(0);let Ee=p-l;if(Ee>0){let K=l/p,V=Math.max(l*K,50),Oe=l-V,fe=Ee>0?S/Ee*Oe:0;gt(V),vt(fe)}else gt(0),vt(0)},[m,L,q,w,Ze,f.enabled,ce]),qt=(0,e.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let o=m();o&&(ct(!0),It({y:t.clientY,scrollTop:o.scrollTop}),L(),C(!0),z())},[m,L,z]),Qe=(0,e.useCallback)(t=>{if(!U)return;let o=m();if(!o)return;let n=o.clientHeight,l=o.scrollHeight-n,p=t.clientY-qe.y,S=n-ve,R=p/S*l,b=Math.max(0,Math.min(l,qe.scrollTop+R));o.scrollTop=b,h()},[U,qe,ve,h,m]),Je=(0,e.useCallback)(()=>{ct(!1),G()&&T(f.delay)},[G,T,f.delay]),Xt=(0,e.useCallback)(t=>{if(!ge.current)return;let n=ge.current.getBoundingClientRect(),s=t.clientY-n.top,l=m();if(!l)return;let p=l.clientHeight,S=l.scrollHeight,b=s/p*(S-p);l.scrollTop=Math.max(0,Math.min(S-p,b)),h(),C(!0),T(f.delay),z()},[h,T,f.delay,m,z]),Yt=(0,e.useCallback)(t=>{if(t.preventDefault(),t.stopPropagation(),!c.current)return;let o=Math.max(0,c.current.scrollTop-Ie);c.current.scrollTop=o,h(),C(!0),T(f.delay),z()},[h,T,Ie,f.delay,z]),jt=(0,e.useCallback)(t=>{if(t.preventDefault(),t.stopPropagation(),!c.current||!be.current)return;let o=c.current,s=be.current.scrollHeight-o.clientHeight,l=Math.min(s,o.scrollTop+Ie);o.scrollTop=l,h(),C(!0),T(f.delay),z()},[h,T,Ie,f.delay,z]),Gt=(0,e.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let o=m();o&&(bt(!0),Ot({x:t.clientX,scrollLeft:o.scrollLeft}),L(),C(!0),z())},[m,L,z]),et=(0,e.useCallback)(t=>{if(!_)return;let o=m();if(!o)return;let n=o.clientWidth,l=o.scrollWidth-n,p=t.clientX-Ye.x,S=n-je,R=p/S*l,b=Math.max(0,Math.min(l,Ye.scrollLeft+R));o.scrollLeft=b,h()},[_,Ye,je,h,m]),tt=(0,e.useCallback)(()=>{bt(!1),G()&&T(f.delay)},[G,T,f.delay]),Kt=(0,e.useCallback)(t=>{if(!ge.current)return;let n=ge.current.getBoundingClientRect(),s=t.clientX-n.left,l=m();if(!l)return;let p=l.clientWidth,S=l.scrollWidth,b=s/p*(S-p);l.scrollLeft=Math.max(0,Math.min(S-p,b)),h(),C(!0),T(f.delay),z()},[h,T,f.delay,m,z]),Vt=(0,e.useCallback)(t=>{if(!we.enabled||t.defaultPrevented)return;let o=t.target,n=c.current;if(!n||!n.contains(o)||Ae(o,we)||t.button!==0)return;let s=m();if(!s||s.scrollHeight<=s.clientHeight&&s.scrollWidth<=s.clientWidth)return;t.preventDefault();let l=document.activeElement;l instanceof HTMLElement&&l!==document.body&&!l.contains(o)&&l.blur(),ae.current=!0,zt({x:t.clientX,y:t.clientY,scrollTop:s.scrollTop,scrollLeft:s.scrollLeft||0})},[we,Ae,m]),ot=(0,e.useCallback)(t=>{if(!ae.current&&!se)return;let o=m();if(!o)return;let n=ye.x-t.clientX,s=ye.y-t.clientY;if(Math.abs(s)<5&&Math.abs(n)<5)return;ae.current&&(ae.current=!1,Ke.current=!0,xt(!0)),C(!0);let l=Math.max(0,Math.min(o.scrollHeight-o.clientHeight,ye.scrollTop+s)),p=Math.max(0,Math.min(o.scrollWidth-o.clientWidth,ye.scrollLeft+n));o.scrollTop=l,o.scrollLeft=p,h()},[se,ye,m,h]),rt=(0,e.useCallback)(()=>{let t=Ke.current;ae.current=!1,Ke.current=!1,xt(!1),t&&G()&&T(f.delay)},[G,T,f.delay]);(0,e.useEffect)(()=>{let t=p=>{if(h(),j){let b=(p.target?.scrollTop??0)>he;at(b),J.current&&(clearTimeout(J.current),J.current=null),b&&le>0&&(J.current=setTimeout(()=>{J.current=null,at(!1)},le))}if(ce){M&&M(p);return}L(),C(!0),Tt();let S=Ve.current?f.delayOnWheel:f.delay;T(S),M&&M(p)},o=()=>{Ve.current=!0,xe.current&&clearTimeout(xe.current),xe.current=setTimeout(()=>{Ve.current=!1},300),Tt(),te.current=setTimeout(()=>{C(!0),te.current=null,T(f.delayOnWheel)},50)},n=[],s=m();s&&n.push(s);let l=c.current;return l&&!s&&(n.push(l),l.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]').forEach(S=>{let R=S;if(R!==l&&R.classList.contains("overlay-scrollbar-container"))return;let b=R.parentElement;for(;b&&b!==l;){if(b.classList.contains("overlay-scrollbar-container")&&b!==l)return;b=b.parentElement}n.push(R)})),n.forEach(p=>{p.addEventListener("scroll",t,{passive:!0}),p.addEventListener("wheel",o,{passive:!0})}),()=>{n.forEach(p=>{p.removeEventListener("scroll",t),p.removeEventListener("wheel",o)})}},[m,h,M,L,T,f,ce,j,he,le]),(0,e.useEffect)(()=>()=>{J.current&&clearTimeout(J.current),xe.current&&clearTimeout(xe.current),te.current&&clearTimeout(te.current)},[]),(0,e.useEffect)(()=>{let t=n=>{let s=n.target;if(n.defaultPrevented||s instanceof Element&&Ae(s,we))return;let l=m();if(!l)return;let{key:p}=n,{scrollTop:S,scrollHeight:R,clientHeight:b}=l,de=R-b,Se=50,O=null;switch(p){case"ArrowUp":n.preventDefault(),O=Math.max(0,S-Se);break;case"ArrowDown":n.preventDefault(),O=Math.min(de,S+Se);break;case"PageUp":n.preventDefault(),O=Math.max(0,S-b);break;case"PageDown":n.preventDefault(),O=Math.min(de,S+b);break;case"Home":n.preventDefault(),O=0;break;case"End":n.preventDefault(),O=de;break;default:return}if(O!==null){let Ee=O/de,K=q?w*2+a.margin*4:a.margin*2,fe=(b-K-ve)*Ee;Xe(fe),l.scrollTop=O,L(),C(!0),T(f.delay)}},o=c.current;if(o)return o.addEventListener("keydown",t),()=>{o.removeEventListener("keydown",t)}},[m,q,w,a.margin,ve,L,T,f.delay,we]),(0,e.useEffect)(()=>(document.addEventListener("mousemove",ot),document.addEventListener("mouseup",rt),()=>{document.removeEventListener("mousemove",ot),document.removeEventListener("mouseup",rt)}),[se,ot,rt]),(0,e.useEffect)(()=>{if(U)return document.addEventListener("mousemove",Qe),document.addEventListener("mouseup",Je),()=>{document.removeEventListener("mousemove",Qe),document.removeEventListener("mouseup",Je)}},[U,Qe,Je]),(0,e.useEffect)(()=>{if(_)return document.addEventListener("mousemove",et),document.addEventListener("mouseup",tt),()=>{document.removeEventListener("mousemove",et),document.removeEventListener("mouseup",tt)}},[_,et,tt]),(0,e.useEffect)(()=>{h();let t=setTimeout(()=>{h()},100);return()=>clearTimeout(t)},[h]),(0,e.useLayoutEffect)(()=>{Wt(!0),h(),!f.enabled&&!ce&&G()&&C(!0)},[G,h,f.enabled,ce]),(0,e.useEffect)(()=>{if(f.initialDelay>0){let t=setTimeout(()=>{Nt(!1)},f.initialDelay);return()=>clearTimeout(t)}},[f.initialDelay]);let wt=(0,e.useRef)(h);wt.current=h;let ue=(0,e.useRef)(null),St=(0,e.useCallback)(()=>{ue.current===null&&(ue.current=requestAnimationFrame(()=>{ue.current=null,wt.current()}))},[]);(0,e.useEffect)(()=>()=>{ue.current!==null&&(cancelAnimationFrame(ue.current),ue.current=null)},[]),(0,e.useEffect)(()=>{let t=new ResizeObserver(()=>{St()}),o=[];return c.current&&o.push(c.current),be.current&&o.push(be.current),N.current&&document.contains(N.current)&&o.push(N.current),o.forEach(n=>{t.observe(n)}),()=>t.disconnect()},[h,St]),(0,e.useEffect)(()=>{if(!c.current)return;let t=new MutationObserver(()=>{N.current=null,h()});return t.observe(c.current,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}),()=>t.disconnect()},[h]);let I=Math.max(Ut,w);(0,e.useEffect)(()=>{let t="overlay-scrollbar-shared";if(document.getElementById(t))return;let o=document.createElement("style");o.id=t,o.textContent=`
|
|
1
|
+
"use strict";var nt=Object.defineProperty;var to=Object.getOwnPropertyDescriptor;var oo=Object.getOwnPropertyNames;var ro=Object.prototype.hasOwnProperty;var no=(r,i)=>{for(var d in i)nt(r,d,{get:i[d],enumerable:!0})},lo=(r,i,d,u)=>{if(i&&typeof i=="object"||typeof i=="function")for(let g of oo(i))!ro.call(r,g)&&g!==d&&nt(r,g,{get:()=>i[g],enumerable:!(u=to(i,g))||u.enumerable});return r};var io=r=>lo(nt({},"__esModule",{value:!0}),r);var xo={};no(xo,{OverlayScrollbar:()=>it,default:()=>it});module.exports=io(xo);var e=require("react");var ao=["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"],Ae=(r,i)=>{if(r instanceof HTMLElement&&r.isContentEditable||r.closest('[role="textbox"],[role="searchbox"]'))return!0;let d=r.tagName.toLowerCase();if(d==="input"){let u=(r.type||"text").toLowerCase();return!["button","submit","reset","image","hidden"].includes(u)}if(["textarea","select","button"].includes(d)||["svg","path","circle","rect","line","polygon","polyline"].includes(d)||r.getAttribute("contenteditable")==="true")return!0;if(i?.excludeSelectors){for(let u of i.excludeSelectors)if(r.matches(u))return!0}return so(r,i)},so=(r,i)=>{if(r.closest('[data-drag-scroll="off"]'))return!0;let d=[...ao,...i?.excludeClasses||[]],u=r,g=0,M=5;for(;u&&g<=M;){if(d.some(R=>u.classList.contains(R)))return!0;if(u.classList.contains("MuiDialogContent-root"))break;u=u.parentElement,g++}return!1};var co=r=>{if(r==null)return null;if(typeof r=="number")return Number.isFinite(r)?r:null;let i=r.trim();if(i==="")return null;let d=/^(-?\d*\.?\d+)(px)?$/.exec(i);if(!d)return null;let u=Number.parseFloat(d[1]);return Number.isFinite(u)?u:null},uo=r=>{if(r==null)return;if(typeof r=="number")return r;let i=r.trim().split(/\s+/);if(!(i.length===0||i[0]===""))return i.length===1||i.length===2?i[0]:i[2]},fo=r=>{let i=typeof r=="number"?[`${r}px`]:r.trim().split(/\s+/),[d,u=d,g=d,M=u]=i;return`${d} ${u} 0 ${M}`},lt=r=>{if(!r)return{style:r,spacerHeight:0};let i=r.paddingBottom!==void 0,d=r.padding!==void 0;if(!i&&!d)return{style:r,spacerHeight:0};let u=i?r.paddingBottom:uo(r.padding),g=co(u);if(g===null||g<=0)return{style:r,spacerHeight:0};let M={...r};return d&&r.padding!==void 0&&(M.padding=fo(r.padding)),i&&(M.paddingBottom=0),{style:M,spacerHeight:g}};var $=require("react"),Ct=({containerRef:r,config:i})=>{let d=i.enabled??!0,u=i.threshold??80,g=i.maxDistance??u*2,M=i.onRefresh,[R,k]=(0,$.useState)(0),[A,X]=(0,$.useState)(!1),W=(0,$.useRef)(0),pe=(0,$.useRef)(0),F=(0,$.useRef)(!1),Z=(0,$.useRef)(!1),oe=(0,$.useRef)(!1),Y=(0,$.useRef)(0),re=(0,$.useRef)(!1);return(0,$.useEffect)(()=>{re.current=A},[A]),(0,$.useEffect)(()=>{let y=r.current;if(!y||!(d&&typeof M=="function"))return;let Me=E=>{let x=E instanceof Element?E:null;for(;x&&x!==y;){if(x instanceof HTMLElement&&x.scrollHeight>x.clientHeight+1&&x.scrollTop>0)return!1;x=x.parentElement}return!0},We=E=>{F.current=!1,Z.current=!1,oe.current=!1,!re.current&&E.touches.length===1&&y.scrollTop===0&&Me(E.target)&&(F.current=!0,W.current=E.touches[0].clientY,pe.current=E.touches[0].clientX)},Q=E=>{if(!F.current||re.current||E.touches.length!==1)return;let x=E.touches[0].clientY-W.current,Be=E.touches[0].clientX-pe.current;if(!Z.current){if(x<=0||y.scrollTop>0){F.current=!1;return}if(x>8&&x>Math.abs(Be))Z.current=!0,oe.current=y.scrollTop<0;else return}!oe.current&&E.cancelable&&E.preventDefault();let He=Math.min(Math.max(x,0)*.5,g);Y.current=He,k(He)},j=()=>{if(!F.current||(F.current=!1,!Z.current))return;Z.current=!1,oe.current=!1;let E=Y.current;Y.current=0,E>=u&&!re.current?(X(!0),k(u),Promise.resolve().then(()=>M()).catch(()=>{}).finally(()=>{X(!1),k(0)})):k(0)},P=!1,me=()=>{P||(y.addEventListener("touchmove",Q,{passive:!1}),P=!0)},Ce=()=>{P&&(y.removeEventListener("touchmove",Q),P=!1)},le=E=>{let x=E.target;x instanceof HTMLElement&&(x.scrollHeight<=x.clientHeight+1||(x.scrollTop<=0?me():F.current||Ce()))};return me(),y.addEventListener("scroll",le,{passive:!0,capture:!0}),y.addEventListener("touchstart",We,{passive:!0}),y.addEventListener("touchend",j,{passive:!0}),y.addEventListener("touchcancel",j,{passive:!0}),()=>{y.removeEventListener("touchstart",We),Ce(),y.removeEventListener("scroll",le,{capture:!0}),y.removeEventListener("touchend",j),y.removeEventListener("touchcancel",j)}},[r,d,M,u,g]),{pullDistance:R,isRefreshing:A,pullProgress:Math.min(R/u,1),pullThreshold:u}};var ze=require("react");function Ht(){let[r,i]=(0,ze.useState)(()=>typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia("(pointer: coarse)").matches);return(0,ze.useEffect)(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;let d=window.matchMedia("(pointer: coarse)"),u=g=>i(g.matches);return i(d.matches),typeof d.addEventListener=="function"?(d.addEventListener("change",u),()=>d.removeEventListener("change",u)):(d.addListener(u),()=>d.removeListener(u))},[]),r}var v=require("react/jsx-runtime"),po={},mo={},ho={},bo={},go={},vo={},yo=(0,e.forwardRef)(({className:r="",style:i={},containerStyle:d={},contentStyle:u={},children:g,onScroll:M,thumb:R=po,track:k=mo,arrows:A=ho,dragScroll:X=bo,autoHide:W=go,pullToRefresh:pe=vo,showScrollbar:F=!0,showHorizontalScrollbar:Z=!0,detectInnerScroll:oe=!1,scrollTopFab:Y=!1},re)=>{let y=Ht(),ne=F,Me=y?!1:Z,Q=`os-${(0,e.useId)().replace(/[^a-zA-Z0-9_-]/g,"")}`,j=Y!==!1&&Y!=null,P=typeof Y=="object"?Y:{},me=P.threshold??600,Ce=P.idleOpacity??P.scrollingOpacity??.45,le=P.hideDelay??1500,E=P.position??"right",x=P.offset??16,Be=P.offsetBottom??x,He=P.background??"#1976d2",Lt=P.color??"#ffffff",Le=P.size??48,[Fe,at]=(0,e.useState)(!1),[Dt,he]=(0,e.useState)(!1),J=(0,e.useRef)(null),Rt=(0,e.useRef)({});(0,e.useEffect)(()=>{Rt.current={children:g,onScroll:M,showScrollbar:ne,showHorizontalScrollbar:Me,thumb:R,track:k,arrows:A,dragScroll:X,autoHide:W}});let Ne=(0,e.useRef)(null),c=(0,e.useRef)(null),be=(0,e.useRef)(null),ge=(0,e.useRef)(null),kt=(0,e.useRef)(null),N=(0,e.useRef)(null),{pullDistance:Ue,isRefreshing:De,pullProgress:_e}=Ct({containerRef:c,config:pe}),st=pe.indicatorColor??"#1976d2",Pt=Ue>0||De,[Re,C]=(0,e.useState)(!1),[U,ct]=(0,e.useState)(!1),[ut,dt]=(0,e.useState)(!1),[qe,It]=(0,e.useState)({y:0,scrollTop:0}),[ve,ft]=(0,e.useState)(0),[$t,Xe]=(0,e.useState)(0),[ie,pt]=(0,e.useState)(!1),[mt,ht]=(0,e.useState)(!1),[_,bt]=(0,e.useState)(!1),[Ye,Ot]=(0,e.useState)({x:0,scrollLeft:0}),[je,gt]=(0,e.useState)(0),[Ge,vt]=(0,e.useState)(0),[At,yt]=(0,e.useState)(!1),ae=(0,e.useRef)(!1),[se,xt]=(0,e.useState)(!1),Ke=(0,e.useRef)(!1),[ye,zt]=(0,e.useState)({x:0,y:0,scrollTop:0,scrollLeft:0}),[wo,To]=(0,e.useState)(null),[ke,Pe]=(0,e.useState)(null),[So,Wt]=(0,e.useState)(!1),[Bt,Ft]=(0,e.useState)(0),xe=(0,e.useRef)(null),Ve=(0,e.useRef)(!1),we=(0,e.useRef)(null),ee=(0,e.useRef)(null),te=(0,e.useRef)(null),H=(0,e.useMemo)(()=>{let t=R.color??"#606060";return{width:R.width??8,minHeight:R.minHeight??50,radius:R.radius??(R.width??8)/2,color:t,opacity:R.opacity??.6,hoverColor:R.hoverColor??t,hoverOpacity:R.hoverOpacity??1}},[R]),a=(0,e.useMemo)(()=>({width:k.width??16,color:k.color??"rgba(128, 128, 128, 0.1)",visible:k.visible??!0,alignment:k.alignment??"outside",radius:k.radius??H.radius??4,margin:k.margin??4,overflowX:k.overflowX??!0,overflowY:k.overflowY??!0}),[k,H.radius]),B=(0,e.useMemo)(()=>{let t=A.color??"#808080";return{visible:A.visible??!1,step:A.step??50,color:t,opacity:A.opacity??.6,hoverColor:A.hoverColor??t,hoverOpacity:A.hoverOpacity??1}},[A]),Te=(0,e.useMemo)(()=>({enabled:y?!1:X.enabled??!0,excludeClasses:X.excludeClasses??[],excludeSelectors:X.excludeSelectors??[]}),[X,y]),f=(0,e.useMemo)(()=>({enabled:W.enabled??!0,delay:W.delay??1500,delayOnWheel:W.delayOnWheel??700,initialDelay:W.initialDelay??200}),[W]),[ce,Nt]=(0,e.useState)(()=>(W.initialDelay??200)>0),T=H.width,Ut=a.width,Ze=H.minHeight,q=B.visible,Ie=B.step,z=(0,e.useCallback)(()=>{if(!c.current)return;let t=document.activeElement;t&&c.current.contains(t)&&t!==c.current||c.current.focus()},[]);(0,e.useImperativeHandle)(re,()=>({getScrollContainer:()=>c.current,scrollTo:t=>{c.current&&c.current.scrollTo(t)},get scrollTop(){return c.current?.scrollTop||0},get scrollHeight(){return c.current?.scrollHeight||0},get clientHeight(){return c.current?.clientHeight||0}}),[]);let h=(0,e.useCallback)(()=>{if(N.current){let o=N.current;if(document.contains(o)&&(o.scrollHeight>o.clientHeight+2||o.scrollWidth>o.clientWidth+2))return o;N.current=null}if(!c.current)return null;if(c.current.scrollHeight>c.current.clientHeight+2||c.current.scrollWidth>c.current.clientWidth+2)return N.current=c.current,c.current;if(!oe)return null;let t=c.current.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]');for(let o of t){let n=o;if(n!==c.current&&n.classList.contains("overlay-scrollbar-container"))continue;let s=n.parentElement,l=!1;for(;s&&s!==c.current;){if(s.classList.contains("overlay-scrollbar-container")&&s!==c.current){l=!0;break}s=s.parentElement}if(!l&&(n.scrollHeight>n.clientHeight+2||n.scrollWidth>n.clientWidth+2))return N.current=n,n}return null},[]),G=(0,e.useCallback)(()=>h()!==null,[h]),L=(0,e.useCallback)(()=>{we.current&&(clearTimeout(we.current),we.current=null)},[]),$e=(0,e.useCallback)(()=>{ee.current&&(clearTimeout(ee.current),ee.current=null)},[]),wt=(0,e.useCallback)(()=>{te.current&&(clearTimeout(te.current),te.current=null)},[]),_t=(0,e.useCallback)(()=>{$e(),!(U||_||se||ae.current)&&(L(),C(!1))},[L,$e,U,_,se]),w=(0,e.useCallback)(t=>{f.enabled&&(L(),we.current=setTimeout(()=>{C(!1),we.current=null},t))},[L,f.enabled]),m=(0,e.useCallback)(()=>{let t=h()??c.current;if(!t){C(!1),pt(!1),yt(!1),L();return}!f.enabled&&!ce&&(C(!0),L());let o=t.clientHeight,n=t.scrollHeight,s=t.scrollTop,l=t.clientWidth,p=t.scrollWidth,S=t.scrollLeft,D=n-o>0,b=p-l>0,de=D||b;pt(D),yt(b),de||(C(!1),L());let Se=0,O=0;if(Ne.current){let K=window.getComputedStyle(Ne.current),V=parseFloat(K.paddingTop)||0;O=parseFloat(K.paddingBottom)||0,Se=V+O,Ft(O)}if(D){let K=q?T*2+a.margin*4:a.margin*2,V=o-K+Se,Oe=o/n,fe=Math.max(V*Oe,Ze),Mt=n-o,Jt=V-fe,eo=Mt>0?s/Mt*Jt:0;ft(fe),Xe(eo)}else ft(0),Xe(0);let Ee=p-l;if(Ee>0){let K=l/p,V=Math.max(l*K,50),Oe=l-V,fe=Ee>0?S/Ee*Oe:0;gt(V),vt(fe)}else gt(0),vt(0)},[h,L,q,T,Ze,f.enabled,ce]),qt=(0,e.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let o=h();o&&(ct(!0),It({y:t.clientY,scrollTop:o.scrollTop}),L(),C(!0),z())},[h,L,z]),Qe=(0,e.useCallback)(t=>{if(!U)return;let o=h();if(!o)return;let n=o.clientHeight,l=o.scrollHeight-n,p=t.clientY-qe.y,S=n-ve,D=p/S*l,b=Math.max(0,Math.min(l,qe.scrollTop+D));o.scrollTop=b,m()},[U,qe,ve,m,h]),Je=(0,e.useCallback)(()=>{ct(!1),G()&&w(f.delay)},[G,w,f.delay]),Xt=(0,e.useCallback)(t=>{if(!ge.current)return;let n=ge.current.getBoundingClientRect(),s=t.clientY-n.top,l=h();if(!l)return;let p=l.clientHeight,S=l.scrollHeight,b=s/p*(S-p);l.scrollTop=Math.max(0,Math.min(S-p,b)),m(),C(!0),w(f.delay),z()},[m,w,f.delay,h,z]),Yt=(0,e.useCallback)(t=>{if(t.preventDefault(),t.stopPropagation(),!c.current)return;let o=Math.max(0,c.current.scrollTop-Ie);c.current.scrollTop=o,m(),C(!0),w(f.delay),z()},[m,w,Ie,f.delay,z]),jt=(0,e.useCallback)(t=>{if(t.preventDefault(),t.stopPropagation(),!c.current||!be.current)return;let o=c.current,s=be.current.scrollHeight-o.clientHeight,l=Math.min(s,o.scrollTop+Ie);o.scrollTop=l,m(),C(!0),w(f.delay),z()},[m,w,Ie,f.delay,z]),Gt=(0,e.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let o=h();o&&(bt(!0),Ot({x:t.clientX,scrollLeft:o.scrollLeft}),L(),C(!0),z())},[h,L,z]),et=(0,e.useCallback)(t=>{if(!_)return;let o=h();if(!o)return;let n=o.clientWidth,l=o.scrollWidth-n,p=t.clientX-Ye.x,S=n-je,D=p/S*l,b=Math.max(0,Math.min(l,Ye.scrollLeft+D));o.scrollLeft=b,m()},[_,Ye,je,m,h]),tt=(0,e.useCallback)(()=>{bt(!1),G()&&w(f.delay)},[G,w,f.delay]),Kt=(0,e.useCallback)(t=>{if(!ge.current)return;let n=ge.current.getBoundingClientRect(),s=t.clientX-n.left,l=h();if(!l)return;let p=l.clientWidth,S=l.scrollWidth,b=s/p*(S-p);l.scrollLeft=Math.max(0,Math.min(S-p,b)),m(),C(!0),w(f.delay),z()},[m,w,f.delay,h,z]),Vt=(0,e.useCallback)(t=>{if(!Te.enabled||t.defaultPrevented)return;let o=t.target,n=c.current;if(!n||!n.contains(o)||Ae(o,Te)||t.button!==0)return;let s=h();if(!s||s.scrollHeight<=s.clientHeight&&s.scrollWidth<=s.clientWidth)return;t.preventDefault();let l=document.activeElement;l instanceof HTMLElement&&l!==document.body&&!l.contains(o)&&l.blur(),ae.current=!0,zt({x:t.clientX,y:t.clientY,scrollTop:s.scrollTop,scrollLeft:s.scrollLeft||0})},[Te,Ae,h]),ot=(0,e.useCallback)(t=>{if(!ae.current&&!se)return;let o=h();if(!o)return;let n=ye.x-t.clientX,s=ye.y-t.clientY;if(Math.abs(s)<5&&Math.abs(n)<5)return;ae.current&&(ae.current=!1,Ke.current=!0,xt(!0)),C(!0);let l=Math.max(0,Math.min(o.scrollHeight-o.clientHeight,ye.scrollTop+s)),p=Math.max(0,Math.min(o.scrollWidth-o.clientWidth,ye.scrollLeft+n));o.scrollTop=l,o.scrollLeft=p,m()},[se,ye,h,m]),rt=(0,e.useCallback)(()=>{let t=Ke.current;if(t){let o=n=>{n.preventDefault(),n.stopPropagation(),window.removeEventListener("click",o,!0)};window.addEventListener("click",o,!0),window.setTimeout(()=>window.removeEventListener("click",o,!0),0)}ae.current=!1,Ke.current=!1,xt(!1),t&&G()&&w(f.delay)},[G,w,f.delay]);(0,e.useEffect)(()=>{let t=p=>{if(m(),j){let b=(p.target?.scrollTop??0)>me;at(b),J.current&&(clearTimeout(J.current),J.current=null),b&&le>0&&(J.current=setTimeout(()=>{J.current=null,at(!1)},le))}if(ce){M&&M(p);return}L(),C(!0),wt();let S=Ve.current?f.delayOnWheel:f.delay;w(S),M&&M(p)},o=()=>{Ve.current=!0,xe.current&&clearTimeout(xe.current),xe.current=setTimeout(()=>{Ve.current=!1},300),wt(),te.current=setTimeout(()=>{C(!0),te.current=null,w(f.delayOnWheel)},50)},n=[],s=h();s&&n.push(s);let l=c.current;return l&&!s&&(n.push(l),l.querySelectorAll('[data-virtuoso-scroller], [style*="overflow"], .virtuoso-scroller, [style*="overflow: auto"], [style*="overflow:auto"]').forEach(S=>{let D=S;if(D!==l&&D.classList.contains("overlay-scrollbar-container"))return;let b=D.parentElement;for(;b&&b!==l;){if(b.classList.contains("overlay-scrollbar-container")&&b!==l)return;b=b.parentElement}n.push(D)})),n.forEach(p=>{p.addEventListener("scroll",t,{passive:!0}),p.addEventListener("wheel",o,{passive:!0})}),()=>{n.forEach(p=>{p.removeEventListener("scroll",t),p.removeEventListener("wheel",o)})}},[h,m,M,L,w,f,ce,j,me,le]),(0,e.useEffect)(()=>()=>{J.current&&clearTimeout(J.current),xe.current&&clearTimeout(xe.current),te.current&&clearTimeout(te.current)},[]),(0,e.useEffect)(()=>{let t=n=>{let s=n.target;if(n.defaultPrevented||s instanceof Element&&Ae(s,Te))return;let l=h();if(!l)return;let{key:p}=n,{scrollTop:S,scrollHeight:D,clientHeight:b}=l,de=D-b,Se=50,O=null;switch(p){case"ArrowUp":n.preventDefault(),O=Math.max(0,S-Se);break;case"ArrowDown":n.preventDefault(),O=Math.min(de,S+Se);break;case"PageUp":n.preventDefault(),O=Math.max(0,S-b);break;case"PageDown":n.preventDefault(),O=Math.min(de,S+b);break;case"Home":n.preventDefault(),O=0;break;case"End":n.preventDefault(),O=de;break;default:return}if(O!==null){let Ee=O/de,K=q?T*2+a.margin*4:a.margin*2,fe=(b-K-ve)*Ee;Xe(fe),l.scrollTop=O,L(),C(!0),w(f.delay)}},o=c.current;if(o)return o.addEventListener("keydown",t),()=>{o.removeEventListener("keydown",t)}},[h,q,T,a.margin,ve,L,w,f.delay,Te]),(0,e.useEffect)(()=>(document.addEventListener("mousemove",ot),document.addEventListener("mouseup",rt),()=>{document.removeEventListener("mousemove",ot),document.removeEventListener("mouseup",rt)}),[se,ot,rt]),(0,e.useEffect)(()=>{if(U)return document.addEventListener("mousemove",Qe),document.addEventListener("mouseup",Je),()=>{document.removeEventListener("mousemove",Qe),document.removeEventListener("mouseup",Je)}},[U,Qe,Je]),(0,e.useEffect)(()=>{if(_)return document.addEventListener("mousemove",et),document.addEventListener("mouseup",tt),()=>{document.removeEventListener("mousemove",et),document.removeEventListener("mouseup",tt)}},[_,et,tt]),(0,e.useEffect)(()=>{m();let t=setTimeout(()=>{m()},100);return()=>clearTimeout(t)},[m]),(0,e.useLayoutEffect)(()=>{Wt(!0),m(),!f.enabled&&!ce&&G()&&C(!0)},[G,m,f.enabled,ce]),(0,e.useEffect)(()=>{if(f.initialDelay>0){let t=setTimeout(()=>{Nt(!1)},f.initialDelay);return()=>clearTimeout(t)}},[f.initialDelay]);let Tt=(0,e.useRef)(m);Tt.current=m;let ue=(0,e.useRef)(null),St=(0,e.useCallback)(()=>{ue.current===null&&(ue.current=requestAnimationFrame(()=>{ue.current=null,Tt.current()}))},[]);(0,e.useEffect)(()=>()=>{ue.current!==null&&(cancelAnimationFrame(ue.current),ue.current=null)},[]),(0,e.useEffect)(()=>{let t=new ResizeObserver(()=>{St()}),o=[];return c.current&&o.push(c.current),be.current&&o.push(be.current),N.current&&document.contains(N.current)&&o.push(N.current),o.forEach(n=>{t.observe(n)}),()=>t.disconnect()},[m,St]),(0,e.useEffect)(()=>{if(!c.current)return;let t=new MutationObserver(()=>{N.current=null,m()});return t.observe(c.current,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}),()=>t.disconnect()},[m]);let I=Math.max(Ut,T);(0,e.useEffect)(()=>{let t="overlay-scrollbar-shared";if(document.getElementById(t))return;let o=document.createElement("style");o.id=t,o.textContent=`
|
|
2
2
|
/* ehfuse-editor-content\uB294 \uC2A4\uD06C\uB864\uBC14 \uC720\uC9C0 */
|
|
3
3
|
.overlay-scrollbar-container .ehfuse-editor-content {
|
|
4
4
|
scrollbar-width: thin !important;
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
height: 0 !important;
|
|
39
39
|
}
|
|
40
40
|
${s}::-webkit-scrollbar-track { display: none !important; }
|
|
41
|
-
${s}::-webkit-scrollbar-thumb { display: none !important; }`,document.head.appendChild(n),()=>{document.getElementById(t)?.remove()}},[Q]);let{normalizedContainerStyle:Zt,normalizedContentStyle:Qt,bottomSpacerHeight:Et}=(0,e.useMemo)(()=>{let t=lt(d),o=lt(u);return{normalizedContainerStyle:t.style,normalizedContentStyle:o.style,bottomSpacerHeight:t.spacerHeight+o.spacerHeight}},[d,u]);return(0,v.jsxs)("div",{ref:Ne,className:`overlay-scrollbar-wrapper ${r}`,onMouseLeave:_t,style:{display:"flex",flexDirection:"column",position:"relative",minHeight:0,height:"100%",flex:"1 1 0%",overflow:"visible",...i},children:[Pt&&(0,v.jsx)("div",{className:"overlay-scrollbar-pull-indicator",style:{position:"absolute",top:0,left:"50%",transform:`translate(-50%, ${Ue-68}px)`,transition:
|
|
41
|
+
${s}::-webkit-scrollbar-thumb { display: none !important; }`,document.head.appendChild(n),()=>{document.getElementById(t)?.remove()}},[Q]);let{normalizedContainerStyle:Zt,normalizedContentStyle:Qt,bottomSpacerHeight:Et}=(0,e.useMemo)(()=>{let t=lt(d),o=lt(u);return{normalizedContainerStyle:t.style,normalizedContentStyle:o.style,bottomSpacerHeight:t.spacerHeight+o.spacerHeight}},[d,u]);return(0,v.jsxs)("div",{ref:Ne,className:`overlay-scrollbar-wrapper ${r}`,onMouseLeave:_t,style:{display:"flex",flexDirection:"column",position:"relative",minHeight:0,height:"100%",flex:"1 1 0%",overflow:"visible",...i},children:[Pt&&(0,v.jsx)("div",{className:"overlay-scrollbar-pull-indicator",style:{position:"absolute",top:0,left:"50%",transform:`translate(-50%, ${Ue-68}px)`,transition:De?"transform 0.15s ease-out":Ue===0?"transform 0.2s ease-out":"none",width:60,height:60,borderRadius:"50%",background:"#ffffff",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.25)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1001,pointerEvents:"none",opacity:De?1:Math.min(_e*1.5,1)},children:De?(0,v.jsx)("svg",{width:"36",height:"36",viewBox:"0 0 24 24",style:{animation:"overlay-scrollbar-ptr-spin 0.8s linear infinite"},children:(0,v.jsx)("circle",{cx:"12",cy:"12",r:"9",fill:"none",stroke:st,strokeWidth:"2.5",strokeLinecap:"round",strokeDasharray:"42",strokeDashoffset:"14"})}):(0,v.jsx)("svg",{width:"36",height:"36",viewBox:"0 0 24 24",style:{transform:`rotate(${_e*270}deg)`,opacity:_e>=1?1:.6},children:(0,v.jsx)("path",{d:"M17.65 6.35A7.958 7.958 0 0 0 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08A5.99 5.99 0 0 1 12 18c-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z",fill:st})})}),(0,v.jsx)("div",{ref:c,className:`overlay-scrollbar-container ${Q}`,tabIndex:-1,onMouseDown:Vt,style:{display:"flex",width:"100%",flex:"1 1 auto",minHeight:0,overflow:"auto",outline:"none",userSelect:se?"none":"auto",...Zt},children:(0,v.jsxs)("div",{ref:be,className:"overlay-scrollbar-content",style:{flex:"1 1 auto",display:"flex",flexDirection:"column",boxSizing:"border-box",...Qt},children:[g,Et>0&&(0,v.jsx)("div",{className:"overlay-scrollbar-bottom-spacer","aria-hidden":"true",style:{flex:"0 0 auto",height:Et}})]})}),ne&&ie&&(a.overflowY??!0)&&(0,v.jsxs)("div",{ref:ge,className:"overlay-scrollbar-track",onMouseEnter:()=>{y||(L(),ee.current=setTimeout(()=>{C(!0),ee.current=null},100))},onMouseLeave:()=>{$e(),U||w(f.delay)},style:{position:"absolute",top:0,right:0,width:`${I}px`,height:"100%",opacity:Re?1:0,transition:"opacity 0.2s ease-in-out",cursor:"pointer",zIndex:1e3,pointerEvents:"auto"},children:[a.visible&&(0,v.jsx)("div",{className:"overlay-scrollbar-track-background",onClick:t=>{t.preventDefault(),t.stopPropagation(),Xt(t)},style:{position:"absolute",top:q?`${H.width+a.margin*2}px`:`${a.margin}px`,right:a.alignment==="outside"?"0px":`${(I-H.width)/2}px`,width:`${H.width}px`,height:q?`calc(100% - ${H.width*2+a.margin*4}px)`:`calc(100% - ${a.margin*2}px)`,backgroundColor:a.color,borderRadius:`${a.radius}px`,cursor:"pointer"}}),(0,v.jsx)("div",{ref:kt,className:"overlay-scrollbar-thumb",onMouseDown:qt,onMouseEnter:()=>dt(!0),onMouseLeave:()=>dt(!1),style:{position:"absolute",top:`${(q?T+a.margin*2:a.margin)+$t}px`,right:a.alignment==="outside"?"0px":`${(I-T)/2}px`,width:`${T}px`,height:`${Math.max(ve,Ze)}px`,backgroundColor:ut||U?H.hoverColor:H.color,opacity:ut||U?H.hoverOpacity:H.opacity,borderRadius:`${H.radius}px`,cursor:"pointer",transition:"background-color 0.2s ease-in-out, opacity 0.2s ease-in-out"}})]}),ne&&ie&&q&&(0,v.jsx)("div",{className:"overlay-scrollbar-up-arrow",onClick:Yt,onMouseEnter:()=>Pe("up"),onMouseLeave:()=>Pe(null),style:{position:"absolute",top:`${a.margin}px`,right:a.alignment==="outside"?"0px":`${(I-T)/2}px`,width:`${T}px`,height:`${T}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(T*.75,8)}px`,color:ke==="up"?B.hoverColor:B.color,userSelect:"none",zIndex:1001,opacity:Re?ke==="up"?B.hoverOpacity:B.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25B2"}),ne&&ie&&q&&(0,v.jsx)("div",{className:"overlay-scrollbar-down-arrow",onClick:jt,onMouseEnter:()=>Pe("down"),onMouseLeave:()=>Pe(null),style:{position:"absolute",bottom:`${a.margin}px`,right:a.alignment==="outside"?"0px":`${(I-T)/2}px`,width:`${T}px`,height:`${T}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(T*.75,8)}px`,color:ke==="down"?B.hoverColor:B.color,userSelect:"none",zIndex:1001,opacity:Re?ke==="down"?B.hoverOpacity:B.opacity:0,transition:"opacity 0.2s ease-in-out, color 0.15s ease-in-out"},children:"\u25BC"}),ne&&Me&&At&&(a.overflowX??!0)&&(0,v.jsxs)("div",{className:"overlay-scrollbar-horizontal-track",onMouseEnter:()=>{y||(L(),ee.current=setTimeout(()=>{C(!0),ee.current=null},100))},onMouseLeave:()=>{$e(),_||w(f.delay)},style:{position:"absolute",bottom:`${Bt}px`,left:0,width:"100%",height:`${I}px`,opacity:Re?1:0,transition:"opacity 0.2s ease-in-out",cursor:"pointer",zIndex:1e3,pointerEvents:"auto"},children:[a.visible&&(0,v.jsx)("div",{className:"overlay-scrollbar-horizontal-track-background",onClick:t=>{t.preventDefault(),t.stopPropagation(),Kt(t)},style:{position:"absolute",bottom:a.alignment==="outside"?"0px":`${(I-T)/2}px`,left:`${a.margin}px`,right:ie?a.alignment==="outside"?`${I-a.margin}px`:`${I}px`:`${a.margin}px`,height:`${T}px`,backgroundColor:a.color,borderRadius:`${a.radius}px`,cursor:"pointer"}}),(0,v.jsx)("div",{className:"overlay-scrollbar-horizontal-thumb",onMouseDown:Gt,onMouseEnter:()=>ht(!0),onMouseLeave:()=>ht(!1),style:{position:"absolute",bottom:a.alignment==="outside"?"0px":`${(I-T)/2}px`,left:`${a.margin+Ge}px`,right:ie?a.alignment==="outside"?`${I-a.margin}px`:`${I}px`:"auto",maxWidth:ie?a.alignment==="outside"?`calc(100% - ${a.margin+Ge+I-a.margin}px)`:`calc(100% - ${a.margin+Ge+I}px)`:"none",width:`${Math.max(je,50)}px`,height:`${T}px`,backgroundColor:mt||_?H.hoverColor:H.color,opacity:mt||_?H.hoverOpacity:H.opacity,borderRadius:`${H.radius}px`,cursor:"pointer",transition:"background-color 0.2s ease-in-out, opacity 0.2s ease-in-out"}})]}),j&&(0,v.jsx)("button",{type:"button","aria-label":"\uB9E8 \uC704\uB85C",onClick:()=>{he(!1),(h()??c.current)?.scrollTo({top:0,behavior:"smooth"})},onPointerDown:()=>he(!0),onPointerUp:()=>he(!1),onPointerLeave:()=>he(!1),onPointerCancel:()=>he(!1),style:{position:"absolute",[E]:x,bottom:Be,zIndex:1200,width:Le,height:Le,padding:0,display:"flex",alignItems:"center",justifyContent:"center",border:"none",borderRadius:"50%",backgroundColor:He,color:Lt,boxShadow:"0 3px 8px rgba(15, 23, 42, 0.28)",cursor:"pointer",opacity:Fe?Dt?1:Ce:0,pointerEvents:Fe?"auto":"none",transition:Fe?"opacity 0.15s ease":"opacity 0.45s ease"},children:(0,v.jsxs)("svg",{width:Math.round(Le*.5),height:Math.round(Le*.5),viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,v.jsx)("line",{x1:"12",y1:"19",x2:"12",y2:"5"}),(0,v.jsx)("polyline",{points:"5 12 12 5 19 12"})]})})]})}),it=yo;
|
|
42
42
|
//# sourceMappingURL=index.js.map
|