pdf-tsx 0.17.0 → 0.17.1

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.
@@ -1 +1 @@
1
- const e=require("../_virtual/_rolldown/runtime.cjs"),t=require("../context/PDFViewerContext.cjs"),n=require("../hooks/useScrollTracking.cjs"),r=require("../hooks/useKeyboardShortcuts.cjs"),i=require("../hooks/useTextLayer.cjs"),a=require("../utils/url.cjs"),ee=require("../hooks/useAnnotationLayer.cjs"),te=require("../hooks/usePDFLoader.cjs"),ne=require("../hooks/usePDFRenderer.cjs"),re=require("../hooks/useOverlayRects.cjs"),ie=require("../hooks/usePinchZoom.cjs"),o=require("../utils/pdfFit.cjs"),ae=require("../context/ThemeContext.cjs"),oe=require("../context/LabelsContext.cjs"),s=require("../hooks/useLabels.cjs"),c=require("./PDFViewer.module.cjs");let l=require("react");l=e.__toESM(l,1);let u=require("pdfjs-dist");u=e.__toESM(u,1);let d=require("react/jsx-runtime");var f=2;function se({hasRead:e}){let t=s.useLabels();return(0,d.jsxs)(`div`,{className:`${c.default.requireReadBanner} ${e?c.default.requireReadDone:``}`,children:[e?(0,d.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{d:`M3 8l3.5 3.5L13 4.5`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})}):(0,d.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{d:`M8 3v10M4 9l4 4 4-4`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})}),(0,d.jsx)(`span`,{children:e?t.requireReadDone:t.requireReadPending})]})}var p=({file:e,workerSrc:s,sidebar:p,toolbar:m,onChangeFile:h,themeOverrides:ce,defaultTheme:le,defaultFit:g,language:ue,className:_,style:de,requireRead:v,onDocumentRead:y})=>{(0,l.useEffect)(()=>{u.GlobalWorkerOptions.workerSrc=s},[s]);let[b,x]=(0,l.useState)(1),[S,C]=(0,l.useState)(0),[w,T]=(0,l.useState)(null),[E,D]=(0,l.useState)([]),[O,fe]=(0,l.useState)(!1),[k,A]=(0,l.useState)(g??null),[j,M]=(0,l.useState)(null),[N,P]=(0,l.useState)(!1),F=(0,l.useRef)(!1),I=(0,l.useRef)(null),L=(0,l.useRef)([]),R=(0,l.useRef)([]),z=(0,l.useRef)(S);(0,l.useEffect)(()=>{z.current=S},[S]);let[pe,B]=(0,l.useState)(null);pe!==e&&(B(e),T(null),P(!1)),(0,l.useEffect)(()=>{F.current=!1},[e]);let{pdf:V,numPages:H,loading:me}=te.usePDFLoader(e);(0,l.useEffect)(()=>{V&&(L.current=Array(V.numPages).fill(null),R.current=Array(V.numPages).fill(null))},[V]),(0,l.useEffect)(()=>{!V||!g||!I.current||o.computeFit(g,V,I.current,z.current).then(x)},[V,g]);let U=(0,l.useRef)(k);(0,l.useEffect)(()=>{U.current=k},[k]),(0,l.useEffect)(()=>{if(!V||!I.current)return;let e=I.current,t=new ResizeObserver(()=>{U.current&&o.computeFit(U.current,V,e,z.current).then(x)});return t.observe(e),()=>t.disconnect()},[V]);let{currentPage:W,goToPage:G}=n.useScrollTracking({numPages:H,containerRef:I,pageRefs:L});(0,l.useEffect)(()=>{H===0||W<H||(v&&!N&&P(!0),F.current||(F.current=!0,y?.()))},[W,H,v,N,y]);let K=(0,l.useMemo)(()=>{if(H===0)return[];let e=new Set,t=Math.max(W-f,1),n=Math.min(W+f,H);for(let r=t;r<=n;r++)e.add(r);w&&e.add(w.page);for(let t of E)e.add(t.page);return Array.from(e).sort((e,t)=>e-t)},[W,H,w,E]),{pageSizes:he,renderedPages:q}=ne.usePDFRenderer({pdf:V,zoom:b,rotation:S,visiblePages:K,canvasRefs:R}),J=(0,l.useMemo)(()=>{let e=new Set(K);for(let t of q)e.add(t);return Array.from(e).sort((e,t)=>e-t)},[K,q]);r.useKeyboardShortcuts({pdf:V,currentPage:W,goToPage:G,setRotation:C}),ie.usePinchZoom(I,b,x,A);let ge=i.useTextLayer({pdf:V,zoom:b,rotation:S,mountedPages:J,canvasRefs:R}),{linkOverlays:_e,noteOverlays:ve}=ee.useAnnotationLayer({pdf:V,zoom:b,rotation:S,mountedPages:J,goToPage:G});(0,l.useEffect)(()=>{if(!j)return;let e=()=>M(null),t=e=>{e.key===`Escape`&&M(null)};return document.addEventListener(`click`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`click`,e),document.removeEventListener(`keydown`,t)}},[j]);let{overlayRect:Y,searchOverlays:ye}=re.useOverlayRects({pdf:V,highlight:w,searchMatches:E,zoom:b,rotation:S}),be=(0,l.useCallback)((e,t)=>{(!e.url||!a.isSafeUrl(e.url))&&(t.preventDefault(),e.url||e._handleClick())},[]),X=(0,l.useRef)(null),Z=(0,l.useCallback)((e,t)=>{X.current&&clearTimeout(X.current);let n=t.clientY>window.innerHeight*.6;M({x:Math.min(t.clientX,window.innerWidth-304),y:n?window.innerHeight-t.clientY+8:t.clientY+12,above:n,contents:e.contents,title:e.title})},[]),Q=(0,l.useCallback)(()=>{X.current=setTimeout(()=>M(null),200)},[]),$=(0,l.useCallback)(e=>{T({page:e.page,pdfRect:e.pdfRect}),G(e.page)},[T,G]),xe=(0,l.useMemo)(()=>({pdf:V,numPages:H,zoom:b,setZoom:x,rotation:S,setRotation:C,currentPage:W,goToPage:G,containerRef:I,canvasRefs:R,file:e,highlight:w,setHighlight:T,searchMatches:E,setSearchMatches:D,onChangeFile:h,sidebarCollapsed:O,setSidebarCollapsed:fe,fitMode:k,setFitMode:A,navigationLocked:!!v&&!N}),[V,H,b,S,W,G,e,w,E,h,O,k,v,N]);return(0,d.jsx)(ae.ThemeProvider,{themeOverrides:ce,defaultTheme:le,children:(0,d.jsx)(oe.LabelsProvider,{language:ue,children:(0,d.jsxs)(t.PDFViewerContext.Provider,{value:xe,children:[(0,d.jsxs)(`div`,{className:`${c.default.appLayout}${_?` ${_}`:``}`,style:de,children:[m&&(0,d.jsx)(`div`,{className:c.default.toolbar,children:m}),(0,d.jsxs)(`div`,{className:c.default.body,children:[p,(0,d.jsxs)(`div`,{className:c.default.scrollContainer,ref:I,children:[me&&(0,d.jsx)(`div`,{className:c.default.documentLoading}),Array.from({length:H},(e,t)=>{let n=q.has(t+1),r=he[t],i=J.includes(t+1);return(0,d.jsxs)(`div`,{className:c.default.pageWrapper,ref:e=>{L.current[t]=e},style:r?{width:r.width,height:r.height}:void 0,children:[r&&!n&&(0,d.jsx)(`div`,{className:c.default.pageSkeleton,style:{width:r.width,height:r.height}}),i&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`canvas`,{className:c.default.pageCanvas,ref:e=>{R.current[t]=e},style:{display:n?`block`:`none`}}),(0,d.jsx)(`div`,{className:`textLayer ${c.default.textLayer}`,ref:e=>{ge.current[t]=e}})]}),_e.filter(e=>e.page===t+1).map((e,t)=>(0,d.jsx)(`a`,{className:c.default.linkOverlay,href:e.url&&a.isSafeUrl(e.url)?e.url:`#`,target:`_blank`,rel:`noopener noreferrer`,style:{left:e.x,top:e.y,width:e.width,height:e.height},onClick:t=>be(e,t)},t)),ve.filter(e=>e.page===t+1).map((e,t)=>e.subtype===`Text`?(0,d.jsx)(`div`,{className:c.default.noteIconOverlay,style:{left:e.x,top:e.y,width:Math.max(e.width,26),height:Math.max(e.height,26)},onMouseEnter:t=>Z(e,t),onMouseLeave:Q,onClick:()=>$(e),children:(0,d.jsxs)(`svg`,{width:`22`,height:`22`,viewBox:`0 0 12 12`,fill:`none`,"aria-hidden":`true`,children:[(0,d.jsx)(`rect`,{x:`0.5`,y:`0.5`,width:`9`,height:`8`,rx:`1`,fill:`rgba(255,210,0,0.9)`,stroke:`rgba(160,120,0,0.7)`,strokeWidth:`1`}),(0,d.jsx)(`path`,{d:`M9.5 5.5v3l2.5-3z`,fill:`rgba(255,210,0,0.9)`,stroke:`rgba(160,120,0,0.7)`,strokeWidth:`1`}),(0,d.jsx)(`line`,{x1:`2`,y1:`3`,x2:`8`,y2:`3`,stroke:`rgba(90,60,0,0.8)`,strokeWidth:`1`,strokeLinecap:`round`}),(0,d.jsx)(`line`,{x1:`2`,y1:`5.5`,x2:`7`,y2:`5.5`,stroke:`rgba(90,60,0,0.8)`,strokeWidth:`1`,strokeLinecap:`round`})]})},t):(0,d.jsx)(`div`,{className:c.default.noteOverlay,style:{left:e.x,top:e.y,width:e.width,height:e.height},onMouseEnter:t=>Z(e,t),onMouseLeave:Q,onClick:()=>$(e)},t)),ye.filter(e=>e.page===t+1).map((e,t)=>(0,d.jsx)(`div`,{className:c.default.searchMatchOverlay,style:{left:e.x,top:e.y,width:e.width,height:e.height}},t)),w&&Y?.page===t+1&&(0,d.jsx)(`div`,{className:c.default.highlightOverlay,style:{left:Y.x,top:Y.y,width:Y.width,height:Y.height}})]},`${t}-${S}`)}),v&&(0,d.jsx)(se,{hasRead:N})]})]})]}),j&&(0,d.jsxs)(`div`,{className:c.default.notePopover,style:j.above?{left:j.x,bottom:j.y}:{left:j.x,top:j.y},onMouseEnter:()=>{X.current&&clearTimeout(X.current)},onMouseLeave:Q,onClick:e=>e.stopPropagation(),children:[j.title&&(0,d.jsx)(`div`,{className:c.default.notePopoverTitle,children:j.title}),(0,d.jsx)(`p`,{className:c.default.notePopoverContent,children:j.contents})]})]})})})};exports.default=p;
1
+ const e=require("../_virtual/_rolldown/runtime.cjs"),t=require("../context/PDFViewerContext.cjs"),n=require("../hooks/useScrollTracking.cjs"),r=require("../hooks/useKeyboardShortcuts.cjs"),i=require("../hooks/useTextLayer.cjs"),a=require("../utils/url.cjs"),ee=require("../hooks/useAnnotationLayer.cjs"),te=require("../hooks/usePDFLoader.cjs"),ne=require("../hooks/usePDFRenderer.cjs"),re=require("../hooks/useOverlayRects.cjs"),ie=require("../hooks/usePinchZoom.cjs"),o=require("../utils/pdfFit.cjs"),ae=require("../context/ThemeContext.cjs"),oe=require("../context/LabelsContext.cjs"),s=require("../hooks/useLabels.cjs"),c=require("./PDFViewer.module.cjs");let l=require("react");l=e.__toESM(l,1);let u=require("pdfjs-dist");u=e.__toESM(u,1);let d=require("react/jsx-runtime");var f=2;function se({hasRead:e}){let t=s.useLabels();return(0,d.jsxs)(`div`,{className:`${c.default.requireReadBanner} ${e?c.default.requireReadDone:``}`,children:[e?(0,d.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{d:`M3 8l3.5 3.5L13 4.5`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})}):(0,d.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,d.jsx)(`path`,{d:`M8 3v10M4 9l4 4 4-4`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})}),(0,d.jsx)(`span`,{children:e?t.requireReadDone:t.requireReadPending})]})}var p=({file:e,workerSrc:s,sidebar:p,toolbar:m,onChangeFile:h,themeOverrides:ce,defaultTheme:le,defaultFit:g,language:ue,className:_,style:de,requireRead:v,onDocumentRead:y})=>{(0,l.useEffect)(()=>{u.GlobalWorkerOptions.workerSrc=s},[s]);let[b,x]=(0,l.useState)(1),[S,C]=(0,l.useState)(0),[w,T]=(0,l.useState)(null),[E,D]=(0,l.useState)([]),[O,fe]=(0,l.useState)(!1),[k,A]=(0,l.useState)(g??null),[j,M]=(0,l.useState)(null),[N,P]=(0,l.useState)(!1),F=(0,l.useRef)(!1),I=(0,l.useRef)(null),L=(0,l.useRef)([]),R=(0,l.useRef)([]),z=(0,l.useRef)(S);(0,l.useEffect)(()=>{z.current=S},[S]);let[pe,B]=(0,l.useState)(null);pe!==e&&(B(e),T(null),P(!1)),(0,l.useEffect)(()=>{F.current=!1},[e]);let{pdf:V,numPages:H,loading:me}=te.usePDFLoader(e);(0,l.useEffect)(()=>{V&&(L.current=Array(V.numPages).fill(null),R.current=Array(V.numPages).fill(null))},[V]),(0,l.useEffect)(()=>{!V||!g||!I.current||o.computeFit(g,V,I.current,z.current).then(x)},[V,g]);let U=(0,l.useRef)(k);(0,l.useEffect)(()=>{U.current=k},[k]),(0,l.useEffect)(()=>{if(!V||!I.current)return;let e=I.current,t=new ResizeObserver(()=>{U.current&&o.computeFit(U.current,V,e,z.current).then(x)});return t.observe(e),()=>t.disconnect()},[V]);let{currentPage:W,goToPage:G}=n.useScrollTracking({numPages:H,containerRef:I,pageRefs:L});(0,l.useEffect)(()=>{H===0||W<H||(v&&!N&&P(!0),F.current||(F.current=!0,y?.()))},[W,H,v,N,y]);let K=(0,l.useMemo)(()=>{if(H===0)return[];let e=new Set,t=Math.max(W-f,1),n=Math.min(W+f,H);for(let r=t;r<=n;r++)e.add(r);w&&e.add(w.page);for(let t of E)e.add(t.page);return Array.from(e).sort((e,t)=>e-t)},[W,H,w,E]),{pageSizes:he,renderedPages:q}=ne.usePDFRenderer({pdf:V,zoom:b,rotation:S,visiblePages:K,canvasRefs:R}),J=(0,l.useMemo)(()=>{let e=new Set(K);for(let t of q)e.add(t);return Array.from(e).sort((e,t)=>e-t)},[K,q]);r.useKeyboardShortcuts({pdf:V,currentPage:W,goToPage:G,setRotation:C}),ie.usePinchZoom(I,b,x,A);let ge=i.useTextLayer({pdf:V,zoom:b,rotation:S,mountedPages:J,canvasRefs:R}),{linkOverlays:_e,noteOverlays:ve}=ee.useAnnotationLayer({pdf:V,zoom:b,rotation:S,mountedPages:J,goToPage:G});(0,l.useEffect)(()=>{if(!j)return;let e=()=>M(null),t=e=>{e.key===`Escape`&&M(null)};return document.addEventListener(`click`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`click`,e),document.removeEventListener(`keydown`,t)}},[j]);let{overlayRect:Y,searchOverlays:ye}=re.useOverlayRects({pdf:V,highlight:w,searchMatches:E,zoom:b,rotation:S}),be=(0,l.useCallback)((e,t)=>{(!e.url||!a.isSafeUrl(e.url))&&(t.preventDefault(),e.url||e._handleClick())},[]),X=(0,l.useRef)(null),Z=(0,l.useCallback)((e,t)=>{X.current&&clearTimeout(X.current);let n=t.clientY>window.innerHeight*.6;M({x:Math.min(t.clientX,window.innerWidth-304),y:n?window.innerHeight-t.clientY+8:t.clientY+12,above:n,contents:e.contents,title:e.title})},[]),Q=(0,l.useCallback)(()=>{X.current=setTimeout(()=>M(null),200)},[]),$=(0,l.useCallback)(e=>{T({page:e.page,pdfRect:e.pdfRect}),G(e.page)},[T,G]),xe=(0,l.useMemo)(()=>({pdf:V,numPages:H,zoom:b,setZoom:x,rotation:S,setRotation:C,currentPage:W,goToPage:G,containerRef:I,canvasRefs:R,file:e,highlight:w,setHighlight:T,searchMatches:E,setSearchMatches:D,onChangeFile:h,sidebarCollapsed:O,setSidebarCollapsed:fe,fitMode:k,setFitMode:A,navigationLocked:!!v&&!N}),[V,H,b,S,W,G,e,w,E,h,O,k,v,N]);return(0,d.jsx)(ae.ThemeProvider,{themeOverrides:ce,defaultTheme:le,children:(0,d.jsx)(oe.LabelsProvider,{language:ue,children:(0,d.jsxs)(t.PDFViewerContext.Provider,{value:xe,children:[(0,d.jsxs)(`div`,{className:`${c.default.appLayout}${_?` ${_}`:``}`,style:de,children:[m&&(0,d.jsx)(`div`,{className:c.default.toolbar,children:m}),(0,d.jsxs)(`div`,{className:c.default.body,children:[p,(0,d.jsx)(`div`,{className:c.default.scrollContainer,ref:I,children:(0,d.jsxs)(`div`,{className:c.default.scrollInner,children:[me&&(0,d.jsx)(`div`,{className:c.default.documentLoading}),Array.from({length:H},(e,t)=>{let n=q.has(t+1),r=he[t],i=J.includes(t+1);return(0,d.jsxs)(`div`,{className:c.default.pageWrapper,ref:e=>{L.current[t]=e},style:r?{width:r.width,height:r.height}:void 0,children:[r&&!n&&(0,d.jsx)(`div`,{className:c.default.pageSkeleton,style:{width:r.width,height:r.height}}),i&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`canvas`,{className:c.default.pageCanvas,ref:e=>{R.current[t]=e},style:{display:n?`block`:`none`}}),(0,d.jsx)(`div`,{className:`textLayer ${c.default.textLayer}`,ref:e=>{ge.current[t]=e}})]}),_e.filter(e=>e.page===t+1).map((e,t)=>(0,d.jsx)(`a`,{className:c.default.linkOverlay,href:e.url&&a.isSafeUrl(e.url)?e.url:`#`,target:`_blank`,rel:`noopener noreferrer`,style:{left:e.x,top:e.y,width:e.width,height:e.height},onClick:t=>be(e,t)},t)),ve.filter(e=>e.page===t+1).map((e,t)=>e.subtype===`Text`?(0,d.jsx)(`div`,{className:c.default.noteIconOverlay,style:{left:e.x,top:e.y,width:Math.max(e.width,26),height:Math.max(e.height,26)},onMouseEnter:t=>Z(e,t),onMouseLeave:Q,onClick:()=>$(e),children:(0,d.jsxs)(`svg`,{width:`22`,height:`22`,viewBox:`0 0 12 12`,fill:`none`,"aria-hidden":`true`,children:[(0,d.jsx)(`rect`,{x:`0.5`,y:`0.5`,width:`9`,height:`8`,rx:`1`,fill:`rgba(255,210,0,0.9)`,stroke:`rgba(160,120,0,0.7)`,strokeWidth:`1`}),(0,d.jsx)(`path`,{d:`M9.5 5.5v3l2.5-3z`,fill:`rgba(255,210,0,0.9)`,stroke:`rgba(160,120,0,0.7)`,strokeWidth:`1`}),(0,d.jsx)(`line`,{x1:`2`,y1:`3`,x2:`8`,y2:`3`,stroke:`rgba(90,60,0,0.8)`,strokeWidth:`1`,strokeLinecap:`round`}),(0,d.jsx)(`line`,{x1:`2`,y1:`5.5`,x2:`7`,y2:`5.5`,stroke:`rgba(90,60,0,0.8)`,strokeWidth:`1`,strokeLinecap:`round`})]})},t):(0,d.jsx)(`div`,{className:c.default.noteOverlay,style:{left:e.x,top:e.y,width:e.width,height:e.height},onMouseEnter:t=>Z(e,t),onMouseLeave:Q,onClick:()=>$(e)},t)),ye.filter(e=>e.page===t+1).map((e,t)=>(0,d.jsx)(`div`,{className:c.default.searchMatchOverlay,style:{left:e.x,top:e.y,width:e.width,height:e.height}},t)),w&&Y?.page===t+1&&(0,d.jsx)(`div`,{className:c.default.highlightOverlay,style:{left:Y.x,top:Y.y,width:Y.width,height:Y.height}})]},`${t}-${S}`)}),v&&(0,d.jsx)(se,{hasRead:N})]})})]})]}),j&&(0,d.jsxs)(`div`,{className:c.default.notePopover,style:j.above?{left:j.x,bottom:j.y}:{left:j.x,top:j.y},onMouseEnter:()=>{X.current&&clearTimeout(X.current)},onMouseLeave:Q,onClick:e=>e.stopPropagation(),children:[j.title&&(0,d.jsx)(`div`,{className:c.default.notePopoverTitle,children:j.title}),(0,d.jsx)(`p`,{className:c.default.notePopoverContent,children:j.contents})]})]})})})};exports.default=p;
@@ -1 +1 @@
1
- var e={appLayout:`_appLayout_dknw2_1`,body:`_body_dknw2_9`,toolbar:`_toolbar_dknw2_17`,scrollContainer:`_scrollContainer_dknw2_29`,pageWrapper:`_pageWrapper_dknw2_41`,pageCanvas:`_pageCanvas_dknw2_46`,textLayer:`_textLayer_dknw2_55`,markedContent:`_markedContent_dknw2_81`,endOfContent:`_endOfContent_dknw2_96`,selecting:`_selecting_dknw2_105`,documentLoading:`_documentLoading_dknw2_125`,spin:`_spin_dknw2_1`,pageSkeleton:`_pageSkeleton_dknw2_145`,highlightOverlay:`_highlightOverlay_dknw2_174`,linkOverlay:`_linkOverlay_dknw2_183`,searchMatchOverlay:`_searchMatchOverlay_dknw2_190`,noteOverlay:`_noteOverlay_dknw2_198`,noteIconOverlay:`_noteIconOverlay_dknw2_205`,requireReadBanner:`_requireReadBanner_dknw2_222`,requireReadDone:`_requireReadDone_dknw2_246`,notePopover:`_notePopover_dknw2_250`,notePopoverTitle:`_notePopoverTitle_dknw2_263`,notePopoverContent:`_notePopoverContent_dknw2_270`};exports.default=e;
1
+ var e={appLayout:`_appLayout_1kgj9_1`,body:`_body_1kgj9_9`,toolbar:`_toolbar_1kgj9_17`,scrollContainer:`_scrollContainer_1kgj9_29`,scrollInner:`_scrollInner_1kgj9_37`,pageWrapper:`_pageWrapper_1kgj9_46`,pageCanvas:`_pageCanvas_1kgj9_51`,textLayer:`_textLayer_1kgj9_60`,markedContent:`_markedContent_1kgj9_86`,endOfContent:`_endOfContent_1kgj9_101`,selecting:`_selecting_1kgj9_110`,documentLoading:`_documentLoading_1kgj9_130`,spin:`_spin_1kgj9_1`,pageSkeleton:`_pageSkeleton_1kgj9_150`,highlightOverlay:`_highlightOverlay_1kgj9_179`,linkOverlay:`_linkOverlay_1kgj9_188`,searchMatchOverlay:`_searchMatchOverlay_1kgj9_195`,noteOverlay:`_noteOverlay_1kgj9_203`,noteIconOverlay:`_noteIconOverlay_1kgj9_210`,requireReadBanner:`_requireReadBanner_1kgj9_227`,requireReadDone:`_requireReadDone_1kgj9_251`,notePopover:`_notePopover_1kgj9_255`,notePopoverTitle:`_notePopoverTitle_1kgj9_268`,notePopoverContent:`_notePopoverContent_1kgj9_275`};exports.default=e;
@@ -1 +1 @@
1
- const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../context/PDFViewerContext.cjs"),n=require("../../hooks/useLabels.cjs"),r=require("../ui/ToolbarButton.cjs"),i=require("./PDFZoomControls.module.cjs");let a=require("react");a=e.__toESM(a,1);let o=require("react/jsx-runtime");function s({zoomOutIcon:e,zoomInIcon:s}){let{zoom:c,setZoom:l,setFitMode:u}=t.usePDFViewer(),d=n.useLabels(),f=(0,a.useCallback)(e=>{u(null),l(t=>Math.min(Math.max(t+e,.2),3))},[u,l]),p=(0,a.useCallback)(()=>f(-.2),[f]),m=(0,a.useCallback)(()=>f(.2),[f]);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(r.ToolbarButton,{onClick:p,title:d.zoomOutTitle,children:e}),(0,o.jsxs)(`span`,{className:i.default.zoomLabel,children:[Math.round(c*100),`%`]}),(0,o.jsx)(r.ToolbarButton,{onClick:m,title:d.zoomInTitle,children:s})]})}s.toolbarLabelKey=`zoomToolbarLabel`,exports.PDFZoomControls=s;
1
+ const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../context/PDFViewerContext.cjs"),n=require("../../utils/zoom.cjs"),r=require("../../hooks/useLabels.cjs"),i=require("../ui/ToolbarButton.cjs"),a=require("./PDFZoomControls.module.cjs");let o=require("react");o=e.__toESM(o,1);let s=require("react/jsx-runtime");function c({zoomOutIcon:e,zoomInIcon:c}){let{zoom:l,setZoom:u,setFitMode:d}=t.usePDFViewer(),f=r.useLabels(),p=(0,o.useCallback)(e=>{d(null),u(t=>Math.min(Math.max(t+e,n.MIN_ZOOM),5))},[d,u]),m=(0,o.useCallback)(()=>p(-.2),[p]),h=(0,o.useCallback)(()=>p(.2),[p]);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(i.ToolbarButton,{onClick:m,title:f.zoomOutTitle,children:e}),(0,s.jsxs)(`span`,{className:a.default.zoomLabel,children:[Math.round(l*100),`%`]}),(0,s.jsx)(i.ToolbarButton,{onClick:h,title:f.zoomInTitle,children:c})]})}c.toolbarLabelKey=`zoomToolbarLabel`,exports.PDFZoomControls=c;
@@ -1 +1 @@
1
- let e=require("react");function t(e){let t=e[0].clientX-e[1].clientX,n=e[0].clientY-e[1].clientY;return Math.sqrt(t*t+n*n)}function n(n,r,i,a){let o=(0,e.useRef)(r);(0,e.useEffect)(()=>{o.current=r},[r]);let s=(0,e.useRef)(null),c=(0,e.useRef)(1),l=(0,e.useRef)(null),u=(0,e.useRef)(!1);(0,e.useEffect)(()=>{let e=n.current;if(!e)return;let r=e=>{e.touches.length===2&&(u.current=!0,l.current=null,s.current=t(e.touches),c.current=o.current)},d=e=>{if(e.touches.length!==2||s.current===null)return;e.preventDefault();let n=t(e.touches)/s.current;i(Math.max(.2,Math.min(3,c.current*n))),a(null)},f=e=>{if(e.touches.length===0&&s.current!==null){u.current=!1,s.current=null;return}if(s.current=null,u.current||e.changedTouches.length!==1)return;let t=e.changedTouches[0],n=Date.now(),r=l.current;if(r&&n-r.time<300){let e=t.clientX-r.x,n=t.clientY-r.y;if(Math.sqrt(e*e+n*n)<40){l.current=null,i(o.current>1.2?1:2),a(null);return}}l.current={time:n,x:t.clientX,y:t.clientY}},p=e=>{if(!e.ctrlKey&&!e.metaKey)return;e.preventDefault();let t=-(e.deltaMode===1?e.deltaY*30:e.deltaMode===2?e.deltaY*300:e.deltaY)*.02;i(Math.max(.2,Math.min(3,o.current+t))),a(null)};return e.addEventListener(`touchstart`,r,{passive:!0}),e.addEventListener(`touchmove`,d,{passive:!1}),e.addEventListener(`touchend`,f,{passive:!0}),e.addEventListener(`wheel`,p,{passive:!1}),()=>{e.removeEventListener(`touchstart`,r),e.removeEventListener(`touchmove`,d),e.removeEventListener(`touchend`,f),e.removeEventListener(`wheel`,p)}},[n,i,a])}exports.usePinchZoom=n;
1
+ const e=require("../utils/zoom.cjs");let t=require("react");function n(e){let t=e[0].clientX-e[1].clientX,n=e[0].clientY-e[1].clientY;return Math.sqrt(t*t+n*n)}function r(r,i,a,o){let s=(0,t.useRef)(i);(0,t.useEffect)(()=>{s.current=i},[i]);let c=(0,t.useRef)(null),l=(0,t.useRef)(1),u=(0,t.useRef)(null),d=(0,t.useRef)(!1);(0,t.useEffect)(()=>{let t=r.current;if(!t)return;let i=e=>{e.touches.length===2&&(d.current=!0,u.current=null,c.current=n(e.touches),l.current=s.current)},f=t=>{if(t.touches.length!==2||c.current===null)return;t.preventDefault();let r=n(t.touches)/c.current;a(Math.max(e.MIN_ZOOM,Math.min(5,l.current*(1+(r-1)*1)))),o(null)},p=e=>{if(e.touches.length===0&&c.current!==null){d.current=!1,c.current=null;return}if(c.current=null,d.current||e.changedTouches.length!==1)return;let t=e.changedTouches[0],n=Date.now(),r=u.current;if(r&&n-r.time<300){let e=t.clientX-r.x,n=t.clientY-r.y;if(Math.sqrt(e*e+n*n)<40){u.current=null,a(s.current>1.2?1:2),o(null);return}}u.current={time:n,x:t.clientX,y:t.clientY}},m=t=>{if(!t.ctrlKey&&!t.metaKey)return;t.preventDefault();let n=-(t.deltaMode===1?t.deltaY*30:t.deltaMode===2?t.deltaY*300:t.deltaY)*e.WHEEL_ZOOM_SPEED;a(Math.max(e.MIN_ZOOM,Math.min(5,s.current+n))),o(null)};return t.addEventListener(`touchstart`,i,{passive:!0}),t.addEventListener(`touchmove`,f,{passive:!1}),t.addEventListener(`touchend`,p,{passive:!0}),t.addEventListener(`wheel`,m,{passive:!1}),()=>{t.removeEventListener(`touchstart`,i),t.removeEventListener(`touchmove`,f),t.removeEventListener(`touchend`,p),t.removeEventListener(`wheel`,m)}},[r,a,o])}exports.usePinchZoom=r;
@@ -1,2 +1,2 @@
1
- ._wrapper_1kvg0_1{border-right:1px solid var(--pdf-border);height:100%;display:flex}._wrapperCollapsed_1kvg0_7{border-right:1px solid var(--pdf-border);background-color:var(--pdf-bg);flex-direction:column;height:100%;padding-top:4px;display:flex}._buttonBar_1kvg0_16{background-color:var(--pdf-bg);flex-direction:column;flex-shrink:0;gap:2px;width:48px;padding-top:4px;display:flex}._toggleButton_1kvg0_26{border-bottom:1px solid var(--pdf-border);border-radius:0;width:48px;margin:0;padding-bottom:6px}._panelButton_1kvg0_35{cursor:pointer;width:44px;height:44px;color:var(--pdf-text-muted);background-color:#0000;border:none;border-radius:6px;justify-content:center;align-items:center;margin:0 2px;transition:background-color .15s,color .15s;display:flex}._panelButton_1kvg0_35:hover{background-color:var(--pdf-surface);color:var(--pdf-text-secondary)}._panelButtonActive_1kvg0_57{background-color:var(--pdf-surface);color:var(--pdf-accent-light)}._panelButtonActive_1kvg0_57:hover{color:var(--pdf-accent-light)}._contentPanel_1kvg0_66{background-color:var(--pdf-panel-bg);border-right:1px solid var(--pdf-panel-border);flex-direction:column;width:260px;display:flex}._panelHeader_1kvg0_74{color:var(--pdf-text-muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-header-bg);flex-shrink:0;padding:10px 14px;font-size:11px;font-weight:600}._panelBody_1kvg0_86{flex:1;overflow-y:auto}._appLayout_dknw2_1{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}._body_dknw2_9{flex-direction:row;flex:1;min-height:0;display:flex;overflow:hidden}._toolbar_dknw2_17{border-bottom:1px solid var(--pdf-border);background-color:var(--pdf-bg);z-index:10;flex-shrink:0;align-items:center;gap:2px;height:44px;padding:0 12px;display:flex}._scrollContainer_dknw2_29{background-color:var(--pdf-scroll-area);touch-action:pan-x pan-y;flex-direction:column;flex:1;align-items:center;padding:10px 20px;display:flex;position:relative;overflow-y:auto}._pageWrapper_dknw2_41{margin-bottom:25px;position:relative}._pageCanvas_dknw2_46{z-index:1;box-shadow:0 5px 20px var(--pdf-shadow-page);pointer-events:none;background-color:#fff;display:block;position:relative}._textLayer_dknw2_55{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;text-align:initial;opacity:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:canvastext;z-index:2;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));line-height:1;position:absolute;inset:0;overflow:clip}._textLayer_dknw2_55 :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;position:absolute}._textLayer_dknw2_55>:not(._markedContent_dknw2_81),._textLayer_dknw2_55 ._markedContent_dknw2_81 span:not(._markedContent_dknw2_81){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}._textLayer_dknw2_55 ._markedContent_dknw2_81{display:contents}._textLayer_dknw2_55 ._endOfContent_dknw2_96{z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}._textLayer_dknw2_55._selecting_dknw2_105 ._endOfContent_dknw2_96{top:0}._textLayer_dknw2_55 ::selection{background:#0000ff40}._textLayer_dknw2_55 br::selection{background:0 0}._documentLoading_dknw2_125{pointer-events:none;z-index:10;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}._documentLoading_dknw2_125:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite _spin_dknw2_1}._pageSkeleton_dknw2_145{z-index:0;pointer-events:none;background:#fff;border-radius:1px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}._pageSkeleton_dknw2_145:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite _spin_dknw2_1}@keyframes _spin_dknw2_1{to{transform:rotate(360deg)}}._highlightOverlay_dknw2_174{z-index:4;pointer-events:none;background-color:#ffdc0059;border:2px solid #ffa000e6;border-radius:2px;position:absolute}._linkOverlay_dknw2_183{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._searchMatchOverlay_dknw2_190{z-index:3;pointer-events:none;background-color:#fde0474d;border-bottom:2px solid #eab308cc;position:absolute}._noteOverlay_dknw2_198{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._noteIconOverlay_dknw2_205{z-index:3;pointer-events:all;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;transition:background-color .1s;display:flex;position:absolute}._noteIconOverlay_dknw2_205:hover{background-color:#ffd20033;outline:1px solid #a0780066}._requireReadBanner_dknw2_222{font-size:13px;font-weight:500;font-family:var(--pdf-font-family);color:#fff;background-color:color-mix(in srgb, var(--pdf-accent) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:5px;align-self:flex-end;align-items:center;gap:8px;margin-top:auto;margin-right:25px;padding:9px 16px;transition:background-color .4s;display:flex;position:sticky;bottom:12px;box-shadow:0 2px 12px #0000002e}._requireReadDone_dknw2_246{background-color:#16a34abf}._notePopover_dknw2_250{z-index:9999;background-color:var(--pdf-surface);border:1px solid var(--pdf-border);min-width:160px;max-width:280px;font-family:var(--pdf-font-family);border-radius:6px;padding:10px 12px;position:fixed;box-shadow:0 4px 16px #00000026}._notePopoverTitle_dknw2_263{color:var(--pdf-text-secondary);margin-bottom:6px;font-size:12px;font-weight:600}._notePopoverContent_dknw2_270{color:var(--pdf-text-primary);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.5}._list_gygvf_1{flex-direction:column;display:flex}._emptyState_gygvf_6{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._pageHeader_gygvf_12{color:var(--pdf-text-secondary);text-transform:uppercase;letter-spacing:.5px;background-color:var(--pdf-panel-header-bg);border-bottom:1px solid var(--pdf-panel-border);padding:5px 12px;font-size:10px;font-weight:600}._card_gygvf_23{border:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-bg);border-radius:6px;margin:8px;padding:10px 12px;font-size:12px;transition:box-shadow .12s}._cardClickable_gygvf_33{cursor:pointer}._cardClickable_gygvf_33:hover{box-shadow:0 1px 6px var(--pdf-shadow-page)}._cardHeader_gygvf_41{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}._cardLabel_gygvf_48{color:var(--pdf-text-secondary);align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}._cardPage_gygvf_57{color:var(--pdf-text-secondary);font-size:10px}._cardAuthor_gygvf_62{color:var(--pdf-text-muted);margin-bottom:3px;font-size:11px}._cardContent_gygvf_68{color:var(--pdf-text-primary);font-size:12px;line-height:1.5}._iconWrapper_gygvf_74{justify-content:center;align-items:center;display:flex;position:relative}._badge_gygvf_81{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._list_12ybz_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_12ybz_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_12ybz_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;box-sizing:border-box;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;display:flex;overflow:hidden}._fileIcon_12ybz_33{color:var(--pdf-text-muted);flex-shrink:0;align-items:center;display:flex}._filename_12ybz_40{min-width:0;color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}._downloadBtn_12ybz_51{border:1px solid var(--pdf-border);background:var(--pdf-surface);width:28px;height:28px;color:var(--pdf-text-secondary);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;transition:background .15s,border-color .15s,color .15s;display:flex}._downloadBtn_12ybz_51:hover{background:var(--pdf-accent);border-color:var(--pdf-accent);color:#fff}._iconWrapper_12ybz_77{justify-content:center;align-items:center;display:flex;position:relative}._badge_12ybz_84{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._btn_1dub8_1{color:var(--pdf-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1;transition:background .12s,color .12s;display:flex}._btn_1dub8_1:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._btn_1dub8_1:disabled{color:var(--pdf-border);cursor:default}._primary_1dub8_31{background:var(--pdf-accent);color:#fff;padding:6px 14px}._primary_1dub8_31:hover:not(:disabled){background:var(--pdf-accent-hover);color:#fff}._navWrapper_14eo9_1{align-items:center;gap:2px;display:flex}._pageInput_14eo9_7{background:var(--pdf-surface);width:32px;color:var(--pdf-text-primary);font-variant-numeric:tabular-nums;text-align:center;border:1px solid #0000;border-radius:4px;outline:none;padding:3px 4px;font-family:inherit;font-size:12px}._pageInput_14eo9_7:focus{border-color:var(--pdf-accent)}._pageInput_14eo9_7::-webkit-outer-spin-button{-webkit-appearance:none}._pageInput_14eo9_7::-webkit-inner-spin-button{-webkit-appearance:none}._pageInput_14eo9_7{-moz-appearance:textfield}._pageTotal_14eo9_34{color:var(--pdf-text-placeholder);font-variant-numeric:tabular-nums;font-size:12px}._emptyState_hqvdn_1{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._tree_hqvdn_7{flex-direction:column;padding:4px 0;display:flex}._row_hqvdn_13{color:var(--pdf-text-secondary);cursor:pointer;border-radius:4px;align-items:center;gap:4px;margin:0 4px;padding:5px 12px;font-size:12px;line-height:1.4;display:flex}._row_hqvdn_13:hover{background-color:var(--pdf-surface-hover);color:var(--pdf-text-primary)}._chevronBtn_hqvdn_31{cursor:pointer;color:var(--pdf-text-secondary);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:flex}._chevronBtn_hqvdn_31:hover{color:var(--pdf-text-muted)}._title_hqvdn_46{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._wrapper_18kvs_1{align-items:center;gap:4px;display:flex}._searchIconWrapper_18kvs_7{color:var(--pdf-text-secondary);align-items:center;display:flex}._searchInput_18kvs_13{background:var(--pdf-surface);border:1px solid var(--pdf-border);color:var(--pdf-text-primary);border-radius:4px;outline:none;width:180px;padding:4px 8px;font-family:inherit;font-size:13px}._searchInput_18kvs_13:focus{border-color:var(--pdf-accent)}._searchInput_18kvs_13::placeholder{color:var(--pdf-text-placeholder)}._navButton_18kvs_33{color:var(--pdf-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px 5px;display:flex}._navButton_18kvs_33:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._navButton_18kvs_33:disabled{color:var(--pdf-border);cursor:default}._counter_18kvs_54{color:var(--pdf-text-muted);text-align:center;min-width:36px;font-size:11px}._list_b0wj1_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_b0wj1_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_b0wj1_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;cursor:default;box-sizing:border-box;border-radius:8px;width:100%;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;position:relative;overflow:hidden}._cardSigned_b0wj1_32{background:#22c55e0a;border-color:#22c55e47}._cardClickable_b0wj1_37{cursor:pointer}._cardClickable_b0wj1_37:hover{box-shadow:0 2px 10px var(--pdf-shadow-page);border-color:var(--pdf-border-light)}._cardSigned_b0wj1_32._cardClickable_b0wj1_37:hover{border-color:#22c55e73}._cardBody_b0wj1_50{padding:10px 12px 10px 16px}._cardHeader_b0wj1_54{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}._fieldName_b0wj1_62{color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}._statusChip_b0wj1_73{text-transform:uppercase;letter-spacing:.5px;background:var(--pdf-surface-hover);color:var(--pdf-text-muted);border:1px solid var(--pdf-border);border-radius:20px;flex-shrink:0;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}._statusChipSigned_b0wj1_89{color:#15803d;background:#22c55e1f;border-color:#22c55e4d}._fieldList_b0wj1_95{flex-direction:column;gap:4px;display:flex}._fieldRow_b0wj1_101{grid-template-columns:72px 1fr;gap:4px;font-size:11px;line-height:1.5;display:grid}._fieldLabel_b0wj1_109{color:var(--pdf-text-muted);font-weight:500}._fieldValue_b0wj1_114{color:var(--pdf-text-secondary);word-break:break-word}._iconWrapper_b0wj1_119{justify-content:center;align-items:center;display:flex;position:relative}._badge_b0wj1_126{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._thumbnailList_t3mg8_1{background-color:var(--pdf-panel-bg);padding-bottom:8px}._thumbnailItem_t3mg8_6{cursor:pointer;text-align:center;background-color:#0000;border-left:2px solid #0000;padding:12px 16px;transition:background-color .15s}._thumbnailItem_t3mg8_6:hover{background-color:var(--pdf-surface-hover)}._thumbnailItemActive_t3mg8_19{background-color:var(--pdf-accent-subtle);border-left-color:var(--pdf-accent)}._thumbnailItemActive_t3mg8_19:hover{background-color:var(--pdf-accent-subtle)}._thumbnailImg_t3mg8_28{width:120px;box-shadow:0 1px 4px var(--pdf-shadow-page);border-radius:2px}._thumbnailImgActive_t3mg8_34{box-shadow:0 0 0 2px var(--pdf-accent), 0 2px 8px var(--pdf-shadow-page)}._thumbnailSkeleton_t3mg8_40{background:linear-gradient(90deg, var(--pdf-surface) 25%, var(--pdf-surface-hover) 50%, var(--pdf-surface) 75%);background-size:200% 100%;border-radius:2px;width:120px;height:160px;animation:1.4s infinite _shimmer_t3mg8_1}@keyframes _shimmer_t3mg8_1{0%{background-position:200% 0}to{background-position:-200% 0}}._thumbnailLabel_t3mg8_63{color:var(--pdf-text-muted);margin-top:6px;font-size:11px;font-weight:400}._thumbnailLabelActive_t3mg8_70{color:var(--pdf-accent-hover);font-weight:600}._zoomLabel_m8iv9_1{text-align:center;min-width:42px;color:var(--pdf-text-muted);font-variant-numeric:tabular-nums;font-size:12px}._toolbar_1b8zt_1{flex:1;align-items:center;gap:2px;min-width:0;display:flex}._item_1b8zt_9{flex-shrink:0;align-items:center;display:flex}._overflowWrapper_1b8zt_15{flex-shrink:0;margin-left:auto;position:relative}._overflowBtnActive_1b8zt_21{background:var(--pdf-surface);color:var(--pdf-text-primary)}._dropdown_1b8zt_26{background:var(--pdf-bg);border:1px solid var(--pdf-border);z-index:100;border-radius:6px;flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #0000002e}._dropdownItem_1b8zt_41{border-radius:4px;justify-content:flex-end;align-items:center;padding:1px 2px;display:flex}._dropdownItem_1b8zt_41>*{flex-shrink:0}._labeledItem_1b8zt_53{align-items:center;gap:8px;width:100%;display:flex}._itemContent_1b8zt_60{flex-shrink:0;align-items:center;display:flex}._itemLabel_1b8zt_66{color:var(--pdf-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:1;font-size:12px}._separator_b9iob_1{background:var(--pdf-toolbar-separator);flex-shrink:0;width:1px;height:20px;margin:0 4px}._separatorH_b9iob_9{background:var(--pdf-toolbar-separator);height:1px;margin:2px 4px}
1
+ ._wrapper_1kvg0_1{border-right:1px solid var(--pdf-border);height:100%;display:flex}._wrapperCollapsed_1kvg0_7{border-right:1px solid var(--pdf-border);background-color:var(--pdf-bg);flex-direction:column;height:100%;padding-top:4px;display:flex}._buttonBar_1kvg0_16{background-color:var(--pdf-bg);flex-direction:column;flex-shrink:0;gap:2px;width:48px;padding-top:4px;display:flex}._toggleButton_1kvg0_26{border-bottom:1px solid var(--pdf-border);border-radius:0;width:48px;margin:0;padding-bottom:6px}._panelButton_1kvg0_35{cursor:pointer;width:44px;height:44px;color:var(--pdf-text-muted);background-color:#0000;border:none;border-radius:6px;justify-content:center;align-items:center;margin:0 2px;transition:background-color .15s,color .15s;display:flex}._panelButton_1kvg0_35:hover{background-color:var(--pdf-surface);color:var(--pdf-text-secondary)}._panelButtonActive_1kvg0_57{background-color:var(--pdf-surface);color:var(--pdf-accent-light)}._panelButtonActive_1kvg0_57:hover{color:var(--pdf-accent-light)}._contentPanel_1kvg0_66{background-color:var(--pdf-panel-bg);border-right:1px solid var(--pdf-panel-border);flex-direction:column;width:260px;display:flex}._panelHeader_1kvg0_74{color:var(--pdf-text-muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-header-bg);flex-shrink:0;padding:10px 14px;font-size:11px;font-weight:600}._panelBody_1kvg0_86{flex:1;overflow-y:auto}._appLayout_1kgj9_1{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}._body_1kgj9_9{flex-direction:row;flex:1;min-height:0;display:flex;overflow:hidden}._toolbar_1kgj9_17{border-bottom:1px solid var(--pdf-border);background-color:var(--pdf-bg);z-index:10;flex-shrink:0;align-items:center;gap:2px;height:44px;padding:0 12px;display:flex}._scrollContainer_1kgj9_29{background-color:var(--pdf-scroll-area);touch-action:pan-x pan-y;flex:1;position:relative;overflow:auto}._scrollInner_1kgj9_37{flex-direction:column;align-items:center;width:max-content;min-width:100%;padding:10px 20px;display:flex}._pageWrapper_1kgj9_46{margin-bottom:25px;position:relative}._pageCanvas_1kgj9_51{z-index:1;box-shadow:0 5px 20px var(--pdf-shadow-page);pointer-events:none;background-color:#fff;display:block;position:relative}._textLayer_1kgj9_60{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;text-align:initial;opacity:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:canvastext;z-index:2;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));line-height:1;position:absolute;inset:0;overflow:clip}._textLayer_1kgj9_60 :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;position:absolute}._textLayer_1kgj9_60>:not(._markedContent_1kgj9_86),._textLayer_1kgj9_60 ._markedContent_1kgj9_86 span:not(._markedContent_1kgj9_86){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}._textLayer_1kgj9_60 ._markedContent_1kgj9_86{display:contents}._textLayer_1kgj9_60 ._endOfContent_1kgj9_101{z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}._textLayer_1kgj9_60._selecting_1kgj9_110 ._endOfContent_1kgj9_101{top:0}._textLayer_1kgj9_60 ::selection{background:#0000ff40}._textLayer_1kgj9_60 br::selection{background:0 0}._documentLoading_1kgj9_130{pointer-events:none;z-index:10;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}._documentLoading_1kgj9_130:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite _spin_1kgj9_1}._pageSkeleton_1kgj9_150{z-index:0;pointer-events:none;background:#fff;border-radius:1px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}._pageSkeleton_1kgj9_150:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite _spin_1kgj9_1}@keyframes _spin_1kgj9_1{to{transform:rotate(360deg)}}._highlightOverlay_1kgj9_179{z-index:4;pointer-events:none;background-color:#ffdc0059;border:2px solid #ffa000e6;border-radius:2px;position:absolute}._linkOverlay_1kgj9_188{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._searchMatchOverlay_1kgj9_195{z-index:3;pointer-events:none;background-color:#fde0474d;border-bottom:2px solid #eab308cc;position:absolute}._noteOverlay_1kgj9_203{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._noteIconOverlay_1kgj9_210{z-index:3;pointer-events:all;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;transition:background-color .1s;display:flex;position:absolute}._noteIconOverlay_1kgj9_210:hover{background-color:#ffd20033;outline:1px solid #a0780066}._requireReadBanner_1kgj9_227{font-size:13px;font-weight:500;font-family:var(--pdf-font-family);color:#fff;background-color:color-mix(in srgb, var(--pdf-accent) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:5px;align-self:flex-end;align-items:center;gap:8px;margin-top:auto;margin-right:25px;padding:9px 16px;transition:background-color .4s;display:flex;position:sticky;bottom:12px;box-shadow:0 2px 12px #0000002e}._requireReadDone_1kgj9_251{background-color:#16a34abf}._notePopover_1kgj9_255{z-index:9999;background-color:var(--pdf-surface);border:1px solid var(--pdf-border);min-width:160px;max-width:280px;font-family:var(--pdf-font-family);border-radius:6px;padding:10px 12px;position:fixed;box-shadow:0 4px 16px #00000026}._notePopoverTitle_1kgj9_268{color:var(--pdf-text-secondary);margin-bottom:6px;font-size:12px;font-weight:600}._notePopoverContent_1kgj9_275{color:var(--pdf-text-primary);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.5}._list_gygvf_1{flex-direction:column;display:flex}._emptyState_gygvf_6{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._pageHeader_gygvf_12{color:var(--pdf-text-secondary);text-transform:uppercase;letter-spacing:.5px;background-color:var(--pdf-panel-header-bg);border-bottom:1px solid var(--pdf-panel-border);padding:5px 12px;font-size:10px;font-weight:600}._card_gygvf_23{border:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-bg);border-radius:6px;margin:8px;padding:10px 12px;font-size:12px;transition:box-shadow .12s}._cardClickable_gygvf_33{cursor:pointer}._cardClickable_gygvf_33:hover{box-shadow:0 1px 6px var(--pdf-shadow-page)}._cardHeader_gygvf_41{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}._cardLabel_gygvf_48{color:var(--pdf-text-secondary);align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}._cardPage_gygvf_57{color:var(--pdf-text-secondary);font-size:10px}._cardAuthor_gygvf_62{color:var(--pdf-text-muted);margin-bottom:3px;font-size:11px}._cardContent_gygvf_68{color:var(--pdf-text-primary);font-size:12px;line-height:1.5}._iconWrapper_gygvf_74{justify-content:center;align-items:center;display:flex;position:relative}._badge_gygvf_81{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._list_12ybz_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_12ybz_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_12ybz_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;box-sizing:border-box;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;display:flex;overflow:hidden}._fileIcon_12ybz_33{color:var(--pdf-text-muted);flex-shrink:0;align-items:center;display:flex}._filename_12ybz_40{min-width:0;color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}._downloadBtn_12ybz_51{border:1px solid var(--pdf-border);background:var(--pdf-surface);width:28px;height:28px;color:var(--pdf-text-secondary);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;transition:background .15s,border-color .15s,color .15s;display:flex}._downloadBtn_12ybz_51:hover{background:var(--pdf-accent);border-color:var(--pdf-accent);color:#fff}._iconWrapper_12ybz_77{justify-content:center;align-items:center;display:flex;position:relative}._badge_12ybz_84{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._btn_1dub8_1{color:var(--pdf-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1;transition:background .12s,color .12s;display:flex}._btn_1dub8_1:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._btn_1dub8_1:disabled{color:var(--pdf-border);cursor:default}._primary_1dub8_31{background:var(--pdf-accent);color:#fff;padding:6px 14px}._primary_1dub8_31:hover:not(:disabled){background:var(--pdf-accent-hover);color:#fff}._navWrapper_14eo9_1{align-items:center;gap:2px;display:flex}._pageInput_14eo9_7{background:var(--pdf-surface);width:32px;color:var(--pdf-text-primary);font-variant-numeric:tabular-nums;text-align:center;border:1px solid #0000;border-radius:4px;outline:none;padding:3px 4px;font-family:inherit;font-size:12px}._pageInput_14eo9_7:focus{border-color:var(--pdf-accent)}._pageInput_14eo9_7::-webkit-outer-spin-button{-webkit-appearance:none}._pageInput_14eo9_7::-webkit-inner-spin-button{-webkit-appearance:none}._pageInput_14eo9_7{-moz-appearance:textfield}._pageTotal_14eo9_34{color:var(--pdf-text-placeholder);font-variant-numeric:tabular-nums;font-size:12px}._emptyState_hqvdn_1{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._tree_hqvdn_7{flex-direction:column;padding:4px 0;display:flex}._row_hqvdn_13{color:var(--pdf-text-secondary);cursor:pointer;border-radius:4px;align-items:center;gap:4px;margin:0 4px;padding:5px 12px;font-size:12px;line-height:1.4;display:flex}._row_hqvdn_13:hover{background-color:var(--pdf-surface-hover);color:var(--pdf-text-primary)}._chevronBtn_hqvdn_31{cursor:pointer;color:var(--pdf-text-secondary);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:flex}._chevronBtn_hqvdn_31:hover{color:var(--pdf-text-muted)}._title_hqvdn_46{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._wrapper_18kvs_1{align-items:center;gap:4px;display:flex}._searchIconWrapper_18kvs_7{color:var(--pdf-text-secondary);align-items:center;display:flex}._searchInput_18kvs_13{background:var(--pdf-surface);border:1px solid var(--pdf-border);color:var(--pdf-text-primary);border-radius:4px;outline:none;width:180px;padding:4px 8px;font-family:inherit;font-size:13px}._searchInput_18kvs_13:focus{border-color:var(--pdf-accent)}._searchInput_18kvs_13::placeholder{color:var(--pdf-text-placeholder)}._navButton_18kvs_33{color:var(--pdf-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px 5px;display:flex}._navButton_18kvs_33:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._navButton_18kvs_33:disabled{color:var(--pdf-border);cursor:default}._counter_18kvs_54{color:var(--pdf-text-muted);text-align:center;min-width:36px;font-size:11px}._list_b0wj1_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_b0wj1_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_b0wj1_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;cursor:default;box-sizing:border-box;border-radius:8px;width:100%;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;position:relative;overflow:hidden}._cardSigned_b0wj1_32{background:#22c55e0a;border-color:#22c55e47}._cardClickable_b0wj1_37{cursor:pointer}._cardClickable_b0wj1_37:hover{box-shadow:0 2px 10px var(--pdf-shadow-page);border-color:var(--pdf-border-light)}._cardSigned_b0wj1_32._cardClickable_b0wj1_37:hover{border-color:#22c55e73}._cardBody_b0wj1_50{padding:10px 12px 10px 16px}._cardHeader_b0wj1_54{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}._fieldName_b0wj1_62{color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}._statusChip_b0wj1_73{text-transform:uppercase;letter-spacing:.5px;background:var(--pdf-surface-hover);color:var(--pdf-text-muted);border:1px solid var(--pdf-border);border-radius:20px;flex-shrink:0;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}._statusChipSigned_b0wj1_89{color:#15803d;background:#22c55e1f;border-color:#22c55e4d}._fieldList_b0wj1_95{flex-direction:column;gap:4px;display:flex}._fieldRow_b0wj1_101{grid-template-columns:72px 1fr;gap:4px;font-size:11px;line-height:1.5;display:grid}._fieldLabel_b0wj1_109{color:var(--pdf-text-muted);font-weight:500}._fieldValue_b0wj1_114{color:var(--pdf-text-secondary);word-break:break-word}._iconWrapper_b0wj1_119{justify-content:center;align-items:center;display:flex;position:relative}._badge_b0wj1_126{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._thumbnailList_t3mg8_1{background-color:var(--pdf-panel-bg);padding-bottom:8px}._thumbnailItem_t3mg8_6{cursor:pointer;text-align:center;background-color:#0000;border-left:2px solid #0000;padding:12px 16px;transition:background-color .15s}._thumbnailItem_t3mg8_6:hover{background-color:var(--pdf-surface-hover)}._thumbnailItemActive_t3mg8_19{background-color:var(--pdf-accent-subtle);border-left-color:var(--pdf-accent)}._thumbnailItemActive_t3mg8_19:hover{background-color:var(--pdf-accent-subtle)}._thumbnailImg_t3mg8_28{width:120px;box-shadow:0 1px 4px var(--pdf-shadow-page);border-radius:2px}._thumbnailImgActive_t3mg8_34{box-shadow:0 0 0 2px var(--pdf-accent), 0 2px 8px var(--pdf-shadow-page)}._thumbnailSkeleton_t3mg8_40{background:linear-gradient(90deg, var(--pdf-surface) 25%, var(--pdf-surface-hover) 50%, var(--pdf-surface) 75%);background-size:200% 100%;border-radius:2px;width:120px;height:160px;animation:1.4s infinite _shimmer_t3mg8_1}@keyframes _shimmer_t3mg8_1{0%{background-position:200% 0}to{background-position:-200% 0}}._thumbnailLabel_t3mg8_63{color:var(--pdf-text-muted);margin-top:6px;font-size:11px;font-weight:400}._thumbnailLabelActive_t3mg8_70{color:var(--pdf-accent-hover);font-weight:600}._zoomLabel_m8iv9_1{text-align:center;min-width:42px;color:var(--pdf-text-muted);font-variant-numeric:tabular-nums;font-size:12px}._toolbar_1b8zt_1{flex:1;align-items:center;gap:2px;min-width:0;display:flex}._item_1b8zt_9{flex-shrink:0;align-items:center;display:flex}._overflowWrapper_1b8zt_15{flex-shrink:0;margin-left:auto;position:relative}._overflowBtnActive_1b8zt_21{background:var(--pdf-surface);color:var(--pdf-text-primary)}._dropdown_1b8zt_26{background:var(--pdf-bg);border:1px solid var(--pdf-border);z-index:100;border-radius:6px;flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #0000002e}._dropdownItem_1b8zt_41{border-radius:4px;justify-content:flex-end;align-items:center;padding:1px 2px;display:flex}._dropdownItem_1b8zt_41>*{flex-shrink:0}._labeledItem_1b8zt_53{align-items:center;gap:8px;width:100%;display:flex}._itemContent_1b8zt_60{flex-shrink:0;align-items:center;display:flex}._itemLabel_1b8zt_66{color:var(--pdf-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:1;font-size:12px}._separator_b9iob_1{background:var(--pdf-toolbar-separator);flex-shrink:0;width:1px;height:20px;margin:0 4px}._separatorH_b9iob_9{background:var(--pdf-toolbar-separator);height:1px;margin:2px 4px}
2
2
  /*$vite$:1*/
@@ -0,0 +1 @@
1
+ var e=.2,t=.03;exports.MIN_ZOOM=e,exports.WHEEL_ZOOM_SPEED=t;
@@ -222,144 +222,147 @@ var _ = ({ file: s, workerSrc: _, sidebar: le, toolbar: v, onChangeFile: y, them
222
222
  children: v
223
223
  }), /* @__PURE__ */ h("div", {
224
224
  className: c.body,
225
- children: [le, /* @__PURE__ */ h("div", {
225
+ children: [le, /* @__PURE__ */ m("div", {
226
226
  className: c.scrollContainer,
227
227
  ref: z,
228
- children: [
229
- ve && /* @__PURE__ */ m("div", { className: c.documentLoading }),
230
- Array.from({ length: W }, (e, t) => {
231
- let n = Y.has(t + 1), r = ye[t], a = X.includes(t + 1);
232
- return /* @__PURE__ */ h("div", {
233
- className: c.pageWrapper,
234
- ref: (e) => {
235
- B.current[t] = e;
236
- },
237
- style: r ? {
238
- width: r.width,
239
- height: r.height
240
- } : void 0,
241
- children: [
242
- r && !n && /* @__PURE__ */ m("div", {
243
- className: c.pageSkeleton,
244
- style: {
245
- width: r.width,
246
- height: r.height
247
- }
248
- }),
249
- a && /* @__PURE__ */ h(se, { children: [/* @__PURE__ */ m("canvas", {
250
- className: c.pageCanvas,
251
- ref: (e) => {
252
- V.current[t] = e;
253
- },
254
- style: { display: n ? "block" : "none" }
255
- }), /* @__PURE__ */ m("div", {
256
- className: `textLayer ${c.textLayer}`,
257
- ref: (e) => {
258
- be.current[t] = e;
259
- }
260
- })] }),
261
- xe.filter((e) => e.page === t + 1).map((e, t) => /* @__PURE__ */ m("a", {
262
- className: c.linkOverlay,
263
- href: e.url && i(e.url) ? e.url : "#",
264
- target: "_blank",
265
- rel: "noopener noreferrer",
266
- style: {
267
- left: e.x,
268
- top: e.y,
269
- width: e.width,
270
- height: e.height
271
- },
272
- onClick: (t) => we(e, t)
273
- }, t)),
274
- Se.filter((e) => e.page === t + 1).map((e, t) => e.subtype === "Text" ? /* @__PURE__ */ m("div", {
275
- className: c.noteIconOverlay,
276
- style: {
277
- left: e.x,
278
- top: e.y,
279
- width: Math.max(e.width, 26),
280
- height: Math.max(e.height, 26)
281
- },
282
- onMouseEnter: (t) => Te(e, t),
283
- onMouseLeave: $,
284
- onClick: () => Ee(e),
285
- children: /* @__PURE__ */ h("svg", {
286
- width: "22",
287
- height: "22",
288
- viewBox: "0 0 12 12",
289
- fill: "none",
290
- "aria-hidden": "true",
291
- children: [
292
- /* @__PURE__ */ m("rect", {
293
- x: "0.5",
294
- y: "0.5",
295
- width: "9",
296
- height: "8",
297
- rx: "1",
298
- fill: "rgba(255,210,0,0.9)",
299
- stroke: "rgba(160,120,0,0.7)",
300
- strokeWidth: "1"
301
- }),
302
- /* @__PURE__ */ m("path", {
303
- d: "M9.5 5.5v3l2.5-3z",
304
- fill: "rgba(255,210,0,0.9)",
305
- stroke: "rgba(160,120,0,0.7)",
306
- strokeWidth: "1"
307
- }),
308
- /* @__PURE__ */ m("line", {
309
- x1: "2",
310
- y1: "3",
311
- x2: "8",
312
- y2: "3",
313
- stroke: "rgba(90,60,0,0.8)",
314
- strokeWidth: "1",
315
- strokeLinecap: "round"
316
- }),
317
- /* @__PURE__ */ m("line", {
318
- x1: "2",
319
- y1: "5.5",
320
- x2: "7",
321
- y2: "5.5",
322
- stroke: "rgba(90,60,0,0.8)",
323
- strokeWidth: "1",
324
- strokeLinecap: "round"
325
- })
326
- ]
228
+ children: /* @__PURE__ */ h("div", {
229
+ className: c.scrollInner,
230
+ children: [
231
+ ve && /* @__PURE__ */ m("div", { className: c.documentLoading }),
232
+ Array.from({ length: W }, (e, t) => {
233
+ let n = Y.has(t + 1), r = ye[t], a = X.includes(t + 1);
234
+ return /* @__PURE__ */ h("div", {
235
+ className: c.pageWrapper,
236
+ ref: (e) => {
237
+ B.current[t] = e;
238
+ },
239
+ style: r ? {
240
+ width: r.width,
241
+ height: r.height
242
+ } : void 0,
243
+ children: [
244
+ r && !n && /* @__PURE__ */ m("div", {
245
+ className: c.pageSkeleton,
246
+ style: {
247
+ width: r.width,
248
+ height: r.height
249
+ }
250
+ }),
251
+ a && /* @__PURE__ */ h(se, { children: [/* @__PURE__ */ m("canvas", {
252
+ className: c.pageCanvas,
253
+ ref: (e) => {
254
+ V.current[t] = e;
255
+ },
256
+ style: { display: n ? "block" : "none" }
257
+ }), /* @__PURE__ */ m("div", {
258
+ className: `textLayer ${c.textLayer}`,
259
+ ref: (e) => {
260
+ be.current[t] = e;
261
+ }
262
+ })] }),
263
+ xe.filter((e) => e.page === t + 1).map((e, t) => /* @__PURE__ */ m("a", {
264
+ className: c.linkOverlay,
265
+ href: e.url && i(e.url) ? e.url : "#",
266
+ target: "_blank",
267
+ rel: "noopener noreferrer",
268
+ style: {
269
+ left: e.x,
270
+ top: e.y,
271
+ width: e.width,
272
+ height: e.height
273
+ },
274
+ onClick: (t) => we(e, t)
275
+ }, t)),
276
+ Se.filter((e) => e.page === t + 1).map((e, t) => e.subtype === "Text" ? /* @__PURE__ */ m("div", {
277
+ className: c.noteIconOverlay,
278
+ style: {
279
+ left: e.x,
280
+ top: e.y,
281
+ width: Math.max(e.width, 26),
282
+ height: Math.max(e.height, 26)
283
+ },
284
+ onMouseEnter: (t) => Te(e, t),
285
+ onMouseLeave: $,
286
+ onClick: () => Ee(e),
287
+ children: /* @__PURE__ */ h("svg", {
288
+ width: "22",
289
+ height: "22",
290
+ viewBox: "0 0 12 12",
291
+ fill: "none",
292
+ "aria-hidden": "true",
293
+ children: [
294
+ /* @__PURE__ */ m("rect", {
295
+ x: "0.5",
296
+ y: "0.5",
297
+ width: "9",
298
+ height: "8",
299
+ rx: "1",
300
+ fill: "rgba(255,210,0,0.9)",
301
+ stroke: "rgba(160,120,0,0.7)",
302
+ strokeWidth: "1"
303
+ }),
304
+ /* @__PURE__ */ m("path", {
305
+ d: "M9.5 5.5v3l2.5-3z",
306
+ fill: "rgba(255,210,0,0.9)",
307
+ stroke: "rgba(160,120,0,0.7)",
308
+ strokeWidth: "1"
309
+ }),
310
+ /* @__PURE__ */ m("line", {
311
+ x1: "2",
312
+ y1: "3",
313
+ x2: "8",
314
+ y2: "3",
315
+ stroke: "rgba(90,60,0,0.8)",
316
+ strokeWidth: "1",
317
+ strokeLinecap: "round"
318
+ }),
319
+ /* @__PURE__ */ m("line", {
320
+ x1: "2",
321
+ y1: "5.5",
322
+ x2: "7",
323
+ y2: "5.5",
324
+ stroke: "rgba(90,60,0,0.8)",
325
+ strokeWidth: "1",
326
+ strokeLinecap: "round"
327
+ })
328
+ ]
329
+ })
330
+ }, t) : /* @__PURE__ */ m("div", {
331
+ className: c.noteOverlay,
332
+ style: {
333
+ left: e.x,
334
+ top: e.y,
335
+ width: e.width,
336
+ height: e.height
337
+ },
338
+ onMouseEnter: (t) => Te(e, t),
339
+ onMouseLeave: $,
340
+ onClick: () => Ee(e)
341
+ }, t)),
342
+ Ce.filter((e) => e.page === t + 1).map((e, t) => /* @__PURE__ */ m("div", {
343
+ className: c.searchMatchOverlay,
344
+ style: {
345
+ left: e.x,
346
+ top: e.y,
347
+ width: e.width,
348
+ height: e.height
349
+ }
350
+ }, t)),
351
+ O && Z?.page === t + 1 && /* @__PURE__ */ m("div", {
352
+ className: c.highlightOverlay,
353
+ style: {
354
+ left: Z.x,
355
+ top: Z.y,
356
+ width: Z.width,
357
+ height: Z.height
358
+ }
327
359
  })
328
- }, t) : /* @__PURE__ */ m("div", {
329
- className: c.noteOverlay,
330
- style: {
331
- left: e.x,
332
- top: e.y,
333
- width: e.width,
334
- height: e.height
335
- },
336
- onMouseEnter: (t) => Te(e, t),
337
- onMouseLeave: $,
338
- onClick: () => Ee(e)
339
- }, t)),
340
- Ce.filter((e) => e.page === t + 1).map((e, t) => /* @__PURE__ */ m("div", {
341
- className: c.searchMatchOverlay,
342
- style: {
343
- left: e.x,
344
- top: e.y,
345
- width: e.width,
346
- height: e.height
347
- }
348
- }, t)),
349
- O && Z?.page === t + 1 && /* @__PURE__ */ m("div", {
350
- className: c.highlightOverlay,
351
- style: {
352
- left: Z.x,
353
- top: Z.y,
354
- width: Z.width,
355
- height: Z.height
356
- }
357
- })
358
- ]
359
- }, `${t}-${E}`);
360
- }),
361
- S && /* @__PURE__ */ m(ce, { hasRead: I })
362
- ]
360
+ ]
361
+ }, `${t}-${E}`);
362
+ }),
363
+ S && /* @__PURE__ */ m(ce, { hasRead: I })
364
+ ]
365
+ })
363
366
  })]
364
367
  })]
365
368
  }), P && /* @__PURE__ */ h("div", {
@@ -1,27 +1,28 @@
1
1
  var e = {
2
- appLayout: "_appLayout_dknw2_1",
3
- body: "_body_dknw2_9",
4
- toolbar: "_toolbar_dknw2_17",
5
- scrollContainer: "_scrollContainer_dknw2_29",
6
- pageWrapper: "_pageWrapper_dknw2_41",
7
- pageCanvas: "_pageCanvas_dknw2_46",
8
- textLayer: "_textLayer_dknw2_55",
9
- markedContent: "_markedContent_dknw2_81",
10
- endOfContent: "_endOfContent_dknw2_96",
11
- selecting: "_selecting_dknw2_105",
12
- documentLoading: "_documentLoading_dknw2_125",
13
- spin: "_spin_dknw2_1",
14
- pageSkeleton: "_pageSkeleton_dknw2_145",
15
- highlightOverlay: "_highlightOverlay_dknw2_174",
16
- linkOverlay: "_linkOverlay_dknw2_183",
17
- searchMatchOverlay: "_searchMatchOverlay_dknw2_190",
18
- noteOverlay: "_noteOverlay_dknw2_198",
19
- noteIconOverlay: "_noteIconOverlay_dknw2_205",
20
- requireReadBanner: "_requireReadBanner_dknw2_222",
21
- requireReadDone: "_requireReadDone_dknw2_246",
22
- notePopover: "_notePopover_dknw2_250",
23
- notePopoverTitle: "_notePopoverTitle_dknw2_263",
24
- notePopoverContent: "_notePopoverContent_dknw2_270"
2
+ appLayout: "_appLayout_1kgj9_1",
3
+ body: "_body_1kgj9_9",
4
+ toolbar: "_toolbar_1kgj9_17",
5
+ scrollContainer: "_scrollContainer_1kgj9_29",
6
+ scrollInner: "_scrollInner_1kgj9_37",
7
+ pageWrapper: "_pageWrapper_1kgj9_46",
8
+ pageCanvas: "_pageCanvas_1kgj9_51",
9
+ textLayer: "_textLayer_1kgj9_60",
10
+ markedContent: "_markedContent_1kgj9_86",
11
+ endOfContent: "_endOfContent_1kgj9_101",
12
+ selecting: "_selecting_1kgj9_110",
13
+ documentLoading: "_documentLoading_1kgj9_130",
14
+ spin: "_spin_1kgj9_1",
15
+ pageSkeleton: "_pageSkeleton_1kgj9_150",
16
+ highlightOverlay: "_highlightOverlay_1kgj9_179",
17
+ linkOverlay: "_linkOverlay_1kgj9_188",
18
+ searchMatchOverlay: "_searchMatchOverlay_1kgj9_195",
19
+ noteOverlay: "_noteOverlay_1kgj9_203",
20
+ noteIconOverlay: "_noteIconOverlay_1kgj9_210",
21
+ requireReadBanner: "_requireReadBanner_1kgj9_227",
22
+ requireReadDone: "_requireReadDone_1kgj9_251",
23
+ notePopover: "_notePopover_1kgj9_255",
24
+ notePopoverTitle: "_notePopoverTitle_1kgj9_268",
25
+ notePopoverContent: "_notePopoverContent_1kgj9_275"
25
26
  };
26
27
  //#endregion
27
28
  export { e as default };
@@ -1,31 +1,32 @@
1
1
  import { usePDFViewer as e } from "../../context/PDFViewerContext.js";
2
- import { useLabels as t } from "../../hooks/useLabels.js";
3
- import { ToolbarButton as n } from "../ui/ToolbarButton.js";
4
- import r from "./PDFZoomControls.module.js";
5
- import { useCallback as i } from "react";
6
- import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
2
+ import { MIN_ZOOM as t } from "../../utils/zoom.js";
3
+ import { useLabels as n } from "../../hooks/useLabels.js";
4
+ import { ToolbarButton as r } from "../ui/ToolbarButton.js";
5
+ import i from "./PDFZoomControls.module.js";
6
+ import { useCallback as a } from "react";
7
+ import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
7
8
  //#region src/components/features/PDFZoomControls.tsx
8
- function c({ zoomOutIcon: c, zoomInIcon: l }) {
9
- let { zoom: u, setZoom: d, setFitMode: f } = e(), p = t(), m = i((e) => {
10
- f(null), d((t) => Math.min(Math.max(t + e, .2), 3));
11
- }, [f, d]), h = i(() => m(-.2), [m]), g = i(() => m(.2), [m]);
12
- return /* @__PURE__ */ s(a, { children: [
13
- /* @__PURE__ */ o(n, {
14
- onClick: h,
15
- title: p.zoomOutTitle,
16
- children: c
17
- }),
18
- /* @__PURE__ */ s("span", {
19
- className: r.zoomLabel,
20
- children: [Math.round(u * 100), "%"]
21
- }),
22
- /* @__PURE__ */ o(n, {
9
+ function l({ zoomOutIcon: l, zoomInIcon: u }) {
10
+ let { zoom: d, setZoom: f, setFitMode: p } = e(), m = n(), h = a((e) => {
11
+ p(null), f((n) => Math.min(Math.max(n + e, t), 5));
12
+ }, [p, f]), g = a(() => h(-.2), [h]), _ = a(() => h(.2), [h]);
13
+ return /* @__PURE__ */ c(o, { children: [
14
+ /* @__PURE__ */ s(r, {
23
15
  onClick: g,
24
- title: p.zoomInTitle,
16
+ title: m.zoomOutTitle,
25
17
  children: l
18
+ }),
19
+ /* @__PURE__ */ c("span", {
20
+ className: i.zoomLabel,
21
+ children: [Math.round(d * 100), "%"]
22
+ }),
23
+ /* @__PURE__ */ s(r, {
24
+ onClick: _,
25
+ title: m.zoomInTitle,
26
+ children: u
26
27
  })
27
28
  ] });
28
29
  }
29
- c.toolbarLabelKey = "zoomToolbarLabel";
30
+ l.toolbarLabelKey = "zoomToolbarLabel";
30
31
  //#endregion
31
- export { c as PDFZoomControls };
32
+ export { l as PDFZoomControls };
@@ -1,58 +1,59 @@
1
- import { useEffect as e, useRef as t } from "react";
1
+ import { MIN_ZOOM as e, WHEEL_ZOOM_SPEED as t } from "../utils/zoom.js";
2
+ import { useEffect as n, useRef as r } from "react";
2
3
  //#region src/hooks/usePinchZoom.ts
3
- function n(e) {
4
+ function i(e) {
4
5
  let t = e[0].clientX - e[1].clientX, n = e[0].clientY - e[1].clientY;
5
6
  return Math.sqrt(t * t + n * n);
6
7
  }
7
- function r(r, i, a, o) {
8
- let s = t(i);
9
- e(() => {
10
- s.current = i;
11
- }, [i]);
12
- let c = t(null), l = t(1), u = t(null), d = t(!1);
13
- e(() => {
14
- let e = r.current;
15
- if (!e) return;
16
- let t = (e) => {
17
- e.touches.length === 2 && (d.current = !0, u.current = null, c.current = n(e.touches), l.current = s.current);
18
- }, i = (e) => {
19
- if (e.touches.length !== 2 || c.current === null) return;
20
- e.preventDefault();
21
- let t = n(e.touches) / c.current;
22
- a(Math.max(.2, Math.min(3, l.current * t))), o(null);
23
- }, f = (e) => {
24
- if (e.touches.length === 0 && c.current !== null) {
25
- d.current = !1, c.current = null;
8
+ function a(a, o, s, c) {
9
+ let l = r(o);
10
+ n(() => {
11
+ l.current = o;
12
+ }, [o]);
13
+ let u = r(null), d = r(1), f = r(null), p = r(!1);
14
+ n(() => {
15
+ let n = a.current;
16
+ if (!n) return;
17
+ let r = (e) => {
18
+ e.touches.length === 2 && (p.current = !0, f.current = null, u.current = i(e.touches), d.current = l.current);
19
+ }, o = (t) => {
20
+ if (t.touches.length !== 2 || u.current === null) return;
21
+ t.preventDefault();
22
+ let n = i(t.touches) / u.current;
23
+ s(Math.max(e, Math.min(5, d.current * (1 + (n - 1) * 1)))), c(null);
24
+ }, m = (e) => {
25
+ if (e.touches.length === 0 && u.current !== null) {
26
+ p.current = !1, u.current = null;
26
27
  return;
27
28
  }
28
- if (c.current = null, d.current || e.changedTouches.length !== 1) return;
29
- let t = e.changedTouches[0], n = Date.now(), r = u.current;
29
+ if (u.current = null, p.current || e.changedTouches.length !== 1) return;
30
+ let t = e.changedTouches[0], n = Date.now(), r = f.current;
30
31
  if (r && n - r.time < 300) {
31
32
  let e = t.clientX - r.x, n = t.clientY - r.y;
32
33
  if (Math.sqrt(e * e + n * n) < 40) {
33
- u.current = null, a(s.current > 1.2 ? 1 : 2), o(null);
34
+ f.current = null, s(l.current > 1.2 ? 1 : 2), c(null);
34
35
  return;
35
36
  }
36
37
  }
37
- u.current = {
38
+ f.current = {
38
39
  time: n,
39
40
  x: t.clientX,
40
41
  y: t.clientY
41
42
  };
42
- }, p = (e) => {
43
- if (!e.ctrlKey && !e.metaKey) return;
44
- e.preventDefault();
45
- let t = -(e.deltaMode === 1 ? e.deltaY * 30 : e.deltaMode === 2 ? e.deltaY * 300 : e.deltaY) * .02;
46
- a(Math.max(.2, Math.min(3, s.current + t))), o(null);
43
+ }, h = (n) => {
44
+ if (!n.ctrlKey && !n.metaKey) return;
45
+ n.preventDefault();
46
+ let r = -(n.deltaMode === 1 ? n.deltaY * 30 : n.deltaMode === 2 ? n.deltaY * 300 : n.deltaY) * t;
47
+ s(Math.max(e, Math.min(5, l.current + r))), c(null);
47
48
  };
48
- return e.addEventListener("touchstart", t, { passive: !0 }), e.addEventListener("touchmove", i, { passive: !1 }), e.addEventListener("touchend", f, { passive: !0 }), e.addEventListener("wheel", p, { passive: !1 }), () => {
49
- e.removeEventListener("touchstart", t), e.removeEventListener("touchmove", i), e.removeEventListener("touchend", f), e.removeEventListener("wheel", p);
49
+ return n.addEventListener("touchstart", r, { passive: !0 }), n.addEventListener("touchmove", o, { passive: !1 }), n.addEventListener("touchend", m, { passive: !0 }), n.addEventListener("wheel", h, { passive: !1 }), () => {
50
+ n.removeEventListener("touchstart", r), n.removeEventListener("touchmove", o), n.removeEventListener("touchend", m), n.removeEventListener("wheel", h);
50
51
  };
51
52
  }, [
52
- r,
53
53
  a,
54
- o
54
+ s,
55
+ c
55
56
  ]);
56
57
  }
57
58
  //#endregion
58
- export { r as usePinchZoom };
59
+ export { a as usePinchZoom };
@@ -1,2 +1,2 @@
1
- ._wrapper_1kvg0_1{border-right:1px solid var(--pdf-border);height:100%;display:flex}._wrapperCollapsed_1kvg0_7{border-right:1px solid var(--pdf-border);background-color:var(--pdf-bg);flex-direction:column;height:100%;padding-top:4px;display:flex}._buttonBar_1kvg0_16{background-color:var(--pdf-bg);flex-direction:column;flex-shrink:0;gap:2px;width:48px;padding-top:4px;display:flex}._toggleButton_1kvg0_26{border-bottom:1px solid var(--pdf-border);border-radius:0;width:48px;margin:0;padding-bottom:6px}._panelButton_1kvg0_35{cursor:pointer;width:44px;height:44px;color:var(--pdf-text-muted);background-color:#0000;border:none;border-radius:6px;justify-content:center;align-items:center;margin:0 2px;transition:background-color .15s,color .15s;display:flex}._panelButton_1kvg0_35:hover{background-color:var(--pdf-surface);color:var(--pdf-text-secondary)}._panelButtonActive_1kvg0_57{background-color:var(--pdf-surface);color:var(--pdf-accent-light)}._panelButtonActive_1kvg0_57:hover{color:var(--pdf-accent-light)}._contentPanel_1kvg0_66{background-color:var(--pdf-panel-bg);border-right:1px solid var(--pdf-panel-border);flex-direction:column;width:260px;display:flex}._panelHeader_1kvg0_74{color:var(--pdf-text-muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-header-bg);flex-shrink:0;padding:10px 14px;font-size:11px;font-weight:600}._panelBody_1kvg0_86{flex:1;overflow-y:auto}._appLayout_dknw2_1{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}._body_dknw2_9{flex-direction:row;flex:1;min-height:0;display:flex;overflow:hidden}._toolbar_dknw2_17{border-bottom:1px solid var(--pdf-border);background-color:var(--pdf-bg);z-index:10;flex-shrink:0;align-items:center;gap:2px;height:44px;padding:0 12px;display:flex}._scrollContainer_dknw2_29{background-color:var(--pdf-scroll-area);touch-action:pan-x pan-y;flex-direction:column;flex:1;align-items:center;padding:10px 20px;display:flex;position:relative;overflow-y:auto}._pageWrapper_dknw2_41{margin-bottom:25px;position:relative}._pageCanvas_dknw2_46{z-index:1;box-shadow:0 5px 20px var(--pdf-shadow-page);pointer-events:none;background-color:#fff;display:block;position:relative}._textLayer_dknw2_55{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;text-align:initial;opacity:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:canvastext;z-index:2;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));line-height:1;position:absolute;inset:0;overflow:clip}._textLayer_dknw2_55 :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;position:absolute}._textLayer_dknw2_55>:not(._markedContent_dknw2_81),._textLayer_dknw2_55 ._markedContent_dknw2_81 span:not(._markedContent_dknw2_81){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}._textLayer_dknw2_55 ._markedContent_dknw2_81{display:contents}._textLayer_dknw2_55 ._endOfContent_dknw2_96{z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}._textLayer_dknw2_55._selecting_dknw2_105 ._endOfContent_dknw2_96{top:0}._textLayer_dknw2_55 ::selection{background:#0000ff40}._textLayer_dknw2_55 br::selection{background:0 0}._documentLoading_dknw2_125{pointer-events:none;z-index:10;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}._documentLoading_dknw2_125:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite _spin_dknw2_1}._pageSkeleton_dknw2_145{z-index:0;pointer-events:none;background:#fff;border-radius:1px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}._pageSkeleton_dknw2_145:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite _spin_dknw2_1}@keyframes _spin_dknw2_1{to{transform:rotate(360deg)}}._highlightOverlay_dknw2_174{z-index:4;pointer-events:none;background-color:#ffdc0059;border:2px solid #ffa000e6;border-radius:2px;position:absolute}._linkOverlay_dknw2_183{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._searchMatchOverlay_dknw2_190{z-index:3;pointer-events:none;background-color:#fde0474d;border-bottom:2px solid #eab308cc;position:absolute}._noteOverlay_dknw2_198{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._noteIconOverlay_dknw2_205{z-index:3;pointer-events:all;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;transition:background-color .1s;display:flex;position:absolute}._noteIconOverlay_dknw2_205:hover{background-color:#ffd20033;outline:1px solid #a0780066}._requireReadBanner_dknw2_222{font-size:13px;font-weight:500;font-family:var(--pdf-font-family);color:#fff;background-color:color-mix(in srgb, var(--pdf-accent) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:5px;align-self:flex-end;align-items:center;gap:8px;margin-top:auto;margin-right:25px;padding:9px 16px;transition:background-color .4s;display:flex;position:sticky;bottom:12px;box-shadow:0 2px 12px #0000002e}._requireReadDone_dknw2_246{background-color:#16a34abf}._notePopover_dknw2_250{z-index:9999;background-color:var(--pdf-surface);border:1px solid var(--pdf-border);min-width:160px;max-width:280px;font-family:var(--pdf-font-family);border-radius:6px;padding:10px 12px;position:fixed;box-shadow:0 4px 16px #00000026}._notePopoverTitle_dknw2_263{color:var(--pdf-text-secondary);margin-bottom:6px;font-size:12px;font-weight:600}._notePopoverContent_dknw2_270{color:var(--pdf-text-primary);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.5}._list_gygvf_1{flex-direction:column;display:flex}._emptyState_gygvf_6{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._pageHeader_gygvf_12{color:var(--pdf-text-secondary);text-transform:uppercase;letter-spacing:.5px;background-color:var(--pdf-panel-header-bg);border-bottom:1px solid var(--pdf-panel-border);padding:5px 12px;font-size:10px;font-weight:600}._card_gygvf_23{border:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-bg);border-radius:6px;margin:8px;padding:10px 12px;font-size:12px;transition:box-shadow .12s}._cardClickable_gygvf_33{cursor:pointer}._cardClickable_gygvf_33:hover{box-shadow:0 1px 6px var(--pdf-shadow-page)}._cardHeader_gygvf_41{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}._cardLabel_gygvf_48{color:var(--pdf-text-secondary);align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}._cardPage_gygvf_57{color:var(--pdf-text-secondary);font-size:10px}._cardAuthor_gygvf_62{color:var(--pdf-text-muted);margin-bottom:3px;font-size:11px}._cardContent_gygvf_68{color:var(--pdf-text-primary);font-size:12px;line-height:1.5}._iconWrapper_gygvf_74{justify-content:center;align-items:center;display:flex;position:relative}._badge_gygvf_81{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._list_12ybz_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_12ybz_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_12ybz_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;box-sizing:border-box;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;display:flex;overflow:hidden}._fileIcon_12ybz_33{color:var(--pdf-text-muted);flex-shrink:0;align-items:center;display:flex}._filename_12ybz_40{min-width:0;color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}._downloadBtn_12ybz_51{border:1px solid var(--pdf-border);background:var(--pdf-surface);width:28px;height:28px;color:var(--pdf-text-secondary);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;transition:background .15s,border-color .15s,color .15s;display:flex}._downloadBtn_12ybz_51:hover{background:var(--pdf-accent);border-color:var(--pdf-accent);color:#fff}._iconWrapper_12ybz_77{justify-content:center;align-items:center;display:flex;position:relative}._badge_12ybz_84{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._btn_1dub8_1{color:var(--pdf-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1;transition:background .12s,color .12s;display:flex}._btn_1dub8_1:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._btn_1dub8_1:disabled{color:var(--pdf-border);cursor:default}._primary_1dub8_31{background:var(--pdf-accent);color:#fff;padding:6px 14px}._primary_1dub8_31:hover:not(:disabled){background:var(--pdf-accent-hover);color:#fff}._navWrapper_14eo9_1{align-items:center;gap:2px;display:flex}._pageInput_14eo9_7{background:var(--pdf-surface);width:32px;color:var(--pdf-text-primary);font-variant-numeric:tabular-nums;text-align:center;border:1px solid #0000;border-radius:4px;outline:none;padding:3px 4px;font-family:inherit;font-size:12px}._pageInput_14eo9_7:focus{border-color:var(--pdf-accent)}._pageInput_14eo9_7::-webkit-outer-spin-button{-webkit-appearance:none}._pageInput_14eo9_7::-webkit-inner-spin-button{-webkit-appearance:none}._pageInput_14eo9_7{-moz-appearance:textfield}._pageTotal_14eo9_34{color:var(--pdf-text-placeholder);font-variant-numeric:tabular-nums;font-size:12px}._emptyState_hqvdn_1{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._tree_hqvdn_7{flex-direction:column;padding:4px 0;display:flex}._row_hqvdn_13{color:var(--pdf-text-secondary);cursor:pointer;border-radius:4px;align-items:center;gap:4px;margin:0 4px;padding:5px 12px;font-size:12px;line-height:1.4;display:flex}._row_hqvdn_13:hover{background-color:var(--pdf-surface-hover);color:var(--pdf-text-primary)}._chevronBtn_hqvdn_31{cursor:pointer;color:var(--pdf-text-secondary);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:flex}._chevronBtn_hqvdn_31:hover{color:var(--pdf-text-muted)}._title_hqvdn_46{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._wrapper_18kvs_1{align-items:center;gap:4px;display:flex}._searchIconWrapper_18kvs_7{color:var(--pdf-text-secondary);align-items:center;display:flex}._searchInput_18kvs_13{background:var(--pdf-surface);border:1px solid var(--pdf-border);color:var(--pdf-text-primary);border-radius:4px;outline:none;width:180px;padding:4px 8px;font-family:inherit;font-size:13px}._searchInput_18kvs_13:focus{border-color:var(--pdf-accent)}._searchInput_18kvs_13::placeholder{color:var(--pdf-text-placeholder)}._navButton_18kvs_33{color:var(--pdf-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px 5px;display:flex}._navButton_18kvs_33:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._navButton_18kvs_33:disabled{color:var(--pdf-border);cursor:default}._counter_18kvs_54{color:var(--pdf-text-muted);text-align:center;min-width:36px;font-size:11px}._list_b0wj1_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_b0wj1_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_b0wj1_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;cursor:default;box-sizing:border-box;border-radius:8px;width:100%;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;position:relative;overflow:hidden}._cardSigned_b0wj1_32{background:#22c55e0a;border-color:#22c55e47}._cardClickable_b0wj1_37{cursor:pointer}._cardClickable_b0wj1_37:hover{box-shadow:0 2px 10px var(--pdf-shadow-page);border-color:var(--pdf-border-light)}._cardSigned_b0wj1_32._cardClickable_b0wj1_37:hover{border-color:#22c55e73}._cardBody_b0wj1_50{padding:10px 12px 10px 16px}._cardHeader_b0wj1_54{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}._fieldName_b0wj1_62{color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}._statusChip_b0wj1_73{text-transform:uppercase;letter-spacing:.5px;background:var(--pdf-surface-hover);color:var(--pdf-text-muted);border:1px solid var(--pdf-border);border-radius:20px;flex-shrink:0;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}._statusChipSigned_b0wj1_89{color:#15803d;background:#22c55e1f;border-color:#22c55e4d}._fieldList_b0wj1_95{flex-direction:column;gap:4px;display:flex}._fieldRow_b0wj1_101{grid-template-columns:72px 1fr;gap:4px;font-size:11px;line-height:1.5;display:grid}._fieldLabel_b0wj1_109{color:var(--pdf-text-muted);font-weight:500}._fieldValue_b0wj1_114{color:var(--pdf-text-secondary);word-break:break-word}._iconWrapper_b0wj1_119{justify-content:center;align-items:center;display:flex;position:relative}._badge_b0wj1_126{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._thumbnailList_t3mg8_1{background-color:var(--pdf-panel-bg);padding-bottom:8px}._thumbnailItem_t3mg8_6{cursor:pointer;text-align:center;background-color:#0000;border-left:2px solid #0000;padding:12px 16px;transition:background-color .15s}._thumbnailItem_t3mg8_6:hover{background-color:var(--pdf-surface-hover)}._thumbnailItemActive_t3mg8_19{background-color:var(--pdf-accent-subtle);border-left-color:var(--pdf-accent)}._thumbnailItemActive_t3mg8_19:hover{background-color:var(--pdf-accent-subtle)}._thumbnailImg_t3mg8_28{width:120px;box-shadow:0 1px 4px var(--pdf-shadow-page);border-radius:2px}._thumbnailImgActive_t3mg8_34{box-shadow:0 0 0 2px var(--pdf-accent), 0 2px 8px var(--pdf-shadow-page)}._thumbnailSkeleton_t3mg8_40{background:linear-gradient(90deg, var(--pdf-surface) 25%, var(--pdf-surface-hover) 50%, var(--pdf-surface) 75%);background-size:200% 100%;border-radius:2px;width:120px;height:160px;animation:1.4s infinite _shimmer_t3mg8_1}@keyframes _shimmer_t3mg8_1{0%{background-position:200% 0}to{background-position:-200% 0}}._thumbnailLabel_t3mg8_63{color:var(--pdf-text-muted);margin-top:6px;font-size:11px;font-weight:400}._thumbnailLabelActive_t3mg8_70{color:var(--pdf-accent-hover);font-weight:600}._zoomLabel_m8iv9_1{text-align:center;min-width:42px;color:var(--pdf-text-muted);font-variant-numeric:tabular-nums;font-size:12px}._toolbar_1b8zt_1{flex:1;align-items:center;gap:2px;min-width:0;display:flex}._item_1b8zt_9{flex-shrink:0;align-items:center;display:flex}._overflowWrapper_1b8zt_15{flex-shrink:0;margin-left:auto;position:relative}._overflowBtnActive_1b8zt_21{background:var(--pdf-surface);color:var(--pdf-text-primary)}._dropdown_1b8zt_26{background:var(--pdf-bg);border:1px solid var(--pdf-border);z-index:100;border-radius:6px;flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #0000002e}._dropdownItem_1b8zt_41{border-radius:4px;justify-content:flex-end;align-items:center;padding:1px 2px;display:flex}._dropdownItem_1b8zt_41>*{flex-shrink:0}._labeledItem_1b8zt_53{align-items:center;gap:8px;width:100%;display:flex}._itemContent_1b8zt_60{flex-shrink:0;align-items:center;display:flex}._itemLabel_1b8zt_66{color:var(--pdf-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:1;font-size:12px}._separator_b9iob_1{background:var(--pdf-toolbar-separator);flex-shrink:0;width:1px;height:20px;margin:0 4px}._separatorH_b9iob_9{background:var(--pdf-toolbar-separator);height:1px;margin:2px 4px}
1
+ ._wrapper_1kvg0_1{border-right:1px solid var(--pdf-border);height:100%;display:flex}._wrapperCollapsed_1kvg0_7{border-right:1px solid var(--pdf-border);background-color:var(--pdf-bg);flex-direction:column;height:100%;padding-top:4px;display:flex}._buttonBar_1kvg0_16{background-color:var(--pdf-bg);flex-direction:column;flex-shrink:0;gap:2px;width:48px;padding-top:4px;display:flex}._toggleButton_1kvg0_26{border-bottom:1px solid var(--pdf-border);border-radius:0;width:48px;margin:0;padding-bottom:6px}._panelButton_1kvg0_35{cursor:pointer;width:44px;height:44px;color:var(--pdf-text-muted);background-color:#0000;border:none;border-radius:6px;justify-content:center;align-items:center;margin:0 2px;transition:background-color .15s,color .15s;display:flex}._panelButton_1kvg0_35:hover{background-color:var(--pdf-surface);color:var(--pdf-text-secondary)}._panelButtonActive_1kvg0_57{background-color:var(--pdf-surface);color:var(--pdf-accent-light)}._panelButtonActive_1kvg0_57:hover{color:var(--pdf-accent-light)}._contentPanel_1kvg0_66{background-color:var(--pdf-panel-bg);border-right:1px solid var(--pdf-panel-border);flex-direction:column;width:260px;display:flex}._panelHeader_1kvg0_74{color:var(--pdf-text-muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-header-bg);flex-shrink:0;padding:10px 14px;font-size:11px;font-weight:600}._panelBody_1kvg0_86{flex:1;overflow-y:auto}._appLayout_1kgj9_1{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}._body_1kgj9_9{flex-direction:row;flex:1;min-height:0;display:flex;overflow:hidden}._toolbar_1kgj9_17{border-bottom:1px solid var(--pdf-border);background-color:var(--pdf-bg);z-index:10;flex-shrink:0;align-items:center;gap:2px;height:44px;padding:0 12px;display:flex}._scrollContainer_1kgj9_29{background-color:var(--pdf-scroll-area);touch-action:pan-x pan-y;flex:1;position:relative;overflow:auto}._scrollInner_1kgj9_37{flex-direction:column;align-items:center;width:max-content;min-width:100%;padding:10px 20px;display:flex}._pageWrapper_1kgj9_46{margin-bottom:25px;position:relative}._pageCanvas_1kgj9_51{z-index:1;box-shadow:0 5px 20px var(--pdf-shadow-page);pointer-events:none;background-color:#fff;display:block;position:relative}._textLayer_1kgj9_60{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;text-align:initial;opacity:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:canvastext;z-index:2;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));line-height:1;position:absolute;inset:0;overflow:clip}._textLayer_1kgj9_60 :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;position:absolute}._textLayer_1kgj9_60>:not(._markedContent_1kgj9_86),._textLayer_1kgj9_60 ._markedContent_1kgj9_86 span:not(._markedContent_1kgj9_86){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}._textLayer_1kgj9_60 ._markedContent_1kgj9_86{display:contents}._textLayer_1kgj9_60 ._endOfContent_1kgj9_101{z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}._textLayer_1kgj9_60._selecting_1kgj9_110 ._endOfContent_1kgj9_101{top:0}._textLayer_1kgj9_60 ::selection{background:#0000ff40}._textLayer_1kgj9_60 br::selection{background:0 0}._documentLoading_1kgj9_130{pointer-events:none;z-index:10;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}._documentLoading_1kgj9_130:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite _spin_1kgj9_1}._pageSkeleton_1kgj9_150{z-index:0;pointer-events:none;background:#fff;border-radius:1px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}._pageSkeleton_1kgj9_150:after{content:"";border:3px solid #0000001a;border-top-color:var(--pdf-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite _spin_1kgj9_1}@keyframes _spin_1kgj9_1{to{transform:rotate(360deg)}}._highlightOverlay_1kgj9_179{z-index:4;pointer-events:none;background-color:#ffdc0059;border:2px solid #ffa000e6;border-radius:2px;position:absolute}._linkOverlay_1kgj9_188{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._searchMatchOverlay_1kgj9_195{z-index:3;pointer-events:none;background-color:#fde0474d;border-bottom:2px solid #eab308cc;position:absolute}._noteOverlay_1kgj9_203{z-index:3;pointer-events:all;cursor:pointer;position:absolute}._noteIconOverlay_1kgj9_210{z-index:3;pointer-events:all;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;transition:background-color .1s;display:flex;position:absolute}._noteIconOverlay_1kgj9_210:hover{background-color:#ffd20033;outline:1px solid #a0780066}._requireReadBanner_1kgj9_227{font-size:13px;font-weight:500;font-family:var(--pdf-font-family);color:#fff;background-color:color-mix(in srgb, var(--pdf-accent) 82%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:5px;align-self:flex-end;align-items:center;gap:8px;margin-top:auto;margin-right:25px;padding:9px 16px;transition:background-color .4s;display:flex;position:sticky;bottom:12px;box-shadow:0 2px 12px #0000002e}._requireReadDone_1kgj9_251{background-color:#16a34abf}._notePopover_1kgj9_255{z-index:9999;background-color:var(--pdf-surface);border:1px solid var(--pdf-border);min-width:160px;max-width:280px;font-family:var(--pdf-font-family);border-radius:6px;padding:10px 12px;position:fixed;box-shadow:0 4px 16px #00000026}._notePopoverTitle_1kgj9_268{color:var(--pdf-text-secondary);margin-bottom:6px;font-size:12px;font-weight:600}._notePopoverContent_1kgj9_275{color:var(--pdf-text-primary);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.5}._list_gygvf_1{flex-direction:column;display:flex}._emptyState_gygvf_6{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._pageHeader_gygvf_12{color:var(--pdf-text-secondary);text-transform:uppercase;letter-spacing:.5px;background-color:var(--pdf-panel-header-bg);border-bottom:1px solid var(--pdf-panel-border);padding:5px 12px;font-size:10px;font-weight:600}._card_gygvf_23{border:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-bg);border-radius:6px;margin:8px;padding:10px 12px;font-size:12px;transition:box-shadow .12s}._cardClickable_gygvf_33{cursor:pointer}._cardClickable_gygvf_33:hover{box-shadow:0 1px 6px var(--pdf-shadow-page)}._cardHeader_gygvf_41{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}._cardLabel_gygvf_48{color:var(--pdf-text-secondary);align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}._cardPage_gygvf_57{color:var(--pdf-text-secondary);font-size:10px}._cardAuthor_gygvf_62{color:var(--pdf-text-muted);margin-bottom:3px;font-size:11px}._cardContent_gygvf_68{color:var(--pdf-text-primary);font-size:12px;line-height:1.5}._iconWrapper_gygvf_74{justify-content:center;align-items:center;display:flex;position:relative}._badge_gygvf_81{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._list_12ybz_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_12ybz_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_12ybz_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;box-sizing:border-box;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;display:flex;overflow:hidden}._fileIcon_12ybz_33{color:var(--pdf-text-muted);flex-shrink:0;align-items:center;display:flex}._filename_12ybz_40{min-width:0;color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}._downloadBtn_12ybz_51{border:1px solid var(--pdf-border);background:var(--pdf-surface);width:28px;height:28px;color:var(--pdf-text-secondary);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;transition:background .15s,border-color .15s,color .15s;display:flex}._downloadBtn_12ybz_51:hover{background:var(--pdf-accent);border-color:var(--pdf-accent);color:#fff}._iconWrapper_12ybz_77{justify-content:center;align-items:center;display:flex;position:relative}._badge_12ybz_84{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._btn_1dub8_1{color:var(--pdf-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1;transition:background .12s,color .12s;display:flex}._btn_1dub8_1:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._btn_1dub8_1:disabled{color:var(--pdf-border);cursor:default}._primary_1dub8_31{background:var(--pdf-accent);color:#fff;padding:6px 14px}._primary_1dub8_31:hover:not(:disabled){background:var(--pdf-accent-hover);color:#fff}._navWrapper_14eo9_1{align-items:center;gap:2px;display:flex}._pageInput_14eo9_7{background:var(--pdf-surface);width:32px;color:var(--pdf-text-primary);font-variant-numeric:tabular-nums;text-align:center;border:1px solid #0000;border-radius:4px;outline:none;padding:3px 4px;font-family:inherit;font-size:12px}._pageInput_14eo9_7:focus{border-color:var(--pdf-accent)}._pageInput_14eo9_7::-webkit-outer-spin-button{-webkit-appearance:none}._pageInput_14eo9_7::-webkit-inner-spin-button{-webkit-appearance:none}._pageInput_14eo9_7{-moz-appearance:textfield}._pageTotal_14eo9_34{color:var(--pdf-text-placeholder);font-variant-numeric:tabular-nums;font-size:12px}._emptyState_hqvdn_1{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._tree_hqvdn_7{flex-direction:column;padding:4px 0;display:flex}._row_hqvdn_13{color:var(--pdf-text-secondary);cursor:pointer;border-radius:4px;align-items:center;gap:4px;margin:0 4px;padding:5px 12px;font-size:12px;line-height:1.4;display:flex}._row_hqvdn_13:hover{background-color:var(--pdf-surface-hover);color:var(--pdf-text-primary)}._chevronBtn_hqvdn_31{cursor:pointer;color:var(--pdf-text-secondary);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:flex}._chevronBtn_hqvdn_31:hover{color:var(--pdf-text-muted)}._title_hqvdn_46{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._wrapper_18kvs_1{align-items:center;gap:4px;display:flex}._searchIconWrapper_18kvs_7{color:var(--pdf-text-secondary);align-items:center;display:flex}._searchInput_18kvs_13{background:var(--pdf-surface);border:1px solid var(--pdf-border);color:var(--pdf-text-primary);border-radius:4px;outline:none;width:180px;padding:4px 8px;font-family:inherit;font-size:13px}._searchInput_18kvs_13:focus{border-color:var(--pdf-accent)}._searchInput_18kvs_13::placeholder{color:var(--pdf-text-placeholder)}._navButton_18kvs_33{color:var(--pdf-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px 5px;display:flex}._navButton_18kvs_33:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._navButton_18kvs_33:disabled{color:var(--pdf-border);cursor:default}._counter_18kvs_54{color:var(--pdf-text-muted);text-align:center;min-width:36px;font-size:11px}._list_b0wj1_1{flex-direction:column;gap:6px;padding:8px;display:flex}._emptyState_b0wj1_8{color:var(--pdf-text-muted);text-align:center;padding:24px 14px;font-size:12px}._card_b0wj1_15{border:1px solid var(--pdf-border);background:var(--pdf-panel-bg);text-align:left;cursor:default;box-sizing:border-box;border-radius:8px;width:100%;font-family:inherit;font-size:12px;transition:box-shadow .15s,border-color .15s;position:relative;overflow:hidden}._cardSigned_b0wj1_32{background:#22c55e0a;border-color:#22c55e47}._cardClickable_b0wj1_37{cursor:pointer}._cardClickable_b0wj1_37:hover{box-shadow:0 2px 10px var(--pdf-shadow-page);border-color:var(--pdf-border-light)}._cardSigned_b0wj1_32._cardClickable_b0wj1_37:hover{border-color:#22c55e73}._cardBody_b0wj1_50{padding:10px 12px 10px 16px}._cardHeader_b0wj1_54{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}._fieldName_b0wj1_62{color:var(--pdf-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;font-weight:600;overflow:hidden}._statusChip_b0wj1_73{text-transform:uppercase;letter-spacing:.5px;background:var(--pdf-surface-hover);color:var(--pdf-text-muted);border:1px solid var(--pdf-border);border-radius:20px;flex-shrink:0;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}._statusChipSigned_b0wj1_89{color:#15803d;background:#22c55e1f;border-color:#22c55e4d}._fieldList_b0wj1_95{flex-direction:column;gap:4px;display:flex}._fieldRow_b0wj1_101{grid-template-columns:72px 1fr;gap:4px;font-size:11px;line-height:1.5;display:grid}._fieldLabel_b0wj1_109{color:var(--pdf-text-muted);font-weight:500}._fieldValue_b0wj1_114{color:var(--pdf-text-secondary);word-break:break-word}._iconWrapper_b0wj1_119{justify-content:center;align-items:center;display:flex;position:relative}._badge_b0wj1_126{background-color:var(--pdf-badge-bg);color:#fff;text-align:center;pointer-events:none;box-sizing:border-box;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:-5px;right:-7px}._thumbnailList_t3mg8_1{background-color:var(--pdf-panel-bg);padding-bottom:8px}._thumbnailItem_t3mg8_6{cursor:pointer;text-align:center;background-color:#0000;border-left:2px solid #0000;padding:12px 16px;transition:background-color .15s}._thumbnailItem_t3mg8_6:hover{background-color:var(--pdf-surface-hover)}._thumbnailItemActive_t3mg8_19{background-color:var(--pdf-accent-subtle);border-left-color:var(--pdf-accent)}._thumbnailItemActive_t3mg8_19:hover{background-color:var(--pdf-accent-subtle)}._thumbnailImg_t3mg8_28{width:120px;box-shadow:0 1px 4px var(--pdf-shadow-page);border-radius:2px}._thumbnailImgActive_t3mg8_34{box-shadow:0 0 0 2px var(--pdf-accent), 0 2px 8px var(--pdf-shadow-page)}._thumbnailSkeleton_t3mg8_40{background:linear-gradient(90deg, var(--pdf-surface) 25%, var(--pdf-surface-hover) 50%, var(--pdf-surface) 75%);background-size:200% 100%;border-radius:2px;width:120px;height:160px;animation:1.4s infinite _shimmer_t3mg8_1}@keyframes _shimmer_t3mg8_1{0%{background-position:200% 0}to{background-position:-200% 0}}._thumbnailLabel_t3mg8_63{color:var(--pdf-text-muted);margin-top:6px;font-size:11px;font-weight:400}._thumbnailLabelActive_t3mg8_70{color:var(--pdf-accent-hover);font-weight:600}._zoomLabel_m8iv9_1{text-align:center;min-width:42px;color:var(--pdf-text-muted);font-variant-numeric:tabular-nums;font-size:12px}._toolbar_1b8zt_1{flex:1;align-items:center;gap:2px;min-width:0;display:flex}._item_1b8zt_9{flex-shrink:0;align-items:center;display:flex}._overflowWrapper_1b8zt_15{flex-shrink:0;margin-left:auto;position:relative}._overflowBtnActive_1b8zt_21{background:var(--pdf-surface);color:var(--pdf-text-primary)}._dropdown_1b8zt_26{background:var(--pdf-bg);border:1px solid var(--pdf-border);z-index:100;border-radius:6px;flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #0000002e}._dropdownItem_1b8zt_41{border-radius:4px;justify-content:flex-end;align-items:center;padding:1px 2px;display:flex}._dropdownItem_1b8zt_41>*{flex-shrink:0}._labeledItem_1b8zt_53{align-items:center;gap:8px;width:100%;display:flex}._itemContent_1b8zt_60{flex-shrink:0;align-items:center;display:flex}._itemLabel_1b8zt_66{color:var(--pdf-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:1;font-size:12px}._separator_b9iob_1{background:var(--pdf-toolbar-separator);flex-shrink:0;width:1px;height:20px;margin:0 4px}._separatorH_b9iob_9{background:var(--pdf-toolbar-separator);height:1px;margin:2px 4px}
2
2
  /*$vite$:1*/
@@ -0,0 +1,4 @@
1
+ //#region src/utils/zoom.ts
2
+ var e = .2, t = .03;
3
+ //#endregion
4
+ export { e as MIN_ZOOM, t as WHEEL_ZOOM_SPEED };
@@ -0,0 +1,4 @@
1
+ export declare const MIN_ZOOM = 0.2;
2
+ export declare const MAX_ZOOM = 5;
3
+ export declare const WHEEL_ZOOM_SPEED = 0.03;
4
+ export declare const PINCH_ZOOM_SPEED = 1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pdf-tsx",
3
- "version": "0.17.0",
3
+ "version": "0.17.1",
4
4
  "description": "A fully-featured, composable PDF viewer component for React",
5
5
  "type": "module",
6
6
  "main": "./dist/cjs/index.cjs",