diff --git a/site/docs/uk/guide/filter-queries.md b/site/docs/uk/guide/filter-queries.md index b90cf6f27..37a92e77a 100644 --- a/site/docs/uk/guide/filter-queries.md +++ b/site/docs/uk/guide/filter-queries.md @@ -347,7 +347,7 @@ bot.on(":text", handler); Перевірка запитів фільтрування відбувається лише один раз, коли бот ініціалізується та викликається `bot.on()`. Під час запуску grammY створює предикатну функцію із запиту фільтрування, розділяючи його на частини. -Кожна частина буде зіставлена з функцією, яка виконує одну перевірку істинності для властивості об'єкта або дві перевірки, якщо частина запиту пропущена і потрібно перевірити два значення. +Кожна частина буде зіставлена з функцією, яка виконує одну перевірку істинності для властивості обʼєкта або дві перевірки, якщо частина запиту пропущена і потрібно перевірити два значення. Потім ці функції обʼєднуються у предикат, який перевіряє лише ті значення, що мають відношення до запиту, без перебору ключів обʼєкта `Update`. Ця система використовує менше операцій, ніж деякі конкуруючі бібліотеки, яким потрібно виконувати перевірку вмісту у масивах для маршрутизації оновлень. @@ -355,7 +355,7 @@ bot.on(":text", handler); ### Безпека типів -Як згадувалося вище, запити фільтрування автоматично звужують певні властивості об'єкта контексту. +Як згадувалося вище, запити фільтрування автоматично звужують певні властивості обʼєкта контексту. Предикат, отриманий з одного або декількох запитів фільтрування, є предикатом типу TypeScript, який виконує це звуження. Загалом, ви можете довіряти тому, що виведення типів працює коректно. Якщо властивість виводиться як присутня, ви можете безпечно покладатися на неї. diff --git a/site/docs/uk/guide/reactions.md b/site/docs/uk/guide/reactions.md index 65ea33cad..21d1b94ac 100644 --- a/site/docs/uk/guide/reactions.md +++ b/site/docs/uk/guide/reactions.md @@ -68,7 +68,7 @@ allowed_updates: API_CONSTANTS.ALL_UPDATE_TYPES; ``` для того, щоб отримувати всі оновлення. -Обов'язково перегляньте [довідку API](/ref/core/apiconstants#all-update-types). +Обовʼязково перегляньте [довідку API](/ref/core/apiconstants#all-update-types). ::: [Плагін для конкурентності (runner)](../plugins/runner#просунуті-параметри) і `setWebhook` мають схожі способи вказати `allowed_updates`. @@ -134,7 +134,7 @@ bot.on("message_reaction:old_reaction:custom_emoji", (ctx) => {/* ... */}); bot.on("message_reaction:new_reaction:paid", (ctx) => {/* ... */}); ``` -Хоча ці два масиви [об'єктів `ReactionType`](https://core.telegram.org/bots/api#reactiontype) технічно надають вам усю інформацію, необхідну для обробки оновлень реакцій, вони все одно можуть бути дещо громіздкими для роботи. +Хоча ці два масиви [обʼєктів `ReactionType`](https://core.telegram.org/bots/api#reactiontype) технічно надають вам усю інформацію, необхідну для обробки оновлень реакцій, вони все одно можуть бути дещо громіздкими для роботи. Ось чому grammY може обчислювати більше корисних речей з оновлення. ### Перевіряємо, як змінилися реакції @@ -196,7 +196,7 @@ const { У приватних чатах, групах і супергрупах відомо, хто реагує на те чи інше повідомлення. Однак для дописів на каналі ми маємо лише список анонімних реакцій. Отримати список користувачів, які відреагували на певний допис, неможливо. -Те ж саме стосується дописів у каналах, які автоматично пересилаються в чати пов'язаних дискусійних груп. +Те ж саме стосується дописів у каналах, які автоматично пересилаються в чати повʼязаних дискусійних груп. В обох випадках ваш бот отримає оновлення `message_reaction_count`. @@ -212,4 +212,4 @@ bot.on("message_reaction_count", async (ctx) => { }); ``` -Обов'язково перевірте [специфікацію](https://core.telegram.org/bots/api#messagereactioncountupdated) щодо оновлення кількості реакцій на повідомлення. +Обовʼязково перевірте [специфікацію](https://core.telegram.org/bots/api#messagereactioncountupdated) щодо оновлення кількості реакцій на повідомлення. diff --git a/site/docs/uk/hosting/vps.md b/site/docs/uk/hosting/vps.md index 93365dfe5..bc6e8ce3b 100644 --- a/site/docs/uk/hosting/vps.md +++ b/site/docs/uk/hosting/vps.md @@ -73,7 +73,7 @@ ssh root@ ::: tip Налаштування SSH Запамʼятовування IP-адреси та імені користувача для підключення до сервера може бути складним і виснажливим. -Щоб позбутися цих рутинних дій і покращити досвід роботи з сервером, ви можете налаштувати SSH, створивши на своєму комп'ютері файл `~/.ssh/config` (), який зберігає всі дані, необхідні для підключення до сервера, під певними довільними ідентифікаторами. +Щоб позбутися цих рутинних дій і покращити досвід роботи з сервером, ви можете налаштувати SSH, створивши на своєму компʼютері файл `~/.ssh/config` (), який зберігає всі дані, необхідні для підключення до сервера, під певними довільними ідентифікаторами. Це виходить за межі цієї статті, тому вам доведеться налаштувати його самостійно. ::: @@ -382,7 +382,7 @@ Deno.serve(async (req) => { Ми знову будемо пояснювати це на прикладі Hostinger, але є багато інших сервісів, і всі вони працюють аналогічно. Перейдіть на [сторінку пошуку доменного імені](https://www.hostinger.com/ua/kupyty-domen). -У полі для введення тексту введіть доменне ім'я у вигляді `<ім'я>.<зона>`. +У полі для введення тексту введіть доменне імʼя у вигляді `<імʼя>.<зона>`. Наприклад, `example.com`. Якщо потрібний домен вільний, натисніть кнопку "Додати" поруч з ним. diff --git a/site/docs/uk/hosting/zeabur-deno.md b/site/docs/uk/hosting/zeabur-deno.md index d6777ead3..6580ec818 100644 --- a/site/docs/uk/hosting/zeabur-deno.md +++ b/site/docs/uk/hosting/zeabur-deno.md @@ -21,7 +21,7 @@ Zeabur підтримує різні мови програмування та ф ### Спосіб 1: створення нового проєкту з нуля -> Переконайтеся, що на вашому комп'ютері встановлено Deno. +> Переконайтеся, що на вашому компʼютері встановлено Deno. Ініціалізуйте ваш проєкт та встановіть деякі необхідні залежності: diff --git a/site/docs/uk/plugins/i18n.md b/site/docs/uk/plugins/i18n.md index 32daec5fd..c0f6b8514 100644 --- a/site/docs/uk/plugins/i18n.md +++ b/site/docs/uk/plugins/i18n.md @@ -561,7 +561,7 @@ bot.command("start", async (ctx) => { }); ``` -Тепер можемо виконати команду `/start', щоб запустити бота. +Тепер можемо виконати команду `/start`, щоб запустити бота. Він повинен надіслати наступне повідомлення: ```:no-line-numbers diff --git a/site/docs/uk/plugins/inline-query.md b/site/docs/uk/plugins/inline-query.md index 6a2c24e15..21112604d 100644 --- a/site/docs/uk/plugins/inline-query.md +++ b/site/docs/uk/plugins/inline-query.md @@ -58,7 +58,7 @@ bot.on("inline_query", async (ctx) => { 1. Унікальний рядковий ідентифікатор. 2. _Обʼєкт результату_, який описує, як відобразити результат inline-запиту. Він може містити такі речі, як заголовок, посилання або зображення. -3. _Об'єкт вмісту повідомлення_, який описує вміст повідомлення, яке буде надіслано користувачеві, якщо він вибере цей результат. +3. _Обʼєкт вмісту повідомлення_, який описує вміст повідомлення, яке буде надіслано користувачеві, якщо він вибере цей результат. У деяких випадках вміст повідомлення може бути виведений неявно з обʼєкта результату. Наприклад, якщо ви хочете, щоб ваш результат відображався у вигляді GIF-файлу, то Telegram зрозуміє, що вміст повідомлення буде тим самим GIF-файлом, якщо ви не вкажете обʼєкт вмісту повідомлення. diff --git a/site/docs/uk/plugins/keyboard.md b/site/docs/uk/plugins/keyboard.md index ccbfe299e..9ee7b26b3 100644 --- a/site/docs/uk/plugins/keyboard.md +++ b/site/docs/uk/plugins/keyboard.md @@ -179,7 +179,7 @@ const keyboard = new Keyboard() Якщо у вас вже є масив рядків, який ви хочете перетворити на клавіатуру, ви можете використати другий, альтернативний стиль для створення екземплярів власної клавіатури. Клас `Keyboard` має статичні методи, як-от `Keyboard.text`, які дозволяють створювати обʼєкти кнопок. -У свою чергу, ви можете створити екземпляр класної клавіатури з масиву об'єктів кнопок за допомогою методу `Keyboard.from`. +У свою чергу, ви можете створити екземпляр класної клавіатури з масиву обʼєктів кнопок за допомогою методу `Keyboard.from`. Отже, ви можете побудувати вищезгадану власну клавіатуру у функціональний спосіб. diff --git a/site/docs/uk/resources/comparison.md b/site/docs/uk/resources/comparison.md index 4205b4017..a792729ff 100644 --- a/site/docs/uk/resources/comparison.md +++ b/site/docs/uk/resources/comparison.md @@ -65,7 +65,7 @@ grammY походить своїм корінням від Telegraf, тож ни - У вас вже є великий бот, написаний на Telegraf, і ви більше не працюєте над ним. У такому випадку міграція на grammY може зайняти більше часу, ніж ви заощадите в довгостроковій перспективі, незалежно від того, наскільки плавною буде міграція. -- Ви знаєте Telegraf, як свої п'ять пальців, і вам не потрібно змінювати свої навички. +- Ви знаєте Telegraf, як свої пʼять пальців, і вам не потрібно змінювати свої навички. grammY представляє ряд нових концепцій, які можуть бути незнайомими, якщо ви використовували тільки Telegraf, а використання grammY означає, що ви будете відкривати для себе нові речі. - Є кілька деталей, де Telegraf і grammY використовують різний синтаксис для досягнення однієї і тієї ж мети, і ви просто віддаєте перевагу одному стилю над іншим. Наприклад, Telegraf використовує `bot.on(message("text"))`, а grammY використовує `bot.on("message:text")` для прослуховування текстових повідомлень. @@ -133,7 +133,7 @@ grammY походить своїм корінням від Telegraf, тож ни Як завжди, мови програмування чудово справляються з певними завданнями, а для інших їх слід уникати. Це не виняток. -Наприклад, за нинішнього стану екосистем, все, що пов'язано з машинним навчанням, не варто робити на JavaScript. +Наприклад, за нинішнього стану екосистем, все, що повʼязано з машинним навчанням, не варто робити на JavaScript. Однак, коли мова йде про вебсервери, TypeScript, як правило, є набагато кращим вибором. ### Фреймворки, написані на Go