1.0.7 • Published 1 year ago
@tellimer/mailer v1.0.7
@tellimer/mailer
Sends a @tellimer/mailable
instance through Sendgrid
Example - Sending 1 email
Given this mailable:
import React from 'react'
import { Components, Mailable } from '@tellimer/mailable'
export class ConfirmEmailMailable extends Mailable {
constructor (private readonly token: string) {
super()
}
subject = 'Please confirm your email address'
from = {
name: 'Tellimer Support',
email: 'support@tellimer.com',
}
view () {
return (
<Components.Email>
Thank you for registering with us.
<Components.EmailButton href={`https://tellimer.com/confirm/${this.token}`}>
Confirm your email
</Components.EmailButton>
</Components.Email>
)
}
}
You can send via:
import {ConfirmEmailMailable} from './mailable'
import {send} from '@tellimer/mailer'
const mailable = new ConfirmEmailMailable('this-be-the-token')
send(mailable, 'tim.feid@tellimer.com')
// OR
send(mailable, {email: 'tim.feid@tellimer.com', name: 'Tim Feid'})
Example - Sending mass emails
Given this mailable:
import React from 'react'
import { Components, Mailable } from '@tellimer/mailable'
export class MassEmailMailable extends Mailable {
subject = 'Hi :first_name!'
from = {
name: 'Tellimer Support',
email: 'support@tellimer.com',
}
view () {
return (
<Components.Email>
<Components.EmailRow>
<Components.EmailCol>
<p>
Hello :first_name:,
</p>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit.
</p>
<p>
Eligendi ipsum suscipit cupiditate illo! Amet officia eius fugiat fuga quis.
</p>
<p>
Ex provident ullam pariatur quia dolores architecto deserunt explicabo, maxime hic.
</p>
<p>
Looks like we can contact you at :phone_number.
</p>
<p>
Thanks!
</p>
</Components.EmailCol>
</Components.EmailRow>
</Components.Email>
)
}
}
You can send via:
import {MassEmailMailable} from './mailable'
import {send} from '@tellimer/mailer'
const mailable = new MassEmailMailable()
send(mailable, [
{email: 'tim.feid@tellimer.com', name: 'Tim Feid', substitutions: {':first_name': 'Tim', ':phone_number': 'xxx-xxx-xx35'}},
{email: 'tim.feid2@tellimer.com', name: 'Joe Shmoe', substitutions: {':first_name': 'Joe', ':phone_number': 'xxx-xxx-xx75'}},
]).then(result => console.log(result))
Will look something like this:
Example - A/B Testing emails
You can send multiple different emails to A/B test.
1.0.7
1 year ago
1.0.6
1 year ago
1.0.5
2 years ago
1.0.4
2 years ago
1.0.3
2 years ago
1.0.2
2 years ago
1.0.1
2 years ago
1.0.0
2 years ago
1.0.0-RC7
2 years ago
1.0.0-RC8
2 years ago
1.0.0-RC11
2 years ago
1.0.0-RC10
2 years ago
1.0.0-RC13
2 years ago
1.0.0-RC12
2 years ago
1.0.0-RC9
2 years ago
1.0.0-RC5
2 years ago
1.0.0-RC3
3 years ago
1.0.0-RC4
3 years ago
1.0.0-RC2
3 years ago
1.0.0-RC1
3 years ago
1.0.0-RC
3 years ago