chore(app-expo): regenerate i18n Resources types
Sync generated resources.ts with locale keys (e.g. profile.personalInfo.tapAwayToClose for avatar sheet a11y). Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,252 +1,250 @@
|
|||||||
// This file is automatically generated by i18next-cli. Do not edit manually.
|
// This file is automatically generated by i18next-cli. Do not edit manually.
|
||||||
interface Resources {
|
interface Resources {
|
||||||
"app": {
|
app: {
|
||||||
"languages": {
|
languages: {
|
||||||
"en": "English",
|
en: 'English';
|
||||||
"system": "System",
|
system: 'System';
|
||||||
"zh": "Chinese"
|
zh: 'Chinese';
|
||||||
},
|
};
|
||||||
"name": "Life Echo",
|
name: 'Life Echo';
|
||||||
"tabs": {
|
tabs: {
|
||||||
"conversations": "Chats",
|
conversations: 'Chats';
|
||||||
"explore": "Explore",
|
explore: 'Explore';
|
||||||
"home": "Home",
|
home: 'Home';
|
||||||
"memoir": "Memoir",
|
memoir: 'Memoir';
|
||||||
"profile": "Profile"
|
profile: 'Profile';
|
||||||
},
|
};
|
||||||
"theme": {
|
theme: {
|
||||||
"default": "Default"
|
default: 'Default';
|
||||||
}
|
};
|
||||||
},
|
};
|
||||||
"auth": {
|
auth: {
|
||||||
"login": {
|
login: {
|
||||||
"codeLabel": "Verification Code",
|
codeLabel: 'Verification Code';
|
||||||
"getCode": "Get Code",
|
getCode: 'Get Code';
|
||||||
"getCodeCountdown": "Retry in {{seconds}}s",
|
getCodeCountdown: 'Retry in {{seconds}}s';
|
||||||
"networkError": "Network error. Please try again later.",
|
networkError: 'Network error. Please try again later.';
|
||||||
"phoneLabel": "Phone Number",
|
phoneLabel: 'Phone Number';
|
||||||
"phonePlaceholder": "Enter your phone number",
|
phonePlaceholder: 'Enter your phone number';
|
||||||
"privacyPolicy": "Privacy Policy",
|
privacyPolicy: 'Privacy Policy';
|
||||||
"submit": "Login",
|
submit: 'Login';
|
||||||
"termsAnd": "and",
|
termsAnd: 'and';
|
||||||
"termsIntro": "I agree to the",
|
termsIntro: 'I agree to the';
|
||||||
"termsRequired": "Please agree to the User Agreement and Privacy Policy first",
|
termsRequired: 'Please agree to the User Agreement and Privacy Policy first';
|
||||||
"termsRequiredConfirm": "OK",
|
termsRequiredConfirm: 'OK';
|
||||||
"termsRequiredTitle": "Agreement Required",
|
termsRequiredTitle: 'Agreement Required';
|
||||||
"userAgreement": "User Agreement",
|
userAgreement: 'User Agreement';
|
||||||
"welcomeSubtitle": "Some lives grow richer the more you savor them.",
|
welcomeSubtitle: 'Some lives grow richer the more you savor them.';
|
||||||
"welcomeTitle": "Welcome back"
|
welcomeTitle: 'Welcome back';
|
||||||
}
|
};
|
||||||
},
|
};
|
||||||
"common": {
|
common: {
|
||||||
"chapterLabel": "",
|
chapterLabel: '';
|
||||||
"chapterReading": {
|
chapterReading: {
|
||||||
"backgroundColor": "",
|
backgroundColor: '';
|
||||||
"bgPureWhite": "",
|
bgPureWhite: '';
|
||||||
"bgSepia": "",
|
bgSepia: '';
|
||||||
"close": "",
|
close: '';
|
||||||
"fontSize": "",
|
fontSize: '';
|
||||||
"readingSettings": "",
|
readingSettings: '';
|
||||||
"typography": ""
|
typography: '';
|
||||||
},
|
};
|
||||||
"continueWriting": "",
|
continueWriting: '';
|
||||||
"docs": "Docs",
|
docs: 'Docs';
|
||||||
"emptySubtitle": "",
|
emptySubtitle: '';
|
||||||
"emptyTitle": "",
|
emptyTitle: '';
|
||||||
"readMemory": "",
|
readMemory: '';
|
||||||
"startChapter": "",
|
startChapter: '';
|
||||||
"statusDrafting": "",
|
statusDrafting: '';
|
||||||
"statusLocked": "",
|
statusLocked: '';
|
||||||
"statusPending": "",
|
statusPending: '';
|
||||||
"wordsCount": ""
|
wordsCount: '';
|
||||||
},
|
};
|
||||||
"conversation": {
|
conversation: {
|
||||||
"addMore": "More",
|
addMore: 'More';
|
||||||
"agentName": "Life Echo",
|
agentName: 'Life Echo';
|
||||||
"assistantReplying": "Replying…",
|
assistantReplying: 'Replying…';
|
||||||
"cancel": "Cancel",
|
cancel: 'Cancel';
|
||||||
"cancelRecording": "Cancel recording",
|
cancelRecording: 'Cancel recording';
|
||||||
"cannotReadAloud": "Read unavailable",
|
cannotReadAloud: 'Read unavailable';
|
||||||
"chatQueueSendTimeout": "Connection timed out. Check your network and try again.",
|
chatQueueSendTimeout: 'Connection timed out. Check your network and try again.';
|
||||||
"chatTitle": "Conversation",
|
chatTitle: 'Conversation';
|
||||||
"chatUnavailableConnecting": "Reconnecting now. You can keep typing and send once the connection is back.",
|
chatUnavailableConnecting: 'Reconnecting now. You can keep typing and send once the connection is back.';
|
||||||
"chatUnavailableDisconnected": "Connection lost. You can keep typing and send after reconnecting.",
|
chatUnavailableDisconnected: 'Connection lost. You can keep typing and send after reconnecting.';
|
||||||
"chatUnavailableTitle": "Chat unavailable",
|
chatUnavailableTitle: 'Chat unavailable';
|
||||||
"confirm": "OK",
|
confirm: 'OK';
|
||||||
"confirmDeleteConversation": "Are you sure you want to delete this conversation? It cannot be recovered.",
|
confirmDeleteConversation: 'Are you sure you want to delete this conversation? It cannot be recovered.';
|
||||||
"connectionConnected": "Connected",
|
connectionConnected: 'Connected';
|
||||||
"connectionConnecting": "Connecting...",
|
connectionConnecting: 'Connecting...';
|
||||||
"connectionDisconnected": "Disconnected",
|
connectionDisconnected: 'Disconnected';
|
||||||
"createError": "Unable to create conversation. Please check your network and try again.",
|
createError: 'Unable to create conversation. Please check your network and try again.';
|
||||||
"delete": "Delete",
|
delete: 'Delete';
|
||||||
"deleteConversation": "Delete Conversation",
|
deleteConversation: 'Delete Conversation';
|
||||||
"emptyGreetingSubtitle": "Chat with your companion and record your stories.",
|
emptyGreetingSubtitle: 'Chat with your companion and record your stories.';
|
||||||
"greetingTitle": "Say Hello",
|
greetingTitle: 'Say Hello';
|
||||||
"inputPlaceholder": "Type a message...",
|
inputPlaceholder: 'Type a message...';
|
||||||
"inputPlaceholderVoice": "Type here or hold the mic to speak...",
|
inputPlaceholderVoice: 'Type here or hold the mic to speak...';
|
||||||
"me": "Me",
|
me: 'Me';
|
||||||
"readAloudAgain": "Play again",
|
readAloudAgain: 'Play again';
|
||||||
"readAloudNoMessageId": "This message is not ready for on-demand reading yet. Pull to refresh or try again.",
|
readAloudPause: 'Pause reading';
|
||||||
"readAloudPause": "Pause reading",
|
readAloudResume: 'Resume reading';
|
||||||
"readAloudRequest": "Read aloud",
|
readAloudRequest: 'Read aloud';
|
||||||
"readAloudRequestFailed": "Could not start playback. Check your connection.",
|
readAloudRequestFailed: 'Could not start playback. Check your connection.';
|
||||||
"readAloudResume": "Resume reading",
|
readAloudNoMessageId: 'This message is not ready for on-demand reading yet. Pull to refresh or try again.';
|
||||||
"readingAloud": "Reading aloud…",
|
readingAloud: 'Reading aloud…';
|
||||||
"recentChats": "Recent Chats",
|
recentChats: 'Recent Chats';
|
||||||
"recordingPermissionDenied": "Microphone permission is required to record",
|
recordingPermissionDenied: 'Microphone permission is required to record';
|
||||||
"recordingStartFailed": "Unable to start recording. Please try again.",
|
recordingStartFailed: 'Unable to start recording. Please try again.';
|
||||||
"resumeChatSubtitle": "Open your latest conversation to keep talking.",
|
resumeChatSubtitle: 'Open your latest conversation to keep talking.';
|
||||||
"resumeChatTitle": "Continue chatting",
|
resumeChatTitle: 'Continue chatting';
|
||||||
"send": "Send",
|
send: 'Send';
|
||||||
"startNewSubtitle": "Capture a new memory or share your thoughts with your companion.",
|
startNewSubtitle: 'Capture a new memory or share your thoughts with your companion.';
|
||||||
"stopReadingAloud": "Stop reading aloud",
|
stopReadingAloud: 'Stop reading aloud';
|
||||||
"switchToText": "Switch to text input",
|
switchToText: 'Switch to text input';
|
||||||
"switchToVoice": "Switch to voice input",
|
switchToVoice: 'Switch to voice input';
|
||||||
"tapToEndRecording": "Tap to end",
|
tapToEndRecording: 'Tap to end';
|
||||||
"tapToStartRecording": "Tap to start recording",
|
tapToStartRecording: 'Tap to start recording';
|
||||||
"timeDaysAgo_one": "{{count}} day ago",
|
ttsThisTurn: 'Speak';
|
||||||
"timeDaysAgo_other": "{{count}} days ago",
|
ttsThisTurnAccessibility: 'When on, assistant replies synthesize speech before text appears.';
|
||||||
"timeHoursAgo_one": "{{count}} hour ago",
|
topicSuggestionsDismiss: 'Hide';
|
||||||
"timeHoursAgo_other": "{{count}} hours ago",
|
timeDaysAgo_one: '{{count}} day ago';
|
||||||
"timeJustNow": "Just now",
|
timeDaysAgo_other: '{{count}} days ago';
|
||||||
"timeMinutesAgo_one": "{{count}} minute ago",
|
timeHoursAgo_one: '{{count}} hour ago';
|
||||||
"timeMinutesAgo_other": "{{count}} minutes ago",
|
timeHoursAgo_other: '{{count}} hours ago';
|
||||||
"topicSuggestionsDismiss": "Hide",
|
timeJustNow: 'Just now';
|
||||||
"ttsThisTurn": "Speak",
|
timeMinutesAgo_one: '{{count}} minute ago';
|
||||||
"ttsThisTurnAccessibility": "When on, assistant replies synthesize speech before text appears.",
|
timeMinutesAgo_other: '{{count}} minutes ago';
|
||||||
"viewAll": "View All",
|
viewAll: 'View All';
|
||||||
"voiceMessagePreview": "Voice message"
|
voiceMessagePreview: 'Voice message';
|
||||||
},
|
};
|
||||||
"explore": {
|
explore: {};
|
||||||
|
home: {};
|
||||||
},
|
legal: {
|
||||||
"home": {
|
titlePrivacy: 'Privacy Policy';
|
||||||
|
titleTerms: 'User Agreement';
|
||||||
},
|
};
|
||||||
"legal": {
|
memoir: {
|
||||||
"titlePrivacy": "Privacy Policy",
|
chapterLabel: 'Chapter {{index}}';
|
||||||
"titleTerms": "User Agreement"
|
chapterReading: {
|
||||||
},
|
back: 'Back';
|
||||||
"memoir": {
|
backgroundColor: 'Background';
|
||||||
"chapterLabel": "Chapter {{index}}",
|
bgPureWhite: 'White';
|
||||||
"chapterReading": {
|
bgSepia: 'Sepia';
|
||||||
"back": "Back",
|
cancel: 'Cancel';
|
||||||
"backgroundColor": "Background",
|
chapterNotFound: 'Chapter not found';
|
||||||
"bgPureWhite": "White",
|
close: 'Close';
|
||||||
"bgSepia": "Sepia",
|
confirmDeleteMessage: 'Are you sure you want to delete this chapter? You will no longer be able to view it, but the content will be kept for future reference.';
|
||||||
"cancel": "Cancel",
|
deleteChapter: 'Delete Chapter';
|
||||||
"chapterNotFound": "Chapter not found",
|
deleteChapterAction: 'Delete';
|
||||||
"close": "Close",
|
fontSans: 'Sans';
|
||||||
"confirmDeleteMessage": "Are you sure you want to delete this chapter? You will no longer be able to view it, but the content will be kept for future reference.",
|
fontSerif: 'Serif';
|
||||||
"deleteChapter": "Delete Chapter",
|
fontSize: 'Font Size';
|
||||||
"deleteChapterAction": "Delete",
|
fontSizeDefault: 'Medium';
|
||||||
"fontSans": "Sans",
|
fontSizeLarge: 'Large';
|
||||||
"fontSerif": "Serif",
|
fontSizeSmall: 'Small';
|
||||||
"fontSize": "Font Size",
|
readingSettings: 'Reading Settings';
|
||||||
"fontSizeDefault": "Medium",
|
settings: 'Settings';
|
||||||
"fontSizeLarge": "Large",
|
typography: 'Typography';
|
||||||
"fontSizeSmall": "Small",
|
};
|
||||||
"readingSettings": "Reading Settings",
|
continueWriting: 'Continue Writing';
|
||||||
"settings": "Settings",
|
emptySubtitle: 'Chat with your companion to record your stories';
|
||||||
"typography": "Typography"
|
emptyTitle: 'No memoir yet';
|
||||||
},
|
frameworkChapters: {
|
||||||
"emptySubtitle": "Chat with your companion to record your stories",
|
chapter1: 'Childhood and upbringing';
|
||||||
"emptyTitle": "No memoir yet",
|
chapter2: 'Education and young adulthood';
|
||||||
"frameworkChapters": {
|
chapter3: 'Early career';
|
||||||
"chapter1": "Childhood and upbringing",
|
chapter4: 'Major achievements and peak moments';
|
||||||
"chapter2": "Education and young adulthood",
|
chapter5: 'Setbacks, challenges, and turning points';
|
||||||
"chapter3": "Early career",
|
chapter6: 'Family and relationships';
|
||||||
"chapter4": "Major achievements and peak moments",
|
chapter7: 'Beliefs and values';
|
||||||
"chapter5": "Setbacks, challenges, and turning points",
|
chapter8: 'Life summary';
|
||||||
"chapter6": "Family and relationships",
|
};
|
||||||
"chapter7": "Beliefs and values",
|
loadErrorMessage: 'Could not load chapters';
|
||||||
"chapter8": "Life summary"
|
loadErrorRetry: 'Retry';
|
||||||
},
|
pageTitle: 'Memoir';
|
||||||
"loadErrorMessage": "Could not load chapters",
|
readMemory: 'Read Memory';
|
||||||
"loadErrorRetry": "Retry",
|
startChapter: 'Start Writing';
|
||||||
"pageTitle": "Memoir",
|
statusDrafting: 'Drafting';
|
||||||
"readMemory": "Read Memory",
|
statusLocked: 'Locked';
|
||||||
"statusDrafting": "Drafting",
|
statusPending: 'Pending';
|
||||||
"statusLocked": "Locked",
|
wordsCount: '{{count}} words';
|
||||||
"statusPending": "Pending",
|
};
|
||||||
"wordsCount": "{{count}} words"
|
profile: {
|
||||||
},
|
about: {
|
||||||
"profile": {
|
aboutUs: 'About Us';
|
||||||
"about": {
|
title: 'About';
|
||||||
"aboutUs": "About Us",
|
};
|
||||||
"title": "About"
|
appExperience: {
|
||||||
},
|
language: 'Language';
|
||||||
"appExperience": {
|
languageDesc: 'Display language';
|
||||||
"language": "Language",
|
largeText: 'Large Text';
|
||||||
"languageDesc": "Display language",
|
largeTextDesc: 'Make reading easier';
|
||||||
"largeText": "Large Text",
|
nightMode: 'Night Mode';
|
||||||
"largeTextDesc": "Make reading easier",
|
nightModeDesc: 'Use dark theme';
|
||||||
"nightMode": "Night Mode",
|
theme: 'Theme';
|
||||||
"nightModeDesc": "Use dark theme",
|
themeDesc: 'Color theme';
|
||||||
"theme": "Theme",
|
title: 'App Experience';
|
||||||
"themeDesc": "Color theme",
|
};
|
||||||
"title": "App Experience"
|
dataPrivacy: {
|
||||||
},
|
deleteAll: 'Delete All Data';
|
||||||
"dataPrivacy": {
|
deleteUnderDevelopment: 'Delete data feature is under development.';
|
||||||
"deleteAll": "Delete All Data",
|
exportAll: 'Export All Data';
|
||||||
"deleteUnderDevelopment": "Delete data feature is under development.",
|
exportUnderDevelopment: 'Export feature is under development.';
|
||||||
"exportAll": "Export All Data",
|
purgeDialogCancel: 'Cancel';
|
||||||
"exportUnderDevelopment": "Export feature is under development.",
|
purgeDialogConfirm: 'Delete permanently';
|
||||||
"purgeDialogCancel": "Cancel",
|
purgeDialogDescription: 'This cannot be undone. Your data will be removed immediately.';
|
||||||
"purgeDialogConfirm": "Delete permanently",
|
purgeDialogTitle: 'Final confirmation';
|
||||||
"purgeDialogDescription": "This cannot be undone. Your data will be removed immediately.",
|
purgeInputLabel: 'Confirmation phrase';
|
||||||
"purgeDialogTitle": "Final confirmation",
|
purgeInputPlaceholder: 'Type the phrase shown above';
|
||||||
"purgeInputLabel": "Confirmation phrase",
|
purgeOpenConfirm: 'I understand, continue';
|
||||||
"purgeInputPlaceholder": "Type the phrase shown above",
|
purgePhraseHint: 'Type the following Chinese sentence exactly (every character and punctuation). The server only accepts this exact phrase:';
|
||||||
"purgeOpenConfirm": "I understand, continue",
|
purgeSubmitting: 'Deleting…';
|
||||||
"purgePhraseHint": "Type the following Chinese sentence exactly (every character and punctuation). The server only accepts this exact phrase:",
|
purgeWarningBody: 'This permanently deletes your conversations, memory, stories, chapters, orders, and related files in cloud storage. Profile fields such as birth year, birthplace, where you grew up, and occupation will also be cleared. All devices will be signed out.\nYou can still log in with the same phone number, but your previous content cannot be restored.';
|
||||||
"purgeSubmitting": "Deleting…",
|
purgeWarningTitle: 'Before you continue';
|
||||||
"purgeWarningBody": "This permanently deletes your conversations, memory, stories, chapters, orders, and related files in cloud storage. Profile fields such as birth year, birthplace, where you grew up, and occupation will also be cleared. All devices will be signed out.\nYou can still log in with the same phone number, but your previous content cannot be restored.",
|
title: 'Data & Privacy';
|
||||||
"purgeWarningTitle": "Before you continue",
|
};
|
||||||
"title": "Data & Privacy"
|
editAvatar: 'Edit Profile Picture';
|
||||||
},
|
helpSupport: {
|
||||||
"editAvatar": "Edit Profile Picture",
|
faq: 'FAQ';
|
||||||
"helpSupport": {
|
feedback: 'Feedback & Support';
|
||||||
"faq": "FAQ",
|
feedbackPageTitle: 'Share your thoughts';
|
||||||
"feedback": "Feedback & Support",
|
title: 'Help & Support';
|
||||||
"feedbackPageTitle": "Share your thoughts",
|
};
|
||||||
"title": "Help & Support"
|
personalInfo: {
|
||||||
},
|
avatarPresetFailed: 'Could not set preset avatar';
|
||||||
"personalInfo": {
|
avatarUploadFailed: 'Could not upload avatar';
|
||||||
"avatarPresetFailed": "Could not set preset avatar",
|
birthPlacePlaceholder: 'Birthplace';
|
||||||
"avatarUploadFailed": "Could not upload avatar",
|
birthYearPlaceholder: 'Birth year';
|
||||||
"birthPlacePlaceholder": "Birthplace",
|
cancel: 'Cancel';
|
||||||
"birthYearPlaceholder": "Birth year",
|
changeAvatar: 'Change photo';
|
||||||
"cancel": "Cancel",
|
chooseFromLibrary: 'Choose from library';
|
||||||
"changeAvatar": "Change photo",
|
choosePreset: 'Preset avatars';
|
||||||
"chooseFromLibrary": "Choose from library",
|
grewUpPlaceholder: 'Where you grew up';
|
||||||
"choosePreset": "Preset avatars",
|
libraryPermissionDenied: 'Photo library access is required to pick an image';
|
||||||
"grewUpPlaceholder": "Where you grew up",
|
nickname: 'Nickname';
|
||||||
"libraryPermissionDenied": "Photo library access is required to pick an image",
|
nicknamePlaceholder: 'Enter nickname';
|
||||||
"nickname": "Nickname",
|
nicknameRequired: 'Please enter a nickname';
|
||||||
"nicknamePlaceholder": "Enter nickname",
|
occupationPlaceholder: 'Occupation';
|
||||||
"nicknameRequired": "Please enter a nickname",
|
presetPickTitle: 'Choose a preset';
|
||||||
"occupationPlaceholder": "Occupation",
|
save: 'Save';
|
||||||
"presetPickTitle": "Choose a preset",
|
saveFailed: 'Could not save';
|
||||||
"save": "Save",
|
savePartialBody: 'Your nickname was saved, but profile fields below could not be saved. Check your connection and tap Save again.';
|
||||||
"saveFailed": "Could not save",
|
savePartialTitle: 'Partially saved';
|
||||||
"savePartialBody": "Your nickname was saved, but profile fields below could not be saved. Check your connection and tap Save again.",
|
saving: 'Saving…';
|
||||||
"savePartialTitle": "Partially saved",
|
tapAwayToClose: 'Tap outside to close';
|
||||||
"saving": "Saving…",
|
title: 'Personal info';
|
||||||
"tapAwayToClose": "Tap outside to close",
|
};
|
||||||
"title": "Personal info"
|
signOut: 'Sign Out';
|
||||||
},
|
signingOut: 'Signing out...';
|
||||||
"signOut": "Sign Out",
|
tier: {
|
||||||
"signingOut": "Signing out...",
|
free: 'Free';
|
||||||
"tier": {
|
pro: 'Pro';
|
||||||
"free": "Free",
|
pro_plus: 'Pro+';
|
||||||
"pro": "Pro",
|
test: 'Test';
|
||||||
"pro_plus": "Pro+",
|
};
|
||||||
"test": "Test"
|
userNamePlaceholder: 'User';
|
||||||
},
|
userTier: '{{tier}}';
|
||||||
"userNamePlaceholder": "User",
|
};
|
||||||
"userTier": "{{tier}}"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export default Resources;
|
export default Resources;
|
||||||
|
|||||||
Reference in New Issue
Block a user