{"version":3,"file":"Counter.cb0rM9lt.mjs","names":["useReducer","defaultConsent","useState","_Fragment","Suspense","Banner","Button","useState","_Fragment","Suspense","useReducer","useState","_Fragment","useState","useRef"],"sources":["https:/framerusercontent.com/modules/RFM6zI5MxOiqwwNiQep4/2CcJhEanvh9oX5JHRkd8/send.js","https:/framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js","https:/framerusercontent.com/modules/zvf2WTzc98u6EX2y7YDj/7Vzkp1ORK9zU9dYiZ1fu/consent.js","https:/framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/wTCMOQdBhrD1LTpkwItL/inEU.js","https:/framerusercontent.com/modules/0oeZpJVursioGAbwgB9e/nrn5valPIfiaZFRgtVW3/region.js","https:/framerusercontent.com/modules/EkwkxVF9vkTs720qqBC8/6ViXEDlSyuNyc0Na4Rzv/Banner.js","https:/framerusercontent.com/modules/GbX8S6ghmyszcS2GLR2F/IH6s9ASs8tTeXMp8PWOj/Cookies.js","https:/framer.com/m/framer/default-utils.js@^0.45.0","https:/framerusercontent.com/modules/NEd4VmDdsxM3StIUbddO/4sbLnuatuUfmOTwFGSJM/YouTube.js","https:/framerusercontent.com/modules/zCv2pdwuRt8qaNgaazog/GDucD5roNT3pIiCEJpuh/Counter.js"],"sourcesContent":["import{isBrowser}from\"framer-motion\";export const DEFAULT_DOMAIN=\"https://www.googletagmanager.com\";export const DEFAULT_SCRIPT_NAME=\"gtm.js\";/**\n * Function to get and set dataLayer\n * @param dataLayer - The dataLayer\n * @param dataLayerName - The dataLayer name\n */const getDataLayerSnippet=(dataLayer,dataLayerName=\"dataLayer\")=>`window['${dataLayerName}']=window['${dataLayerName}']||[];`+(dataLayer?`window['${dataLayerName}'].push(${JSON.stringify(dataLayer)});`:\"\")+`window['${dataLayerName}'].push({'gtm.start':new Date().getTime(),event:'gtm.js'})`;/**\n * Function to get the GTM script\n * @param dataLayerName - The name of the dataLayer\n * @param customDomain - Custom domain for gtm\n * @param customScriptName - Custom script file name for gtm\n * @param environment - The parameters to use a custom environment\n * @param id - The id of the container\n */const getGTMScript=(dataLayerName,id,environment,customDomain=DEFAULT_DOMAIN,customScriptName=DEFAULT_SCRIPT_NAME)=>{let params=\"\";if(environment){const{gtm_auth,gtm_preview}=environment;params=`&gtm_auth=${gtm_auth}&gtm_preview=${gtm_preview}&gtm_cookies_win=x`;}return`${customDomain}/${customScriptName}?id=${id}${dataLayerName===\"dataLayer\"?\"\":`&l=${dataLayerName}`}${params}`;};/**\n * Function to setup the Google Tag Manager\n * @param params - The snippets params\n */const setupGTM=params=>{const getDataLayerScript=()=>{const dataLayerScript=document.createElement(\"script\");if(params.nonce){dataLayerScript.setAttribute(\"nonce\",params.nonce);}dataLayerScript.innerHTML=getDataLayerSnippet(params.dataLayer,params.dataLayerName);return dataLayerScript;};const getScript=()=>{const script=document.createElement(\"script\");if(params.nonce){script.setAttribute(\"nonce\",params.nonce);}script.src=getGTMScript(params.dataLayerName,params.id,params.environment,params.customDomain,params.customScriptName);script.crossOrigin=\"anonymous\"// allows for more detailed INP collection\n;return script;};return{getDataLayerScript,getScript};};/**\n * Function to init the GTM\n * @param dataLayer - The dataLayer\n * @param dataLayerName - The dataLayer name\n * @param environment - Specify the custom environment to use\n * @param nonce - Server-generated nonce\n * @param id - The ID of the GTM\n */export const initGTM=({dataLayer,dataLayerName,environment,nonce,id,customDomain,customScriptName})=>{const gtm=setupGTM({dataLayer,dataLayerName,environment,nonce,id,customDomain,customScriptName});const dataLayerScript=gtm.getDataLayerScript();const script=gtm.getScript();document.head.append(dataLayerScript,script);};export function sendToGTM(){if(isBrowser){window[\"dataLayer\"]=window[\"dataLayer\"]||[];window[\"dataLayer\"].push(arguments);}}\nexport const __FramerMetadata__ = {\"exports\":{\"DEFAULT_DOMAIN\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DEFAULT_SCRIPT_NAME\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"initGTM\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"sendToGTM\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./send.map","import{isBrowser}from\"framer-motion\";import{useLayoutEffect}from\"react\";export const DEFAULT_FONT_FAMILY=`\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;export function getFlexboxValues(position){const positionParts=position.split(\"-\");let justifyContent,alignItems;switch(positionParts[0]){case\"top\":alignItems=\"flex-start\";break;case\"bottom\":alignItems=\"flex-end\";break;case\"center\":alignItems=\"center\";break;default:alignItems=\"initial\";break;}switch(positionParts[1]){case\"left\":justifyContent=\"flex-start\";break;case\"right\":justifyContent=\"flex-end\";break;case\"center\":justifyContent=\"center\";break;default:justifyContent=\"initial\";break;}return{justifyContent,alignItems};}export function getMultipleShadows(...shadows){const output=[];shadows.forEach(shadow=>{return shadow&&output.push(shadow);});return output.join(\", \");}export function getShadow(shadow){if(shadow){return`${shadow.shadowX}px ${shadow.shadowY}px ${shadow.shadowBlur}px ${shadow.shadowColor}`;}else return null;}export function safeJSONParse(jsonString,onError){try{return JSON.parse(jsonString);}catch{if(onError)onError();}}export const getCookie=(name,cookies)=>{cookies=cookies?cookies:isBrowser?document.cookie:\"\";var _cookies_match;const[,,cookie]=(_cookies_match=cookies.match(`(^|;) ?${name}=([^;]*)(;|$)`))!==null&&_cookies_match!==void 0?_cookies_match:[null,null,null];return cookie;};/**\n * Yields to main thread before continuing execution, which might allow the browser to paint.\n * If `options.priority` is 'user-blocking', it will asynchronously resolve in older browsers.\n * @param {object} options - see https://github.com/WICG/scheduling-apis/blob/main/explainers/yield-and-continuation.md\n * @see interactionResponse for guaranteeing execution after a paint\n */export function yieldToMain(options){if(\"scheduler\"in window){if(\"yield\"in scheduler)return scheduler.yield(options);if(\"postTask\"in scheduler)return scheduler.postTask(()=>{},options);}if((options===null||options===void 0?void 0:options.priority)===\"user-blocking\"){// `setTimeout` could suffer from being delayed for longer: https://developer.chrome.com/blog/introducing-scheduler-yield-origin-trial#the_problem_with_current_yielding_strategies\n// so for browsers not supporting yield, we guarantee execution for high priority actions, but this does not create space for a paint opportunity as trade-off.\nreturn Promise.resolve();}return new Promise(resolve=>{setTimeout(resolve);});}/**\n * Helper function for `yieldToMain`, which yields before calling `fn`.\n * @see yieldToMain\n */export async function yieldBeforeCb(fn,options){await yieldToMain(options);return fn();}/**\n * Similar to `yieldToMain`, but also waits for the next animation frame before yielding (with a fallback of 100ms if the animation frame never fires).\n * Compared to `yieldToMain`, it guarantees improved INP, but might make processing a little slower. Use only if necessary.\n * @see yieldToMain\n */export function interactionResponse(options){return new Promise(resolve=>{setTimeout(resolve,200)// Fallback for the case where the animation frame never fires.\n;requestAnimationFrame(()=>{void yieldBeforeCb(resolve,options);});});}/**\n * Runs `fn` after the next paint. Similar to `useEffect`, but *guarantees* that the function is run after the next paint.\n * @important Does not support a cleanup fn.\n * @see https://thoughtspile.github.io/2021/11/15/unintentional-layout-effect/\n */export function useAfterPaintEffect(fn,deps,options){useLayoutEffect(()=>{const runAfterPaint=async()=>{await interactionResponse(options);fn();};void runAfterPaint();// eslint-disable-next-line react-hooks/exhaustive-deps -- deps are passed in\n},deps);}\nexport const __FramerMetadata__ = {\"exports\":{\"useAfterPaintEffect\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getCookie\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"safeJSONParse\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFlexboxValues\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"yieldBeforeCb\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getShadow\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getMultipleShadows\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FlexboxPosition\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"yieldToMain\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"interactionResponse\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DEFAULT_FONT_FAMILY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./utils.map","import{useIsOnFramerCanvas}from\"framer\";import{isBrowser}from\"framer-motion\";import{useEffect,useReducer}from\"react\";import{initGTM,sendToGTM}from\"https://framerusercontent.com/modules/RFM6zI5MxOiqwwNiQep4/2CcJhEanvh9oX5JHRkd8/send.js\";import{safeJSONParse,yieldBeforeCb}from\"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js\";function toGTMConsent(consent){return{functionality_storage:consent.necessary?\"granted\":\"denied\",security_storage:consent.necessary?\"granted\":\"denied\",ad_storage:consent.marketing?\"granted\":\"denied\",ad_user_data:consent.marketing?\"granted\":\"denied\",ad_personalization:consent.marketing?\"granted\":\"denied\",analytics_storage:consent.analytics?\"granted\":\"denied\",personalization_storage:consent.preferences?\"granted\":\"denied\"};}function reducer(state,action){switch(action.type){case\"autoAccept\":return{...state,sync:true,autoAccepted:true,modes:{analytics:true,marketing:true,necessary:true,preferences:true}};case\"acceptAll\":return{...state,sync:true,dismissed:true,modes:{analytics:true,marketing:true,necessary:true,preferences:true}};case\"rejectAll\":return{...state,sync:true,dismissed:true,modes:{analytics:false,marketing:false,necessary:false,preferences:false}};case\"acceptCurrent\":return{...state,dismissed:true,sync:true};case\"update\":return{...state,modes:{...state.modes,...action.modes},sync:action.sync};case\"toggle\":return{...state,modes:{...state.modes,[action.mode]:!state.modes[action.mode]}};case\"initFromLocalStorage\":return{...state,modes:action.modes,dismissed:action.dismissed,autoAccepted:action.autoAccepted,initializedFromLocalStorage:true,sync:true};case\"dismiss\":return{...state,dismissed:true};case\"synced\":return{...state,sync:false,hasSynced:true};default:return state;}}const initialState={dismissed:false,autoAccepted:false,modes:null,sync:false,initializedFromLocalStorage:false,hasSynced:false};export const defaultConsent={necessary:false,analytics:false,marketing:false,preferences:false};// Keep track of if GTM has been loaded as a script and default consent has been set,\n// to ensure the script does not keep appending between page switches.\nlet hasInitializedGTM=false;export function useConsent({gtmId,defaultConsent,gtmLoadedExternally=false}){const[state,dispatch]=useReducer(reducer,initialState);const isOnFramerCanvas=useIsOnFramerCanvas();const consentModeLocalStorageKey=\"framerCookiesConsentMode\";const dismissedLocalStorageKey=\"framerCookiesDismissed\";const autoAcceptedLocalStorageKey=\"framerCookiesAutoAccepted\";function getStateFromLocalStorage(){const consentFromLocalStorage=localStorage.getItem(consentModeLocalStorageKey);const dismissedFromLocalStorage=localStorage.getItem(dismissedLocalStorageKey);const autoAcceptedFromLocalStorage=localStorage.getItem(autoAcceptedLocalStorageKey);const isDismissed=dismissedFromLocalStorage!==null;const isAutoAccepted=autoAcceptedFromLocalStorage!==null;const hasConsentInLocalStorage=consentFromLocalStorage!==null;const consentInLocalStorageIsNotDefault=isDismissed||isAutoAccepted;const shouldLoadConsentFromLocalStorage=hasConsentInLocalStorage&&consentInLocalStorageIsNotDefault;dispatch({type:\"initFromLocalStorage\",dismissed:isDismissed,autoAccepted:isAutoAccepted,modes:shouldLoadConsentFromLocalStorage?safeJSONParse(consentFromLocalStorage,()=>localStorage.removeItem(consentModeLocalStorageKey)):defaultConsent});}function syncToGTM(){if(gtmId){if(!hasInitializedGTM&&!gtmLoadedExternally){// This is the first time we sync consent, so we save it as \"default\" and initialize tag manager.\n// This order is important, because we need to have set the default consent BEFORE we initialize GTM.\n// https://developers.google.com/tag-platform/devguides/consent?tab=tag-manager&sjid=11348191096952324675-EU#implementation_example\n// It might seem weird that we're \"sending\" before initializing, but \"sending\" here means building up\n// the \"dataLayer\" object that GTM picks up when it initializes.\nsendToGTM(\"consent\",\"default\",toGTMConsent(state.modes));initGTM({dataLayer:undefined,dataLayerName:\"dataLayer\",environment:undefined,nonce:undefined,injectScript:true,id:gtmId});hasInitializedGTM=true;}else{hasInitializedGTM=true;sendToGTM(\"consent\",\"update\",toGTMConsent(state.modes));// must be sent like this or else GTM doesn't act on it:\nwindow.dataLayer.push({event:\"cookie_consent_update\"});}}}useEffect(()=>{if(isOnFramerCanvas)return;yieldBeforeCb(()=>getStateFromLocalStorage(),{priority:\"user-blocking\"});},[]);// Anytime the dismissed value is updated, we need to persist it in local storage.\nuseEffect(()=>{if(isOnFramerCanvas)return;if(state.dismissed){localStorage.setItem(dismissedLocalStorageKey,\"true\");}},[state.dismissed]);// Anytime consent is auto accepted, we need to persist it in local storage.\nuseEffect(()=>{if(isOnFramerCanvas)return;if(state.autoAccepted){localStorage.setItem(autoAcceptedLocalStorageKey,\"true\");}},[state.autoAccepted]);// Sync data to dataLayer and localStorage.\nuseEffect(()=>{if(isOnFramerCanvas)return;const shouldSync=state.sync&&isBrowser&&state.modes!==null;if(!shouldSync){return;}yieldBeforeCb(()=>{syncToGTM();// Save locally\nlocalStorage.setItem(consentModeLocalStorageKey,JSON.stringify(state.modes));dispatch({type:\"synced\"});},{priority:\"user-blocking\"});},[state.sync]);function dismiss(){dispatch({type:\"dismiss\"});localStorage.setItem(dismissedLocalStorageKey,\"true\");}function autoAccept(){dispatch({type:\"autoAccept\"});}function acceptAll(){dispatch({type:\"acceptAll\"});}function rejectAll(){dispatch({type:\"rejectAll\"});}function acceptCurrent(){dispatch({type:\"acceptCurrent\"});}function toggleMode(mode){dispatch({type:\"toggle\",mode});}return{modes:state.modes,isInitialized:state.hasSynced,isDismissed:state.dismissed,isAutoAccepted:state.autoAccepted,dismiss,autoAccept,acceptAll,rejectAll,acceptCurrent,toggleMode};}\nexport const __FramerMetadata__ = {\"exports\":{\"useConsent\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultConsent\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ConsentModeName\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ConsentModes\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Check if visitor is in EU\nconst countries=[\"BE\",\"EL\",\"LT\",\"PT\",\"BG\",\"ES\",\"LU\",\"RO\",\"CZ\",\"FR\",\"RE\",\"GP\",\"MQ\",\"GF\",\"YT\",\"BL\",\"MF\",\"PM\",\"WF\",\"PF\",\"NC\",\"HU\",\"SI\",\"DK\",\"FO\",\"GL\",\"HR\",\"MT\",\"SK\",\"DE\",\"IT\",\"NL\",\"AW\",\"CW\",\"SX\",\"FI\",\"AX\",\"EE\",\"CY\",\"AT\",\"SE\",\"IE\",\"LV\",\"PL\",\"UK\",\"GB\",\"AI\",\"BM\",\"IO\",\"VG\",\"KY\",\"FK\",\"GI\",\"MS\",\"PN\",\"SH\",\"TC\",\"GG\",\"JE\",\"IM\"];const isInEUTimezone=()=>{return Intl?.DateTimeFormat()?.resolvedOptions()?.timeZone?.startsWith(\"Europe\");};const isEULocale=()=>{const locale=navigator.language??navigator.languages?.[0];return countries.some(country=>locale?.toUpperCase()?.includes(country));};let _inEU=null;export const inEU=()=>{if(_inEU===null)_inEU=isInEUTimezone()||isEULocale();return _inEU;};\nexport const __FramerMetadata__ = {\"exports\":{\"inEU\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./inEU.map","import{isBrowser}from\"framer-motion\";import{inEU}from\"https://framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/wTCMOQdBhrD1LTpkwItL/inEU.js\";export function useRegion({content,useRegionFromProps,skipEUCheck}){const isInEUBasedOnLocation=isBrowser&&!skipEUCheck?inEU():false;const regionBasedOnLocation=isInEUBasedOnLocation?\"EU\":\"World\";const regionFromProps=content.isEU?\"EU\":\"World\";const regionContent={EU:{title:content.euTitle,description:content.euDescription,type:content.euType,defaults:content.euDefaults,policy:content.euPolicy,blocking:content.euBlocking,showReject:content.euType===\"advanced\"?content.euShowReject:true},World:{title:content.worldTitle,description:content.worldDescription,type:content.worldType,defaults:content.worldDefaults,policy:content.worldPolicy,blocking:content.worldBlocking,showReject:content.worldType===\"advanced\"?content.worldShowReject:true}};return regionContent[useRegionFromProps?regionFromProps:regionBasedOnLocation];}\nexport const __FramerMetadata__ = {\"exports\":{\"useRegion\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RegionType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RegionContent\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,lazy,Suspense}from\"react\";import{withCSS}from\"framer\";import{AnimatePresence,motion}from\"framer-motion\";import{DEFAULT_FONT_FAMILY,getMultipleShadows,getShadow}from\"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js\";const SPACING=20;// if you update the Toggle component inside this project, copy the new URL to here:\nconst Toggle=/*#__PURE__*/lazy(()=>import(\"https://framerusercontent.com/modules/QDCSmi7dYWSK5AcRSFyX/iWVjq9atvKQLvxgv6qiM/Blf0sjosZ.js\"));export const Banner=withCSS(function Banner({banner,button,region,options,previewOptions,consentModes,onDismiss,onAcceptAll,onRejectAll,onAcceptCurrent,onToggleConsent,animateOnMount}){const maxHeightReduction=banner.insetPerSide?banner.insetTop+banner.insetBottom:banner.inset*2;const linkColor=banner.style.link||button.primary.fill;const paddingValue=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;const bannerShadow=getShadow(banner.style.shadow);const borderShadow=banner.style.border?.width?`inset 0 0 0 ${banner.style.border.width}px ${banner.style.border.color}`:null;const bannerStyle={background:banner.style.fill,boxShadow:getMultipleShadows(bannerShadow,borderShadow),overflow:\"hidden\",borderRadius:banner.style.border.radius};return /*#__PURE__*/_jsx(motion.div,{initial:animateOnMount&&{x:banner.animation.x,y:banner.animation.y,scale:banner.animation.scale,opacity:0},animate:{y:0,x:0,scale:1,opacity:1},exit:{x:banner.animation.x,y:banner.animation.y,scale:banner.animation.scale,opacity:0},transition:animateOnMount?banner.animation.transition:{duration:0},style:{fontFamily:DEFAULT_FONT_FAMILY,maxHeight:`calc(100vh - ${maxHeightReduction}px)`,flexDirection:\"column\",gap:12,position:\"relative\",display:\"flex\",zIndex:100,pointerEvents:\"auto\"},children:/*#__PURE__*/_jsx(\"div\",{style:{...bannerStyle,overflow:\"scroll\",width:\"100%\",maxWidth:banner.width},className:`--framer-cookie-banner-container --framer-cookie-banner-type-${region.type}`,children:region.type===\"simple\"?/*#__PURE__*/_jsx(SimpleBanner,{banner:banner,button:button,linkColor:linkColor,description:region.description,policy:region.policy,onDismiss:onDismiss}):region.type===\"medium\"?/*#__PURE__*/_jsx(AcceptRejectBanner,{banner:banner,button:button,linkColor:linkColor,title:region.title,description:region.description,policy:region.policy,onAccept:onAcceptAll,onReject:onRejectAll}):/*#__PURE__*/_jsx(OptionsBanner,{banner:banner,button:button,options:options,previewOptions:previewOptions,linkColor:linkColor,title:region.title,description:region.description,showReject:region.showReject,policy:region.policy,onOptionToggle:onToggleConsent,consent:consentModes,onAcceptAll:onAcceptAll,onRejectAll:onRejectAll,onAcceptCurrent:onAcceptCurrent})})});},[`.--framer-cookie-banner-container::-webkit-scrollbar { display: none; }`,`.--framer-cookie-banner-container { \n            -ms-overflow-style: none; \n            scrollbar-width: none;  \n        }`],\"framer-lib-cookie-banner\");function SimpleBanner({banner,button,description,policy,onDismiss,linkColor}){const padding=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",padding,gap:SPACING},children:[/*#__PURE__*/_jsx(Description,{style:{...banner.style.fontBody,flex:1,alignItems:\"center\",color:banner.style.colorBody},linkColor:linkColor,description:description,policy:policy}),/*#__PURE__*/_jsx(motion.div,{style:{display:\"flex\",justifyContent:\"center\",alignItems:\"center\"},children:/*#__PURE__*/_jsx(Button,{onClick:onDismiss,settings:{...button,fluid:false},id:\"dismiss\",children:button.labels.confirm})})]});}function AcceptRejectBanner({banner,button,title,linkColor,description,policy,onAccept,onReject}){const padding=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;return /*#__PURE__*/_jsxs(\"div\",{style:{padding},children:[/*#__PURE__*/_jsxs(\"div\",{children:[title&&/*#__PURE__*/_jsx(Headline,{style:{...banner.style.fontTitle,color:banner.style.colorTitle},children:title}),/*#__PURE__*/_jsx(Description,{style:{...banner.style.fontBody,color:banner.style.colorBody},linkColor:linkColor,description:description,policy:policy})]}),/*#__PURE__*/_jsxs(Buttons,{direction:button.direction,children:[/*#__PURE__*/_jsx(Button,{settings:button,onClick:onReject,id:\"reject\",children:button.labels.reject}),/*#__PURE__*/_jsx(Button,{settings:button,primary:true,onClick:onAccept,id:\"accept\",children:button.labels.accept})]})]});}function OptionsBanner({banner,button,options,previewOptions,title,description,policy,showReject=true,linkColor,consent,onAcceptCurrent,onAcceptAll,onRejectAll,onOptionToggle}){const[showOptions,setShowOptions]=useState(false);const optionTheme={...options.style,color:banner.style.colorBody};const padding=banner.paddingPerSide?`${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px`:`${banner.padding}px`;// const optionNames = consent && Object.keys(consent)\nconst optionNames=[\"necessary\",\"preferences\",\"analytics\",\"marketing\"];const shouldShowOptions=showOptions||previewOptions;return /*#__PURE__*/_jsxs(\"div\",{style:{padding},children:[/*#__PURE__*/_jsxs(\"div\",{children:[title&&/*#__PURE__*/_jsx(Headline,{style:{...banner.style.fontTitle,color:banner.style.colorTitle},children:title}),/*#__PURE__*/_jsx(Description,{style:{...banner.style.fontBody,color:banner.style.colorBody},linkColor:linkColor,description:description,policy:policy}),/*#__PURE__*/_jsx(AnimatePresence,{children:shouldShowOptions&&/*#__PURE__*/_jsx(motion.div,{initial:previewOptions?null:{opacity:0,height:0},animate:{opacity:1,height:\"auto\"},exit:{opacity:0,height:0},style:{display:\"flex\",flexDirection:\"column\",gap:10,marginTop:SPACING,overflow:\"hidden\"},children:optionNames&&optionNames.map(option=>/*#__PURE__*/_jsx(Option,{title:options[option].title,description:options[option].description,titleColor:banner.style.colorTitle,descriptionColor:banner.style.colorBody,showDescription:options.descriptions,enabled:consent[option],onClick:()=>onOptionToggle(option),theme:optionTheme,optional:option===\"necessary\"?options[option].optional:true}))},\"modal\")})]}),/*#__PURE__*/_jsx(Buttons,{direction:button.direction,children:shouldShowOptions?/*#__PURE__*/_jsx(Button,{settings:button,primary:true,onClick:onAcceptCurrent,id:\"accept\",children:button.labels.save}):/*#__PURE__*/_jsxs(_Fragment,{children:[showReject&&/*#__PURE__*/_jsx(Button,{settings:button,onClick:onRejectAll,id:\"reject\",children:button.labels.rejectAll}),/*#__PURE__*/_jsx(Button,{settings:button,onClick:()=>{setShowOptions(true);},id:\"customize\",children:button.labels.customize}),/*#__PURE__*/_jsx(Button,{settings:button,primary:true,onClick:onAcceptAll,id:\"accept\",children:button.labels.acceptAll})]})})]});}function Option({title,titleColor,description,descriptionColor,showDescription,enabled,optional,onClick,theme}){const paddingValue=theme.paddingPerSide?`${theme.paddingTop}px ${theme.paddingRight}px ${theme.paddingBottom}px ${theme.paddingLeft}px`:`${theme.padding}px`;const borderShadow=theme.border?`inset 0 0 0 ${theme.border.width}px ${theme.border.color}`:null;return /*#__PURE__*/_jsxs(motion.div,{style:{boxShadow:borderShadow,background:theme.background,borderRadius:theme.border.radius,padding:paddingValue,cursor:\"pointer\",userSelect:\"none\",pointerEvents:\"all\"},onClick:onClick,whileHover:{opacity:.5},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontWeight:600,fontSize:12,color:titleColor,...theme.fontTitle},children:title}),optional?/*#__PURE__*/_jsx(Suspense,{children:/*#__PURE__*/_jsx(Toggle,{variant:enabled?\"On\":\"Off\",background:theme.toggleColor,backgroundInactive:theme.toggleColorInactive})}):/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:12,color:theme.toggleColor,...theme.fontTitle,fontWeight:400},children:\"Always active\"})]}),description&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,marginTop:10,fontSize:12,lineHeight:1.5,color:descriptionColor,...theme.fontBody},children:description})]});}function Headline({children,style}){return /*#__PURE__*/_jsx(\"p\",{style:{fontSize:14,margin:\"0px 0px 10px 0px\",fontWeight:\"bold\",padding:0,...style},children:children});}function Description({style,description,policy,linkColor}){const shouldShow=description||policy?.link;if(!shouldShow)return null;if(!description){return /*#__PURE__*/_jsx(DescriptionParagraph,{policy:policy,style:style,linkColor:linkColor});}// @ivan: Support rendering the description in multiple paragraphs.\n// This is a site speed optimization: it allows to split a single\n// huge <p> into several smaller ones, which prevents the huge <p>\n// from becoming an LCP element.\nconst descriptionParagraphs=description?.split(\"\\n\\n\");return description.split(\"\\n\\n\").map((line,index)=>/*#__PURE__*/_jsx(DescriptionParagraph,{line:line,// Only render the policy in the last paragraph\n    policy:index===descriptionParagraphs.length-1?policy:null,style:{// Add a spacing between paragraphs\n    marginTop:index>0?4:0,...style},linkColor:linkColor},index));}function DescriptionParagraph({line,policy,style,linkColor}){return /*#__PURE__*/_jsxs(\"p\",{style:{lineHeight:1.5,margin:0,padding:0,fontSize:14,...style},children:[line,line&&policy?.link?\" \":null,policy?.link&&/*#__PURE__*/_jsxs(\"span\",{children:[policy?.prefix,\" \",/*#__PURE__*/_jsx(\"a\",{href:policy?.link,target:\"_blank\",style:{color:linkColor,textDecoration:\"none\"},children:policy?.label}),\".\"]})]});}function Buttons({children,direction}){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:direction,gap:10,marginTop:16},children:children});}const Button=withCSS(function Button({id,children,primary,settings,onClick}){const paddingValue=settings.paddingPerSide?`${settings.paddingTop}px ${settings.paddingRight}px ${settings.paddingBottom}px ${settings.paddingLeft}px`:`${settings.padding}px`;const theme=primary?settings.primary:settings.secondary;return /*#__PURE__*/_jsx(motion.input,{className:\"__framer-cookie-component-button\",id:`__framer-cookie-component-button-${id}`,onClick:onClick,type:\"button\",value:`${children}`,whileHover:{opacity:settings.hoverOpacity??.6},whileTap:{opacity:settings.tapOpacity??.4},style:{WebkitAppearance:\"none\",appearance:\"none\",width:settings.fluid?\"100%\":\"auto\",height:\"auto\",border:\"none\",padding:paddingValue,borderRadius:settings.borderRadius,boxShadow:getShadow(theme.shadow),background:theme.fill,color:theme.color,fontSize:14,lineHeight:1,cursor:\"pointer\",fontWeight:settings.font?\"unset\":600,...settings.font}});},\".__framer-cookie-component-button:focus:not(:focus-visible){outline-color:transparent}\");\nexport const __FramerMetadata__ = {\"exports\":{\"BannerComponentProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Banner\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Banner.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsOnFramerCanvas,withCSS}from\"framer\";import{AnimatePresence,isBrowser,motion}from\"framer-motion\";import{lazy,Suspense,useEffect,useState}from\"react\";import{createPortal}from\"react-dom\";import{defaultConsent,useConsent}from\"https://framerusercontent.com/modules/zvf2WTzc98u6EX2y7YDj/7Vzkp1ORK9zU9dYiZ1fu/consent.js\";import{useRegion}from\"https://framerusercontent.com/modules/0oeZpJVursioGAbwgB9e/nrn5valPIfiaZFRgtVW3/region.js\";import{Banner}from\"https://framerusercontent.com/modules/EkwkxVF9vkTs720qqBC8/6ViXEDlSyuNyc0Na4Rzv/Banner.js\";import{inEU}from\"https://framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/wTCMOQdBhrD1LTpkwItL/inEU.js\";import{DEFAULT_FONT_FAMILY,getFlexboxValues,interactionResponse,yieldBeforeCb}from\"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/hLcdFz4t8UjInDMvzq41/utils.js\";// Keep track of open state between page reloads\nlet initiallyOpen=false;/**\n * COOKIE BANNER\n * By Floris Verloop\n *\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n *\n * @framerDisableUnlink\n *\n */export default function CookieBanner({gtmId,preview,trigger,banner,button,content,options,style,gtmLoadedExternally,onShown,onConsentChange,onAccept,onDismiss,onReject,onSavePreferences}){const isOnFramerCanvas=useIsOnFramerCanvas();const isPreview=preview&&isOnFramerCanvas;const skipLogic=!preview&&isOnFramerCanvas;const isInEU=isBrowser?inEU():false;const region=useRegion({content,useRegionFromProps:isPreview,// skip EU check (expensive) if we are on the canvas and don't want a preview\nskipEUCheck:skipLogic});const consent=useConsent({gtmId,defaultConsent:region.defaults,gtmLoadedExternally});const[isOpen,setIsOpen]=useState(initiallyOpen);// On page switch, disable all transitions so the banner shows up as fast as possible.\nconst[instantlyShowOnMount,setInstantlyShowOnMount]=useState(initiallyOpen);useEffect(()=>{if(skipLogic)return;// Save open state between page switches\ninitiallyOpen=isOpen;// Disable instantly show on mount after first open\nif(isOpen){setInstantlyShowOnMount(false);}// Track shown event\nif(isOpen&&!isPreview&&onShown){yieldBeforeCb(()=>onShown({isInEU}),{priority:\"user-blocking\"});}},[isOpen,skipLogic]);// Check if user should be prompted\nuseEffect(()=>{if(skipLogic)return;const noConsentGiven=consent.isInitialized&&!consent.isDismissed;const shouldAutoAccept=region.type===\"simple\"&&!consent.isAutoAccepted;if(noConsentGiven){performance.mark(\"framer-cookie-open\");setIsOpen(true);/** Automatically accept all cookies for simple banner. */if(shouldAutoAccept){consent.autoAccept();// Fire callback\nif(onAccept){yieldBeforeCb(()=>onAccept({isInEU}));}}}if(consent.isDismissed){setIsOpen(false);}},[consent.isInitialized,consent.isDismissed,skipLogic]);useEffect(()=>{if(skipLogic)return;if(onConsentChange){yieldBeforeCb(()=>onConsentChange({isInEU,consent:consent.modes}));}},[consent.modes,skipLogic]);async function handleDismiss(){await interactionResponse();consent.dismiss();setIsOpen(false);// Fire callback\nif(onDismiss){yieldBeforeCb(()=>onDismiss({isInEU}));}}async function handleAcceptAll(){await interactionResponse();consent.acceptAll();setIsOpen(false);// Fire callback\nif(onAccept){yieldBeforeCb(()=>onAccept({isInEU}));}}async function handleRejectAll(){await interactionResponse();consent.rejectAll();setIsOpen(false);// Fire callback\nif(onReject){yieldBeforeCb(()=>onReject({isInEU}));}}async function handleAcceptCurrent(){await interactionResponse();consent.acceptCurrent();setIsOpen(false);// Fire callbacks\nyieldBeforeCb(()=>{if(onAccept){onAccept({isInEU});}});yieldBeforeCb(()=>{if(onSavePreferences){onSavePreferences({isInEU});}});}if(isPreview){return /*#__PURE__*/_jsx(\"div\",{style:{...style,width:banner.width},children:/*#__PURE__*/_jsx(Banner,{banner:banner,button:button,region:region,options:options,previewOptions:isPreview&&options.preview,consentModes:{...defaultConsent,necessary:true},animateOnMount:false})});}return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Trigger,{style:style,trigger:trigger,onClick:()=>setIsOpen(true)}),!skipLogic&&/*#__PURE__*/_jsx(Overlay,{banner:banner,button:button,region:region,options:options,consentModes:consent.modes,animateOnMount:!instantlyShowOnMount,onAcceptAll:handleAcceptAll,onAcceptCurrent:handleAcceptCurrent,onRejectAll:handleRejectAll,onDismiss:handleDismiss,onToggleConsent:consent.toggleMode,isOpen:isOpen})]});}const IconCookie=/*#__PURE__*/lazy(()=>import(\"https://framerusercontent.com/modules/80EyUU0Nk6u7skW3IlHH/qKhU3oZiLDe4R0LcF3Tp/Icons.js\"));function Overlay(props){const insetValue=props.banner.insetPerSide?`${props.banner.insetTop}px ${props.banner.insetRight}px ${props.banner.insetBottom}px ${props.banner.insetLeft}px`:`${props.banner.inset}px`;const{justifyContent,alignItems}=getFlexboxValues(props.banner.position);const isOpen=props.isOpen;const[shouldRenderPortal,setShouldRenderPortal]=useState(isOpen);// if the portal has previously been rendered, we want to keep rendering the portal, which ensures:\n// - that AnimatePresence works (fade out effect)\n// - we don't cause body style recalc/reflow when the DOM node is removed\nif(!shouldRenderPortal&&isOpen)setShouldRenderPortal(isOpen);if(!shouldRenderPortal)return null;const blocking=props.region.blocking;return /*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{style:{display:\"contents\"},children:/*#__PURE__*/_jsx(AnimatePresence,{children:isOpen?/*#__PURE__*/_jsxs(motion.div,{style:{// We only need to span to the full viewport width if the overlay is blocking.\n// Otherwise, we optimize for a smaller layer size. see: https://framer-team.slack.com/archives/C05V49Q4NJ2/p1709820207863249\ntop:blocking||alignItems===\"flex-start\"?0:undefined,left:blocking||justifyContent===\"flex-start\"?0:undefined,right:blocking||justifyContent===\"flex-end\"?0:undefined,height:blocking?\"100%\":undefined,width:blocking||justifyContent===\"center\"?\"100%\":undefined,bottom:blocking||alignItems===\"flex-end\"?0:undefined,boxSizing:\"border-box\",position:\"fixed\",touchAction:\"none\",padding:insetValue,zIndex:props.banner.zIndex,display:\"flex\",flexDirection:\"row\",gap:20,justifyContent:\"center\",pointerEvents:blocking?\"all\":\"none\"},children:[blocking&&/*#__PURE__*/_jsx(Backdrop,{color:props.banner.style?.backdrop}),/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",justifyContent,alignItems,pointerEvents:\"none\",maxWidth:props.banner.containerWidth>0?props.banner.containerWidth:\"unset\"},children:/*#__PURE__*/_jsx(Banner,{...props})})]}):null})}),document.body);}const Trigger=withCSS(({trigger,style,onClick})=>{const isOnFramerCanvas=useIsOnFramerCanvas();if(trigger.type!==\"none\"){return /*#__PURE__*/_jsx(\"button\",{className:\"__framer-cookie-component-button\",\"aria-label\":\"Cookie Trigger\",style:{width:\"100%\",height:\"100%\",background:\"none\",display:\"flex\",border:\"none\",padding:0,color:trigger.color,fontSize:16,cursor:\"pointer\",...trigger.textFont},onClick:onClick,children:trigger.type===\"icon\"?/*#__PURE__*/_jsx(_Fragment,{children:trigger.iconType===\"custom\"&&trigger.iconImage?/*#__PURE__*/_jsx(\"img\",{alt:\"icon entry point for Site Search\",src:trigger.iconImage.src,width:trigger.iconSize,height:trigger.iconSize}):/*#__PURE__*/_jsx(Suspense,{children:/*#__PURE__*/_jsx(IconCookie,{width:trigger.iconSize,height:trigger.iconSize,color:trigger.color})})}):/*#__PURE__*/_jsx(\"span\",{style:{whiteSpace:\"nowrap\"},children:trigger.text})});}if(isOnFramerCanvas){return /*#__PURE__*/_jsxs(\"div\",{style:{borderRadius:8,color:\"#09F\",border:\"1px dashed #09F\",background:\"rgba(0, 153, 255, 0.1)\",padding:20,display:\"flex\",flexDirection:\"column\",gap:5,fontFamily:DEFAULT_FONT_FAMILY,textAlign:\"center\",justifyContent:\"center\",width:164,...style},children:[/*#__PURE__*/_jsx(\"p\",{style:{fontSize:12,fontWeight:600,lineHeight:1,margin:0},children:\"Cookie Banner\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:12,lineHeight:1.5,margin:0},children:\"Put on a page to add a Cookie Banner.\"})]});}},\".__framer-cookie-component-button:focus:not(:focus-visible){outline-color:transparent}\",\"framer-lib-cookie-trigger\");function Backdrop({color}){return /*#__PURE__*/_jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},style:{position:\"absolute\",top:0,left:0,right:0,bottom:0,width:\"100%\",height:\"100%\",backgroundColor:color,pointerEvents:\"none\"}});}addPropertyControls(CookieBanner,{gtmId:{title:\"GTM ID\",type:ControlType.String,placeholder:\"GTM-AAAAAAA\",description:\"Your GTM container ID.\\n[Learn more](https://www.framer.com/learn/cookie-banner/)\"},preview:{type:ControlType.Boolean,defaultValue:true,description:\"Lets you preview the banner on the Canvas.\"},trigger:{type:ControlType.Object,buttonTitle:\"Icon, Text\",controls:{type:{title:\"Type\",type:ControlType.Enum,options:[\"text\",\"icon\",\"none\"],optionTitles:[\"Text\",\"Icon\",\"None\"],defaultValue:\"text\",displaySegmentedControl:true},iconType:{title:\"Icon\",type:ControlType.Enum,options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Custom\"],displaySegmentedControl:true,hidden:props=>props.type!==\"icon\"},text:{title:\"Label\",type:ControlType.String,defaultValue:\"Cookie Settings\",hidden:props=>props.type!==\"text\"},textFont:{// @ts-ignore - internal\ntype:ControlType.Font,title:\" \",controls:\"extended\",hidden:props=>props.type!==\"text\"},iconSize:{title:\"Size\",type:ControlType.Number,displayStepper:true,defaultValue:24,hidden:props=>props.type!==\"icon\"},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"#333\",hidden:props=>props.type===\"none\"||props.type===\"icon\"&&props.iconType===\"custom\"},iconImage:{title:\"File\",type:ControlType.ResponsiveImage,allowedFileTypes:[\"jpg\",\"png\",\"svg\"],hidden:props=>props.iconType===\"default\"}}},banner:{title:\"Banner\",type:ControlType.Object,buttonTitle:\"Font, Styles\",controls:{position:{type:ControlType.Enum,title:\"Position\",options:[\"top-left\",\"top-center\",\"top-right\",\"bottom-right\",\"bottom-center\",\"bottom-left\"],optionTitles:[\"Top Left\",\"Top Center\",\"Top Right\",\"Bottom Right\",\"Bottom Center\",\"Bottom Left\"],defaultValue:\"bottom-right\"},zIndex:{title:\"Z Index\",type:ControlType.Number,defaultValue:10,displayStepper:true,min:0,max:10},width:{title:\"Width\",type:ControlType.Number,defaultValue:360,min:200,max:1e3,displayStepper:true,step:5},containerWidth:{title:\"Wrapping\",type:ControlType.Number,defaultValue:0,min:0},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:20,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},inset:{title:\"Inset\",type:ControlType.FusedNumber,toggleKey:\"insetPerSide\",toggleTitles:[\"Inset\",\"Inset per side\"],defaultValue:20,valueKeys:[\"insetTop\",\"insetRight\",\"insetBottom\",\"insetLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},style:{type:ControlType.Object,title:\"Style\",buttonTitle:\"Fonts, Colors, Shadow\",controls:{fontTitle:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Title\",controls:\"extended\"},colorTitle:{title:\" \",type:ControlType.Color,defaultValue:\"#000\"},fontBody:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Body\",controls:\"extended\"},colorBody:{title:\" \",type:ControlType.Color,defaultValue:\"#444\"},fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#FFF\"},link:{title:\"Link\",type:ControlType.Color,optional:true,defaultValue:\"#999\"},border:{type:ControlType.Object,title:\"Border\",buttonTitle:\"Radius, Width\",controls:{radius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:14},width:{title:\"Width\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:1},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.05)\"}}},shadow:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"X\",type:ControlType.Number,min:-100,max:100,defaultValue:0},shadowY:{title:\"Y\",type:ControlType.Number,min:-100,max:100,defaultValue:2},shadowBlur:{title:\"Blur\",type:ControlType.Number,min:0,max:100,defaultValue:4}}},backdrop:{title:\"Backdrop\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.1)\",hidden:(_,props)=>!props.content.euBlocking&&!props.content.worldBlocking}}},animation:{icon:\"effect\",buttonTitle:\"Options\",type:ControlType.Object,controls:{x:{type:ControlType.Number,displayStepper:true,defaultValue:0},y:{type:ControlType.Number,displayStepper:true,defaultValue:10},scale:{type:ControlType.Number,min:0,step:.1,defaultValue:1},transition:{type:ControlType.Transition}}}}},button:{title:\"Buttons\",type:ControlType.Object,buttonTitle:\"Variants, Style\",controls:{primary:{title:\"Primary\",type:ControlType.Object,buttonTitle:\"Colors, Shadow\",controls:{fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#000\"},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"#FFF\"},shadow:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"X\",type:ControlType.Number,min:-100,max:100},shadowY:{title:\"Y\",type:ControlType.Number,min:-100,max:100},shadowBlur:{title:\"Blur\",type:ControlType.Number,min:0,max:100}}}}},secondary:{title:\"Secondary\",type:ControlType.Object,buttonTitle:\"Colors, Shadow\",controls:{fill:{title:\"Fill\",type:ControlType.Color,defaultValue:\"#EEE\"},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"#444\"},shadow:{type:ControlType.Object,title:\"Shadow\",optional:true,controls:{shadowColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.25)\"},shadowX:{title:\"X\",type:ControlType.Number,min:-100,max:100},shadowY:{title:\"Y\",type:ControlType.Number,min:-100,max:100},shadowBlur:{title:\"Blur\",type:ControlType.Number,min:0,max:100}}}}},labels:{type:ControlType.Object,controls:{accept:{type:ControlType.String,defaultValue:\"Accept\"},reject:{type:ControlType.String,defaultValue:\"Reject\"},acceptAll:{type:ControlType.String,defaultValue:\"Accept all\"},rejectAll:{type:ControlType.String,defaultValue:\"Reject all\"},customize:{type:ControlType.String,defaultValue:\"Customize\"},save:{type:ControlType.String,defaultValue:\"Save Preferences\"},confirm:{type:ControlType.String,defaultValue:\"Okay\"}}},font:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Font\",controls:\"extended\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:10,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},tapOpacity:{title:\"Tap Opacity\",type:ControlType.Number,step:.1,displayStepper:true,max:1,min:0,defaultValue:.4},hoverOpacity:{title:\"Hover Opacity\",type:ControlType.Number,step:.1,displayStepper:true,max:1,min:0,defaultValue:.6},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"row\",\"column\"],// @ts-ignore - internal\noptionIcons:[\"direction-horizontal\",\"direction-vertical\"],defaultValue:\"row\",displaySegmentedControl:true},fluid:{title:\"Fluid\",type:ControlType.Boolean,defaultValue:true}}},content:{title:\"Regions\",type:ControlType.Object,buttonTitle:\"World, EU\",controls:{isEU:{title:\" \",type:ControlType.Boolean,defaultValue:true,enabledTitle:\"EU\",disabledTitle:\"World\"},euType:{title:\"Choices\",type:ControlType.Enum,options:[\"simple\",\"medium\",\"advanced\"],optionTitles:[\"None\",\"Accept/Reject\",\"Customizable\"],defaultValue:\"medium\",hidden:props=>!props.isEU},euTitle:{title:\"Title\",type:ControlType.String,defaultValue:\"Cookie Settings\",hidden:props=>props.euType===\"simple\"||!props.isEU},euDescription:{title:\"Description\",type:ControlType.String,defaultValue:\"We use cookies to enhance your experience, analyze site traffic and deliver personalized content.\",displayTextArea:true,hidden:props=>!props.isEU},euPolicy:{title:\"Policy\",type:ControlType.Object,buttonTitle:\"Link, Prefix\",controls:{link:{title:\"Link\",type:ControlType.Link,defaultValue:\"https://www.framer.com/legal/policy/\"},prefix:{title:\"Prefix\",type:ControlType.String,defaultValue:\"Read our\"},label:{title:\"Label\",type:ControlType.String,defaultValue:\"Cookie Policy\"}},hidden:props=>!props.isEU},euDefaults:{title:\"Defaults\",buttonTitle:\"Options\",type:ControlType.Object,controls:{necessary:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},preferences:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:false},analytics:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:false},marketing:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:false,description:\"The default consent when the user hasn’t provided any yet.\"}},hidden:props=>!props.isEU},euShowReject:{title:\"Reject All\",type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",hidden:props=>props.euType!==\"advanced\"},euBlocking:{title:\"Blocking\",type:ControlType.Boolean,defaultValue:false,description:\"Renders a content blocking backdrop.\",hidden:props=>!props.isEU},worldType:{title:\"Choices\",type:ControlType.Enum,options:[\"simple\",\"medium\",\"advanced\"],optionTitles:[\"None\",\"Accept/Reject\",\"Customizable\"],defaultValue:\"simple\",hidden:props=>props.isEU},worldTitle:{title:\"Title\",type:ControlType.String,defaultValue:\"Cookie Settings\",hidden:props=>props.worldType===\"simple\"||props.isEU},worldDescription:{title:\"Description\",type:ControlType.String,defaultValue:\"We use cookies to personalize content, run ads, and analyze traffic.\",displayTextArea:true,hidden:props=>props.isEU},worldPolicy:{title:\"Policy\",type:ControlType.Object,buttonTitle:\"Link, Prefix\",controls:{link:{title:\"Link\",type:ControlType.Link},prefix:{title:\"Prefix\",type:ControlType.String,defaultValue:\"Read our\"},label:{title:\"Label\",type:ControlType.String,defaultValue:\"Cookie Policy\"}},hidden:props=>props.isEU},worldDefaults:{title:\"Defaults\",buttonTitle:\"Options\",type:ControlType.Object,controls:{necessary:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},preferences:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},analytics:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true},marketing:{type:ControlType.Boolean,enabledTitle:\"Granted\",disabledTitle:\"Denied\",defaultValue:true,description:\"The default consent when the user hasn’t provided any yet.\"}},hidden:props=>props.isEU},worldShowReject:{title:\"Reject All\",type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",hidden:props=>props.worldType!==\"advanced\"},worldBlocking:{title:\"Blocking\",type:ControlType.Boolean,defaultValue:false,description:\"Renders a content blocking backdrop.\",hidden:props=>props.isEU}}},options:{type:ControlType.Object,buttonTitle:\"Content, Styles\",hidden:(_,props)=>props.content.euType!==\"advanced\"&&props.content.worldType!==\"advanced\",controls:{preview:{type:ControlType.Boolean,defaultValue:false,description:\"Open when previewing banner on the canvas.\",hidden:(_,props)=>!props.preview},necessary:{title:\"Necessary\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Necessary\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables security and basic functionality.\",displayTextArea:true},optional:{title:\"Optional\",type:ControlType.Boolean,defaultValue:true}}},preferences:{title:\"Preferences\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Preferences\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables personalized content and settings.\",displayTextArea:true,optional:true}}},analytics:{title:\"Analytics\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Analytics\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables tracking of performance.\",displayTextArea:true}}},marketing:{title:\"Marketing\",type:ControlType.Object,buttonTitle:\"Content\",controls:{title:{title:\"Title\",type:ControlType.String,defaultValue:\"Marketing\"},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Enables ads personalization and tracking.\",displayTextArea:true}}},style:{type:ControlType.Object,title:\"Style\",buttonTitle:\"Fonts, Colors\",controls:{fontTitle:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Title\",controls:\"basic\"},fontBody:{// @ts-ignore - internal\ntype:ControlType.Font,title:\"Body\",controls:\"basic\"},background:{title:\"Background\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.02)\"},border:{type:ControlType.Object,title:\"Border\",buttonTitle:\"Radius, Width\",controls:{radius:{title:\"Radius\",type:ControlType.Number,displayStepper:true,min:0,defaultValue:8},width:{title:\"Width\",type:ControlType.Number,displayStepper:true},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.02)\"}}},toggleColor:{title:\"On\",type:ControlType.Color,defaultValue:\"#000\"},toggleColorInactive:{title:\"Off\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.1)\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],defaultValue:12,valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0}}}}}});CookieBanner.displayName=\"Cookie Banner\";\nexport const __FramerMetadata__ = {\"exports\":{\"CookieBannerProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"CookieBanner\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"*\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\",\"framerSupportedLayoutWidth\":\"auto\"}},\"ContentProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PolicyProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ContentType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ButtonsProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"OptionsStyle\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useReducer,useState}from\"react\";import{ControlType,addPropertyControls}from\"framer\";import{useIsOnCanvas,emptyStateStyle,containerStyles,defaultEvents,useRadius,borderRadiusControl}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";var PlayOptions;(function(PlayOptions){PlayOptions[\"Normal\"]=\"Off\";PlayOptions[\"Auto\"]=\"On\";PlayOptions[\"Loop\"]=\"Loop\";})(PlayOptions||(PlayOptions={}));var ThumbnailOptions;(function(ThumbnailOptions){ThumbnailOptions[\"High\"]=\"High Quality\";ThumbnailOptions[\"Medium\"]=\"Medium Quality\";ThumbnailOptions[\"Low\"]=\"Low Quality\";ThumbnailOptions[\"Off\"]=\"Off\";})(ThumbnailOptions||(ThumbnailOptions={}));/**\n * @framerIntrinsicWidth 560\n * @framerIntrinsicHeight 315\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n *\n * @framerComponentPresetProps isRed, borderRadius\n */export function Youtube({url,play,shouldMute,thumbnail,isRed,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,title,...props}){const onCanvas=useIsOnCanvas();const isAutoplay=play!==\"Off\";const showThumbnail=onCanvas||thumbnail!==\"Off\"&&!isAutoplay;const[isPreloading,preloadVideo]=useReducer(()=>true,false);const[showVideo,startVideo]=useReducer(()=>true,!showThumbnail);const[isHovered,setHovered]=useState(false);const borderRadius=useRadius(props);const hasBorderRadius=borderRadius!==\"0px 0px 0px 0px\"&&borderRadius!==\"0px\";if(url===\"\"){return /*#__PURE__*/_jsx(Instructions,{});}const parsedURL=parseVideoURL(url);if(parsedURL===undefined){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"Invalid Youtube URL.\"});}const[videoId,embedURL,originalSearchParams]=parsedURL;const searchParams=embedURL.searchParams;if(originalSearchParams){for(const[param,value]of originalSearchParams){searchParams.set(param,value);if(param===\"t\")searchParams.set(\"start\",value)// embeds have to use `start`, but copying via right-click usually gives you `t=`\n;}}// https://developers.google.com/youtube/player_parameters\nsearchParams.set(\"iv_load_policy\",\"3\");searchParams.set(\"rel\",\"0\");searchParams.set(\"modestbranding\",\"1\");searchParams.set(\"playsinline\",\"1\");if(!showVideo){// if a browser does not support `loading=lazy`, make sure the video doesn't start playing in the background\nsearchParams.set(\"autoplay\",\"0\");}else if(isAutoplay||// when there is no thumbnail, we don't want to autoplay, unless video is started\nshowThumbnail&&showVideo){searchParams.set(\"autoplay\",\"1\");}if(isAutoplay&&shouldMute){searchParams.set(\"mute\",\"1\");}if(play===\"Loop\"){searchParams.set(\"loop\",\"1\");searchParams.set(\"playlist\",videoId);}if(!isRed){searchParams.set(\"color\",\"white\");}const iframeProps={title:title||\"Youtube Video\",allow:\"presentation; fullscreen; accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\",src:embedURL.href,frameBorder:\"0\",onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp};return /*#__PURE__*/_jsxs(\"article\",{onPointerEnter:()=>setHovered(true),onPointerLeave:()=>setHovered(false),onPointerOver:preloadVideo,onKeyDown:startVideo,onClick:startVideo,style:{...wrapperStyle,borderRadius,transform:// Safari sometimes struggles to render border-radius:\n// - on the canvas when changing from 0 to any other value\n// - or when rendering an iframe\nhasBorderRadius&&(showVideo||onCanvas)?\"translateZ(0.000001px)\":\"unset\",cursor:\"pointer\",overflow:\"hidden\"},role:\"presentation\",children:[isPreloading&&/*#__PURE__*/_jsx(\"link\",{rel:\"preconnect\",href:\"https://www.youtube.com\"}),isPreloading&&/*#__PURE__*/_jsx(\"link\",{rel:\"preconnect\",href:\"https://www.google.com\"}),showThumbnail&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"link\",{rel:\"preconnect\",href:\"https://i.ytimg.com\"}),/*#__PURE__*/_jsx(\"img\",{decoding:\"async\",src:getThumbnailURL(videoId,thumbnail),style:{...videoStyle,objectFit:\"cover\"}})]}),!onCanvas?/*#__PURE__*/_jsx(\"iframe\",{loading:!showVideo?\"lazy\":undefined,style:!showVideo?{...videoStyle,display:\"none\"}:videoStyle,...iframeProps}):null,showVideo?null:/*#__PURE__*/_jsx(PlayButton,{onClick:startVideo,isHovered:isHovered,isRed:isRed})]});}Youtube.displayName=\"YouTube\";addPropertyControls(Youtube,{url:{type:ControlType.String,title:\"Video\"},play:{type:ControlType.Enum,title:\"Autoplay\",options:Object.values(PlayOptions)},shouldMute:{title:\"Mute\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",hidden(props){return props.play===\"Off\";}},thumbnail:{title:\"Thumbnail\",description:\"Showing a thumbnail improves performance.\",type:ControlType.Enum,options:Object.values(ThumbnailOptions),hidden(props){return props.play!==\"Off\";}},isRed:{title:\"Color\",type:ControlType.Boolean,enabledTitle:\"Red\",disabledTitle:\"White\"},...borderRadiusControl,...defaultEvents});const defaultProps={url:\"https://youtu.be/8AHPXm9Y6mI\",play:\"Off\",shouldMute:true,thumbnail:\"Medium Quality\",isRed:true};Youtube.defaultProps=defaultProps;function parseVideoURL(urlString){let url;try{url=new URL(urlString);}catch{const embedURL=getEmbedURL(urlString);return[urlString,embedURL,null];}const searchParams=url.searchParams;if(url.hostname===\"youtube.com\"||url.hostname===\"www.youtube.com\"||url.hostname===\"youtube-nocookie.com\"||url.hostname===\"www.youtube-nocookie.com\"){const pathSegments=url.pathname.slice(1).split(\"/\");const page=pathSegments[0];// https://www.youtube.com/watch?v=Fop2oskTug8\nif(page===\"watch\"){const videoId=url.searchParams.get(\"v\");const embedURL=getEmbedURL(videoId);return[videoId,embedURL,searchParams];}// https://www.youtube.com/embed/Fop2oskTug8\nif(page===\"embed\"){const videoId=pathSegments[1];return[videoId,url,searchParams];}// https://www.youtube.com/shorts/zwMEhBq4kYM / https://www.youtube.com/live/XlWSzaluBKk\nif(page===\"shorts\"||page===\"live\"){const videoId=pathSegments[1];const embedURL=getEmbedURL(videoId);return[videoId,embedURL,searchParams];}}// https://youtu.be/Fop2oskTug8\nif(url.hostname===\"youtu.be\"){const videoId=url.pathname.slice(1);const embedURL=getEmbedURL(videoId);return[videoId,embedURL,searchParams];}}function getEmbedURL(videoId){return new URL(`https://www.youtube.com/embed/${videoId}`);}function getThumbnailURL(videoId,res){// https://gist.github.com/a1ip/be4514c1fd392a8c13b05e082c4da363\nconst pre=\"https://i.ytimg.com/vi_webp/\";const ext=\"webp\";switch(res){case\"Low Quality\":return`${pre}${videoId}/hqdefault.${ext}`;case\"Medium Quality\":return`${pre}${videoId}/sddefault.${ext}`;case\"High Quality\":return`${pre}${videoId}/maxresdefault.${ext}`;default:return`${pre}${videoId}/0.${ext}`;}}// Helper components\nfunction Instructions(){return /*#__PURE__*/_jsx(\"div\",{style:{...emptyStateStyle,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"To embed a Youtube video, add the URL to the properties\\xa0panel.\"})});}function ErrorMessage({message}){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-errorPlaceholder\",style:{...containerStyles,overflow:\"hidden\"},children:/*#__PURE__*/_jsxs(\"div\",{style:centerTextStyle,children:[\"Error: \",message]})});}function PlayButton({onClick,isHovered,isRed}){return /*#__PURE__*/_jsx(\"button\",{onClick:onClick,\"aria-label\":\"Play\",style:buttonStyle,children:/*#__PURE__*/_jsxs(\"svg\",{height:\"100%\",version:\"1.1\",viewBox:\"0 0 68 48\",width:\"100%\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M66.52,7.74c-0.78-2.93-2.49-5.41-5.42-6.19C55.79,.13,34,0,34,0S12.21,.13,6.9,1.55 C3.97,2.33,2.27,4.81,1.48,7.74C0.06,13.05,0,24,0,24s0.06,10.95,1.48,16.26c0.78,2.93,2.49,5.41,5.42,6.19 C12.21,47.87,34,48,34,48s21.79-0.13,27.1-1.55c2.93-0.78,4.64-3.26,5.42-6.19C67.94,34.95,68,24,68,24S67.94,13.05,66.52,7.74z\",fill:isHovered?isRed?\"#f00\":\"#000\":\"#212121\",fillOpacity:isHovered?isRed?1:.8:.8,style:{transition:\"fill .1s cubic-bezier(0.4, 0, 1, 1), fill-opacity .1s cubic-bezier(0.4, 0, 1, 1)\"}}),/*#__PURE__*/_jsx(\"path\",{d:\"M 45,24 27,14 27,34\",fill:\"#fff\"})]})});}const buttonStyle={position:\"absolute\",top:\"50%\",left:\"50%\",transform:\"translate(-50%, -50%)\",width:68,height:48,padding:0,border:\"none\",background:\"transparent\",cursor:\"pointer\"};const wrapperStyle={position:\"relative\",width:\"100%\",height:\"100%\"};const centerTextStyle={textAlign:\"center\",minWidth:140};const videoStyle={position:\"absolute\",top:0,left:0,height:\"100%\",width:\"100%\"};\nexport const __FramerMetadata__ = {\"exports\":{\"Youtube\":{\"type\":\"reactComponent\",\"name\":\"Youtube\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"315\",\"framerIntrinsicWidth\":\"560\",\"framerComponentPresetProps\":\"isRed, borderRadius\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./YouTube.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useEffect,useRef}from\"react\";import{motion}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";const CounterStyles={container:{display:\"flex\",justifyContent:\"left\",alignItems:\"left\"}};export function Counter(props){const{start,end,speed,gapSize,prefixText,suffixText,prefixFont,suffixFont,prefixColor,suffixColor,loop,decimalSeparatorType,textSize,selectedFont,textColor,startOnViewport,restartOnViewport,incrementType,multiplier}=props;const[count,setCount]=useState(start);const[isVisible,setIsVisible]=useState(false);const containerRef=useRef(null);useEffect(()=>{const observer=new IntersectionObserver(entries=>{const entry=entries[0];setIsVisible(entry.isIntersecting);});if(containerRef.current){observer.observe(containerRef.current);}return()=>{if(containerRef.current){observer.unobserve(containerRef.current);}};},[]);useEffect(()=>{const updateCount=()=>{const increment=incrementType===\"integer\"?multiplier:multiplier/10;setCount(prevCount=>{const nextCount=parseFloat((prevCount+increment).toFixed(2));return nextCount>=end?end:nextCount;});};if(isVisible||!startOnViewport&&start!==end){const intervalId=setInterval(updateCount,speed);return()=>{clearInterval(intervalId);};}else if(startOnViewport&&isVisible){setCount(start);}},[count,start,end,loop,isVisible,speed,startOnViewport,incrementType,multiplier]);useEffect(()=>{if(restartOnViewport&&isVisible){setCount(start);}},[isVisible,restartOnViewport,start]);const formatNumber=number=>{if(decimalSeparatorType===\"comma\"){return number.toLocaleString(\"en-US\");}else if(decimalSeparatorType===\"period\"){return number.toLocaleString(\"en-US\").replace(/,/g,\".\");}else{return number.toFixed(incrementType===\"integer\"?0:1);}};return /*#__PURE__*/_jsxs(motion.div,{ref:containerRef,style:{...CounterStyles.container,gap:`${gapSize}px`,flexDirection:\"row\",alignItems:\"center\",fontSize:`${textSize}px`,fontFamily:selectedFont.fontFamily,fontWeight:selectedFont.fontWeight,color:textColor},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:prefixFont.fontFamily,fontWeight:prefixFont.fontWeight,color:prefixColor},children:prefixText}),/*#__PURE__*/_jsx(\"span\",{children:formatNumber(count)}),/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:suffixFont.fontFamily,fontWeight:suffixFont.fontWeight,color:suffixColor},children:suffixText})]});}Counter.defaultProps={start:0,end:100,speed:100,prefixText:\"\",suffixText:\"\",loop:false,decimalSeparatorType:\"comma\",textSize:36,selectedFont:{fontFamily:\"Inter\",fontWeight:500,systemFont:true},textColor:\"#D3D3D3\",startOnViewport:false,incrementType:\"integer\",multiplier:2};addPropertyControls(Counter,{startOnViewport:{type:ControlType.Boolean,title:\"Viewport\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},restartOnViewport:{type:ControlType.Boolean,title:\"Replay\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},selectedFont:{title:\"Font\",type:ControlType.Font,defaultValue:{fontFamily:\"Inter\",fontWeight:500,systemFont:true}},textSize:{title:\"Font Size\",type:ControlType.Number,min:8,max:240,step:1},textColor:{type:ControlType.Color,title:\"Font Color\"},start:{type:ControlType.Number,title:\"Start Number\",defaultValue:0,displayStepper:true},end:{type:ControlType.Number,title:\"End Number\",defaultValue:10,displayStepper:true},decimalSeparatorType:{type:ControlType.Enum,title:\"Separator\",defaultValue:\"comma\",options:[\"comma\",\"period\",\"none\"],optionTitles:[\"Comma (1,000)\",\"Decimal (1.000)\",\"None\"]},incrementType:{type:ControlType.Enum,title:\"Increment Type\",defaultValue:\"integer\",options:[\"integer\",\"decimal\"],optionTitles:[\"Integer\",\"Decimal\"]},prefixText:{type:ControlType.String,title:\"Prefix\",defaultValue:\"\"},prefixFont:{title:\"Prefix Font\",type:ControlType.Font,defaultValue:{fontFamily:\"Inter\",fontWeight:500,systemFont:true}},prefixColor:{type:ControlType.Color,title:\"Prefix Color\"},suffixText:{type:ControlType.String,title:\"Suffix\",defaultValue:\"\"},suffixFont:{title:\"Suffix Font\",type:ControlType.Font,defaultValue:{fontFamily:\"Inter\",fontWeight:500,systemFont:true}},suffixColor:{type:ControlType.Color,title:\"Suffix Color\"},gapSize:{type:ControlType.Number,title:\"Gap Size\",defaultValue:4,min:0,max:100,step:4},speed:{type:ControlType.Number,title:\"Speed (ms)\",defaultValue:100,min:0,max:2e3,step:10},multiplier:{type:ControlType.Number,title:\"Multiplier\",defaultValue:2,min:1,step:1},loop:{type:ControlType.Boolean,title:\"Loop Animation\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"[Built by Asif Kabir](https://www.youtube.com/channel/UCujbStV-Rp-QGfiHOKA9AvA)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"Counter\":{\"type\":\"reactComponent\",\"name\":\"Counter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Counter.map"],"mappings":"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"}