From 79957d2429f27e4add61e5158de2a5a7fde8a34a Mon Sep 17 00:00:00 2001 From: Unknown <53575465+System-End@users.noreply.github.com> Date: Tue, 13 May 2025 11:54:08 -0700 Subject: [PATCH] Fallback only applies if no replacmeent specified --- index.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/index.ts b/index.ts index 1fec906..a2b7762 100644 --- a/index.ts +++ b/index.ts @@ -78,6 +78,7 @@ for (const user of users) { const seen = new Set(); const frontingIds = new Set(fronters.map((f) => f.front_status.member)); const triggeredGroups = new Set(); + const replacedGroups = new Set(); for (const f of fronters) { if (excludedMemberIds.has(f.front_status.member)) { @@ -97,7 +98,7 @@ for (const user of users) { const replacementId = groupReplacements[group.toLowerCase()]; if (replacementId) { const repl = allMembers.find((m) => m.id === replacementId); - if (repl && !frontingIds.has(replacementId) && !seen.has(replacementId)) { + if (repl && !seen.has(replacementId)) { final.push({ member: repl.content, front_status: { @@ -107,9 +108,14 @@ for (const user of users) { }, }); seen.add(repl.id); + replacedGroups.add(group); console.log(`Replaced group \"${group}\" with ${repl.content.name}`); } - } else if (!replacementId && fallback && !final.some((f) => f.member.name === fallback.Name)) { + } + } + + for (const group of triggeredGroups) { + if (!replacedGroups.has(group) && fallback && !final.some((f) => f.member.name === fallback.Name)) { final.push({ member: { name: fallback.Name,