Compare commits
2 commits
d5f5fe5f1a
...
863ae3fab2
| Author | SHA1 | Date | |
|---|---|---|---|
| 863ae3fab2 | |||
| 9155f630d9 |
20 changed files with 58 additions and 58 deletions
|
|
@ -3,7 +3,7 @@ import {
|
||||||
FieldMenuItemContext, FieldMenuItemSaveValue, MenuItem,
|
FieldMenuItemContext, FieldMenuItemSaveValue, MenuItem,
|
||||||
MenuItemType, PromptMenuItem,
|
MenuItemType, PromptMenuItem,
|
||||||
RowBuilderFieldMenuItemContext
|
RowBuilderFieldMenuItemContext
|
||||||
} from "../Menu/MenuRenderer.types";
|
} from "../../Menu/MenuRenderer.types";
|
||||||
import {GroupConfigurationTransformers} from "./GroupConfigurationTransformers";
|
import {GroupConfigurationTransformers} from "./GroupConfigurationTransformers";
|
||||||
import {GroupConfigurationHandler} from "./GroupConfigurationHandler";
|
import {GroupConfigurationHandler} from "./GroupConfigurationHandler";
|
||||||
import {
|
import {
|
||||||
|
|
@ -16,9 +16,9 @@ import {
|
||||||
StringSelectMenuBuilder, StringSelectMenuOptionBuilder, TextInputBuilder,
|
StringSelectMenuBuilder, StringSelectMenuOptionBuilder, TextInputBuilder,
|
||||||
TextInputStyle
|
TextInputStyle
|
||||||
} from "discord.js";
|
} from "discord.js";
|
||||||
import {ChannelId} from "../types/DiscordTypes";
|
import {ChannelId} from "../../types/DiscordTypes";
|
||||||
import {MessageActionRowComponentBuilder} from "@discordjs/builders";
|
import {MessageActionRowComponentBuilder} from "@discordjs/builders";
|
||||||
import {Prompt} from "../Menu/Modals/Prompt";
|
import {Prompt} from "../../Menu/Modals/Prompt";
|
||||||
|
|
||||||
export class ConfigurationMenuHandler {
|
export class ConfigurationMenuHandler {
|
||||||
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
import {RuntimeGroupConfiguration} from "./RuntimeGroupConfiguration";
|
import {RuntimeGroupConfiguration} from "./RuntimeGroupConfiguration";
|
||||||
import {GroupConfigurationRepository} from "../Repositories/GroupConfigurationRepository";
|
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
|
||||||
import {GroupModel} from "../Models/GroupModel";
|
import {GroupModel} from "../../Database/Models/GroupModel";
|
||||||
import {GroupConfigurationResult, GroupConfigurationTransformers} from "./GroupConfigurationTransformers";
|
import {GroupConfigurationResult, GroupConfigurationTransformers} from "./GroupConfigurationTransformers";
|
||||||
// @ts-expect-error set-path is provided
|
// @ts-expect-error set-path is provided
|
||||||
import setPath from 'object-path-set';
|
import setPath from 'object-path-set';
|
||||||
import deepmerge from "deepmerge";
|
import deepmerge from "deepmerge";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
// @ts-expect-error Any is fine
|
// @ts-expect-error Any is fine
|
||||||
import {isPlainObject} from "is-plain-object";
|
import {isPlainObject} from "is-plain-object";
|
||||||
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import {ChannelId} from "../types/DiscordTypes";
|
import {ChannelId} from "../../types/DiscordTypes";
|
||||||
import {GroupConfigurationModel} from "../Models/GroupConfigurationModel";
|
import {GroupConfigurationModel} from "../../Database/Models/GroupConfigurationModel";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
import {ArrayUtils} from "../Utilities/ArrayUtils";
|
import {ArrayUtils} from "../../Utilities/ArrayUtils";
|
||||||
|
|
||||||
export enum TransformerType {
|
export enum TransformerType {
|
||||||
Locale,
|
Locale,
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import {ChannelId} from "../types/DiscordTypes";
|
import {ChannelId} from "../../types/DiscordTypes";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
|
|
||||||
export type RuntimeGroupConfiguration = {
|
export type RuntimeGroupConfiguration = {
|
||||||
channels: Nullable<ChannelRuntimeGroupConfiguration>,
|
channels: Nullable<ChannelRuntimeGroupConfiguration>,
|
||||||
|
|
@ -3,9 +3,9 @@ import {Container} from "./Container";
|
||||||
import {DatabaseConnection} from "../Database/DatabaseConnection";
|
import {DatabaseConnection} from "../Database/DatabaseConnection";
|
||||||
import {configure, getLogger, Logger} from "log4js";
|
import {configure, getLogger, Logger} from "log4js";
|
||||||
import path from "node:path";
|
import path from "node:path";
|
||||||
import {GroupRepository} from "../Repositories/GroupRepository";
|
import {GroupRepository} from "../Database/Repositories/GroupRepository";
|
||||||
import {PlaydateRepository} from "../Repositories/PlaydateRepository";
|
import {PlaydateRepository} from "../Database/Repositories/PlaydateRepository";
|
||||||
import {GroupConfigurationRepository} from "../Repositories/GroupConfigurationRepository";
|
import {GroupConfigurationRepository} from "../Database/Repositories/GroupConfigurationRepository";
|
||||||
import {DiscordClient} from "../Discord/DiscordClient";
|
import {DiscordClient} from "../Discord/DiscordClient";
|
||||||
import {IconCache} from "../Icons/IconCache";
|
import {IconCache} from "../Icons/IconCache";
|
||||||
import {EventHandler} from "../Events/EventHandler";
|
import {EventHandler} from "../Events/EventHandler";
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import {Model} from "./Model";
|
import {Model} from "./Model";
|
||||||
import {GuildMember, Role} from "../types/DiscordTypes";
|
import {GuildMember, Role} from "../../types/DiscordTypes";
|
||||||
|
|
||||||
export interface GroupModel extends Model {
|
export interface GroupModel extends Model {
|
||||||
name: string;
|
name: string;
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import {Model} from "./Model";
|
import {Model} from "./Model";
|
||||||
import {GroupModel} from "./GroupModel";
|
import {GroupModel} from "./GroupModel";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
|
|
||||||
export interface PlaydateModel extends Model {
|
export interface PlaydateModel extends Model {
|
||||||
group: Nullable<GroupModel>
|
group: Nullable<GroupModel>
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
import {Repository} from "./Repository";
|
import {Repository} from "./Repository";
|
||||||
import GroupConfiguration, {DBGroupConfiguration} from "../Database/tables/GroupConfiguration";
|
import GroupConfiguration, {DBGroupConfiguration} from "../tables/GroupConfiguration";
|
||||||
import {GroupConfigurationModel} from "../Models/GroupConfigurationModel";
|
import {GroupConfigurationModel} from "../Models/GroupConfigurationModel";
|
||||||
import {GroupModel} from "../Models/GroupModel";
|
import {GroupModel} from "../Models/GroupModel";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
import {DatabaseConnection} from "../Database/DatabaseConnection";
|
import {DatabaseConnection} from "../DatabaseConnection";
|
||||||
import {GroupRepository} from "./GroupRepository";
|
import {GroupRepository} from "./GroupRepository";
|
||||||
|
|
||||||
export class GroupConfigurationRepository extends Repository<GroupConfigurationModel, DBGroupConfiguration> {
|
export class GroupConfigurationRepository extends Repository<GroupConfigurationModel, DBGroupConfiguration> {
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
import {Repository} from "./Repository";
|
import {Repository} from "./Repository";
|
||||||
import {GroupModel} from "../Models/GroupModel";
|
import {GroupModel} from "../Models/GroupModel";
|
||||||
import Groups, {DBGroup} from "../Database/tables/Groups";
|
import Groups, {DBGroup} from "../tables/Groups";
|
||||||
import {DatabaseConnection} from "../Database/DatabaseConnection";
|
import {DatabaseConnection} from "../DatabaseConnection";
|
||||||
import {GuildMember, UserFlagsBitField} from "discord.js";
|
import {GuildMember, UserFlagsBitField} from "discord.js";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
import {PlaydateRepository} from "./PlaydateRepository";
|
import {PlaydateRepository} from "./PlaydateRepository";
|
||||||
import {Container} from "../Container/Container";
|
import {Container} from "../../Container/Container";
|
||||||
|
|
||||||
export class GroupRepository extends Repository<GroupModel, DBGroup> {
|
export class GroupRepository extends Repository<GroupModel, DBGroup> {
|
||||||
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import {Repository} from "./Repository";
|
import {Repository} from "./Repository";
|
||||||
import {PlaydateModel} from "../Models/PlaydateModel";
|
import {PlaydateModel} from "../Models/PlaydateModel";
|
||||||
import Playdate, {DBPlaydate} from "../Database/tables/Playdate";
|
import Playdate, {DBPlaydate} from "../tables/Playdate";
|
||||||
import {DatabaseConnection} from "../Database/DatabaseConnection";
|
import {DatabaseConnection} from "../DatabaseConnection";
|
||||||
import {GroupRepository} from "./GroupRepository";
|
import {GroupRepository} from "./GroupRepository";
|
||||||
import {GroupModel} from "../Models/GroupModel";
|
import {GroupModel} from "../Models/GroupModel";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
|
|
||||||
export class PlaydateRepository extends Repository<PlaydateModel, DBPlaydate> {
|
export class PlaydateRepository extends Repository<PlaydateModel, DBPlaydate> {
|
||||||
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import {DatabaseConnection} from "../Database/DatabaseConnection";
|
import {DatabaseConnection} from "../DatabaseConnection";
|
||||||
import {Model} from "../Models/Model";
|
import {Model} from "../Models/Model";
|
||||||
import {Nullable} from "../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
import {DatabaseDefinition} from "../Database/DatabaseDefinition";
|
import {DatabaseDefinition} from "../DatabaseDefinition";
|
||||||
import {Container} from "../Container/Container";
|
import {Container} from "../../Container/Container";
|
||||||
import {EventHandler} from "../Events/EventHandler";
|
import {EventHandler} from "../../Events/EventHandler";
|
||||||
import {ElementCreatedEvent} from "../Events/EventClasses/ElementCreatedEvent";
|
import {ElementCreatedEvent} from "../../Events/EventClasses/ElementCreatedEvent";
|
||||||
|
|
||||||
export class Repository<ModelType extends Model, IntermediateModelType = unknown> {
|
export class Repository<ModelType extends Model, IntermediateModelType = unknown> {
|
||||||
|
|
||||||
|
|
@ -4,8 +4,8 @@ import {
|
||||||
GuildMember, SlashCommandIntegerOption,
|
GuildMember, SlashCommandIntegerOption,
|
||||||
} from "discord.js";
|
} from "discord.js";
|
||||||
import {Container} from "../../Container/Container";
|
import {Container} from "../../Container/Container";
|
||||||
import {GroupRepository} from "../../Repositories/GroupRepository";
|
import {GroupRepository} from "../../Database/Repositories/GroupRepository";
|
||||||
import {GroupModel} from "../../Models/GroupModel";
|
import {GroupModel} from "../../Database/Models/GroupModel";
|
||||||
import {UserError} from "../UserError";
|
import {UserError} from "../UserError";
|
||||||
|
|
||||||
export class GroupSelection {
|
export class GroupSelection {
|
||||||
|
|
|
||||||
|
|
@ -12,21 +12,21 @@ import {
|
||||||
userMention
|
userMention
|
||||||
} from "discord.js";
|
} from "discord.js";
|
||||||
import {AutocompleteCommand, ChatInteractionCommand, Command} from "./Command";
|
import {AutocompleteCommand, ChatInteractionCommand, Command} from "./Command";
|
||||||
import {GroupModel} from "../../Models/GroupModel";
|
import {GroupModel} from "../../Database/Models/GroupModel";
|
||||||
import {GroupRepository} from "../../Repositories/GroupRepository";
|
import {GroupRepository} from "../../Database/Repositories/GroupRepository";
|
||||||
import {Container} from "../../Container/Container";
|
import {Container} from "../../Container/Container";
|
||||||
import {GroupSelection} from "../CommandPartials/GroupSelection";
|
import {GroupSelection} from "../CommandPartials/GroupSelection";
|
||||||
import {UserError} from "../UserError";
|
import {UserError} from "../UserError";
|
||||||
import {ArrayUtils} from "../../Utilities/ArrayUtils";
|
import {ArrayUtils} from "../../Utilities/ArrayUtils";
|
||||||
import {GroupConfigurationRenderer} from "../../Groups/GroupConfigurationRenderer";
|
import {GroupConfigurationRenderer} from "../../Configuration/Groups/GroupConfigurationRenderer";
|
||||||
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
|
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
|
||||||
import {GroupConfigurationTransformers} from "../../Groups/GroupConfigurationTransformers";
|
import {GroupConfigurationTransformers} from "../../Configuration/Groups/GroupConfigurationTransformers";
|
||||||
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
|
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
|
||||||
import {PlaydateRepository} from "../../Repositories/PlaydateRepository";
|
import {PlaydateRepository} from "../../Database/Repositories/PlaydateRepository";
|
||||||
import {Nullable} from "../../types/Nullable";
|
import {Nullable} from "../../types/Nullable";
|
||||||
import {MenuRenderer} from "../../Menu/MenuRenderer";
|
import {MenuRenderer} from "../../Menu/MenuRenderer";
|
||||||
import {MenuItemType} from "../../Menu/MenuRenderer.types";
|
import {MenuItemType} from "../../Menu/MenuRenderer.types";
|
||||||
import {ConfigurationMenuHandler} from "../../Groups/ConfigurationMenuHandler";
|
import {ConfigurationMenuHandler} from "../../Configuration/Groups/ConfigurationMenuHandler";
|
||||||
import {MenuTraversal} from "../../Menu/MenuTraversal";
|
import {MenuTraversal} from "../../Menu/MenuTraversal";
|
||||||
|
|
||||||
export class GroupCommand implements Command, ChatInteractionCommand, AutocompleteCommand {
|
export class GroupCommand implements Command, ChatInteractionCommand, AutocompleteCommand {
|
||||||
|
|
|
||||||
|
|
@ -16,15 +16,15 @@ import {AutocompleteCommand, ChatInteractionCommand, Command} from "./Command";
|
||||||
import {Container} from "../../Container/Container";
|
import {Container} from "../../Container/Container";
|
||||||
import {GroupSelection} from "../CommandPartials/GroupSelection";
|
import {GroupSelection} from "../CommandPartials/GroupSelection";
|
||||||
import {UserError} from "../UserError";
|
import {UserError} from "../UserError";
|
||||||
import {PlaydateModel} from "../../Models/PlaydateModel";
|
import {PlaydateModel} from "../../Database/Models/PlaydateModel";
|
||||||
import {PlaydateRepository} from "../../Repositories/PlaydateRepository";
|
import {PlaydateRepository} from "../../Database/Repositories/PlaydateRepository";
|
||||||
import {GroupModel} from "../../Models/GroupModel";
|
import {GroupModel} from "../../Database/Models/GroupModel";
|
||||||
import * as ics from 'ics';
|
import * as ics from 'ics';
|
||||||
import ical from 'node-ical';
|
import ical from 'node-ical';
|
||||||
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
|
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
|
||||||
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
|
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
|
||||||
import {privateDecrypt} from "node:crypto";
|
import {privateDecrypt} from "node:crypto";
|
||||||
import {GroupRepository} from "../../Repositories/GroupRepository";
|
import {GroupRepository} from "../../Database/Repositories/GroupRepository";
|
||||||
|
|
||||||
export class PlaydatesCommand implements Command, AutocompleteCommand, ChatInteractionCommand {
|
export class PlaydatesCommand implements Command, AutocompleteCommand, ChatInteractionCommand {
|
||||||
definition(): SlashCommandBuilder {
|
definition(): SlashCommandBuilder {
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ import {Container} from "../Container/Container";
|
||||||
import {ReminderEvent} from "./Handlers/ReminderEvent";
|
import {ReminderEvent} from "./Handlers/ReminderEvent";
|
||||||
import {ElementCreatedEvent} from "./EventClasses/ElementCreatedEvent";
|
import {ElementCreatedEvent} from "./EventClasses/ElementCreatedEvent";
|
||||||
import {sendCreatedNotificationEventHandler} from "./Handlers/SendCreatedNotification";
|
import {sendCreatedNotificationEventHandler} from "./Handlers/SendCreatedNotification";
|
||||||
import {PlaydateModel} from "../Models/PlaydateModel";
|
import {PlaydateModel} from "../Database/Models/PlaydateModel";
|
||||||
import {TimedEvent} from "./EventHandler.types";
|
import {TimedEvent} from "./EventHandler.types";
|
||||||
import {CleanupEvent} from "./Handlers/CleanupEvent";
|
import {CleanupEvent} from "./Handlers/CleanupEvent";
|
||||||
import {Logger} from "log4js";
|
import {Logger} from "log4js";
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import {Model} from "../../Models/Model";
|
import {Model} from "../../Database/Models/Model";
|
||||||
import {EventType, NormalEvent} from "../EventHandler.types";
|
import {EventType, NormalEvent} from "../EventHandler.types";
|
||||||
|
|
||||||
export class ElementCreatedEvent<T extends Model = Model> implements NormalEvent {
|
export class ElementCreatedEvent<T extends Model = Model> implements NormalEvent {
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
import {Container} from "../../Container/Container";
|
import {Container} from "../../Container/Container";
|
||||||
import {PlaydateRepository} from "../../Repositories/PlaydateRepository";
|
import {PlaydateRepository} from "../../Database/Repositories/PlaydateRepository";
|
||||||
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
|
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
|
||||||
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
|
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
|
||||||
import {PlaydateModel} from "../../Models/PlaydateModel";
|
import {PlaydateModel} from "../../Database/Models/PlaydateModel";
|
||||||
import {ChannelId} from "../../types/DiscordTypes";
|
import {ChannelId} from "../../types/DiscordTypes";
|
||||||
import {DiscordClient} from "../../Discord/DiscordClient";
|
import {DiscordClient} from "../../Discord/DiscordClient";
|
||||||
import {EmbedBuilder, roleMention, time} from "discord.js";
|
import {EmbedBuilder, roleMention, time} from "discord.js";
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
import {ElementCreatedEvent} from "../EventClasses/ElementCreatedEvent";
|
import {ElementCreatedEvent} from "../EventClasses/ElementCreatedEvent";
|
||||||
import {PlaydateModel} from "../../Models/PlaydateModel";
|
import {PlaydateModel} from "../../Database/Models/PlaydateModel";
|
||||||
import PlaydateTableConfiguration from "../../Database/tables/Playdate";
|
import PlaydateTableConfiguration from "../../Database/tables/Playdate";
|
||||||
import {EmbedBuilder, roleMention, time} from "discord.js";
|
import {EmbedBuilder, roleMention, time} from "discord.js";
|
||||||
import {ArrayUtils} from "../../Utilities/ArrayUtils";
|
import {ArrayUtils} from "../../Utilities/ArrayUtils";
|
||||||
import {GroupConfigurationHandler} from "../../Groups/GroupConfigurationHandler";
|
import {GroupConfigurationHandler} from "../../Configuration/Groups/GroupConfigurationHandler";
|
||||||
import {Container} from "../../Container/Container";
|
import {Container} from "../../Container/Container";
|
||||||
import {GroupConfigurationRepository} from "../../Repositories/GroupConfigurationRepository";
|
import {GroupConfigurationRepository} from "../../Database/Repositories/GroupConfigurationRepository";
|
||||||
import {DiscordClient} from "../../Discord/DiscordClient";
|
import {DiscordClient} from "../../Discord/DiscordClient";
|
||||||
|
|
||||||
const NEW_PLAYDATE_MESSAGES = [
|
const NEW_PLAYDATE_MESSAGES = [
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue