import { useState } from 'react'; import Code from '~/components/Code'; import Dialog from '~/components/Dialog'; import Input from '~/components/Input'; import type { Machine } from '~/types'; interface RenameProps { machine: Machine; isOpen: boolean; magic?: string; setIsOpen: (isOpen: boolean) => void; } export default function Rename({ machine, magic, isOpen, setIsOpen, }: RenameProps) { const [name, setName] = useState(machine.givenName); return ( Edit machine name for {machine.givenName} This name is shown in the admin panel, in Tailscale clients, and used when generating MagicDNS names. {magic ? ( name.length > 0 && name !== machine.givenName ? (

This machine will be accessible by the hostname{' '} {name.toLowerCase().replaceAll(/\s+/g, '-')} {'. '} The hostname {machine.givenName}{' '} will no longer point to this machine.

) : (

This machine is accessible by the hostname{' '} {machine.givenName}.

) ) : undefined}
); }