1.0.5 • Published 4 years ago

@jonybang/apidoc-plugin-ts v1.0.5

Weekly downloads
4
License
MIT
Repository
github
Last release
4 years ago

apidoc-plugin-ts

Build Status npm Greenkeeper badge

A plugin for apidoc that injects @apiSuccess or specified ELEMENT_NAME params from TypeScript interfaces. Supports extended and nested interfaces.

Getting started

npm install --save-dev apidoc @jonybang/apidoc-plugin-ts
yarn add -D apidoc @jonybang/apidoc-plugin-ts

A custom api-doc param @apiInterface is exposed:

@apiInterface (optional path to definitions file) {INTERFACE_NAME} {ELEMENT_NAME | apiSuccess}

Example

Given the following interface:

// filename: ./employers.ts

export interface Employer {
  /**
   * Employer job title
   */
  jobTitle: string;
  /**
   * Employer personal details
   */
  personalDetails: {
    name: string;
    age: number;
  }
}

and the following custom param:

@apiInterface (./employers.ts) {Person}

under the hood this would transpile to:

@apiSuccess {String} jobTitle Job title
@apiSuccess {Object} personalDetails Empoyer personal details
@apiSuccess {String} personalDetails.name
@apiSuccess {Number} personalDetails.age

Note if the Person interface is defined in the same file then you can drop the path:

@apiInterface {Person}
1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago