diff --git a/src/BaseClient/ClientHelperModules/mod.ts b/src/BaseClient/ClientHelperModules/mod.ts index 32827519c..64547236b 100644 --- a/src/BaseClient/ClientHelperModules/mod.ts +++ b/src/BaseClient/ClientHelperModules/mod.ts @@ -140,10 +140,7 @@ export default async ( return; } - if (typeof action !== 'boolean') { - type = action.type as T; - } - + if (typeof action !== 'boolean') type = action.type as T; if (type === CT.ModTypes.StrikeAdd) return; runBasics2(typeof action === 'boolean' ? options : action.options, message, language, type, cmd); diff --git a/src/BaseClient/ClientHelperModules/mod/mod/strikeAdd.ts b/src/BaseClient/ClientHelperModules/mod/mod/strikeAdd.ts index 000e3776a..2809b24b3 100644 --- a/src/BaseClient/ClientHelperModules/mod/mod/strikeAdd.ts +++ b/src/BaseClient/ClientHelperModules/mod/mod/strikeAdd.ts @@ -23,7 +23,7 @@ export default async ( language: CT.Language, message: ModTypes.ResponseMessage, cmd: ModTypes.CmdType, -): Promise<{ success: Promise | false; type: CT.ModTypes; options: CT.ModOptions }> => { +): Promise<{ success: boolean; type: CT.ModTypes; options: CT.ModOptions }> => { const options = rawOpts as CT.ModOptions; const strike = await getStrike(options.target, options.guild); @@ -52,7 +52,7 @@ export default async ( }; return { - success: banAdd(opts, language, message, cmd), + success: await banAdd(opts, language, message, cmd), type: CT.ModTypes.BanAdd, options: opts, }; @@ -65,31 +65,40 @@ export default async ( const opts = { ...options, - deleteMessageSeconds: - Number(strike.deletemessageseconds) > 604800 ? 604800 : Number(strike.deletemessageseconds), channel: cmd.channel.isThread() ? (cmd.channel.parent as NonNullable) : cmd.channel, }; return { - success: channelBanAdd(opts, language, message, cmd), + success: await channelBanAdd(opts, language, message, cmd), type: CT.ModTypes.ChannelBanAdd, options: opts, }; } case Prisma.$Enums.AutoPunishPunishmentType.kick: return { - success: kickAdd(options, language, message, cmd), + success: await kickAdd(options, language, message, cmd), type: CT.ModTypes.KickAdd, options, }; - case Prisma.$Enums.AutoPunishPunishmentType.tempmute: + case Prisma.$Enums.AutoPunishPunishmentType.tempmute: { + const opts = { + ...options, + duration: Number(strike.duration) * 1000, + }; + return { - success: tempMuteAdd({ ...options, duration: Number(strike.duration) }, language, message, cmd), + success: await tempMuteAdd( + { ...options, duration: Number(strike.duration) }, + language, + message, + cmd, + ), type: CT.ModTypes.TempMuteAdd, - options, + options: opts, }; + } case Prisma.$Enums.AutoPunishPunishmentType.tempchannelban: { if (!cmd.channel) { error(cmd.guild, new Error('No channel found in strikeAdd')); @@ -105,13 +114,17 @@ export default async ( }; return { - success: tempChannelBanAdd(opts, language, message, cmd), + success: await tempChannelBanAdd(opts, language, message, cmd), type: CT.ModTypes.TempChannelBanAdd, options: opts, }; } case Prisma.$Enums.AutoPunishPunishmentType.warn: - return { success: warnAdd(options, language, message, cmd), type: CT.ModTypes.WarnAdd, options }; + return { + success: await warnAdd(options, language, message, cmd), + type: CT.ModTypes.WarnAdd, + options, + }; case Prisma.$Enums.AutoPunishPunishmentType.tempban: { const opts = { ...options, @@ -121,7 +134,7 @@ export default async ( }; return { - success: tempBanAdd(opts, language, message, cmd), + success: await tempBanAdd(opts, language, message, cmd), type: CT.ModTypes.TempBanAdd, options: opts, }; @@ -134,14 +147,14 @@ export default async ( }; return { - success: softBanAdd(opts, language, message, cmd), + success: await softBanAdd(opts, language, message, cmd), type: CT.ModTypes.SoftBanAdd, options: opts, }; } default: { return { - success: softWarnAdd(), + success: await softWarnAdd(), type: CT.ModTypes.SoftWarnAdd, options, }; diff --git a/src/BaseClient/ClientHelperModules/mod/mod/tempMuteAdd.ts b/src/BaseClient/ClientHelperModules/mod/mod/tempMuteAdd.ts index 4628412cd..544afd6c7 100644 --- a/src/BaseClient/ClientHelperModules/mod/mod/tempMuteAdd.ts +++ b/src/BaseClient/ClientHelperModules/mod/mod/tempMuteAdd.ts @@ -38,8 +38,10 @@ export default async ( actionAlreadyApplied(cmd, message, options.target, language, type); return false; } + return true; } + const { targetMember } = memberRes; const me = await getBotMemberFromGuild(options.guild);