jh-be-tools 1.0.4 → 1.0.6
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/api-request/apiRequest.d.ts +19 -0
- package/api-request/apiRequest.js +75 -0
- package/index.d.ts +2 -1
- package/index.js +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { AxiosError, AxiosRequestConfig } from 'axios';
|
|
2
|
+
export interface Request {
|
|
3
|
+
path: string;
|
|
4
|
+
serviceName: string;
|
|
5
|
+
params?: AxiosRequestConfig['params'];
|
|
6
|
+
body?: unknown;
|
|
7
|
+
}
|
|
8
|
+
export interface Error {
|
|
9
|
+
serviceName: string;
|
|
10
|
+
status: number;
|
|
11
|
+
error: AxiosError;
|
|
12
|
+
}
|
|
13
|
+
export declare const request: {
|
|
14
|
+
get: <Response_1>(req: Request) => Promise<Response_1>;
|
|
15
|
+
post: <Response_2>(req: Request) => Promise<Response_2>;
|
|
16
|
+
put: <Response_3>(req: Request) => Promise<Response_3>;
|
|
17
|
+
patch: <Response_4>(req: Request) => Promise<Response_4>;
|
|
18
|
+
delete: <Response_5>(req: Request) => Promise<Response_5>;
|
|
19
|
+
};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.request = void 0;
|
|
27
|
+
const axios_1 = __importStar(require("axios"));
|
|
28
|
+
const get = async (req) => {
|
|
29
|
+
return await baseQuery(req, axios_1.default.get);
|
|
30
|
+
};
|
|
31
|
+
const del = async (req) => {
|
|
32
|
+
return await baseQuery(req, axios_1.default.delete);
|
|
33
|
+
};
|
|
34
|
+
const post = async (req) => {
|
|
35
|
+
return await baseQuery(req, axios_1.default.post);
|
|
36
|
+
};
|
|
37
|
+
const put = async (req) => {
|
|
38
|
+
return await baseQuery(req, axios_1.default.put);
|
|
39
|
+
};
|
|
40
|
+
const patch = async (req) => {
|
|
41
|
+
return await baseQuery(req, axios_1.default.patch);
|
|
42
|
+
};
|
|
43
|
+
const baseQuery = async (req, func) => {
|
|
44
|
+
const options = {
|
|
45
|
+
headers: { 'content-type': 'application/json' },
|
|
46
|
+
params: req.params,
|
|
47
|
+
};
|
|
48
|
+
try {
|
|
49
|
+
if (req.body) {
|
|
50
|
+
return (await func(req.path, req.body, options)).data;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
return (await func(req.path, options)).data;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
return errorHandler(error, req.serviceName);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const errorHandler = (error, serviceName) => {
|
|
61
|
+
if (!(error instanceof axios_1.AxiosError))
|
|
62
|
+
throw error;
|
|
63
|
+
throw {
|
|
64
|
+
serviceName: serviceName,
|
|
65
|
+
status: error.status ?? 500,
|
|
66
|
+
error,
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
exports.request = {
|
|
70
|
+
get,
|
|
71
|
+
post,
|
|
72
|
+
put,
|
|
73
|
+
patch,
|
|
74
|
+
delete: del,
|
|
75
|
+
};
|
package/index.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export * from
|
|
1
|
+
export * from './route-handler/routeHandler';
|
|
2
|
+
export * from './api-request/apiRequest';
|
package/index.js
CHANGED
|
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./route-handler/routeHandler"), exports);
|
|
18
|
+
__exportStar(require("./api-request/apiRequest"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jh-be-tools",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.6",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
"typescript": "^5.3.3"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
+
"axios": "^1.6.7",
|
|
19
20
|
"express": "^4.18.2",
|
|
20
21
|
"zod": "^3.22.4"
|
|
21
22
|
},
|