You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

inlineContent.js 717B

12345678910111213141516171819202122232425262728293031
  1. const extractCss = require('extract-css');
  2. const inlineCss = require('./inline-css');
  3. module.exports = function inlineContent(src, options) {
  4. return new Promise((resolve, reject) => {
  5. let content;
  6. if (!options.url) {
  7. reject('options.url is required');
  8. }
  9. extractCss(src, options, (err, html, css) => {
  10. let extraCss;
  11. if (err) {
  12. return reject(err);
  13. }
  14. extraCss = `${css}\n${options.extraCss}`;
  15. try {
  16. content = inlineCss(html, extraCss, options);
  17. } catch (e) {
  18. return reject(e);
  19. }
  20. resolve(content);
  21. });
  22. });
  23. };