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

An OpenAPI Generator Plus template for a TypeScript API client using Fetch

Usage no npm install needed!

<script type="module">
  import openapiGeneratorPlusTypescriptFetchClientGenerator from 'https://cdn.skypack.dev/@openapi-generator-plus/typescript-fetch-client-generator';
</script>

README

TypeScript Fetch Browser API generator for OpenAPI Generator Plus

An OpenAPI Generator Plus template for a TypeScript API client using Fetch in a Browser. For an API client to use in Node applications, see typescript-fetch-node-client-generator.

Using

See the 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"
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 for dates and times. native
legacyUnnamespacedModelSupport boolean Generate unnamespaced versions of the models. false
includePolyfills boolean Include polyfills for features that browsers might not support or support well. true

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.