diff --git a/backend/__tests__/api/controllers/user.spec.ts b/backend/__tests__/api/controllers/user.spec.ts index 74285f7f2..61bd8a31a 100644 --- a/backend/__tests__/api/controllers/user.spec.ts +++ b/backend/__tests__/api/controllers/user.spec.ts @@ -239,7 +239,7 @@ describe("user controller test", () => { //THEN expect(body).toEqual({ message: "Check username", - data: { availability: "available" }, + data: { available: true }, }); expect(userIsNameAvailableMock).toHaveBeenCalledWith("bob", ""); }); @@ -257,7 +257,7 @@ describe("user controller test", () => { //THEN expect(body).toEqual({ message: "Check username", - data: { availability: "taken" }, + data: { available: false }, }); expect(userIsNameAvailableMock).toHaveBeenCalledWith("bob", ""); @@ -275,7 +275,7 @@ describe("user controller test", () => { //THEN expect(body).toEqual({ message: "Check username", - data: { availability: "available" }, + data: { available: true }, }); expect(userIsNameAvailableMock).toHaveBeenCalledWith("bob", uid); }); diff --git a/backend/src/api/controllers/user.ts b/backend/src/api/controllers/user.ts index 7cc2892f7..93b7b5f18 100644 --- a/backend/src/api/controllers/user.ts +++ b/backend/src/api/controllers/user.ts @@ -438,7 +438,7 @@ export async function checkName( const available = await UserDAL.isNameAvailable(name, uid); return new MonkeyResponse("Check username", { - availability: available ? "available" : "taken", + available, }); } diff --git a/frontend/src/ts/modals/google-sign-up.ts b/frontend/src/ts/modals/google-sign-up.ts index 6727a8b14..278a2e10d 100644 --- a/frontend/src/ts/modals/google-sign-up.ts +++ b/frontend/src/ts/modals/google-sign-up.ts @@ -159,10 +159,11 @@ validateWithIndicator(nameInputEl, { params: { name: name }, }); - return checkNameResponse.status === 200 && - checkNameResponse.body.data.availability === "available" - ? true - : "Name not available"; + return ( + (checkNameResponse.status === 200 && + checkNameResponse.body.data.available) || + "Name not available" + ); }, debounceDelay: 1000, callback: (result) => { diff --git a/frontend/src/ts/modals/simple-modals.ts b/frontend/src/ts/modals/simple-modals.ts index 9cce4512f..d60c41c6a 100644 --- a/frontend/src/ts/modals/simple-modals.ts +++ b/frontend/src/ts/modals/simple-modals.ts @@ -480,10 +480,11 @@ list.updateName = new SimpleModal({ params: { name: newName }, }); - return checkNameResponse.status === 200 && - checkNameResponse.body.data.availability === "available" - ? true - : "Name not available"; + return ( + (checkNameResponse.status === 200 && + checkNameResponse.body.data.available) || + "Name not available" + ); }, debounceDelay: 1000, }, diff --git a/frontend/src/ts/pages/login.ts b/frontend/src/ts/pages/login.ts index 0f7e1a53f..e2561481b 100644 --- a/frontend/src/ts/pages/login.ts +++ b/frontend/src/ts/pages/login.ts @@ -68,10 +68,11 @@ validateWithIndicator(nameInputEl, { params: { name: name }, }); - return checkNameResponse.status === 200 && - checkNameResponse.body.data.availability === "available" - ? true - : "Name not available"; + return ( + (checkNameResponse.status === 200 && + checkNameResponse.body.data.available) || + "Name not available" + ); }, debounceDelay: 1000, callback: (result) => { diff --git a/packages/contracts/src/users.ts b/packages/contracts/src/users.ts index b861078e1..d6f807a03 100644 --- a/packages/contracts/src/users.ts +++ b/packages/contracts/src/users.ts @@ -61,7 +61,7 @@ export type CheckNamePathParameters = z.infer< export const CheckNameResponseSchema = responseWithData( z.object({ - availability: z.enum(["available", "taken"]), + available: z.boolean(), }) ); export type CheckNameResponse = z.infer;