Web Developer
Please how do i solve this issue?
Below is my code
export const createUser = async (username, email, password) => {
try {
const newAccount = await account.create(
ID.unique(),
email,
password,
username
);
if (!newAccount) throw Error;
const avatarUrl = avatars.getInitials(username);
await databases.createDocument(
config.databaseId,
config.userCollectionId,
ID.unique(),
{
accountId: newAccount.$id,
email: email,
username: username,
avatar: avatarUrl,
}
);
await signIn({ email, password });
return { status: true };
} catch (error) {
console.log(error);
}
};
export const signIn = async ({ email, password }) => {
try {
const session = await account.createEmailPasswordSession(email, password);
if (!session) throw Error("Failed to create session");
return { status: true };
} catch (error) {
throw Error(error);
}
};
export const getCurrentUser = async () => {
try {
const user = await account.get();
console.log(user.$id);
if (!user) return null;
const result = await getUser({ accountId: user.$id });
if (!result) return null;
return result;
} catch (error) {
throw error;
}
};
export const getUser = async ({ accountId }) => {
console.log(accountId);
try {
const currentUser = await databases.listDocuments(
config.databaseId,
config.userCollectionId,
[Query.equal("accountId", accountId)]
);
if (!currentUser) return null;
return currentUser.documents[0];
} catch (error) {
throw error;
}
};
NB : I have tried all the solutions outlined but no positive outcome.