Socket
Socket
Sign inDemoInstall

@syslogic/graph-serializer

Package Overview
Dependencies
Maintainers
3
Versions
24
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@syslogic/graph-serializer

Typescript serializer for converting betweet JSON data and Object graphs


Version published
Weekly downloads
90
decreased by-10%
Maintainers
3
Weekly downloads
 
Created
Source

graph-serializer

Graph serializer is a lightweight library for converting JSON data structures to typed objects usable in typescript. Benefits include better type checking in your IDE, better type safety, and standardized date conversion. Primary use case is for easy integration of RESTful services and typescript.

Installation

Add graph-serializer to your dependencies:

npm i --save @syslogic/graph-serializer

Usage

Graph-serializer provides an annotation which you can use in your typescrpt entities. You can use the @serializable to specify which properties need to be (de)serialized.

The serialize and deserialize functions can then be used with the entity

Basic usage

import {serializable, deserialize, serialize} from "@syslogic/graph-serializer"

class Foo {
    @serializable()
    public thisWillBeSerialized: string = 'test';
}

let fooObj = deserialize(Foo, {thisWillBeSerialized: 'bar'}); // fooOjb instanceof Foo === true
let fooGraph = serialize(new Foo()); //  fooGraph = {thisWillBeSerialized: 'bar'}

Advanced

There are a few serializer parameters to seraialize all sorts of serializers. Check the test directory for more examples. Features include:

  • Proper Date deserialization
  • Nested serialization
  • Serialize and deserialize including subclasses (class hierarchy)
  • Arrays, multilevel arrays
  • Object maps / Hash maps
  • Union types
  • Polymorphic arrays

Commands

  • yarn build - builds new files.
  • yarn watch - Watches for changes and builds on change.
  • npm test - Runs tests

Keywords

FAQs

Package last updated on 16 Jan 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc