feat: remove folder limit

This commit is contained in:
rustmailer
2026-05-26 15:22:14 +08:00
parent 4bd714a670
commit f30cd66e00
23 changed files with 20 additions and 142 deletions
+2 -4
View File
@@ -117,7 +117,6 @@ pub struct AccountV3 {
pub capabilities: Option<Vec<String>>,
pub date_since: Option<DateSince>,
pub date_before: Option<RelativeDate>,
pub folder_limit: Option<u32>,
pub sync_folders: Option<Vec<String>>,
pub account_type: AccountType,
pub sync_interval_min: Option<i64>,
@@ -193,7 +192,7 @@ impl From<AccountV3> for AccountV2 {
name: value.name,
capabilities: value.capabilities,
date_since: value.date_since,
folder_limit: value.folder_limit,
folder_limit: None,
sync_folders: value.sync_folders,
account_type: value.account_type,
sync_interval_min: value.sync_interval_min,
@@ -217,7 +216,6 @@ impl From<AccountV2> for AccountV3 {
name: value.name,
capabilities: value.capabilities,
date_since: value.date_since,
folder_limit: value.folder_limit,
sync_folders: value.sync_folders,
account_type: value.account_type,
sync_interval_min: value.sync_interval_min,
@@ -246,7 +244,6 @@ impl From<AccountV3> for AccountModel {
capabilities: value.capabilities,
date_since: value.date_since,
date_before: value.date_before,
folder_limit: value.folder_limit,
download_folders: value.sync_folders,
account_type: value.account_type,
download_interval_min: value.sync_interval_min,
@@ -661,6 +658,7 @@ impl From<MailBox> for bichon_core::cache::imap::mailbox::MailBox {
unseen: value.unseen,
uid_next: value.uid_next,
uid_validity: value.uid_validity,
highest_uid: None,
}
}
}
-12
View File
@@ -80,7 +80,6 @@ pub struct Account {
pub capabilities: Option<Vec<String>>,
pub date_since: Option<DateSince>,
pub date_before: Option<RelativeDate>,
pub folder_limit: Option<u32>,
pub download_folders: Option<Vec<String>>,
pub account_type: AccountType,
pub download_interval_min: Option<i64>,
@@ -125,7 +124,6 @@ impl Account {
created_at: utc_now!(),
updated_at: utc_now!(),
use_proxy: request.use_proxy,
folder_limit: request.folder_limit,
use_dangerous: request.use_dangerous,
pgp_key: request.pgp_key,
created_by: user_id,
@@ -367,20 +365,10 @@ impl Account {
}
}
if let Some(folder_limit) = request.folder_limit {
new.folder_limit = Some(folder_limit);
}
if let Some(account_name) = request.account_name {
new.account_name = Some(account_name);
}
if let Some(clear_folder_limit) = request.clear_folder_limit {
if clear_folder_limit {
new.folder_limit = None;
}
}
if matches!(old.account_type, AccountType::IMAP) {
if let Some(imap) = &request.imap {
if let Some(current_imap) = &mut new.imap {
-15
View File
@@ -41,8 +41,6 @@ pub struct AccountCreateRequest {
pub date_since: Option<DateSince>,
pub date_before: Option<RelativeDate>,
pub account_type: AccountType,
#[cfg_attr(feature = "web-api", oai(validator(minimum(value = "100"))))]
pub folder_limit: Option<u32>,
#[cfg_attr(feature = "web-api", oai(validator(minimum(value = "10"))))]
pub download_interval_min: Option<i64>,
#[cfg_attr(
@@ -145,12 +143,6 @@ pub struct AccountUpdateRequest {
pub date_since: Option<DateSince>,
pub date_before: Option<RelativeDate>,
pub clear_date_range: Option<bool>,
/// Max emails to sync for this folder.
/// If not set, sync all emails.
/// otherwise sync up to `n` most recent emails (min 10).
#[cfg_attr(feature = "web-api", oai(validator(minimum(value = "100"))))]
pub folder_limit: Option<u32>,
pub clear_folder_limit: Option<bool>,
/// Configuration for selective folder (mailbox/label) synchronization
///
/// - For IMAP/SMTP accounts:
@@ -205,13 +197,6 @@ impl AccountUpdateRequest {
));
}
if self.clear_folder_limit == Some(true) && self.folder_limit.is_some() {
return Err(raise_error!(
"clear_folder_limit cannot be combined with folder_limit".into(),
ErrorCode::InvalidParameter
));
}
if self.clear_date_range == Some(true)
&& (self.date_since.is_some() || self.date_before.is_some())
{
-2
View File
@@ -40,7 +40,6 @@ pub struct AccountResp {
pub capabilities: Option<Vec<String>>,
pub date_since: Option<DateSince>,
pub date_before: Option<RelativeDate>,
pub folder_limit: Option<u32>,
pub download_folders: Option<Vec<String>>,
pub account_type: AccountType,
pub download_interval_min: Option<i64>,
@@ -73,7 +72,6 @@ impl AccountResp {
capabilities: account.capabilities,
date_since: account.date_since,
date_before: account.date_before,
folder_limit: account.folder_limit,
download_folders: account.download_folders,
account_type: account.account_type,
download_interval_min: account.download_interval_min,
-1
View File
@@ -128,7 +128,6 @@ export interface AccountModel {
capabilities?: string[];
date_since?: DateSelection;
date_before?: RelativeDate;
folder_limit?: number,
download_folders: string[];
download_interval_min?: number;
download_batch_size?: number;
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "كل {{minutes}} دقيقة",
"field": "الحقل",
"fixed": "ثابت",
"folderLimit": "حد المجلد",
"folderLimitDescription": "حدد عدد رسائل البريد الإلكتروني للمزامنة لكل مجلد (الحد الأدنى 100). اتركه فارغًا بلا حدود.",
"folderLimitPlaceholder": "مثال: 1000",
"folderSync": {
"autoSelectDescendants": "تحديد العناصر الفرعية تلقائيًا",
"autoSelectParents": "تحديد العناصر الأصلية تلقائيًا",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "البريد الإلكتروني مطلوب",
"folderLimitMustBeAtLeast100": "يجب أن يكون حد المجلد 100 على الأقل",
"folderLimitMustBeNumber": "يجب أن يكون حد المجلد رقمًا",
"imapHostCannotBeEmpty": "لا يمكن أن يكون مُضيف IMAP فارغًا",
"imapHostRequired": "مُضيف IMAP مطلوب",
"imapPortMustBeLessThan65536": "يجب أن يكون منفذ IMAP أقل من 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "يجب أن يكون حجم الدُفعة على الأكثر 200",
"singleRequestBatchSizeTooSmall": "يجب أن يكون حجم الدُفعة على الأقل 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "hvert {{minutes}} minut",
"field": "Felt",
"fixed": "Fast",
"folderLimit": "Mappegrænse",
"folderLimitDescription": "Begræns antallet af e-mails, der skal synkroniseres pr. mappe (minimum 100). Lad stå tomt for ingen grænse.",
"folderLimitPlaceholder": "f.eks. 1000",
"folderSync": {
"autoSelectDescendants": "Vælg efterkommere automatisk",
"autoSelectParents": "Vælg forældre automatisk",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "E-mail er påkrævet",
"folderLimitMustBeAtLeast100": "Mappegrænse skal være mindst 100",
"folderLimitMustBeNumber": "Mappegrænse skal være et tal",
"imapHostCannotBeEmpty": "IMAP-vært kan ikke være tom",
"imapHostRequired": "IMAP-vært er påkrævet",
"imapPortMustBeLessThan65536": "IMAP-port skal være mindre end 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Batchstørrelse skal være højst 200",
"singleRequestBatchSizeTooSmall": "Batchstørrelse skal være mindst 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "alle {{minutes}} Minuten",
"field": "Feld",
"fixed": "Fest",
"folderLimit": "Ordnerlimit",
"folderLimitDescription": "Begrenzen Sie die Anzahl der pro Ordner zu synchronisierenden E-Mails (mindestens 100). Lassen Sie das Feld leer für keine Begrenzung.",
"folderLimitPlaceholder": "z.B. 1000",
"folderSync": {
"autoSelectDescendants": "Unterelemente automatisch auswählen",
"autoSelectParents": "Elternelemente automatisch auswählen",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "E-Mail ist erforderlich",
"folderLimitMustBeAtLeast100": "Das Ordnerlimit muss mindestens 100 betragen",
"folderLimitMustBeNumber": "Das Ordnerlimit muss eine Zahl sein",
"imapHostCannotBeEmpty": "IMAP-Host darf nicht leer sein",
"imapHostRequired": "IMAP-Host ist erforderlich",
"imapPortMustBeLessThan65536": "Der IMAP-Port muss kleiner als 65536 sein",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Die Stapelgröße darf höchstens 200 sein",
"singleRequestBatchSizeTooSmall": "Die Stapelgröße muss mindestens 10 sein"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "every {{minutes}} minutes",
"field": "Field",
"fixed": "Fixed",
"folderLimit": "Folder Limit",
"folderLimitDescription": "Limit the number of emails to sync per folder (minimum 100). Leave empty for no limit.",
"folderLimitPlaceholder": "e.g. 1000",
"folderSync": {
"autoSelectDescendants": "Auto select descendants",
"autoSelectParents": "Auto select parents",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "Email is required",
"folderLimitMustBeAtLeast100": "Folder limit must be at least 100",
"folderLimitMustBeNumber": "Folder limit must be a number",
"imapHostCannotBeEmpty": "IMAP host cannot be empty",
"imapHostRequired": "IMAP host is required",
"imapPortMustBeLessThan65536": "IMAP port must be less than 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Batch size must be at most 200",
"singleRequestBatchSizeTooSmall": "Batch size must be at least 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "cada {{minutes}} minutos",
"field": "Campo",
"fixed": "Fija",
"folderLimit": "Límite de carpetas",
"folderLimitDescription": "Limita el número de correos a sincronizar por carpeta (mínimo 100). Deja vacío para no tener límite.",
"folderLimitPlaceholder": "ej. 1000",
"folderSync": {
"autoSelectDescendants": "Seleccionar automáticamente los descendientes",
"autoSelectParents": "Seleccionar automáticamente los padres",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "El correo electrónico es obligatorio",
"folderLimitMustBeAtLeast100": "El límite de carpetas debe ser de al menos 100",
"folderLimitMustBeNumber": "El límite de carpetas debe ser un número",
"imapHostCannotBeEmpty": "El host IMAP no puede estar vacío",
"imapHostRequired": "El host IMAP es obligatorio",
"imapPortMustBeLessThan65536": "El puerto IMAP debe ser menor que 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "El tamaño del lote debe ser como máximo 200",
"singleRequestBatchSizeTooSmall": "El tamaño del lote debe ser al menos 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "joka {{minutes}} minuutti",
"field": "Kenttä",
"fixed": "Kiinteä",
"folderLimit": "Kansioraja",
"folderLimitDescription": "Rajoittaa synkronoitavien sähköpostien määrän kansiota kohden (vähintään 100). Jätä tyhjäksi ilman rajoitusta.",
"folderLimitPlaceholder": "esim. 1000",
"folderSync": {
"autoSelectDescendants": "Valitse alisolmut automaattisesti",
"autoSelectParents": "Valitse yläsolmut automaattisesti",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "Sähköposti on pakollinen",
"folderLimitMustBeAtLeast100": "Kansiorajan on oltava vähintään 100",
"folderLimitMustBeNumber": "Kansiorajan on oltava numero",
"imapHostCannotBeEmpty": "IMAP-isäntä ei voi olla tyhjä",
"imapHostRequired": "IMAP-isäntä on pakollinen",
"imapPortMustBeLessThan65536": "IMAP-portin on oltava pienempi kuin 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Eräkoko tulee olla enintään 200",
"singleRequestBatchSizeTooSmall": "Eräkoko tulee olla vähintään 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "toutes les {{minutes}} minutes",
"field": "Champ",
"fixed": "Fixe",
"folderLimit": "Limite de Dossiers",
"folderLimitDescription": "Limite le nombre d'e-mails à synchroniser par dossier (minimum 100). Laissez vide pour aucune limite.",
"folderLimitPlaceholder": "ex. 1000",
"folderSync": {
"autoSelectDescendants": "Sélectionner automatiquement les descendants",
"autoSelectParents": "Sélectionner automatiquement les parents",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "L'adresse e-mail est obligatoire",
"folderLimitMustBeAtLeast100": "La limite de dossiers doit être d'au moins 100",
"folderLimitMustBeNumber": "La limite de dossiers doit être un nombre",
"imapHostCannotBeEmpty": "L'hôte IMAP ne peut pas être vide",
"imapHostRequired": "L'hôte IMAP est obligatoire",
"imapPortMustBeLessThan65536": "Le port IMAP doit être inférieur à 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "La taille du lot doit être au plus 200",
"singleRequestBatchSizeTooSmall": "La taille du lot doit être au moins 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "ogni {{minutes}} minuti",
"field": "Campo",
"fixed": "Fissa",
"folderLimit": "Limite Cartelle",
"folderLimitDescription": "Limita il numero di email da sincronizzare per cartella (minimo 100). Lascia vuoto per nessun limite.",
"folderLimitPlaceholder": "es. 1000",
"folderSync": {
"autoSelectDescendants": "Seleziona automaticamente i discendenti",
"autoSelectParents": "Seleziona automaticamente i genitori",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "L'email è obbligatoria",
"folderLimitMustBeAtLeast100": "Il limite di cartelle deve essere almeno 100",
"folderLimitMustBeNumber": "Il limite di cartelle deve essere un numero",
"imapHostCannotBeEmpty": "L'host IMAP non può essere vuoto",
"imapHostRequired": "L'host IMAP è obbligatorio",
"imapPortMustBeLessThan65536": "La porta IMAP deve essere inferiore a 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "La dimensione del batch deve essere al massimo 200",
"singleRequestBatchSizeTooSmall": "La dimensione del batch deve essere almeno 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "{{minutes}}分ごと",
"field": "フィールド",
"fixed": "固定",
"folderLimit": "フォルダーの制限",
"folderLimitDescription": "フォルダーごとに同期するメールの数を制限します(最小100)。制限なしにする場合は空欄にしてください。",
"folderLimitPlaceholder": "例: 1000",
"folderSync": {
"autoSelectDescendants": "子項目を自動選択",
"autoSelectParents": "親項目を自動選択",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "メールアドレスは必須です",
"folderLimitMustBeAtLeast100": "フォルダーの制限は100以上である必要があります",
"folderLimitMustBeNumber": "フォルダーの制限は数値である必要があります",
"imapHostCannotBeEmpty": "IMAPホストは空にできません",
"imapHostRequired": "IMAPホストは必須です",
"imapPortMustBeLessThan65536": "IMAPポートは65536未満である必要があります",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "バッチサイズは最大でも200でなければなりません",
"singleRequestBatchSizeTooSmall": "バッチサイズは最低でも10でなければなりません"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "매 {{minutes}}분",
"field": "필드",
"fixed": "고정",
"folderLimit": "폴더 제한",
"folderLimitDescription": "폴더당 동기화할 이메일 수를 제한합니다(최소 100). 제한이 없으면 비워 두십시오.",
"folderLimitPlaceholder": "예: 1000",
"folderSync": {
"autoSelectDescendants": "하위 항목 자동 선택",
"autoSelectParents": "상위 항목 자동 선택",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "이메일 주소는 필수입니다",
"folderLimitMustBeAtLeast100": "폴더 제한은 최소 100 이상이어야 합니다",
"folderLimitMustBeNumber": "폴더 제한은 숫자여야 합니다",
"imapHostCannotBeEmpty": "IMAP 호스트는 비워 둘 수 없습니다",
"imapHostRequired": "IMAP 호스트는 필수입니다",
"imapPortMustBeLessThan65536": "IMAP 포트는 65536보다 작아야 합니다",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "배치 크기는 최대 200이어야 합니다",
"singleRequestBatchSizeTooSmall": "배치 크기는 최소 10이어야 합니다"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "elke {{minutes}} minuten",
"field": "Veld",
"fixed": "Vast",
"folderLimit": "Mappenlimiet",
"folderLimitDescription": "Beperk het aantal te synchroniseren e-mails per map (minimaal 100). Laat leeg voor geen limiet.",
"folderLimitPlaceholder": "bv. 1000",
"folderSync": {
"autoSelectDescendants": "Automatisch onderliggende items selecteren",
"autoSelectParents": "Automatisch bovenliggende items selecteren",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "E-mail is vereist",
"folderLimitMustBeAtLeast100": "Mappenlimiet moet ten minste 100 zijn",
"folderLimitMustBeNumber": "Mappenlimiet moet een nummer zijn",
"imapHostCannotBeEmpty": "IMAP host mag niet leeg zijn",
"imapHostRequired": "IMAP host is vereist",
"imapPortMustBeLessThan65536": "IMAP poort moet kleiner zijn dan 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Batchgrootte moet hoogstens 200 zijn",
"singleRequestBatchSizeTooSmall": "Batchgrootte moet ten minste 10 zijn"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "hvert {{minutes}} minutt",
"field": "Felt",
"fixed": "Fast",
"folderLimit": "Mappegrense",
"folderLimitDescription": "Begrens antall e-poster som skal synkroniseres per mappe (minimum 100). La stå tomt for ingen grense.",
"folderLimitPlaceholder": "f.eks. 1000",
"folderSync": {
"autoSelectDescendants": "Velg etterkommere automatisk",
"autoSelectParents": "Velg foreldre automatisk",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "E-post er påkrevd",
"folderLimitMustBeAtLeast100": "Mappegrense må være minst 100",
"folderLimitMustBeNumber": "Mappegrense må være et tall",
"imapHostCannotBeEmpty": "IMAP-vert kan ikke være tom",
"imapHostRequired": "IMAP-vert er påkrevd",
"imapPortMustBeLessThan65536": "IMAP-port må være mindre enn 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Batchstørrelse må være maksimalt 200",
"singleRequestBatchSizeTooSmall": "Batchstørrelse må være minst 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "co {{minutes}} minut",
"field": "Pole",
"fixed": "Dokładnie",
"folderLimit": "Limit folderu",
"folderLimitDescription": "Ogranicz liczbę wiadomości email, które należy synchronizować w jednym folderze (minimum 100). Pozostaw puste, aby nie było limitu.",
"folderLimitPlaceholder": "np. 1000",
"folderSync": {
"autoSelectDescendants": "Automatyczny wybór dzieci (podrzędnych)",
"autoSelectParents": "Automatyczny wybór rodziców (nadrzędnych)",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "Email jest wymagany",
"folderLimitMustBeAtLeast100": "Limit folderów musi być liczbą nie mniejszą niż 100",
"folderLimitMustBeNumber": "Limit folderów musi być liczbą",
"imapHostCannotBeEmpty": "Host IMAP nie może być pusty",
"imapHostRequired": "Host IMAP jest wymagany",
"imapPortMustBeLessThan65536": "Port IMAP musi być liczbą w przedziale 0-65535",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Rozmiar partii może wynosić maksymalnie 200",
"singleRequestBatchSizeTooSmall": "Rozmiar partii musi wynosić co najmniej 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "A cada {{minutes}} minutos",
"field": "Campo",
"fixed": "Fixo",
"folderLimit": "Limite de Pasta",
"folderLimitDescription": "Limita o número de emails a sincronizar por pasta (mínimo 100). Deixe vazio para nenhum limite.",
"folderLimitPlaceholder": "Ex: 1000",
"folderSync": {
"autoSelectDescendants": "Selecionar automaticamente os descendentes",
"autoSelectParents": "Selecionar automaticamente os pais",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "O endereço de email é obrigatório",
"folderLimitMustBeAtLeast100": "O Limite de Pasta deve ser pelo menos 100",
"folderLimitMustBeNumber": "O Limite de Pasta deve ser um número",
"imapHostCannotBeEmpty": "O Host IMAP não pode estar vazio",
"imapHostRequired": "O Host IMAP é obrigatório",
"imapPortMustBeLessThan65536": "A Porta IMAP deve ser menor que 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "O tamanho do lote deve ser no máximo 200",
"singleRequestBatchSizeTooSmall": "O tamanho do lote deve ser pelo menos 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "каждые {{minutes}} мин.",
"field": "Поле",
"fixed": "Фиксированная",
"folderLimit": "Лимит папки",
"folderLimitDescription": "Ограничить количество писем для синхронизации в папке (минимум 100). Оставьте пустым для снятия ограничений.",
"folderLimitPlaceholder": "например, 1000",
"folderSync": {
"autoSelectDescendants": "Автоматически выбирать дочерние элементы",
"autoSelectParents": "Автоматически выбирать родительские элементы",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "Email обязателен",
"folderLimitMustBeAtLeast100": "Лимит папки должен быть не менее 100",
"folderLimitMustBeNumber": "Лимит папки должен быть числом",
"imapHostCannotBeEmpty": "IMAP хост не может быть пустым",
"imapHostRequired": "IMAP хост обязателен",
"imapPortMustBeLessThan65536": "IMAP порт должен быть меньше 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Размер пакета должен быть не более 200",
"singleRequestBatchSizeTooSmall": "Размер пакета должен быть не менее 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "varje {{minutes}} minut",
"field": "Fält",
"fixed": "Fast",
"folderLimit": "Mappgräns",
"folderLimitDescription": "Begränsa antalet e-postmeddelanden att synkronisera per mapp (minst 100). Lämna tomt för ingen gräns.",
"folderLimitPlaceholder": "t.ex. 1000",
"folderSync": {
"autoSelectDescendants": "Välj underordnade automatiskt",
"autoSelectParents": "Välj överordnade automatiskt",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "E-post krävs",
"folderLimitMustBeAtLeast100": "Mappgräns måste vara minst 100",
"folderLimitMustBeNumber": "Mappgräns måste vara ett tal",
"imapHostCannotBeEmpty": "IMAP-värd kan inte vara tom",
"imapHostRequired": "IMAP-värd krävs",
"imapPortMustBeLessThan65536": "IMAP-port måste vara mindre än 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "Batchstorlek måste vara högst 200",
"singleRequestBatchSizeTooSmall": "Batchstorlek måste vara minst 10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "每 {{minutes}} 分鐘",
"field": "欄位",
"fixed": "固定",
"folderLimit": "資料夾限制",
"folderLimitDescription": "限制每個資料夾要同步的郵件數量(最小 100)。若無限制請留空。",
"folderLimitPlaceholder": "例如:1000",
"folderSync": {
"autoSelectDescendants": "自動選取子項",
"autoSelectParents": "自動選取父項",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "電子郵件地址為必填項",
"folderLimitMustBeAtLeast100": "資料夾限制必須至少為 100",
"folderLimitMustBeNumber": "資料夾限制必須是數字",
"imapHostCannotBeEmpty": "IMAP 主機不可為空",
"imapHostRequired": "IMAP 主機為必填項",
"imapPortMustBeLessThan65536": "IMAP 連接埠必須小於 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "批次大小必須最多為200",
"singleRequestBatchSizeTooSmall": "批次大小必須至少為10"
}
}
}
+1 -6
View File
@@ -177,9 +177,6 @@
"everyMinutes": "每 {{minutes}} 分钟",
"field": "字段",
"fixed": "固定",
"folderLimit": "文件夹限制",
"folderLimitDescription": "限制每个文件夹同步的邮件数量(最少 100)。留空表示不限制。",
"folderLimitPlaceholder": "例如 1000",
"folderSync": {
"autoSelectDescendants": "自动选择子项",
"autoSelectParents": "自动选择父项",
@@ -1675,8 +1672,6 @@
},
"validation": {
"emailRequired": "邮箱为必填项",
"folderLimitMustBeAtLeast100": "文件夹限制必须至少为 100",
"folderLimitMustBeNumber": "文件夹限制必须是数字",
"imapHostCannotBeEmpty": "IMAP 主机不能为空",
"imapHostRequired": "IMAP 主机为必填项",
"imapPortMustBeLessThan65536": "IMAP 端口必须小于 65536",
@@ -1695,4 +1690,4 @@
"singleRequestBatchSizeTooLarge": "批大小必须最多为200",
"singleRequestBatchSizeTooSmall": "批大小必须至少为10"
}
}
}