Détail du package

tiny-jsonl

avoidwork155BSD-3-Clause3.0.4

Stringify Objects and Arrays into JSONL Strings, and parse JSONL Strings into Objects and Arrays.

jsonl, object, array, string

readme

Tiny JSONL

Stringify Objects and Arrays into JSONL Strings, and parse JSONL Strings into Objects and Arrays.

API

parse()

Converts a JSONL string to an Object or Array of Objects

param  {String} to parse into an Object, or Array of Objects
return {String} JSONL string

Example

import {parse} from "tiny-jsonl";

const arrayObjects = parse('{...}\n{...}\n{...}');

stringify()

Converts an Object or Array of Objects to JSONL string

param  {Array} or {Object} to transform
return {String} JSONL string

Example

import {stringify} from "tiny-jsonl";

const jsonlString = stringify([
    {
        ...
    },
    {
        ...
    }
]);

Testing

Tiny JSONL has 100% code coverage with its tests.

----------------|---------|----------|---------|---------|-------------------
File            | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------------|---------|----------|---------|---------|-------------------
All files       |     100 |      100 |     100 |     100 |                  
 tiny-jsonl.cjs |     100 |      100 |     100 |     100 |                  
----------------|---------|----------|---------|---------|-------------------

Example

Input

import {stringify} from "tiny-jsonl";
stringify([
    {
        "_id": "66897c0b5bb3f3bda598a7be",
        "index": 0,
        "guid": "57cc37b7-ea7b-4cf5-b07e-238a15cc1cdd",
        "isActive": true,
        "balance": "$1,290.80",
        "picture": "http://placehold.it/32x32",
        "age": 21,
        "eyeColor": "blue",
        "name": "Valeria Jenkins",
        "gender": "female",
        "company": "GEOLOGIX",
        "email": "valeriajenkins@geologix.com",
        "phone": "+1 (976) 597-3338",
        "address": "681 Jackson Place, Collins, Nevada, 8477",
        "about": "Officia sunt fugiat aute eiusmod cillum excepteur enim consectetur in pariatur consequat cupidatat. Id minim anim sint cupidatat nostrud labore esse proident eiusmod eu. Dolor sit aute adipisicing est proident eiusmod voluptate reprehenderit sunt aliquip non quis. Lorem voluptate laboris aliquip cupidatat.\r\n",
        "registered": "2016-04-05T01:14:10 +04:00",
        "latitude": 8.514373,
        "longitude": -22.578972,
        "tags": [
            "voluptate",
            "esse",
            "amet",
            "mollit",
            "in",
            "consectetur",
            "sunt"
        ],
        "friends": [
            {
                "id": 0,
                "name": "Moore Howell"
            },
            {
                "id": 1,
                "name": "Summer Cline"
            },
            {
                "id": 2,
                "name": "Francis Simon"
            }
        ],
        "greeting": "Hello, Valeria Jenkins! You have 1 unread messages.",
        "favoriteFruit": "banana"
    },
    {
        "_id": "66897c0b0eea9250887803d6",
        "index": 1,
        "guid": "6eac3134-b442-4289-a498-ef9b5624f196",
        "isActive": false,
        "balance": "$1,302.96",
        "picture": "http://placehold.it/32x32",
        "age": 28,
        "eyeColor": "brown",
        "name": "Amanda Rodgers",
        "gender": "female",
        "company": "GRAINSPOT",
        "email": "amandarodgers@grainspot.com",
        "phone": "+1 (987) 457-3247",
        "address": "650 Osborn Street, Edenburg, New Jersey, 1377",
        "about": "Eu minim enim aliquip nulla aliquip elit sit nostrud dolore reprehenderit aliquip sit qui Lorem. Enim et excepteur dolor velit minim nulla ullamco nisi. Qui adipisicing id occaecat nisi duis quis sint minim laborum minim id. Do id aliqua deserunt incididunt nulla officia nostrud reprehenderit laborum aliquip qui. Veniam pariatur eu quis reprehenderit velit nostrud deserunt deserunt. Commodo duis esse deserunt laborum tempor dolore anim laborum deserunt ipsum sit tempor consectetur.\r\n",
        "registered": "2023-05-27T09:39:08 +04:00",
        "latitude": 45.890773,
        "longitude": -29.059383,
        "tags": [
            "Lorem",
            "sunt",
            "cillum",
            "ea",
            "in",
            "aute",
            "culpa"
        ],
        "friends": [
            {
                "id": 0,
                "name": "Jo Nunez"
            },
            {
                "id": 1,
                "name": "Mcdonald Burns"
            },
            {
                "id": 2,
                "name": "Pacheco Vang"
            }
        ],
        "greeting": "Hello, Amanda Rodgers! You have 7 unread messages.",
        "favoriteFruit": "strawberry"
    }
]);

