import { useCallback } from 'react'; import { useLanguageStore, translateCarName, Language } from './i18n'; export function useTranslate() { const { language } = useLanguageStore(); // Translate a single text using static dictionary const translate = useCallback((text: string | undefined | null): string => { if (!text) return ''; if (language === 'ko') return text; // Korean is source, no translation needed return translateCarName(text, language as Language); }, [language]); // Translate car object fields const translateCar = useCallback((car: { car_name?: string; fuel?: string; transmission?: string; color?: string; maker?: { name: string }; model?: { name: string }; }) => { return { car_name: translate(car.car_name), fuel: translate(car.fuel), transmission: translate(car.transmission), color: translate(car.color), maker_name: translate(car.maker?.name), model_name: translate(car.model?.name), }; }, [translate]); // Kept for API compatibility - static translations are synchronous, so this is a no-op const preloadCarTranslations = useCallback(async (_cars: Array<{ car_name?: string; fuel?: string; transmission?: string; color?: string; maker?: { name: string }; model?: { name: string }; }>) => { // No-op: static dictionary translations are synchronous }, []); return { translate, translateCar, preloadCarTranslations, loading: false, }; }