{"version":3,"file":"Examples.Bjmt2DJn.mjs","names":["useState","useRef","__esmMin","init_ssg_sandbox_shims","navigator","init_npm_react_18_3_1","_e","c","J","ce","de","window","init_framer_CDGohruR","useObserveData","Data","createStore","dataStore","state1","setDataStore","newState","storeState","storeSetters","setStoreState","setter","useStore","state","setState","init_createStore","init_store_js__1_0","centerContent","init_Utils","init_utils_js__0_9","shouldUseLegacyIosHeroMotionFallback","ua","osMajorMatch","safariVersionMatch","osMajor","safariMajor","withHideOnLegacyIos","Component","props","withShowOnLegacyIos","ensureContactFormShakeStyles","CONTACT_FORM_SHAKE_STYLE_ID","style","CONTACT_FORM_SHAKE_CLASS","findFormElement","root","markFormStatus","status","form","setSubmitButtonState","button","clearFormFields","elements","element","shakeFormFields","node","hasObviousErrorState","text","withContactFormFeedback","rootRef","didSucceedRef","settleTimerRef","onSuccess","onError","onSubmitCapture","event","browserValidationPasses","onInvalidCapture","onSubmitButtonClick","submitButton","observer","ref","init_Examples","init_jsx_runtime"],"sources":["https:/framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js","https:/framer.com/m/framer/store.js@^1.0.0","https:/framerusercontent.com/modules/28rXvpPsrum7FH6cMELS/1jCAazZw1EGHjrG5Nu5D/Utils.js","https:/framer.com/m/framer/utils.js@^0.9.0","https:/framerusercontent.com/modules/5uZrqWM4OKVEZHw1Mcpt/50ES0BA3WSiKdkncrWOQ/Examples.js"],"sourcesContent":["import{useState,useEffect}from\"react\";import{Data,useObserveData}from\"framer\";export function createStore(state1){// Use Data so that a Preview reload resets the state\nconst dataStore=Data({state:Object.freeze({...state1})});// Create a set function that updates the state\nconst setDataStore=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(dataStore.state);}dataStore.state=Object.freeze({...dataStore.state,...newState});};// Store the initial state, copy the object if it's an object\nlet storeState=typeof state1===\"object\"?Object.freeze({...state1}):state1;// Keep a list of all the listeners, in the form of React hook setters\nconst storeSetters=new Set();// Create a set function that updates all the listeners / setters\nconst setStoreState=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(storeState);}storeState=typeof newState===\"object\"?Object.freeze({...storeState,...newState}):newState;// Update all the listeners / setters with the new value\nstoreSetters.forEach(setter=>setter(storeState));};// Create the actual hook based on everything above\nfunction useStore(){// Create the hook we are going to use as a listener\nconst[state,setState]=useState(storeState);// If we unmount the component using this hook, we need to remove the listener\n// @ts-ignore\nuseEffect(()=>{// But right now, we need to add the listener\nstoreSetters.add(setState);return()=>storeSetters.delete(setState);},[]);// If Data context exists, use Data, otherwise use vanilla React state\nif(useObserveData()===true){useObserveData();return[dataStore.state,setDataStore];}else{// Return the state and a function to update the central store\nreturn[state,setStoreState];}}return useStore;}\nexport const __FramerMetadata__ = {\"exports\":{\"createStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./createStore.map","/*\n * createStore (framer/store@1.0.1)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js\"\n","export const centerContent = {\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const autoSizingText = {\n    width: \"max-content\",\n    wordBreak: \"break-word\",\n    overflowWrap: \"break-word\",\n    overflow: \"hidden\",\n    whiteSpace: \"pre-wrap\",\n    flexShrink: 0\n};\nexport const defaultContainerStyles = {\n    ...centerContent,\n    overflow: \"hidden\"\n};\nexport const containerStyles = defaultContainerStyles;\nexport const randomColor = ()=>\"#\" + Math.floor(Math.random() * 16777215).toString(16)\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"centerContent\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"autoSizingText\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultContainerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomColor\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./Utils.map","/*\n * Utils (framer/utils@0.9.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/28rXvpPsrum7FH6cMELS/1jCAazZw1EGHjrG5Nu5D/Utils.js\"\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{forwardRef,useEffect,useRef}from\"react\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";import{randomColor}from\"https://framer.com/m/framer/utils.js@^0.9.0\";// Learn more: https://www.framer.com/developers/overrides/\nconst useStore=createStore({background:\"#0099FF\"});export function withRotate(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:{rotate:90},transition:{duration:2}});});}export function withHover(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,whileHover:{scale:1.05}});});}export function withRandomColor(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const[store,setStore]=useStore();return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:{background:store.background},onClick:()=>{setStore({background:randomColor()});}});});}function shouldUseLegacyIosHeroMotionFallback(){if(typeof window===\"undefined\"||typeof navigator===\"undefined\"){return false;}const ua=navigator.userAgent||\"\";const isAppleWebKit=/AppleWebKit/i.test(ua);if(!isAppleWebKit)return false;const isIOSDevice=/iPhone|iPad|iPod/i.test(ua)||/Macintosh/i.test(ua)&&navigator.maxTouchPoints>1;if(!isIOSDevice)return false;const osMajorMatch=ua.match(/OS (\\d+)_/);const safariVersionMatch=ua.match(/Version\\/(\\d+)/);const osMajor=osMajorMatch?Number(osMajorMatch[1]):Number.NaN;const safariMajor=safariVersionMatch?Number(safariVersionMatch[1]):Number.NaN;if(!Number.isNaN(osMajor))return osMajor<17;if(!Number.isNaN(safariMajor))return safariMajor<17;return false;}export function withLegacyIosHeroMotionFallback(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const shouldApplyFallback=shouldUseLegacyIosHeroMotionFallback();if(!shouldApplyFallback){return /*#__PURE__*/_jsx(Component,{ref:ref,...props});}return /*#__PURE__*/_jsx(Component,{ref:ref,...props,style:{...props.style,backfaceVisibility:\"hidden\",WebkitBackfaceVisibility:\"hidden\",willChange:\"auto\",transformStyle:\"flat\",WebkitTransformStyle:\"flat\"}});});}export function withHideOnLegacyIos(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const shouldHide=shouldUseLegacyIosHeroMotionFallback();if(!shouldHide){return /*#__PURE__*/_jsx(Component,{ref:ref,...props});}return null;});}export function withShowOnLegacyIos(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const shouldShow=shouldUseLegacyIosHeroMotionFallback();if(!shouldShow){return null;}return /*#__PURE__*/_jsx(Component,{ref:ref,...props,style:{...props.style,backfaceVisibility:\"hidden\",WebkitBackfaceVisibility:\"hidden\",willChange:\"auto\",transformStyle:\"flat\",WebkitTransformStyle:\"flat\"}});});}function getFirstStringValue(value){if(typeof value===\"string\")return value;if(!value||typeof value!==\"object\")return undefined;const record=value;const candidates=[\"url\",\"href\",\"link\",\"path\",\"to\",\"value\"];for(const key of candidates){const nested=record[key];if(typeof nested===\"string\")return nested;}return undefined;}function resolveLinkedUrl(props){const candidateKeys=[\"href\",\"link\",\"url\",\"to\",\"src\",\"targetUrl\",\"linkUrl\"];for(const key of candidateKeys){const raw=props[key];const found=getFirstStringValue(raw);if(typeof found===\"string\")return found;if(raw==null)continue;}const nestedContainers=[\"linkProps\",\"anchorProps\",\"attributes\"];for(const key of nestedContainers){const nested=props[key];if(!nested||typeof nested!==\"object\")continue;const found=resolveLinkedUrl(nested);if(typeof found===\"string\")return found;}return undefined;}export function withHideWhenLinkEmpty(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const resolvedUrl=resolveLinkedUrl(props??{});const hasUrl=typeof resolvedUrl===\"string\"&&resolvedUrl.trim().length>0;if(!hasUrl)return null;return /*#__PURE__*/_jsx(Component,{ref:ref,...props});});}const CONTACT_FORM_SHAKE_STYLE_ID=\"framer-contact-form-feedback-shake-style-v1\";const CONTACT_FORM_SHAKE_CLASS=\"framer-contact-form-feedback-shake-v1\";function ensureContactFormShakeStyles(){if(typeof document===\"undefined\")return;if(document.getElementById(CONTACT_FORM_SHAKE_STYLE_ID))return;const style=document.createElement(\"style\");style.id=CONTACT_FORM_SHAKE_STYLE_ID;style.textContent=`\n@keyframes framerContactFormFeedbackShakeV1 {\n  0%, 100% { transform: translateX(0); }\n  20% { transform: translateX(-5px); }\n  40% { transform: translateX(5px); }\n  60% { transform: translateX(-4px); }\n  80% { transform: translateX(4px); }\n}\n.${CONTACT_FORM_SHAKE_CLASS} {\n  animation: framerContactFormFeedbackShakeV1 360ms ease;\n}\n`;document.head.appendChild(style);}function findFormElement(root){if(!root)return null;if(root instanceof HTMLFormElement)return root;return root.querySelector(\"form\");}function markFormStatus(form,status){form.dataset.formStatus=status;form.classList.remove(\"is-form-success\",\"is-form-error\");if(status===\"success\")form.classList.add(\"is-form-success\");if(status===\"error\")form.classList.add(\"is-form-error\");}function setSubmitButtonState(form,status){const button=form.querySelector('button[type=\"submit\"], input[type=\"submit\"]');if(!button)return;button.setAttribute(\"data-form-status\",status);button.classList.remove(\"is-form-success\",\"is-form-error\");button.classList.add(status===\"success\"?\"is-form-success\":\"is-form-error\");if(status===\"success\"){button.setAttribute(\"disabled\",\"true\");if(\"disabled\"in button)button.disabled=true;}}function clearFormFields(form){const elements=Array.from(form.elements);for(const element of elements){if(!(element instanceof HTMLInputElement)&&!(element instanceof HTMLTextAreaElement)&&!(element instanceof HTMLSelectElement)){continue;}if(element instanceof HTMLInputElement){if(element.type===\"checkbox\"||element.type===\"radio\"){element.checked=false;}else{element.value=\"\";}}else if(element instanceof HTMLTextAreaElement){element.value=\"\";}else if(element instanceof HTMLSelectElement){element.selectedIndex=-1;}element.dispatchEvent(new Event(\"input\",{bubbles:true}));element.dispatchEvent(new Event(\"change\",{bubbles:true}));}}function shakeFormFields(form){const targets=form.querySelectorAll(\"input, textarea, select, [contenteditable='true']\");targets.forEach(node=>{const element=node;element.classList.remove(CONTACT_FORM_SHAKE_CLASS);// Force reflow so repeated shakes still animate.\nvoid element.offsetWidth;element.classList.add(CONTACT_FORM_SHAKE_CLASS);});}function hasObviousErrorState(form){if(form.dataset.formStatus===\"error\")return true;if(form.querySelector(\"[aria-invalid='true'], [data-error], .error, .is-error\")){return true;}const text=(form.textContent||\"\").toLowerCase();return/error|failed|invalid|required|try again/.test(text);}export function withContactFormFeedback(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const rootRef=useRef(null);const didSucceedRef=useRef(false);const settleTimerRef=useRef(null);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;ensureContactFormShakeStyles();const form=findFormElement(rootRef.current);if(!form)return;markFormStatus(form,\"idle\");const onSuccess=()=>{if(didSucceedRef.current)return;didSucceedRef.current=true;markFormStatus(form,\"success\");clearFormFields(form);setSubmitButtonState(form,\"success\");form.dispatchEvent(new CustomEvent(\"framerformstatuschange\",{bubbles:true,detail:{status:\"success\"}}));};const onError=()=>{if(didSucceedRef.current)return;markFormStatus(form,\"error\");setSubmitButtonState(form,\"error\");shakeFormFields(form);form.dispatchEvent(new CustomEvent(\"framerformstatuschange\",{bubbles:true,detail:{status:\"error\"}}));};const onSubmitCapture=event=>{if(didSucceedRef.current){event.preventDefault();event.stopPropagation();return;}if(settleTimerRef.current!=null){window.clearTimeout(settleTimerRef.current);}markFormStatus(form,\"idle\");const browserValidationPasses=form.checkValidity();const wasCanceled=event.defaultPrevented;if(!wasCanceled&&browserValidationPasses){settleTimerRef.current=window.setTimeout(()=>{if(didSucceedRef.current)return;if(hasObviousErrorState(form)){onError();return;}onSuccess();},800);}};const onInvalidCapture=()=>{if(didSucceedRef.current)return;onError();};const onSubmitButtonClick=()=>{if(didSucceedRef.current)return;markFormStatus(form,\"idle\");};form.addEventListener(\"submit\",onSubmitCapture,true);form.addEventListener(\"invalid\",onInvalidCapture,true);form.addEventListener(\"framerformsuccess\",onSuccess);form.addEventListener(\"framer-form-success\",onSuccess);form.addEventListener(\"success\",onSuccess);form.addEventListener(\"framerformerror\",onError);form.addEventListener(\"framer-form-error\",onError);form.addEventListener(\"error\",onError);const submitButton=form.querySelector('button[type=\"submit\"], input[type=\"submit\"]');submitButton?.addEventListener(\"click\",onSubmitButtonClick);const observer=new MutationObserver(()=>{if(didSucceedRef.current)return;const status=form.dataset.formStatus;if(status===\"success\")onSuccess();if(status===\"error\")onError();});observer.observe(form,{attributes:true,childList:true,subtree:true,characterData:true});return()=>{if(settleTimerRef.current!=null){window.clearTimeout(settleTimerRef.current);}form.removeEventListener(\"submit\",onSubmitCapture,true);form.removeEventListener(\"invalid\",onInvalidCapture,true);form.removeEventListener(\"framerformsuccess\",onSuccess);form.removeEventListener(\"framer-form-success\",onSuccess);form.removeEventListener(\"success\",onSuccess);form.removeEventListener(\"framerformerror\",onError);form.removeEventListener(\"framer-form-error\",onError);form.removeEventListener(\"error\",onError);submitButton?.removeEventListener(\"click\",onSubmitButtonClick);observer.disconnect();};},[]);return /*#__PURE__*/_jsx(Component,{ref:node=>{rootRef.current=node;if(typeof ref===\"function\"){ref(node);}else if(ref&&typeof ref===\"object\"){ref.current=node;}},...props});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withLegacyIosHeroMotionFallback\":{\"type\":\"reactHoc\",\"name\":\"withLegacyIosHeroMotionFallback\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHideWhenLinkEmpty\":{\"type\":\"reactHoc\",\"name\":\"withHideWhenLinkEmpty\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRotate\":{\"type\":\"reactHoc\",\"name\":\"withRotate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHover\":{\"type\":\"reactHoc\",\"name\":\"withHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withContactFormFeedback\":{\"type\":\"reactHoc\",\"name\":\"withContactFormFeedback\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withShowOnLegacyIos\":{\"type\":\"reactHoc\",\"name\":\"withShowOnLegacyIos\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRandomColor\":{\"type\":\"reactHoc\",\"name\":\"withRandomColor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHideOnLegacyIos\":{\"type\":\"reactHoc\",\"name\":\"withHideOnLegacyIos\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Examples.map"],"mappings":"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"}