From 82d5311214e0bf240c74f1c9d95da01443216d5c Mon Sep 17 00:00:00 2001 From: listlessbird <124798751+listlessbird@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:13:05 +0530 Subject: [PATCH] feat: add attr --- web/bun.lockb | Bin 323780 -> 325036 bytes web/package.json | 2 + web/src/app/(main)/layout.tsx | 2 +- web/src/components/attr.tsx | 149 +++++++++++++++++++++++ web/src/components/nav/constants.tsx | 2 +- web/src/components/nav/header-mobile.tsx | 6 +- web/src/components/nav/sidenav.tsx | 9 +- web/src/components/ui/tooltip.tsx | 30 +++++ 8 files changed, 195 insertions(+), 5 deletions(-) create mode 100644 web/src/components/attr.tsx create mode 100644 web/src/components/ui/tooltip.tsx diff --git a/web/bun.lockb b/web/bun.lockb index 8476a8f5abb4792e15458210ca1594b857e4d9a1..3340027ea15a33892f75373921ff5db43b423537 100644 GIT binary patch delta 63782 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 b+hFa}jpgkB=JL}2t))w{T$Ab)YQO(qy0<1v delta 62447 zcmeFadz_8s|MtDs8jD%>DlrO8rKqUESi>+28OFXLnXyTOVJ7<-6AFt$R4QFfry(?z zU8RzQN)ke)QYn;}N~lySp_2Q3T$}mMw_o4i>-XHxeLw#^t(RjRpU-jbKj(R!*R`%S z*YeD_=Wi`J|G_4WUaM3sc)_D7F$c0Lo*1^f+<>biA0Dj#bi?=W{Oa`O%Z{f%-TcRL zKD~aQ*SCK3fu91lGSZ%=QVGk zjJKgz!T$sO0{9?Y1I|Vl_l2v%k@8M`qw<{wJE2#PlJEx!%Gkm!K;?GBpI7ktDx)ui zL-6=mrz4|sM`br2I@p(uUkyEpL^Y6=KWX%k5xL|4T7EeLQTk$7^}NbxRIUc23o2oV zHOYTvv>R^Rn~DHXc`yU6AeDMHSLthZTp> z*%MXFS6JQWtAl@s%Y)%K{LU^Xz_sz?9F9&4VAMkRj@B=P_reNjeoj{2SSqZDDF0+l zpO1gjzT!=B`x9Lq9-lulcQE!u z39UgRcHCj5SAZ*a!+4eq3gJ5pM;X_+yaHCn#juuQLxv^45Z{}UA^G{fxOk_0HEUc< zt;{+MR<#Ud0>wALsy!7}=~gZe8JRzk-uW)YSKK_mHojV$;4av#ydmRrhxmM%R!K~) z+)J-?25}**+Ou+1htD^@p>uc)fi*j$vqq1}9qRLC;H%ZHuzGRfRV;saNKV$s5tKXE z$O&FcxBMm&S;^CySXt$2Mf+dl)OHc9TE21pD_q_SEB7W?wP%kWpF2J`JO2gO|EP)6 z%f8n-`4Ztv$yW!y2-c!j1m7WlW&H21bM&tGbfnd^XA_)7wg}d+$UJ`1*lb^z3{3O1 zdURXEIYca6$sVTED8?Q`U|cN1PDqdJo2 zR@4aA5n2Vl7(UhBX|TlQJJXyF-Rg1zthnC@t7GdrI~};7i!+cIShF7?T^)LpdM?sd z@Dzp`m;-C1zjSrh*QEAVUWF^7r@K25Zoq&wpjxon`RhSc4qbse%IvASy*-_Ie&_~= zM~)diTr(R@cj_7A@*tPH!785&*MP5bI67@F6{y4KA!r89;Va{DSTj^mpkvhMn~AR_ z^udh|x9{UFsqqDa^GQ#@SH)Fsaym3LdvJkz6pvmVeHXgYIR|8qrpB$*Q`L91Z`z{1 zPJ{Qu)yUwT)W*=DB0Ut=)TdjUV{1iwWjeWc!CG;{$B!A2J=*6Ro;5Ld4E^}6pR*AD z+MR6jYhlC;aBAxY%TJ?rZIlOH-#Z148|chK?&zHCyxj5mACS)QqtnKW9+ItiOvuX` zJ9d)K*T(JM)v)3!YL2Q)#uhd3+hZPK&=FQB{9&k=M@ z^hSJ5@Z4ce2M55K`0JQ0`%uM?!|x0$-*v8Ua#+z(gjl+xjNiBwMoCZw7m`s^vXlno zzel=u(CiUT{@$=6RCT12FA<;f+q5|NV)(jIPQ!kDm0w4B@k&^S#NF^smtve|+}f2s zht=TzF-`^V!V2-?vCb|v3swczIH%z;@a6a~k!GF0ogLe=erE+{Q6p2MHuR79(*O70c!*au74h^h&EszB;_j<(aTL@W9

