From 3d812446c6178b775fc02a6715bb09f593d3718c Mon Sep 17 00:00:00 2001 From: DIYgod Date: Tue, 24 Feb 2026 18:01:33 +0800 Subject: [PATCH] feat(mobile): add French locale support (#4876) --- apps/mobile/app.config.ts | 2 +- apps/mobile/ios/Folo/Info.plist | 1 + apps/mobile/src/@types/constants.ts | 3 ++- apps/mobile/src/@types/default-resource.ts | 12 ++++++++++++ 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/apps/mobile/app.config.ts b/apps/mobile/app.config.ts index 8413bbe26..3b02f97a6 100644 --- a/apps/mobile/app.config.ts +++ b/apps/mobile/app.config.ts @@ -57,7 +57,7 @@ export default ({ config }: ConfigContext): ExpoConfig => { LSApplicationQueriesSchemes: ["bilibili", "youtube"], CFBundleAllowMixedLocalizations: true, // apps/mobile/src/@types/constants.ts currentSupportedLanguages - CFBundleLocalizations: ["en", "ja", "zh-CN", "zh-TW"], + CFBundleLocalizations: ["en", "ja", "zh-CN", "zh-TW", "fr-FR"], CFBundleDevelopmentRegion: "en", }, googleServicesFile: "./build/GoogleService-Info.plist", diff --git a/apps/mobile/ios/Folo/Info.plist b/apps/mobile/ios/Folo/Info.plist index 402f88e04..f1d5335f6 100644 --- a/apps/mobile/ios/Folo/Info.plist +++ b/apps/mobile/ios/Folo/Info.plist @@ -26,6 +26,7 @@ ja zh-CN zh-TW + fr-FR CFBundleName $(PRODUCT_NAME) diff --git a/apps/mobile/src/@types/constants.ts b/apps/mobile/src/@types/constants.ts index 6ab13e658..eb091b9af 100644 --- a/apps/mobile/src/@types/constants.ts +++ b/apps/mobile/src/@types/constants.ts @@ -1,4 +1,4 @@ -const langs = ["en", "ja", "zh-CN", "zh-TW"] as const +const langs = ["en", "ja", "zh-CN", "zh-TW", "fr-FR"] as const export const currentSupportedLanguages = langs as readonly string[] export type MobileSupportedLanguages = (typeof langs)[number] @@ -10,4 +10,5 @@ export const dayjsLocaleImportMap = { ["zh-CN"]: ["zh-cn", () => import("dayjs/locale/zh-cn")], ["ja"]: ["ja", () => import("dayjs/locale/ja")], ["zh-TW"]: ["zh-tw", () => import("dayjs/locale/zh-tw")], + ["fr-FR"]: ["fr", () => import("dayjs/locale/fr")], } as const diff --git a/apps/mobile/src/@types/default-resource.ts b/apps/mobile/src/@types/default-resource.ts index 2f69b4930..d42c0d04d 100644 --- a/apps/mobile/src/@types/default-resource.ts +++ b/apps/mobile/src/@types/default-resource.ts @@ -1,20 +1,25 @@ import common_en from "@locales/common/en.json" +import common_frFR from "@locales/common/fr-FR.json" import common_ja from "@locales/common/ja.json" import common_zhCN from "@locales/common/zh-CN.json" import common_zhTW from "@locales/common/zh-TW.json" import errors_en from "@locales/errors/en.json" +import errors_frFR from "@locales/errors/fr-FR.json" import errors_ja from "@locales/errors/ja.json" import errors_zhCN from "@locales/errors/zh-CN.json" import errors_zhTW from "@locales/errors/zh-TW.json" import lang_en from "@locales/lang/en.json" +import lang_frFR from "@locales/lang/fr-FR.json" import lang_ja from "@locales/lang/ja.json" import lang_zhCN from "@locales/lang/zh-CN.json" import lang_zhTW from "@locales/lang/zh-TW.json" import en from "@locales/mobile/default/en.json" +import frFR from "@locales/mobile/default/fr-FR.json" import ja from "@locales/mobile/default/ja.json" import zhCN from "@locales/mobile/default/zh-CN.json" import zhTW from "@locales/mobile/default/zh-TW.json" import settings_en from "@locales/settings/en.json" +import settings_frFR from "@locales/settings/fr-FR.json" import settings_ja from "@locales/settings/ja.json" import settings_zhCN from "@locales/settings/zh-CN.json" import settings_zhTW from "@locales/settings/zh-TW.json" @@ -23,6 +28,13 @@ import type { MobileSupportedLanguages, ns } from "./constants" // @keep-sorted export const defaultResources = { + "fr-FR": { + common: common_frFR, + default: frFR, + errors: errors_frFR, + lang: lang_frFR, + settings: settings_frFR, + }, // @keep-sorted "zh-CN": { common: common_zhCN,