'use client' import { deviceCartAtom } from '@/lib/atoms' import { cn } from '@/lib/utils' import type { Device } from '@prisma/client' import { useAtom } from 'jotai' import Link from 'next/link' import AddDevicesToCartButton from './add-devices-to-cart-button' import BlockDeviceDialog from './block-device-dialog' import { Badge } from './ui/badge' export default function DeviceCard({ device, parentalControl }: { device: Device, parentalControl?: boolean }) { const [devices, setDeviceCart] = useAtom(deviceCartAtom) const isChecked = devices.some((d) => d.id === device.id); return (
{ }} onClick={() => { if (parentalControl === true) return setDeviceCart((prev) => devices.some((d) => d.id === device.id) ? prev.filter((d) => d.id !== device.id) : [...prev, device] ) } } className="w-full">
{device.name} {device.mac}
{device.isActive && ( Active until{" "} {new Date().toLocaleDateString("en-US", { month: "short", day: "2-digit", year: "numeric", })} )} {(device.blocked && device.blockedBy === "ADMIN") && (
Blocked by admin

{device?.reasonForBlocking}

)}
{!parentalControl ? ( ) : ( )}
) }