feat(frontend): right panel lives in browser history and back closes it first, message panels close on chat switch, hotkeys for search, chats, in-chat search and closing
This commit is contained in:
1 parent
7f7fc1296e
commit
848d2aca1a
19 files changed
+813
-46
No files matched your search
@@ -0,0 +1,24 @@
|
||||
import type { Messages } from "#lib/i18n/types.js";
|
||||
|
||||
export const capture = {
|
||||
"capture.botNever": {
|
||||
en: "The bot has not connected yet",
|
||||
ru: "Бот ещё не выходил на связь",
|
||||
},
|
||||
"capture.botQuiet": {
|
||||
en: "The bot is silent since {when}",
|
||||
ru: "Бот молчит с {when}",
|
||||
},
|
||||
"capture.live": {
|
||||
en: "Capturing since {when}",
|
||||
ru: "Захват идёт с {when}",
|
||||
},
|
||||
"capture.never": {
|
||||
en: "The userbot has not connected yet",
|
||||
ru: "Юзербот ещё не выходил на связь",
|
||||
},
|
||||
"capture.quiet": {
|
||||
en: "The userbot is silent since {when}",
|
||||
ru: "Юзербот молчит с {when}",
|
||||
},
|
||||
} satisfies Messages;
|
||||
@@ -0,0 +1,116 @@
|
||||
import type { Messages } from "#lib/i18n/types.js";
|
||||
|
||||
export const chat = {
|
||||
"chat.analytics": { en: "Analytics", ru: "Аналитика" },
|
||||
"chat.back": { en: "Back to chats", ru: "Назад к чатам" },
|
||||
"chat.backfill": {
|
||||
en: "Fetch new messages",
|
||||
ru: "Догрузить новые сообщения",
|
||||
},
|
||||
"chat.backfillDone": {
|
||||
en: "New messages are on the way",
|
||||
ru: "Новые сообщения уже догружаются",
|
||||
},
|
||||
"chat.backfillFailed": {
|
||||
en: "Could not start fetching",
|
||||
ru: "Не удалось запустить догрузку",
|
||||
},
|
||||
"chat.calendar": { en: "Jump to date", ru: "Перейти к дате" },
|
||||
"chat.calendar.count": {
|
||||
en: { one: "{count} message", other: "{count} messages" },
|
||||
ru: {
|
||||
few: "{count} сообщения",
|
||||
many: "{count} сообщений",
|
||||
one: "{count} сообщение",
|
||||
other: "{count} сообщения",
|
||||
},
|
||||
},
|
||||
"chat.calendar.nextMonth": { en: "Next month", ru: "Следующий месяц" },
|
||||
"chat.calendar.nextYear": { en: "Next year", ru: "Следующий год" },
|
||||
"chat.calendar.prevMonth": { en: "Previous month", ru: "Предыдущий месяц" },
|
||||
"chat.calendar.prevYear": { en: "Previous year", ru: "Предыдущий год" },
|
||||
"chat.channel": { en: "channel", ru: "канал" },
|
||||
"chat.deletedAccount": { en: "Deleted account", ru: "Удалённый аккаунт" },
|
||||
"chat.deletedAt": { en: "deleted {when}", ru: "удалено {when}" },
|
||||
"chat.deletedPreview": { en: "Deleted", ru: "Удалено" },
|
||||
"chat.edited": { en: "edited", ru: "изменено" },
|
||||
"chat.editedAt": { en: "Edited {when}", ru: "Изменено {when}" },
|
||||
"chat.gap": { en: "archive was off {range}", ru: "архив не писал {range}" },
|
||||
"chat.group": { en: "group", ru: "группа" },
|
||||
"chat.latest": { en: "To the latest messages", ru: "К последним сообщениям" },
|
||||
"chat.links": {
|
||||
en: { one: "{count} link", other: "{count} links" },
|
||||
ru: {
|
||||
few: "{count} ссылки",
|
||||
many: "{count} ссылок",
|
||||
one: "{count} ссылка",
|
||||
other: "{count} ссылки",
|
||||
},
|
||||
},
|
||||
"chat.loadFailed": {
|
||||
en: "Could not load messages",
|
||||
ru: "Не удалось загрузить сообщения",
|
||||
},
|
||||
"chat.media": { en: "Media", ru: "Медиа" },
|
||||
"chat.media.download": { en: "Download {kind}", ru: "Скачать: {kind}" },
|
||||
"chat.media.downloadFailed": {
|
||||
en: "Could not download the file",
|
||||
ru: "Не удалось скачать файл",
|
||||
},
|
||||
"chat.media.file": { en: "File", ru: "Файл" },
|
||||
"chat.media.fullscreen": {
|
||||
en: "Open full screen",
|
||||
ru: "Открыть на весь экран",
|
||||
},
|
||||
"chat.media.photo": { en: "Photo", ru: "Фото" },
|
||||
"chat.media.queue": { en: "Download to archive", ru: "Скачать в архив" },
|
||||
"chat.media.queued": { en: "Queued", ru: "В очереди" },
|
||||
"chat.media.queueFailed": {
|
||||
en: "Could not queue the download",
|
||||
ru: "Не удалось поставить в очередь",
|
||||
},
|
||||
"chat.media.save": { en: "Download file", ru: "Скачать файл" },
|
||||
"chat.media.selfDestruct": {
|
||||
en: "Self-destructing media",
|
||||
ru: "Самоуничтожающееся медиа",
|
||||
},
|
||||
"chat.media.share": { en: "Share by link", ru: "Доступ по ссылке" },
|
||||
"chat.media.tapToDownload": {
|
||||
en: "Tap to download",
|
||||
ru: "Нажмите, чтобы скачать",
|
||||
},
|
||||
"chat.media.versions": { en: "Media versions", ru: "Версии медиа" },
|
||||
"chat.media.video": { en: "Video", ru: "Видео" },
|
||||
"chat.menu.author": { en: "Author's profile", ru: "Профиль автора" },
|
||||
"chat.menu.callbacks": { en: "Callback data", ru: "Callback-данные" },
|
||||
"chat.menu.copied": { en: "Copied", ru: "Скопировано" },
|
||||
"chat.menu.copyId": { en: "Copy ID", ru: "Копировать ID" },
|
||||
"chat.menu.copyLink": { en: "Copy link", ru: "Копировать ссылку" },
|
||||
"chat.menu.copyText": { en: "Copy text", ru: "Копировать текст" },
|
||||
"chat.menu.linkCopied": { en: "Link copied", ru: "Ссылка скопирована" },
|
||||
"chat.menu.links": { en: "Links", ru: "Ссылки" },
|
||||
"chat.menu.notes": { en: "Notes", ru: "Заметки" },
|
||||
"chat.menu.open": { en: "Open", ru: "Открыть" },
|
||||
"chat.menu.policy": { en: "Capture policy", ru: "Политика захвата" },
|
||||
"chat.menu.profile": { en: "Profile", ru: "Профиль" },
|
||||
"chat.menu.reactions": { en: "Reactions", ru: "Реакции" },
|
||||
"chat.menu.reply": { en: "Go to reply", ru: "Перейти к ответу" },
|
||||
"chat.menu.search": { en: "Search in chat", ru: "Поиск в чате" },
|
||||
"chat.menu.stories": { en: "Stories", ru: "Сторис" },
|
||||
"chat.menu.versions": { en: "Versions", ru: "Версии" },
|
||||
"chat.messages": {
|
||||
en: { one: "{count} message", other: "{count} messages" },
|
||||
ru: {
|
||||
few: "{count} сообщения",
|
||||
many: "{count} сообщений",
|
||||
one: "{count} сообщение",
|
||||
other: "{count} сообщения",
|
||||
},
|
||||
},
|
||||
"chat.noText": { en: "No text", ru: "Без текста" },
|
||||
"chat.note": { en: "Note", ru: "Заметка" },
|
||||
"chat.openProfile": { en: "Open profile", ru: "Открыть профиль" },
|
||||
"chat.title": { en: "Chat {id}", ru: "Чат {id}" },
|
||||
"chat.you": { en: "You", ru: "Вы" },
|
||||
"chat.youPrefix": { en: "You: ", ru: "Вы: " },
|
||||
} satisfies Messages;
|
||||
@@ -2,10 +2,33 @@ import type { Messages } from "#lib/i18n/types.js";
|
||||
|
||||
export const notes = {
|
||||
"notes.add": { en: "Add note", ru: "Добавить заметку" },
|
||||
"notes.all": { en: "All", ru: "Все" },
|
||||
"notes.edit": { en: "Edit", ru: "Изменить" },
|
||||
"notes.placeholder": {
|
||||
en: "Note on the message…",
|
||||
ru: "Заметка к сообщению…",
|
||||
"notes.empty": {
|
||||
en: "Right-click a message and pick Notes to write one",
|
||||
ru: "Нажмите на сообщение правой кнопкой и выберите «Заметки»",
|
||||
},
|
||||
"notes.emptyTag": {
|
||||
en: "No notes with #{tag}",
|
||||
ru: "Нет заметок с #{tag}",
|
||||
},
|
||||
"notes.emptyTitle": { en: "No notes yet", ru: "Заметок пока нет" },
|
||||
"notes.failed": {
|
||||
en: "Could not load notes",
|
||||
ru: "Не удалось загрузить заметки",
|
||||
},
|
||||
"notes.mediaMessage": { en: "Media", ru: "Медиа" },
|
||||
"notes.messageGone": {
|
||||
en: "Message is not in the archive",
|
||||
ru: "Сообщения нет в архиве",
|
||||
},
|
||||
"notes.more": { en: "Show more", ru: "Показать ещё" },
|
||||
"notes.noMessage": {
|
||||
en: "No message selected",
|
||||
ru: "Сообщение не выбрано",
|
||||
},
|
||||
"notes.placeholder": { en: "Note to the message", ru: "Заметка к сообщению" },
|
||||
"notes.retry": { en: "Retry", ru: "Повторить" },
|
||||
"notes.tag": { en: "Notes with #{tag}", ru: "Заметки с #{tag}" },
|
||||
"notes.title": { en: "Notes", ru: "Заметки" },
|
||||
} satisfies Messages;
|
||||
@@ -0,0 +1,14 @@
|
||||
import type { Messages } from "#lib/i18n/types.js";
|
||||
|
||||
export const panels = {
|
||||
"panels.callbacks": { en: "Callback data", ru: "Callback-данные" },
|
||||
"panels.links": { en: "Links", ru: "Ссылки" },
|
||||
"panels.presence": { en: "Analytics", ru: "Аналитика" },
|
||||
"panels.profile": { en: "Profile", ru: "Профиль" },
|
||||
"panels.reactions": { en: "Reactions", ru: "Реакции" },
|
||||
"panels.search": { en: "Search", ru: "Поиск" },
|
||||
"panels.storageChat": { en: "Chat files", ru: "Файлы чата" },
|
||||
"panels.stories": { en: "Stories", ru: "Сторис" },
|
||||
"panels.storiesAll": { en: "All stories", ru: "Все сторис" },
|
||||
"panels.trash": { en: "Trash", ru: "Корзина" },
|
||||
} satisfies Messages;
|
||||
Reference in new issue
Block a user