{"version":3,"file":"Heatmap.BV0WIhSP.mjs","names":["c","u","h","f","g","m","p","d","e","t","n","i","o","r","a","s","l","v","x","_","e.useRef","e.useCallback","e.useMemo","b","w","U","E","Heatmap","_","g","b"],"sources":["https:/framerusercontent.com/modules/ipPVdqePj3GNLn7GMqT9/wT7F9ZT4bDulVGL3OwCv/Bundle.js","https:/framerusercontent.com/modules/NvqzoNuMW8BJKf0AQtcZ/6gZ1IA29GR9FByseuMXR/Heatmap.js"],"sourcesContent":["function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import*as e from\"react\";import{forwardRef as t,useState as n,useRef as i,useEffect as o,memo as r,useLayoutEffect as a,useMemo as s}from\"react\";import{jsx as l}from\"react/jsx-runtime\";class c{constructor(e,t,n,i,o=0,r=0,a=2,s=8294400){_define_property(this,\"parentElement\",void 0);_define_property(this,\"canvasElement\",void 0);_define_property(this,\"gl\",void 0);_define_property(this,\"program\",null);_define_property(this,\"uniformLocations\",{});_define_property(this,\"fragmentShader\",void 0);_define_property(this,\"rafId\",null);_define_property(this,\"lastRenderTime\",0);_define_property(this,\"currentFrame\",0);_define_property(this,\"speed\",0);_define_property(this,\"providedUniforms\",void 0);_define_property(this,\"hasBeenDisposed\",!1);_define_property(this,\"resolutionChanged\",!0);_define_property(this,\"textures\",new Map);_define_property(this,\"minPixelRatio\",void 0);_define_property(this,\"maxPixelCount\",void 0);_define_property(this,\"isSafari\",function(){const e=navigator.userAgent.toLowerCase();return e.includes(\"safari\")&&!e.includes(\"chrome\")&&!e.includes(\"android\");}());_define_property(this,\"uniformCache\",{});_define_property(this,\"textureUnitMap\",new Map);_define_property(this,\"initProgram\",()=>{const e=function(e,t,n){const i=e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT),o=i?i.precision:null;o&&o<23&&(t=t.replace(/precision\\s+(lowp|mediump)\\s+float;/g,\"precision highp float;\"),n=n.replace(/precision\\s+(lowp|mediump)\\s+float/g,\"precision highp float\").replace(/\\b(uniform|varying|attribute)\\s+(lowp|mediump)\\s+(\\w+)/g,\"$1 highp $3\"));const r=u(e,e.VERTEX_SHADER,t),a=u(e,e.FRAGMENT_SHADER,n);if(!r||!a)return null;const s=e.createProgram();if(!s)return null;if(e.attachShader(s,r),e.attachShader(s,a),e.linkProgram(s),!e.getProgramParameter(s,e.LINK_STATUS))return e.deleteProgram(s),e.deleteShader(r),e.deleteShader(a),null;return e.detachShader(s,r),e.detachShader(s,a),e.deleteShader(r),e.deleteShader(a),s;}(this.gl,\"#version 300 es\\nprecision mediump float;\\n\\nlayout(location = 0) in vec4 a_position;\\n\\nuniform vec2 u_resolution;\\nuniform float u_pixelRatio;\\nuniform float u_imageAspectRatio;\\n\\nuniform float u_originX;\\nuniform float u_originY;\\nuniform float u_worldWidth;\\nuniform float u_worldHeight;\\nuniform float u_fit;\\n\\nuniform float u_scale;\\nuniform float u_rotation;\\nuniform float u_offsetX;\\nuniform float u_offsetY;\\n\\nuniform float u_pxSize;\\n\\nout vec2 v_objectUV;\\nout vec2 v_objectBoxSize;\\nout vec2 v_objectHelperBox;\\n\\nout vec2 v_responsiveUV;\\nout vec2 v_responsiveBoxSize;\\nout vec2 v_responsiveHelperBox;\\nout vec2 v_responsiveBoxGivenSize;\\n\\nout vec2 v_patternUV;\\nout vec2 v_patternBoxSize;\\nout vec2 v_patternHelperBox;\\n\\nout vec2 v_imageUV;\\n\\n// #define ADD_HELPERS\\n\\nvec3 getBoxSize(float boxRatio, vec2 givenBoxSize) {\\n  vec2 box = vec2(0.);\\n  // fit = none\\n  box.x = boxRatio * min(givenBoxSize.x / boxRatio, givenBoxSize.y);\\n  float noFitBoxWidth = box.x;\\n  if (u_fit == 1.) { // fit = contain\\n    box.x = boxRatio * min(u_resolution.x / boxRatio, u_resolution.y);\\n  } else if (u_fit == 2.) { // fit = cover\\n    box.x = boxRatio * max(u_resolution.x / boxRatio, u_resolution.y);\\n  }\\n  box.y = box.x / boxRatio;\\n  return vec3(box, noFitBoxWidth);\\n}\\n\\nvoid main() {\\n  gl_Position = a_position;\\n\\n  vec2 uv = gl_Position.xy * .5;\\n  vec2 boxOrigin = vec2(.5 - u_originX, u_originY - .5);\\n  vec2 givenBoxSize = vec2(u_worldWidth, u_worldHeight);\\n  givenBoxSize = max(givenBoxSize, vec2(1.)) * u_pixelRatio;\\n  float r = u_rotation * 3.14159265358979323846 / 180.;\\n  mat2 graphicRotation = mat2(cos(r), sin(r), -sin(r), cos(r));\\n  vec2 graphicOffset = vec2(-u_offsetX, u_offsetY);\\n\\n\\n  // ===================================================\\n  // Sizing api for graphic objects with fixed ratio\\n  // (currently supports only ratio = 1)\\n\\n  float fixedRatio = 1.;\\n  vec2 fixedRatioBoxGivenSize = vec2(\\n  (u_worldWidth == 0.) ? u_resolution.x : givenBoxSize.x,\\n  (u_worldHeight == 0.) ? u_resolution.y : givenBoxSize.y\\n  );\\n\\n  v_objectBoxSize = getBoxSize(fixedRatio, fixedRatioBoxGivenSize).xy;\\n  vec2 objectWorldScale = u_resolution.xy / v_objectBoxSize;\\n\\n  #ifdef ADD_HELPERS\\n  v_objectHelperBox = uv;\\n  v_objectHelperBox *= objectWorldScale;\\n  v_objectHelperBox += boxOrigin * (objectWorldScale - 1.);\\n  #endif\\n\\n  v_objectUV = uv;\\n  v_objectUV *= objectWorldScale;\\n  v_objectUV += boxOrigin * (objectWorldScale - 1.);\\n  v_objectUV += graphicOffset;\\n  v_objectUV /= u_scale;\\n  v_objectUV = graphicRotation * v_objectUV;\\n\\n\\n  // ===================================================\\n\\n\\n  // ===================================================\\n  // Sizing api for graphic objects with either givenBoxSize ratio or canvas ratio.\\n  // Full-screen mode available with u_worldWidth = u_worldHeight = 0\\n\\n  v_responsiveBoxGivenSize = vec2(\\n  (u_worldWidth == 0.) ? u_resolution.x : givenBoxSize.x,\\n  (u_worldHeight == 0.) ? u_resolution.y : givenBoxSize.y\\n  );\\n  float responsiveRatio = v_responsiveBoxGivenSize.x / v_responsiveBoxGivenSize.y;\\n  v_responsiveBoxSize = getBoxSize(responsiveRatio, v_responsiveBoxGivenSize).xy;\\n  vec2 responsiveBoxScale = u_resolution.xy / v_responsiveBoxSize;\\n\\n  #ifdef ADD_HELPERS\\n  v_responsiveHelperBox = uv;\\n  v_responsiveHelperBox *= responsiveBoxScale;\\n  v_responsiveHelperBox += boxOrigin * (responsiveBoxScale - 1.);\\n  #endif\\n\\n  v_responsiveUV = uv;\\n  v_responsiveUV *= responsiveBoxScale;\\n  v_responsiveUV += boxOrigin * (responsiveBoxScale - 1.);\\n  v_responsiveUV += graphicOffset;\\n  v_responsiveUV /= u_scale;\\n  v_responsiveUV.x *= responsiveRatio;\\n  v_responsiveUV = graphicRotation * v_responsiveUV;\\n  v_responsiveUV.x /= responsiveRatio;\\n\\n  // ===================================================\\n\\n\\n  // ===================================================\\n  // Sizing api for patterns\\n  // (treating graphics as a image u_worldWidth x u_worldHeight size)\\n\\n  float patternBoxRatio = givenBoxSize.x / givenBoxSize.y;\\n  vec2 patternBoxGivenSize = vec2(\\n  (u_worldWidth == 0.) ? u_resolution.x : givenBoxSize.x,\\n  (u_worldHeight == 0.) ? u_resolution.y : givenBoxSize.y\\n  );\\n  patternBoxRatio = patternBoxGivenSize.x / patternBoxGivenSize.y;\\n\\n  vec3 boxSizeData = getBoxSize(patternBoxRatio, patternBoxGivenSize);\\n  v_patternBoxSize = boxSizeData.xy;\\n  float patternBoxNoFitBoxWidth = boxSizeData.z;\\n  vec2 patternBoxScale = u_resolution.xy / v_patternBoxSize;\\n\\n  #ifdef ADD_HELPERS\\n  v_patternHelperBox = uv;\\n  v_patternHelperBox *= patternBoxScale;\\n  v_patternHelperBox += boxOrigin * (patternBoxScale - 1.);\\n  #endif\\n\\n  v_patternUV = uv;\\n  v_patternUV += graphicOffset / patternBoxScale;\\n  v_patternUV += boxOrigin;\\n  v_patternUV -= boxOrigin / patternBoxScale;\\n  v_patternUV *= u_resolution.xy;\\n  v_patternUV /= u_pixelRatio;\\n  if (u_fit > 0.) {\\n    v_patternUV *= (patternBoxNoFitBoxWidth / v_patternBoxSize.x);\\n  }\\n  v_patternUV /= u_scale;\\n  v_patternUV = graphicRotation * v_patternUV;\\n  v_patternUV += boxOrigin / patternBoxScale;\\n  v_patternUV -= boxOrigin;\\n  // x100 is a default multiplier between vertex and fragmant shaders\\n  // we use it to avoid UV presision issues\\n  v_patternUV *= .01;\\n\\n  // ===================================================\\n\\n\\n  // ===================================================\\n  // Sizing api for images\\n\\n  vec2 imageBoxSize;\\n  if (u_fit == 1.) { // contain\\n    imageBoxSize.x = min(u_resolution.x / u_imageAspectRatio, u_resolution.y) * u_imageAspectRatio;\\n  } else if (u_fit == 2.) { // cover\\n    imageBoxSize.x = max(u_resolution.x / u_imageAspectRatio, u_resolution.y) * u_imageAspectRatio;\\n  } else {\\n    imageBoxSize.x = min(10.0, 10.0 / u_imageAspectRatio * u_imageAspectRatio);\\n  }\\n  imageBoxSize.y = imageBoxSize.x / u_imageAspectRatio;\\n  vec2 imageBoxScale = u_resolution.xy / imageBoxSize;\\n\\n  #ifdef ADD_HELPERS\\n  vec2 imageHelperBox = uv;\\n  imageHelperBox *= imageBoxScale;\\n  imageHelperBox += boxOrigin * (imageBoxScale - 1.);\\n  #endif\\n\\n  v_imageUV = uv;\\n  v_imageUV *= imageBoxScale;\\n  v_imageUV += boxOrigin * (imageBoxScale - 1.);\\n  v_imageUV += graphicOffset;\\n  v_imageUV /= u_scale;\\n  v_imageUV.x *= u_imageAspectRatio;\\n  v_imageUV = graphicRotation * v_imageUV;\\n  v_imageUV.x /= u_imageAspectRatio;\\n\\n  v_imageUV += .5;\\n  v_imageUV.y = 1. - v_imageUV.y;\\n\\n  // ===================================================\\n\\n}\",this.fragmentShader);e&&(this.program=e);});_define_property(this,\"setupPositionAttribute\",()=>{const e=this.gl.getAttribLocation(this.program,\"a_position\"),t=this.gl.createBuffer();this.gl.bindBuffer(this.gl.ARRAY_BUFFER,t);this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,-1,1,1,-1,1,1]),this.gl.STATIC_DRAW),this.gl.enableVertexAttribArray(e),this.gl.vertexAttribPointer(e,2,this.gl.FLOAT,!1,0,0);});_define_property(this,\"setupUniforms\",()=>{const e={u_time:this.gl.getUniformLocation(this.program,\"u_time\"),u_pixelRatio:this.gl.getUniformLocation(this.program,\"u_pixelRatio\"),u_resolution:this.gl.getUniformLocation(this.program,\"u_resolution\")};Object.entries(this.providedUniforms).forEach(([t,n])=>{if(e[t]=this.gl.getUniformLocation(this.program,t),n instanceof HTMLImageElement){const n=`${t}AspectRatio`;e[n]=this.gl.getUniformLocation(this.program,n);}}),this.uniformLocations=e;});_define_property(this,\"renderScale\",1);_define_property(this,\"parentWidth\",0);_define_property(this,\"parentHeight\",0);_define_property(this,\"resizeObserver\",null);_define_property(this,\"setupResizeObserver\",()=>{this.resizeObserver=new ResizeObserver(([e])=>{e?.borderBoxSize[0]&&(this.parentWidth=e.borderBoxSize[0].inlineSize,this.parentHeight=e.borderBoxSize[0].blockSize),this.handleResize();}),this.resizeObserver.observe(this.parentElement),visualViewport?.addEventListener(\"resize\",this.handleVisualViewportChange);const e=this.parentElement.getBoundingClientRect();this.parentWidth=e.width,this.parentHeight=e.height,this.handleResize();});_define_property(this,\"resizeRafId\",null);_define_property(this,\"handleVisualViewportChange\",()=>{null!==this.resizeRafId&&cancelAnimationFrame(this.resizeRafId),this.resizeRafId=requestAnimationFrame(()=>{this.resizeRafId=requestAnimationFrame(()=>{this.handleResize();});});});_define_property(this,\"handleResize\",()=>{null!==this.resizeRafId&&cancelAnimationFrame(this.resizeRafId);const e=visualViewport?.scale??1,t=window.innerWidth-document.documentElement.clientWidth,n=visualViewport?visualViewport.scale*visualViewport.width+t:window.innerWidth,i=Math.round(1e4*window.outerWidth/n)/1e4,o=this.isSafari?devicePixelRatio:devicePixelRatio/i,r=Math.max(o,this.minPixelRatio)*i*e,a=this.parentWidth*r,s=this.parentHeight*r,l=Math.sqrt(this.maxPixelCount)/Math.sqrt(a*s),c=r*Math.min(1,l),u=Math.round(this.parentWidth*c),h=Math.round(this.parentHeight*c);this.canvasElement.width===u&&this.canvasElement.height===h&&this.renderScale===c||(this.renderScale=c,this.canvasElement.width=u,this.canvasElement.height=h,this.resolutionChanged=!0,this.gl.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),this.render(performance.now()));});_define_property(this,\"render\",e=>{if(this.hasBeenDisposed)return;if(null===this.program)return;const t=e-this.lastRenderTime;this.lastRenderTime=e,0!==this.speed&&(this.currentFrame+=t*this.speed),this.gl.clear(this.gl.COLOR_BUFFER_BIT),this.gl.useProgram(this.program),this.gl.uniform1f(this.uniformLocations.u_time,.001*this.currentFrame),this.resolutionChanged&&(this.gl.uniform2f(this.uniformLocations.u_resolution,this.gl.canvas.width,this.gl.canvas.height),this.gl.uniform1f(this.uniformLocations.u_pixelRatio,this.renderScale),this.resolutionChanged=!1),this.gl.drawArrays(this.gl.TRIANGLES,0,6),0!==this.speed?this.requestRender():this.rafId=null;});_define_property(this,\"requestRender\",()=>{null!==this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(this.render);});_define_property(this,\"setTextureUniform\",(e,t)=>{if(!t.complete||0===t.naturalWidth)throw new Error(`Paper Shaders: image for uniform ${e} must be fully loaded`);const n=this.textures.get(e);n&&this.gl.deleteTexture(n),this.textureUnitMap.has(e)||this.textureUnitMap.set(e,this.textureUnitMap.size);const i=this.textureUnitMap.get(e);this.gl.activeTexture(this.gl.TEXTURE0+i);const o=this.gl.createTexture();this.gl.bindTexture(this.gl.TEXTURE_2D,o),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,this.gl.RGBA,this.gl.UNSIGNED_BYTE,t);if(this.gl.getError()!==this.gl.NO_ERROR||null===o)return;this.textures.set(e,o);const r=this.uniformLocations[e];if(r){this.gl.uniform1i(r,i);const n=`${e}AspectRatio`,o=this.uniformLocations[n];if(o){const e=t.naturalWidth/t.naturalHeight;this.gl.uniform1f(o,e);}}});_define_property(this,\"areUniformValuesEqual\",(e,t)=>e===t||!(!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length)&&e.every((e,n)=>this.areUniformValuesEqual(e,t[n])));_define_property(this,\"setUniformValues\",e=>{this.gl.useProgram(this.program),Object.entries(e).forEach(([e,t])=>{let n=t;if(t instanceof HTMLImageElement&&(n=`${t.src.slice(0,200)}|${t.naturalWidth}x${t.naturalHeight}`),this.areUniformValuesEqual(this.uniformCache[e],n))return;this.uniformCache[e]=n;const i=this.uniformLocations[e];if(i)if(t instanceof HTMLImageElement)this.setTextureUniform(e,t);else if(Array.isArray(t)){let e=null,n=null;if(void 0!==t[0]&&Array.isArray(t[0])){const i=t[0].length;if(!t.every(e=>e.length===i))return;e=t.flat(),n=i;}else e=t,n=e.length;switch(n){case 2:this.gl.uniform2fv(i,e);break;case 3:this.gl.uniform3fv(i,e);break;case 4:this.gl.uniform4fv(i,e);break;case 9:this.gl.uniformMatrix3fv(i,!1,e);break;case 16:this.gl.uniformMatrix4fv(i,!1,e);}}else\"number\"==typeof t?this.gl.uniform1f(i,t):\"boolean\"==typeof t&&this.gl.uniform1i(i,t?1:0);});});_define_property(this,\"getCurrentFrame\",()=>this.currentFrame);_define_property(this,\"setFrame\",e=>{this.currentFrame=e,this.lastRenderTime=performance.now(),this.render(performance.now());});_define_property(this,\"setSpeed\",(e=1)=>{this.speed=e,null===this.rafId&&0!==e&&(this.lastRenderTime=performance.now(),this.rafId=requestAnimationFrame(this.render)),null!==this.rafId&&0===e&&(cancelAnimationFrame(this.rafId),this.rafId=null);});_define_property(this,\"setMaxPixelCount\",(e=8294400)=>{this.maxPixelCount=e,this.handleResize();});_define_property(this,\"setMinPixelRatio\",(e=2)=>{this.minPixelRatio=e,this.handleResize();});_define_property(this,\"setUniforms\",e=>{this.setUniformValues(e),this.providedUniforms={...this.providedUniforms,...e},this.render(performance.now());});_define_property(this,\"dispose\",()=>{this.hasBeenDisposed=!0,null!==this.rafId&&(cancelAnimationFrame(this.rafId),this.rafId=null),this.gl&&this.program&&(this.textures.forEach(e=>{this.gl.deleteTexture(e);}),this.textures.clear(),this.gl.deleteProgram(this.program),this.program=null,this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,null),this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,null),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,null),this.gl.getError()),this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null),visualViewport?.removeEventListener(\"resize\",this.handleVisualViewportChange),this.uniformLocations={},this.parentElement.paperShaderMount=void 0;});if(!(e instanceof HTMLElement))throw new Error(\"Paper Shaders: parent element must be an HTMLElement\");if(this.parentElement=e,!document.querySelector(\"style[data-paper-shader]\")){const e=document.createElement(\"style\");e.innerHTML=h,e.setAttribute(\"data-paper-shader\",\"\"),document.head.prepend(e);}const l=document.createElement(\"canvas\");this.canvasElement=l,this.parentElement.prepend(l),this.fragmentShader=t,this.providedUniforms=n,this.currentFrame=r,this.minPixelRatio=a,this.maxPixelCount=s;const c=l.getContext(\"webgl2\",i);if(!c)throw new Error(\"Paper Shaders: WebGL is not supported in this browser\");this.gl=c,this.initProgram(),this.setupPositionAttribute(),this.setupUniforms(),this.setUniformValues(this.providedUniforms),this.setupResizeObserver(),this.setSpeed(o),this.parentElement.setAttribute(\"data-paper-shader\",\"\"),this.parentElement.paperShaderMount=this;}}function u(e,t,n){const i=e.createShader(t);return i?(e.shaderSource(i,n),e.compileShader(i),e.getShaderParameter(i,e.COMPILE_STATUS)?i:(e.deleteShader(i),null)):null;}const h=\"@layer paper-shaders {\\n  :where([data-paper-shader]) {\\n    isolation: isolate;\\n    position: relative;\\n\\n    & canvas {\\n      contain: strict;\\n      display: block;\\n      position: absolute;\\n      inset: 0;\\n      z-index: -1;\\n      width: 100%;\\n      height: 100%;\\n      border-radius: inherit;\\n      corner-shape: inherit;\\n    }\\n  }\\n}\";const f={fit:\"contain\",scale:1,rotation:0,offsetX:0,offsetY:0,originX:.5,originY:.5,worldWidth:0,worldHeight:0},g={none:0,contain:1,cover:2},m=10,p=`#version 300 es\nprecision highp float;\n\nin mediump vec2 v_imageUV;\nin mediump vec2 v_objectUV;\nout vec4 fragColor;\n\nuniform sampler2D u_image;\nuniform float u_time;\nuniform float u_imageAspectRatio;\n\nuniform vec4 u_colorBack;\nuniform vec4 u_colors[${m}];\nuniform float u_colorsCount;\n\nuniform float u_angle;\nuniform float u_noise;\nuniform float u_innerGlow;\nuniform float u_outerGlow;\nuniform float u_contour;\n\n#define TWO_PI 6.28318530718\n#define PI 3.14159265358979323846\n\nfloat getImgFrame(vec2 uv, float th) {\n  float frame = 1.;\n  frame *= smoothstep(0., th, uv.y);\n  frame *= smoothstep(1., 1. - th, uv.y);\n  frame *= smoothstep(0., th, uv.x);\n  frame *= smoothstep(1., 1. - th, uv.x);\n  return frame;\n}\n\nfloat circle(vec2 uv, vec2 c, vec2 r) {\n  return 1. - smoothstep(r[0], r[1], length(uv - c));\n}\n\nfloat lst(float edge0, float edge1, float x) {\n  return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);\n}\n\nfloat sst(float edge0, float edge1, float x) {\n  return smoothstep(edge0, edge1, x);\n}\n\nfloat shadowShape(vec2 uv, float t, float contour) {\n  vec2 scaledUV = uv;\n\n  // base shape tranjectory\n  float posY = mix(-1., 2., t);\n\n  // scaleX when it's moving down\n  scaledUV.y -= .5;\n  float mainCircleScale = sst(0., .8, posY) * lst(1.4, .9, posY);\n  scaledUV *= vec2(1., 1. + 1.5 * mainCircleScale);\n  scaledUV.y += .5;\n\n  // base shape\n  float innerR = .4;\n  float outerR = 1. - .3 * (sst(.1, .2, t) * sst(.5, .2, t));\n  float s = circle(scaledUV, vec2(.5, posY - .2), vec2(innerR, outerR));\n  float shapeSizing = sst(.2, .3, t) * sst(.6, .3, t);\n  s = pow(s, 1.4);\n  s *= 1.2;\n\n  // flat gradient to take over the shadow shape\n  float topFlattener = 0.;\n  {\n    float pos = posY - uv.y;\n    float edge = 1.2;\n    topFlattener = lst(-.4, 0., pos) * sst(edge, .0, pos);\n    topFlattener = pow(topFlattener, 3.);\n    float topFlattenerMixer = (1. - sst(.0, .3, pos));\n    s = mix(topFlattener, s, topFlattenerMixer);\n  }\n\n  // apple right circle\n  {\n    float visibility = sst(.6, .7, t) * sst(.9, .8, t);\n    float angle = -2. -t * TWO_PI;\n    float rightCircle = circle(uv, vec2(.95 - .2 * cos(angle), .4 - .1 * sin(angle)), vec2(.15, .3));\n    rightCircle *= visibility;\n    s = mix(s, 0., rightCircle);\n  }\n\n  // apple top circle\n  {\n    float topCircle = circle(uv, vec2(.5, .19), vec2(.05, .25));\n    topCircle += 2. * contour * circle(uv, vec2(.5, .19), vec2(.2, .5));\n    float visibility = .55 * sst(.2, .3, t) * sst(.45, .3, t);\n    topCircle *= visibility;\n    s = mix(s, 0., topCircle);\n  }\n\n  float leafMask = circle(uv, vec2(.53, .13), vec2(.08, .19));\n  leafMask = mix(leafMask, 0., sst(.54, .4, uv.x));\n  leafMask = mix(0., leafMask, sst(.0, .2, uv.y));\n  leafMask *= (sst(.5, 1.1, posY) * sst(1.5, 1.3, posY));\n  s += leafMask;\n\n  // apple bottom circle\n  {\n    float visibility = sst(.0, .4, t) * sst(.8, .6, t);\n    s = mix(s, 0., visibility * circle(uv, vec2(.52, .92), vec2(.09, .25)));\n  }\n\n  // random balls that are invisible if apple logo is selected\n  {\n    float pos = sst(.0, .6, t) * sst(1., .6, t);\n    s = mix(s, .5, circle(uv, vec2(.0, 1.2 - .5 * pos), vec2(.1, .3)));\n    s = mix(s, .0, circle(uv, vec2(1., .5 + .5 * pos), vec2(.1, .3)));\n\n    s = mix(s, 1., circle(uv, vec2(.95, .2 + .2 * sst(.3, .4, t) * sst(.7, .5, t)), vec2(.07, .22)));\n    s /= sst(1., .85, uv.y);\n  }\n\n  s = clamp(0., 1., s);\n  return s;\n}\n\n\nvoid main() {\n  vec2 uv = v_objectUV + .5;\n  uv.y = 1. - uv.y;\n\n  vec2 imgUV = v_imageUV;\n  imgUV -= .5;\n  imgUV *= 0.5714285714285714;\n  imgUV += .5;\n  float imgSoftFrame = getImgFrame(imgUV, .03);\n  \n  vec4 img = texture(u_image, imgUV);\n  if (img.a == 0.) {\n    fragColor = u_colorBack;\n    return;\n  }\n\n  float t = .1 * u_time;\n  t -= .3;\n\n  float tCopy = t + 1. / 3.;\n  float tCopy2 = t + 2. / 3.;\n\n  t = mod(t, 1.);\n  tCopy = mod(tCopy, 1.);\n  tCopy2 = mod(tCopy2, 1.);\n\n  vec2 animationUV = imgUV - vec2(.5);\n  float angle = u_angle * PI / 180.;\n  float cosA = cos(angle);\n  float sinA = sin(angle);\n  animationUV = vec2(\n  animationUV.x * cosA - animationUV.y * sinA,\n  animationUV.x * sinA + animationUV.y * cosA\n  ) + vec2(.5);\n\n  float shape = img[0];\n  float outerBlur = 1. - mix(1., img[1], shape);\n  float innerBlur = mix(img[1], 0., shape);\n  float contour = mix(img[2], 0., shape);\n\n  outerBlur *= imgSoftFrame;\n\n  float shadow = shadowShape(animationUV, t, innerBlur);\n  float shadowCopy = shadowShape(animationUV, tCopy, innerBlur);\n  float shadowCopy2 = shadowShape(animationUV, tCopy2, innerBlur);\n\n  float inner = .8 + .8 * innerBlur;\n  inner = mix(inner, 0., shadow);\n  inner = mix(inner, 0., shadowCopy);\n  inner = mix(inner, 0., shadowCopy2);\n\n  inner *= mix(0., 2., u_innerGlow);\n\n  inner += (u_contour * 2.) * contour;\n  inner = min(1., inner);\n  inner *= (1. - shape);\n\n  float outer = 0.;\n  {\n    t *= 3.;\n    t = mod(t - .1, 1.);\n\n    outer = .9 * pow(outerBlur, .8);\n    float y = mod(animationUV.y - t, 1.);\n    float animatedMask = sst(.3, .65, y) * sst(1., .65, y);\n    animatedMask = .5 + animatedMask;\n    outer *= animatedMask;\n    outer *= mix(0., 5., pow(u_outerGlow, 2.));\n    outer *= imgSoftFrame;\n  }\n\n  inner = pow(inner, 1.2);\n  float heat = clamp(inner + outer, 0., 1.);\n\n  heat += (.005 + .35 * u_noise) * (fract(sin(dot(uv, vec2(12.9898, 78.233))) * 43758.5453123) - .5);\n\n  float mixer = heat * u_colorsCount;\n  vec4 gradient = u_colors[0];\n  gradient.rgb *= gradient.a;\n  float outerShape = 0.;\n  for (int i = 1; i < ${m+1}; i++) {\n    if (i > int(u_colorsCount)) break;\n    float m = clamp(mixer - float(i - 1), 0., 1.);\n    if (i == 1) {\n      outerShape = m;\n    }\n    vec4 c = u_colors[i - 1];\n    c.rgb *= c.a;\n    gradient = mix(gradient, c, m);\n  }\n\n  vec3 color = gradient.rgb * outerShape;\n  float opacity = gradient.a * outerShape;\n\n  vec3 bgColor = u_colorBack.rgb * u_colorBack.a;\n  color = color + bgColor * (1.0 - opacity);\n  opacity = opacity + u_colorBack.a * (1.0 - opacity);\n\n  color += .02 * (fract(sin(dot(uv + 1., vec2(12.9898, 78.233))) * 43758.5453123) - .5);\n  \n  fragColor = vec4(color, opacity);\n}\n`;function d(e){const t=document.createElement(\"canvas\"),n=1e3;return new Promise((i,o)=>{const r=new Image;r.crossOrigin=\"anonymous\",r.addEventListener(\"load\",()=>{(\"string\"==typeof e?e.endsWith(\".svg\"):\"image/svg+xml\"===e.type)&&(r.width=n,r.height=n);const a=r.naturalWidth/r.naturalHeight,s=Math.floor(150),l=Math.ceil(2.5*s);let c=n,u=n;a>1?u=Math.floor(n/a):c=Math.floor(n*a),t.width=c+2*l,t.height=u+2*l;const h=t.getContext(\"2d\",{willReadFrequently:!0});if(!h)throw new Error(\"Failed to get canvas 2d context\");h.fillStyle=\"white\",h.fillRect(0,0,t.width,t.height),h.filter=\"grayscale(100%) blur(\"+s+\"px)\",h.drawImage(r,l,l,c,u);const f=h.getImageData(0,0,t.width,t.height).data;h.fillRect(0,0,t.width,t.height),h.filter=\"grayscale(100%) blur(\"+Math.round(.12*s)+\"px)\",h.drawImage(r,l,l,c,u);const g=h.getImageData(0,0,t.width,t.height).data;h.fillRect(0,0,t.width,t.height),h.filter=\"grayscale(100%) blur(5px)\",h.drawImage(r,l,l,c,u);const m=h.getImageData(0,0,t.width,t.height).data;let p=h.createImageData(t.width,t.height);const d=t.width*t.height;for(let e=0;e<d;e++){const t=4*e;p.data[t]=m[t],p.data[t+1]=f[t],p.data[t+2]=g[t],p.data[t+3]=255;}h.putImageData(p,0,0),t.toBlob(e=>{e?i({blob:e}):o(new Error(\"Failed to create PNG blob\"));},\"image/png\");}),r.addEventListener(\"error\",()=>{o(new Error(\"Failed to load image\"));}),r.src=\"string\"==typeof e?e:URL.createObjectURL(e);});}function v(e){if(Array.isArray(e))return 4===e.length?e:3===e.length?[...e,1]:_;if(\"string\"!=typeof e)return _;let t,n,i,o=1;if(e.startsWith(\"#\"))[t,n,i,o]=function(e){3===(e=e.replace(/^#/,\"\")).length&&(e=e.split(\"\").map(e=>e+e).join(\"\"));6===e.length&&(e+=\"ff\");const t=parseInt(e.slice(0,2),16)/255,n=parseInt(e.slice(2,4),16)/255,i=parseInt(e.slice(4,6),16)/255,o=parseInt(e.slice(6,8),16)/255;return[t,n,i,o];}(e);else if(e.startsWith(\"rgb\"))[t,n,i,o]=function(e){const t=e.match(/^rgba?\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*(?:,\\s*([0-9.]+))?\\s*\\)$/i);return t?[parseInt(t[1]??\"0\")/255,parseInt(t[2]??\"0\")/255,parseInt(t[3]??\"0\")/255,void 0===t[4]?1:parseFloat(t[4])]:[0,0,0,1];}(e);else{if(!e.startsWith(\"hsl\"))return _;[t,n,i,o]=function(e){const[t,n,i,o]=e,r=t/360,a=n/100,s=i/100;let l,c,u;if(0===n)l=c=u=s;else{const e=(e,t,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e),t=s<.5?s*(1+a):s+a-s*a,n=2*s-t;l=e(n,t,r+1/3),c=e(n,t,r),u=e(n,t,r-1/3);}return[l,c,u,o];}(function(e){const t=e.match(/^hsla?\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)%\\s*,\\s*(\\d+)%\\s*(?:,\\s*([0-9.]+))?\\s*\\)$/i);return t?[parseInt(t[1]??\"0\"),parseInt(t[2]??\"0\"),parseInt(t[3]??\"0\"),void 0===t[4]?1:parseFloat(t[4])]:[0,0,0,1];}(e));}return[x(t,0,1),x(n,0,1),x(i,0,1),x(o,0,1)];}const x=(e,t,n)=>Math.min(Math.max(e,t),n),_=[0,0,0,1];async function b(e){const t={},n=[];return Object.entries(e).forEach(([e,i])=>{if(\"string\"==typeof i){if(!(e=>{try{return e.startsWith(\"/\")||new URL(e),!0;}catch{return!1;}})(i))return;const o=new Promise((n,o)=>{const r=new Image;(e=>{try{return!e.startsWith(\"/\")&&new URL(e,window.location.origin).origin!==window.location.origin;}catch{return!1;}})(i)&&(r.crossOrigin=\"anonymous\"),r.onload=()=>{t[e]=r,n();},r.onerror=()=>{o();},r.src=i;});n.push(o);}else t[e]=i;}),await Promise.all(n),t;}const R=/*#__PURE__*/t(function({fragmentShader:t,uniforms:r,webGlContextAttributes:a,speed:s=0,frame:u=0,minPixelRatio:h,maxPixelCount:f,...g},m){const[p,d]=n(!1),v=i(null),x=i(null);o(()=>((async()=>{const e=await b(r);v.current&&!x.current&&(x.current=new c(v.current,t,e,a,s,u,h,f),d(!0));})(),()=>{x.current?.dispose(),x.current=null;}),[t,a]),o(()=>{let e=!1;return(async()=>{const t=await b(r);e||x.current?.setUniforms(t);})(),()=>{e=!0;};},[r,p]),o(()=>{x.current?.setSpeed(s);},[s,p]),o(()=>{x.current?.setMaxPixelCount(f);},[f,p]),o(()=>{x.current?.setMinPixelRatio(h);},[h,p]),o(()=>{x.current?.setFrame(u);},[u,p]);const _=function(t){const n=e.useRef(void 0),i=e.useCallback(e=>{const n=t.map(t=>{if(null!=t){if(\"function\"==typeof t){const n=t,i=n(e);return\"function\"==typeof i?i:()=>{n(null);};}return t.current=e,()=>{t.current=null;};}});return()=>{n.forEach(e=>e?.());};},t);return e.useMemo(()=>t.every(e=>null==e)?null:e=>{n.current&&(n.current(),n.current=void 0),null!=e&&(n.current=i(e));},t);}([v,m]);return l(\"div\",{ref:_,...g});});R.displayName=\"ShaderMount\";const S=\"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\",w=[];function U(e,t){if(e===t)return!0;if(!e||!t)return!1;const n=e.length;if(t.length!==n)return!1;for(let i=0;i<n;i++)if(e[i]!==t[i])return!1;return!0;}const B=(e,t)=>(function(e,t=null){null===t&&(t=[e]);for(const e of w)if(U(t,e.keys)){if(Object.prototype.hasOwnProperty.call(e,\"error\"))throw e.error;if(Object.prototype.hasOwnProperty.call(e,\"response\"))return e.response;throw e.promise;}const n={keys:t,promise:(i=e,\"object\"==typeof i&&\"function\"==typeof i.then?e:e(...t)).then(e=>{n.response=e;}).catch(e=>n.error=e)};var i;throw w.push(n),n.promise;})(e,t),y={...f,scale:.75,speed:1,frame:0,image:\"https://shaders.paper.design/images/image-filters/0019.webp\",contour:.5,angle:0,noise:0,innerGlow:.5,outerGlow:.5,colorBack:\"#000000\",colors:[\"#11206a\",\"#1f3ba2\",\"#2f63e7\",\"#6bd7ff\",\"#ffe679\",\"#ff991e\",\"#ff4c00\"]},E=/*#__PURE__*/r(function({speed:e=y.speed,frame:t=y.frame,contour:i=y.contour,angle:o=y.angle,noise:r=y.noise,innerGlow:c=y.innerGlow,outerGlow:u=y.outerGlow,colorBack:h=y.colorBack,colors:f=y.colors,suspendWhenProcessingImage:m=!1,fit:x=y.fit,image:_=S,offsetX:b=y.offsetX,offsetY:w=y.offsetY,originX:U=y.originX,originY:E=y.originY,rotation:A=y.rotation,scale:V=y.scale,worldHeight:z=y.worldHeight,worldWidth:F=y.worldWidth,...I}){const T=\"string\"==typeof _?_:_.src,[C,M]=n(S);let P;P=m?B(()=>d(T).then(e=>URL.createObjectURL(e.blob)),[T]):C,a(()=>{if(m)return;if(!T)return void M(S);let e,t=!0;return d(T).then(n=>{t&&(e=URL.createObjectURL(n.blob),M(e));}),()=>{t=!1,URL.revokeObjectURL(e);};},[T,m]);const L=s(()=>({u_image:P,u_contour:i,u_angle:o,u_noise:r,u_innerGlow:c,u_outerGlow:u,u_colorBack:v(h),u_colors:f.map(v),u_colorsCount:f.length,u_fit:g[x],u_offsetX:b,u_offsetY:w,u_originX:U,u_originY:E,u_rotation:A,u_scale:V,u_worldHeight:z,u_worldWidth:F}),[e,t,i,o,r,c,u,f,h,P,x,b,w,U,E,A,V,z,F]);return l(R,{...I,speed:e,frame:t,fragmentShader:p,uniforms:L});});export{E as Heatmap};\nexport const __FramerMetadata__ = {\"exports\":{\"Heatmap\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Bundle.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{ControlType,addPropertyControls,RenderTarget}from\"framer\";import{Heatmap}from\"https://framerusercontent.com/modules/ipPVdqePj3GNLn7GMqT9/wT7F9ZT4bDulVGL3OwCv/Bundle.js\";// ------------------------------------------------------------ //\n// PROPERTY CONTROLS\n// ------------------------------------------------------------ //\naddPropertyControls(HeatmapFramer,{image:{type:ControlType.ResponsiveImage,description:\"White or transparent background & black foreground\"},colors:{type:ControlType.Array,control:{type:ControlType.Color}},colorBack:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgb(0, 0, 0)\"},speed:{type:ControlType.Number,min:0,max:5,step:.01,defaultValue:1},contour:{type:ControlType.Number,min:0,max:1,step:.01,defaultValue:.5},angle:{type:ControlType.Number,min:0,max:360,step:1,unit:\"deg\",defaultValue:0},noise:{type:ControlType.Number,min:0,max:1,step:.01,defaultValue:0},innerGlow:{type:ControlType.Number,min:0,max:1,step:.01,defaultValue:.59},outerGlow:{type:ControlType.Number,min:0,max:1,step:.01,defaultValue:.5},scale:{type:ControlType.Number,min:0,max:2,step:.01,unit:\"x\",defaultValue:.75},canvasPreview:{title:\"Preview\",type:ControlType.Boolean,defaultValue:true,description:\"More components at [VibeFrame](https://vibefra.me/creators/dd2f79ca-fb0a-40f1-8c69-7cf096f6e89b).\"}});// ------------------------------------------------------------ //\n// DEFAULT PROPS\n// ------------------------------------------------------------ //\nHeatmapFramer.defaultProps={image:{src:\"\thttps://framerusercontent.com/images/OfyD16VcPJi88jeLB3rHBJaW9g.svg\",srcSet:\"\thttps://framerusercontent.com/images/OfyD16VcPJi88jeLB3rHBJaW9g.svg\",alt:\"Heatmap\",positionX:\"50%\",positionY:\"50%\"},colors:[\"rgb(17, 32, 106)\",\"rgb(31, 59, 162)\",\"rgb(47, 99, 231)\",\"rgb(107, 215, 255)\",\"rgb(255, 230, 121)\",\"rgb(255, 153, 30)\",\"rgb(255, 76, 0)\"],colorBack:\"rgb(0, 0, 0)\",speed:1,contour:.5,angle:0,noise:0,innerGlow:.59,outerGlow:.5,scale:.75,canvasPreview:true};// ------------------------------------------------------------ //\n// MAIN COMPONENT\n// ------------------------------------------------------------ //\n/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 400\n * @framerDisableUnlink\n */export default function HeatmapFramer(props){const isOnFramerCanvas=RenderTarget.hasRestrictions();const shouldAnimate=props.canvasPreview&&isOnFramerCanvas||!isOnFramerCanvas;return /*#__PURE__*/_jsx(Heatmap,{style:{height:\"100%\",width:\"100%\"},colors:props.colors.map(parseFramerColor),colorBack:parseFramerColor(props.colorBack),speed:shouldAnimate?props.speed:0,contour:props.contour,angle:props.angle,noise:props.noise,innerGlow:props.innerGlow,outerGlow:props.outerGlow,scale:props.scale,image:props.image.src,frame:0});}// ------------------------------------------------------------ //\n// HELPER FUNCTIONS\n// ------------------------------------------------------------ //\nconst parseFramerColor=color=>{// Try to match rgb/rgba pattern inside var() or directly\nconst rgbMatch=color.match(/rgb\\((\\d+),\\s*(\\d+),\\s*(\\d+)\\)/);const rgbaMatch=color.match(/rgba\\((\\d+),\\s*(\\d+),\\s*(\\d+),\\s*([\\d.]+)\\)/);if(rgbaMatch){// If RGBA format\nconst[_,r,g,b,a]=rgbaMatch;return`rgba(${r}, ${g}, ${b}, ${a})`;}else if(rgbMatch){// If RGB format\nconst[_,r,g,b]=rgbMatch;return`rgba(${r}, ${g}, ${b}, 1)`;}// Fallback to black if parsing fails\nconsole.warn(\"Could not parse color:\",color);return\"rgba(0, 0, 0, 1)\";};HeatmapFramer.displayName=\"Heatmap\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"HeatmapFramer\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"400\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Heatmap.map"],"mappings":"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"}