{ "name": "progressive-blur", "type": "registry:ui", "registryDependencies": [], "dependencies": [ "motion" ], "devDependencies": [], "tailwind": {}, "cssVars": { "light": {}, "dark": {} }, "files": [ { "path": "progressive-blur.tsx", "content": "'use client';\nimport { cn } from '@/lib/utils';\nimport { HTMLMotionProps, motion } from 'motion/react';\n\nexport const GRADIENT_ANGLES = {\n top: 0,\n right: 90,\n bottom: 180,\n left: 270,\n};\n\nexport type ProgressiveBlurProps = {\n direction?: keyof typeof GRADIENT_ANGLES;\n blurLayers?: number;\n className?: string;\n blurIntensity?: number;\n} & HTMLMotionProps<'div'>;\n\nexport function ProgressiveBlur({\n direction = 'bottom',\n blurLayers = 8,\n className,\n blurIntensity = 0.25,\n ...props\n}: ProgressiveBlurProps) {\n const layers = Math.max(blurLayers, 2);\n const segmentSize = 1 / (blurLayers + 1);\n\n return (\n