Skip to content

gluecode-it/readable-to-writeables-stream-processor

Repository files navigation

semantic-release NPM Version

An abstract class to transform a readable stream to multiple writeable streams via pipe

Contents

Installation

$ npm install @gluecode-it/readable-to-writeables-stream-processor

Example usage

import { ReadableToWriteablesSteamProcessor } from '@gluecode-it/readable-to-writeables-stream-processor';
import { Parse, Entry } from 'unzipper';
import { Writable } from 'stream';

export class ReadableStreamUnzipProcessor extends ReadableToWriteablesSteamProcessor {
	parseStream(getWriteableStreamCallback: (filePath: string) => Writable) {
		const stream = Parse();
		stream.on('entry', (entry: Entry) => {
			getWriteableStreamCallback(entry.props.path);
		});
		return stream;
	}
}

See also