2024-11-27 14:18:17 +05:00
|
|
|
import Filter from "@/components/filter";
|
|
|
|
import Search from "@/components/search";
|
|
|
|
import { UsersTable } from "@/components/user-table";
|
|
|
|
import { AdminAuthGuard } from "@/lib/auth-guard";
|
2024-12-01 23:19:31 +05:00
|
|
|
import {
|
|
|
|
AArrowDown,
|
|
|
|
AArrowUp,
|
|
|
|
CheckCheck,
|
|
|
|
Hourglass,
|
|
|
|
Minus,
|
|
|
|
} from "lucide-react";
|
2024-11-27 14:18:17 +05:00
|
|
|
import React, { Suspense } from "react";
|
2024-12-01 23:19:31 +05:00
|
|
|
|
|
|
|
const sortfilterOptions = [
|
|
|
|
{
|
|
|
|
value: "asc",
|
|
|
|
label: "Ascending",
|
|
|
|
icon: <AArrowUp size={16} />,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
value: "desc",
|
|
|
|
label: "Descending",
|
|
|
|
icon: <AArrowDown size={16} />,
|
|
|
|
},
|
|
|
|
];
|
|
|
|
|
2024-11-27 14:18:17 +05:00
|
|
|
export default async function AdminUsers({
|
|
|
|
searchParams,
|
|
|
|
}: {
|
|
|
|
searchParams: Promise<{
|
|
|
|
query: string;
|
|
|
|
page: number;
|
|
|
|
sortBy: string;
|
|
|
|
status: string;
|
|
|
|
}>;
|
|
|
|
}) {
|
|
|
|
await AdminAuthGuard();
|
|
|
|
|
|
|
|
return (
|
|
|
|
<div>
|
2024-12-26 00:43:39 +05:00
|
|
|
<h3 className="text-gray-500 text-2xl font-bold title-bg py-4 px-2 mb-4">
|
2024-11-27 14:18:17 +05:00
|
|
|
Users
|
|
|
|
</h3>
|
2024-12-01 23:19:31 +05:00
|
|
|
|
2024-11-27 14:18:17 +05:00
|
|
|
<div
|
2024-12-01 23:19:31 +05:00
|
|
|
id="user-table-filters"
|
|
|
|
className=" pb-4 gap-4 flex items-center justify-start"
|
2024-11-27 14:18:17 +05:00
|
|
|
>
|
2024-12-01 23:19:31 +05:00
|
|
|
<Search />
|
|
|
|
<Filter
|
|
|
|
options={[
|
|
|
|
{
|
|
|
|
value: "all",
|
|
|
|
label: "ALL",
|
|
|
|
icon: <Minus size={14} />,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
value: "unverified",
|
|
|
|
label: "Unverfieid",
|
|
|
|
icon: <CheckCheck size={14} />,
|
|
|
|
},
|
|
|
|
{
|
|
|
|
value: "verified",
|
|
|
|
label: "Verified",
|
|
|
|
icon: <Hourglass size={14} />,
|
|
|
|
},
|
|
|
|
]}
|
|
|
|
defaultOption="all"
|
|
|
|
queryParamKey="status"
|
|
|
|
/>
|
2024-11-30 23:38:32 +05:00
|
|
|
|
2024-12-01 23:19:31 +05:00
|
|
|
<Filter
|
|
|
|
options={sortfilterOptions}
|
|
|
|
defaultOption="asc"
|
|
|
|
queryParamKey="sortBy"
|
|
|
|
/>
|
2024-11-27 14:18:17 +05:00
|
|
|
</div>
|
|
|
|
<Suspense fallback={"loading...."}>
|
|
|
|
<UsersTable searchParams={searchParams} />
|
|
|
|
</Suspense>
|
|
|
|
</div>
|
|
|
|
);
|
|
|
|
}
|