@ehfuse/overlay-scrollbar 1.7.33 → 1.7.35
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 et=Object.defineProperty;var to=Object.getOwnPropertyDescriptor;var oo=Object.getOwnPropertyNames;var ro=Object.prototype.hasOwnProperty;var no=(r,i)=>{for(var d in i)et(r,d,{get:i[d],enumerable:!0})},lo=(r,i,d,u)=>{if(i&&typeof i=="object"||typeof i=="function")for(let v of oo(i))!ro.call(r,v)&&v!==d&&et(r,v,{get:()=>i[v],enumerable:!(u=to(i,v))||u.enumerable});return r};var io=r=>lo(et({},"__esModule",{value:!0}),r);var xo={};no(xo,{OverlayScrollbar:()=>ot,default:()=>ot});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"],Pe=(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,v=0,E=5;for(;u&&v<=E;){if(d.some(D=>u.classList.contains(D)))return!0;if(u.classList.contains("MuiDialogContent-root"))break;u=u.parentElement,v++}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,v=d,E=u]=i;return`${d} ${u} 0 ${E}`},tt=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),v=co(u);if(v===null||v<=0)return{style:r,spacerHeight:0};let E={...r};return d&&r.padding!==void 0&&(E.padding=fo(r.padding)),i&&(E.paddingBottom=0),{style:E,spacerHeight:v}};var I=require("react"),St=({containerRef:r,config:i})=>{let d=i.enabled??!0,u=i.threshold??80,v=i.maxDistance??u*2,E=i.onRefresh,[D,k]=(0,I.useState)(0),[O,_]=(0,I.useState)(!1),A=(0,I.useRef)(0),fe=(0,I.useRef)(0),q=(0,I.useRef)(!1),V=(0,I.useRef)(!1),te=(0,I.useRef)(!1),X=(0,I.useRef)(0),oe=(0,I.useRef)(!1);return(0,I.useEffect)(()=>{oe.current=O},[O]),(0,I.useEffect)(()=>{let S=r.current;if(!S||!(d&&typeof E=="function"))return;let Se=m=>{let R=m instanceof Element?m:null;for(;R&&R!==S;){if(R instanceof HTMLElement&&R.scrollHeight>R.clientHeight+1&&R.scrollTop>0)return!1;R=R.parentElement}return!0},$e=m=>{q.current=!1,V.current=!1,te.current=!1,!oe.current&&m.touches.length===1&&S.scrollTop===0&&Se(m.target)&&(q.current=!0,A.current=m.touches[0].clientY,fe.current=m.touches[0].clientX)},Z=m=>{if(!q.current||oe.current||m.touches.length!==1)return;let R=m.touches[0].clientY-A.current,Oe=m.touches[0].clientX-fe.current;if(!V.current){if(R<=0||S.scrollTop>0){q.current=!1;return}if(R>8&&R>Math.abs(Oe))V.current=!0,te.current=S.scrollTop<0;else return}!te.current&&m.cancelable&&m.preventDefault();let ne=Math.min(Math.max(R,0)*.5,v);X.current=ne,k(ne)},Y=()=>{if(!q.current||(q.current=!1,!V.current))return;V.current=!1,te.current=!1;let m=X.current;X.current=0,m>=u&&!oe.current?(_(!0),k(u),Promise.resolve().then(()=>E()).catch(()=>{}).finally(()=>{_(!1),k(0)})):k(0)};return S.addEventListener("touchstart",$e,{passive:!0}),S.addEventListener("touchmove",Z,{passive:!1}),S.addEventListener("touchend",Y,{passive:!0}),S.addEventListener("touchcancel",Y,{passive:!0}),()=>{S.removeEventListener("touchstart",$e),S.removeEventListener("touchmove",Z),S.removeEventListener("touchend",Y),S.removeEventListener("touchcancel",Y)}},[r,d,E,u,v]),{pullDistance:D,isRefreshing:O,pullProgress:Math.min(D/u,1),pullThreshold:u}};var Ie=require("react");function Et(){let[r,i]=(0,Ie.useState)(()=>typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia("(pointer: coarse)").matches);return(0,Ie.useEffect)(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;let d=window.matchMedia("(pointer: coarse)"),u=v=>i(v.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 y=require("react/jsx-runtime"),po={},mo={},ho={},bo={},go={},vo={},yo=(0,e.forwardRef)(({className:r="",style:i={},containerStyle:d={},contentStyle:u={},children:v,onScroll:E,thumb:D=po,track:k=mo,arrows:O=ho,dragScroll:_=bo,autoHide:A=go,pullToRefresh:fe=vo,showScrollbar:q=!0,showHorizontalScrollbar:V=!0,detectInnerScroll:te=!1,scrollTopFab:X=!1},oe)=>{let S=Et(),re=q,Se=S?!1:V,Z=`os-${(0,e.useId)().replace(/[^a-zA-Z0-9_-]/g,"")}`,Y=X!==!1&&X!=null,m=typeof X=="object"?X:{},R=m.threshold??600,Oe=m.idleOpacity??m.scrollingOpacity??.45,ne=m.hideDelay??1500,Mt=m.position??"right",rt=m.offset??16,Ct=m.offsetBottom??rt,Ht=m.background??"#1976d2",Lt=m.color??"#ffffff",Ee=m.size??48,[ze,nt]=(0,e.useState)(!1),[Rt,pe]=(0,e.useState)(!1),Q=(0,e.useRef)(null),Dt=(0,e.useRef)({});(0,e.useEffect)(()=>{Dt.current={children:v,onScroll:E,showScrollbar:re,showHorizontalScrollbar:Se,thumb:D,track:k,arrows:O,dragScroll:_,autoHide:A}});let Ae=(0,e.useRef)(null),c=(0,e.useRef)(null),me=(0,e.useRef)(null),he=(0,e.useRef)(null),kt=(0,e.useRef)(null),B=(0,e.useRef)(null),{pullDistance:We,isRefreshing:Me,pullProgress:Be}=St({containerRef:c,config:fe}),lt=fe.indicatorColor??"#1976d2",Pt=We>0||Me,[Ce,M]=(0,e.useState)(!1),[F,it]=(0,e.useState)(!1),[at,st]=(0,e.useState)(!1),[Fe,It]=(0,e.useState)({y:0,scrollTop:0}),[be,ct]=(0,e.useState)(0),[$t,Ne]=(0,e.useState)(0),[le,ut]=(0,e.useState)(!1),[dt,ft]=(0,e.useState)(!1),[N,pt]=(0,e.useState)(!1),[Ue,Ot]=(0,e.useState)({x:0,scrollLeft:0}),[_e,mt]=(0,e.useState)(0),[qe,ht]=(0,e.useState)(0),[zt,bt]=(0,e.useState)(!1),ie=(0,e.useRef)(!1),[ae,gt]=(0,e.useState)(!1),Xe=(0,e.useRef)(!1),[ge,At]=(0,e.useState)({x:0,y:0,scrollTop:0,scrollLeft:0}),[To,wo]=(0,e.useState)(null),[He,Le]=(0,e.useState)(null),[So,Wt]=(0,e.useState)(!1),[Bt,Ft]=(0,e.useState)(0),ve=(0,e.useRef)(null),Ye=(0,e.useRef)(!1),ye=(0,e.useRef)(null),J=(0,e.useRef)(null),ee=(0,e.useRef)(null),C=(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??C.radius??4,margin:k.margin??4,overflowX:k.overflowX??!0,overflowY:k.overflowY??!0}),[k,C.radius]),W=(0,e.useMemo)(()=>{let t=O.color??"#808080";return{visible:O.visible??!1,step:O.step??50,color:t,opacity:O.opacity??.6,hoverColor:O.hoverColor??t,hoverOpacity:O.hoverOpacity??1}},[O]),xe=(0,e.useMemo)(()=>({enabled:S?!1:_.enabled??!0,excludeClasses:_.excludeClasses??[],excludeSelectors:_.excludeSelectors??[]}),[_,S]),f=(0,e.useMemo)(()=>({enabled:A.enabled??!0,delay:A.delay??1500,delayOnWheel:A.delayOnWheel??700,initialDelay:A.initialDelay??200}),[A]),[se,Nt]=(0,e.useState)(()=>(A.initialDelay??200)>0),T=C.width,Ut=a.width,je=C.minHeight,U=W.visible,Re=W.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)(oe,()=>({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 b=(0,e.useCallback)(()=>{if(B.current){let o=B.current;if(document.contains(o)&&(o.scrollHeight>o.clientHeight+2||o.scrollWidth>o.clientWidth+2))return o;B.current=null}if(!c.current)return null;if(c.current.scrollHeight>c.current.clientHeight+2||c.current.scrollWidth>c.current.clientWidth+2)return B.current=c.current,c.current;if(!te)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 B.current=n,n}return null},[]),j=(0,e.useCallback)(()=>b()!==null,[b]),H=(0,e.useCallback)(()=>{ye.current&&(clearTimeout(ye.current),ye.current=null)},[]),De=(0,e.useCallback)(()=>{J.current&&(clearTimeout(J.current),J.current=null)},[]),vt=(0,e.useCallback)(()=>{ee.current&&(clearTimeout(ee.current),ee.current=null)},[]),_t=(0,e.useCallback)(()=>{De(),!(F||N||ae||ie.current)&&(H(),M(!1))},[H,De,F,N,ae]),x=(0,e.useCallback)(t=>{f.enabled&&(H(),ye.current=setTimeout(()=>{M(!1),ye.current=null},t))},[H,f.enabled]),h=(0,e.useCallback)(()=>{let t=b()??c.current;if(!t){M(!1),ut(!1),bt(!1),H();return}!f.enabled&&!se&&(M(!0),H());let o=t.clientHeight,n=t.scrollHeight,s=t.scrollTop,l=t.clientWidth,p=t.scrollWidth,w=t.scrollLeft,L=n-o>0,g=p-l>0,ue=L||g;ut(L),bt(g),ue||(M(!1),H());let Te=0,$=0;if(Ae.current){let G=window.getComputedStyle(Ae.current),K=parseFloat(G.paddingTop)||0;$=parseFloat(G.paddingBottom)||0,Te=K+$,Ft($)}if(L){let G=U?T*2+a.margin*4:a.margin*2,K=o-G+Te,ke=o/n,de=Math.max(K*ke,je),wt=n-o,Jt=K-de,eo=wt>0?s/wt*Jt:0;ct(de),Ne(eo)}else ct(0),Ne(0);let we=p-l;if(we>0){let G=l/p,K=Math.max(l*G,50),ke=l-K,de=we>0?w/we*ke:0;mt(K),ht(de)}else mt(0),ht(0)},[b,H,U,T,je,f.enabled,se]),qt=(0,e.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let o=b();o&&(it(!0),It({y:t.clientY,scrollTop:o.scrollTop}),H(),M(!0),z())},[b,H,z]),Ge=(0,e.useCallback)(t=>{if(!F)return;let o=b();if(!o)return;let n=o.clientHeight,l=o.scrollHeight-n,p=t.clientY-Fe.y,w=n-be,L=p/w*l,g=Math.max(0,Math.min(l,Fe.scrollTop+L));o.scrollTop=g,h()},[F,Fe,be,h,b]),Ke=(0,e.useCallback)(()=>{it(!1),j()&&x(f.delay)},[j,x,f.delay]),Xt=(0,e.useCallback)(t=>{if(!he.current)return;let n=he.current.getBoundingClientRect(),s=t.clientY-n.top,l=b();if(!l)return;let p=l.clientHeight,w=l.scrollHeight,g=s/p*(w-p);l.scrollTop=Math.max(0,Math.min(w-p,g)),h(),M(!0),x(f.delay),z()},[h,x,f.delay,b,z]),Yt=(0,e.useCallback)(t=>{if(t.preventDefault(),t.stopPropagation(),!c.current)return;let o=Math.max(0,c.current.scrollTop-Re);c.current.scrollTop=o,h(),M(!0),x(f.delay),z()},[h,x,Re,f.delay,z]),jt=(0,e.useCallback)(t=>{if(t.preventDefault(),t.stopPropagation(),!c.current||!me.current)return;let o=c.current,s=me.current.scrollHeight-o.clientHeight,l=Math.min(s,o.scrollTop+Re);o.scrollTop=l,h(),M(!0),x(f.delay),z()},[h,x,Re,f.delay,z]),Gt=(0,e.useCallback)(t=>{t.preventDefault(),t.stopPropagation();let o=b();o&&(pt(!0),Ot({x:t.clientX,scrollLeft:o.scrollLeft}),H(),M(!0),z())},[b,H,z]),Ve=(0,e.useCallback)(t=>{if(!N)return;let o=b();if(!o)return;let n=o.clientWidth,l=o.scrollWidth-n,p=t.clientX-Ue.x,w=n-_e,L=p/w*l,g=Math.max(0,Math.min(l,Ue.scrollLeft+L));o.scrollLeft=g,h()},[N,Ue,_e,h,b]),Ze=(0,e.useCallback)(()=>{pt(!1),j()&&x(f.delay)},[j,x,f.delay]),Kt=(0,e.useCallback)(t=>{if(!he.current)return;let n=he.current.getBoundingClientRect(),s=t.clientX-n.left,l=b();if(!l)return;let p=l.clientWidth,w=l.scrollWidth,g=s/p*(w-p);l.scrollLeft=Math.max(0,Math.min(w-p,g)),h(),M(!0),x(f.delay),z()},[h,x,f.delay,b,z]),Vt=(0,e.useCallback)(t=>{if(!xe.enabled||t.defaultPrevented)return;let o=t.target,n=c.current;if(!n||!n.contains(o)||Pe(o,xe)||t.button!==0)return;let s=b();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(),ie.current=!0,At({x:t.clientX,y:t.clientY,scrollTop:s.scrollTop,scrollLeft:s.scrollLeft||0})},[xe,Pe,b]),Qe=(0,e.useCallback)(t=>{if(!ie.current&&!ae)return;let o=b();if(!o)return;let n=ge.x-t.clientX,s=ge.y-t.clientY;if(Math.abs(s)<5&&Math.abs(n)<5)return;ie.current&&(ie.current=!1,Xe.current=!0,gt(!0)),M(!0);let l=Math.max(0,Math.min(o.scrollHeight-o.clientHeight,ge.scrollTop+s)),p=Math.max(0,Math.min(o.scrollWidth-o.clientWidth,ge.scrollLeft+n));o.scrollTop=l,o.scrollLeft=p,h()},[ae,ge,b,h]),Je=(0,e.useCallback)(()=>{let t=Xe.current;ie.current=!1,Xe.current=!1,gt(!1),t&&j()&&x(f.delay)},[j,x,f.delay]);(0,e.useEffect)(()=>{let t=p=>{if(h(),Y){let g=(p.target?.scrollTop??0)>R;nt(g),Q.current&&(clearTimeout(Q.current),Q.current=null),g&&ne>0&&(Q.current=setTimeout(()=>{Q.current=null,nt(!1)},ne))}if(se){E&&E(p);return}H(),M(!0),vt();let w=Ye.current?f.delayOnWheel:f.delay;x(w),E&&E(p)},o=()=>{Ye.current=!0,ve.current&&clearTimeout(ve.current),ve.current=setTimeout(()=>{Ye.current=!1},300),vt(),ee.current=setTimeout(()=>{M(!0),ee.current=null,x(f.delayOnWheel)},50)},n=[],s=b();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(w=>{let L=w;if(L!==l&&L.classList.contains("overlay-scrollbar-container"))return;let g=L.parentElement;for(;g&&g!==l;){if(g.classList.contains("overlay-scrollbar-container")&&g!==l)return;g=g.parentElement}n.push(L)})),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)})}},[b,h,E,H,x,f,se,Y,R,ne]),(0,e.useEffect)(()=>()=>{Q.current&&clearTimeout(Q.current),ve.current&&clearTimeout(ve.current),ee.current&&clearTimeout(ee.current)},[]),(0,e.useEffect)(()=>{let t=n=>{let s=n.target;if(n.defaultPrevented||s instanceof Element&&Pe(s,xe))return;let l=b();if(!l)return;let{key:p}=n,{scrollTop:w,scrollHeight:L,clientHeight:g}=l,ue=L-g,Te=50,$=null;switch(p){case"ArrowUp":n.preventDefault(),$=Math.max(0,w-Te);break;case"ArrowDown":n.preventDefault(),$=Math.min(ue,w+Te);break;case"PageUp":n.preventDefault(),$=Math.max(0,w-g);break;case"PageDown":n.preventDefault(),$=Math.min(ue,w+g);break;case"Home":n.preventDefault(),$=0;break;case"End":n.preventDefault(),$=ue;break;default:return}if($!==null){let we=$/ue,G=U?T*2+a.margin*4:a.margin*2,de=(g-G-be)*we;Ne(de),l.scrollTop=$,H(),M(!0),x(f.delay)}},o=c.current;if(o)return o.addEventListener("keydown",t),()=>{o.removeEventListener("keydown",t)}},[b,U,T,a.margin,be,H,x,f.delay,xe]),(0,e.useEffect)(()=>(document.addEventListener("mousemove",Qe),document.addEventListener("mouseup",Je),()=>{document.removeEventListener("mousemove",Qe),document.removeEventListener("mouseup",Je)}),[ae,Qe,Je]),(0,e.useEffect)(()=>{if(F)return document.addEventListener("mousemove",Ge),document.addEventListener("mouseup",Ke),()=>{document.removeEventListener("mousemove",Ge),document.removeEventListener("mouseup",Ke)}},[F,Ge,Ke]),(0,e.useEffect)(()=>{if(N)return document.addEventListener("mousemove",Ve),document.addEventListener("mouseup",Ze),()=>{document.removeEventListener("mousemove",Ve),document.removeEventListener("mouseup",Ze)}},[N,Ve,Ze]),(0,e.useEffect)(()=>{h();let t=setTimeout(()=>{h()},100);return()=>clearTimeout(t)},[h]),(0,e.useLayoutEffect)(()=>{Wt(!0),h(),!f.enabled&&!se&&j()&&M(!0)},[j,h,f.enabled,se]),(0,e.useEffect)(()=>{if(f.initialDelay>0){let t=setTimeout(()=>{Nt(!1)},f.initialDelay);return()=>clearTimeout(t)}},[f.initialDelay]);let yt=(0,e.useRef)(h);yt.current=h;let ce=(0,e.useRef)(null),xt=(0,e.useCallback)(()=>{ce.current===null&&(ce.current=requestAnimationFrame(()=>{ce.current=null,yt.current()}))},[]);(0,e.useEffect)(()=>()=>{ce.current!==null&&(cancelAnimationFrame(ce.current),ce.current=null)},[]),(0,e.useEffect)(()=>{let t=new ResizeObserver(()=>{xt()}),o=[];return c.current&&o.push(c.current),me.current&&o.push(me.current),B.current&&document.contains(B.current)&&o.push(B.current),o.forEach(n=>{t.observe(n)}),()=>t.disconnect()},[h,xt]),(0,e.useEffect)(()=>{if(!c.current)return;let t=new MutationObserver(()=>{B.current=null,h()});return t.observe(c.current,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]}),()=>t.disconnect()},[h]);let P=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=`
|
|
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=`
|
|
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;
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
from { transform: rotate(0deg); }
|
|
28
28
|
to { transform: rotate(360deg); }
|
|
29
29
|
}
|
|
30
|
-
`,document.head.appendChild(o)},[]),(0,e.useEffect)(()=>{let t=`overlay-scrollbar-instance-${
|
|
30
|
+
`,document.head.appendChild(o)},[]),(0,e.useEffect)(()=>{let t=`overlay-scrollbar-instance-${Q}`,o=document.getElementById(t);o&&o.remove();let n=document.createElement("style");n.id=t;let s=`.${Q}`;return n.textContent=`
|
|
31
31
|
${s} {
|
|
32
32
|
scrollbar-width: none !important;
|
|
33
33
|
-ms-overflow-style: none !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()}},[
|
|
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:Re?"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:Re?1:Math.min(_e*1.5,1)},children:Re?(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||T(f.delay)},style:{position:"absolute",top:0,right:0,width:`${I}px`,height:"100%",opacity:De?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?w+a.margin*2:a.margin)+$t}px`,right:a.alignment==="outside"?"0px":`${(I-w)/2}px`,width:`${w}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-w)/2}px`,width:`${w}px`,height:`${w}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(w*.75,8)}px`,color:ke==="up"?B.hoverColor:B.color,userSelect:"none",zIndex:1001,opacity:De?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-w)/2}px`,width:`${w}px`,height:`${w}px`,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${Math.max(w*.75,8)}px`,color:ke==="down"?B.hoverColor:B.color,userSelect:"none",zIndex:1001,opacity:De?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(),_||T(f.delay)},style:{position:"absolute",bottom:`${Bt}px`,left:0,width:"100%",height:`${I}px`,opacity:De?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-w)/2}px`,left:`${a.margin}px`,right:ie?a.alignment==="outside"?`${I-a.margin}px`:`${I}px`:`${a.margin}px`,height:`${w}px`,backgroundColor:a.color,borderRadius:`${a.radius}px`,cursor:"pointer"}}),(0,v.jsx)("div",{className:"overlay-scrollbar-horizontal-thumb",onMouseDown:Gt,onMouseEnter:()=>mt(!0),onMouseLeave:()=>mt(!1),style:{position:"absolute",bottom:a.alignment==="outside"?"0px":`${(I-w)/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:`${w}px`,backgroundColor:ht||_?H.hoverColor:H.color,opacity:ht||_?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:()=>{me(!1),(m()??c.current)?.scrollTo({top:0,behavior:"smooth"})},onPointerDown:()=>me(!0),onPointerUp:()=>me(!1),onPointerLeave:()=>me(!1),onPointerCancel:()=>me(!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?Rt?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
|