@be-link/request 1.45.0 → 1.45.1-beta.0
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 +366 -20
- package/dist/application/clients/BeLinkClient.d.ts +75 -0
- package/dist/application/clients/BeLinkClient.d.ts.map +1 -0
- package/dist/application/clients/HttpClient.d.ts +64 -0
- package/dist/application/clients/HttpClient.d.ts.map +1 -0
- package/dist/application/clients/LiveClient.d.ts +15 -0
- package/dist/application/clients/LiveClient.d.ts.map +1 -0
- package/dist/application/interceptors/AuthInterceptor.d.ts +23 -0
- package/dist/application/interceptors/AuthInterceptor.d.ts.map +1 -0
- package/dist/application/interceptors/TimeInterceptor.d.ts +21 -0
- package/dist/application/interceptors/TimeInterceptor.d.ts.map +1 -0
- package/dist/application/interceptors/TokenInterceptor.d.ts +24 -0
- package/dist/application/interceptors/TokenInterceptor.d.ts.map +1 -0
- package/dist/application/services/UserInfoService.d.ts +33 -0
- package/dist/application/services/UserInfoService.d.ts.map +1 -0
- package/dist/cloudbase/index.d.ts +27 -0
- package/dist/cloudbase/index.d.ts.map +1 -0
- package/dist/cloudbase/types.d.ts +63 -0
- package/dist/cloudbase/types.d.ts.map +1 -0
- package/dist/core/constants/index.d.ts +59 -0
- package/dist/core/constants/index.d.ts.map +1 -0
- package/dist/core/errors/index.d.ts +42 -0
- package/dist/core/errors/index.d.ts.map +1 -0
- package/dist/core/interfaces/IConfigManager.d.ts +31 -0
- package/dist/core/interfaces/IConfigManager.d.ts.map +1 -0
- package/dist/core/interfaces/IEncryptionService.d.ts +28 -0
- package/dist/core/interfaces/IEncryptionService.d.ts.map +1 -0
- package/dist/core/interfaces/IHttpClient.d.ts +43 -0
- package/dist/core/interfaces/IHttpClient.d.ts.map +1 -0
- package/dist/core/interfaces/index.d.ts +4 -0
- package/dist/core/interfaces/index.d.ts.map +1 -0
- package/dist/core/types/config.types.d.ts +57 -0
- package/dist/core/types/config.types.d.ts.map +1 -0
- package/dist/core/types/index.d.ts +5 -0
- package/dist/core/types/index.d.ts.map +1 -0
- package/dist/core/types/interceptor.types.d.ts +48 -0
- package/dist/core/types/interceptor.types.d.ts.map +1 -0
- package/dist/core/types/request.types.d.ts +65 -0
- package/dist/core/types/request.types.d.ts.map +1 -0
- package/dist/core/types/response.types.d.ts +29 -0
- package/dist/core/types/response.types.d.ts.map +1 -0
- package/dist/index.cjs.js +6266 -0
- package/dist/index.d.ts +39 -4
- package/dist/index.d.ts.map +1 -0
- package/dist/index.esm.js +6235 -0
- package/dist/infrastructure/adapters/AxiosAdapter.d.ts +47 -0
- package/dist/infrastructure/adapters/AxiosAdapter.d.ts.map +1 -0
- package/dist/infrastructure/services/ConfigManager.d.ts +52 -0
- package/dist/infrastructure/services/ConfigManager.d.ts.map +1 -0
- package/dist/infrastructure/services/EncryptionService.d.ts +34 -0
- package/dist/infrastructure/services/EncryptionService.d.ts.map +1 -0
- package/dist/infrastructure/services/TimeSyncService.d.ts +44 -0
- package/dist/infrastructure/services/TimeSyncService.d.ts.map +1 -0
- package/dist/infrastructure/utils/env.utils.d.ts +13 -0
- package/dist/infrastructure/utils/env.utils.d.ts.map +1 -0
- package/dist/presets/belink.preset.d.ts +4 -0
- package/dist/presets/belink.preset.d.ts.map +1 -0
- package/dist/presets/index.d.ts +4 -0
- package/dist/presets/index.d.ts.map +1 -0
- package/dist/presets/live.preset.d.ts +4 -0
- package/dist/presets/live.preset.d.ts.map +1 -0
- package/dist/presets/request.preset.d.ts +9 -0
- package/dist/presets/request.preset.d.ts.map +1 -0
- package/package.json +37 -35
- package/dist/beLinkRequest.d.ts +0 -43
- package/dist/beLinkUserInfo.d.ts +0 -12
- package/dist/callFunction.d.ts +0 -36
- package/dist/config.d.ts +0 -5
- package/dist/index.js +0 -1
- package/dist/request.d.ts +0 -14
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UserInfoService.d.ts","sourceRoot":"","sources":["../../../src/application/services/UserInfoService.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;;GAGG;AACH,cAAM,eAAe;IACnB,OAAO,CAAC,QAAQ,CAEd;IAEF;;OAEG;IACI,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAIrC;;OAEG;IACI,SAAS,IAAI,QAAQ;IAI5B;;OAEG;IACI,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI;IAIhD;;OAEG;IACI,KAAK,IAAI,IAAI;CAGrB;AAGD,QAAA,MAAM,cAAc,iBAAwB,CAAC;AAC7C,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { CloudFunctionOptions } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* 云函数客户端
|
|
4
|
+
* 封装腾讯云 CloudBase SDK
|
|
5
|
+
*/
|
|
6
|
+
declare class CloudFunctionClient {
|
|
7
|
+
private app;
|
|
8
|
+
/**
|
|
9
|
+
* 初始化 CloudBase App
|
|
10
|
+
*/
|
|
11
|
+
private initApp;
|
|
12
|
+
/**
|
|
13
|
+
* 调用云函数
|
|
14
|
+
*/
|
|
15
|
+
call<T, K>(params: CloudFunctionOptions<T>): Promise<K>;
|
|
16
|
+
/**
|
|
17
|
+
* 重置 App 实例
|
|
18
|
+
*/
|
|
19
|
+
reset(): void;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* 云函数调用函数(保持原 API 兼容)
|
|
23
|
+
*/
|
|
24
|
+
declare function callFunction<T, K>(params: CloudFunctionOptions<T>): Promise<K>;
|
|
25
|
+
export default callFunction;
|
|
26
|
+
export { CloudFunctionClient };
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cloudbase/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAyB,MAAM,SAAS,CAAC;AAWtE;;;GAGG;AACH,cAAM,mBAAmB;IACvB,OAAO,CAAC,GAAG,CAA6B;IAExC;;OAEG;IACH,OAAO,CAAC,OAAO;IAuBf;;OAEG;IACU,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IA8BpE;;OAEG;IACI,KAAK,IAAI,IAAI;CAGrB;AAKD;;GAEG;AACH,iBAAe,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAE7E;AAED,eAAe,YAAY,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 云函数数据接口(新版)
|
|
3
|
+
*/
|
|
4
|
+
export interface CloudFunctionData<T = any> {
|
|
5
|
+
moduleName?: string;
|
|
6
|
+
serviceName?: string;
|
|
7
|
+
funcName?: string;
|
|
8
|
+
param?: T;
|
|
9
|
+
operateUser?: Record<string, any>;
|
|
10
|
+
[key: string]: any;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* 云函数数据接口(旧版 - 向后兼容)
|
|
14
|
+
*/
|
|
15
|
+
export interface INotData<T = any> {
|
|
16
|
+
apiName: string;
|
|
17
|
+
funcName: string;
|
|
18
|
+
param?: T;
|
|
19
|
+
operateUser?: Record<string, any>;
|
|
20
|
+
[str: string]: any;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* 云函数数据接口(向后兼容)
|
|
24
|
+
*/
|
|
25
|
+
export interface IData<T = any> {
|
|
26
|
+
moduleName?: string;
|
|
27
|
+
serviceName?: string;
|
|
28
|
+
funcName?: string;
|
|
29
|
+
param?: T;
|
|
30
|
+
operateUser?: Record<string, any>;
|
|
31
|
+
[str: string]: any;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* 云函数请求配置
|
|
35
|
+
*/
|
|
36
|
+
export interface CloudFunctionOptions<T = any> {
|
|
37
|
+
name: string;
|
|
38
|
+
data: CloudFunctionData<T> | IData<T> | INotData<T>;
|
|
39
|
+
query?: Record<string, any>;
|
|
40
|
+
search?: string;
|
|
41
|
+
parse?: boolean;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* 云函数响应接口
|
|
45
|
+
*/
|
|
46
|
+
export interface CloudFunctionResponse<K = any> {
|
|
47
|
+
requestId: string;
|
|
48
|
+
data?: {
|
|
49
|
+
response_data?: string;
|
|
50
|
+
};
|
|
51
|
+
result?: {
|
|
52
|
+
msg: string;
|
|
53
|
+
data: K;
|
|
54
|
+
errorCode: number;
|
|
55
|
+
success: boolean;
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* 向后兼容的导出
|
|
60
|
+
*/
|
|
61
|
+
export type ICallFunctionOptions<T = any> = CloudFunctionOptions<T>;
|
|
62
|
+
export type ICallFunctionResponse<K = any> = CloudFunctionResponse<K>;
|
|
63
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cloudbase/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,GAAG,GAAG;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC,GAAG,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK,CAAC,CAAC,GAAG,GAAG;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,GAAG,GAAG;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,GAAG;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,MAAM,CAAC,EAAE;QACP,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,CAAC,CAAC;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,GAAG,IAAI,oBAAoB,CAAC,CAAC,CAAC,CAAC;AACpE,MAAM,MAAM,qBAAqB,CAAC,CAAC,GAAG,GAAG,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP 状态码常量
|
|
3
|
+
*/
|
|
4
|
+
export declare const HTTP_STATUS: {
|
|
5
|
+
readonly OK: 200;
|
|
6
|
+
readonly CREATED: 201;
|
|
7
|
+
readonly NO_CONTENT: 204;
|
|
8
|
+
readonly BAD_REQUEST: 400;
|
|
9
|
+
readonly UNAUTHORIZED: 401;
|
|
10
|
+
readonly FORBIDDEN: 403;
|
|
11
|
+
readonly NOT_FOUND: 404;
|
|
12
|
+
readonly TIMEOUT: 408;
|
|
13
|
+
readonly INTERNAL_SERVER_ERROR: 500;
|
|
14
|
+
readonly BAD_GATEWAY: 502;
|
|
15
|
+
readonly SERVICE_UNAVAILABLE: 503;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Content-Type 常量
|
|
19
|
+
*/
|
|
20
|
+
export declare enum ContentType {
|
|
21
|
+
/** JSON 数据(默认) */
|
|
22
|
+
JSON = "application/json",
|
|
23
|
+
/** 表单数据(URL 编码) */
|
|
24
|
+
FORM_URLENCODED = "application/x-www-form-urlencoded",
|
|
25
|
+
/** 文件上传(multipart) */
|
|
26
|
+
FORM_DATA = "multipart/form-data",
|
|
27
|
+
/** 纯文本 */
|
|
28
|
+
TEXT = "text/plain",
|
|
29
|
+
/** HTML */
|
|
30
|
+
HTML = "text/html",
|
|
31
|
+
/** XML */
|
|
32
|
+
XML = "application/xml",
|
|
33
|
+
/** 二进制流 */
|
|
34
|
+
OCTET_STREAM = "application/octet-stream"
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* 默认超时时间
|
|
38
|
+
*/
|
|
39
|
+
export declare const DEFAULT_TIMEOUT = 8000;
|
|
40
|
+
/**
|
|
41
|
+
* Token Header 名称
|
|
42
|
+
*/
|
|
43
|
+
export declare const TOKEN_HEADER = "x-belink-authorization";
|
|
44
|
+
/**
|
|
45
|
+
* 时间同步 Header
|
|
46
|
+
*/
|
|
47
|
+
export declare const TIME_SYNC_HEADERS: {
|
|
48
|
+
readonly SERVER_TIME: "x-belink-serverTime";
|
|
49
|
+
readonly TIME_DIFF: "x-belink-timeDiff";
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* LocalStorage 键
|
|
53
|
+
*/
|
|
54
|
+
export declare const STORAGE_KEYS: {
|
|
55
|
+
readonly TOKEN: "token";
|
|
56
|
+
readonly SERVER_TIME: "x-belink-serverTime";
|
|
57
|
+
readonly TIME_DIFF: "x-belink-timeDiff";
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/constants/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;CAYd,CAAC;AAEX;;GAEG;AACH,oBAAY,WAAW;IACrB,kBAAkB;IAClB,IAAI,qBAAqB;IACzB,mBAAmB;IACnB,eAAe,sCAAsC;IACrD,sBAAsB;IACtB,SAAS,wBAAwB;IACjC,UAAU;IACV,IAAI,eAAe;IACnB,WAAW;IACX,IAAI,cAAc;IAClB,UAAU;IACV,GAAG,oBAAoB;IACvB,WAAW;IACX,YAAY,6BAA6B;CAC1C;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,YAAY,2BAA2B,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;CAIf,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 基础错误类
|
|
3
|
+
*/
|
|
4
|
+
export declare class BaseError extends Error {
|
|
5
|
+
readonly code: string;
|
|
6
|
+
readonly originalError?: Error;
|
|
7
|
+
constructor(message: string, code: string, originalError?: Error);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* HTTP 错误
|
|
11
|
+
*/
|
|
12
|
+
export declare class HttpError extends BaseError {
|
|
13
|
+
readonly status: number;
|
|
14
|
+
readonly data?: any;
|
|
15
|
+
constructor(message: string, status: number, data?: any, originalError?: Error);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* 认证错误
|
|
19
|
+
*/
|
|
20
|
+
export declare class AuthError extends BaseError {
|
|
21
|
+
constructor(message?: string, originalError?: Error);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 超时错误
|
|
25
|
+
*/
|
|
26
|
+
export declare class TimeoutError extends BaseError {
|
|
27
|
+
readonly timeout: number;
|
|
28
|
+
constructor(message: string, timeout: number, originalError?: Error);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* 配置错误
|
|
32
|
+
*/
|
|
33
|
+
export declare class ConfigError extends BaseError {
|
|
34
|
+
constructor(message: string, originalError?: Error);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* 网络错误
|
|
38
|
+
*/
|
|
39
|
+
export declare class NetworkError extends BaseError {
|
|
40
|
+
constructor(message?: string, originalError?: Error);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/errors/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAClC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,aAAa,CAAC,EAAE,KAAK,CAAC;gBAE1B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK;CAOjE;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,SAAS;IACtC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,IAAI,CAAC,EAAE,GAAG,CAAC;gBAEf,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,EAAE,KAAK;CAK/E;AAED;;GAEG;AACH,qBAAa,SAAU,SAAQ,SAAS;gBAC1B,OAAO,GAAE,MAAuB,EAAE,aAAa,CAAC,EAAE,KAAK;CAGpE;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,SAAS;IACzC,SAAgB,OAAO,EAAE,MAAM,CAAC;gBAEpB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK;CAIpE;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,SAAS;gBAC5B,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,KAAK;CAGnD;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,SAAS;gBAC7B,OAAO,GAAE,MAAwB,EAAE,aAAa,CAAC,EAAE,KAAK;CAGrE"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AppConfig } from '../types/config.types';
|
|
2
|
+
/**
|
|
3
|
+
* 配置管理器接口
|
|
4
|
+
*/
|
|
5
|
+
export interface IConfigManager {
|
|
6
|
+
/**
|
|
7
|
+
* 初始化配置
|
|
8
|
+
* @param config 配置对象
|
|
9
|
+
*/
|
|
10
|
+
init: (config: Partial<AppConfig>) => void;
|
|
11
|
+
/**
|
|
12
|
+
* 获取配置项
|
|
13
|
+
* @param key 配置键
|
|
14
|
+
*/
|
|
15
|
+
get: <K extends keyof AppConfig>(key: K) => AppConfig[K];
|
|
16
|
+
/**
|
|
17
|
+
* 设置配置项
|
|
18
|
+
* @param key 配置键
|
|
19
|
+
* @param value 配置值
|
|
20
|
+
*/
|
|
21
|
+
set: <K extends keyof AppConfig>(key: K, value: AppConfig[K]) => void;
|
|
22
|
+
/**
|
|
23
|
+
* 获取完整配置
|
|
24
|
+
*/
|
|
25
|
+
getAll: () => Readonly<AppConfig>;
|
|
26
|
+
/**
|
|
27
|
+
* 验证配置
|
|
28
|
+
*/
|
|
29
|
+
validate: () => boolean;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=IConfigManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IConfigManager.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/IConfigManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;IAE3C;;;OAGG;IACH,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC;IAEzD;;;;OAIG;IACH,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAEtE;;OAEG;IACH,MAAM,EAAE,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;IAElC;;OAEG;IACH,QAAQ,EAAE,MAAM,OAAO,CAAC;CACzB"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { EncryptionConfig } from '../types/config.types';
|
|
2
|
+
/**
|
|
3
|
+
* 加密服务接口
|
|
4
|
+
*/
|
|
5
|
+
export interface IEncryptionService {
|
|
6
|
+
/**
|
|
7
|
+
* 加密 Token
|
|
8
|
+
* @param token 原始 Token
|
|
9
|
+
* @param timestamp 可选时间戳
|
|
10
|
+
* @returns 加密后的 Token
|
|
11
|
+
*/
|
|
12
|
+
encryptToken: (token: string, timestamp?: number) => string;
|
|
13
|
+
/**
|
|
14
|
+
* 解密 Token
|
|
15
|
+
* @param encryptedToken 加密的 Token
|
|
16
|
+
* @returns 解密后的 Token 和时间戳
|
|
17
|
+
*/
|
|
18
|
+
decryptToken: (encryptedToken: string) => {
|
|
19
|
+
token: string;
|
|
20
|
+
timestamp: number;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* 更新加密配置
|
|
24
|
+
* @param config 新的加密配置
|
|
25
|
+
*/
|
|
26
|
+
updateConfig: (config: Partial<EncryptionConfig>) => void;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=IEncryptionService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEncryptionService.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/IEncryptionService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAE5D;;;;OAIG;IACH,YAAY,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAE/E;;;OAGG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CAC3D"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { RequestConfig } from '../types/request.types';
|
|
2
|
+
import { ApiResponse } from '../types/response.types';
|
|
3
|
+
import { RequestInterceptor, ResponseInterceptor } from '../types/interceptor.types';
|
|
4
|
+
/**
|
|
5
|
+
* HTTP 客户端接口
|
|
6
|
+
*/
|
|
7
|
+
export interface IHttpClient {
|
|
8
|
+
/**
|
|
9
|
+
* 发起 GET 请求
|
|
10
|
+
*/
|
|
11
|
+
get: <T = unknown>(url: string, config?: Omit<RequestConfig, 'url' | 'method'>) => Promise<ApiResponse<T>>;
|
|
12
|
+
/**
|
|
13
|
+
* 发起 POST 请求
|
|
14
|
+
*/
|
|
15
|
+
post: <T = unknown, D = unknown>(url: string, data?: D, config?: Omit<RequestConfig<D>, 'url' | 'method' | 'data'>) => Promise<ApiResponse<T>>;
|
|
16
|
+
/**
|
|
17
|
+
* 发起 PUT 请求
|
|
18
|
+
*/
|
|
19
|
+
put: <T = unknown, D = unknown>(url: string, data?: D, config?: Omit<RequestConfig<D>, 'url' | 'method' | 'data'>) => Promise<ApiResponse<T>>;
|
|
20
|
+
/**
|
|
21
|
+
* 发起 DELETE 请求
|
|
22
|
+
*/
|
|
23
|
+
delete: <T = unknown>(url: string, config?: Omit<RequestConfig, 'url' | 'method'>) => Promise<ApiResponse<T>>;
|
|
24
|
+
/**
|
|
25
|
+
* 通用请求方法
|
|
26
|
+
*/
|
|
27
|
+
request: <T = unknown, D = unknown>(config: RequestConfig<D>) => Promise<ApiResponse<T>>;
|
|
28
|
+
/**
|
|
29
|
+
* 添加请求拦截器
|
|
30
|
+
* @returns 移除函数
|
|
31
|
+
*/
|
|
32
|
+
addRequestInterceptor: (interceptor: RequestInterceptor) => () => void;
|
|
33
|
+
/**
|
|
34
|
+
* 添加响应拦截器
|
|
35
|
+
* @returns 移除函数
|
|
36
|
+
*/
|
|
37
|
+
addResponseInterceptor: (interceptor: ResponseInterceptor) => () => void;
|
|
38
|
+
/**
|
|
39
|
+
* 克隆客户端(创建新实例)
|
|
40
|
+
*/
|
|
41
|
+
clone: () => IHttpClient;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=IHttpClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IHttpClient.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/IHttpClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,GAAG,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,QAAQ,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3G;;OAEG;IACH,IAAI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,EAC7B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,CAAC,EACR,MAAM,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC,KACvD,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7B;;OAEG;IACH,GAAG,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,EAC5B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,CAAC,EACR,MAAM,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC,KACvD,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7B;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,QAAQ,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9G;;OAEG;IACH,OAAO,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzF;;;OAGG;IACH,qBAAqB,EAAE,CAAC,WAAW,EAAE,kBAAkB,KAAK,MAAM,IAAI,CAAC;IAEvE;;;OAGG;IACH,sBAAsB,EAAE,CAAC,WAAW,EAAE,mBAAmB,KAAK,MAAM,IAAI,CAAC;IAEzE;;OAEG;IACH,KAAK,EAAE,MAAM,WAAW,CAAC;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 加密配置
|
|
3
|
+
*/
|
|
4
|
+
export interface EncryptionConfig {
|
|
5
|
+
/** AES 密钥 */
|
|
6
|
+
key: string;
|
|
7
|
+
/** AES IV 向量 */
|
|
8
|
+
iv: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 时间同步配置
|
|
12
|
+
*/
|
|
13
|
+
export interface TimeSyncConfig {
|
|
14
|
+
/** 是否启用 */
|
|
15
|
+
enabled?: boolean;
|
|
16
|
+
/** 开发环境 URL */
|
|
17
|
+
developmentUrl?: string;
|
|
18
|
+
/** 生产环境 URL */
|
|
19
|
+
productionUrl?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* CloudBase 配置
|
|
23
|
+
*/
|
|
24
|
+
export interface CloudbaseConfig {
|
|
25
|
+
/** 开发环境 ID */
|
|
26
|
+
development?: string;
|
|
27
|
+
/** 测试环境 ID */
|
|
28
|
+
testing?: string;
|
|
29
|
+
/** 生产环境 ID */
|
|
30
|
+
production?: string;
|
|
31
|
+
/** 区域 */
|
|
32
|
+
region?: string;
|
|
33
|
+
/** 超时时间 */
|
|
34
|
+
timeout?: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* 应用配置接口
|
|
38
|
+
*/
|
|
39
|
+
export interface AppConfig {
|
|
40
|
+
/** 运行模式 */
|
|
41
|
+
mode: 'development' | 'testing' | 'production';
|
|
42
|
+
/** 默认超时时间 */
|
|
43
|
+
timeout?: number;
|
|
44
|
+
/** 登录路径或回调 */
|
|
45
|
+
loginPath?: string | (() => void);
|
|
46
|
+
/** 加密配置 */
|
|
47
|
+
encryption?: EncryptionConfig;
|
|
48
|
+
/** 时间同步配置 */
|
|
49
|
+
timeSync?: TimeSyncConfig;
|
|
50
|
+
/** CloudBase 配置 */
|
|
51
|
+
cloudbase?: CloudbaseConfig;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* 默认配置值
|
|
55
|
+
*/
|
|
56
|
+
export declare const DEFAULT_CONFIG: AppConfig;
|
|
57
|
+
//# sourceMappingURL=config.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/config.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS;IACT,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW;IACX,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;IAC/C,aAAa;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAClC,WAAW;IACX,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,aAAa;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mBAAmB;IACnB,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,SAmB5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { RequestContext } from './request.types';
|
|
2
|
+
import { ResponseContext } from './response.types';
|
|
3
|
+
/**
|
|
4
|
+
* 请求错误类型
|
|
5
|
+
*/
|
|
6
|
+
export interface RequestError {
|
|
7
|
+
message?: string;
|
|
8
|
+
status?: number;
|
|
9
|
+
response?: {
|
|
10
|
+
status: number;
|
|
11
|
+
data?: unknown;
|
|
12
|
+
};
|
|
13
|
+
code?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* 请求拦截器接口
|
|
17
|
+
*/
|
|
18
|
+
export interface RequestInterceptor {
|
|
19
|
+
/** 拦截器名称 */
|
|
20
|
+
name: string;
|
|
21
|
+
/** 拦截器优先级(数字越小越先执行) */
|
|
22
|
+
priority?: number;
|
|
23
|
+
/** 拦截请求 */
|
|
24
|
+
onRequest: (context: RequestContext) => Promise<RequestContext> | RequestContext;
|
|
25
|
+
/** 请求错误处理 */
|
|
26
|
+
onRequestError?: (error: Error) => Promise<never>;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* 响应拦截器接口
|
|
30
|
+
*/
|
|
31
|
+
export interface ResponseInterceptor {
|
|
32
|
+
/** 拦截器名称 */
|
|
33
|
+
name: string;
|
|
34
|
+
/** 拦截器优先级 */
|
|
35
|
+
priority?: number;
|
|
36
|
+
/** 拦截响应 */
|
|
37
|
+
onResponse: <T>(context: ResponseContext<T>) => Promise<ResponseContext<T>> | ResponseContext<T>;
|
|
38
|
+
/** 响应错误处理 */
|
|
39
|
+
onResponseError?: (error: RequestError | Error) => Promise<never>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* 拦截器 ID 记录(用于清理)
|
|
43
|
+
*/
|
|
44
|
+
export interface InterceptorIds {
|
|
45
|
+
request: number[];
|
|
46
|
+
response: number[];
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=interceptor.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interceptor.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/interceptor.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,SAAS,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAAC;IACjF,aAAa;IACb,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,UAAU,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IACjG,aAAa;IACb,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { AxiosRequestConfig } from 'axios';
|
|
2
|
+
/**
|
|
3
|
+
* HTTP 方法枚举
|
|
4
|
+
*/
|
|
5
|
+
export declare enum HttpMethod {
|
|
6
|
+
GET = "get",
|
|
7
|
+
POST = "post",
|
|
8
|
+
PUT = "put",
|
|
9
|
+
DELETE = "delete",
|
|
10
|
+
PATCH = "patch"
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* 请求配置接口
|
|
14
|
+
*/
|
|
15
|
+
export interface RequestConfig<D = unknown> {
|
|
16
|
+
/** 请求 URL */
|
|
17
|
+
url: string;
|
|
18
|
+
/** HTTP 方法 */
|
|
19
|
+
method?: HttpMethod | string;
|
|
20
|
+
/** 请求头 */
|
|
21
|
+
headers?: Record<string, string>;
|
|
22
|
+
/** URL 参数 */
|
|
23
|
+
params?: Record<string, unknown>;
|
|
24
|
+
/** 请求体 */
|
|
25
|
+
data?: D;
|
|
26
|
+
/** 超时时间(毫秒) */
|
|
27
|
+
timeout?: number;
|
|
28
|
+
/** 是否携带凭证 */
|
|
29
|
+
withCredentials?: boolean;
|
|
30
|
+
/** 自定义 Token */
|
|
31
|
+
customToken?: string;
|
|
32
|
+
/** 原始 Axios 配置 */
|
|
33
|
+
axiosConfig?: AxiosRequestConfig;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* 内部请求上下文
|
|
37
|
+
*/
|
|
38
|
+
export interface RequestContext<D = unknown> {
|
|
39
|
+
/** 请求配置 */
|
|
40
|
+
config: RequestConfig<D>;
|
|
41
|
+
/** 请求开始时间 */
|
|
42
|
+
startTime: number;
|
|
43
|
+
/** 请求 ID(用于追踪) */
|
|
44
|
+
requestId: string;
|
|
45
|
+
/** 元数据 */
|
|
46
|
+
metadata: Map<string, unknown>;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* 旧版 IConfig 接口(向后兼容)
|
|
50
|
+
*/
|
|
51
|
+
export interface IConfig {
|
|
52
|
+
method?: string;
|
|
53
|
+
data?: unknown;
|
|
54
|
+
url: string;
|
|
55
|
+
headers?: Record<string, string>;
|
|
56
|
+
params?: Record<string, unknown>;
|
|
57
|
+
/** 旧版请求拦截器(向后兼容,类型宽松)*/
|
|
58
|
+
requestInterceptors?: (config: any) => any;
|
|
59
|
+
/** 旧版响应拦截器(向后兼容,类型宽松)*/
|
|
60
|
+
responseInterceptors?: (response: any) => any;
|
|
61
|
+
catchCallback?: (error: unknown) => void;
|
|
62
|
+
timeout?: number;
|
|
63
|
+
customToken?: string;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=request.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/request.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,oBAAY,UAAU;IACpB,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,OAAO;IACxC,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc;IACd,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC7B,UAAU;IACV,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,aAAa;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,UAAU;IACV,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,eAAe;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa;IACb,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB;IAClB,WAAW,CAAC,EAAE,kBAAkB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,OAAO;IACzC,WAAW;IACX,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IACzB,aAAa;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU;IACV,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,wBAAwB;IAExB,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;IAC3C,wBAAwB;IAExB,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 标准 API 响应接口
|
|
3
|
+
*/
|
|
4
|
+
export interface ApiResponse<T = unknown> {
|
|
5
|
+
/** 响应消息 */
|
|
6
|
+
message: string;
|
|
7
|
+
/** 响应数据 */
|
|
8
|
+
data: T;
|
|
9
|
+
/** 业务状态码 */
|
|
10
|
+
code: number;
|
|
11
|
+
/** 是否成功 */
|
|
12
|
+
success?: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* 响应上下文
|
|
16
|
+
*/
|
|
17
|
+
export interface ResponseContext<T = unknown> {
|
|
18
|
+
/** 原始响应 */
|
|
19
|
+
response: ApiResponse<T>;
|
|
20
|
+
/** HTTP 状态码 */
|
|
21
|
+
status: number;
|
|
22
|
+
/** 响应头 */
|
|
23
|
+
headers: Record<string, string>;
|
|
24
|
+
/** 耗时(毫秒) */
|
|
25
|
+
duration: number;
|
|
26
|
+
/** 请求 ID */
|
|
27
|
+
requestId: string;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=response.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/response.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,IAAI,EAAE,CAAC,CAAC;IACR,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,WAAW;IACX,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACzB,eAAe;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU;IACV,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,aAAa;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB"}
|