@seedcord/gateway 0.1.0-next.6 → 0.1.1-next.0

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/index.cjs CHANGED
@@ -20,7 +20,7 @@ var __copyProps = (to, from, except, desc) => {
20
20
  }
21
21
  return to;
22
22
  };
23
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
23
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
24
24
  value: mod,
25
25
  enumerable: true
26
26
  }) : target, mod));
@@ -549,6 +549,18 @@ var InteractionMiddleware = class extends BaseHandler {
549
549
 
550
550
  //#endregion
551
551
  //#region src/bot/ReplySender.ts
552
+ function isReplyFile(file) {
553
+ return typeof file === "object" && "data" in file && ArrayBuffer.isView(file.data);
554
+ }
555
+ function toDjsFile(file) {
556
+ if (!isReplyFile(file)) return file;
557
+ return {
558
+ attachment: Buffer.from(file.data),
559
+ name: file.name,
560
+ ...file.description !== void 0 && { description: file.description },
561
+ ...file.title !== void 0 && { title: file.title }
562
+ };
563
+ }
552
564
  function seedState(interaction) {
553
565
  if (interaction.deferred && interaction.ephemeral === null) return "deferred-update";
554
566
  if (interaction.replied) return "replied";
@@ -562,10 +574,10 @@ function seedState(interaction) {
562
574
  var ReplySender = class extends _seedcord_core_internal.BaseReplySender {
563
575
  interaction;
564
576
  constructor(interaction, routeId, bus) {
565
- super(routeId, seedState(interaction), bus && {
577
+ super(routeId, {
566
578
  bus,
567
579
  interactionId: interaction.id
568
- });
580
+ }, seedState(interaction));
569
581
  this.interaction = interaction;
570
582
  }
571
583
  async writeReply(response, opts) {
@@ -631,7 +643,7 @@ var ReplySender = class extends _seedcord_core_internal.BaseReplySender {
631
643
  components: reply.components,
632
644
  flags,
633
645
  ...reply.allowedMentions && { allowedMentions: reply.allowedMentions },
634
- ...reply.files && { files: [...reply.files] }
646
+ ...reply.files && { files: reply.files.map(toDjsFile) }
635
647
  };
636
648
  }
637
649
  editOptions(response) {
@@ -640,7 +652,7 @@ var ReplySender = class extends _seedcord_core_internal.BaseReplySender {
640
652
  components: reply.components,
641
653
  flags: discord_js.MessageFlags.IsComponentsV2,
642
654
  ...reply.allowedMentions && { allowedMentions: reply.allowedMentions },
643
- ...reply.files && { files: [...reply.files] }
655
+ ...reply.files && { files: reply.files.map(toDjsFile) }
644
656
  };
645
657
  }
646
658
  updateOptions(response) {
@@ -649,7 +661,7 @@ var ReplySender = class extends _seedcord_core_internal.BaseReplySender {
649
661
  components: reply.components,
650
662
  flags: discord_js.MessageFlags.IsComponentsV2,
651
663
  ...reply.allowedMentions && { allowedMentions: reply.allowedMentions },
652
- ...reply.files && { files: [...reply.files] }
664
+ ...reply.files && { files: reply.files.map(toDjsFile) }
653
665
  };
654
666
  }
655
667
  createdMessage(result) {
@@ -1505,7 +1517,7 @@ function interactionKind(interaction) {
1505
1517
 
1506
1518
  //#endregion
1507
1519
  //#region src/bot/handleEventFault.ts
1508
- const logger$1 = new _seedcord_logger.Logger("EventBoundary", { channel: "errors" });
1520
+ const logger$1 = new _seedcord_logger.Logger("Faults", { channel: "errors" });
1509
1521
  /**
1510
1522
  * The event controller boundary. Reports a throw from an event handler and never replies, since a
1511
1523
  * generic event has no reply target. A {@link Silence} or a non-reporting {@link Notice} stops quietly, a
@@ -1607,11 +1619,11 @@ var EventDispatcher = class {
1607
1619
  utils.summary("Loaded", {
1608
1620
  "event handlers": this.loadedHandlers.length,
1609
1621
  middlewares: this.loadedMiddlewares.length
1610
- });
1611
- if (this.loadedMiddlewares.length > 0) utils.block("Loaded event middlewares", utils.entries(this.loadedMiddlewares));
1622
+ }, "debug");
1623
+ if (this.loadedMiddlewares.length > 0) utils.block("Loaded event middlewares", utils.entries(this.loadedMiddlewares), "debug");
1612
1624
  const perEvent = {};
1613
1625
  for (const [event, handlers] of this.eventMap) perEvent[event] = handlers.length;
1614
- utils.block("Loaded event handlers", [...utils.entries(this.loadedHandlers), ...utils.counts(perEvent)]);
1626
+ utils.block("Loaded event handlers", [...utils.entries(this.loadedHandlers), ...utils.counts(perEvent)], "debug");
1615
1627
  }
1616
1628
  async loadHandlers(dir) {
1617
1629
  await (0, _seedcord_utils_node.traverseDirectory)(dir, (fullPath, relativePath, imported) => {
@@ -1661,14 +1673,10 @@ var EventDispatcher = class {
1661
1673
  ...metadata.events && { events: metadata.events }
1662
1674
  });
1663
1675
  this.middlewares.sort((a, b) => a.priority - b.priority);
1664
- if (this.loading) {
1665
- this.loadedMiddlewares.push({
1666
- name: `${middlewareCtor.name} (${metadata.priority})`,
1667
- from: (0, _seedcord_utils.formatFilePath)(relativePath)
1668
- });
1669
- return;
1670
- }
1671
- this.logger.utils.registration(`${middlewareCtor.name} ${_seedcord_logger.paint.mute(`(${metadata.priority})`)}`, relativePath, "event middleware");
1676
+ if (this.loading) this.loadedMiddlewares.push({
1677
+ name: `${middlewareCtor.name} (${metadata.priority})`,
1678
+ from: (0, _seedcord_utils.formatFilePath)(relativePath)
1679
+ });
1672
1680
  }
1673
1681
  async runMiddlewares(eventName, args) {
1674
1682
  for (const { ctor, events } of this.middlewares) {
@@ -1714,7 +1722,6 @@ var EventDispatcher = class {
1714
1722
  name: handlerClass.name,
1715
1723
  from
1716
1724
  });
1717
- else this.logger.utils.registration(handlerClass.name, from);
1718
1725
  }
1719
1726
  attachToClient() {
1720
1727
  for (const [eventName] of this.eventMap) this.attachListener(eventName);
@@ -1763,7 +1770,8 @@ var EventDispatcher = class {
1763
1770
  try {
1764
1771
  this.logger.debug(`Processing ${_seedcord_logger.paint.mint.bold(eventName)} with ${_seedcord_logger.paint.mute(ctor.name)}`);
1765
1772
  const handler = new ctor(args, this.core, eventName);
1766
- await (0, _seedcord_core_internal.runHandlerGates)(ctor, eventGateContext(eventName, args, this.core));
1773
+ const eventCtx = eventGateContext(eventName, args, this.core);
1774
+ await (0, _seedcord_core_internal.runHandlerGates)(ctor, eventCtx);
1767
1775
  await handler.execute();
1768
1776
  } catch (caught) {
1769
1777
  handleEventFault(caught, String(eventName), ctor.name, args, this.core);
@@ -1801,7 +1809,7 @@ var UnhandledAutocomplete = class extends AutocompleteHandler {
1801
1809
  *
1802
1810
  * @internal
1803
1811
  */
1804
- const HARMLESS_API_CODES = new Set([
1812
+ const HARMLESS_API_CODES = /* @__PURE__ */ new Set([
1805
1813
  discord_js.RESTJSONErrorCodes.UnknownInteraction,
1806
1814
  discord_js.RESTJSONErrorCodes.InteractionHasAlreadyBeenAcknowledged,
1807
1815
  discord_js.RESTJSONErrorCodes.UnknownMessage
@@ -1809,7 +1817,7 @@ const HARMLESS_API_CODES = new Set([
1809
1817
 
1810
1818
  //#endregion
1811
1819
  //#region src/bot/handleInteractionFault.ts
1812
- const logger = new _seedcord_logger.Logger("InteractionBoundary", { channel: "errors" });
1820
+ const logger = new _seedcord_logger.Logger("Faults", { channel: "errors" });
1813
1821
  /**
1814
1822
  * The interaction controller boundary. Sorts a throw from any handler-lifecycle phase into the right
1815
1823
  * user reply plus the right bus event. When a handler is built its sender is passed in, so the boundary
@@ -1977,8 +1985,8 @@ var InteractionDispatcher = class {
1977
1985
  utils.summary("Loaded", {
1978
1986
  "interaction handlers": this.loadedHandlers.length,
1979
1987
  middlewares: this.loadedMiddlewares.length
1980
- });
1981
- if (this.loadedMiddlewares.length > 0) utils.block("Loaded middlewares", utils.entries(this.loadedMiddlewares));
1988
+ }, "debug");
1989
+ if (this.loadedMiddlewares.length > 0) utils.block("Loaded middlewares", utils.entries(this.loadedMiddlewares), "debug");
1982
1990
  utils.block("Loaded interaction handlers", [...utils.entries(this.loadedHandlers), ...utils.counts({
1983
1991
  slash: this.slashMap.size,
1984
1992
  buttons: this.buttonMap.size,
@@ -1991,7 +1999,7 @@ var InteractionDispatcher = class {
1991
1999
  "message menus": this.messageContextMenuMap.size,
1992
2000
  "user menus": this.userContextMenuMap.size,
1993
2001
  autocomplete: this.autocompleteMap.size
1994
- })]);
2002
+ })], "debug");
1995
2003
  }
1996
2004
  async loadHandlers(dir) {
1997
2005
  await (0, _seedcord_utils_node.traverseDirectory)(dir, (fullPath, relativePath, imported) => {
@@ -2021,14 +2029,10 @@ var InteractionDispatcher = class {
2021
2029
  priority: metadata.priority
2022
2030
  });
2023
2031
  this.middlewares.sort((a, b) => a.priority - b.priority);
2024
- if (this.loading) {
2025
- this.loadedMiddlewares.push({
2026
- name: `${middlewareCtor.name} (${metadata.priority})`,
2027
- from: (0, _seedcord_utils.formatFilePath)(relativePath)
2028
- });
2029
- return;
2030
- }
2031
- this.logger.utils.registration(`${middlewareCtor.name} ${_seedcord_logger.paint.mute(`(${metadata.priority})`)}`, relativePath, "middleware");
2032
+ if (this.loading) this.loadedMiddlewares.push({
2033
+ name: `${middlewareCtor.name} (${metadata.priority})`,
2034
+ from: (0, _seedcord_utils.formatFilePath)(relativePath)
2035
+ });
2032
2036
  }
2033
2037
  isHandlerClass(obj) {
2034
2038
  if (typeof obj !== "function") return false;
@@ -2061,7 +2065,6 @@ var InteractionDispatcher = class {
2061
2065
  name: handlerClass.name,
2062
2066
  from
2063
2067
  });
2064
- else this.logger.utils.registration(handlerClass.name, from);
2065
2068
  }
2066
2069
  /** @internal For use in dev mode */
2067
2070
  async onHmr(event) {
@@ -2121,7 +2124,7 @@ var InteractionDispatcher = class {
2121
2124
  const report = (outcome) => {
2122
2125
  if (reported) return;
2123
2126
  reported = true;
2124
- this.core.bus[_seedcord_core_internal.PublishDefault]("interactionDispatched", (0, _seedcord_core_internal.dispatchedPayload)({
2127
+ (0, _seedcord_core_internal.reportDispatch)(this.core.bus, {
2125
2128
  routeId,
2126
2129
  interactionId: interaction.id,
2127
2130
  kind,
@@ -2129,7 +2132,7 @@ var InteractionDispatcher = class {
2129
2132
  startedAt,
2130
2133
  fallback: !matched,
2131
2134
  queuedMs
2132
- }));
2135
+ });
2133
2136
  };
2134
2137
  let sender;
2135
2138
  try {
@@ -2211,9 +2214,7 @@ var InteractionDispatcher = class {
2211
2214
  case interaction.isAutocomplete():
2212
2215
  await this.handleAutocomplete(interaction);
2213
2216
  break;
2214
- default:
2215
- this.logger.warn(`Unhandled interaction type: ${interaction.type}`);
2216
- break;
2217
+ default: this.logger.warn(`Unhandled interaction type: ${interaction.type}`);
2217
2218
  }
2218
2219
  }
2219
2220
  async handleSlashCommand(interaction) {
@@ -2254,7 +2255,7 @@ var InteractionDispatcher = class {
2254
2255
  };
2255
2256
 
2256
2257
  //#endregion
2257
- //#region \0@oxc-project+runtime@0.135.0/helpers/esm/decorate.js
2258
+ //#region \0@oxc-project+runtime@0.142.0/helpers/esm/decorate.js
2258
2259
  function __decorate(decorators, target, key, desc) {
2259
2260
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2260
2261
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -2369,7 +2370,7 @@ __decorate([(0, envapt_legacy.Envapt)("DISCORD_BOT_TOKEN", { converter: (raw) =>
2369
2370
  //#endregion
2370
2371
  //#region src/version.ts
2371
2372
  /** Package version */
2372
- const version = "0.1.0-next.6";
2373
+ const version = "0.1.1-next.0";
2373
2374
 
2374
2375
  //#endregion
2375
2376
  //#region src/Seedcord.ts
@@ -2421,7 +2422,7 @@ var Seedcord = class Seedcord extends _seedcord_core_node_internal.Pluggable {
2421
2422
  }
2422
2423
  static reset() {
2423
2424
  super.reset();
2424
- _seedcord_logger.LoggerChannelRegistry.instance.reset();
2425
+ _seedcord_logger.LoggerChannelRegistry.instance.configure({});
2425
2426
  }
2426
2427
  registerStartupTasks() {
2427
2428
  if (envapt.Envapter.isDevelopment || envapt.Envapter.isTest) this.registerHmrAwareModules();