{"version":3,"file":"BlockScrollLoader.DAnq3OUD.mjs","names":["useRef","useState","HomeFactory","React","useState"],"sources":["https:/framerusercontent.com/modules/eTFACFXlvp5mgG2YpBpd/wqDmZcxkThZ32xkBavIK/Home.js","https:/framer.com/m/hero-icons/Home.js@0.0.28","https:/framerusercontent.com/modules/hKjtTuWGYB451ckw6eTN/bbq95ZQZ142lE2fXscHd/Hero.js","https:/framerusercontent.com/modules/iupiadfDYbohVBnyrMWo/ydymo65nM1wmtEghrYDT/BlockScrollLoader.js"],"sourcesContent":["let Component;\nvar Home_default = (React) => {\n  if (!Component) {\n    const HomeIcon = React.forwardRef(function HomeIcon2({\n      title,\n      titleId,\n      ...props\n    }, svgRef) {\n      return /* @__PURE__ */ React.createElement(\"svg\", Object.assign({\n        xmlns: \"http://www.w3.org/2000/svg\",\n        viewBox: \"0 0 24 24\",\n        fill: \"currentColor\",\n        \"aria-hidden\": \"true\",\n        \"data-slot\": \"icon\",\n        ref: svgRef,\n        \"aria-labelledby\": titleId\n      }, props), title ? /* @__PURE__ */ React.createElement(\"title\", {\n        id: titleId\n      }, title) : null, /* @__PURE__ */ React.createElement(\"path\", {\n        d: \"M11.47 3.841a.75.75 0 0 1 1.06 0l8.69 8.69a.75.75 0 1 0 1.06-1.061l-8.689-8.69a2.25 2.25 0 0 0-3.182 0l-8.69 8.69a.75.75 0 1 0 1.061 1.06l8.69-8.689Z\"\n      }), /* @__PURE__ */ React.createElement(\"path\", {\n        d: \"m12 5.432 8.159 8.159c.03.03.06.058.091.086v6.198c0 1.035-.84 1.875-1.875 1.875H15a.75.75 0 0 1-.75-.75v-4.5a.75.75 0 0 0-.75-.75h-3a.75.75 0 0 0-.75.75V21a.75.75 0 0 1-.75.75H5.625a1.875 1.875 0 0 1-1.875-1.875v-6.198a2.29 2.29 0 0 0 .091-.086L12 5.432Z\"\n      }));\n    });\n    Component = HomeIcon;\n  }\n  return Component;\n};\nconst __FramerMetadata__ = {\n  exports: {\n    default: {\n      type: \"reactComponent\",\n      slots: [],\n      annotations: { framerContractVersion: \"1\" }\n    },\n    __FramerMetadata__: { type: \"variable\" }\n  }\n};\nexport {\n  __FramerMetadata__,\n  Home_default as default\n};\n","/*\n * Home (hero-icons/Home@0.0.28)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/eTFACFXlvp5mgG2YpBpd/wqDmZcxkThZ32xkBavIK/Home.js\"\nexport { default } from \"https://framerusercontent.com/modules/eTFACFXlvp5mgG2YpBpd/wqDmZcxkThZ32xkBavIK/Home.js\"\n","import{jsx as _jsx}from\"react/jsx-runtime\";import*as React from\"react\";import{useState,useEffect,useRef}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{motion}from\"framer-motion\";import{NullState}from\"https://framer.com/m/framer/icon-nullstate.js@0.7.0\";import HomeFactory from\"https://framer.com/m/hero-icons/Home.js@0.0.28\";import{defaultEvents,useIconSelection}from\"https://framerusercontent.com/modules/Ma20hU0GGRxLxZphbywl/OSpwWF91FHPVFyQJjMHt/utils.js\";export const iconKeys=[\"AcademicCap\",\"AdjustmentsVertical\",\"ArchiveBox\",\"ArchiveBoxArrowDown\",\"ArchiveBoxXMark\",\"ArrowDown\",\"ArrowDownCircle\",\"ArrowDownLeft\",\"ArrowDownOnSquare\",\"ArrowDownRight\",\"ArrowDownTray\",\"ArrowLeft\",\"ArrowLeftCircle\",\"ArrowLeftOnRectangle\",\"ArrowLongDown\",\"ArrowLongLeft\",\"ArrowLongRight\",\"ArrowLongUp\",\"ArrowPath\",\"ArrowRight\",\"ArrowRightCircle\",\"ArrowSmallDown\",\"ArrowSmallLeft\",\"ArrowSmallRight\",\"ArrowSmallUp\",\"ArrowTrendingDown\",\"ArrowTrendingUp\",\"ArrowUp\",\"ArrowUpCircle\",\"ArrowUpLeft\",\"ArrowUpOnSquare\",\"ArrowUpOnSquareStack\",\"ArrowUpRight\",\"ArrowUpTray\",\"ArrowUturnDown\",\"ArrowUturnLeft\",\"ArrowUturnRight\",\"ArrowUturnUp\",\"ArrowsPointingIn\",\"ArrowsPointingOut\",\"ArrowsRightLeft\",\"ArrowsUpDown\",\"AtSymbol\",\"Backspace\",\"Backward\",\"Banknotes\",\"Bars2\",\"Bars3\",\"Bars3BottomLeft\",\"Bars3BottomRight\",\"Bars3CenterLeft\",\"Bars4\",\"BarsArrowDown\",\"BarsArrowUp\",\"Battery0\",\"Battery100\",\"Battery50\",\"Beaker\",\"Bell\",\"BellAlert\",\"BellSlash\",\"BellSnooze\",\"Bolt\",\"BoltSlash\",\"BookOpen\",\"Bookmark\",\"BookmarkSlash\",\"BookmarkSquare\",\"Briefcase\",\"BugAnt\",\"BuildingLibrary\",\"BuildingOffice\",\"BuildingOffice2\",\"BuildingStorefront\",\"Cake\",\"Calculator\",\"Calendar\",\"CalendarDays\",\"Camera\",\"ChartBar\",\"ChartBarSquare\",\"ChartPie\",\"ChatBubbleLeft\",\"ChatBubbleLeftRight\",\"ChatBubbleOvalLeft\",\"Check\",\"CheckBadge\",\"CheckCircle\",\"ChevronDoubleDown\",\"ChevronDoubleLeft\",\"ChevronDoubleRight\",\"ChevronDoubleUp\",\"ChevronDown\",\"ChevronLeft\",\"ChevronRight\",\"ChevronUp\",\"ChevronUpDown\",\"CircleStack\",\"Clipboard\",\"ClipboardDocument\",\"Clock\",\"Cloud\",\"CloudArrowDown\",\"CloudArrowUp\",\"CodeBracket\",\"CodeBracketSquare\",\"Cog\",\"Cog6Tooth\",\"Cog8Tooth\",\"CommandLine\",\"ComputerDesktop\",\"CpuChip\",\"CreditCard\",\"Cube\",\"CubeTransparent\",\"CurrencyBangladeshi\",\"CurrencyDollar\",\"CurrencyEuro\",\"CurrencyPound\",\"CurrencyRupee\",\"CurrencyYen\",\"CursorArrowRays\",\"CursorArrowRipple\",\"DevicePhoneMobile\",\"DeviceTablet\",\"Document\",\"DocumentArrowDown\",\"DocumentArrowUp\",\"DocumentChartBar\",\"DocumentCheck\",\"DocumentDuplicate\",\"DocumentMinus\",\"DocumentPlus\",\"DocumentText\",\"EllipsisHorizontal\",\"EllipsisVertical\",\"Envelope\",\"EnvelopeOpen\",\"ExclamationCircle\",\"ExclamationTriangle\",\"Eye\",\"EyeDropper\",\"EyeSlash\",\"FaceFrown\",\"FaceSmile\",\"Film\",\"FingerPrint\",\"Fire\",\"Flag\",\"Folder\",\"FolderArrowDown\",\"FolderMinus\",\"FolderOpen\",\"FolderPlus\",\"Forward\",\"Funnel\",\"Gif\",\"Gift\",\"GiftTop\",\"GlobeAlt\",\"GlobeAmericas\",\"GlobeAsiaAustralia\",\"GlobeEuropeAfrica\",\"HandRaised\",\"HandThumbDown\",\"HandThumbUp\",\"Hashtag\",\"Heart\",\"Home\",\"HomeModern\",\"Identification\",\"Inbox\",\"InboxArrowDown\",\"InboxStack\",\"InformationCircle\",\"Key\",\"Language\",\"Lifebuoy\",\"LightBulb\",\"Link\",\"ListBullet\",\"LockClosed\",\"LockOpen\",\"MagnifyingGlass\",\"MagnifyingGlassMinus\",\"MagnifyingGlassPlus\",\"Map\",\"MapPin\",\"Megaphone\",\"Microphone\",\"Minus\",\"MinusCircle\",\"MinusSmall\",\"Moon\",\"MusicalNote\",\"Newspaper\",\"NoSymbol\",\"PaintBrush\",\"PaperAirplane\",\"PaperClip\",\"Pause\",\"PauseCircle\",\"Pencil\",\"PencilSquare\",\"Phone\",\"PhoneArrowDownLeft\",\"PhoneArrowUpRight\",\"PhoneXMark\",\"Photo\",\"Play\",\"PlayCircle\",\"PlayPause\",\"Plus\",\"PlusCircle\",\"PlusSmall\",\"Power\",\"PresentationChartBar\",\"Printer\",\"PuzzlePiece\",\"QrCode\",\"QuestionMarkCircle\",\"QueueList\",\"Radio\",\"ReceiptPercent\",\"ReceiptRefund\",\"RectangleGroup\",\"RectangleStack\",\"RocketLaunch\",\"Rss\",\"Scale\",\"Scissors\",\"Server\",\"ServerStack\",\"Share\",\"ShieldCheck\",\"ShieldExclamation\",\"ShoppingBag\",\"ShoppingCart\",\"Signal\",\"SignalSlash\",\"Sparkles\",\"SpeakerWave\",\"SpeakerXMark\",\"Square2Stack\",\"Square3Stack3D\",\"Squares2X2\",\"SquaresPlus\",\"Star\",\"Stop\",\"StopCircle\",\"Sun\",\"Swatch\",\"TableCells\",\"Tag\",\"Ticket\",\"Trash\",\"Trophy\",\"Truck\",\"Tv\",\"User\",\"UserCircle\",\"UserGroup\",\"UserMinus\",\"UserPlus\",\"Users\",\"Variable\",\"VideoCamera\",\"VideoCameraSlash\",\"ViewColumns\",\"ViewfinderCircle\",\"Wallet\",\"Wifi\",\"Window\",\"Wrench\",\"WrenchScrewdriver\",\"XCircle\",\"XMark\",\"index\"];const moduleBaseUrl=\"https://framer.com/m/hero-icons/\";const lowercaseIconKeyPairs=iconKeys.reduce((res,key)=>{res[key.toLowerCase()]=key;return res;},{});/**\n * HERO\n *\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export function Icon(props){const{color,selectByList,iconSearch,iconSelection,onClick,onMouseDown,onMouseUp,onMouseEnter,onMouseLeave,mirrored}=props;const isMounted=useRef(false);const iconKey=useIconSelection(iconKeys,selectByList,iconSearch,iconSelection,lowercaseIconKeyPairs);// Selected Icon Module\nconst[SelectedIcon,setSelectedIcon]=useState(iconKey===\"Home\"?HomeFactory(React):null);// Import the selected module or reset so null state\nasync function importModule(){// Get the selected module\ntry{const iconModuleUrl=`${moduleBaseUrl}${iconKey}.js@0.0.28`;const module=await import(/* webpackIgnore: true */iconModuleUrl);if(isMounted.current)setSelectedIcon(module.default(React));}catch{if(isMounted.current)setSelectedIcon(null);}}// Import module when new style or icon is selected\nuseEffect(()=>{isMounted.current=true;importModule();return()=>{isMounted.current=false;};},[iconKey]);const isOnCanvas=RenderTarget.current()===RenderTarget.canvas;const emptyState=isOnCanvas?/*#__PURE__*/_jsx(NullState,{}):null;return /*#__PURE__*/_jsx(motion.div,{style:{display:\"contents\"},onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,children:SelectedIcon?/*#__PURE__*/_jsx(SelectedIcon,{style:{width:\"100%\",height:\"100%\",transform:mirrored?\"scale(-1, 1)\":undefined},color:color}):emptyState});}Icon.displayName=\"Hero\";Icon.defaultProps={width:24,height:24,iconSelection:\"Home\",iconSearch:\"Home\",color:\"#66F\",selectByList:true,mirrored:false};addPropertyControls(Icon,{selectByList:{type:ControlType.Boolean,title:\"Select\",enabledTitle:\"List\",disabledTitle:\"Search\",defaultValue:Icon.defaultProps.selectByList},iconSelection:{type:ControlType.Enum,options:iconKeys,defaultValue:Icon.defaultProps.iconSelection,title:\"Name\",hidden:({selectByList})=>!selectByList,description:\"Find every icon name on the [Hero site](https://heroicons.com/)\"},iconSearch:{type:ControlType.String,title:\"Name\",placeholder:\"Menu, Wifi, Box…\",hidden:({selectByList})=>selectByList},mirrored:{type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:Icon.defaultProps.mirrored},color:{type:ControlType.Color,title:\"Color\",defaultValue:Icon.defaultProps.color},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"Icon\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"24\",\"framerIntrinsicWidth\":\"24\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"IconProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"iconKeys\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Hero.map","// Transparent BlockScrollLoader for Framer — LOAD-AWARE, per-breakpoint.\n// Holds scroll until the VISIBLE hero <video> (the one rendered for the current\n// breakpoint) is FULLY buffered — i.e. the whole file has downloaded so the\n// scroll-scrub never stalls jumping to any frame. Falls back to a safety cap so\n// it can never hang. The overlay is transparent (the hero shows behind it), so\n// the extra wait reads as \"looking at the hero a moment longer\", not a spinner.\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useState,startTransition}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function BlockScrollLoader(props){const{block,duration,fade,style}=props;const[visible,setVisible]=useState(block);useEffect(()=>{if(typeof window===\"undefined\")return;const html=document.documentElement;const lock=()=>{document.body.style.overflow=\"hidden\";if(html)html.style.overflow=\"hidden\";};const unlock=()=>{document.body.style.overflow=\"\";if(html)html.style.overflow=\"\";};if(!block){unlock();setVisible(false);return;}lock();setVisible(true);const prevent=e=>e.preventDefault();window.addEventListener(\"wheel\",prevent,{passive:false});window.addEventListener(\"touchmove\",prevent,{passive:false});const cleanups=[];let released=false;const release=()=>{if(released)return;released=true;unlock();window.removeEventListener(\"wheel\",prevent);window.removeEventListener(\"touchmove\",prevent);cleanups.forEach(fn=>fn());// Fade out the visible loading screen (the \"Preloading\" cover tagged\n// with elementId \"hero-preloader\") now that the video is fully\n// buffered — this is what makes the SEEN screen wait for the video.\ntry{const fill=document.getElementById(\"hero-loading-fill\");if(fill)fill.style.width=\"100%\";}catch(e){}try{const pre=document.getElementById(\"hero-preloader\");if(pre){pre.style.transition=\"opacity 0.7s cubic-bezier(.4,0,.2,1)\";pre.style.opacity=\"0\";pre.style.pointerEvents=\"none\";window.setTimeout(()=>{if(pre)pre.style.display=\"none\";},760);}}catch(e){}startTransition(()=>setVisible(false));};// In the editor canvas, never block — release immediately so editing works.\nif(RenderTarget.current()===RenderTarget.canvas){release();return()=>{};}// Safety cap: if the download stalls or errors, let people through anyway.\n// `duration` (Max Wait) overrides; default 30s so a full hero video on a\n// normal connection has time to fully buffer.\nconst cap=duration&&duration>0?duration:3e4;const capTimer=setTimeout(release,cap);cleanups.push(()=>clearTimeout(capTimer));// The hero video that's actually on screen for THIS breakpoint: the first\n// <video> with a non-zero rendered box (hidden breakpoints are display:none\n// → zero box → skipped, and they don't buffer anyway).\nconst findVisibleVideo=()=>{const vids=Array.from(document.querySelectorAll(\"video\"));for(const v of vids){const r=v.getBoundingClientRect();if(r.width>4&&r.height>4)return v;}return null;};// Drive the preloader's line from the real buffered fraction so the\n// bar only completes when the hero video is genuinely ready.\nconst paintProgress=v=>{try{const fill=document.getElementById(\"hero-loading-fill\");if(!fill)return;const d=v.duration;const b=v.buffered;let pct=0;if(isFinite(d)&&d>0&&b&&b.length>0)pct=Math.min(1,b.end(b.length-1)/d);fill.style.transition=\"width 0.3s ease-out\";fill.style.width=Math.round(pct*100)+\"%\";}catch(e){}};// Fully buffered = the buffered ranges reach the end of the clip.\nconst isFullyBuffered=v=>{const d=v.duration;if(!isFinite(d)||d<=0)return false;const b=v.buffered;if(!b||b.length===0)return false;return b.end(b.length-1)>=d-.4;};let rafId=0;let pollId=0;const attach=()=>{const v=findVisibleVideo();if(!v){rafId=requestAnimationFrame(attach);return;}// Make sure the browser downloads the whole file, not just a bit.\ntry{if(v.preload!==\"auto\")v.preload=\"auto\";}catch(e){}if(isFullyBuffered(v)){release();return;}const check=()=>{paintProgress(v);if(isFullyBuffered(v))release();};v.addEventListener(\"progress\",check);v.addEventListener(\"loadeddata\",check);v.addEventListener(\"canplaythrough\",check);cleanups.push(()=>{v.removeEventListener(\"progress\",check);v.removeEventListener(\"loadeddata\",check);v.removeEventListener(\"canplaythrough\",check);});// events alone can miss the final range on iOS — poll as a backstop.\npollId=window.setInterval(check,250);cleanups.push(()=>clearInterval(pollId));};attach();cleanups.push(()=>{if(rafId)cancelAnimationFrame(rafId);});return()=>{unlock();window.removeEventListener(\"wheel\",prevent);window.removeEventListener(\"touchmove\",prevent);cleanups.forEach(fn=>fn());};},[block,duration]);if(!visible||RenderTarget.current()===RenderTarget.thumbnail)return null;return /*#__PURE__*/_jsx(\"div\",{style:{...style,position:\"fixed\",top:0,left:0,width:\"100vw\",height:\"100vh\",background:\"transparent\",zIndex:9999,pointerEvents:\"all\",opacity:fade?.7:1,transition:fade?\"opacity 0.3s cubic-bezier(.4,0,.2,1)\":undefined,touchAction:\"none\",overscrollBehavior:\"none\"},\"aria-hidden\":\"true\"});}addPropertyControls(BlockScrollLoader,{block:{type:ControlType.Boolean,title:\"Block Scroll\",defaultValue:true,enabledTitle:\"Block\",disabledTitle:\"Allow\"},duration:{type:ControlType.Number,title:\"Max Wait (ms)\",defaultValue:0,min:0,max:6e4,step:500,unit:\"ms\"},fade:{type:ControlType.Boolean,title:\"Fade Effect\",defaultValue:true,enabledTitle:\"Fade\",disabledTitle:\"None\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BlockScrollLoader\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BlockScrollLoader.map"],"mappings":"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"}