UNPKG

@openapi-generator-plus/typescript-fetch-node-client-generator

Version:
71 lines (46 loc) 3.26 kB
# TypeScript Fetch Node API generator for OpenAPI Generator Plus An [OpenAPI Generator Plus](https://github.com/karlvr/openapi-generator-plus) template for a TypeScript API client using Fetch in Node. For an API client to use in browsers, see [typescript-fetch-client-generator](https://github.com/karlvr/openapi-generator-plus-generators/tree/master/packages/typescript-fetch-client). ## Using See the [OpenAPI Generator Plus](https://github.com/karlvr/openapi-generator-plus) documentation for how to use generator templates. ## Config file The available config file properties are: ### Project layout |Property|Type|Description|Default| |--------|----|-----------|-------| |`relativeSourceOutputPath`|`string`|The path to output generated source code, relative to the output path.|`./` or `./src` if `npm` is specified.| ### Code style |Property|Type|Description|Default| |--------|----|-----------|-------| |`constantStyle`|`"allCapsSnake"|"allCaps"|"camelCase"|"pascalCase"`|The style to use for constant naming.|`"pascalCase"`| |`enumMemberStyle`|`"preserve"` \| `"constant"`|The style to use for enum member names: `preserve` _attempts_ to match the enum member name to the literal enum value from the spec; `constant` uses the `constantStyle` rules.|`"constant"`| |`legacyUnnamespacedModelSupport`|`boolean`|Generate unnamespaced versions of the models.|`false`| |`dateApproach`|`"native"|"string"|"blind-date"`|Whether to use `string` for date and time and `Date` for date-time, or just `string`, or whether to use [blind-date](https://npmjs.com/blind-date) for dates and times.|`native`| ### TypeScript A `tsconfig.json` file will be output if you specify any of the TypeScript config options. |Property|Type|Description|Default| |--------|----|-----------|-------| |`typescript`|`TypeScriptConfig`|Configuration for the `tsconfig.json` file.|`undefined`| #### `TypeScriptConfig` |Property|Type|Description|Default| |--------|----|-----------|-------| |`target`|`string`|The ECMAScript target version.|`ES5`| ### Packaging |Property|Type|Description|Default| |--------|----|-----------|-------| |`npm`|`NpmConfig`|Configuration for generating an npm `package.json`|`undefined`| #### `NpmConfig` |Property|Type|Description|Default| |--------|----|-----------|-------| |`name`|`string`|The package name|`typescript-fetch-api`| |`version`|`string`|The package version|`0.0.1`| |`repository`|`string`|The URL to the package repository|`undefined`| ### Overrides |Property|Type|Description|Default| |--------|----|-----------|-------| |`customTemplates`|`string`|The path to a directory containing custom Handlebars templates, relative to the config file. See Customising below.|`undefined`| ## Customising This generator supports a `customTemplates` config file property to specify a directory containing Handlebars templates that will be used to override built-in templates. Any custom template will have the original template available as a partial named by prefixing the template name with `original`, and then upper-casing the first letter, e.g. `originalModelEnum`. Some of the templates in the generator are designed to support overriding for custom requirements. Please inspect the templates in the `templates` directory.