kythia-core 0.12.4-beta → 0.12.6-beta

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.
Files changed (80) hide show
  1. package/dist/Kythia.d.ts +7 -6
  2. package/dist/Kythia.d.ts.map +1 -1
  3. package/dist/Kythia.js +53 -40
  4. package/dist/Kythia.js.map +1 -1
  5. package/dist/KythiaClient.d.ts.map +1 -1
  6. package/dist/KythiaClient.js +9 -0
  7. package/dist/KythiaClient.js.map +1 -1
  8. package/dist/cli/commands/AboutCommand.d.ts +7 -0
  9. package/dist/cli/commands/AboutCommand.d.ts.map +1 -0
  10. package/dist/cli/commands/AboutCommand.js +114 -0
  11. package/dist/cli/commands/AboutCommand.js.map +1 -0
  12. package/dist/cli/commands/LangCheckCommand.js +4 -4
  13. package/dist/cli/commands/LangCheckCommand.js.map +1 -1
  14. package/dist/cli/commands/MakeMigrationCommand.js +2 -2
  15. package/dist/cli/commands/MakeModelCommand.js +2 -2
  16. package/dist/cli/commands/NamespaceCommand.js +1 -1
  17. package/dist/database/KythiaModel.d.ts +4 -3
  18. package/dist/database/KythiaModel.d.ts.map +1 -1
  19. package/dist/database/KythiaModel.js +1 -1
  20. package/dist/database/KythiaModel.js.map +1 -1
  21. package/dist/managers/AddonManager.d.ts +2 -2
  22. package/dist/managers/AddonManager.d.ts.map +1 -1
  23. package/dist/managers/AddonManager.js +95 -45
  24. package/dist/managers/AddonManager.js.map +1 -1
  25. package/dist/managers/EventManager.d.ts.map +1 -1
  26. package/dist/managers/EventManager.js +73 -26
  27. package/dist/managers/EventManager.js.map +1 -1
  28. package/dist/managers/InteractionManager.d.ts +8 -6
  29. package/dist/managers/InteractionManager.d.ts.map +1 -1
  30. package/dist/managers/InteractionManager.js +210 -134
  31. package/dist/managers/InteractionManager.js.map +1 -1
  32. package/dist/managers/MiddlewareManager.d.ts +4 -3
  33. package/dist/managers/MiddlewareManager.d.ts.map +1 -1
  34. package/dist/managers/MiddlewareManager.js +64 -35
  35. package/dist/managers/MiddlewareManager.js.map +1 -1
  36. package/dist/managers/ShutdownManager.d.ts.map +1 -1
  37. package/dist/managers/ShutdownManager.js +109 -81
  38. package/dist/managers/ShutdownManager.js.map +1 -1
  39. package/dist/managers/TelemetryManager.d.ts.map +1 -1
  40. package/dist/managers/TelemetryManager.js +98 -52
  41. package/dist/managers/TelemetryManager.js.map +1 -1
  42. package/dist/managers/TranslatorManager.d.ts +1 -0
  43. package/dist/managers/TranslatorManager.d.ts.map +1 -1
  44. package/dist/managers/TranslatorManager.js +78 -61
  45. package/dist/managers/TranslatorManager.js.map +1 -1
  46. package/dist/types/AddonManager.d.ts +22 -9
  47. package/dist/types/AddonManager.d.ts.map +1 -1
  48. package/dist/types/EventManager.d.ts +1 -1
  49. package/dist/types/EventManager.d.ts.map +1 -1
  50. package/dist/types/InteractionManager.d.ts +8 -6
  51. package/dist/types/InteractionManager.d.ts.map +1 -1
  52. package/dist/types/KythiaClient.d.ts +2 -1
  53. package/dist/types/KythiaClient.d.ts.map +1 -1
  54. package/dist/types/KythiaConfig.d.ts +1 -1
  55. package/dist/types/KythiaConfig.d.ts.map +1 -1
  56. package/dist/types/KythiaContainer.d.ts +2 -2
  57. package/dist/types/KythiaContainer.d.ts.map +1 -1
  58. package/dist/types/KythiaLogger.d.ts +1 -1
  59. package/dist/types/KythiaLogger.d.ts.map +1 -1
  60. package/dist/types/KythiaMigrator.d.ts +2 -1
  61. package/dist/types/KythiaMigrator.d.ts.map +1 -1
  62. package/dist/types/KythiaModel.d.ts +6 -5
  63. package/dist/types/KythiaModel.d.ts.map +1 -1
  64. package/dist/types/KythiaOptions.d.ts +9 -6
  65. package/dist/types/KythiaOptions.d.ts.map +1 -1
  66. package/dist/types/KythiaSequelize.d.ts +2 -1
  67. package/dist/types/KythiaSequelize.d.ts.map +1 -1
  68. package/dist/types/ModelLoader.d.ts +2 -1
  69. package/dist/types/ModelLoader.d.ts.map +1 -1
  70. package/dist/types/error.d.ts +7 -0
  71. package/dist/types/error.d.ts.map +1 -0
  72. package/dist/types/error.js +3 -0
  73. package/dist/types/error.js.map +1 -0
  74. package/dist/utils/InteractionFactory.d.ts.map +1 -1
  75. package/dist/utils/InteractionFactory.js +305 -281
  76. package/dist/utils/InteractionFactory.js.map +1 -1
  77. package/dist/utils/logger.d.ts.map +1 -1
  78. package/dist/utils/logger.js +24 -22
  79. package/dist/utils/logger.js.map +1 -1
  80. package/package.json +1 -1
