{"version":3,"file":"ShaderTrails.p6iri6u6.mjs","names":["useRef","hexToRgb","rgb1","rgb2","rgb3","rgbMiddle"],"sources":["https:/framerusercontent.com/modules/iBzTr3wcVphHPNh43V27/ABKBGvtNg8Ggpe8fKfoQ/ShaderTrails.js"],"sourcesContent":["// Animated WebGL Shader effect with chromatic aberration wave distortion\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";// Color palette definitions\nconst COLOR_PALETTES={custom:{color1:\"#FF6B42\",color2:\"#FFAD14\",color3:\"#3D7AFD\"},vibrantBlue:{color1:\"#3D7AFD\",color2:\"#6B9FFF\",color3:\"#A8C7FF\"},blueOrange:{color1:\"#3D7AFD\",color2:\"#FF6B42\",color3:\"#FFAD14\"},electricBlue:{color1:\"#1E5EFF\",color2:\"#3D7AFD\",color3:\"#5B8FFF\"},blueGold:{color1:\"#3D7AFD\",color2:\"#FFAD14\",color3:\"#7C3AED\"},sunset:{color1:\"#FF6B42\",color2:\"#FFAD14\",color3:\"#FFD700\"},neonBlue:{color1:\"#00D9FF\",color2:\"#3D7AFD\",color3:\"#8B5CF6\"},fire:{color1:\"#FF6B42\",color2:\"#FF4500\",color3:\"#FFD700\"},cool:{color1:\"#3D7AFD\",color2:\"#00D9FF\",color3:\"#60A5FA\"},warmCool:{color1:\"#FFAD14\",color2:\"#3D7AFD\",color3:\"#FF6B42\"},vibrantMix:{color1:\"#FF00FF\",color2:\"#3D7AFD\",color3:\"#FFAD14\"},ocean:{color1:\"#0077BE\",color2:\"#3D7AFD\",color3:\"#00D9FF\"},tropical:{color1:\"#FF6B42\",color2:\"#00D9FF\",color3:\"#FFAD14\"},cyberpunk:{color1:\"#FF00FF\",color2:\"#00FFFF\",color3:\"#FFAD14\"},aurora:{color1:\"#00FF88\",color2:\"#3D7AFD\",color3:\"#FF00FF\"},lava:{color1:\"#FF0000\",color2:\"#FF6B42\",color3:\"#FFAD14\"},electric:{color1:\"#00FFFF\",color2:\"#3D7AFD\",color3:\"#FF00FF\"},candy:{color1:\"#FF1493\",color2:\"#FF6B42\",color3:\"#FFAD14\"},neon:{color1:\"#39FF14\",color2:\"#FF6B42\",color3:\"#3D7AFD\"},plasma:{color1:\"#8B00FF\",color2:\"#FF00FF\",color3:\"#FF6B42\"},retro:{color1:\"#FF6B42\",color2:\"#FFAD14\",color3:\"#00D9FF\"},vaporwave:{color1:\"#FF71CE\",color2:\"#01CDFE\",color3:\"#B967FF\"}};/**\n * Shader Flow\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function ShaderFlow(props){const{palette=\"vibrantBlue\",xScale=1,yScale=.5,distortion=.05,speed=.01,color1=\"#FF6B35\",color2=\"#F7931E\",color3=\"#FDC830\",gradientIntensity=1,shineDistance=.05,useMiddleColor=false,middleColor=\"#FFFFFF\",colorFusion=.5,enableFilmGrain=false,filmGrainIntensity=.05,filmGrainSize=1.5,hotColorShade=1,exposure=1,contrast=1,highlights=1,shadows=1,brightness=0,blackpoint=0,rotation=0,verticalOffset=0,backgroundOpacity=1,resetToDefaults=false}=props;const canvasRef=useRef(null);// Apply palette colors or use custom colors\nconst activeColors=palette===\"custom\"?{color1,color2,color3}:COLOR_PALETTES[palette]||COLOR_PALETTES.vibrantBlue;const propsRef=useRef({xScale,yScale,distortion,speed,color1:activeColors.color1,color2:activeColors.color2,color3:activeColors.color3,gradientIntensity,shineDistance,useMiddleColor,middleColor,colorFusion,enableFilmGrain,filmGrainIntensity,filmGrainSize,hotColorShade,exposure,contrast,highlights,shadows,brightness,blackpoint,rotation,verticalOffset,backgroundOpacity});// Update props ref whenever props change\nuseEffect(()=>{propsRef.current={xScale,yScale,distortion,speed,color1:activeColors.color1,color2:activeColors.color2,color3:activeColors.color3,gradientIntensity,shineDistance,useMiddleColor,middleColor,colorFusion,enableFilmGrain,filmGrainIntensity,filmGrainSize,hotColorShade,exposure,contrast,highlights,shadows,brightness,blackpoint,rotation,verticalOffset,backgroundOpacity};},[xScale,yScale,distortion,speed,activeColors.color1,activeColors.color2,activeColors.color3,gradientIntensity,shineDistance,useMiddleColor,middleColor,colorFusion,enableFilmGrain,filmGrainIntensity,filmGrainSize,hotColorShade,exposure,contrast,highlights,shadows,brightness,blackpoint,rotation,verticalOffset,backgroundOpacity]);const sceneRef=useRef({gl:null,program:null,uniforms:{resolution:null,time:null,xScale:null,yScale:null,distortion:null,color1:null,color2:null,color3:null,gradientIntensity:null,shineDistance:null,useMiddleColor:null,middleColor:null,colorFusion:null,enableFilmGrain:null,filmGrainIntensity:null,filmGrainSize:null,hotColorShade:null,exposure:null,contrast:null,highlights:null,shadows:null,brightness:null,blackpoint:null,rotation:null,verticalOffset:null,backgroundOpacity:null},animationId:null,timeValue:0});useEffect(()=>{if(typeof window===\"undefined\")return;if(!canvasRef.current)return;if(RenderTarget.current()===RenderTarget.thumbnail)return;const canvas=canvasRef.current;const{current:refs}=sceneRef;const gl=canvas.getContext(\"webgl\",{alpha:true,antialias:true,preserveDrawingBuffer:false,premultipliedAlpha:true});if(!gl){console.error(\"WebGL not supported\");return;}refs.gl=gl;// Enable blending for transparency\ngl.enable(gl.BLEND);gl.blendFunc(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA);const vertexShaderSource=`\n            attribute vec2 position;\n            void main() {\n                gl_Position = vec4(position, 0.0, 1.0);\n            }\n        `;const fragmentShaderSource=`\n            precision highp float;\n            uniform vec2 resolution;\n            uniform float time;\n            uniform float xScale;\n            uniform float yScale;\n            uniform float distortion;\n            uniform vec3 color1;\n            uniform vec3 color2;\n            uniform vec3 color3;\n            uniform float gradientIntensity;\n            uniform float shineDistance;\n            uniform bool useMiddleColor;\n            uniform vec3 middleColor;\n            uniform float colorFusion;\n            uniform bool enableFilmGrain;\n            uniform float filmGrainIntensity;\n            uniform float filmGrainSize;\n            uniform float hotColorShade;\n            uniform float exposure;\n            uniform float contrast;\n            uniform float highlights;\n            uniform float shadows;\n            uniform float brightness;\n            uniform float blackpoint;\n            uniform float rotation;\n            uniform float verticalOffset;\n            uniform float backgroundOpacity;\n\n            // Film grain function - time-based for animated grain\n            float filmGrain(vec2 uv, float time) {\n                vec2 seed = uv * filmGrainSize + time;\n                return fract(sin(dot(seed, vec2(12.9898, 78.233))) * 43758.5453);\n            }\n\n            void main() {\n                vec2 uv = gl_FragCoord.xy / resolution;\n                vec2 p = (uv * 2.0 - 1.0) * vec2(resolution.x / min(resolution.x, resolution.y), resolution.y / min(resolution.x, resolution.y));\n                \n                // Apply rotation\n                float angle = rotation * 3.14159265359 / 180.0;\n                float cosA = cos(angle);\n                float sinA = sin(angle);\n                vec2 rotatedP = vec2(\n                    p.x * cosA - p.y * sinA,\n                    p.x * sinA + p.y * cosA\n                );\n                p = rotatedP;\n                \n                // Apply vertical offset\n                p.y += verticalOffset;\n                \n                float d = length(p) * distortion;\n                \n                float rx = p.x * (1.0 + d);\n                float gx = p.x;\n                float bx = p.x * (1.0 - d);\n\n                float r = shineDistance / abs(p.y + sin((rx + time) * xScale) * yScale);\n                float g = shineDistance / abs(p.y + sin((gx + time) * xScale) * yScale);\n                float b = shineDistance / abs(p.y + sin((bx + time) * xScale) * yScale);\n                \n                float intensity = (r + g + b) / 3.0;\n                \n                vec3 contrib1 = color1 * r;\n                vec3 contrib2 = color2 * g;\n                vec3 contrib3 = color3 * b;\n                \n                vec3 fusedColor = contrib1 + contrib2 + contrib3;\n                \n                vec3 gradientColor;\n                if (useMiddleColor && intensity > 0.7) {\n                    float middleBlend = (intensity - 0.7) / 0.3;\n                    if (intensity < 0.5) {\n                        gradientColor = mix(color1, color2, intensity * 2.0);\n                    } else {\n                        gradientColor = mix(color2, color3, (intensity - 0.5) * 2.0);\n                    }\n                    gradientColor = mix(gradientColor, middleColor, middleBlend);\n                } else {\n                    if (intensity < 0.5) {\n                        gradientColor = mix(color1, color2, intensity * 2.0);\n                    } else {\n                        gradientColor = mix(color2, color3, (intensity - 0.5) * 2.0);\n                    }\n                }\n                gradientColor *= intensity;\n                \n                vec3 finalColor = mix(gradientColor, fusedColor, colorFusion);\n                finalColor *= gradientIntensity;\n                \n                float glow = (r + g + b) * 0.15;\n                vec3 glowColor = vec3(1.0) * glow * 0.3 * hotColorShade;\n                finalColor += finalColor * glowColor;\n                \n                // Apply hot color override as a filter over bright areas\n                if (useMiddleColor && intensity > 0.7) {\n                    float filterStrength = (intensity - 0.7) / 0.3;\n                    finalColor *= mix(vec3(1.0), middleColor, filterStrength);\n                }\n                \n                // Apply film grain\n                if (enableFilmGrain) {\n                    float grain = filmGrain(uv, time * 10.0);\n                    grain = (grain - 0.5) * filmGrainIntensity;\n                    finalColor += grain;\n                }\n                \n                // Apply exposure\n                finalColor *= exposure;\n                \n                // Apply contrast\n                finalColor = (finalColor - 0.5) * contrast + 0.5;\n                \n                // Apply highlights and shadows\n                float luminance = dot(finalColor, vec3(0.299, 0.587, 0.114));\n                if (luminance > 0.5) {\n                    finalColor = mix(finalColor, finalColor * highlights, (luminance - 0.5) * 2.0);\n                } else {\n                    finalColor = mix(finalColor * shadows, finalColor, luminance * 2.0);\n                }\n                \n                // Apply brightness\n                finalColor += brightness;\n                \n                // Apply blackpoint\n                finalColor = max(finalColor - blackpoint, 0.0);\n                \n                // Calculate alpha based on intensity and backgroundOpacity\n                // The flow effect should be visible (alpha = 1.0) where intensity is high\n                // Background should use backgroundOpacity where intensity is low\n                float effectAlpha = clamp(intensity * 0.5, 0.0, 1.0);\n                float finalAlpha = mix(backgroundOpacity, 1.0, effectAlpha);\n                \n                gl_FragColor = vec4(finalColor, finalAlpha);\n            }\n        `;const createShader=(type,source)=>{const shader=gl.createShader(type);if(!shader)return null;gl.shaderSource(shader,source);gl.compileShader(shader);if(!gl.getShaderParameter(shader,gl.COMPILE_STATUS)){console.error(gl.getShaderInfoLog(shader));gl.deleteShader(shader);return null;}return shader;};const vertexShader=createShader(gl.VERTEX_SHADER,vertexShaderSource);const fragmentShader=createShader(gl.FRAGMENT_SHADER,fragmentShaderSource);if(!vertexShader||!fragmentShader)return;const program=gl.createProgram();if(!program)return;gl.attachShader(program,vertexShader);gl.attachShader(program,fragmentShader);gl.linkProgram(program);if(!gl.getProgramParameter(program,gl.LINK_STATUS)){console.error(gl.getProgramInfoLog(program));return;}refs.program=program;gl.useProgram(program);const positions=new Float32Array([-1,-1,1,-1,-1,1,1,-1,-1,1,1,1]);const positionBuffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.bufferData(gl.ARRAY_BUFFER,positions,gl.STATIC_DRAW);const positionLocation=gl.getAttribLocation(program,\"position\");gl.enableVertexAttribArray(positionLocation);gl.vertexAttribPointer(positionLocation,2,gl.FLOAT,false,0,0);refs.uniforms.resolution=gl.getUniformLocation(program,\"resolution\");refs.uniforms.time=gl.getUniformLocation(program,\"time\");refs.uniforms.xScale=gl.getUniformLocation(program,\"xScale\");refs.uniforms.yScale=gl.getUniformLocation(program,\"yScale\");refs.uniforms.distortion=gl.getUniformLocation(program,\"distortion\");refs.uniforms.color1=gl.getUniformLocation(program,\"color1\");refs.uniforms.color2=gl.getUniformLocation(program,\"color2\");refs.uniforms.color3=gl.getUniformLocation(program,\"color3\");refs.uniforms.gradientIntensity=gl.getUniformLocation(program,\"gradientIntensity\");refs.uniforms.shineDistance=gl.getUniformLocation(program,\"shineDistance\");refs.uniforms.useMiddleColor=gl.getUniformLocation(program,\"useMiddleColor\");refs.uniforms.middleColor=gl.getUniformLocation(program,\"middleColor\");refs.uniforms.colorFusion=gl.getUniformLocation(program,\"colorFusion\");refs.uniforms.enableFilmGrain=gl.getUniformLocation(program,\"enableFilmGrain\");refs.uniforms.filmGrainIntensity=gl.getUniformLocation(program,\"filmGrainIntensity\");refs.uniforms.filmGrainSize=gl.getUniformLocation(program,\"filmGrainSize\");refs.uniforms.hotColorShade=gl.getUniformLocation(program,\"hotColorShade\");refs.uniforms.exposure=gl.getUniformLocation(program,\"exposure\");refs.uniforms.contrast=gl.getUniformLocation(program,\"contrast\");refs.uniforms.highlights=gl.getUniformLocation(program,\"highlights\");refs.uniforms.shadows=gl.getUniformLocation(program,\"shadows\");refs.uniforms.brightness=gl.getUniformLocation(program,\"brightness\");refs.uniforms.blackpoint=gl.getUniformLocation(program,\"blackpoint\");refs.uniforms.rotation=gl.getUniformLocation(program,\"rotation\");refs.uniforms.verticalOffset=gl.getUniformLocation(program,\"verticalOffset\");refs.uniforms.backgroundOpacity=gl.getUniformLocation(program,\"backgroundOpacity\");// Helper function to convert hex to RGB\nconst hexToRgb=hex=>{const result=/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16)/255,g:parseInt(result[2],16)/255,b:parseInt(result[3],16)/255}:{r:1,g:1,b:1};};// Set initial uniform values immediately\nconst rgb1=hexToRgb(propsRef.current.color1);const rgb2=hexToRgb(propsRef.current.color2);const rgb3=hexToRgb(propsRef.current.color3);const rgbMiddle=hexToRgb(propsRef.current.middleColor);gl.uniform3f(refs.uniforms.color1,rgb1.r,rgb1.g,rgb1.b);gl.uniform3f(refs.uniforms.color2,rgb2.r,rgb2.g,rgb2.b);gl.uniform3f(refs.uniforms.color3,rgb3.r,rgb3.g,rgb3.b);gl.uniform3f(refs.uniforms.middleColor,rgbMiddle.r,rgbMiddle.g,rgbMiddle.b);gl.uniform1f(refs.uniforms.xScale,propsRef.current.xScale);gl.uniform1f(refs.uniforms.yScale,propsRef.current.yScale);gl.uniform1f(refs.uniforms.distortion,propsRef.current.distortion);gl.uniform1f(refs.uniforms.gradientIntensity,propsRef.current.gradientIntensity);gl.uniform1f(refs.uniforms.shineDistance,propsRef.current.shineDistance);gl.uniform1i(refs.uniforms.useMiddleColor,propsRef.current.useMiddleColor?1:0);gl.uniform1f(refs.uniforms.colorFusion,propsRef.current.colorFusion);gl.uniform1i(refs.uniforms.enableFilmGrain,propsRef.current.enableFilmGrain?1:0);gl.uniform1f(refs.uniforms.filmGrainIntensity,propsRef.current.filmGrainIntensity);gl.uniform1f(refs.uniforms.filmGrainSize,propsRef.current.filmGrainSize);gl.uniform1f(refs.uniforms.hotColorShade,propsRef.current.hotColorShade);gl.uniform1f(refs.uniforms.exposure,propsRef.current.exposure);gl.uniform1f(refs.uniforms.contrast,propsRef.current.contrast);gl.uniform1f(refs.uniforms.highlights,propsRef.current.highlights);gl.uniform1f(refs.uniforms.shadows,propsRef.current.shadows);gl.uniform1f(refs.uniforms.brightness,propsRef.current.brightness);gl.uniform1f(refs.uniforms.blackpoint,propsRef.current.blackpoint);gl.uniform1f(refs.uniforms.rotation,propsRef.current.rotation);gl.uniform1f(refs.uniforms.verticalOffset,propsRef.current.verticalOffset);gl.uniform1f(refs.uniforms.backgroundOpacity,propsRef.current.backgroundOpacity);const handleResize=()=>{if(!canvas||!gl||!refs.uniforms.resolution)return;const width=canvas.clientWidth;const height=canvas.clientHeight;canvas.width=width*window.devicePixelRatio;canvas.height=height*window.devicePixelRatio;gl.viewport(0,0,canvas.width,canvas.height);gl.uniform2f(refs.uniforms.resolution,canvas.width,canvas.height);};const animate=()=>{if(!gl||!refs.program||!refs.uniforms.time)return;refs.timeValue+=propsRef.current.speed;// Clear canvas with adjustable opacity\ngl.clearColor(0,0,0,propsRef.current.backgroundOpacity);gl.clear(gl.COLOR_BUFFER_BIT);gl.uniform1f(refs.uniforms.time,refs.timeValue);gl.uniform1f(refs.uniforms.xScale,propsRef.current.xScale);gl.uniform1f(refs.uniforms.yScale,propsRef.current.yScale);gl.uniform1f(refs.uniforms.distortion,propsRef.current.distortion);gl.uniform1f(refs.uniforms.gradientIntensity,propsRef.current.gradientIntensity);gl.uniform1f(refs.uniforms.shineDistance,propsRef.current.shineDistance);gl.uniform1i(refs.uniforms.useMiddleColor,propsRef.current.useMiddleColor?1:0);gl.uniform1f(refs.uniforms.colorFusion,propsRef.current.colorFusion);gl.uniform1i(refs.uniforms.enableFilmGrain,propsRef.current.enableFilmGrain?1:0);gl.uniform1f(refs.uniforms.filmGrainIntensity,propsRef.current.filmGrainIntensity);gl.uniform1f(refs.uniforms.filmGrainSize,propsRef.current.filmGrainSize);gl.uniform1f(refs.uniforms.hotColorShade,propsRef.current.hotColorShade);gl.uniform1f(refs.uniforms.exposure,propsRef.current.exposure);gl.uniform1f(refs.uniforms.contrast,propsRef.current.contrast);gl.uniform1f(refs.uniforms.highlights,propsRef.current.highlights);gl.uniform1f(refs.uniforms.shadows,propsRef.current.shadows);gl.uniform1f(refs.uniforms.brightness,propsRef.current.brightness);gl.uniform1f(refs.uniforms.blackpoint,propsRef.current.blackpoint);gl.uniform1f(refs.uniforms.rotation,propsRef.current.rotation);gl.uniform1f(refs.uniforms.verticalOffset,propsRef.current.verticalOffset);gl.uniform1f(refs.uniforms.backgroundOpacity,propsRef.current.backgroundOpacity);// Convert hex colors to RGB\nconst hexToRgb=hex=>{const result=/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16)/255,g:parseInt(result[2],16)/255,b:parseInt(result[3],16)/255}:{r:1,g:1,b:1};};const rgb1=hexToRgb(propsRef.current.color1);const rgb2=hexToRgb(propsRef.current.color2);const rgb3=hexToRgb(propsRef.current.color3);const rgbMiddle=hexToRgb(propsRef.current.middleColor);gl.uniform3f(refs.uniforms.color1,rgb1.r,rgb1.g,rgb1.b);gl.uniform3f(refs.uniforms.color2,rgb2.r,rgb2.g,rgb2.b);gl.uniform3f(refs.uniforms.color3,rgb3.r,rgb3.g,rgb3.b);gl.uniform3f(refs.uniforms.middleColor,rgbMiddle.r,rgbMiddle.g,rgbMiddle.b);gl.drawArrays(gl.TRIANGLES,0,6);refs.animationId=requestAnimationFrame(animate);};handleResize();window.addEventListener(\"resize\",handleResize);// Start animation immediately\nanimate();return()=>{if(refs.animationId)cancelAnimationFrame(refs.animationId);window.removeEventListener(\"resize\",handleResize);if(gl&&refs.program){gl.deleteProgram(refs.program);}if(gl&&vertexShader)gl.deleteShader(vertexShader);if(gl&&fragmentShader)gl.deleteShader(fragmentShader);};},[]);if(RenderTarget.current()===RenderTarget.thumbnail){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",background:`linear-gradient(135deg, ${activeColors.color1}, ${activeColors.color2}, ${activeColors.color3})`,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#fff\",fontSize:14,fontFamily:\"sans-serif\"},children:\"Shader Flow\"});}return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",position:\"relative\"},children:/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{width:\"100%\",height:\"100%\",display:\"block\",backgroundColor:\"transparent\"}})});}addPropertyControls(ShaderFlow,{resetToDefaults:{type:ControlType.Boolean,title:\"Reset to Defaults\",defaultValue:false,enabledTitle:\"Reset\",disabledTitle:\"Reset\"},palette:{type:ControlType.Enum,title:\"Color Palette\",options:[\"custom\",\"vibrantBlue\",\"blueOrange\",\"electricBlue\",\"blueGold\",\"sunset\",\"neonBlue\",\"fire\",\"cool\",\"warmCool\",\"vibrantMix\",\"ocean\",\"tropical\",\"cyberpunk\",\"aurora\",\"lava\",\"electric\",\"candy\",\"neon\",\"plasma\",\"retro\",\"vaporwave\"],optionTitles:[\"Custom\",\"Vibrant Blue\",\"Blue Orange\",\"Electric Blue\",\"Blue Gold\",\"Sunset\",\"Neon Blue\",\"Fire\",\"Cool\",\"Warm Cool\",\"Vibrant Mix\",\"Ocean\",\"Tropical\",\"Cyberpunk\",\"Aurora\",\"Lava\",\"Electric\",\"Candy\",\"Neon\",\"Plasma\",\"Retro\",\"Vaporwave\"],defaultValue:\"vibrantBlue\",displaySegmentedControl:false},rotation:{type:ControlType.Number,title:\"Rotation\",defaultValue:0,min:0,max:360,step:1,unit:\"\\xb0\"},verticalOffset:{type:ControlType.Number,title:\"Vertical Offset\",defaultValue:0,min:-2,max:2,step:.1},color1:{type:ControlType.Color,title:\"Color 1\",defaultValue:\"#FF6B35\",hidden:({palette})=>palette!==\"custom\"},color2:{type:ControlType.Color,title:\"Color 2\",defaultValue:\"#F7931E\",hidden:({palette})=>palette!==\"custom\"},color3:{type:ControlType.Color,title:\"Color 3\",defaultValue:\"#FDC830\",hidden:({palette})=>palette!==\"custom\"},useMiddleColor:{type:ControlType.Boolean,title:\"Override Hot Color\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},middleColor:{type:ControlType.Color,title:\"Hot Color\",defaultValue:\"#FFFFFF\",hidden:({useMiddleColor})=>!useMiddleColor},hotColorShade:{type:ControlType.Number,title:\"Hot Color Shade\",defaultValue:1,min:0,max:1,step:.05},exposure:{type:ControlType.Number,title:\"Exposure\",defaultValue:1,min:0,max:3,step:.1},contrast:{type:ControlType.Number,title:\"Contrast\",defaultValue:1,min:0,max:3,step:.1},highlights:{type:ControlType.Number,title:\"Highlights\",defaultValue:1,min:0,max:2,step:.1},shadows:{type:ControlType.Number,title:\"Shadows\",defaultValue:1,min:0,max:2,step:.1},brightness:{type:ControlType.Number,title:\"Brightness\",defaultValue:0,min:-1,max:1,step:.05},blackpoint:{type:ControlType.Number,title:\"Blackpoint\",defaultValue:0,min:0,max:1,step:.05},gradientIntensity:{type:ControlType.Number,title:\"Gradient Intensity\",defaultValue:1,min:.1,max:3,step:.1},colorFusion:{type:ControlType.Number,title:\"Color Fusion\",defaultValue:.5,min:0,max:1,step:.05},shineDistance:{type:ControlType.Number,title:\"Shine Distance\",defaultValue:.05,min:.01,max:.2,step:.01},xScale:{type:ControlType.Number,title:\"X Scale\",defaultValue:1,min:.1,max:5,step:.1},yScale:{type:ControlType.Number,title:\"Y Scale\",defaultValue:.5,min:.1,max:2,step:.1},distortion:{type:ControlType.Number,title:\"Distortion\",defaultValue:.05,min:0,max:.5,step:.01},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:.012,min:.001,max:.1,step:.001},enableFilmGrain:{type:ControlType.Boolean,title:\"Enable Film Grain\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},filmGrainIntensity:{type:ControlType.Number,title:\"Grain Intensity\",defaultValue:.05,min:0,max:.3,step:.01,hidden:({enableFilmGrain})=>!enableFilmGrain},filmGrainSize:{type:ControlType.Number,title:\"Grain Size\",defaultValue:1.5,min:.5,max:5,step:.1,hidden:({enableFilmGrain})=>!enableFilmGrain},backgroundOpacity:{type:ControlType.Number,title:\"Background Opacity\",defaultValue:1,min:0,max:1,step:.05}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ShaderFlow\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ShaderTrails.map"],"mappings":"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"}