about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--lingui.config.js1
-rw-r--r--src/locale/helpers.ts5
-rw-r--r--src/locale/i18n.ts21
-rw-r--r--src/locale/i18n.web.ts6
-rw-r--r--src/locale/languages.ts2
5 files changed, 25 insertions, 10 deletions
diff --git a/lingui.config.js b/lingui.config.js
index 217546dbe..d10363eb3 100644
--- a/lingui.config.js
+++ b/lingui.config.js
@@ -16,6 +16,7 @@ module.exports = {
     'zh-CN',
     'zh-TW',
     'it',
+    'tr',
   ],
   catalogs: [
     {
diff --git a/src/locale/helpers.ts b/src/locale/helpers.ts
index 58e8a3a82..c2434c7df 100644
--- a/src/locale/helpers.ts
+++ b/src/locale/helpers.ts
@@ -1,7 +1,8 @@
 import {AppBskyFeedDefs, AppBskyFeedPost} from '@atproto/api'
+import * as bcp47Match from 'bcp-47-match'
 import lande from 'lande'
+
 import {hasProp} from 'lib/type-guards'
-import * as bcp47Match from 'bcp-47-match'
 import {
   AppLanguage,
   LANGUAGES_MAP_CODE2,
@@ -146,6 +147,8 @@ export function sanitizeAppLanguageSetting(appLanguage: string): AppLanguage {
         return AppLanguage.zh_TW
       case 'it':
         return AppLanguage.it
+      case 'tr':
+        return AppLanguage.tr
       default:
         continue
     }
diff --git a/src/locale/i18n.ts b/src/locale/i18n.ts
index afa1c8246..c5fb4a555 100644
--- a/src/locale/i18n.ts
+++ b/src/locale/i18n.ts
@@ -1,25 +1,25 @@
 import {useEffect} from 'react'
 import {i18n} from '@lingui/core'
 
-import {useLanguagePrefs} from '#/state/preferences'
-import {messages as messagesEn} from '#/locale/locales/en/messages'
+import {sanitizeAppLanguageSetting} from '#/locale/helpers'
+import {AppLanguage} from '#/locale/languages'
+import {messages as messagesCa} from '#/locale/locales/ca/messages'
 import {messages as messagesDe} from '#/locale/locales/de/messages'
-import {messages as messagesId} from '#/locale/locales/id/messages'
+import {messages as messagesEn} from '#/locale/locales/en/messages'
 import {messages as messagesEs} from '#/locale/locales/es/messages'
 import {messages as messagesFi} from '#/locale/locales/fi/messages'
 import {messages as messagesFr} from '#/locale/locales/fr/messages'
 import {messages as messagesHi} from '#/locale/locales/hi/messages'
+import {messages as messagesId} from '#/locale/locales/id/messages'
+import {messages as messagesIt} from '#/locale/locales/it/messages'
 import {messages as messagesJa} from '#/locale/locales/ja/messages'
 import {messages as messagesKo} from '#/locale/locales/ko/messages'
 import {messages as messagesPt_BR} from '#/locale/locales/pt-BR/messages'
+import {messages as messagesTr} from '#/locale/locales/tr/messages'
 import {messages as messagesUk} from '#/locale/locales/uk/messages'
-import {messages as messagesCa} from '#/locale/locales/ca/messages'
 import {messages as messagesZh_CN} from '#/locale/locales/zh-CN/messages'
 import {messages as messagesZh_TW} from '#/locale/locales/zh-TW/messages'
-import {messages as messagesIt} from '#/locale/locales/it/messages'
-
-import {sanitizeAppLanguageSetting} from '#/locale/helpers'
-import {AppLanguage} from '#/locale/languages'
+import {useLanguagePrefs} from '#/state/preferences'
 
 /**
  * We do a dynamic import of just the catalog that we need
@@ -80,6 +80,11 @@ export async function dynamicActivate(locale: AppLanguage) {
     }
     case AppLanguage.zh_TW: {
       i18n.loadAndActivate({locale, messages: messagesZh_TW})
+      break
+    }
+    case AppLanguage.tr: {
+      i18n.loadAndActivate({locale, messages: messagesTr})
+      break
     }
     default: {
       i18n.loadAndActivate({locale, messages: messagesEn})
diff --git a/src/locale/i18n.web.ts b/src/locale/i18n.web.ts
index a84022c62..a44c659fc 100644
--- a/src/locale/i18n.web.ts
+++ b/src/locale/i18n.web.ts
@@ -1,9 +1,9 @@
 import {useEffect} from 'react'
 import {i18n} from '@lingui/core'
 
-import {useLanguagePrefs} from '#/state/preferences'
 import {sanitizeAppLanguageSetting} from '#/locale/helpers'
 import {AppLanguage} from '#/locale/languages'
+import {useLanguagePrefs} from '#/state/preferences'
 
 /**
  * We do a dynamic import of just the catalog that we need
@@ -68,6 +68,10 @@ export async function dynamicActivate(locale: AppLanguage) {
       mod = await import(`./locales/it/messages`)
       break
     }
+    case AppLanguage.tr: {
+      mod = await import(`./locales/tr/messages`)
+      break
+    }
     default: {
       mod = await import(`./locales/en/messages`)
       break
diff --git a/src/locale/languages.ts b/src/locale/languages.ts
index 3e94f48ae..58c3b4013 100644
--- a/src/locale/languages.ts
+++ b/src/locale/languages.ts
@@ -20,6 +20,7 @@ export enum AppLanguage {
   zh_CN = 'zh-CN',
   zh_TW = 'zh-TW',
   it = 'it',
+  tr = 'tr',
 }
 
 interface AppLanguageConfig {
@@ -43,6 +44,7 @@ export const APP_LANGUAGES: AppLanguageConfig[] = [
   {code2: AppLanguage.zh_CN, name: '简体中文(中国) – Chinese (Simplified)'},
   {code2: AppLanguage.zh_TW, name: '繁體中文(臺灣) – Chinese (Traditional)'},
   {code2: AppLanguage.it, name: 'Italiano - Italian'},
+  {code2: AppLanguage.tr, name: 'Türkçe - Turkish'},
 ]
 
 export const LANGUAGES: Language[] = [