1.2.0 • Published 9 months ago

@vates/read-chunk v1.2.0

Weekly downloads
10
License
ISC
Repository
github
Last release
9 months ago

@vates/read-chunk

Package Version License PackagePhobia Node compatibility

Read a chunk of a Node stream

Install

Installation of the npm package:

npm install --save @vates/read-chunk

Usage

readChunk(stream, [size])

  • returns the next available chunk of data
  • like stream.read(), a number of bytes can be specified
  • returns with less data than expected if stream has ended
  • returns null if the stream has ended and no data has been read
import { readChunk } from '@vates/read-chunk'
;(async () => {
  let chunk
  while ((chunk = await readChunk(stream, 1024)) !== null) {
    // do something with chunk
  }
})()

readChunkStrict(stream, [size])

Similar behavior to readChunk but throws if the stream ended before the requested data could be read.

import { readChunkStrict } from '@vates/read-chunk'

const chunk = await readChunkStrict(stream, 1024)

skip(stream, size)

Skips a given number of bytes from a stream.

Returns the number of bytes actually skipped, which may be less than the requested size if the stream has ended.

import { skip } from '@vates/read-chunk'

const bytesSkipped = await skip(stream, 2 * 1024 * 1024 * 1024)

skipStrict(stream, size)

Skips a given number of bytes from a stream and throws if the stream ended before enough stream has been skipped.

import { skipStrict } from '@vates/read-chunk'

await skipStrict(stream, 2 * 1024 * 1024 * 1024)

Contributions

Contributions are very welcomed, either on the documentation or on the code.

You may:

  • report any issue you've encountered;
  • fork and create a pull request.

License

ISC © Vates SAS