mirror of
https://github.com/bitwarden/browser
synced 2025-12-17 16:53:34 +00:00
* Rename service-factory folder * Move cryptographic service factories * Move crypto models * Move crypto services * Move domain base class * Platform code owners * Move desktop log services * Move log files * Establish component library ownership * Move background listeners * Move background background * Move localization to Platform * Move browser alarms to Platform * Move browser state to Platform * Move CLI state to Platform * Move Desktop native concerns to Platform * Move flag and misc to Platform * Lint fixes * Move electron state to platform * Move web state to Platform * Move lib state to Platform * Fix broken tests * Rename interface to idiomatic TS * `npm run prettier` 🤖 * Resolve review feedback * Set platform as owners of web core and shared * Expand moved services * Fix test types --------- Co-authored-by: Hinton <hinton@users.noreply.github.com>
32 lines
984 B
TypeScript
32 lines
984 B
TypeScript
import { TranslationService as BaseTranslationService } from "@bitwarden/common/platform/services/translation.service";
|
|
|
|
import { SupportedTranslationLocales } from "../translation-constants";
|
|
|
|
export class TranslationService extends BaseTranslationService {
|
|
private _translationLocale: string;
|
|
|
|
constructor(systemLanguage: string, localesDirectory: string) {
|
|
super(systemLanguage || "en-US", localesDirectory, async (formattedLocale: string) => {
|
|
const filePath =
|
|
this.localesDirectory +
|
|
"/" +
|
|
formattedLocale +
|
|
"/messages.json?cache=" +
|
|
process.env.CACHE_TAG;
|
|
const localesResult = await fetch(filePath);
|
|
const locales = await localesResult.json();
|
|
return locales;
|
|
});
|
|
|
|
this.supportedTranslationLocales = SupportedTranslationLocales;
|
|
}
|
|
|
|
get translationLocale(): string {
|
|
return this._translationLocale;
|
|
}
|
|
|
|
set translationLocale(locale: string) {
|
|
this._translationLocale = locale;
|
|
}
|
|
}
|