首次发布git

This commit is contained in:
2026-02-24 09:53:19 +08:00
commit dd97cf6a2c
71 changed files with 14875 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
const { PrismaClient } = require('@prisma/client');
const { scrypt, randomBytes } = require('crypto');
const { promisify } = require('util');
const prisma = new PrismaClient();
const scryptAsync = promisify(scrypt);
async function hashPassword(password) {
const salt = randomBytes(16).toString("hex");
const derivedKey = await scryptAsync(password, salt, 64);
return `${salt}:${derivedKey.toString("hex")}`;
}
async function main() {
const count = await prisma.globalSettings.count();
if (count === 0) {
console.log("Initializing default settings...");
const hashedPassword = await hashPassword("admin");
await prisma.globalSettings.create({
data: {
id: "default",
password: hashedPassword,
},
});
console.log("Done.");
} else {
console.log("Settings already exist.");
}
}
main()
.catch(e => console.error(e))
.finally(async () => await prisma.$disconnect());