Output

json lines {"_id":"66897c0b5bb3f3bda598a7be","index":0,"guid":"57cc37b7-ea7b-4cf5-b07e-238a15cc1cdd","isActive":true,"balance":"$1,290.80","picture":"http://placehold.it/32x32","age":21,"eyeColor":"blue","name":"Valeria Jenkins","gender":"female","company":"GEOLOGIX","email":"valeriajenkins@geologix.com","phone":"+1 (976) 597-3338","address":"681 Jackson Place, Collins, Nevada, 8477","about":"Officia sunt fugiat aute eiusmod cillum excepteur enim consectetur in pariatur consequat cupidatat. Id minim anim sint cupidatat nostrud labore esse proident eiusmod eu. Dolor sit aute adipisicing est proident eiusmod voluptate reprehenderit sunt aliquip non quis. Lorem voluptate laboris aliquip cupidatat.\\r\\n","registered":"2016-04-05T01:14:10 +04:00","latitude":8.514373,"longitude":-22.578972,"tags":["voluptate","esse","amet","mollit","in","consectetur","sunt"],"friends":[{"id":0,"name":"Moore Howell"},{"id":1,"name":"Summer Cline"},{"id":2,"name":"Francis Simon"}],"greeting":"Hello, Valeria Jenkins! You have 1 unread messages.","favoriteFruit":"banana"} {"_id":"66897c0b0eea9250887803d6","index":1,"guid":"6eac3134-b442-4289-a498-ef9b5624f196","isActive":false,"balance":"$1,302.96","picture":"http://placehold.it/32x32","age":28,"eyeColor":"brown","name":"Amanda Rodgers","gender":"female","company":"GRAINSPOT","email":"amandarodgers@grainspot.com","phone":"+1 (987) 457-3247","address":"650 Osborn Street, Edenburg, New Jersey, 1377","about":"Eu minim enim aliquip nulla aliquip elit sit nostrud dolore reprehenderit aliquip sit qui Lorem. Enim et excepteur dolor velit minim nulla ullamco nisi. Qui adipisicing id occaecat nisi duis quis sint minim laborum minim id. Do id aliqua deserunt incididunt nulla officia nostrud reprehenderit laborum aliquip qui. Veniam pariatur eu quis reprehenderit velit nostrud deserunt deserunt. Commodo duis esse deserunt laborum tempor dolore anim laborum deserunt ipsum sit tempor consectetur.\\r\\n","registered":"2023-05-27T09:39:08 +04:00","latitude":45.890773,"longitude":-29.059383,"tags":["Lorem","sunt","cillum","ea","in","aute","culpa"],"friends":[{"id":0,"name":"Jo Nunez"},{"id":1,"name":"Mcdonald Burns"},{"id":2,"name":"Pacheco Vang"}],"greeting":"Hello, Amanda Rodgers! You have 7 unread messages.","favoriteFruit":"strawberry"}

License

Copyright (c) 2024 Jason Mulligan Licensed under the BSD-3 license.

changelog

Changelog

All notable changes to this project will be documented in this file. Dates are displayed in UTC.

Generated by auto-changelog.

3.0.4

  • Updating docblocks & README.md 9a8b321

3.0.3

8 October 2024

  • Bump eslint from 9.11.1 to 9.12.0 #40
  • Adjusting d.ts file 917aefc
  • Generated CHANGELOG.md cdb98dc

3.0.2

4 October 2024

  • Replacing strings with constants 6dde4ed
  • Generated CHANGELOG.md ad8db30

3.0.1

4 October 2024

3.0.0

