Commit Graph

4647 Commits

Author SHA1 Message Date
Théo Poizat 0c787d3d98 Throw error if AI API return null or empty reponse 2025-12-19 19:03:39 +07:00
Théo Poizat c858ac40f5 Add translations for scribe module
Added a separated ScribeLocalizations to keep it separated from main app.
2025-12-19 19:03:39 +07:00
Théo Poizat 2557c68a94 Use absolute path for scribe files 2025-12-19 19:03:39 +07:00
Théo Poizat 7e0c98b080 Add scribe module 2025-12-19 19:03:39 +07:00
Théo Poizat 26593b50ef Move AI env var from main to scribe package 2025-12-19 19:03:39 +07:00
Théo Poizat f19993bb30 Use json_serializable and const to improve AI data model 2025-12-19 19:03:39 +07:00
Théo Poizat 8b17fcdc54 fixup! Add text selection mixin 2025-12-19 19:03:39 +07:00
Théo Poizat 4013973110 Add text selection mixin
This mixin leverages HTML callbacks that can be set by WebView editor
to send text selection event to the composer so the composer will
receive text selection event necessary to display buttons related to
text selection.
2025-12-19 19:03:39 +07:00
Théo Poizat 2ccb203610 Add AI text state 2025-12-19 19:03:39 +07:00
Théo Poizat 1e2718e678 Add AI text interactor 2025-12-19 19:03:39 +07:00
Théo Poizat 52295c8c0c Add AI repository implementation 2025-12-19 19:03:39 +07:00
Théo Poizat 6564e50b74 Add AI data source implementation 2025-12-19 19:03:39 +07:00
Théo Poizat 63489b1b44 Add AI abstract repository 2025-12-19 19:03:39 +07:00
Théo Poizat c734987347 Add AI abstract datasource 2025-12-19 19:03:39 +07:00
Théo Poizat eaa30918cc Add AI API request, AI API response and AI message model 2025-12-19 19:03:39 +07:00
Théo Poizat b3e111b9bf Add AI prompts
This part will be highly reworked soon because :
- prompts will come from a remote JSON file
- menu will be build depending of prompts that will contains translations

I think it should also be moved in another module later.
2025-12-19 19:03:39 +07:00
Théo Poizat 29e90f256f Add AI related env var
AI_ENABLED allows to test AI features only in some wanted environment.

AI_API_KEY and AI_API_URL allows to call the LLM while we wait for tmail backend endpoints.
It will be removed when tmail backend endpoints are ready.
2025-12-19 19:03:39 +07:00
Théo Poizat fb31488c99 Add sparkle icon 2025-12-19 19:03:39 +07:00
dab246 06412f1493 fixup! TF-4186 Use super.props to include parent's properties in the props override. 2025-12-10 17:13:11 +07:00
dab246 f09694577e TF-4186 Use super.props to include parent's properties in the props override. 2025-12-10 17:13:11 +07:00
dab246 c87d3229ce TF-4186 Implement remember choose organisation server 2025-12-10 17:13:11 +07:00
dab246 0bbcfd0f75 TF-4186 Add datasource/repository for save and get company server login info 2025-12-10 17:13:11 +07:00
dab246 860154acc1 TF-4176 Change minimize behavior in mail composer 2025-12-10 09:41:11 +07:00
Dat H. Pham 02f6dca96b Bump version to v0.22.1 2025-11-21 11:10:29 +07:00
Dat H. Pham 5e0d2ae424 Translated using Weblate (French)
Currently translated at 100.0% (812 of 812 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/fr/
2025-11-21 11:00:55 +07:00
Dat H. Pham 1f5bd74879 Translated using Weblate (Russian)
Currently translated at 100.0% (812 of 812 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/ru/
2025-11-21 11:00:55 +07:00
Dat H. Pham 279532a9b6 Translated using Weblate (Vietnamese)
Currently translated at 100.0% (812 of 812 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/vi/
2025-11-21 11:00:55 +07:00
Dat H. Pham 77f96ade53 Translated using Weblate (Vietnamese)
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/vi/
2025-11-21 11:00:55 +07:00
Dat H. Pham 8d1e04a65d Translated using Weblate (Vietnamese)
Currently translated at 99.8% (809 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/vi/
2025-11-21 11:00:55 +07:00
Максим Горпиніч c5685433b4 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/uk/
2025-11-21 11:00:55 +07:00
Sketch6580 7a2bec7a98 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/zh_Hans/
2025-11-21 11:00:55 +07:00
Taisiya Prudentova ff1e5ae5e8 Translated using Weblate (Russian)
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/ru/
2025-11-21 11:00:55 +07:00
Florian DANIEL aka Facyla e4bb0fb50d Translated using Weblate (French)
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/fr/
2025-11-21 11:00:55 +07:00
Zoé Bellot deaf84d1ce Translated using Weblate (French)
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/fr/
2025-11-21 11:00:55 +07:00
Zoé Bellot 738322d2de Translated using Weblate (French)
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/fr/
2025-11-21 11:00:55 +07:00
Aindriú Mac Giolla Eoin 8306e82e6e Translated using Weblate (Irish)
Currently translated at 100.0% (810 of 810 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/ga/
2025-11-21 11:00:55 +07:00
Sketch6580 d4533f75b9 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (780 of 780 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/zh_Hans/
2025-11-21 11:00:55 +07:00
Sketch6580 cf90e36589 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (780 of 780 strings)

Translation: Linagora/TeamMail
Translate-URL: https://hosted.weblate.org/projects/linagora/teammail/zh_Hans/
2025-11-21 11:00:55 +07:00
dab246 6974e031a8 Show UpgradeStorageWidget only when premium is available or quota exceeds 90% 2025-11-21 10:32:58 +07:00
dab246 66f807678c Fix show Your storage is almost full message in Storage section 2025-11-21 10:32:58 +07:00
Dat Dang 426977f603 Handle keyboard shortcut FocusNode causing memory leak (#4158) 2025-11-21 09:53:40 +07:00
dab246 f526b39fae Remove We're sorry in intl file 2025-11-20 15:28:30 +07:00
dab246 7e55f68ff3 Add E2E test for test case display empty view for favorite folder 2025-11-20 15:28:30 +07:00
dab246 4663f1263f fixup! Fix display empty state when no favorites are available 2025-11-20 15:28:30 +07:00
dab246 7528635da4 Fix display empty state when no favorites are available 2025-11-20 15:28:30 +07:00
dab246 92b63bb555 Autocomplete link insertion 2025-11-20 15:27:58 +07:00
dab246 2fe9021c7f Add E2E test for case show full recipient field when expand all 2025-11-20 14:21:09 +07:00
dab246 6f6284c21f fix: missing To field when only other fields are filled 2025-11-20 14:21:09 +07:00
dab246 a9c8dfa6a8 Fix cannot open the link from mail composer 2025-11-20 13:50:26 +07:00
dab246 47d156b6d4 fixup! Cannot resize image in composer 2025-11-20 13:26:36 +07:00