Discord bot
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

26 lines
627 B

  1. class Messages {
  2. private readonly messageStore = {}
  3. private locale: string
  4. registerLocale(locale: string, messages: Record<string, string>) {
  5. this.messageStore[locale] = messages
  6. this.locale = this.locale || locale
  7. }
  8. setLocale(locale: string) {
  9. this.locale = locale
  10. }
  11. translate(msgId: string) {
  12. return this.messageStore[this.locale][msgId]
  13. }
  14. }
  15. const defaultMessages = new Messages()
  16. export const registerLocale = defaultMessages.registerLocale.bind(defaultMessages)
  17. export const setLocale = defaultMessages.setLocale.bind(defaultMessages)
  18. export const _ = defaultMessages.translate.bind(defaultMessages)