feat: full Chinese (zh-Hans) localization — i18n all hardcoded strings, zh-CN download page
Some checks failed
Daily Product Intelligence / report (push) Has been cancelled
Play Store Review Triage / triage (push) Has been cancelled
Sentry noise-gate report / report (push) Has been cancelled

This commit is contained in:
xieyao
2026-09-09 04:05:43 +08:00
parent 646f9cbf77
commit f0185cbd23
10 changed files with 77 additions and 33 deletions

View File

@@ -331,7 +331,7 @@ export default function AddConnectionScreen() {
<View style={styles.ipRow}>
<TextInput
style={[styles.input, styles.ipInput, isDark && styles.inputDark]}
placeholder="192.168.1.100"
placeholder={t("connection.add.quick.ipPlaceholder")}
placeholderTextColor={isDark ? "#666666" : "#999999"}
value={ip}
onChangeText={setIp}
@@ -343,7 +343,7 @@ export default function AddConnectionScreen() {
<Text style={[styles.ipColon, isDark && styles.textDark]}>:</Text>
<TextInput
style={[styles.input, styles.portInput, isDark && styles.inputDark]}
placeholder="4096"
placeholder={t("connection.add.quick.portPlaceholder")}
placeholderTextColor={isDark ? "#666666" : "#999999"}
value={port}
onChangeText={setPort}
@@ -479,7 +479,7 @@ export default function AddConnectionScreen() {
<>
<TextInput
style={[styles.input, isDark && styles.inputDark, { marginTop: 12 }]}
placeholder="your@email.com"
placeholder={t("connection.add.quick.emailPlaceholder")}
placeholderTextColor={isDark ? "#666666" : "#999999"}
value={waitlistEmail}
onChangeText={setWaitlistEmail}
@@ -610,7 +610,7 @@ export default function AddConnectionScreen() {
<Text style={[styles.label, isDark && styles.labelDark]}>{t("connection.shared.directoryOptional")}</Text>
<TextInput
style={[styles.input, isDark && styles.inputDark]}
placeholder="/path/to/project"
placeholder={t("connection.add.quick.directoryPlaceholder")}
placeholderTextColor={isDark ? "#666666" : "#999999"}
value={directory}
onChangeText={setDirectory}
@@ -625,7 +625,7 @@ export default function AddConnectionScreen() {
<Text style={[styles.label, isDark && styles.labelDark]}>{t("connection.shared.username")}</Text>
<TextInput
style={[styles.input, isDark && styles.inputDark]}
placeholder="admin"
placeholder={t("connection.add.quick.usernamePlaceholder")}
placeholderTextColor={isDark ? "#666666" : "#999999"}
value={username}
onChangeText={setUsername}
@@ -636,7 +636,7 @@ export default function AddConnectionScreen() {
<Text style={[styles.label, isDark && styles.labelDark]}>{t("connection.shared.password")}</Text>
<TextInput
style={[styles.input, isDark && styles.inputDark]}
placeholder="password"
placeholder={t("connection.add.quick.passwordPlaceholder")}
placeholderTextColor={isDark ? "#666666" : "#999999"}
value={password}
onChangeText={setPassword}