diff --git a/l10n/ar.js b/l10n/ar.js index 457b851518..0a5e40b3cf 100644 --- a/l10n/ar.js +++ b/l10n/ar.js @@ -436,8 +436,8 @@ OC.L10N.register( "Save signature" : "حفظ التوقيع", "Place signature above quoted text" : "ضع التوقيع فوق النص المقتبس", "Edit name or color" : "عدِّل الاسم أو اللون", - "Delete tag" : "حذف الوسم", "Saving new tag name …" : "حفظ الاسم الجديد للوَسْم", + "Delete tag" : "حذف الوسم", "Set tag" : "تعيين وَسْمٍ tag", "Unset tag" : "إلغاء تعيين الوَسْم", "An error occurred, unable to rename the tag." : "حدث خطأ. يتعذّر تغيير تسمية الوَسْم", diff --git a/l10n/ar.json b/l10n/ar.json index 6792ec7222..ad8b0febc3 100644 --- a/l10n/ar.json +++ b/l10n/ar.json @@ -434,8 +434,8 @@ "Save signature" : "حفظ التوقيع", "Place signature above quoted text" : "ضع التوقيع فوق النص المقتبس", "Edit name or color" : "عدِّل الاسم أو اللون", - "Delete tag" : "حذف الوسم", "Saving new tag name …" : "حفظ الاسم الجديد للوَسْم", + "Delete tag" : "حذف الوسم", "Set tag" : "تعيين وَسْمٍ tag", "Unset tag" : "إلغاء تعيين الوَسْم", "An error occurred, unable to rename the tag." : "حدث خطأ. يتعذّر تغيير تسمية الوَسْم", diff --git a/l10n/bg.js b/l10n/bg.js index b6358e3032..3d77f29afe 100644 --- a/l10n/bg.js +++ b/l10n/bg.js @@ -379,8 +379,8 @@ OC.L10N.register( "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Подписът ви е по-голям от 2 MB. Това може да се отрази на работата на вашия редактор.", "Save signature" : "Запис на подпис", "Place signature above quoted text" : "Поставяне на подпис над цитирания текст", - "Delete tag" : "Изтрий таг", "Saving new tag name …" : "Запазва се името на нов етикет …", + "Delete tag" : "Изтрий таг", "Set tag" : "Задаване на етикет", "Unset tag" : "Отмяна на етикет", "An error occurred, unable to rename the tag." : "Възникна грешка, не може да се преименува етикет.", diff --git a/l10n/bg.json b/l10n/bg.json index 9e963372c3..11a8bf1397 100644 --- a/l10n/bg.json +++ b/l10n/bg.json @@ -377,8 +377,8 @@ "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Подписът ви е по-голям от 2 MB. Това може да се отрази на работата на вашия редактор.", "Save signature" : "Запис на подпис", "Place signature above quoted text" : "Поставяне на подпис над цитирания текст", - "Delete tag" : "Изтрий таг", "Saving new tag name …" : "Запазва се името на нов етикет …", + "Delete tag" : "Изтрий таг", "Set tag" : "Задаване на етикет", "Unset tag" : "Отмяна на етикет", "An error occurred, unable to rename the tag." : "Възникна грешка, не може да се преименува етикет.", diff --git a/l10n/ca.js b/l10n/ca.js index 16319a217b..38a3d80ecd 100644 --- a/l10n/ca.js +++ b/l10n/ca.js @@ -407,8 +407,8 @@ OC.L10N.register( "Your signature is larger than 2 MB. This may affect the performance of your editor." : "La teva signatura supera els 2 MB. Això pot afectar el rendiment del vostre editor.", "Save signature" : "Desa la signatura", "Place signature above quoted text" : "Col·loqueu la signatura a sobre del text citat", - "Delete tag" : "Suprimeix etiqueta", "Saving new tag name …" : "S'està desant el nou nom de l'etiqueta …", + "Delete tag" : "Suprimeix etiqueta", "Set tag" : "Definiu etiqueta", "Unset tag" : "Desactiveu etiqueta", "An error occurred, unable to rename the tag." : "S'ha produït un error, no s'ha pogut canviar el nom de l'etiqueta.", diff --git a/l10n/ca.json b/l10n/ca.json index f0f8482cc7..e4f46f556a 100644 --- a/l10n/ca.json +++ b/l10n/ca.json @@ -405,8 +405,8 @@ "Your signature is larger than 2 MB. This may affect the performance of your editor." : "La teva signatura supera els 2 MB. Això pot afectar el rendiment del vostre editor.", "Save signature" : "Desa la signatura", "Place signature above quoted text" : "Col·loqueu la signatura a sobre del text citat", - "Delete tag" : "Suprimeix etiqueta", "Saving new tag name …" : "S'està desant el nou nom de l'etiqueta …", + "Delete tag" : "Suprimeix etiqueta", "Set tag" : "Definiu etiqueta", "Unset tag" : "Desactiveu etiqueta", "An error occurred, unable to rename the tag." : "S'ha produït un error, no s'ha pogut canviar el nom de l'etiqueta.", diff --git a/l10n/cs.js b/l10n/cs.js index 2e2312fb2a..a5e51d01b4 100644 --- a/l10n/cs.js +++ b/l10n/cs.js @@ -374,6 +374,8 @@ OC.L10N.register( "Welcome to {cloudName} Mail" : "Vítejte v {cloudName} Poště", "Autoresponder off" : "Automatické odpovědi vypnuty", "Autoresponder on" : "Automatické odpovědi zapnuty", + "Autoresponder follows system settings" : "Automatický odpovídač následuje nastavení systému", + "The autoresponder follows your personal absence period settings." : "Automatický odpovídač následuje vaše osobní nastavení období nepřítomnosti", "Edit absence settings" : "Upravit nastavení nepřítomnosti", "First day" : "První den", "Last day (optional)" : "Poslední den (nepovinné)", @@ -433,8 +435,8 @@ OC.L10N.register( "Save signature" : "Uložit podpis", "Place signature above quoted text" : "Vložit podpis nad citovaný text", "Edit name or color" : "Upravit název nebo barvu", - "Delete tag" : "Smazat štítek", "Saving new tag name …" : "Ukládání nového názvu štítku…", + "Delete tag" : "Smazat štítek", "Set tag" : "Nastavit štítek", "Unset tag" : "Zrušit nastavení štítku", "An error occurred, unable to rename the tag." : "Došlo k chybě, štítek se nedaří přejmenovat.", diff --git a/l10n/cs.json b/l10n/cs.json index 48671cff76..244eb78cde 100644 --- a/l10n/cs.json +++ b/l10n/cs.json @@ -372,6 +372,8 @@ "Welcome to {cloudName} Mail" : "Vítejte v {cloudName} Poště", "Autoresponder off" : "Automatické odpovědi vypnuty", "Autoresponder on" : "Automatické odpovědi zapnuty", + "Autoresponder follows system settings" : "Automatický odpovídač následuje nastavení systému", + "The autoresponder follows your personal absence period settings." : "Automatický odpovídač následuje vaše osobní nastavení období nepřítomnosti", "Edit absence settings" : "Upravit nastavení nepřítomnosti", "First day" : "První den", "Last day (optional)" : "Poslední den (nepovinné)", @@ -431,8 +433,8 @@ "Save signature" : "Uložit podpis", "Place signature above quoted text" : "Vložit podpis nad citovaný text", "Edit name or color" : "Upravit název nebo barvu", - "Delete tag" : "Smazat štítek", "Saving new tag name …" : "Ukládání nového názvu štítku…", + "Delete tag" : "Smazat štítek", "Set tag" : "Nastavit štítek", "Unset tag" : "Zrušit nastavení štítku", "An error occurred, unable to rename the tag." : "Došlo k chybě, štítek se nedaří přejmenovat.", diff --git a/l10n/de.js b/l10n/de.js index 128c9192db..e135da472e 100644 --- a/l10n/de.js +++ b/l10n/de.js @@ -429,8 +429,8 @@ OC.L10N.register( "Save signature" : "Signatur speichern", "Place signature above quoted text" : "Signatur über dem zitierten Text platzieren", "Edit name or color" : "Name oder Farbe bearbeiten", - "Delete tag" : "Schlagwort löschen", "Saving new tag name …" : "Speichere neues Schlagwort …", + "Delete tag" : "Schlagwort löschen", "Set tag" : "Schlagwort setzen", "Unset tag" : "Schlagwort entfernen", "An error occurred, unable to rename the tag." : "Es ist ein Fehler aufgetreten. Das Schlagwort konnte nicht umbenannt werden.", diff --git a/l10n/de.json b/l10n/de.json index b71f439b0e..6c2d93c670 100644 --- a/l10n/de.json +++ b/l10n/de.json @@ -427,8 +427,8 @@ "Save signature" : "Signatur speichern", "Place signature above quoted text" : "Signatur über dem zitierten Text platzieren", "Edit name or color" : "Name oder Farbe bearbeiten", - "Delete tag" : "Schlagwort löschen", "Saving new tag name …" : "Speichere neues Schlagwort …", + "Delete tag" : "Schlagwort löschen", "Set tag" : "Schlagwort setzen", "Unset tag" : "Schlagwort entfernen", "An error occurred, unable to rename the tag." : "Es ist ein Fehler aufgetreten. Das Schlagwort konnte nicht umbenannt werden.", diff --git a/l10n/de_DE.js b/l10n/de_DE.js index c8420a46aa..8039d8a54f 100644 --- a/l10n/de_DE.js +++ b/l10n/de_DE.js @@ -436,8 +436,8 @@ OC.L10N.register( "Save signature" : "Signatur speichern", "Place signature above quoted text" : "Signatur über dem zitierten Text platzieren", "Edit name or color" : "Name oder Farbe bearbeiten", - "Delete tag" : "Schlagwort löschen", "Saving new tag name …" : "Speichere neues Schlagwort …", + "Delete tag" : "Schlagwort löschen", "Set tag" : "Schlagwort setzen", "Unset tag" : "Schlagwort entfernen", "An error occurred, unable to rename the tag." : "Es ist ein Fehler aufgetreten. Das Schlagwort konnte nicht umbenannt werden.", diff --git a/l10n/de_DE.json b/l10n/de_DE.json index 71d3b53964..c54f3cd454 100644 --- a/l10n/de_DE.json +++ b/l10n/de_DE.json @@ -434,8 +434,8 @@ "Save signature" : "Signatur speichern", "Place signature above quoted text" : "Signatur über dem zitierten Text platzieren", "Edit name or color" : "Name oder Farbe bearbeiten", - "Delete tag" : "Schlagwort löschen", "Saving new tag name …" : "Speichere neues Schlagwort …", + "Delete tag" : "Schlagwort löschen", "Set tag" : "Schlagwort setzen", "Unset tag" : "Schlagwort entfernen", "An error occurred, unable to rename the tag." : "Es ist ein Fehler aufgetreten. Das Schlagwort konnte nicht umbenannt werden.", diff --git a/l10n/el.js b/l10n/el.js index cf2d732934..5362cdb8a6 100644 --- a/l10n/el.js +++ b/l10n/el.js @@ -292,8 +292,8 @@ OC.L10N.register( "Sieve User" : "Χρήστης Sieve", "Signature …" : "Υπογραφή...", "Save signature" : "Αποθήκευση υπογραφής", - "Delete tag" : "Διαγραφή ετικέτας", "Saving new tag name …" : "Αποθήκευση νέου ονόματος ετικέτας…", + "Delete tag" : "Διαγραφή ετικέτας", "An error occurred, unable to rename the tag." : "Παρουσιάστηκε σφάλμα, δεν ήταν δυνατή η μετονομασία της ετικέτας.", "Add default tags" : "Προσθήκη προεπιλεγμένων ετικετών", "Add tag" : "Προσθήκη ετικέτας", diff --git a/l10n/el.json b/l10n/el.json index 390a3ca3f7..951291ef19 100644 --- a/l10n/el.json +++ b/l10n/el.json @@ -290,8 +290,8 @@ "Sieve User" : "Χρήστης Sieve", "Signature …" : "Υπογραφή...", "Save signature" : "Αποθήκευση υπογραφής", - "Delete tag" : "Διαγραφή ετικέτας", "Saving new tag name …" : "Αποθήκευση νέου ονόματος ετικέτας…", + "Delete tag" : "Διαγραφή ετικέτας", "An error occurred, unable to rename the tag." : "Παρουσιάστηκε σφάλμα, δεν ήταν δυνατή η μετονομασία της ετικέτας.", "Add default tags" : "Προσθήκη προεπιλεγμένων ετικετών", "Add tag" : "Προσθήκη ετικέτας", diff --git a/l10n/en_GB.js b/l10n/en_GB.js index 6cdf9fdbd7..7f05a0a656 100644 --- a/l10n/en_GB.js +++ b/l10n/en_GB.js @@ -435,9 +435,9 @@ OC.L10N.register( "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Your signature is larger than 2 MB. This may affect the performance of your editor.", "Save signature" : "Save signature", "Place signature above quoted text" : "Place signature above quoted text", - "Edit name or color" : "Edit name or color", - "Delete tag" : "Delete tag", + "Edit name or color" : "Edit name or colour", "Saving new tag name …" : "Saving new tag name …", + "Delete tag" : "Delete tag", "Set tag" : "Set tag", "Unset tag" : "Unset tag", "An error occurred, unable to rename the tag." : "An error occurred, unable to rename the tag.", diff --git a/l10n/en_GB.json b/l10n/en_GB.json index 58b0eaa40f..ebeb2fbdd9 100644 --- a/l10n/en_GB.json +++ b/l10n/en_GB.json @@ -433,9 +433,9 @@ "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Your signature is larger than 2 MB. This may affect the performance of your editor.", "Save signature" : "Save signature", "Place signature above quoted text" : "Place signature above quoted text", - "Edit name or color" : "Edit name or color", - "Delete tag" : "Delete tag", + "Edit name or color" : "Edit name or colour", "Saving new tag name …" : "Saving new tag name …", + "Delete tag" : "Delete tag", "Set tag" : "Set tag", "Unset tag" : "Unset tag", "An error occurred, unable to rename the tag." : "An error occurred, unable to rename the tag.", diff --git a/l10n/es.js b/l10n/es.js index f25d7f2c6b..281d4d7a7b 100644 --- a/l10n/es.js +++ b/l10n/es.js @@ -433,8 +433,8 @@ OC.L10N.register( "Save signature" : "Guardar la firma", "Place signature above quoted text" : "Coloca la firma encima del texto citado", "Edit name or color" : "Editar nombre o color", - "Delete tag" : "Eliminar etiqueta", "Saving new tag name …" : "Guardando el nuevo nombre de la etiqueta …", + "Delete tag" : "Eliminar etiqueta", "Set tag" : "Establecer etiqueta", "Unset tag" : "Quitar etiqueta", "An error occurred, unable to rename the tag." : "Se ha producido un error y no se ha podido renombrar la etiqueta.", diff --git a/l10n/es.json b/l10n/es.json index 1f05f22e7f..19e0038fa4 100644 --- a/l10n/es.json +++ b/l10n/es.json @@ -431,8 +431,8 @@ "Save signature" : "Guardar la firma", "Place signature above quoted text" : "Coloca la firma encima del texto citado", "Edit name or color" : "Editar nombre o color", - "Delete tag" : "Eliminar etiqueta", "Saving new tag name …" : "Guardando el nuevo nombre de la etiqueta …", + "Delete tag" : "Eliminar etiqueta", "Set tag" : "Establecer etiqueta", "Unset tag" : "Quitar etiqueta", "An error occurred, unable to rename the tag." : "Se ha producido un error y no se ha podido renombrar la etiqueta.", diff --git a/l10n/eu.js b/l10n/eu.js index 08e1f01151..8b25914c7f 100644 --- a/l10n/eu.js +++ b/l10n/eu.js @@ -409,8 +409,8 @@ OC.L10N.register( "Save signature" : "Gorde sinadura", "Place signature above quoted text" : "Jarri sinadura aipatutako testuaren gainean", "Edit name or color" : "Editatu izena edo kolorea", - "Delete tag" : "Ezabatu etiketa", "Saving new tag name …" : "Etiketa-izen berria gordetzen ...", + "Delete tag" : "Ezabatu etiketa", "Set tag" : "Ezarri etiketa", "Unset tag" : "Ezarri gabeko etiketa", "An error occurred, unable to rename the tag." : "Errore bat gertatu da, ezin izan zaio etiketa aldatu.", diff --git a/l10n/eu.json b/l10n/eu.json index 6e86fdfe5c..c4e83f88c3 100644 --- a/l10n/eu.json +++ b/l10n/eu.json @@ -407,8 +407,8 @@ "Save signature" : "Gorde sinadura", "Place signature above quoted text" : "Jarri sinadura aipatutako testuaren gainean", "Edit name or color" : "Editatu izena edo kolorea", - "Delete tag" : "Ezabatu etiketa", "Saving new tag name …" : "Etiketa-izen berria gordetzen ...", + "Delete tag" : "Ezabatu etiketa", "Set tag" : "Ezarri etiketa", "Unset tag" : "Ezarri gabeko etiketa", "An error occurred, unable to rename the tag." : "Errore bat gertatu da, ezin izan zaio etiketa aldatu.", diff --git a/l10n/fi.js b/l10n/fi.js index 3f836f4ebc..64075d22c9 100644 --- a/l10n/fi.js +++ b/l10n/fi.js @@ -351,8 +351,8 @@ OC.L10N.register( "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Allekirjoituksesi koko on yli kaksi megatavua. Tämä saattaa vaikuttaa muokkaimen suorituskykyyn.", "Save signature" : "Tallenna allekirjoitus", "Place signature above quoted text" : "Aseta allekirjoitus lainatun tekstin yläpuolelle", - "Delete tag" : "Poista tunniste", "Saving new tag name …" : "Tallennetaan uuden tunnisteen nimeä…", + "Delete tag" : "Poista tunniste", "An error occurred, unable to rename the tag." : "Tapahtui virhe, tunnistetta ei voitu nimetä uudelleen.", "Add default tags" : "Lisää oletustunnisteet", "Add tag" : "Lisää tunniste", diff --git a/l10n/fi.json b/l10n/fi.json index 72440de7f1..f0121d1b95 100644 --- a/l10n/fi.json +++ b/l10n/fi.json @@ -349,8 +349,8 @@ "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Allekirjoituksesi koko on yli kaksi megatavua. Tämä saattaa vaikuttaa muokkaimen suorituskykyyn.", "Save signature" : "Tallenna allekirjoitus", "Place signature above quoted text" : "Aseta allekirjoitus lainatun tekstin yläpuolelle", - "Delete tag" : "Poista tunniste", "Saving new tag name …" : "Tallennetaan uuden tunnisteen nimeä…", + "Delete tag" : "Poista tunniste", "An error occurred, unable to rename the tag." : "Tapahtui virhe, tunnistetta ei voitu nimetä uudelleen.", "Add default tags" : "Lisää oletustunnisteet", "Add tag" : "Lisää tunniste", diff --git a/l10n/fr.js b/l10n/fr.js index c8331593dd..87f5b7c6c4 100644 --- a/l10n/fr.js +++ b/l10n/fr.js @@ -436,8 +436,8 @@ OC.L10N.register( "Save signature" : "Enregistrer la signature", "Place signature above quoted text" : "Placer la signature au-dessus du texte cité", "Edit name or color" : "Modifier le nom ou la couleur", - "Delete tag" : "Supprimer l'étiquette", "Saving new tag name …" : "Enregistrement du nouveau nom de l'étiquette ...", + "Delete tag" : "Supprimer l'étiquette", "Set tag" : "Ajouter l'étiquette", "Unset tag" : "Supprimer l'étiquette", "An error occurred, unable to rename the tag." : "Une erreur est survenue, impossible de renommer l'étiquette.", diff --git a/l10n/fr.json b/l10n/fr.json index a10a2ab4bd..08a970eb38 100644 --- a/l10n/fr.json +++ b/l10n/fr.json @@ -434,8 +434,8 @@ "Save signature" : "Enregistrer la signature", "Place signature above quoted text" : "Placer la signature au-dessus du texte cité", "Edit name or color" : "Modifier le nom ou la couleur", - "Delete tag" : "Supprimer l'étiquette", "Saving new tag name …" : "Enregistrement du nouveau nom de l'étiquette ...", + "Delete tag" : "Supprimer l'étiquette", "Set tag" : "Ajouter l'étiquette", "Unset tag" : "Supprimer l'étiquette", "An error occurred, unable to rename the tag." : "Une erreur est survenue, impossible de renommer l'étiquette.", diff --git a/l10n/gl.js b/l10n/gl.js index af64f9de1e..d782b03d18 100644 --- a/l10n/gl.js +++ b/l10n/gl.js @@ -436,8 +436,8 @@ OC.L10N.register( "Save signature" : "Gardar a sinatura", "Place signature above quoted text" : "Coloque a sinatura enriba do texto citado", "Edit name or color" : "Edita o nome ou a cor", - "Delete tag" : "Eliminar etiqueta", "Saving new tag name …" : "Gardando o nome da nova etiqueta…", + "Delete tag" : "Eliminar etiqueta", "Set tag" : "Poñer etiquetas", "Unset tag" : "Desactivar a etiqueta", "An error occurred, unable to rename the tag." : "Produciuse un erro, non é posíbel cambiar o nome da etiqueta.", diff --git a/l10n/gl.json b/l10n/gl.json index b12681815c..a6ad89febb 100644 --- a/l10n/gl.json +++ b/l10n/gl.json @@ -434,8 +434,8 @@ "Save signature" : "Gardar a sinatura", "Place signature above quoted text" : "Coloque a sinatura enriba do texto citado", "Edit name or color" : "Edita o nome ou a cor", - "Delete tag" : "Eliminar etiqueta", "Saving new tag name …" : "Gardando o nome da nova etiqueta…", + "Delete tag" : "Eliminar etiqueta", "Set tag" : "Poñer etiquetas", "Unset tag" : "Desactivar a etiqueta", "An error occurred, unable to rename the tag." : "Produciuse un erro, non é posíbel cambiar o nome da etiqueta.", diff --git a/l10n/hr.js b/l10n/hr.js index 8ef7d6be48..852ac4c538 100644 --- a/l10n/hr.js +++ b/l10n/hr.js @@ -250,8 +250,8 @@ OC.L10N.register( "Signature …" : "Potpis...", "Save signature" : "Spremi potpis", "Place signature above quoted text" : "Stavi potpis iznad citiranog teksta", - "Delete tag" : "Izbriši oznaku", "Saving new tag name …" : "Spremanje novog naziva oznake…", + "Delete tag" : "Izbriši oznaku", "An error occurred, unable to rename the tag." : "Došlo je do pogreške, nije moguće promijeniti naziv oznake.", "Add default tags" : "Dodaj zadane oznake", "Add tag" : "Dodaj oznaku", diff --git a/l10n/hr.json b/l10n/hr.json index 8ca0e31906..ca43dc8944 100644 --- a/l10n/hr.json +++ b/l10n/hr.json @@ -248,8 +248,8 @@ "Signature …" : "Potpis...", "Save signature" : "Spremi potpis", "Place signature above quoted text" : "Stavi potpis iznad citiranog teksta", - "Delete tag" : "Izbriši oznaku", "Saving new tag name …" : "Spremanje novog naziva oznake…", + "Delete tag" : "Izbriši oznaku", "An error occurred, unable to rename the tag." : "Došlo je do pogreške, nije moguće promijeniti naziv oznake.", "Add default tags" : "Dodaj zadane oznake", "Add tag" : "Dodaj oznaku", diff --git a/l10n/hu.js b/l10n/hu.js index 98aa71de86..a754d0f5e8 100644 --- a/l10n/hu.js +++ b/l10n/hu.js @@ -421,8 +421,8 @@ OC.L10N.register( "Save signature" : "Aláírás mentése", "Place signature above quoted text" : "Az aláírás az idézett szöveg fölé helyezése", "Edit name or color" : "Név vagy szín szerkesztése", - "Delete tag" : "Címke törlése", "Saving new tag name …" : "Új címkenév mentése…", + "Delete tag" : "Címke törlése", "Set tag" : "Címke beállítása", "Unset tag" : "Címke eltávolítása", "An error occurred, unable to rename the tag." : "Hiba történt, a címke nem nevezhető át", diff --git a/l10n/hu.json b/l10n/hu.json index b48143e567..d15cb2b6aa 100644 --- a/l10n/hu.json +++ b/l10n/hu.json @@ -419,8 +419,8 @@ "Save signature" : "Aláírás mentése", "Place signature above quoted text" : "Az aláírás az idézett szöveg fölé helyezése", "Edit name or color" : "Név vagy szín szerkesztése", - "Delete tag" : "Címke törlése", "Saving new tag name …" : "Új címkenév mentése…", + "Delete tag" : "Címke törlése", "Set tag" : "Címke beállítása", "Unset tag" : "Címke eltávolítása", "An error occurred, unable to rename the tag." : "Hiba történt, a címke nem nevezhető át", diff --git a/l10n/is.js b/l10n/is.js index 050352442c..2c01c7ace1 100644 --- a/l10n/is.js +++ b/l10n/is.js @@ -94,6 +94,7 @@ OC.L10N.register( "Back" : "Til baka", "Edit as new message" : "Breyta sem nýjum skilaboðum", "Create event" : "Búa til atburð", + "Create task" : "Búa til verkefni", "Blind copy recipients only" : "Einungis viðtakendur dulinna afrita", "No trash mailbox configured" : "Ekkert ruslpósthólf er stillt", "Could not delete message" : "Gat ekki eytt skilaboðum", @@ -154,6 +155,7 @@ OC.L10N.register( "Retry" : "Reyna aftur", "Uploading attachments …" : "Sendi inn viðhengi…", "Sending …" : "Sendi ...", + "First day" : "Fyrsta dag", "Message" : "Skilaboð", "Delete" : "Eyða", "Copy to clipboard" : "Afrita á klippispjald", diff --git a/l10n/is.json b/l10n/is.json index c0b96cc5ed..c285320975 100644 --- a/l10n/is.json +++ b/l10n/is.json @@ -92,6 +92,7 @@ "Back" : "Til baka", "Edit as new message" : "Breyta sem nýjum skilaboðum", "Create event" : "Búa til atburð", + "Create task" : "Búa til verkefni", "Blind copy recipients only" : "Einungis viðtakendur dulinna afrita", "No trash mailbox configured" : "Ekkert ruslpósthólf er stillt", "Could not delete message" : "Gat ekki eytt skilaboðum", @@ -152,6 +153,7 @@ "Retry" : "Reyna aftur", "Uploading attachments …" : "Sendi inn viðhengi…", "Sending …" : "Sendi ...", + "First day" : "Fyrsta dag", "Message" : "Skilaboð", "Delete" : "Eyða", "Copy to clipboard" : "Afrita á klippispjald", diff --git a/l10n/it.js b/l10n/it.js index 775d3700cc..3141346f15 100644 --- a/l10n/it.js +++ b/l10n/it.js @@ -240,6 +240,7 @@ OC.L10N.register( "Draft" : "Bozza", "No sent mailbox configured. Please pick one in the account settings." : "Nessuna casella di posta inviata configurata. Scegline una nelle impostazioni dell'account.", "You are trying to send to many recipients in To and/or Cc. Consider using Bcc to hide recipient addresses." : "Stai tentando di inviare a troppi destinatari in A e/o CC. Considera l'idea di utilizzare CCN per nascondere gli indirizzi dei destinatari.", + "First day" : "Primo giorno", "Message" : "Messaggio", "Oh Snap!" : "Accidenti!", "Could not open outbox" : "Impossibile aprire la posta in uscita", @@ -273,8 +274,8 @@ OC.L10N.register( "Signature …" : "Firma...", "Save signature" : "Salva firma", "Place signature above quoted text" : "Posiziona la firma sopra il testo citato", - "Delete tag" : "Elimina etichetta", "Saving new tag name …" : "Salvataggio nuovo nome della etichetta...", + "Delete tag" : "Elimina etichetta", "An error occurred, unable to rename the tag." : "Si è verificato un errore, impossibile rinominare l'etichetta.", "Add default tags" : "Aggiungi etichette predefiniti", "Add tag" : "Aggiungi etichetta", diff --git a/l10n/it.json b/l10n/it.json index 0c413d4023..c9e5f2641f 100644 --- a/l10n/it.json +++ b/l10n/it.json @@ -238,6 +238,7 @@ "Draft" : "Bozza", "No sent mailbox configured. Please pick one in the account settings." : "Nessuna casella di posta inviata configurata. Scegline una nelle impostazioni dell'account.", "You are trying to send to many recipients in To and/or Cc. Consider using Bcc to hide recipient addresses." : "Stai tentando di inviare a troppi destinatari in A e/o CC. Considera l'idea di utilizzare CCN per nascondere gli indirizzi dei destinatari.", + "First day" : "Primo giorno", "Message" : "Messaggio", "Oh Snap!" : "Accidenti!", "Could not open outbox" : "Impossibile aprire la posta in uscita", @@ -271,8 +272,8 @@ "Signature …" : "Firma...", "Save signature" : "Salva firma", "Place signature above quoted text" : "Posiziona la firma sopra il testo citato", - "Delete tag" : "Elimina etichetta", "Saving new tag name …" : "Salvataggio nuovo nome della etichetta...", + "Delete tag" : "Elimina etichetta", "An error occurred, unable to rename the tag." : "Si è verificato un errore, impossibile rinominare l'etichetta.", "Add default tags" : "Aggiungi etichette predefiniti", "Add tag" : "Aggiungi etichetta", diff --git a/l10n/nb.js b/l10n/nb.js index 4577e3f5ad..732a7bd6dc 100644 --- a/l10n/nb.js +++ b/l10n/nb.js @@ -301,8 +301,8 @@ OC.L10N.register( "Signature …" : "Signatur ...", "Save signature" : "Lagre signatur", "Place signature above quoted text" : "Plasser signatur over sitert tekst", - "Delete tag" : "Slett merke", "Saving new tag name …" : "Lagrer nytt tagnavn …", + "Delete tag" : "Slett merke", "An error occurred, unable to rename the tag." : "Det oppsto en feil, kan ikke gi nytt navn til taggen.", "Add default tags" : "Legg til standardtags", "Add tag" : "Legg til merkelapp", diff --git a/l10n/nb.json b/l10n/nb.json index dd733b5ea1..11f97c35f7 100644 --- a/l10n/nb.json +++ b/l10n/nb.json @@ -299,8 +299,8 @@ "Signature …" : "Signatur ...", "Save signature" : "Lagre signatur", "Place signature above quoted text" : "Plasser signatur over sitert tekst", - "Delete tag" : "Slett merke", "Saving new tag name …" : "Lagrer nytt tagnavn …", + "Delete tag" : "Slett merke", "An error occurred, unable to rename the tag." : "Det oppsto en feil, kan ikke gi nytt navn til taggen.", "Add default tags" : "Legg til standardtags", "Add tag" : "Legg til merkelapp", diff --git a/l10n/nl.js b/l10n/nl.js index 4b93809282..294a4bd28d 100644 --- a/l10n/nl.js +++ b/l10n/nl.js @@ -97,6 +97,7 @@ OC.L10N.register( "Message {id} could not be found" : "Bericht {id} kon niet worden gevonden", "Choose a file to add as attachment" : "Kies een bestand om als bijlage toe te voegen", "Choose a file to share as a link" : "Kies een bestand om als link te delen", + "_{count} attachment_::_{count} attachments_" : ["{count} bijlagen","{count} bijlagen"], "_The attachment exceed the allowed attachments size of {size}. Please share the file via link instead._::_The attachments exceed the allowed attachments size of {size}. Please share the files via link instead._" : ["De bijlage overschrijdt de toegestane omvang van {size}. Deel de bestanden in plaats daarvan via een link.","De bijlagen overschrijden de toegestane omvang van {size}. Deel de bestanden in plaats daarvan via een link."], "Confirm" : "Bevestigen", "Plain text" : "Platte tekst", @@ -169,6 +170,7 @@ OC.L10N.register( "Save to Files" : "Opslaan in Bestanden", "Unnamed" : "Onbenoemd", "Embedded message" : "Ingebed bericht", + "Next week – {timeLocale}" : "Volgende week - {timeLocale}", "Choose a folder to store the attachment in" : "Kies een map op de bijlage in op te slaan", "Save all to Files" : "Sla alles op in Bestanden", "Download Zip" : "Download Zip", @@ -255,11 +257,12 @@ OC.L10N.register( "Sieve Password" : "Sieve Wachtwoord", "Save sieve settings" : "Bewaar sieve instellingen", "Save sieve script" : "Bewaar sieve-script", + "This weekend – {timeLocale}" : "Dit weekend - {timeLocale}", "Signature …" : "Handtekening ...", "Save signature" : "Handtekening opslaan", "Place signature above quoted text" : "Plaats handtekening boven de aangehaalde tekst", - "Delete tag" : "Verwijderen tag", "Saving new tag name …" : "Sla nieuw tag op ...", + "Delete tag" : "Verwijderen tag", "An error occurred, unable to rename the tag." : "Er is een fout opgetreden, kan tag niet hernoemen", "Add default tags" : "Voeg standaard tags toe", "Add tag" : "Toevoegen tag", @@ -367,6 +370,8 @@ OC.L10N.register( "Archive" : "Archiveer", "Account connected" : "Account verbonden", "Connect your mail account" : "Verbind je e-mailaccount", + "Tomorrow – {timeLocale}" : "Morgen - {timeLocale}", + "Later today – {timeLocale}" : "Later vandaag – {timeLocale}", "Itinerary for {type} is not supported yet" : "route voor {type} wordt nog niet ondersteund", "All" : "Alle", "Drafts" : "Concepten", diff --git a/l10n/nl.json b/l10n/nl.json index 43c32092cf..7bd9a63483 100644 --- a/l10n/nl.json +++ b/l10n/nl.json @@ -95,6 +95,7 @@ "Message {id} could not be found" : "Bericht {id} kon niet worden gevonden", "Choose a file to add as attachment" : "Kies een bestand om als bijlage toe te voegen", "Choose a file to share as a link" : "Kies een bestand om als link te delen", + "_{count} attachment_::_{count} attachments_" : ["{count} bijlagen","{count} bijlagen"], "_The attachment exceed the allowed attachments size of {size}. Please share the file via link instead._::_The attachments exceed the allowed attachments size of {size}. Please share the files via link instead._" : ["De bijlage overschrijdt de toegestane omvang van {size}. Deel de bestanden in plaats daarvan via een link.","De bijlagen overschrijden de toegestane omvang van {size}. Deel de bestanden in plaats daarvan via een link."], "Confirm" : "Bevestigen", "Plain text" : "Platte tekst", @@ -167,6 +168,7 @@ "Save to Files" : "Opslaan in Bestanden", "Unnamed" : "Onbenoemd", "Embedded message" : "Ingebed bericht", + "Next week – {timeLocale}" : "Volgende week - {timeLocale}", "Choose a folder to store the attachment in" : "Kies een map op de bijlage in op te slaan", "Save all to Files" : "Sla alles op in Bestanden", "Download Zip" : "Download Zip", @@ -253,11 +255,12 @@ "Sieve Password" : "Sieve Wachtwoord", "Save sieve settings" : "Bewaar sieve instellingen", "Save sieve script" : "Bewaar sieve-script", + "This weekend – {timeLocale}" : "Dit weekend - {timeLocale}", "Signature …" : "Handtekening ...", "Save signature" : "Handtekening opslaan", "Place signature above quoted text" : "Plaats handtekening boven de aangehaalde tekst", - "Delete tag" : "Verwijderen tag", "Saving new tag name …" : "Sla nieuw tag op ...", + "Delete tag" : "Verwijderen tag", "An error occurred, unable to rename the tag." : "Er is een fout opgetreden, kan tag niet hernoemen", "Add default tags" : "Voeg standaard tags toe", "Add tag" : "Toevoegen tag", @@ -365,6 +368,8 @@ "Archive" : "Archiveer", "Account connected" : "Account verbonden", "Connect your mail account" : "Verbind je e-mailaccount", + "Tomorrow – {timeLocale}" : "Morgen - {timeLocale}", + "Later today – {timeLocale}" : "Later vandaag – {timeLocale}", "Itinerary for {type} is not supported yet" : "route voor {type} wordt nog niet ondersteund", "All" : "Alle", "Drafts" : "Concepten", diff --git a/l10n/pl.js b/l10n/pl.js index 6f02ac7ebf..80f8411eba 100644 --- a/l10n/pl.js +++ b/l10n/pl.js @@ -361,8 +361,8 @@ OC.L10N.register( "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Twój podpis jest większy niż 2 MB. Może to wpłynąć na wydajność Twojego edytora.", "Save signature" : "Zapisz podpis", "Place signature above quoted text" : "Umieść podpis nad cytowanym tekstem", - "Delete tag" : "Usuń etykiety", "Saving new tag name …" : "Zapisywanie nowej nazwy etykiety…", + "Delete tag" : "Usuń etykiety", "An error occurred, unable to rename the tag." : "Wystąpił błąd, nie można zmienić nazwy etykiety.", "Add default tags" : "Dodaj etykiety domyślne", "Add tag" : "Dodaj etykietę", diff --git a/l10n/pl.json b/l10n/pl.json index 29f7181126..e52ef44b4a 100644 --- a/l10n/pl.json +++ b/l10n/pl.json @@ -359,8 +359,8 @@ "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Twój podpis jest większy niż 2 MB. Może to wpłynąć na wydajność Twojego edytora.", "Save signature" : "Zapisz podpis", "Place signature above quoted text" : "Umieść podpis nad cytowanym tekstem", - "Delete tag" : "Usuń etykiety", "Saving new tag name …" : "Zapisywanie nowej nazwy etykiety…", + "Delete tag" : "Usuń etykiety", "An error occurred, unable to rename the tag." : "Wystąpił błąd, nie można zmienić nazwy etykiety.", "Add default tags" : "Dodaj etykiety domyślne", "Add tag" : "Dodaj etykietę", diff --git a/l10n/pt_BR.js b/l10n/pt_BR.js index 5aad326432..58ea8825b8 100644 --- a/l10n/pt_BR.js +++ b/l10n/pt_BR.js @@ -422,8 +422,8 @@ OC.L10N.register( "Save signature" : "Salvar assinatura", "Place signature above quoted text" : "Coloque a assinatura acima do texto citado ", "Edit name or color" : "Editar nome ou cor", - "Delete tag" : "Excluir tag", "Saving new tag name …" : "Salvando novo nome de etiquetas…", + "Delete tag" : "Excluir tag", "Set tag" : "Definir etiqueta", "Unset tag" : "Etiqueta não definida", "An error occurred, unable to rename the tag." : "Ocorreu um erro, não foi possível renomear a etiqueta.", diff --git a/l10n/pt_BR.json b/l10n/pt_BR.json index 8f065cc7a7..957736ea20 100644 --- a/l10n/pt_BR.json +++ b/l10n/pt_BR.json @@ -420,8 +420,8 @@ "Save signature" : "Salvar assinatura", "Place signature above quoted text" : "Coloque a assinatura acima do texto citado ", "Edit name or color" : "Editar nome ou cor", - "Delete tag" : "Excluir tag", "Saving new tag name …" : "Salvando novo nome de etiquetas…", + "Delete tag" : "Excluir tag", "Set tag" : "Definir etiqueta", "Unset tag" : "Etiqueta não definida", "An error occurred, unable to rename the tag." : "Ocorreu um erro, não foi possível renomear a etiqueta.", diff --git a/l10n/ro.js b/l10n/ro.js index 04867da538..f0daf2e607 100644 --- a/l10n/ro.js +++ b/l10n/ro.js @@ -58,6 +58,12 @@ OC.L10N.register( "Account created. Please follow the pop-up instructions to link your Google account" : "Contul a fost creat. Urmați instrucțiunile pop-up pentru a conecta contul Google", "Loading account" : "Se încarcă contul", "Account updated" : "Contul a fost actualizat", + "IMAP server is not reachable" : "Serverul IMAP nu poate fi contactat", + "SMTP server is not reachable" : "Serverul SMTP nu poate fi contactat", + "IMAP username or password is wrong" : "Parola sau numele utilizatorului pentru IMAP sunt eronate", + "SMTP username or password is wrong" : "Parola sau numele utilizatorului pentru SMTP sunt eronate", + "IMAP connection failed" : "Conectarea la IMAP a eșuat", + "SMTP connection failed" : "Conectarea la SMTP a eșuat", "Authorization pop-up closed" : "Dialogul de autorizare s-a închis", "Configuration discovery temporarily not available. Please try again later." : "Descoperirea configurației este temporar indisponibilă. Încercați mai târziu.", "There was an error while setting up your account" : "A apărut o eroare la configurarea contului", @@ -207,11 +213,17 @@ OC.L10N.register( "_Mark {number} as spam_::_Mark {number} as spam_" : ["Marchează {number} ca spam","Marchează {number} ca spam","Marchează {number} ca spam"], "_Mark {number} as not spam_::_Mark {number} as not spam_" : ["Marchează {number} ca nefiind spam","Marchează {number} ca nefiind spam","Marchează {number} ca nefiind spam"], "_Unselect {number}_::_Unselect {number}_" : ["Deselectează {number}","Deselectează {number}","Deselectează {number}"], + "_Edit tags for {number}_::_Edit tags for {number}_" : ["Editează eticheta pentru {number}","Editează etichetele pentru {number}","Editează etichetele pentru {number}"], + "_Move {number} thread_::_Move {number} threads_" : ["Mută {number} conversație","Mută {number} conversații","Mută {number} conversații"], + "_Forward {number} as attachment_::_Forward {number} as attachment_" : ["Redirecționează {number} ca atașament","Redirecționează {number} ca atașament","Redirecționează {number} ca atașament"], + "_Delete {number} thread_::_Delete {number} threads_" : ["Șterge {number} conversație","Șterge {number} conversații","Șterge {number} conversații"], + "Report this bug" : "Raportați acest incident", "All day" : "Toată ziua", "Create" : "Crează", "Event created" : "Evenimentul a fost creat", "Could not create event" : "Evenimentul nu a putut fi creat", "You accepted this invitation" : "Ați acceptat această invitație", + "You tentatively accepted this invitation" : "Intenționați să acceptați această invitație", "You declined this invitation" : "Ați declinat această invitație", "You already reacted to this invitation" : "Ați reacționat deja la această invitație", "You have been invited to an event" : "Ați fost invitat la un eveniment", @@ -225,16 +237,21 @@ OC.L10N.register( "This event is in the past." : "Evenimentul este în trecut", "This event was updated" : "Evenimentul a fost actualizat", "{attendeeName} accepted your invitation" : "{attendeeName} a acceptat invitația", + "{attendeeName} tentatively accepted your invitation" : "{attendeeName} intenționează să accepte invitația", "{attendeeName} declined your invitation" : "{attendeeName} a declinat invitația", "{attendeeName} reacted to your invitation" : "{attendeeName} a reacționat la invitație", "Failed to save your participation status" : "Eroare la salvarea statusului participanților", "Could not open mailbox" : "Cutia poștală nu se poate deschide", "Loading messages …" : "Se încarcă mesajele ...", "Indexing your messages. This can take a bit longer for larger mailboxes." : "Se indexează mesajele. Aceasta poate dura ceva mai mult pentru cutiile poștale mai încărcate.", - "Choose target mailbox" : "Selectați cutia poștală destinație", + "To archive a message please configure an archive mailbox in account settings" : "Pentru arhivarea mesajelor configurați un folder de arhivare în setările contului", + "You are not allowed to move this message to the archive folder and/or delete this message from the current folder" : "Nu aveți permisiunea să mutați mesajul în folderul de arhivare și/sau șterge mesajul din folderul curent", + "Choose target mailbox" : "Selectați folderul destinație", + "No more submailboxes in here" : "Nu mai sunt subfoldere", "Choose" : "Alege", "Important info" : "Informații importante", "Other" : "Altele", + "Messages will automatically be marked as important based on which messages you interacted with or marked as important. In the beginning you might have to manually change the importance to teach the system, but it will improve over time." : "Mesajul va fi marcat automat ca important în funcție de mesajele cu care ați interacționat sau pe care le-ați marcat ca importante. La început ar trebui să setați manual importanța pentru antrenarea sistemului, dar aceasta se va îmbunătăți în timp.", "The sender of this message has asked to be notified when you read this message." : "Expeditorul acestui mesaj a solicitat să fie notificat de citirea mesajului.", "Notify the sender" : "Notifică expeditorul", "You sent a read confirmation to the sender of this message." : "Ați transmis o confirmare de citire expeditorului acestui mesaj.", @@ -245,6 +262,7 @@ OC.L10N.register( "Move message" : "Mută mesajul", "Forward message as attachment" : "Transmite mesajul ca atașament", "View source" : "Sursa mesajului", + "Download thread data for debugging" : "Descarcă datele conversației pentru debug", "Message was snoozed" : "Mesajul a fost amânat", "Could not snooze message" : "Nu s-a putut amâna mesajul", "Message was unsnoozed" : "Mesajul a fost reluat", @@ -275,11 +293,12 @@ OC.L10N.register( "Moving thread" : "Mută conversația", "Moving message" : "Se mută mesajul", "Mail settings" : "Setări Mail", + "Provisioned account is disabled" : "Contul configurat este dezactivat", "Please login using a password to enable this account. The current session is using passwordless authentication, e.g. SSO or WebAuthn." : "Logați-vă cu o parolă pentru a activa acest cont. Sesiunea curentă utilizează autentificarea fără parolă, de ex. SSO sau WebAuthn.", "Quota" : "Procent", "Show only subscribed mailboxes" : "Arată doar căsuțele abonate", "Add mailbox" : "Adaugă mailbox", - "Mailbox name" : "Nume căsuță de mail", + "Mailbox name" : "Nume mailbox", "Saving" : "Se salvează", "Move up" : "Mută înainte", "Move down" : "Mută în jos", @@ -287,16 +306,28 @@ OC.L10N.register( "Loading …" : "Se încarcă…", "Not supported by the server" : "Incompatibil cu serverul", "{usage} of {limit} used" : "{usage} din {limit} utilizat", + "The account for {email} and cached email data will be removed from Nextcloud, but not from your email provider." : "Contul pentru {email} și datele din cache vor fi eliminate din Nextcloud, dar nu și de la providerul de mail.", + "Remove account {email}" : "Șterge contul {email}", "Remove {email}" : "Șterge {email}", "Show all subscribed mailboxes" : "Afișează toate căsuțele abonate", + "Show all mailboxes" : "Afișează toate folderele", + "Collapse mailboxes" : "Restrânge folderele", "Mark all as read" : "Marcaţi tot ca fiind citit", - "Mark all messages of this mailbox as read" : "Marchează toate mesajele din această cutie poștală ca citite", + "Mark all messages of this mailbox as read" : "Marchează toate mesajele din acest folder ca citite", + "Add submailbox" : "Adaugă subfolder", "Edit name" : "Modifică numele", "Move mailbox" : "Mută cutia poștală", "Clear cache" : "Șterge cache", + "Clear locally cached data, in case there are issues with synchronization." : "Ștergeți datele din cache local în cazul problemelor de sincronizare.", "Subscribed" : "Abonat", "Sync in background" : "Sincronizează în fundal", - "All messages in mailbox will be deleted." : "Toate mesajele din cutia poștală vor fi șterse", + "Clear mailbox" : "Golește folderul", + "Delete mailbox" : "Șterge folderul", + "All messages in mailbox will be deleted." : "Vor fi șterse toate mesajele din acest folder", + "Clear mailbox {name}" : "Golește folderul {name}", + "The mailbox and all messages in it will be deleted." : "Se ca șterge folderul și toate mesajele.", + "Delete mailbox {name}" : "Șterge mailbox {name}", + "An error occurred, unable to rename the mailbox." : "Eroare la redenumirea mailbox.", "_{total} message_::_{total} messages_" : ["{total} mesaj","{total} mesaje","{total} mesaje"], "_{unread} unread of {total}_::_{unread} unread of {total}_" : ["{unread} necitit din {total}","{unread} necitite din {total}","{unread} necitite din {total}"], "New message" : "Mesaj nou", @@ -315,14 +346,23 @@ OC.L10N.register( "Failed to save draft" : "Eroare la salvarea schiței", "attachment" : "atașament", "attached" : "atașat", + "No sent mailbox configured. Please pick one in the account settings." : "Nu este configurat un folder pentru mesaje trimise. Selectați unul în setările contului.", + "You are trying to send to many recipients in To and/or Cc. Consider using Bcc to hide recipient addresses." : "Încercați să trimiteți la prea mulți destinatari la Către și/sau Cc. încercați să folosiți Bcc pentru ascunderea adreselor destinatarilor.", + "You mentioned an attachment. Did you forget to add it?" : "Ați menționat un atașament. Ați uitat cumva să-l adăugați?", "Message discarded" : "Mesaj eliminat", "Could not discard message" : "Nu s-a putut elimina mesajul", "Welcome to {cloudName} Mail" : "Bine ați venit la {cloudName} Mail", + "Autoresponder off" : "Autoresponder oprit", + "Autoresponder on" : "Autoresponder activ", + "Autoresponder follows system settings" : "Autoresponder-ul urmează setările sistemului", + "The autoresponder follows your personal absence period settings." : "Autoresponder-ul urmărește setările perioadei de absență.", "Edit absence settings" : "Editați setările pentru absență", "First day" : "Prima zi", "Last day (optional)" : "Ultima zi (opțional)", "${subject} will be replaced with the subject of the message you are responding to" : "${subject} va fi înlocuit cu subiectul mesajului la care răspundeți", "Message" : "Mesaj", + "Save autoresponder" : "Salvează autoresponder", + "Could not open outbox" : "Nu s-a putut deschide Outbox", "Pending or not sent messages will show up here" : "Mesajele în așteptare sau netransmise vor fi afișate aici", "Delete" : "Șterge", "Message could not be sent" : "Mesajul nu s-a putut transmite", @@ -335,7 +375,7 @@ OC.L10N.register( "Add" : "Adaugă", "Copied email address to clipboard" : "Adresa de mail a fost copiată", "Could not copy email address to clipboard" : "Nu s-a putut copia adresa de mail", - "Search in mailbox" : "Caută în cutia poștală", + "Search in mailbox" : "Cautare în folder", "Close" : "Închide", "Search parameters" : "Parametri de căutare", "Search subject" : "Caută subiect", @@ -345,6 +385,8 @@ OC.L10N.register( "Pick an end date" : "Selectați o dată de sfârșit", "Select senders" : "Selectează expeditorii", "Select recipients" : "Selectează recipienții", + "Select CC recipients" : "Selectați destinatarii pentru CC", + "Select BCC recipients" : "Selectați destinatarii pentru BCC", "Tags" : "Etichete", "Select tags" : "Selectează etichete", "Marked as" : "Marcat ca", @@ -355,6 +397,7 @@ OC.L10N.register( "Enable mail body search" : "Activează căutarea în textul mesajelor", "Disabled" : "Dezactivați", "Enabled" : "Activat", + "IMAP Credentials" : "Credențiale pentru IMAP", "Custom" : "Particularizat", "The syntax seems to be incorrect:" : "Sintaxa pare incorectă:", "This weekend – {timeLocale}" : "În acest weekend – {timeLocale}", @@ -363,8 +406,8 @@ OC.L10N.register( "Save signature" : "Salvează semnătura", "Place signature above quoted text" : "Plasează semnătura deasupra textului citat", "Edit name or color" : "Editează numele sau culoarea", - "Delete tag" : "Șterge eticheta", "Saving new tag name …" : "Se salvează noul nume al etichetei ...", + "Delete tag" : "Șterge eticheta", "Set tag" : "Setează eticheta", "Unset tag" : "Deselectează eticheta", "An error occurred, unable to rename the tag." : "Eroare la redenumirea etichetei.", @@ -384,6 +427,7 @@ OC.L10N.register( "Could not load your message thread" : "Nu poate fi încărcată conversația", "The thread doesn't exist or has been deleted" : "Conversația nu există sau a fost ștearsă", "Unsubscribe" : "Dezabonare", + "Mark as unfavorite" : "Elimină de la favorite", "Mark as favorite" : "Marchează ca favorit", "Mark as unread" : "Marchează ca necitit", "Mark as read" : "Marchează ca citit", @@ -394,30 +438,53 @@ OC.L10N.register( "Unsubscribing will stop all messages from the mailing list {sender}" : "Dezabonare va opri mesajele din lista de distribuție {sender}", "Send unsubscribe email" : "Trimite email de dezabonare", "Unsubscribe via email" : "Dezabonare prin email", + "Encrypted & verified " : "Criptat și verificat", + "Signature verified" : "Semnătură verificată", + "Signature unverified " : "Semnătură neverificată", "Unsubscribe request sent" : "Cerere de dezabonare trimisă", "Could not unsubscribe from mailing list" : "A eșuat dezabonarea de la lista de distribuție", "Go to latest message" : "Salt la ultimul mesaj", "Go to newest message" : "Salt la cele mai recente mesaje", "Thread Summary" : "Rezumat conversație", + "{name} Assistant" : "{name} Asistent", + "Disable trash retention by leaving the field empty or setting it to 0. Only mails deleted after enabling trash retention will be processed." : "Dezactivați păstrarea în coș lăsând câmpul necompletat sau introducând 0. Vor fi procesate doar mailurile șterse după activarea păstrării în coș. ", "Remove" : "Elimină", + "No senders are trusted at the moment." : "Niciun expeditor de încredere în acest moment. ", + "Could not remove trusted sender {sender}" : "Expeditorul de încredere {sender} nu poate fi șters", "domain" : "domeniu", "(organizer)" : "(organizator)", "Untitled event" : "Eveniment fără titlu", "Import into {calendar}" : "Importă în {calendar}", "Event imported into {calendar}" : "Eveniment importat în {calendar}", "Reservation {id}" : "Rezervare {id}", + "Mail app" : "Aplicația Mail", + "The mail app allows users to read mails on their IMAP accounts." : "Aplicația de mail permite utilizatorilor să citească mailurile din conturile lor IMAP.", + "Here you can find instance-wide settings. User specific settings are found in the app itself (bottom-left corner)." : "Aici găsiți setările generale pentru instanță. Setările specifice pentru utilizator se găsesc în aplicație (în colțul din stânga, jos).", + "Account provisioning" : "Alimentare cont", + "Add new config" : "Adaugă o nouă configurație", + "Allow additional mail accounts" : "Permite conturi de mail suplimentare", + "Allow additional Mail accounts from User Settings" : "Permite conturi de mail suplimentare în setările utilizator", "Enable thread summary" : "Activați rezumatul conversației", + "Enable thread summaries" : "Activează rezumatul conversației", + "Anti Spam Service" : "Serviciul anti-spam", + "Successfully updated config for \"{domain}\"" : "S-a actualizat configurația pentru \"{domain}\"", + "Error saving config" : "Eroare la salvarea configurației", + "Saved config for \"{domain}\"" : "A fost salvată configurația pentru \"{domain}\"", + "The original message will be attached as a \"message/rfc822\" attachment." : "Mesajul original va fi atașat ca atașament \"message/rfc822\".", "\"Mark as Spam\" Email Address" : "\"Marchează ca Spam\" adresa de Email", "\"Mark Not Junk\" Email Address" : "\"Marchează ca Not Junk\" adresa de Email ", "Reset" : "Resetare", "Client ID" : "ID client", "Client secret" : "Secret client", + "Unlink" : "Deconectare", "General" : "General", "User" : "Utilizator", "Host" : "Gazdă", "Port" : "Portul", + "Use master password" : "Folosește master password", "LDAP aliases integration" : "Integrare aliasuri LDAP", "Enable LDAP aliases integration" : "Activează integrarea aliasurilor LDAP", + "Save Config" : "Salvează configurația", "S/MIME certificates" : "Certificatele S/MIME", "Certificate name" : "Nume certificat", "E-mail address" : "Adresa de E-mail ", @@ -427,6 +494,8 @@ OC.L10N.register( "Submit" : "Trimite", "Keyboard shortcut" : "Scurtături din tastatură", "Keyboard shortcuts" : "Scurtături din tastatură", + "Speed up your Mail experience with these quick shortcuts." : "Îmbunătățiți experiența în Mail cu aceste scurtături.", + "Compose new message" : "Compuneți mesaje noi", "Newer message" : "Mesaj mai recent", "Older message" : "Mesaj mai vechi", "Toggle star" : "Comută stea", @@ -434,25 +503,39 @@ OC.L10N.register( "Archive" : "Arhivă", "Account connected" : "Cont conectat", "You can close this window" : "Puteți închide fereastra", + "Connect your mail account" : "Conectați-vă contul de mail", + "To add a mail account, please contact your administrator." : "Pentru adăugarea unui cont de mail, contactați administratorul.", "Tomorrow – {timeLocale}" : "Mâine – {timeLocale}", "Later today – {timeLocale}" : "Azi, mai târziu – {timeLocale}", "All" : "Toate ", "Drafts" : "Schițe", "Favorites" : "Favorite", + "All inboxes" : "Toate inbox-urile", + "Junk" : "Nesolicitate", "Sent" : "Trimise", "Trash" : "Șterse", "Error while sharing file" : "Eroare la partajarea fișierului", "{from}\n{subject}" : "{from}\n{subject}", + "_%n new message \nfrom {from}_::_%n new messages \nfrom {from}_" : ["%n mesaj nou \nde la {from}","%n mesaje noi \nde la {from}","%n mesaje noi \nde la {from}"], + "There is already a message in progress. All unsaved changes will be lost if you continue!" : "Un mesaj este în progres. Toate modificările nesalvate se vor pierde dacă continuați!", "Discard changes" : "Anulează modificările", "Discard unsaved changes" : "Anulează modificările nesalvate", "Keep editing message" : "Continuă editarea mesajului", + "Attachments were not copied. Please add them manually." : "Atașamentele nu au fost copiate. Adăugați-le manual.", + "Could not create snooze mailbox" : "Nu s-a putut crea un folder pentru mesaje amânate", "Message sent" : "Mesajul a fost transmis", "Could not send message" : "Mesajul nu s-a putut transmite", + "Could not load {tag}{name}{endtag}" : "Nu s-a putut încărca {tag}{name}{endtag}", + "There was a problem loading {tag}{name}{endtag}" : "Eroare la încărcarea {tag}{name}{endtag}", "Could not load your message" : "Mesajul nu s-a putut încărca", + "Could not load the desired message" : "Nu s-a putut încărca mesajul dorit", "Could not load the message" : "Nu s-a putut încărca mesajul", "Error loading message" : "Eroare la încărcarea mesajelor", "Forwarding to %s" : "Retransmitere la %s", + "Click here if you are not automatically redirected within the next few seconds." : "Faceți click aici dacă nu sunteți redirectat automat în câteva secunde.", "Redirect" : "Deviere", + "The link leads to %s" : "Link-ul duce la %s", + "If you do not want to visit that page, you can return to Mail." : "Dacă nu doriți să vizitați acea pagină, vă puteți întoarce la Mail.", "Continue to %s" : "Continuă către %s" }, "nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"); diff --git a/l10n/ro.json b/l10n/ro.json index a9f2c8c840..a5f6712b2b 100644 --- a/l10n/ro.json +++ b/l10n/ro.json @@ -56,6 +56,12 @@ "Account created. Please follow the pop-up instructions to link your Google account" : "Contul a fost creat. Urmați instrucțiunile pop-up pentru a conecta contul Google", "Loading account" : "Se încarcă contul", "Account updated" : "Contul a fost actualizat", + "IMAP server is not reachable" : "Serverul IMAP nu poate fi contactat", + "SMTP server is not reachable" : "Serverul SMTP nu poate fi contactat", + "IMAP username or password is wrong" : "Parola sau numele utilizatorului pentru IMAP sunt eronate", + "SMTP username or password is wrong" : "Parola sau numele utilizatorului pentru SMTP sunt eronate", + "IMAP connection failed" : "Conectarea la IMAP a eșuat", + "SMTP connection failed" : "Conectarea la SMTP a eșuat", "Authorization pop-up closed" : "Dialogul de autorizare s-a închis", "Configuration discovery temporarily not available. Please try again later." : "Descoperirea configurației este temporar indisponibilă. Încercați mai târziu.", "There was an error while setting up your account" : "A apărut o eroare la configurarea contului", @@ -205,11 +211,17 @@ "_Mark {number} as spam_::_Mark {number} as spam_" : ["Marchează {number} ca spam","Marchează {number} ca spam","Marchează {number} ca spam"], "_Mark {number} as not spam_::_Mark {number} as not spam_" : ["Marchează {number} ca nefiind spam","Marchează {number} ca nefiind spam","Marchează {number} ca nefiind spam"], "_Unselect {number}_::_Unselect {number}_" : ["Deselectează {number}","Deselectează {number}","Deselectează {number}"], + "_Edit tags for {number}_::_Edit tags for {number}_" : ["Editează eticheta pentru {number}","Editează etichetele pentru {number}","Editează etichetele pentru {number}"], + "_Move {number} thread_::_Move {number} threads_" : ["Mută {number} conversație","Mută {number} conversații","Mută {number} conversații"], + "_Forward {number} as attachment_::_Forward {number} as attachment_" : ["Redirecționează {number} ca atașament","Redirecționează {number} ca atașament","Redirecționează {number} ca atașament"], + "_Delete {number} thread_::_Delete {number} threads_" : ["Șterge {number} conversație","Șterge {number} conversații","Șterge {number} conversații"], + "Report this bug" : "Raportați acest incident", "All day" : "Toată ziua", "Create" : "Crează", "Event created" : "Evenimentul a fost creat", "Could not create event" : "Evenimentul nu a putut fi creat", "You accepted this invitation" : "Ați acceptat această invitație", + "You tentatively accepted this invitation" : "Intenționați să acceptați această invitație", "You declined this invitation" : "Ați declinat această invitație", "You already reacted to this invitation" : "Ați reacționat deja la această invitație", "You have been invited to an event" : "Ați fost invitat la un eveniment", @@ -223,16 +235,21 @@ "This event is in the past." : "Evenimentul este în trecut", "This event was updated" : "Evenimentul a fost actualizat", "{attendeeName} accepted your invitation" : "{attendeeName} a acceptat invitația", + "{attendeeName} tentatively accepted your invitation" : "{attendeeName} intenționează să accepte invitația", "{attendeeName} declined your invitation" : "{attendeeName} a declinat invitația", "{attendeeName} reacted to your invitation" : "{attendeeName} a reacționat la invitație", "Failed to save your participation status" : "Eroare la salvarea statusului participanților", "Could not open mailbox" : "Cutia poștală nu se poate deschide", "Loading messages …" : "Se încarcă mesajele ...", "Indexing your messages. This can take a bit longer for larger mailboxes." : "Se indexează mesajele. Aceasta poate dura ceva mai mult pentru cutiile poștale mai încărcate.", - "Choose target mailbox" : "Selectați cutia poștală destinație", + "To archive a message please configure an archive mailbox in account settings" : "Pentru arhivarea mesajelor configurați un folder de arhivare în setările contului", + "You are not allowed to move this message to the archive folder and/or delete this message from the current folder" : "Nu aveți permisiunea să mutați mesajul în folderul de arhivare și/sau șterge mesajul din folderul curent", + "Choose target mailbox" : "Selectați folderul destinație", + "No more submailboxes in here" : "Nu mai sunt subfoldere", "Choose" : "Alege", "Important info" : "Informații importante", "Other" : "Altele", + "Messages will automatically be marked as important based on which messages you interacted with or marked as important. In the beginning you might have to manually change the importance to teach the system, but it will improve over time." : "Mesajul va fi marcat automat ca important în funcție de mesajele cu care ați interacționat sau pe care le-ați marcat ca importante. La început ar trebui să setați manual importanța pentru antrenarea sistemului, dar aceasta se va îmbunătăți în timp.", "The sender of this message has asked to be notified when you read this message." : "Expeditorul acestui mesaj a solicitat să fie notificat de citirea mesajului.", "Notify the sender" : "Notifică expeditorul", "You sent a read confirmation to the sender of this message." : "Ați transmis o confirmare de citire expeditorului acestui mesaj.", @@ -243,6 +260,7 @@ "Move message" : "Mută mesajul", "Forward message as attachment" : "Transmite mesajul ca atașament", "View source" : "Sursa mesajului", + "Download thread data for debugging" : "Descarcă datele conversației pentru debug", "Message was snoozed" : "Mesajul a fost amânat", "Could not snooze message" : "Nu s-a putut amâna mesajul", "Message was unsnoozed" : "Mesajul a fost reluat", @@ -273,11 +291,12 @@ "Moving thread" : "Mută conversația", "Moving message" : "Se mută mesajul", "Mail settings" : "Setări Mail", + "Provisioned account is disabled" : "Contul configurat este dezactivat", "Please login using a password to enable this account. The current session is using passwordless authentication, e.g. SSO or WebAuthn." : "Logați-vă cu o parolă pentru a activa acest cont. Sesiunea curentă utilizează autentificarea fără parolă, de ex. SSO sau WebAuthn.", "Quota" : "Procent", "Show only subscribed mailboxes" : "Arată doar căsuțele abonate", "Add mailbox" : "Adaugă mailbox", - "Mailbox name" : "Nume căsuță de mail", + "Mailbox name" : "Nume mailbox", "Saving" : "Se salvează", "Move up" : "Mută înainte", "Move down" : "Mută în jos", @@ -285,16 +304,28 @@ "Loading …" : "Se încarcă…", "Not supported by the server" : "Incompatibil cu serverul", "{usage} of {limit} used" : "{usage} din {limit} utilizat", + "The account for {email} and cached email data will be removed from Nextcloud, but not from your email provider." : "Contul pentru {email} și datele din cache vor fi eliminate din Nextcloud, dar nu și de la providerul de mail.", + "Remove account {email}" : "Șterge contul {email}", "Remove {email}" : "Șterge {email}", "Show all subscribed mailboxes" : "Afișează toate căsuțele abonate", + "Show all mailboxes" : "Afișează toate folderele", + "Collapse mailboxes" : "Restrânge folderele", "Mark all as read" : "Marcaţi tot ca fiind citit", - "Mark all messages of this mailbox as read" : "Marchează toate mesajele din această cutie poștală ca citite", + "Mark all messages of this mailbox as read" : "Marchează toate mesajele din acest folder ca citite", + "Add submailbox" : "Adaugă subfolder", "Edit name" : "Modifică numele", "Move mailbox" : "Mută cutia poștală", "Clear cache" : "Șterge cache", + "Clear locally cached data, in case there are issues with synchronization." : "Ștergeți datele din cache local în cazul problemelor de sincronizare.", "Subscribed" : "Abonat", "Sync in background" : "Sincronizează în fundal", - "All messages in mailbox will be deleted." : "Toate mesajele din cutia poștală vor fi șterse", + "Clear mailbox" : "Golește folderul", + "Delete mailbox" : "Șterge folderul", + "All messages in mailbox will be deleted." : "Vor fi șterse toate mesajele din acest folder", + "Clear mailbox {name}" : "Golește folderul {name}", + "The mailbox and all messages in it will be deleted." : "Se ca șterge folderul și toate mesajele.", + "Delete mailbox {name}" : "Șterge mailbox {name}", + "An error occurred, unable to rename the mailbox." : "Eroare la redenumirea mailbox.", "_{total} message_::_{total} messages_" : ["{total} mesaj","{total} mesaje","{total} mesaje"], "_{unread} unread of {total}_::_{unread} unread of {total}_" : ["{unread} necitit din {total}","{unread} necitite din {total}","{unread} necitite din {total}"], "New message" : "Mesaj nou", @@ -313,14 +344,23 @@ "Failed to save draft" : "Eroare la salvarea schiței", "attachment" : "atașament", "attached" : "atașat", + "No sent mailbox configured. Please pick one in the account settings." : "Nu este configurat un folder pentru mesaje trimise. Selectați unul în setările contului.", + "You are trying to send to many recipients in To and/or Cc. Consider using Bcc to hide recipient addresses." : "Încercați să trimiteți la prea mulți destinatari la Către și/sau Cc. încercați să folosiți Bcc pentru ascunderea adreselor destinatarilor.", + "You mentioned an attachment. Did you forget to add it?" : "Ați menționat un atașament. Ați uitat cumva să-l adăugați?", "Message discarded" : "Mesaj eliminat", "Could not discard message" : "Nu s-a putut elimina mesajul", "Welcome to {cloudName} Mail" : "Bine ați venit la {cloudName} Mail", + "Autoresponder off" : "Autoresponder oprit", + "Autoresponder on" : "Autoresponder activ", + "Autoresponder follows system settings" : "Autoresponder-ul urmează setările sistemului", + "The autoresponder follows your personal absence period settings." : "Autoresponder-ul urmărește setările perioadei de absență.", "Edit absence settings" : "Editați setările pentru absență", "First day" : "Prima zi", "Last day (optional)" : "Ultima zi (opțional)", "${subject} will be replaced with the subject of the message you are responding to" : "${subject} va fi înlocuit cu subiectul mesajului la care răspundeți", "Message" : "Mesaj", + "Save autoresponder" : "Salvează autoresponder", + "Could not open outbox" : "Nu s-a putut deschide Outbox", "Pending or not sent messages will show up here" : "Mesajele în așteptare sau netransmise vor fi afișate aici", "Delete" : "Șterge", "Message could not be sent" : "Mesajul nu s-a putut transmite", @@ -333,7 +373,7 @@ "Add" : "Adaugă", "Copied email address to clipboard" : "Adresa de mail a fost copiată", "Could not copy email address to clipboard" : "Nu s-a putut copia adresa de mail", - "Search in mailbox" : "Caută în cutia poștală", + "Search in mailbox" : "Cautare în folder", "Close" : "Închide", "Search parameters" : "Parametri de căutare", "Search subject" : "Caută subiect", @@ -343,6 +383,8 @@ "Pick an end date" : "Selectați o dată de sfârșit", "Select senders" : "Selectează expeditorii", "Select recipients" : "Selectează recipienții", + "Select CC recipients" : "Selectați destinatarii pentru CC", + "Select BCC recipients" : "Selectați destinatarii pentru BCC", "Tags" : "Etichete", "Select tags" : "Selectează etichete", "Marked as" : "Marcat ca", @@ -353,6 +395,7 @@ "Enable mail body search" : "Activează căutarea în textul mesajelor", "Disabled" : "Dezactivați", "Enabled" : "Activat", + "IMAP Credentials" : "Credențiale pentru IMAP", "Custom" : "Particularizat", "The syntax seems to be incorrect:" : "Sintaxa pare incorectă:", "This weekend – {timeLocale}" : "În acest weekend – {timeLocale}", @@ -361,8 +404,8 @@ "Save signature" : "Salvează semnătura", "Place signature above quoted text" : "Plasează semnătura deasupra textului citat", "Edit name or color" : "Editează numele sau culoarea", - "Delete tag" : "Șterge eticheta", "Saving new tag name …" : "Se salvează noul nume al etichetei ...", + "Delete tag" : "Șterge eticheta", "Set tag" : "Setează eticheta", "Unset tag" : "Deselectează eticheta", "An error occurred, unable to rename the tag." : "Eroare la redenumirea etichetei.", @@ -382,6 +425,7 @@ "Could not load your message thread" : "Nu poate fi încărcată conversația", "The thread doesn't exist or has been deleted" : "Conversația nu există sau a fost ștearsă", "Unsubscribe" : "Dezabonare", + "Mark as unfavorite" : "Elimină de la favorite", "Mark as favorite" : "Marchează ca favorit", "Mark as unread" : "Marchează ca necitit", "Mark as read" : "Marchează ca citit", @@ -392,30 +436,53 @@ "Unsubscribing will stop all messages from the mailing list {sender}" : "Dezabonare va opri mesajele din lista de distribuție {sender}", "Send unsubscribe email" : "Trimite email de dezabonare", "Unsubscribe via email" : "Dezabonare prin email", + "Encrypted & verified " : "Criptat și verificat", + "Signature verified" : "Semnătură verificată", + "Signature unverified " : "Semnătură neverificată", "Unsubscribe request sent" : "Cerere de dezabonare trimisă", "Could not unsubscribe from mailing list" : "A eșuat dezabonarea de la lista de distribuție", "Go to latest message" : "Salt la ultimul mesaj", "Go to newest message" : "Salt la cele mai recente mesaje", "Thread Summary" : "Rezumat conversație", + "{name} Assistant" : "{name} Asistent", + "Disable trash retention by leaving the field empty or setting it to 0. Only mails deleted after enabling trash retention will be processed." : "Dezactivați păstrarea în coș lăsând câmpul necompletat sau introducând 0. Vor fi procesate doar mailurile șterse după activarea păstrării în coș. ", "Remove" : "Elimină", + "No senders are trusted at the moment." : "Niciun expeditor de încredere în acest moment. ", + "Could not remove trusted sender {sender}" : "Expeditorul de încredere {sender} nu poate fi șters", "domain" : "domeniu", "(organizer)" : "(organizator)", "Untitled event" : "Eveniment fără titlu", "Import into {calendar}" : "Importă în {calendar}", "Event imported into {calendar}" : "Eveniment importat în {calendar}", "Reservation {id}" : "Rezervare {id}", + "Mail app" : "Aplicația Mail", + "The mail app allows users to read mails on their IMAP accounts." : "Aplicația de mail permite utilizatorilor să citească mailurile din conturile lor IMAP.", + "Here you can find instance-wide settings. User specific settings are found in the app itself (bottom-left corner)." : "Aici găsiți setările generale pentru instanță. Setările specifice pentru utilizator se găsesc în aplicație (în colțul din stânga, jos).", + "Account provisioning" : "Alimentare cont", + "Add new config" : "Adaugă o nouă configurație", + "Allow additional mail accounts" : "Permite conturi de mail suplimentare", + "Allow additional Mail accounts from User Settings" : "Permite conturi de mail suplimentare în setările utilizator", "Enable thread summary" : "Activați rezumatul conversației", + "Enable thread summaries" : "Activează rezumatul conversației", + "Anti Spam Service" : "Serviciul anti-spam", + "Successfully updated config for \"{domain}\"" : "S-a actualizat configurația pentru \"{domain}\"", + "Error saving config" : "Eroare la salvarea configurației", + "Saved config for \"{domain}\"" : "A fost salvată configurația pentru \"{domain}\"", + "The original message will be attached as a \"message/rfc822\" attachment." : "Mesajul original va fi atașat ca atașament \"message/rfc822\".", "\"Mark as Spam\" Email Address" : "\"Marchează ca Spam\" adresa de Email", "\"Mark Not Junk\" Email Address" : "\"Marchează ca Not Junk\" adresa de Email ", "Reset" : "Resetare", "Client ID" : "ID client", "Client secret" : "Secret client", + "Unlink" : "Deconectare", "General" : "General", "User" : "Utilizator", "Host" : "Gazdă", "Port" : "Portul", + "Use master password" : "Folosește master password", "LDAP aliases integration" : "Integrare aliasuri LDAP", "Enable LDAP aliases integration" : "Activează integrarea aliasurilor LDAP", + "Save Config" : "Salvează configurația", "S/MIME certificates" : "Certificatele S/MIME", "Certificate name" : "Nume certificat", "E-mail address" : "Adresa de E-mail ", @@ -425,6 +492,8 @@ "Submit" : "Trimite", "Keyboard shortcut" : "Scurtături din tastatură", "Keyboard shortcuts" : "Scurtături din tastatură", + "Speed up your Mail experience with these quick shortcuts." : "Îmbunătățiți experiența în Mail cu aceste scurtături.", + "Compose new message" : "Compuneți mesaje noi", "Newer message" : "Mesaj mai recent", "Older message" : "Mesaj mai vechi", "Toggle star" : "Comută stea", @@ -432,25 +501,39 @@ "Archive" : "Arhivă", "Account connected" : "Cont conectat", "You can close this window" : "Puteți închide fereastra", + "Connect your mail account" : "Conectați-vă contul de mail", + "To add a mail account, please contact your administrator." : "Pentru adăugarea unui cont de mail, contactați administratorul.", "Tomorrow – {timeLocale}" : "Mâine – {timeLocale}", "Later today – {timeLocale}" : "Azi, mai târziu – {timeLocale}", "All" : "Toate ", "Drafts" : "Schițe", "Favorites" : "Favorite", + "All inboxes" : "Toate inbox-urile", + "Junk" : "Nesolicitate", "Sent" : "Trimise", "Trash" : "Șterse", "Error while sharing file" : "Eroare la partajarea fișierului", "{from}\n{subject}" : "{from}\n{subject}", + "_%n new message \nfrom {from}_::_%n new messages \nfrom {from}_" : ["%n mesaj nou \nde la {from}","%n mesaje noi \nde la {from}","%n mesaje noi \nde la {from}"], + "There is already a message in progress. All unsaved changes will be lost if you continue!" : "Un mesaj este în progres. Toate modificările nesalvate se vor pierde dacă continuați!", "Discard changes" : "Anulează modificările", "Discard unsaved changes" : "Anulează modificările nesalvate", "Keep editing message" : "Continuă editarea mesajului", + "Attachments were not copied. Please add them manually." : "Atașamentele nu au fost copiate. Adăugați-le manual.", + "Could not create snooze mailbox" : "Nu s-a putut crea un folder pentru mesaje amânate", "Message sent" : "Mesajul a fost transmis", "Could not send message" : "Mesajul nu s-a putut transmite", + "Could not load {tag}{name}{endtag}" : "Nu s-a putut încărca {tag}{name}{endtag}", + "There was a problem loading {tag}{name}{endtag}" : "Eroare la încărcarea {tag}{name}{endtag}", "Could not load your message" : "Mesajul nu s-a putut încărca", + "Could not load the desired message" : "Nu s-a putut încărca mesajul dorit", "Could not load the message" : "Nu s-a putut încărca mesajul", "Error loading message" : "Eroare la încărcarea mesajelor", "Forwarding to %s" : "Retransmitere la %s", + "Click here if you are not automatically redirected within the next few seconds." : "Faceți click aici dacă nu sunteți redirectat automat în câteva secunde.", "Redirect" : "Deviere", + "The link leads to %s" : "Link-ul duce la %s", + "If you do not want to visit that page, you can return to Mail." : "Dacă nu doriți să vizitați acea pagină, vă puteți întoarce la Mail.", "Continue to %s" : "Continuă către %s" },"pluralForm" :"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));" } \ No newline at end of file diff --git a/l10n/ru.js b/l10n/ru.js index 6b1856afa5..1d99a37755 100644 --- a/l10n/ru.js +++ b/l10n/ru.js @@ -395,8 +395,8 @@ OC.L10N.register( "Save signature" : "Сохранить подпись", "Place signature above quoted text" : "Размещать подпись над цитируемым текстом", "Edit name or color" : "Отредактируйте название или цвет", - "Delete tag" : "Удалить метку", "Saving new tag name …" : "Сохранение нового названия метки…", + "Delete tag" : "Удалить метку", "Set tag" : "Установить тег", "Unset tag" : "Неустановленный тег", "An error occurred, unable to rename the tag." : "Не удалось переименовать метку.", diff --git a/l10n/ru.json b/l10n/ru.json index d328cb481d..c2ac56ce00 100644 --- a/l10n/ru.json +++ b/l10n/ru.json @@ -393,8 +393,8 @@ "Save signature" : "Сохранить подпись", "Place signature above quoted text" : "Размещать подпись над цитируемым текстом", "Edit name or color" : "Отредактируйте название или цвет", - "Delete tag" : "Удалить метку", "Saving new tag name …" : "Сохранение нового названия метки…", + "Delete tag" : "Удалить метку", "Set tag" : "Установить тег", "Unset tag" : "Неустановленный тег", "An error occurred, unable to rename the tag." : "Не удалось переименовать метку.", diff --git a/l10n/sk.js b/l10n/sk.js index fe274aec0c..cc3b886230 100644 --- a/l10n/sk.js +++ b/l10n/sk.js @@ -365,8 +365,8 @@ OC.L10N.register( "Save signature" : "Uložiť podpis", "Place signature above quoted text" : "Umiestniť podpis nad citovaný text", "Edit name or color" : "Upraviť názov farby", - "Delete tag" : "Zmazať štítok", "Saving new tag name …" : "Ukladám nový názov štítku ...", + "Delete tag" : "Zmazať štítok", "An error occurred, unable to rename the tag." : "Vyskytla sa chyba, nie je možné premenovať štítok.", "Add default tags" : "Pridať predvolené štítky", "Add tag" : "Pridať štítok", diff --git a/l10n/sk.json b/l10n/sk.json index 9ca52a1c9a..b8622864ca 100644 --- a/l10n/sk.json +++ b/l10n/sk.json @@ -363,8 +363,8 @@ "Save signature" : "Uložiť podpis", "Place signature above quoted text" : "Umiestniť podpis nad citovaný text", "Edit name or color" : "Upraviť názov farby", - "Delete tag" : "Zmazať štítok", "Saving new tag name …" : "Ukladám nový názov štítku ...", + "Delete tag" : "Zmazať štítok", "An error occurred, unable to rename the tag." : "Vyskytla sa chyba, nie je možné premenovať štítok.", "Add default tags" : "Pridať predvolené štítky", "Add tag" : "Pridať štítok", diff --git a/l10n/sl.js b/l10n/sl.js index b778e611d1..1fa2fa42e5 100644 --- a/l10n/sl.js +++ b/l10n/sl.js @@ -367,8 +367,8 @@ OC.L10N.register( "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Nastavljen podpis je večji od 2 MB. Velikost lahko vpliva na delovanje urejevalnika.", "Save signature" : "Shrani podpis", "Place signature above quoted text" : "Postavi podpis nad navedeno besedilo.", - "Delete tag" : "Izbriši oznako", "Saving new tag name …" : "Poteka shranjevanje imena oznake ...", + "Delete tag" : "Izbriši oznako", "Set tag" : "Nastavi oznako", "Unset tag" : "Odstrani oznako", "An error occurred, unable to rename the tag." : "Prišlo je do napake, oznake ni mogoče preimenovati.", diff --git a/l10n/sl.json b/l10n/sl.json index d959b0fd84..498a218c34 100644 --- a/l10n/sl.json +++ b/l10n/sl.json @@ -365,8 +365,8 @@ "Your signature is larger than 2 MB. This may affect the performance of your editor." : "Nastavljen podpis je večji od 2 MB. Velikost lahko vpliva na delovanje urejevalnika.", "Save signature" : "Shrani podpis", "Place signature above quoted text" : "Postavi podpis nad navedeno besedilo.", - "Delete tag" : "Izbriši oznako", "Saving new tag name …" : "Poteka shranjevanje imena oznake ...", + "Delete tag" : "Izbriši oznako", "Set tag" : "Nastavi oznako", "Unset tag" : "Odstrani oznako", "An error occurred, unable to rename the tag." : "Prišlo je do napake, oznake ni mogoče preimenovati.", diff --git a/l10n/sr.js b/l10n/sr.js index fbf4128298..1814f940b2 100644 --- a/l10n/sr.js +++ b/l10n/sr.js @@ -375,6 +375,9 @@ OC.L10N.register( "Welcome to {cloudName} Mail" : "Добродошли у {cloudName} пошту", "Autoresponder off" : "Аутоматско слање одговора искључено", "Autoresponder on" : "Аутоматско слање одговора укључено", + "Autoresponder follows system settings" : "Аутоматско одговарање следи системска подешавања", + "The autoresponder follows your personal absence period settings." : "Аутоматско одговарање следе ваша лична подешавања периода одсутности.", + "Edit absence settings" : "Уреди подешавања одсутности", "First day" : "Први дан", "Last day (optional)" : "Последњи дан (није обавезно)", "${subject} will be replaced with the subject of the message you are responding to" : "${subject} ће се заменити насловом поруке на коју одговарате", @@ -433,8 +436,8 @@ OC.L10N.register( "Save signature" : "Сачувај потпис", "Place signature above quoted text" : "Постави потпис изнад цитираног текста", "Edit name or color" : "Уреди назив или боју", - "Delete tag" : "Обриши ознаку", "Saving new tag name …" : "Чување новог назива ознаке ...", + "Delete tag" : "Обриши ознаку", "Set tag" : "Постави ознаку", "Unset tag" : "Уклони ознаку", "An error occurred, unable to rename the tag." : "Дошло је до грешке, не може да се промени назив ознаке.", diff --git a/l10n/sr.json b/l10n/sr.json index 6d03fb04f1..3095fc0ab4 100644 --- a/l10n/sr.json +++ b/l10n/sr.json @@ -373,6 +373,9 @@ "Welcome to {cloudName} Mail" : "Добродошли у {cloudName} пошту", "Autoresponder off" : "Аутоматско слање одговора искључено", "Autoresponder on" : "Аутоматско слање одговора укључено", + "Autoresponder follows system settings" : "Аутоматско одговарање следи системска подешавања", + "The autoresponder follows your personal absence period settings." : "Аутоматско одговарање следе ваша лична подешавања периода одсутности.", + "Edit absence settings" : "Уреди подешавања одсутности", "First day" : "Први дан", "Last day (optional)" : "Последњи дан (није обавезно)", "${subject} will be replaced with the subject of the message you are responding to" : "${subject} ће се заменити насловом поруке на коју одговарате", @@ -431,8 +434,8 @@ "Save signature" : "Сачувај потпис", "Place signature above quoted text" : "Постави потпис изнад цитираног текста", "Edit name or color" : "Уреди назив или боју", - "Delete tag" : "Обриши ознаку", "Saving new tag name …" : "Чување новог назива ознаке ...", + "Delete tag" : "Обриши ознаку", "Set tag" : "Постави ознаку", "Unset tag" : "Уклони ознаку", "An error occurred, unable to rename the tag." : "Дошло је до грешке, не може да се промени назив ознаке.", diff --git a/l10n/tr.js b/l10n/tr.js index 83d2fd9596..2f0d517671 100644 --- a/l10n/tr.js +++ b/l10n/tr.js @@ -46,7 +46,7 @@ OC.L10N.register( "SMTP Port" : "SMTP bağlantı noktası", "SMTP User" : "SMTP kullanıcı adı", "SMTP Password" : "SMTP parolası", - "For the Google account to work with this app you need to enable two-factor authentication for Google and generate an app password." : "Google hesabının bu uygulamayla çalışması için Google iki adımlı doğrulamasını etkinleştirmeniz ve bir uygulama parolası oluşturmanız gerekir.", + "For the Google account to work with this app you need to enable two-factor authentication for Google and generate an app password." : "Google hesabının bu uygulamayla çalışması için Google iki adımlı doğrulamasını etkinleştirmeniz ve bir uygulama parolası üretmeniz gerekir.", "Connecting" : "Bağlantı kuruluyor", "Reconnect Google account" : "Google hesabını yeniden bağla", "Sign in with Google" : "Google ile oturum açın", @@ -436,8 +436,8 @@ OC.L10N.register( "Save signature" : "İmzayı kaydet", "Place signature above quoted text" : "İmza alıntılanan metnin üzerine yerleştirilsin", "Edit name or color" : "Adı ya da rengi düzenle", - "Delete tag" : "Etiketi sil", "Saving new tag name …" : "Yeni etiket adı kaydediliyor …", + "Delete tag" : "Etiketi sil", "Set tag" : "Etiket koy", "Unset tag" : "Etiketi kaldır", "An error occurred, unable to rename the tag." : "Etiket yeniden adlandırılırken bir sorun çıktı.", diff --git a/l10n/tr.json b/l10n/tr.json index f75481fda6..5ad0b34acb 100644 --- a/l10n/tr.json +++ b/l10n/tr.json @@ -44,7 +44,7 @@ "SMTP Port" : "SMTP bağlantı noktası", "SMTP User" : "SMTP kullanıcı adı", "SMTP Password" : "SMTP parolası", - "For the Google account to work with this app you need to enable two-factor authentication for Google and generate an app password." : "Google hesabının bu uygulamayla çalışması için Google iki adımlı doğrulamasını etkinleştirmeniz ve bir uygulama parolası oluşturmanız gerekir.", + "For the Google account to work with this app you need to enable two-factor authentication for Google and generate an app password." : "Google hesabının bu uygulamayla çalışması için Google iki adımlı doğrulamasını etkinleştirmeniz ve bir uygulama parolası üretmeniz gerekir.", "Connecting" : "Bağlantı kuruluyor", "Reconnect Google account" : "Google hesabını yeniden bağla", "Sign in with Google" : "Google ile oturum açın", @@ -434,8 +434,8 @@ "Save signature" : "İmzayı kaydet", "Place signature above quoted text" : "İmza alıntılanan metnin üzerine yerleştirilsin", "Edit name or color" : "Adı ya da rengi düzenle", - "Delete tag" : "Etiketi sil", "Saving new tag name …" : "Yeni etiket adı kaydediliyor …", + "Delete tag" : "Etiketi sil", "Set tag" : "Etiket koy", "Unset tag" : "Etiketi kaldır", "An error occurred, unable to rename the tag." : "Etiket yeniden adlandırılırken bir sorun çıktı.", diff --git a/l10n/uk.js b/l10n/uk.js index b90eb5ca87..897641a0d8 100644 --- a/l10n/uk.js +++ b/l10n/uk.js @@ -155,6 +155,7 @@ OC.L10N.register( "Comment" : "Коментар", "Accept" : "Прийняти", "Decline" : "Відхилити", + "More options" : "Більше варіантів", "Could not open mailbox" : "Неможливо відкрити поштову скриньку", "Indexing your messages. This can take a bit longer for larger mailboxes." : "Індексування повідомлень. Ця дія може забрати більше часу для поштових скриньок з великим обсягом повідомлень.", "Choose" : "Вибрати", diff --git a/l10n/uk.json b/l10n/uk.json index cbb96a3299..44c0cf37d0 100644 --- a/l10n/uk.json +++ b/l10n/uk.json @@ -153,6 +153,7 @@ "Comment" : "Коментар", "Accept" : "Прийняти", "Decline" : "Відхилити", + "More options" : "Більше варіантів", "Could not open mailbox" : "Неможливо відкрити поштову скриньку", "Indexing your messages. This can take a bit longer for larger mailboxes." : "Індексування повідомлень. Ця дія може забрати більше часу для поштових скриньок з великим обсягом повідомлень.", "Choose" : "Вибрати", diff --git a/l10n/zh_CN.js b/l10n/zh_CN.js index 09d16196b4..f0b135a0d8 100644 --- a/l10n/zh_CN.js +++ b/l10n/zh_CN.js @@ -394,8 +394,8 @@ OC.L10N.register( "Your signature is larger than 2 MB. This may affect the performance of your editor." : "您的签名大于 2 MB。这可能会影响编辑器的性能。", "Save signature" : "保存签名", "Place signature above quoted text" : "把签名放在引用文本上方", - "Delete tag" : "删除标签", "Saving new tag name …" : "正在保存新的标签名称 ...", + "Delete tag" : "删除标签", "Set tag" : "设置标签", "Unset tag" : "取消设置标签", "An error occurred, unable to rename the tag." : "发生错误,无法重命名标签", diff --git a/l10n/zh_CN.json b/l10n/zh_CN.json index 5af94bd5f0..46f56ed98d 100644 --- a/l10n/zh_CN.json +++ b/l10n/zh_CN.json @@ -392,8 +392,8 @@ "Your signature is larger than 2 MB. This may affect the performance of your editor." : "您的签名大于 2 MB。这可能会影响编辑器的性能。", "Save signature" : "保存签名", "Place signature above quoted text" : "把签名放在引用文本上方", - "Delete tag" : "删除标签", "Saving new tag name …" : "正在保存新的标签名称 ...", + "Delete tag" : "删除标签", "Set tag" : "设置标签", "Unset tag" : "取消设置标签", "An error occurred, unable to rename the tag." : "发生错误,无法重命名标签", diff --git a/l10n/zh_HK.js b/l10n/zh_HK.js index 868be4c97a..6ceb0822a7 100644 --- a/l10n/zh_HK.js +++ b/l10n/zh_HK.js @@ -436,8 +436,8 @@ OC.L10N.register( "Save signature" : "儲存簽名", "Place signature above quoted text" : "將簽名置於引用文字上方", "Edit name or color" : "編輯名字或顏色", - "Delete tag" : "刪除標籤", "Saving new tag name …" : "正在儲存新的標籤名稱……", + "Delete tag" : "刪除標籤", "Set tag" : "設置標籤", "Unset tag" : "取消標籤", "An error occurred, unable to rename the tag." : "發生錯誤,無法重新命名標籤。", diff --git a/l10n/zh_HK.json b/l10n/zh_HK.json index 76bcea06d0..468e748026 100644 --- a/l10n/zh_HK.json +++ b/l10n/zh_HK.json @@ -434,8 +434,8 @@ "Save signature" : "儲存簽名", "Place signature above quoted text" : "將簽名置於引用文字上方", "Edit name or color" : "編輯名字或顏色", - "Delete tag" : "刪除標籤", "Saving new tag name …" : "正在儲存新的標籤名稱……", + "Delete tag" : "刪除標籤", "Set tag" : "設置標籤", "Unset tag" : "取消標籤", "An error occurred, unable to rename the tag." : "發生錯誤,無法重新命名標籤。", diff --git a/l10n/zh_TW.js b/l10n/zh_TW.js index acee92ee81..e3ed175bcc 100644 --- a/l10n/zh_TW.js +++ b/l10n/zh_TW.js @@ -375,6 +375,9 @@ OC.L10N.register( "Welcome to {cloudName} Mail" : "歡迎使用 {cloudName} Mail", "Autoresponder off" : "自動回覆程式停用", "Autoresponder on" : "自動回覆程式啟用", + "Autoresponder follows system settings" : "自動回應程式遵循系統設定", + "The autoresponder follows your personal absence period settings." : "自動回應程式會依照您個人的缺席時段設定做出回應。", + "Edit absence settings" : "編輯缺席設定", "First day" : "第一天", "Last day (optional)" : "最後一天(選擇性)", "${subject} will be replaced with the subject of the message you are responding to" : "${subject} 將替換為您要回應的郵件的主旨", @@ -433,8 +436,8 @@ OC.L10N.register( "Save signature" : "儲存簽名", "Place signature above quoted text" : "將簽名置於引用文字上方", "Edit name or color" : "編輯名稱或顏色", - "Delete tag" : "刪除標籤", "Saving new tag name …" : "正在儲存新的標籤名稱……", + "Delete tag" : "刪除標籤", "Set tag" : "設定標籤", "Unset tag" : "取消設定標籤", "An error occurred, unable to rename the tag." : "發生錯誤,無法重新命名標籤。", diff --git a/l10n/zh_TW.json b/l10n/zh_TW.json index 7732ce76b0..7ed2155fa0 100644 --- a/l10n/zh_TW.json +++ b/l10n/zh_TW.json @@ -373,6 +373,9 @@ "Welcome to {cloudName} Mail" : "歡迎使用 {cloudName} Mail", "Autoresponder off" : "自動回覆程式停用", "Autoresponder on" : "自動回覆程式啟用", + "Autoresponder follows system settings" : "自動回應程式遵循系統設定", + "The autoresponder follows your personal absence period settings." : "自動回應程式會依照您個人的缺席時段設定做出回應。", + "Edit absence settings" : "編輯缺席設定", "First day" : "第一天", "Last day (optional)" : "最後一天(選擇性)", "${subject} will be replaced with the subject of the message you are responding to" : "${subject} 將替換為您要回應的郵件的主旨", @@ -431,8 +434,8 @@ "Save signature" : "儲存簽名", "Place signature above quoted text" : "將簽名置於引用文字上方", "Edit name or color" : "編輯名稱或顏色", - "Delete tag" : "刪除標籤", "Saving new tag name …" : "正在儲存新的標籤名稱……", + "Delete tag" : "刪除標籤", "Set tag" : "設定標籤", "Unset tag" : "取消設定標籤", "An error occurred, unable to rename the tag." : "發生錯誤,無法重新命名標籤。", diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index d23e95fb6e..9f7bf1c600 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -89,7 +89,10 @@ use OCP\Dashboard\IAPIWidgetV2; use OCP\IServerContainer; use OCP\Search\IFilteringProvider; +use OCP\User\Events\OutOfOfficeChangedEvent; +use OCP\User\Events\OutOfOfficeClearedEvent; use OCP\User\Events\OutOfOfficeEndedEvent; +use OCP\User\Events\OutOfOfficeScheduledEvent; use OCP\User\Events\OutOfOfficeStartedEvent; use OCP\User\Events\UserDeletedEvent; use OCP\Util; @@ -147,9 +150,16 @@ public function register(IRegistrationContext $context): void { // TODO: drop condition if nextcloud < 28 is not supported anymore if (class_exists(OutOfOfficeStartedEvent::class) - && class_exists(OutOfOfficeEndedEvent::class)) { + && class_exists(OutOfOfficeEndedEvent::class) + && class_exists(OutOfOfficeChangedEvent::class) + && class_exists(OutOfOfficeClearedEvent::class) + && class_exists(OutOfOfficeScheduledEvent::class) + ) { $context->registerEventListener(OutOfOfficeStartedEvent::class, OutOfOfficeListener::class); $context->registerEventListener(OutOfOfficeEndedEvent::class, OutOfOfficeListener::class); + $context->registerEventListener(OutOfOfficeChangedEvent::class, OutOfOfficeListener::class); + $context->registerEventListener(OutOfOfficeClearedEvent::class, OutOfOfficeListener::class); + $context->registerEventListener(OutOfOfficeScheduledEvent::class, OutOfOfficeListener::class); } $context->registerMiddleWare(ErrorMiddleware::class); diff --git a/lib/Controller/OutOfOfficeController.php b/lib/Controller/OutOfOfficeController.php index c6ceb31870..43ac32ff8c 100644 --- a/lib/Controller/OutOfOfficeController.php +++ b/lib/Controller/OutOfOfficeController.php @@ -56,6 +56,7 @@ public function __construct( ) { parent::__construct(Application::APP_ID, $request); + // TODO: inject directly if support for nextcloud < 28 is dropped try { $this->availabilityCoordinator = $container->get(IAvailabilityCoordinator::class); } catch (ContainerExceptionInterface) { diff --git a/lib/Controller/PageController.php b/lib/Controller/PageController.php index 743dd9c03f..27db930c14 100644 --- a/lib/Controller/PageController.php +++ b/lib/Controller/PageController.php @@ -122,9 +122,10 @@ public function __construct(string $appName, $this->aiIntegrationsService = $aiIntegrationsService; $this->userManager = $userManager; + // TODO: inject directly if support for nextcloud < 28 is dropped try { $this->availabilityCoordinator = $container->get(IAvailabilityCoordinator::class); - } catch (ContainerExceptionInterface $e) { + } catch (ContainerExceptionInterface) { $this->availabilityCoordinator = null; } } diff --git a/lib/IMAP/ImapMessageFetcher.php b/lib/IMAP/ImapMessageFetcher.php index e2e7dd1b3a..3b56152931 100644 --- a/lib/IMAP/ImapMessageFetcher.php +++ b/lib/IMAP/ImapMessageFetcher.php @@ -313,8 +313,11 @@ private function getPart(Horde_Mime_Part $p, string $partNo, bool $isFetched): v } } + $isAttachment = ($p->isAttachment() || $p->getType() === 'message/rfc822') && + !in_array($p->getType(), ['application/pgp-signature', 'application/pkcs7-signature', 'application/x-pkcs7-signature']); + // Regular attachments - if ($p->isAttachment() || $p->getType() === 'message/rfc822') { + if ($isAttachment) { $this->attachments[] = [ 'id' => $p->getMimeId(), 'messageId' => $this->uid, diff --git a/lib/Listener/OutOfOfficeListener.php b/lib/Listener/OutOfOfficeListener.php index b5c62c361b..c306488ed4 100644 --- a/lib/Listener/OutOfOfficeListener.php +++ b/lib/Listener/OutOfOfficeListener.php @@ -31,29 +31,49 @@ use OCA\Mail\Service\AccountService; use OCA\Mail\Service\OutOfOffice\OutOfOfficeState; use OCA\Mail\Service\OutOfOfficeService; +use OCP\AppFramework\Utility\ITimeFactory; use OCP\EventDispatcher\Event; use OCP\EventDispatcher\IEventListener; +use OCP\User\Events\OutOfOfficeChangedEvent; +use OCP\User\Events\OutOfOfficeClearedEvent; use OCP\User\Events\OutOfOfficeEndedEvent; +use OCP\User\Events\OutOfOfficeScheduledEvent; use OCP\User\Events\OutOfOfficeStartedEvent; use Psr\Log\LoggerInterface; /** - * @template-implements IEventListener + * @template-implements IEventListener */ class OutOfOfficeListener implements IEventListener { public function __construct( private AccountService $accountService, private OutOfOfficeService $outOfOfficeService, private LoggerInterface $logger, + private ITimeFactory $timeFactory, ) { } public function handle(Event $event): void { - if (!($event instanceof OutOfOfficeStartedEvent) && !($event instanceof OutOfOfficeEndedEvent)) { + if (!($event instanceof OutOfOfficeStartedEvent) + && !($event instanceof OutOfOfficeEndedEvent) + && !($event instanceof OutOfOfficeScheduledEvent) + && !($event instanceof OutOfOfficeChangedEvent) + && !($event instanceof OutOfOfficeClearedEvent) + ) { return; } $eventData = $event->getData(); + + // We could simply enable the out-of-office responder in any case as it has its own date + // check. However, this way it is only enabled when really necessary and the second date + // check inside the sieve script acts as a redundancy. + $now = $this->timeFactory->getTime(); + $enabled = $now >= $eventData->getStartDate() && $now < $eventData->getEndDate(); + if (($event instanceof OutOfOfficeClearedEvent) || ($event instanceof OutOfOfficeEndedEvent)) { + $enabled = false; + } + $accounts = $this->accountService->findByUserId($event->getData()->getUser()->getUID()); foreach ($accounts as $account) { if (!$account->getMailAccount()->getOutOfOfficeFollowsSystem()) { @@ -61,7 +81,7 @@ public function handle(Event $event): void { } $state = new OutOfOfficeState( - ($event instanceof OutOfOfficeStartedEvent), + $enabled, new DateTimeImmutable('@' . $eventData->getStartDate()), new DateTimeImmutable('@' . $eventData->getEndDate()), $eventData->getShortMessage(), diff --git a/lib/Service/Sync/ImapToDbSynchronizer.php b/lib/Service/Sync/ImapToDbSynchronizer.php index 715fc216ff..d33114d687 100644 --- a/lib/Service/Sync/ImapToDbSynchronizer.php +++ b/lib/Service/Sync/ImapToDbSynchronizer.php @@ -27,6 +27,7 @@ namespace OCA\Mail\Service\Sync; use Horde_Imap_Client; +use Horde_Imap_Client_Base; use Horde_Imap_Client_Exception; use OCA\Mail\Account; use OCA\Mail\Contracts\IMailManager; @@ -217,6 +218,22 @@ public function sync(Account $account, return $rebuildThreads; } + $client = $this->clientFactory->getClient($account); + $client->login(); // Need to login before fetching capabilities. + + // There is no partial sync when using QRESYNC. As per RFC the client will always pull + // all changes. This is a cheap operation when using QRESYNC as the server keeps track + // of a client's state through the sync token. We could just update the sync tokens and + // call it a day because Horde caches unrelated/unrequested changes until the next + // operation. However, our cache is not reliable as some instance might use APCu which + // isn't shared between cron and web requests. + if ($client->capability->isEnabled('QRESYNC')) { + $this->logger->debug("Forcing full sync due to QRESYNC"); + $criteria |= Horde_Imap_Client::SYNC_NEWMSGSUIDS + | Horde_Imap_Client::SYNC_FLAGSUIDS + | Horde_Imap_Client::SYNC_VANISHEDUIDS; + } + if ($force || ($criteria & Horde_Imap_Client::SYNC_NEWMSGSUIDS)) { $logger->debug("Locking mailbox " . $mailbox->getId() . " for new messages sync"); $this->mailboxMapper->lockForNewSync($mailbox); @@ -236,24 +253,24 @@ public function sync(Account $account, || $mailbox->getSyncChangedToken() === null || $mailbox->getSyncVanishedToken() === null) { $logger->debug("Running initial sync for " . $mailbox->getId()); - $this->runInitialSync($account, $mailbox, $logger); + $this->runInitialSync($client, $account, $mailbox, $logger); } else { try { $logger->debug("Running partial sync for " . $mailbox->getId()); // Only rebuild threads if there were new or vanished messages - $rebuildThreads = $this->runPartialSync($account, $mailbox, $logger, $criteria, $knownUids); + $rebuildThreads = $this->runPartialSync($client, $account, $mailbox, $logger, $criteria, $knownUids); } catch (UidValidityChangedException $e) { $logger->warning('Mailbox UID validity changed. Wiping cache and performing full sync for ' . $mailbox->getId()); $this->resetCache($account, $mailbox); $logger->debug("Running initial sync for " . $mailbox->getId() . " after cache reset"); - $this->runInitialSync($account, $mailbox, $logger); + $this->runInitialSync($client, $account, $mailbox, $logger); } catch (MailboxDoesNotSupportModSequencesException $e) { $logger->warning('Mailbox does not support mod-sequences error occured. Wiping cache and performing full sync for ' . $mailbox->getId(), [ 'exception' => $e, ]); $this->resetCache($account, $mailbox); $logger->debug("Running initial sync for " . $mailbox->getId() . " after cache reset - no mod-sequences error"); - $this->runInitialSync($account, $mailbox, $logger); + $this->runInitialSync($client, $account, $mailbox, $logger); } } } catch (ServiceException $e) { @@ -274,6 +291,8 @@ public function sync(Account $account, $logger->debug("Unlocking mailbox " . $mailbox->getId() . " from new messages sync"); $this->mailboxMapper->unlockFromNewSync($mailbox); } + + $client->logout(); } if (!$batchSync) { @@ -293,7 +312,9 @@ public function sync(Account $account, * @throws ServiceException * @throws IncompleteSyncException */ - private function runInitialSync(Account $account, + private function runInitialSync( + Horde_Imap_Client_Base $client, + Account $account, Mailbox $mailbox, LoggerInterface $logger): void { $perf = $this->performanceLogger->startWithLogger( @@ -301,51 +322,50 @@ private function runInitialSync(Account $account, $logger ); - $highestKnownUid = $this->dbMapper->findHighestUid($mailbox); + // Need a client without a cache + $client->logout(); $client = $this->clientFactory->getClient($account, false); - try { - try { - $imapMessages = $this->imapMapper->findAll( - $client, - $mailbox->getName(), - self::MAX_NEW_MESSAGES, - $highestKnownUid ?? 0, - $logger, - $perf, - $account->getUserId(), - ); - $perf->step(sprintf('fetch %d messages from IMAP', count($imapMessages))); - } catch (Horde_Imap_Client_Exception $e) { - throw new ServiceException('Can not get messages from mailbox ' . $mailbox->getName() . ': ' . $e->getMessage(), 0, $e); - } - foreach (array_chunk($imapMessages['messages'], 500) as $chunk) { - $messages = array_map(static function (IMAPMessage $imapMessage) use ($mailbox, $account) { - return $imapMessage->toDbMessage($mailbox->getId(), $account->getMailAccount()); - }, $chunk); - $this->dbMapper->insertBulk($account, ...$messages); - $perf->step(sprintf('persist %d messages in database', count($chunk))); - // Free the memory - unset($messages); - } + $highestKnownUid = $this->dbMapper->findHighestUid($mailbox); + try { + $imapMessages = $this->imapMapper->findAll( + $client, + $mailbox->getName(), + self::MAX_NEW_MESSAGES, + $highestKnownUid ?? 0, + $logger, + $perf, + $account->getUserId(), + ); + $perf->step(sprintf('fetch %d messages from IMAP', count($imapMessages))); + } catch (Horde_Imap_Client_Exception $e) { + throw new ServiceException('Can not get messages from mailbox ' . $mailbox->getName() . ': ' . $e->getMessage(), 0, $e); + } - if (!$imapMessages['all']) { - // We might need more attempts to fill the cache - $loggingMailboxId = $account->getId() . ':' . $mailbox->getName(); - $total = $imapMessages['total']; - $cached = count($this->messageMapper->findAllUids($mailbox)); - $perf->step('find number of cached UIDs'); + foreach (array_chunk($imapMessages['messages'], 500) as $chunk) { + $messages = array_map(static function (IMAPMessage $imapMessage) use ($mailbox, $account) { + return $imapMessage->toDbMessage($mailbox->getId(), $account->getMailAccount()); + }, $chunk); + $this->dbMapper->insertBulk($account, ...$messages); + $perf->step(sprintf('persist %d messages in database', count($chunk))); + // Free the memory + unset($messages); + } - $perf->end(); - throw new IncompleteSyncException("Initial sync is not complete for $loggingMailboxId ($cached of $total messages cached)."); - } + if (!$imapMessages['all']) { + // We might need more attempts to fill the cache + $loggingMailboxId = $account->getId() . ':' . $mailbox->getName(); + $total = $imapMessages['total']; + $cached = count($this->messageMapper->findAllUids($mailbox)); + $perf->step('find number of cached UIDs'); - $mailbox->setSyncNewToken($client->getSyncToken($mailbox->getName())); - $mailbox->setSyncChangedToken($client->getSyncToken($mailbox->getName())); - $mailbox->setSyncVanishedToken($client->getSyncToken($mailbox->getName())); - } finally { - $client->logout(); + $perf->end(); + throw new IncompleteSyncException("Initial sync is not complete for $loggingMailboxId ($cached of $total messages cached)."); } + + $mailbox->setSyncNewToken($client->getSyncToken($mailbox->getName())); + $mailbox->setSyncChangedToken($client->getSyncToken($mailbox->getName())); + $mailbox->setSyncVanishedToken($client->getSyncToken($mailbox->getName())); $this->mailboxMapper->update($mailbox); $perf->end(); @@ -358,7 +378,9 @@ private function runInitialSync(Account $account, * @throws UidValidityChangedException * @return bool whether there are new or vanished messages */ - private function runPartialSync(Account $account, + private function runPartialSync( + Horde_Imap_Client_Base $client, + Account $account, Mailbox $mailbox, LoggerInterface $logger, int $criteria, @@ -369,114 +391,109 @@ private function runPartialSync(Account $account, $logger ); - $client = $this->clientFactory->getClient($account); - try { - $uids = $knownUids ?? $this->dbMapper->findAllUids($mailbox); - $perf->step('get all known UIDs'); - - if ($criteria & Horde_Imap_Client::SYNC_NEWMSGSUIDS) { - $response = $this->synchronizer->sync( - $client, - new Request( - $mailbox->getName(), - $mailbox->getSyncNewToken(), - $uids - ), - $account->getUserId(), - Horde_Imap_Client::SYNC_NEWMSGSUIDS - ); - $perf->step('get new messages via Horde'); - - $highestKnownUid = $this->dbMapper->findHighestUid($mailbox); - if ($highestKnownUid === null) { - // Everything is relevant - $newMessages = $response->getNewMessages(); - } else { - // Filter out anything that is already in the DB. Ideally this never happens, but if there is an error - // during a consecutive chunk INSERT, the sync token won't be updated. In that case the same message(s) - // will be seen as *new* and therefore cause conflicts. - $newMessages = array_filter($response->getNewMessages(), static function (IMAPMessage $imapMessage) use ($highestKnownUid) { - return $imapMessage->getUid() > $highestKnownUid; - }); - } + $uids = $knownUids ?? $this->dbMapper->findAllUids($mailbox); + $perf->step('get all known UIDs'); - foreach (array_chunk($newMessages, 500) as $chunk) { - $dbMessages = array_map(static function (IMAPMessage $imapMessage) use ($mailbox, $account) { - return $imapMessage->toDbMessage($mailbox->getId(), $account->getMailAccount()); - }, $chunk); + if ($criteria & Horde_Imap_Client::SYNC_NEWMSGSUIDS) { + $response = $this->synchronizer->sync( + $client, + new Request( + $mailbox->getName(), + $mailbox->getSyncNewToken(), + $uids + ), + $account->getUserId(), + Horde_Imap_Client::SYNC_NEWMSGSUIDS + ); + $perf->step('get new messages via Horde'); - $this->dbMapper->insertBulk($account, ...$dbMessages); + $highestKnownUid = $this->dbMapper->findHighestUid($mailbox); + if ($highestKnownUid === null) { + // Everything is relevant + $newMessages = $response->getNewMessages(); + } else { + // Filter out anything that is already in the DB. Ideally this never happens, but if there is an error + // during a consecutive chunk INSERT, the sync token won't be updated. In that case the same message(s) + // will be seen as *new* and therefore cause conflicts. + $newMessages = array_filter($response->getNewMessages(), static function (IMAPMessage $imapMessage) use ($highestKnownUid) { + return $imapMessage->getUid() > $highestKnownUid; + }); + } - $this->dispatcher->dispatch( - NewMessagesSynchronized::class, - new NewMessagesSynchronized($account, $mailbox, $dbMessages) - ); - $perf->step('classified a chunk of new messages'); - } - $perf->step('persist new messages'); + foreach (array_chunk($newMessages, 500) as $chunk) { + $dbMessages = array_map(static function (IMAPMessage $imapMessage) use ($mailbox, $account) { + return $imapMessage->toDbMessage($mailbox->getId(), $account->getMailAccount()); + }, $chunk); - $mailbox->setSyncNewToken($client->getSyncToken($mailbox->getName())); - $newOrVanished = $newMessages !== []; - } - if ($criteria & Horde_Imap_Client::SYNC_FLAGSUIDS) { - $response = $this->synchronizer->sync( - $client, - new Request( - $mailbox->getName(), - $mailbox->getSyncChangedToken(), - $uids - ), - $account->getUserId(), - Horde_Imap_Client::SYNC_FLAGSUIDS + $this->dbMapper->insertBulk($account, ...$dbMessages); + + $this->dispatcher->dispatch( + NewMessagesSynchronized::class, + new NewMessagesSynchronized($account, $mailbox, $dbMessages) ); - $perf->step('get changed messages via Horde'); + $perf->step('classified a chunk of new messages'); + } + $perf->step('persist new messages'); + + $mailbox->setSyncNewToken($client->getSyncToken($mailbox->getName())); + $newOrVanished = $newMessages !== []; + } + if ($criteria & Horde_Imap_Client::SYNC_FLAGSUIDS) { + $response = $this->synchronizer->sync( + $client, + new Request( + $mailbox->getName(), + $mailbox->getSyncChangedToken(), + $uids + ), + $account->getUserId(), + Horde_Imap_Client::SYNC_FLAGSUIDS + ); + $perf->step('get changed messages via Horde'); - $permflagsEnabled = $this->mailManager->isPermflagsEnabled($client, $account, $mailbox->getName()); + $permflagsEnabled = $this->mailManager->isPermflagsEnabled($client, $account, $mailbox->getName()); - foreach (array_chunk($response->getChangedMessages(), 500) as $chunk) { - $this->dbMapper->updateBulk($account, $permflagsEnabled, ...array_map(static function (IMAPMessage $imapMessage) use ($mailbox, $account) { - return $imapMessage->toDbMessage($mailbox->getId(), $account->getMailAccount()); - }, $chunk)); - } - $perf->step('persist changed messages'); - - // If a list of UIDs was *provided* (as opposed to loaded from the DB, - // we can not assume that all changes were detected, hence this is kinda - // a silent sync and we don't update the change token until the next full - // mailbox sync - if ($knownUids === null) { - $mailbox->setSyncChangedToken($client->getSyncToken($mailbox->getName())); - } + foreach (array_chunk($response->getChangedMessages(), 500) as $chunk) { + $this->dbMapper->updateBulk($account, $permflagsEnabled, ...array_map(static function (IMAPMessage $imapMessage) use ($mailbox, $account) { + return $imapMessage->toDbMessage($mailbox->getId(), $account->getMailAccount()); + }, $chunk)); } - if ($criteria & Horde_Imap_Client::SYNC_VANISHEDUIDS) { - $response = $this->synchronizer->sync( - $client, - new Request( - $mailbox->getName(), - $mailbox->getSyncVanishedToken(), - $uids - ), - $account->getUserId(), - Horde_Imap_Client::SYNC_VANISHEDUIDS - ); - $perf->step('get vanished messages via Horde'); + $perf->step('persist changed messages'); + + // If a list of UIDs was *provided* (as opposed to loaded from the DB, + // we can not assume that all changes were detected, hence this is kinda + // a silent sync and we don't update the change token until the next full + // mailbox sync + if ($knownUids === null) { + $mailbox->setSyncChangedToken($client->getSyncToken($mailbox->getName())); + } + } + if ($criteria & Horde_Imap_Client::SYNC_VANISHEDUIDS) { + $response = $this->synchronizer->sync( + $client, + new Request( + $mailbox->getName(), + $mailbox->getSyncVanishedToken(), + $uids + ), + $account->getUserId(), + Horde_Imap_Client::SYNC_VANISHEDUIDS + ); + $perf->step('get vanished messages via Horde'); - foreach (array_chunk($response->getVanishedMessageUids(), 500) as $chunk) { - $this->dbMapper->deleteByUid($mailbox, ...$chunk); - } - $perf->step('delete vanished messages'); - - // If a list of UIDs was *provided* (as opposed to loaded from the DB, - // we can not assume that all changes were detected, hence this is kinda - // a silent sync and we don't update the vanish token until the next full - // mailbox sync - if ($knownUids === null) { - $mailbox->setSyncVanishedToken($client->getSyncToken($mailbox->getName())); - } - $newOrVanished = $newOrVanished || !empty($response->getVanishedMessageUids()); + foreach (array_chunk($response->getVanishedMessageUids(), 500) as $chunk) { + $this->dbMapper->deleteByUid($mailbox, ...$chunk); } - } finally { - $client->logout(); + $perf->step('delete vanished messages'); + + // If a list of UIDs was *provided* (as opposed to loaded from the DB, + // we can not assume that all changes were detected, hence this is kinda + // a silent sync and we don't update the vanish token until the next full + // mailbox sync + if ($knownUids === null) { + $mailbox->setSyncVanishedToken($client->getSyncToken($mailbox->getName())); + } + $newOrVanished = $newOrVanished || !empty($response->getVanishedMessageUids()); } $this->mailboxMapper->update($mailbox); $perf->end(); diff --git a/package-lock.json b/package-lock.json index 3c6a5448e6..e8b79091d2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -40,8 +40,8 @@ "@nextcloud/logger": "^2.7.0", "@nextcloud/moment": "^1.2.2", "@nextcloud/paths": "^2.1.0", - "@nextcloud/router": "^2.2.0", - "@nextcloud/vue": "^7.12.7", + "@nextcloud/router": "^2.1.2", + "@nextcloud/vue": "^7.12.4", "@nextcloud/vue-dashboard": "^2.0.1", "@riophae/vue-treeselect": "^0.4.0", "@vue/babel-preset-app": "^5.0.8", @@ -4474,9 +4474,9 @@ } }, "node_modules/@nextcloud/vue-select": { - "version": "3.22.2", - "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.22.2.tgz", - "integrity": "sha512-nDtoFowunZIaiq5N28Qvbq2CkUWEbvLrj41OYQx8/qw7Dpmm2bOUKAqjUrr8H1NdoNpCN7VyL5gyoWvwC3m+WQ==", + "version": "3.24.0", + "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.24.0.tgz", + "integrity": "sha512-+TQYaqB57OcwG3XSKpUtVcbUZIkX8KHzjTCWRFAiRqwryXTuBvY/JHzB5i31BFHJ6CK+l8WyBu8LgmtQW8ktrw==", "peerDependencies": { "vue": "2.x" } @@ -4631,6 +4631,45 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, + "node_modules/@nextcloud/vue/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@nextcloud/vue/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@nextcloud/vue/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/@nextcloud/vue/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -4878,9 +4917,9 @@ } }, "node_modules/@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "dependencies": { "@types/ms": "*" } @@ -4996,11 +5035,11 @@ "dev": true }, "node_modules/@types/mdast": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", - "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { - "@types/unist": "*" + "@types/unist": "^2" } }, "node_modules/@types/minimatch": { @@ -5014,9 +5053,9 @@ "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" }, "node_modules/@types/ms": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", - "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/node": { "version": "14.14.33", @@ -12736,10 +12775,100 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/mdast-util-definitions/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz", + "integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==", + "dependencies": { + "@types/mdast": "^3.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/mdast-util-from-markdown": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz", - "integrity": "sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz", + "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==", "dependencies": { "@types/mdast": "^3.0.0", "@types/unist": "^2.0.0", @@ -12759,6 +12888,19 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/mdast-util-newline-to-break": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-newline-to-break/-/mdast-util-newline-to-break-1.0.0.tgz", + "integrity": "sha512-491LcYv3gbGhhCrLoeALncQmega2xPh+m3gbsIhVsOX4sw85+ShLFPvPyibxc1Swx/6GtzxgVodq+cGa/47ULg==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-find-and-replace": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/mdast-util-to-hast": { "version": "12.3.0", "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", @@ -12778,10 +12920,49 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/mdast-util-to-hast/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/mdast-util-to-string": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.1.1.tgz", - "integrity": "sha512-tGvhT94e+cVnQt8JWE9/b3cUQZWS732TJxXHktvP+BYo62PpYD53Ls/6cC60rW21dW+txxiM4zMdc6abASvZKA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", "dependencies": { "@types/mdast": "^3.0.0" }, @@ -12865,9 +13046,9 @@ } }, "node_modules/micromark": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz", - "integrity": "sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", + "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", "funding": [ { "type": "GitHub Sponsors", @@ -12899,9 +13080,9 @@ } }, "node_modules/micromark-core-commonmark": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz", - "integrity": "sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz", + "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==", "funding": [ { "type": "GitHub Sponsors", @@ -12932,9 +13113,9 @@ } }, "node_modules/micromark-factory-destination": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz", - "integrity": "sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz", + "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==", "funding": [ { "type": "GitHub Sponsors", @@ -12952,9 +13133,9 @@ } }, "node_modules/micromark-factory-label": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz", - "integrity": "sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz", + "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==", "funding": [ { "type": "GitHub Sponsors", @@ -12973,9 +13154,9 @@ } }, "node_modules/micromark-factory-space": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz", - "integrity": "sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", "funding": [ { "type": "GitHub Sponsors", @@ -12992,9 +13173,9 @@ } }, "node_modules/micromark-factory-title": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz", - "integrity": "sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz", + "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==", "funding": [ { "type": "GitHub Sponsors", @@ -13009,14 +13190,13 @@ "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "micromark-util-types": "^1.0.0" } }, "node_modules/micromark-factory-whitespace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz", - "integrity": "sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz", + "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==", "funding": [ { "type": "GitHub Sponsors", @@ -13035,9 +13215,9 @@ } }, "node_modules/micromark-util-character": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz", - "integrity": "sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "funding": [ { "type": "GitHub Sponsors", @@ -13054,9 +13234,9 @@ } }, "node_modules/micromark-util-chunked": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz", - "integrity": "sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", "funding": [ { "type": "GitHub Sponsors", @@ -13072,9 +13252,9 @@ } }, "node_modules/micromark-util-classify-character": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz", - "integrity": "sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", + "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", "funding": [ { "type": "GitHub Sponsors", @@ -13092,9 +13272,9 @@ } }, "node_modules/micromark-util-combine-extensions": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz", - "integrity": "sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz", + "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==", "funding": [ { "type": "GitHub Sponsors", @@ -13111,9 +13291,9 @@ } }, "node_modules/micromark-util-decode-numeric-character-reference": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz", - "integrity": "sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz", + "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==", "funding": [ { "type": "GitHub Sponsors", @@ -13129,9 +13309,9 @@ } }, "node_modules/micromark-util-decode-string": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz", - "integrity": "sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz", + "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==", "funding": [ { "type": "GitHub Sponsors", @@ -13150,9 +13330,9 @@ } }, "node_modules/micromark-util-encode": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz", - "integrity": "sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", "funding": [ { "type": "GitHub Sponsors", @@ -13165,9 +13345,9 @@ ] }, "node_modules/micromark-util-html-tag-name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz", - "integrity": "sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz", + "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==", "funding": [ { "type": "GitHub Sponsors", @@ -13180,9 +13360,9 @@ ] }, "node_modules/micromark-util-normalize-identifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz", - "integrity": "sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", + "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", "funding": [ { "type": "GitHub Sponsors", @@ -13198,9 +13378,9 @@ } }, "node_modules/micromark-util-resolve-all": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz", - "integrity": "sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", + "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", "funding": [ { "type": "GitHub Sponsors", @@ -13216,9 +13396,9 @@ } }, "node_modules/micromark-util-sanitize-uri": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz", - "integrity": "sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", "funding": [ { "type": "GitHub Sponsors", @@ -13236,9 +13416,9 @@ } }, "node_modules/micromark-util-subtokenize": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz", - "integrity": "sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz", + "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==", "funding": [ { "type": "GitHub Sponsors", @@ -13257,9 +13437,9 @@ } }, "node_modules/micromark-util-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz", - "integrity": "sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==", "funding": [ { "type": "GitHub Sponsors", @@ -13272,9 +13452,9 @@ ] }, "node_modules/micromark-util-types": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz", - "integrity": "sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", "funding": [ { "type": "GitHub Sponsors", @@ -15570,45 +15750,6 @@ "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==" }, - "node_modules/rehype-external-links/node_modules/unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "dependencies": { - "@types/unist": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-external-links/node_modules/unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-external-links/node_modules/unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/rehype-react": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/rehype-react/-/rehype-react-7.1.2.tgz", @@ -15629,13 +15770,13 @@ } }, "node_modules/remark-breaks": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-3.0.2.tgz", - "integrity": "sha512-x96YDJ9X+Ry0/JNZFKfr1hpcAKvGYWfUTszxY9RbxKEqq6uzPPoLCuHdZsLPZZUdAv3nCROyc7FPrQLWr2rxyw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-3.0.3.tgz", + "integrity": "sha512-C7VkvcUp1TPUc2eAYzsPdaUh8Xj4FSbQnYA5A9f80diApLZscTDeG7efiWP65W8hV2sEy3JuGVU0i6qr5D8Hug==", "dependencies": { "@types/mdast": "^3.0.0", - "unified": "^10.0.0", - "unist-util-visit": "^4.0.0" + "mdast-util-newline-to-break": "^1.0.0", + "unified": "^10.0.0" }, "funding": { "type": "opencollective", @@ -15643,9 +15784,9 @@ } }, "node_modules/remark-parse": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz", - "integrity": "sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz", + "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==", "dependencies": { "@types/mdast": "^3.0.0", "mdast-util-from-markdown": "^1.0.0", @@ -17434,17 +17575,22 @@ } }, "node_modules/unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", "dependencies": { - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/unist-util-is/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, "node_modules/unist-util-position": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", @@ -17470,13 +17616,13 @@ } }, "node_modules/unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, "funding": { "type": "opencollective", @@ -17484,18 +17630,28 @@ } }, "node_modules/unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, + "node_modules/unist-util-visit-parents/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/unist-util-visit/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, "node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", @@ -21671,6 +21827,33 @@ "ansi-regex": "^6.0.1" } }, + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -21807,9 +21990,9 @@ } }, "@nextcloud/vue-select": { - "version": "3.22.2", - "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.22.2.tgz", - "integrity": "sha512-nDtoFowunZIaiq5N28Qvbq2CkUWEbvLrj41OYQx8/qw7Dpmm2bOUKAqjUrr8H1NdoNpCN7VyL5gyoWvwC3m+WQ==", + "version": "3.24.0", + "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.24.0.tgz", + "integrity": "sha512-+TQYaqB57OcwG3XSKpUtVcbUZIkX8KHzjTCWRFAiRqwryXTuBvY/JHzB5i31BFHJ6CK+l8WyBu8LgmtQW8ktrw==", "requires": {} }, "@nicolo-ribaudo/eslint-scope-5-internals": { @@ -22011,9 +22194,9 @@ } }, "@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "requires": { "@types/ms": "*" } @@ -22129,11 +22312,11 @@ "dev": true }, "@types/mdast": { - "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", - "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "requires": { - "@types/unist": "*" + "@types/unist": "^2" } }, "@types/minimatch": { @@ -22147,9 +22330,9 @@ "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" }, "@types/ms": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", - "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "@types/node": { "version": "14.14.33", @@ -27872,12 +28055,76 @@ "@types/mdast": "^3.0.0", "@types/unist": "^2.0.0", "unist-util-visit": "^4.0.0" + }, + "dependencies": { + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } + } + }, + "mdast-util-find-and-replace": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz", + "integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==", + "requires": { + "@types/mdast": "^3.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==" + }, + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } } }, "mdast-util-from-markdown": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz", - "integrity": "sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz", + "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==", "requires": { "@types/mdast": "^3.0.0", "@types/unist": "^2.0.0", @@ -27893,6 +28140,15 @@ "uvu": "^0.5.0" } }, + "mdast-util-newline-to-break": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-newline-to-break/-/mdast-util-newline-to-break-1.0.0.tgz", + "integrity": "sha512-491LcYv3gbGhhCrLoeALncQmega2xPh+m3gbsIhVsOX4sw85+ShLFPvPyibxc1Swx/6GtzxgVodq+cGa/47ULg==", + "requires": { + "@types/mdast": "^3.0.0", + "mdast-util-find-and-replace": "^2.0.0" + } + }, "mdast-util-to-hast": { "version": "12.3.0", "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", @@ -27906,12 +28162,41 @@ "unist-util-generated": "^2.0.0", "unist-util-position": "^4.0.0", "unist-util-visit": "^4.0.0" + }, + "dependencies": { + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + } } }, "mdast-util-to-string": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.1.1.tgz", - "integrity": "sha512-tGvhT94e+cVnQt8JWE9/b3cUQZWS732TJxXHktvP+BYo62PpYD53Ls/6cC60rW21dW+txxiM4zMdc6abASvZKA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", "requires": { "@types/mdast": "^3.0.0" } @@ -27972,9 +28257,9 @@ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" }, "micromark": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz", - "integrity": "sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", + "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", "requires": { "@types/debug": "^4.0.0", "debug": "^4.0.0", @@ -27996,9 +28281,9 @@ } }, "micromark-core-commonmark": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz", - "integrity": "sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz", + "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==", "requires": { "decode-named-character-reference": "^1.0.0", "micromark-factory-destination": "^1.0.0", @@ -28019,9 +28304,9 @@ } }, "micromark-factory-destination": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz", - "integrity": "sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz", + "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==", "requires": { "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -28029,9 +28314,9 @@ } }, "micromark-factory-label": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz", - "integrity": "sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz", + "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==", "requires": { "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -28040,30 +28325,29 @@ } }, "micromark-factory-space": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz", - "integrity": "sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz", + "integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==", "requires": { "micromark-util-character": "^1.0.0", "micromark-util-types": "^1.0.0" } }, "micromark-factory-title": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz", - "integrity": "sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz", + "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==", "requires": { "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", - "micromark-util-types": "^1.0.0", - "uvu": "^0.5.0" + "micromark-util-types": "^1.0.0" } }, "micromark-factory-whitespace": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz", - "integrity": "sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz", + "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==", "requires": { "micromark-factory-space": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -28072,26 +28356,26 @@ } }, "micromark-util-character": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz", - "integrity": "sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz", + "integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==", "requires": { "micromark-util-symbol": "^1.0.0", "micromark-util-types": "^1.0.0" } }, "micromark-util-chunked": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz", - "integrity": "sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", "requires": { "micromark-util-symbol": "^1.0.0" } }, "micromark-util-classify-character": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz", - "integrity": "sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", + "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", "requires": { "micromark-util-character": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -28099,26 +28383,26 @@ } }, "micromark-util-combine-extensions": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz", - "integrity": "sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz", + "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==", "requires": { "micromark-util-chunked": "^1.0.0", "micromark-util-types": "^1.0.0" } }, "micromark-util-decode-numeric-character-reference": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz", - "integrity": "sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz", + "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==", "requires": { "micromark-util-symbol": "^1.0.0" } }, "micromark-util-decode-string": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz", - "integrity": "sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz", + "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==", "requires": { "decode-named-character-reference": "^1.0.0", "micromark-util-character": "^1.0.0", @@ -28127,35 +28411,35 @@ } }, "micromark-util-encode": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz", - "integrity": "sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==" }, "micromark-util-html-tag-name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz", - "integrity": "sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz", + "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==" }, "micromark-util-normalize-identifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz", - "integrity": "sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", + "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", "requires": { "micromark-util-symbol": "^1.0.0" } }, "micromark-util-resolve-all": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz", - "integrity": "sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", + "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", "requires": { "micromark-util-types": "^1.0.0" } }, "micromark-util-sanitize-uri": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz", - "integrity": "sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", "requires": { "micromark-util-character": "^1.0.0", "micromark-util-encode": "^1.0.0", @@ -28163,9 +28447,9 @@ } }, "micromark-util-subtokenize": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz", - "integrity": "sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz", + "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==", "requires": { "micromark-util-chunked": "^1.0.0", "micromark-util-symbol": "^1.0.0", @@ -28174,14 +28458,14 @@ } }, "micromark-util-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz", - "integrity": "sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz", + "integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==" }, "micromark-util-types": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz", - "integrity": "sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==" }, "micromatch": { "version": "4.0.5", @@ -29742,33 +30026,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==" - }, - "unist-util-is": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", - "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", - "requires": { - "@types/unist": "^3.0.0" - } - }, - "unist-util-visit": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", - "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", - "requires": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0", - "unist-util-visit-parents": "^6.0.0" - } - }, - "unist-util-visit-parents": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", - "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", - "requires": { - "@types/unist": "^3.0.0", - "unist-util-is": "^6.0.0" - } } } }, @@ -29785,19 +30042,19 @@ } }, "remark-breaks": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-3.0.2.tgz", - "integrity": "sha512-x96YDJ9X+Ry0/JNZFKfr1hpcAKvGYWfUTszxY9RbxKEqq6uzPPoLCuHdZsLPZZUdAv3nCROyc7FPrQLWr2rxyw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-3.0.3.tgz", + "integrity": "sha512-C7VkvcUp1TPUc2eAYzsPdaUh8Xj4FSbQnYA5A9f80diApLZscTDeG7efiWP65W8hV2sEy3JuGVU0i6qr5D8Hug==", "requires": { "@types/mdast": "^3.0.0", - "unified": "^10.0.0", - "unist-util-visit": "^4.0.0" + "mdast-util-newline-to-break": "^1.0.0", + "unified": "^10.0.0" } }, "remark-parse": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz", - "integrity": "sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw==", + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz", + "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==", "requires": { "@types/mdast": "^3.0.0", "mdast-util-from-markdown": "^1.0.0", @@ -31083,11 +31340,18 @@ "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==" }, "unist-util-is": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", - "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", "requires": { - "@types/unist": "^2.0.0" + "@types/unist": "^3.0.0" + }, + "dependencies": { + "@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + } } }, "unist-util-position": { @@ -31107,22 +31371,36 @@ } }, "unist-util-visit": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", - "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0", - "unist-util-visit-parents": "^5.1.1" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "dependencies": { + "@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + } } }, "unist-util-visit-parents": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", - "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^5.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "dependencies": { + "@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + } } }, "universalify": { diff --git a/package.json b/package.json index 96d61b6c77..ff45ac451e 100644 --- a/package.json +++ b/package.json @@ -46,8 +46,8 @@ "@nextcloud/logger": "^2.7.0", "@nextcloud/moment": "^1.2.2", "@nextcloud/paths": "^2.1.0", - "@nextcloud/router": "^2.2.0", - "@nextcloud/vue": "^7.12.7", + "@nextcloud/router": "^2.1.2", + "@nextcloud/vue": "^8.0.0", "@nextcloud/vue-dashboard": "^2.0.1", "@riophae/vue-treeselect": "^0.4.0", "@vue/babel-preset-app": "^5.0.8", diff --git a/psalm.xml b/psalm.xml index 4286154ec1..9efe1cc4ad 100644 --- a/psalm.xml +++ b/psalm.xml @@ -47,9 +47,12 @@ - - - + + + + + + @@ -61,6 +64,11 @@ + + + + + diff --git a/src/ReplyBuilder.js b/src/ReplyBuilder.js index 3c66ae8c7a..25bbff7389 100644 --- a/src/ReplyBuilder.js +++ b/src/ReplyBuilder.js @@ -21,7 +21,7 @@ */ import moment from '@nextcloud/moment' -import negate from 'lodash/fp/negate' +import negate from 'lodash/fp/negate.js' import { html } from './util/text.js' diff --git a/src/components/AccountForm.vue b/src/components/AccountForm.vue index 9ee76ba9a0..53f27886d8 100644 --- a/src/components/AccountForm.vue +++ b/src/components/AccountForm.vue @@ -260,7 +260,7 @@ import { Tab, Tabs } from 'vue-tabs-component' import { mapGetters } from 'vuex' import { NcButton as ButtonVue, NcLoadingIcon as IconLoading } from '@nextcloud/vue' -import IconCheck from 'vue-material-design-icons/Check' +import IconCheck from 'vue-material-design-icons/Check.vue' import { translate as t } from '@nextcloud/l10n' import logger from '../logger.js' diff --git a/src/components/AliasForm.vue b/src/components/AliasForm.vue index 8c3e3b5676..877f1b3514 100644 --- a/src/components/AliasForm.vue +++ b/src/components/AliasForm.vue @@ -83,9 +83,9 @@