import { getSessionToken } from "@/lib/server_functions/userAuth"; import { cmFetch, cmFetchRaw } from "../cmFetch"; import { Token, User } from "../types"; export async function getUsers() { return cmFetch(`/api/users`); } export async function getCurrentUser() { return cmFetchRaw( `/api/users/user`, { headers: { Authorization: `Bearer ${await getSessionToken()}` } }, [401], ); } export async function getUser(id: number) { return cmFetch(`/api/users/${id}`); } export async function loginUser(user: FormData) { const body = { username: user.get("username"), password: user.get("password"), }; // logger.log("debug", `Recieved login user request for form: ${body}`); // debug login form submission, ISSUE, THIS IS A CLIENT HELPER! return cmFetch(`/api/users/login`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify(body), }); } export async function createUser(user: FormData) { const body = { username: user.get("username"), password: user.get("password"), authority: 0, }; return cmFetch(`/api/users`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify(body), }); }