anl 1.5.2 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -25,13 +25,17 @@ $ yarn global add anl
25
25
 
26
26
  ## 使用方法
27
27
 
28
+ 1. 执行命令
29
+
28
30
  ```bash
29
31
  $ anl type
30
32
  ```
31
33
 
32
- - 如果初次使用会在项目根目录下创建如下配置文件(手动创建也可以),具体参数说明后面会有详细介绍
34
+ 2. 完善配置项目
33
35
 
34
- 1. 项目根目录创建配置文件 `an.config.json`:
36
+ - 首次执行 `anl type`, 命令,会在*项目根目录下*, _自动创建_ 以 `an.config.json` 为名的配置文件(手动创建也可以),
37
+ - 具体参数说明请看配置项说明
38
+ - 配置文件名不可修改
35
39
 
36
40
  ```json
37
41
  {
@@ -50,10 +54,10 @@ $ anl type
50
54
  }
51
55
  ```
52
56
 
53
- 2. 运行命令生成类型文件:
57
+ 3. 生成 TypeScript 类型定义和 API 请求函数,再次执行生成命令即可
54
58
 
55
59
  ```bash
56
- anl generate
60
+ $ anl type
57
61
  ```
58
62
 
59
63
  ## 配置项说明
@@ -11,11 +11,10 @@ type ResponseModel<T> = {
11
11
 
12
12
  interface IRequestFnRestParams<P = any> {
13
13
  config?: import('axios').AxiosRequestConfig<P>;
14
- datalevel?: TDatalevel;
15
14
  [key: string]: any;
16
15
  }
17
16
 
18
- interface IRequestFnParams<P = any> extends IRequestFnRestParams<P> {
17
+ type IRequestFnParams<P = any> = import('axios').AxiosRequestConfig<P> & {
19
18
  query?: any;
20
19
  body?: any;
21
- }
20
+ };
@@ -3,23 +3,18 @@ import type { AxiosResponse } from 'axios';
3
3
  import { dio as axios } from './config';
4
4
  import { messageTip } from './error-message';
5
5
 
6
- type RequestParamsWithDataLevel<P, D extends TDatalevel = 'serve'> = Omit<IRequestFnParams<P>, 'datalevel'> & {
7
- datalevel?: D;
8
- };
9
-
10
- function GET<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'serve'>): RServe<R>;
11
- function GET<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'data'>): Promise<R>;
12
- function GET<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'axios'>): RAxios<R>;
13
- function GET<R = unknown, P = unknown>(
14
- url: string,
15
- { query = {}, config = {}, datalevel = 'serve' }: IRequestFnParams<P> = {},
16
- ): Promise<R> | RServe<R> | RAxios<R> {
17
- return axios.request<P, AxiosResponse<ResponseModel<R>>>({
18
- ...config,
19
- url,
20
- params: query,
21
- method: 'get',
22
- transformResponse(res) {
6
+ function GET<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'serve'): RServe<R>;
7
+ function GET<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'data'): Promise<R>;
8
+ function GET<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'axios'): RAxios<R>;
9
+ function GET<R = unknown>(url: string, params: IRequestFnParams, datalevel: TDatalevel = 'serve') {
10
+ return axios
11
+ .request<any, AxiosResponse<ResponseModel<R>>>({
12
+ ...params,
13
+ url,
14
+ params: params.query,
15
+ method: 'get',
16
+ })
17
+ .then((res) => {
23
18
  messageTip(res);
24
19
  switch (datalevel) {
25
20
  case 'data':
@@ -29,23 +24,21 @@ function GET<R = unknown, P = unknown>(
29
24
  case 'axios':
30
25
  return res;
31
26
  }
32
- },
33
- });
27
+ });
34
28
  }
35
29
 
36
- function DELETE<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'serve'>): RServe<R>;
37
- function DELETE<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'data'>): Promise<R>;
38
- function DELETE<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'axios'>): RAxios<R>;
39
- function DELETE<R = unknown, P = unknown>(
40
- url: string,
41
- { query = {}, config = {}, datalevel = 'serve' }: IRequestFnParams<P> = {},
42
- ): Promise<R> | RServe<R> | RAxios<R> {
43
- return axios.request<P, AxiosResponse<ResponseModel<R>>>({
44
- ...config,
45
- url,
46
- params: query,
47
- method: 'delete',
48
- transformResponse(res) {
30
+ function DELETE<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'serve'): RServe<R>;
31
+ function DELETE<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'data'): Promise<R>;
32
+ function DELETE<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'axios'): RAxios<R>;
33
+ function DELETE<R = unknown>(url: string, params: IRequestFnParams, datalevel: TDatalevel = 'serve') {
34
+ return axios
35
+ .request<any, AxiosResponse<ResponseModel<R>>>({
36
+ ...params,
37
+ url,
38
+ params: params.query,
39
+ method: 'delete',
40
+ })
41
+ .then((res) => {
49
42
  messageTip(res);
50
43
  switch (datalevel) {
51
44
  case 'data':
@@ -55,24 +48,22 @@ function DELETE<R = unknown, P = unknown>(
55
48
  case 'axios':
56
49
  return res;
57
50
  }
58
- },
59
- });
51
+ });
60
52
  }
