"use client"; import React, { useState, useEffect } from "react"; import Image from "next/image"; import { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, } from "@/components/ui/carousel"; import { Card, CardContent } from "@/components/ui/card"; import CountUp from "react-countup"; import { Progress } from "@/components/ui/progress"; import { Separator } from "@/components/ui/separator"; import { Button } from "@/components/ui/button"; import { ShareIcon, StarIcon } from "lucide-react"; import { Toaster, toast } from "react-hot-toast"; import useSession from "@/lib/supabase/useSession"; import { redirect } from "next/navigation"; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, } from "@/components/ui/tooltip"; export default function Invest() { const [progress, setProgress] = useState(0); const [tab, setTab] = useState("Pitch"); const { session, loading } = useSession(); const user = session?.user; const [sessionLoaded, setSessionLoaded] = useState(false); const [isFollow, setIsFollow] = useState(false); useEffect(() => { // set sessionLoaded to true once session is confirmed if (!loading) { setSessionLoaded(true); } }, [loading]); const handleClick = (item: string) => { setTab(item); }; const handleShare = () => { const currentUrl = window.location.href; if (document.hasFocus()) { navigator.clipboard.writeText(currentUrl).then(() => { toast.success("URL copied to clipboard!"); }); } }; const handleFollow = () => { if (user) { setIsFollow((prevState) => !prevState); // save follow to database } else { redirect("/login"); } }; useEffect(() => { // percent success const timer = setTimeout(() => setProgress(66), 500); return () => clearTimeout(timer); }, []); return (
Follow NIVIDIA
{" "} World's first non-metal sustainable battery
5% raised of $5M max goal
Investors
Left to invest