feat(mail): sieve-фильтры — список и конструктор «Новый фильтр»
Паритет живого веба (модалка «Новый фильтр»):
- API: GET/PUT /apps/mail/api/sieve/active/{accountId} (MailRepository).
- Наши правила живут в маркированных блоках # F7MOBILE-BEGIN/END
внутри активного скрипта; пользовательские/веб-правила НЕ трогаем,
перед каждой записью скрипт перечитывается (не затираем изменения
из веба). require ["fileinto","imap4flags"] — в начале скрипта.
- Конструктор: если [От/Тема/Кому] содержит X → [переместить в папку /
пометить прочитанным / удалить]; список правил с удалением.
- Вход: Настройки почты → аккаунт → «Фильтры».
- MailSieveScript покрыт юнит-тестами (roundtrip, сохранение чужого
скрипта, экранирование кавычек, все действия) — 4 зелёных.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -34,6 +34,7 @@ dependencies {
|
||||
implementation project(':feature:calendar')
|
||||
implementation libs.coroutines.android
|
||||
implementation libs.json
|
||||
testImplementation libs.junit
|
||||
def composeBom = platform(libs.compose.bom)
|
||||
implementation composeBom
|
||||
implementation libs.compose.ui
|
||||
|
||||
Reference in New Issue
Block a user