json-multiline-strings

0.1.0 • Public • Published

json-multiline-strings

One shortcoming of JSON is the lack of multiline support. This module will split/join multiline strings to string arrays which is more readable.

EXAMPLE

Convert to multiline variant:

var input = {
    "foo": "bar",
    "long": "text with\nseveral\nline breaks"
}
console.log(JSON.stringify(jsonMultilineStrings.split(input), null, '    '))
{
    "foo": "bar",
    "long": [
        "text with",
        "several",
        "line breaks"
    ]
}

Convert back to original json:

var input = {
    "foo": "bar",
    "long": [
        "text with",
        "several",
        "line breaks"
    ]
}
console.log(JSON.stringify(jsonMultilineStrings.join(input), null, '    '))
{
    "foo": "bar",
    "long": "text with\nseveral\nline breaks"
}

API

jsonMultilineStrings.split(data, options) resp. jsonMultilineStringsSplit(data, options)

Processes input data recursively and convert all multiline strings to string arrays.

Options:

  • exclude: Exclude the following paths from modifications. Give an array of string arrays, e.g. [ [ 'foo', 'bar' ], [ 'test' ] ]. This would not modify the paths 'foo/bar' and 'test'.

jsonMultilineStrings.join(data, options) resp. jsonMultilineStringsJoin(data, options)

Processes input data recursively and convert all string arrays to multiline strings.

Options:

  • exclude: Exclude the following paths from modifications. Give an array of string arrays, e.g. [ [ 'foo', 'bar' ], [ 'test' ] ]. This would not modify the paths 'foo/bar' and 'test'.

INSTALL

JS usage via npm

npm install --save json-multiline-strings
var jsonMultilineStrings = require('json-multiline-strings')
jsonMultilineStrings.split(...)
jsonMultilineStrings.join(...)

PHP usage via composer

composer install plepe/json-multiline-strings
jsonMultilineStringsSplit(...)
jsonMultilineStringsJoin(...)

Development

git clone https://github.com/plepe/json-multiline-strings.git
cd json-multiline-strings
npm install
composer install

Readme

Keywords

none

Package Sidebar

Install

npm i json-multiline-strings

Weekly Downloads

31

Version

0.1.0

License

GPL-3.0

Last publish

Collaborators

  • plepe