Skip to content
This repository has been archived by the owner on Jul 19, 2023. It is now read-only.
/ sw2dts Public archive

[Unmaintained] Generates TypeScript definition file(d.ts) from swagger.json for edge cases.

License

Notifications You must be signed in to change notification settings

mstssk/sw2dts

Folders and files

NameName
Last commit message
Last commit date
Apr 11, 2022
May 6, 2016
Apr 11, 2022
Dec 28, 2020
Mar 22, 2019
Mar 23, 2019
Jan 3, 2020
Mar 22, 2019
Dec 19, 2016
Jun 8, 2019
Mar 22, 2019
Jun 18, 2020
Aug 28, 2018
Apr 11, 2022
Mar 22, 2019
May 6, 2016
Jul 18, 2023
Apr 11, 2022
Feb 13, 2020
Nov 15, 2017

Repository files navigation

sw2dts

npm version GitHub Actions

Generates TypeScript definition file(d.ts) from swagger.json for edge cases.

Attention

sw2dts wraps dtsgenerator to provides several features for edge cases.

I recommend to use dtsgenerator directly or other generators such as Swagger Codegen, if you use swagger generally.

Install

$ npm install -g sw2dts

or, install with --save-dev option to use in npm scripts.

Usage

  Usage: sw2dts [options] [--] [input_filename]

  Options:

    -w, --with-query                With GET query parameters.
    -s, --sort-props                Sort type properties order.
    -o, --output <output_filename>  Output to file.
    -n, --namespace <namespace>     Use namespace.
    --stdin                         [Deprecated] Input from standard input.
  • input_filename should be swagger.json(or yaml) file.

Example

$ sw2dts swagger.json > output.d.ts
$ sw2dts -o output.d.ts swagger.json
$ sw2dts --namespace foo -o output.d.ts swagger.json
$ cat swagger.json | sw2dts -swo output.d.ts

Tips

Use sw2dts in your script.

Sample:

import * as sw2dts from 'sw2dts';

let data: sw2dts.SwaggerSpec = { /* swagger data */ };

let option: sw2dts.ConverterOptions = {
    namespace: 'foo',
    
    // includes GET query parameters.
    withQuery: true, 
    
    // modify GET query parameters interface name.
    nameResolver: (path: string, pathDefinition: sw2dts.PathDefinition, options: sw2dts.ConverterOptions) => {
        return 'any name as you like'; // WARN: sw2dts will convert this name to PascalCase.
    }
};

sw2dts.convert(data, option).then(dts => {
    console.log(dts);
});

How to build

npm cit

About

[Unmaintained] Generates TypeScript definition file(d.ts) from swagger.json for edge cases.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published