/* ============================================================ ROOY · 15a 基本信息编辑 ─────────────────────────────────────────────────────────── 需求:编辑 onboarding 时填的画像 + 替换头像。从 15 设置 → 个人 资料卡进入。 结构:头像 (可点直接换 + 右下角相机角标) → 昵称 italic anchor → FieldRow 列表(性别 / 出生年 / 单双板 / 身高 / 体重 / 雪龄)。 依赖 onboarding.jsx 的 form 组件(FieldRow / FieldValue / NameInput / GenderPills / PickerSheet)—— list 节奏跟 11 onboarding 完全一致,让用户两处感觉是同一套界面。 ============================================================ */ function EditProfileScreen({ onNav }) { const [name, setName] = React.useState('Yuki'); const [gender, setGender] = React.useState('f'); const [age, setAge] = React.useState(29); const [height, setHeight] = React.useState(168); const [weight, setWeight] = React.useState(54); const [openPicker, setOpenPicker] = React.useState(null); const [avatarUrl, setAvatarUrl] = React.useState(null); const fileRef = React.useRef(null); const onFile = (e) => { const f = e.target.files && e.target.files[0]; if (!f) return; const url = URL.createObjectURL(f); setAvatarUrl(url); }; return (