import axios from "axios"; import { saveSession } from "./saveSession"; import Cookies from 'js-cookie'; import apiCall from "../system/apiCall"; import getApi from "../system/getAPI"; import APIResponse from "@/interfaces/APIResponse"; export async function signUp(data: { email: string, password: string, settings?: any, username: string, [key: string]: any }): Promise<{ data: APIResponse }> { const { email, password, settings = {}, username } = data; try { const storedSession = localStorage.getItem('ultima-auth-session'); if (storedSession && JSON.parse(storedSession as string)?.accessToken) throw 'You are already logged-in!'; const response = (await apiCall.post( `${getApi()}/auth/signup`, { user: { email, username, password, settings }, }, )).data; await saveSession(response.d); return { data: response }; } catch (error: any) { throw error; } }