koishi-plugin-royale
Version:
54 lines (53 loc) • 1.37 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.success = success;
exports.failure = failure;
exports.formatResponse = formatResponse;
/**
* 创建成功响应
* @param message 响应消息
* @param data 响应数据
* @returns 标准化的成功响应
*/
function success(message, data) {
return {
success: true,
message,
data,
};
}
/**
* 创建失败响应
* @param message 响应消息
* @param error 错误详情
* @returns 标准化的失败响应
*/
function failure(message, error) {
return {
success: false,
message,
error,
};
}
/**
* 将标准响应对象格式化为字符串
* @param response 标准响应对象
* @returns 格式化后的响应字符串
*/
function formatResponse(response) {
if (!response.success) {
return `${response.error ? `错误详情: ${response.error}` : response.message}`;
}
// 如果数据是 Koishi 的消息段,直接返回
if (response.data &&
typeof response.data === "object" &&
"type" in response.data) {
return response.data;
}
// 直接返回数据,不包含message前缀
if (response.data && typeof response.data === "string") {
return response.data;
}
// 如果没有数据,则返回消息
return response.message;
}