diff --git a/apps/web/src/app/(dashboard)/dashboard/dashboard-chart.tsx b/apps/web/src/app/(dashboard)/dashboard/dashboard-chart.tsx
index 28ec89b..f2a5892 100644
--- a/apps/web/src/app/(dashboard)/dashboard/dashboard-chart.tsx
+++ b/apps/web/src/app/(dashboard)/dashboard/dashboard-chart.tsx
@@ -1,85 +1,223 @@
-import { AreaChart, Area, XAxis, YAxis, Tooltip } from "recharts";
-
-const data = [
- {
- name: "Page A",
- uv: 4000,
- pv: 2400,
- amt: 2400,
- },
- {
- name: "Page B",
- uv: 3000,
- pv: 1398,
- amt: 2210,
- },
- {
- name: "Page C",
- uv: 2000,
- pv: 9800,
- amt: 2290,
- },
- {
- name: "Page D",
- uv: 2780,
- pv: 3908,
- amt: 2000,
- },
- {
- name: "Page E",
- uv: 1890,
- pv: 4800,
- amt: 2181,
- },
- {
- name: "Page F",
- uv: 2390,
- pv: 3800,
- amt: 2500,
- },
- {
- name: "Page G",
- uv: 3490,
- pv: 4300,
- amt: 2100,
- },
-];
+import React from "react";
+import {
+ BarChart,
+ Bar,
+ XAxis,
+ YAxis,
+ Tooltip,
+ ResponsiveContainer,
+} from "recharts";
+import { EmailStatusIcon } from "../emails/email-status-badge";
+import { EmailStatus } from "@prisma/client";
+import { api } from "~/trpc/react";
+import Spinner from "@unsend/ui/src/spinner";
+import { Tabs, TabsList, TabsTrigger } from "@unsend/ui/src/tabs";
+import { useUrlState } from "~/hooks/useUrlState";
export default function DashboardChart() {
+ const [days, setDays] = useUrlState("days", "7");
+ const statusQuery = api.email.dashboard.useQuery({ days: Number(days) });
+
return (
-
+ {data.name} +
+ {data.DELIVERED ? ( +Delivered
+{data.DELIVERED} emails
+Bounced
+{data.BOUNCED} emails
+Complained
+{data.COMPLAINED} emails
+Opened
+{data.OPENED} emails
+Clicked
+{data.CLICKED} emails
+