{"version":3,"file":"PixelButtonPro.BmCFBdXx.mjs","names":["useRef","useState","useCallback","useMemo"],"sources":["https:/framerusercontent.com/modules/GRpqm6bdGNYQRSiQOugv/6mrXeQaXnIvBIUxy51oe/PixelButtonPro.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useRef,useState,useEffect,useMemo,useCallback,startTransition}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,useInView}from\"framer-motion\";const FALLBACK_WIDTH=120;const FALLBACK_HEIGHT=40;const MAX_CELLS=2500;const DEFAULT_TRANSITION={type:\"tween\",ease:\"easeInOut\",duration:.25};function hashToUnit(row,col,rows,cols){const seed=(row+1)*73856093^(col+1)*19349663^rows*83492791^cols*2971215073;const hashed=Math.imul(seed^seed>>>16,2246822507);const normalized=(hashed>>>0)/4294967295;return Math.max(0,Math.min(1,normalized));}/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function PixelButtonPro(props){const{cta=\"BUTTON TEXT\",fontSize=14,fontWeight=500,fontDefaultColor=\"rgb(250, 250, 250)\",fontHoverColor=\"rgb(5, 5, 5)\",padding=\"14px 28px 14px 28px\",radius=\"0px\",reveal=\"random\",stagger=.04,pixelSize=16,gap=0,pixelColor=\"rgb(163, 230, 53)\",background=\"rgb(28, 27, 27)\",link,newTab=true,alignText=\"center\",style,onTap}=props;const isStaticRenderer=useIsStaticRenderer();const containerRef=useRef(null);const isInView=useInView(containerRef,{margin:\"0px\",amount:.05});const[hovered,setHovered]=useState(false);const[size,setSize]=useState({width:FALLBACK_WIDTH,height:FALLBACK_HEIGHT});useEffect(()=>{const element=containerRef.current;if(!element)return;const updateSize=()=>{const rect=element.getBoundingClientRect();const width=rect.width>0?rect.width:FALLBACK_WIDTH;const height=rect.height>0?rect.height:FALLBACK_HEIGHT;startTransition(()=>{setSize(previous=>{if(previous.width===width&&previous.height===height)return previous;return{width,height};});});};updateSize();if(typeof window!==\"undefined\"&&typeof ResizeObserver!==\"undefined\"){const observer=new ResizeObserver(()=>updateSize());observer.observe(element);return()=>observer.disconnect();}if(typeof window!==\"undefined\"){window.addEventListener(\"resize\",updateSize);return()=>window.removeEventListener(\"resize\",updateSize);}},[]);const onMouseEnter=useCallback(()=>{startTransition(()=>setHovered(true));},[]);const onMouseLeave=useCallback(()=>{startTransition(()=>setHovered(false));},[]);const handleClick=useCallback(()=>{if(onTap)onTap();if(link&&typeof window!==\"undefined\"){if(newTab)window.open(link,\"_blank\");else window.location.href=link;}},[onTap,link,newTab]);const metrics=useMemo(()=>{const w=size.width>0?size.width:FALLBACK_WIDTH;const h=size.height>0?size.height:FALLBACK_HEIGHT;const safePixelSize=Math.max(1,pixelSize);const safeGap=Math.max(0,gap);const computeGridMetrics=effectivePx=>{const cols=Math.max(1,Math.ceil((w+safeGap)/(effectivePx+safeGap)));const computedCell=(w-safeGap*(cols-1))/cols;const cellSize=Math.max(1,computedCell);const rows=Math.max(1,Math.ceil((h+safeGap)/(cellSize+safeGap)));return{cols,rows,cellSize};};let effectivePx=safePixelSize;let gridMetrics=computeGridMetrics(effectivePx);const initialTotal=gridMetrics.cols*gridMetrics.rows;if(initialTotal>MAX_CELLS){const scaleUp=Math.sqrt(initialTotal/MAX_CELLS);effectivePx=safePixelSize*scaleUp;gridMetrics=computeGridMetrics(effectivePx);let safety=0;while(gridMetrics.cols*gridMetrics.rows>MAX_CELLS&&safety<24){effectivePx*=1.05;gridMetrics=computeGridMetrics(effectivePx);safety++;}}const{cols,rows}=gridMetrics;const maxDiagonal=Math.max(1,cols+rows-2);return{cols,rows,maxDiagonal,safeGap};},[size.width,size.height,pixelSize,gap]);const active=hovered&&!isStaticRenderer&&isInView;const cells=useMemo(()=>{const items=[];for(let row=0;row<metrics.rows;row++){for(let col=0;col<metrics.cols;col++){let diagonal=0;switch(reveal){case\"diagonalTopLeft\":diagonal=row+col;break;case\"diagonalTopRight\":diagonal=row+(metrics.cols-1-col);break;case\"diagonalBottomLeft\":diagonal=metrics.rows-1-row+col;break;case\"diagonalBottomRight\":diagonal=metrics.rows-1-row+(metrics.cols-1-col);break;case\"topToBottom\":diagonal=row;break;case\"bottomToTop\":diagonal=metrics.rows-1-row;break;case\"leftToRight\":diagonal=col;break;case\"rightToLeft\":diagonal=metrics.cols-1-col;break;case\"centerOut\":{const cr=(metrics.rows-1)/2;const cc=(metrics.cols-1)/2;diagonal=Math.sqrt(Math.pow(row-cr,2)+Math.pow(col-cc,2));break;}case\"centerIn\":{const cir=(metrics.rows-1)/2;const cic=(metrics.cols-1)/2;const cd=Math.sqrt(Math.pow(row-cir,2)+Math.pow(col-cic,2));diagonal=metrics.maxDiagonal-cd;break;}case\"checkerboard\":diagonal=(row+col)%2===0?0:1;break;case\"random\":default:diagonal=hashToUnit(row,col,metrics.rows,metrics.cols)*metrics.maxDiagonal;break;}items.push({key:row+\"-\"+col,row,col,delay:diagonal*stagger});}}return items;},[metrics,stagger,reveal]);const parsedPadding=useMemo(()=>{if(!padding)return\"14px 28px\";return padding;},[padding]);const parsedRadius=useMemo(()=>{if(!radius)return\"0px\";return radius;},[radius]);const textColor=active?fontHoverColor:fontDefaultColor;const Wrapper=link?\"a\":\"div\";const wrapperProps=link?{href:link,target:newTab?\"_blank\":undefined,rel:newTab?\"noopener noreferrer\":undefined}:{};return /*#__PURE__*/_jsxs(Wrapper,{...wrapperProps,ref:containerRef,onMouseEnter:onMouseEnter,onMouseLeave:onMouseLeave,onClick:link?undefined:handleClick,style:{...style,position:\"relative\",display:\"inline-flex\",alignItems:\"center\",justifyContent:alignText===\"left\"||alignText===\"flex-start\"?\"flex-start\":alignText===\"right\"||alignText===\"flex-end\"?\"flex-end\":\"center\",padding:parsedPadding,borderRadius:parsedRadius,overflow:\"hidden\",cursor:\"pointer\",textDecoration:\"none\",width:style?.width||\"auto\",height:style?.height||\"auto\",background:background},role:\"button\",tabIndex:0,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,zIndex:0,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"grid\",gridTemplateColumns:\"repeat(\"+metrics.cols+\", minmax(0, 1fr))\",gridTemplateRows:\"repeat(\"+metrics.rows+\", minmax(0, 1fr))\",gap:metrics.safeGap,alignContent:\"stretch\",justifyContent:\"stretch\"},children:cells.map(cell=>{const seamShadow=metrics.safeGap===0?\"0 0 0 1px \"+pixelColor:\"none\";return /*#__PURE__*/_jsx(motion.div,{initial:false,animate:{opacity:active?1:0,scale:active?1:.6},transition:{...DEFAULT_TRANSITION,delay:cell.delay},style:{width:\"100%\",height:\"100%\",background:pixelColor,boxShadow:seamShadow,transformOrigin:\"center\",willChange:\"opacity, transform\"}},cell.key);})})}),/*#__PURE__*/_jsx(motion.span,{initial:false,animate:{color:textColor},transition:{...DEFAULT_TRANSITION,delay:0},style:{position:\"relative\",zIndex:1,fontFamily:\"BDO Grotesk, sans-serif\",fontWeight:fontWeight,fontSize:fontSize+\"px\",letterSpacing:\"-0.01em\",lineHeight:\"110%\",whiteSpace:\"nowrap\",userSelect:\"none\",pointerEvents:\"none\"},children:cta})]});}addPropertyControls(PixelButtonPro,{alignText:{type:ControlType.Enum,title:\"Align\",defaultValue:\"center\",options:[\"left\",\"center\",\"right\"],optionTitles:[\"Left\",\"Center\",\"Right\"]},cta:{type:ControlType.String,title:\"CTA\",defaultValue:\"BUTTON TEXT\"},fontSize:{type:ControlType.Number,title:\"Font Size\",defaultValue:14,min:8,max:72},fontWeight:{type:ControlType.Number,title:\"Font Weight\",defaultValue:500,min:100,max:900,step:100},fontDefaultColor:{type:ControlType.Color,title:\"Font Default Color\",defaultValue:\"rgb(250, 250, 250)\"},fontHoverColor:{type:ControlType.Color,title:\"Font Hover Color\",defaultValue:\"rgb(5, 5, 5)\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"14px 28px 14px 28px\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"0px\"},reveal:{type:ControlType.Enum,title:\"Reveal\",defaultValue:\"random\",options:[\"random\",\"checkerboard\",\"centerIn\",\"centerOut\",\"topToBottom\",\"bottomToTop\",\"leftToRight\",\"rightToLeft\",\"diagonalTopLeft\",\"diagonalTopRight\",\"diagonalBottomLeft\",\"diagonalBottomRight\"],optionTitles:[\"Random\",\"Checkerboard\",\"Center In\",\"Center Out\",\"Top to Bottom\",\"Bottom to Top\",\"Left to Right\",\"Right to Left\",\"Top Left\",\"Top Right\",\"Bottom Left\",\"Top RightBottom Right\"]},stagger:{type:ControlType.Number,title:\"Stagger\",defaultValue:.04,min:0,max:.2,step:.01,unit:\"s\"},pixelSize:{type:ControlType.Number,title:\"Pixel Size\",defaultValue:16,min:16,max:160,unit:\"px\"},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:0,min:0,max:16,unit:\"px\"},pixelColor:{type:ControlType.Color,title:\"Pixel Color\",defaultValue:\"rgb(163, 230, 53)\"},background:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgb(28, 27, 27)\"},link:{type:ControlType.Link,title:\"Link\"},newTab:{type:ControlType.Boolean,title:\"New Tab\",defaultValue:true},onTap:{type:ControlType.EventHandler}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PixelButtonPro\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PixelButtonPro.map"],"mappings":"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"}