import { Atom } from "jotai"; import EditBox from "./EditBox"; export interface Props { valueAtom: Atom; formatter?: (arg: number) => string; } export default function NumberEditBox({ valueAtom, formatter }: Props) { const validator = (arg: string) => { try { const n = parseFloat(arg); if (isNaN(n) || !isFinite(n)) return; return n; } catch (e) { return null; } }; return ( n.toString())} validator={validator} /> ); }