@mindbase/vue3-client 1.0.1

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.
@@ -0,0 +1,92 @@
1
+ import { ApiResponse } from './types';
2
+ /** 设置自动注册函数 */
3
+ export declare function setAutoRegister(fn: ((req: AjaxRequest) => void) | null): void;
4
+ /** Ajax 请求对象 */
5
+ export interface AjaxRequest<T = unknown> {
6
+ /** Promise 对象,可用 await 获取响应数据 */
7
+ promise: Promise<ApiResponse<T>>;
8
+ /** 取消请求 */
9
+ abort(): void;
10
+ /** 是否已取消 */
11
+ isAborted: boolean;
12
+ /** 是否已完成(成功或失败) */
13
+ isCompleted: boolean;
14
+ }
15
+ interface AjaxConfig {
16
+ /** 请求路径 */
17
+ url: string;
18
+ /** 放置于请求体的参数 */
19
+ data?: Record<string, unknown> | XMLHttpRequestBodyInit | Document;
20
+ headers?: Record<string, string>;
21
+ timeout?: number;
22
+ /** 放置于 URL 中的参数 */
23
+ params?: Record<string, string | number | boolean>;
24
+ method?: 'GET' | 'DELETE' | 'HEAD' | 'OPTIONS' | 'POST' | 'PUT' | 'PATCH';
25
+ showMessage?: boolean;
26
+ }
27
+ /** 请求拦截器 */
28
+ type RequestInterceptor = (config: AjaxConfig) => AjaxConfig;
29
+ /** 响应拦截器 */
30
+ type ResponseInterceptor<T = unknown> = (response: ApiResponse<T>) => ApiResponse<T>;
31
+ /** 错误拦截器 */
32
+ type ErrorInterceptor = (error: AjaxErrorObject, status: number) => void;
33
+ /** 添加请求拦截器 */
34
+ export declare function addRequestInterceptor(fn: RequestInterceptor): void;
35
+ /** 添加响应拦截器 */
36
+ export declare function addResponseInterceptor<T>(fn: ResponseInterceptor<T>): void;
37
+ /** 添加错误拦截器 */
38
+ export declare function addErrorInterceptor(fn: ErrorInterceptor): void;
39
+ /** Ajax 错误信息对象 */
40
+ export interface AjaxErrorObject {
41
+ /** 错误消息 */
42
+ message: string;
43
+ /** 错误类型 */
44
+ code: "ECONNABORTED" | null;
45
+ /** 请求配置 */
46
+ config: AjaxConfig;
47
+ /** 原始请求对象 */
48
+ request: unknown;
49
+ /** 响应对象 */
50
+ response?: AjaxResponse;
51
+ }
52
+ /** Ajax 响应对象 */
53
+ export interface AjaxResponse<T = unknown> {
54
+ data: T;
55
+ status: number;
56
+ statusText: string;
57
+ headers: Record<string, string>;
58
+ config: AjaxConfig;
59
+ request: unknown;
60
+ }
61
+ /** 创建 Ajax 请求 */
62
+ export declare function createAjax<T = unknown>({ url, method, timeout, data, params, headers, showMessage, }: AjaxConfig): AjaxRequest<T>;
63
+ /** GET 请求 */
64
+ export declare function get<T = unknown>(url: string, params?: Record<string, string | number | boolean>): AjaxRequest<T>;
65
+ /** POST 请求 */
66
+ export declare function post<T = unknown>(url: string, data?: Record<string, unknown> | XMLHttpRequestBodyInit | Document): AjaxRequest<T>;
67
+ /** PUT 请求 */
68
+ export declare function put<T = unknown>(url: string, data?: Record<string, unknown>): AjaxRequest<T>;
69
+ /** DELETE 请求 */
70
+ export declare function del<T = unknown>(url: string, params?: Record<string, string | number | boolean>): AjaxRequest<T>;
71
+ /** PATCH 请求 */
72
+ export declare function patch<T = unknown>(url: string, data?: Record<string, unknown> | XMLHttpRequestBodyInit | Document): AjaxRequest<T>;
73
+ /** 错误提示配置 */
74
+ interface AutoMessageConfig {
75
+ /** 是否启用自动提示 */
76
+ enabled: boolean;
77
+ /** 需要显示提示的错误码列表 */
78
+ statusCodes: number[];
79
+ /** 不显示提示的接口路径(正则数组) */
80
+ ignorePatterns: RegExp[];
81
+ }
82
+ /**
83
+ * 配置自动错误提示
84
+ */
85
+ export declare function configAutoMessage(config: Partial<AutoMessageConfig>): void;
86
+ /**
87
+ * 设置自动错误提示拦截器
88
+ * 自动显示 4xx/5xx 错误的 ElMessage 提示,错误仍然透传给业务代码
89
+ */
90
+ export declare function setupAutoMessageInterceptor(): void;
91
+ export {};
92
+ //# sourceMappingURL=ajax.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ajax.d.ts","sourceRoot":"","sources":["../../api/ajax.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './ajax';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../api/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * 标准 API 响应结构
3
+ */
4
+ export interface ApiResponse<T = unknown> {
5
+ code: number;
6
+ data: T;
7
+ msg: string;
8
+ }
9
+ /**
10
+ * 分页请求参数
11
+ */
12
+ export interface PaginationParams {
13
+ page: number;
14
+ pageSize: number;
15
+ }
16
+ /**
17
+ * 分页响应数据
18
+ */
19
+ export interface PaginationData<T> {
20
+ list: T[];
21
+ total: number;
22
+ page: number;
23
+ pageSize: number;
24
+ }
25
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../api/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;IACR,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB"}