{"version":3,"file":"AnimatedBackground.CqRceoVx.mjs","names":["_Fragment"],"sources":["https:/framerusercontent.com/modules/ZxXiiHFEa7tFKhEAaMSB/WbxHR075ryiAG9P7sxZU/AnimatedBackground.js"],"sourcesContent":["// This component renders an animated gradient background with customizable presets, gradient types (Linear and Pulsate), sizing, animation speed, blur effects, and a gradient overlay.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";// Define available gradient presets with combined colors and default animation speeds.\nconst gradientPresets={Rainbow:{colors:[\"#00172E\",\"#23002E\",\"#2E1300\",\"#002E1B\"],animationSpeed:24},\"bunq Rainbow\":{colors:[\"#F5C836\",\"#F28825\",\"#E13030\",\"#993233\",\"#1D5C84\",\"#2872BC\",\"#3394D7\",\"#3DB8AD\",\"#89CC53\",\"#62B64F\",\"#2F9B47\",\"#238647\"],animationSpeed:72},\"Gold to Orange\":{colors:[\"#2E1F00\",\"#2E1300\"],animationSpeed:24},\"Orange to Rose\":{colors:[\"#2E1300\",\"#2E000F\"],animationSpeed:24},\"Rose to Pink\":{colors:[\"#2E000F\",\"#2E001F\"],animationSpeed:24},\"Pink to Purple\":{colors:[\"#2E001F\",\"#23002E\"],animationSpeed:24},\"Purple to Navy\":{colors:[\"#23002E\",\"#0C002E\"],animationSpeed:24},\"Navy to Blue\":{colors:[\"#0C002E\",\"#00172E\"],animationSpeed:24},\"Blue to Sky\":{colors:[\"#00172E\",\"#00232E\"],animationSpeed:24},\"Sky to Teal\":{colors:[\"#00232E\",\"#002E27\"],animationSpeed:24},\"Teal to Emerald\":{colors:[\"#002E27\",\"#002E1B\"],animationSpeed:24},\"Emerald to Green\":{colors:[\"#002E1B\",\"#0C230D\"],animationSpeed:24},Custom:{colors:[\"#000000\",\"#000000\"],animationSpeed:24}};// AnimatedBackground component definition.\nexport function AnimatedBackground(props){const{preset,colors,angle,animationSpeed,gradientType,backgroundWidth,backgroundHeight,enableBlur,blurIntensity,enableOverlay,style}=props;// Determine the current gradient settings based on the selected preset.\nconst currentPreset=gradientPresets[preset]||gradientPresets.Custom;const gradientColors=preset===\"Custom\"?colors:currentPreset.colors;let currentAnimationSpeed=preset===\"Custom\"?animationSpeed:currentPreset.animationSpeed;// Count the number of color stops.\nconst numColorStops=gradientColors.length;// Generate the gradient string based on gradient type.\nlet gradient;switch(gradientType.toLowerCase()){case\"pulsate\":gradient=`radial-gradient(circle at center, ${gradientColors.join(\", \")})`;break;case\"linear\":default:gradient=`linear-gradient(${angle}deg, ${gradientColors.join(\", \")})`;}// Calculate background-size and animationSpeed based on gradient type.\nlet backgroundSize;let finalAnimationSpeed;if(gradientType.toLowerCase()===\"linear\"){// For linear gradients, ensure all color stops are visible by setting background-size proportionate to color stops.\nbackgroundSize=`${numColorStops*60}% 100%`// e.g., 300% for 5 color stops.\n;finalAnimationSpeed=currentAnimationSpeed;}else if(gradientType.toLowerCase()===\"pulsate\"){// For pulsate, use default or provided background sizes.\nconst width=backgroundWidth||\"500%\";const height=backgroundHeight||\"500%\";backgroundSize=`${width} ${height}`;finalAnimationSpeed=currentAnimationSpeed;}else{backgroundSize=`100% 100%`;finalAnimationSpeed=currentAnimationSpeed;}// Define the merged styles for the gradient background with animation and blur.\nconst gradientStyles={width:gradientType.toLowerCase()===\"linear\"?`${numColorStops*60}%`:gradientType.toLowerCase()===\"pulsate\"?backgroundWidth||\"500%\":\"100%\",height:gradientType.toLowerCase()===\"linear\"?\"100%\":gradientType.toLowerCase()===\"pulsate\"?backgroundHeight||\"500%\":\"100%\",background:gradient,backgroundSize:backgroundSize,animation:(()=>{switch(gradientType.toLowerCase()){case\"pulsate\":return`gradient-animation-pulsate ${finalAnimationSpeed}s ease-in-out infinite`;case\"linear\":default:return`gradient-animation-linear ${finalAnimationSpeed}s ease infinite`;}})(),filter:enableBlur?`blur(${blurIntensity}px)`:undefined,transformOrigin:\"center\",position:\"absolute\"};// Define overlay styles.\nconst overlayStyles={position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",background:\"linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%)\",zIndex:1,pointerEvents:\"none\"};// Define the container styles with aspect ratio and hidden overflow.\nconst containerStyle={position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",zIndex:0,overflow:\"hidden\",aspectRatio:\"16 / 9\"};return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                @keyframes gradient-animation-linear {\n                    0% {\n                        background-position: 0% 50%;\n                    }\n                    50% {\n                        background-position: 100% 50%;\n                    }\n                    100% {\n                        background-position: 0% 50%;\n                    }\n                }\n                @keyframes gradient-animation-pulsate {\n                    0% {\n                        transform: scale(1);\n                    }\n                    50% {\n                        transform: scale(2);\n                    }\n                    100% {\n                        transform: scale(1);\n                    }\n                }\n                `}),/*#__PURE__*/_jsx(motion.div,{style:containerStyle,children:/*#__PURE__*/_jsx(motion.div,{style:gradientStyles})}),enableOverlay&&/*#__PURE__*/_jsx(\"div\",{style:overlayStyles})]});}// Define default properties for the AnimatedBackground component.\nAnimatedBackground.defaultProps={preset:\"Rainbow\",colors:[\"#000000\",\"#000000\"],angle:120,animationSpeed:24,gradientType:\"Linear\",backgroundWidth:undefined,backgroundHeight:undefined,enableBlur:true,blurIntensity:3,enableOverlay:true,style:{}};// Add property controls for the AnimatedBackground component.\naddPropertyControls(AnimatedBackground,{preset:{type:ControlType.Enum,title:\"Preset\",options:[\"Rainbow\",\"bunq Rainbow\",\"Gold to Orange\",\"Orange to Rose\",\"Rose to Pink\",\"Pink to Purple\",\"Purple to Navy\",\"Navy to Blue\",\"Blue to Sky\",\"Sky to Teal\",\"Teal to Emerald\",\"Emerald to Green\",\"Custom\"],optionTitles:[\"Rainbow\",\"bunq Rainbow\",\"Gold to Orange\",\"Orange to Rose\",\"Rose to Pink\",\"Pink to Purple\",\"Purple to Navy\",\"Navy to Blue\",\"Blue to Sky\",\"Sky to Teal\",\"Teal to Emerald\",\"Emerald to Green\",\"Custom\"],defaultValue:\"Rainbow\",description:\"Select a preset gradient or choose Custom to define your own colors.\"},gradientType:{type:ControlType.Enum,title:\"Gradient Type\",options:[\"Linear\",\"Pulsate\"],optionTitles:[\"Linear\",\"Pulsate\"],defaultValue:\"Linear\",description:\"Select the type of gradient animation.\"},animationSpeed:{type:ControlType.Number,title:\"Speed\",defaultValue:24,min:5,max:120,step:1,unit:\"s\",hidden:false,description:\"Adjust the speed of the gradient animation in seconds.\"},colors:{type:ControlType.Array,title:\"Colors\",propertyControl:{type:ControlType.Color},defaultValue:[\"#000000\",\"#000000\"],hidden:props=>props.preset!==\"Custom\",description:\"Select the colors for the gradient. Use the provided dark colors to customize the gradient effect.\"},angle:{type:ControlType.Number,title:\"Angle\",defaultValue:120,min:0,max:360,step:1,unit:\"deg\",hidden:props=>props.gradientType.toLowerCase()!==\"linear\",description:\"Set the angle of the linear gradient in degrees.\"},backgroundWidth:{type:ControlType.String,title:\"Bg Width\",defaultValue:\"500%\",hidden:props=>props.gradientType.toLowerCase()!==\"pulsate\",description:\"Set the background width for Pulsate gradient type (e.g., '500%').\"},backgroundHeight:{type:ControlType.String,title:\"Bg Height\",defaultValue:\"500%\",hidden:props=>props.gradientType.toLowerCase()!==\"pulsate\",description:\"Set the background height for Pulsate gradient type (e.g., '500%').\"},enableBlur:{type:ControlType.Boolean,title:\"Enable Blur\",defaultValue:false,description:\"Toggle to apply a blur effect to the background.\"},blurIntensity:{type:ControlType.Number,title:\"Blur Intensity\",defaultValue:3,min:0,max:20,step:1,hidden:props=>!props.enableBlur,description:\"Set the intensity of the blur effect in pixels.\"},enableOverlay:{type:ControlType.Boolean,title:\"Enable Overlay\",defaultValue:true,description:\"Toggle to apply a transparent to black gradient overlay on top of the animated background.\"}});// Set the display name for the component in Framer.\nAnimatedBackground.displayName=\"Animated Background CC\";\nexport const __FramerMetadata__ = {\"exports\":{\"AnimatedBackground\":{\"type\":\"reactComponent\",\"name\":\"AnimatedBackground\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AnimatedBackground.map"],"mappings":"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"}