import { Input } from "@components/UI/Input.js"; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from "@components/UI/Dialog.js"; import { Button } from "@components/UI/Button.js"; import { useDevice } from "@app/core/stores/deviceStore.js"; import { useForm } from "react-hook-form"; import { Protobuf } from "@meshtastic/meshtasticjs"; import { Label } from "@components/UI/Label.js"; export interface User { longName: string; shortName: string; } export interface DeviceNameDialogProps { open: boolean; onOpenChange: (open: boolean) => void; } export const DeviceNameDialog = ({ open, onOpenChange }: DeviceNameDialogProps): JSX.Element => { const { hardware, nodes, connection } = useDevice(); const myNode = nodes.get(hardware.myNodeNum); const { register, handleSubmit } = useForm({ values: { longName: myNode?.user?.longName ?? "Unknown", shortName: myNode?.user?.shortName ?? "Unknown" } }); const onSubmit = handleSubmit((data) => { connection?.setOwner( new Protobuf.User({ ...myNode?.user, ...data }) ); onOpenChange(false); }); return ( Change Device Name The Device will restart once the config is saved.
); };