Compare commits

...

2 commits

20 changed files with 58 additions and 58 deletions

View file

@ -3,7 +3,7 @@ import {
FieldMenuItemContext, FieldMenuItemSaveValue, MenuItem,
MenuItemType, PromptMenuItem,
RowBuilderFieldMenuItemContext
} from "../Menu/MenuRenderer.types";
} from "../../Menu/MenuRenderer.types";
import {GroupConfigurationTransformers} from "./GroupConfigurationTransformers";
import {GroupConfigurationHandler} from "./GroupConfigurationHandler";
import {
@ -16,9 +16,9 @@ import {
StringSelectMenuBuilder, StringSelectMenuOptionBuilder, TextInputBuilder,
TextInputStyle
} from "discord.js";
import {ChannelId} from "../types/DiscordTypes";
import {ChannelId} from "../../types/DiscordTypes";
import {MessageActionRowComponentBuilder} from "@discordjs/builders";
import {Prompt} from "../Menu/Modals/Prompt";
import {Prompt} from "../../Menu/Modals/Prompt";
export class ConfigurationMenuHandler {

View file

@ -1,11 +1,11 @@
import {RuntimeGroupConfiguration} from "./RuntimeGroupConfiguration";
import {GroupConfigurationRepository} from "../Repositories/GroupConfigurationRepository";
import {GroupModel} from "../Models/GroupModel";
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
import {GroupModel} from "../../Database/Models/GroupModel";
import {GroupConfigurationResult, GroupConfigurationTransformers} from "./GroupConfigurationTransformers";
// @ts-expect-error set-path is provided
import setPath from 'object-path-set';
import deepmerge from "deepmerge";
import {Nullable} from "../types/Nullable";
import {Nullable} from "../../types/Nullable";
// @ts-expect-error Any is fine
import {isPlainObject} from "is-plain-object";

View file

@ -1,7 +1,7 @@
import {ChannelId} from "../types/DiscordTypes";
import {GroupConfigurationModel} from "../Models/GroupConfigurationModel";
import {Nullable} from "../types/Nullable";
import {ArrayUtils} from "../Utilities/ArrayUtils";
import {ChannelId} from "../../types/DiscordTypes";
import {GroupConfigurationModel} from "../../Database/Models/GroupConfigurationModel";
import {Nullable} from "../../types/Nullable";
import {ArrayUtils} from "../../Utilities/ArrayUtils";
export enum TransformerType {
Locale,

View file

@ -1,5 +1,5 @@
import {ChannelId} from "../types/DiscordTypes";
import {Nullable} from "../types/Nullable";
import {ChannelId} from "../../types/DiscordTypes";
import {Nullable} from "../../types/Nullable";
export type RuntimeGroupConfiguration = {
channels: Nullable<ChannelRuntimeGroupConfiguration>,

View file

@ -3,9 +3,9 @@ import {Container} from "./Container";
import {DatabaseConnection} from "../Database/DatabaseConnection";
import {configure, getLogger, Logger} from "log4js";
import path from "node:path";
import {GroupRepository} from "../Repositories/GroupRepository";
import {PlaydateRepository} from "../Repositories/PlaydateRepository";
import {GroupConfigurationRepository} from "../Repositories/GroupConfigurationRepository";
import {GroupRepository} from "../Database/Repositories/GroupRepository";
import {PlaydateRepository} from "../Database/Repositories/PlaydateRepository";
import {GroupConfigurationRepository} from "../Database/Repositories/GroupConfigurationRepository";
import {DiscordClient} from "../Discord/DiscordClient";
import {IconCache} from "../Icons/IconCache";
import {EventHandler} from "../Events/EventHandler";

View file

@ -1,5 +1,5 @@
import {Model} from "./Model";
import {GuildMember, Role} from "../types/DiscordTypes";
import {GuildMember, Role} from "../../types/DiscordTypes";
export interface GroupModel extends Model {
name: string;

View file

@ -1,6 +1,6 @@
import {Model} from "./Model";
import {GroupModel} from "./GroupModel";
import {Nullable} from "../types/Nullable";
import {Nullable} from "../../types/Nullable";
export interface PlaydateModel extends Model {
group: Nullable<GroupModel>

View file

@ -1,9 +1,9 @@
import {Repository} from "./Repository";
import GroupConfiguration, {DBGroupConfiguration} from "../Database/tables/GroupConfiguration";
import GroupConfiguration, {DBGroupConfiguration} from "../tables/GroupConfiguration";
import {GroupConfigurationModel} from "../Models/GroupConfigurationModel";
import {GroupModel} from "../Models/GroupModel";
import {Nullable} from "../types/Nullable";
import {DatabaseConnection} from "../Database/DatabaseConnection";
import {Nullable} from "../../types/Nullable";
import {DatabaseConnection} from "../DatabaseConnection";
import {GroupRepository} from "./GroupRepository";
export class GroupConfigurationRepository extends Repository<GroupConfigurationModel, DBGroupConfiguration> {

View file

@ -1,11 +1,11 @@
import {Repository} from "./Repository";
import {GroupModel} from "../Models/GroupModel";
import Groups, {DBGroup} from "../Database/tables/Groups";
import {DatabaseConnection} from "../Database/DatabaseConnection";
import Groups, {DBGroup} from "../tables/Groups";
import {DatabaseConnection} from "../DatabaseConnection";
import {GuildMember, UserFlagsBitField} from "discord.js";
import {Nullable} from "../types/Nullable";
import {Nullable} from "../../types/Nullable";
import {PlaydateRepository} from "./PlaydateRepository";
import {Container} from "../Container/Container";
import {Container} from "../../Container/Container";
export class GroupRepository extends Repository<GroupModel, DBGroup> {

View file

@ -1,10 +1,10 @@
import {Repository} from "./Repository";
import {PlaydateModel} from "../Models/PlaydateModel";
import Playdate, {DBPlaydate} from "../Database/tables/Playdate";
import {DatabaseConnection} from "../Database/DatabaseConnection";
import Playdate, {DBPlaydate} from "../tables/Playdate";
import {DatabaseConnection} from "../DatabaseConnection";
import {GroupRepository} from "./GroupRepository";
import {GroupModel} from "../Models/GroupModel";
import {Nullable} from "../types/Nullable";
import {Nullable} from "../../types/Nullable";
export class PlaydateRepository extends Repository<PlaydateModel, DBPlaydate> {

View file

@ -1,10 +1,10 @@
import {DatabaseConnection} from "../Database/DatabaseConnection";
import {DatabaseConnection} from "../DatabaseConnection";
import {Model} from "../Models/Model";
import {Nullable} from "../types/Nullable";
import {DatabaseDefinition} from "../Database/DatabaseDefinition";
import {Container} from "../Container/Container";
import {EventHandler} from "../Events/EventHandler";
import {ElementCreatedEvent} from "../Events/EventClasses/ElementCreatedEvent";
import {Nullable} from "../../types/Nullable";
import {DatabaseDefinition} from "../DatabaseDefinition";
import {Container} from "../../Container/Container";
import {EventHandler} from "../../Events/EventHandler";
import {ElementCreatedEvent} from "../../Events/EventClasses/ElementCreatedEvent";
export class Repository<ModelType extends Model, IntermediateModelType = unknown> {

View file

@ -4,8 +4,8 @@ import {
GuildMember, SlashCommandIntegerOption,
} from "discord.js";
import {Container} from "../../Container/Container";
import {GroupRepository} from "../../Repositories/GroupRepository";
import {GroupModel} from "../../Models/GroupModel";
import {GroupRepository} from "../../Database/Repositories/GroupRepository";
import {GroupModel} from "../../Database/Models/GroupModel";
import {UserError} from "../UserError";
export class GroupSelection {

View file

@ -12,21 +12,21 @@ import {
userMention
} from "discord.js";
import {AutocompleteCommand, ChatInteractionCommand, Command} from "./Command";
import {GroupModel} from "../../Models/GroupModel";
import {GroupRepository} from "../../Repositories/GroupRepository";
import {GroupModel} from "../../Database/Models/GroupModel";
import {GroupRepository} from "../../Database/Repositories/GroupRepository";
import {Container} from "../../Container/Container";
import {GroupSelection} from "../CommandPartials/GroupSelection";
import {UserError} from "../UserError";
import {ArrayUtils} from "../../Utilities/ArrayUtils";
import {GroupConfigurationRenderer} from "../../Groups/GroupConfigurationRenderer";
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
import {GroupConfigurationTransformers} from "../../Groups/GroupConfigurationTransformers";
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
import {PlaydateRepository} from "../../Repositories/PlaydateRepository";
import {GroupConfigurationRenderer} from "../../Configuration/Groups/GroupConfigurationRenderer";
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
import {GroupConfigurationTransformers} from "../../Configuration/Groups/GroupConfigurationTransformers";
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
import {PlaydateRepository} from "../../Database/Repositories/PlaydateRepository";
import {Nullable} from "../../types/Nullable";
import {MenuRenderer} from "../../Menu/MenuRenderer";
import {MenuItemType} from "../../Menu/MenuRenderer.types";
import {ConfigurationMenuHandler} from "../../Groups/ConfigurationMenuHandler";
import {ConfigurationMenuHandler} from "../../Configuration/Groups/ConfigurationMenuHandler";
import {MenuTraversal} from "../../Menu/MenuTraversal";
export class GroupCommand implements Command, ChatInteractionCommand, AutocompleteCommand {

View file

@ -16,15 +16,15 @@ import {AutocompleteCommand, ChatInteractionCommand, Command} from "./Command";
import {Container} from "../../Container/Container";
import {GroupSelection} from "../CommandPartials/GroupSelection";
import {UserError} from "../UserError";
import {PlaydateModel} from "../../Models/PlaydateModel";
import {PlaydateRepository} from "../../Repositories/PlaydateRepository";
import {GroupModel} from "../../Models/GroupModel";
import {PlaydateModel} from "../../Database/Models/PlaydateModel";
import {PlaydateRepository} from "../../Database/Repositories/PlaydateRepository";
import {GroupModel} from "../../Database/Models/GroupModel";
import * as ics from 'ics';
import ical from 'node-ical';
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
import {privateDecrypt} from "node:crypto";
import {GroupRepository} from "../../Repositories/GroupRepository";
import {GroupRepository} from "../../Database/Repositories/GroupRepository";
export class PlaydatesCommand implements Command, AutocompleteCommand, ChatInteractionCommand {
definition(): SlashCommandBuilder {

View file

@ -3,7 +3,7 @@ import {Container} from "../Container/Container";
import {ReminderEvent} from "./Handlers/ReminderEvent";
import {ElementCreatedEvent} from "./EventClasses/ElementCreatedEvent";
import {sendCreatedNotificationEventHandler} from "./Handlers/SendCreatedNotification";
import {PlaydateModel} from "../Models/PlaydateModel";
import {PlaydateModel} from "../Database/Models/PlaydateModel";
import {TimedEvent} from "./EventHandler.types";
import {CleanupEvent} from "./Handlers/CleanupEvent";
import {Logger} from "log4js";

View file

@ -1,4 +1,4 @@
import {Model} from "../../Models/Model";
import {Model} from "../../Database/Models/Model";
import {EventType, NormalEvent} from "../EventHandler.types";
export class ElementCreatedEvent<T extends Model = Model> implements NormalEvent {

View file

@ -1,8 +1,8 @@
import {Container} from "../../Container/Container";
import {PlaydateRepository} from "../../Repositories/PlaydateRepository";
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
import {PlaydateModel} from "../../Models/PlaydateModel";
import {PlaydateRepository} from "../../Database/Repositories/PlaydateRepository";
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
import {PlaydateModel} from "../../Database/Models/PlaydateModel";
import {ChannelId} from "../../types/DiscordTypes";
import {DiscordClient} from "../../Discord/DiscordClient";
import {EmbedBuilder, roleMention, time} from "discord.js";

View file

@ -1,11 +1,11 @@
import {ElementCreatedEvent} from "../EventClasses/ElementCreatedEvent";
import {PlaydateModel} from "../../Models/PlaydateModel";
import {PlaydateModel} from "../../Database/Models/PlaydateModel";
import PlaydateTableConfiguration from "../../Database/tables/Playdate";
import {EmbedBuilder, roleMention, time} from "discord.js";
import {ArrayUtils} from "../../Utilities/ArrayUtils";
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
import {Container} from "../../Container/Container";
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
import {DiscordClient} from "../../Discord/DiscordClient";
const NEW_PLAYDATE_MESSAGES = [