Skip to content

Commit 2ba7d69

Browse files
committed
chore(mobile): better internationalization support
1 parent 7bef905 commit 2ba7d69

2 files changed

Lines changed: 11 additions & 11 deletions

File tree

apps/mobile/src/modules/onboarding/preset.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { FeedViewType } from "@follow/constants"
2-
import { getLocales } from "expo-localization"
32

43
import feeds from "./feeds.json"
54
import englishFeeds from "./feeds-english.json"
@@ -23,9 +22,5 @@ export const otherPresetFeeds: PresetFeedConfig[] = feeds
2322
...feed,
2423
}))
2524

26-
const locales = getLocales()
27-
// `getLocales` guaranteed to contain at least 1 element.
28-
const languageTag = locales[0]?.languageTag || "en-US"
29-
const isEnglishUser = languageTag.startsWith("en")
30-
31-
export const presetFeeds = isEnglishUser ? englishPresetFeeds : otherPresetFeeds
25+
export const getPresetFeeds = (isEnglishUser: boolean) =>
26+
isEnglishUser ? englishPresetFeeds : otherPresetFeeds

apps/mobile/src/modules/onboarding/step-interests.tsx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,22 @@ import { subscriptionSyncService } from "@/src/store/subscription/store"
1111
import { accentColor } from "@/src/theme/colors"
1212

1313
import type { PresetFeedConfig } from "./preset"
14-
import { presetFeeds } from "./preset"
14+
import { getPresetFeeds } from "./preset"
1515
import { OnboardingSectionScreenContainer } from "./shared"
1616

1717
export const StepInterests = () => {
18-
const { t } = useTranslation()
19-
const [displayFeeds, setDisplayFeeds] = useState<PresetFeedConfig[]>(presetFeeds.slice(0, 7))
18+
const { t, i18n } = useTranslation()
19+
const isEnglishUser = i18n.language === "en"
20+
const [displayFeeds, setDisplayFeeds] = useState<PresetFeedConfig[]>(
21+
getPresetFeeds(isEnglishUser).slice(0, 7),
22+
)
2023

2124
const shuffleFeeds = useCallback(() => {
25+
const presetFeeds = getPresetFeeds(isEnglishUser)
2226
const shuffled = [...presetFeeds].sort(() => Math.random() - 0.5).slice(0, 7)
2327
setDisplayFeeds(shuffled)
24-
}, [])
28+
}, [isEnglishUser])
29+
2530
return (
2631
<OnboardingSectionScreenContainer>
2732
<View className="mb-10 flex items-center gap-4">

0 commit comments

Comments
 (0)