17 lines
566 B
TypeScript
17 lines
566 B
TypeScript
import {
|
|
DEFAULT_LANGUAGE,
|
|
isLanguage,
|
|
type Language,
|
|
} from '@/domain/language/entities';
|
|
import type { LanguageRepository } from '@/domain/language/repository';
|
|
|
|
/** New visitors see Swedish unless they have saved a language preference. */
|
|
export function resolveInitialLanguage(repository: LanguageRepository): Language {
|
|
const saved = repository.load();
|
|
if (saved && isLanguage(saved)) return saved;
|
|
return DEFAULT_LANGUAGE;
|
|
}
|
|
|
|
export function persistLanguage(repository: LanguageRepository, language: Language): void {
|
|
repository.save(language);
|
|
} |