68 lines
3.5 KiB
TypeScript
68 lines
3.5 KiB
TypeScript
// English fallback. Mirror the RU key set; `Record<StringKey, string>` enforces
|
|
// that every RU key has an EN counterpart at compile time.
|
|
|
|
import type { StringKey } from './ru';
|
|
|
|
export const EN: Record<StringKey, string> = {
|
|
'status.unknown': 'Checking status…',
|
|
'status.disconnected': 'Sign in to Telegram',
|
|
'status.connected': 'Telegram linked',
|
|
'status.connected-as': 'Telegram linked as {handle}',
|
|
'status.logging-out': 'Signing out…',
|
|
'card.login.name': '/login',
|
|
'card.login.desc': 'By phone number',
|
|
'card.refresh.aria': 'Refresh status',
|
|
'card.refresh.label': 'Refresh status',
|
|
'landing.hint': 'The bot replies in this chat — forms appear below.',
|
|
'auth-card.phone.title': 'Phone login',
|
|
'auth-card.phone.label': 'Phone number',
|
|
'auth-card.phone.placeholder': '+15551234567',
|
|
'auth-card.phone.hint': 'SMS may take up to 30 seconds.',
|
|
'auth-card.phone.submit': 'Send code',
|
|
'auth-card.phone.cooldown': 'Retry in {seconds}s',
|
|
'auth-card.code.title': 'Verification code',
|
|
'auth-card.code.label': 'SMS code',
|
|
'auth-card.code.placeholder': '123456',
|
|
'auth-card.code.submit': 'Confirm',
|
|
'auth-card.code.privacy-hint':
|
|
'The Telegram code is visible in the room history — you can clear it manually.',
|
|
'auth-card.code.privacy-hint-history':
|
|
'The code you entered is still in the room history — clear it manually if you want.',
|
|
'auth-card.password.title': 'Telegram cloud password',
|
|
'auth-card.password.hint':
|
|
'Your account has two-factor authentication enabled. Enter your Telegram cloud password — this is not your Vojo password.',
|
|
'auth-card.password.label': 'Password',
|
|
'auth-card.password.submit': 'Confirm',
|
|
'auth-card.password.show': 'Show',
|
|
'auth-card.password.hide': 'Hide',
|
|
'auth-card.cancel': 'Cancel',
|
|
'auth-card.waiting-hint': 'The bot is still thinking… replies may take up to 30 seconds.',
|
|
'auth-card.code.countdown': 'Code arriving in {seconds}s',
|
|
'auth-card.code.countdown-done': 'No code yet — tap Cancel and try again.',
|
|
'auth-error.invalid-code': 'Code is invalid. Please try again.',
|
|
'auth-error.wrong-password': 'Password is incorrect. Please try again.',
|
|
'auth-error.invalid-value': 'Value not accepted: {reason}',
|
|
'auth-error.submit-failed': 'Telegram refused the input: {reason}',
|
|
'auth-error.login-in-progress':
|
|
'The bot already has another login flow open. Click Cancel and retry.',
|
|
'auth-error.max-logins': 'Login limit reached ({limit}). Log out of an existing account first.',
|
|
'auth-error.unknown-command':
|
|
'The bot does not recognise this command — check the prefix in config.json.',
|
|
'auth-error.start-failed': 'Failed to start login: {reason}',
|
|
'auth-error.prepare-failed': 'Failed to prepare login: {reason}',
|
|
'card.logout.name': '/logout',
|
|
'card.logout.desc': 'Sign out of Telegram',
|
|
'card.logout.confirm-prompt': 'Sign out for real?',
|
|
'card.logout.confirm-yes': 'Sign out',
|
|
'card.logout.confirm-no': 'Cancel',
|
|
'card.logout.gated': 'Session identifier still loading — give it a moment.',
|
|
'diag.connecting': 'Connecting to Vojo… awaiting capability handshake.',
|
|
'diag.ready': 'Ready to send commands.',
|
|
'diag.checking-status': 'Checking connection status…',
|
|
'diag.send-failed': 'send failed: {message}',
|
|
'diag.history-marker': '─── history ───',
|
|
'diag.history-unavailable': 'Could not read history — re-checking status.',
|
|
'bootstrap.failed': 'Widget failed to start',
|
|
'bootstrap.missing-params': 'Missing required URL params: {names}.',
|
|
'bootstrap.embedded-only': 'This page is meant to be embedded by Vojo at {route}.',
|
|
};
|