Product
Introducing License Enforcement in Socket
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
stream-to-it
Advanced tools
Convert Node.js streams to streaming iterables
Seamlessly use Node.js streams with it-pipe
and friends.
import fs from 'node:fs'
import * as toIterable from 'stream-to-it'
const readable = fs.createReadStream('/path/to/file')
// Node.js streams are already async iterable so this is just s => s
const source = toIterable.source<Buffer>(readable)
for await (const chunk of source) {
console.log(chunk.toString())
}
Also works with browser ReadableStream
:
import * as toIterable from 'stream-to-it'
const res = await fetch('http://example.org/file.jpg')
if (res.body == null) {
throw new Error('Body was not set')
}
for await (const chunk of toIterable.source(res.body)) {
console.log(chunk.toString())
}
import fs from 'node:fs'
import { pipe } from 'it-pipe'
import * as toIterable from 'stream-to-it'
const source = [Buffer.from('Hello '), Buffer.from('World!')]
const sink = toIterable.sink(fs.createWriteStream('/path/to/file'))
await pipe(source, sink)
import fs from 'node:fs'
import { Transform } from 'node:stream'
import { pipe } from 'it-pipe'
import * as toIterable from 'stream-to-it'
const output = await pipe(
[true, false, true, true],
toIterable.transform(new Transform({ // Inverter transform :)
transform (chunk, enc, cb) {
cb(null, !chunk)
}
})),
// Collect and return the chunks
async source => {
const chunks = []
for await (const chunk of source) chunks.push(chunk)
return chunks
}
)
console.log(output) // [ false, true, false, false ]
it-to-stream
Convert streaming iterables to Node.js streamsit-pipe
Utility to "pipe" async iterables together$ npm i stream-to-it
Licensed under either of
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
FAQs
Convert Node.js streams to streaming iterables
The npm package stream-to-it receives a total of 0 weekly downloads. As such, stream-to-it popularity was classified as not popular.
We found that stream-to-it demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
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.
Product
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
Product
We're launching a new set of license analysis and compliance features for analyzing, managing, and complying with licenses across a range of supported languages and ecosystems.
Product
We're excited to introduce Socket Optimize, a powerful CLI command to secure open source dependencies with tested, optimized package overrides.