first-chunk-stream

WebJar for first-chunk-stream

Лицензия

Лицензия

MIT
Группа

Группа

org.webjars.npm
Идентификатор

Идентификатор

first-chunk-stream
Последняя версия

Последняя версия

2.0.0
Дата

Дата

Тип

Тип

jar
Описание

Описание

first-chunk-stream
WebJar for first-chunk-stream
Ссылка на сайт

Ссылка на сайт

http://webjars.org
Система контроля версий

Система контроля версий

https://github.com/sindresorhus/first-chunk-stream

Скачать first-chunk-stream

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/org.webjars.npm/first-chunk-stream/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>first-chunk-stream</artifactId>
    <version>2.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/first-chunk-stream/
implementation 'org.webjars.npm:first-chunk-stream:2.0.0'
// https://jarcasting.com/artifacts/org.webjars.npm/first-chunk-stream/
implementation ("org.webjars.npm:first-chunk-stream:2.0.0")
'org.webjars.npm:first-chunk-stream:jar:2.0.0'
<dependency org="org.webjars.npm" name="first-chunk-stream" rev="2.0.0">
  <artifact name="first-chunk-stream" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='first-chunk-stream', version='2.0.0')
)
libraryDependencies += "org.webjars.npm" % "first-chunk-stream" % "2.0.0"
[org.webjars.npm/first-chunk-stream "2.0.0"]

Зависимости

compile (1)

Идентификатор библиотеки Тип Версия
org.webjars.npm : readable-stream jar [2.0.2,3)

Модули Проекта

Данный проект не имеет модулей.

first-chunk-stream

Buffer and transform the n first bytes of a stream

Install

$ npm install first-chunk-stream

Usage

const fs = require('fs');
const getStream = require('get-stream');
const FirstChunkStream = require('first-chunk-stream');

// unicorn.txt => unicorn rainbow
const stream = fs.createReadStream('unicorn.txt')
	.pipe(new FirstChunkStream({chunkSize: 7}, async (chunk, encoding) => {
		return chunk.toString(encoding).toUpperCase();
	}));

(async () => {
	const data = await getStream(stream);

	if (data.length < 7) {
		throw new Error('Couldn\'t get the minimum required first chunk length');
	}

	console.log(data);
	//=> 'UNICORN rainbow'
})();

API

FirstChunkStream(options, transform)

FirstChunkStream constructor.

transform(chunk, encoding)

Type: Function

Async function that receives the required options.chunkSize bytes.

Expected to return an buffer-like object or string or object of form {buffer: Buffer, encoding: string} to send to stream or firstChunkStream.stop to end stream right away.

An error thrown from this function will be emitted as stream errors.

Note that the buffer can have a smaller length than the required one. In that case, it will be due to the fact that the complete stream contents has a length less than the options.chunkSize value. You should check for this yourself if you strictly depend on the length.

new FirstChunkStream({chunkSize: 7}, async (chunk, encoding) => {
	return chunk.toString(encoding).toUpperCase(); // Send string to stream
});

new FirstChunkStream({chunkSize: 7}, async (chunk, encoding) => {
	return chunk; // Send buffer to stream
});

new FirstChunkStream({chunkSize: 7}, async (chunk, encoding) => {
	return {
		buffer: chunk,
		encoding: encoding,
	}; // Send buffer with encoding to stream
});

new FirstChunkStream({chunkSize: 7}, async (chunk, encoding) => {
	return FirstChunkStream.stop; // End the stream early
});

new FirstChunkStream({chunkSize: 7}, async (chunk, encoding) => {
	throw new Error('Unconditional error'); // Emit stream error
});

options

Type: object

The options object is passed to the Duplex stream constructor allowing you to customize your stream behavior. In addition, you can specify the following option:

chunkSize

Type: number

How many bytes you want to buffer.

Версии библиотеки

Версия
2.0.0
1.0.0