{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/UtJGPVv2qcJeo3wGlxKe/BalXMWS2BCCOWCFT1Eqw/Progressiveblur.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{Frame,addPropertyControls,ControlType}from\"framer\";const BlurDiv=({blurValue,gradientStart,gradientEnd,zIndex,direction,cornerRadius})=>{const maskImage=`linear-gradient(to ${direction}, rgba(0, 0, 0, 0) ${gradientStart}%, rgba(0, 0, 0, 1) ${gradientEnd}%)`;return /*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,height:\"100%\",width:\"100%\",backdropFilter:`blur(${blurValue}px)`,WebkitBackdropFilter:`blur(${blurValue}px)`,maskImage:maskImage,WebkitMaskImage:maskImage,zIndex:zIndex,borderRadius:cornerRadius}});};/**\n\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 200\n * \n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function ProgressiveBlur(props){const{blur,blurDirection,allCorners,radius,topLeft,topRight,bottomRight,bottomLeft}=props;const blurLayers=10;const scaledBlur=blur/100*1e3;const cornerRadius=allCorners?`${radius}px`:`${topLeft}px ${topRight}px ${bottomRight}px ${bottomLeft}px`;const blurDivs=Array.from({length:blurLayers}).map((_,index)=>{const blurFactor=Math.pow(index/(blurLayers-1),2);const blurValue=blurFactor*scaledBlur/30;const gradientStart=100/blurLayers*index;const gradientEnd=gradientStart+100/blurLayers*2;return /*#__PURE__*/_jsx(BlurDiv,{blurValue:blurValue,gradientStart:gradientStart,gradientEnd:Math.min(gradientEnd,100),zIndex:index+1,direction:blurDirection,cornerRadius:cornerRadius},index);});return /*#__PURE__*/_jsx(Frame,{size:\"100%\",background:null,style:{position:\"relative\",borderRadius:cornerRadius,overflow:\"visible\"},children:blurDivs});}ProgressiveBlur.defaultProps={blur:100,blurDirection:\"bottom\",allCorners:true,radius:0,topLeft:0,topRight:0,bottomRight:0,bottomLeft:0};addPropertyControls(ProgressiveBlur,{blur:{type:ControlType.Number,title:\"Blur\",min:0,max:100,step:1,description:\"Note: Using a larger blur amount may slow down the website if used multiple times.\"},blurDirection:{type:ControlType.SegmentedEnum,title:\"Direction\",options:[\"top\",\"bottom\",\"left\",\"right\"],optionTitles:[\"\u2191\",\"\u2193\",\"\u2190\",\"\u2192\"]},cornerRadius:{type:ControlType.FusedNumber,title:\"Corner Radius\",toggleKey:\"allCorners\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"topLeft\",\"topRight\",\"bottomRight\",\"bottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0,description:\"Set corner radius from here otherwise the blur effect will break. The parent container can't have corner radius.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ProgressiveBlur\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"200\",\"framerIntrinsicHeight\":\"200\",\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Progressiveblur.map"],
  "mappings": "gGAAqG,IAAMA,EAAQ,CAAC,CAAC,UAAAC,EAAU,cAAAC,EAAc,YAAAC,EAAY,OAAAC,EAAO,UAAAC,EAAU,aAAAC,CAAY,IAAI,CAAC,IAAMC,EAAU,sBAAsBF,CAAS,sBAAsBH,CAAa,uBAAuBC,CAAW,KAAK,OAAoBK,EAAK,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,EAAE,OAAO,OAAO,MAAM,OAAO,eAAe,QAAQP,CAAS,MAAM,qBAAqB,QAAQA,CAAS,MAAM,UAAUM,EAAU,gBAAgBA,EAAU,OAAOH,EAAO,aAAaE,CAAY,CAAC,CAAC,CAAE,EAS3iB,SAARG,EAAiCC,EAAM,CAAC,GAAK,CAAC,KAAAC,EAAK,cAAAC,EAAc,WAAAC,EAAW,OAAAC,EAAO,QAAAC,EAAQ,SAAAC,EAAS,YAAAC,EAAY,WAAAC,CAAU,EAAER,EAAYS,EAAW,GAASC,EAAWT,EAAK,IAAI,IAAUL,EAAaO,EAAW,GAAGC,CAAM,KAAK,GAAGC,CAAO,MAAMC,CAAQ,MAAMC,CAAW,MAAMC,CAAU,KAAWG,EAAS,MAAM,KAAK,CAAC,OAAOF,CAAU,CAAC,EAAE,IAAI,CAACG,EAAEC,IAAQ,CAAmD,IAAMtB,EAAvC,KAAK,IAAIsB,GAAOJ,EAAW,GAAG,CAAC,EAA6BC,EAAW,GAASlB,EAAc,IAAIiB,EAAWI,EAAYpB,EAAYD,EAAc,IAAIiB,EAAW,EAAE,OAAoBX,EAAKR,EAAQ,CAAC,UAAUC,EAAU,cAAcC,EAAc,YAAY,KAAK,IAAIC,EAAY,GAAG,EAAE,OAAOoB,EAAM,EAAE,UAAUX,EAAc,aAAaN,CAAY,EAAEiB,CAAK,CAAE,CAAC,EAAE,OAAoBf,EAAKgB,EAAM,CAAC,KAAK,OAAO,WAAW,KAAK,MAAM,CAAC,SAAS,WAAW,aAAalB,EAAa,SAAS,SAAS,EAAE,SAASe,CAAQ,CAAC,CAAE,CAACZ,EAAgB,aAAa,CAAC,KAAK,IAAI,cAAc,SAAS,WAAW,GAAK,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,CAAC,EAAEgB,EAAoBhB,EAAgB,CAAC,KAAK,CAAC,KAAKiB,EAAY,OAAO,MAAM,OAAO,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,YAAY,oFAAoF,EAAE,cAAc,CAAC,KAAKA,EAAY,cAAc,MAAM,YAAY,QAAQ,CAAC,MAAM,SAAS,OAAO,OAAO,EAAE,aAAa,CAAC,SAAI,SAAI,SAAI,QAAG,CAAC,EAAE,aAAa,CAAC,KAAKA,EAAY,YAAY,MAAM,gBAAgB,UAAU,aAAa,aAAa,CAAC,MAAM,YAAY,EAAE,UAAU,CAAC,UAAU,WAAW,cAAc,YAAY,EAAE,YAAY,CAAC,KAAK,KAAK,KAAK,IAAI,EAAE,IAAI,EAAE,YAAY,kHAAkH,CAAC,CAAC",
  "names": ["BlurDiv", "blurValue", "gradientStart", "gradientEnd", "zIndex", "direction", "cornerRadius", "maskImage", "p", "ProgressiveBlur", "props", "blur", "blurDirection", "allCorners", "radius", "topLeft", "topRight", "bottomRight", "bottomLeft", "blurLayers", "scaledBlur", "blurDivs", "_", "index", "Frame", "addPropertyControls", "ControlType"]
}
