{"version":3,"file":"Past_Work.fe-Vi2jY.mjs","names":["useState","useRef","useCallback","__esmMin","init_ssg_sandbox_shims","ne","window","_e","de","init_jsx_runtime","p","init_npm_react_18_3_1","ce","init_framer_CaDWdxiz","ControlType","addPropertyControls","PortfolioCarousel","props","currentIndex","setCurrentIndex","isAnimating","setIsAnimating","containerWidth","setContainerWidth","pressedButton","setPressedButton","containerRef","touchStartX","touchCurrentX","isDragging","dragOffset","setDragOffset","totalSlides","images","sized","src","u","loaded","setLoaded","isMobile","updateWidth","near","setNear","el","io","entries","next","prev","d","autoPlay","interval","autoPlayInterval","navigate","direction","goToSlide","index","handleTouchStart","handleTouchMove","diff","handleTouchEnd","threshold","scale","centreW","centreH","sideW","sideH","arrowSize","spacing","premiumEasing","getPositionStyle","isCentre","offset","absOffset","getOffset","imageIndex","brandColour","pos","init_Past_Work"],"sources":["https:/framerusercontent.com/modules/cRJOJGIUA5sFRl0en9Nf/I5JIhrSkFomApyX9s8LL/Past_Work.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useRef,useEffect,useCallback}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function PortfolioCarousel(props){const{images,brandColour,autoPlay,autoPlayInterval}=props;const[currentIndex,setCurrentIndex]=useState(0);const[isAnimating,setIsAnimating]=useState(false);const[containerWidth,setContainerWidth]=useState(0);const[pressedButton,setPressedButton]=useState(null);const containerRef=useRef(null);// Touch/swipe state\nconst touchStartX=useRef(0);const touchCurrentX=useRef(0);const isDragging=useRef(false);const[dragOffset,setDragOffset]=useState(0);const totalSlides=images.length;// Speed (Logan, 2026-10-03): the photos were loading at full camera size\n// (up to 8064px wide, 3.7 MB each), all six at once, which made the solar\n// landing page about 10 MB on a phone. Ask Framer for a 1024px copy (the\n// centre photo is at most about 480px wide, so this stays sharp on retina\n// screens), and only load a photo once it is the current one or next to it.\nconst sized=src=>{if(!src||!src.includes(\"framerusercontent.com/images/\"))return src;try{const u=new URL(src);u.searchParams.set(\"scale-down-to\",\"1024\");return u.toString();}catch{return src;}};const[loaded,setLoaded]=useState(()=>new Set([0,1,Math.max(0,images.length-1)]));// Mobile breakpoint\nconst isMobile=containerWidth>0&&containerWidth<768;useEffect(()=>{const updateWidth=()=>{if(containerRef.current){setContainerWidth(containerRef.current.offsetWidth);}};updateWidth();window.addEventListener(\"resize\",updateWidth);return()=>window.removeEventListener(\"resize\",updateWidth);},[]);// Speed (Logan, 2026-10-16): before the page measures the carousel every\n// photo box is 0 x 0, and Chrome fetched the first three photos (about\n// 400 KB) in the first half second even though they are thousands of\n// pixels down and marked lazy. Draw no photos at all until the carousel\n// is within 600px of the screen. Autoplay keeps moving while it is off\n// screen, so without this it would also quietly load every photo.\nconst[near,setNear]=useState(false);useEffect(()=>{const el=containerRef.current;if(!el||typeof IntersectionObserver===\"undefined\"){setNear(true);return;}const io=new IntersectionObserver(entries=>{if(entries.some(e=>e.isIntersecting)){setNear(true);io.disconnect();}},{rootMargin:\"600px 0px\"});io.observe(el);return()=>io.disconnect();},[]);// Load the current photo and its neighbours; keep anything already loaded.\nuseEffect(()=>{if(!totalSlides)return;setLoaded(prev=>{const next=new Set(prev);for(const d of[-1,0,1])next.add((currentIndex+d+totalSlides)%totalSlides);return next.size===prev.size?prev:next;});},[currentIndex,totalSlides]);// Auto play\nuseEffect(()=>{if(!autoPlay||totalSlides<=1)return;const interval=setInterval(()=>{setCurrentIndex(prev=>(prev+1)%totalSlides);},autoPlayInterval*1e3);return()=>clearInterval(interval);},[autoPlay,autoPlayInterval,totalSlides]);const navigate=direction=>{if(isAnimating||totalSlides<=1)return;setIsAnimating(true);if(direction===\"prev\"){setCurrentIndex(prev=>(prev-1+totalSlides)%totalSlides);}else{setCurrentIndex(prev=>(prev+1)%totalSlides);}setTimeout(()=>setIsAnimating(false),450);};const goToSlide=index=>{if(isAnimating||index===currentIndex)return;setIsAnimating(true);setCurrentIndex(index);setTimeout(()=>setIsAnimating(false),450);};// Touch handlers for swipe\nconst handleTouchStart=useCallback(e=>{if(isAnimating)return;touchStartX.current=e.touches[0].clientX;touchCurrentX.current=e.touches[0].clientX;isDragging.current=true;},[isAnimating]);const handleTouchMove=useCallback(e=>{if(!isDragging.current)return;touchCurrentX.current=e.touches[0].clientX;const diff=touchCurrentX.current-touchStartX.current;setDragOffset(diff);},[]);const handleTouchEnd=useCallback(()=>{if(!isDragging.current)return;isDragging.current=false;const diff=touchCurrentX.current-touchStartX.current;const threshold=containerWidth*.15// 15% of container width\n;if(Math.abs(diff)>threshold){if(diff>0){navigate(\"prev\");}else{navigate(\"next\");}}setDragOffset(0);},[containerWidth,navigate]);// Responsive scaling\nconst scale=Math.min(1,containerWidth/1400);// Desktop sizes - portrait orientation, larger to fill space\nconst centreW=isMobile?containerWidth-60:480*scale;const centreH=isMobile?(containerWidth-60)*1.45:690*scale;const sideW=380*scale;const sideH=540*scale;const arrowSize=isMobile?40:48;// Spacing - side images tuck behind centre\nconst spacing=centreW/2+sideW/2-70*scale;// Premium easing\nconst premiumEasing=\"cubic-bezier(0.16, 1, 0.3, 1)\";// Padding to prevent shadow clipping\nconst shadowPadding=60;// Calculate position for an image based on its offset from centre\nconst getPositionStyle=offset=>{const isCentre=offset===0;const isVisible=Math.abs(offset)<=2;if(!isVisible){return{opacity:0,pointerEvents:\"none\",transform:`translateX(${offset*spacing}px) scale(0.8)`,zIndex:0,width:sideW,height:sideH};}if(isCentre){// Apply drag offset to centre image on mobile\nconst dragTransform=isMobile&&dragOffset!==0?dragOffset:0;return{opacity:1,pointerEvents:\"auto\",transform:`translateX(${dragTransform}px) scale(1)`,zIndex:5,width:centreW,height:centreH};}// Side images - hidden on mobile\nconst direction=offset>0?1:-1;const absOffset=Math.abs(offset);return{opacity:isMobile?0:absOffset===1?.9:0,pointerEvents:\"none\",transform:`translateX(${direction*spacing}px) scale(0.92)`,zIndex:3-absOffset,width:sideW,height:sideH};};// Get offset from current index (handling wrap-around)\nconst getOffset=imageIndex=>{let offset=imageIndex-currentIndex;// Handle wrap-around for smooth cycling\nif(offset>totalSlides/2){offset-=totalSlides;}else if(offset<-totalSlides/2){offset+=totalSlides;}return offset;};return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{width:\"100%\",display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:isMobile?\"24px\":\"40px\",overflow:\"visible\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",overflow:\"hidden\",padding:`${shadowPadding}px 0`,margin:`-${shadowPadding}px 0`,touchAction:\"pan-y\"},onTouchStart:handleTouchStart,onTouchMove:handleTouchMove,onTouchEnd:handleTouchEnd,onTouchCancel:handleTouchEnd,children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:`${centreH+(isMobile?20:60)}px`,position:\"relative\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>navigate(\"prev\"),onMouseDown:()=>setPressedButton(\"prev\"),onMouseUp:()=>setPressedButton(null),onMouseLeave:()=>setPressedButton(null),onTouchStart:()=>setPressedButton(\"prev\"),onTouchEnd:()=>setPressedButton(null),style:{position:\"absolute\",left:isMobile?\"8px\":\"50%\",top:\"50%\",transform:isMobile?`translateY(-50%) scale(${pressedButton===\"prev\"?.92:1})`:`translate(${-(spacing+sideW/2)-arrowSize/2}px, -50%) scale(${pressedButton===\"prev\"?.92:1})`,width:`${arrowSize}px`,height:`${arrowSize}px`,backgroundColor:\"#FFFFFF\",border:\"none\",borderRadius:\"4px\",cursor:isAnimating?\"default\":\"pointer\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",zIndex:10,boxShadow:pressedButton===\"prev\"?\"0 1px 4px rgba(0, 0, 0, 0.15)\":\"0 2px 8px rgba(0, 0, 0, 0.15)\",transition:\"transform 0.15s ease, box-shadow 0.15s ease\"},children:/*#__PURE__*/_jsx(\"svg\",{width:isMobile?16:18,height:isMobile?16:18,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#1a1a1a\",strokeWidth:\"2.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"15 18 9 12 15 6\"})})}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>navigate(\"next\"),onMouseDown:()=>setPressedButton(\"next\"),onMouseUp:()=>setPressedButton(null),onMouseLeave:()=>setPressedButton(null),onTouchStart:()=>setPressedButton(\"next\"),onTouchEnd:()=>setPressedButton(null),style:{position:\"absolute\",right:isMobile?\"8px\":\"auto\",left:isMobile?\"auto\":\"50%\",top:\"50%\",transform:isMobile?`translateY(-50%) scale(${pressedButton===\"next\"?.92:1})`:`translate(${spacing+sideW/2-arrowSize/2}px, -50%) scale(${pressedButton===\"next\"?.92:1})`,width:`${arrowSize}px`,height:`${arrowSize}px`,backgroundColor:brandColour,border:\"none\",borderRadius:\"4px\",cursor:isAnimating?\"default\":\"pointer\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",zIndex:10,boxShadow:pressedButton===\"next\"?\"0 1px 4px rgba(0, 0, 0, 0.15)\":\"0 2px 8px rgba(0, 0, 0, 0.15)\",transition:\"transform 0.15s ease, box-shadow 0.15s ease\"},children:/*#__PURE__*/_jsx(\"svg\",{width:isMobile?16:18,height:isMobile?16:18,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"#FFFFFF\",strokeWidth:\"2.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"9 18 15 12 9 6\"})})}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:`${centreW}px`,height:`${centreH}px`,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:images.map((src,imageIndex)=>{const offset=getOffset(imageIndex);const pos=getPositionStyle(offset);const isCentre=offset===0;return /*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",width:`${pos.width}px`,height:`${pos.height}px`,borderRadius:\"4px\",border:isCentre?`${isMobile?3:5}px solid ${brandColour}`:\"none\",overflow:\"hidden\",zIndex:pos.zIndex,opacity:pos.opacity,transform:pos.transform,boxShadow:isCentre?\"0 25px 50px -12px rgba(0, 0, 0, 0.4)\":\"0 10px 30px -5px rgba(0, 0, 0, 0.2)\",transition:dragOffset!==0?\"none\":`\n                                            transform 0.45s ${premiumEasing},\n                                            opacity 0.45s ${premiumEasing},\n                                            width 0.45s ${premiumEasing},\n                                            height 0.45s ${premiumEasing},\n                                            box-shadow 0.45s ${premiumEasing}\n                                        `,willChange:\"transform, opacity, width, height\",pointerEvents:pos.pointerEvents},children:near&&loaded.has(imageIndex)&&/*#__PURE__*/_jsx(\"img\",{src:sized(src),alt:\"\",loading:\"lazy\",decoding:\"async\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\"}})},imageIndex);})})]})}),totalSlides>1&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:isMobile?\"12px\":\"18px\"},children:images.map((_,index)=>/*#__PURE__*/_jsx(\"button\",{onClick:()=>goToSlide(index),style:{width:isMobile?\"10px\":\"12px\",height:isMobile?\"10px\":\"12px\",backgroundColor:index===currentIndex?brandColour:\"#BDBDBD\",border:\"none\",borderRadius:\"0px\",cursor:isAnimating?\"default\":\"pointer\",padding:0,transform:index===currentIndex?\"scale(1.15)\":\"scale(1)\",transition:`all 0.4s ${premiumEasing}`}},index))})]});}addPropertyControls(PortfolioCarousel,{images:{type:ControlType.Array,title:\"Images\",control:{type:ControlType.Image},defaultValue:[\"https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=800\",\"https://images.unsplash.com/photo-1497366216548-37526070297c?w=800\",\"https://images.unsplash.com/photo-1497366811353-6870744d04b2?w=800\",\"https://images.unsplash.com/photo-1497366754035-f200968a6e72?w=800\",\"https://images.unsplash.com/photo-1504384308090-c894fdcc538d?w=800\"]},brandColour:{type:ControlType.Color,title:\"Brand Colour\",defaultValue:\"#CC823D\"},autoPlay:{type:ControlType.Boolean,title:\"Auto Play\",defaultValue:false},autoPlayInterval:{type:ControlType.Number,title:\"Interval (s)\",defaultValue:4,min:2,max:10,step:.5,hidden:props=>!props.autoPlay}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PortfolioCarousel\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Past_Work.map"],"mappings":"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"}