Update API call to remove premailer

This commit is contained in:
Lawrence Elitzer 2020-08-30 23:43:59 -05:00
parent 1b8eb33979
commit d47159d47b

View file

@ -3,23 +3,14 @@
const passport = require('../../lib/passport');
const bluebird = require('bluebird');
const premailerApi = require('premailer-api');
const premailerPrepareAsync = bluebird.promisify(premailerApi.prepare.bind(premailerApi));
const htmlToText = require('html-to-text');
const router = require('../../lib/router-async').create();
router.postAsync('/html-to-text', passport.loggedIn, passport.csrfProtection, async (req, res) => {
if (!req.body.html) {
return res.json({text: ''}); // Premailer crashes very hard when html is empty
}
const email = await premailerPrepareAsync({
html: req.body.html,
fetchHTML: false
});
res.json({text: email.text.replace(/%5B/g, '[').replace(/%5D/g, ']')});
const email = htmlToText.fromString(req.body.html, {wordwrap: 130});
res.json({text: email});
});
module.exports = router;