From 423796a4457a754acbcdbf51cf9a68e112e33531 Mon Sep 17 00:00:00 2001 From: JRoot Junior Date: Thu, 23 Nov 2023 01:28:11 +0200 Subject: [PATCH] Added translation for Scenes --- docs/locale/uk_UA/LC_MESSAGES/changelog.po | 110 ++- .../uk_UA/LC_MESSAGES/dispatcher/errors.po | 8 +- .../dispatcher/finite_state_machine/scene.po | 813 ++++++++++++++++++ 3 files changed, 900 insertions(+), 31 deletions(-) create mode 100644 docs/locale/uk_UA/LC_MESSAGES/dispatcher/finite_state_machine/scene.po diff --git a/docs/locale/uk_UA/LC_MESSAGES/changelog.po b/docs/locale/uk_UA/LC_MESSAGES/changelog.po index 936a2964..d30c0179 100644 --- a/docs/locale/uk_UA/LC_MESSAGES/changelog.po +++ b/docs/locale/uk_UA/LC_MESSAGES/changelog.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: aiogram \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-11-16 02:34+0200\n" +"POT-Creation-Date: 2023-11-23 00:44+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,7 +22,7 @@ msgid "Changelog" msgstr "" #: ../../[towncrier-fragments]:2 -msgid "\\ |release| [UNRELEASED DRAFT] (2023-11-16)" +msgid "\\ |release| [UNRELEASED DRAFT] (2023-11-23)" msgstr "" #: ../../../CHANGES.rst:33 ../../../CHANGES.rst:122 ../../../CHANGES.rst:180 @@ -36,9 +36,17 @@ msgstr "" #: ../../[towncrier-fragments]:7 msgid "" -"The new FSM strategy CHAT_TOPIC, which sets the state for the entire " -"topic in the chat, also works in private messages and regular groups " -"without topics. `#1343 `_" +"Introduced Scenes feature that helps you to simplify user interactions " +"using Finite State Machines. Read more about 👉 :ref:`Scenes `. " +"`#1280 `_" +msgstr "" + +#: ../../[towncrier-fragments]:10 +msgid "" +"Added the new FSM strategy :code:`CHAT_TOPIC`, which sets the state for " +"the entire topic in the chat, also works in private messages and regular " +"groups without topics. `#1343 " +"`_" msgstr "" #: ../../../CHANGES.rst:23 ../../../CHANGES.rst:44 ../../../CHANGES.rst:56 @@ -47,49 +55,57 @@ msgstr "" #: ../../../CHANGES.rst:559 ../../../CHANGES.rst:620 ../../../CHANGES.rst:678 #: ../../../CHANGES.rst:724 ../../../CHANGES.rst:772 ../../../CHANGES.rst:828 #: ../../../CHANGES.rst:913 ../../../CHANGES.rst:945 -#: ../../[towncrier-fragments]:12 +#: ../../[towncrier-fragments]:15 msgid "Bugfixes" msgstr "" -#: ../../[towncrier-fragments]:14 +#: ../../[towncrier-fragments]:17 msgid "" -"Fixed ``parse_mode`` in ``send_copy`` helper. Disable by default. `#1332 " +"Fixed :code:`parse_mode` argument in the in :code:`Message.send_copy` " +"shortcut. Disable by default. `#1332 " "`_" msgstr "" -#: ../../[towncrier-fragments]:16 +#: ../../[towncrier-fragments]:19 msgid "" -"Added current handler to filters, so that flags can be retrieved from it." -" `#1360 `_" +"Added ability to get handler flags from filters. `#1360 " +"`_" +msgstr "" + +#: ../../[towncrier-fragments]:21 +msgid "" +"Fixed a situation where a :code:`CallbackData` could not be parsed " +"without a default value. `#1368 " +"`_" msgstr "" #: ../../../CHANGES.rst:89 ../../../CHANGES.rst:159 ../../../CHANGES.rst:204 #: ../../../CHANGES.rst:289 ../../../CHANGES.rst:522 ../../../CHANGES.rst:572 -#: ../../../CHANGES.rst:952 ../../[towncrier-fragments]:21 +#: ../../../CHANGES.rst:952 ../../[towncrier-fragments]:26 msgid "Improved Documentation" msgstr "" -#: ../../[towncrier-fragments]:23 +#: ../../[towncrier-fragments]:28 msgid "" "Corrected grammatical errors, improved sentence structures, translation " "for migration 2.x-3.x `#1302 " "`_" msgstr "" -#: ../../[towncrier-fragments]:25 +#: ../../[towncrier-fragments]:30 msgid "" "Minor typo correction, specifically in module naming + some grammar. " "`#1340 `_" msgstr "" -#: ../../[towncrier-fragments]:27 +#: ../../[towncrier-fragments]:32 msgid "" "Added `CITATION.cff` file for automatic academic citation generation. Now" " you can copy citation from the GitHub page and paste it into your paper." " `#1351 `_" msgstr "" -#: ../../[towncrier-fragments]:30 +#: ../../[towncrier-fragments]:35 msgid "" "Minor typo correction in middleware docs. `#1353 " "`_" @@ -100,67 +116,73 @@ msgstr "" #: ../../../CHANGES.rst:637 ../../../CHANGES.rst:691 ../../../CHANGES.rst:733 #: ../../../CHANGES.rst:779 ../../../CHANGES.rst:839 ../../../CHANGES.rst:860 #: ../../../CHANGES.rst:883 ../../../CHANGES.rst:920 ../../../CHANGES.rst:959 -#: ../../[towncrier-fragments]:35 +#: ../../[towncrier-fragments]:40 msgid "Misc" msgstr "" -#: ../../[towncrier-fragments]:37 +#: ../../[towncrier-fragments]:42 msgid "" "Fixed ResourceWarning in the tests, reworked :code:`RedisEventsIsolation`" " fixture to use Redis connection from :code:`RedisStorage` `#1320 " "`_" msgstr "" -#: ../../[towncrier-fragments]:39 +#: ../../[towncrier-fragments]:44 msgid "Updated dependencies, bumped minimum required version:" msgstr "" -#: ../../[towncrier-fragments]:41 +#: ../../[towncrier-fragments]:46 msgid ":code:`magic-filter` - fixed `.resolve` operation" msgstr "" -#: ../../[towncrier-fragments]:42 +#: ../../[towncrier-fragments]:47 msgid ":code:`pydantic` - fixed compatibility (broken in 2.4)" msgstr "" -#: ../../[towncrier-fragments]:43 +#: ../../[towncrier-fragments]:48 msgid "" ":code:`aiodns` - added new dependency to the :code:`fast` extras " "(:code:`pip install aiogram[fast]`)" msgstr "" -#: ../../[towncrier-fragments]:44 +#: ../../[towncrier-fragments]:49 msgid "*others...*" msgstr "" -#: ../../[towncrier-fragments]:45 +#: ../../[towncrier-fragments]:50 msgid "`#1327 `_" msgstr "" -#: ../../[towncrier-fragments]:46 +#: ../../[towncrier-fragments]:51 msgid "" "Prevent update handling task pointers from being garbage collected, " "backport from 2.x `#1331 " "`_" msgstr "" -#: ../../[towncrier-fragments]:48 +#: ../../[towncrier-fragments]:53 msgid "" "Updated :code:`typing-extensions` package version range in dependencies " "to fix compatibility with :code:`FastAPI` `#1347 " "`_" msgstr "" -#: ../../[towncrier-fragments]:50 +#: ../../[towncrier-fragments]:55 +msgid "" +"Introduce Python 3.12 support `#1354 " +"`_" +msgstr "" + +#: ../../[towncrier-fragments]:57 msgid "" "Speeded up CallableMixin processing by caching references to nested " "objects and simplifying kwargs assembly. `#1357 " "`_" msgstr "" -#: ../../[towncrier-fragments]:52 +#: ../../[towncrier-fragments]:59 msgid "" -"Added pydantic v2.5 support. `#1361 " +"Added :code:`pydantic` v2.5 support. `#1361 " "`_" msgstr "" @@ -3237,3 +3259,33 @@ msgstr "" #~ msgid "\\ |release| [UNRELEASED DRAFT] (2023-10-29)" #~ msgstr "" + +#~ msgid "\\ |release| [UNRELEASED DRAFT] (2023-11-16)" +#~ msgstr "" + +#~ msgid "" +#~ "The new FSM strategy CHAT_TOPIC, which" +#~ " sets the state for the entire " +#~ "topic in the chat, also works in" +#~ " private messages and regular groups " +#~ "without topics. `#1343 " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "Fixed ``parse_mode`` in ``send_copy`` helper." +#~ " Disable by default. `#1332 " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "Added current handler to filters, so " +#~ "that flags can be retrieved from " +#~ "it. `#1360 " +#~ "`_" +#~ msgstr "" + +#~ msgid "" +#~ "Added pydantic v2.5 support. `#1361 " +#~ "`_" +#~ msgstr "" diff --git a/docs/locale/uk_UA/LC_MESSAGES/dispatcher/errors.po b/docs/locale/uk_UA/LC_MESSAGES/dispatcher/errors.po index d9f28e0a..f6c296c5 100644 --- a/docs/locale/uk_UA/LC_MESSAGES/dispatcher/errors.po +++ b/docs/locale/uk_UA/LC_MESSAGES/dispatcher/errors.po @@ -8,14 +8,14 @@ msgid "" msgstr "" "Project-Id-Version: aiogram \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-07-30 18:31+0300\n" +"POT-Creation-Date: 2023-11-23 00:44+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.12.1\n" +"Generated-By: Babel 2.13.1\n" #: ../../dispatcher/errors.rst:3 msgid "Errors" @@ -82,6 +82,10 @@ msgstr "" msgid "Exception for callback answer." msgstr "" +#: aiogram.exceptions.SceneException:1 of +msgid "Exception for scenes." +msgstr "" + #: aiogram.exceptions.UnsupportedKeywordArgument:1 of msgid "Exception raised when a keyword argument is passed as filter." msgstr "" diff --git a/docs/locale/uk_UA/LC_MESSAGES/dispatcher/finite_state_machine/scene.po b/docs/locale/uk_UA/LC_MESSAGES/dispatcher/finite_state_machine/scene.po new file mode 100644 index 00000000..c9f09523 --- /dev/null +++ b/docs/locale/uk_UA/LC_MESSAGES/dispatcher/finite_state_machine/scene.po @@ -0,0 +1,813 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2023, aiogram Team +# This file is distributed under the same license as the aiogram package. +# FIRST AUTHOR , 2023. +# +msgid "" +msgstr "" +"Project-Id-Version: aiogram\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2023-11-23 00:44+0200\n" +"PO-Revision-Date: 2023-11-23 01:27+0200\n" +"Last-Translator: \n" +"Language-Team: uk_UA \n" +"Language: uk_UA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 " +"&& (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Generated-By: Babel 2.13.1\n" +"X-Generator: Poedit 3.4.1\n" + +#: ../../dispatcher/finite_state_machine/scene.rst:5 +msgid "Scenes Wizard" +msgstr "Майтер сцен" + +#: ../../dispatcher/finite_state_machine/scene.rst:11 +msgid "This feature is experimental and may be changed in future versions." +msgstr "" +"Дана фіча є експериментальною, тому у наступних оновленнях може змінюватись." + +#: ../../dispatcher/finite_state_machine/scene.rst:13 +msgid "" +"**aiogram's** basics API is easy to use and powerful, allowing the " +"implementation of simple interactions such as triggering a command or message " +"for a response. However, certain tasks require a dialogue between the user and " +"the bot. This is where Scenes come into play." +msgstr "" +"Базовий інтерфейс **aiogram**-у простий та потужний у використанні, що дозволяє " +"реалізувати прості взаємодії, такі як обробка команд або повідомлень і " +"відповідей. Однак деякі завдання вимагають поетапного діалогу між користувачем " +"і ботом. Ось де сцени вступають у гру." + +#: ../../dispatcher/finite_state_machine/scene.rst:20 +msgid "Understanding Scenes" +msgstr "Що ж таке сцени?" + +#: ../../dispatcher/finite_state_machine/scene.rst:22 +msgid "" +"A Scene in **aiogram** is like an abstract, isolated namespace or room that a " +"user can be ushered into via the code. When a user is inside a Scene, all other " +"global commands or message handlers are isolated, and they stop responding to " +"user actions. Scenes provide a structure for more complex interactions, " +"effectively isolating and managing contexts for different stages of the " +"conversation. They allow you to control and manage the flow of the conversation " +"in a more organized manner." +msgstr "" +"Сцена в **aiogram** схожа на абстрактний, ізольований простір імен або кімнату, " +"до якої користувач може потрапити за допомогою коду. Коли користувач " +"знаходиться всередині Сцени, усі інші глобальні команди або обробники " +"повідомлень ізольовані, і вони перестають реагувати на дії користувача. Сцени " +"забезпечують структуру для більш складних взаємодій, ефективно ізолюючи та " +"керуючи контекстами для різних етапів розмови. Вони дозволяють більш " +"організовано контролювати та керувати розмовою." + +#: ../../dispatcher/finite_state_machine/scene.rst:30 +msgid "Scene Lifecycle" +msgstr "Життєвий цикл" + +#: ../../dispatcher/finite_state_machine/scene.rst:32 +msgid "" +"Each Scene can be \"entered\", \"left\" of \"exited\", allowing for clear " +"transitions between different stages of the conversation. For instance, in a " +"multi-step form filling interaction, each step could be a Scene - the bot " +"guides the user from one Scene to the next as they provide the required " +"information." +msgstr "" +"У кожну сцену можна \"увійти\", \"покинути\" або \"вийти\", що забезпечує чіткі " +"переходи між різними етапами розмови. Наприклад, у багатоетапній взаємодії " +"заповнення форми кожен крок може бути сценою - бот направляє користувача від " +"однієї сцени до наступної, коли вони надають необхідну інформацію." + +#: ../../dispatcher/finite_state_machine/scene.rst:38 +msgid "Scene Listeners" +msgstr "Слухачі подій" + +#: ../../dispatcher/finite_state_machine/scene.rst:40 +msgid "" +"Scenes have their own hooks which are command or message listeners that only " +"act while the user is within the Scene. These hooks react to user actions while " +"the user is 'inside' the Scene, providing the responses or actions appropriate " +"for that context. When the user is ushered from one Scene to another, the " +"actions and responses change accordingly as the user is now interacting with " +"the set of listeners inside the new Scene. These 'Scene-specific' hooks or " +"listeners, detached from the global listening context, allow for more " +"streamlined and organized bot-user interactions." +msgstr "" +"Сцени мають власні хуки, які є слухачами команд або повідомлень, які діють лише " +"тоді, коли користувач знаходиться всередині сцени. Ці хуки реагують на дії " +"користувача, коли користувач перебуває «всередині» Сцени, надаючи відповіді або " +"дії, відповідні цьому контексту. Коли користувач переходить від однієї сцени до " +"іншої, дії та відповіді відповідно змінюються, оскільки користувач тепер " +"взаємодіє з групою слухачів у новій сцені. Ці «специфічні для сцени» хуки або " +"слухачі, відірвані від глобального контексту прослуховування, дозволяють більш " +"оптимізовану та організовану взаємодію бот-користувач." + +#: ../../dispatcher/finite_state_machine/scene.rst:51 +msgid "Scene Interactions" +msgstr "Взаємодія" + +#: ../../dispatcher/finite_state_machine/scene.rst:53 +msgid "" +"Each Scene is like a self-contained world, with interactions defined within the " +"scope of that Scene. As such, only the handlers defined within the specific " +"Scene will react to user's input during the lifecycle of that Scene." +msgstr "" +"Кожна сцена схожа на самодостатній світ із взаємодіями, визначеними в межах " +"цієї сцени. Таким чином, лише обробники, визначені в конкретній сцені, " +"реагуватимуть на введення користувача протягом життєвого циклу цієї сцени." + +#: ../../dispatcher/finite_state_machine/scene.rst:59 +msgid "Scene Benefits" +msgstr "Переваги" + +#: ../../dispatcher/finite_state_machine/scene.rst:61 +msgid "" +"Scenes can help manage more complex interaction workflows and enable more " +"interactive and dynamic dialogs between the user and the bot. This offers great " +"flexibility in handling multi-step interactions or conversations with the users." +msgstr "" +"Сцени можуть допомогти керувати більш складними робочими процесами взаємодії та " +"забезпечити більш інтерактивні та динамічні діалоги між користувачем і ботом. " +"Це забезпечує велику гнучкість у обробці багатоетапних взаємодій або розмов з " +"користувачами." + +#: ../../dispatcher/finite_state_machine/scene.rst:66 +msgid "How to use Scenes" +msgstr "Як це використовувати?" + +#: ../../dispatcher/finite_state_machine/scene.rst:68 +msgid "" +"For example we have a quiz bot, which asks the user a series of questions and " +"then displays the results." +msgstr "" +"Наприклад, у нас є тестовий бот, який задає користувачеві серію запитань, а " +"потім відображає результати - назвемо його гра-вікторина." + +#: ../../dispatcher/finite_state_machine/scene.rst:70 +msgid "" +"Lets start with the data models, in this example simple data models are used to " +"represent the questions and answers, in real life you would probably use a " +"database to store the data." +msgstr "" +"Почнемо з моделей даних. У цьому прикладі прості моделі даних використовуються " +"для представлення запитань і відповідей, у реальному житті ви, ймовірно, " +"використовували б базу даних для зберігання даних." + +#: ../../dispatcher/finite_state_machine/scene.rst:73 +msgid "Questions list" +msgstr "Запитання" + +#: ../../dispatcher/finite_state_machine/scene.rst:78 +msgid "" +"Then, we need to create a Scene class that will represent the quiz game scene:" +msgstr "" +"Потім нам потрібно створити клас Scene, який представлятиме сцену вікторини:" + +#: ../../dispatcher/finite_state_machine/scene.rst:82 +msgid "" +"Keyword argument passed into class definition describes the scene name - is the " +"same as state of the scene." +msgstr "" +"Іменований аргумент, переданий у визначення класу, описує ім'я сцени - те саме, " +"що стан сцени." + +#: ../../dispatcher/finite_state_machine/scene.rst:84 +msgid "Quiz Scene" +msgstr "Сцена вікторини" + +#: ../../dispatcher/finite_state_machine/scene.rst:92 +msgid "Also we need to define a handler that helps to start the quiz game:" +msgstr "Також нам потрібно визначити обробник, який допоможе запустити вікторину:" + +#: ../../dispatcher/finite_state_machine/scene.rst:94 +msgid "Start command handler" +msgstr "Обробник для запуску вікторини" + +#: ../../dispatcher/finite_state_machine/scene.rst:99 +msgid "Once the scene is defined, we need to register it in the SceneRegistry:" +msgstr "Після визначення сцени нам потрібно зареєструвати її в SceneRegistry:" + +#: ../../dispatcher/finite_state_machine/scene.rst:101 +msgid "Registering the scene" +msgstr "Реєстрація сцени" + +#: ../../dispatcher/finite_state_machine/scene.rst:106 +msgid "" +"So, now we can implement the quiz game logic, each question is sent to the user " +"one by one, and the user's answer is checked at the end of all questions." +msgstr "" +"Отже, тепер ми можемо реалізувати логіку гри-вікторини, кожне запитання " +"надсилається користувачеві одне за одним, а відповідь користувача перевіряється " +"в кінці всіх запитань." + +#: ../../dispatcher/finite_state_machine/scene.rst:109 +msgid "Now we need to write an entry point for the question handler:" +msgstr "Тепер нам потрібно написати точку входу для обробника запитань:" + +#: ../../dispatcher/finite_state_machine/scene.rst:111 +msgid "Question handler entry point" +msgstr "Точка входу обробника запитань" + +#: ../../dispatcher/finite_state_machine/scene.rst:117 +msgid "" +"Once scene is entered, we should expect the user's answer, so we need to write " +"a handler for it, this handler should expect the text message, save the answer " +"and retake the question handler for the next question:" +msgstr "" +"Після входу в сцену ми маємо очікувати відповіді користувача, тому нам потрібно " +"написати для неї обробник, цей обробник має очікувати текстове повідомлення, " +"зберегти відповідь і повторно виконати обробник запитання для наступного " +"запитання:" + +#: ../../dispatcher/finite_state_machine/scene.rst:121 +msgid "Answer handler" +msgstr "Обробник відповідей" + +#: ../../dispatcher/finite_state_machine/scene.rst:126 +msgid "" +"When user answer with unknown message, we should expect the text message again:" +msgstr "" +"Коли користувач відповідає невідомим повідомленням, ми повинні знову очікувати " +"текстове повідомлення:" + +#: ../../dispatcher/finite_state_machine/scene.rst:128 +msgid "Unknown message handler" +msgstr "Невідомий обробник повідомлень" + +#: ../../dispatcher/finite_state_machine/scene.rst:133 +msgid "" +"When all questions are answered, we should show the results to the user, as you " +"can see in the code below, we use `await self.wizard.exit()` to exit from the " +"scene when questions list is over in the `QuizScene.on_enter` handler." +msgstr "" +"Після відповіді на всі запитання ми маємо показати результати користувачеві, як " +"ви можете бачити в коді нижче, ми використовуємо `await self.wizard.exit()`, " +"щоб вийти зі сцени, коли список запитань у `QuizScene» закінчено .on_enter` " +"обробник." + +#: ../../dispatcher/finite_state_machine/scene.rst:136 +msgid "" +"Thats means that we need to write an exit handler to show the results to the " +"user:" +msgstr "" +"Це означає, що нам потрібно написати обробник виходу, щоб показати результати " +"користувачеві:" + +#: ../../dispatcher/finite_state_machine/scene.rst:138 +msgid "Show results handler" +msgstr "Обробник показу результатів" + +#: ../../dispatcher/finite_state_machine/scene.rst:143 +msgid "" +"Also we can implement a actions to exit from the quiz game or go back to the " +"previous question:" +msgstr "" +"Також ми можемо виконати дії для виходу з вікторини або повернення до " +"попереднього запитання:" + +#: ../../dispatcher/finite_state_machine/scene.rst:145 +msgid "Exit handler" +msgstr "Обробник виходу" + +#: ../../dispatcher/finite_state_machine/scene.rst:150 +msgid "Back handler" +msgstr "Обробник дії \"повернутись\"" + +#: ../../dispatcher/finite_state_machine/scene.rst:155 +msgid "Now we can run the bot and test the quiz game:" +msgstr "Тепер ми можемо запустити бота і протестувати гру-вікторину:" + +#: ../../dispatcher/finite_state_machine/scene.rst:157 +msgid "Run the bot" +msgstr "Запустіть бота" + +#: ../../dispatcher/finite_state_machine/scene.rst:162 +msgid "Complete them all" +msgstr "Зберемо все разом" + +#: ../../dispatcher/finite_state_machine/scene.rst:164 +msgid "Quiz Example" +msgstr "Приклад вікторини" + +#: ../../dispatcher/finite_state_machine/scene.rst:170 +msgid "Components" +msgstr "Компоненти" + +#: ../../dispatcher/finite_state_machine/scene.rst:172 +msgid ":class:`aiogram.fsm.scene.Scene` - represents a scene, contains handlers" +msgstr ":class:`aiogram.fsm.scene.Scene` - представляє сцену, містить обробники" + +#: ../../dispatcher/finite_state_machine/scene.rst:173 +msgid "" +":class:`aiogram.fsm.scene.SceneRegistry` - container for all scenes in the bot, " +"used to register scenes and resolve them by name" +msgstr "" +":class:`aiogram.fsm.scene.SceneRegistry` - контейнер для всіх сцен у боті, " +"використовується для реєстрації сцен та їх вирішення за назвою" + +#: ../../dispatcher/finite_state_machine/scene.rst:174 +msgid "" +":class:`aiogram.fsm.scene.ScenesManager` - manages scenes for each user, used " +"to enter, leave and resolve current scene for user" +msgstr "" +":class:`aiogram.fsm.scene.ScenesManager` - керує сценами для кожного " +"користувача, використовується для входу, виходу та вирішення поточної сцени для " +"користувача" + +#: ../../dispatcher/finite_state_machine/scene.rst:175 +msgid "" +":class:`aiogram.fsm.scene.SceneConfig` - scene configuration, used to configure " +"scene" +msgstr "" +":class:`aiogram.fsm.scene.SceneConfig` - конфігурація сцени, використовується " +"для налаштування сцени" + +#: ../../dispatcher/finite_state_machine/scene.rst:176 +msgid "" +":class:`aiogram.fsm.scene.SceneWizard` - scene wizard, used to interact with " +"user in scene from active scene handler" +msgstr "" +":class:`aiogram.fsm.scene.SceneWizard` - майстер сцени, який використовується " +"для взаємодії з користувачем у сцені з активного обробника сцени" + +#: ../../dispatcher/finite_state_machine/scene.rst:177 +msgid "Markers - marker for scene handlers, used to mark scene handlers" +msgstr "" +"Markers - маркер для обробників сцен, використовується для позначення " +"обробників сцен" + +#: aiogram.fsm.scene.Scene:1 of +msgid "Represents a scene in a conversation flow." +msgstr "Представляє крок в діалозі." + +#: aiogram.fsm.scene.Scene:3 of +msgid "" +"A scene is a specific state in a conversation where certain actions can take " +"place." +msgstr "Сцена — це певний стан розмови, де можуть відбуватися певні дії." + +#: aiogram.fsm.scene.Scene:5 of +msgid "" +"Each scene has a set of filters that determine when it should be triggered, and " +"a set of handlers that define the actions to be executed when the scene is " +"active." +msgstr "" +"Кожна сцена має набір фільтрів, які визначають, коли вона має бути запущена, і " +"набір обробників, які визначають дії, які мають виконуватися, коли сцена " +"активна." + +#: aiogram.fsm.scene.Scene:9 of +msgid "" +"This class is not meant to be used directly. Instead, it should be subclassed " +"to define custom scenes." +msgstr "" +"Цей клас не призначений для безпосереднього використання. Замість цього слід " +"створити підкласи для визначення власних сцен." + +#: aiogram.fsm.scene.Scene.add_to_router:1 of +msgid "Adds the scene to the given router." +msgstr "Додає сцену до заданого маршрутизатора." + +#: aiogram.fsm.scene.Scene.add_to_router aiogram.fsm.scene.SceneRegistry.add +#: aiogram.fsm.scene.SceneRegistry.get aiogram.fsm.scene.SceneRegistry.register +#: aiogram.fsm.scene.SceneWizard.back aiogram.fsm.scene.SceneWizard.enter +#: aiogram.fsm.scene.SceneWizard.exit aiogram.fsm.scene.SceneWizard.goto +#: aiogram.fsm.scene.SceneWizard.leave aiogram.fsm.scene.SceneWizard.retake +#: aiogram.fsm.scene.SceneWizard.set_data +#: aiogram.fsm.scene.SceneWizard.update_data aiogram.fsm.scene.ScenesManager.close +#: aiogram.fsm.scene.ScenesManager.enter of +msgid "Parameters" +msgstr "Параметри" + +#: aiogram.fsm.scene.Scene.add_to_router aiogram.fsm.scene.Scene.as_router +#: aiogram.fsm.scene.SceneRegistry.add aiogram.fsm.scene.SceneRegistry.get +#: aiogram.fsm.scene.SceneRegistry.register aiogram.fsm.scene.SceneWizard.back +#: aiogram.fsm.scene.SceneWizard.clear_data aiogram.fsm.scene.SceneWizard.enter +#: aiogram.fsm.scene.SceneWizard.exit aiogram.fsm.scene.SceneWizard.get_data +#: aiogram.fsm.scene.SceneWizard.goto aiogram.fsm.scene.SceneWizard.leave +#: aiogram.fsm.scene.SceneWizard.retake aiogram.fsm.scene.SceneWizard.set_data +#: aiogram.fsm.scene.SceneWizard.update_data aiogram.fsm.scene.ScenesManager.close +#: aiogram.fsm.scene.ScenesManager.enter of +msgid "Returns" +msgstr "Повертає" + +#: aiogram.fsm.scene.Scene.as_handler:1 of +msgid "" +"Create an entry point handler for the scene, can be used to simplify the " +"handler that starts the scene." +msgstr "" +"Створіть обробник точки входу для сцени, який можна використовувати для " +"спрощення обробника, який запускає сцену." + +#: aiogram.fsm.scene.Scene.as_router:1 of +msgid "Returns the scene as a router." +msgstr "Returns the scene as a router." + +#: aiogram.fsm.scene.Scene.as_router:3 of +msgid "new router" +msgstr "новий роутер" + +#: aiogram.fsm.scene.SceneRegistry:1 of +msgid "A class that represents a registry for scenes in a Telegram bot." +msgstr "Клас, який представляє реєстр для сцен." + +#: aiogram.fsm.scene.SceneRegistry.add:1 of +msgid "" +"This method adds the specified scenes to the registry and optionally registers " +"it to the router." +msgstr "" +"Цей метод додає вказані сцени до реєстру та додатково реєструє їх на " +"маршрутизаторі." + +#: aiogram.fsm.scene.SceneRegistry.add:4 of +msgid "" +"If a scene with the same state already exists in the registry, a SceneException " +"is raised." +msgstr "" +"Якщо сцена з таким самим станом уже існує в реєстрі, виникає SceneException." + +#: aiogram.fsm.scene.SceneRegistry.add:8 of +msgid "" +"If the router is not specified, the scenes will not be registered to the " +"router. You will need to include the scenes manually to the router or use the " +"register method." +msgstr "" +"If the router is not specified, the scenes will not be registered to the " +"router. You will need to include the scenes manually to the router or use the " +"register method." + +#: aiogram.fsm.scene.SceneRegistry.add:11 of +msgid "" +"A variable length parameter that accepts one or more types of scenes. These " +"scenes are instances of the Scene class." +msgstr "" +"Параметр змінної довжини, який приймає один або кілька типів сцен. Ці сцени є " +"екземплярами класу Scene." + +#: aiogram.fsm.scene.SceneRegistry.add:13 of +msgid "" +"An optional parameter that specifies the router to which the scenes should be " +"added." +msgstr "" +"Додатковий параметр, який визначає маршрутизатор, до якого слід додати сцени." + +#: aiogram.fsm.scene.SceneRegistry.add:15 +#: aiogram.fsm.scene.SceneRegistry.register:4 aiogram.fsm.scene.SceneWizard.back:4 +#: aiogram.fsm.scene.SceneWizard.clear_data:3 +#: aiogram.fsm.scene.SceneWizard.enter:6 aiogram.fsm.scene.SceneWizard.exit:4 +#: aiogram.fsm.scene.SceneWizard.goto:9 aiogram.fsm.scene.SceneWizard.leave:6 +#: aiogram.fsm.scene.SceneWizard.retake:4 aiogram.fsm.scene.SceneWizard.set_data:4 +#: aiogram.fsm.scene.ScenesManager.close:4 aiogram.fsm.scene.ScenesManager.enter:7 +#: of +msgid "None" +msgstr "" + +#: aiogram.fsm.scene.SceneRegistry.get:1 of +msgid "" +"This method returns the registered Scene object for the specified scene. The " +"scene parameter can be either a Scene object or a string representing the name " +"of the scene. If a Scene object is provided, the state attribute of the " +"SceneConfig object associated with the Scene object will be used as the scene " +"name. If None or an invalid type is provided, a SceneException will be raised." +msgstr "" +"Цей метод повертає зареєстрований об’єкт Scene для вказаної сцени. Параметром " +"сцени може бути або об’єкт Scene, або рядок, що представляє назву сцени. Якщо " +"надається об’єкт Scene, атрибут стану об’єкта SceneConfig, пов’язаного з " +"об’єктом Scene, використовуватиметься як ім’я сцени. Якщо вказано None або " +"недійсний тип, буде викликано SceneException." + +#: aiogram.fsm.scene.SceneRegistry.get:7 of +msgid "" +"If the specified scene is not registered in the SceneRegistry object, a " +"SceneException will be raised." +msgstr "" +"Якщо вказану сцену не зареєстровано в об’єкті SceneRegistry, буде породжено " +"помилку SceneException." + +#: aiogram.fsm.scene.SceneRegistry.get:10 of +msgid "A Scene object or a string representing the name of the scene." +msgstr "Об’єкт Scene або рядок, що представляє назву сцени." + +#: aiogram.fsm.scene.SceneRegistry.get:11 of +msgid "The registered Scene object corresponding to the given scene parameter." +msgstr "Зареєстрований об’єкт Scene, що відповідає даному параметру сцени." + +#: aiogram.fsm.scene.SceneRegistry.register:1 of +msgid "Registers one or more scenes to the SceneRegistry." +msgstr "Реєструє одну або кілька сцен у SceneRegistry." + +#: aiogram.fsm.scene.SceneRegistry.register:3 of +msgid "One or more scene classes to register." +msgstr "Один або кілька класів сцен для реєстрації." + +#: aiogram.fsm.scene.ScenesManager:1 of +msgid "" +"The ScenesManager class is responsible for managing scenes in an application. " +"It provides methods for entering and exiting scenes, as well as retrieving the " +"active scene." +msgstr "" +"Клас ScenesManager відповідає за керування сценами в програмі. Він надає методи " +"входу та виходу зі сцен, а також відновлення активної сцени." + +#: aiogram.fsm.scene.ScenesManager.close:1 of +msgid "" +"Close method is used to exit the currently active scene in the ScenesManager." +msgstr "" +"Метод Close використовується для виходу з поточної активної сцени в " +"ScenesManager." + +#: aiogram.fsm.scene.ScenesManager.close:3 of +msgid "Additional keyword arguments passed to the scene's exit method." +msgstr "Додаткові аргументи ключового слова, передані в метод виходу сцени." + +#: aiogram.fsm.scene.ScenesManager.enter:1 of +msgid "Enters the specified scene." +msgstr "Виходить на вказану сцену." + +#: aiogram.fsm.scene.ScenesManager.enter:3 of +msgid "Optional Type[Scene] or str representing the scene type to enter." +msgstr "" +"Додатково Type[Scene] або str, що представляє тип сцени, який потрібно ввести." + +#: aiogram.fsm.scene.ScenesManager.enter:4 of +msgid "" +"Optional bool indicating whether to check if there is an active scene to exit " +"before entering the new scene. Defaults to True." +msgstr "" +"Необов’язковий параметр, що вказує, чи перевіряти наявність активної сцени для " +"виходу перед входом у нову сцену. За замовчуванням значення True." + +#: aiogram.fsm.scene.ScenesManager.enter:6 of +msgid "Additional keyword arguments to pass to the scene's wizard.enter() method." +msgstr "Додаткові іменовані аргументи для передачі в метод wizard.enter() сцени." + +#: ../../docstring aiogram.fsm.scene.SceneConfig.actions:1 of +msgid "Scene actions" +msgstr "Дії сцени" + +#: ../../docstring aiogram.fsm.scene.SceneConfig.callback_query_without_state:1 of +msgid "Allow callback query without state" +msgstr "Створювати обробники кнопок без перевірки стану поточної сцени" + +#: ../../docstring aiogram.fsm.scene.SceneConfig.handlers:1 of +msgid "Scene handlers" +msgstr "Обробники сцени" + +#: ../../docstring aiogram.fsm.scene.SceneConfig.reset_data_on_enter:1 of +msgid "Reset scene data on enter" +msgstr "Скинути дані сцени після входу" + +#: ../../docstring aiogram.fsm.scene.SceneConfig.reset_history_on_enter:1 of +msgid "Reset scene history on enter" +msgstr "Скинути історію сцени під час входу" + +#: ../../docstring aiogram.fsm.scene.SceneConfig.state:1 of +msgid "Scene state" +msgstr "Стан сцени" + +#: aiogram.fsm.scene.SceneWizard:1 of +msgid "A class that represents a wizard for managing scenes in a Telegram bot." +msgstr "Клас, який представляє майстер сцен." + +#: aiogram.fsm.scene.SceneWizard:3 of +msgid "" +"Instance of this class is passed to each scene as a parameter. So, you can use " +"it to transition between scenes, get and set data, etc." +msgstr "" +"Екземпляр цього класу передається кожній сцені як параметр. Отже, ви можете " +"використовувати його для переходу між сценами, отримання та встановлення даних " +"тощо." + +#: aiogram.fsm.scene.SceneWizard:8 of +msgid "" +"This class is not meant to be used directly. Instead, it should be used as a " +"parameter in the scene constructor." +msgstr "" +"Цей клас не призначений для безпосереднього використання. Натомість його слід " +"використовувати як параметр у конструкторі сцени." + +#: aiogram.fsm.scene.SceneWizard.back:1 of +msgid "This method is used to go back to the previous scene." +msgstr "Цей метод використовується для повернення до попередньої сцени." + +#: aiogram.fsm.scene.SceneWizard.back:3 of +msgid "Keyword arguments that can be passed to the method." +msgstr "Аргументи ключових слів, які можна передати в метод." + +#: aiogram.fsm.scene.SceneWizard.clear_data:1 of +msgid "Clears the data." +msgstr "Очищає дані." + +#: aiogram.fsm.scene.SceneWizard.enter:1 of +msgid "" +"Enter method is used to transition into a scene in the SceneWizard class. It " +"sets the state, clears data and history if specified, and triggers entering " +"event of the scene." +msgstr "" +"Метод Enter використовується для переходу в сцену в класі SceneWizard. Він " +"встановлює стан, очищає дані та історію, якщо вказано, і запускає введення " +"події сцени." + +#: aiogram.fsm.scene.SceneWizard.enter:5 aiogram.fsm.scene.SceneWizard.exit:3 +#: aiogram.fsm.scene.SceneWizard.leave:5 of +msgid "Additional keyword arguments." +msgstr "Додаткові іменовані аргументи." + +#: aiogram.fsm.scene.SceneWizard.exit:1 of +msgid "Exit the current scene and enter the default scene/state." +msgstr "Вийти з поточної сцени та перейти до стандартного стану чи сцени." + +#: aiogram.fsm.scene.SceneWizard.get_data:1 of +msgid "This method returns the data stored in the current state." +msgstr "Цей метод повертає дані, що зберігаються в поточному стані." + +#: aiogram.fsm.scene.SceneWizard.get_data:3 of +msgid "A dictionary containing the data stored in the scene state." +msgstr "Словник, що містить дані, що зберігаються в стані сцени." + +#: aiogram.fsm.scene.SceneWizard.goto:1 of +msgid "" +"The `goto` method transitions to a new scene. It first calls the `leave` method " +"to perform any necessary cleanup in the current scene, then calls the `enter` " +"event to enter the specified scene." +msgstr "" +"Метод `goto` переходить до нової сцени. Спочатку він викликає метод `leave`, " +"щоб виконати будь-яке необхідне очищення в поточній сцені, а потім викликає " +"подію `enter`, щоб увійти до вказаної сцени." + +#: aiogram.fsm.scene.SceneWizard.goto:5 of +msgid "" +"The scene to transition to. Can be either a `Scene` instance or a string " +"representing the scene." +msgstr "" +"Сцена для переходу. Може бути екземпляром `Scene` або рядком, що представляє " +"сцену." + +#: aiogram.fsm.scene.SceneWizard.goto:7 of +msgid "" +"Additional keyword arguments to pass to the `enter` method of the scene manager." +msgstr "Додаткові іменовані аргументи для точки входу до `enter` менеджера сцен." + +#: aiogram.fsm.scene.SceneWizard.leave:1 of +msgid "" +"Leaves the current scene. This method is used to exit a scene and transition to " +"the next scene." +msgstr "" +"Залишає поточну сцену. Цей метод використовується для виходу зі сцени та " +"переходу до наступної сцени." + +#: aiogram.fsm.scene.SceneWizard.leave:4 of +msgid "Whether to include history in the snapshot. Defaults to True." +msgstr "Чи включати історію в знімок. За замовчуванням значення True." + +#: aiogram.fsm.scene.SceneWizard.retake:1 of +msgid "This method allows to re-enter the current scene." +msgstr "Цей метод дозволяє повторно увійти до поточної сцени." + +#: aiogram.fsm.scene.SceneWizard.retake:3 of +msgid "Additional keyword arguments to pass to the scene." +msgstr "Додаткові іменовані аргументи для передачі до сцени." + +#: aiogram.fsm.scene.SceneWizard.set_data:1 of +msgid "Sets custom data in the current state." +msgstr "Встановлює настроювані дані в поточний стан." + +#: aiogram.fsm.scene.SceneWizard.set_data:3 of +msgid "A dictionary containing the custom data to be set in the current state." +msgstr "" +"Словник, що містить настроювані дані, які потрібно встановити в поточному стані." + +#: aiogram.fsm.scene.SceneWizard.update_data:1 of +msgid "This method updates the data stored in the current state" +msgstr "Цей метод оновлює дані, що зберігаються в поточному стані" + +#: aiogram.fsm.scene.SceneWizard.update_data:3 of +msgid "Optional dictionary of data to update." +msgstr "Додатковий словник даних для оновлення." + +#: aiogram.fsm.scene.SceneWizard.update_data:4 of +msgid "Additional key-value pairs of data to update." +msgstr "Додаткові пари ключ-значення даних для оновлення." + +#: aiogram.fsm.scene.SceneWizard.update_data:5 of +msgid "Dictionary of updated data" +msgstr "Словник оновлених даних" + +#: ../../dispatcher/finite_state_machine/scene.rst:196 +msgid "Markers" +msgstr "Маркери" + +#: ../../dispatcher/finite_state_machine/scene.rst:198 +msgid "" +"Markers are similar to the Router event registering mechanism, but they are " +"used to mark scene handlers in the Scene class." +msgstr "" +"Маркери подібні до механізму реєстрації подій Router, але вони використовуються " +"для позначення обробників сцени в класі Scene." + +#: ../../dispatcher/finite_state_machine/scene.rst:201 +msgid "" +"It can be imported from :code:`from aiogram.fsm.scene import on` and should be " +"used as decorator." +msgstr "" +"Його можна імпортувати з :code:`from aiogram.fsm.scene import on` і слід " +"використовувати як декоратор." + +#: ../../dispatcher/finite_state_machine/scene.rst:203 +msgid "Allowed event types:" +msgstr "Дозволені типи подій:" + +#: ../../dispatcher/finite_state_machine/scene.rst:205 +msgid "message" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:206 +msgid "edited_message" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:207 +msgid "channel_post" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:208 +msgid "edited_channel_post" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:209 +msgid "inline_query" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:210 +msgid "chosen_inline_result" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:211 +msgid "callback_query" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:212 +msgid "shipping_query" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:213 +msgid "pre_checkout_query" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:214 +msgid "poll" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:215 +msgid "poll_answer" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:216 +msgid "my_chat_member" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:217 +msgid "chat_member" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:218 +msgid "chat_join_request" +msgstr "" + +#: ../../dispatcher/finite_state_machine/scene.rst:220 +msgid "Each event type can be filtered in the same way as in the Router." +msgstr "Кожен тип події можна відфільтрувати так само, як і в маршрутизаторі." + +#: ../../dispatcher/finite_state_machine/scene.rst:222 +msgid "" +"Also each event type can be marked as scene entry point, exit point or leave " +"point." +msgstr "" +"Також кожен тип події можна позначити як точку входу в сцену, точку виходу або " +"точку переходу." + +#: ../../dispatcher/finite_state_machine/scene.rst:224 +msgid "" +"If you want to mark the scene can be entered from message or inline query, you " +"should use :code:`on.message` or :code:`on.inline_query` marker:" +msgstr "" +"Якщо ви хочете позначити, що до сцени можна потрапити з повідомлення або ін-" +"лайн кнопки, вам слід використовувати маркер :code:`on.message` або :code:`on." +"inline_query`:" + +#: ../../dispatcher/finite_state_machine/scene.rst:239 +msgid "Scene has only tree points for transitions:" +msgstr "Сцени мають три точки для переходів:" + +#: ../../dispatcher/finite_state_machine/scene.rst:241 +msgid "enter point - when user enters to the scene" +msgstr "Точка входу - коли користувач входить до сцени" + +#: ../../dispatcher/finite_state_machine/scene.rst:242 +msgid "leave point - when user leaves the scene and the enter another scene" +msgstr "Точка переходу - коли користувач переходить до іншої сцени" + +#: ../../dispatcher/finite_state_machine/scene.rst:243 +msgid "exit point - when user exits from the scene" +msgstr "Точка виходу - коли користувач завершує сцену"