Kord/src/i18n/locales/en.ts

161 lines
6.9 KiB
TypeScript

import { TranslationSchema } from '../types';
/**
* English translations — the DEFAULT and FALLBACK locale.
* All keys MUST be present here. Other locales can omit keys to fallback to English.
*/
export const en: TranslationSchema = {
// ── Error Messages ──────────────────────────────────────
errors: {
E1001: {
userMessage: 'The user limit value is invalid.',
resolution: 'Please enter a number between 0 and 99. (0 = unlimited)',
},
E1002: {
userMessage: 'The channel name format is invalid.',
resolution: 'Please enter a valid channel name (max 100 characters).',
},
E1003: {
userMessage: 'You cannot perform this action on yourself.',
},
E1004: {
userMessage: 'The selected user is not in the voice channel.',
resolution: 'Make sure the user is currently in the channel before performing this action.',
},
E2001: {
userMessage: 'The bot does not have sufficient permissions to manage channels.',
resolution: 'Please ask a server administrator to grant the bot "Manage Channels" permission.',
},
E2002: {
userMessage: 'The bot does not have sufficient voice channel permissions.',
resolution: 'Please ask a server administrator to grant the bot "Manage Channels", "Manage Roles", and "Move Members" permissions.',
},
E2003: {
userMessage: 'You do not have permission to use this command.',
resolution: 'This command requires Administrator permission.',
},
E2004: {
userMessage: 'Only the channel owner can use these controls.',
},
E2005: {
userMessage: 'You must be in your active temporary voice channel to use this.',
resolution: 'Join your temporary voice channel and try again.',
},
E3001: {
userMessage: 'An internal error occurred while processing your request.',
resolution: 'Please try again in a moment. If the issue persists, contact the bot administrator.',
},
E3002: {
userMessage: 'An internal error occurred while processing your request.',
resolution: 'Please try again in a moment.',
},
E3003: {
userMessage: 'An error occurred while executing this command.',
resolution: 'Please try again. If the problem persists, contact the bot administrator.',
},
E3999: {
userMessage: 'An unexpected error occurred.',
resolution: 'Please try again later. If the problem continues, contact the bot administrator.',
},
E4001: {
userMessage: 'The action was rate-limited by Discord.',
resolution: 'Please wait a moment and try again.',
},
E4002: {
userMessage: 'Discord denied the action due to insufficient permissions.',
resolution: 'Please ask a server administrator to check the bot\'s role and channel permissions.',
},
E4003: {
userMessage: 'A temporary issue occurred with Discord.',
resolution: 'Please try again shortly. Check Discord\'s status at https://discordstatus.com if the issue persists.',
},
},
// ── Error Category Titles ───────────────────────────────
errorTitles: {
USER_INPUT: 'Please check your input',
PERMISSION: 'Insufficient permissions',
BOT_INTERNAL: 'Something went wrong',
DISCORD_API: 'Temporary issue',
},
// ── Error Embed Field Labels ────────────────────────────
errorFields: {
resolution: '💡 How to resolve',
},
// ── Voice Channel ───────────────────────────────────────
voice: {
channelReady: '{{owner}}, your temporary channel is ready! Use the dropdown menu below to manage it.',
defaultRoomName: "{{username}}'s Room",
controlPanel: {
placeholder: '⚙️ Manage Channel Settings',
rename: 'Rename Channel',
limit: 'Set User Limit',
lock: 'Lock / Unlock',
kick: 'Kick User',
ban: 'Ban / Hide User',
transfer: 'Transfer Ownership',
},
responses: {
channelLocked: 'Channel Locked! Only you and invited members can join.',
channelUnlocked: 'Channel Unlocked! Anyone can join now.',
channelRenamed: 'Channel renamed to **{{name}}**!',
limitSet: 'Channel limit set to **{{limit}}**!',
limitUnlimited: 'Unlimited',
kicked: 'Kicked {{user}} from the channel.',
banned: 'Banned and hidden channel from {{user}}.',
transferPrompt: 'Select who will become the new owner of this channel.',
transferDone: 'Ownership successfully transferred to {{user}}.',
banPrompt: 'Banning will make the channel invisible to them.',
},
},
// ── Commands ────────────────────────────────────────────
commands: {
voiceSetup: {
description: 'Setup a generator voice channel for temporary channels.',
setDescription: 'Set an existing voice channel as a Generator',
createDescription: 'Create a new voice channel and set it as a Generator',
channelOptionDescription: 'The voice channel to act as the Generator',
categoryOptionDescription: '(Optional) The category where temp channels will be created',
nameOptionDescription: 'The name of the new generator voice channel',
setSuccess: 'Successfully set up {{channel}} as a Voice Generator Channel!',
createSuccess: 'Successfully created and set up {{channel}} as a Voice Generator Channel!',
},
language: {
description: 'Set the language for the bot.',
scopeDescription: 'Apply to yourself or the entire server',
localeDescription: 'Language to use',
scopeUser: 'Just for me',
scopeServer: 'Entire server (Admin only)',
userSet: 'Your personal language has been set to **{{locale}}**.',
serverSet: 'Server language has been set to **{{locale}}**.',
serverPermissionDenied: 'Only server administrators can change the server language.',
},
},
// ── Modals ──────────────────────────────────────────────
modals: {
renameTitle: 'Rename Voice Channel',
renameLabel: 'New Channel Name',
limitTitle: 'Set User Limit',
limitLabel: 'User Limit (0 for unlimited, 1-99)',
},
// ── Select Menu Placeholders ────────────────────────────
selects: {
kickUser: 'Select a user to kick',
banUser: 'Select a user to ban/hide',
transferOwner: 'Select a user to transfer ownership to',
},
// ── Presence (Bot Status) ──
presence: {
servers: 'Monitoring {{guildCount}} servers',
help: 'Check out the /help command',
managing: 'Managing Temp Voice Channels',
version: 'Kord v1.0.0',
},
};