JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1675944
  • Score
    100M100P100Q193608F
  • License MIT

Hook and modify stdout/stderr

Package Exports

  • hook-std

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (hook-std) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

hook-std Build Status

Hook and modify stdout and stderr

Install

$ npm install hook-std

Usage

const assert = require('assert');
const hookStd = require('hook-std');

(async () => {
    const promise = hookStd.stdout(output => {
        promise.unhook();
        assert.strictEqual(output.trim(), 'unicorn');
    });

    console.log('unicorn');
    await promise;
})();

You can also unhook using the second transform method parameter:

(async () => {
    const promise = hookStd.stdout((output, unhook) => {
        unhook();
        assert.strictEqual(output.trim(), 'unicorn');
    });

    console.log('unicorn');
    await promise;
})();

API

hookStd([options], transform)

Hook streams in streams option, by default stdout and stderr.

Returns a Promise with a unhook() method which, when called, unhooks both stdout and stderr and resolves the Promise with an empty result.

hookStd.stdout([options], transform)

Hook stdout.

Returns a Promise with a unhook() method which, when called, resolves the Promise with an empty result.

hookStd.stderr([options], transform)

Hook stderr.

Returns a Promise with a unhook() method which, when called, resolves the Promise with an empty result.

options

Type: Object

silent

Type: boolean
Default: true

Suppress stdout/stderr output.

once

Type: boolean
Default: false

Automatically unhooks after the first call.

streams

Type: stream.Writable[]
Default: [process.stdout, process.stderr]

Writable streams to hook. This can be useful for libraries allowing users to configure a Writable Stream to write to.

transform

Type: Function

Receives stdout/stderr as the first argument and the unhook method as the second argument. Return a string to modify it. Optionally, when in silent mode, you may return a boolean to influence the return value of .write(...).

License

MIT © Sindre Sorhus