stream-insert
v1.1.0
Published
Transform stream which insert text into the passing stream
Downloads
8
Readme
stream-insert
Transform stream which insert text into the passing stream
Usage
stream-insert
implements the Tranform Stream API.
var fs = require('fs');
var StreamInsert = require('stream-insert');
var insert = new StreamInsert('Line to append', /^Searched line$/);
fs.createReadStream('input.txt').pipe(insert).pipe(fs.createWriteStream('output.txt'));
API
StreamInsert(insertions, query, options)
Parameters
| Parameter | Type(s) | Required | Default | Description |
| ------------ | ---------------------------------------------------- | -------- | ------- | -------------------------------------------------------------------------------------------------- |
| insertions
| string
, string[]
| Yes | | Strings to insert into the stream. |
| query
| object
, string
, string[]
, RegExp
, RegExp[]
| Yes | | Query object (see below) or RegExp(s)/string(s) used to detect where the strings will be inserted. |
| options
| object
, string
| No | {}
| Additional options. If a string is passed, set the separator option. |
Query
| Filter | Type(s) | Required | Default | Description |
| ------------------ | ------------------------------------------ | -------- | ------- | --------------------------------------------------------------------------------------------------------- |
| searches
| string
, string[]
, RegExp
, RegExp[]
| Yes | | RegExp(s)/string(s) used to detect where the strings will be inserted. |
| operator
| string
| No | AND
| If AND
, insert after all searches are found (sequentially). If OR
, insert after each matching search. |
| before
| RegExp
, string
| No | null
| Don't insert after this RegExp matched. |
| after
| RegExp
, string
| No | null
| Don't insert until this RegExp matched. |
| strict
| boolean
| No | true
| In strict mode, boudaries (before & after) are not tested against searches. |
Options
| Option | Type(s) | Required | Default | Description |
| ------------------ | ------------------ | -------- | ------- | --------------------------------------------------------------------------------------------------------- |
| prepend
| boolean
| No | false
| Insert strings before the last match, after otherwise. |
| separator
| string
| No | \n
| Separator used to split the stream. Default to \n
to read the input stream line by line. |
| limit
| number
| No | -1
| Maximum number of insertions (-1 for infinity). |
| insertSeparator
| boolean
| No | true
| If true
, insert the separator between the insert and the matched string. |