e>2xoB~T>RnQe(GkCR|UJ+J9-^_CI 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 z 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 b8=!r)uY7&+JEfilTI%{*szKI&XjlIit74W+ diff --git a/web/package.json b/web/package.json index 499277a..8c4d0fa 100644 --- a/web/package.json +++ b/web/package.json @@ -30,6 +30,7 @@ "@radix-ui/react-select": "^2.1.1", "@radix-ui/react-slot": "^1.1.0", "@radix-ui/react-tabs": "^1.1.1", + "@radix-ui/react-tooltip": "^1.1.3", "@tanstack/react-query": "^5.56.2", "@tanstack/react-query-devtools": "^5.58.0", "ai": "^3.4.7", @@ -47,6 +48,7 @@ "react": "19.0.0-rc-f994737d14-20240522", "react-dom": "19.0.0-rc-f994737d14-20240522", "react-hook-form": "^7.53.0", + "react-icons": "^5.3.0", "replicate": "^0.34.1", "tailwind-merge": "^2.5.3", "together-ai": "^0.8.0", diff --git a/web/src/app/(main)/layout.tsx b/web/src/app/(main)/layout.tsx index c80ddc4..03182dc 100644 --- a/web/src/app/(main)/layout.tsx +++ b/web/src/app/(main)/layout.tsx @@ -20,7 +20,7 @@ export default async function Layout({

-
+
{children}
diff --git a/web/src/components/attr.tsx b/web/src/components/attr.tsx new file mode 100644 index 0000000..3bbc89c --- /dev/null +++ b/web/src/components/attr.tsx @@ -0,0 +1,149 @@ +import { useState, useRef, MouseEvent } from "react"; +import { motion, useAnimation, AnimatePresence } from "framer-motion"; +import { Github, Heart } from "lucide-react"; +import { + TooltipProvider, + Tooltip, + TooltipContent, + TooltipTrigger, +} from "@/components/ui/tooltip"; +import { Button } from "@/components/ui/button"; +import { FaXTwitter } from "react-icons/fa6"; + +export function Attr() { + const controls = useAnimation(); + const [isOpen, setIsOpen] = useState(false); + const timeoutRef = useRef(null); + + const handleOpen = () => { + if (timeoutRef.current) clearTimeout(timeoutRef.current); + setIsOpen(true); + controls.start({ + scale: [1, 1.2, 1], + transition: { duration: 0.5 }, + }); + }; + + const handleClose = () => { + if (timeoutRef.current) clearTimeout(timeoutRef.current); + // @ts-ignore + timeoutRef.current = setTimeout(() => { + setIsOpen(false); + }, 150); + }; + + const handleTooltipMouseEnter = () => { + if (timeoutRef.current) clearTimeout(timeoutRef.current); + setIsOpen(true); + }; + + const handleTooltipMouseLeave = () => { + handleClose(); + }; + + const handleClick = () => { + setIsOpen(!isOpen); + }; + + const handleLinkClick = (e: MouseEvent) => { + e.stopPropagation(); + setIsOpen(false); + }; + + return ( + + + + + + built with + + + + + + by{" "} + + + + + + + + {isOpen && ( + + + + + + + )} + + + + ); +} diff --git a/web/src/components/nav/constants.tsx b/web/src/components/nav/constants.tsx index 0532fc4..beb000b 100644 --- a/web/src/components/nav/constants.tsx +++ b/web/src/components/nav/constants.tsx @@ -12,7 +12,7 @@ export const SideNavItems: SideNavItem[] = [ icon: , }, { - title: "generations", + title: "Generations", path: "/history", icon: , }, diff --git a/web/src/components/nav/header-mobile.tsx b/web/src/components/nav/header-mobile.tsx index 2e2552d..2d5277b 100644 --- a/web/src/components/nav/header-mobile.tsx +++ b/web/src/components/nav/header-mobile.tsx @@ -134,7 +134,11 @@ const MenuItem = ({ children?: ReactNode; } & ComponentProps) => { return ( - + {children} ); diff --git a/web/src/components/nav/sidenav.tsx b/web/src/components/nav/sidenav.tsx index 3de45f6..c200764 100644 --- a/web/src/components/nav/sidenav.tsx +++ b/web/src/components/nav/sidenav.tsx @@ -6,10 +6,11 @@ import { usePathname } from "next/navigation"; import { SideNavItems, SideNavItem } from "@/components/nav/constants"; import { cn } from "@/lib/utils"; import { Logo } from "@/components/logo"; +import { Attr } from "@/components/attr"; export function SideNav() { return (
@@ -26,6 +27,10 @@ export function SideNav() { })}
+ +
+ +
); } @@ -38,7 +43,7 @@ const MenuItem = ({ item }: { item: SideNavItem }) => { , + React.ComponentPropsWithoutRef +>(({ className, sideOffset = 4, ...props }, ref) => ( + +)) +TooltipContent.displayName = TooltipPrimitive.Content.displayName + +export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }