harmon-cheerio

0.1.2 • Public • Published

harmon-cheerio

harmon-cheerio makes it simple to perform transforms using harmon by using cheerio. It also makes it possible to transform elements asynchronously using Promises.

This package is currently under development. Please use at your own discretion.

Example

const harmonCheerio = require('harmon-cheerio');
 
// ...
 
app.use(harmon([], [
  {
    query: 'body',
    func: harmonCheerio((element, req) => {
      if (doesUserAgentRequirePolyfill(req)) {
        element.append('<script src="/path/to/polyfill.js"></script>');
      }
    })
  }
]));
const harmonCheerio = require('harmon-cheerio');
 
// ...
 
app.use(harmon([], [
  {
    query: 'script#session-placeholder',
    func: harmonCheerio(async (element, req) => {
      // pretend we need to make a request to get the user's session data
      const sessionData = await getSessionData(req.session.id);
      element.text(`const SESSION = ${JSON.stringify(sessionData)};`);
    })
  }
]));

See cheerio for the full list of methods you have access to.

License

MIT ❤️

Readme

Keywords

Package Sidebar

Install

npm i harmon-cheerio

Weekly Downloads

13

Version

0.1.2

License

MIT

Unpacked Size

3.84 kB

Total Files

4

Last publish

Collaborators

  • jacobmarshall