{"version":3,"file":"UpgradeButton.DlyLFHAi.mjs","names":[],"sources":["https:/framerusercontent.com/modules/5B0rQxXkQOYiLXYqGai0/a25m4vtNQrd3Bv22QDFe/UpgradeButton.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";const STYLE_ID=\"viby-upgrade-btn-styles-v2\";function injectStyles(){if(typeof document===\"undefined\")return;if(document.getElementById(STYLE_ID))return;const css=`\n  .viby-upgrade-wrap {\n    width: 100%;\n    height: 100%;\n    display:flex;\n    align-items:center;\n    justify-content:center;\n  }\n\n  .viby-upgrade-btn {\n    display:inline-flex;\n    align-items:center;\n    justify-content:center;\n    width:100%;\n    height:100%;\n    border:none;\n    border-radius: 9999px;\n    cursor:pointer;\n    text-decoration:none;\n    font-family: Arial, sans-serif;\n    color:#fff;\n    transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;\n    will-change: transform, box-shadow;\n    position: relative;\n    overflow: hidden;\n    /* CSS Vars for flash */\n    --flash-interval: 2.8s;\n    --flash-width: 22%;\n    --flash-opacity: 0.45;\n    --flash-angle: 18deg;\n  }\n\n  /* Remove default focus box/outline */\n  .viby-upgrade-wrap a,\n  .viby-upgrade-wrap button,\n  .viby-upgrade-btn {\n    outline: none;\n  }\n  .viby-upgrade-wrap a:focus,\n  .viby-upgrade-wrap button:focus,\n  .viby-upgrade-btn:focus,\n  .viby-upgrade-btn:focus-visible {\n    outline: none !important;\n    box-shadow: none !important;\n  }\n\n  /* Gradient fill + gentle glow (under the text) */\n  .viby-upgrade-btn:before {\n    content:\"\";\n    position:absolute;\n    inset:-1px;\n    border-radius: inherit;\n    background-size: 300% 300%;\n    animation: viby-gradientShift 4s ease infinite, viby-pulseGlow 2s ease-in-out infinite;\n    z-index:0;\n  }\n\n  /* Flash sweep */\n  .viby-upgrade-btn:after {\n    content:\"\";\n    position:absolute;\n    top:-50%;\n    bottom:-50%;\n    width: var(--flash-width);\n    left: -30%;\n    transform: rotate(var(--flash-angle)) translateX(-140%);\n    background: linear-gradient(\n      to right,\n      rgba(255,255,255,0) 0%,\n      rgba(255,255,255,var(--flash-opacity)) 50%,\n      rgba(255,255,255,0) 100%\n    );\n    filter: blur(2px);\n    mix-blend-mode: screen;\n    z-index: 1;\n    pointer-events: none;\n    animation: viby-flashSweep var(--flash-interval) ease-in-out infinite;\n    animation-play-state: var(--flash-play, running);\n  }\n\n  .viby-upgrade-label {\n    position: relative;\n    z-index:2;\n    line-height: 1;\n    white-space: nowrap;\n  }\n\n  .viby-upgrade-btn:hover:not([data-disabled=\"true\"]) {\n    transform: scale(1.04);\n  }\n  .viby-upgrade-btn:active:not([data-disabled=\"true\"]) {\n    transform: scale(0.98);\n  }\n  .viby-upgrade-btn[data-disabled=\"true\"] {\n    cursor: not-allowed;\n    filter: grayscale(0.2) brightness(0.9);\n    opacity: 0.85;\n  }\n\n  /* Make the flash go a bit faster on hover for extra 'ping' */\n  .viby-upgrade-btn:hover:after {\n    animation-duration: calc(var(--flash-interval) * 0.6);\n  }\n\n  /* Keyframes */\n  @keyframes viby-gradientShift {\n    0% { background-position: 0% 50%; }\n    50% { background-position: 100% 50%; }\n    100% { background-position: 0% 50%; }\n  }\n\n  /* Sweep once per interval, idle the rest to feel 'pulsed' */\n  @keyframes viby-flashSweep {\n    0%   { transform: rotate(var(--flash-angle)) translateX(-160%); opacity: 0; }\n    8%   { opacity: 1; }\n    18%  { transform: rotate(var(--flash-angle)) translateX(160%); opacity: 1; }\n    26%  { opacity: 0; }\n    100% { transform: rotate(var(--flash-angle)) translateX(160%); opacity: 0; }\n  }\n\n  /* Respect reduced motion */\n  @media (prefers-reduced-motion: reduce) {\n    .viby-upgrade-btn,\n    .viby-upgrade-btn:before,\n    .viby-upgrade-btn:after {\n      animation: none !important;\n      transition: none !important;\n    }\n  }\n  `;const tag=document.createElement(\"style\");tag.id=STYLE_ID;tag.textContent=css;document.head.appendChild(tag);}export default function UpgradeButton(props){injectStyles();const{label=\"Upgrade Now\",href=\"\",openInNewTab=false,isLoading=false,disabled=false,fontSize=18,fontWeight=\"700\",paddingY=14,paddingX=28,glowIntensity=.9,gradientAngle=90,flashEnabled=true,flashInterval=2.8,flashWidthPct=22,flashOpacity=.45,flashAngle=18}=props;const gradient=`linear-gradient(${gradientAngle}deg, #00C3FF, #FF29CA)`;const commonStyle={padding:`${paddingY}px ${paddingX}px`,fontSize,fontWeight:Number(fontWeight),boxShadow:`0 0 ${16*glowIntensity}px rgba(0,195,255,${.65*glowIntensity}),\n                0 0 ${28*glowIntensity}px rgba(255,41,202,${.5*glowIntensity})`,[\"--flash-interval\"]:`${flashInterval}s`,[\"--flash-width\"]:`${flashWidthPct}%`,[\"--flash-opacity\"]:`${flashOpacity}`,[\"--flash-angle\"]:`${flashAngle}deg`,[\"--flash-play\"]:flashEnabled?\"running\":\"paused\"};const ButtonInner=/*#__PURE__*/_jsxs(\"div\",{className:\"viby-upgrade-btn\",\"data-disabled\":disabled||isLoading?\"true\":\"false\",style:commonStyle,children:[/*#__PURE__*/_jsx(\"span\",{className:\"viby-upgrade-label\",children:isLoading?\"Loading…\":label}),/*#__PURE__*/_jsx(\"style\",{children:`\n        .viby-upgrade-btn:before {\n          background-image: ${gradient};\n          filter: drop-shadow(0 0 ${22*glowIntensity}px rgba(0,195,255, ${.55*glowIntensity}))\n                  drop-shadow(0 0 ${30*glowIntensity}px rgba(255,41,202, ${.42*glowIntensity}));\n        }\n      `})]});const target=openInNewTab?\"_blank\":undefined;const rel=openInNewTab?\"noopener noreferrer\":undefined;return /*#__PURE__*/_jsx(\"div\",{className:\"viby-upgrade-wrap\",children:href?/*#__PURE__*/_jsx(\"a\",{href:disabled||isLoading?undefined:href,target:target,rel:rel,style:{width:\"100%\",height:\"100%\"},\"aria-disabled\":disabled||isLoading,onClick:e=>{if(disabled||isLoading)e.preventDefault();},children:ButtonInner}):/*#__PURE__*/_jsx(\"button\",{type:\"button\",disabled:disabled||isLoading,style:{width:\"100%\",height:\"100%\",padding:0,background:\"transparent\",border:\"none\"},children:ButtonInner})});}addPropertyControls(UpgradeButton,{label:{type:ControlType.String,title:\"Text\",defaultValue:\"Upgrade Now\"},href:{type:ControlType.String,title:\"Link\",defaultValue:\"\"},openInNewTab:{type:ControlType.Boolean,title:\"New Tab\",defaultValue:false,hidden:p=>!p.href},isLoading:{type:ControlType.Boolean,title:\"Loading\",defaultValue:false},disabled:{type:ControlType.Boolean,title:\"Disabled\",defaultValue:false},fontSize:{type:ControlType.Number,title:\"Font\",min:10,max:48,step:1,defaultValue:18},fontWeight:{type:ControlType.Enum,title:\"Weight\",options:[\"500\",\"600\",\"700\",\"800\"],optionTitles:[\"Medium\",\"Semibold\",\"Bold\",\"Extra Bold\"],defaultValue:\"700\"},paddingY:{type:ControlType.Number,title:\"Pad Y\",min:6,max:40,step:1,defaultValue:14},paddingX:{type:ControlType.Number,title:\"Pad X\",min:12,max:80,step:2,defaultValue:28},glowIntensity:{type:ControlType.Number,title:\"Glow\",min:0,max:1,step:.05,defaultValue:.9},gradientAngle:{type:ControlType.Number,title:\"Angle\",min:0,max:360,step:1,defaultValue:90},flashEnabled:{type:ControlType.Boolean,title:\"Flash\",defaultValue:true},flashInterval:{type:ControlType.Number,title:\"Flash Loop (s)\",min:1,max:10,step:.1,defaultValue:2.8},flashWidthPct:{type:ControlType.Number,title:\"Flash Width %\",min:5,max:60,step:1,defaultValue:22},flashOpacity:{type:ControlType.Number,title:\"Flash Opacity\",min:0,max:1,step:.05,defaultValue:.45},flashAngle:{type:ControlType.Number,title:\"Flash Angle\",min:-45,max:45,step:1,defaultValue:18}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"UpgradeButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./UpgradeButton.map"],"mappings":"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"}