@pagamio/frontend-commons-lib
Version:
Pagamio library for Frontend reusable components like the form engine and table container
26 lines (25 loc) • 1.14 kB
JavaScript
export const loadTranslations = async (locale, loadPath) => {
try {
// Replace this with your actual loading logic
const response = await fetch(`${loadPath}/${locale}.json`);
if (!response.ok) {
throw new Error(`Failed to load translations for locale ${locale}`);
}
const messages = await response.json();
// Get available locales by listing directory or from an endpoint
// This is just a placeholder - implement based on your needs
const localesResponse = await fetch(`${loadPath}/locales.json`);
const availableLocales = localesResponse.ok ? await localesResponse.json() : [locale];
return { messages, availableLocales };
}
catch (error) {
console.error(`Error loading translations for ${locale}:`, error);
return { messages: {}, availableLocales: [locale] };
}
};
export const detectBrowserLocale = () => {
if (typeof window === 'undefined') {
return 'en'; // Default for SSR
}
return (navigator.language ?? navigator.browserLanguage ?? navigator.userLanguage ?? 'en').split('-')[0];
};