master
1// This file was auto-generated by 'typesafe-i18n'. Any manual changes will be overwritten.
2/* eslint-disable */
3
4import { initFormatters } from './formatters.js'
5import type { Locales, Translations } from './i18n-types.js'
6import { loadedFormatters, loadedLocales, locales } from './i18n-util.js'
7
8import en from './en/index.js'
9import zh_CN from './zh-CN/index.js'
10import zh_TW from './zh-TW/index.js'
11
12import en_cli from './en/cli/index.js'
13import en_web from './en/web/index.js'
14import zh_CN_cli from './zh-CN/cli/index.js'
15import zh_CN_web from './zh-CN/web/index.js'
16import zh_TW_cli from './zh-TW/cli/index.js'
17import zh_TW_web from './zh-TW/web/index.js'
18
19const localeTranslations = {
20 en: {
21 ...en,
22 cli: en_cli,
23 web: en_web
24 },
25 'zh-CN': {
26 ...zh_CN,
27 cli: zh_CN_cli,
28 web: zh_CN_web
29 },
30 'zh-TW': {
31 ...zh_TW,
32 cli: zh_TW_cli,
33 web: zh_TW_web
34 },
35}
36
37export const loadLocale = (locale: Locales): void => {
38 if (loadedLocales[locale]) return
39
40 loadedLocales[locale] = localeTranslations[locale] as unknown as Translations
41 loadFormatters(locale)
42}
43
44export const loadAllLocales = (): void => locales.forEach(loadLocale)
45
46export const loadFormatters = (locale: Locales): void =>
47 void (loadedFormatters[locale] = initFormatters(locale))