feat(email): implement EmailSendJob class for robust email delivery with retry logic and MX record resolution feat(mail): restructure mail module exports for simplified access to core and delivery functionalities
		
			
				
	
	
		
			96 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| // node native
 | |
| import * as dns from 'dns';
 | |
| import * as fs from 'fs';
 | |
| import * as crypto from 'crypto';
 | |
| import * as http from 'http';
 | |
| import * as net from 'net';
 | |
| import * as os from 'os';
 | |
| import * as path from 'path';
 | |
| import * as tls from 'tls';
 | |
| import * as util from 'util';
 | |
| 
 | |
| export {
 | |
|   dns,
 | |
|   fs,
 | |
|   crypto,
 | |
|   http,
 | |
|   net,
 | |
|   os,
 | |
|   path,
 | |
|   tls,
 | |
|   util,
 | |
| }
 | |
| 
 | |
| // @serve.zone scope
 | |
| import * as servezoneInterfaces from '@serve.zone/interfaces';
 | |
| 
 | |
| export {
 | |
|   servezoneInterfaces
 | |
| }
 | |
| 
 | |
| // @api.global scope
 | |
| import * as typedrequest from '@api.global/typedrequest';
 | |
| import * as typedserver from '@api.global/typedserver';
 | |
| import * as typedsocket from '@api.global/typedsocket';
 | |
| 
 | |
| export {
 | |
|   typedrequest,
 | |
|   typedserver,
 | |
|   typedsocket,
 | |
| }
 | |
| 
 | |
| // @push.rocks scope
 | |
| import * as projectinfo from '@push.rocks/projectinfo';
 | |
| import * as qenv from '@push.rocks/qenv';
 | |
| import * as smartacme from '@push.rocks/smartacme';
 | |
| import * as smartdata from '@push.rocks/smartdata';
 | |
| import * as smartdns from '@push.rocks/smartdns';
 | |
| import * as smartfile from '@push.rocks/smartfile';
 | |
| import * as smartguard from '@push.rocks/smartguard';
 | |
| import * as smartjwt from '@push.rocks/smartjwt';
 | |
| import * as smartlog from '@push.rocks/smartlog';
 | |
| import * as smartmail from '@push.rocks/smartmail';
 | |
| import * as smartmetrics from '@push.rocks/smartmetrics';
 | |
| import * as smartnetwork from '@push.rocks/smartnetwork';
 | |
| import * as smartpath from '@push.rocks/smartpath';
 | |
| import * as smartproxy from '@push.rocks/smartproxy';
 | |
| import * as smartpromise from '@push.rocks/smartpromise';
 | |
| import * as smartrequest from '@push.rocks/smartrequest';
 | |
| import * as smartrule from '@push.rocks/smartrule';
 | |
| import * as smartrx from '@push.rocks/smartrx';
 | |
| import * as smartunique from '@push.rocks/smartunique';
 | |
| 
 | |
| export { projectinfo, qenv, smartacme, smartdata, smartdns, smartfile, smartguard, smartjwt, smartlog, smartmail, smartmetrics, smartnetwork, smartpath, smartproxy, smartpromise, smartrequest, smartrule, smartrx, smartunique };
 | |
| 
 | |
| // Define SmartLog types for use in error handling
 | |
| export type TLogLevel = 'error' | 'warn' | 'info' | 'success' | 'debug';
 | |
| 
 | |
| // apiclient.xyz scope
 | |
| import * as cloudflare from '@apiclient.xyz/cloudflare';
 | |
| 
 | |
| export {
 | |
|   cloudflare,
 | |
| }
 | |
| 
 | |
| // tsclass scope
 | |
| import * as tsclass from '@tsclass/tsclass';
 | |
| 
 | |
| export {
 | |
|   tsclass,
 | |
| }
 | |
| 
 | |
| // third party
 | |
| import * as mailauth from 'mailauth';
 | |
| import { dkimSign } from 'mailauth/lib/dkim/sign.js';
 | |
| import mailparser from 'mailparser';
 | |
| import * as uuid from 'uuid';
 | |
| import * as ip from 'ip';
 | |
| 
 | |
| export {
 | |
|   mailauth,
 | |
|   dkimSign,
 | |
|   mailparser,
 | |
|   uuid,
 | |
|   ip,
 | |
| }
 |