npm.io
1.2.1 • Published 12 months ago

@vates/read-chunk

Licence
ISC
Version
1.2.1
Deps
1
Size
9 kB
Vulns
0
Weekly
0
Stars
984

@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

Keywords