🎨 move database connector to manager

This commit is contained in:
Axel Olausson Holtenäs 2022-05-30 17:39:52 +02:00
parent 92b0f6baef
commit 7fd9b6fc73
No known key found for this signature in database
GPG key ID: 7BF6826B76382CBA
45 changed files with 52 additions and 58 deletions

View file

@ -8,7 +8,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import logger from "../../../../logger";
// Models
import guildSchema from "../../../../database/schemas/guild";
import guildSchema from "../../../../models/guild";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
import { ChannelType } from "discord-api-types/v10";

View file

@ -8,7 +8,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import logger from "../../../../logger";
// Models
import guildSchema from "../../../../database/schemas/guild";
import guildSchema from "../../../../models/guild";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
// Function

View file

@ -1,5 +1,5 @@
import { ColorResolvable, CommandInteraction } from "discord.js";
import guildSchema from "../../../../../../database/schemas/guild";
import guildSchema from "../../../../../../models/guild";
import getEmbedConfig from "../../../../../../helpers/getEmbedConfig";
export default async (interaction: CommandInteraction) => {

View file

@ -10,7 +10,7 @@ import {
import logger from "../../../../logger";
// Models
import guildSchema from "../../../../database/schemas/guild";
import guildSchema from "../../../../models/guild";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import getValues from "./components/getValues";

View file

@ -8,7 +8,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import logger from "../../../../logger";
// Models
import guildSchema from "../../../../database/schemas/guild";
import guildSchema from "../../../../models/guild";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
// Function

View file

@ -8,7 +8,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import logger from "../../../../logger";
// Models
import apiSchema from "../../../../database/schemas/api";
import apiSchema from "../../../../models/api";
import encryption from "../../../../handlers/encryption";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";

View file

@ -8,7 +8,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import logger from "../../../../logger";
// Models
import guildSchema from "../../../../database/schemas/guild";
import guildSchema from "../../../../models/guild";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
// Function

View file

@ -8,7 +8,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import logger from "../../../../logger";
// Models
import guildSchema from "../../../../database/schemas/guild";
import guildSchema from "../../../../models/guild";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
import { ChannelType } from "discord-api-types/v10";

View file

@ -4,7 +4,7 @@ import { CommandInteraction, MessageEmbed } from "discord.js";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
import { ChannelType } from "discord-api-types/v10";
import counterSchema from "../../../../database/schemas/counter";
import counterSchema from "../../../../models/counter";
export default {
metadata: { guildOnly: true, ephemeral: false },

View file

@ -4,7 +4,7 @@ import { CommandInteraction, MessageEmbed } from "discord.js";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
import logger from "../../../../logger";
import userSchema, { IUser } from "../../../../database/schemas/user";
import userSchema, { IUser } from "../../../../models/user";
export default {
metadata: { guildOnly: true, ephemeral: false },

View file

@ -10,7 +10,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
import logger from "../../../../logger";
// Models
import timeoutSchema from "../../../../database/schemas/timeout";
import timeoutSchema from "../../../../models/timeout";
// Helpers
import fetchUser from "../../../../helpers/fetchUser";

View file

@ -9,7 +9,7 @@ import getEmbedConfig from "../../../../../../helpers/getEmbedConfig";
import logger from "../../../../../../logger";
// Models
import counterSchema from "../../../../../../database/schemas/counter";
import counterSchema from "../../../../../../models/counter";
// Function
export default {

View file

@ -8,7 +8,7 @@ import getEmbedConfig from "../../../../../../helpers/getEmbedConfig";
import logger from "../../../../../../logger";
// Models
import counterSchema from "../../../../../../database/schemas/counter";
import counterSchema from "../../../../../../models/counter";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
import { ChannelType } from "discord-api-types/v10";

View file

@ -3,7 +3,7 @@ import { CommandInteraction, MessageEmbed, Permissions } from "discord.js";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
import { v4 as uuidv4 } from "uuid";
import axios from "axios";
import apiSchema from "../../../../../../database/schemas/api";
import apiSchema from "../../../../../../models/api";
import encryption from "../../../../../../handlers/encryption";
// Configurations

View file

@ -10,7 +10,7 @@ import { timeout } from "../../../config/reputation";
import logger from "../../../logger";
// Models
import timeoutSchema from "../../../database/schemas/timeout";
import timeoutSchema from "../../../models/timeout";
import fetchUser from "../../../helpers/fetchUser";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";

View file

@ -9,7 +9,7 @@ import encryption from "../../../handlers/encryption";
import pluralize from "../../../helpers/pluralize";
import apiSchema from "../../../database/schemas/api";
import apiSchema from "../../../models/api";
import fetchUser from "../../../helpers/fetchUser";
import { SlashCommandSubcommandBuilder } from "@discordjs/builders";

View file

@ -10,7 +10,7 @@ import getEmbedConfig from "../../../../helpers/getEmbedConfig";
// Modules
import modules from "./modules";
import guildSchema from "../../../../database/schemas/guild";
import guildSchema from "../../../../models/guild";
export const moduleData = modules;

View file

@ -9,8 +9,8 @@ import {
import getEmbedConfig from "../../../../../helpers/getEmbedConfig";
// Models
import shopRolesSchema from "../../../../../database/schemas/shopRole";
import guildSchema from "../../../../../database/schemas/guild";
import shopRolesSchema from "../../../../../models/shopRole";
import guildSchema from "../../../../../models/guild";
import logger from "../../../../../logger";

View file

@ -5,7 +5,7 @@ import { CommandInteraction, GuildMemberRoleManager } from "discord.js";
import getEmbedConfig from "../../../../../helpers/getEmbedConfig";
// Models
import shopRolesSchema from "../../../../../database/schemas/shopRole";
import shopRolesSchema from "../../../../../models/shopRole";
import logger from "../../../../../logger";

View file

@ -1,7 +1,7 @@
import logger from "../../logger";
import { GuildMember, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import getEmbedConfig from "../../helpers/getEmbedConfig";

View file

@ -1,6 +1,6 @@
import { GuildMember, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import getEmbedConfig from "../../helpers/getEmbedConfig";

View file

@ -1,7 +1,7 @@
import logger from "../../logger";
import { GuildMember, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import getEmbedConfig from "../../helpers/getEmbedConfig";

View file

@ -1,6 +1,6 @@
import { GuildMember, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import getEmbedConfig from "../../helpers/getEmbedConfig";

View file

@ -1,7 +1,7 @@
import logger from "../../logger";
import { Interaction, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import getEmbedConfig from "../../helpers/getEmbedConfig";

View file

@ -1,7 +1,7 @@
import { Message } from "discord.js";
import logger from "../../../../logger";
import counterSchema from "../../../../database/schemas/counter";
import counterSchema from "../../../../models/counter";
export default {
execute: async (message: Message) => {

View file

@ -1,5 +1,5 @@
import logger from "../../../../logger";
import timeouts from "../../../../database/schemas/timeout";
import timeouts from "../../../../models/timeout";
import { Message } from "discord.js";
import fetchUser from "../../../../helpers/fetchUser";

View file

@ -1,5 +1,5 @@
import logger from "../../../../logger";
import timeouts from "../../../../database/schemas/timeout";
import timeouts from "../../../../models/timeout";
import fetchUser from "../../../../helpers/fetchUser";
import fetchGuild from "../../../../helpers/fetchGuild";

View file

@ -1,7 +1,7 @@
import logger from "../../logger";
import { Message, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import getEmbedConfig from "../../helpers/getEmbedConfig";

View file

@ -2,7 +2,7 @@
import { Message } from "discord.js";
// Models
import counterSchema from "../../../database/schemas/counter";
import counterSchema from "../../../models/counter";
import logger from "../../../logger";
export default async (message: Message) => {

View file

@ -2,7 +2,7 @@
import logger from "../../logger";
import { Message, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import getEmbedConfig from "../../helpers/getEmbedConfig";

View file

@ -2,7 +2,7 @@
import { Message } from "discord.js";
// Models
import counterSchema from "../../../database/schemas/counter";
import counterSchema from "../../../models/counter";
import logger from "../../../logger";
export default async (message: Message) => {

View file

@ -1,9 +1,9 @@
import guildSchema from "../../database/schemas/guild";
import userSchema from "../../database/schemas/user";
import apiSchema from "../../database/schemas/api";
import counterSchema from "../../database/schemas/counter";
import shopRoleSchema from "../../database/schemas/shopRole";
import timeoutSchema from "../../database/schemas/timeout";
import guildSchema from "../../models/guild";
import userSchema from "../../models/user";
import apiSchema from "../../models/api";
import counterSchema from "../../models/counter";
import shopRoleSchema from "../../models/shopRole";
import timeoutSchema from "../../models/timeout";
import logger from "../../logger";

View file

@ -1,4 +1,4 @@
import userSchema from "../../database/schemas/user";
import userSchema from "../../models/user";
import logger from "../../logger";

View file

@ -2,7 +2,7 @@
import { Guild } from "discord.js";
// Models
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
// Handlers
import logger from "../../logger";

View file

@ -2,7 +2,7 @@
import { Guild, User } from "discord.js";
// Models
import userSchema from "../../database/schemas/user";
import userSchema from "../../models/user";
// Handlers
import logger from "../../logger";

View file

@ -1,4 +1,4 @@
import guildSchema from "../../database/schemas/guild";
import guildSchema from "../../models/guild";
import * as embedConfig from "../../config/embed";
import { Guild } from "discord.js";

View file

@ -4,7 +4,7 @@ import { token, intents } from "./config/discord";
import { Client } from "discord.js"; // discord.js
import database from "./database";
import * as databaseManager from "./managers/database";
import * as scheduleManager from "./managers/schedule";
import * as eventManager from "./managers/event";
import * as commandManager from "./managers/command";
@ -16,16 +16,10 @@ const main = async () => {
intents,
});
// Start database manager
await database();
// Start schedule manager
// Start managers
await databaseManager.start();
await scheduleManager.start(client);
// Start command handler
await commandManager.register(client);
// Start event handler
await eventManager.register(client);
// Authorize with Discord's API

View file

@ -4,9 +4,9 @@ import { Client } from "discord.js";
import logger from "../logger";
// Schemas
import userSchema from "../database/schemas/user";
import shopRoleSchema from "../database/schemas/shopRole";
import guildSchema from "../database/schemas/guild";
import userSchema from "../models/user";
import shopRoleSchema from "../models/shopRole";
import guildSchema from "../models/guild";
export const options = {
schedule: "*/1 * * * * *",

View file

@ -2,12 +2,12 @@
import mongoose from "mongoose";
// Dependencies
import logger from "../logger";
import logger from "../../logger";
// Configuration
import { url } from "../config/database";
import { url } from "../../config/database";
export default async () => {
export const start = async () => {
await mongoose.connect(url).then(async (connection) => {
logger.info(`Connected to database: ${connection.connection.name}`);
});

View file

@ -1,6 +1,6 @@
import { Snowflake } from "discord.js";
import { model, Schema } from "mongoose";
import { IEncryptionData } from "../../interfaces/EncryptionData";
import { IEncryptionData } from "../interfaces/EncryptionData";
export interface IApi {
guildId: Snowflake;