61
53
 
62
- function PUT<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'serve'>): RServe<R>;
63
- function PUT<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'data'>): Promise<R>;
64
- function PUT<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'axios'>): RAxios<R>;
65
- function PUT<R = unknown, P = unknown>(
66
- url: string,
67
- { query = {}, body = {}, config = {}, datalevel = 'serve' }: IRequestFnParams<P> = {},
68
- ): Promise<R> | RServe<R> | RAxios<R> {
69
- return axios.request<P, AxiosResponse<ResponseModel<R>>>({
70
- ...config,
71
- url,
72
- params: query,
73
- data: body,
74
- method: 'put',
75
- transformResponse(res) {
54
+ function PUT<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'serve'): RServe<R>;
55
+ function PUT<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'data'): Promise<R>;
56
+ function PUT<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'axios'): RAxios<R>;
57
+ function PUT<R = unknown>(url: string, { query, body, ...rest }: IRequestFnParams, datalevel: TDatalevel = 'serve') {
58
+ return axios
59
+ .request<any, AxiosResponse<ResponseModel<R>>>({
60
+ ...rest,
61
+ url,
62
+ params: query,
63
+ data: body,
64
+ method: 'put',
65
+ })
66
+ .then((res) => {
76
67
  messageTip(res);
77
68
  switch (datalevel) {
78
69
  case 'data':
@@ -82,24 +73,22 @@ function PUT<R = unknown, P = unknown>(
82
73
  case 'axios':
83
74
  return res;
84
75
  }
85
- },
86
- });
76
+ });
87
77
  }
88
78
 
89
- function POST<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'serve'>): RServe<R>;
90
- function POST<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'data'>): Promise<R>;
91
- function POST<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'axios'>): RAxios<R>;
92
- function POST<R = unknown, P = unknown>(
93
- url: string,
94
- { query = {}, body = {}, config = {}, datalevel = 'serve' }: IRequestFnParams<P> = {},
95
- ): Promise<R> | RServe<R> | RAxios<R> {
96
- return axios.request<P, AxiosResponse<ResponseModel<R>>>({
97
- ...config,
98
- url,
99
- params: query,
100
- data: body,
101
- method: 'post',
102
- transformResponse(res) {
79
+ function POST<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'serve'): RServe<R>;
80
+ function POST<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'data'): Promise<R>;
81
+ function POST<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'axios'): RAxios<R>;
82
+ function POST<R = unknown>(url: string, { query, body, ...rest }: IRequestFnParams, datalevel: TDatalevel = 'serve') {
83
+ return axios
84
+ .request<any, AxiosResponse<ResponseModel<R>>>({
85
+ ...rest,
86
+ url,
87
+ params: query,
88
+ data: body,
89
+ method: 'post',
90
+ })
91
+ .then((res) => {
103
92
  messageTip(res);
104
93
  switch (datalevel) {
105
94
  case 'data':
@@ -109,24 +98,22 @@ function POST<R = unknown, P = unknown>(
109
98
  case 'axios':
110
99
  return res;
111
100
  }
112
- },
113
- });
101
+ });
114
102
  }
115
103
 
116
- function PATCH<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'serve'>): RServe<R>;
117
- function PATCH<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'data'>): Promise<R>;
118
- function PATCH<R = unknown, P = unknown>(url: string, params?: RequestParamsWithDataLevel<P, 'axios'>): RAxios<R>;
119
- function PATCH<R = unknown, P = unknown>(
120
- url: string,
121
- { query = {}, body = {}, config = {}, datalevel = 'serve' }: IRequestFnParams<P> = {},
122
- ): Promise<R> | RServe<R> | RAxios<R> {
123
- return axios.request<P, AxiosResponse<ResponseModel<R>>>({
124
- ...config,
125
- url,
126
- params: query,
127
- data: body,
128
- method: 'patch',
129
- transformResponse(res) {
104
+ function PATCH<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'serve'): RServe<R>;
105
+ function PATCH<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'data'): Promise<R>;
106
+ function PATCH<R = unknown>(url: string, params: IRequestFnParams, datalevel?: 'axios'): RAxios<R>;
107
+ function PATCH<R = unknown>(url: string, { query, body, ...rest }: IRequestFnParams, datalevel: TDatalevel = 'serve') {
108
+ return axios
109
+ .request<any, AxiosResponse<ResponseModel<R>>>({
110
+ ...rest,
111
+ url,
112
+ params: query,
113
+ data: body,
114
+ method: 'patch',
115
+ })
116
+ .then((res) => {
130
117
  messageTip(res);
131
118
  switch (datalevel) {
132
119
  case 'data':
@@ -136,8 +123,6 @@ function PATCH<R = unknown, P = unknown>(
136
123
  case 'axios':
137
124
  return res;
138
125
  }
139
- },
140
- });
126
+ });
141
127
  }
