blur-vignette
ui-layouts-aiveilix/blur-vignetteFreeComponent
ui-layouts publishes no description for this item.
Install it
npx shadcn@latest add https://raw.githubusercontent.com/jutt313/AIVEILIX-old/main/for ui/apps/ui-layout/public/r/blur-vignette.jsonSource
1'use client';2import React, { createContext, useContext } from 'react';3import { cn } from '@/lib/utils';4interface BlurVignetteContextProps {5 radius?: string;6 inset?: string;7 transitionLength?: string;8 blur?: string;9}1011const BlurVignetteContext = createContext<BlurVignetteContextProps>({12 radius: '24px',13 inset: '20px',14 transitionLength: '44px',15 blur: '6px',16});1718export const useBlurVignetteContext = () => useContext(BlurVignetteContext);1920interface BlurVignetteProps {21 classname?: string;22 children: React.ReactNode;23 radius?: string;24 inset?: string;25 transitionLength?: string;26 blur?: string;27 blurclassname?: string;28}2930export const BlurVignette: React.FC<BlurVignetteProps> = ({31 classname,32 children,33 radius = '24px',34 inset = '20px',35 transitionLength = '44px',36 blur = '6px',37}) => {38 return (39 <BlurVignetteContext.Provider40 value={{ radius, inset, transitionLength, blur }}41 >42 <div43 className={cn('relative aspect-square overflow-hidden', classname)}44 style={{ borderRadius: radius }}45 >46 {children}47 </div>48 </BlurVignetteContext.Provider>49 );50};51interface BlurVignetteArticleProps {52 children?: React.ReactNode;53 classname?: string;54}5556export const BlurVignetteArticle: React.FC<BlurVignetteArticleProps> = ({57 children,58 classname,59}) => {60 const { radius, inset, transitionLength, blur } = useBlurVignetteContext();6162 return (63 <div64 className={cn(65 'blur-vignette bottom-0 left-0 w-full h-full z-1',66 classname67 )}68 style={69 {70 '--radius': radius,71 '--inset': inset,72 '--transition-length': transitionLength,73 '--blur': blur,74 } as React.CSSProperties75 }76 >77 {children}78 </div>79 );80};
Files it writes
More from ui-layouts
All 230 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| 3d-marquee3d-marquee | ui-layouts | Components | Free | no deps · 2 files | |
| accordionaccordion | ui-layouts | Components | Free | no deps | |
| align-slideralign-slider | ui-layouts | Components | Free | 6 deps · 2 files | |
| animal-imagemaskinganimal-imagemasking | ui-layouts | Components | Free | 1 dep | |
| animated-beamanimated-beam | ui-layouts | Components | Free | no deps | |
| animated-beam-bidirectionalanimated-beam-bidirectional | ui-layouts | Components | Free | no deps | |
| animated-beam-defaultanimated-beam-default | ui-layouts | Components | Free | no deps | |
| animated-beam-multiple-inputanimated-beam-multiple-input | ui-layouts | Components | Free | no deps |
