cal/packages/emails
Hariom Balhara 4ef666a610
Zoom/Hubspot Tests with MSW mocking of requests initiated from Next.js server (#3210)
* Add code from previous PR

* Remove env variables from wrong place

* Fix tests

* Remove dead code

* Package.json updates

* Fix eslint error

* Fix issue due to conflict resolution

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: zomars <zomars@me.com>
2022-08-26 12:44:02 -06:00
..
src AppStore CLI: Making video app creation a breeze with major cleanup of locations code throughout (#3825) 2022-08-25 18:48:50 -06:00
templates Zoom/Hubspot Tests with MSW mocking of requests initiated from Next.js server (#3210) 2022-08-26 12:44:02 -06:00
email-manager.ts Fixes bug that new line is not working in workflow reminder emails (#3452) 2022-07-21 18:56:20 +00:00
index.ts Refactor emails to use JSX as templating engine (#2915) 2022-06-06 17:49:56 +00:00
package.json Update all Yarn dependencies (2022-07-29) (#3599) 2022-08-17 11:38:21 -06:00
README.md Refactor emails to use JSX as templating engine (#2915) 2022-06-06 17:49:56 +00:00
tailwind.config.js Refactor emails to use JSX as templating engine (#2915) 2022-06-06 17:49:56 +00:00

JSX email templates

  • components Holds reusable patterns
  • templates A template equals a type of email sent

Usage

import { renderEmail } from "@calcom/emails";

renderEmail("TeamInviteEmail", */{
  language: t,
  from: "teampro@example.com",
  to: "pro@example.com",
  teamName: "Team Pro",
  joinLink: "https://cal.com",
});

The first argument is the template name as defined inside templates/index.ts. The second argument are the template props.

Development

You can use an API endpoint to preview the email HTML, there's already one on /apps/web/pages/api/email.ts feel free to change the template to the one you're currently working on.