@@ -98,185 +98,261 @@ class InteractionManager {
98
98
  }
99
99
  catch (error) {
100
100
  await this._handleInteractionError(interaction, error);
101
+ this.container.telemetry?.report('error', 'Interaction Handling Failed', {
102
+ message: error.message,
103
+ stack: error.stack,
104
+ interactionType: interaction.type,
105
+ });
101
106
  }
102
107
  });
103
108
  }
104
109
  async _handleChatInputCommand(interaction) {
105
- let commandKey = interaction.commandName;
106
- const group = interaction.options.getSubcommandGroup(false);
107
- const subcommand = interaction.options.getSubcommand(false);
108
- if (group)
109
- commandKey = `${commandKey} ${group} ${subcommand}`;
110
- else if (subcommand)
111
- commandKey = `${commandKey} ${subcommand}`;
112
- let command = this.client.commands.get(commandKey);
113
- if (!command && (subcommand || group)) {
114
- command = this.client.commands.get(interaction.commandName);
115
- }
116
- if (!command) {
117
- this.logger.error(`Command not found for key: ${commandKey}`);
118
- await interaction.reply({
119
- content: await this.t(interaction, 'common.error.command.not.found'),
120
- flags: discord_js_1.MessageFlags.Ephemeral,
121
- });
122
- return;
123
- }
124
- if (this.middlewareManager) {
125
- const canRun = await this.middlewareManager.handle(interaction, command);
126
- if (!canRun)
110
+ try {
111
+ let commandKey = interaction.commandName;
112
+ const group = interaction.options.getSubcommandGroup(false);
113
+ const subcommand = interaction.options.getSubcommand(false);
114
+ if (group)
115
+ commandKey = `${commandKey} ${group} ${subcommand}`;
116
+ else if (subcommand)
117
+ commandKey = `${commandKey} ${subcommand}`;
118
+ let command = this.client.commands.get(commandKey);
119
+ if (!command && (subcommand || group)) {
120
+ command = this.client.commands.get(interaction.commandName);
121
+ }
122
+ if (!command) {
123
+ this.logger.error(`Command not found for key: ${commandKey}`);
124
+ await interaction.reply({
125
+ content: await this.t(interaction, 'common.error.command.not.found'),
126
+ flags: discord_js_1.MessageFlags.Ephemeral,
127
+ });
127
128
  return;
128
- }
129
- if (typeof command.execute === 'function') {
130
- if (!interaction.logger) {
131
- interaction.logger = this.logger;
132
129
  }
133
- if (this.container && !this.container.logger) {
134
- this.container.logger = this.logger;
130
+ if (command.mainGuildOnly) {
131
+ const mainGuildId = this.kythiaConfig.bot.devGuildId;
132
+ if (interaction.guildId !== mainGuildId) {
133
+ await interaction.reply({
134
+ content: '❌ This command is exclusive to the Kythia Main Server.',
135
+ flags: discord_js_1.MessageFlags.Ephemeral,
136
+ });
137
+ return;
138
+ }
135
139
  }
136
- this.container.telemetry?.report('info', `Command Executed: /${commandKey}`, {
137
- user: `${interaction.user.tag} (${interaction.user.id})`,
138
- guild: interaction.guild
139
- ? `${interaction.guild.name} (${interaction.guild.id})`
140
- : 'DM',
141
- channel: interaction.channelId,
142
- });
143
- if (command.execute.length === 2) {
144
- await command.execute(interaction, this.container);
140
+ if (this.middlewareManager) {
141
+ const canRun = await this.middlewareManager.handle(interaction, command);
142
+ if (!canRun)
143
+ return;
144
+ }
145
+ if (typeof command.execute === 'function') {
146
+ if (!interaction.logger) {
147
+ interaction.logger = this.logger;
148
+ }
149
+ if (this.container && !this.container.logger) {
150
+ this.container.logger = this.logger;
151
+ }
152
+ this.container.telemetry?.report('info', `Command Executed: /${commandKey}`, {
153
+ user: `${interaction.user.tag} (${interaction.user.id})`,
154
+ guild: interaction.guild
155
+ ? `${interaction.guild.name} (${interaction.guild.id})`
156
+ : 'DM',
157
+ channel: interaction.channelId,
158
+ });
159
+ if (command.execute.length === 2) {
160
+ await command.execute(interaction, this.container);
161
+ }
162
+ else {
163
+ await command.execute(interaction);
164
+ }
165
+ await this._checkRestartSchedule(interaction);
145
166
  }
146
167
  else {
147
- await command.execute(interaction);
168
+ this.logger.error("Command doesn't have a valid 'execute' function:", command.name || commandKey);
169
+ await interaction.reply({
170
+ content: await this.t(interaction, 'common.error.command.execution.invalid'),
171
+ flags: discord_js_1.MessageFlags.Ephemeral,
172
+ });
173
+ return;
148
174
  }
149
- await this._checkRestartSchedule(interaction);
150
175
  }
151
- else {
152
- this.logger.error("Command doesn't have a valid 'execute' function:", command.name || commandKey);
153
- await interaction.reply({
154
- content: await this.t(interaction, 'common.error.command.execution.invalid'),
155
- flags: discord_js_1.MessageFlags.Ephemeral,
176
+ catch (error) {
177
+ this.logger.error('Error handling chat input command:', error);
178
+ this.container.telemetry?.report('error', `Chat Input Command Failed: [${interaction.commandName}]`, {
179
+ message: error.message,
180
+ stack: error.stack,
156
181
  });
157
- return;
182
+ throw error;
158
183
  }
159
184
  }
160
185
  async _handleAutocomplete(interaction) {
161
- let commandKey = interaction.commandName;
162
- const group = interaction.options.getSubcommandGroup(false);
163
- const subcommand = interaction.options.getSubcommand(false);
164
- if (group)
165
- commandKey = `${commandKey} ${group} ${subcommand}`;
166
- else if (subcommand)
167
- commandKey = `${commandKey} ${subcommand}`;
168
- let handler = this.autocompleteHandlers.get(commandKey);
169
- if (!handler && (subcommand || group)) {
170
- handler = this.autocompleteHandlers.get(interaction.commandName);
171
- }
172
- if (handler) {
173
- try {
174
- await handler(interaction, this.container);
186
+ try {
187
+ let commandKey = interaction.commandName;
188
+ const group = interaction.options.getSubcommandGroup(false);
189
+ const subcommand = interaction.options.getSubcommand(false);
190
+ if (group)
191
+ commandKey = `${commandKey} ${group} ${subcommand}`;
192
+ else if (subcommand)
193
+ commandKey = `${commandKey} ${subcommand}`;
194
+ let handler = this.autocompleteHandlers.get(commandKey);
195
+ if (!handler && (subcommand || group)) {
196
+ handler = this.autocompleteHandlers.get(interaction.commandName);
175
197
  }
176
- catch (_e) { }
177
- }
178
- else {
179
- try {
180
- await interaction.respond([]);
198
+ if (handler) {
199
+ try {
200
+ await handler(interaction, this.container);
201
+ }
202
+ catch (_e) { }
181
203
  }
182
- catch (e) {
183
- this.logger.error(e);
204
+ else {
205
+ try {
206
+ await interaction.respond([]);
207
+ }
208
+ catch (e) {
209
+ this.logger.error(e);
210
+ }
184
211
  }
185
212
  }
213
+ catch (error) {
214
+ this.logger.error('Error handling autocomplete:', error);
215
+ this.container.telemetry?.report('error', `Autocomplete Failed: [${interaction.commandName}]`, {
216
+ message: error.message,
217
+ stack: error.stack,
218
+ });
219
+ }
186
220
  }
187
221
  async _handleButton(interaction) {
188
- const customIdPrefix = interaction.customId.includes('|')
189
- ? interaction.customId.split('|')[0]
190
- : interaction.customId.split(':')[0];
191
- const handler = this.buttonHandlers.get(customIdPrefix);
192
- if (handler) {
193
- const handlerFunc = handler;
194
- if (typeof handler === 'object' &&
195
- typeof handler.execute === 'function') {
196
- await handler.execute(interaction, this.container);
197
- }
198
- else if (typeof handler === 'function') {
199
- if (handlerFunc.length === 2) {
200
- await handler(interaction, this.container);
222
+ try {
223
+ const customIdPrefix = interaction.customId.includes('|')
224
+ ? interaction.customId.split('|')[0]
225
+ : interaction.customId.split(':')[0];
226
+ const handler = this.buttonHandlers.get(customIdPrefix);
227
+ if (handler) {
228
+ const handlerFunc = handler;
229
+ if (typeof handler === 'object' &&
230
+ typeof handler.execute === 'function') {
231
+ await handler.execute(interaction, this.container);
232
+ }
233
+ else if (typeof handler === 'function') {
234
+ if (handlerFunc.length === 2) {
235
+ await handler(interaction, this.container);
236
+ }
237
+ else {
238
+ await handler(interaction);
239
+ }
201
240
  }
202
241
  else {
203
- await handler(interaction);
242
+ this.logger.error(`Handler for button ${customIdPrefix} has an invalid format`);
204
243
  }
205
244
  }
206
- else {
207
- this.logger.error(`Handler for button ${customIdPrefix} has an invalid format`);
208
- }
245
+ }
246
+ catch (error) {
247
+ this.logger.error('Error handling button interaction:', error);
248
+ this.container.telemetry?.report('error', `Button Interaction Failed: [${interaction.customId}]`, {
249
+ message: error.message,
250
+ stack: error.stack,
251
+ });
252
+ throw error;
209
253
  }
210
254
  }
211
255
  async _handleModalSubmit(interaction) {
212
- const customIdPrefix = interaction.customId.includes('|')
213
- ? interaction.customId.split('|')[0]
214
- : interaction.customId.split(':')[0];
215
- this.logger.info(`Modal submit - customId: ${interaction.customId}, prefix: ${customIdPrefix}`);
216
- const handler = this.modalHandlers.get(customIdPrefix);
217
- this.logger.info(`Modal handler found: ${!!handler}`);
218
- if (handler) {
219
- const handlerFunc = handler;
220
- if (typeof handler === 'object' &&
221
- typeof handler.execute === 'function') {
222
- await handler.execute(interaction, this.container);
223
- }
224
- else if (typeof handler === 'function') {
225
- if (handlerFunc.length === 2) {
226
- await handler(interaction, this.container);
256
+ try {
257
+ const customIdPrefix = interaction.customId.includes('|')
258
+ ? interaction.customId.split('|')[0]
259
+ : interaction.customId.split(':')[0];
260
+ this.logger.info(`Modal submit - customId: ${interaction.customId}, prefix: ${customIdPrefix}`);
261
+ const handler = this.modalHandlers.get(customIdPrefix);
262
+ this.logger.info(`Modal handler found: ${!!handler}`);
263
+ if (handler) {
264
+ const handlerFunc = handler;
265
+ if (typeof handler === 'object' &&
266
+ typeof handler.execute === 'function') {
267
+ await handler.execute(interaction, this.container);
268
+ }
269
+ else if (typeof handler === 'function') {
270
+ if (handlerFunc.length === 2) {
271
+ await handler(interaction, this.container);
272
+ }
273
+ else {
274
+ await handler(interaction);
275
+ }
227
276
  }
228
277
  else {
229
- await handler(interaction);
278
+ this.logger.error(`Handler for modal ${customIdPrefix} has an invalid format`);
230
279
  }
231
280
  }
232
- else {
233
- this.logger.error(`Handler for modal ${customIdPrefix} has an invalid format`);
234
- }
281
+ }
282
+ catch (error) {
283
+ this.logger.error('Error handling modal submit:', error);
284
+ this.container.telemetry?.report('error', `Modal Submit Failed: [${interaction.customId}]`, {
285
+ message: error.message,
286
+ stack: error.stack,
287
+ });
288
+ throw error;
235
289
  }
236
290
  }
237
291
  async _handleSelectMenu(interaction) {
238
- const customIdPrefix = interaction.customId.includes('|')
239
- ? interaction.customId.split('|')[0]
240
- : interaction.customId.split(':')[0];
241
- this.logger.info(`Select menu submit - customId: ${interaction.customId}, prefix: ${customIdPrefix}`);
242
- const handler = this.selectMenuHandlers.get(customIdPrefix);
243
- this.logger.info(`Select menu handler found: ${!!handler}`);
244
- if (handler) {
245
- const handlerFunc = handler;
246
- if (typeof handler === 'object' &&
247
- typeof handler.execute === 'function') {
248
- await handler.execute(interaction, this.container);
249
- }
250
- else if (typeof handler === 'function') {
251
- if (handlerFunc.length === 2) {
252
- await handler(interaction, this.container);
292
+ try {
293
+ const customIdPrefix = interaction.customId.includes('|')
294
+ ? interaction.customId.split('|')[0]
295
+ : interaction.customId.split(':')[0];
296
+ this.logger.info(`Select menu submit - customId: ${interaction.customId}, prefix: ${customIdPrefix}`);
297
+ const handler = this.selectMenuHandlers.get(customIdPrefix);
298
+ this.logger.info(`Select menu handler found: ${!!handler}`);
299
+ if (handler) {
300
+ const handlerFunc = handler;
301
+ if (typeof handler === 'object' &&
302
+ typeof handler.execute === 'function') {
303
+ await handler.execute(interaction, this.container);
304
+ }
305
+ else if (typeof handler === 'function') {
306
+ if (handlerFunc.length === 2) {
307
+ await handler(interaction, this.container);
308
+ }
309
+ else {
310
+ await handler(interaction);
311
+ }
253
312
  }
254
313
  else {
255
- await handler(interaction);
314
+ this.logger.error(`Handler for select menu ${customIdPrefix} has an invalid format`);
256
315
  }
257
316
  }
258
- else {
259
- this.logger.error(`Handler for select menu ${customIdPrefix} has an invalid format`);
260
- }
317
+ }
318
+ catch (error) {
319
+ this.logger.error('Error handling select menu:', error);
320
+ this.container.telemetry?.report('error', `Select Menu Failed: [${interaction.customId}]`, {
321
+ message: error.message,
322
+ stack: error.stack,
323
+ });
324
+ throw error;
261
325
  }
262
326
  }
263
327
  async _handleContextMenuCommand(interaction) {
264
- const command = this.client.commands.get(interaction.commandName);
265
- if (!command)
266
- return;
267
- if (this.middlewareManager) {
268
- const canRun = await this.middlewareManager.handle(interaction, command);
269
- if (!canRun)
328
+ try {
329
+ const command = this.client.commands.get(interaction.commandName);
330
+ if (!command)
270
331
  return;
332
+ if (this.middlewareManager) {
333
+ const canRun = await this.middlewareManager.handle(interaction, command);
334
+ if (!canRun)
335
+ return;
336
+ }
337
+ if (!interaction.logger) {
338
+ interaction.logger = this.logger;
339
+ }
340
+ if (this.container && !this.container.logger) {
341
+ this.container.logger = this.logger;
342
+ }
343
+ await this._checkRestartSchedule(interaction);
344
+ if (typeof command.execute === 'function') {
345
+ await command.execute(interaction, this.container);
346
+ }
271
347
  }
272
- if (!interaction.logger) {
273
- interaction.logger = this.logger;
274
- }
275
- if (this.container && !this.container.logger) {
276
- this.container.logger = this.logger;
348
+ catch (error) {
349
+ this.logger.error('Error handling context menu command:', error);
350
+ this.container.telemetry?.report('error', `Context Menu Command Failed: [${interaction.commandName}]`, {
351
+ message: error.message,
352
+ stack: error.stack,
353
+ });
354
+ throw error;
277
355
  }
278
- await this._checkRestartSchedule(interaction);
279
- await command.execute(interaction, this.container);
280
356
  }
281
357
  async _checkRestartSchedule(interaction) {
282
358
  if (!interaction.isRepliable())
@@ -1 +1 @@
1
- {"version":3,"file":"InteractionManager.js","sourceRoot":"","sources":["../../src/managers/InteractionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InteractionManager.js","sourceRoot":"","sources":["../../src/managers/InteractionManager.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import type { Interaction } from 'discord.js';
2
- import type { KythiaContainer, KythiaMiddleware } from '../types';
3
- export default class MiddlewareManager {
2
+ import type { KythiaContainer, KythiaLogger, KythiaMiddleware } from '../types';
3
+ import type { IMiddlewareManager } from '../types/MiddlewareManager';
4
+ export default class MiddlewareManager implements IMiddlewareManager {
4
5
  container: KythiaContainer;
5
- logger: any;
6
+ logger: KythiaLogger;
6
7
  middlewares: KythiaMiddleware[];
7
8
  constructor({ container }: {
8
9
  container: KythiaContainer;
@@ -1 +1 @@
1
- {"version":3,"file":"MiddlewareManager.d.ts","sourceRoot":"","sources":["../../src/managers/MiddlewareManager.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAC9B,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,gBAAgB,EAAE,CAAC;gBAE3B,EAAE,SAAS,EAAE,EAAE;QAAE,SAAS,EAAE,eAAe,CAAA;KAAE;IAM5C,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;YAgC/B,aAAa;IA6Bd,MAAM,CAClB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,GACV,OAAO,CAAC,OAAO,CAAC;CAgBnB"}
1
+ {"version":3,"file":"MiddlewareManager.d.ts","sourceRoot":"","sources":["../../src/managers/MiddlewareManager.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,kBAAkB;IAC5D,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,gBAAgB,EAAE,CAAC;gBAE3B,EAAE,SAAS,EAAE,EAAE;QAAE,SAAS,EAAE,eAAe,CAAA;KAAE;IAM5C,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;YAwC/B,aAAa;IAyDd,MAAM,CAClB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,GACV,OAAO,CAAC,OAAO,CAAC;CAyBnB"}
@@ -15,48 +15,72 @@ class MiddlewareManager {
15
15
  this.middlewares = [];
16
16
  }
17
17
  async loadMiddlewares() {
18
- this.middlewares = [];
19
- const coreMiddlewarePath = node_path_1.default.join(__dirname, '..', 'middlewares');
20
- if (node_fs_1.default.existsSync(coreMiddlewarePath)) {
21
- await this._loadFromPath(coreMiddlewarePath, 'core');
22
- }
23
- else {
24
- this.logger.warn(`⚠️ Core middlewares path not found: ${coreMiddlewarePath}`);
25
- }
26
- const appRoot = this.container.appRoot || process.cwd();
27
- const userPaths = [
28
- node_path_1.default.join(appRoot, 'src', 'middlewares'),
29
- node_path_1.default.join(appRoot, 'middlewares'),
30
- ];
31
- for (const userPath of userPaths) {
32
- if (node_fs_1.default.existsSync(userPath) && userPath !== coreMiddlewarePath) {
33
- await this._loadFromPath(userPath, 'bot');
18
+ try {
19
+ this.middlewares = [];
20
+ const coreMiddlewarePath = node_path_1.default.join(__dirname, '..', 'middlewares');
21
+ if (node_fs_1.default.existsSync(coreMiddlewarePath)) {
22
+ await this._loadFromPath(coreMiddlewarePath, 'core');
23
+ }
24
+ else {
25
+ this.logger.warn(`⚠️ Core middlewares path not found: ${coreMiddlewarePath}`);
26
+ }
27
+ const appRoot = this.container.appRoot || process.cwd();
28
+ const userPaths = [
29
+ node_path_1.default.join(appRoot, 'src', 'middlewares'),
30
+ node_path_1.default.join(appRoot, 'middlewares'),
31
+ ];
32
+ for (const userPath of userPaths) {
33
+ if (node_fs_1.default.existsSync(userPath) && userPath !== coreMiddlewarePath) {
34
+ await this._loadFromPath(userPath, 'bot');
35
+ }
34
36
  }
37
+ this.middlewares.sort((a, b) => (a.priority || 10) - (b.priority || 10));
38
+ this.logger.info(`🛡️ Total Loaded: ${this.middlewares.length} middlewares.`);
39
+ }
40
+ catch (error) {
41
+ this.logger.error('Failed to load middlewares:', error);
42
+ this.container.telemetry?.report('error', 'Middleware Loading Failed', {
43
+ message: error.message,
44
+ stack: error.stack,
45
+ });
35
46
  }
36
- this.middlewares.sort((a, b) => (a.priority || 10) - (b.priority || 10));
37
- this.logger.info(`🛡️ Total Loaded: ${this.middlewares.length} middlewares.`);
38
47
  }
39
48
  async _loadFromPath(dirPath, source) {
40
- const files = node_fs_1.default
41
- .readdirSync(dirPath)
42
- .filter((f) => (f.endsWith('.js') || f.endsWith('.ts')) && !f.endsWith('.d.ts'));
43
- let loadedCount = 0;
44
- for (const file of files) {
45
- try {
46
- const middleware = require(node_path_1.default.join(dirPath, file));
47
- const mw = middleware.default || middleware;
48
- if (!mw.name || typeof mw.execute !== 'function') {
49
- this.logger.warn(`⚠️ Middleware ${file} invalid structure. Skipping.`);
50
- continue;
49
+ try {
50
+ const files = node_fs_1.default
51
+ .readdirSync(dirPath)
52
+ .filter((f) => (f.endsWith('.js') || f.endsWith('.ts')) && !f.endsWith('.d.ts'));
53
+ let loadedCount = 0;
54
+ for (const file of files) {
55
+ try {
56
+ const middleware = require(node_path_1.default.join(dirPath, file));
57
+ const mw = middleware.default || middleware;
58
+ if (!mw.name || typeof mw.execute !== 'function') {
59
+ this.logger.warn(`⚠️ Middleware ${file} invalid structure. Skipping.`);
60
+ continue;
61
+ }
62
+ this.middlewares.push(mw);
63
+ loadedCount++;
64
+ }
65
+ catch (err) {
66
+ this.logger.error(`❌ Failed to load middleware ${file}:`, err);
67
+ this.container.telemetry?.report('error', `Middleware Load Failed: [${file}]`, {
68
+ message: err.message,
69
+ stack: err.stack,
70
+ source,
71
+ });
51
72
  }
52
- this.middlewares.push(mw);
53
- loadedCount++;
54
- }
55
- catch (err) {
56
- this.logger.error(`❌ Failed to load middleware ${file}:`, err);
57
73
  }
74
+ this.logger.info(`🛡️ Loaded ${loadedCount} middlewares from ${source}`);
75
+ }
76
+ catch (error) {
77
+ this.logger.error(`Failed to read middleware directory [${dirPath}]:`, error);
78
+ this.container.telemetry?.report('error', `Middleware Directory Read Failed: [${dirPath}]`, {
79
+ message: error.message,
80
+ stack: error.stack,
81
+ source,
82
+ });
58
83
  }
59
- this.logger.info(`🛡️ Loaded ${loadedCount} middlewares from ${source}`);
60
84
  }
61
85
  async handle(interaction, command) {
62
86
  for (const middleware of this.middlewares) {
@@ -67,6 +91,11 @@ class MiddlewareManager {
67
91
  }
68
92
  catch (err) {
69
93
  this.logger.error(`❌ Error in middleware ${middleware.name}:`, err);
94
+ this.container.telemetry?.report('error', `Middleware Execution Failed: [${middleware.name}]`, {
95
+ message: err.message,
96
+ stack: err.stack,
97
+ command: command.name,
98
+ });
70
99
  return false;
71
100
  }
72
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MiddlewareManager.js","sourceRoot":"","sources":["../../src/managers/MiddlewareManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MiddlewareManager.js","sourceRoot":"","sources":["../../src/managers/MiddlewareManager.ts"],"names":[],"mappings":"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"}