Socket
Socket
Sign inDemoInstall

hyperstream

Package Overview
Dependencies
28
Maintainers
2
Versions
17
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

hyperstream

stream html into html at a css selector


Version published
Maintainers
2
Weekly downloads
377
decreased by-30.44%

Weekly downloads

Readme

Source

hyperstream

stream html into html at a css selector

build status

example

var hyperstream = require('hyperstream');
var fs = require('fs');

var hs = hyperstream({
    '#a': fs.createReadStream(__dirname + '/a.html'),
    '#b': fs.createReadStream(__dirname + '/b.html')
});
var rs = fs.createReadStream(__dirname + '/index.html');
rs.pipe(hs).pipe(process.stdout);
$ node example/hs.js
<html>
  <body>
    <div id="a"><h1>a!!!</h1></div>
    <div id="b"><b>bbbbbbbbbbbbbbbbbbbbbb</b></div>
  </body>
</html>

methods

var hyperstream = require('hyperstream')

var hs = hyperstream(streamMap)

Return a duplex stream that takes an html stream as input and produces an html stream as output, inserting the streams given by streamMap at the css selector keys.

If streamMap values are strings or functions, update the contents at the css selector key with their contents directly without using a stream.

If streamMap values are non-stream objects, iterate over the keys and set attributes for each key.

These attributes are special. Each attribute can be a string, buffer, or stream:

  • _html - set the inner content as raw html
  • _text - set the inner content as text encoded as html entities
  • _append, _appendText - add text to the end of the inner content encoded as html entities
  • _appendHtml - add raw html to the end of the inner content
  • _prepend, _prependText - add text to the beginning of the inner content encoded as html entities
  • _prependHtml - add raw html to the beginning of the inner context

For example, to set raw html into the inner content with the _html attribute, do:

hyperstream({
    '#content': {
        _html: stream,
        'data-start': 'cats!',
        'data-end': 'cats!\ufff'
    }
})

You can also specify string operations for properties with an object instead of a string. The object can have these properties:

  • append
  • prepend

Object properties are particularly handy for adding classes:

hyperstream({
    '.row': {
        class: { append: ' active' }
    }
})

which turns:

<div class="row"><b>woo</b></div>

into:

<div class="row active"><b>woo</b></div>

hs.select(), hs.update(), hs.replace(), hs.remove()

Proxy through methods to the underlying trumpet instance.

install

With npm do:

npm install hyperstream

license

MIT

Keywords

FAQs

Last updated on 19 Nov 2014

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc