@coolgk/email

a email sender wrapper class

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
@coolgk/email
3.0.35 years ago6 years agoMinified + gzip package size for @coolgk/email in KB

Readme

@coolgk/email

a javascript / typescript module
npm install @coolgk/email
a email sender wrapper class
Report bugs here: https://github.com/coolgk/node-utils/issues

Examples

import { Email } from '@coolgk/email';
// OR
// const { Email } = require('@coolgk/email');

const email = new Email({host: 'localhost'});

email.send({
    subject: 'hello this is email subject',
    from: {
            name: 'Daniel Gong',
            email: 'daniel.k.gong@example.com'
    },
    to: [
        {
            name: 'Dan Go',
            email: 'dan@example.com'
        },
        'gong@example.com'
    ],
    message: '<html><body><h1>test</h1>some message here <img src="cid:my-image" width="500" height="250"></body></html>',
    attachments: [
        {
            path: '/tmp/test.png',
            name: 'screenshot.png'
        },
        {
            path:"/tmp/test.png",
            headers:{"Content-ID": "<my-image>"}
        }
    ]
}).then((sentMessage) => {
    console.log(sentMessage);
}).catch((error) => {
    console.log(error);
});

Email

Kind: global class
See: https://www.npmjs.com/package/emailjs#emailserverconnectoptions
* [new Email(options)](#new_Email_new)
* [.send(options, [attachments])](#Email+send) ⇒ <code>promise</code>

new Email(options)

| Param | Type | Default | Description | | --- | --- | --- | --- | | options | object | | | | options.user | string | | username for logging into smtp | | options.password | string | | password for logging into smtp | | options.host | string | "'localhost'" | smtp host | | options.port | string | | smtp port (if null a standard port number will be used) | | options.ssl | boolean | | boolean (if true or object, ssl connection will be made) | | options.tls | boolean | | boolean (if true or object, starttls will be initiated) | | options.domain | string | | domain to greet smtp with (defaults to os.hostname) | | options.authentication | Array.<string> | | authentication methods |

email.send(options, attachments) ⇒ promise

Kind: instance method of Email
Returns: promise - - message sent
| Param | Type | Description | | --- | --- | --- | | options | object | | | options.subject | string | email subject | | options.message | string | html email message | | options.to | Array.<(string\|object)> | to email address | | options.to.name | string | name of the recipient | | options.to.email | string | email address of the recipient | | options.from | string \| object | see options.to | | options.cc | Array.<(string\|object)> | see options.to | | options.bcc | Array.<(string\|object)> | see options.to | | attachments | Array.<object> | email attachments | | attachments.path | string | file path | | attachments.name | string | file name | | attachments.type | string | file mime type | | attachments.method | string | method to send attachment as (used by calendar invites) | | attachments.headers | object | attachment headers, header: value pairs, e.g. {"Content-ID":""} |