Implement first-time user experience

- Implement default state for new users.
- Add a simple tutorial popup for first-time users.
This commit is contained in:
gpt-engineer-app[bot]
2025-03-15 22:47:32 +00:00
parent db6c8431ec
commit 44789fa388
3 changed files with 141 additions and 5 deletions

View File

@@ -0,0 +1,88 @@
import React from "react";
import {
Dialog,
DialogContent,
DialogDescription,
DialogFooter,
DialogHeader,
DialogTitle,
} from "@/components/ui/dialog";
import { Button } from "@/components/ui/button";
import { Separator } from "@/components/ui/separator";
import { ArrowRight, Wallet, PieChart, LineChart } from "lucide-react";
interface WelcomeDialogProps {
open: boolean;
onClose: () => void;
}
const WelcomeDialog: React.FC<WelcomeDialogProps> = ({ open, onClose }) => {
return (
<Dialog open={open} onOpenChange={onClose}>
<DialogContent className="sm:max-w-md">
<DialogHeader>
<DialogTitle className="text-center text-2xl text-neuro-income mb-2">
!
</DialogTitle>
<DialogDescription className="text-center">
.
</DialogDescription>
</DialogHeader>
<div className="space-y-4 my-2">
<div className="flex items-start gap-3">
<div className="bg-neuro-background p-2 rounded-full">
<Wallet className="h-5 w-5 text-neuro-income" />
</div>
<div>
<h3 className="font-medium"> </h3>
<p className="text-sm text-gray-500">
, .
</p>
</div>
</div>
<Separator />
<div className="flex items-start gap-3">
<div className="bg-neuro-background p-2 rounded-full">
<PieChart className="h-5 w-5 text-neuro-income" />
</div>
<div>
<h3 className="font-medium"> </h3>
<p className="text-sm text-gray-500">
.
</p>
</div>
</div>
<Separator />
<div className="flex items-start gap-3">
<div className="bg-neuro-background p-2 rounded-full">
<LineChart className="h-5 w-5 text-neuro-income" />
</div>
<div>
<h3 className="font-medium"> </h3>
<p className="text-sm text-gray-500">
.
</p>
</div>
</div>
</div>
<DialogFooter className="sm:justify-center">
<Button
className="w-full sm:w-auto bg-neuro-income text-white hover:bg-neuro-income/90"
onClick={onClose}
>
<ArrowRight className="ml-2 h-4 w-4" />
</Button>
</DialogFooter>
</DialogContent>
</Dialog>
);
};
export default WelcomeDialog;