50 lines
1.2 KiB
TypeScript
50 lines
1.2 KiB
TypeScript
import { createLog } from "../../services/logger/logger.js";
|
|
|
|
export function returnRes<T>(
|
|
success: true,
|
|
message: string,
|
|
service: string,
|
|
user: string,
|
|
level: "info" | "error",
|
|
data: T
|
|
): { success: true; message: string; data: T };
|
|
|
|
export function returnRes<T>(
|
|
success: false,
|
|
message: string,
|
|
service: string,
|
|
user: string,
|
|
level: "info" | "error",
|
|
data?: T
|
|
): { success: false; message: string; error: T | string };
|
|
|
|
export function returnRes<T>(
|
|
success: boolean,
|
|
message: string,
|
|
service: string,
|
|
user: string,
|
|
level: "info" | "error",
|
|
data?: T
|
|
) {
|
|
createLog(level, user, service, message);
|
|
|
|
if (success) {
|
|
return { success: true, message, data: data as T };
|
|
} else {
|
|
return {
|
|
success: false,
|
|
message,
|
|
error: data ?? "An unknown error occurred",
|
|
};
|
|
}
|
|
}
|
|
|
|
// export const returnApi = (c:Context,success: boolean, message: string, data?: any, code: number)=>{
|
|
// /**
|
|
// * just a simple return to reduce the typing and make sure we are always consitant with our returns.
|
|
// *
|
|
// * data can be an error as well.
|
|
// */
|
|
// return c.json({success, message, data}, code);
|
|
// }
|