import { APIGetUserFunctionParams, GetUserFunctionReturn, } from "../../../types"; import grabDbFullName from "../../../utils/grab-db-full-name"; import dbHandler from "../../backend/dbHandler"; /** * # API Get User */ export default async function apiGetUser({ fields, database, userId, dbUserId, selectAll, }: APIGetUserFunctionParams): Promise { const finalDbName = grabDbFullName({ dbName: database, userId: dbUserId }); const selectFields = selectAll ? "*" : fields?.[0] ? fields.join(",") : "*"; let foundUser = (await dbHandler({ query: `SELECT ${selectFields} FROM users WHERE id=?`, values: [userId], database: finalDbName, })) as any[]; if (!foundUser || !foundUser[0]) { return { success: false, payload: null, }; } return { success: true, payload: foundUser[0], }; }