mirror of
https://github.com/zkldi/Tachi.git
synced 2026-10-04 12:58:11 +03:00
These commands never get used and are generally ugly. I'm trying to decrease the maintenance of this project, and this is an unecessary expense imo.
40 lines
962 B
TypeScript
40 lines
962 B
TypeScript
import { ProcessEnv } from "../config";
|
|
import { LoggerLayers } from "../data/data";
|
|
import { CreateLayeredLogger } from "../utils/logger";
|
|
import monk from "monk";
|
|
import type { DiscordUserMapDocument } from "./documents";
|
|
|
|
const logger = CreateLayeredLogger(LoggerLayers.database);
|
|
|
|
logger.info(`Connecting to ${ProcessEnv.mongoUrl}...`);
|
|
|
|
const monkDB = monk(ProcessEnv.mongoUrl);
|
|
|
|
monkDB
|
|
.then(() => {
|
|
logger.info(`Database connection successful.`);
|
|
})
|
|
.catch((err) => {
|
|
logger.crit(err);
|
|
process.exit(1);
|
|
});
|
|
|
|
const db = {
|
|
discordUserMap: monkDB.get<DiscordUserMapDocument>("discord-user-map"),
|
|
};
|
|
|
|
export async function SetIndexes(hardReset = false) {
|
|
logger.info(`Recieved request to set indexes.`);
|
|
|
|
if (hardReset) {
|
|
logger.warn(`Hard resetting indexes!`);
|
|
await db.discordUserMap.dropIndexes();
|
|
}
|
|
|
|
await db.discordUserMap.createIndex({ discordID: 1 }, { unique: true });
|
|
|
|
logger.info(`Indexes have been set.`);
|
|
}
|
|
|
|
export default db;
|