// ============================================================ // ویرایشگر مشخصه‌های فنی Key-Value (موجودی اولیه) // خروجی: jsonb استاندارد {عنوان: مقدار} هم‌خوان با specs_hash بک‌اند. // مشخصات کاملاً اختیاری است؛ ردیف بدون عنوان دور ریخته می‌شود. // ============================================================ import { faNum } from "../../../lib/formatters"; export interface SpecKvRow { key: string; value: string; } export function specsKvToObject(rows: SpecKvRow[]): Record { const out: Record = {}; for (const r of rows) { const k = r.key.trim(); if (k) out[k] = r.value.trim(); } return out; } interface SpecsKvEditorProps { rows: SpecKvRow[]; onChange: (rows: SpecKvRow[]) => void; disabled?: boolean; } export function SpecsKvEditor({ rows, onChange, disabled }: SpecsKvEditorProps) { const update = (i: number, patch: Partial) => onChange(rows.map((r, ri) => (ri === i ? { ...r, ...patch } : r))); return (
{rows.map((r, i) => (
update(i, { key: e.target.value })} /> : update(i, { value: e.target.value })} />
))}
); }