import { LuPlus, LuX } from "react-icons/lu"; import { useFieldArray, useFormContext } from "react-hook-form"; import { useEffect } from "react"; import validator from "validator"; import { GridCard } from "@/components/Card"; import { Button } from "@/components/Button"; import { InputFieldWithLabel } from "@/components/InputField"; import { NetworkSettings } from "@/hooks/stores"; export default function StaticIpv4Card() { const formMethods = useFormContext(); const { register, formState, watch } = formMethods; const { fields, append, remove } = useFieldArray({ name: "ipv4_static.dns" }); // TODO: set subnet mask if IP address is in CIDR notation useEffect(() => { if (fields.length === 0) append(""); }, [append, fields.length]); const dns = watch("ipv4_static.dns"); const validate = (value: string) => { if (!validator.isIP(value)) return "Invalid IP address"; return true; }; return (

Static IPv4 Configuration

{/* DNS server fields */}
{fields.map((dns, index) => { return (
{index > 0 && (
)}
); })}
); }