This package has been deprecated

Author message:

Package name was changed to @neluzhin/specificator-serializer, so this package is deprecated and will no longer be supported.

specificator-serializer
TypeScript icon, indicating that this package has built-in type declarations

0.0.6 • Public • Published

Specificator serializer

Coverage Status NPM downloads Renovate enabled

Achtung! This library is in early development state so it's unstable. It works now, but there are no guarantees for API stability (it may change during development). We are testing this library inside our projects and adopting some features to make it feel better. Please wait for version 1.0 and don't use it inside real projects.

This library is default serializer for Specificator.

Documentation

Installation

npm install --save-dev specificator-serializer

Usage

Simple example:

import {Serializer} from "specificator-serializer";
import {Contact, Info, License, OpenAPI} from "specificator";

const documentationSchema = new OpenAPI({
    info: new Info({
        contact: new Contact({
            email: "test@example.com",
            name: "Test name",
            url: "https://example.com/test",
        }),
        description: "Test description",
        license: new License({
            name: "Test license",
            url: "https://example.com/test",
        }),
        termsOfService: "https://example.com/test",
        title: "Test title",
        version: "1.0.0",
    }),
    paths: {},
});

const serializer = new Serializer();

const serializedDocumentation = serializer.serialize(documentationSchema);
const serializedDocumentationJson = JSON.stringify(serializedDocumentation);

console.log(serializedDocumentationJson); // prints your documentation in JSON

Configuration

Serializer constructor accepts optional configuration object. Example:

import {Serializer} from "specificator-serializer";

const serializer = new Serializer({
    sortObjectKeysAlphabetically: true
});

Possible configuration parameters are listed below.

sortObjectKeysAlphabetically

Boolean. Sort all object keys alphabetically. Defaults to false.

Creating your own serializer

There may be a case when this serializer will not cover all your cases. If you want to create your own serializer, it should implement SerializerInterface to make it feel consistent between all existing implementations.

Also it's recommended to add specificator & specificator-serializer keywords to your package.json file and specificator & specificator-serializer topics to your GitHub repository for better discoverability.

Package Sidebar

Install

npm i specificator-serializer

Weekly Downloads

1

Version

0.0.6

License

MIT

Unpacked Size

9.81 kB

Total Files

9

Last publish

Collaborators

  • flaksp