# @salty6952/openapi

> [![GitHub Repo stars](https://img.shields.io/github/stars/SaltyFish6952/openapi2typescript-increment-enhance?style=social)](https://github.com/SaltyFish6952/openapi2typescript-increment-enhance) [![npm (scoped)](https://img.shields.io/npm/v/@umijs/openapi

Latest version **1.8.5-beta.1** (published 2023-07-28) · MIT license · 0 weekly downloads

## Install

```sh
npm install @salty6952/openapi
pnpm add @salty6952/openapi
yarn add @salty6952/openapi
bun add @salty6952/openapi
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.8.5-beta.1 |
| Published | 2023-07-28 |
| First published | 2023-07-28 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 17 |
| Unpacked size | 116.3 KB |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| Author | chenshuai2144 |
| Maintainers | saltyfish6952 |

## Links

- npm: https://www.npmjs.com/package/@salty6952/openapi
- Repository: git@github.com:SaltyFish6952/openapi2typescript-increment-enhance
- npm.io page: https://npm.io/package/@salty6952/openapi

## Dependencies (17)

- [glob](https://npm.io/package/glob.md) ^7.1.6
- [chalk](https://npm.io/package/chalk.md) ^4.1.2
- [dayjs](https://npm.io/package/dayjs.md) ^1.10.3
- [lodash](https://npm.io/package/lodash.md) ^4.17.21
- [mockjs](https://npm.io/package/mockjs.md) ^1.1.0
- [rimraf](https://npm.io/package/rimraf.md) ^3.0.2
- [mock.js](https://npm.io/package/mock.js.md) ^0.2.0
- [memoizee](https://npm.io/package/memoizee.md) ^0.4.15
- [nunjucks](https://npm.io/package/nunjucks.md) ^3.2.2
- [prettier](https://npm.io/package/prettier.md) ^2.2.1
- [ts-morph](https://npm.io/package/ts-morph.md) ^18.0.0
- [node-fetch](https://npm.io/package/node-fetch.md) ^2.6.1
- [openapi3-ts](https://npm.io/package/openapi3-ts.md) ^2.0.1
- [tiny-pinyin](https://npm.io/package/tiny-pinyin.md) ^1.3.2
- [@umijs/fabric](https://npm.io/package/@umijs/fabric.md) ^2.5.6
- [reserved-words](https://npm.io/package/reserved-words.md) ^0.1.2
- [swagger2openapi](https://npm.io/package/swagger2openapi.md) ^7.0.4

## Recent versions

- 1.8.5-beta.1 (latest) — 2023-07-28
- 1.8.5-beta.8 (beta) — 2023-08-07
- 1.8.5-beta.7 — 2023-08-07
- 1.8.5-beta.6 — 2023-08-02
- 1.8.5-beta.5 — 2023-08-01
- 1.8.5-beta.4 — 2023-08-01
- 1.8.5-beta.3 — 2023-08-01

## README

## 介绍
[![GitHub Repo stars](https://img.shields.io/github/stars/SaltyFish6952/openapi2typescript-increment-enhance?style=social)](https://github.com/SaltyFish6952/openapi2typescript-increment-enhance)
[![npm (scoped)](https://img.shields.io/npm/v/@umijs/openapi)](https://www.npmjs.com/package/@umijs/openapi)
![GitHub tag (latest SemVer pre-release)](https://img.shields.io/github/v/tag/SaltyFish6952/openapi2typescript-increment-enhance?include_prereleases)

根据 [OpenApi3](https://swagger.io/blog/news/whats-new-in-openapi-3-0/) 文档生成 request 请求代码。

如果你使用 [umi](https://umijs.org) ,你可以使用[@umijs/plugin-openapi](https://www.npmjs.com/package/@umijs/plugin-openapi) 插件。
## 使用
```node
npm i --save-dev @umijs/openapi
```
在项目根目录新建 ```openapi.config.ts```
```ts
const { generateService } = require('@umijs/openapi')

generateService({
  schemaPath: 'http://petstore.swagger.io/v2/swagger.json',
  serversPath: './servers',
})

```
在 ```package.json``` 的 ```script``` 中添加 api: ```"openapi": "ts-node openapi.config.ts",```

生成api
```node
npm run openapi
```
## 参数
|  属性   | 必填  | 备注 | 类型 | 默认值 |
|  ----  | ----  |  ----  |  ----  | - |
| requestLibPath  | 否 | 自定义请求方法路径 | string | - |
| requestImportStatement  | 否 | 自定义请求方法表达式 | string | - |
| apiPrefix  | 否 | api 的前缀 | string | - |
| serversPath  | 否 | 生成的文件夹的路径 | string | - |
| schemaPath  | 否 | Swagger 2.0 或 OpenAPI 3.0 的地址 | string | - |
| projectName  | 否 | 项目名称 | string | - |
| namespace  | 否 | 命名空间名称 | string | API |
| mockFolder  | 否 | mock目录 | string | - |
| enumStyle  | 否 | 枚举样式 | string-literal \| enum | string-literal |
| nullable | 否 | 使用null代替可选 | boolean | false |
| dataFields | 否 | response中数据字段 | string[] | - |
| incrementControllers | 否 | 增量追加的controller名字 | string[] | - |
| incrementMode | 否 | 当incrementControllers有值时启用，<br> sort: 追加controller和types后根据命名重新排序；<br>insert: 根据存在的controller和types顺序进行追加； | sort \| insert | insert |

---
_Source: https://npm.io/package/@salty6952/openapi · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
