aboutsummaryrefslogtreecommitdiffstats
path: root/apps/kit/src/lib/i18n/i18n-util.sync.ts
blob: 15ae633171365e53db4b6ea5d29c84805579e0bc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// This file was auto-generated by 'typesafe-i18n'. Any manual changes will be overwritten.
/* eslint-disable */

import { initFormatters } from './formatters'
import type { Locales, Translations } from './i18n-types'
import { loadedFormatters, loadedLocales, locales } from './i18n-util'

import en from './en'

import en_app from './en/app'
import en_reset_password from './en/reset-password'
import en_sign_in from './en/sign-in'
import en_sign_up from './en/sign-up'

const localeTranslations = {
	en: {
		...en,
		app: en_app,
		'reset-password': en_reset_password,
		'sign-in': en_sign_in,
		'sign-up': en_sign_up
	},
}

export const loadLocale = (locale: Locales): void => {
	if (loadedLocales[locale]) return

	loadedLocales[locale] = localeTranslations[locale] as unknown as Translations
	loadFormatters(locale)
}

export const loadAllLocales = (): void => locales.forEach(loadLocale)

export const loadFormatters = (locale: Locales): void =>
	void (loadedFormatters[locale] = initFormatters(locale))