return available:boolean from checkName

This commit is contained in:
Christian Fehmer 2025-09-11 12:26:26 +02:00
parent 0646c44a1b
commit 4a66caa7b6
No known key found for this signature in database
GPG key ID: FE53784A69964062
6 changed files with 20 additions and 17 deletions

View file

@ -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);
});

View file

@ -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,
});
}

View file

@ -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) => {

View file

@ -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,
},

View file

@ -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) => {

View file

@ -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<typeof CheckNameResponseSchema>;