@buape/carbon 0.14.0 → 0.16.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.
Files changed (182) hide show
  1. package/LICENSE +1 -1
  2. package/dist/package.json +11 -9
  3. package/dist/src/abstracts/BaseChannel.d.ts +24 -2
  4. package/dist/src/abstracts/BaseChannel.d.ts.map +1 -1
  5. package/dist/src/abstracts/BaseChannel.js +45 -4
  6. package/dist/src/abstracts/BaseChannel.js.map +1 -1
  7. package/dist/src/abstracts/BaseCommand.d.ts +15 -3
  8. package/dist/src/abstracts/BaseCommand.d.ts.map +1 -1
  9. package/dist/src/abstracts/BaseCommand.js +32 -3
  10. package/dist/src/abstracts/BaseCommand.js.map +1 -1
  11. package/dist/src/abstracts/BaseInteraction.d.ts +1 -1
  12. package/dist/src/abstracts/BaseInteraction.d.ts.map +1 -1
  13. package/dist/src/abstracts/BaseInteraction.js +3 -3
  14. package/dist/src/abstracts/BaseInteraction.js.map +1 -1
  15. package/dist/src/abstracts/BaseListener.d.ts +7 -4
  16. package/dist/src/abstracts/BaseListener.d.ts.map +1 -1
  17. package/dist/src/abstracts/BaseListener.js.map +1 -1
  18. package/dist/src/abstracts/Plugin.d.ts +6 -0
  19. package/dist/src/abstracts/Plugin.d.ts.map +1 -1
  20. package/dist/src/abstracts/Plugin.js.map +1 -1
  21. package/dist/src/adapters/bun/index.d.ts +1 -1
  22. package/dist/src/adapters/bun/index.d.ts.map +1 -1
  23. package/dist/src/adapters/bun/index.js +6 -0
  24. package/dist/src/adapters/bun/index.js.map +1 -1
  25. package/dist/src/adapters/fetch/index.d.ts.map +1 -1
  26. package/dist/src/adapters/fetch/index.js +6 -0
  27. package/dist/src/adapters/fetch/index.js.map +1 -1
  28. package/dist/src/classes/Client.d.ts +97 -6
  29. package/dist/src/classes/Client.d.ts.map +1 -1
  30. package/dist/src/classes/Client.js +187 -12
  31. package/dist/src/classes/Client.js.map +1 -1
  32. package/dist/src/classes/EntryPointCommand.d.ts +11 -0
  33. package/dist/src/classes/EntryPointCommand.d.ts.map +1 -0
  34. package/dist/src/classes/EntryPointCommand.js +13 -0
  35. package/dist/src/classes/EntryPointCommand.js.map +1 -0
  36. package/dist/src/classes/Listener.d.ts +83 -81
  37. package/dist/src/classes/Listener.d.ts.map +1 -1
  38. package/dist/src/classes/Listener.js +15 -4
  39. package/dist/src/classes/Listener.js.map +1 -1
  40. package/dist/src/classes/RequestClient.d.ts +92 -17
  41. package/dist/src/classes/RequestClient.d.ts.map +1 -1
  42. package/dist/src/classes/RequestClient.js +207 -136
  43. package/dist/src/classes/RequestClient.js.map +1 -1
  44. package/dist/src/errors/RatelimitError.d.ts +4 -1
  45. package/dist/src/errors/RatelimitError.d.ts.map +1 -1
  46. package/dist/src/errors/RatelimitError.js +7 -1
  47. package/dist/src/errors/RatelimitError.js.map +1 -1
  48. package/dist/src/functions/channelFactory.d.ts +4 -12
  49. package/dist/src/functions/channelFactory.d.ts.map +1 -1
  50. package/dist/src/functions/channelFactory.js +39 -13
  51. package/dist/src/functions/channelFactory.js.map +1 -1
  52. package/dist/src/index.d.ts +1 -0
  53. package/dist/src/index.d.ts.map +1 -1
  54. package/dist/src/index.js +1 -0
  55. package/dist/src/index.js.map +1 -1
  56. package/dist/src/internals/BoundedExecutor.d.ts +12 -0
  57. package/dist/src/internals/BoundedExecutor.d.ts.map +1 -0
  58. package/dist/src/internals/BoundedExecutor.js +60 -0
  59. package/dist/src/internals/BoundedExecutor.js.map +1 -0
  60. package/dist/src/internals/CommandHandler.d.ts.map +1 -1
  61. package/dist/src/internals/CommandHandler.js +53 -6
  62. package/dist/src/internals/CommandHandler.js.map +1 -1
  63. package/dist/src/internals/ComponentHandler.d.ts +2 -1
  64. package/dist/src/internals/ComponentHandler.d.ts.map +1 -1
  65. package/dist/src/internals/ComponentHandler.js +11 -4
  66. package/dist/src/internals/ComponentHandler.js.map +1 -1
  67. package/dist/src/internals/EventHandler.d.ts +18 -3
  68. package/dist/src/internals/EventHandler.d.ts.map +1 -1
  69. package/dist/src/internals/EventQueue.d.ts +43 -12
  70. package/dist/src/internals/EventQueue.d.ts.map +1 -1
  71. package/dist/src/internals/EventQueue.js +294 -62
  72. package/dist/src/internals/EventQueue.js.map +1 -1
  73. package/dist/src/internals/FieldsHandler.d.ts.map +1 -1
  74. package/dist/src/internals/FieldsHandler.js +10 -1
  75. package/dist/src/internals/FieldsHandler.js.map +1 -1
  76. package/dist/src/internals/RequestBody.d.ts +6 -0
  77. package/dist/src/internals/RequestBody.d.ts.map +1 -0
  78. package/dist/src/internals/RequestBody.js +74 -0
  79. package/dist/src/internals/RequestBody.js.map +1 -0
  80. package/dist/src/internals/RequestScheduler.d.ts +131 -0
  81. package/dist/src/internals/RequestScheduler.d.ts.map +1 -0
  82. package/dist/src/internals/RequestScheduler.js +245 -0
  83. package/dist/src/internals/RequestScheduler.js.map +1 -0
  84. package/dist/src/internals/TemporaryListenerManager.d.ts +3 -3
  85. package/dist/src/internals/TemporaryListenerManager.d.ts.map +1 -1
  86. package/dist/src/internals/TemporaryListenerManager.js +1 -1
  87. package/dist/src/internals/TemporaryListenerManager.js.map +1 -1
  88. package/dist/src/plugins/client-manager/ClientManager.d.ts +30 -2
  89. package/dist/src/plugins/client-manager/ClientManager.d.ts.map +1 -1
  90. package/dist/src/plugins/client-manager/ClientManager.js +86 -16
  91. package/dist/src/plugins/client-manager/ClientManager.js.map +1 -1
  92. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayDurableObject.d.ts +43 -0
  93. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayDurableObject.d.ts.map +1 -0
  94. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayDurableObject.js +210 -0
  95. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayDurableObject.js.map +1 -0
  96. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayPlugin.d.ts +16 -0
  97. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayPlugin.d.ts.map +1 -0
  98. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayPlugin.js +129 -0
  99. package/dist/src/plugins/cloudflare-gateway/CloudflareGatewayPlugin.js.map +1 -0
  100. package/dist/src/plugins/cloudflare-gateway/index.d.ts +4 -0
  101. package/dist/src/plugins/cloudflare-gateway/index.d.ts.map +1 -0
  102. package/dist/src/plugins/cloudflare-gateway/index.js +4 -0
  103. package/dist/src/plugins/cloudflare-gateway/index.js.map +1 -0
  104. package/dist/src/plugins/cloudflare-gateway/types.d.ts +63 -0
  105. package/dist/src/plugins/cloudflare-gateway/types.d.ts.map +1 -0
  106. package/dist/src/plugins/cloudflare-gateway/types.js +2 -0
  107. package/dist/src/plugins/cloudflare-gateway/types.js.map +1 -0
  108. package/dist/src/plugins/gateway/GatewayPlugin.d.ts +108 -19
  109. package/dist/src/plugins/gateway/GatewayPlugin.d.ts.map +1 -1
  110. package/dist/src/plugins/gateway/GatewayPlugin.js +564 -253
  111. package/dist/src/plugins/gateway/GatewayPlugin.js.map +1 -1
  112. package/dist/src/plugins/gateway/types.d.ts +33 -1
  113. package/dist/src/plugins/gateway/types.d.ts.map +1 -1
  114. package/dist/src/plugins/gateway/types.js +21 -0
  115. package/dist/src/plugins/gateway/types.js.map +1 -1
  116. package/dist/src/plugins/gateway/utils/heartbeat.d.ts.map +1 -1
  117. package/dist/src/plugins/gateway/utils/heartbeat.js +10 -4
  118. package/dist/src/plugins/gateway/utils/heartbeat.js.map +1 -1
  119. package/dist/src/plugins/gateway/utils/payload.d.ts.map +1 -1
  120. package/dist/src/plugins/gateway/utils/payload.js +0 -4
  121. package/dist/src/plugins/gateway/utils/payload.js.map +1 -1
  122. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.d.ts +56 -3
  123. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.d.ts.map +1 -1
  124. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.js +224 -21
  125. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.js.map +1 -1
  126. package/dist/src/plugins/paginator/index.d.ts +1 -1
  127. package/dist/src/plugins/paginator/index.d.ts.map +1 -1
  128. package/dist/src/plugins/paginator/index.js +1 -1
  129. package/dist/src/plugins/paginator/index.js.map +1 -1
  130. package/dist/src/plugins/voice/VoicePlugin.d.ts.map +1 -1
  131. package/dist/src/plugins/voice/VoicePlugin.js +5 -1
  132. package/dist/src/plugins/voice/VoicePlugin.js.map +1 -1
  133. package/dist/src/plugins/voice/VoiceServerUpdateListener.d.ts +10 -0
  134. package/dist/src/plugins/voice/VoiceServerUpdateListener.d.ts.map +1 -0
  135. package/dist/src/plugins/voice/VoiceServerUpdateListener.js +16 -0
  136. package/dist/src/plugins/voice/VoiceServerUpdateListener.js.map +1 -0
  137. package/dist/src/plugins/voice/VoiceStateUpdateListener.d.ts +10 -0
  138. package/dist/src/plugins/voice/VoiceStateUpdateListener.d.ts.map +1 -0
  139. package/dist/src/plugins/voice/VoiceStateUpdateListener.js +21 -0
  140. package/dist/src/plugins/voice/VoiceStateUpdateListener.js.map +1 -0
  141. package/dist/src/structures/GroupDmChannel.d.ts +5 -1
  142. package/dist/src/structures/GroupDmChannel.d.ts.map +1 -1
  143. package/dist/src/structures/GroupDmChannel.js +10 -1
  144. package/dist/src/structures/GroupDmChannel.js.map +1 -1
  145. package/dist/src/structures/Guild.d.ts +13 -4
  146. package/dist/src/structures/Guild.d.ts.map +1 -1
  147. package/dist/src/structures/Guild.js +9 -1
  148. package/dist/src/structures/Guild.js.map +1 -1
  149. package/dist/src/structures/GuildMediaChannel.d.ts +1 -1
  150. package/dist/src/structures/GuildMediaChannel.d.ts.map +1 -1
  151. package/dist/src/structures/GuildMediaChannel.js.map +1 -1
  152. package/dist/src/structures/Message.d.ts +1 -1
  153. package/dist/src/structures/Poll.d.ts +1 -1
  154. package/dist/src/structures/Poll.d.ts.map +1 -1
  155. package/dist/src/structures/Webhook.d.ts +4 -2
  156. package/dist/src/structures/Webhook.d.ts.map +1 -1
  157. package/dist/src/structures/Webhook.js +42 -29
  158. package/dist/src/structures/Webhook.js.map +1 -1
  159. package/dist/src/types/channels.d.ts +33 -0
  160. package/dist/src/types/channels.d.ts.map +1 -0
  161. package/dist/src/types/channels.js +2 -0
  162. package/dist/src/types/channels.js.map +1 -0
  163. package/dist/src/types/commandMiddleware.d.ts +64 -0
  164. package/dist/src/types/commandMiddleware.d.ts.map +1 -0
  165. package/dist/src/types/commandMiddleware.js +2 -0
  166. package/dist/src/types/commandMiddleware.js.map +1 -0
  167. package/dist/src/types/index.d.ts +10 -5
  168. package/dist/src/types/index.d.ts.map +1 -1
  169. package/dist/src/types/index.js +2 -0
  170. package/dist/src/types/index.js.map +1 -1
  171. package/dist/src/types/listeners.d.ts +13 -4
  172. package/dist/src/types/listeners.d.ts.map +1 -1
  173. package/dist/src/types/listeners.js.map +1 -1
  174. package/dist/src/utils/payload.d.ts.map +1 -1
  175. package/dist/src/utils/payload.js +16 -0
  176. package/dist/src/utils/payload.js.map +1 -1
  177. package/dist/tsconfig.tsbuildinfo +1 -1
  178. package/package.json +11 -9
  179. package/dist/src/adapters/node/index.d.ts +0 -13
  180. package/dist/src/adapters/node/index.d.ts.map +0 -1
  181. package/dist/src/adapters/node/index.js +0 -17
  182. package/dist/src/adapters/node/index.js.map +0 -1
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2024 Buape Studios
3
+ Copyright (c) 2026 Buape Studios
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/dist/package.json CHANGED
@@ -1,9 +1,12 @@
1
1
  {
2
2
  "name": "@buape/carbon",
3
- "version": "0.14.0",
3
+ "version": "0.16.0",
4
4
  "type": "module",
5
5
  "main": "./dist/src/index.js",
6
- "repository": "github:buape/carbon",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/buape/carbon"
9
+ },
7
10
  "exports": {
8
11
  ".": {
9
12
  "types": "./dist/src/index.d.ts",
@@ -25,16 +28,15 @@
25
28
  },
26
29
  "license": "MIT",
27
30
  "dependencies": {
28
- "@types/node": "^25.0.9",
29
- "discord-api-types": "0.38.37"
31
+ "@types/node": "^25.6.0",
32
+ "discord-api-types": "0.38.45"
30
33
  },
31
34
  "optionalDependencies": {
32
- "@cloudflare/workers-types": "4.20260120.0",
33
- "@discordjs/voice": "0.19.0",
34
- "@hono/node-server": "1.19.9",
35
- "@types/bun": "1.3.6",
35
+ "@cloudflare/workers-types": "4.20260405.1",
36
+ "@discordjs/voice": "0.19.2",
37
+ "@types/bun": "1.3.11",
36
38
  "@types/ws": "8.18.1",
37
- "ws": "8.19.0"
39
+ "ws": "8.20.0"
38
40
  },
39
41
  "files": [
40
42
  "dist",
@@ -1,17 +1,19 @@
1
- import { type APIChannel, type ChannelFlags, type ChannelType } from "discord-api-types/v10";
1
+ import { type APIChannel, type ChannelFlags, ChannelType } from "discord-api-types/v10";
2
2
  import type { Client } from "../classes/Client.js";
3
+ import type { DMBasedChannel, GuildBasedChannel, SendableChannel, ThreadChannel, ThreadOnlyChannel } from "../types/channels.js";
3
4
  import type { IfPartial } from "../types/index.js";
4
5
  import { Base } from "./Base.js";
5
6
  export declare abstract class BaseChannel<Type extends ChannelType, IsPartial extends boolean = false> extends Base {
6
7
  constructor(client: Client, rawDataOrId: IsPartial extends true ? string : Extract<APIChannel, {
7
8
  type: Type;
8
- }>);
9
+ }>, type?: Type);
9
10
  /**
10
11
  * The raw data of the channel.
11
12
  */
12
13
  protected _rawData: Extract<APIChannel, {
13
14
  type: Type;
14
15
  }> | null;
16
+ private _type;
15
17
  protected setData(data: Extract<APIChannel, {
16
18
  type: Type;
17
19
  }>): void;
@@ -37,6 +39,26 @@ export declare abstract class BaseChannel<Type extends ChannelType, IsPartial ex
37
39
  * The type of the channel.
38
40
  */
39
41
  get type(): IfPartial<IsPartial, Type>;
42
+ /**
43
+ * Whether this is a DM-based channel.
44
+ */
45
+ isDMBased(): this is Extract<this, DMBasedChannel<IsPartial>>;
46
+ /**
47
+ * Whether this is a guild channel.
48
+ */
49
+ isGuildBased(): this is Extract<this, GuildBasedChannel<IsPartial>>;
50
+ /**
51
+ * Whether this channel is a thread.
52
+ */
53
+ isThread(): this is Extract<this, ThreadChannel<IsPartial>>;
54
+ /**
55
+ * Whether this channel is thread-only (forum/media).
56
+ */
57
+ isThreadOnly(): this is Extract<this, ThreadOnlyChannel<IsPartial>>;
58
+ /**
59
+ * Whether this channel can be sent to directly.
60
+ */
61
+ isSendable(): this is Extract<this, SendableChannel<IsPartial>>;
40
62
  /**
41
63
  * The flags of the channel in a bitfield.
42
64
  * @see https://discord.com/developers/docs/resources/channel#channel-object-channel-flags
@@ -1 +1 @@
1
- {"version":3,"file":"BaseChannel.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,WAAW,EAEhB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,8BAAsB,WAAW,CAChC,IAAI,SAAS,WAAW,EACxB,SAAS,SAAS,OAAO,GAAG,KAAK,CAChC,SAAQ,IAAI;gBAEZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,SAAS,SAAS,IAAI,GAChC,MAAM,GACN,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;IAYvC;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,GAAG,IAAI,CAAO;IACrE,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;IAI3D,SAAS,CAAC,QAAQ,CACjB,KAAK,EAAE,MAAM,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,EAChD,KAAK,EAAE,OAAO;IAOf;;OAEG;IACH,IAAI,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC,CAM3D;IAED;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,IAAI,OAAO,IAAI,SAAS,CAEvB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAGrC;IAED;;;OAGG;IACH,IAAI,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,YAAY,GAAG,SAAS,CAAC,CAG1D;IAED;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAWhD;;OAEG;IACG,MAAM;IAIZ;;;OAGG;IACH,QAAQ,IAAI,MAAM;CAGlB"}
1
+ {"version":3,"file":"BaseChannel.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,WAAW,EAEX,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EACX,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,8BAAsB,WAAW,CAChC,IAAI,SAAS,WAAW,EACxB,SAAS,SAAS,OAAO,GAAG,KAAK,CAChC,SAAQ,IAAI;gBAEZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,SAAS,SAAS,IAAI,GAChC,MAAM,GACN,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,EACtC,IAAI,CAAC,EAAE,IAAI;IAaZ;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,GAAG,IAAI,CAAO;IACrE,OAAO,CAAC,KAAK,CAAoB;IAEjC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;IAK3D,SAAS,CAAC,QAAQ,CACjB,KAAK,EAAE,MAAM,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,EAChD,KAAK,EAAE,OAAO;IAOf;;OAEG;IACH,IAAI,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC,CAM3D;IAED;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,IAAI,OAAO,IAAI,SAAS,CAEvB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAIrC;IAED;;OAEG;IACH,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAI7D;;OAEG;IACH,YAAY,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAInE;;OAEG;IACH,QAAQ,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAQ3D;;OAEG;IACH,YAAY,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAOnE;;OAEG;IACH,UAAU,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IAS/D;;;OAGG;IACH,IAAI,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,YAAY,GAAG,SAAS,CAAC,CAG1D;IAED;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAWhD;;OAEG;IACG,MAAM;IAIZ;;;OAGG;IACH,QAAQ,IAAI,MAAM;CAGlB"}
@@ -1,10 +1,11 @@
1
- import { Routes } from "discord-api-types/v10";
1
+ import { ChannelType, Routes } from "discord-api-types/v10";
2
2
  import { Base } from "./Base.js";
3
3
  export class BaseChannel extends Base {
4
- constructor(client, rawDataOrId) {
4
+ constructor(client, rawDataOrId, type) {
5
5
  super(client);
6
6
  if (typeof rawDataOrId === "string") {
7
7
  this.id = rawDataOrId;
8
+ this._type = type ?? null;
8
9
  }
9
10
  else {
10
11
  this._rawData = rawDataOrId;
@@ -16,10 +17,12 @@ export class BaseChannel extends Base {
16
17
  * The raw data of the channel.
17
18
  */
18
19
  _rawData = null;
20
+ _type = null;
19
21
  setData(data) {
20
22
  if (!data)
21
23
  throw new Error("Cannot set data without having data... smh");
22
24
  this._rawData = data;
25
+ this._type = data.type;
23
26
  }
24
27
  setField(field, value) {
25
28
  if (!this._rawData)
@@ -49,9 +52,47 @@ export class BaseChannel extends Base {
49
52
  * The type of the channel.
50
53
  */
51
54
  get type() {
52
- if (!this._rawData)
55
+ if (this._rawData)
56
+ return this._rawData.type;
57
+ if (this._type === null)
53
58
  return undefined;
54
- return this._rawData.type;
59
+ return this._type;
60
+ }
61
+ /**
62
+ * Whether this is a DM-based channel.
63
+ */
64
+ isDMBased() {
65
+ return this.type === ChannelType.DM || this.type === ChannelType.GroupDM;
66
+ }
67
+ /**
68
+ * Whether this is a guild channel.
69
+ */
70
+ isGuildBased() {
71
+ return this.type !== undefined && !this.isDMBased();
72
+ }
73
+ /**
74
+ * Whether this channel is a thread.
75
+ */
76
+ isThread() {
77
+ return (this.type === ChannelType.AnnouncementThread ||
78
+ this.type === ChannelType.PublicThread ||
79
+ this.type === ChannelType.PrivateThread);
80
+ }
81
+ /**
82
+ * Whether this channel is thread-only (forum/media).
83
+ */
84
+ isThreadOnly() {
85
+ return (this.type === ChannelType.GuildForum ||
86
+ this.type === ChannelType.GuildMedia);
87
+ }
88
+ /**
89
+ * Whether this channel can be sent to directly.
90
+ */
91
+ isSendable() {
92
+ return (this.type !== undefined &&
93
+ this.type !== ChannelType.GuildCategory &&
94
+ this.type !== ChannelType.GuildForum &&
95
+ this.type !== ChannelType.GuildMedia);
55
96
  }
56
97
  /**
57
98
  * The flags of the channel in a bitfield.
@@ -1 +1 @@
1
- {"version":3,"file":"BaseChannel.js","sourceRoot":"","sources":["../../../src/abstracts/BaseChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,MAAM,EACN,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,OAAgB,WAGpB,SAAQ,IAAI;IACb,YACC,MAAc,EACd,WAEsC;QAEtC,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,EAAE,GAAG,WAAW,CAAA;QACtB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,QAAQ,GAAG,WAAoB,CAAA;YACpC,IAAI,CAAC,EAAE,GAAG,WAAW,CAAC,EAAE,CAAA;YACxB,IAAI,CAAC,OAAO,CAAC,WAAoB,CAAC,CAAA;QACnC,CAAC;IACF,CAAC;IAED;;OAEG;IACO,QAAQ,GAA+C,IAAI,CAAA;IAC3D,OAAO,CAAC,IAAyC;QAC1D,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QACxE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACrB,CAAC;IACS,QAAQ,CACjB,KAAgD,EAChD,KAAc;QAEd,IAAI,CAAC,IAAI,CAAC,QAAQ;YACjB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAC/D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ;YACjB,MAAM,IAAI,KAAK,CACd,yEAAyE,CACzE,CAAA;QACF,OAAO,IAAI,CAAC,QAAQ,CAAA;IACrB,CAAC;IAED;;OAEG;IACM,EAAE,CAAQ;IAEnB;;;OAGG;IACH,IAAI,OAAO;QACV,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAU,CAAA;IACzC,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAkB,CAAA;QAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAA;IAC1B,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACR,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAkB,CAAA;QAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA;IAC3B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK;QACV,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAC1C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CACvB,CAAwC,CAAA;QACzC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,EAAE,YAAY,CAAC,CAAA;QAE7D,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAErB,OAAO,IAAgC,CAAA;IACxC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACX,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IACvD,CAAC;IAED;;;OAGG;IACH,QAAQ;QACP,OAAO,KAAK,IAAI,CAAC,EAAE,GAAG,CAAA;IACvB,CAAC;CACD"}
1
+ {"version":3,"file":"BaseChannel.js","sourceRoot":"","sources":["../../../src/abstracts/BaseChannel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { ApplicationCommandType, type RESTPostAPIApplicationCommandsJSONBody } from "discord-api-types/v10";
1
+ import { ApplicationCommandType, type EntryPointCommandHandlerType, type RESTPostAPIApplicationCommandsJSONBody } from "discord-api-types/v10";
2
2
  import type { Client } from "../classes/Client.js";
3
- import { ApplicationIntegrationType, type ArrayOrSingle, type BaseMessageInteractiveComponent, type ConditionalCommandOption, InteractionContextType, type Permission } from "../index.js";
3
+ import { ApplicationIntegrationType, type ArrayOrSingle, type BaseMessageInteractiveComponent, type CommandMiddleware, type ConditionalCommandOption, InteractionContextType, type Permission } from "../index.js";
4
4
  /**
5
5
  * Represents the base data of a command that the user creates
6
6
  */
@@ -56,16 +56,28 @@ export declare abstract class BaseCommand {
56
56
  * These will be registered with the client when the command is initialized.
57
57
  */
58
58
  components?: BaseMessageInteractiveComponent[];
59
+ /**
60
+ * Middleware hooks that run around this command's lifecycle.
61
+ *
62
+ * - `before` runs before `defer`, `preCheck`, and `run`
63
+ * - `after` runs in a `finally` block with status and timing metadata
64
+ */
65
+ middlewares?: CommandMiddleware[];
59
66
  /**
60
67
  * The guild IDs this command should be deployed to (guild-specific deployment).
61
68
  * If not set, the command is deployed globally.
62
69
  */
63
70
  guildIds?: string[];
71
+ /**
72
+ * The handler for an entry point command.
73
+ * Only used for command type `PrimaryEntryPoint`.
74
+ */
75
+ handler?: EntryPointCommandHandlerType;
64
76
  /**
65
77
  * Serializes the command into a JSON object that can be sent to Discord
66
78
  * @internal
67
79
  */
68
- serialize(): import("discord-api-types/v10").RESTPostAPIChatInputApplicationCommandsJSONBody | import("discord-api-types/v10").RESTPostAPIContextMenuApplicationCommandsJSONBody;
80
+ serialize(): import("discord-api-types/v10").RESTPostAPIChatInputApplicationCommandsJSONBody | import("discord-api-types/v10").RESTPostAPIContextMenuApplicationCommandsJSONBody | import("discord-api-types/v10").RESTPostAPIPrimaryEntryPointApplicationCommandJSONBody;
69
81
  /**
70
82
  * Serializes the options of the command into a JSON object that can be sent to Discord
71
83
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"BaseCommand.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,sBAAsB,EACtB,KAAK,sCAAsC,EAC3C,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EACN,0BAA0B,EAC1B,KAAK,aAAa,EAClB,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,EAC7B,sBAAsB,EACtB,KAAK,UAAU,EACf,MAAM,aAAa,CAAA;AAEpB;;GAEG;AACH,8BAAsB,WAAW;IAChC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C;;;OAGG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjD;;;OAGG;IACH,KAAK,EAAE,OAAO,GAAG,wBAAwB,CAAQ;IACjD;;;OAGG;IACH,SAAS,EAAE,OAAO,GAAG,wBAAwB,CAAQ;IACrD;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAA;IACrC;;OAEG;IACH,gBAAgB,EAAE,0BAA0B,EAAE,CAG7C;IACD;;OAEG;IACH,QAAQ,EAAE,sBAAsB,EAAE,CAIjC;IAED;;;OAGG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC,CAAA;IAExE;;;OAGG;IACH,UAAU,CAAC,EAAE,+BAA+B,EAAE,CAAA;IAE9C;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IAEnB;;;OAGG;IACH,SAAS;IAyCT;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,IAAI,sCAAsC,CAAC,SAAS,CAAC;IAExE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASjD,OAAO,CAAC,mBAAmB;CAU3B"}
1
+ {"version":3,"file":"BaseCommand.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,sBAAsB,EACtB,KAAK,4BAA4B,EACjC,KAAK,sCAAsC,EAC3C,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EACN,0BAA0B,EAC1B,KAAK,aAAa,EAClB,KAAK,+BAA+B,EACpC,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,sBAAsB,EACtB,KAAK,UAAU,EACf,MAAM,aAAa,CAAA;AAEpB;;GAEG;AACH,8BAAsB,WAAW;IAChC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C;;;OAGG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjD;;;OAGG;IACH,KAAK,EAAE,OAAO,GAAG,wBAAwB,CAAQ;IACjD;;;OAGG;IACH,SAAS,EAAE,OAAO,GAAG,wBAAwB,CAAQ;IACrD;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAA;IACrC;;OAEG;IACH,gBAAgB,EAAE,0BAA0B,EAAE,CAG7C;IACD;;OAEG;IACH,QAAQ,EAAE,sBAAsB,EAAE,CAIjC;IAED;;;OAGG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC,CAAA;IAExE;;;OAGG;IACH,UAAU,CAAC,EAAE,+BAA+B,EAAE,CAAA;IAE9C;;;;;OAKG;IACH,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAEjC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IAEnB;;;OAGG;IACH,OAAO,CAAC,EAAE,4BAA4B,CAAA;IAEtC;;;OAGG;IACH,SAAS;IAgET;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,IAAI,sCAAsC,CAAC,SAAS,CAAC;IAExE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASjD,OAAO,CAAC,mBAAmB;CAU3B"}
@@ -54,20 +54,33 @@ export class BaseCommand {
54
54
  * These will be registered with the client when the command is initialized.
55
55
  */
56
56
  components;
57
+ /**
58
+ * Middleware hooks that run around this command's lifecycle.
59
+ *
60
+ * - `before` runs before `defer`, `preCheck`, and `run`
61
+ * - `after` runs in a `finally` block with status and timing metadata
62
+ */
63
+ middlewares;
57
64
  /**
58
65
  * The guild IDs this command should be deployed to (guild-specific deployment).
59
66
  * If not set, the command is deployed globally.
60
67
  */
61
68
  guildIds;
69
+ /**
70
+ * The handler for an entry point command.
71
+ * Only used for command type `PrimaryEntryPoint`.
72
+ */
73
+ handler;
62
74
  /**
63
75
  * Serializes the command into a JSON object that can be sent to Discord
64
76
  * @internal
65
77
  */
66
78
  serialize() {
67
- if (this.type === ApplicationCommandType.PrimaryEntryPoint) {
68
- throw new Error("Primary Entry Point commands cannot be serialized");
79
+ if (this.type === ApplicationCommandType.PrimaryEntryPoint &&
80
+ this.guildIds &&
81
+ this.guildIds.length > 0) {
82
+ throw new Error("Primary Entry Point commands cannot be guild-scoped");
69
83
  }
70
- // Only chat input commands can have descriptions
71
84
  if (this.type === ApplicationCommandType.ChatInput) {
72
85
  const data = {
73
86
  name: this.name,
@@ -86,6 +99,22 @@ export class BaseCommand {
86
99
  };
87
100
  return data;
88
101
  }
102
+ if (this.type === ApplicationCommandType.PrimaryEntryPoint) {
103
+ const data = {
104
+ name: this.name,
105
+ name_localizations: this.nameLocalizations,
106
+ type: this.type,
107
+ handler: this.handler,
108
+ integration_types: this.integrationTypes,
109
+ contexts: this.contexts,
110
+ default_member_permissions: Array.isArray(this.permission)
111
+ ? this.permission.reduce((a, p) => a | p, 0n).toString()
112
+ : this.permission
113
+ ? `${this.permission}`
114
+ : null
115
+ };
116
+ return data;
117
+ }
89
118
  const data = {
90
119
  name: this.name,
91
120
  name_localizations: this.nameLocalizations,
@@ -1 +1 @@
1
- {"version":3,"file":"BaseCommand.js","sourceRoot":"","sources":["../../../src/abstracts/BaseCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseCommand.js","sourceRoot":"","sources":["../../../src/abstracts/BaseCommand.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ export declare abstract class BaseInteraction<T extends APIInteraction> extends
37
37
  get message(): Message | null;
38
38
  get guild(): Guild<true> | null;
39
39
  get user(): User | null;
40
- get channel(): import("../index.js").DmChannel<false> | import("../index.js").GroupDmChannel<false> | import("../index.js").GuildTextChannel<false> | import("../index.js").GuildVoiceChannel<false> | import("../index.js").GuildCategoryChannel<false> | import("../index.js").GuildAnnouncementChannel<false> | import("../index.js").GuildThreadChannel<import("discord-api-types/v10").ChannelType.AnnouncementThread | import("discord-api-types/v10").ChannelType.PublicThread | import("discord-api-types/v10").ChannelType.PrivateThread, false> | import("../index.js").GuildStageChannel<false> | import("../index.js").GuildForumChannel<false> | import("../index.js").GuildMediaChannel | null;
40
+ get channel(): import("../index.js").DmChannel<true> | import("../index.js").GroupDmChannel<true> | import("../index.js").GuildTextChannel<true> | import("../index.js").GuildVoiceChannel<true> | import("../index.js").GuildCategoryChannel<true> | import("../index.js").GuildAnnouncementChannel<true> | import("../index.js").GuildThreadChannel<import("discord-api-types/v10").ChannelType.AnnouncementThread, true> | import("../index.js").GuildThreadChannel<import("discord-api-types/v10").ChannelType.PublicThread, true> | import("../index.js").GuildThreadChannel<import("discord-api-types/v10").ChannelType.PrivateThread, true> | import("../index.js").GuildStageChannel<true> | import("../index.js").GuildForumChannel<true> | import("../index.js").GuildMediaChannel<true> | null;
41
41
  get member(): GuildMember<false, true> | null;
42
42
  /**
43
43
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"BaseInteraction.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseInteraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseInteraction.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseInteraction.ts"],"names":[],"mappings":"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"}
@@ -65,7 +65,7 @@ export class BaseInteraction extends Base {
65
65
  get channel() {
66
66
  if (!this._rawData.channel)
67
67
  return null;
68
- return channelFactory(this.client, this._rawData.channel);
68
+ return channelFactory(this.client, this._rawData.channel, true);
69
69
  }
70
70
  get member() {
71
71
  if (!this._rawData.member)
@@ -93,7 +93,7 @@ export class BaseInteraction extends Base {
93
93
  for (const childComponent of component.components) {
94
94
  if (childComponent instanceof BaseMessageInteractiveComponent) {
95
95
  const key = childComponent.customIdParser(childComponent.customId).key;
96
- if (!this.client.componentHandler.hasComponentWithKey(key)) {
96
+ if (!this.client.componentHandler.hasComponentWithKey(key, childComponent.type)) {
97
97
  this.client.componentHandler.registerComponent(childComponent);
98
98
  }
99
99
  }
@@ -102,7 +102,7 @@ export class BaseInteraction extends Base {
102
102
  else if (component instanceof Section) {
103
103
  if (component.accessory instanceof BaseMessageInteractiveComponent) {
104
104
  const key = component.accessory.customIdParser(component.accessory.customId).key;
105
- if (!this.client.componentHandler.hasComponentWithKey(key)) {
105
+ if (!this.client.componentHandler.hasComponentWithKey(key, component.accessory.type)) {
106
106
  this.client.componentHandler.registerComponent(component.accessory);
107
107
  }
108
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseInteraction.js","sourceRoot":"","sources":["../../../src/abstracts/BaseInteraction.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,uBAAuB,EAEvB,YAAY,EAKZ,MAAM,EACN,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACN,+BAA+B,EAE/B,SAAS,EACT,cAAc,EACd,KAAK,EACL,KAAK,EACL,OAAO,EAEP,GAAG,EACH,OAAO,EACP,IAAI,EACJ,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAM1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAMhC;;GAEG;AACH,MAAM,OAAgB,eAA0C,SAAQ,IAAI;IAC3E;;OAEG;IACH,IAAI,CAAiB;IACrB;;OAEG;IACO,QAAQ,CAAG;IAErB;;OAEG;IACH,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,QAAQ,CAAA;IACrB,CAAC;IACD;;OAEG;IACH,MAAM,CAAoB;IAE1B;;;OAGG;IACH,SAAS,GAAG,KAAK,CAAA;IAET,gBAAgB,GAAG,KAAK,CAAA;IAEhC,YAAY,MAAc,EAAE,IAAO,EAAE,QAA6B;QACjE,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACrB,IAAI,CAAC,MAAM;YACV,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,SAAS,CAAA;QACrE,IAAI,QAAQ,CAAC,SAAS;YAAE,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,SAAS,CAAA;IACnE,CAAC;IAED,IAAI,MAAM;QACT,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QACvC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IACrE,CAAC;IAED,IAAI,OAAO;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QACvC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACvD,CAAC;IAED,IAAI,KAAK;QACR,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAA;QACxC,OAAO,IAAI,KAAK,CAAO,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC5D,CAAC;IAED,IAAI,IAAI;QACP,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI;YAAE,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACxE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM;YACvB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACxD,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,IAAI,OAAO;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QACvC,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAqB,CAAC,CAAA;IACxE,CAAC;IAED,IAAI,MAAM;QACT,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QACtC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAA;QAC5B,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IACtE,CAAC;IAED;;;OAGG;IACO,qCAAqC,CAAC,IAAoB;QACnE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACjD,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACxD,CAAC;IACF,CAAC;IAED;;;OAGG;IACK,iCAAiC,CAAC,UAAgC;QACzE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACpC,IAAI,SAAS,YAAY,GAAG,EAAE,CAAC;gBAC9B,KAAK,MAAM,cAAc,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;oBACnD,IAAI,cAAc,YAAY,+BAA+B,EAAE,CAAC;wBAC/D,MAAM,GAAG,GAAG,cAAc,CAAC,cAAc,CACxC,cAAc,CAAC,QAAQ,CACvB,CAAC,GAAG,CAAA;wBACL,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC5D,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAA;wBAC/D,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;iBAAM,IAAI,SAAS,YAAY,OAAO,EAAE,CAAC;gBACzC,IAAI,SAAS,CAAC,SAAS,YAAY,+BAA+B,EAAE,CAAC;oBACpE,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,cAAc,CAC7C,SAAS,CAAC,SAAS,CAAC,QAAQ,CAC5B,CAAC,GAAG,CAAA;oBACL,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC5D,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;oBACpE,CAAC;gBACF,CAAC;YACF,CAAC;iBAAM,IAAI,SAAS,YAAY,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,iCAAiC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;YAC7D,CAAC;QACF,CAAC;IACF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK,CAAC,IAAoB,EAAE,oBAAoB,GAAG,KAAK;QAC7D,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAEhE,8CAA8C;QAC9C,IAAI,CAAC,oBAAoB;YAAE,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,CAAA;QAE3E,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAC5C,MAAM,CAAC,cAAc,CACpB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAC5B,IAAI,CAAC,QAAQ,CAAC,KAAK,EACnB,WAAW,CACX,EACD;gBACC,IAAI,EAAE,UAAU;aAChB,CACD,CAA8C,CAAA;YAC/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACzC,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CACxC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjE;YACC,IAAI,EAAE;gBACL,IAAI,EAAE,uBAAuB,CAAC,wBAAwB;gBACtD,IAAI,EAAE,UAAU;aACiC;SAClD,EACD;YACC,aAAa,EAAE,IAAI;SACnB,CACD,CAAqD,CAAA;QACtD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO;YAC1B,MAAM,IAAI,KAAK,CACd,+DAA+D,IAAI,CAAC,QAAQ,EAAE,CAC9E,CAAA;QACF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACvD,CAAC;IAED;;;OAGG;IACH,mBAAmB,CAAC,SAAkB;QACrC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAA;IAClC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,KAAK,EAAE,GAAG,EAAE;QACrC,IAAI,IAAI,CAAC,SAAS;YAAE,OAAM;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjE;YACC,IAAI,EAAE;gBACL,IAAI,EAAE,uBAAuB,CAAC,gCAAgC;gBAC9D,IAAI,EAAE;oBACL,KAAK,EACJ,SAAS,IAAI,IAAI,CAAC,gBAAgB;wBACjC,CAAC,CAAC,YAAY,CAAC,SAAS;wBACxB,CAAC,CAAC,SAAS;iBACb;aACgD;SAClD,CACD,CAAA;IACF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,KAAY;QAC3B,IAAI,IAAI,CAAC,SAAS;YACjB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;QAEtE,MAAM,GAAG,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAA;QACpD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CACzD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,GAAG,CAC/C,CAAA;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC9C,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjE;YACC,IAAI,EAAE;gBACL,IAAI,EAAE,uBAAuB,CAAC,KAAK;gBACnC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE;aAMpB;SACJ,CACD,CAAA;IACF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAqB;QACnC,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;QAE1C,8CAA8C;QAC9C,IAAI,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAA;QAEjD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjE;YACC,IAAI,EAAE;gBACL,GAAG,UAAU;aACoC;SAClD,CACD,CAAA;IACF,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,wBAAwB,CAC7B,IAAoB,EACpB,OAAO,GAAG,MAAM;QAmChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAE5C,MAAM,EAAE,GAA0B,GAAG,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,SAAS,EAAE,CAAA;QAEtE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC7B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACxD,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;YAC1D,CAAC,EAAE,OAAO,CAAC,CAAA;YACX,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE;gBACrD,OAAO,EAAE,CAAC,IAAwC,EAAE,EAAE;oBACrD,YAAY,CAAC,KAAK,CAAC,CAAA;oBACnB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACxD,OAAO,CAAC;wBACP,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,IAAI,CAAC,SAAS;wBACxB,OAAO;wBACP,MAAM,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;qBAClD,CAAC,CAAA;gBACH,CAAC;aACD,CAAC,CAAA;QACH,CAAC,CAAC,CAAA;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,uBAAuB,CAC5B,IAAoB,EACpB,OAAiB,EACjB,OAAO,GAAG,MAAM;QAoChB,MAAM,aAAa,GAAG,OAAO;YAC5B,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1B,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAEjC,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAA;QAE/B,MAAM,EAAE,GAA0B,GAAG,aAAa,CAAC,EAAE,IAAI,aAAa,CAAC,SAAS,EAAE,CAAA;QAElF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC7B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACxD,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;YACzE,CAAC,EAAE,OAAO,CAAC,CAAA;YACX,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE;gBACrD,OAAO,EAAE,CAAC,IAAwC,EAAE,EAAE;oBACrD,YAAY,CAAC,KAAK,CAAC,CAAA;oBACnB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACxD,OAAO,CAAC;wBACP,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,IAAI,CAAC,SAAS;wBACxB,OAAO,EAAE,aAAa;wBACtB,MAAM,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;qBAClD,CAAC,CAAA;gBACH,CAAC;aACD,CAAC,CAAA;QACH,CAAC,CAAC,CAAA;IACH,CAAC;CACD"}
1
+ {"version":3,"file":"BaseInteraction.js","sourceRoot":"","sources":["../../../src/abstracts/BaseInteraction.ts"],"names":[],"mappings":"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"}
@@ -5,9 +5,12 @@ import type { ListenerEventAdditionalData, ListenerEventData, ListenerEventRawDa
5
5
  * This abstract class defines the structure for event listeners and provides type safety for event handling.
6
6
  * @abstract
7
7
  */
8
- export declare abstract class BaseListener {
9
- abstract readonly type: ListenerEventType;
10
- abstract handle(data: ListenerEventData[this["type"]] & ListenerEventAdditionalData, client: Client): Promise<void>;
11
- abstract parseRawData(data: ListenerEventRawData[this["type"]] & ListenerEventAdditionalData, client: Client): ListenerEventData[this["type"]];
8
+ export declare abstract class BaseListener<TEvent extends ListenerEventType = ListenerEventType> {
9
+ abstract readonly type: TEvent;
10
+ abstract handle(data: ListenerEventData[TEvent] & ListenerEventAdditionalData, client: Client): Promise<void>;
11
+ abstract parseRawData(data: ListenerEventRawData[TEvent] & ListenerEventAdditionalData, client: Client): ListenerEventData[TEvent];
12
12
  }
13
+ export type AnyListener = {
14
+ [TEvent in ListenerEventType]: BaseListener<TEvent>;
15
+ }[ListenerEventType];
13
16
  //# sourceMappingURL=BaseListener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseListener.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseListener.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EACX,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,MAAM,uBAAuB,CAAA;AAE9B;;;;GAIG;AACH,8BAAsB,YAAY;IACjC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAA;IACzC,QAAQ,CAAC,MAAM,CACd,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,2BAA2B,EACnE,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC;IAEhB,QAAQ,CAAC,YAAY,CACpB,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,2BAA2B,EACtE,MAAM,EAAE,MAAM,GACZ,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;CAClC"}
1
+ {"version":3,"file":"BaseListener.d.ts","sourceRoot":"","sources":["../../../src/abstracts/BaseListener.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EACX,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,MAAM,uBAAuB,CAAA;AAE9B;;;;GAIG;AACH,8BAAsB,YAAY,CACjC,MAAM,SAAS,iBAAiB,GAAG,iBAAiB;IAEpD,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,MAAM,CACd,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,2BAA2B,EAC7D,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC;IAEhB,QAAQ,CAAC,YAAY,CACpB,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC,GAAG,2BAA2B,EAChE,MAAM,EAAE,MAAM,GACZ,iBAAiB,CAAC,MAAM,CAAC;CAC5B;AAED,MAAM,MAAM,WAAW,GAAG;KACxB,MAAM,IAAI,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC;CACnD,CAAC,iBAAiB,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseListener.js","sourceRoot":"","sources":["../../../src/abstracts/BaseListener.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,OAAgB,YAAY;CAWjC"}
1
+ {"version":3,"file":"BaseListener.js","sourceRoot":"","sources":["../../../src/abstracts/BaseListener.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,OAAgB,YAAY;CAajC"}
@@ -17,6 +17,11 @@ export declare abstract class Plugin {
17
17
  * @param client The client to register the routes with
18
18
  */
19
19
  registerRoutes?(client: Client): Promise<void> | void;
20
+ /**
21
+ * Optional per-request hook for runtime-specific middleware behavior.
22
+ * Return a Response to short-circuit normal route handling.
23
+ */
24
+ onRequest?(req: Request, ctx: Context): Promise<Response | undefined> | Response | undefined;
20
25
  }
21
26
  export interface Route {
22
27
  /**
@@ -45,5 +50,6 @@ export interface Route {
45
50
  }
46
51
  export interface Context {
47
52
  waitUntil?(promise: Promise<any>): void;
53
+ env?: unknown;
48
54
  }
49
55
  //# sourceMappingURL=Plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../../src/abstracts/Plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD;;GAEG;AACH,8BAAsB,MAAM;IAC3B;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAC5B;;;OAGG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAErD;;;OAGG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CACrD;AAED,MAAM,WAAW,KAAK;IACrB;;OAEG;IACH,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAA;IAEnD;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,EAAE,CAAA;IAElB;;;;;OAKG;IACH,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAElE;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,OAAO;IAEvB,SAAS,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;CACvC"}
1
+ {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../../src/abstracts/Plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD;;GAEG;AACH,8BAAsB,MAAM;IAC3B;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAC5B;;;OAGG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAErD;;;OAGG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAErD;;;OAGG;IACH,SAAS,CAAC,CACT,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,OAAO,GACV,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,GAAG,QAAQ,GAAG,SAAS;CACvD;AAED,MAAM,WAAW,KAAK;IACrB;;OAEG;IACH,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAA;IAEnD;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,EAAE,CAAA;IAElB;;;;;OAKG;IACH,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAElE;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,OAAO;IAEvB,SAAS,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;IACvC,GAAG,CAAC,EAAE,OAAO,CAAA;CACb"}
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../../src/abstracts/Plugin.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAgB,MAAM;CAgB3B"}
1
+ {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../../src/abstracts/Plugin.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAgB,MAAM;CAyB3B"}
@@ -2,7 +2,7 @@ import Bun from "bun";
2
2
  import type { Client } from "../../index.js";
3
3
  import type { ClientManager } from "../../plugins/client-manager/ClientManager.js";
4
4
  export type Server = ReturnType<typeof Bun.serve>;
5
- export type ServerOptions = Parameters<typeof Bun.serve>[0];
5
+ export type ServerOptions = Bun.Serve.HostnamePortServeOptions<unknown> | Bun.Serve.UnixServeOptions<unknown>;
6
6
  /**
7
7
  * Creates a server for the client or client manager using Bun.serve
8
8
  * @param client The Carbon client or client manager to create the server for
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/bun/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAGlF,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAA;AACjD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AAE3D;;;;;GAKG;AACH,wBAAgB,YAAY,CAC3B,MAAM,EAAE,MAAM,GAAG,aAAa,EAC9B,OAAO,EAAE,aAAa,GACpB,MAAM,CAMR"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/bun/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAGlF,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAA;AAEjD,MAAM,MAAM,aAAa,GACtB,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAO,CAAC,GAC3C,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;AAEtC;;;;;GAKG;AACH,wBAAgB,YAAY,CAC3B,MAAM,EAAE,MAAM,GAAG,aAAa,EAC9B,OAAO,EAAE,aAAa,GACpB,MAAM,CAcR"}
@@ -8,6 +8,12 @@ import { createHandler } from "../fetch/index.js";
8
8
  */
9
9
  export function createServer(client, options) {
10
10
  const fetch = createHandler(client);
11
+ if ("unix" in options && options.unix !== undefined) {
12
+ return Bun.serve({
13
+ ...options,
14
+ fetch: (r) => fetch(r, {})
15
+ });
16
+ }
11
17
  return Bun.serve({
12
18
  ...options,
13
19
  fetch: (r) => fetch(r, {})
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapters/bun/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAGrB,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAKjD;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC3B,MAA8B,EAC9B,OAAsB;IAEtB,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IACnC,OAAO,GAAG,CAAC,KAAK,CAAC;QAChB,GAAG,OAAO;QACV,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KAC1B,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapters/bun/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAGrB,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAQjD;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAC3B,MAA8B,EAC9B,OAAsB;IAEtB,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IAEnC,IAAI,MAAM,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,GAAG,CAAC,KAAK,CAAC;YAChB,GAAG,OAAO;YACV,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;SAC1B,CAAC,CAAA;IACH,CAAC;IAED,OAAO,GAAG,CAAC,KAAK,CAAC;QAChB,GAAG,OAAO;QACV,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KAC1B,CAAC,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/fetch/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAElF,MAAM,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEvE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,OAAO,CAuCrE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/fetch/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAElF,MAAM,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEvE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,GAAG,OAAO,CA8CrE"}
@@ -10,6 +10,12 @@ export function createHandler(client) {
10
10
  return await client.handleRequest(req, ctx);
11
11
  }
12
12
  // Otherwise, handle as a regular Client
13
+ for (const { plugin } of client.plugins) {
14
+ const response = await plugin.onRequest?.(req, ctx);
15
+ if (response) {
16
+ return response;
17
+ }
18
+ }
13
19
  const method = req.method;
14
20
  const url = new URL(req.url, "http://localhost");
15
21
  const pathname = //
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapters/fetch/index.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,MAA8B;IAC3D,OAAO,KAAK,EAAE,GAAY,EAAE,GAAY,EAAE,EAAE;QAC3C,gEAAgE;QAChE,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;YAC/B,OAAO,MAAM,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC5C,CAAC;QAED,wCAAwC;QACxC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;QACzB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAA;QAChD,MAAM,QAAQ,GAAG,EAAE;SAClB,sBAAsB,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAA;QAC7D,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAEhE,MAAM,mBAAmB,GAAG,EAAE;SAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAChE,MAAM,qBAAqB,GAAG,EAAE;SAC/B,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QAEvD,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC;gBACjC,OAAO,IAAI,QAAQ,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;YAC3D,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAClD,CAAC;QAED,qDAAqD;QACrD,MAAM,KAAK,GAAG,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAU,CAAA;QAEnD,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACnD,IAAI,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,KAAK,YAAY;YAClE,OAAO,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAErD,IAAI,CAAC;YACJ,OAAO,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACpB,OAAO,IAAI,QAAQ,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAC9D,CAAC;IACF,CAAC,CAAA;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAY,EAAE,MAAW;IACxD,kFAAkF;IAClF,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACxD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACtD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAA;IACtD,OAAO,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;AAC9C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapters/fetch/index.ts"],"names":[],"mappings":"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"}