From 1e3c010f6299165f7edc852ad1c7e3d5ad278bed Mon Sep 17 00:00:00 2001 From: TZGyn Date: Thu, 19 Oct 2023 12:37:29 +0800 Subject: [PATCH] Frontend added avatar to navbar --- react-frontend/bun.lockb | Bin 148963 -> 151421 bytes react-frontend/package.json | 1 + react-frontend/src/components/ui/avatar.tsx | 48 ++++++++++++++++++++ 3 files changed, 49 insertions(+) create mode 100644 react-frontend/src/components/ui/avatar.tsx diff --git a/react-frontend/bun.lockb b/react-frontend/bun.lockb index 72cec09e14af1085a3e38bfeba0331007a22a47a..95fa88593613fed4782fb17468941734212df4dc 100755 GIT binary patch delta 31097 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 T$Pt}+_uKM2YZ7A=clrMT3HTL> diff --git a/react-frontend/package.json b/react-frontend/package.json index dfd613d..d429a09 100644 --- a/react-frontend/package.json +++ b/react-frontend/package.json @@ -11,6 +11,7 @@ }, "dependencies": { "@radix-ui/react-alert-dialog": "^1.0.4", + "@radix-ui/react-avatar": "^1.0.4", "@radix-ui/react-dialog": "^1.0.4", "@radix-ui/react-dropdown-menu": "^2.0.5", "@radix-ui/react-label": "^2.0.2", diff --git a/react-frontend/src/components/ui/avatar.tsx b/react-frontend/src/components/ui/avatar.tsx new file mode 100644 index 0000000..991f56e --- /dev/null +++ b/react-frontend/src/components/ui/avatar.tsx @@ -0,0 +1,48 @@ +import * as React from "react" +import * as AvatarPrimitive from "@radix-ui/react-avatar" + +import { cn } from "@/lib/utils" + +const Avatar = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)) +Avatar.displayName = AvatarPrimitive.Root.displayName + +const AvatarImage = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)) +AvatarImage.displayName = AvatarPrimitive.Image.displayName + +const AvatarFallback = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)) +AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName + +export { Avatar, AvatarImage, AvatarFallback }