Major bugfixes & improvements for v4.1

This commit is contained in:
DJj123dj
2025-11-16 11:23:15 +01:00
parent a89d5c2149
commit da962c6c2e
6 changed files with 23 additions and 12 deletions
+4 -4
View File
@@ -25,14 +25,14 @@
"type": "commonjs", "type": "commonjs",
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"dependencies": { "dependencies": {
"@discordjs/rest": "^2.4.2", "@discordjs/rest": "^2.6.0",
"@types/node": "^22.5.0", "@types/node": "^22.5.0",
"@types/terminal-kit": "^2.5.7", "@types/terminal-kit": "^2.5.7",
"ansis": "^2.3.0", "ansis": "^4.2.0",
"discord.js": "^14.22.1", "discord.js": "^14.24.2",
"formatted-json-stringify": "^1.2.1", "formatted-json-stringify": "^1.2.1",
"terminal-kit": "^3.1.2", "terminal-kit": "^3.1.2",
"typescript": "^5.5.4" "typescript": "^5.9.3"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
+1 -1
View File
@@ -147,7 +147,7 @@ export class ODPlugin extends ODManagerData {
if ((this.enabled && !this.crashed) || force){ if ((this.enabled && !this.crashed) || force){
try{ try{
//import relative plugin directory path (works on windows & unix based systems) //import relative plugin directory path (works on windows & unix based systems)
const pluginPath = nodepath.join("../../../../plugins/",this.getStartFile()) const pluginPath = nodepath.join("../../../../plugins/",this.getStartFile()).replaceAll("\\","/")
await import(pluginPath) await import(pluginPath)
debug.console.log("Plugin \""+this.id.value+"\" loaded successfully!","plugin") debug.console.log("Plugin \""+this.id.value+"\" loaded successfully!","plugin")
this.executed = true this.executed = true
+5 -5
View File
@@ -417,7 +417,7 @@ export class ODCommandResponderInstance {
/**Defer this command. */ /**Defer this command. */
async defer(ephemeral:boolean){ async defer(ephemeral:boolean){
if (this.type != "interaction" || !(this.interaction instanceof discord.ChatInputCommandInteraction)) return false if (this.type != "interaction" || !(this.interaction instanceof discord.ChatInputCommandInteraction)) return false
if (this.interaction.deferred) return false if (this.interaction.deferred || this.interaction.replied) return false
const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : [] const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : []
await this.interaction.deferReply({flags:msgFlags}) await this.interaction.deferReply({flags:msgFlags})
this.didReply = true this.didReply = true
@@ -589,7 +589,7 @@ export class ODButtonResponderInstance {
} }
/**Defer this button. */ /**Defer this button. */
async defer(type:"reply"|"update", ephemeral:boolean){ async defer(type:"reply"|"update", ephemeral:boolean){
if (this.interaction.deferred) return false if (this.interaction.deferred || this.interaction.replied) return false
if (type == "reply"){ if (type == "reply"){
const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : [] const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : []
await this.interaction.deferReply({flags:msgFlags}) await this.interaction.deferReply({flags:msgFlags})
@@ -877,7 +877,7 @@ export class ODDropdownResponderInstance {
} }
/**Defer this dropdown. */ /**Defer this dropdown. */
async defer(type:"reply"|"update", ephemeral:boolean){ async defer(type:"reply"|"update", ephemeral:boolean){
if (this.interaction.deferred) return false if (this.interaction.deferred || this.interaction.replied) return false
if (type == "reply"){ if (type == "reply"){
const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : [] const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : []
await this.interaction.deferReply({flags:msgFlags}) await this.interaction.deferReply({flags:msgFlags})
@@ -1096,7 +1096,7 @@ export class ODModalResponderInstance {
} }
/**Defer this modal. */ /**Defer this modal. */
async defer(type:"reply"|"update", ephemeral:boolean){ async defer(type:"reply"|"update", ephemeral:boolean){
if (this.interaction.deferred) return false if (this.interaction.deferred || this.interaction.replied) return false
if (type == "reply"){ if (type == "reply"){
const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : [] const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : []
await this.interaction.deferReply({flags:msgFlags}) await this.interaction.deferReply({flags:msgFlags})
@@ -1251,7 +1251,7 @@ export class ODContextMenuResponderInstance {
} }
/**Defer this context menu. */ /**Defer this context menu. */
async defer(type:"reply", ephemeral:boolean){ async defer(type:"reply", ephemeral:boolean){
if (this.interaction.deferred) return false if (this.interaction.deferred || this.interaction.replied) return false
if (type == "reply"){ if (type == "reply"){
const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : [] const msgFlags: number[] = ephemeral ? [discord.MessageFlags.Ephemeral] : []
await this.interaction.deferReply({flags:msgFlags}) await this.interaction.deferReply({flags:msgFlags})
+6 -1
View File
@@ -575,6 +575,11 @@ async function renderQuickSetupTicketCount(backFn:() => api.ODPromiseVoid){
"3️⃣ 3 Ticket Options", "3️⃣ 3 Ticket Options",
"4️⃣ 4 Ticket Options", "4️⃣ 4 Ticket Options",
"5️⃣ 5 Ticket Options", "5️⃣ 5 Ticket Options",
"6️⃣ 6 Ticket Options",
"7️⃣ 7 Ticket Options",
"8️⃣ 8 Ticket Options",
"9️⃣ 9 Ticket Options",
"🔟 10 Ticket Options",
],{ ],{
leftPadding:"> ", leftPadding:"> ",
style:terminal.cyan, style:terminal.cyan,
@@ -1208,7 +1213,7 @@ async function saveQuickSetupConfig(){
_INFO:{ _INFO:{
support:"https://otdocs.dj-dj.be", support:"https://otdocs.dj-dj.be",
discord:"https://discord.dj-dj.be", discord:"https://discord.dj-dj.be",
version:"open-ticket-v4.0.6" version:"open-ticket-"+opendiscord.versions.get("opendiscord:version").toString()
}, },
token:quickSetupStorage.client?.token ?? "<unknown-token>", token:quickSetupStorage.client?.token ?? "<unknown-token>",
+2
View File
@@ -47,8 +47,10 @@ opendiscord.debug.debug("Using Node.js "+process.version+"!")
try{ try{
const packageJson = JSON.parse(fs.readFileSync("./package.json").toString()) const packageJson = JSON.parse(fs.readFileSync("./package.json").toString())
opendiscord.debug.debug("Using discord.js "+packageJson.dependencies["discord.js"]+"!") opendiscord.debug.debug("Using discord.js "+packageJson.dependencies["discord.js"]+"!")
opendiscord.debug.debug("Using @discordjs/rest "+packageJson.dependencies["@discordjs/rest"]+"!")
opendiscord.debug.debug("Using ansis "+packageJson.dependencies["ansis"]+"!") opendiscord.debug.debug("Using ansis "+packageJson.dependencies["ansis"]+"!")
opendiscord.debug.debug("Using formatted-json-stringify "+packageJson.dependencies["formatted-json-stringify"]+"!") opendiscord.debug.debug("Using formatted-json-stringify "+packageJson.dependencies["formatted-json-stringify"]+"!")
opendiscord.debug.debug("Using terminal-kit "+packageJson.dependencies["terminal-kit"]+"!")
opendiscord.debug.debug("Using typescript "+packageJson.dependencies["typescript"]+"!") opendiscord.debug.debug("Using typescript "+packageJson.dependencies["typescript"]+"!")
}catch{ }catch{
opendiscord.debug.debug("Failed to fetch module versions!") opendiscord.debug.debug("Failed to fetch module versions!")
+5 -1
View File
@@ -134,5 +134,9 @@ export const migrations = [
ticketDatabase.set("opendiscord:ticket",ticket.key,ticketData) ticketDatabase.set("opendiscord:ticket",ticket.key,ticketData)
} }
}) }),
//MIGRATE TO v4.1.1
new utilities.ODVersionMigration(api.ODVersion.fromString("opendiscord:version","v4.1.1"),async () => {},async () => {}),
] ]