{"version":3,"file":"PDFViewerPro.LYULRajF.mjs","names":["useState","useRef","useMemo","useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/vx4MNKl6cf5vgvMVQPjP/wEFJWZ5zCqH1AgldeG4t/PDFViewerPro.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useCallback,useEffect,useMemo,useRef,useState,startTransition}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function PDFViewerPro(props){const{file,accentColor,toolbarBackground,toolbarTextColor,pageBackground,viewerBackground,cornerRadius,showToolbar,showDownload,defaultViewMode,initialZoom,stickyOffset}=props;const[pdfModule,setPdfModule]=useState(null);const[pdfDoc,setPdfDoc]=useState(null);const[numPages,setNumPages]=useState(0);const[error,setError]=useState(\"\");const[isLoading,setIsLoading]=useState(false);const[viewMode,setViewMode]=useState(defaultViewMode);const[zoom,setZoom]=useState(initialZoom);const[currentPage,setCurrentPage]=useState(1);const[visiblePages,setVisiblePages]=useState(new Set([1]));const[debouncedZoom,setDebouncedZoom]=useState(initialZoom);const[pageAspectRatio,setPageAspectRatio]=useState(1.4142);const[,setRenderVersion]=useState(0);const[resizeTick,setResizeTick]=useState(0);const scrollRef=useRef(null);const pageRefs=useRef(new Map);const canvasRefs=useRef(new Map);const renderTasks=useRef(new Map);const pageRenderMetaRef=useRef(new Map);const intersectionRatios=useRef(new Map);const resizeDebounceTimer=useRef(null);const zoomDebounceTimer=useRef(null);const totalPagesText=useMemo(()=>`${currentPage} / ${Math.max(numPages,1)}`,[currentPage,numPages]);const clampPage=useCallback(page=>{if(numPages<=0)return 1;return Math.min(Math.max(page,1),numPages);},[numPages]);const stopAllRenderTasks=useCallback(()=>{renderTasks.current.forEach(task=>{if(task&&typeof task.cancel===\"function\"){task.cancel();}});renderTasks.current.clear();pageRenderMetaRef.current.forEach(meta=>{meta.isRendering=false;meta.task=undefined;});},[]);useEffect(()=>{startTransition(()=>{setViewMode(defaultViewMode);setZoom(initialZoom);setDebouncedZoom(initialZoom);});},[defaultViewMode,initialZoom]);useEffect(()=>{if(typeof window===\"undefined\"){startTransition(()=>setDebouncedZoom(zoom));return;}if(zoomDebounceTimer.current!==null){window.clearTimeout(zoomDebounceTimer.current);}zoomDebounceTimer.current=window.setTimeout(()=>{startTransition(()=>setDebouncedZoom(zoom));},150);return()=>{if(zoomDebounceTimer.current!==null){window.clearTimeout(zoomDebounceTimer.current);zoomDebounceTimer.current=null;}};},[zoom]);useEffect(()=>{let mounted=true;async function loadPdfJs(){if(typeof window!==\"undefined\"){try{// @ts-expect-error Runtime ESM CDN import for Framer environment.\nconst mod=await import(\"https://esm.sh/pdfjs-dist@4.6.82/build/pdf.min.mjs\");mod.GlobalWorkerOptions.workerSrc=\"https://esm.sh/pdfjs-dist@4.6.82/build/pdf.worker.min.mjs\";if(mounted){startTransition(()=>setPdfModule(mod));}}catch(err){if(mounted){startTransition(()=>setError(\"Failed to initialize PDF engine.\"));}}}}loadPdfJs();return()=>{mounted=false;};},[]);useEffect(()=>{let mounted=true;stopAllRenderTasks();startTransition(()=>{setPdfDoc(null);setNumPages(0);setCurrentPage(1);setVisiblePages(new Set([1]));setError(\"\");setRenderVersion(v=>v+1);});pageRenderMetaRef.current.clear();intersectionRatios.current.clear();if(!file||!pdfModule)return;async function loadPdf(){startTransition(()=>setIsLoading(true));try{const task=pdfModule.getDocument(file);const doc=await task.promise;if(!mounted)return;const firstPage=await doc.getPage(1);const firstViewport=firstPage.getViewport({scale:1});const ratio=firstViewport.width>0?firstViewport.height/firstViewport.width:1.4142;startTransition(()=>{setPdfDoc(doc);setNumPages(doc.numPages||0);setCurrentPage(1);setPageAspectRatio(ratio);});}catch(err){if(mounted){startTransition(()=>setError(\"Unable to load this PDF. Please check the file and try again.\"));}}finally{if(mounted){startTransition(()=>setIsLoading(false));}}}loadPdf();return()=>{mounted=false;stopAllRenderTasks();};},[file,pdfModule,stopAllRenderTasks]);const renderPage=useCallback(async pageNumber=>{if(!pdfDoc)return;const canvas=canvasRefs.current.get(pageNumber);const pageWrapper=pageRefs.current.get(pageNumber);if(!canvas||!pageWrapper)return;try{const page=await pdfDoc.getPage(pageNumber);const baseViewport=page.getViewport({scale:1});const containerWidth=Math.max(pageWrapper.clientWidth-24,100);const fitScale=containerWidth/baseViewport.width;const finalScale=Math.max(.3,Math.min(4,debouncedZoom))*fitScale;const viewport=page.getViewport({scale:finalScale});const outputScale=typeof window!==\"undefined\"?Math.max(2,window.devicePixelRatio||1):2;const signature=`${Math.round(finalScale*1e3)}-${Math.round(containerWidth)}-${Math.round(outputScale*100)}`;const existingMeta=pageRenderMetaRef.current.get(pageNumber)||{signature:\"\",isRendered:false,isRendering:false,renderId:0};if(existingMeta.isRendered&&existingMeta.signature===signature&&!existingMeta.isRendering){return;}if(existingMeta.task&&typeof existingMeta.task.cancel===\"function\"){existingMeta.task.cancel();}const nextRenderId=existingMeta.renderId+1;const currentMeta={...existingMeta,isRendering:true,renderId:nextRenderId};pageRenderMetaRef.current.set(pageNumber,currentMeta);if(typeof document===\"undefined\")return;const offscreenCanvas=document.createElement(\"canvas\");const offscreenContext=offscreenCanvas.getContext(\"2d\");if(!offscreenContext)return;offscreenCanvas.width=Math.floor(viewport.width*outputScale);offscreenCanvas.height=Math.floor(viewport.height*outputScale);const task=page.render({canvasContext:offscreenContext,viewport,transform:[outputScale,0,0,outputScale,0,0]});renderTasks.current.set(pageNumber,task);currentMeta.task=task;await task.promise;const latestMeta=pageRenderMetaRef.current.get(pageNumber);if(!latestMeta||latestMeta.renderId!==nextRenderId)return;const visibleContext=canvas.getContext(\"2d\");if(!visibleContext)return;canvas.width=offscreenCanvas.width;canvas.height=offscreenCanvas.height;canvas.style.width=`${Math.floor(viewport.width)}px`;canvas.style.height=`${Math.floor(viewport.height)}px`;visibleContext.clearRect(0,0,canvas.width,canvas.height);visibleContext.drawImage(offscreenCanvas,0,0);const wasRenderedBefore=latestMeta.isRendered;pageRenderMetaRef.current.set(pageNumber,{...latestMeta,signature,isRendered:true,isRendering:false,task:undefined});if(!wasRenderedBefore){startTransition(()=>setRenderVersion(v=>v+1));}}catch(err){// Rendering failures for individual pages are ignored to keep the viewer resilient.\n}finally{renderTasks.current.delete(pageNumber);const meta=pageRenderMetaRef.current.get(pageNumber);if(meta){meta.isRendering=false;meta.task=undefined;}}},[pdfDoc,debouncedZoom]);useEffect(()=>{if(typeof window===\"undefined\")return;const root=scrollRef.current;if(!root)return;const observer=new ResizeObserver(()=>{if(resizeDebounceTimer.current!==null){window.clearTimeout(resizeDebounceTimer.current);}resizeDebounceTimer.current=window.setTimeout(()=>{startTransition(()=>setResizeTick(tick=>tick+1));},160);});observer.observe(root);return()=>{observer.disconnect();if(resizeDebounceTimer.current!==null){window.clearTimeout(resizeDebounceTimer.current);resizeDebounceTimer.current=null;}};},[]);useEffect(()=>{if(viewMode!==\"continuous\"||!pdfDoc||!numPages)return;visiblePages.forEach(pageNumber=>{void renderPage(pageNumber);});},[visiblePages,numPages,pdfDoc,renderPage,viewMode]);useEffect(()=>{if(viewMode!==\"paged\"||!pdfDoc||!currentPage)return;void renderPage(currentPage);},[currentPage,pdfDoc,renderPage,viewMode]);useEffect(()=>{if(!numPages||!pdfDoc)return;if(viewMode===\"paged\"){void renderPage(currentPage);return;}visiblePages.forEach(pageNumber=>{void renderPage(pageNumber);});},[debouncedZoom,numPages,pdfDoc,renderPage,viewMode,currentPage,visiblePages,resizeTick]);useEffect(()=>{if(viewMode!==\"continuous\")return;if(typeof window!==\"undefined\"){const root=scrollRef.current;if(!root)return;const observer=new IntersectionObserver(entries=>{const newlyVisible=new Set;entries.forEach(entry=>{const page=Number(entry.target.dataset.page||\"0\");if(!page)return;if(entry.isIntersecting){newlyVisible.add(page);intersectionRatios.current.set(page,entry.intersectionRatio);}else{intersectionRatios.current.set(page,0);}});if(newlyVisible.size>0){startTransition(()=>{setVisiblePages(prev=>{const next=new Set(prev);newlyVisible.forEach(p=>next.add(p));return next;});});}const ratios=Array.from(intersectionRatios.current.entries());ratios.sort((a,b)=>b[1]-a[1]);if(ratios.length>0&&ratios[0][1]>0){const page=clampPage(ratios[0][0]);startTransition(()=>setCurrentPage(page));}},{root,rootMargin:\"600px 0px\",threshold:[0,.2,.5,.8,1]});pageRefs.current.forEach(el=>observer.observe(el));return()=>observer.disconnect();}else{return;}},[numPages,clampPage,viewMode]);const pageNumbers=useMemo(()=>Array.from({length:numPages},(_,i)=>i+1),[numPages]);const goToPage=useCallback(page=>{const next=clampPage(page);startTransition(()=>setCurrentPage(next));if(viewMode===\"continuous\"&&typeof window!==\"undefined\"){const target=pageRefs.current.get(next);const root=scrollRef.current;if(target&&root){root.scrollTo({top:target.offsetTop-12,behavior:\"smooth\"});}}},[clampPage,viewMode]);const zoomIn=useCallback(()=>{startTransition(()=>setZoom(z=>Math.min(4,z+.1)));},[]);const zoomOut=useCallback(()=>{startTransition(()=>setZoom(z=>Math.max(.5,z-.1)));},[]);const toggleMode=useCallback(()=>{startTransition(()=>setViewMode(prev=>prev===\"continuous\"?\"paged\":\"continuous\"));},[]);const handleDownload=useCallback(()=>{if(!file)return;if(typeof window!==\"undefined\"){const link=document.createElement(\"a\");link.href=file;link.download=\"document.pdf\";link.rel=\"noopener noreferrer\";link.click();}},[file]);const toolbar=showToolbar?/*#__PURE__*/_jsxs(\"div\",{style:{position:\"sticky\",top:stickyOffset,zIndex:20,display:\"flex\",alignItems:\"center\",gap:8,padding:\"10px 12px\",background:toolbarBackground,color:toolbarTextColor,borderBottom:\"1px solid rgba(255,255,255,0.12)\",flexWrap:\"wrap\",borderTopLeftRadius:cornerRadius,borderTopRightRadius:cornerRadius},children:[/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Zoom out\",style:buttonStyle(accentColor),onClick:zoomOut,children:\"−\"}),/*#__PURE__*/_jsxs(\"span\",{style:{minWidth:52,textAlign:\"center\",fontSize:12},children:[Math.round(zoom*100),\"%\"]}),/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Zoom in\",style:buttonStyle(accentColor),onClick:zoomIn,children:\"+\"}),/*#__PURE__*/_jsx(\"span\",{style:{marginLeft:6,marginRight:6,opacity:.9,fontSize:12},children:totalPagesText}),viewMode===\"paged\"&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Previous page\",style:buttonStyle(accentColor),onClick:()=>goToPage(currentPage-1),children:\"Prev\"}),/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Next page\",style:buttonStyle(accentColor),onClick:()=>goToPage(currentPage+1),children:\"Next\"})]}),/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Toggle view mode\",style:buttonStyle(accentColor),onClick:toggleMode,children:viewMode===\"continuous\"?\"Paged\":\"Continuous\"}),showDownload&&/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Download PDF\",style:{...buttonStyle(accentColor),marginLeft:\"auto\"},onClick:handleDownload,children:\"Download\"})]}):null;const renderPlaceholder=label=>/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\",minHeight:320,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#7A7A7A\",fontSize:13,background:pageBackground,borderRadius:10,border:\"1px solid rgba(0,0,0,0.08)\"},children:label});return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"visible\",borderRadius:cornerRadius,background:viewerBackground,display:\"flex\",flexDirection:\"column\"},children:[toolbar,/*#__PURE__*/_jsxs(\"div\",{ref:scrollRef,style:{position:\"relative\",flex:1,overflowY:viewMode===\"continuous\"?\"auto\":\"hidden\",overflowX:\"auto\",WebkitOverflowScrolling:\"touch\",padding:12,borderBottomLeftRadius:cornerRadius,borderBottomRightRadius:cornerRadius},children:[!file&&renderPlaceholder(\"Upload a PDF file in the component properties to preview it here.\"),file&&isLoading&&renderPlaceholder(\"Loading PDF…\"),file&&!!error&&!isLoading&&renderPlaceholder(error),file&&!isLoading&&!error&&pdfDoc&&numPages>0&&viewMode===\"continuous\"&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",display:\"flex\",flexDirection:\"column\",gap:14},children:pageNumbers.map(pageNumber=>{const pageMeta=pageRenderMetaRef.current.get(pageNumber);const isRendered=!!pageMeta?.isRendered;return /*#__PURE__*/_jsxs(\"div\",{ref:el=>{if(el)pageRefs.current.set(pageNumber,el);else pageRefs.current.delete(pageNumber);},\"data-page\":pageNumber,style:{position:\"relative\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\",width:\"100%\",minHeight:160,aspectRatio:`${1/Math.max(pageAspectRatio,.1)}`,background:pageBackground,borderRadius:10,border:\"1px solid rgba(0,0,0,0.08)\",overflow:\"hidden\"},children:[!isRendered&&/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:12,color:\"#808080\",padding:\"40px 0\"},children:[\"Rendering page \",pageNumber,\"…\"]}),/*#__PURE__*/_jsx(\"canvas\",{ref:el=>{if(el)canvasRefs.current.set(pageNumber,el);else canvasRefs.current.delete(pageNumber);},style:{display:\"block\",visibility:isRendered?\"visible\":\"hidden\",maxWidth:\"100%\",height:\"auto\"}})]},pageNumber);})}),file&&!isLoading&&!error&&pdfDoc&&numPages>0&&viewMode===\"paged\"&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsxs(\"div\",{ref:el=>{if(el)pageRefs.current.set(currentPage,el);else pageRefs.current.delete(currentPage);},\"data-page\":currentPage,style:{position:\"relative\",width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",background:pageBackground,borderRadius:10,border:\"1px solid rgba(0,0,0,0.08)\",overflow:\"auto\"},children:[!pageRenderMetaRef.current.get(currentPage)?.isRendered&&/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:12,color:\"#808080\"},children:[\"Rendering page \",currentPage,\"…\"]}),/*#__PURE__*/_jsx(\"canvas\",{ref:el=>{if(el)canvasRefs.current.set(currentPage,el);else canvasRefs.current.delete(currentPage);},style:{display:\"block\",visibility:pageRenderMetaRef.current.get(currentPage)?.isRendered?\"visible\":\"hidden\",maxWidth:\"100%\",height:\"auto\"}})]})})]})]});}function buttonStyle(accentColor){return{border:\"none\",borderRadius:8,background:accentColor,color:\"#FFFFFF\",cursor:\"pointer\",height:30,minWidth:30,padding:\"0 10px\",fontSize:12};}addPropertyControls(PDFViewerPro,{file:{type:ControlType.File,title:\"PDF File\",allowedFileTypes:[\"pdf\"]},accentColor:{type:ControlType.Color,title:\"Accent\",defaultValue:\"#2563EB\"},toolbarBackground:{type:ControlType.Color,title:\"Toolbar BG\",defaultValue:\"#111827\"},toolbarTextColor:{type:ControlType.Color,title:\"Toolbar Text\",defaultValue:\"#F9FAFB\"},pageBackground:{type:ControlType.Color,title:\"Page BG\",defaultValue:\"#FFFFFF\"},viewerBackground:{type:ControlType.Color,title:\"Viewer BG\",defaultValue:\"#F3F4F6\"},cornerRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:14,min:0,max:40,step:1},showToolbar:{type:ControlType.Boolean,title:\"Toolbar\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},showDownload:{type:ControlType.Boolean,title:\"Download\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},defaultViewMode:{type:ControlType.Enum,title:\"Default View\",defaultValue:\"continuous\",options:[\"continuous\",\"paged\"],optionTitles:[\"Continuous\",\"Paged\"]},initialZoom:{type:ControlType.Number,title:\"Initial Zoom\",defaultValue:1,min:.5,max:4,step:.1},stickyOffset:{type:ControlType.Number,title:\"Sticky Top\",defaultValue:0,min:0,max:300,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PDFViewerPro\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PDFViewerPro.map"],"mappings":"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"}