{"version":3,"file":"Examples.CVCV1TAQ.mjs","names":["React.forwardRef","useState","useCallback"],"sources":["https:/framerusercontent.com/modules/s9ICNln7If6dbx787s8J/bsSFrd6i3uQgWvg7HD50/gpufTpA3b.js","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/ABV1VVIoUt8uaedGTvp6/01yG1PreIogRqBuzZ29R/Examples.js"],"sourcesContent":["// Generated by Framer (85eaff3)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 12 0 L 0 12\" fill=\"transparent\" height=\"12px\" id=\"qMvRy61Gj\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--js9iwy, 2)\" stroke=\"var(--1m973uw, rgb(0,0,0))\" transform=\"translate(6 6)\" width=\"12px\"/><path d=\"M 0 0 L 12 12\" fill=\"transparent\" height=\"12px\" id=\"YX0AMSC6b\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--js9iwy, 2)\" stroke=\"var(--1m973uw, rgb(0,0,0))\" transform=\"translate(6 6)\" width=\"12px\"/></svg>';const getProps=({color,height,id,width,width1,...props})=>{return{...props,JEeZYcamG:width1??props.JEeZYcamG??2,P_DcoRcrY:color??props.P_DcoRcrY??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,P_DcoRcrY,JEeZYcamG,...restProps}=getProps(props);const href=useSVGTemplate(\"2710857035\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-RiU4T\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m973uw\":P_DcoRcrY,\"--js9iwy\":JEeZYcamG,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-RiU4T { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"P_DcoRcrY\":\"color\",\"JEeZYcamG\":\"width1\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"X\",\"color\":{\"type\":\"variable\",\"value\":\"1m973uw\"},\"set\":{\"localId\":\"vectorSet/ZsiCCGPvG\",\"id\":\"ZsiCCGPvG\",\"moduleId\":\"Y7SpbVH16cWqMhj75z1M\"}}\n */const Icon=withCSS(Component,css,\"framer-RiU4T\");Icon.displayName=\"X\";export default Icon;addPropertyControls(Icon,{P_DcoRcrY:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},JEeZYcamG:{defaultValue:2,displayStepper:true,hidden:false,max:16,min:1,title:\"Width\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"X\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1m973uw\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/ZsiCCGPvG\\\",\\\"id\\\":\\\"ZsiCCGPvG\\\",\\\"moduleId\\\":\\\"Y7SpbVH16cWqMhj75z1M\\\"}}\",\"framerIntrinsicWidth\":\"24\",\"framerIntrinsicHeight\":\"24\",\"framerVariables\":\"{\\\"P_DcoRcrY\\\":\\\"color\\\",\\\"JEeZYcamG\\\":\\\"width1\\\"}\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","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,useCallback}from\"react\";// @ts-ignore\nimport{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";// @ts-ignore\nimport{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()});}});});}export function withFormSparkSubmit(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const handleSubmit=useCallback(async event=>{event.preventDefault();const form=event.currentTarget;const formData=new FormData(form);const payload={};formData.forEach((value,key)=>{payload[key]=String(value);});if(!payload.subject&&!payload.title){payload.subject=\"Galt Christian Assembly Contact Form\";}try{const response=await fetch(\"https://submit-form.com/WOJU2gWs3\",{method:\"POST\",headers:{Accept:\"application/json\",\"Content-Type\":\"application/json\"},body:JSON.stringify(payload)});if(!response.ok){let errorBody=\"\";try{errorBody=await response.text();}catch(error){errorBody=String(error);}console.error(\"FormSpark submission failed:\",response.status,errorBody);}else{const clearableTypes=new Set([\"text\",\"email\",\"search\",\"tel\",\"url\",\"number\",\"password\"]);Array.from(form.elements).forEach(element=>{if(element instanceof HTMLTextAreaElement){element.value=\"\";return;}if(element instanceof HTMLInputElement&&clearableTypes.has(element.type)){element.value=\"\";}});if(typeof window!==\"undefined\"){window.setTimeout(()=>{window.location.href=\"/\";},2e3);}}}catch(error){console.error(\"FormSpark submission error:\",error);}if(typeof props.onSubmit===\"function\"){props.onSubmit(event);}},[props]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onSubmit:handleSubmit});});}export function withHardNavigation(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const navigateIfInternalLink=useCallback(event=>{if(typeof window===\"undefined\"||typeof document===\"undefined\"){return false;}if(window.innerWidth>=1200){return false;}if(event.defaultPrevented)return false;const nativeEvent=event.nativeEvent;if(nativeEvent&&(\"button\"in nativeEvent||\"metaKey\"in nativeEvent)){if(nativeEvent.button!==0||nativeEvent.metaKey||nativeEvent.ctrlKey||nativeEvent.shiftKey||nativeEvent.altKey){return false;}}const target=event.target;const linkElement=target?.closest?.(\"a[href]\");if(!linkElement)return false;if(linkElement.target&&linkElement.target!==\"_self\")return false;if(linkElement.hasAttribute(\"download\"))return false;const href=linkElement.getAttribute(\"href\");if(!href)return false;if(href.startsWith(\"#\")||href.startsWith(\"mailto:\")||href.startsWith(\"tel:\")){return false;}let resolvedUrl;try{resolvedUrl=new URL(href,window.location.href);}catch(_error){return false;}if(resolvedUrl.origin!==window.location.origin)return false;event.preventDefault();window.location.href=resolvedUrl.href;return true;},[]);const handleClick=useCallback(event=>{if(navigateIfInternalLink(event))return;if(typeof props.onClick===\"function\"){props.onClick(event);}},[navigateIfInternalLink,props]);const handleTap=useCallback((event,info)=>{if(navigateIfInternalLink(event))return;if(typeof props.onTap===\"function\"){props.onTap(event,info);}},[navigateIfInternalLink,props]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:handleClick,onTap:handleTap});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withHardNavigation\":{\"type\":\"reactHoc\",\"name\":\"withHardNavigation\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRandomColor\":{\"type\":\"reactHoc\",\"name\":\"withRandomColor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHover\":{\"type\":\"reactHoc\",\"name\":\"withHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRotate\":{\"type\":\"reactHoc\",\"name\":\"withRotate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withFormSparkSubmit\":{\"type\":\"reactHoc\",\"name\":\"withFormSparkSubmit\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Examples.map"],"mappings":"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"}