datasquirel/package-shared/api/user/index.ts
Benjamin Toby 5ab079f687 Updates
2025-07-10 11:48:20 +01:00

61 lines
2.0 KiB
TypeScript

import addUser from "../../actions/users/add-user";
import getUser from "../../actions/users/get-user";
import loginUser from "../../actions/users/login-user";
import logoutUser from "../../actions/users/logout-user";
import resetPassword from "../../actions/users/reset-password";
import sendEmailCode from "../../actions/users/send-email-code";
import updateUser from "../../actions/users/update-user";
import userAuth from "../../actions/users/user-auth";
import {
AddUserParams,
GetUserParams,
LoginUserParam,
ResetPasswordParams,
SendEmailCodeParams,
UpdateUserParams,
} from "../../types";
type Params = {
local?: boolean;
};
export default function user(params?: Params) {
return {
auth: {
login: params?.local
? async (_: LoginUserParam) => {
return await loginUser({ ..._, useLocal: true });
}
: loginUser,
get: params?.local
? async (_: GetUserParams) => {
return await getUser({ ..._, useLocal: true });
}
: getUser,
signup: params?.local
? async (_: AddUserParams) => {
return await addUser({ ..._, useLocal: true });
}
: addUser,
sendEmailCode: params?.local
? async (_: SendEmailCodeParams) => {
return await sendEmailCode({ ..._, useLocal: true });
}
: sendEmailCode,
update: params?.local
? async (_: UpdateUserParams) => {
return await updateUser({ ..._, useLocal: true });
}
: updateUser,
resetPassword: params?.local
? async (_: ResetPasswordParams) => {
return await resetPassword({ ..._, useLocal: true });
}
: resetPassword,
logout: logoutUser,
auth: userAuth,
},
};
}