import { getLocale } from '$lib/paraglide/runtime';

/**
 * Mapeo de traducciones para el catálogo de Tipos de Trailer (GTipoTrailer).
 * Se usa la clave (trailer_type_key) para obtener la descripción en español.
 */
const TRAILER_TYPE_ES: Record<string, string> = {
	'20': 'Contenedor marítimo de 20 pies - Techo abierto',
	'2B': 'Contenedor marítimo de 20 pies - Techo cerrado',
	'40': 'Contenedor marítimo de 40 pies - Techo abierto',
	'4B': 'Contenedor marítimo de 40 pies - Techo cerrado',
	'BI': 'Remolque para bebidas',
	'CB': 'Remolque de cuello de ganso',
	'CH': 'Chasis',
	'CL': 'Contenedor marítimo de otra longitud - Techo cerrado',
	'CU': 'Contenedor marítimo de otra longitud - Techo abierto',
	'CZ': 'Contenedor refrigerado',
	'DD': 'Remolque de doble caída',
	'DT': 'Remolque de caída trasera',
	'FR': 'Remolque flat rack',
	'FT': 'Plataforma / Cama plana',
	'HC': 'Remolque tolva (cubierto)',
	'HE': 'Remolque para caballos',
	'HO': 'Remolque tolva (abierto)',
	'HP': 'Remolque tolva (descarga neumática cubierto)',
	'L1': 'Pipa / Tanque (líquidos) no caldeado / no aislado',
	'L2': 'Pipa / Tanque (líquidos) caldeado / no aislado',
	'L3': 'Pipa / Tanque (líquidos) no caldeado / aislado',
	'L4': 'Pipa / Tanque (líquidos) caldeado / aislado',
	'LP': 'Remolque para troncos / tubería / postes',
	'LT': 'Remolque para ganado',
	'NC': 'Sin equipo',
	'OE': 'Otro',
	'RD': 'Remolque de rack fijo / doble caída',
	'RG': 'Góndola cerrada',
	'RO': 'Góndola abierta',
	'RS': 'Remolque de rack fijo / caída simple',
	'SD': 'Remolque de caída simple',
	'T1': 'Pipa / Tanque (gas) no caldeado / no aislado',
	'T2': 'Pipa / Tanque (gas) caldeado / no aislado',
	'T3': 'Pipa / Tanque (gas) no caldeado / aislado',
	'T4': 'Pipa / Tanque (gas) caldeado / aislado',
	'T5': 'Pipa / Tanque (químicos) no caldeado / no aislado',
	'T6': 'Pipa / Tanque (químicos) caldeado / no aislado',
	'T7': 'Pipa / Tanque (químicos) no caldeado / aislado',
	'T8': 'Pipa / Tanque (químicos) caldeado / aislado',
	'TC': 'Portavehículos / Nodriza',
	'TK': 'Pipa / Tanque (líquidos grado alimenticio)',
	'TL': 'Semirremolque',
	'TW': 'Remolque de temperatura controlada'
};

/**
 * Obtiene la descripción traducida de un tipo de trailer.
 * @param key Clave del tipo de trailer (ej: '20', 'FT')
 * @param fallback Descripción original por si no hay traducción
 * @returns La descripción en el idioma activo
 */
export function getTrailerTypeDescription(key: string, fallback: string = ''): string {
	const locale = getLocale();
	if (locale.startsWith('es')) {
		return TRAILER_TYPE_ES[key] || fallback;
	}
	return fallback;
}
