feat: resolve unit price from catalog with selection override

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Carlos Narro
2026-05-30 12:20:10 +02:00
parent b27b68908c
commit 61e0f5dbe5
2 changed files with 43 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
import type { Calidad, CategoriaMaterial, CatalogItem } from './types';
export function resolvePrecioUnitario(
categoria: CategoriaMaterial,
calidad: Calidad,
catalog: CatalogItem[],
selections: Partial<Record<CategoriaMaterial, string>>,
): { item: CatalogItem | null } {
const selectedId = selections[categoria];
if (selectedId) {
const selected = catalog.find((c) => c.id === selectedId);
if (selected) return { item: selected };
}
const def = catalog.find(
(c) => c.categoria === categoria && c.calidad === calidad && c.esDefault,
);
return { item: def ?? null };
}