Release 2025-05-19

This commit is contained in:
pluja
2025-05-19 10:23:36 +00:00
parent 2657f936bc
commit 565e9a0ad1
267 changed files with 49417 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
import { generateUsername } from 'unique-username-generator'
import { prisma } from './prisma'
import { generateUserSecretToken, hashUserSecretToken } from './userSecretToken'
/**
* Generate a random username.
* Format: `adjective_noun_1234`
*/
function generateRandomUsername() {
return `${generateUsername('_')}_${Math.floor(Math.random() * 10000).toString()}`
}
export async function createAccount(preGeneratedToken?: string) {
const token = preGeneratedToken ?? generateUserSecretToken()
const hash = hashUserSecretToken(token)
const username = generateRandomUsername()
const user = await prisma.user.create({
data: {
name: username,
secretTokenHash: hash,
notificationPreferences: { create: {} },
},
})
return { token, user }
}