[offers][refactor] refactor random name generator code

pull/422/head
Stuart Long Chay Boon 2 years ago
parent e77bb03639
commit 3c80296253

@ -268,22 +268,7 @@ export const offersProfileRouter = createRouter()
.digest('hex');
// Generate random name until unique
let uniqueName: string = generateRandomName();
let sameNameProfiles = await ctx.prisma.offersProfile.findMany({
where: {
profileName: uniqueName
}
})
while (sameNameProfiles.length !== 0) {
uniqueName = generateRandomName();
sameNameProfiles = await ctx.prisma.offersProfile.findMany({
where: {
profileName: uniqueName
}
})
}
const uniqueName: string = await generateRandomName();
const profile = await ctx.prisma.offersProfile.create({
data: {

@ -1,5 +1,8 @@
import type { Config } from 'unique-names-generator';
import { adjectives, animals,colors, uniqueNamesGenerator } from 'unique-names-generator';
import { PrismaClient } from '@prisma/client';
const prisma = new PrismaClient()
const customConfig: Config = {
dictionaries: [adjectives, colors, animals],
@ -8,6 +11,23 @@ const customConfig: Config = {
};
export default function generateRandomName(): string {
return uniqueNamesGenerator(customConfig)
export default async function generateRandomName(): Promise<string> {
let uniqueName: string = uniqueNamesGenerator(customConfig);
let sameNameProfiles = await prisma.offersProfile.findMany({
where: {
profileName: uniqueName
}
})
while (sameNameProfiles.length !== 0) {
uniqueName = uniqueNamesGenerator(customConfig);
sameNameProfiles = await prisma.offersProfile.findMany({
where: {
profileName: uniqueName
}
})
}
return uniqueName
}
Loading…
Cancel
Save