import { cx } from "@/cva.config"; import { NetworkState } from "@hooks/stores"; import { GridCard } from "@components/Card"; import { LifeTimeLabel } from "@routes/devices.$id.settings.network"; import { m } from "@localizations/messages.js"; export function FlagLabel({ flag, className }: { flag: string, className?: string }) { const classes = cx( "ml-2 rounded-sm bg-red-500 px-2 py-1 text-[10px] font-medium leading-none text-white dark:border", "bg-red-500 text-white dark:border-red-700 dark:bg-red-800 dark:text-red-50", className, ); return {flag} } export default function Ipv6NetworkCard({ networkState, }: { networkState: NetworkState | undefined; }) { return (

{m.ipv6_information()}

{m.ipv6_link_local()}   {networkState?.ipv6_link_local}
{m.ipv6_gateway()}   {networkState?.ipv6_gateway}
{networkState?.ipv6_addresses && networkState?.ipv6_addresses.length > 0 && (

{m.network_ipv6_addresses_header()}

{networkState.ipv6_addresses.map(addr => (
{m.ipv6_address_label()}   {addr.address}  {addr.flag_deprecated ? : null} {addr.flag_dad_failed ? : null}
{addr.valid_lifetime && (
{m.ipv6_valid_lifetime()}   {addr.valid_lifetime === "" ? ( {m.not_applicable()} ) : ( )}
)} {addr.preferred_lifetime && (
{m.ipv6_preferred_lifetime()}   {addr.preferred_lifetime === "" ? ( {m.not_applicable()} ) : ( )}
)}
))}
)}
); }