import { LuRefreshCcw } from "react-icons/lu"; import { Button } from "@/components/Button"; import { GridCard } from "@/components/Card"; import { LifeTimeLabel } from "@/routes/devices.$id.settings.network"; import { NetworkState } from "@/hooks/stores"; export default function DhcpLeaseCard({ networkState, setShowRenewLeaseConfirm, }: { networkState: NetworkState; setShowRenewLeaseConfirm: (show: boolean) => void; }) { return (

DHCP Lease Information

{networkState?.dhcp_lease?.ip && (
IP Address {networkState?.dhcp_lease?.ip}
)} {networkState?.dhcp_lease?.netmask && (
Subnet Mask {networkState?.dhcp_lease?.netmask}
)} {networkState?.dhcp_lease?.dns && (
DNS Servers {networkState?.dhcp_lease?.dns.map(dns =>
{dns}
)}
)} {networkState?.dhcp_lease?.broadcast && (
Broadcast {networkState?.dhcp_lease?.broadcast}
)} {networkState?.dhcp_lease?.domain && (
Domain {networkState?.dhcp_lease?.domain}
)} {networkState?.dhcp_lease?.ntp_servers && networkState?.dhcp_lease?.ntp_servers.length > 0 && (
NTP Servers
{networkState?.dhcp_lease?.ntp_servers.map(server => (
{server}
))}
)} {networkState?.dhcp_lease?.hostname && (
Hostname {networkState?.dhcp_lease?.hostname}
)}
{networkState?.dhcp_lease?.routers && networkState?.dhcp_lease?.routers.length > 0 && (
Gateway {networkState?.dhcp_lease?.routers.map(router => (
{router}
))}
)} {networkState?.dhcp_lease?.server_id && (
DHCP Server {networkState?.dhcp_lease?.server_id}
)} {networkState?.dhcp_lease?.lease_expiry && (
Lease Expires
)} {networkState?.dhcp_lease?.mtu && (
MTU {networkState?.dhcp_lease?.mtu}
)} {networkState?.dhcp_lease?.ttl && (
TTL {networkState?.dhcp_lease?.ttl}
)} {networkState?.dhcp_lease?.bootp_next_server && (
Boot Next Server {networkState?.dhcp_lease?.bootp_next_server}
)} {networkState?.dhcp_lease?.bootp_server_name && (
Boot Server Name {networkState?.dhcp_lease?.bootp_server_name}
)} {networkState?.dhcp_lease?.bootp_file && (
Boot File {networkState?.dhcp_lease?.bootp_file}
)}
); }