cordo 1.9.0 → 1.9.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/api.d.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  import { InteractionApplicationCommandCallbackData } from './types/custom';
2
2
  import { GenericInteraction } from './types/base';
3
+ import { InteractionCallbackFollowup } from './index';
3
4
  export default class CordoAPI {
4
- static interactionCallback(i: GenericInteraction, type: number, data?: InteractionApplicationCommandCallbackData, contextId?: string, useRaw?: boolean): void;
5
+ static interactionCallback(i: GenericInteraction, type: number, data?: InteractionApplicationCommandCallbackData, contextId?: string, useRaw?: boolean): Promise<InteractionCallbackFollowup>;
6
+ private static handleCallbackResponse;
5
7
  /**
6
8
  * Transforms the shorthand way of writing into proper discord api compatible objects
7
9
  */
package/dist/api.js CHANGED
@@ -3,40 +3,57 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const axios_1 = require("axios");
4
4
  const permission_strings_1 = require("./lib/permission-strings");
5
5
  const const_1 = require("./types/const");
6
+ const const_2 = require("./types/const");
6
7
  const index_1 = require("./index");
7
8
  class CordoAPI {
8
- static interactionCallback(i, type, data, contextId, useRaw) {
9
+ static async interactionCallback(i, type, data, contextId, useRaw) {
9
10
  if (!useRaw)
10
11
  CordoAPI.normaliseData(data, i, contextId);
11
12
  if (data?.components)
12
13
  i._answerComponents = data.components;
13
14
  if (!i._answered) {
14
15
  i._answered = true;
15
- axios_1.default
16
- .post(`https://discord.com/api/v8/interactions/${i.id}/${i.token}/callback`, { type, data }, { validateStatus: null })
17
- .then((res) => {
18
- if (index_1.default._data.middlewares.apiResponseHandler) {
19
- index_1.default._data.middlewares.apiResponseHandler(res);
16
+ const res = await axios_1.default.post(`https://discord.com/api/v8/interactions/${i.id}/${i.token}/callback`, { type, data }, { validateStatus: null });
17
+ CordoAPI.handleCallbackResponse(res, type, data);
18
+ }
19
+ else {
20
+ switch (type) {
21
+ case const_2.InteractionCallbackType.PONG: break;
22
+ case const_2.InteractionCallbackType.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE: break;
23
+ case const_2.InteractionCallbackType.DEFERRED_UPDATE_MESSAGE: break;
24
+ case const_2.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE: {
25
+ const res = await axios_1.default.post(`https://discord.com/api/v8/webhooks/${index_1.default._data.config.botId}/${i.token}`, data, { validateStatus: null });
26
+ CordoAPI.handleCallbackResponse(res, type, data);
27
+ break;
20
28
  }
21
- else if (res.status >= 300) {
22
- index_1.default._data.logger.warn('Interaction callback failed with error:');
23
- index_1.default._data.logger.warn(JSON.stringify(res.data, null, 2));
24
- index_1.default._data.logger.warn('Request payload:');
25
- index_1.default._data.logger.warn(JSON.stringify({ type, data }, null, 2));
29
+ case const_2.InteractionCallbackType.UPDATE_MESSAGE: {
30
+ const res = await axios_1.default.patch(`https://discord.com/api/v8/webhooks/${index_1.default._data.config.botId}/${i.token}/messages/@original`, data, { validateStatus: null });
31
+ CordoAPI.handleCallbackResponse(res, type, data);
32
+ break;
26
33
  }
27
- });
28
- return;
34
+ }
29
35
  }
30
- switch (type) {
31
- case const_1.InteractionCallbackType.PONG: break;
32
- case const_1.InteractionCallbackType.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE: break;
33
- case const_1.InteractionCallbackType.DEFERRED_UPDATE_MESSAGE: break;
34
- case const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE:
35
- axios_1.default.post(`https://discord.com/api/v8/webhooks/${index_1.default._data.config.botId}/${i.token}`, data);
36
- break;
37
- case const_1.InteractionCallbackType.UPDATE_MESSAGE:
38
- axios_1.default.patch(`https://discord.com/api/v8/webhooks/${index_1.default._data.config.botId}/${i.token}/messages/@original`, data);
39
- break;
36
+ return {
37
+ async getMessage() {
38
+ const res = await axios_1.default.get(`https://discord.com/api/v8/webhooks/${index_1.default._data.config.botId}/${i.token}/messages/@original`, { validateStatus: null });
39
+ if (res.status !== 200)
40
+ return null;
41
+ return res.data;
42
+ },
43
+ edit(editData, editUseRaw = useRaw) {
44
+ CordoAPI.interactionCallback(i, const_2.InteractionCallbackType.UPDATE_MESSAGE, editData, contextId, editUseRaw);
45
+ }
46
+ };
47
+ }
48
+ static handleCallbackResponse(res, type, data) {
49
+ if (index_1.default._data.middlewares.apiResponseHandler) {
50
+ index_1.default._data.middlewares.apiResponseHandler(res);
51
+ }
52
+ else if (res.status >= 300) {
53
+ index_1.default._data.logger.warn('Interaction callback failed with error:');
54
+ index_1.default._data.logger.warn(JSON.stringify(res.data, null, 2));
55
+ index_1.default._data.logger.warn('Request payload:');
56
+ index_1.default._data.logger.warn(JSON.stringify({ type, data }, null, 2));
40
57
  }
41
58
  }
42
59
  /**
@@ -47,6 +64,7 @@ class CordoAPI {
47
64
  return;
48
65
  // explicitly not using this. in this function due to unwanted side-effects in lambda functions
49
66
  index_1.default._data.middlewares.interactionCallback.forEach(f => f(data, i.guildData));
67
+ const isEmphemeral = (data.flags & const_1.InteractionResponseFlags.EPHEMERAL) !== 0;
50
68
  if (!data.content)
51
69
  data.content = '';
52
70
  if (data.description || data.title) {
@@ -63,36 +81,43 @@ class CordoAPI {
63
81
  delete data.description;
64
82
  delete data.title;
65
83
  }
66
- if (data.components?.length && data.components[0].type !== const_1.ComponentType.ROW) {
84
+ if (data.components?.length && data.components[0].type !== const_2.ComponentType.ROW) {
67
85
  const rows = [];
68
86
  let newlineFlag = true;
69
87
  for (const comp of data.components) {
70
88
  if (comp.visible === false)
71
89
  continue; // === false to not catch any null or undefined
72
- if (comp.type !== const_1.ComponentType.LINE_BREAK && !!comp.custom_id) {
90
+ if (comp.type !== const_2.ComponentType.LINE_BREAK && !!comp.custom_id) {
91
+ const hasAccessEveryoneFlag = comp.flags?.includes(const_2.InteractionComponentFlag.ACCESS_EVERYONE);
92
+ if (isEmphemeral && !hasAccessEveryoneFlag) {
93
+ if (!comp.flags)
94
+ comp.flags = [];
95
+ comp.flags.push(const_2.InteractionComponentFlag.ACCESS_EVERYONE);
96
+ }
97
+ ;
73
98
  comp.custom_id = `${contextId ?? ''}::${comp.custom_id}:${comp.flags?.join('') ?? ''}`;
74
- if (comp.flags?.length && !!i.member && !comp.flags.includes(const_1.InteractionComponentFlag.ACCESS_EVERYONE)) {
99
+ if (comp.flags?.length && !!i.member && !hasAccessEveryoneFlag) {
75
100
  const perms = BigInt(i.member.permissions);
76
- if (comp.flags.includes(const_1.InteractionComponentFlag.ACCESS_ADMIN) && !permission_strings_1.default.containsAdmin(perms)) {
77
- if (comp.flags.includes(const_1.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
101
+ if (comp.flags.includes(const_2.InteractionComponentFlag.ACCESS_ADMIN) && !permission_strings_1.default.containsAdmin(perms)) {
102
+ if (comp.flags.includes(const_2.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
78
103
  comp.type = null;
79
104
  else
80
105
  comp.disabled = true;
81
106
  }
82
- else if (comp.flags.includes(const_1.InteractionComponentFlag.ACCESS_MANAGE_SERVER) && !permission_strings_1.default.containsManageServer(perms)) {
83
- if (comp.flags.includes(const_1.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
107
+ else if (comp.flags.includes(const_2.InteractionComponentFlag.ACCESS_MANAGE_SERVER) && !permission_strings_1.default.containsManageServer(perms)) {
108
+ if (comp.flags.includes(const_2.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
84
109
  comp.type = null;
85
110
  else
86
111
  comp.disabled = true;
87
112
  }
88
- else if (comp.flags.includes(const_1.InteractionComponentFlag.ACCESS_MANAGE_MESSAGES) && !permission_strings_1.default.containsManageMessages(perms)) {
89
- if (comp.flags.includes(const_1.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
113
+ else if (comp.flags.includes(const_2.InteractionComponentFlag.ACCESS_MANAGE_MESSAGES) && !permission_strings_1.default.containsManageMessages(perms)) {
114
+ if (comp.flags.includes(const_2.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
90
115
  comp.type = null;
91
116
  else
92
117
  comp.disabled = true;
93
118
  }
94
- else if (comp.flags.includes(const_1.InteractionComponentFlag.ACCESS_BOT_ADMIN) && !index_1.default._data.isBotOwner(i.user.id)) {
95
- if (comp.flags.includes(const_1.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
119
+ else if (comp.flags.includes(const_2.InteractionComponentFlag.ACCESS_BOT_ADMIN) && !index_1.default._data.isBotOwner(i.user.id)) {
120
+ if (comp.flags.includes(const_2.InteractionComponentFlag.HIDE_IF_NOT_ALLOWED))
96
121
  comp.type = null;
97
122
  else
98
123
  comp.disabled = true;
@@ -101,12 +126,12 @@ class CordoAPI {
101
126
  delete comp.flags;
102
127
  }
103
128
  switch (comp.type) {
104
- case const_1.ComponentType.LINE_BREAK: {
129
+ case const_2.ComponentType.LINE_BREAK: {
105
130
  if (rows[rows.length - 1].length)
106
131
  newlineFlag = true;
107
132
  break;
108
133
  }
109
- case const_1.ComponentType.BUTTON: {
134
+ case const_2.ComponentType.BUTTON: {
110
135
  if (newlineFlag)
111
136
  rows.push([]);
112
137
  newlineFlag = false;
@@ -117,7 +142,7 @@ class CordoAPI {
117
142
  newlineFlag = true;
118
143
  break;
119
144
  }
120
- case const_1.ComponentType.SELECT: {
145
+ case const_2.ComponentType.SELECT: {
121
146
  if (comp.options?.length > 50)
122
147
  comp.options.length = 50;
123
148
  rows.push([comp]);
@@ -125,7 +150,7 @@ class CordoAPI {
125
150
  }
126
151
  }
127
152
  }
128
- data.components = rows.map(c => ({ type: const_1.ComponentType.ROW, components: c }));
153
+ data.components = rows.map(c => ({ type: const_2.ComponentType.ROW, components: c }));
129
154
  }
130
155
  }
131
156
  }
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -257,7 +257,7 @@ class Cordo {
257
257
  i.data.flags = flagsRaw?.split('') ?? [];
258
258
  if ((await Cordo.componentPermissionCheck(i)) !== 'passed')
259
259
  return;
260
- const context = replies_1.default.findActiveInteractionReplyContext(contextId);
260
+ const context = replies_1.default.activeInteractionReplyContexts.get(contextId);
261
261
  let regexSearchResult;
262
262
  if (context?.handlers?.[i.data.custom_id]) {
263
263
  context.handlers?.[i.data.custom_id](replies_1.default.buildReplyableComponentInteraction(i));
@@ -291,6 +291,7 @@ class Cordo {
291
291
  }
292
292
  else if (context?.onInteraction === 'removeTimeout') {
293
293
  clearTimeout(context.timeoutRunner);
294
+ context.timeoutRunFunc(true);
294
295
  }
295
296
  }
296
297
  static interactionNotPermitted(i, text) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/replies.d.ts CHANGED
@@ -1,9 +1,8 @@
1
1
  import { InteractionReplyContext, InteractionReplyStateLevelThree, InteractionReplyStateLevelTwo } from './types/custom';
2
2
  import { CommandInteraction, ComponentInteraction, GenericInteraction, ReplyableCommandInteraction, ReplyableComponentInteraction, SlotedContext } from './types/base';
3
3
  export default class CordoReplies {
4
- static readonly activeInteractionReplyContexts: InteractionReplyContext[];
5
- static findActiveInteractionReplyContext(id: string): InteractionReplyContext | undefined;
6
- static newInteractionReplyContext(i: GenericInteraction): InteractionReplyContext;
4
+ static readonly activeInteractionReplyContexts: Map<string, InteractionReplyContext>;
5
+ static newInteractionReplyContext(i: GenericInteraction, customId?: string): InteractionReplyContext;
7
6
  static buildReplyableCommandInteraction(i: CommandInteraction): ReplyableCommandInteraction;
8
7
  static buildReplyableComponentInteraction(i: ComponentInteraction, slotContext?: SlotedContext): ReplyableComponentInteraction;
9
8
  private static getJanitor;
package/dist/replies.js CHANGED
@@ -5,15 +5,9 @@ const api_1 = require("./api");
5
5
  const index_1 = require("./index");
6
6
  class CordoReplies {
7
7
  //
8
- static findActiveInteractionReplyContext(id) {
9
- if (!id)
10
- return null;
11
- return CordoReplies.activeInteractionReplyContexts.find(c => c.id === id);
12
- }
13
- //
14
- static newInteractionReplyContext(i) {
15
- return {
16
- id: i.id,
8
+ static newInteractionReplyContext(i, customId) {
9
+ const context = {
10
+ id: customId ?? i.id,
17
11
  interaction: i,
18
12
  timeout: -1,
19
13
  timeoutRunFunc: null,
@@ -22,21 +16,22 @@ class CordoReplies {
22
16
  handlers: {},
23
17
  slottedHandlers: []
24
18
  };
19
+ this.activeInteractionReplyContexts.set(context.id, context);
20
+ setTimeout((id) => CordoReplies.activeInteractionReplyContexts.delete(id), 15 * 60e3, context.id);
21
+ return context;
25
22
  }
26
23
  static buildReplyableCommandInteraction(i) {
27
24
  return {
28
25
  ...i,
29
26
  defer(privately = false) {
30
- api_1.default.interactionCallback(i, const_1.InteractionCallbackType.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, privately ? { flags: const_1.InteractionResponseFlags.EPHEMERAL } : null);
27
+ return api_1.default.interactionCallback(i, const_1.InteractionCallbackType.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, privately ? { flags: const_1.InteractionResponseFlags.EPHEMERAL } : null);
31
28
  },
32
29
  reply(data) {
33
- api_1.default.interactionCallback(i, const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data);
30
+ return api_1.default.interactionCallback(i, const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data);
34
31
  },
35
32
  replyInteractive(data) {
36
33
  const context = CordoReplies.newInteractionReplyContext(i);
37
- CordoReplies.activeInteractionReplyContexts.push(context);
38
34
  api_1.default.interactionCallback(i, const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data, context.id);
39
- setTimeout(() => CordoReplies.activeInteractionReplyContexts.splice(0, 1), 15 * 60e3);
40
35
  return CordoReplies.getLevelTwoReplyState(context);
41
36
  },
42
37
  replyPrivately(data) {
@@ -65,27 +60,31 @@ class CordoReplies {
65
60
  api_1.default.interactionCallback(i, const_1.InteractionCallbackType.DEFERRED_UPDATE_MESSAGE);
66
61
  },
67
62
  reply(data) {
68
- api_1.default.interactionCallback(i, const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data);
63
+ return api_1.default.interactionCallback(i, const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data);
69
64
  },
70
65
  replyInteractive(data) {
71
66
  const context = CordoReplies.newInteractionReplyContext(i);
72
- CordoReplies.activeInteractionReplyContexts.push(context);
73
67
  api_1.default.interactionCallback(i, const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data, context.id);
74
- setTimeout(() => CordoReplies.activeInteractionReplyContexts.splice(0, 1), 15 * 60e3);
75
68
  return CordoReplies.getLevelTwoReplyState(context);
76
69
  },
77
70
  replyPrivately(data) {
78
71
  api_1.default.interactionCallback(i, const_1.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, { ...data, flags: const_1.InteractionResponseFlags.EPHEMERAL });
79
72
  },
80
73
  edit(data) {
81
- api_1.default.interactionCallback(i, const_1.InteractionCallbackType.UPDATE_MESSAGE, data, CordoReplies.findActiveInteractionReplyContext(i.message.interaction?.id)?.id);
74
+ api_1.default.interactionCallback(i, const_1.InteractionCallbackType.UPDATE_MESSAGE, data, CordoReplies.activeInteractionReplyContexts.get(i.message.interaction?.id)?.id);
82
75
  },
83
76
  editInteractive(data) {
84
- const context = CordoReplies.newInteractionReplyContext(i);
85
- CordoReplies.activeInteractionReplyContexts.push(context);
86
- api_1.default.interactionCallback(i, const_1.InteractionCallbackType.UPDATE_MESSAGE, data, context.id);
87
- setTimeout(() => CordoReplies.activeInteractionReplyContexts.splice(0, 1), 15 * 60e3);
88
- return CordoReplies.getLevelTwoReplyState(context);
77
+ const isAlreadyInteractive = CordoReplies.activeInteractionReplyContexts.has(i.message?.interaction?.id);
78
+ if (isAlreadyInteractive) {
79
+ const context = CordoReplies.activeInteractionReplyContexts.get(i.message?.interaction?.id);
80
+ api_1.default.interactionCallback(i, const_1.InteractionCallbackType.UPDATE_MESSAGE, data, context.id);
81
+ return CordoReplies.getLevelTwoReplyState(context);
82
+ }
83
+ else {
84
+ const context = CordoReplies.newInteractionReplyContext(i);
85
+ api_1.default.interactionCallback(i, const_1.InteractionCallbackType.UPDATE_MESSAGE, data, context.id);
86
+ return CordoReplies.getLevelTwoReplyState(context);
87
+ }
89
88
  },
90
89
  // disableComponents() { TODO
91
90
  // API.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, {
@@ -157,8 +156,10 @@ class CordoReplies {
157
156
  }
158
157
  context.timeout = timeout;
159
158
  context.onInteraction = options?.onInteraction;
160
- context.timeoutRunFunc = () => {
161
- janitor(CordoReplies.getJanitor(context));
159
+ context.timeoutRunFunc = (skipJanitor = false) => {
160
+ CordoReplies.activeInteractionReplyContexts.delete(context.id);
161
+ if (!skipJanitor)
162
+ janitor(CordoReplies.getJanitor(context));
162
163
  delete context.handlers;
163
164
  delete context.slottedHandlers;
164
165
  context.handlers = null;
@@ -204,5 +205,6 @@ class CordoReplies {
204
205
  }
205
206
  exports.default = CordoReplies;
206
207
  /* TODO @metrics */
207
- CordoReplies.activeInteractionReplyContexts = [];
208
+ // public static readonly activeInteractionReplyContexts: InteractionReplyContext[] = []
209
+ CordoReplies.activeInteractionReplyContexts = new Map();
208
210
  //# sourceMappingURL=replies.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"replies.js","sourceRoot":"","sources":["../src/replies.ts"],"names":[],"mappings":";;AACA,yCAAiF;AAEjF,+BAA4B;AAC5B,mCAA2B;AAG3B,MAAqB,YAAY;IAK/B,EAAE;IAEK,MAAM,CAAC,iCAAiC,CAAC,EAAU;QACxD,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAA;QACpB,OAAO,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,CAAC;IAED,EAAE;IAEK,MAAM,CAAC,0BAA0B,CAAC,CAAqB;QAC5D,OAAO;YACL,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,WAAW,EAAE,CAAC;YACd,OAAO,EAAE,CAAC,CAAC;YACX,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,WAAW;YAC1B,QAAQ,EAAE,EAAE;YACZ,eAAe,EAAE,EAAE;SACpB,CAAA;IACH,CAAC;IACM,MAAM,CAAC,gCAAgC,CAAC,CAAqB;QAClE,OAAO;YACL,GAAG,CAAC;YACJ,KAAK,CAAC,SAAS,GAAG,KAAK;gBACrB,aAAQ,CAAC,mBAAmB,CAC1B,CAAC,EACD,+BAAuB,CAAC,oCAAoC,EAC5D,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,gCAAwB,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CACjE,CAAA;YACH,CAAC;YACD,KAAK,CAAC,IAA+C;gBACnD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAA;YAC5F,CAAC;YACD,gBAAgB,CAAC,IAA+C;gBAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAA;gBAC1D,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACzD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBACtG,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;gBACrF,OAAO,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACpD,CAAC;YACD,cAAc,CAAC,IAA+C;gBAC5D,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,gCAAwB,CAAC,SAAS,EAAE,CAAC,CAAA;YAC9I,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,KAAc,EAAE,GAAG,IAAS;gBACtC,IAAI,CAAC,KAAK;oBAAE,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;gBAE/B,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAChC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,sCAAsC,KAAK,EAAE,CAAC,CAAA;oBAC5F,OAAM;iBACP;gBAED,IAAI,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;gBAC/C,IAAK,IAAY,CAAC,IAAI;oBAAE,IAAI,GAAG,MAAM,IAAI,CAAA;gBACzC,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAiD,CAAC,CAAA;YACzI,CAAC;SACF,CAAA;IACH,CAAC;IAEM,MAAM,CAAC,kCAAkC,CAAC,CAAuB,EAAE,WAA2B;QACnG,IAAI,WAAW;YAAG,CAA0C,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;QACxF,OAAO;YACL,GAAG,CAAC;YACJ,GAAG;gBACD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,uBAAuB,CAAC,CAAA;YAClF,CAAC;YACD,KAAK,CAAC,IAA+C;gBACnD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAA;YAC5F,CAAC;YACD,gBAAgB,CAAC,IAA+C;gBAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAA;gBAC1D,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACzD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBACtG,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;gBACrF,OAAO,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACpD,CAAC;YACD,cAAc,CAAC,IAA+C;gBAC5D,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,gCAAwB,CAAC,SAAS,EAAE,CAAC,CAAA;YAC9I,CAAC;YACD,IAAI,CAAC,IAA+C;gBAClD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,EAAE,YAAY,CAAC,iCAAiC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;YAC9J,CAAC;YACD,eAAe,CAAC,IAA+C;gBAC7D,MAAM,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAA;gBAC1D,YAAY,CAAC,8BAA8B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACzD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBACzF,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;gBACrF,OAAO,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACpD,CAAC;YACD,6BAA6B;YAC7B,yEAAyE;YACzE,uCAAuC;YACvC,OAAO;YACP,KAAK;YACL,gBAAgB;gBACd,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;YAC7F,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,KAAc,EAAE,GAAG,IAAS;gBACtC,IAAI,CAAC,KAAK;oBAAE,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;gBAEpC,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAChC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,sCAAsC,KAAK,EAAE,CAAC,CAAA;oBACnG,OAAM;iBACP;gBAED,IAAI,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;gBAC/C,IAAK,IAAY,CAAC,IAAI;oBAAE,IAAI,GAAG,MAAM,IAAI,CAAA;gBACzC,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAiD,CAAC,CAAA;YAC5H,CAAC;SACF,CAAA;IACH,CAAC;IAED,EAAE;IAEM,MAAM,CAAC,UAAU,CAAC,OAAgC;QACxD,OAAO;YACL,IAAI,CAAC,IAA+C;gBAClD,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;YACjG,CAAC;YACD,gBAAgB;gBACd,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;YAC/G,CAAC;YACD,iBAAiB;gBACf,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE;oBACxF,UAAU,EAAE,CAAE,OAAO,CAAC,WAAW,CAAC,iBAAyB,IAAI,EAAE,CAAC;yBAC/D,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACX,GAAG,GAAG;wBACN,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;4BACnC,GAAG,CAAC;4BACJ,QAAQ,EAAE,IAAI;yBACf,CAAC,CAAC;qBACJ,CAAC,CAAC;iBACN,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;YAChB,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,KAAc,EAAE,GAAG,IAAS;gBACtC,IAAI,CAAC,KAAK;oBAAE,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAA;gBAE1C,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAChC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAA;oBAC7E,OAAM;iBACP;gBAED,IAAI,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;gBACjE,IAAK,IAAY,CAAC,IAAI;oBAAE,IAAI,GAAG,MAAM,IAAI,CAAA;gBACzC,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAiD,CAAC,CAAA;YAC9I,CAAC;SACF,CAAA;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,qBAAqB,CAAC,OAAgC;QACnE,OAAO;YACL,QAAQ,EAAE,OAAO;YACjB,WAAW,CAAC,OAAe,EAAE,OAA0C,EAAE,OAAwC;gBAC/G,IAAI,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE;oBAC5B,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAA;oBACjF,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;iBACzB;gBAED,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;gBACzB,OAAO,CAAC,aAAa,GAAG,OAAO,EAAE,aAAa,CAAA;gBAC9C,OAAO,CAAC,cAAc,GAAG,GAAG,EAAE;oBAC5B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;oBACzC,OAAO,OAAO,CAAC,QAAQ,CAAA;oBACvB,OAAO,OAAO,CAAC,eAAe,CAAA;oBAC9B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAA;oBACvB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAA;gBAChC,CAAC,CAAA;gBACD,OAAO,CAAC,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;gBACnE,OAAO,YAAY,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;YACtD,CAAC;SACF,CAAA;IACH,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,uBAAuB,CAAC,OAAgC;QACpE,MAAM,KAAK,GAAoC;YAC7C,QAAQ,EAAE,OAAO;YACjB,EAAE,CAAC,QAAgB,EAAE,OAAoC;gBACvD,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAAE,OAAM,CAAC,kDAAkD;gBAChF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAA;gBACpC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBAC1B,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC;wBAC3B,EAAE,EAAE,QAAQ;wBACZ,KAAK,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;wBACtE,OAAO;qBACR,CAAC,CAAA;iBACH;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YACD,IAAI,CAAC,IAA+C;gBAClD,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;YACjG,CAAC;YACD,QAAQ,CAAC,IAA+C;gBACtD,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAA;YAC9G,CAAC;YACD,cAAc;gBACZ,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;gBACnC,OAAO,CAAC,cAAc,EAAE,CAAA;YAC1B,CAAC;SACF,CAAA;QACD,OAAO,KAAK,CAAA;IACd,CAAC;;AAnNH,+BAqNC;AAnNC,mBAAmB;AACI,2CAA8B,GAA8B,EAAE,CAAA"}
1
+ {"version":3,"file":"replies.js","sourceRoot":"","sources":["../src/replies.ts"],"names":[],"mappings":";;AACA,yCAAiF;AAEjF,+BAA4B;AAC5B,mCAA2B;AAG3B,MAAqB,YAAY;IAM/B,EAAE;IAEK,MAAM,CAAC,0BAA0B,CAAC,CAAqB,EAAE,QAAiB;QAC/E,MAAM,OAAO,GAA4B;YACvC,EAAE,EAAE,QAAQ,IAAI,CAAC,CAAC,EAAE;YACpB,WAAW,EAAE,CAAC;YACd,OAAO,EAAE,CAAC,CAAC;YACX,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,IAAI;YACnB,aAAa,EAAE,WAAW;YAC1B,QAAQ,EAAE,EAAE;YACZ,eAAe,EAAE,EAAE;SACpB,CAAA;QAED,IAAI,CAAC,8BAA8B,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;QAC5D,UAAU,CACR,CAAC,EAAU,EAAE,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAC,MAAM,CAAC,EAAE,CAAC,EACtE,EAAE,GAAG,IAAI,EACT,OAAO,CAAC,EAAE,CACX,CAAA;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IACM,MAAM,CAAC,gCAAgC,CAAC,CAAqB;QAClE,OAAO;YACL,GAAG,CAAC;YACJ,KAAK,CAAC,SAAS,GAAG,KAAK;gBACrB,OAAO,aAAQ,CAAC,mBAAmB,CACjC,CAAC,EACD,+BAAuB,CAAC,oCAAoC,EAC5D,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,gCAAwB,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CACjE,CAAA;YACH,CAAC;YACD,KAAK,CAAC,IAA+C;gBACnD,OAAO,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAA;YACnG,CAAC;YACD,gBAAgB,CAAC,IAA+C;gBAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAA;gBAC1D,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBACtG,OAAO,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACpD,CAAC;YACD,cAAc,CAAC,IAA+C;gBAC5D,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,gCAAwB,CAAC,SAAS,EAAE,CAAC,CAAA;YAC9I,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,KAAc,EAAE,GAAG,IAAS;gBACtC,IAAI,CAAC,KAAK;oBAAE,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;gBAE/B,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAChC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,sCAAsC,KAAK,EAAE,CAAC,CAAA;oBAC5F,OAAM;iBACP;gBAED,IAAI,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;gBAC/C,IAAK,IAAY,CAAC,IAAI;oBAAE,IAAI,GAAG,MAAM,IAAI,CAAA;gBACzC,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAiD,CAAC,CAAA;YACzI,CAAC;SACF,CAAA;IACH,CAAC;IAEM,MAAM,CAAC,kCAAkC,CAAC,CAAuB,EAAE,WAA2B;QACnG,IAAI,WAAW;YAAG,CAA0C,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;QACxF,OAAO;YACL,GAAG,CAAC;YACJ,GAAG;gBACD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,uBAAuB,CAAC,CAAA;YAClF,CAAC;YACD,KAAK,CAAC,IAA+C;gBACnD,OAAO,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAA;YACnG,CAAC;YACD,gBAAgB,CAAC,IAA+C;gBAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAA;gBAC1D,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;gBACtG,OAAO,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACpD,CAAC;YACD,cAAc,CAAC,IAA+C;gBAC5D,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,gCAAwB,CAAC,SAAS,EAAE,CAAC,CAAA;YAC9I,CAAC;YACD,IAAI,CAAC,IAA+C;gBAClD,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,EAAE,YAAY,CAAC,8BAA8B,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;YAC/J,CAAC;YACD,eAAe,CAAC,IAA+C;gBAC7D,MAAM,oBAAoB,GAAG,YAAY,CAAC,8BAA8B,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;gBAExG,IAAI,oBAAoB,EAAE;oBACxB,MAAM,OAAO,GAAG,YAAY,CAAC,8BAA8B,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;oBAC3F,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;oBACzF,OAAO,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;iBACnD;qBAAM;oBACL,MAAM,OAAO,GAAG,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAA;oBAC1D,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;oBACzF,OAAO,YAAY,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;iBACnD;YACH,CAAC;YACD,6BAA6B;YAC7B,yEAAyE;YACzE,uCAAuC;YACvC,OAAO;YACP,KAAK;YACL,gBAAgB;gBACd,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;YAC7F,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,KAAc,EAAE,GAAG,IAAS;gBACtC,IAAI,CAAC,KAAK;oBAAE,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;gBAEpC,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAChC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,sCAAsC,KAAK,EAAE,CAAC,CAAA;oBACnG,OAAM;iBACP;gBAED,IAAI,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;gBAC/C,IAAK,IAAY,CAAC,IAAI;oBAAE,IAAI,GAAG,MAAM,IAAI,CAAA;gBACzC,aAAQ,CAAC,mBAAmB,CAAC,CAAC,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAiD,CAAC,CAAA;YAC5H,CAAC;SACF,CAAA;IACH,CAAC;IAED,EAAE;IAEM,MAAM,CAAC,UAAU,CAAC,OAAgC;QACxD,OAAO;YACL,IAAI,CAAC,IAA+C;gBAClD,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;YACjG,CAAC;YACD,gBAAgB;gBACd,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;YAC/G,CAAC;YACD,iBAAiB;gBACf,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE;oBACxF,UAAU,EAAE,CAAE,OAAO,CAAC,WAAW,CAAC,iBAAyB,IAAI,EAAE,CAAC;yBAC/D,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACX,GAAG,GAAG;wBACN,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;4BACnC,GAAG,CAAC;4BACJ,QAAQ,EAAE,IAAI;yBACf,CAAC,CAAC;qBACJ,CAAC,CAAC;iBACN,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;YAChB,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,KAAc,EAAE,GAAG,IAAS;gBACtC,IAAI,CAAC,KAAK;oBAAE,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,CAAA;gBAE1C,IAAI,CAAC,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAChC,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAA;oBAC7E,OAAM;iBACP;gBAED,IAAI,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;gBACjE,IAAK,IAAY,CAAC,IAAI;oBAAE,IAAI,GAAG,MAAM,IAAI,CAAA;gBACzC,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAiD,CAAC,CAAA;YAC9I,CAAC;SACF,CAAA;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,qBAAqB,CAAC,OAAgC;QACnE,OAAO;YACL,QAAQ,EAAE,OAAO;YACjB,WAAW,CAAC,OAAe,EAAE,OAA0C,EAAE,OAAwC;gBAC/G,IAAI,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE;oBAC5B,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAA;oBACjF,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;iBACzB;gBAED,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;gBACzB,OAAO,CAAC,aAAa,GAAG,OAAO,EAAE,aAAa,CAAA;gBAC9C,OAAO,CAAC,cAAc,GAAG,CAAC,WAAW,GAAG,KAAK,EAAE,EAAE;oBAC/C,YAAY,CAAC,8BAA8B,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;oBAC9D,IAAI,CAAC,WAAW;wBACd,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;oBAC3C,OAAO,OAAO,CAAC,QAAQ,CAAA;oBACvB,OAAO,OAAO,CAAC,eAAe,CAAA;oBAC9B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAA;oBACvB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAA;gBAChC,CAAC,CAAA;gBACD,OAAO,CAAC,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;gBACnE,OAAO,YAAY,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;YACtD,CAAC;SACF,CAAA;IACH,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,uBAAuB,CAAC,OAAgC;QACpE,MAAM,KAAK,GAAoC;YAC7C,QAAQ,EAAE,OAAO;YACjB,EAAE,CAAC,QAAgB,EAAE,OAAoC;gBACvD,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAAE,OAAM,CAAC,kDAAkD;gBAChF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAA;gBACpC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBAC1B,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC;wBAC3B,EAAE,EAAE,QAAQ;wBACZ,KAAK,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;wBACtE,OAAO;qBACR,CAAC,CAAA;iBACH;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YACD,IAAI,CAAC,IAA+C;gBAClD,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;YACjG,CAAC;YACD,QAAQ,CAAC,IAA+C;gBACtD,aAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,+BAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAA;YAC9G,CAAC;YACD,cAAc;gBACZ,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;gBACnC,OAAO,CAAC,cAAc,EAAE,CAAA;YAC1B,CAAC;SACF,CAAA;QACD,OAAO,KAAK,CAAA;IACd,CAAC;;AA1NH,+BA4NC;AA1NC,mBAAmB;AACnB,wFAAwF;AACjE,2CAA8B,GAAyC,IAAI,GAAG,EAAE,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { InteractionCallbackFollowup } from '..';
1
2
  import { InteractionApplicationCommandCallbackData, InteractionReplyStateLevelTwo } from './custom';
2
3
  import { InteractionCommandType, ComponentType, ChannelType, InteractionComponentFlag, InteractionType } from './const';
3
4
  import { GuildData, UserData } from './middleware';
@@ -211,15 +212,15 @@ export declare type SlotedContext = {
211
212
  params: Record<string, string>;
212
213
  };
213
214
  export declare type ReplyableCommandInteraction = CommandInteraction & {
214
- defer(privately?: boolean): void;
215
- reply(data: InteractionApplicationCommandCallbackData): void;
215
+ defer(privately?: boolean): Promise<InteractionCallbackFollowup>;
216
+ reply(data: InteractionApplicationCommandCallbackData): Promise<InteractionCallbackFollowup>;
216
217
  replyInteractive(data: InteractionApplicationCommandCallbackData): InteractionReplyStateLevelTwo;
217
218
  replyPrivately(data: InteractionApplicationCommandCallbackData): void;
218
219
  state(state?: string, ...args: any): void;
219
220
  };
220
221
  export declare type ReplyableComponentInteraction = ComponentInteraction & Partial<SlotedContext> & {
221
222
  ack(): void;
222
- reply(data: InteractionApplicationCommandCallbackData): void;
223
+ reply(data: InteractionApplicationCommandCallbackData): Promise<InteractionCallbackFollowup>;
223
224
  replyInteractive(data: InteractionApplicationCommandCallbackData): InteractionReplyStateLevelTwo;
224
225
  replyPrivately(data: InteractionApplicationCommandCallbackData): void;
225
226
  edit(data: InteractionApplicationCommandCallbackData): void;
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ import { InteractionMessage } from '..';
2
3
  import { GenericInteraction, InteractionJanitor, ReplyableCommandInteraction, ReplyableComponentInteraction, MessageEmbed } from './base';
3
4
  import { MessageComponent } from './component';
4
5
  import { InteractionResponseFlags } from './const';
@@ -32,7 +33,7 @@ export declare type InteractionReplyContext = {
32
33
  id: string;
33
34
  interaction: GenericInteraction;
34
35
  timeout: number;
35
- timeoutRunFunc: (...any: any) => any;
36
+ timeoutRunFunc: (skipJanitor?: boolean) => any;
36
37
  timeoutRunner: NodeJS.Timeout;
37
38
  onInteraction: InteractionReplyTimeoutOptions['onInteraction'];
38
39
  handlers: {
@@ -54,4 +55,8 @@ export declare type InteractionReplyStateLevelTwo = {
54
55
  _context: InteractionReplyContext;
55
56
  withTimeout(millis: number, janitor: (edit: InteractionJanitor) => any, options?: InteractionReplyTimeoutOptions): InteractionReplyStateLevelThree;
56
57
  };
58
+ export declare type InteractionCallbackFollowup = {
59
+ getMessage(): Promise<InteractionMessage>;
60
+ edit(data: InteractionApplicationCommandCallbackData, useRaw?: boolean): void;
61
+ };
57
62
  export declare type InteractionUIState = (i: GenericInteraction, ...args: any) => InteractionApplicationCommandCallbackData | Promise<InteractionApplicationCommandCallbackData>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cordo",
3
- "version": "1.9.0",
3
+ "version": "1.9.5",
4
4
  "description": "A framework for handling complex discord api interactions",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/api.ts CHANGED
@@ -1,14 +1,15 @@
1
- import axios from 'axios'
1
+ import axios, { AxiosResponse } from 'axios'
2
2
  import PermissionStrings from './lib/permission-strings'
3
3
  import { InteractionApplicationCommandCallbackData } from './types/custom'
4
4
  import { GenericInteraction, InteractionLocationGuild } from './types/base'
5
+ import { InteractionResponseFlags } from './types/const'
5
6
  import { MessageComponent } from './types/component'
6
7
  import { ComponentType, InteractionCallbackType, InteractionComponentFlag } from './types/const'
7
- import Cordo from './index'
8
+ import Cordo, { InteractionCallbackFollowup } from './index'
8
9
 
9
10
  export default class CordoAPI {
10
11
 
11
- public static interactionCallback(i: GenericInteraction, type: number, data?: InteractionApplicationCommandCallbackData, contextId?: string, useRaw?: boolean) {
12
+ public static async interactionCallback(i: GenericInteraction, type: number, data?: InteractionApplicationCommandCallbackData, contextId?: string, useRaw?: boolean): Promise<InteractionCallbackFollowup> {
12
13
  if (!useRaw)
13
14
  CordoAPI.normaliseData(data, i, contextId)
14
15
 
@@ -17,31 +18,46 @@ export default class CordoAPI {
17
18
 
18
19
  if (!i._answered) {
19
20
  i._answered = true
20
- axios
21
- .post(`https://discord.com/api/v8/interactions/${i.id}/${i.token}/callback`, { type, data }, { validateStatus: null })
22
- .then((res) => {
23
- if (Cordo._data.middlewares.apiResponseHandler) {
24
- Cordo._data.middlewares.apiResponseHandler(res)
25
- } else if (res.status >= 300) {
26
- Cordo._data.logger.warn('Interaction callback failed with error:')
27
- Cordo._data.logger.warn(JSON.stringify(res.data, null, 2))
28
- Cordo._data.logger.warn('Request payload:')
29
- Cordo._data.logger.warn(JSON.stringify({ type, data }, null, 2))
30
- }
31
- })
32
- return
21
+ const res = await axios.post(`https://discord.com/api/v8/interactions/${i.id}/${i.token}/callback`, { type, data }, { validateStatus: null })
22
+ CordoAPI.handleCallbackResponse(res, type, data)
23
+ } else {
24
+ switch (type) {
25
+ case InteractionCallbackType.PONG: break
26
+ case InteractionCallbackType.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE: break
27
+ case InteractionCallbackType.DEFERRED_UPDATE_MESSAGE: break
28
+ case InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE: {
29
+ const res = await axios.post(`https://discord.com/api/v8/webhooks/${Cordo._data.config.botId}/${i.token}`, data, { validateStatus: null })
30
+ CordoAPI.handleCallbackResponse(res, type, data)
31
+ break
32
+ }
33
+ case InteractionCallbackType.UPDATE_MESSAGE: {
34
+ const res = await axios.patch(`https://discord.com/api/v8/webhooks/${Cordo._data.config.botId}/${i.token}/messages/@original`, data, { validateStatus: null })
35
+ CordoAPI.handleCallbackResponse(res, type, data)
36
+ break
37
+ }
38
+ }
33
39
  }
34
40
 
35
- switch (type) {
36
- case InteractionCallbackType.PONG: break
37
- case InteractionCallbackType.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE: break
38
- case InteractionCallbackType.DEFERRED_UPDATE_MESSAGE: break
39
- case InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE:
40
- axios.post(`https://discord.com/api/v8/webhooks/${Cordo._data.config.botId}/${i.token}`, data)
41
- break
42
- case InteractionCallbackType.UPDATE_MESSAGE:
43
- axios.patch(`https://discord.com/api/v8/webhooks/${Cordo._data.config.botId}/${i.token}/messages/@original`, data)
44
- break
41
+ return {
42
+ async getMessage() {
43
+ const res = await axios.get(`https://discord.com/api/v8/webhooks/${Cordo._data.config.botId}/${i.token}/messages/@original`, { validateStatus: null })
44
+ if (res.status !== 200) return null
45
+ return res.data
46
+ },
47
+ edit(editData: any, editUseRaw: boolean = useRaw) {
48
+ CordoAPI.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, editData, contextId, editUseRaw)
49
+ }
50
+ }
51
+ }
52
+
53
+ private static handleCallbackResponse(res: AxiosResponse, type: number, data?: InteractionApplicationCommandCallbackData) {
54
+ if (Cordo._data.middlewares.apiResponseHandler) {
55
+ Cordo._data.middlewares.apiResponseHandler(res)
56
+ } else if (res.status >= 300) {
57
+ Cordo._data.logger.warn('Interaction callback failed with error:')
58
+ Cordo._data.logger.warn(JSON.stringify(res.data, null, 2))
59
+ Cordo._data.logger.warn('Request payload:')
60
+ Cordo._data.logger.warn(JSON.stringify({ type, data }, null, 2))
45
61
  }
46
62
  }
47
63
 
@@ -53,6 +69,8 @@ export default class CordoAPI {
53
69
  // explicitly not using this. in this function due to unwanted side-effects in lambda functions
54
70
  Cordo._data.middlewares.interactionCallback.forEach(f => f(data, i.guildData))
55
71
 
72
+ const isEmphemeral = (data.flags & InteractionResponseFlags.EPHEMERAL) !== 0
73
+
56
74
  if (!data.content)
57
75
  data.content = ''
58
76
 
@@ -77,8 +95,14 @@ export default class CordoAPI {
77
95
  if (comp.visible === false) continue // === false to not catch any null or undefined
78
96
 
79
97
  if (comp.type !== ComponentType.LINE_BREAK && !!(comp as any).custom_id) {
80
- (comp as any).custom_id = `${contextId ?? ''}::${(comp as any).custom_id}:${comp.flags?.join('') ?? ''}`
81
- if (comp.flags?.length && !!(i as InteractionLocationGuild).member && !comp.flags.includes(InteractionComponentFlag.ACCESS_EVERYONE)) {
98
+ const hasAccessEveryoneFlag = comp.flags?.includes(InteractionComponentFlag.ACCESS_EVERYONE)
99
+ if (isEmphemeral && !hasAccessEveryoneFlag) {
100
+ if (!comp.flags) comp.flags = []
101
+ comp.flags.push(InteractionComponentFlag.ACCESS_EVERYONE)
102
+ }
103
+ ;(comp as any).custom_id = `${contextId ?? ''}::${(comp as any).custom_id}:${comp.flags?.join('') ?? ''}`
104
+
105
+ if (comp.flags?.length && !!(i as InteractionLocationGuild).member && !hasAccessEveryoneFlag) {
82
106
  const perms = BigInt((i as InteractionLocationGuild).member.permissions)
83
107
  if (comp.flags.includes(InteractionComponentFlag.ACCESS_ADMIN) && !PermissionStrings.containsAdmin(perms)) {
84
108
  if (comp.flags.includes(InteractionComponentFlag.HIDE_IF_NOT_ALLOWED)) comp.type = null
package/src/index.ts CHANGED
@@ -296,7 +296,7 @@ export default class Cordo {
296
296
 
297
297
  if ((await Cordo.componentPermissionCheck(i)) !== 'passed') return
298
298
 
299
- const context = CordoReplies.findActiveInteractionReplyContext(contextId)
299
+ const context = CordoReplies.activeInteractionReplyContexts.get(contextId)
300
300
 
301
301
  let regexSearchResult: SlottedComponentHandler | undefined
302
302
  if (context?.handlers?.[i.data.custom_id]) {
@@ -325,6 +325,7 @@ export default class Cordo {
325
325
  context.timeoutRunFunc()
326
326
  } else if (context?.onInteraction === 'removeTimeout') {
327
327
  clearTimeout(context.timeoutRunner)
328
+ context.timeoutRunFunc(true)
328
329
  }
329
330
  }
330
331
 
package/src/replies.ts CHANGED
@@ -8,20 +8,14 @@ import Cordo from './index'
8
8
  export default class CordoReplies {
9
9
 
10
10
  /* TODO @metrics */
11
- public static readonly activeInteractionReplyContexts: InteractionReplyContext[] = []
11
+ // public static readonly activeInteractionReplyContexts: InteractionReplyContext[] = []
12
+ public static readonly activeInteractionReplyContexts: Map<string, InteractionReplyContext> = new Map()
12
13
 
13
14
  //
14
15
 
15
- public static findActiveInteractionReplyContext(id: string): InteractionReplyContext | undefined {
16
- if (!id) return null
17
- return CordoReplies.activeInteractionReplyContexts.find(c => c.id === id)
18
- }
19
-
20
- //
21
-
22
- public static newInteractionReplyContext(i: GenericInteraction): InteractionReplyContext {
23
- return {
24
- id: i.id,
16
+ public static newInteractionReplyContext(i: GenericInteraction, customId?: string): InteractionReplyContext {
17
+ const context: InteractionReplyContext = {
18
+ id: customId ?? i.id,
25
19
  interaction: i,
26
20
  timeout: -1,
27
21
  timeoutRunFunc: null,
@@ -30,25 +24,32 @@ export default class CordoReplies {
30
24
  handlers: {},
31
25
  slottedHandlers: []
32
26
  }
27
+
28
+ this.activeInteractionReplyContexts.set(context.id, context)
29
+ setTimeout(
30
+ (id: string) => CordoReplies.activeInteractionReplyContexts.delete(id),
31
+ 15 * 60e3,
32
+ context.id
33
+ )
34
+
35
+ return context
33
36
  }
34
37
  public static buildReplyableCommandInteraction(i: CommandInteraction): ReplyableCommandInteraction {
35
38
  return {
36
39
  ...i,
37
40
  defer(privately = false) {
38
- CordoAPI.interactionCallback(
41
+ return CordoAPI.interactionCallback(
39
42
  i,
40
43
  InteractionCallbackType.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE,
41
44
  privately ? { flags: InteractionResponseFlags.EPHEMERAL } : null
42
45
  )
43
46
  },
44
47
  reply(data: InteractionApplicationCommandCallbackData) {
45
- CordoAPI.interactionCallback(i, InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data)
48
+ return CordoAPI.interactionCallback(i, InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data)
46
49
  },
47
50
  replyInteractive(data: InteractionApplicationCommandCallbackData) {
48
51
  const context = CordoReplies.newInteractionReplyContext(i)
49
- CordoReplies.activeInteractionReplyContexts.push(context)
50
52
  CordoAPI.interactionCallback(i, InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data, context.id)
51
- setTimeout(() => CordoReplies.activeInteractionReplyContexts.splice(0, 1), 15 * 60e3)
52
53
  return CordoReplies.getLevelTwoReplyState(context)
53
54
  },
54
55
  replyPrivately(data: InteractionApplicationCommandCallbackData) {
@@ -77,27 +78,31 @@ export default class CordoReplies {
77
78
  CordoAPI.interactionCallback(i, InteractionCallbackType.DEFERRED_UPDATE_MESSAGE)
78
79
  },
79
80
  reply(data: InteractionApplicationCommandCallbackData) {
80
- CordoAPI.interactionCallback(i, InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data)
81
+ return CordoAPI.interactionCallback(i, InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data)
81
82
  },
82
83
  replyInteractive(data: InteractionApplicationCommandCallbackData) {
83
84
  const context = CordoReplies.newInteractionReplyContext(i)
84
- CordoReplies.activeInteractionReplyContexts.push(context)
85
85
  CordoAPI.interactionCallback(i, InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, data, context.id)
86
- setTimeout(() => CordoReplies.activeInteractionReplyContexts.splice(0, 1), 15 * 60e3)
87
86
  return CordoReplies.getLevelTwoReplyState(context)
88
87
  },
89
88
  replyPrivately(data: InteractionApplicationCommandCallbackData) {
90
89
  CordoAPI.interactionCallback(i, InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE, { ...data, flags: InteractionResponseFlags.EPHEMERAL })
91
90
  },
92
91
  edit(data: InteractionApplicationCommandCallbackData) {
93
- CordoAPI.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, data, CordoReplies.findActiveInteractionReplyContext(i.message.interaction?.id)?.id)
92
+ CordoAPI.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, data, CordoReplies.activeInteractionReplyContexts.get(i.message.interaction?.id)?.id)
94
93
  },
95
94
  editInteractive(data: InteractionApplicationCommandCallbackData) {
96
- const context = CordoReplies.newInteractionReplyContext(i)
97
- CordoReplies.activeInteractionReplyContexts.push(context)
98
- CordoAPI.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, data, context.id)
99
- setTimeout(() => CordoReplies.activeInteractionReplyContexts.splice(0, 1), 15 * 60e3)
100
- return CordoReplies.getLevelTwoReplyState(context)
95
+ const isAlreadyInteractive = CordoReplies.activeInteractionReplyContexts.has(i.message?.interaction?.id)
96
+
97
+ if (isAlreadyInteractive) {
98
+ const context = CordoReplies.activeInteractionReplyContexts.get(i.message?.interaction?.id)
99
+ CordoAPI.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, data, context.id)
100
+ return CordoReplies.getLevelTwoReplyState(context)
101
+ } else {
102
+ const context = CordoReplies.newInteractionReplyContext(i)
103
+ CordoAPI.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, data, context.id)
104
+ return CordoReplies.getLevelTwoReplyState(context)
105
+ }
101
106
  },
102
107
  // disableComponents() { TODO
103
108
  // API.interactionCallback(i, InteractionCallbackType.UPDATE_MESSAGE, {
@@ -173,8 +178,10 @@ export default class CordoReplies {
173
178
 
174
179
  context.timeout = timeout
175
180
  context.onInteraction = options?.onInteraction
176
- context.timeoutRunFunc = () => {
177
- janitor(CordoReplies.getJanitor(context))
181
+ context.timeoutRunFunc = (skipJanitor = false) => {
182
+ CordoReplies.activeInteractionReplyContexts.delete(context.id)
183
+ if (!skipJanitor)
184
+ janitor(CordoReplies.getJanitor(context))
178
185
  delete context.handlers
179
186
  delete context.slottedHandlers
180
187
  context.handlers = null
package/src/types/base.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable camelcase */
2
2
  // INTERACTION BASE TYPES
3
3
 
4
+ import { InteractionCallbackFollowup } from '..'
4
5
  import { InteractionApplicationCommandCallbackData, InteractionReplyStateLevelTwo } from './custom'
5
6
  import { InteractionCommandType, ComponentType, ChannelType, InteractionComponentFlag, InteractionType } from './const'
6
7
  import { GuildData, UserData } from './middleware'
@@ -241,8 +242,8 @@ export type RichMessageInteraction = InteractionBase & (InteractionLocationGuild
241
242
  export type SlotedContext = { params: Record<string, string> }
242
243
 
243
244
  export type ReplyableCommandInteraction = CommandInteraction & {
244
- defer(privately?: boolean): void
245
- reply(data: InteractionApplicationCommandCallbackData): void
245
+ defer(privately?: boolean): Promise<InteractionCallbackFollowup>
246
+ reply(data: InteractionApplicationCommandCallbackData): Promise<InteractionCallbackFollowup>
246
247
  replyInteractive(data: InteractionApplicationCommandCallbackData): InteractionReplyStateLevelTwo
247
248
  replyPrivately(data: InteractionApplicationCommandCallbackData): void
248
249
  state(state?: string, ...args: any): void
@@ -250,7 +251,7 @@ export type ReplyableCommandInteraction = CommandInteraction & {
250
251
 
251
252
  export type ReplyableComponentInteraction = ComponentInteraction & Partial<SlotedContext> & {
252
253
  ack(): void
253
- reply(data: InteractionApplicationCommandCallbackData): void
254
+ reply(data: InteractionApplicationCommandCallbackData): Promise<InteractionCallbackFollowup>
254
255
  replyInteractive(data: InteractionApplicationCommandCallbackData): InteractionReplyStateLevelTwo
255
256
  replyPrivately(data: InteractionApplicationCommandCallbackData): void
256
257
  edit(data: InteractionApplicationCommandCallbackData): void
@@ -1,5 +1,6 @@
1
1
  /* eslint-disable camelcase */
2
2
 
3
+ import { InteractionMessage } from '..'
3
4
  import { GenericInteraction, InteractionJanitor, ReplyableCommandInteraction, ReplyableComponentInteraction, MessageEmbed } from './base'
4
5
  import { MessageComponent } from './component'
5
6
  import { InteractionResponseFlags } from './const'
@@ -41,8 +42,8 @@ export type InteractionComponentHandler
41
42
  = ((i: ReplyableComponentInteraction) => HandlerSuccess)
42
43
 
43
44
  export type SlottedComponentHandler = {
44
- regex: RegExp,
45
- id: string,
45
+ regex: RegExp
46
+ id: string
46
47
  handler: InteractionComponentHandler
47
48
  }
48
49
 
@@ -52,7 +53,7 @@ export type InteractionReplyContext = {
52
53
  id: string
53
54
  interaction: GenericInteraction
54
55
  timeout: number
55
- timeoutRunFunc: (...any: any) => any
56
+ timeoutRunFunc: (skipJanitor?: boolean) => any
56
57
  timeoutRunner: NodeJS.Timeout
57
58
  onInteraction: InteractionReplyTimeoutOptions['onInteraction']
58
59
  handlers: { [customId: string]: InteractionComponentHandler }
@@ -60,7 +61,7 @@ export type InteractionReplyContext = {
60
61
  }
61
62
 
62
63
  export type InteractionReplyStateLevelThree = {
63
- _context: InteractionReplyContext,
64
+ _context: InteractionReplyContext
64
65
  on(customId: string, handler: InteractionComponentHandler): InteractionReplyStateLevelThree
65
66
  edit(data: InteractionApplicationCommandCallbackData): void
66
67
  followUp(data: InteractionApplicationCommandCallbackData): void
@@ -72,10 +73,15 @@ export type InteractionReplyTimeoutOptions = {
72
73
  }
73
74
 
74
75
  export type InteractionReplyStateLevelTwo = {
75
- _context: InteractionReplyContext,
76
+ _context: InteractionReplyContext
76
77
  withTimeout(millis: number, janitor: (edit: InteractionJanitor) => any, options?: InteractionReplyTimeoutOptions): InteractionReplyStateLevelThree
77
78
  }
78
79
 
80
+ export type InteractionCallbackFollowup = {
81
+ getMessage(): Promise<InteractionMessage>
82
+ edit(data: InteractionApplicationCommandCallbackData, useRaw?: boolean): void
83
+ }
84
+
79
85
  // States
80
86
 
81
87
  export type InteractionUIState = (i: GenericInteraction, ...args: any) => InteractionApplicationCommandCallbackData | Promise<InteractionApplicationCommandCallbackData>