{"version":3,"file":"Snowfall.CPpsaLvx.mjs","names":["useState","useMemo"],"sources":["https:/framerusercontent.com/modules/dlwMnKpBkSJDFds18Xbn/OP6IJ7tuvxk4anOsa9jC/Snowfall.js"],"sourcesContent":["// Snowfall component with customizable snow particles using framer-motion\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";import{useState,useEffect,useMemo,startTransition}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";function Snowflake({x,delay,duration,size,opacity,color,wind,flakeStyle}){const renderFlake=()=>{if(flakeStyle===\"star\"){return /*#__PURE__*/_jsx(\"svg\",{width:size,height:size,viewBox:\"0 0 24 24\",fill:color,children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"})});}else if(flakeStyle===\"snowflake\"){return /*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 24 24\",fill:color,children:[/*#__PURE__*/_jsx(\"path\",{d:\"M12 1l1.5 4.5L18 7l-4.5 1.5L15 13l-3-3-3 3 1.5-4.5L6 7l4.5-1.5L12 1z\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M12 11l4.5-1.5L18 17l-4.5-1.5L12 23l-1.5-4.5L6 17l4.5-1.5L12 11z\"}),/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"1\"})]});}else{return /*#__PURE__*/_jsx(\"div\",{style:{width:size,height:size,backgroundColor:color,borderRadius:\"50%\"}});}};return /*#__PURE__*/_jsx(motion.div,{style:{position:\"absolute\",left:`${x}%`,top:-10,opacity,pointerEvents:\"none\"},initial:{y:-10,rotate:0},animate:{y:\"100vh\",rotate:360,x:wind*duration},transition:{duration,delay,repeat:Infinity,ease:\"linear\"},children:renderFlake()});}/**\n * Snowfall Effect\n * \n * Creates an animated snowfall effect with customizable particles\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function Snowfall(props){const{snowflakeCount=50,snowflakeColor=\"#FFFFFF\",minSize=2,maxSize=8,minSpeed=3,maxSpeed=8,minOpacity=.3,maxOpacity=1,wind=0,flakeStyle=\"random\"}=props;const isStatic=useIsStaticRenderer();const[snowflakes,setSnowflakes]=useState([]);const generateSnowflakes=useMemo(()=>{return Array.from({length:snowflakeCount},(_,i)=>({x:Math.random()*100,delay:Math.random()*5,duration:minSpeed+Math.random()*(maxSpeed-minSpeed),size:minSize+Math.random()*(maxSize-minSize),opacity:minOpacity+Math.random()*(maxOpacity-minOpacity),color:snowflakeColor,wind:wind,flakeStyle:flakeStyle===\"random\"?[\"circle\",\"star\",\"snowflake\"][Math.floor(Math.random()*3)]:flakeStyle}));},[snowflakeCount,minSize,maxSize,minSpeed,maxSpeed,minOpacity,maxOpacity,snowflakeColor,wind,flakeStyle]);useEffect(()=>{startTransition(()=>{setSnowflakes(generateSnowflakes);});},[generateSnowflakes]);if(isStatic){return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"hidden\",background:\"linear-gradient(180deg, #87CEEB 0%, #E0F6FF 100%)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:\"#FFFFFF\",fontSize:\"24px\",fontWeight:\"bold\",textShadow:\"0 2px 4px rgba(0,0,0,0.3)\"},children:\"❄️ Snowfall Effect ❄️\"}),Array.from({length:Math.min(snowflakeCount,20)}).map((_,i)=>/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:`${Math.random()*100}%`,top:`${Math.random()*100}%`,width:minSize+Math.random()*(maxSize-minSize),height:minSize+Math.random()*(maxSize-minSize),backgroundColor:snowflakeColor,borderRadius:\"50%\",opacity:minOpacity+Math.random()*(maxOpacity-minOpacity)}},i))]});}return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",position:\"relative\",overflow:\"hidden\",...props.style},children:snowflakes.map((snowflake,index)=>/*#__PURE__*/_jsx(Snowflake,{...snowflake},index))});}addPropertyControls(Snowfall,{snowflakeCount:{type:ControlType.Number,title:\"Snowflake Count\",defaultValue:50,min:10,max:200,step:1},snowflakeColor:{type:ControlType.Color,title:\"Snowflake Color\",defaultValue:\"#FFFFFF\"},flakeStyle:{type:ControlType.Enum,title:\"Flake Style\",defaultValue:\"random\",options:[\"random\",\"circle\",\"star\",\"snowflake\"],optionTitles:[\"Random\",\"Circle\",\"Star\",\"Snowflake\"],displaySegmentedControl:true},minSize:{type:ControlType.Number,title:\"Min Size\",defaultValue:2,min:1,max:20,step:1,unit:\"px\"},maxSize:{type:ControlType.Number,title:\"Max Size\",defaultValue:8,min:1,max:20,step:1,unit:\"px\"},minSpeed:{type:ControlType.Number,title:\"Min Speed\",defaultValue:3,min:1,max:20,step:.5,unit:\"s\"},maxSpeed:{type:ControlType.Number,title:\"Max Speed\",defaultValue:8,min:1,max:20,step:.5,unit:\"s\"},minOpacity:{type:ControlType.Number,title:\"Min Opacity\",defaultValue:.3,min:0,max:1,step:.1},maxOpacity:{type:ControlType.Number,title:\"Max Opacity\",defaultValue:1,min:0,max:1,step:.1},wind:{type:ControlType.Number,title:\"Wind\",defaultValue:0,min:-100,max:100,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Snowfall\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Snowfall.map"],"mappings":"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"}