Commit graph

214 commits

Author SHA1 Message Date
NickOvt
905b463a63
fix(api-listings-pagination): ZMS-225 Encode page in next and previous cursor (#818)
* implement a mongopaging wrapper to encode page in the cursor

* update mongopaging validation schema to properly use base64url encoding

* list messages endpoint use embedded page in cursor instead of explicit user-provided

* addresses, auth, certs for listing endpoints use mongopaging wrapper

* dkim, domainaliases, filters - listing endpoints use mongopaging wrapper

* messages, storage, users, webhooks - listing endpoints use mongopaging wrapper

* mongopaging wrapper - if page negative due to externally crafter cursor, default to page 1
2025-05-27 15:39:04 +03:00
NickOvt
2f6591170e
fix(wdr-counter); ZMS-224 Count wdr counter after succesful message sent not before (#816)
* count counter after succesful message sent

* move wdr counter error up. After message sent it is guaranteed that counter can increase

* update submit endpoint to account for rejections of message and update wdr counter only if successfully sent message

* check if ttl is positive before displaying the value
2025-05-27 15:32:28 +03:00
Andris Reinman
bf878eda1f
fix: ZMS 226 (#817)
* Use async for mailbox folder cache operations instead of doing it in the background

* Promise fix

* Treat negative key as no counter value
2025-05-23 13:27:59 +03:00
NickOvt
4dcb6022d7
fix(moveAsync-addAsync): use moveAsync and addAsync directly where possible (#810) 2025-04-29 13:01:00 +03:00
NickOvt
3c9aa2ac00
fix(messages-api-timeout): Add maxTimeMS timeout to mongopaging queries in messages api ZMS-204 (#799)
* add maxTimeMS timeout to mongopaging queries in messages api

* added timeouts should be using DB_MAX_TIME_MESSAGES
2025-03-24 10:51:40 +02:00
NickOvt
77625e89d7
fix(outbound-mta-relay): ZMS-171 Add support for an outbound MTA relay (#787)
* add support for an outbound MTA relay

* add mtaRelay logic to all necessary parts
2025-03-14 10:46:53 +02:00
jissepo
7ed7343b4e
Added thread data to FETCH command (#786)
* Added thread data to FETCH command

* Added missing thread projection
2025-02-18 17:22:54 +02:00
jissepo
8ff3925f91
Added thread data to FETCH command (#785) 2025-02-17 10:15:34 +02:00
NickOvt
959c70734b
fix(api-getMessagesList): getMessages list, add attachmentsList to response for easier attachment handling ZMS-195 (#773) 2025-01-27 10:43:26 +02:00
NickOvt
17bca3e9ed
fix(encrypted-mailboxes): Add functionality of singular encrypted mailboxes ZMS-181 (#758)
* add support for encrypted mailboxes

* mailboxes.js remove unnecessary default value

* filtering-handler, add raw to call to addmessage. Feature: Encrypted mailboxes added

* encrypt messages copied into encrypted mailbox

* fix streams in on-copy and message-handler. message-handler optimizations, filter-handler optimizations
2025-01-13 11:00:09 +02:00
NickOvt
978ce0685f
fix(docs-client-gen): add more readable operationId and response types, fix deps ZMS-188 (#759) 2024-12-23 10:56:37 +02:00
Andris Reinman
61f03dce8f
fix(bimi): Added 'type' for BIMI information schema 2024-11-05 10:10:23 +02:00
NickOvt
36fcabcd5b
fix(typos): fixed typos ZMS-167 (#740) 2024-10-14 10:37:58 +03:00
NickOvt
836ca26017
fix(api-all): Fixes to some API endpoint request and/or response types and schemas ZMS-157 (#691)
* Added submission api endpoint to api docs generation

* fixes to different api paths
2024-05-27 09:47:37 +03:00
NickOvt
16c6fb8b7c
fix(api-messages): messages fix response types (#673) 2024-04-22 09:31:40 +03:00
NickOvt
6e251c5bae
fix(api-messages): Added all messages endpoints to api docs generation ZMS-140 (#666)
* added Update Message information api endpoint to api docs generation

* fix response types

* Added delete a message api endpoint to api docs generation

* Added Delete all messages from a Mailbox api endpoint to api docs generation

* fix some response types. Added delete an outbound message api endpoint to api docs generation
2024-04-11 11:50:02 +03:00
NickOvt
1f27778ae8
fix(api-messages-attachment-download): is sendAsString param is set, and is set to true then decode the original file and send back as UTF-8 ZMS-134 (#655)
* add attachment charset in the indexer

* test adding a field

* test another way

* walk through mimetree to find the attachment charset and decode the message using this charset. Decoding is piped to the output stream

* test

* revert last change

* use regex for check, fix piping

* fixes
2024-04-08 09:47:27 +03:00
Andris Reinman
b1ba513a55
fix(move): Extend move operaiton lock automatically 2024-03-14 11:38:03 +02:00
Andris Reinman
b7f0aa6a22
fix(move): Increase lock time for moving messages 2024-03-14 10:59:02 +02:00
NickOvt
8b7f6c923e
feat(api-upload): Allow to upload a draft message with incorrect (non-emal) to addresses ZMS-117 (#595)
* strip to adresses that are incorrect but still save the message

* toObj.to fix to toObj.address as per the model
2024-01-04 13:30:27 +02:00
Louis Laureys
a4ae3d7113
feat(api-search): Allow searching for messages by uid (#587) 2024-01-02 13:23:43 +02:00
NickOvt
c1e28db0f3
fix(upload): allow empty name field in the Upload message FROM: header ZMS-113 (#577)
* allow empty name field in the Upload message FROM: header

* allow empty name for reply-to also
2023-12-15 12:58:03 +02:00
NickOvt
ea24b9328b
feat(apidocs): Autogenerate OpenAPI docs ZMS-100 (#552)
* api.js added endpoint for generating openapi docs. added new info to one route in mailboxes.js and messages.js files so that the api docs generation can be done at all

* try to first generate json representation of the api docs

* add initial Joi Object parsing

* api.js make generation dynamic. messages.js add schemas from separate file. messages-schemas.js used for messages endpoint schemas

* add additions to schemas. Add new schemas to messages.js and also add response object there. Add response object parsing functionality to api.js

* add initial openapi doc yml file generation

* remove manual yaml parsing with js-yaml JSON -> YAML parsing

* fix replaceWithRefs and parseComponentsDecoupled functions, refactor, remove unnecessary comments and logs

* add support for another endpoint

* move big code from api.js to tools

* fix array type representation, fix response objects, add necessary data and changes to endpoints

* redo include logic into exclude login

* fix api generation in tools.js to accomodate new naming of objects

* fix messages.js, add structuredClone check in tools.js

* fix structured clone definition

* add one endpoint in messages.js to the api generation

* messages.js add one more endpoint to API generation

* add response to prev commit. Add new endpoint to API generation. Archive message and archive messages

* finish with post endpoints in messages.js

* added general request and response schemas. Also added req and res schemas for messages

* add multiple GET endpoints to API generation and changed them to new design. Use general schemas made earlier

* fix incorrect import of successRes

* fix mailboxes.js

* refactor general-schemas.js. Fix searchSchema in messages.js. Mailboxes.js fix response

* tools.js rename methodObj in API generation to operationObj

* tools.js api generation remove string fallbacks

* messages.js finish with GET endpoints, addition to API doc generation

* for openApi doc generation use JSON now instead of YAML
2023-11-10 17:55:16 +02:00
NickOvt
aae91bb6ac
Zms 91 (#545)
* added new file to test git repo setup

* add limit_allowed and limit_sent to loggelf in messages in API. Also if multiple recipients log each message separately

* typo fix

* messages.js refactor code. Make cleaner

* fix _limit_sent. Fix earlier issue too

* session -> sess. Session doesn't exist on request objs, sess exists

* return pback the general SUBMIT log message to track API endpoint usage
2023-10-26 13:11:45 +03:00
Andris Reinman
292bbc2821
fix(attachments): Added contentDisposition property for attachments 2023-10-12 15:23:11 +03:00
Andris Reinman
1fee80eb30
fix(deps): Bumped nodemailer to force embedded images to content-disposition:inline 2023-10-09 14:40:18 +03:00
Andris Reinman
b9349f6e83
fix(sending): Do not count sending limits twice (#505) 2023-09-28 13:34:29 +03:00
Andris Reinman
80797eebec
feat(storage): Added cid property to storage files (#502) 2023-09-21 12:37:35 +03:00
Andris Reinman
f19b93a67f fixed tests 2023-07-20 13:59:59 +03:00
Andris Reinman
39560ae9dc Allow including specific header fields in message listing 2023-07-20 13:59:59 +03:00
Andris Reinman
6e0e882ee0 somewhat working ES query 2023-07-20 13:59:59 +03:00
Andris Reinman
5892a9a897 fixed wrong path 2023-07-20 13:59:59 +03:00
Andris Reinman
8a2a7b72ce Started with searching from ES 2023-07-20 13:59:59 +03:00
Andris Reinman
83b7353f3f
Initial search query parser 2023-04-27 15:24:28 +03:00
Andris Reinman
3f656e878a
Search by query text 2023-04-27 15:13:27 +03:00
Andris Reinman
92d54f3bc8
Include BIMI in search results 2022-12-22 09:27:09 +02:00
Andris Reinman
8b1bc8b736
Merge branch 'master' of github.com:nodemailer/wildduck 2022-12-15 10:55:57 +02:00
Andris Reinman
831514145a
ensure origin in hook request 2022-12-15 10:55:53 +02:00
Louis Laureys
35ac8e74cf Only sort searhc by date if order is set 2022-12-10 16:20:51 +00:00
Louis Laureys
1a210d184d Merge remote-tracking branch 'upstream/master' into sort-search-by-date 2022-12-10 14:05:12 +00:00
Andris Reinman
99cd233476
v1.38.0 2022-12-04 11:39:42 +02:00
Andris Reinman
4c940fc3f4
Limit envelope size for draft submissions 2022-12-04 11:18:53 +02:00
Andris Reinman
4686b81875
Added restifyError handler 2022-11-24 13:21:10 +02:00
Andris Reinman
e27eea14ff
Upgraded to Restify v9. Removed next() calls. 2022-11-24 12:26:10 +02:00
Andris Reinman
15fe3c28dc
Added new option 'bimi' for message uploads 2022-11-03 13:50:17 +02:00
Andris Reinman
3b138ef4b1
Include BIMI info in message listing 2022-08-31 12:30:13 +03:00
Andris Reinman
d3efe41bfb
Mark sent messages as seen 2022-08-24 12:07:14 +03:00
Louis Laureys
d197a962e3 Merge remote-tracking branch 'upstream/master' into sort-search-by-date 2022-08-10 18:05:28 +00:00
Andris Reinman
a8348e893a
Added message size value to the response of message upload request 2022-08-09 11:11:06 +03:00
Andris Reinman
14d2351123
v1.37.0 2022-07-18 20:24:04 +03:00