Replace nodemailer SMTP with HTTP fetch to mail-api
container (http://mail-api:3200/api/mail/send) which
already holds the Brevo SMTP creds. Single source of
truth for mail credentials, no duplication across
electron-rare-site and mail-api.
Drop nodemailer + @types/nodemailer from deps. Restore
npm ci in Dockerfile since the lock no longer drifts.
Override defaults via env: MAIL_API_URL, MAIL_FROM,
MAIL_TO. mail-api intra-Docker network reachable
because both services are on the traefik network.
Replace Frappe/Dolibarr API with direct SMTP send via
nodemailer. Form posts to local /api/submit-lead, no
external proxy on api.lelectronrare.fr (which was down
since Frappe was retired ~13 days ago).
Add onClick handler on BMU/I2C/MOSFET 3D meshes that
redirects to /contact/. Cursor pointer on hover for
affordance.
Switch Dockerfile from npm ci to npm install --no-audit
since package-lock will regen with nodemailer added.
Container env vars to configure:
SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASS
MAIL_FROM (defaults to SMTP_USER)
MAIL_TO (defaults to contact@lelectronrare.fr)