in common/errors.ts [61:89]
export function createYunxiaoError(status: number, response: any): YunxiaoError {
switch (status) {
case 401:
return new YunxiaoAuthenticationError(response?.message);
case 403:
return new YunxiaoPermissionError(response?.message);
case 404:
return new YunxiaoResourceNotFoundError(response?.message || "Resource");
case 409:
return new YunxiaoConflictError(response?.message || "Conflict occurred");
case 422:
return new YunxiaoValidationError(
response?.message || "Validation failed",
status,
response
);
case 429:
return new YunxiaoRateLimitError(
response?.message,
new Date(response?.reset_at || Date.now() + 60000)
);
default:
return new YunxiaoError(
response?.message || "Yunxiao API error",
status,
response
);
}
}