diff --git a/CHANGELOG.md b/CHANGELOG.md index d69c0f23..163d03d3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,36 @@ and this project adheres to ## [Unreleased] +## [0.5.0] - 2026-03-16 + +### Added + +- Add autoreply feature with scheduling support #569 +- Add an action to split a thread from a message #561 +- Add starred/important thread feature scoped per mailbox #581 +- Add unread and starred filters in thread panel #581 +- Add better filtering and granularity for usage metrics +- Expose `oidc_autojoin` and `identity_sync` flags in provisioning API + +### Changed + +- Customize thread panel bulk actions according to selection state +- Rename usage API params to be more generic #589 +- Remove per-message starred in favor of thread-level starred #588 + + _⚠️ This migration requires a search reindex to be run after the upgrade._ + +- Use `url_permalink` from Drive and limit requests to Drive resource server #587 + +### Fixed + +- Make DNS checking more resilient +- Remove `mailbox.id` from metrics + +### Security + +- Prevent XSS and URL redirect in shallow navigation + ## [0.4.0] - 2026-03-05 ### Added @@ -135,7 +165,8 @@ and this project adheres to - Exclude `is_trashed` and `is_spam` threads from search results by default - `to` search modifier now looks for messages where recipient fields (to, cc, bcc) contain the given email address. -[unreleased]: https://github.com/suitenumerique/messages/compare/v0.4.0...main +[unreleased]: https://github.com/suitenumerique/messages/compare/v0.5.0...main +[0.5.0]: https://github.com/suitenumerique/messages/compare/v0.4.0...v0.5.0 [0.4.0]: https://github.com/suitenumerique/messages/compare/v0.3.0...v0.4.0 [0.3.0]: https://github.com/suitenumerique/messages/compare/v0.2.0...v0.3.0 [0.2.0]: https://github.com/suitenumerique/messages/releases/v0.2.0 diff --git a/src/backend/pyproject.toml b/src/backend/pyproject.toml index 34594201..0a28a6d4 100644 --- a/src/backend/pyproject.toml +++ b/src/backend/pyproject.toml @@ -4,7 +4,7 @@ [project] name = "messages-backend" -version = "0.4.0" +version = "0.5.0" authors = [{ "name" = "ANCT", "email" = "suiteterritoriale@anct.gouv.fr" }] classifiers = [ "Development Status :: 5 - Production/Stable", diff --git a/src/backend/uv.lock b/src/backend/uv.lock index 0668629a..d3f3644e 100644 --- a/src/backend/uv.lock +++ b/src/backend/uv.lock @@ -1213,7 +1213,7 @@ wheels = [ [[package]] name = "messages-backend" -version = "0.4.0" +version = "0.5.0" source = { editable = "." } dependencies = [ { name = "boto3" }, diff --git a/src/e2e/package-lock.json b/src/e2e/package-lock.json index a5cdcf84..1b980992 100644 --- a/src/e2e/package-lock.json +++ b/src/e2e/package-lock.json @@ -1,12 +1,12 @@ { "name": "st-messages-e2e", - "version": "0.4.0", + "version": "0.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "st-messages-e2e", - "version": "0.4.0", + "version": "0.5.0", "hasInstallScript": true, "license": "MIT", "devDependencies": { diff --git a/src/e2e/package.json b/src/e2e/package.json index 6b576e66..8d05cc4a 100644 --- a/src/e2e/package.json +++ b/src/e2e/package.json @@ -1,7 +1,7 @@ { "name": "st-messages-e2e", "private": true, - "version": "0.4.0", + "version": "0.5.0", "description": "End-to-end tests for Messages application", "engines": { "node": ">=22.0.0 <23.0.0", diff --git a/src/frontend/package-lock.json b/src/frontend/package-lock.json index 9e97237b..072bfdc4 100644 --- a/src/frontend/package-lock.json +++ b/src/frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "st-messages", - "version": "0.4.0", + "version": "0.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "st-messages", - "version": "0.4.0", + "version": "0.5.0", "dependencies": { "@blocknote/core": "0.46.2", "@blocknote/mantine": "0.46.2", diff --git a/src/frontend/package.json b/src/frontend/package.json index 4c74e01d..8e1574c3 100644 --- a/src/frontend/package.json +++ b/src/frontend/package.json @@ -1,6 +1,6 @@ { "name": "st-messages", - "version": "0.4.0", + "version": "0.5.0", "private": true, "type": "module", "engines": { diff --git a/src/frontend/public/locales/common/fr-FR.json b/src/frontend/public/locales/common/fr-FR.json index d3749218..826ec33b 100644 --- a/src/frontend/public/locales/common/fr-FR.json +++ b/src/frontend/public/locales/common/fr-FR.json @@ -41,9 +41,9 @@ "{{count}} months ago_one": "il y a {{count}} mois", "{{count}} months ago_many": "il y a {{count}} mois", "{{count}} months ago_other": "il y a {{count}} mois", - "{{count}} occurrences_one": "{{count}} occurrence", - "{{count}} occurrences_many": "{{count}} occurrences", - "{{count}} occurrences_other": "{{count}} occurrences", + "{{count}} occurrences_one": "{{count}} événement", + "{{count}} occurrences_many": "{{count}} événements", + "{{count}} occurrences_other": "{{count}} événements", "{{count}} results_one": "{{count}} résultat", "{{count}} results_many": "{{count}} résultats", "{{count}} results_other": "{{count}} résultats", diff --git a/src/frontend/public/locales/common/nl-NL.json b/src/frontend/public/locales/common/nl-NL.json index 03b35b96..03dc70f8 100644 --- a/src/frontend/public/locales/common/nl-NL.json +++ b/src/frontend/public/locales/common/nl-NL.json @@ -29,6 +29,8 @@ "{{count}} occurrences_other": "{{count}} gebeurtenisen", "{{count}} results_one": "{{count}} resultaat", "{{count}} results_other": "{{count}} resultaten", + "{{count}} selected threads_one": "{{count}} geselecteerde thread", + "{{count}} selected threads_other": "{{count}} geselecteerde threads", "{{count}} threads have been archived._one": "De thread is gearchiveerd.", "{{count}} threads have been archived._other": "{{count}} berichten zijn gearchiveerd.", "{{count}} threads have been deleted._one": "De thread is verwijderd.", @@ -83,8 +85,6 @@ "and {{count}} other users_other": "en {{count}} andere gebruikers", "API Key": "API Key", "Archive": "Archief", - "Archive {{count}} threads_one": "Archief {{count}} thread", - "Archive {{count}} threads_other": "Archief {{count}} threads", "Archives": "Archieven", "Are you sure you want to close this dialog? Your upload will be aborted!": "Weet u zeker dat u deze dialoog wilt sluiten? Uw upload wordt afgebroken!", "Are you sure you want to delete this draft? This action cannot be undone.": "Weet u zeker dat u dit concept wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.", @@ -166,8 +166,6 @@ "Default signature": "Standaard handtekening", "Delegated": "Overgedragen", "Delete": "Verwijderen", - "Delete {{count}} threads_one": "Verwijder {{count}} Thread", - "Delete {{count}} threads_other": "Verwijder {{count}} threads", "Delete draft": "Concept verwijderen", "Delete integration \"{{name}}\"": "Integratie verwijderen \"{{name}}\"", "Delete label \"{{label}}\"": "Verwijder label \"{{label}}\"", @@ -313,13 +311,8 @@ "Maildomains management": "Maildomeinen beheer", "Manage {{entity}} accesses": "{{entity}} toegang beheren", "Manage accesses": "Beheer toegang", - "Mark {{count}} threads as read_one": "Markeer {{count}} discussie als gelezen", - "Mark {{count}} threads as read_other": "Markeer {{count}} discussie als gelezen", - "Mark {{count}} threads as unread_one": "{{count}} discussie markeren als ongelezen", - "Mark {{count}} threads as unread_other": "{{count}} threads markeren als ongelezen", "Mark all as read": "Alles markeren als gelezen", "Mark all as unread": "Alles markeren als ongelezen", - "Mark as important": "Markeer als belangrijk", "Mark as read": "Markeren als gelezen", "Mark as read from here": "Markeer als gelezen vanaf hier", "Mark as unread": "Markeer als gelezen", @@ -352,14 +345,11 @@ "No DNS records found": "Geen DNS-records gevonden", "No event found in calendar invite": "Geen afspraak gevonden in agenda uitnodiging", "No integration found": "Geen integratie gevonden", - "No mailbox": "Geen mailbox", - "No results": "Geen resultaten", "No signature": "Geen handtekening", "No signatures found": "Geen handtekeningen gevonden", "No subject": "Geen onderwerp", "No summary available.": "Geen samenvatting beschikbaar.", "No template found": "Geen sjabloon gevonden", - "No threads": "Geen kanalen", "Open {{driveAppName}} preview": "Open {{driveAppName}} voorbeeld", "Open filters": "Open filters", "Open the menu": "Menu openen", @@ -385,13 +375,9 @@ "Remove": "Verwijderen", "Remove report": "Rapport verwijderen", "Remove spam report": "Spam rapport verwijderen", - "Remove spam report from {{count}} threads_one": "Verwijder spamrapport van {{count}} thread", - "Remove spam report from {{count}} threads_other": "Verwijder spamrapport van {{count}} thread", "Remove tag": "Verwijder tag", "Reply": "Antwoorden", "Reply all": "Allen beantwoorden", - "Report {{count}} threads as spam_one": "Rapporteer {{count}} Thread als spam", - "Report {{count}} threads as spam_other": "Rapporteer {{count}} Thread als spam", "Report as spam": "Als spam melden", "Reset": "Reset", "Reset password": "Reset wachtwoord", @@ -418,6 +404,7 @@ "Send Feedback": "Feedback Versturen", "Sending message...": "Bericht verzenden...", "Sent": "Verzonden", + "Sent by {{name}}": "Verzonden door {{name}}", "Settings": "Instellingen", "Share access": "Toegang delen", "Share the credentials of this mailbox with its user. You must transfer them securely, preferably physically.": "Deel de inloggegevens van deze mailbox met zijn gebruiker. U moet deze veilig overdragen, bij voorkeur fysiek.", @@ -438,6 +425,7 @@ "Signatures for {{mailbox}}": "Handtekeningen voor {{mailbox}}", "Simple and intuitive messaging": "Eenvoudige en intuïtieve berichten", "Simple redirect (Coming soon)": "Eenvoudige doorverwijzing (binnenkort beschikbaar)", + "Skip to main content": "Ga naar hoofdinhoud", "Some messages have not been delivered to all recipients.": "Sommige berichten zijn niet aan alle ontvangers afgeleverd.", "Some recipients have not received this message!": "Sommige ontvangers hebben dit bericht niet ontvangen!", "Spam": "Spam", @@ -509,11 +497,7 @@ "Unable to copy credentials.": "Kan de inloggegevens niet kopiëren.", "Unable to copy to clipboard.": "Kan niet kopiëren naar Klembord.", "Unarchive": "Dearchiveren", - "Unarchive {{count}} threads_one": "Dearchiveer {{count}} Thread", - "Unarchive {{count}} threads_other": "Dearchiveer {{count}} threads", "Undelete": "Terugzetten", - "Undelete {{count}} threads_one": "Herstel {{count}} discussie", - "Undelete {{count}} threads_other": "Herstel {{count}} threads", "Undo": "Annuleren", "Unfold message": "Bericht uitvouwen", "Unknown": "Onbekend", diff --git a/src/frontend/public/locales/common/ru-RU.json b/src/frontend/public/locales/common/ru-RU.json index 9e4d125d..ebf5c831 100644 --- a/src/frontend/public/locales/common/ru-RU.json +++ b/src/frontend/public/locales/common/ru-RU.json @@ -9,6 +9,8 @@ "{{count}} hours ago_other": "{{count}} ч. назад", "{{count}} messages_one": "{{count}} сообщение", "{{count}} messages_other": "{{count}} сообщений", + "{{count}} messages are now starred._one": "Сообщение помечено.", + "{{count}} messages are now starred._other": "Сообщения помечены: {{count}}.", "{{count}} messages have been archived._one": "Сообщение архивировано.", "{{count}} messages have been archived._other": "Сообщения архивированы ({{count}}).", "{{count}} messages have been deleted._one": "Сообщение удалено.", @@ -31,6 +33,12 @@ "{{count}} results_other": "Результатов: {{count}}", "{{count}} selected threads_one": "Выбрано обсуждений: {{count}}", "{{count}} selected threads_other": "Выбрано обсуждений: {{count}}", + "{{count}} starred messages_one": "Сообщения помечены: {{count}}", + "{{count}} starred messages_other": "Сообщения помечены: {{count}}", + "{{count}} starred results_one": "Результатов помечено: {{count}}", + "{{count}} starred results_other": "Результатов помечено: {{count}}", + "{{count}} threads are now starred._one": "Обсуждение помечено.", + "{{count}} threads are now starred._other": "Обсуждений помечено: {{count}}.", "{{count}} threads have been archived._one": "Обсуждение архивировано.", "{{count}} threads have been archived._other": "Обсуждения архивированы ({{count}}).", "{{count}} threads have been deleted._one": "Обсуждение было удалено.", @@ -45,6 +53,14 @@ "{{count}} threads have been updated._other": "Обсуждения обновлены ({{count}}).", "{{count}} threads selected_one": "Выбрано {{count}} обсуждение", "{{count}} threads selected_other": "Выбрано {{count}} обсуждений", + "{{count}} unread messages_one": "Непрочитанных сообщений: {{count}}", + "{{count}} unread messages_other": "Непрочитанных сообщений: {{count}}", + "{{count}} unread results_one": "Непрочитанных результатов: {{count}}", + "{{count}} unread results_other": "Непрочитанных результатов: {{count}}", + "{{count}} unread starred messages_one": "Непрочитанных помеченных сообщений: {{count}}", + "{{count}} unread starred messages_other": "Непрочитанных помеченных сообщений: {{count}}", + "{{count}} unread starred results_one": "Непрочитанных помеченных результатов: {{count}}", + "{{count}} unread starred results_other": "Непрочитанных помеченных результатов: {{count}}", "{{count}} weeks ago_one": "{{count}} неделю назад", "{{count}} weeks ago_other": "{{count}} недель назад", "{{count}} years ago_one": "{{count}} год назад", @@ -57,6 +73,7 @@ "Accesses": "Доступы", "Actions": "Действия", "Active": "Активный", + "Active filters: {{filters}}": "Активные фильтры: {{filters}}", "Add a contact form widget to your website to receive messages directly in your mailbox.": "Добавьте виджет контактной формы на свой сайт, чтобы получать сообщения прямо в свой почтовый ящик.", "Add a domain": "Добавить домен", "Add a sub-label": "Добавить вложенный ярлык", @@ -70,6 +87,7 @@ "Addresses": "Адреса", "After creating the widget, you will receive the installation code to add to your website.": "После создания виджета вы получите установочный код для добавления на ваш сайт.", "All messages": "Все сообщения", + "Always": "Всегда", "An address with this prefix already exists in this domain.": "Адрес с этим префиксом уже существует в этом домене.", "An archive is uploading": "Архив выгружен", "An error occurred while creating the address.": "Ошибка при создании адреса.", @@ -85,10 +103,9 @@ "and {{count}} other users_other": "и {{count}} других пользователей", "API Key": "Ключ API", "Archive": "Архивировать", - "Archive {{count}} threads_one": "Архивировать обсуждения ({{count}})", - "Archive {{count}} threads_other": "Архивировать обсуждения ({{count}})", "Archives": "Архивы", "Are you sure you want to close this dialog? Your upload will be aborted!": "Вы уверены, что хотите закрыть это окно? Выгрузка будет прервана!", + "Are you sure you want to delete this auto-reply? This action is irreversible!": "Вы уверены, что хотите удалить этот автоответчик? Это действие необратимо!", "Are you sure you want to delete this draft? This action cannot be undone.": "Вы уверены, что хотите удалить этот черновик? Это действие нельзя отменить.", "Are you sure you want to delete this integration? This action is irreversible!": "Вы уверены, что хотите удалить эту интеграцию? Это действие необратимо!", "Are you sure you want to delete this label? This action is irreversible!": "Вы уверены, что хотите удалить этот ярлык? Это действие необратимо!", @@ -104,6 +121,12 @@ "Attachments must be less than {{size}}.": "Вложения должны быть меньше, чем {{size}}.", "Authentication failed. Please check your credentials and ensure you have enabled IMAP connections in your account.": "Ошибка аутентификации. Пожалуйста, проверьте учётные данные и убедитесь, что вы включили IMAP соединения в вашей учётной записи.", "Auto-labeling": "Автомаркировка ярлыками", + "Auto-replies are configured per mailbox. Only one auto-reply can be active at a time.": "Автоответчики настраиваются для каждого почтового ящика. Одновременно может быть включен только один из них.", + "Auto-replies for {{mailbox}}": "Автоответчики для {{mailbox}}", + "Auto-reply created!": "Автоответчик создан!", + "Auto-reply deleted!": "Автоответчик удален!", + "Auto-reply is active": "Автоответчик активен", + "Auto-reply updated!": "Автоответчик обновлён!", "Automatically create mailboxes according to OIDC emails": "Автоматически создавать почтовые ящики в соответствии с адресами OIDC", "Awaiting response": "Ожидание ответа", "Back": "Назад", @@ -119,6 +142,7 @@ "Check DNS again": "Повторить проверку DNS", "Checking DNS records...": "Проверка записей DNS...", "Choose the type of integration you want to create": "Выберите тип интеграции, который вы хотите создать", + "Clear filters": "Сбросить фильтры", "Clear selected items": "Очистить выбранные элементы", "Click to add accesses": "Нажмите, чтобы добавить доступ", "Close": "Закрыть", @@ -144,6 +168,7 @@ "Create": "Создать", "Create a Label": "Создать ярлык", "Create a new address @{{domain}}": "Создать новый адрес @{{domain}}", + "Create a new auto-reply": "Создать новый автоответчик", "Create a new integration": "Создать новую интеграцию", "Create a new label": "Создать новый ярлык", "Create a new personal mailbox": "Создать новый личный почтовый ящик", @@ -161,6 +186,7 @@ "Credentials copied!": "Учётные данные скопированы!", "Current status": "Текущее состояние", "Daily": "Ежедневно", + "Date range": "Диапазон дат", "Date:": "Дата:", "Date: ": "Дата: ", "Declined": "Отклонено", @@ -168,8 +194,7 @@ "Default signature": "Подпись по умолчанию", "Delegated": "Делегировано", "Delete": "Удалить", - "Delete {{count}} threads_one": "Удалить обсуждения ({{count}})", - "Delete {{count}} threads_other": "Удалить обсуждения ({{count}})", + "Delete auto-reply \"{{autoreply}}\"": "Удалить автоответчик \"{{autoreply}}\"", "Delete draft": "Удалить черновик", "Delete integration \"{{name}}\"": "Удалить интеграцию \"{{name}}\"", "Delete label \"{{label}}\"": "Удалить ярлык \"{{label}}\"", @@ -204,14 +229,22 @@ "Duplicate": "Создать копию", "Edit": "Изменить", "Edit {{mailbox}} address": "Изменить адрес {{mailbox}}", + "Edit auto-reply \"{{autoreply}}\"": "Изменить автоответчик \"{{autoreply}}\"", "Edit signature \"{{signature}}\"": "Изменить подпись \"{{signature}}\"", "Edit template \"{{template}}\"": "Изменить шаблон \"{{template}}\"", "Edit Widget": "Настроить виджет", "Email address": "Адрес электронной почты", "EML, MBOX or PST": "EML, MBOX или PST", + "End date": "Дате окончания", + "End date is required": "Дата окончания обязательна", + "End day": "День завершения", + "End day is required": "Требуется указать день завершения", + "End time": "Время завершения", + "End time is required": "Требуется указать время завершения", "Enter the email addresses of the recipients separated by commas": "Введите адреса электронной почты получателей, разделённые запятыми", "Error while checking DNS records": "Ошибка при проверке записей DNS", "Error while loading addresses": "Ошибка при загрузке адресов", + "Error while loading auto-replies": "Ошибка при загрузке автоответчиков", "Error while loading integrations": "Ошибка при загрузке интеграций", "Error while loading signatures": "Ошибка при загрузке подписей", "Error while loading templates": "Ошибка при загрузке шаблонов", @@ -225,16 +258,22 @@ "Every {{count}} years_other": "Каждые {{count}} лет", "Expand": "Развернуть", "Expand all": "Развернуть всё", + "Failed to delete auto-reply.": "Не удалось удалить автоответчик.", "Failed to delete integration.": "Не удалось удалить интеграцию.", "Failed to delete signature.": "Не удалось удалить подпись.", "Failed to delete template.": "Не удалось удалить шаблон.", + "Failed to load auto-reply. Please try again.": "Не удалось загрузить автоответчик. Пожалуйста, попробуйте ещё раз.", "Failed to load calendar invite": "Не удалось загрузить приглашение в календарь", "Failed to load signature. Please try again.": "Не удалось загрузить подпись. Пожалуйста, попробуйте ещё раз.", "Failed to load template. Please try again.": "Не удалось загрузить шаблон. Пожалуйста, попробуйте ещё раз.", "Failed to refresh summary.": "Не удалось обновить сводку.", + "Failed to save auto-reply. Please try again.": "Не удалось сохранить автоответчик. Пожалуйста, попробуйте ещё раз.", "Failed to save signature. Please try again.": "Не удалось сохранить подпись. Пожалуйста, попробуйте ещё раз.", "Failed to save template. Please try again.": "Не удалось сохранить шаблон. Пожалуйста, попробуйте ещё раз.", + "Failed to update auto-reply.": "Не удалось обновить автоответчик.", "Failed to update signature.": "Не удалось обновить подпись.", + "Filter by: {{filters}}": "Фильтровать по: {{filters}}", + "Filter threads": "Фильтр обсуждений", "First name": "Имя", "First name is required.": "Необходимо указать имя.", "First, we need some information about your old mailbox": "Для начала нам нужна информация о старом почтовом ящике", @@ -245,6 +284,7 @@ "Forced signature": "Обязательная подпись", "Forward": "Переслать", "Forwarded message": "Пересланное сообщение", + "Friday": "Пятница", "From": "От", "From:": "От:", "From: ": "От: ", @@ -298,6 +338,8 @@ "Layout": "Макет", "less than a minute ago": "меньше минуты назад", "Loading addresses...": "Загрузка адресов...", + "Loading auto-replies...": "Загрузка автоответчиков...", + "Loading auto-reply...": "Загрузка автоответчика...", "Loading calendar invite...": "Загрузка приглашения в календарь...", "Loading integrations...": "Загрузка интеграций...", "Loading labels...": "Загрузка ярлыков...", @@ -315,13 +357,8 @@ "Maildomains management": "Управление почтовыми доменами", "Manage {{entity}} accesses": "Управление доступом {{entity}}", "Manage accesses": "Управление доступом", - "Mark {{count}} threads as read_one": "Отметить {{count}} обсуждение как прочитанное", - "Mark {{count}} threads as read_other": "Отметить {{count}} обсуждений как прочитанные", - "Mark {{count}} threads as unread_one": "Отметить {{count}} обсуждение как непрочитанное", - "Mark {{count}} threads as unread_other": "Отметить {{count}} обсуждений как непрочитанные", "Mark all as read": "Отметить все как прочитанные", "Mark all as unread": "Отметить все как непрочитанные", - "Mark as important": "Отметить как важное", "Mark as read": "Отметить как прочитанное", "Mark as read from here": "Отметить как прочитанное, начиная отсюда", "Mark as unread": "Отметить как непрочитанное", @@ -333,9 +370,11 @@ "Messaging": "Переписка", "Missing": "Отсутствует", "Modify": "Изменить", + "Monday": "Понедельник", "Monthly": "Ежемесячно", "More": "Ещё", "More options": "Больше параметров", + "My auto-replies": "Мои автоответчики", "My message templates": "Мои шаблоны сообщений", "My signatures": "Мои подписи", "Name": "Имя", @@ -343,6 +382,7 @@ "Name is required.": "Имя обязательно.", "Name must be a valid domain name.": "Имя должно быть допустимым доменным именем.", "New address": "Новый адрес", + "New auto-reply": "Новый автоответчик", "New domain": "Новый домен", "New integration": "Новая интеграция", "New message": "Новое сообщение", @@ -351,17 +391,20 @@ "No accesses": "Нет доступа", "No addresses found": "Адреса не найдены", "No attachments": "Без вложений", + "No auto-replies found": "Автоответчики не найдены", "No DNS records found": "DNS записи не найдены", "No event found in calendar invite": "Не найдено событий в приглашении календаря", "No integration found": "Интеграции не найдены", - "No mailbox": "Нет почтового ящика", - "No results": "Ничего не найдено", + "No mailbox": "Нет почтовых ящиков", + "No results": "Нет результатов", "No signature": "Без подписи", "No signatures found": "Подписи не найдены", "No subject": "Без темы", "No summary available.": "Сводка недоступна.", "No template found": "Шаблон не найден", "No threads": "Нет обсуждений", + "No threads match the active filters": "Нет обсуждений, соответствующих активным фильтрам", + "On going": "В процессе", "Open {{driveAppName}} preview": "Открыть предпросмотр {{driveAppName}}", "Open filters": "Открыть фильтры", "Open the menu": "Открыть меню", @@ -381,28 +424,28 @@ "Read": "Читать", "Read state": "Состояние чтения", "Recurring": "Повторяющееся", + "Recurring weekly": "Повторение еженедельно", "Redirection": "Переадресация", "Refresh": "Обновить", "Refresh summary": "Обновить сводку", "Remove": "Удалить", "Remove report": "Удалить отчёт", "Remove spam report": "Удалить отчёт о спаме", - "Remove spam report from {{count}} threads_one": "Удалить отметку о спаме из обсуждений ({{count}})", - "Remove spam report from {{count}} threads_other": "Удалить отметку о спаме из обсуждений ({{count}})", "Remove tag": "Удалить тег", "Reply": "Ответить", "Reply all": "Ответить всем", - "Report {{count}} threads as spam_one": "Обсуждения помечены как спам ({{count}})", - "Report {{count}} threads as spam_other": "Обсуждения отмечены как спам ({{count}})", "Report as spam": "Сообщить о спаме", "Reset": "Сброс", "Reset password": "Сбросить пароль", "Reset password of {{mailbox}}": "Сбросить пароль для учётной записи {{mailbox}}", "Retry": "Повторить", + "Saturday": "Суббота", "Save": "Сохранить", "Save changes": "Сохранить изменения", "Save into your {{driveAppName}}'s workspace": "Сохранить в {{driveAppName}}", "Saving...": "Сохранение...", + "Schedule": "Расписание", + "Scheduled": "Запланировано", "Search": "Поиск", "Search a label": "Поиск ярлыка", "Search a tag": "Поиск по тегу", @@ -447,6 +490,18 @@ "Spam": "Спам", "Spam report removed from {{count}} threads._one": "Отметка о спаме снята с обсуждения.", "Spam report removed from {{count}} threads._other": "Отметка о спаме снята с обсуждений ({{count}}).", + "Split thread": "Разделить обсуждения", + "Split thread from here": "Разделить обсуждения с этого места", + "Star": "Пометить", + "Star this thread": "Пометить это обсуждение", + "Starred": "Помеченные", + "Start date": "Дата начала", + "Start date is required": "Необходимо ввести дату начала", + "Start date must be before end date": "Дата начала должна быть до даты завершения", + "Start day": "Дата начала", + "Start day is required": "Необходимо ввести дату начала", + "Start time": "Время начала", + "Start time is required": "Необходимо указать время начала", "Start typing...": "Начните писать...", "Subject": "Тема", "Subject template": "Шаблон темы", @@ -456,6 +511,7 @@ "Summarize": "Обобщить", "Summary": "Сводка", "Summary refreshed!": "Сводка обновлена!", + "Sunday": "Воскресенье", "Synchronize mailboxes with an identity provider": "Синхронизировать почтовые ящики с поставщиком идентификационных данных", "Tags": "Теги", "Target": "Цель", @@ -498,9 +554,13 @@ "This signature is forced": "Эта подпись обязательна", "This thread has been reported as spam.": "Обсуждение было помечено как спам.", "This thread has been reported as spam. For your security, downloading attachments has been disabled.": "Это обсуждение было отмечено как спам. В целях безопасности загрузка вложений была отключена.", + "This will move this message and all following messages to a new thread. Continue?": "Это и все последующие сообщения будут перемещены в новое обсуждение. Продолжить?", "Those message templates are linked to the mailbox \"{{mailbox}}\". In case of a shared mailbox, all other mailbox users will be able to use them.": "Эти шаблоны сообщений связаны с почтовым ящиком \"{{mailbox}}\". Если этот почтовый ящик одновременно используют несколько пользователей, то шаблоны будут доступны им всем.", "Those signatures are linked to the mailbox \"{{mailbox}}\". In case of a shared mailbox, all other mailbox users will be able to use them.": "Эти подписи связаны с почтовым ящиком \"{{mailbox}}\". Если этот почтовый ящик одновременно используют несколько пользователей, то подписи будут доступны им всем.", "Thread access removed": "Доступ к обсуждению удалён", + "Thread has been split successfully.": "Обсуждение было успешно разделено.", + "Thursday": "Четверг", + "Timezone": "Часовой пояс", "To": "Кому", "To be able to import emails from an IMAP server, you may need to allow IMAP access on your account.": "Чтобы импортировать письма с IMAP сервера, вам может потребоваться разрешить IMAP доступ к вашей учётной записи.", "To:": "Кому:", @@ -508,22 +568,21 @@ "Today": "Сегодня", "Trash": "Корзина", "Try again": "Повторить попытку", + "Tuesday": "Вторник", "Tutorials and training": "Уроки и обучение", "Type": "Тип", "Unable to copy credentials.": "Невозможно скопировать учётные данные.", "Unable to copy to clipboard.": "Не удалось скопировать в буфер обмена.", "Unarchive": "Разархивировать", - "Unarchive {{count}} threads_one": "Разархивировать обсуждения ({{count}})", - "Unarchive {{count}} threads_other": "Разархивировать обсуждения ({{count}})", "Undelete": "Восстановить", - "Undelete {{count}} threads_one": "Восстановить обсуждения ({{count}})", - "Undelete {{count}} threads_other": "Восстановить обсуждения ({{count}})", "Undo": "Отменить", "Unfold message": "Развернуть сообщение", "Unknown": "Неизвестно", "Unknown user": "Неизвестный пользователь", "Unread": "Непрочитанные", "Unsaved changes": "Несохранённые изменения", + "Unstar": "Снять пометку", + "Unstar this thread": "Снять пометку с обсуждения", "until {{date}}": "до {{date}}", "Update": "Обновить", "Update a Label": "Обновить ярлык", @@ -539,7 +598,9 @@ "View full documentation": "Посмотреть полную документацию", "Visit the Help center": "Посетить центр помощи", "Website Widget": "Виджет для сайта", + "Wednesday": "Среда", "Weekly": "Еженедельно", + "While the auto-reply is disabled, it will not be sent.": "Если автоответчик отключён, ответ не будет отправлен.", "While the signature is disabled, it will not be available to the users.": "Если подпись отключена, она не будет доступна пользователям.", "Widget": "Виджет", "Yearly": "Ежегодно", diff --git a/src/frontend/public/locales/common/uk-UA.json b/src/frontend/public/locales/common/uk-UA.json index fe0939a6..0190f61c 100644 --- a/src/frontend/public/locales/common/uk-UA.json +++ b/src/frontend/public/locales/common/uk-UA.json @@ -9,6 +9,8 @@ "{{count}} hours ago_other": "{{count}} год. тому", "{{count}} messages_one": "{{count}} повідомлення", "{{count}} messages_other": "{{count}} повідомлень", + "{{count}} messages are now starred._one": "Повідомлення тепер позначено.", + "{{count}} messages are now starred._other": "Позначених повідомлень: {{count}}.", "{{count}} messages have been archived._one": "Повідомлення архівовано.", "{{count}} messages have been archived._other": "Повідомлення архівовані ({{count}}).", "{{count}} messages have been deleted._one": "Повідомлення видалено.", @@ -31,6 +33,12 @@ "{{count}} results_other": "{{count}} результатів", "{{count}} selected threads_one": "Обрано обговорень: {{count}}", "{{count}} selected threads_other": "Обрано обговорень: {{count}}", + "{{count}} starred messages_one": "Позначених повідомлень: {{count}}", + "{{count}} starred messages_other": "Позначених повідомлень: {{count}}", + "{{count}} starred results_one": "Позначених результатів: {{count}}", + "{{count}} starred results_other": "Позначених результатів: {{count}}", + "{{count}} threads are now starred._one": "Обговорення позначено.", + "{{count}} threads are now starred._other": "Позначено обговорень: {{count}}.", "{{count}} threads have been archived._one": "Обговорення архівовано.", "{{count}} threads have been archived._other": "Обговорення архівовано ({{count}}).", "{{count}} threads have been deleted._one": "Обговорення видалено.", @@ -45,6 +53,14 @@ "{{count}} threads have been updated._other": "Обговорення оновлено ({{count}}).", "{{count}} threads selected_one": "Вибрано {{count}} обговорень", "{{count}} threads selected_other": "Вибрано {{count}} обговорень", + "{{count}} unread messages_one": "Непрочитаних повідомлень: {{count}}", + "{{count}} unread messages_other": "Непрочитаних повідомлень: {{count}}", + "{{count}} unread results_one": "Непрочитаних результатів: {{count}}", + "{{count}} unread results_other": "Непрочитаних результатів: {{count}}", + "{{count}} unread starred messages_one": "Непрочитаних позначених повідомлень: {{count}}", + "{{count}} unread starred messages_other": "Непрочитаних позначених повідомлень: {{count}}", + "{{count}} unread starred results_one": "Непрочитаних позначених результатів: {{count}}", + "{{count}} unread starred results_other": "Непрочитаних позначених результатів: {{count}}", "{{count}} weeks ago_one": "{{count}} тижн. тому", "{{count}} weeks ago_other": "{{count}} тижн. тому", "{{count}} years ago_one": "{{count}} р. тому", @@ -57,6 +73,7 @@ "Accesses": "Доступ", "Actions": "Дії", "Active": "Активний", + "Active filters: {{filters}}": "Активні фільтри {{filters}}", "Add a contact form widget to your website to receive messages directly in your mailbox.": "Додайте на свій веб-сайт віджет контактної форми, щоб отримувати повідомлення безпосередньо на свою поштову скриньку.", "Add a domain": "Додати домен", "Add a sub-label": "Додати вкладену мітку", @@ -70,6 +87,7 @@ "Addresses": "Адреси", "After creating the widget, you will receive the installation code to add to your website.": "Після створення віджета ви отримаєте встановлюючий код для додавання на свій веб-сайт.", "All messages": "Всі повідомлення", + "Always": "Завжди", "An address with this prefix already exists in this domain.": "Адреса з таким префіксом вже існує в цьому домені.", "An archive is uploading": "Архів вивантажується", "An error occurred while creating the address.": "Помилка при створенні адреси.", @@ -85,10 +103,9 @@ "and {{count}} other users_other": "та {{count}} інших користувачів", "API Key": "Ключ API", "Archive": "Архівувати", - "Archive {{count}} threads_one": "Архівувати обговорення ({{count}})", - "Archive {{count}} threads_other": "Архівувати обговорення ({{count}})", "Archives": "Архіви", "Are you sure you want to close this dialog? Your upload will be aborted!": "Ви впевнені, що хочете закрити це діалогове вікно? Вивантаження буде перервано!", + "Are you sure you want to delete this auto-reply? This action is irreversible!": "Ви дійсно хочете видалити цей автовідповідач? Ця дія безповоротно!", "Are you sure you want to delete this draft? This action cannot be undone.": "Ви впевнені, що хочете видалити цю чернетку? Цю дію неможливо скасувати.", "Are you sure you want to delete this integration? This action is irreversible!": "Ви впевнені, що хочете видалити цю інтеграцію? Ця дія незворотна!", "Are you sure you want to delete this label? This action is irreversible!": "Ви впевнені, що хочете видалити цю мітку? Ця дія є незворотньою!", @@ -104,6 +121,12 @@ "Attachments must be less than {{size}}.": "Вкладення повинно бути менше ніж {{size}}.", "Authentication failed. Please check your credentials and ensure you have enabled IMAP connections in your account.": "Помилка авторизації. Перевірте свої облікові дані та переконайтеся, що у вас ввімкнене з'єднання IMAP у вашому обліковому записі.", "Auto-labeling": "Автоматичне позначення", + "Auto-replies are configured per mailbox. Only one auto-reply can be active at a time.": "Автовідповідач налаштовується для кожної поштової скриньки. Одночасно можна активувати тільки одного з них.", + "Auto-replies for {{mailbox}}": "Автовідповідачі для {{mailbox}}", + "Auto-reply created!": "Автовідповідач створено!", + "Auto-reply deleted!": "Автовідповідач видалений!", + "Auto-reply is active": "Автовідповідач активний", + "Auto-reply updated!": "Автовідповідач оновлено!", "Automatically create mailboxes according to OIDC emails": "Автоматично створювати поштові скриньки згідно електронних адрес OIDC", "Awaiting response": "Очікується відповідь", "Back": "Назад", @@ -119,6 +142,7 @@ "Check DNS again": "Перевірте DNS ще раз", "Checking DNS records...": "Перевірка DNS-записів...", "Choose the type of integration you want to create": "Виберіть тип інтеграції, який ви хочете створити", + "Clear filters": "Скинути фільтри", "Clear selected items": "Очистити вибрані елементи", "Click to add accesses": "Натисніть, щоб додати доступи", "Close": "Закрити", @@ -144,6 +168,7 @@ "Create": "Створити", "Create a Label": "Створити мітку", "Create a new address @{{domain}}": "Створити нову адресу @{{domain}}", + "Create a new auto-reply": "Створити новий автовідповідач", "Create a new integration": "Створити нову інтеграцію", "Create a new label": "Створити нову мітку", "Create a new personal mailbox": "Створити нову особисту поштову скриньку", @@ -161,6 +186,7 @@ "Credentials copied!": "Облікові дані скопійовані!", "Current status": "Поточний статус", "Daily": "Щоденно", + "Date range": "Період", "Date:": "Дата:", "Date: ": "Дата: ", "Declined": "Відхилено", @@ -168,8 +194,7 @@ "Default signature": "Підпис за замовчуванням", "Delegated": "Доручено", "Delete": "Видалити", - "Delete {{count}} threads_one": "Видалити обговорення ({{count}})", - "Delete {{count}} threads_other": "Видалити обговорення ({{count}})", + "Delete auto-reply \"{{autoreply}}\"": "Видалити автовідповідач \"{{autoreply}}\"", "Delete draft": "Видалити чернетку", "Delete integration \"{{name}}\"": "Видалити інтеграцію \"{{name}}\"", "Delete label \"{{label}}\"": "Видалити мітку \"{{label}}\"", @@ -204,14 +229,22 @@ "Duplicate": "Створити копію", "Edit": "Редагувати", "Edit {{mailbox}} address": "Редагувати адресу {{mailbox}}", + "Edit auto-reply \"{{autoreply}}\"": "Редагувати автовідповідач \"{{autoreply}}\"", "Edit signature \"{{signature}}\"": "Редагувати підпис \"{{signature}}\"", "Edit template \"{{template}}\"": "Редагувати шаблон \"{{template}}\"", "Edit Widget": "Редагувати віджет", "Email address": "Адреса ел. пошти", "EML, MBOX or PST": "EML, MBOX або PST", + "End date": "Дата закінчення", + "End date is required": "Потрібно вказати дату закінчення", + "End day": "День закінчення", + "End day is required": "Потрібно вказати день закінчення", + "End time": "Час закінчення", + "End time is required": "Необхідно вказати час закінчення", "Enter the email addresses of the recipients separated by commas": "Введіть електронні адреси, розділені комами", "Error while checking DNS records": "Помилка під час перевірки записів DNS", "Error while loading addresses": "Помилка при завантаженні адрес", + "Error while loading auto-replies": "Помилка при завантаженні автовідповідачів", "Error while loading integrations": "Помилка при завантаженні інтеграцій", "Error while loading signatures": "Помилка при завантаженні підписів", "Error while loading templates": "Помилка при завантаженні шаблонів", @@ -225,16 +258,22 @@ "Every {{count}} years_other": "Кожні {{count}} років", "Expand": "Розгорнути", "Expand all": "Розгорнути всі", + "Failed to delete auto-reply.": "Не вдалося видалити автовідповідача.", "Failed to delete integration.": "Не вдалося видалити інтеграцію.", "Failed to delete signature.": "Не вдалося видалити підпис.", "Failed to delete template.": "Не вдалося видалити шаблон.", + "Failed to load auto-reply. Please try again.": "Не вдалося завантажити автовідповідача. Будь ласка, спробуйте ще раз.", "Failed to load calendar invite": "Не вдалося завантажити запрошення до календаря", "Failed to load signature. Please try again.": "Не вдалося завантажити підпис. Будь ласка, спробуйте ще раз.", "Failed to load template. Please try again.": "Не вдалося завантажити шаблон. Будь ласка, спробуйте ще раз.", "Failed to refresh summary.": "Не вдалося оновити короткий зміст.", + "Failed to save auto-reply. Please try again.": "Не вдалося зберегти автовідповідача. Будь ласка, спробуйте ще раз.", "Failed to save signature. Please try again.": "Не вдалося зберегти підпис. Будь ласка, спробуйте ще раз.", "Failed to save template. Please try again.": "Не вдалося зберегти шаблон. Будь ласка, спробуйте ще раз.", + "Failed to update auto-reply.": "Не вдалося оновити автовідповідача.", "Failed to update signature.": "Не вдалося оновити підпис.", + "Filter by: {{filters}}": "Фільтр: {{filters}}", + "Filter threads": "Фільтр обговорень", "First name": "Ім'я", "First name is required.": "Необхідно вказати Ім'я.", "First, we need some information about your old mailbox": "Для початку, нам потрібна інформація про стару поштову скриньку", @@ -245,6 +284,7 @@ "Forced signature": "Обов'язковий підпис", "Forward": "Переслати", "Forwarded message": "Переслане повідомлення", + "Friday": "П`ятниця", "From": "Від", "From:": "Від:", "From: ": "Від: ", @@ -298,6 +338,8 @@ "Layout": "Макет", "less than a minute ago": "менше хвилини тому", "Loading addresses...": "Завантаження адрес...", + "Loading auto-replies...": "Завантаження автовідповідачів...", + "Loading auto-reply...": "Завантаження автовідповідача...", "Loading calendar invite...": "Завантаження запрошення до календаря...", "Loading integrations...": "Завантаження інтеграцій...", "Loading labels...": "Завантаження міток...", @@ -315,13 +357,8 @@ "Maildomains management": "Керування поштовими доменами", "Manage {{entity}} accesses": "Керування доступом до {{entity}}", "Manage accesses": "Керування доступом", - "Mark {{count}} threads as read_one": "Позначити {{count}} обговорення як прочитане", - "Mark {{count}} threads as read_other": "Позначити {{count}} обговорень як прочитані", - "Mark {{count}} threads as unread_one": "Позначити {{count}} обговорення як непрочитане", - "Mark {{count}} threads as unread_other": "Позначити {{count}} обговорень як непрочитані", "Mark all as read": "Позначити всі як прочитані", "Mark all as unread": "Позначити всі як непрочитані", - "Mark as important": "Позначити як важливе", "Mark as read": "Позначити прочитаним", "Mark as read from here": "Позначити як прочитане звідси", "Mark as unread": "Позначити як непрочитане", @@ -333,9 +370,11 @@ "Messaging": "Листування", "Missing": "Відсутнє", "Modify": "Змінити", + "Monday": "Понеділок", "Monthly": "Щомісяця", "More": "Ще", "More options": "Більше параметрів", + "My auto-replies": "Мої автовідповідачі", "My message templates": "Мої шаблони повідомлень", "My signatures": "Мої підписи", "Name": "Ім’я", @@ -343,6 +382,7 @@ "Name is required.": "Потрібне ім'я.", "Name must be a valid domain name.": "Ім'я має бути дійсним ім'ям домену.", "New address": "Нова адреса", + "New auto-reply": "Новий автовідповідач", "New domain": "Новий домен", "New integration": "Нова інтеграція", "New message": "Нове повідомлення", @@ -351,17 +391,20 @@ "No accesses": "Немає доступу", "No addresses found": "Адрес не знайдено", "No attachments": "Немає вкладень", + "No auto-replies found": "Не знайдено жодного автовідповідача", "No DNS records found": "Не знайдено записів DNS", "No event found in calendar invite": "Не знайдено події у запрошенні у календарі", "No integration found": "Не знайдено інтеграції", - "No mailbox": "Немає поштової скриньки", - "No results": "Нічого не знайдено", + "No mailbox": "Немає поштових скриньок", + "No results": "Немає результатів", "No signature": "Без підпису", "No signatures found": "Підписи не знайдено", "No subject": "Без теми", "No summary available.": "Немає доступних даних для короткого змісту.", "No template found": "Шаблони не знайдені", "No threads": "Немає обговорень", + "No threads match the active filters": "Відсутні обговорення з відповідними активними фільтрами", + "On going": "Виконується", "Open {{driveAppName}} preview": "Відкрити попередній перегляд {{driveAppName}}", "Open filters": "Відкрити фільтри", "Open the menu": "Відкрити меню", @@ -381,28 +424,28 @@ "Read": "Читати", "Read state": "Стан читання", "Recurring": "Повторюється", + "Recurring weekly": "Повторюється щотижня", "Redirection": "Перенаправлення", "Refresh": "Оновити", "Refresh summary": "Оновити дані короткого змісту", "Remove": "Видалити", "Remove report": "Видалити звіт", "Remove spam report": "Видалити звіт про спам", - "Remove spam report from {{count}} threads_one": "Видалити позначення про спам з обговорень ({{count}})", - "Remove spam report from {{count}} threads_other": "Видалити позначення про спам з обговорень ({{count}})", "Remove tag": "Видалити тег", "Reply": "Відповісти", "Reply all": "Відповісти всім", - "Report {{count}} threads as spam_one": "Позначити обговорення як спам ({{count}})", - "Report {{count}} threads as spam_other": "Позначити обговорення як спам ({{count}})", "Report as spam": "Позначити як спам", "Reset": "Скинути", "Reset password": "Скинути пароль", "Reset password of {{mailbox}}": "Скидання паролю для {{mailbox}}", "Retry": "Повторити", + "Saturday": "Субота", "Save": "Зберегти", "Save changes": "Зберегти зміни", "Save into your {{driveAppName}}'s workspace": "Зберегти у {{driveAppName}}", "Saving...": "Збереження...", + "Schedule": "Розклад", + "Scheduled": "Заплановано", "Search": "Пошук", "Search a label": "Пошук мітки", "Search a tag": "Пошук за тегом", @@ -447,6 +490,18 @@ "Spam": "Спам", "Spam report removed from {{count}} threads._one": "Позначення про спам видалено з обговорення.", "Spam report removed from {{count}} threads._other": "Позначення про спам видалено з обговорень ({{count}}).", + "Split thread": "Розділити обговорення", + "Split thread from here": "Розділити обговорення звідси", + "Star": "Позначити", + "Star this thread": "Позначити це обговорення", + "Starred": "Позначені", + "Start date": "Дата початку", + "Start date is required": "Необхідно вказати дату початку", + "Start date must be before end date": "Дата початку має бути до дати закінчення", + "Start day": "День початку", + "Start day is required": "Необхідно вказати день початку", + "Start time": "Час початку", + "Start time is required": "Необхідно вказати час початку", "Start typing...": "Почніть писати...", "Subject": "Тема", "Subject template": "Шаблон теми", @@ -456,6 +511,7 @@ "Summarize": "Підсумувати", "Summary": "Короткий зміст", "Summary refreshed!": "Короткий зміст оновлено!", + "Sunday": "Неділя", "Synchronize mailboxes with an identity provider": "Синхронізація поштових скриньок для постачальника ідентифікації", "Tags": "Теги", "Target": "Мета", @@ -498,9 +554,13 @@ "This signature is forced": "Цей підпис є обов'язковим", "This thread has been reported as spam.": "Обговорення позначено як спам.", "This thread has been reported as spam. For your security, downloading attachments has been disabled.": "Це обговорення позначено як спам. Для вашої безпеки завантаження вкладень вимкнено.", + "This will move this message and all following messages to a new thread. Continue?": "Це повідомлення та всі наступні будуть переміщені в нове обговорення. Продовжити?", "Those message templates are linked to the mailbox \"{{mailbox}}\". In case of a shared mailbox, all other mailbox users will be able to use them.": "Ці шаблони повідомлень зв'язані з поштовою скринькою \"{{mailbox}}\". Якщо це спільна поштова скринька, всі інші користувачі зможуть використовувати їх.", "Those signatures are linked to the mailbox \"{{mailbox}}\". In case of a shared mailbox, all other mailbox users will be able to use them.": "Ці підписи зв'язані з поштовою скринькою \"{{mailbox}}\". Якщо це спільна поштова скринька, всі інші користувачі зможуть використовувати їх.", "Thread access removed": "Доступ до обговорення видалено", + "Thread has been split successfully.": "Обговорення успішно розділено.", + "Thursday": "Четвер", + "Timezone": "Часовий пояс", "To": "Кому", "To be able to import emails from an IMAP server, you may need to allow IMAP access on your account.": "Щоб мати можливість імпортувати електронні листи з сервера IMAP, вам, можливо, потрібно дозволити IMAP доступ до вашого облікового запису.", "To:": "Кому:", @@ -508,22 +568,21 @@ "Today": "Сьогодні", "Trash": "Кошик", "Try again": "Спробувати знову", + "Tuesday": "Вівторок", "Tutorials and training": "Підручники та навчання", "Type": "Тип", "Unable to copy credentials.": "Неможливо скопіювати облікові дані.", "Unable to copy to clipboard.": "Не вдалося скопіювати до буфера обміну.", "Unarchive": "Розархівувати", - "Unarchive {{count}} threads_one": "Розархівувати обговорення ({{count}})", - "Unarchive {{count}} threads_other": "Розархівувати обговорення ({{count}})", "Undelete": "Скасувати видалення", - "Undelete {{count}} threads_one": "Скасувати видалення обговорення ({{count}})", - "Undelete {{count}} threads_other": "Скасувати видалення обговорення ({{count}})", "Undo": "Відмінити", "Unfold message": "Розгорнути повідомлення", "Unknown": "Невідомо", "Unknown user": "Невідомий користувач", "Unread": "Непрочитані", "Unsaved changes": "Незбережені зміни", + "Unstar": "Скасувати позначення зірками", + "Unstar this thread": "Зняти позначку з цього обговорення", "until {{date}}": "до {{date}}", "Update": "Оновити", "Update a Label": "Оновити мітку", @@ -539,7 +598,9 @@ "View full documentation": "Переглянути повну документацію", "Visit the Help center": "Відвідати центр допомоги", "Website Widget": "Віджет для сайту", + "Wednesday": "Середа", "Weekly": "Щотижня", + "While the auto-reply is disabled, it will not be sent.": "Поки автовідповідач вимкнений, його відповідь не буде надіслано.", "While the signature is disabled, it will not be available to the users.": "Поки підпис вимкнено, він не буде доступний для користувачів.", "Widget": "Віджет", "Yearly": "Щорічно", diff --git a/src/mta-in/pyproject.toml b/src/mta-in/pyproject.toml index b222295b..fd922471 100644 --- a/src/mta-in/pyproject.toml +++ b/src/mta-in/pyproject.toml @@ -7,7 +7,7 @@ build-backend = "uv_build" [project] name = "st-messages-mta-in" -version = "0.4.0" +version = "0.5.0" authors = [{ "name" = "ANCT", "email" = "suiteterritoriale@anct.gouv.fr" }] classifiers = [ "Development Status :: 5 - Production/Stable", diff --git a/src/mta-in/uv.lock b/src/mta-in/uv.lock index b9ab15db..2e39207a 100644 --- a/src/mta-in/uv.lock +++ b/src/mta-in/uv.lock @@ -438,7 +438,7 @@ wheels = [ [[package]] name = "st-messages-mta-in" -version = "0.4.0" +version = "0.5.0" source = { editable = "." } dependencies = [ { name = "pyjwt" }, diff --git a/src/mta-out/pyproject.toml b/src/mta-out/pyproject.toml index da6293b9..eaab6c21 100644 --- a/src/mta-out/pyproject.toml +++ b/src/mta-out/pyproject.toml @@ -7,7 +7,7 @@ build-backend = "uv_build" [project] name = "st-messages-mta-out" -version = "0.4.0" +version = "0.5.0" authors = [{ "name" = "ANCT", "email" = "suiteterritoriale@anct.gouv.fr" }] classifiers = [ "Development Status :: 5 - Production/Stable", diff --git a/src/mta-out/uv.lock b/src/mta-out/uv.lock index ed9a9681..d5530d52 100644 --- a/src/mta-out/uv.lock +++ b/src/mta-out/uv.lock @@ -527,7 +527,7 @@ wheels = [ [[package]] name = "st-messages-mta-out" -version = "0.4.0" +version = "0.5.0" source = { editable = "." } dependencies = [ { name = "jinja2" },