aboutsummaryrefslogtreecommitdiff
path: root/src/utils
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils')
-rw-r--r--src/utils/loading-message.ts20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/utils/loading-message.ts b/src/utils/loading-message.ts
index 115aff2..95c7a2f 100644
--- a/src/utils/loading-message.ts
+++ b/src/utils/loading-message.ts
@@ -64,15 +64,17 @@ export default class {
this.isStopped = true;
- if (str) {
- if (wasAlreadyStopped) {
- await this.msg.edit(str);
- } else {
- await Promise.all([this.msg.reactions.removeAll(), this.msg.edit(str)]);
- }
- } else {
- await this.msg.reactions.removeAll();
- }
+ const editPromise = str ? this.msg.edit(str) : null;
+ const reactPromise = str && !wasAlreadyStopped ? (async () => {
+ await this.msg.fetch();
+ await Promise.all(this.msg.reactions.cache.map(async react => {
+ if (react.me) {
+ await react.users.remove(this.msg.client.user!.id);
+ }
+ }));
+ })() : null;
+
+ await Promise.all([editPromise, reactPromise]);
return this.msg;
}