OTv4 is now pterodactyl panel compatible!

This commit is contained in:
DJj123dj
2024-08-22 15:45:38 +02:00
parent 8e730fdfae
commit 7dd9bf1ac0
15 changed files with 141 additions and 144 deletions
+1
View File
@@ -11,3 +11,4 @@ TEMP/
.vscode/
plugins/*
!plugins/example-plugin/
dist/
+11 -9
View File
@@ -3,13 +3,18 @@
"author": "DJdj Development",
"version": "4.0.0",
"description": "The most advanced open-source discord ticket bot with HTML transcripts, plugins, questions, claiming, pinning & more! Using discord.js v14 & JSON database! ",
"keywords": ["ticket-bot","discord","open-ticket","plugins","discord-ticket-bot"],
"keywords": [
"ticket-bot",
"discord",
"open-ticket",
"plugins",
"discord-ticket-bot"
],
"main": "./src/index.ts",
"scripts": {
"verify": "tsc -p ./tsconfig.json",
"start": "npx tsx ./src/index.ts",
"backupstart": "node ./src/backupStartup.mjs",
"test": "npm run verify && npx tsx ./src/index.ts --dev-config --dev-database"
"build": "rm -rf ./dist/ && npx tsc -p ./tsconfig.json",
"start": "npm run build && node ./dist/src/index.js",
"test": "npm run start -- --dev-config --dev-database"
},
"type": "commonjs",
"license": "GPL-3.0-only",
@@ -17,10 +22,7 @@
"ansis": "^2.3.0",
"discord.js": "^14.15.3",
"formatted-json-stringify": "^1.1.0",
"tsx": "^4.17.0"
},
"devDependencies": {
"typescript": "^5.3.3"
"typescript": "^5.5.4"
},
"repository": {
"type": "git",
+1 -1
View File
@@ -10,7 +10,7 @@ if (utilities.project != "openticket") throw new api.ODPluginError("This plugin
if (!utilities.isBeta) throw new api.ODPluginError("This plugin is made for the beta version of Open Ticket!")
//Add Typescript autocomplete support for plugin data. (!!!OPTIONAL!!!)
declare module "../../src/core/api/api.ts" {
declare module "../../src/core/api/api.js" {
export interface ODConfigManagerIds_Default {
"example-plugin:config":api.ODJsonConfig
}
+1 -1
View File
@@ -164,7 +164,7 @@ export const registerActions = async () => {
//manage bot permissions
await openticket.events.get("onTicketPermissionsCreated").emit([option,openticket.permissions,channel,user])
await (await import("../data/framework/permissionLoader.ts")).addTicketPermissions(ticket)
await (await import("../data/framework/permissionLoader.js")).addTicketPermissions(ticket)
await openticket.events.get("afterTicketPermissionsCreated").emit([option,openticket.permissions,channel,user])
//export channel & ticket
+2 -2
View File
@@ -63,7 +63,7 @@ export const registerActions = async () => {
openticket.tickets.remove(ticket.id)
//delete permissions from manager
await (await import("../data/framework/permissionLoader.ts")).removeTicketPermissions(ticket)
await (await import("../data/framework/permissionLoader.js")).removeTicketPermissions(ticket)
}),
new api.ODWorker("openticket:discord-logs",2,async (instance,params,source,cancel) => {
//logs before channel deletion => channel might still be used in log embeds
@@ -86,7 +86,7 @@ export const registerActions = async () => {
await openticket.events.get("afterTicketChannelDeleted").emit([ticket,user])
//delete permissions from manager
await (await import("../data/framework/permissionLoader.ts")).removeTicketPermissions(ticket)
await (await import("../data/framework/permissionLoader.js")).removeTicketPermissions(ticket)
await openticket.events.get("afterTicketDeleted").emit([ticket,user,reason])
}),
-12
View File
@@ -1,12 +0,0 @@
/** === ALTERNATIVE STARTUP METHOD ===
* This file can be used to start the bot when the default `npm start` (npx tsx src/index.ts) doesn't work!
* It is not recommended to use this by default, but it is a backup option for certain panels that don't support typescript.
*
* RECOMMENDED ON:
* - pterodactyl based panels
* - pebblehost
* - and more
*/
import "tsx"
import("./index.ts")
+2 -2
View File
@@ -500,7 +500,7 @@ const panelEmbeds = () => {
if (panel.get("openticket:describe-options-in-embed-description").value){
//describe options in description
const text = (await import("../data/openticket/panelLoader.ts")).describePanelOptions("text",panel)
const text = (await import("../data/openticket/panelLoader.js")).describePanelOptions("text",panel)
instance.setDescription(embedOptions.description+"\n\n"+text)
}else if (embedOptions.description){
instance.setDescription(embedOptions.description)
@@ -512,7 +512,7 @@ const panelEmbeds = () => {
if (panel.get("openticket:describe-options-in-embed-fields").value){
//describe options in fields
const fields = (await import("../data/openticket/panelLoader.ts")).describePanelOptions("fields",panel)
const fields = (await import("../data/openticket/panelLoader.js")).describePanelOptions("fields",panel)
instance.setFields(fields)
}else if(embedOptions.fields.length > 0){
instance.setFields(embedOptions.fields)
+1 -1
View File
@@ -569,7 +569,7 @@ const panelMessages = () => {
const text = panel.get("openticket:text").value
if (panel.get("openticket:describe-options-in-text").value){
//describe options in text
const describeText = (await import("../data/openticket/panelLoader.ts")).describePanelOptions("text",panel)
const describeText = (await import("../data/openticket/panelLoader.js")).describePanelOptions("text",panel)
instance.setContent(text+"\n\n"+describeText)
}else if (text){
instance.setContent(text)
+2 -1
View File
@@ -4,6 +4,7 @@
import { ODId, ODManager, ODManagerData, ODSystemError, ODValidId } from "./base"
import nodepath from "path"
import { ODDebugger } from "./console"
import fs from "fs"
/**## ODConfigManager `class`
* This is an open ticket config manager.
@@ -88,7 +89,7 @@ export class ODJsonConfig extends ODConfig {
try {
const filename = (file.endsWith(".json")) ? file : file+".json"
this.file = customPath ? nodepath.join("./",customPath,filename) : nodepath.join("./config/",filename)
this.data = customPath ? require(nodepath.join("../../../../",customPath,filename)) : require(nodepath.join("../../../../config",filename))
this.data = JSON.parse(fs.readFileSync(this.file).toString())
}catch{
throw new ODSystemError("config \""+nodepath.join("./",customPath ?? "",file)+"\" doesn't exist!")
}
+3 -2
View File
@@ -4,6 +4,7 @@
import { ODId, ODManager, ODManagerData, ODSystemError, ODValidId } from "./base"
import nodepath from "path"
import { ODDebugger } from "./console"
import fs from "fs"
export class ODLanguage extends ODManagerData {
file: string
@@ -17,10 +18,10 @@ export class ODLanguage extends ODManagerData {
constructor(id:ODValidId, file:string, customPath?:string){
super(id)
this.file = file
try{
const filename = (file.endsWith(".json")) ? file : file+".json"
this.data = customPath ? require(nodepath.join("../../../../",customPath,filename)) : require(nodepath.join("../../../../languages",filename))
this.file = customPath ? nodepath.join("./",customPath,filename) : nodepath.join("./languages/",filename)
this.data = JSON.parse(fs.readFileSync(this.file).toString())
}catch{
throw new ODSystemError("[API ERROR] Language \""+file+"\" doesn't exist!")
}
+3 -2
View File
@@ -84,13 +84,14 @@ export class ODPlugin extends ODManagerData {
//Get the startfile location relative to the ./plugins/ directory
getStartFile(){
return nodepath.join(this.dir,this.data.startFile)
const newFile = this.data.startFile.replace(/\.ts$/,".js")
return nodepath.join(this.dir,newFile)
}
/**Execute this plugin. Returns `false` on crash. */
async execute(debug:ODDebugger,force?:boolean): Promise<boolean> {
if ((this.enabled && !this.crashed) || force){
try{
await require(nodepath.join("../../../../plugins/",this.getStartFile()))
await import(nodepath.join("../../../../plugins/",this.getStartFile()))
debug.console.log("Plugin \""+this.id.value+"\" loaded successfully!","plugin")
this.executed = true
return true
+1 -1
View File
@@ -29,7 +29,7 @@ const moduleInstalled = (id:string, throwError:boolean) => {
moduleInstalled("discord.js",true)
moduleInstalled("ansis",true)
moduleInstalled("formatted-json-stringify",true)
moduleInstalled("tsx",true)
moduleInstalled("typescript",true)
tempError()
//init API
+4 -4
View File
@@ -33,10 +33,10 @@ export const loadVersionMigrationSystem = async () => {
const preloadMigrationContext = async () => {
openticket.debug.debug("-- MIGRATION CONTEXT START --")
await (await import("../../data/framework/flagLoader.ts")).loadAllFlags()
await (await import("../../data/framework/flagLoader.js")).loadAllFlags()
openticket.flags.init()
await (await import("../../data/framework/configLoader.ts")).loadAllConfigs()
await (await import("../../data/framework/databaseLoader.ts")).loadAllDatabases()
await (await import("../../data/framework/configLoader.js")).loadAllConfigs()
await (await import("../../data/framework/databaseLoader.js")).loadAllDatabases()
openticket.debug.visible = true
}
@@ -58,7 +58,7 @@ const isMigrationRequired = (): false|api.ODVersion => {
}
const loadAllVersionMigrations = async (lastVersion:api.ODVersion) => {
const migrations = (await import("./migration.ts")).migrations
const migrations = (await import("./migration.js")).migrations
migrations.sort((a,b) => {
const comparison = a.version.compare(b.version)
if (comparison == "equal") return 0
+100 -100
View File
@@ -41,7 +41,7 @@ import ansis from "ansis"
/**The main sequence of Open Ticket. Runs `async` */
const main = async () => {
//load all events
(await import("./data/framework/eventLoader.ts")).loadAllEvents()
(await import("./data/framework/eventLoader.js")).loadAllEvents()
//error handling system
process.on("uncaughtException",async (error,origin) => {
@@ -76,11 +76,11 @@ const main = async () => {
})
//handle data migration
await (await import("./core/startup/manageMigration.ts")).loadVersionMigrationSystem()
await (await import("./core/startup/manageMigration.js")).loadVersionMigrationSystem()
//load plugins
if (openticket.defaults.getDefault("pluginLoading")){
await (await import("./core/startup/pluginLauncher.ts")).loadAllPlugins()
await (await import("./core/startup/pluginLauncher.js")).loadAllPlugins()
}
await openticket.events.get("afterPluginsLoaded").emit([openticket.plugins])
@@ -103,7 +103,7 @@ const main = async () => {
//load flags
openticket.log("Loading flags...","system")
if (openticket.defaults.getDefault("flagLoading")){
await (await import("./data/framework/flagLoader.ts")).loadAllFlags()
await (await import("./data/framework/flagLoader.js")).loadAllFlags()
}
await openticket.events.get("onFlagLoad").emit([openticket.flags])
await openticket.events.get("afterFlagsLoaded").emit([openticket.flags])
@@ -125,7 +125,7 @@ const main = async () => {
//load config
openticket.log("Loading configs...","system")
if (openticket.defaults.getDefault("configLoading")){
await (await import("./data/framework/configLoader.ts")).loadAllConfigs()
await (await import("./data/framework/configLoader.js")).loadAllConfigs()
}
await openticket.events.get("onConfigLoad").emit([openticket.configs])
await openticket.events.get("afterConfigsLoaded").emit([openticket.configs])
@@ -136,7 +136,7 @@ const main = async () => {
//load database
openticket.log("Loading databases...","system")
if (openticket.defaults.getDefault("databaseLoading")){
await (await import("./data/framework/databaseLoader.ts")).loadAllDatabases()
await (await import("./data/framework/databaseLoader.js")).loadAllDatabases()
}
await openticket.events.get("onDatabaseLoad").emit([openticket.databases])
await openticket.events.get("afterDatabasesLoaded").emit([openticket.databases])
@@ -152,7 +152,7 @@ const main = async () => {
//load language
openticket.log("Loading languages...","system")
if (openticket.defaults.getDefault("languageLoading")){
await (await import("./data/framework/languageLoader.ts")).loadAllLanguages()
await (await import("./data/framework/languageLoader.js")).loadAllLanguages()
}
await openticket.events.get("onLanguageLoad").emit([openticket.languages])
await openticket.events.get("afterLanguagesLoaded").emit([openticket.languages])
@@ -181,14 +181,14 @@ const main = async () => {
//load config checker
openticket.log("Loading config checker...","system")
if (openticket.defaults.getDefault("checkerLoading")){
await (await import("./data/framework/checkerLoader.ts")).loadAllConfigCheckers()
await (await import("./data/framework/checkerLoader.js")).loadAllConfigCheckers()
}
await openticket.events.get("onCheckerLoad").emit([openticket.checkers])
await openticket.events.get("afterCheckersLoaded").emit([openticket.checkers])
//load config checker functions
if (openticket.defaults.getDefault("checkerFunctionLoading")){
await (await import("./data/framework/checkerLoader.ts")).loadAllConfigCheckerFunctions()
await (await import("./data/framework/checkerLoader.js")).loadAllConfigCheckerFunctions()
}
await openticket.events.get("onCheckerFunctionLoad").emit([openticket.checkers.functions,openticket.checkers])
await openticket.events.get("afterCheckerFunctionsLoaded").emit([openticket.checkers.functions,openticket.checkers])
@@ -202,7 +202,7 @@ const main = async () => {
//load config checker translations
if (openticket.defaults.getDefault("checkerTranslationLoading")){
await (await import("./data/framework/checkerLoader.ts")).loadAllConfigCheckerTranslations()
await (await import("./data/framework/checkerLoader.js")).loadAllConfigCheckerTranslations()
}
await openticket.events.get("onCheckerTranslationLoad").emit([openticket.checkers.translation,((generalConfig && generalConfig.data.system && generalConfig.data.system.useTranslatedConfigChecker) ? generalConfig.data.system.useTranslatedConfigChecker : false),openticket.checkers])
await openticket.events.get("afterCheckerTranslationsLoaded").emit([openticket.checkers.translation,openticket.checkers])
@@ -351,7 +351,7 @@ const main = async () => {
//load slash commands
openticket.log("Loading slash commands...","system")
if (openticket.defaults.getDefault("slashCommandLoading")){
await (await import("./data/framework/commandLoader.ts")).loadAllSlashCommands()
await (await import("./data/framework/commandLoader.js")).loadAllSlashCommands()
}
await openticket.events.get("onSlashCommandLoad").emit([openticket.client.slashCommands,openticket.client])
await openticket.events.get("afterSlashCommandsLoaded").emit([openticket.client.slashCommands,openticket.client])
@@ -377,7 +377,7 @@ const main = async () => {
//load text commands
openticket.log("Loading text commands...","system")
if (openticket.defaults.getDefault("textCommandLoading")){
await (await import("./data/framework/commandLoader.ts")).loadAllTextCommands()
await (await import("./data/framework/commandLoader.js")).loadAllTextCommands()
}
await openticket.events.get("onTextCommandLoad").emit([openticket.client.textCommands,openticket.client])
await openticket.events.get("afterTextCommandsLoaded").emit([openticket.client.textCommands,openticket.client])
@@ -403,7 +403,7 @@ const main = async () => {
//load questions
openticket.log("Loading questions...","system")
if (openticket.defaults.getDefault("questionLoading")){
await (await import("./data/openticket/questionLoader.ts")).loadAllQuestions()
await (await import("./data/openticket/questionLoader.js")).loadAllQuestions()
}
await openticket.events.get("onQuestionLoad").emit([openticket.questions])
await openticket.events.get("afterQuestionsLoaded").emit([openticket.questions])
@@ -411,7 +411,7 @@ const main = async () => {
//load options
openticket.log("Loading options...","system")
if (openticket.defaults.getDefault("optionLoading")){
await (await import("./data/openticket/optionLoader.ts")).loadAllOptions()
await (await import("./data/openticket/optionLoader.js")).loadAllOptions()
}
await openticket.events.get("onOptionLoad").emit([openticket.options])
await openticket.events.get("afterOptionsLoaded").emit([openticket.options])
@@ -419,7 +419,7 @@ const main = async () => {
//load panels
openticket.log("Loading panels...","system")
if (openticket.defaults.getDefault("panelLoading")){
await (await import("./data/openticket/panelLoader.ts")).loadAllPanels()
await (await import("./data/openticket/panelLoader.js")).loadAllPanels()
}
await openticket.events.get("onPanelLoad").emit([openticket.panels])
await openticket.events.get("afterPanelsLoaded").emit([openticket.panels])
@@ -428,7 +428,7 @@ const main = async () => {
openticket.log("Loading tickets...","system")
if (openticket.defaults.getDefault("ticketLoading")){
openticket.tickets.useGuild(openticket.client.mainServer)
await (await import("./data/openticket/ticketLoader.ts")).loadAllTickets()
await (await import("./data/openticket/ticketLoader.js")).loadAllTickets()
}
await openticket.events.get("onTicketLoad").emit([openticket.tickets])
await openticket.events.get("afterTicketsLoaded").emit([openticket.tickets])
@@ -436,7 +436,7 @@ const main = async () => {
//load roles
openticket.log("Loading roles...","system")
if (openticket.defaults.getDefault("roleLoading")){
await (await import("./data/openticket/roleLoader.ts")).loadAllRoles()
await (await import("./data/openticket/roleLoader.js")).loadAllRoles()
}
await openticket.events.get("onRoleLoad").emit([openticket.roles])
await openticket.events.get("afterRolesLoaded").emit([openticket.roles])
@@ -444,7 +444,7 @@ const main = async () => {
//load blacklist
openticket.log("Loading blacklist...","system")
if (openticket.defaults.getDefault("blacklistLoading")){
await (await import("./data/openticket/blacklistLoader.ts")).loadAllBlacklistedUsers()
await (await import("./data/openticket/blacklistLoader.js")).loadAllBlacklistedUsers()
}
await openticket.events.get("onBlacklistLoad").emit([openticket.blacklist])
await openticket.events.get("afterBlacklistLoaded").emit([openticket.blacklist])
@@ -452,14 +452,14 @@ const main = async () => {
//load transcript compilers
openticket.log("Loading transcripts...","system")
if (openticket.defaults.getDefault("transcriptCompilerLoading")){
await (await import("./data/openticket/transcriptLoader.ts")).loadAllTranscriptCompilers()
await (await import("./data/openticket/transcriptLoader.js")).loadAllTranscriptCompilers()
}
await openticket.events.get("onTranscriptCompilerLoad").emit([openticket.transcripts])
await openticket.events.get("afterTranscriptCompilersLoaded").emit([openticket.transcripts])
//load transcript history
if (openticket.defaults.getDefault("transcriptHistoryLoading")){
await (await import("./data/openticket/transcriptLoader.ts")).loadTranscriptHistory()
await (await import("./data/openticket/transcriptLoader.js")).loadTranscriptHistory()
}
await openticket.events.get("onTranscriptHistoryLoad").emit([openticket.transcripts])
await openticket.events.get("afterTranscriptHistoryLoaded").emit([openticket.transcripts])
@@ -467,7 +467,7 @@ const main = async () => {
//load button builders
openticket.log("Loading buttons...","system")
if (openticket.defaults.getDefault("buttonBuildersLoading")){
await (await import("./builders/buttons.ts")).registerAllButtons()
await (await import("./builders/buttons.js")).registerAllButtons()
}
await openticket.events.get("onButtonBuilderLoad").emit([openticket.builders.buttons,openticket.builders,openticket.actions])
await openticket.events.get("afterButtonBuildersLoaded").emit([openticket.builders.buttons,openticket.builders,openticket.actions])
@@ -475,7 +475,7 @@ const main = async () => {
//load dropdown builders
openticket.log("Loading dropdowns...","system")
if (openticket.defaults.getDefault("dropdownBuildersLoading")){
await (await import("./builders/dropdowns.ts")).registerAllDropdowns()
await (await import("./builders/dropdowns.js")).registerAllDropdowns()
}
await openticket.events.get("onDropdownBuilderLoad").emit([openticket.builders.dropdowns,openticket.builders,openticket.actions])
await openticket.events.get("afterDropdownBuildersLoaded").emit([openticket.builders.dropdowns,openticket.builders,openticket.actions])
@@ -483,7 +483,7 @@ const main = async () => {
//load file builders
openticket.log("Loading files...","system")
if (openticket.defaults.getDefault("fileBuildersLoading")){
await (await import("./builders/files.ts")).registerAllFiles()
await (await import("./builders/files.js")).registerAllFiles()
}
await openticket.events.get("onFileBuilderLoad").emit([openticket.builders.files,openticket.builders,openticket.actions])
await openticket.events.get("afterFileBuildersLoaded").emit([openticket.builders.files,openticket.builders,openticket.actions])
@@ -491,7 +491,7 @@ const main = async () => {
//load embed builders
openticket.log("Loading embeds...","system")
if (openticket.defaults.getDefault("embedBuildersLoading")){
await (await import("./builders/embeds.ts")).registerAllEmbeds()
await (await import("./builders/embeds.js")).registerAllEmbeds()
}
await openticket.events.get("onEmbedBuilderLoad").emit([openticket.builders.embeds,openticket.builders,openticket.actions])
await openticket.events.get("afterEmbedBuildersLoaded").emit([openticket.builders.embeds,openticket.builders,openticket.actions])
@@ -499,7 +499,7 @@ const main = async () => {
//load message builders
openticket.log("Loading messages...","system")
if (openticket.defaults.getDefault("messageBuildersLoading")){
await (await import("./builders/messages.ts")).registerAllMessages()
await (await import("./builders/messages.js")).registerAllMessages()
}
await openticket.events.get("onMessageBuilderLoad").emit([openticket.builders.messages,openticket.builders,openticket.actions])
await openticket.events.get("afterMessageBuildersLoaded").emit([openticket.builders.messages,openticket.builders,openticket.actions])
@@ -507,7 +507,7 @@ const main = async () => {
//load modal builders
openticket.log("Loading modals...","system")
if (openticket.defaults.getDefault("modalBuildersLoading")){
await (await import("./builders/modals.ts")).registerAllModals()
await (await import("./builders/modals.js")).registerAllModals()
}
await openticket.events.get("onModalBuilderLoad").emit([openticket.builders.modals,openticket.builders,openticket.actions])
await openticket.events.get("afterModalBuildersLoaded").emit([openticket.builders.modals,openticket.builders,openticket.actions])
@@ -515,25 +515,25 @@ const main = async () => {
//load command responders
openticket.log("Loading command responders...","system")
if (openticket.defaults.getDefault("commandRespondersLoading")){
await (await import("./commands/help.ts")).registerCommandResponders()
await (await import("./commands/stats.ts")).registerCommandResponders()
await (await import("./commands/panel.ts")).registerCommandResponders()
await (await import("./commands/ticket.ts")).registerCommandResponders()
await (await import("./commands/blacklist.ts")).registerCommandResponders()
await (await import("./commands/close.ts")).registerCommandResponders()
await (await import("./commands/reopen.ts")).registerCommandResponders()
await (await import("./commands/delete.ts")).registerCommandResponders()
await (await import("./commands/claim.ts")).registerCommandResponders()
await (await import("./commands/unclaim.ts")).registerCommandResponders()
await (await import("./commands/pin.ts")).registerCommandResponders()
await (await import("./commands/unpin.ts")).registerCommandResponders()
await (await import("./commands/rename.ts")).registerCommandResponders()
await (await import("./commands/move.ts")).registerCommandResponders()
await (await import("./commands/add.ts")).registerCommandResponders()
await (await import("./commands/remove.ts")).registerCommandResponders()
await (await import("./commands/clear.ts")).registerCommandResponders()
await (await import("./commands/autoclose.ts")).registerCommandResponders()
await (await import("./commands/autodelete.ts")).registerCommandResponders()
await (await import("./commands/help.js")).registerCommandResponders()
await (await import("./commands/stats.js")).registerCommandResponders()
await (await import("./commands/panel.js")).registerCommandResponders()
await (await import("./commands/ticket.js")).registerCommandResponders()
await (await import("./commands/blacklist.js")).registerCommandResponders()
await (await import("./commands/close.js")).registerCommandResponders()
await (await import("./commands/reopen.js")).registerCommandResponders()
await (await import("./commands/delete.js")).registerCommandResponders()
await (await import("./commands/claim.js")).registerCommandResponders()
await (await import("./commands/unclaim.js")).registerCommandResponders()
await (await import("./commands/pin.js")).registerCommandResponders()
await (await import("./commands/unpin.js")).registerCommandResponders()
await (await import("./commands/rename.js")).registerCommandResponders()
await (await import("./commands/move.js")).registerCommandResponders()
await (await import("./commands/add.js")).registerCommandResponders()
await (await import("./commands/remove.js")).registerCommandResponders()
await (await import("./commands/clear.js")).registerCommandResponders()
await (await import("./commands/autoclose.js")).registerCommandResponders()
await (await import("./commands/autodelete.js")).registerCommandResponders()
}
await openticket.events.get("onCommandResponderLoad").emit([openticket.responders.commands,openticket.responders,openticket.actions])
await openticket.events.get("afterCommandRespondersLoaded").emit([openticket.responders.commands,openticket.responders,openticket.actions])
@@ -541,19 +541,19 @@ const main = async () => {
//load button responders
openticket.log("Loading button responders...","system")
if (openticket.defaults.getDefault("buttonRespondersLoading")){
await (await import("./actions/handleVerifyBar.ts")).registerButtonResponders()
await (await import("./actions/handleTranscriptErrors.ts")).registerButtonResponders()
await (await import("./commands/help.ts")).registerButtonResponders()
await (await import("./commands/ticket.ts")).registerButtonResponders()
await (await import("./commands/close.ts")).registerButtonResponders()
await (await import("./commands/reopen.ts")).registerButtonResponders()
await (await import("./commands/delete.ts")).registerButtonResponders()
await (await import("./commands/claim.ts")).registerButtonResponders()
await (await import("./commands/unclaim.ts")).registerButtonResponders()
await (await import("./commands/pin.ts")).registerButtonResponders()
await (await import("./commands/unpin.ts")).registerButtonResponders()
await (await import("./commands/role.ts")).registerButtonResponders()
await (await import("./commands/clear.ts")).registerButtonResponders()
await (await import("./actions/handleVerifyBar.js")).registerButtonResponders()
await (await import("./actions/handleTranscriptErrors.js")).registerButtonResponders()
await (await import("./commands/help.js")).registerButtonResponders()
await (await import("./commands/ticket.js")).registerButtonResponders()
await (await import("./commands/close.js")).registerButtonResponders()
await (await import("./commands/reopen.js")).registerButtonResponders()
await (await import("./commands/delete.js")).registerButtonResponders()
await (await import("./commands/claim.js")).registerButtonResponders()
await (await import("./commands/unclaim.js")).registerButtonResponders()
await (await import("./commands/pin.js")).registerButtonResponders()
await (await import("./commands/unpin.js")).registerButtonResponders()
await (await import("./commands/role.js")).registerButtonResponders()
await (await import("./commands/clear.js")).registerButtonResponders()
}
await openticket.events.get("onButtonResponderLoad").emit([openticket.responders.buttons,openticket.responders,openticket.actions])
await openticket.events.get("afterButtonRespondersLoaded").emit([openticket.responders.buttons,openticket.responders,openticket.actions])
@@ -561,7 +561,7 @@ const main = async () => {
//load dropdown responders
openticket.log("Loading dropdown responders...","system")
if (openticket.defaults.getDefault("dropdownRespondersLoading")){
await (await import("./commands/ticket.ts")).registerDropdownResponders()
await (await import("./commands/ticket.js")).registerDropdownResponders()
}
await openticket.events.get("onDropdownResponderLoad").emit([openticket.responders.dropdowns,openticket.responders,openticket.actions])
await openticket.events.get("afterDropdownRespondersLoaded").emit([openticket.responders.dropdowns,openticket.responders,openticket.actions])
@@ -569,14 +569,14 @@ const main = async () => {
//load modal responders
openticket.log("Loading modal responders...","system")
if (openticket.defaults.getDefault("modalRespondersLoading")){
await (await import("./commands/ticket.ts")).registerModalResponders()
await (await import("./commands/close.ts")).registerModalResponders()
await (await import("./commands/reopen.ts")).registerModalResponders()
await (await import("./commands/delete.ts")).registerModalResponders()
await (await import("./commands/claim.ts")).registerModalResponders()
await (await import("./commands/unclaim.ts")).registerModalResponders()
await (await import("./commands/pin.ts")).registerModalResponders()
await (await import("./commands/unpin.ts")).registerModalResponders()
await (await import("./commands/ticket.js")).registerModalResponders()
await (await import("./commands/close.js")).registerModalResponders()
await (await import("./commands/reopen.js")).registerModalResponders()
await (await import("./commands/delete.js")).registerModalResponders()
await (await import("./commands/claim.js")).registerModalResponders()
await (await import("./commands/unclaim.js")).registerModalResponders()
await (await import("./commands/pin.js")).registerModalResponders()
await (await import("./commands/unpin.js")).registerModalResponders()
}
await openticket.events.get("onModalResponderLoad").emit([openticket.responders.modals,openticket.responders,openticket.actions])
await openticket.events.get("afterModalRespondersLoaded").emit([openticket.responders.modals,openticket.responders,openticket.actions])
@@ -584,22 +584,22 @@ const main = async () => {
//load actions
openticket.log("Loading actions...","system")
if (openticket.defaults.getDefault("actionsLoading")){
await (await import("./actions/createTicketPermissions.ts")).registerActions()
await (await import("./actions/createTranscript.ts")).registerActions()
await (await import("./actions/createTicket.ts")).registerActions()
await (await import("./actions/closeTicket.ts")).registerActions()
await (await import("./actions/deleteTicket.ts")).registerActions()
await (await import("./actions/reopenTicket.ts")).registerActions()
await (await import("./actions/claimTicket.ts")).registerActions()
await (await import("./actions/unclaimTicket.ts")).registerActions()
await (await import("./actions/pinTicket.ts")).registerActions()
await (await import("./actions/unpinTicket.ts")).registerActions()
await (await import("./actions/renameTicket.ts")).registerActions()
await (await import("./actions/moveTicket.ts")).registerActions()
await (await import("./actions/addTicketUser.ts")).registerActions()
await (await import("./actions/removeTicketUser.ts")).registerActions()
await (await import("./actions/reactionRole.ts")).registerActions()
await (await import("./actions/clearTickets.ts")).registerActions()
await (await import("./actions/createTicketPermissions.js")).registerActions()
await (await import("./actions/createTranscript.js")).registerActions()
await (await import("./actions/createTicket.js")).registerActions()
await (await import("./actions/closeTicket.js")).registerActions()
await (await import("./actions/deleteTicket.js")).registerActions()
await (await import("./actions/reopenTicket.js")).registerActions()
await (await import("./actions/claimTicket.js")).registerActions()
await (await import("./actions/unclaimTicket.js")).registerActions()
await (await import("./actions/pinTicket.js")).registerActions()
await (await import("./actions/unpinTicket.js")).registerActions()
await (await import("./actions/renameTicket.js")).registerActions()
await (await import("./actions/moveTicket.js")).registerActions()
await (await import("./actions/addTicketUser.js")).registerActions()
await (await import("./actions/removeTicketUser.js")).registerActions()
await (await import("./actions/reactionRole.js")).registerActions()
await (await import("./actions/clearTickets.js")).registerActions()
}
await openticket.events.get("onActionLoad").emit([openticket.actions])
await openticket.events.get("afterActionsLoaded").emit([openticket.actions])
@@ -607,13 +607,13 @@ const main = async () => {
//load verifybars
openticket.log("Loading verifybars...","system")
if (openticket.defaults.getDefault("verifyBarsLoading")){
await (await import("./actions/closeTicket.ts")).registerVerifyBars()
await (await import("./actions/deleteTicket.ts")).registerVerifyBars()
await (await import("./actions/reopenTicket.ts")).registerVerifyBars()
await (await import("./actions/claimTicket.ts")).registerVerifyBars()
await (await import("./actions/unclaimTicket.ts")).registerVerifyBars()
await (await import("./actions/pinTicket.ts")).registerVerifyBars()
await (await import("./actions/unpinTicket.ts")).registerVerifyBars()
await (await import("./actions/closeTicket.js")).registerVerifyBars()
await (await import("./actions/deleteTicket.js")).registerVerifyBars()
await (await import("./actions/reopenTicket.js")).registerVerifyBars()
await (await import("./actions/claimTicket.js")).registerVerifyBars()
await (await import("./actions/unclaimTicket.js")).registerVerifyBars()
await (await import("./actions/pinTicket.js")).registerVerifyBars()
await (await import("./actions/unpinTicket.js")).registerVerifyBars()
}
await openticket.events.get("onVerifyBarLoad").emit([openticket.verifybars])
await openticket.events.get("afterVerifyBarsLoaded").emit([openticket.verifybars])
@@ -621,7 +621,7 @@ const main = async () => {
//load permissions
openticket.log("Loading permissions...","system")
if (openticket.defaults.getDefault("permissionsLoading")){
await (await import("./data/framework/permissionLoader.ts")).loadAllPermissions()
await (await import("./data/framework/permissionLoader.js")).loadAllPermissions()
}
await openticket.events.get("onPermissionLoad").emit([openticket.permissions])
await openticket.events.get("afterPermissionsLoaded").emit([openticket.permissions])
@@ -629,7 +629,7 @@ const main = async () => {
//load posts
openticket.log("Loading posts...","system")
if (openticket.defaults.getDefault("postsLoading")){
await (await import("./data/framework/postLoader.ts")).loadAllPosts()
await (await import("./data/framework/postLoader.js")).loadAllPosts()
}
await openticket.events.get("onPostLoad").emit([openticket.posts])
await openticket.events.get("afterPostsLoaded").emit([openticket.posts])
@@ -644,7 +644,7 @@ const main = async () => {
//load cooldowns
openticket.log("Loading cooldowns...","system")
if (openticket.defaults.getDefault("cooldownsLoading")){
await (await import("./data/framework/cooldownLoader.ts")).loadAllCooldowns()
await (await import("./data/framework/cooldownLoader.js")).loadAllCooldowns()
}
await openticket.events.get("onCooldownLoad").emit([openticket.cooldowns])
await openticket.events.get("afterCooldownsLoaded").emit([openticket.cooldowns])
@@ -659,14 +659,14 @@ const main = async () => {
//load help menu categories
openticket.log("Loading help menu...","system")
if (openticket.defaults.getDefault("helpMenuCategoryLoading")){
await (await import("./data/framework/helpMenuLoader.ts")).loadAllHelpMenuCategories()
await (await import("./data/framework/helpMenuLoader.js")).loadAllHelpMenuCategories()
}
await openticket.events.get("onHelpMenuCategoryLoad").emit([openticket.helpmenu])
await openticket.events.get("afterHelpMenuCategoriesLoaded").emit([openticket.helpmenu])
//load help menu components
if (openticket.defaults.getDefault("helpMenuComponentLoading")){
await (await import("./data/framework/helpMenuLoader.ts")).loadAllHelpMenuComponents()
await (await import("./data/framework/helpMenuLoader.js")).loadAllHelpMenuComponents()
}
await openticket.events.get("onHelpMenuComponentLoad").emit([openticket.helpmenu])
await openticket.events.get("afterHelpMenuComponentsLoaded").emit([openticket.helpmenu])
@@ -675,14 +675,14 @@ const main = async () => {
openticket.log("Loading stats...","system")
if (openticket.defaults.getDefault("statScopesLoading")){
openticket.stats.useDatabase(openticket.databases.get("openticket:stats"))
await (await import("./data/framework/statLoader.ts")).loadAllStatScopes()
await (await import("./data/framework/statLoader.js")).loadAllStatScopes()
}
await openticket.events.get("onStatScopeLoad").emit([openticket.stats])
await openticket.events.get("afterStatScopesLoaded").emit([openticket.stats])
//load stats
if (openticket.defaults.getDefault("statLoading")){
await (await import("./data/framework/statLoader.ts")).loadAllStats()
await (await import("./data/framework/statLoader.js")).loadAllStats()
}
await openticket.events.get("onStatLoad").emit([openticket.stats])
await openticket.events.get("afterStatsLoaded").emit([openticket.stats])
@@ -697,7 +697,7 @@ const main = async () => {
//load code
openticket.log("Loading code...","system")
if (openticket.defaults.getDefault("codeLoading")){
await (await import("./data/framework/codeLoader.ts")).loadAllCode()
await (await import("./data/framework/codeLoader.js")).loadAllCode()
}
await openticket.events.get("onCodeLoad").emit([openticket.code])
await openticket.events.get("afterCodeLoaded").emit([openticket.code])
@@ -715,7 +715,7 @@ const main = async () => {
//load livestatus sources
openticket.log("Loading livestatus...","system")
if (openticket.defaults.getDefault("liveStatusLoading")){
await (await import("./data/framework/liveStatusLoader.ts")).loadAllLiveStatusSources()
await (await import("./data/framework/liveStatusLoader.js")).loadAllLiveStatusSources()
}
await openticket.events.get("onLiveStatusSourceLoad").emit([openticket.livestatus])
await openticket.events.get("afterLiveStatusSourcesLoaded").emit([openticket.livestatus])
@@ -723,7 +723,7 @@ const main = async () => {
//load startscreen
openticket.log("Loading startscreen...","system")
if (openticket.defaults.getDefault("startScreenLoading")){
await (await import("./data/framework/startScreenLoader.ts")).loadAllStartScreenComponents()
await (await import("./data/framework/startScreenLoader.js")).loadAllStartScreenComponents()
}
await openticket.events.get("onStartScreenLoad").emit([openticket.startscreen])
await openticket.events.get("afterStartScreensLoaded").emit([openticket.startscreen])
+7 -4
View File
@@ -1,14 +1,17 @@
{
"compilerOptions": {
"target": "ES2022",
"rootDir": "./src/",
"rootDirs":[
"./src",
"./plugins"
],
"outDir": "./dist/",
"module": "NodeNext",
"moduleResolution": "NodeNext",
"typeRoots": ["./node_modules/@types","./plugins/*/"],
"noEmit": true,
"allowImportingTsExtensions": true,
"noEmit": false,
"allowImportingTsExtensions": false,
"allowJs": false,
"checkJs": false,
@@ -18,5 +21,5 @@
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true
},
"include": ["./src/*","./src/**/*"]
"include": ["./src/*","./src/**/*","./plugins/*","./plugins/**/*"]
}