| Server IP : 82.148.16.210 / Your IP : 216.73.216.169 Web Server : nginx/1.29.5 System : Linux mail.sarafai.ru 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /srv/projects/env4/src/dev/frontend3/node_modules/table/node_modules/hook-std/ |
Upload File : |
# hook-std [](https://travis-ci.org/sindresorhus/hook-std)
> Hook and modify stdout and stderr
## Install
```
$ npm install hook-std
```
## Usage
```js
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:
```js
(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](#streams), 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`<br>
Default: `true`
Suppress stdout/stderr output.
##### once
Type: `boolean`<br>
Default: `false`
Automatically unhooks after the first call.
##### streams
Type: `stream.Writable[]`<br>
Default: `[process.stdout, process.stderr]`
[Writable streams](https://nodejs.org/api/stream.html#stream_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](https://sindresorhus.com)