{"version":3,"file":"CyclingButton.CFSl6PBW.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/acavpz36pfsuNEun9sx9/RUpgdKbmg3JGcwqWJY1h/nJ80lD5TK.js","https:/framerusercontent.com/modules/VdiWO2tzRFe4mY7s8rWe/SE6xMurfDfgtvVttU81C/CyclingButton.js"],"sourcesContent":["// Generated by Framer (a1faaee)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Averia Serif Libre-700\",\"GF;Averia Serif Libre-700italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Averia Serif Libre\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"Averia Serif Libre\",url:\"https://fonts.gstatic.com/s/averiaseriflibre/v19/neIVzD2ms4wxr6GvjeD0X88SHPyX2xYGGS6qxKcqdrKvbQ.woff2\",weight:\"700\"},{cssFamilyName:\"Averia Serif Libre\",openType:true,source:\"google\",style:\"italic\",uiFamilyName:\"Averia Serif Libre\",url:\"https://fonts.gstatic.com/s/averiaseriflibre/v19/neIbzD2ms4wxr6GvjeD0X88SHPyX2xYOpzM2xK0rVLe_bXHq.woff2\",weight:\"700\"}]}];export const css=[\".framer-7mAHW .framer-styles-preset-uscxhb:not(.rich-text-wrapper), .framer-7mAHW .framer-styles-preset-uscxhb.rich-text-wrapper h2 { --framer-font-family: \\\"Averia Serif Libre\\\", sans-serif; --framer-font-family-italic: \\\"Averia Serif Libre\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv09' on, 'cv03' on, 'cv04' on, 'cv11' on; --framer-font-size: 18px; --framer-font-style: normal; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 700; --framer-font-weight-italic: 700; --framer-letter-spacing: 0.01em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-background-padding: 0px 0px 0px 1px; --framer-text-color: var(--token-7251eb82-f6ed-4c11-a708-728e656389e7, #e85d07); --framer-text-decoration: none; --framer-text-stroke-color: var(--token-7251eb82-f6ed-4c11-a708-728e656389e7, #e85d07) /* {\\\"name\\\":\\\"Bliss Orange\\\"} */; --framer-text-stroke-width: 1.5px; --framer-text-transform: none; --framer-text-wrap: balance; }\"];export const className=\"framer-7mAHW\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Button with cycling hover colors - each hover changes to the next color in sequence\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useState,startTransition}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function CyclingButton(props){const{text,font,backgroundColor,textColor,hoverColors,borderRadius,paddingX,paddingY,backgroundBlur,onTap}=props;const[currentColorIndex,setCurrentColorIndex]=useState(0);const[isHovered,setIsHovered]=useState(false);const handleMouseEnter=()=>{setIsHovered(true);startTransition(()=>{setCurrentColorIndex(prev=>(prev+1)%hoverColors.length);});};const handleMouseLeave=()=>{setIsHovered(false);};const currentBgColor=isHovered&&hoverColors.length>0?hoverColors[currentColorIndex]:backgroundColor;const fontSize=font.fontSize||\"16px\";return /*#__PURE__*/_jsx(\"button\",{style:{...props.style,position:\"relative\",backgroundColor:currentBgColor,color:textColor,border:\"none\",borderRadius:`${borderRadius}px`,paddingLeft:`${paddingX}px`,paddingRight:`${paddingX}px`,paddingTop:`${paddingY}px`,paddingBottom:`${paddingY}px`,cursor:\"pointer\",transition:\"background-color 0.3s ease\",backdropFilter:`blur(${backgroundBlur}px)`,WebkitBackdropFilter:`blur(${backgroundBlur}px)`,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:fontSize,fontFamily:font.fontFamily,fontWeight:font.fontWeight,fontStyle:font.fontStyle,letterSpacing:font.letterSpacing,lineHeight:font.lineHeight,textAlign:font.textAlign},onMouseEnter:handleMouseEnter,onMouseLeave:handleMouseLeave,onClick:onTap,children:text});}addPropertyControls(CyclingButton,{text:{type:ControlType.String,title:\"Text\",defaultValue:\"Hover Me\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"16px\",variant:\"Semibold\",letterSpacing:\"-0.01em\",lineHeight:\"1em\"}},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(255, 255, 255, 0.1)\"},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FFFFFF\"},hoverColors:{type:ControlType.Array,title:\"Hover Colors\",control:{type:ControlType.Color},defaultValue:[\"#8855FF\",\"#FF5588\",\"#22CC66\",\"#FFBB00\"]},backgroundBlur:{type:ControlType.Number,title:\"Blur Amount\",defaultValue:10,min:0,max:50,step:1,unit:\"px\"},borderRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:8,min:0,max:50,step:1,unit:\"px\"},paddingX:{type:ControlType.Number,title:\"Padding X\",defaultValue:24,min:0,max:100,step:1,unit:\"px\"},paddingY:{type:ControlType.Number,title:\"Padding Y\",defaultValue:12,min:0,max:100,step:1,unit:\"px\"},onTap:{type:ControlType.EventHandler}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CyclingButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CyclingButton.map"],"mappings":"+MAC8B,GAAU,UAAU,CAAC,4BAA4B,kCAAkC,CAAC,CAAc,EAAM,CAAC,CAAC,cAAc,GAAK,MAAM,CAAC,CAAC,cAAc,qBAAqB,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,aAAa,qBAAqB,IAAI,wGAAwG,OAAO,MAAM,CAAC,CAAC,cAAc,qBAAqB,SAAS,GAAK,OAAO,SAAS,MAAM,SAAS,aAAa,qBAAqB,IAAI,0GAA0G,OAAO,MAAM,CAAC,CAAC,CAAC,CAAc,EAAI,CAAC,ihCAAyhC,CAAc,EAAU,kBCGjsD,SAAwB,EAAc,EAAM,CAAC,GAAK,CAAC,OAAK,OAAK,kBAAgB,YAAU,cAAY,eAAa,WAAS,WAAS,iBAAe,SAAO,EAAW,CAAC,EAAkB,GAAsBA,EAAS,EAAE,CAAM,CAAC,EAAU,GAAcA,EAAS,GAAM,CAAO,MAAqB,CAAC,EAAa,GAAK,CAAC,MAAoB,CAAC,EAAqB,IAAO,EAAK,GAAG,EAAY,OAAO,EAAG,EAAS,MAAqB,CAAC,EAAa,GAAM,EAAS,EAAe,GAAW,EAAY,OAAO,EAAE,EAAY,GAAmB,EAAsB,EAAS,EAAK,UAAU,OAAO,OAAoB,EAAK,SAAS,CAAC,MAAM,CAAC,GAAG,EAAM,MAAM,SAAS,WAAW,gBAAgB,EAAe,MAAM,EAAU,OAAO,OAAO,aAAa,GAAG,EAAa,IAAI,YAAY,GAAG,EAAS,IAAI,aAAa,GAAG,EAAS,IAAI,WAAW,GAAG,EAAS,IAAI,cAAc,GAAG,EAAS,IAAI,OAAO,UAAU,WAAW,6BAA6B,eAAe,QAAQ,EAAe,KAAK,qBAAqB,QAAQ,EAAe,KAAK,QAAQ,OAAO,WAAW,SAAS,eAAe,SAAkB,WAAS,WAAW,EAAK,WAAW,WAAW,EAAK,WAAW,UAAU,EAAK,UAAU,cAAc,EAAK,cAAc,WAAW,EAAK,WAAW,UAAU,EAAK,UAAU,CAAC,aAAa,EAAiB,aAAa,EAAiB,QAAQ,EAAM,SAAS,EAAK,CAAC,kBAHvxC,IAA4C,IAAoD,CAGyrC,EAAoB,EAAc,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,WAAW,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,OAAO,QAAQ,WAAW,cAAc,UAAU,WAAW,MAAM,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,2BAA2B,CAAC,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,aAAa,aAAa,UAAU,CAAC,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,QAAQ,CAAC,KAAK,EAAY,MAAM,CAAC,aAAa,CAAC,UAAU,UAAU,UAAU,UAAU,CAAC,CAAC,eAAe,CAAC,KAAK,EAAY,OAAO,MAAM,cAAc,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,KAAK,CAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,EAAY,aAAa,CAAC,CAAC"}