1.1.0 • Published 6 years ago

parse-server-mailer-adapter v1.1.0

Weekly downloads
-
License
MIT
Repository
-
Last release
6 years ago

parse-server-mailer-adapter

Install

With npm do:

npm install parse-server-mailer-adapter

API

Table of Contents

nodeMailerAdapter

An adapter for Parse Server that abstracts the email sending mechanism away to provide a consistent interface no matter which provider you are using. Thanks primarily go to Nodemailer and email-templates which do the heavy lifting.

Parameters

  • options Object
    • options.engine String The templating engine used; pass a file extension to change this (e.g. hbs, ejs). Note that you will have to install the template language as a dependency of your application if you use this option. (optional, default pug)
    • options.from String The email address to send from.
    • options.send Boolean? Passed through to email-templates and will deactivate email sending in development & test environments. Set to true if you want to send emails when testing your application.
    • options.transport Object This is passed straight through to nodemailer.createTransport, so you may use any email sending methods.
    • options.templates String Specify the base path for your templates here; see the email-templates documentation for more details. (optional, default parse-server-mailer-adapter/templates)

Examples

Using the AWS SES adapter

const ParseServer = require('parse-server').ParseServer;
const aws = require('aws-sdk');

const SES = new aws.SES({ apiVersion: '2010-12-01' });

const server = ParseServer({
  // ... other options
  emailAdapter: {
    module: 'parse-server-mailer-adapter',
    options: {
      from: 'noreply@example.com'
      transport: { SES }
    }
  }
})

Using the JSON adapter

const ParseServer = require('parse-server').ParseServer;

const server = ParseServer({
  // ... other options
  emailAdapter: {
    module: 'parse-server-mailer-adapter',
    options: {
      from: 'noreply@example.com'
      transport: { jsonTransport: true }
    }
  }
})

Using the SMTP adapter

const ParseServer = require('parse-server').ParseServer;

const server = ParseServer({
  // ... other options
  emailAdapter: {
    module: 'parse-server-mailer-adapter',
    options: {
      from: 'noreply@example.com'
      transport: {
        pool: true,
        host: 'smtp.example.com',
        port: 465,
        secure: true,
        auth: {
          user: 'user',
          pass: 'pass'
        }
      }
    }
  }
})

Returns Object<Function> Exposes sendMail, sendPasswordResetEmail and sendVerificationEmail for Parse's benefit. In addition, there are two custom template methods; sendTemplateEmail allows you to specify a template and an object of local template variables, whereas sendCustomEmail allows you to pass global message variables (such as from address) as well as giving you full control of the options for the send handler.

License

MIT © The Distance