import { useEffect, useRef, useState, type KeyboardEvent, type ReactNode, type RefObject } from 'react' import { Field as BaseField } from '@base-ui/react/field' import { Input } from '@base-ui/react/input' import { cn } from './cn' /** * Text you click to edit — Ship's EditableText (2026-09-01), verbatim. Its * own comment always called it a package candidate: nothing here knows what * is being edited. * * The editing state is Base UI's `Input` — or `Field.Control` as a * `