{"version":3,"file":"PixelateDepixelate_Prod.DFe2mapX.mjs","names":["React.useContext","React.useMemo","React.Fragment","React.useRef","React.useId","UtilsComponentMessage","_Fragment","useRef","useState","useCallback","useMemo"],"sources":["https:/framer.com/m/Utils-Component-Message-ZVoG.js@cRfVFRl0izzBulKFjOAe","https:/framer.com/m/Utils-FINc.js","https:/framerusercontent.com/modules/jcO7Bb889qabh6lJ0jLJ/Ce9PjgkyfMuGYVYiv4tn/PixelateDepixelate_Prod.js"],"sourcesContent":["// Generated by Framer (0b8b5e5)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,RichText,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const serializationHash=\"framer-q8Ttd\";const variantClassNames={XvqTw0Be9:\"framer-v-jjcw9a\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion(React.Fragment);const getProps=({height,id,subtitle,title,width,...props})=>{var _ref,_ref1;return{...props,WuF2iG84P:(_ref=subtitle!==null&&subtitle!==void 0?subtitle:props.WuF2iG84P)!==null&&_ref!==void 0?_ref:\"Set up the component by adding background and bouncer elements to the component properties.\",yeAnKbEUZ:(_ref1=title!==null&&title!==void 0?title:props.yeAnKbEUZ)!==null&&_ref1!==void 0?_ref1:\"Screen Saver\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,yeAnKbEUZ,WuF2iG84P,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"XvqTw0Be9\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(serializationHash,...sharedStyleClassNames,\"framer-jjcw9a\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"XvqTw0Be9\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{backgroundColor:\"rgba(136, 85, 255, 0.1)\",...style},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-uh2i08\",layoutDependency:layoutDependency,layoutId:\"aM7oiNoFL\",children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-flw0dh\",\"data-framer-name\":\"Logo\",layout:\"position\",layoutDependency:layoutDependency,layoutId:\"GthLmGmBt\",opacity:1,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 28 28\"><g id=\"ss11036020200_1\"><path d=\"M 0 0 L 28 0 L 28 28 L 0 28 Z\" fill=\"transparent\"></path><path d=\"M 21 7.113 C 21 7.041 21.029 6.971 21.079 6.921 L 27.534 0.465 C 27.613 0.388 27.73 0.365 27.831 0.407 C 27.933 0.449 28 0.548 28 0.658 L 28 13.888 C 28 13.96 27.971 14.028 27.921 14.079 L 21 21 Z M 7 21 L 7 7.658 C 7 7.548 6.933 7.449 6.831 7.407 C 6.73 7.365 6.613 7.388 6.534 7.465 L 0.079 13.921 C 0.028 13.972 0 14.041 0 14.113 L 0 27.728 C 0 27.877 0.122 28 0.273 28 L 13.888 28 C 13.96 28 14.028 27.971 14.079 27.921 L 21 21 Z\" fill=\"rgb(153, 102, 255)\"></path></g></svg>',svgContentId:11036020200,withExternalLayout:true}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-k3ullq\",layoutDependency:layoutDependency,layoutId:\"E3DQBYSAf\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItQm9sZA==\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"11px\",\"--framer-font-weight\":\"700\",\"--framer-letter-spacing\":\"-0.02em\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(153, 102, 255))\"},children:\"Screen Saver\"})}),className:\"framer-q0gs4u\",\"data-framer-name\":\"Title\",fonts:[\"Inter-Bold\"],layoutDependency:layoutDependency,layoutId:\"UqJwZqJjg\",style:{\"--extracted-r6o4lv\":\"rgb(153, 102, 255)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:yeAnKbEUZ,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"11px\",\"--framer-letter-spacing\":\"-0.03em\",\"--framer-line-height\":\"1.4em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(153, 102, 255, 0.7))\"},children:\"Set up the component by adding background and bouncer elements to the component properties.\"})}),className:\"framer-g5dqhc\",\"data-framer-name\":\"Subtitle\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"RJ7UF99m8\",style:{\"--extracted-r6o4lv\":\"rgba(153, 102, 255, 0.7)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:WuF2iG84P,verticalAlignment:\"top\",withExternalLayout:true})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-q8Ttd.framer-qanqo2, .framer-q8Ttd .framer-qanqo2 { display: block; }\",\".framer-q8Ttd.framer-jjcw9a { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 200px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 400px; }\",\".framer-q8Ttd .framer-uh2i08 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: hidden; padding: 0px 20px 0px 20px; position: relative; width: 1px; }\",\".framer-q8Ttd .framer-flw0dh { flex: none; height: 28px; position: relative; width: 28px; }\",\".framer-q8Ttd .framer-k3ullq { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; max-width: 200px; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-q8Ttd .framer-q0gs4u, .framer-q8Ttd .framer-g5dqhc { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-q8Ttd.framer-jjcw9a, .framer-q8Ttd .framer-uh2i08, .framer-q8Ttd .framer-k3ullq { gap: 0px; } .framer-q8Ttd.framer-jjcw9a > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-q8Ttd.framer-jjcw9a > :first-child { margin-left: 0px; } .framer-q8Ttd.framer-jjcw9a > :last-child { margin-right: 0px; } .framer-q8Ttd .framer-uh2i08 > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-q8Ttd .framer-uh2i08 > :first-child, .framer-q8Ttd .framer-k3ullq > :first-child { margin-top: 0px; } .framer-q8Ttd .framer-uh2i08 > :last-child, .framer-q8Ttd .framer-k3ullq > :last-child { margin-bottom: 0px; } .framer-q8Ttd .framer-k3ullq > * { margin: 0px; margin-bottom: calc(12px / 2); margin-top: calc(12px / 2); } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 200\n * @framerIntrinsicWidth 400\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"yeAnKbEUZ\":\"title\",\"WuF2iG84P\":\"subtitle\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerW7oLCU4_B=withCSS(Component,css,\"framer-q8Ttd\");export default FramerW7oLCU4_B;FramerW7oLCU4_B.displayName=\"Utils/Component Message\";FramerW7oLCU4_B.defaultProps={height:200,width:400};addPropertyControls(FramerW7oLCU4_B,{yeAnKbEUZ:{defaultValue:\"Screen Saver\",displayTextArea:false,title:\"Title\",type:ControlType.String},WuF2iG84P:{defaultValue:\"Set up the component by adding background and bouncer elements to the component properties.\",displayTextArea:false,title:\"Subtitle\",type:ControlType.String}});addFonts(FramerW7oLCU4_B,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/DXD0Q7LSl7HEvDzucnyLnGBHM.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerW7oLCU4_B\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"yeAnKbEUZ\\\":\\\"title\\\",\\\"WuF2iG84P\\\":\\\"subtitle\\\"}\",\"framerIntrinsicWidth\":\"400\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"200\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./W7oLCU4_B.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{cloneElement}from\"react\";import UtilsComponentMessage from\"https://framer.com/m/Utils-Component-Message-ZVoG.js@cRfVFRl0izzBulKFjOAe\";export const ComponentMessage=({title,subtitle,style})=>{return /*#__PURE__*/_jsx(UtilsComponentMessage,{yeAnKbEUZ:title,WuF2iG84P:subtitle,style:{width:\"100%\",height:\"100%\",...style}});};/* \n    This function is also used many times to make sure components work even if we set a color style like \"Accent\" on their color properties. We can make this into a utility function.\n*/export const extractRGBColorFromString=str=>{const rgbRegex=/(rgba|rgb)\\(.*?\\)/g;const match=str.match(rgbRegex);return match?match[0]:str;};/*\n    This function makes a connected layer use the sizing of the component it is inside,\n    preventing it from being larger or smaller than the component's size.\n    Use this on layers connected with ControlType.ComponentInstance.\n*/export function styleLayer(layer,style={}){layer=Array.isArray(layer)?layer[0]:layer;let newLayer=layer;const{width,height,...otherStyle}=style;if(layer&&layer.props&&style&&(width||height)){if(typeof layer.type===\"function\"&&typeof layer.props.children===\"object\"){newLayer=/*#__PURE__*/cloneElement(layer,{children:{...layer.props.children,props:{...layer.props.children.props,style:{...layer.props.children.props.style,...width&&{width},...height&&{height},...otherStyle}}}});}else{newLayer=/*#__PURE__*/cloneElement(layer,{style:{...layer.props.style,...width&&{width},...height&&{height},...otherStyle}});}}return newLayer;}\nexport const __FramerMetadata__ = {\"exports\":{\"ComponentMessage\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"extractRGBColorFromString\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"styleLayer\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Utils.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useRef,useCallback,useEffect,useMemo}from\"react\";import{motion,useMotionValue,useTransform}from\"framer-motion\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{ComponentMessage}from\"https://framer.com/m/Utils-FINc.js\";function PixelateSvgFilter({id=\"pixelate-filter\",size=16,crossLayers=false}){return /*#__PURE__*/_jsx(\"svg\",{style:{userSelect:\"none\",position:\"absolute\",width:0,height:0,overflow:\"hidden\",pointerEvents:\"none\"},children:/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsxs(\"filter\",{id:id,x:\"-50%\",y:\"-50%\",width:\"200%\",height:\"200%\",children:[\"First layer: Normal pixelation effect\",/*#__PURE__*/_jsx(\"feConvolveMatrix\",{kernelMatrix:\"1 1 1 1 1 1 1 1 1\",result:\"AVG\"}),/*#__PURE__*/_jsx(\"feFlood\",{x:\"1\",y:\"1\",width:\"1\",height:\"1\"}),/*#__PURE__*/_jsx(\"feComposite\",{operator:\"arithmetic\",k1:\"0\",k2:\"1\",k3:\"0\",k4:\"0\",width:size,height:size}),/*#__PURE__*/_jsx(\"feTile\",{result:\"TILE\"}),/*#__PURE__*/_jsx(\"feComposite\",{in:\"AVG\",in2:\"TILE\",operator:\"in\",k1:\"0\",k2:\"1\",k3:\"0\",k4:\"0\"}),/*#__PURE__*/_jsx(\"feMorphology\",{operator:\"dilate\",radius:size/2,result:\"NORMAL\"}),/*#__PURE__*/_jsx(\"feOffset\",{dx:\"0\",dy:\"0\"}),/*#__PURE__*/_jsx(\"feMerge\",{children:/*#__PURE__*/_jsx(\"feMergeNode\",{in:\"NORMAL\"})}),crossLayers&&/*#__PURE__*/_jsxs(_Fragment,{children:[\"Second layer: Fallback with full-width tiling\",/*#__PURE__*/_jsx(\"feConvolveMatrix\",{kernelMatrix:\"1 1 1 1 1 1 1 1 1\",result:\"AVG\"}),/*#__PURE__*/_jsx(\"feFlood\",{x:\"1\",y:\"1\",width:\"1\",height:\"1\"}),/*#__PURE__*/_jsx(\"feComposite\",{in2:\"SourceGraphic\",operator:\"arithmetic\",k1:\"0\",k2:\"1\",k3:\"0\",k4:\"0\",width:size/2,height:size}),/*#__PURE__*/_jsx(\"feTile\",{result:\"TILE\"}),/*#__PURE__*/_jsx(\"feComposite\",{in:\"AVG\",in2:\"TILE\",operator:\"in\",k1:\"0\",k2:\"1\",k3:\"0\",k4:\"0\"}),/*#__PURE__*/_jsx(\"feMorphology\",{operator:\"dilate\",radius:size/2,result:\"FALLBACKX\"}),\"Third layer: Fallback with full-height tiling\",/*#__PURE__*/_jsx(\"feConvolveMatrix\",{kernelMatrix:\"1 1 1 1 1 1 1 1 1\",result:\"AVG\"}),/*#__PURE__*/_jsx(\"feFlood\",{x:\"1\",y:\"1\",width:\"1\",height:\"1\"}),/*#__PURE__*/_jsx(\"feComposite\",{in2:\"SourceGraphic\",operator:\"arithmetic\",k1:\"0\",k2:\"1\",k3:\"0\",k4:\"0\",width:size,height:size/2}),/*#__PURE__*/_jsx(\"feTile\",{result:\"TILE\"}),/*#__PURE__*/_jsx(\"feComposite\",{in:\"AVG\",in2:\"TILE\",operator:\"in\",k1:\"0\",k2:\"1\",k3:\"0\",k4:\"0\"}),/*#__PURE__*/_jsx(\"feMorphology\",{operator:\"dilate\",radius:size/2,result:\"FALLBACKY\"}),/*#__PURE__*/_jsxs(\"feMerge\",{children:[/*#__PURE__*/_jsx(\"feMergeNode\",{in:\"FALLBACKX\"}),/*#__PURE__*/_jsx(\"feMergeNode\",{in:\"FALLBACKY\"}),/*#__PURE__*/_jsx(\"feMergeNode\",{in:\"NORMAL\"})]})]}),!crossLayers&&/*#__PURE__*/_jsx(\"feMergeNode\",{in:\"NORMAL\"})]})})});}// Mobile detection hook\nconst useIsMobile=()=>{const[isMobile,setIsMobile]=useState(false);useEffect(()=>{const checkIsMobile=()=>{// Check for touch capability and screen size\nconst hasTouch=\"ontouchstart\"in window||navigator.maxTouchPoints>0;const isSmallScreen=window.innerWidth<=810;setIsMobile(hasTouch||isSmallScreen);};checkIsMobile();window.addEventListener(\"resize\",checkIsMobile);return()=>window.removeEventListener(\"resize\",checkIsMobile);},[]);return isMobile;};/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 300\n * @framerDisableUnlink\n */export default function PixelateComponent(props){const{image,video,useVideo,strength,pixelateMode,hoverArea,safeArea,style}=props;const containerRef=useRef(null);const filterIdRef=useRef(`pixelate-filter-${Math.random().toString(36).slice(2,9)}`);const[mousePosition,setMousePosition]=useState({x:0,y:0});const[isHovering,setIsHovering]=useState(false);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const isMobile=useIsMobile();// Resolve a usable media src (always string or null). Canvas can pass transient objects.\nconst resolveSrc=useCallback(media=>{if(!media)return null;if(typeof media===\"string\")return media||null;const candidate=media?.src;return typeof candidate===\"string\"&&candidate.length>0?candidate:null;},[]);const mediaSrc=useMemo(()=>{return useVideo?resolveSrc(video):resolveSrc(image);},[useVideo,video,image,resolveSrc]);const[mediaError,setMediaError]=useState(false);// Reset error when the source changes\nuseEffect(()=>{setMediaError(false);},[mediaSrc]);const shouldShowMedia=Boolean(mediaSrc)&&!mediaError;// Note: Do NOT early-return based on media presence to keep hooks order stable in canvas\n// Calculate pixelation range based on strength\nconst getPixelationRange=()=>{const minPx=1// Minimum 1px to avoid SVG filter glitches\n;const maxPx=Math.max(minPx+1,Math.floor(1+strength/100*127));return{min:minPx,max:maxPx};};const{min:minPixelation,max:maxPixelation}=getPixelationRange();// Calculate initial pixelation based on mode\nconst getInitialPixelation=()=>{return pixelateMode===\"depixelate\"?maxPixelation:minPixelation;};// Motion values for smooth transitions\nconst pixelationSize=useMotionValue(getInitialPixelation());const smoothedPixelation=useTransform(pixelationSize,value=>Math.max(minPixelation,Math.min(maxPixelation,value)));// Ensure clear image outside hover in pixelate mode (render-time guard)\nconst renderPixelation=pixelateMode===\"pixelate\"&&!isHovering?minPixelation:smoothedPixelation.get();// Calculate distance from center and update pixelation\nconst updatePixelation=useCallback((clientX,clientY)=>{if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();const centerX=rect.left+rect.width/2;const centerY=rect.top+rect.height/2;// Calculate distance from center using global coordinates\nconst distanceX=clientX-centerX;const distanceY=clientY-centerY;const distance=Math.sqrt(distanceX*distanceX+distanceY*distanceY);// Calculate the expanded radius based on hover area percentage\n// Use diagonal distance to ensure corners are covered at 100%\nconst diagonalDistance=Math.sqrt(rect.width*rect.width+rect.height*rect.height);const expandedRadius=diagonalDistance/2*(hoverArea/100);// Calculate safe area radius (inner zone with constant effect)\nconst safeAreaRadius=diagonalDistance/2*(safeArea/100);// Calculate distance from safe area edge, not center\nconst effectiveDistance=Math.max(0,distance-safeAreaRadius);const effectiveRadius=Math.max(1,expandedRadius-safeAreaRadius);// Normalize distance relative to the effective radius\nconst normalizedDistance=Math.min(1,effectiveDistance/effectiveRadius);// Reverse the effect based on pixelate mode\nconst finalDistance=pixelateMode===\"depixelate\"?normalizedDistance:1-normalizedDistance;const newPixelation=minPixelation+(maxPixelation-minPixelation)*finalDistance;pixelationSize.set(newPixelation);// Set mouse position relative to component for debug display\nconst mouseX=clientX-rect.left;const mouseY=clientY-rect.top;setMousePosition({x:mouseX,y:mouseY});},[strength,pixelationSize,pixelateMode,hoverArea]);// Handle mouse events with expanded hover area\nconst handleMouseMove=useCallback(event=>{if(isCanvas||isMobile)return;updatePixelation(event.clientX,event.clientY);},[isCanvas,isMobile,updatePixelation]);const handleMouseEnter=useCallback(()=>{if(isCanvas||isMobile)return;setIsHovering(true);},[isCanvas,isMobile]);const handleMouseLeave=useCallback(()=>{if(isCanvas||isMobile)return;setIsHovering(false);pixelationSize.set(getInitialPixelation());},[isCanvas,isMobile,getInitialPixelation,pixelationSize]);// Global mouse tracking for expanded hover area\nuseEffect(()=>{if(isCanvas||isMobile||!containerRef.current)return;const handleGlobalMouseMove=event=>{if(!containerRef.current)return;const rect=containerRef.current.getBoundingClientRect();const centerX=rect.left+rect.width/2;const centerY=rect.top+rect.height/2;// Calculate the expanded radius based on hover area percentage\n// Use diagonal distance to ensure corners are covered at 100%\nconst diagonalDistance=Math.sqrt(rect.width*rect.width+rect.height*rect.height);const expandedRadius=diagonalDistance/2*(hoverArea/100);// Calculate distance from component center\nconst distanceX=event.clientX-centerX;const distanceY=event.clientY-centerY;const distance=Math.sqrt(distanceX*distanceX+distanceY*distanceY);// Check if mouse is within the expanded hover area\nconst isWithinHoverArea=distance<=expandedRadius;if(isWithinHoverArea&&!isHovering){setIsHovering(true);}else if(!isWithinHoverArea&&isHovering){setIsHovering(false);pixelationSize.set(getInitialPixelation());}// Update pixelation if hovering\nif(isWithinHoverArea){updatePixelation(event.clientX,event.clientY);}};window.addEventListener(\"mousemove\",handleGlobalMouseMove);return()=>{window.removeEventListener(\"mousemove\",handleGlobalMouseMove);};},[isCanvas,isMobile,hoverArea,isHovering,updatePixelation,pixelationSize,getInitialPixelation]);return /*#__PURE__*/_jsxs(motion.div,{ref:containerRef,style:{position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",userSelect:\"none\",display:\"flex\",boxSizing:\"border-box\"},onMouseMove:handleMouseMove,onMouseEnter:handleMouseEnter,onMouseLeave:handleMouseLeave,children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"400px\",height:\"300px\",minWidth:\"400px\",minHeight:\"300px\",visibility:\"hidden\",position:\"relative\",top:0,left:0,zIndex:-1,pointerEvents:\"none\"},\"aria-hidden\":\"true\"}),!isMobile&&!isCanvas&&renderPixelation>1&&/*#__PURE__*/_jsx(PixelateSvgFilter,{id:filterIdRef.current,size:renderPixelation,crossLayers:false}),!shouldShowMedia&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",zIndex:3},children:/*#__PURE__*/_jsx(ComponentMessage,{title:\"Pixelate Component\",subtitle:`Set up the component by adding ${useVideo?\"video\":\"image\"} to the component properties.`})}),shouldShowMedia&&(useVideo?/*#__PURE__*/_jsx(motion.video,{src:mediaSrc,autoPlay:true,muted:true,loop:true,playsInline:true,style:{position:\"absolute\",inset:-(props.strength/100)*50,width:`calc(100% + ${props.strength/100*100}px)`,height:`calc(100% + ${props.strength/100*100}px)`,objectFit:\"cover\",backgroundPosition:\"center center\",zIndex:1,userSelect:\"none\"},onError:()=>setMediaError(true)},mediaSrc):/*#__PURE__*/_jsx(motion.img,{src:mediaSrc,alt:image?.alt||\"Base image\",style:{position:\"absolute\",inset:-(props.strength/100)*50,width:`calc(100% + ${props.strength/100*100}px)`,height:`calc(100% + ${props.strength/100*100}px)`,objectFit:\"cover\",backgroundPosition:\"center center\",zIndex:1,userSelect:\"none\"},onError:()=>setMediaError(true)},mediaSrc)),shouldShowMedia&&!isMobile&&useVideo?/*#__PURE__*/_jsx(motion.video,{src:mediaSrc,autoPlay:true,muted:true,loop:true,playsInline:true,style:{position:\"absolute\",inset:-(props.strength/100)*50,width:`calc(100% + ${props.strength/100*100}px)`,height:`calc(100% + ${props.strength/100*100}px)`,objectFit:\"cover\",backgroundPosition:\"center center\",filter:renderPixelation>1?`url(#${filterIdRef.current})`:\"none\",zIndex:2,userSelect:\"none\",opacity:isCanvas||renderPixelation<=1?0:Math.min(1,Math.max(0,(renderPixelation-1)/8)),transition:\"opacity 0.1s ease-out\"},onError:()=>setMediaError(true)},`filtered-${mediaSrc}`):shouldShowMedia&&!isMobile?/*#__PURE__*/_jsx(motion.img,{src:mediaSrc,alt:image?.alt||\"Pixelated image\",style:{position:\"absolute\",inset:-(props.strength/100)*50,width:`calc(100% + ${props.strength/100*100}px)`,height:`calc(100% + ${props.strength/100*100}px)`,objectFit:\"cover\",backgroundPosition:\"center center\",filter:renderPixelation>1?`url(#${filterIdRef.current})`:\"none\",zIndex:2,userSelect:\"none\",opacity:isCanvas||renderPixelation<=1?0:Math.min(1,Math.max(0,(renderPixelation-1)/8)),transition:\"opacity 0.1s ease-out\"},onError:()=>setMediaError(true)},`filtered-${mediaSrc}`):null]});}// Default props\nPixelateComponent.defaultProps={useVideo:false,strength:50,pixelateMode:\"pixelate\",hoverArea:100,safeArea:10,image:null,video:null};// Property controls\naddPropertyControls(PixelateComponent,{useVideo:{type:ControlType.Boolean,title:\"Media\",defaultValue:false,enabledTitle:\"Video\",disabledTitle:\"Image\"},image:{type:ControlType.ResponsiveImage,title:\"Image\",hidden:props=>props.useVideo},video:{type:ControlType.File,title:\"Video\",allowedFileTypes:[\"video/*\"],hidden:props=>!props.useVideo},strength:{type:ControlType.Number,title:\"Strength\",min:1,max:100,step:1,defaultValue:50,unit:\"%\"},pixelateMode:{type:ControlType.Enum,title:\"Mode\",options:[\"pixelate\",\"depixelate\"],optionTitles:[\"Pixelate\",\"Depixelate\"],defaultValue:\"pixelate\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},hoverArea:{type:ControlType.Number,title:\"Hover Area\",min:50,max:300,step:5,defaultValue:100,unit:\"%\"},safeArea:{type:ControlType.Number,title:\"Safe Area\",min:0,max:50,step:1,defaultValue:10,unit:\"%\",description:\"More components at [Framer University](https://frameruni.link/cc).\"}});PixelateComponent.displayName=\"Pixelate Component\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PixelateComponent\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"300\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PixelateDepixelate_Prod.map"],"mappings":"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"}