142
-
143
128
  export { DELETE, GET, PATCH, POST, PUT };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e="1.5.2",i="FE command line tool",s="bin/an-cli.js",l={dev:"rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript -w",build:"rimraf lib && rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript",pub:"bash publish.sh",ts:"tsc ./src/int.ts --noEmit --watch",blink:"npm run build && npm link"},p={anl:"bin/an-cli.js"},t="Gleason <bianliuzhu@gmail.com>",r={"@commitlint/cli":"^17.4.3","@commitlint/config-conventional":"^17.4.3","@rollup/plugin-commonjs":"^21.0.1","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^13.1.3","@rollup/plugin-typescript":"^8.3.0","@types/inquirer":"^9.0.3","@types/shelljs":"^0.8.11","@typescript-eslint/eslint-plugin":"^5.52.0","@typescript-eslint/parser":"^5.52.0","cross-env":"^7.0.3",eslint:"^8.7.0",husky:"^8.0.3","openapi-types":"^12.1.3",prettier:"^3.3.2",rimraf:"^5.0.7",rollup:"^2.64.0","rollup-plugin-cleandir":"^2.0.0","rollup-plugin-copy":"^3.5.0","rollup-plugin-terser":"^7.0.2",typescript:"^4.5.4"},o={"app-root-path":"^3.1.0",cac:"^6.7.12",chalk:"4.*","clear-console":"^1.1.0",commander:"^10.0.0",figures:"^6.1.0",inquirer:"^10.1.8","log-symbols":"^5.1.0",ora:"5.*","progress-estimator":"^0.3.0",shelljs:"^0.8.5"},n=["typescript","cli","typescript 脚手架","ts 脚手架","ts-cli","脚手架"],c=["package.json","README.md","lib","template"],u={type:"git",url:"https://github.com/bianliuzhu/an-cli.git"},a="commonjs",m={name:"anl",version:e,description:i,main:s,scripts:l,bin:p,author:t,license:"ISC",devDependencies:r,dependencies:o,keywords:n,files:c,repository:u,type:a};exports.author=t,exports.bin=p,exports.default=m,exports.dependencies=o,exports.description=i,exports.devDependencies=r,exports.files=c,exports.keywords=n,exports.license="ISC",exports.main=s,exports.name="anl",exports.repository=u,exports.scripts=l,exports.type=a,exports.version=e;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e="1.5.4",i="FE command line tool",s="bin/an-cli.js",l={dev:"rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript -w",build:"rimraf lib && rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript",pub:"bash publish.sh",ts:"tsc ./src/int.ts --noEmit --watch",blink:"npm run build && npm link"},p={anl:"bin/an-cli.js"},t="Gleason <bianliuzhu@gmail.com>",r={"@commitlint/cli":"^17.4.3","@commitlint/config-conventional":"^17.4.3","@rollup/plugin-commonjs":"^21.0.1","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^13.1.3","@rollup/plugin-typescript":"^8.3.0","@types/inquirer":"^9.0.3","@types/shelljs":"^0.8.11","@typescript-eslint/eslint-plugin":"^5.52.0","@typescript-eslint/parser":"^5.52.0","cross-env":"^7.0.3",eslint:"^8.7.0",husky:"^8.0.3","openapi-types":"^12.1.3",prettier:"^3.3.2",rimraf:"^5.0.7",rollup:"^2.64.0","rollup-plugin-cleandir":"^2.0.0","rollup-plugin-copy":"^3.5.0","rollup-plugin-terser":"^7.0.2",typescript:"^4.5.4"},o={"app-root-path":"^3.1.0",cac:"^6.7.12",chalk:"4.*","clear-console":"^1.1.0",commander:"^10.0.0",figures:"^6.1.0",inquirer:"^10.1.8","log-symbols":"^5.1.0",ora:"5.*","progress-estimator":"^0.3.0",shelljs:"^0.8.5"},n=["typescript","cli","typescript 脚手架","ts 脚手架","ts-cli","脚手架"],c=["package.json","README.md","lib","template"],u={type:"git",url:"https://github.com/bianliuzhu/an-cli.git"},a="commonjs",m={name:"anl",version:e,description:i,main:s,scripts:l,bin:p,author:t,license:"ISC",devDependencies:r,dependencies:o,keywords:n,files:c,repository:u,type:a};exports.author=t,exports.bin=p,exports.default=m,exports.dependencies=o,exports.description=i,exports.devDependencies=r,exports.files=c,exports.keywords=n,exports.license="ISC",exports.main=s,exports.name="anl",exports.repository=u,exports.scripts=l,exports.type=a,exports.version=e;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "anl",
3
- "version": "1.5.2",
3
+ "version": "1.5.4",
4
4
  "description": "FE command line tool",
5
5
  "main": "bin/an-cli.js",
6
6
  "scripts": {