diff --git a/modules.json b/modules.json index 79dce3d..0b12db1 100644 --- a/modules.json +++ b/modules.json @@ -19441,6 +19441,7 @@ "user_not_found": " Пользователь не найден", "gift_menu": "🎁 Выберите категорию подарков.\n\n👤 Пользователь: {}\n📂 Текст: {}\n⭐️ Баланс: {} звезд", "category_menu": "🎁 Подарки за {} ⭐\n\n👤 Пользователь: {}\n📂 Текст: {}", + "unique_category_menu": "🎁 {}\n\n👤 Пользователь: {}\n📂 Текст: {}", "privacy_menu": "🎁 Выбран подарок: {}\n\nКак отправить подарок?", "sending_gift": "🛫 Отправка подарка...", "gift_sent": " Подарок успешно отправлен!", @@ -46620,9 +46621,6 @@ { "send": "[text] - Write a message | (RU) [text] - Написать сообщение | (UZ) [text] - xabar yozing | (DE) [text] - Nachricht schreiben | (ES) [text] - escribe un mensaje" }, - { - "sendclosedtopic": "[text or reply(media/file/sticker) or coordinates (, )] - Write a message to a closed topic | (RU) [text or reply(media/file/sticker) or coordinates (, )] - Написать сообщение в закрытую тему | (UZ) [text or reply(media/file/sticker) or coordinates (, )] - Yopiq mavzuga xabar yozing | (DE) [text or reply(media/file/sticker) or coordinates (, )] - Schreiben Sie eine Nachricht zu einem geschlossenen Thema | (ES) [text or reply(media/file/sticker) or coordinates (, )] - Escribir un mensaje a un tema cerrado" - }, { "sendpm": "[@UserName] [text or replay] - Write a message to personal messages | (RU) [@UserName] [text or replay] - Написать сообщение в личные сообщения | (UZ) [@UserName] [text or replay] - Shaxsiy xabarlarga xabar yozing | (DE) [@UserName] [text or replay] - Schreiben Sie eine Nachricht zu persönlichen Nachrichten | (ES) [@UserName] [text or replay] - Escribir un mensaje a mensajes personales." }, @@ -46648,23 +46646,6 @@ "is_inline_handler": false, "decorators": [] }, - { - "name": "sendclosedtopic", - "original_name": "sendclosedtopic", - "description": { - "default": "[text or reply(media/file/sticker) or coordinates (, )] - Write a message to a closed topic", - "ru": "[text or reply(media/file/sticker) or coordinates (, )] - Написать сообщение в закрытую тему", - "uz": "[text or reply(media/file/sticker) or coordinates (, )] - Yopiq mavzuga xabar yozing", - "de": "[text or reply(media/file/sticker) or coordinates (, )] - Schreiben Sie eine Nachricht zu einem geschlossenen Thema", - "es": "[text or reply(media/file/sticker) or coordinates (, )] - Escribir un mensaje a un tema cerrado" - }, - "cmd_names": {}, - "aliases": [], - "usage": null, - "inline": false, - "is_inline_handler": false, - "decorators": [] - }, { "name": "sendpm", "original_name": "sendpm", @@ -61901,6 +61882,181 @@ "has_on_unload": false, "class_cmd_names": {} }, + "fiksofficial/python-modules/github.py": { + "name": "GitHubMod", + "description": "GitHub repository monitor — commits, issues, PRs, releases and stars", + "cls_doc": { + "ru": "Мониторинг GitHub репозиториев — коммиты, issues, PR, релизы и звёзды" + }, + "meta": { + "pic": null, + "banner": null, + "developer": "@pymodule" + }, + "commands": [ + { + "github": "- Open GitHub Monitor control panel | (RU) - Открыть панель управления GitHub Monitor" + } + ], + "new_commands": [ + { + "name": "github", + "original_name": "githubcmd", + "description": { + "default": "- Open GitHub Monitor control panel", + "ru": "- Открыть панель управления GitHub Monitor" + }, + "cmd_names": {}, + "aliases": [], + "usage": null, + "inline": false, + "is_inline_handler": false, + "decorators": [] + } + ], + "inline_handlers": [], + "strings": { + "name": "GitHubMonitor", + "setup_welcome": "🐙 GitHub Monitor\n\nChoose a destination to configure.\nEach channel/group has its own repository list and settings.\nNotifications are sent on behalf of the bot.", + "enter_dest": "{icon} {label} setup\n\nEnter the @username or ID of the {label_lc}.\nThe bot will be added as admin automatically.", + "dest_not_found": "❌ Chat not found.\n\nCheck the @username or ID and try again.\nMake sure you are an admin of that chat.", + "dest_configured": "✅ {label} configured: {title}\n\nNow add the first repository to track\nin owner/repo format:", + "bot_invite_fail": "⚠️ Could not add the bot automatically.\nPlease add {bot} as admin with Post Messages right manually,\nthen open .github again.", + "dest_removed": "🗑 {title} removed.", + "repo_already": "⚠️ {repo} is already tracked in {title}.", + "repo_not_tracked": "⚠️ {repo} is not tracked in {title}.", + "repo_not_found": "❌ Repository {repo} not found or inaccessible.", + "repo_added": "✅ Added {repo} to {title}.", + "repo_removed": "✅ Removed {repo} from {title}.", + "no_dests": "❌ No destinations configured.\n\nRun .github to set up a channel or group.", + "setup_canceled": "❌ Setup canceled.", + "panel_title": "{icon} {title}\n\n📦 Repositories: {repos}\n📣 Events: {events}\n⏱ Interval: {interval}s\n🔑 Token: {token}", + "panel_repos_empty": "none", + "interval_invalid": "❌ Enter a number between 60 and 3600.", + "rate_limit": "⚠️ GitHub API rate limit.\nResets at {reset}.\nSet a personal token in the destination panel.", + "dests_list": "📋 Configured destinations:\n\n{list}", + "notify_push_header": "📏 On {repo}:{branch} new commits!\n{count} commits pushed.\nCompare changes", + "notify_push_commit": "\n
Commit #{sha} by {name} (@{login})\n{msg}\n\n{files_section}{diff_section}
", + "notify_push_footer": "", + "notify_push_created": "🔧 Created files:\n{files}\n\n", + "notify_push_removed": "🗑 Removed files:\n{files}\n\n", + "notify_push_modified": "🖊 Modified files:\n{files}\n\n", + "notify_push_diff": "⌨️ Diff:\n➕ {added}\n➖ {removed}\n", + "notify_push_empty": "📏 On {repo}:{branch} new empty push", + "notify_issue": "{e} On {repo} {action} issue!\n\n{title}\n#{num} by @{author}", + "notify_pr": "{e} On {repo} {action} pull request!\n\n{title}\n
{body}
\n\nUser: @{author}\n\n#{num}", + "notify_release": "{e} On {repo} {action} release!\n\n🏷 {tag} · {name}\n👤 @{author}\nOpen release", + "notify_star_added": "⭐️ On {repo} added star!\n\nTotal stars: {stars}\nUser: @{user}", + "notify_star_removed": "💔 On {repo} removed star!\n\nTotal stars: {stars}\nUser: @{user}", + "_cfg_interval": "Default polling interval in seconds (60–3600). Overridden per destination.", + "star_label": "⭐ Stars", + "_cfg_token": "Default GitHub token for destinations without a personal token.\nWithout token: 60 req/h. With token: 5000 req/h.\nCreate at: github.com/settings/tokens", + "push_label": "🔨 Push", + "issues_label": "🐛 Issues", + "pull_request_label": "🔀 Pull Requests", + "release_label": "🚀 Releases", + "token_set": "✅ set", + "token_not_set": "❌ not set", + "btn_channel": "➕ Channel", + "btn_group": "➕ Group", + "btn_close": "✖️ Close", + "btn_back": "◀️ Back", + "btn_skip": "⏩ Skip", + "btn_add_repo": "➕ Add repository", + "btn_set_interval": "⏱ Set interval", + "btn_set_token": "🔑 Set token", + "btn_clear_token": "🔑 Clear token", + "btn_remove": "🗑 Remove", + "btn_enter_dest": "✏️ Enter {label} username / ID", + "btn_add_repo_confirm": "✏️ Add repository", + "input_dest": "@username or ID of the {label}", + "input_repo": "owner/repo (e.g. torvalds/linux)", + "input_interval": "Interval in seconds (60 – 3600)", + "input_token": "GitHub Personal Access Token", + "repo_invalid_format": "❌ Invalid format. Use owner/repo.", + "checking_repo": "🔍 Checking repository...", + "issue_opened": "opened", + "issue_closed": "closed", + "pr_merged": "merged", + "pr_closed": "closed", + "pr_opened": "opened", + "release_prerelease": "pre-release", + "release_published": "published", + "dest_label_channel": "Channel", + "dest_label_group": "Group", + "name_ru": "GitHubMonitor", + "setup_welcome_ru": "🐙 GitHub Monitor\n\nВыберите назначение для настройки.\nУ каждого канала/группы свой список репозиториев и настройки.\nУведомления отправляются от имени бота.", + "enter_dest_ru": "{icon} Настройка {label_lc}а\n\nВведите @username или ID {label_lc}а.\nБот будет добавлен администратором автоматически.", + "dest_not_found_ru": "❌ Чат не найден.\n\nПроверьте @username или ID.\nУбедитесь, что вы администратор этого чата.", + "dest_configured_ru": "✅ {label} настроен: {title}\n\nТеперь добавьте первый репозиторий для отслеживания\nв формате owner/repo:", + "bot_invite_fail_ru": "⚠️ Не удалось добавить бота автоматически.\nДобавьте {bot} вручную как администратора с правом Публикация сообщений,\nзатем откройте .github снова.", + "dest_removed_ru": "🗑 {title} удалён.", + "repo_already_ru": "⚠️ {repo} уже отслеживается в {title}.", + "repo_not_tracked_ru": "⚠️ {repo} не отслеживается в {title}.", + "repo_not_found_ru": "❌ Репозиторий {repo} не найден или недоступен.", + "repo_added_ru": "✅ Репозиторий {repo} добавлен в {title}.", + "repo_removed_ru": "✅ Репозиторий {repo} удалён из {title}.", + "no_dests_ru": "❌ Нет настроенных назначений.\n\nЗапустите .github чтобы добавить канал или группу.", + "setup_canceled_ru": "❌ Настройка отменена.", + "panel_title_ru": "{icon} {title}\n\n📦 Репозитории: {repos}\n📣 События: {events}\n⏱ Интервал: {interval} сек\n🔑 Токен: {token}", + "panel_repos_empty_ru": "нет", + "interval_invalid_ru": "❌ Введите число от 60 до 3600.", + "rate_limit_ru": "⚠️ GitHub API rate limit.\nСброс в {reset}.\nУстановите токен в панели назначения.", + "dests_list_ru": "📋 Настроенные назначения:\n\n{list}", + "notify_push_header_ru": "📏 На {repo}:{branch} новые коммиты!\n{count} коммитов отправлено.\nСравнить изменения", + "notify_push_commit_ru": "\n
Коммит #{sha} от {name} (@{login})\n{msg}\n\n{files_section}{diff_section}
", + "notify_push_footer_ru": "", + "notify_push_created_ru": "🔧 Созданные файлы:\n{files}\n\n", + "notify_push_removed_ru": "🗑 Удалённые файлы:\n{files}\n\n", + "notify_push_modified_ru": "🖊 Изменённые файлы:\n{files}\n\n", + "notify_push_diff_ru": "⌨️ Diff:\n➕ {added}\n➖ {removed}\n", + "notify_push_empty_ru": "📏 На {repo}:{branch} пустой push", + "notify_issue_ru": "{e} На {repo} {action} issue!\n\n{title}\n#{num} от @{author}", + "notify_pr_ru": "{e} На {repo} {action} pull request!\n\n{title}\n
{body}
\n\nПользователь: @{author}\n\n#{num}", + "notify_release_ru": "{e} На {repo} {action} релиз!\n\n🏷 {tag} · {name}\n👤 @{author}\nОткрыть релиз", + "notify_star_added_ru": "⭐️ На {repo} добавлена звезда!\n\nВсего звёзд: {stars}\nПользователь: @{user}", + "notify_star_removed_ru": "💔 На {repo} убрана звезда!\n\nВсего звёзд: {stars}\nПользователь: @{user}", + "_cfg_interval_ru": "Интервал опроса по умолчанию (60–3600 сек). Переопределяется в настройках назначения.", + "star_label_ru": "⭐ Звёзды", + "_cfg_token_ru": "Глобальный GitHub-токен для назначений без персонального токена.\nБез токена: 60 запросов/час. С токеном: 5000.\nСоздать: github.com/settings/tokens", + "push_label_ru": "🔨 Push", + "issues_label_ru": "🐛 Issues", + "pull_request_label_ru": "🔀 Pull Requests", + "release_label_ru": "🚀 Релизы", + "token_set_ru": "✅ установлен", + "token_not_set_ru": "❌ не установлен", + "btn_channel_ru": "➕ Канал", + "btn_group_ru": "➕ Группа", + "btn_close_ru": "✖️ Закрыть", + "btn_back_ru": "◀️ Назад", + "btn_skip_ru": "⏩ Пропустить", + "btn_add_repo_ru": "➕ Добавить репозиторий", + "btn_set_interval_ru": "⏱ Установить интервал", + "btn_set_token_ru": "🔑 Установить токен", + "btn_clear_token_ru": "🔑 Очистить токен", + "btn_remove_ru": "🗑 Удалить", + "btn_enter_dest_ru": "✏️ Ввести {label} username / ID", + "btn_add_repo_confirm_ru": "✏️ Добавить репозиторий", + "input_dest_ru": "@username или ID {label}а", + "input_repo_ru": "owner/repo (например: torvalds/linux)", + "input_interval_ru": "Интервал в секундах (60 – 3600)", + "input_token_ru": "GitHub Personal Access Token", + "repo_invalid_format_ru": "❌ Неверный формат. Используйте owner/repo.", + "checking_repo_ru": "🔍 Проверяю репозиторий...", + "issue_opened_ru": "открыт", + "issue_closed_ru": "закрыт", + "pr_merged_ru": "смёрджен", + "pr_closed_ru": "закрыт", + "pr_opened_ru": "открыт", + "release_prerelease_ru": "пре-релиз", + "release_published_ru": "опубликован", + "dest_label_channel_ru": "Канал", + "dest_label_group_ru": "Группа" + }, + "has_on_load": false, + "has_on_unload": true, + "class_cmd_names": {} + }, "fiksofficial/python-modules/checkhost.py": { "name": "CheckHostMod", "description": "Check host via check-host.net", @@ -62999,7 +63155,7 @@ "no_reply_ru": "💬 Вы не ответили на сообщение пользователя" }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/animals.py": { @@ -64784,7 +64940,7 @@ "usage_ru": "Напиши .help Жаконизатор" }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/Music.py": { @@ -64946,7 +65102,7 @@ "error_ru": "Не удалось получить цитату. Попробуйте позже!" }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/TaskManager.py": { @@ -65401,6 +65557,53 @@ "has_on_unload": false, "class_cmd_names": {} }, + "archquise/H.Modules/SMArchiver.py": { + "name": "SMArchiver", + "description": "unloads all messages from Favorites", + "cls_doc": {}, + "meta": { + "pic": null, + "banner": null, + "developer": "@hikka_mods" + }, + "commands": [ + { + "smdump": "(RU) выгружает все сообщения из Избранного / Saved Messages и собирает их в одном архиве. | (EN) downloads all messages from Favorites / Saved Messages and collects them in one archive." + } + ], + "new_commands": [ + { + "name": "smdump", + "original_name": "smdump", + "description": { + "default": "", + "ru": "выгружает все сообщения из Избранного / Saved Messages и собирает их в одном архиве.", + "en": "downloads all messages from Favorites / Saved Messages and collects them in one archive." + }, + "cmd_names": {}, + "aliases": [], + "usage": null, + "inline": false, + "is_inline_handler": false, + "decorators": [] + } + ], + "inline_handlers": [], + "strings": { + "name": "SMArchiver", + "archive_created": "🎉 Archive with messages has been successfully created: {filename}", + "no_messages": "⚠️ There are no messages in Saved Messages.", + "error": "❌ An error occurred: {error}", + "processing": "🛠️ Processing messages... Please wait.\n\nP.S: Be careful, if you have a lot of messages, you may get flooding, and if you have a lot of heavy files, the download will be slower than usual.", + "archive_created_ru": "🎉 Архив с сообщениями успешно создан: {filename}", + "no_messages_ru": "⚠️ В Сохраненных сообщениях нет сообщений.", + "error_ru": "❌ Произошла ошибка: {error}", + "processing_ru": "🛠️ Обработка сообщений... Пожалуйста, подождите.\n\nP.S: Будьте осторожны, если у вас много сообщений, вы можете получить флуд, а если у вас много тяжелых файлов, загрузка будет медленнее обычного." + }, + "has_on_load": false, + "has_on_unload": false, + "class_cmd_names": {} + }, "archquise/H.Modules/CryptoCurrency.py": { "name": "CryptoCurrencyMod", "description": "Module for displaying current cryptocurrency exchange rates.", @@ -65441,7 +65644,7 @@ "coin_not_found_ru": "Криптовалюта '{query}' не найдена." }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/InlineCoin.py": { @@ -65604,53 +65807,6 @@ "has_on_unload": false, "class_cmd_names": {} }, - "archquise/H.Modules/SMAcrhiver.py": { - "name": "SMArchiver", - "description": "unloads all messages from Favorites", - "cls_doc": {}, - "meta": { - "pic": null, - "banner": null, - "developer": "@hikka_mods" - }, - "commands": [ - { - "smdump": "(RU) выгружает все сообщения из Избранного / Saved Messages и собирает их в одном архиве. | (EN) downloads all messages from Favorites / Saved Messages and collects them in one archive." - } - ], - "new_commands": [ - { - "name": "smdump", - "original_name": "smdump", - "description": { - "default": "", - "ru": "выгружает все сообщения из Избранного / Saved Messages и собирает их в одном архиве.", - "en": "downloads all messages from Favorites / Saved Messages and collects them in one archive." - }, - "cmd_names": {}, - "aliases": [], - "usage": null, - "inline": false, - "is_inline_handler": false, - "decorators": [] - } - ], - "inline_handlers": [], - "strings": { - "name": "SMArchiver", - "archive_created": "🎉 Archive with messages has been successfully created: {filename}", - "no_messages": "⚠️ There are no messages in Saved Messages.", - "error": "❌ An error occurred: {error}", - "processing": "🛠️ Processing messages... Please wait.\n\nP.S: Be careful, if you have a lot of messages, you may get flooding, and if you have a lot of heavy files, the download will be slower than usual.", - "archive_created_ru": "🎉 Архив с сообщениями успешно создан: {filename}", - "no_messages_ru": "⚠️ В Сохраненных сообщениях нет сообщений.", - "error_ru": "❌ Произошла ошибка: {error}", - "processing_ru": "🛠️ Обработка сообщений... Пожалуйста, подождите.\n\nP.S: Будьте осторожны, если у вас много сообщений, вы можете получить флуд, а если у вас много тяжелых файлов, загрузка будет медленнее обычного." - }, - "has_on_load": false, - "has_on_unload": false, - "class_cmd_names": {} - }, "archquise/H.Modules/TempChat.py": { "name": "TempChatMod", "description": "Creates a temporary private chat with a message forwarding restriction and adds the specified user to it.", @@ -65866,20 +66022,76 @@ "class_cmd_names": {} }, "archquise/H.Modules/AniLiberty.py": { - "name": "AniLiberty", - "description": "", + "name": "AniLibertyMod", + "description": "Ищет и возвращает случайное аниме из базы Aniliberty", "cls_doc": {}, "meta": { "pic": null, "banner": null, "developer": "@hikka_mods" }, - "commands": [], - "new_commands": [], - "inline_handlers": [], - "strings": {}, + "commands": [ + { + "arandom": "(RU) Возвращает случайный релиз из базы | (EN) Returns a random release from the database" + }, + { + "asearchinlinehandler": "" + } + ], + "new_commands": [ + { + "name": "arandom", + "original_name": "arandom", + "description": { + "default": "", + "ru": "Возвращает случайный релиз из базы", + "en": "Returns a random release from the database" + }, + "cmd_names": {}, + "aliases": [], + "usage": null, + "inline": false, + "is_inline_handler": false, + "decorators": [] + }, + { + "name": "asearchinlinehandler", + "original_name": "asearch_inline_handler", + "description": { + "default": "" + }, + "cmd_names": {}, + "aliases": [], + "usage": null, + "inline": true, + "is_inline_handler": true, + "decorators": [] + } + ], + "inline_handlers": [ + { + "name": "asearchinlinehandler", + "description": { + "default": "" + }, + "decorators": [] + } + ], + "strings": { + "name": "AniLiberty", + "announce": "The announcement:", + "ongoing": "Ongoing:", + "type": "Type:", + "genres": "Genres:", + "favorite": "Favourites <3:", + "announce_ru": "Анонс:", + "ongoing_ru": "Онгоинг:", + "type_ru": "Тип:", + "genres_ru": "Жанры:", + "favorite_ru": "Избранное <3:" + }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/GigaChat.py": { @@ -66846,7 +67058,7 @@ "error_ru": "Произошла ошибка!" }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/CodeShare.py": { @@ -66893,7 +67105,7 @@ "link_ready_ru": " Код загружен! Ссылка: {}" }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/KBSwapper.py": { @@ -67202,13 +67414,13 @@ }, "commands": [ { - "addfolder": "Adds folder to the tracking list by it's name. Usage: .addfolder FolderName | (R) Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки | (RU) Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки" + "addfolder": "Adds folder to the tracking list by it's name. Usage: .addfolder FolderName | (RU) Добавить папку в список отслеживания | (EN) Add folder to the tracking list | (R) Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки | (RU) Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки" }, { - "delfolder": "Deletes folder from the tracking list | (R) Удаляет папку из списка для отслежнивания | (RU) Удаляет папку из списка для отслежнивания" + "delfolder": "Deletes folder from the tracking list | (RU) Удалить папку из списка отслеживания | (EN) Delete folder from the tracking list | (R) Удаляет папку из списка для отслежнивания | (RU) Удаляет папку из списка для отслежнивания" }, { - "listfolders": "Prints list of tracked folders | (R) Выводит список отслеживаемых папок | (RU) Выводит список отслеживаемых папок" + "listfolders": "Prints list of tracked folders | (RU) Список отслеживаемых папок | (EN) List tracked folders | (R) Выводит список отслеживаемых папок | (RU) Выводит список отслеживаемых папок" } ], "new_commands": [ @@ -67217,8 +67429,9 @@ "original_name": "addfolder", "description": { "default": "Adds folder to the tracking list by it's name. Usage: .addfolder FolderName", - "r": "Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки", - "ru": "Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки" + "ru": "Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки", + "en": "Add folder to the tracking list", + "r": "Добавляет папки в список отслеживания по их названию. Использование: .addfolder НазваниеПапки" }, "cmd_names": {}, "aliases": [], @@ -67232,8 +67445,9 @@ "original_name": "delfolder", "description": { "default": "Deletes folder from the tracking list", - "r": "Удаляет папку из списка для отслежнивания", - "ru": "Удаляет папку из списка для отслежнивания" + "ru": "Удаляет папку из списка для отслежнивания", + "en": "Delete folder from the tracking list", + "r": "Удаляет папку из списка для отслежнивания" }, "cmd_names": {}, "aliases": [], @@ -67247,8 +67461,9 @@ "original_name": "listfolders", "description": { "default": "Prints list of tracked folders", - "r": "Выводит список отслеживаемых папок", - "ru": "Выводит список отслеживаемых папок" + "ru": "Выводит список отслеживаемых папок", + "en": "List tracked folders", + "r": "Выводит список отслеживаемых папок" }, "cmd_names": {}, "aliases": [], @@ -67283,7 +67498,7 @@ "addfolder_ru": "📁 Папка успешно добавлена в лист отслеживания!" }, "has_on_load": false, - "has_on_unload": true, + "has_on_unload": false, "class_cmd_names": {} }, "archquise/H.Modules/shortener.py": { @@ -67356,7 +67571,7 @@ "api_error_ru": " Ошибка API: {error}" }, "has_on_load": false, - "has_on_unload": false, + "has_on_unload": true, "class_cmd_names": {} }, "archquise/H.Modules/timezone.py": { @@ -82079,7 +82294,7 @@ } }, "meta": { - "total_modules": 1020, - "generated_at": "2026-03-03T01:28:23.435183" + "total_modules": 1021, + "generated_at": "2026-03-11T01:22:17.528364" } } \ No newline at end of file