1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,600577,e=>{"use strict";e.s(["htmlVoidElements",0,["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"]])},773286,e=>{"use strict";var r=e.i(83790);let t={name:"maximize-2",size:24,node:[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]};t.node;let n=(0,r.default)(t);e.s(["Maximize2",0,n],773286)},264784,e=>{"use strict";var r=e.i(83790);let t={name:"minimize-2",size:24,node:[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]]};t.node;let n=(0,r.default)(t);e.s(["Minimize2",0,n],264784)},55996,752269,e=>{"use strict";var r=e.i(83790);let t={name:"zoom-in",size:24,node:[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"11",x2:"11",y1:"8",y2:"14",key:"1vmskp"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]};t.node;let n=(0,r.default)(t);e.s(["ZoomIn",0,n],55996);let o={name:"zoom-out",size:24,node:[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]]};o.node;let l=(0,r.default)(o);e.s(["ZoomOut",0,l],752269)},79694,e=>{"use strict";let r={}.hasOwnProperty;e.s(["zwitch",0,function(e,t){let n=t||{};function o(t){for(var n=arguments.length,l=Array(n>1?n-1:0),i=1;i<n;i++)l[i-1]=arguments[i];let a=o.invalid,s=o.handlers;if(t&&r.call(t,e)){let n=String(t[e]);a=r.call(s,n)?s[n]:o.unknown}if(a)return a.call(this,t,...l)}return o.handlers=n.handlers||{},o.invalid=n.invalid,o.unknown=n.unknown,o}])},46636,562319,e=>{"use strict";var r=e.i(247862),t=e.i(236601),n=e.i(831553),o=e.i(314175),l=e.i(240595),i=e.i(773286),a=e.i(264784),s=e.i(999798),c=e.i(55996),d=e.i(752269),u=e.i(975157);e.s(["ImageRenderer",0,function(e){let{url:h,fileName:f,className:m,hideControls:p=!1,zoomPercent:v=100,rotation:b,onImageLoad:g}=e,[x,w]=(0,t.useState)(1),[S,y]=(0,t.useState)(0),[j,C]=(0,t.useState)(!1),[E,R]=(0,t.useState)({x:0,y:0}),[T,P]=(0,t.useState)({x:0,y:0}),[k,L]=(0,t.useState)(!0),[,N]=(0,t.useState)(!1),[A,z]=(0,t.useState)(!0),[D,_]=(0,t.useState)(!1),[H,M]=(0,t.useState)(!1),[I,O]=(0,t.useState)(null),W=(0,t.useRef)(null),U=(0,t.useRef)(null),B=h?.toLowerCase().endsWith(".svg")||h?.includes("image/svg"),X=Math.min(Math.max(v,25),200)/100,Y=p?X:x;(0,t.useEffect)(()=>{w(1),y(0),C(!1),R({x:0,y:0}),P({x:0,y:0}),L(!0),M(!1),N(!1),z(!0),_(!1),O(null)},[h]),(0,t.useEffect)(()=>{p&&(C(!1),R({x:0,y:0}))},[X,p]),(0,t.useEffect)(()=>{(p||k)&&R({x:0,y:0})},[x,k,p]);let V=`scale(${Y}) rotate(${b??S}deg)`,F=`translate(${E.x}px, ${E.y}px)`;return(0,r.jsxs)("div",{className:(0,u.cn)("flex h-full w-full flex-col",m),children:[!p&&(0,r.jsxs)("div",{className:"mb-2 flex items-center justify-between rounded-t-md border-b bg-muted/30 px-4 py-2",children:[(0,r.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,r.jsx)(n.Button,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:()=>{let e=Math.max(x-.25,.5);w(e),.5===e&&L(!0)},title:"Zoom out",disabled:D||A,children:(0,r.jsx)(d.ZoomOut,{className:"h-4 w-4"})}),(0,r.jsxs)("span",{className:"text-xs font-medium",children:[Math.round(100*x),"%"]}),(0,r.jsx)(n.Button,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:()=>{w(e=>Math.min(e+.25,3)),L(!1)},title:"Zoom in",disabled:D||A,children:(0,r.jsx)(c.ZoomIn,{className:"h-4 w-4"})}),(0,r.jsx)(n.Button,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:()=>{y(e=>(e+90)%360)},title:"Rotate",disabled:D||A,children:(0,r.jsx)(s.RotateCw,{className:"h-4 w-4"})})]}),(0,r.jsxs)("div",{className:"flex items-center space-x-2",children:[A&&!D?(0,r.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-muted-foreground",children:[(0,r.jsx)(l.L
1oader2,{className:"h-3.5 w-3.5 animate-spin"}),"Loading image..."]}):null,(0,r.jsx)(n.Button,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:()=>M(!H),title:"Image information",children:(0,r.jsx)(o.Info,{className:"h-4 w-4"})}),(0,r.jsx)(n.Button,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:()=>{if(k){w(1),L(!1);return}w(.5),R({x:0,y:0}),L(!0)},title:k?"Actual size":"Fit to screen",disabled:D||A,children:k?(0,r.jsx)(i.Maximize2,{className:"h-4 w-4"}):(0,r.jsx)(a.Minimize2,{className:"h-4 w-4"})})]})]}),!p&&H&&I&&(0,r.jsxs)("div",{className:"absolute right-4 top-16 z-50 rounded-md border border-border bg-background/80 p-3 text-xs shadow-md backdrop-blur-sm",children:[(0,r.jsxs)("p",{children:[(0,r.jsx)("strong",{children:"Type:"})," ",I.type]}),(0,r.jsxs)("p",{children:[(0,r.jsx)("strong",{children:"Dimensions:"})," ",I.width," Ã ",I.height]})]}),(0,r.jsx)("div",{ref:W,className:(0,u.cn)("relative flex-1 overflow-hidden",!p&&"rounded-b-md"),onMouseDown:e=>{x>.5&&(C(!0),P({x:e.clientX-E.x,y:e.clientY-E.y}))},onMouseMove:e=>{j&&x>.5&&R({x:e.clientX-T.x,y:e.clientY-T.y})},onMouseUp:()=>C(!1),onMouseLeave:()=>C(!1),style:{cursor:j?"grabbing":Y>1?"grab":"default",backgroundColor:"#f5f5f5",backgroundImage:"linear-gradient(45deg, #e0e0e0 25%, transparent 25%), linear-gradient(-45deg, #e0e0e0 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #e0e0e0 75%), linear-gradient(-45deg, transparent 75%, #e0e0e0 75%)",backgroundSize:"20px 20px",backgroundPosition:"0 0, 0 10px, 10px -10px, -10px 0px"},children:D?(0,r.jsxs)("div",{className:"flex h-full flex-col items-center justify-center p-6 text-center",children:[(0,r.jsx)("p",{className:"mb-2 font-medium text-destructive",children:"Failed to load image"}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:"The image could not be displayed"})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"absolute inset-0 flex items-center justify-center",style:{transform:p?F:k?"none":F,transition:j?"none":"transform 0.1s ease"},children:(0,r.jsx)("img",{ref:U,src:h,alt:B?"SVG preview":"Image preview",className:"max-h-full max-w-full object-contain",style:{transform:V,transition:"transform 0.2s ease"},draggable:!1,onLoad:()=>{if(N(!0),z(!1),_(!1),!U.current)return;let e={width:U.current.naturalWidth,height:U.current.naturalHeight,type:function(e,r,t){if(t)return"SVG";let n=(e??r).split(".").pop()?.toLowerCase(),o=new Set(["png","jpg","jpeg","gif","webp","bmp","ico","tiff","avif"]);return n&&o.has(n)?n.toUpperCase():"Image"}(f,h,B)};O(e),fetch(h,{method:"HEAD"}).then(r=>{let t=r.headers.get("content-length");if(t){let r={...e,sizeBytes:Number(t)};O(r),g?.(r)}else g?.(e)}).catch(()=>{g?.(e)})},onError:()=>{N(!1),z(!1),_(!0)}})}),A?(0,r.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-[var(--gray-0)]/60 backdrop-blur-[1px]",children:(0,r.jsxs)("div",{className:"inline-flex items-center gap-2 rounded-md border border-border bg-background/90 px-3 py-1.5 text-sm text-muted-foreground shadow-sm",children:[(0,r.jsx)(l.Loader2,{className:"h-4 w-4 animate-spin"}),(0,r.jsx)("span",{children:"Loading image preview..."})]})}):null]})})]})}],562319),e.s([],46636)},759684,e=>{"use strict";var r=e.i(247862),t=e.i(236601),n=e.i(978238),o=e.i(997611),l=e.i(264145),i=e.i(166100),a=e.i(232253),s=e.i(900877),c=e.i(44532);function d(e,r){let[t,n]=r;return Math.min(n,Math.max(t,e))}(0,Object.defineProperty)(d,"name",{value:"clamp",configurable:!0});var u=e.i(543836),h=Object.defineProperty,f=(e,r)=>h(e,"name",{value:r,configurable:!0});function m(e,r){return t.useReducer((e,t)=>r[e][t]??e,e)}f(m,"useStateMachine");var p="ScrollArea",[v,b]=(0,l.createContextScope)(p),[g,x]=v(p),w=t.forwardRef(f(function(e,o){let{__scopeScrollArea:l,type:a="hover",dir:c,scrollHideDelay:d=600,...u}=e,[h,f]=t.useState(null),[m,p]=t.useState(null),[v,b]=t.useState(null),[x,w]=t.useState(null),[S,y]=t.useState(null),[j,C]=t.useState(0),[E,R]=t.useState(0),[T,P]=t.useState(!1),[k,L]=t.useState(!1),N=(0,i.useComposedRefs)(o,f),A=(0,s.useDirection)(c);return(0,r.jsx)(g,{scope:l,type:a,dir:A,scrollHideDelay:d,scrollArea:h,viewport:m,onViewportChange:p,content:v,onContentChange:b,scrollbarX:x,onScrollbarXChange:w,scrollbarXEnabled:T,onScrollbarXEnabledChange:P,scrollbarY:S,onScrollbarYChange:y,scrollbarYEnabled:k,onScrollbarYEnabledChange:L,onCornerWidthChange:C,onCornerHeight
1Change:R,children:(0,r.jsx)(n.Primitive.div,{dir:A,...u,ref:N,style:{position:"relative","--radix-scroll-area-corner-width":j+"px","--radix-scroll-area-corner-height":E+"px",...e.style}})})},"ScrollArea")),S=t.forwardRef(f(function(e,o){let{__scopeScrollArea:l,children:a,nonce:s,...c}=e,d=x("ScrollAreaViewport",l),u=t.useRef(null),h=(0,i.useComposedRefs)(o,u,d.onViewportChange);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(y,{nonce:s}),(0,r.jsx)(n.Primitive.div,{"data-radix-scroll-area-viewport":"",...c,ref:h,style:{overflowX:d.scrollbarXEnabled?"scroll":"hidden",overflowY:d.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,r.jsx)("div",{ref:d.onContentChange,style:{minWidth:"100%",display:"table"},children:a})})]})},"ScrollAreaViewport")),y=t.memo(f(function(e){let{nonce:t}=e;return(0,r.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:t})},"ScrollAreaViewportStyle"),(e,r)=>e.nonce===r.nonce),j="ScrollAreaScrollbar",C=t.forwardRef(f(function(e,n){let{forceMount:o,...l}=e,i=x(j,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:s}=i,c="horizontal"===e.orientation;return t.useEffect(()=>(c?a(!0):s(!0),()=>{c?a(!1):s(!1)}),[c,a,s]),"hover"===i.type?(0,r.jsx)(E,{...l,ref:n,forceMount:o}):"scroll"===i.type?(0,r.jsx)(R,{...l,ref:n,forceMount:o}):"auto"===i.type?(0,r.jsx)(T,{...l,ref:n,forceMount:o}):"always"===i.type?(0,r.jsx)(P,{...l,ref:n,"data-state":"visible"}):null},"ScrollAreaScrollbar")),E=t.forwardRef(f(function(e,n){let{forceMount:l,...i}=e,a=x(j,e.__scopeScrollArea),[s,c]=t.useState(!1);return t.useEffect(()=>{let e=a.scrollArea,r=0;if(e){let t=f(()=>{window.clearTimeout(r),c(!0)},"handlePointerEnter"),n=f(()=>{r=window.setTimeout(()=>c(!1),a.scrollHideDelay)},"handlePointerLeave");return e.addEventListener("pointerenter",t),e.addEventListener("pointerleave",n),()=>{window.clearTimeout(r),e.removeEventListener("pointerenter",t),e.removeEventListener("pointerleave",n)}}},[a.scrollArea,a.scrollHideDelay]),(0,r.jsx)(o.Presence,{present:l||s,children:(0,r.jsx)(T,{"data-state":s?"visible":"hidden",...i,ref:n})})},"ScrollAreaScrollbarHover")),R=t.forwardRef(f(function(e,n){let{forceMount:l,...i}=e,a=x(j,e.__scopeScrollArea),s="horizontal"===e.orientation,c=$(()=>h("SCROLL_END"),100),[d,h]=m("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return t.useEffect(()=>{if("idle"===d){let e=window.setTimeout(()=>h("HIDE"),a.scrollHideDelay);return()=>window.clearTimeout(e)}},[d,a.scrollHideDelay,h]),t.useEffect(()=>{let e=a.viewport,r=s?"scrollLeft":"scrollTop";if(e){let t=e[r],n=f(()=>{let n=e[r];t!==n&&(h("SCROLL"),c()),t=n},"handleScroll");return e.addEventListener("scroll",n),()=>e.removeEventListener("scroll",n)}},[a.viewport,s,h,c]),(0,r.jsx)(o.Presence,{present:l||"hidden"!==d,children:(0,r.jsx)(P,{"data-state":"hidden"===d?"hidden":"visible",...i,ref:n,onPointerEnter:(0,u.composeEventHandlers)(e.onPointerEnter,()=>h("POINTER_ENTER")),onPointerLeave:(0,u.composeEventHandlers)(e.onPointerLeave,()=>h("POINTER_LEAVE"))})})},"ScrollAreaScrollbarScroll")),T=t.forwardRef(f(function(e,n){let l=x(j,e.__scopeScrollArea),{forceMount:i,...a}=e,[s,c]=t.useState(!1),d="horizontal"===e.orientation,u=$(()=>{if(l.viewport){let e=l.viewport.offsetWidth<l.viewport.scrollWidth,r=l.viewport.offsetHeight<l.viewport.scrollHeight;c(d?e:r)}},10);return q(l.viewport,u),q(l.content,u),(0,r.jsx)(o.Presence,{present:i||s,children:(0,r.jsx)(P,{"data-state":s?"visible":"hidden",...a,ref:n})})},"ScrollAreaScrollbarAuto")),P=t.forwardRef(f(function(e,n){let{orientation:o="vertical",...l}=e,i=x(j,e.__scopeScrollArea),a=t.useRef(null),s=t.useRef(0),[c,d]=t.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=U(c.viewport,c.content),h={...l,sizes:c,onSizesChange:d,hasThumb:!!(u>0&&u<1),onThumbChange:f(e=>a.current=e,"onThumbChange"),onThumbPointerUp:f(()=>s.current=0,"onThumbPointerUp"),onThumbPointerDown:f(e=>s.current=e,"onThumbPointerDown")};function m(e,r){return X(e,s.current,c,r)}return(f(m,"getScrollPosition"),"horizontal"===o)?(0,r.jsx)(k,{...h,ref:n,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=Y(i.viewport.scrollLeft,c,i.dir);a.current.style.transform=`translate3d(${e}px, 0, 0)`}}
1,onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=m(e,i.dir))}}):"vertical"===o?(0,r.jsx)(L,{...h,ref:n,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=Y(i.viewport.scrollTop,c);a.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=m(e))}}):null},"ScrollAreaScrollbarVisible")),k=t.forwardRef(f(function(e,n){let{sizes:o,onSizesChange:l,...a}=e,s=x(j,e.__scopeScrollArea),[c,d]=t.useState(),u=t.useRef(null),h=(0,i.useComposedRefs)(n,u,s.onScrollbarXChange);return t.useEffect(()=>{u.current&&d(getComputedStyle(u.current))},[u]),(0,r.jsx)(z,{"data-orientation":"horizontal",...a,ref:h,sizes:o,style:{bottom:0,left:"rtl"===s.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===s.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":B(o)+"px",...e.style},onThumbPointerDown:r=>e.onThumbPointerDown(r.x),onDragScroll:r=>e.onDragScroll(r.x),onWheelScroll:(r,t)=>{if(s.viewport){let n=s.viewport.scrollLeft+r.deltaX;e.onWheelScroll(n),F(n,t)&&r.preventDefault()}},onResize:()=>{u.current&&s.viewport&&c&&l({content:s.viewport.scrollWidth,viewport:s.viewport.offsetWidth,scrollbar:{size:u.current.clientWidth,paddingStart:W(c.paddingLeft),paddingEnd:W(c.paddingRight)}})}})},"ScrollAreaScrollbarX")),L=t.forwardRef(f(function(e,n){let{sizes:o,onSizesChange:l,...a}=e,s=x(j,e.__scopeScrollArea),[c,d]=t.useState(),u=t.useRef(null),h=(0,i.useComposedRefs)(n,u,s.onScrollbarYChange);return t.useEffect(()=>{u.current&&d(getComputedStyle(u.current))},[u]),(0,r.jsx)(z,{"data-orientation":"vertical",...a,ref:h,sizes:o,style:{top:0,right:"ltr"===s.dir?0:void 0,left:"rtl"===s.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":B(o)+"px",...e.style},onThumbPointerDown:r=>e.onThumbPointerDown(r.y),onDragScroll:r=>e.onDragScroll(r.y),onWheelScroll:(r,t)=>{if(s.viewport){let n=s.viewport.scrollTop+r.deltaY;e.onWheelScroll(n),F(n,t)&&r.preventDefault()}},onResize:()=>{u.current&&s.viewport&&c&&l({content:s.viewport.scrollHeight,viewport:s.viewport.offsetHeight,scrollbar:{size:u.current.clientHeight,paddingStart:W(c.paddingTop),paddingEnd:W(c.paddingBottom)}})}})},"ScrollAreaScrollbarY")),[N,A]=v(j),z=t.forwardRef(f(function(e,o){let{__scopeScrollArea:l,sizes:s,hasThumb:c,onThumbChange:d,onThumbPointerUp:h,onThumbPointerDown:m,onThumbPositionChange:p,onDragScroll:v,onWheelScroll:b,onResize:g,...w}=e,S=x(j,l),[y,C]=t.useState(null),E=(0,i.useComposedRefs)(o,C),R=t.useRef(null),T=t.useRef(""),P=S.viewport,k=s.content-s.viewport,L=(0,a.useCallbackRef)(b),A=(0,a.useCallbackRef)(p),z=$(g,10);function D(e){R.current&&v({x:e.clientX-R.current.left,y:e.clientY-R.current.top})}return f(D,"handleDragScroll"),t.useEffect(()=>{let e=f(e=>{let r=e.target;y?.contains(r)&&L(e,k)},"handleWheel");return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})}
1,[P,y,k,L]),t.useEffect(A,[s,A]),q(y,z),q(S.content,z),(0,r.jsx)(N,{scope:l,scrollbar:y,hasThumb:c,onThumbChange:(0,a.useCallbackRef)(d),onThumbPointerUp:(0,a.useCallbackRef)(h),onThumbPositionChange:A,onThumbPointerDown:(0,a.useCallbackRef)(m),children:(0,r.jsx)(n.Primitive.div,{...w,ref:E,style:{position:"absolute",...w.style},onPointerDown:(0,u.composeEventHandlers)(e.onPointerDown,e=>{0===e.button&&(e.target.setPointerCapture(e.pointerId),R.current=y.getBoundingClientRect(),T.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",S.viewport&&(S.viewport.style.scrollBehavior="auto"),D(e))}),onPointerMove:(0,u.composeEventHandlers)(e.onPointerMove,D),onPointerUp:(0,u.composeEventHandlers)(e.onPointerUp,e=>{let r=e.target;r.hasPointerCapture(e.pointerId)&&r.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=T.current,S.viewport&&(S.viewport.style.scrollBehavior=""),R.current=null})})})},"ScrollAreaScrollbarImpl")),D="ScrollAreaThumb",_=t.forwardRef(f(function(e,t){let{forceMount:n,...l}=e,i=A(D,e.__scopeScrollArea);return(0,r.jsx)(o.Presence,{present:n||i.hasThumb,children:(0,r.jsx)(H,{ref:t,...l})})},"ScrollAreaThumb")),H=t.forwardRef(f(function(e,o){let{__scopeScrollArea:l,style:a,...s}=e,c=x(D,l),d=A(D,l),{onThumbPositionChange:h}=d,m=(0,i.useComposedRefs)(o,d.onThumbChange),p=t.useRef(void 0),v=$(()=>{p.current&&(p.current(),p.current=void 0)},100);return t.useEffect(()=>{let e=c.viewport;if(e){let r=f(()=>{v(),p.current||(p.current=Z(e,h),h())},"handleScroll");return h(),e.addEventListener("scroll",r),()=>e.removeEventListener("scroll",r)}},[c.viewport,v,h]),(0,r.jsx)(n.Primitive.div,{"data-state":d.hasThumb?"visible":"hidden",...s,ref:m,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...a},onPointerDownCapture:(0,u.composeEventHandlers)(e.onPointerDownCapture,e=>{let r=e.target.getBoundingClientRect(),t=e.clientX-r.left,n=e.clientY-r.top;d.onThumbPointerDown({x:t,y:n})}),onPointerUp:(0,u.composeEventHandlers)(e.onPointerUp,d.onThumbPointerUp)})},"ScrollAreaThumbImpl")),M="ScrollAreaCorner",I=t.forwardRef(f(function(e,t){let n=x(M,e.__scopeScrollArea),o=!!(n.scrollbarX&&n.scrollbarY);return"scroll"!==n.type&&o?(0,r.jsx)(O,{...e,ref:t}):null},"ScrollAreaCorner")),O=t.forwardRef(f(function(e,o){let{__scopeScrollArea:l,...i}=e,a=x(M,l),[s,c]=t.useState(0),[d,u]=t.useState(0),h=!!(s&&d),{onCornerWidthChange:f,onCornerHeightChange:m}=a;return q(a.scrollbarX,()=>{let e=a.scrollbarX?.offsetHeight||0;a.onCornerHeightChange(e),u(e)}),q(a.scrollbarY,()=>{let e=a.scrollbarY?.offsetWidth||0;a.onCornerWidthChange(e),c(e)}),t.useEffect(()=>()=>{f(0),m(0)},[f,m]),h?(0,r.jsx)(n.Primitive.div,{...i,ref:o,style:{width:s,height:d,position:"absolute",right:"ltr"===a.dir?0:void 0,left:"rtl"===a.dir?0:void 0,bottom:0,...e.style}}):null},"ScrollAreaCornerImpl"));function W(e){return e?parseInt(e,10):0}function U(e,r){let t=e/r;return isNaN(t)?0:t}function B(e){let r=U(e.viewport,e.content),t=e.scrollbar.paddingStart+e.scrollbar.paddingEnd;return Math.max((e.scrollbar.size-t)*r,18)}function X(e,r,t){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"ltr",o=B(t),l=r||o/2,i=t.scrollbar.paddingStart+l,a=t.scrollbar.size-t.scrollbar.paddingEnd-(o-l),s=t.content-t.viewport;return V([i,a],"ltr"===n?[0,s]:[-1*s,0])(e)}function Y(e,r){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"ltr",n=B(r),o=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,l=r.scrollbar.size-o,i=r.content-r.viewport,a=d(e,"ltr"===t?[0,i]:[-1*i,0]);return V([0,i],[0,l-n])(a)}function V(e,r){return t=>{if(e[0]===e[1]||r[0]===r[1])return r[0];let n=(r[1]-r[0])/(e[1]-e[0]);return r[0]+n*(t-e[0])}}function F(e,r){return e>0&&e<r}f(W,"toInt"),f(U,"getThumbRatio"),f(B,"getThumbSize"),f(X,"getScrollPositionFromPointer"),f(Y,"getThumbOffsetFromScroll"),f(V,"linearScale"),f(F,"isScrollingWithinScrollbarBounds");var Z=f(function(e){return arguments.length>1&&void 0!==arguments[1]&&arguments[1],e.scrollLeft,e.scrollTop,()=>window.cancelAnimationFrame(0)},"addUnlinkedScrollListener");function $(e,r){let n=(0,a.useCallbackRef)(e),o=t.useRef(0);return t.useEffect(()=>()=>window.clearTimeout(o.current),[]),t.useCallback(()=>{window.clearTimeout(o.current),o.current=window.setTimeout(n,r)},[n,r])}function q(e,r){let t=(0,a.useCallbackRef)(r);(0,c.useLayoutEffect)(()=>{let r=0;if(e){let n=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(t)});return n.observe(e),()=>{window.cancelAnimationFrame(r),n.unobserve(e)}}},[e,t])}f($,"useDebounceCallback"),f(q,"useResizeObserver");var G=e.i(975157);function K(e){let{className:t,orientation:n="vertical",...o}=e;return(0,r.jsx)(C,{"data-slot":"scroll-area-scrollbar",orientation:n,className:(0,G.cn)("flex touch-none p-px transition-colors select-none","vertical"===n&&"h-full w-2.5 border-l border-l-transparent","horizontal"===n&&"h-2.5 flex-col border-t border-t-transparent",t),...o,children:(0,r.jsx)(_,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}e.s(["ScrollArea",0,function(e){let{className:t,children:n,...o}=e;return(0,r.jsxs)(w,{"data-slot":"scroll-area",className:(0,G.cn)("relative",t),...o,children:[(0,r.jsx)(S,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:n}),(0,r.jsx)(K,{}),(0,r.jsx)(I,{})]})}],759684)}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.