38 lines
891 B
TypeScript
38 lines
891 B
TypeScript
import {
|
|
APIGetUserFunctionParams,
|
|
GetUserFunctionReturn,
|
|
} from "../../../types";
|
|
import varDatabaseDbHandler from "../../backend/varDatabaseDbHandler";
|
|
|
|
/**
|
|
* # API Get User
|
|
*/
|
|
export default async function apiGetUser({
|
|
fields,
|
|
dbFullName,
|
|
userId,
|
|
useLocal,
|
|
}: APIGetUserFunctionParams): Promise<GetUserFunctionReturn> {
|
|
const query = `SELECT ${fields.join(",")} FROM users WHERE id=?`;
|
|
const API_USER_ID = userId || process.env.DSQL_API_USER_ID;
|
|
|
|
let foundUser = await varDatabaseDbHandler({
|
|
queryString: query,
|
|
queryValuesArray: [API_USER_ID],
|
|
database: dbFullName.replace(/[^a-z0-9_]/g, ""),
|
|
useLocal,
|
|
});
|
|
|
|
if (!foundUser || !foundUser[0]) {
|
|
return {
|
|
success: false,
|
|
payload: null,
|
|
};
|
|
}
|
|
|
|
return {
|
|
success: true,
|
|
payload: foundUser[0],
|
|
};
|
|
}
|