feat: unified email senders with SMTP support#2852
Open
baderdean wants to merge 4 commits into
Open
Conversation
…anel Move both action buttons up to the panel header so they sit on the same row, regardless of which filter tab is active. Each management component now accepts a hideAddButton prop and exposes openAddDialog so the page can drive the dialog from outside.
Insert a stub smtp_sender row for each Google / Azure entry in mining_sources so users who connected an OAuth source before the unified-senders feature see their account in the email senders list without having to re-add it manually. The oauth_refresh_token is left NULL; the backend resolves the token from the linked mining_sources row (via mining_source_email) at send time, so the backfill needs no access to the vault key.
The Start Mining button was disabled when no email folders were selected, even when Google Contacts sync was enabled. Now the button stays enabled and startMiningBoxes() proceeds when googleContactsSyncEnabled is true, allowing contacts-only mining without folder selection.
b756c5c to
d2d0e93
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds SMTP sender management to the leadminer platform, enabling users to configure custom SMTP servers for sending emails alongside the existing OAuth-based sending.
Changes
Backend:
PgSmtpSendersdata access layer for thesmtp_senderstable/api/smtp-senders)Frontend:
EmailSenderManagementcomponent for managing email senders (IMAP + SMTP)AddEmailSenderDialogfor adding new SMTP senderssmtp-sendersPinia storesmtp-senders.tsTypeScript typesDatabase:
20260530120000_add_smtp_senders.sql— creates thesmtp_senderstableAuto-sync:
Closes #<issue_number> (if applicable)