add admin checks for admin pages and run biome formating 🔨
All checks were successful
Build and Push Docker Images / Build and Push Docker Images (push) Successful in 11m8s

This commit is contained in:
2025-07-25 13:31:12 +05:00
parent aedf7cdf7d
commit 9b2f2c1528
127 changed files with 6577 additions and 6334 deletions

View File

@ -45,9 +45,7 @@ export async function AdminDevicesTable({
apiParams.limit = limit;
apiParams.offset = offset;
const [error, devices] = await tryCatch(
getDevices(apiParams, true),
);
const [error, devices] = await tryCatch(getDevices(apiParams, true));
if (error) {
if (error.message === "UNAUTHORIZED") {
redirect("/auth/signin");
@ -78,9 +76,7 @@ export async function AdminDevicesTable({
</TableHeader>
<TableBody className="overflow-scroll">
{data?.map((device) => (
<TableRow
key={device.id}
>
<TableRow key={device.id}>
<TableCell>
<div className="flex flex-col items-start">
<Link
@ -96,18 +92,19 @@ export async function AdminDevicesTable({
<div className="text-muted-foreground">
Active until{" "}
<span className="font-semibold">
{new Date(device.expiry_date || "").toLocaleDateString(
"en-US",
{
month: "short",
day: "2-digit",
year: "numeric",
},
)}
{new Date(
device.expiry_date || "",
).toLocaleDateString("en-US", {
month: "short",
day: "2-digit",
year: "numeric",
})}
</span>
</div>
) : (
<p className="text-muted-foreground">Device Inactive</p>
<p className="text-muted-foreground">
Device Inactive
</p>
)}
{device.has_a_pending_payment && (
<Link href={`/payments/${device.pending_payment_id}`}>
@ -121,7 +118,9 @@ export async function AdminDevicesTable({
{device.blocked_by === "ADMIN" && device.blocked && (
<div className="p-2 rounded border my-2 bg-white dark:bg-neutral-800 shadow">
<span className="font-semibold">Comment</span>
<p className="text-neutral-400">{device?.reason_for_blocking}</p>
<p className="text-neutral-400">
{device?.reason_for_blocking}
</p>
</div>
)}
</div>
@ -129,12 +128,15 @@ export async function AdminDevicesTable({
<TableCell className="font-medium">
<div className="flex flex-col items-start">
{device?.user?.name}
<span className="text-muted-foreground">{device?.user?.id_card}</span>
<span className="text-muted-foreground">
{device?.user?.id_card}
</span>
</div>
</TableCell>
<TableCell className="font-medium">{device.mac}</TableCell>
<TableCell className="font-medium">{device?.vendor}</TableCell>
<TableCell className="font-medium">
{device?.vendor}
</TableCell>
<TableCell>
{!device.has_a_pending_payment && (
<BlockDeviceDialog
@ -151,9 +153,7 @@ export async function AdminDevicesTable({
<TableRow>
<TableCell colSpan={5} className="text-muted-foreground">
{meta?.total === 1 ? (
<p className="text-center">
Total {meta?.total} device.
</p>
<p className="text-center">Total {meta?.total} device.</p>
) : (
<p className="text-center">
Total {meta?.total} devices.
@ -170,8 +170,7 @@ export async function AdminDevicesTable({
currentPage={meta?.current_page}
/>
</>
)
}
</div >
)}
</div>
);
}