|
- class Messages {
- private readonly messageStore = {}
- private locale: string
-
- registerLocale(locale: string, messages: Record<string, string>) {
- this.messageStore[locale] = messages
- this.locale = this.locale || locale
- }
-
- setLocale(locale: string) {
- this.locale = locale
- }
-
- translate(msgId: string) {
- return this.messageStore[this.locale][msgId]
- }
- }
-
- const defaultMessages = new Messages()
-
- export const registerLocale = defaultMessages.registerLocale.bind(defaultMessages)
-
- export const setLocale = defaultMessages.setLocale.bind(defaultMessages)
-
- export const _ = defaultMessages.translate.bind(defaultMessages)
|