Socket
Book a DemoInstallSign in
Socket

promise-writable

Package Overview
Dependencies
Maintainers
0
Versions
33
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

promise-writable

Return promise for writable stream

latest
Source
npmnpm
Version
8.0.0
Version published
Maintainers
0
Created
Source

promise-writable

GitHub CI Trunk Check Coverage Status npm

This module allows conversion Writable stream into its promisified version, which returns Promise object fulfilled when open, close, pipe, unpipe, finish or error events occurred.

Requirements

This module requires Node >= 16.

Installation

npm install promise-writable

Additionally for Typescript:

npm install -D @types/node

Usage

import PromiseWritable from "promise-writable"

constructor

const promiseWritable = new PromiseWritable(stream)

PromiseWritable object requires Writable object to work.

Example:

import PromiseWritable from "promise-writable"
import fs from "node:fs"

const stream = fs.createWriteStream("/tmp/test.txt")
const promiseWritable = new PromiseWritable(stream)

stream

const stream = promiseWritable.stream

Original stream object.

Example:

console.log(promiseWritable.stream.flags)

write

const written = await promiseWritable.write(chunk)

This method returns Promise which is fulfilled when the stream accepted a chunk (write method returned that stream is still writable or drain event occured) or stream is ended (finish event).

Promise resolves to number that counts written bytes.

Example:

const written = await promiseWritable.write(new Buffer("foo"))

writeAll

const total = await promiseWritable.writeAll(content, chunkSize)

This method returns Promise which is fulfilled when the stream accepts content. This method writes the content chunk by chunk. The default chunk size is 64 KiB.

Promise resolves to a number that counts written bytes.

Example:

const total = await promiseWritable.writeAll(new Buffer("foobarbaz"), 3)

once

await promiseWritable.once(event)

This method returns Promise which is fulfilled when stream emits event. The result of this event is returned.

Promise resolves to undefined value if the stream is already closed or destroyed.

Example:

const fd = await promiseWritable.once("open")
process.stdin(promiseWritable.stream)

await promiseWritable.once("close")

const promise = promiseWritable.once("pipe")
process.stdin.pipe(promiseWritable.stream)
const src = await promise

const promise = promiseWritable.once("unpipe")
process.stdin.unpipe(promiseWritable.stream)
const src = await promise

end

await promiseWritable.end()

This method ends the stream and returns Promise which is fulfilled when stream is finished. No value is returned.

destroy

promiseWritable = promiseWritable.destroy()

This method calls destroy method on stream and cleans up all own handlers.

The method returns this object.

See also

PromiseReadable, PromiseDuplex, PromiseSocket, PromisePiping.

License

Copyright (c) 2017-2024 Piotr Roszatycki mailto:piotr.roszatycki@gmail.com

MIT

Keywords

promise

FAQs

Package last updated on 21 Jun 2024

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.