23 lines
		
	
	
		
			456 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			456 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| export interface LocaleData {
 | |
|   locale: string;
 | |
|   messages: Record<string, string>;
 | |
| }
 | |
| 
 | |
| let loadedLocale: LocaleData;
 | |
| 
 | |
| export function setLocale(locale: LocaleData) {
 | |
|   loadedLocale = locale;
 | |
| }
 | |
| 
 | |
| export function getLocale() {
 | |
|   if (!loadedLocale && process.env.NODE_ENV === 'development') {
 | |
|     throw new Error('getLocale() called before any locale has been set');
 | |
|   }
 | |
| 
 | |
|   return loadedLocale;
 | |
| }
 | |
| 
 | |
| export function isLocaleLoaded() {
 | |
|   return !!loadedLocale;
 | |
| }
 |