feat(image): 新建 knowai-core:1.0.0 镜像并完成推送
Some checks reported errors
continuous-integration/drone/push Build was killed

- 搭建 api、auth、utils 等逻辑模块
- 通过 tsc、eslint、vitest 测试验证

BREAKING CHANGE: 新镜像分支
This commit is contained in:
tobegold574
2025-11-10 20:20:25 +08:00
commit 6a81b7bb13
73 changed files with 10511 additions and 0 deletions

46
api/errors.ts Normal file
View File

@@ -0,0 +1,46 @@
/**
* API错误处理
*/
import type { AxiosError } from 'axios';
/**
* API错误接口
*/
export interface IApiError {
code: number;
message: string;
details?: unknown;
}
/**
* API错误类
*/
export class ApiError extends Error implements IApiError {
public readonly code: number;
public readonly details: unknown;
constructor(code: number, message: string, details?: unknown) {
super(message);
this.name = 'ApiError';
this.code = code;
this.details = details;
}
/**
* 从Axios错误创建API错误
*/
static fromAxiosError(error: AxiosError): ApiError {
if (!error.response) {
return new ApiError(0, error.message || '网络错误');
}
const { status, data } = error.response;
const message = data && typeof data === 'object' && 'message' in data
? data.message as string
: '请求失败';
return new ApiError(status, message, data);
}
}