* Add CreateContactService to messaging services
* Add logic to create a contact if it doesn't exist
* Add name
* Improvements
* contact creation working
* fix bug
* Add IsPersonEmailService to check if an email is personal or not
* filter is working
* improve filter
* create companies and people
* Refactor createContactFromHandleAndDisplayName to createContactAndCompanyFromHandleAndDisplayName
* improve regex
* reorganizing services
* updates
* reorganize folders
* wip
* use transaction
* wip
* wip
* wip
* batch queries
* almost working
* working
* create service
* wip
* use raw queries
* creating companies is working
* Fix participant handle domain name extraction
* Add HTTP service to fetch company info from domain name
* Handle 404
* Fix missing parameter in INSERT query
* wip
* renaming
* Add typing
* wip
* fetch only the messages which are not in the db
* fetch only the messages and threads which are not in the db
* fix bugs
* merge
* remove eslint-plugins-twenty
* get saved message thread ids and message ids at the same time
* change fetchAllByBatches and fetchBatch to allow messages and threads to be fetched by batches
* wip
* format threads batches
* command is working
* command is working
* fix typing
* updates
* wip
* trying to parse display names and emails
* add nodemailer mailparser
* mail parsing is working
* add personId and workspaceMemberId
* add date to messages
* Fix PR
* Run tsc on bigger machine
* Fix lint
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* create empty service
* getting threads is working
* insert message channel
* save threads in the db
* clean
* fetch messages
* create a service to fetch a batch of messages
* batch messages
* use httpService instead
* parse batch
* base 64 decoding working
* solve parsing bug
* saving messages is working
* bug to fix in fetchAllByBatches
* fetching all messages is working but not saving yet
* fecth 500 messages and threads is working
* remove unused package and console log
* set direction to incoming
* fix bug after merging main