4 October 2024

  • Bump rollup from 4.23.0 to 4.24.0 #39
  • Bump rollup from 4.22.5 to 4.23.0 #38
  • Bump rollup from 4.22.4 to 4.22.5 #37
  • Bump eslint from 9.11.0 to 9.11.1 #36
  • Bump rollup from 4.22.0 to 4.22.4 #34
  • Bump eslint from 9.10.0 to 9.11.0 #35
  • Bump rollup from 4.21.3 to 4.22.0 #33
  • Bump nyc from 17.0.0 to 17.1.0 #32
  • Bump rollup from 4.21.2 to 4.21.3 #31
  • Bump auto-changelog from 2.4.0 to 2.5.0 #30
  • Bump husky from 9.1.5 to 9.1.6 #29
  • Bump typescript from 5.5.4 to 5.6.2 #28
  • Bump eslint from 9.9.1 to 9.10.0 #27
  • Refactoring toward simplify instead of pretty output c6453d0
  • Handling objects better cadd11d
  • Generated CHANGELOG.md 5759f2b

2.0.4

5 September 2024

  • Removing an unneeded conditional statement a0812c2

2.0.3

4 September 2024

2.0.2

4 September 2024

  • Fixing nested arrays #26
  • Bump rollup from 4.21.1 to 4.21.2 #25
  • Bump rollup from 4.21.0 to 4.21.1 #24
  • Bump eslint from 9.9.0 to 9.9.1 #23
  • Bump husky from 9.1.4 to 9.1.5 #22
  • Bump rollup from 4.20.0 to 4.21.0 #21
  • Bump mocha from 10.7.0 to 10.7.3 #19
  • Bump eslint from 9.8.0 to 9.9.0 #20
  • Bump rollup from 4.19.2 to 4.20.0 #18
  • Bump rollup from 4.19.1 to 4.19.2 #17
  • Bump husky from 9.1.3 to 9.1.4 #16
  • Bump eslint from 9.7.0 to 9.8.0 #15
  • Bump husky from 9.1.2 to 9.1.3 #14
  • Bump rollup from 4.19.0 to 4.19.1 #13
  • Bump husky from 9.1.1 to 9.1.2 #12
  • Generated CHANGELOG.md 4c777bd
  • Updating a test description cc3abd9

2.0.1

24 July 2024

  • Updating README.md & package.json description de2d08b
  • Generated CHANGELOG.md 16ab350

2.0.0

24 July 2024

  • Bump typescript from 5.5.3 to 5.5.4 #11
  • Bump rollup from 4.18.1 to 4.19.0 #10
  • Bump mocha from 10.6.0 to 10.7.0 #9
  • Bump husky from 9.1.0 to 9.1.1 #8
  • Bump husky from 9.0.11 to 9.1.0 #7
  • Bump eslint from 9.6.0 to 9.7.0 #6
  • Bump tiny-strings from 1.0.6 to 1.0.12 #5
  • Bump rollup from 4.18.0 to 4.18.1 #4
  • Bump tiny-strings from 1.0.5 to 1.0.6 #3
  • Creating 'parse()' & renaming 'jsonl()' to 'stringify()', updating README.md 64308a4
  • Restructuring code 99aeae2
  • Updating lint rules & fixing formatting, generated CHANGELOG.md 0dcc58a

1.0.10

6 July 2024

1.0.9

6 July 2024

  • Escaping tabs, new lines, & return 3aea5fd
  • Generated CHANGELOG.md 011d602

1.0.8

6 July 2024

1.0.7

6 July 2024

  • Adding constants, updating README.md, updating dependency e89107e
  • Generated CHANGELOG.md 3727c65

1.0.6

6 July 2024

1.0.5

6 July 2024

1.0.4

6 July 2024

  • Implementing 'tiny-strings' #2
  • Generating CHANGELOG.md 734b2e9

1.0.3

6 July 2024

  • Fixing handling of embedded quotes ef6c75c
  • Adding input validation def1e8a
  • Handling nested Objects within Arrays e07d3b1

1.0.2

6 July 2024

1.0.1

6 July 2024

  • Removing unneeded ops when using '0' space param 8a8a933
  • Generating CHANGELOG.md 76a3e4b

1.0.0

6 July 2024