import type { AssayFeature, AssaySample, ReagentRecord, ReagentTemplateInput, } from './types' export function normalizeAssaySample(sample: AssaySample): AssaySample { return { ...sample, metadata: sample.metadata ?? {}, } } export function normalizeAssayFeature(feature: AssayFeature): AssayFeature { return { ...feature, metadata: feature.metadata ?? {}, } } export function normalizeReagent(reagent: ReagentTemplateInput): ReagentRecord { return { ...reagent, expiryDate: normalizeDateString(reagent.expiryDate), kind: reagent.kind ?? 'reagent', metadata: reagent.metadata ?? {}, } } function normalizeDateString(value: Date | string | null | undefined): string | undefined { if (value === undefined || value === null) return undefined return value instanceof Date ? value.toISOString() : value }