302 lines
15 KiB
TypeScript
302 lines
15 KiB
TypeScript
|
|
import demoJa from "./demo-ja"
|
|||
|
|
import { Translations } from "./en"
|
|||
|
|
|
|||
|
|
const ja: Translations = {
|
|||
|
|
common: {
|
|||
|
|
ok: "OK",
|
|||
|
|
cancel: "キャンセル",
|
|||
|
|
save: "保存",
|
|||
|
|
back: "戻る",
|
|||
|
|
logOut: "ログアウト",
|
|||
|
|
copied: "コピーしました",
|
|||
|
|
},
|
|||
|
|
welcomeScreen: {
|
|||
|
|
postscript:
|
|||
|
|
"注目! — このアプリはお好みの見た目では無いかもしれません(デザイナーがこのスクリーンを送ってこない限りは。もしそうなら公開しちゃいましょう!)",
|
|||
|
|
readyForLaunch: "このアプリはもう少しで公開できます!",
|
|||
|
|
exciting: "(楽しみですね!)",
|
|||
|
|
letsGo: "レッツゴー!",
|
|||
|
|
},
|
|||
|
|
errorScreen: {
|
|||
|
|
title: "問題が発生しました",
|
|||
|
|
friendlySubtitle:
|
|||
|
|
"本番では、エラーが投げられた時にこのページが表示されます。もし使うならこのメッセージに変更を加えてください(`app/i18n/jp.ts`)レイアウトはこちらで変更できます(`app/screens/ErrorScreen`)。もしこのスクリーンを取り除きたい場合は、`app/app.tsx`にある<ErrorBoundary>コンポーネントをチェックしてください",
|
|||
|
|
reset: "リセット",
|
|||
|
|
traceTitle: "エラーのスタック: %{name}",
|
|||
|
|
},
|
|||
|
|
emptyStateComponent: {
|
|||
|
|
generic: {
|
|||
|
|
heading: "静かだ...悲しい。",
|
|||
|
|
content:
|
|||
|
|
"データが見つかりません。ボタンを押してアプリをリロード、またはリフレッシュしてください。",
|
|||
|
|
button: "もう一度やってみよう",
|
|||
|
|
},
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
errors: {
|
|||
|
|
invalidEmail: "有効なメールアドレスを入力してください.",
|
|||
|
|
},
|
|||
|
|
authErrors: {
|
|||
|
|
timeout: "リクエストがタイムアウトしました。再度お試しください。",
|
|||
|
|
cannotConnect: "サーバーに接続できません。ネットワークを確認してください。",
|
|||
|
|
serverError: "サーバーエラーが発生しました。後ほど再度お試しください。",
|
|||
|
|
badData: "サーバーからの応答が無効です。",
|
|||
|
|
unknownError: "不明なエラーが発生しました。",
|
|||
|
|
E001: "このユーザー名は既に使用されています。",
|
|||
|
|
E002: "このメールアドレスは既に登録されています。",
|
|||
|
|
E003: "無効な紹介コードです。",
|
|||
|
|
E004: "保留中の登録リクエストがありません。",
|
|||
|
|
E005: "認証コードが正しくありません。",
|
|||
|
|
E006: "紹介コードは既に登録されています。",
|
|||
|
|
E007: "自分の紹介コードは使用できません。",
|
|||
|
|
E011: "メールアドレスまたはパスワードが正しくありません。",
|
|||
|
|
E012: "アカウントが一時的にロックされています。後ほど再度お試しください。",
|
|||
|
|
E013: "保留中のログインリクエストがありません。",
|
|||
|
|
E014: "ユーザーが存在しないか、無効になっています。",
|
|||
|
|
E015: "認証コードが正しくありません。",
|
|||
|
|
E016: "Telegram認証が無効です。",
|
|||
|
|
E017: "Telegramデータの形式が正しくありません。",
|
|||
|
|
E018: "Google認証に失敗しました。",
|
|||
|
|
E019: "Googleトークンを入力してください。",
|
|||
|
|
E021: "現在のパスワードが正しくありません。",
|
|||
|
|
E022: "新しいパスワードは現在のパスワードと同じにできません。",
|
|||
|
|
E023: "このメールアドレスは登録されていません。",
|
|||
|
|
E024: "アカウントが無効になっています。",
|
|||
|
|
E025: "保留中のパスワードリセットリクエストがありません。",
|
|||
|
|
E026: "パスワードリセットコードの有効期限が切れています。",
|
|||
|
|
E027: "パスワードリセットコードが正しくありません。",
|
|||
|
|
E028: "ユーザーが存在しません。",
|
|||
|
|
E029: "更新するフィールドが提供されていません。",
|
|||
|
|
E041: "認証コードの送信が頻繁すぎます。しばらくお待ちください。",
|
|||
|
|
E042: "メール認証コードの有効期限が切れています。",
|
|||
|
|
E043: "メール認証コードが正しくありません。",
|
|||
|
|
E044: "このメールアドレスは既に認証されています。",
|
|||
|
|
E045: "このメールアドレスは他のユーザーが使用しています。",
|
|||
|
|
E046: "認証済みのメールアドレスがありません。",
|
|||
|
|
E047: "まず現在のメールアドレスに認証コードを送信してください。",
|
|||
|
|
E048: "まず現在のメールアドレスを認証してください。",
|
|||
|
|
E049: "まず新しいメールアドレスに認証コードを送信してください。",
|
|||
|
|
E050: "無効なactionパラメータです。",
|
|||
|
|
},
|
|||
|
|
loginScreen: {
|
|||
|
|
logIn: "ログイン",
|
|||
|
|
enterDetails:
|
|||
|
|
"ここにあなたの情報を入力してトップシークレットをアンロックしましょう。何が待ち構えているか予想もつかないはずです。はたまたそうでも無いかも - ロケットサイエンスほど複雑なものではありません。",
|
|||
|
|
emailFieldLabel: "メールアドレス",
|
|||
|
|
passwordFieldLabel: "パスワード",
|
|||
|
|
emailFieldPlaceholder: "メールアドレスを入力してください",
|
|||
|
|
passwordFieldPlaceholder: "パスワードを入力してください",
|
|||
|
|
tapToLogIn: "タップしてログインしよう!",
|
|||
|
|
hint: "ヒント: お好みのメールアドレスとパスワードを使ってください :)",
|
|||
|
|
},
|
|||
|
|
navigator: {
|
|||
|
|
componentsTab: "コンポーネント",
|
|||
|
|
debugTab: "デバッグ",
|
|||
|
|
communityTab: "コミュニティ",
|
|||
|
|
podcastListTab: "ポッドキャスト",
|
|||
|
|
profileTab: "プロフィール",
|
|||
|
|
},
|
|||
|
|
profileScreen: {
|
|||
|
|
title: "プロフィール",
|
|||
|
|
guest: "ゲスト",
|
|||
|
|
uid: "UID",
|
|||
|
|
username: "ユーザー名",
|
|||
|
|
referralCode: "紹介コード",
|
|||
|
|
settings: "設定",
|
|||
|
|
darkMode: "ダークモード",
|
|||
|
|
notifications: "通知",
|
|||
|
|
security: "セキュリティ",
|
|||
|
|
account: "アカウント",
|
|||
|
|
accountStatus: "アカウント状態",
|
|||
|
|
active: "アクティブ",
|
|||
|
|
inactive: "非アクティブ",
|
|||
|
|
regular: "一般",
|
|||
|
|
emailVerified: "メール認証",
|
|||
|
|
verified: "認証済み",
|
|||
|
|
unverified: "未認証",
|
|||
|
|
loginMethods: "ログイン方法",
|
|||
|
|
version: "バージョン",
|
|||
|
|
changePassword: "パスワード変更",
|
|||
|
|
changeEmail: "メールアドレス変更",
|
|||
|
|
editNickname: "ニックネーム編集",
|
|||
|
|
editProfile: "プロフィール編集",
|
|||
|
|
nicknamePlaceholder: "ニックネームを入力",
|
|||
|
|
nickname: "ニックネーム",
|
|||
|
|
tapToChangeAvatar: "タップしてアバターを変更",
|
|||
|
|
about: "このアプリについて",
|
|||
|
|
},
|
|||
|
|
changePasswordScreen: {
|
|||
|
|
title: "パスワード変更",
|
|||
|
|
description: "現在のパスワードを入力し、新しいパスワードを選択してください。",
|
|||
|
|
oldPassword: "現在のパスワード",
|
|||
|
|
newPassword: "新しいパスワード",
|
|||
|
|
confirmPassword: "新しいパスワードの確認",
|
|||
|
|
logoutOtherDevices: "他のデバイスからログアウト",
|
|||
|
|
submit: "パスワードを変更",
|
|||
|
|
success: "成功",
|
|||
|
|
successMessage: "パスワードが正常に変更されました。",
|
|||
|
|
oldPasswordRequired: "現在のパスワードは必須です。",
|
|||
|
|
newPasswordRequired: "新しいパスワードは必須です。",
|
|||
|
|
passwordTooShort: "パスワードは6文字以上である必要があります。",
|
|||
|
|
passwordMismatch: "パスワードが一致しません。",
|
|||
|
|
samePassword: "新しいパスワードは現在のパスワードと同じにできません。",
|
|||
|
|
},
|
|||
|
|
changeEmailScreen: {
|
|||
|
|
title: "メールアドレス変更",
|
|||
|
|
step1Label: "メール確認",
|
|||
|
|
step2Label: "新規紐付け",
|
|||
|
|
step1Title: "ステップ1:現在のメールを確認",
|
|||
|
|
step1Description: "現在のメールアドレスに確認コードを送信します。",
|
|||
|
|
step2Title: "ステップ2:新しいメールを紐付け",
|
|||
|
|
step2Description: "新しいメールアドレスを入力して確認してください。",
|
|||
|
|
currentEmail: "現在のメールアドレス",
|
|||
|
|
newEmail: "新しいメールアドレス",
|
|||
|
|
verificationCode: "確認コード",
|
|||
|
|
sendCode: "確認コードを送信",
|
|||
|
|
sendCodeToNewEmail: "新しいメールにコードを送信",
|
|||
|
|
verify: "確認",
|
|||
|
|
confirmNewEmail: "新しいメールを確認",
|
|||
|
|
resendCode: "コードを再送信",
|
|||
|
|
success: "成功",
|
|||
|
|
successMessage: "メールアドレスが正常に変更されました。",
|
|||
|
|
codeRequired: "確認コードは必須です。",
|
|||
|
|
codeInvalid: "確認コードは6桁である必要があります。",
|
|||
|
|
newEmailRequired: "新しいメールアドレスは必須です。",
|
|||
|
|
emailInvalid: "有効なメールアドレスを入力してください。",
|
|||
|
|
sameEmail: "新しいメールは現在のメールと同じにできません。",
|
|||
|
|
},
|
|||
|
|
settingsScreen: {
|
|||
|
|
title: "設定",
|
|||
|
|
appearance: "外観",
|
|||
|
|
theme: "テーマ",
|
|||
|
|
darkMode: "ダークモード",
|
|||
|
|
language: "言語",
|
|||
|
|
currentLanguage: "言語",
|
|||
|
|
},
|
|||
|
|
languageScreen: {
|
|||
|
|
title: "言語",
|
|||
|
|
selectHint: "ご希望の言語を選択してください",
|
|||
|
|
},
|
|||
|
|
themeScreen: {
|
|||
|
|
title: "テーマ",
|
|||
|
|
selectHint: "ご希望のテーマを選択してください",
|
|||
|
|
system: "システム",
|
|||
|
|
light: "ライト",
|
|||
|
|
dark: "ダーク",
|
|||
|
|
},
|
|||
|
|
securityScreen: {
|
|||
|
|
title: "セキュリティ",
|
|||
|
|
description: "アカウントのセキュリティ設定を管理します。",
|
|||
|
|
changePassword: "パスワード変更",
|
|||
|
|
changeEmail: "メール変更",
|
|||
|
|
// Session management
|
|||
|
|
activeSessions: "Active Sessions",
|
|||
|
|
activeSessionsDescription: "Devices currently logged into your account",
|
|||
|
|
currentDevice: "Current Device",
|
|||
|
|
lastActive: "Last active",
|
|||
|
|
loginMethod: "Login via",
|
|||
|
|
logoutDevice: "Logout",
|
|||
|
|
logoutAllOther: "Logout All Other Devices",
|
|||
|
|
logoutAllOtherDescription: "This will log out all devices except the current one.",
|
|||
|
|
noOtherSessions: "No other active sessions",
|
|||
|
|
sessionRevoked: "Device has been logged out",
|
|||
|
|
sessionsRevoked: "{{count}} devices have been logged out",
|
|||
|
|
confirmLogout: "Confirm Logout",
|
|||
|
|
confirmLogoutMessage: "Are you sure you want to log out this device?",
|
|||
|
|
confirmLogoutAllMessage: "Are you sure you want to log out all other devices?",
|
|||
|
|
deviceTypes: {
|
|||
|
|
desktop: "Desktop",
|
|||
|
|
mobile: "Mobile",
|
|||
|
|
tablet: "Tablet",
|
|||
|
|
unknown: "Unknown Device",
|
|||
|
|
},
|
|||
|
|
},
|
|||
|
|
aboutScreen: {
|
|||
|
|
title: "このアプリについて",
|
|||
|
|
appInfo: "アプリ情報",
|
|||
|
|
appName: "アプリ名",
|
|||
|
|
version: "バージョン",
|
|||
|
|
buildVersion: "ビルドバージョン",
|
|||
|
|
appId: "アプリID",
|
|||
|
|
appVersion: "アプリバージョン",
|
|||
|
|
legal: "法的情報",
|
|||
|
|
privacyPolicy: "プライバシーポリシー",
|
|||
|
|
termsOfService: "利用規約",
|
|||
|
|
},
|
|||
|
|
communityScreen: {
|
|||
|
|
title: "コミュニティと繋がろう",
|
|||
|
|
tagLine:
|
|||
|
|
"Infinite RedのReact Nativeエンジニアコミュニティに接続して、一緒にあなたのアプリ開発をレベルアップしましょう!",
|
|||
|
|
joinUsOnSlackTitle: "私たちのSlackに参加しましょう",
|
|||
|
|
joinUsOnSlack:
|
|||
|
|
"世界中のReact Nativeエンジニアと繋がりたいを思いませんか?Infinite RedのコミュニティSlackに参加しましょう!私達のコミュニティは安全に質問ができ、お互いから学び、あなたのネットワークを広げることができます。",
|
|||
|
|
joinSlackLink: "Slackコミュニティに参加する",
|
|||
|
|
makeIgniteEvenBetterTitle: "Igniteをより良くする",
|
|||
|
|
makeIgniteEvenBetter:
|
|||
|
|
"Igniteをより良くする為のアイデアはありますか? そうであれば聞きたいです! 私たちはいつでも最良のReact Nativeのツールを開発する為に助けを求めています。GitHubで私たちと一緒にIgniteの未来を作りましょう。",
|
|||
|
|
contributeToIgniteLink: "Igniteにコントリビュートする",
|
|||
|
|
theLatestInReactNativeTitle: "React Nativeの今",
|
|||
|
|
theLatestInReactNative: "React Nativeの現在をあなたにお届けします。",
|
|||
|
|
reactNativeRadioLink: "React Native Radio",
|
|||
|
|
reactNativeNewsletterLink: "React Native Newsletter",
|
|||
|
|
reactNativeLiveLink: "React Native Live",
|
|||
|
|
chainReactConferenceLink: "Chain React Conference",
|
|||
|
|
hireUsTitle: "あなたの次のプロジェクトでInfinite Redと契約する",
|
|||
|
|
hireUs:
|
|||
|
|
"それがプロジェクト全体でも、チームにトレーニングをしてあげたい時でも、Infinite RedはReact Nativeのことであればなんでもお手伝いができます。",
|
|||
|
|
hireUsLink: "メッセージを送る",
|
|||
|
|
},
|
|||
|
|
showroomScreen: {
|
|||
|
|
jumpStart: "あなたのプロジェクトをスタートさせるコンポーネントです!",
|
|||
|
|
lorem2Sentences:
|
|||
|
|
"Nulla cupidatat deserunt amet quis aliquip nostrud do adipisicing. Adipisicing excepteur elit laborum Lorem adipisicing do duis.",
|
|||
|
|
demoHeaderTxExample: "Yay",
|
|||
|
|
demoViaTxProp: "`tx`から",
|
|||
|
|
demoViaSpecifiedTxProp: "`{{prop}}Tx`から",
|
|||
|
|
},
|
|||
|
|
demoDebugScreen: {
|
|||
|
|
howTo: "ハウツー",
|
|||
|
|
title: "デバッグ",
|
|||
|
|
tagLine:
|
|||
|
|
"おめでとうございます、あなたはとてもハイレベルなReact Nativeのテンプレートを使ってます。このボイラープレートを活用してください!",
|
|||
|
|
reactotron: "Reactotronに送る",
|
|||
|
|
reportBugs: "バグをレポートする",
|
|||
|
|
demoList: "デモリスト",
|
|||
|
|
demoPodcastList: "デモのポッドキャストリスト",
|
|||
|
|
androidReactotronHint:
|
|||
|
|
"もし動かなければ、Reactotronのデスクトップアプリが実行されていることを確認して, このコマンドをターミナルで実行した後、アプリをアプリをリロードしてください。 adb reverse tcp:9090 tcp:9090",
|
|||
|
|
iosReactotronHint:
|
|||
|
|
"もし動かなければ、Reactotronのデスクトップアプリが実行されていることを確認して、アプリをリロードしてください。",
|
|||
|
|
macosReactotronHint:
|
|||
|
|
"もし動かなければ、Reactotronのデスクトップアプリが実行されていることを確認して、アプリをリロードしてください。",
|
|||
|
|
webReactotronHint:
|
|||
|
|
"もし動かなければ、Reactotronのデスクトップアプリが実行されていることを確認して、アプリをリロードしてください。",
|
|||
|
|
windowsReactotronHint:
|
|||
|
|
"もし動かなければ、Reactotronのデスクトップアプリが実行されていることを確認して、アプリをリロードしてください。",
|
|||
|
|
},
|
|||
|
|
demoPodcastListScreen: {
|
|||
|
|
title: "React Native Radioのエピソード",
|
|||
|
|
onlyFavorites: "お気に入り表示",
|
|||
|
|
favoriteButton: "お気に入り",
|
|||
|
|
unfavoriteButton: "お気に入りを外す",
|
|||
|
|
accessibility: {
|
|||
|
|
cardHint: "ダブルタップで再生します。 ダブルタップと長押しで {{action}}",
|
|||
|
|
switch: "スイッチオンでお気に入りを表示する",
|
|||
|
|
favoriteAction: "お気に入りの切り替え",
|
|||
|
|
favoriteIcon: "お気に入りのエピソードではありません",
|
|||
|
|
unfavoriteIcon: "お気に入りのエピソードです",
|
|||
|
|
publishLabel: "公開日 {{date}}",
|
|||
|
|
durationLabel: "再生時間: {{hours}} 時間 {{minutes}} 分 {{seconds}} 秒",
|
|||
|
|
},
|
|||
|
|
noFavoritesEmptyState: {
|
|||
|
|
heading: "どうやら空っぽのようですね",
|
|||
|
|
content:
|
|||
|
|
"お気に入りのエピソードがまだありません。エピソードにあるハートマークにタップして、お気に入りに追加しましょう!",
|
|||
|
|
},
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
...demoJa,
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
export default ja
|