datasquirel/package-shared/functions/api/users/api-delete-user.ts
Benjamin Toby c37d105dee Updates
2025-07-09 20:30:45 +01:00

46 lines
1.1 KiB
TypeScript

import deleteDbEntry from "../../backend/db/deleteDbEntry";
import dbHandler from "../../backend/dbHandler";
type Param = {
dbFullName: string;
deletedUserId: string | number;
};
type Return = { success: boolean; result?: any; msg?: string };
/**
* # Update API User Function
*/
export default async function apiDeleteUser({
dbFullName,
deletedUserId,
}: Param): Promise<Return> {
const existingUserQuery = `SELECT * FROM ${dbFullName}.users WHERE id = ?`;
const existingUserValues = [deletedUserId];
const existingUser = (await dbHandler({
query: existingUserQuery,
values: existingUserValues,
database: dbFullName,
})) as any[];
if (!existingUser?.[0]) {
return {
success: false,
msg: "User not found",
};
}
const deleteUser = await deleteDbEntry({
dbContext: "Dsql User",
dbFullName,
tableName: "users",
identifierColumnName: "id",
identifierValue: deletedUserId,
});
return {
success: true,
result: deleteUser,
};
}