Skip to content

Creates a stream to convert json from string or convert json to stream. The stream is based on the incoming object stream.

License

Notifications You must be signed in to change notification settings

siarheidudko/objectstream

Repository files navigation

@sergdudko/objectstream

Revolutionize Your JSON Handling with Streamlined Efficiency: Seamlessly Convert JSON from String or Transform JSON to Drain with this Powerful Stream Creation Tool. Harness the Power of Object Streams for Swift and Seamless Data Processing!

npm npm NpmLicense GitHub last commit GitHub release

  • Based on native methods of NodeJS

INSTALL

 npm i @sergdudko/objectstream --save

DOCS

See docs

SUPPORTED ENCODING

Stream incoming stream outgoing stream
Stringifer utf8 (object mode) utf8, base64, latin1, binary, hex
Parser utf8, base64, latin1, binary, hex utf8 (object mode)

USE

// REQUIRE OR IMPORT CLASS

const Stringifer = require("@sergdudko/objectstream").Stringifer;
const Parser = require("@sergdudko/objectstream").Parser;
// or use import
import { Stringifer, Parser } from "@sergdudko/objectstream";

// CREATE STREAM

const firstSeparator = "[";
const middleSeparator = ",";
const endSeparator = "]";
const stringToObject = new Parser(
  firstSeparator,
  middleSeparator,
  endSeparator
);
const objectToString = new Stringifer(
  firstSeparator,
  middleSeparator,
  endSeparator
);

// EVENTS

stringToObject.on("data", (e) => {
  // e - is Object
});
stringToObject.on("error", (d) => {
  // e - Array of Error
});
stringToObject.on("end", () => {
  // end event
});
stringToObject.on("finish", () => {
  // finish event
});
objectToString.on("data", (e) => {
  // e - is Buffer (deault, if you need a string use setEncoding)
});
objectToString.on("error", (d) => {
  // e - Array of Error
});
objectToString.on("end", () => {
  // end event
});
objectToString.on("finish", () => {
  // finish event
});

// CHANGE ENCODING

stringToObject.setEncoding("latin1");
objectToString.setEncoding("latin1");

// WRITE DATA (example for utf8)

stringToObject.write('{"boolean":true}');
objectToString.write({ boolean: true });

// PIPE

stringToObject.pipe(objectToString);

EXAMPLE

see test directory

OLDER VERSIONS

LICENSE

MIT