{"version":3,"file":"default-utils.js@_0.45.Bt2cqsou.mjs","names":["React.useId","React.useMemo","React.useRef","React.useCallback","containerStyles","l","_Fragment","p","useRef","useRef","useCallback","value","animate","useMemo"],"sources":["https:/framerusercontent.com/modules/Ulk3lKFQTYcMTtIXdsO7/mdFzbBlZo8Ft5uNAXAzZ/AaravProximityLetters.js","https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js","https:/framer.com/m/framer/default-utils.js@^0.45.0"],"sourcesContent":["// Create a full-screen dark component (#0c0c10 background, 20px border radius). Display the name \"AARAV\" centered, with a visual gap between \"AA\" and \"RAV\". The letter forms must match the attached reference image exactly — use the SVG paths from the reference or the provided SVG file directly as the letter shapes. Do not substitute with a web font. Apply a radial gradient fill to all letters: bright white at the upper-center (38% 22%), fading through pale blue (#e2ecff), then lavender-blue (#b8cbff, #8aaaf4), to a deeper blue-violet (#7090e2) at the outer edges. Interaction: on mouse proximity (within 260px), each letter independently stretches horizontally (scaleX only — Y axis stays fixed at 1.0). Max stretch ~1.9× at closest point. Use transform-origin: center center so the letter expands equally left and right. As a letter scales wider, dynamically increase its left and right margins by half the extra width so adjacent letters physically push apart. Use lerp spring (factor 0.1) for smooth elastic snap-back when cursor leaves. No vertical movement whatsoever. Add a small all-caps hint label below: \"move cursor across letters\" — 11px, very low opacity white, wide letter-spacing.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";const letters=[{key:\"A1\",viewBox:\"0 0 231.154 258\",d:\"M231.154 245.882C231.154 249.702 231.154 251.612 230.283 253.01C229.819 253.754 229.19 254.382 228.446 254.846C227.049 255.718 225.139 255.718 221.319 255.718H184.413C180.592 255.718 178.682 255.718 177.285 254.846C176.541 254.382 175.912 253.754 175.448 253.01C174.577 251.612 174.577 249.702 174.577 245.882V233.172C174.577 213.322 174.577 203.397 170.975 195.705C167.188 187.617 160.684 181.114 152.597 177.327C144.905 173.725 134.98 173.725 115.13 173.725C95.2797 173.725 85.3547 173.725 77.6628 177.327C69.5753 181.114 63.0719 187.617 59.2847 195.705C55.6827 203.397 55.6827 213.322 55.6827 233.172V245.882C55.6827 249.702 55.6827 251.612 54.8114 253.01C54.3472 253.754 53.719 254.382 52.9747 254.846C51.5775 255.718 49.6674 255.718 45.8472 255.718H9.83558C6.01534 255.718 4.10522 255.718 2.70807 254.846C1.96378 254.382 1.33552 253.754 0.871339 253.01C0 251.612 0 249.702 0 245.882V63.993C0 21.8408 22.4371 0.764648 67.3113 0.764648H163.619C208.643 0.764648 231.154 22.0447 231.154 64.6049V245.882ZM55.6827 107.573C55.6827 115.946 62.4707 122.734 70.844 122.734H115.13H158.804C167.515 122.734 174.577 115.672 174.577 106.961C174.577 93.4995 167.123 86.7688 152.214 86.7688H78.0453C63.1369 86.7688 55.6827 93.7035 55.6827 107.573Z\"},{key:\"A2\",viewBox:\"267.346 0 504.208 258\",d:\"M771.554 245.882C771.554 249.702 771.554 251.612 770.683 253.01C770.218 253.754 769.59 254.382 768.846 254.846C767.449 255.718 765.539 255.718 761.718 255.718H724.812C720.992 255.718 719.082 255.718 717.685 254.846C716.94 254.382 716.312 253.754 715.848 253.01C714.977 251.612 714.977 249.702 714.977 245.882V238.988C714.977 213.639 714.977 200.964 709.195 191.694C706.115 186.755 701.946 182.586 697.008 179.506C687.737 173.725 675.063 173.725 649.714 173.725H601.959C576.61 173.725 563.936 173.725 554.665 179.506C549.726 182.586 545.558 186.755 542.478 191.694C536.696 200.964 536.696 213.639 536.696 238.988V245.882C536.696 249.702 536.696 251.612 535.825 253.01C535.36 253.754 534.732 254.382 533.988 254.846C532.591 255.718 530.681 255.718 526.86 255.718H277.181C273.361 255.718 271.451 255.718 270.054 254.846C269.309 254.382 268.681 253.754 268.217 253.01C267.346 251.612 267.346 249.702 267.346 245.882V63.993C267.346 21.8408 289.783 0.764648 334.657 0.764648H704.019C749.042 0.764648 771.554 22.0447 771.554 64.6049V245.882ZM536.696 107.573C536.696 115.946 543.484 122.734 551.857 122.734H655.53H699.204C707.915 122.734 714.977 115.672 714.977 106.961C714.977 93.4995 707.522 86.7688 692.614 86.7688H559.059C544.15 86.7688 536.696 93.7035 536.696 107.573Z\"},{key:\"R\",viewBox:\"971.779 0 231.161 258\",d:\"M1135.4 0C1180.42 0.000397531 1202.94 21.28 1202.94 63.8389V117.642C1202.94 121.463 1202.94 123.373 1202.06 124.77C1201.6 125.514 1200.97 126.143 1200.23 126.607C1198.83 127.478 1196.92 127.478 1193.1 127.478H1174.28C1159.38 127.479 1151.92 134.414 1151.92 148.283C1151.92 156.655 1159.36 163.441 1168.54 163.442H1193.1C1196.92 163.442 1198.83 163.442 1200.23 164.314C1200.97 164.778 1201.6 165.406 1202.06 166.15C1202.94 167.547 1202.94 169.458 1202.94 173.278V245.115C1202.94 248.936 1202.94 250.846 1202.06 252.243C1201.6 252.987 1200.97 253.615 1200.23 254.08C1198.83 254.951 1196.92 254.951 1193.1 254.951H1156.2C1152.38 254.951 1150.47 254.951 1149.07 254.08C1148.32 253.615 1147.7 252.987 1147.23 252.243C1146.36 250.846 1146.36 248.936 1146.36 245.115V207.767C1146.36 188.544 1129.27 172.961 1108.19 172.961H1065.63C1044.55 172.962 1027.47 188.544 1027.47 207.767V245.115C1027.47 248.936 1027.47 250.846 1026.59 252.243C1026.13 252.987 1025.5 253.615 1024.76 254.08C1023.36 254.951 1021.45 254.951 1017.63 254.951H981.615C977.795 254.951 975.885 254.951 974.487 254.08C973.743 253.615 973.115 252.987 972.651 252.243C971.779 250.846 971.779 248.936 971.779 245.115V63.2293C971.779 21.0771 994.219 0 1039.09 0H1135.4ZM1049.83 86.0066C1034.92 86.0066 1027.47 92.9382 1027.47 106.806C1027.47 115.18 1034.91 121.97 1044.09 121.971H1129.07C1138.62 121.97 1146.36 114.907 1146.36 106.197C1146.36 92.7352 1138.9 86.0066 1123.99 86.0066H1049.83Z\"},{key:\"A3\",viewBox:\"1239.12 0 231.15 258\",d:\"M1470.27 245.117C1470.27 248.938 1470.27 250.848 1469.4 252.245C1468.94 252.989 1468.31 253.617 1467.56 254.082C1466.17 254.953 1464.26 254.953 1460.44 254.953H1423.53C1419.71 254.953 1417.8 254.953 1416.4 254.082C1415.66 253.617 1415.03 252.989 1414.57 252.245C1413.69 250.848 1413.69 248.938 1413.69 245.117V232.407C1413.69 212.557 1413.69 202.632 1410.09 194.94C1406.3 186.853 1399.8 180.349 1391.71 176.562C1384.02 172.96 1374.1 172.96 1354.25 172.96C1334.4 172.96 1324.47 172.96 1316.78 176.562C1308.69 180.349 1302.19 186.853 1298.4 194.94C1294.8 202.632 1294.8 212.557 1294.8 232.407V245.117C1294.8 248.938 1294.8 250.848 1293.93 252.245C1293.46 252.989 1292.84 253.617 1292.09 254.082C1290.69 254.953 1288.78 254.953 1284.96 254.953H1248.95C1245.13 254.953 1243.22 254.953 1241.83 254.082C1241.08 253.617 1240.45 252.989 1239.99 252.245C1239.12 250.848 1239.12 248.938 1239.12 245.117V63.2283C1239.12 21.0761 1261.55 0 1306.43 0H1402.74C1447.76 0 1470.27 21.2801 1470.27 63.8402V245.117ZM1294.8 106.808C1294.8 115.182 1301.59 121.97 1309.96 121.97H1354.25H1397.92C1406.63 121.97 1413.69 114.908 1413.69 106.196C1413.69 92.7349 1406.24 86.0041 1391.33 86.0041H1317.16C1302.25 86.0041 1294.8 92.9389 1294.8 106.808Z\"},{key:\"V\",viewBox:\"1506.45 0 237.06 258\",d:\"M1737.76 0.716797C1740.94 0.717095 1743.51 3.29165 1743.51 6.46785V148.23C1743.51 161.854 1732.47 172.898 1718.84 172.898C1705.22 172.898 1694.18 183.943 1694.18 197.566V230.272C1694.18 245.282 1682.01 257.449 1667 257.449H1580.9C1571.67 257.449 1555.79 257.449 1555.79 257.449C1537.35 257.449 1528.12 257.449 1521.25 253.483C1516.75 250.885 1513.02 247.148 1510.42 242.648C1506.45 235.779 1506.45 226.557 1506.45 208.113V172.898V6.60276C1506.45 3.42641 1509.03 0.851809 1512.21 0.8517H1595.66C1598.94 0.8517 1600.58 0.851095 1601.78 1.59849C1602.42 1.99659 1602.95 2.53566 1603.35 3.17396C1604.1 4.37234 1604.1 6.01129 1604.1 9.28797V132.344C1604.1 159.239 1610.98 172.736 1624.75 172.837C1624.7 172.838 1624.64 172.839 1624.59 172.839H1624.9C1624.85 172.839 1624.8 172.838 1624.75 172.837C1638.51 172.737 1645.4 159.239 1645.4 132.344V9.27513C1645.4 6.00311 1645.4 4.36667 1646.14 3.16915C1646.54 2.53135 1647.08 1.99194 1647.71 1.59367C1648.91 0.846051 1650.55 0.843655 1653.82 0.838852L1737.76 0.716797Z\"}];function clamp01(x){return Math.max(0,Math.min(1,x));}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */function AaravProximityLetters(props){const{background,borderRadius,scale,maxResponsiveFitScale,proximityPx,maxScaleX,lerpFactor,baseSpacing,groupGap,gradient,showHint,hintText,hintOpacity,hintLetterSpacing,hintFont,style}=props;const isStatic=useIsStaticRenderer();const reactId=React.useId();const gradId=React.useMemo(()=>`aaravGrad_${reactId.replace(/[^a-zA-Z0-9_\\-]/g,\"\")}`,[reactId]);const containerRef=React.useRef(null);const rowRef=React.useRef(null);const wrapperRefs=React.useRef([]);const svgRefs=React.useRef([]);const baseWidthsRef=React.useRef([]);const currentScaleRef=React.useRef(letters.map(()=>1));const targetScaleRef=React.useRef(letters.map(()=>1));const currentRowFitScaleRef=React.useRef(1);const targetRowFitScaleRef=React.useRef(1);const mouseRef=React.useRef({x:0,y:0,normX:.5,active:false});const currentRowTranslateRef=React.useRef(0);const targetRowTranslateRef=React.useRef(0);const rafRef=React.useRef(null);const lastTimeRef=React.useRef(0);const setWrapperRef=React.useCallback(i=>{return el=>{wrapperRefs.current[i]=el;};},[]);const setSvgRef=React.useCallback(i=>{return el=>{svgRefs.current[i]=el;};},[]);const measureBaseWidths=React.useCallback(()=>{if(typeof window===\"undefined\")return;const widths=[];const row=rowRef.current;const prevRowTransform=row?.style.transform;if(row)row.style.transform=\"none\";let total=0;for(let i=0;i<letters.length;i++){const wrap=wrapperRefs.current[i];if(!wrap){widths[i]=widths[i]??0;continue;}const prevMarginLeft=wrap.style.marginLeft;const prevMarginRight=wrap.style.marginRight;const prevTransform=wrap.style.transform;wrap.style.marginLeft=`${baseSpacing/2}px`;wrap.style.marginRight=`${baseSpacing/2}px`;wrap.style.transform=\"none\";const rect=wrap.getBoundingClientRect();widths[i]=rect.width;total+=rect.width;wrap.style.marginLeft=prevMarginLeft;wrap.style.marginRight=prevMarginRight;wrap.style.transform=prevTransform;}baseWidthsRef.current=widths;// Useful for debugging and potential layout diagnostics\nif(containerRef.current)containerRef.current.dataset.totalWidth=String(Math.round(total));if(row&&prevRowTransform!=null)row.style.transform=prevRowTransform;},[baseSpacing]);const updateTargets=React.useCallback(()=>{if(typeof window===\"undefined\")return;const active=mouseRef.current.active;for(let i=0;i<letters.length;i++){const wrap=wrapperRefs.current[i];if(!wrap||!active){targetScaleRef.current[i]=1;continue;}const r=wrap.getBoundingClientRect();const cx=r.left+r.width/2;const cy=r.top+r.height/2;const dx=mouseRef.current.x-cx;const dy=mouseRef.current.y-cy;const dist=Math.sqrt(dx*dx+dy*dy);const t=1-clamp01(dist/Math.max(1,proximityPx));targetScaleRef.current[i]=1+(Math.max(1,maxScaleX)-1)*t;}},[maxScaleX,proximityPx]);const applyStyles=React.useCallback(()=>{if(typeof window===\"undefined\")return;let totalVisualWidth=0;for(let i=0;i<letters.length;i++){const wrap=wrapperRefs.current[i];const svg=svgRefs.current[i];if(!wrap||!svg)continue;const cur=currentScaleRef.current[i]??1;const tar=targetScaleRef.current[i]??1;const next=cur+(tar-cur)*clamp01(lerpFactor);currentScaleRef.current[i]=next;// Scale is applied to SVG only; wrapper gets dynamic margins to \"push\" neighbors.\n// Half of extra width is added to each side.\nconst baseW=baseWidthsRef.current[i]??0;const extra=Math.max(0,(next-1)*baseW);const pushEachSide=extra/2;const marginLeft=baseSpacing/2+pushEachSide;const marginRight=baseSpacing/2+pushEachSide;wrap.style.marginLeft=`${marginLeft}px`;wrap.style.marginRight=`${marginRight}px`;// Total width needed for this letter at current stretch including spacing.\ntotalVisualWidth+=baseW*next+baseSpacing;// No vertical movement; keep Y scale at 1.\nsvg.style.transformOrigin=\"center center\";svg.style.transformBox=\"fill-box\";svg.style.transform=`scaleX(${next})`;}// Ensure the full word never bleeds outside the frame by scaling the entire row down to fit.\n// Include the center gap in the fit calculation, and include the overall `scale` prop.\n// Note: we subtract one baseSpacing because the sum adds spacing after the last letter too.\ntotalVisualWidth=Math.max(0,totalVisualWidth-baseSpacing)+Math.max(0,groupGap);if(containerRef.current&&rowRef.current&&totalVisualWidth>0){const containerW=containerRef.current.getBoundingClientRect().width;const safeScale=Math.max(.01,scale);const neededW=totalVisualWidth*safeScale;const maxFit=Math.max(1,maxResponsiveFitScale);targetRowFitScaleRef.current=containerW>0?Math.min(maxFit,containerW/neededW):1;const curFit=currentRowFitScaleRef.current;const tarFit=targetRowFitScaleRef.current;const nextFit=curFit+(tarFit-curFit)*clamp01(lerpFactor);currentRowFitScaleRef.current=nextFit;// Cursor-driven left-right movement while clamped to never overflow.\nconst scaledW=neededW*nextFit;const maxTranslate=Math.max(0,(containerW-scaledW)/2);targetRowTranslateRef.current=mouseRef.current.active?(mouseRef.current.normX-.5)*2*maxTranslate:0;const curTx=currentRowTranslateRef.current;const tarTx=targetRowTranslateRef.current;const nextTx=curTx+(tarTx-curTx)*clamp01(lerpFactor);currentRowTranslateRef.current=nextTx;rowRef.current.style.transformOrigin=\"center center\";rowRef.current.style.transform=`translateX(${nextTx}px) scale(${safeScale}) scaleX(${nextFit})`;}},[baseSpacing,groupGap,lerpFactor,maxResponsiveFitScale,scale]);const tick=React.useCallback(time=>{// Keep a timestamp for potential time-based tuning and to avoid unused ref.\nlastTimeRef.current=time;updateTargets();applyStyles();rafRef.current=typeof window!==\"undefined\"?window.requestAnimationFrame(tick):null;},[applyStyles,updateTargets]);React.useEffect(()=>{if(isStatic)return;if(typeof window===\"undefined\")return;measureBaseWidths();const onResize=()=>measureBaseWidths();window.addEventListener(\"resize\",onResize);if(rafRef.current!=null)window.cancelAnimationFrame(rafRef.current);lastTimeRef.current=0;rafRef.current=window.requestAnimationFrame(tick);return()=>{window.removeEventListener(\"resize\",onResize);if(rafRef.current!=null)window.cancelAnimationFrame(rafRef.current);rafRef.current=null;};},[isStatic,measureBaseWidths,tick]);const onMouseMove=React.useCallback(e=>{if(typeof window===\"undefined\")return;mouseRef.current.x=e.clientX;mouseRef.current.y=e.clientY;mouseRef.current.active=true;const rect=containerRef.current?.getBoundingClientRect();if(rect&&rect.width>0){mouseRef.current.normX=clamp01((e.clientX-rect.left)/rect.width);}},[]);const onMouseLeave=React.useCallback(()=>{mouseRef.current.active=false;},[]);const containerStyles=React.useMemo(()=>({...style,position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",borderRadius,background,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"}),[background,borderRadius,style]);const hintStyles=React.useMemo(()=>({marginTop:18,color:\"rgba(255,255,255,1)\",opacity:clamp01(hintOpacity),textTransform:\"uppercase\",letterSpacing:`${hintLetterSpacing}px`,fontSize:11,lineHeight:\"14px\",userSelect:\"none\",whiteSpace:\"pre\",...hintFont}),[hintFont,hintLetterSpacing,hintOpacity]);const rowStyles=React.useMemo(()=>({display:\"flex\",alignItems:\"center\",justifyContent:\"center\",flexWrap:\"nowrap\",userSelect:\"none\",padding:\"24px 0\",width:\"100%\",willChange:\"transform\"}),[]);const wrapperStyleBase=React.useMemo(()=>({position:\"relative\",display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",willChange:\"margin\"}),[]);const svgStyleBase=React.useMemo(()=>({display:\"block\",height:\"min(22vh, clamp(90px, 12vw, 220px))\",width:\"auto\",willChange:\"transform\",transformOrigin:\"center center\"}),[]);return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:containerStyles,onMouseMove:isStatic?undefined:onMouseMove,onMouseLeave:isStatic?undefined:onMouseLeave,role:\"img\",\"aria-label\":\"AARAV\",children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\"},children:[/*#__PURE__*/_jsx(\"div\",{ref:rowRef,style:{...rowStyles,transform:isStatic?`scale(${Math.max(.01,scale)})`:undefined},\"aria-hidden\":\"true\",children:(()=>{const staticMarginLeft=baseSpacing/2;const staticMarginRight=baseSpacing/2;const renderLetter=(l,i)=>/*#__PURE__*/_jsx(\"div\",{ref:setWrapperRef(i),style:{...wrapperStyleBase,marginLeft:staticMarginLeft,marginRight:staticMarginRight},children:/*#__PURE__*/_jsxs(\"svg\",{ref:setSvgRef(i),viewBox:l.viewBox,style:{...svgStyleBase,transform:\"scaleX(1)\"},fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsxs(\"radialGradient\",{id:gradId,cx:\"38%\",cy:\"22%\",r:\"85%\",fx:\"38%\",fy:\"22%\",gradientUnits:\"objectBoundingBox\",children:[/*#__PURE__*/_jsx(\"stop\",{offset:\"0%\",stopColor:gradient.white}),/*#__PURE__*/_jsx(\"stop\",{offset:\"30%\",stopColor:gradient.paleBlue}),/*#__PURE__*/_jsx(\"stop\",{offset:\"55%\",stopColor:gradient.lavender1}),/*#__PURE__*/_jsx(\"stop\",{offset:\"75%\",stopColor:gradient.lavender2}),/*#__PURE__*/_jsx(\"stop\",{offset:\"100%\",stopColor:gradient.deep})]})}),/*#__PURE__*/_jsx(\"path\",{d:l.d,fill:`url(#${gradId})`})]})},l.key);return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"flex-end\"},children:[renderLetter(letters[0],0),renderLetter(letters[1],1)]}),/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{width:Math.max(0,groupGap)}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"flex-start\"},children:[renderLetter(letters[2],2),renderLetter(letters[3],3),renderLetter(letters[4],4)]})]});})()}),showHint?/*#__PURE__*/_jsx(\"div\",{style:hintStyles,children:hintText}):null]})});}export default AaravProximityLetters;addPropertyControls(AaravProximityLetters,{background:{type:ControlType.Color,title:\"Background\",defaultValue:\"#0c0c10\"},borderRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:20,min:0,max:80,step:1},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:1,min:.25,max:2.5,step:.01},maxResponsiveFitScale:{type:ControlType.Number,title:\"Max Fit\",defaultValue:1.35,min:1,max:3,step:.01},proximityPx:{type:ControlType.Number,title:\"Proximity\",defaultValue:260,min:40,max:800,step:1,unit:\"px\"},maxScaleX:{type:ControlType.Number,title:\"Max Stretch\",defaultValue:1.9,min:1,max:3,step:.01},lerpFactor:{type:ControlType.Number,title:\"Lerp\",defaultValue:.1,min:.01,max:.4,step:.01},baseSpacing:{type:ControlType.Number,title:\"Spacing\",defaultValue:18,min:0,max:120,step:1,unit:\"px\"},groupGap:{type:ControlType.Number,title:\"AA | RAV Gap\",defaultValue:42,min:0,max:240,step:1,unit:\"px\"},gradient:{type:ControlType.Object,title:\"Gradient\",icon:\"color\",controls:{white:{type:ControlType.Color,title:\"White\",defaultValue:\"#FFFFFF\"},paleBlue:{type:ControlType.Color,title:\"Pale Blue\",defaultValue:\"#e2ecff\"},lavender1:{type:ControlType.Color,title:\"Lavender 1\",defaultValue:\"#b8cbff\"},lavender2:{type:ControlType.Color,title:\"Lavender 2\",defaultValue:\"#a7c0ff\"},deep:{type:ControlType.Color,title:\"Deep\",defaultValue:\"#8fb0ff\"}},defaultValue:{white:\"#FFFFFF\",paleBlue:\"#e2ecff\",lavender1:\"#b8cbff\",lavender2:\"#a7c0ff\",deep:\"#8fb0ff\"}},showHint:{type:ControlType.Boolean,title:\"Hint\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},hintText:{type:ControlType.String,title:\"Hint Text\",defaultValue:\"move cursor across letters\",hidden:p=>!p.showHint},hintOpacity:{type:ControlType.Number,title:\"Hint Opacity\",defaultValue:.22,min:0,max:1,step:.01,hidden:p=>!p.showHint},hintLetterSpacing:{type:ControlType.Number,title:\"Hint Tracking\",defaultValue:2.4,min:0,max:10,step:.1,unit:\"px\",hidden:p=>!p.showHint},hintFont:{type:ControlType.Font,title:\"Hint Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"11px\",variant:\"Medium\",letterSpacing:\"0em\",lineHeight:\"14px\",textAlign:\"center\"},hidden:p=>!p.showHint}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AaravProximityLetters\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AaravProximityLetters.map","import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","export function mstoMinAndSec(millis) {\n    const minutes = Math.floor(millis / 60000);\n    const seconds = parseInt((millis % 60000 / 1000).toFixed(0));\n    return minutes + \":\" + (seconds < 10 ? \"0\" : \"\") + seconds;\n}\nexport function secondsToMinutes(seconds) {\n    const minutes = Math.floor(seconds / 60);\n    const s = Math.floor(seconds % 60);\n    return minutes + \":\" + (s < 10 ? \"0\" : \"\") + s;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"mstoMinAndSec\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./time.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","/*\n * index (framer/default-utils@0.45.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\"\n"],"mappings":"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"}