// Localised "About" / landing copy, shared by the About screen and the public landing // page. Kept out of the flat i18n catalog because it is structured (a heading, // a rules link, two bulleted sections) and only used in these two long-form places. import type { Locale } from './i18n/index.svelte'; export interface AboutContent { /** Prominent heading: "Scrabble" / "Эрудит (Скрэббл)". */ title: string; rulesUrl: string; /** Text before the rules link. */ rulesPrefix: string; /** The rules link label. */ rulesLink: string; randomTitle: string; /** The "respect the opponent's time" note (rendered with a ❗️ prefix). */ randomRespect: string; random: string[]; friendsTitle: string; friends: string[]; } /** * aboutContent returns the localised About/landing copy. hours is the auto-match move clock * (backend game.DefaultTurnTimeout), inlined into the random-game time-limit bullet. */ export function aboutContent(locale: Locale, hours: number): AboutContent { if (locale === 'ru') { return { title: 'Эрудит (Скрэббл)', rulesUrl: 'https://ru.wikipedia.org/wiki/Скрэббл', rulesPrefix: 'Основные ', rulesLink: 'правила игры', randomTitle: 'Случайная игра', randomRespect: 'Уважайте личное время соперника, будьте терпеливы.', random: [ 'В игре двое соперников.', 'Каждому доступна 1 подсказка в новой партии.', `Лимит времени на ход: ${hours} ч. 00 минут.`, 'Время отсутствия задаётся в профиле и продлевает лимит.', ], friendsTitle: 'Игра с друзьями', friends: ['До 4-х участников.', 'Количество подсказок регулируется.', 'Произвольный лимит времени.'], }; } return { title: 'Scrabble', rulesUrl: 'https://en.wikipedia.org/wiki/Scrabble', rulesPrefix: 'Basic ', rulesLink: 'game rules', randomTitle: 'Random game', randomRespect: "Respect your opponent's time, be patient.", random: [ 'Two opponents per game.', 'Each player gets 1 hint per new game.', `Move time limit: ${hours} h 00 min.`, 'An away window set in your profile extends the limit.', ], friendsTitle: 'Game with friends', friends: ['Up to 4 players.', 'The number of hints is configurable.', 'A custom time limit.'], }; }