mail page imap connection mime 5 bis rest 14

This commit is contained in:
alma 2025-04-15 23:20:35 +02:00
parent 133dafe8c4
commit 63669217db
2 changed files with 25 additions and 9 deletions

View File

@ -1,26 +1,30 @@
import { NextResponse } from 'next/server';
import Imap from 'imap';
import { simpleParser } from 'mailparser';
import getConfig from 'next/config';
// Get server runtime config
const { serverRuntimeConfig } = getConfig();
// Debug logging for environment variables
console.log('Environment Variables:', {
IMAP_USER: process.env.IMAP_USER,
IMAP_HOST: process.env.IMAP_HOST,
IMAP_PORT: process.env.IMAP_PORT,
IMAP_PASSWORD: process.env.IMAP_PASSWORD ? '***' : undefined,
IMAP_USER: serverRuntimeConfig.IMAP_USER,
IMAP_HOST: serverRuntimeConfig.IMAP_HOST,
IMAP_PORT: serverRuntimeConfig.IMAP_PORT,
IMAP_PASSWORD: serverRuntimeConfig.IMAP_PASSWORD ? '***' : undefined,
NODE_ENV: process.env.NODE_ENV
});
// IMAP configuration
const imapConfig: Imap.Config = {
user: process.env.IMAP_USER as string,
password: process.env.IMAP_PASSWORD as string,
host: process.env.IMAP_HOST || 'mail.infomaniak.com',
port: parseInt(process.env.IMAP_PORT || '993', 10),
user: serverRuntimeConfig.IMAP_USER as string,
password: serverRuntimeConfig.IMAP_PASSWORD as string,
host: serverRuntimeConfig.IMAP_HOST || 'mail.infomaniak.com',
port: parseInt(serverRuntimeConfig.IMAP_PORT || '993', 10),
tls: true,
tlsOptions: {
rejectUnauthorized: false,
servername: process.env.IMAP_HOST || 'mail.infomaniak.com'
servername: serverRuntimeConfig.IMAP_HOST || 'mail.infomaniak.com'
},
authTimeout: 10000,
connTimeout: 10000,

View File

@ -27,6 +27,18 @@ const nextConfig = {
IMAP_HOST: process.env.IMAP_HOST,
IMAP_PORT: process.env.IMAP_PORT,
},
// Ensure environment variables are available in API routes
serverRuntimeConfig: {
IMAP_USER: process.env.IMAP_USER,
IMAP_PASSWORD: process.env.IMAP_PASSWORD,
IMAP_HOST: process.env.IMAP_HOST,
IMAP_PORT: process.env.IMAP_PORT,
},
// Make environment variables available to the client
publicRuntimeConfig: {
IMAP_HOST: process.env.IMAP_HOST,
IMAP_PORT: process.env.IMAP_PORT,
}
};
mergeConfig(nextConfig, userConfig);