@fluxerjs/core 1.1.7 → 1.1.8

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 (505) hide show
  1. package/dist/Channel-2WNJ445K.mjs +17 -0
  2. package/dist/Channel-3TAZVAC5.mjs +21 -0
  3. package/dist/Channel-4WVFDOCG.mjs +22 -0
  4. package/dist/Channel-ADRBK5JN.mjs +19 -0
  5. package/dist/Channel-AMX4IOLY.mjs +20 -0
  6. package/dist/Channel-BEZOW4VC.mjs +17 -0
  7. package/dist/Channel-BLJMK4T5.mjs +19 -0
  8. package/dist/Channel-DPLLHL7Y.mjs +19 -0
  9. package/dist/Channel-DTJWTA4N.mjs +20 -0
  10. package/dist/Channel-ELXWZIY4.mjs +20 -0
  11. package/dist/Channel-EYNPKHH2.mjs +20 -0
  12. package/dist/Channel-EZAKOCLZ.mjs +19 -0
  13. package/dist/Channel-EZSBZJTJ.mjs +20 -0
  14. package/dist/Channel-HBKXUNL5.mjs +22 -0
  15. package/dist/Channel-HK7VT35N.mjs +22 -0
  16. package/dist/Channel-HM2UY4DN.mjs +17 -0
  17. package/dist/Channel-ICWNKXBR.mjs +19 -0
  18. package/dist/Channel-IESEJJGP.mjs +22 -0
  19. package/dist/Channel-IGCIDQB3.mjs +19 -0
  20. package/dist/Channel-IKL3SJXN.mjs +17 -0
  21. package/dist/Channel-JFQXR7SZ.mjs +22 -0
  22. package/dist/Channel-KILNV5V3.mjs +17 -0
  23. package/dist/Channel-KOTARBSF.mjs +17 -0
  24. package/dist/Channel-LPAK4B5K.mjs +20 -0
  25. package/dist/Channel-LXEGJ3BH.mjs +20 -0
  26. package/dist/Channel-MGABB7NZ.mjs +19 -0
  27. package/dist/Channel-MS2XLT5H.mjs +19 -0
  28. package/dist/Channel-MXKULRP2.mjs +19 -0
  29. package/dist/Channel-NBJUUPIA.mjs +22 -0
  30. package/dist/Channel-NFVAR3VH.mjs +19 -0
  31. package/dist/Channel-NKQB7NPD.mjs +20 -0
  32. package/dist/Channel-ON7O3D3M.mjs +17 -0
  33. package/dist/Channel-OSOB6ELO.mjs +19 -0
  34. package/dist/Channel-PCUCLDOG.mjs +22 -0
  35. package/dist/Channel-QEJBBSOB.mjs +20 -0
  36. package/dist/Channel-RB4X65FA.mjs +19 -0
  37. package/dist/Channel-SM7NMKEO.mjs +19 -0
  38. package/dist/Channel-TOAQGSRX.mjs +17 -0
  39. package/dist/Channel-UHN4IOM5.mjs +19 -0
  40. package/dist/Channel-UNCURQZU.mjs +19 -0
  41. package/dist/Channel-VENHOL7S.mjs +17 -0
  42. package/dist/Channel-VFCLGG5D.mjs +22 -0
  43. package/dist/Channel-WDHLDQJC.mjs +22 -0
  44. package/dist/Channel-WJZZSNML.mjs +21 -0
  45. package/dist/Channel-XUJNTC3R.mjs +21 -0
  46. package/dist/Channel-YB3LWDHZ.mjs +22 -0
  47. package/dist/Channel-YVGPVOVB.mjs +17 -0
  48. package/dist/Channel-ZABU3K5W.mjs +19 -0
  49. package/dist/Channel-ZNYZSC7R.mjs +20 -0
  50. package/dist/ClientUser-2OHUFUV5.mjs +9 -0
  51. package/dist/ClientUser-35IVTH2S.mjs +8 -0
  52. package/dist/ClientUser-4MC4EFLT.mjs +8 -0
  53. package/dist/ClientUser-4TYNCHEP.mjs +7 -0
  54. package/dist/ClientUser-576UGSIO.mjs +8 -0
  55. package/dist/ClientUser-5DS73MJV.mjs +8 -0
  56. package/dist/ClientUser-5KQNQHUB.mjs +8 -0
  57. package/dist/ClientUser-5NZXMF6I.mjs +8 -0
  58. package/dist/ClientUser-6HBAPU6H.mjs +8 -0
  59. package/dist/ClientUser-76LLHLHL.mjs +8 -0
  60. package/dist/ClientUser-7CQO74QQ.mjs +8 -0
  61. package/dist/ClientUser-A73AHVOW.mjs +8 -0
  62. package/dist/ClientUser-AJLODDUV.mjs +8 -0
  63. package/dist/ClientUser-ALGC4FNY.mjs +8 -0
  64. package/dist/ClientUser-BKDGVNAY.mjs +8 -0
  65. package/dist/ClientUser-CDU2QEMV.mjs +8 -0
  66. package/dist/ClientUser-D3ZNDAJU.mjs +8 -0
  67. package/dist/ClientUser-DJO2FS7P.mjs +8 -0
  68. package/dist/ClientUser-GBD34QB5.mjs +9 -0
  69. package/dist/ClientUser-GISPHEM6.mjs +8 -0
  70. package/dist/ClientUser-ISZ3MTSZ.mjs +8 -0
  71. package/dist/ClientUser-J6HQVSDJ.mjs +9 -0
  72. package/dist/ClientUser-JG4EX6F4.mjs +8 -0
  73. package/dist/ClientUser-K2T5J3YS.mjs +8 -0
  74. package/dist/ClientUser-KWOQRQPD.mjs +8 -0
  75. package/dist/ClientUser-LBK6K4YD.mjs +8 -0
  76. package/dist/ClientUser-LLL6WX35.mjs +8 -0
  77. package/dist/ClientUser-MOMS7WLQ.mjs +8 -0
  78. package/dist/ClientUser-N7ZXYAQ3.mjs +8 -0
  79. package/dist/ClientUser-OGDA7D77.mjs +8 -0
  80. package/dist/ClientUser-PXAAKR2P.mjs +8 -0
  81. package/dist/ClientUser-QBJLDW5Y.mjs +8 -0
  82. package/dist/ClientUser-QQXLZ5WP.mjs +8 -0
  83. package/dist/ClientUser-RDGNVUVQ.mjs +8 -0
  84. package/dist/ClientUser-RNDKHQ3Z.mjs +9 -0
  85. package/dist/ClientUser-RXOB6K6C.mjs +8 -0
  86. package/dist/ClientUser-TN2LZ6NT.mjs +8 -0
  87. package/dist/ClientUser-TRA2WERQ.mjs +8 -0
  88. package/dist/ClientUser-U5TR5GIT.mjs +8 -0
  89. package/dist/ClientUser-UKG5K744.mjs +8 -0
  90. package/dist/ClientUser-V43WRWTN.mjs +8 -0
  91. package/dist/ClientUser-VZ2JS6RD.mjs +8 -0
  92. package/dist/ClientUser-WFID4IXD.mjs +8 -0
  93. package/dist/ClientUser-WWXUMO5O.mjs +8 -0
  94. package/dist/ClientUser-XX2PE3TB.mjs +8 -0
  95. package/dist/ClientUser-YEZNAK3W.mjs +8 -0
  96. package/dist/ClientUser-YQXVRO2A.mjs +8 -0
  97. package/dist/ClientUser-ZDE7A36W.mjs +8 -0
  98. package/dist/Guild-2LUH7U7B.mjs +10 -0
  99. package/dist/Guild-2OVJTJYO.mjs +10 -0
  100. package/dist/Guild-2P77HBQM.mjs +11 -0
  101. package/dist/Guild-36EGAAEW.mjs +8 -0
  102. package/dist/Guild-3ETPHHF5.mjs +12 -0
  103. package/dist/Guild-3PLQFT2I.mjs +12 -0
  104. package/dist/Guild-5UBZNIGD.mjs +9 -0
  105. package/dist/Guild-63VQBPKF.mjs +11 -0
  106. package/dist/Guild-AA7WOQRM.mjs +12 -0
  107. package/dist/Guild-AJNEG7LH.mjs +10 -0
  108. package/dist/Guild-ARMAVVJK.mjs +10 -0
  109. package/dist/Guild-AYHGH54T.mjs +10 -0
  110. package/dist/Guild-BRYNE2LO.mjs +11 -0
  111. package/dist/Guild-CA3W6DOD.mjs +8 -0
  112. package/dist/Guild-EATTLGFJ.mjs +11 -0
  113. package/dist/Guild-F6JU3UR6.mjs +11 -0
  114. package/dist/Guild-FE3A7REJ.mjs +9 -0
  115. package/dist/Guild-FMBCTAV4.mjs +12 -0
  116. package/dist/Guild-FSGTZATW.mjs +12 -0
  117. package/dist/Guild-FSIEY6C5.mjs +11 -0
  118. package/dist/Guild-FTMIT5T5.mjs +10 -0
  119. package/dist/Guild-GIXJJBFM.mjs +9 -0
  120. package/dist/Guild-GOQZ7XP4.mjs +8 -0
  121. package/dist/Guild-H7AUG7DI.mjs +10 -0
  122. package/dist/Guild-I4O63HEY.mjs +12 -0
  123. package/dist/Guild-IRBC63IR.mjs +12 -0
  124. package/dist/Guild-ITSZV3DE.mjs +9 -0
  125. package/dist/Guild-K5AJM2C7.mjs +12 -0
  126. package/dist/Guild-KKIQCGCV.mjs +11 -0
  127. package/dist/Guild-L6OWKAO6.mjs +11 -0
  128. package/dist/Guild-MDW7KF33.mjs +12 -0
  129. package/dist/Guild-NAD5F5DP.mjs +12 -0
  130. package/dist/Guild-NHNQ5TIA.mjs +8 -0
  131. package/dist/Guild-NNMSFIA6.mjs +12 -0
  132. package/dist/Guild-OKTDQS5K.mjs +12 -0
  133. package/dist/Guild-PO5D3NEA.mjs +10 -0
  134. package/dist/Guild-PS2BCXNB.mjs +11 -0
  135. package/dist/Guild-RPQGTXB7.mjs +12 -0
  136. package/dist/Guild-RSNXYHFM.mjs +10 -0
  137. package/dist/Guild-S3AOK72T.mjs +9 -0
  138. package/dist/Guild-S3YWFZTC.mjs +11 -0
  139. package/dist/Guild-S436SLOP.mjs +9 -0
  140. package/dist/Guild-TM6YGJWB.mjs +10 -0
  141. package/dist/Guild-TZOCAXXV.mjs +9 -0
  142. package/dist/Guild-WAFXK2EX.mjs +9 -0
  143. package/dist/Guild-WGZEW2AP.mjs +10 -0
  144. package/dist/Guild-WNPS7DBT.mjs +11 -0
  145. package/dist/Guild-WQA4CPDE.mjs +10 -0
  146. package/dist/Guild-XPOMHZZG.mjs +9 -0
  147. package/dist/Guild-ZOFF5LFR.mjs +8 -0
  148. package/dist/GuildBan-M4PA3HAA.mjs +7 -0
  149. package/dist/GuildEmoji-LP55RVIV.mjs +7 -0
  150. package/dist/GuildEmoji-OCXBPS6I.mjs +8 -0
  151. package/dist/GuildMember-3PC5QAU4.mjs +8 -0
  152. package/dist/GuildMember-43B5E5CH.mjs +9 -0
  153. package/dist/GuildMember-B7IFPCWC.mjs +9 -0
  154. package/dist/GuildMember-BJJNCL6W.mjs +8 -0
  155. package/dist/GuildMember-DW2N6ITI.mjs +7 -0
  156. package/dist/GuildMember-E72JU6JE.mjs +9 -0
  157. package/dist/GuildMember-FSGDPKUU.mjs +9 -0
  158. package/dist/GuildMember-FX2JAWES.mjs +8 -0
  159. package/dist/GuildMember-GS72FCQD.mjs +9 -0
  160. package/dist/GuildMember-H7CP2HMW.mjs +9 -0
  161. package/dist/GuildMember-K5FLBNHV.mjs +8 -0
  162. package/dist/GuildMember-L35WIMIH.mjs +9 -0
  163. package/dist/GuildMember-OXTGJ3MF.mjs +9 -0
  164. package/dist/GuildMember-RGVPVUAG.mjs +9 -0
  165. package/dist/GuildMember-RZWZ3OCG.mjs +7 -0
  166. package/dist/GuildMember-UBNHZBCO.mjs +8 -0
  167. package/dist/GuildMember-UU26WJGN.mjs +8 -0
  168. package/dist/GuildMember-XF7K2R45.mjs +9 -0
  169. package/dist/GuildMember-YWXA2FVO.mjs +8 -0
  170. package/dist/GuildSticker-B7AZADJR.mjs +8 -0
  171. package/dist/GuildSticker-STHUU6RM.mjs +7 -0
  172. package/dist/Invite-4WSFNMH4.mjs +7 -0
  173. package/dist/Message-23Z3RPCZ.mjs +9 -0
  174. package/dist/Message-2MPW7ZWA.mjs +7 -0
  175. package/dist/Message-33APPS76.mjs +9 -0
  176. package/dist/Message-3XJH5D7I.mjs +7 -0
  177. package/dist/Message-43PACCS7.mjs +8 -0
  178. package/dist/Message-5RFJTHNU.mjs +7 -0
  179. package/dist/Message-6IYEYSV6.mjs +7 -0
  180. package/dist/Message-6RSAGIRP.mjs +8 -0
  181. package/dist/Message-6YRGUZSW.mjs +9 -0
  182. package/dist/Message-AKOXO3LZ.mjs +7 -0
  183. package/dist/Message-C4A23STA.mjs +9 -0
  184. package/dist/Message-DXBXIQIJ.mjs +9 -0
  185. package/dist/Message-E3WU3J2Q.mjs +8 -0
  186. package/dist/Message-EMJ3JUVX.mjs +8 -0
  187. package/dist/Message-F3K5GNIB.mjs +8 -0
  188. package/dist/Message-F4SCFNF5.mjs +8 -0
  189. package/dist/Message-G4KR7O2J.mjs +7 -0
  190. package/dist/Message-O4CXWR57.mjs +7 -0
  191. package/dist/Message-OFIVTTAZ.mjs +9 -0
  192. package/dist/Message-ONWLVMU7.mjs +8 -0
  193. package/dist/Message-OXTQHFCF.mjs +8 -0
  194. package/dist/Message-PZUU7ZFR.mjs +9 -0
  195. package/dist/Message-QSDAA2HG.mjs +9 -0
  196. package/dist/Message-QXPHQOVC.mjs +8 -0
  197. package/dist/Message-R7GZYIQQ.mjs +8 -0
  198. package/dist/Message-SHUOVKB5.mjs +7 -0
  199. package/dist/Message-U3UPCS7C.mjs +7 -0
  200. package/dist/Message-W624MHJF.mjs +8 -0
  201. package/dist/Message-XB5WNMHL.mjs +9 -0
  202. package/dist/Message-ZCS7IGJX.mjs +8 -0
  203. package/dist/Message-ZL2PJPQA.mjs +8 -0
  204. package/dist/MessageReaction-AYSOCOMX.mjs +8 -0
  205. package/dist/MessageReaction-FSX3HHRZ.mjs +7 -0
  206. package/dist/MessageReaction-GNM5YJ4V.mjs +8 -0
  207. package/dist/MessageReaction-ME5KGEG4.mjs +8 -0
  208. package/dist/MessageReaction-MUBQ6GIN.mjs +8 -0
  209. package/dist/MessageReaction-NIAHV3EM.mjs +8 -0
  210. package/dist/MessageReaction-PZ53DNAW.mjs +8 -0
  211. package/dist/MessageReaction-TQFIS53C.mjs +8 -0
  212. package/dist/MessageReaction-V4UZ7OXE.mjs +7 -0
  213. package/dist/MessageReaction-XRPYZDSC.mjs +7 -0
  214. package/dist/Role-5MWSGL66.mjs +7 -0
  215. package/dist/Role-DWZ2YDFB.mjs +7 -0
  216. package/dist/Role-J7ENREP6.mjs +7 -0
  217. package/dist/Role-N2ZEMRUQ.mjs +7 -0
  218. package/dist/Role-SVLWIAMN.mjs +7 -0
  219. package/dist/Webhook-2MQESB7Z.mjs +7 -0
  220. package/dist/Webhook-2RHBXH7R.mjs +7 -0
  221. package/dist/Webhook-32VJD4AL.mjs +7 -0
  222. package/dist/Webhook-6BCEHBZ6.mjs +8 -0
  223. package/dist/Webhook-A5KZ4S4N.mjs +10 -0
  224. package/dist/Webhook-AG6QFM2I.mjs +7 -0
  225. package/dist/Webhook-EARQN5EG.mjs +10 -0
  226. package/dist/Webhook-GB77DXAF.mjs +10 -0
  227. package/dist/Webhook-H4IMADRQ.mjs +10 -0
  228. package/dist/Webhook-H7VKDOJX.mjs +7 -0
  229. package/dist/Webhook-IHLGW7NL.mjs +8 -0
  230. package/dist/Webhook-L2D43K5N.mjs +7 -0
  231. package/dist/Webhook-LEYRYH23.mjs +7 -0
  232. package/dist/Webhook-NPIXOCEH.mjs +10 -0
  233. package/dist/Webhook-NUQCJAWZ.mjs +7 -0
  234. package/dist/Webhook-OXXVFNNU.mjs +9 -0
  235. package/dist/Webhook-RWDDYW2Q.mjs +10 -0
  236. package/dist/Webhook-SNLT45PN.mjs +7 -0
  237. package/dist/Webhook-TGAZZRQQ.mjs +7 -0
  238. package/dist/Webhook-WIF6OGPA.mjs +10 -0
  239. package/dist/Webhook-YL3NNZDI.mjs +8 -0
  240. package/dist/Webhook-ZL7A4766.mjs +10 -0
  241. package/dist/chunk-226TVUXE.mjs +136 -0
  242. package/dist/chunk-23KVLHIZ.mjs +147 -0
  243. package/dist/chunk-24E6OQID.mjs +193 -0
  244. package/dist/chunk-25Q2GMSK.mjs +137 -0
  245. package/dist/chunk-26GCIGHL.mjs +52 -0
  246. package/dist/chunk-2CIZJCEO.mjs +132 -0
  247. package/dist/chunk-2FIZRRSO.mjs +88 -0
  248. package/dist/chunk-2GXOBRSF.mjs +184 -0
  249. package/dist/chunk-2HH5NZT3.mjs +137 -0
  250. package/dist/chunk-2QU3TS4S.mjs +496 -0
  251. package/dist/chunk-367NAOYQ.mjs +127 -0
  252. package/dist/chunk-3BJ4OOCQ.mjs +86 -0
  253. package/dist/chunk-3CNUPFDI.mjs +59 -0
  254. package/dist/chunk-3KOM5WYW.mjs +502 -0
  255. package/dist/chunk-3UJYRWDI.mjs +132 -0
  256. package/dist/chunk-4DBGMFOQ.mjs +14 -0
  257. package/dist/chunk-4F765HVV.mjs +137 -0
  258. package/dist/chunk-4OQ4XACY.mjs +190 -0
  259. package/dist/chunk-4PLHVYRY.mjs +579 -0
  260. package/dist/chunk-4QKSUNTV.mjs +263 -0
  261. package/dist/chunk-4S42USSG.mjs +137 -0
  262. package/dist/chunk-4SWR3ZEZ.mjs +579 -0
  263. package/dist/chunk-4XJIM6SC.mjs +315 -0
  264. package/dist/chunk-52L544OS.mjs +259 -0
  265. package/dist/chunk-53Y37KRG.mjs +111 -0
  266. package/dist/chunk-5APVDWQU.mjs +184 -0
  267. package/dist/chunk-5HQRX3KJ.mjs +70 -0
  268. package/dist/chunk-5I54OXBG.mjs +111 -0
  269. package/dist/chunk-5MPQG6OV.mjs +120 -0
  270. package/dist/chunk-5RCTNYPY.mjs +151 -0
  271. package/dist/chunk-5VIV7EPG.mjs +180 -0
  272. package/dist/chunk-62S4AB2S.mjs +54 -0
  273. package/dist/chunk-6C3LYAUX.mjs +496 -0
  274. package/dist/chunk-6CEFV56Z.mjs +142 -0
  275. package/dist/chunk-6CEMF2LO.mjs +14 -0
  276. package/dist/chunk-6EBNOON4.mjs +86 -0
  277. package/dist/chunk-6GF5H3JH.mjs +137 -0
  278. package/dist/chunk-6IGR45JC.mjs +137 -0
  279. package/dist/chunk-6LREQZXU.mjs +259 -0
  280. package/dist/chunk-6S3BDHBI.mjs +28 -0
  281. package/dist/chunk-6VWXGTX2.mjs +585 -0
  282. package/dist/chunk-72OY7B3D.mjs +72 -0
  283. package/dist/chunk-737R7BFN.mjs +112 -0
  284. package/dist/chunk-7EPDZMZS.mjs +264 -0
  285. package/dist/chunk-7FYM4D2E.mjs +50 -0
  286. package/dist/chunk-7GZN6JXT.mjs +50 -0
  287. package/dist/chunk-7H3TKJUT.mjs +53 -0
  288. package/dist/chunk-7K35BCCD.mjs +263 -0
  289. package/dist/chunk-7SIS5CUA.mjs +14 -0
  290. package/dist/chunk-ABGLEIZG.mjs +191 -0
  291. package/dist/chunk-AC7PFILS.mjs +107 -0
  292. package/dist/chunk-AI5E6LS5.mjs +361 -0
  293. package/dist/chunk-AK6Q62VE.mjs +109 -0
  294. package/dist/chunk-AKJZBSCE.mjs +155 -0
  295. package/dist/chunk-BAZBIWMG.mjs +209 -0
  296. package/dist/chunk-BF7OCTE6.mjs +142 -0
  297. package/dist/chunk-BFSGXVZ7.mjs +148 -0
  298. package/dist/chunk-BGJSL6JI.mjs +14 -0
  299. package/dist/chunk-BI2MRKB7.mjs +150 -0
  300. package/dist/chunk-BKPVGBOT.mjs +8 -0
  301. package/dist/chunk-BMAFJS7T.mjs +575 -0
  302. package/dist/chunk-BUEXP5SZ.mjs +70 -0
  303. package/dist/chunk-BUIHWKTK.mjs +132 -0
  304. package/dist/chunk-BYTAODAO.mjs +70 -0
  305. package/dist/chunk-CEABHTAF.mjs +43 -0
  306. package/dist/chunk-CJLJBBFO.mjs +54 -0
  307. package/dist/chunk-CJVQNARM.mjs +145 -0
  308. package/dist/chunk-CNCPVNXS.mjs +160 -0
  309. package/dist/chunk-CNXK6SYW.mjs +220 -0
  310. package/dist/chunk-CQ5ZVTLX.mjs +71 -0
  311. package/dist/chunk-CQ7MDBHD.mjs +199 -0
  312. package/dist/chunk-CREI4MOS.mjs +406 -0
  313. package/dist/chunk-DJBCSVZX.mjs +102 -0
  314. package/dist/chunk-DJQXAQLR.mjs +496 -0
  315. package/dist/chunk-DLROMCIJ.mjs +50 -0
  316. package/dist/chunk-DLVBAJTE.mjs +52 -0
  317. package/dist/chunk-DNDCNIN2.mjs +263 -0
  318. package/dist/chunk-DO7MLFT6.mjs +579 -0
  319. package/dist/chunk-DPZHAYCK.mjs +71 -0
  320. package/dist/chunk-DQ4TNBPG.mjs +63 -0
  321. package/dist/chunk-DSPSRPHF.mjs +200 -0
  322. package/dist/chunk-DUQAD7F6.mjs +173 -0
  323. package/dist/chunk-E27LKSSS.mjs +142 -0
  324. package/dist/chunk-E6SU3TR5.mjs +64 -0
  325. package/dist/chunk-E75ZVY3I.mjs +14 -0
  326. package/dist/chunk-EC4ES5VH.mjs +171 -0
  327. package/dist/chunk-EF32ILJL.mjs +102 -0
  328. package/dist/chunk-EI2LRVWJ.mjs +207 -0
  329. package/dist/chunk-F2EEQP5O.mjs +86 -0
  330. package/dist/chunk-F3JU2ZCE.mjs +575 -0
  331. package/dist/chunk-FGFWZMUQ.mjs +64 -0
  332. package/dist/chunk-FH6ICLNP.mjs +142 -0
  333. package/dist/chunk-FHFXUKFP.mjs +147 -0
  334. package/dist/chunk-FJS5FBXO.mjs +233 -0
  335. package/dist/chunk-FK5X6HFL.mjs +111 -0
  336. package/dist/chunk-FNFID6QB.mjs +45 -0
  337. package/dist/chunk-FRVZ7D6D.mjs +293 -0
  338. package/dist/chunk-FSXTONUR.mjs +147 -0
  339. package/dist/chunk-FVZY7IZ4.mjs +575 -0
  340. package/dist/chunk-G2YVDCRB.mjs +137 -0
  341. package/dist/chunk-G4L7WAJS.mjs +64 -0
  342. package/dist/chunk-G6F6VL4O.mjs +54 -0
  343. package/dist/chunk-GCIJYVRC.mjs +86 -0
  344. package/dist/chunk-GEPISSKR.mjs +263 -0
  345. package/dist/chunk-GFUJVQ7L.mjs +64 -0
  346. package/dist/chunk-GIIJQKAV.mjs +164 -0
  347. package/dist/chunk-GUNWHOQO.mjs +42 -0
  348. package/dist/chunk-GWSLXZES.mjs +263 -0
  349. package/dist/chunk-H5KYMLLB.mjs +14 -0
  350. package/dist/chunk-HAUQAFOF.mjs +97 -0
  351. package/dist/chunk-HBF5QEDH.mjs +42 -0
  352. package/dist/chunk-I2MHQEEZ.mjs +575 -0
  353. package/dist/chunk-IE3V5VLN.mjs +64 -0
  354. package/dist/chunk-IHXSHE2Z.mjs +56 -0
  355. package/dist/chunk-IPHFDI2L.mjs +68 -0
  356. package/dist/chunk-J3EIGOXQ.mjs +72 -0
  357. package/dist/chunk-JHNKZIHY.mjs +137 -0
  358. package/dist/chunk-JJHZBWZM.mjs +118 -0
  359. package/dist/chunk-JOUNLDB6.mjs +225 -0
  360. package/dist/chunk-JS55BGBM.mjs +157 -0
  361. package/dist/chunk-JTL3CVFU.mjs +114 -0
  362. package/dist/chunk-JVEOQFUX.mjs +52 -0
  363. package/dist/chunk-JW4BRX5E.mjs +140 -0
  364. package/dist/chunk-K2ZJWUV6.mjs +86 -0
  365. package/dist/chunk-K6NLD6SB.mjs +64 -0
  366. package/dist/chunk-KALJBR6Z.mjs +142 -0
  367. package/dist/chunk-KBXXX7L4.mjs +209 -0
  368. package/dist/chunk-KHE3G7SG.mjs +184 -0
  369. package/dist/chunk-KOTF4TTZ.mjs +403 -0
  370. package/dist/chunk-KQNLUUBZ.mjs +137 -0
  371. package/dist/chunk-KQXR3GN2.mjs +140 -0
  372. package/dist/chunk-KR26CBFE.mjs +58 -0
  373. package/dist/chunk-KWA5TKXS.mjs +574 -0
  374. package/dist/chunk-KXI2IOJM.mjs +97 -0
  375. package/dist/chunk-KXJLNURI.mjs +153 -0
  376. package/dist/chunk-KXY2PTDQ.mjs +263 -0
  377. package/dist/chunk-L25ON7WB.mjs +52 -0
  378. package/dist/chunk-LBBIQOSH.mjs +53 -0
  379. package/dist/chunk-LD7ATCWW.mjs +97 -0
  380. package/dist/chunk-LDR7MZLX.mjs +227 -0
  381. package/dist/chunk-LRMB4VBU.mjs +112 -0
  382. package/dist/chunk-LTO3TVUW.mjs +71 -0
  383. package/dist/chunk-LU2SNC5G.mjs +392 -0
  384. package/dist/chunk-LVMFPATK.mjs +54 -0
  385. package/dist/chunk-MILMGDQ2.mjs +15 -0
  386. package/dist/chunk-MKEHOFA2.mjs +43 -0
  387. package/dist/chunk-MSMABD52.mjs +72 -0
  388. package/dist/chunk-MTGPR7WY.mjs +142 -0
  389. package/dist/chunk-MTMKXMB3.mjs +496 -0
  390. package/dist/chunk-MWRADLNP.mjs +86 -0
  391. package/dist/chunk-N65TF5SP.mjs +184 -0
  392. package/dist/chunk-NCBAWY7A.mjs +139 -0
  393. package/dist/chunk-ND223BOF.mjs +256 -0
  394. package/dist/chunk-NGJKJ4R2.mjs +184 -0
  395. package/dist/chunk-NISGA2YZ.mjs +55 -0
  396. package/dist/chunk-NM6PHRGO.mjs +263 -0
  397. package/dist/chunk-NMMHN5LB.mjs +579 -0
  398. package/dist/chunk-NNKU4OZY.mjs +147 -0
  399. package/dist/chunk-NNZUZLG3.mjs +416 -0
  400. package/dist/chunk-NOLYW3V4.mjs +140 -0
  401. package/dist/chunk-NYEWIYVQ.mjs +86 -0
  402. package/dist/chunk-NZJJ7FRK.mjs +339 -0
  403. package/dist/chunk-O77KTDMH.mjs +44 -0
  404. package/dist/chunk-OALSL7C2.mjs +212 -0
  405. package/dist/chunk-OGJSTE4A.mjs +86 -0
  406. package/dist/chunk-OHIHIQAS.mjs +102 -0
  407. package/dist/chunk-OJJADMUB.mjs +71 -0
  408. package/dist/chunk-OMFDQURC.mjs +84 -0
  409. package/dist/chunk-ORRPH43K.mjs +127 -0
  410. package/dist/chunk-OXO3HVCT.mjs +124 -0
  411. package/dist/chunk-P4IRDGB4.mjs +43 -0
  412. package/dist/chunk-PD42OYFT.mjs +150 -0
  413. package/dist/chunk-PJ62NB7Z.mjs +319 -0
  414. package/dist/chunk-PL26CDZN.mjs +97 -0
  415. package/dist/chunk-PM2IUGNR.mjs +29 -0
  416. package/dist/chunk-PO5JZQVN.mjs +111 -0
  417. package/dist/chunk-PQR6WIIY.mjs +348 -0
  418. package/dist/chunk-PS6PZL5W.mjs +86 -0
  419. package/dist/chunk-PTBV5DCB.mjs +97 -0
  420. package/dist/chunk-PXZCOEZ6.mjs +184 -0
  421. package/dist/chunk-PYYXC7US.mjs +76 -0
  422. package/dist/chunk-Q4W4ODBP.mjs +319 -0
  423. package/dist/chunk-QAJ4C5RT.mjs +263 -0
  424. package/dist/chunk-QDCFQF6J.mjs +36 -0
  425. package/dist/chunk-QDNFJVVE.mjs +70 -0
  426. package/dist/chunk-QG7OB5MD.mjs +86 -0
  427. package/dist/chunk-QM7TE5C3.mjs +97 -0
  428. package/dist/chunk-QRQG2BI2.mjs +67 -0
  429. package/dist/chunk-QXJNV5EJ.mjs +110 -0
  430. package/dist/chunk-QYAZXDXI.mjs +142 -0
  431. package/dist/chunk-RCP27MRC.mjs +33 -0
  432. package/dist/chunk-RGLEJWLU.mjs +173 -0
  433. package/dist/chunk-RIXU6NZ2.mjs +122 -0
  434. package/dist/chunk-RNDHAIPS.mjs +64 -0
  435. package/dist/chunk-RTSLRXJC.mjs +122 -0
  436. package/dist/chunk-RWFKZ3DF.mjs +413 -0
  437. package/dist/chunk-RWZ3ORIM.mjs +136 -0
  438. package/dist/chunk-RXHJYGSJ.mjs +53 -0
  439. package/dist/chunk-SCOVKXZ7.mjs +223 -0
  440. package/dist/chunk-SGIJ36LI.mjs +259 -0
  441. package/dist/chunk-SHYMRCLT.mjs +221 -0
  442. package/dist/chunk-SQVCCSNN.mjs +41 -0
  443. package/dist/chunk-SU26BEIK.mjs +86 -0
  444. package/dist/chunk-SW6KNICI.mjs +52 -0
  445. package/dist/chunk-SY6DVJKB.mjs +184 -0
  446. package/dist/chunk-T23OBCRC.mjs +295 -0
  447. package/dist/chunk-T2NSVWBH.mjs +77 -0
  448. package/dist/chunk-T3PPEX64.mjs +164 -0
  449. package/dist/chunk-TDQUAKUL.mjs +64 -0
  450. package/dist/chunk-TE5IC7IP.mjs +36 -0
  451. package/dist/chunk-TKASBGF7.mjs +62 -0
  452. package/dist/chunk-TMDZALIN.mjs +110 -0
  453. package/dist/chunk-TU4VVM34.mjs +23 -0
  454. package/dist/chunk-U2WETRQJ.mjs +86 -0
  455. package/dist/chunk-U3RZV7XO.mjs +58 -0
  456. package/dist/chunk-USHLLE7C.mjs +137 -0
  457. package/dist/chunk-UU6LVKA3.mjs +112 -0
  458. package/dist/chunk-UXODHQZH.mjs +41 -0
  459. package/dist/chunk-V37YOE4P.mjs +184 -0
  460. package/dist/chunk-V6QVJWJR.mjs +86 -0
  461. package/dist/chunk-V6T5VMWD.mjs +26 -0
  462. package/dist/chunk-V72EJZDX.mjs +137 -0
  463. package/dist/chunk-V7LPVPGH.mjs +305 -0
  464. package/dist/chunk-VESIRBN4.mjs +263 -0
  465. package/dist/chunk-VGKL2ALO.mjs +184 -0
  466. package/dist/chunk-VPZEDAAB.mjs +184 -0
  467. package/dist/chunk-VQHHSD7C.mjs +97 -0
  468. package/dist/chunk-VZPN7FNH.mjs +308 -0
  469. package/dist/chunk-WB5BPM5Q.mjs +55 -0
  470. package/dist/chunk-WFONGZGK.mjs +42 -0
  471. package/dist/chunk-WKZ2ZIPO.mjs +112 -0
  472. package/dist/chunk-WVRHFGGB.mjs +97 -0
  473. package/dist/chunk-WYSHH4LR.mjs +141 -0
  474. package/dist/chunk-WZVY7DA6.mjs +44 -0
  475. package/dist/chunk-X3GPLJGD.mjs +152 -0
  476. package/dist/chunk-X77DFNE3.mjs +136 -0
  477. package/dist/chunk-XRLFLKHG.mjs +14 -0
  478. package/dist/chunk-XTDZQD4A.mjs +110 -0
  479. package/dist/chunk-XTFNK6PX.mjs +220 -0
  480. package/dist/chunk-XXCBJJZE.mjs +88 -0
  481. package/dist/chunk-Y3PX242G.mjs +225 -0
  482. package/dist/chunk-Y57QWXS4.mjs +122 -0
  483. package/dist/chunk-YKP7JHV2.mjs +102 -0
  484. package/dist/chunk-YRCBBEPB.mjs +142 -0
  485. package/dist/chunk-YSKZR66G.mjs +102 -0
  486. package/dist/chunk-YUDOACNS.mjs +184 -0
  487. package/dist/chunk-YVNZMBZ6.mjs +501 -0
  488. package/dist/chunk-YWE5AILJ.mjs +137 -0
  489. package/dist/chunk-YYER5QOG.mjs +44 -0
  490. package/dist/chunk-Z6LVSACJ.mjs +86 -0
  491. package/dist/chunk-ZFLKX6WD.mjs +97 -0
  492. package/dist/chunk-ZGMM6IPQ.mjs +79 -0
  493. package/dist/chunk-ZHNFS3MK.mjs +56 -0
  494. package/dist/chunk-ZHRQQZ4X.mjs +102 -0
  495. package/dist/chunk-ZJCAKCMN.mjs +89 -0
  496. package/dist/chunk-ZKKBIQBA.mjs +413 -0
  497. package/dist/chunk-ZMIMAMO2.mjs +14 -0
  498. package/dist/chunk-ZR53XY37.mjs +499 -0
  499. package/dist/chunk-ZR6MFTT7.mjs +142 -0
  500. package/dist/chunk-ZVFZIZM2.mjs +150 -0
  501. package/dist/index.d.mts +22 -4
  502. package/dist/index.d.ts +22 -4
  503. package/dist/index.js +46 -10
  504. package/dist/index.mjs +70 -32
  505. package/package.json +7 -7
@@ -0,0 +1,122 @@
1
+ import {
2
+ CDN_URL
3
+ } from "./chunk-HQMYRYMY.mjs";
4
+ import {
5
+ GuildMember
6
+ } from "./chunk-JVEOQFUX.mjs";
7
+ import {
8
+ Role
9
+ } from "./chunk-SQVCCSNN.mjs";
10
+ import {
11
+ Base
12
+ } from "./chunk-XNS4O6QJ.mjs";
13
+
14
+ // src/structures/Guild.ts
15
+ import { parseRoleMention } from "@fluxerjs/util";
16
+ import { Collection } from "@fluxerjs/collection";
17
+ import { Routes } from "@fluxerjs/types";
18
+ var Guild = class extends Base {
19
+ client;
20
+ id;
21
+ name;
22
+ icon;
23
+ banner;
24
+ ownerId;
25
+ members = new Collection();
26
+ channels = new Collection();
27
+ roles = new Collection();
28
+ /** @param data - API guild from GET /guilds/{id} or gateway GUILD_CREATE */
29
+ constructor(client, data) {
30
+ super();
31
+ this.client = client;
32
+ this.id = data.id;
33
+ this.name = data.name;
34
+ this.icon = data.icon ?? null;
35
+ this.banner = data.banner ?? null;
36
+ this.ownerId = data.owner_id;
37
+ for (const r of data.roles ?? []) {
38
+ this.roles.set(r.id, new Role(client, r, this.id));
39
+ }
40
+ }
41
+ /** Get the guild icon URL, or null if no icon. */
42
+ iconURL(options) {
43
+ if (!this.icon) return null;
44
+ const size = options?.size ? `?size=${options.size}` : "";
45
+ return `${CDN_URL}/icons/${this.id}/${this.icon}.png${size}`;
46
+ }
47
+ /** Get the guild banner URL, or null if no banner. */
48
+ bannerURL(options) {
49
+ if (!this.banner) return null;
50
+ const size = options?.size ? `?size=${options.size}` : "";
51
+ return `${CDN_URL}/banners/${this.id}/${this.banner}.png${size}`;
52
+ }
53
+ /**
54
+ * Add a role to a member by user ID. Does not require fetching the member first.
55
+ * @param userId - The user ID of the member
56
+ * @param roleId - The role ID to add (or use guild.resolveRoleId for mention/name resolution)
57
+ * Requires Manage Roles permission.
58
+ */
59
+ async addRoleToMember(userId, roleId) {
60
+ await this.client.rest.put(Routes.guildMemberRole(this.id, userId, roleId));
61
+ }
62
+ /**
63
+ * Remove a role from a member by user ID. Does not require fetching the member first.
64
+ * @param userId - The user ID of the member
65
+ * @param roleId - The role ID to remove
66
+ * Requires Manage Roles permission.
67
+ */
68
+ async removeRoleFromMember(userId, roleId) {
69
+ await this.client.rest.delete(Routes.guildMemberRole(this.id, userId, roleId));
70
+ }
71
+ /**
72
+ * Resolve a role ID from an argument (role mention, raw ID, or name).
73
+ * Fetches guild roles if name is provided.
74
+ * @param arg - Role mention (@role), role ID, or role name
75
+ * @returns The role ID, or null if not found
76
+ */
77
+ async resolveRoleId(arg) {
78
+ const parsed = parseRoleMention(arg);
79
+ if (parsed) return parsed;
80
+ if (/^\d{17,19}$/.test(arg.trim())) return arg.trim();
81
+ const cached = this.roles.find(
82
+ (r) => !!(r.name && r.name.toLowerCase() === arg.trim().toLowerCase())
83
+ );
84
+ if (cached) return cached.id;
85
+ const roles = await this.client.rest.get(Routes.guildRoles(this.id));
86
+ const list = Array.isArray(roles) ? roles : Object.values(roles ?? {});
87
+ const role = list.find(
88
+ (r) => !!(r.name && r.name.toLowerCase() === arg.trim().toLowerCase())
89
+ );
90
+ if (role) {
91
+ this.roles.set(role.id, new Role(this.client, role, this.id));
92
+ return role.id;
93
+ }
94
+ return null;
95
+ }
96
+ /**
97
+ * Fetch a guild member by user ID.
98
+ * @param userId - The user ID of the member to fetch
99
+ * @returns The guild member, or null if not found
100
+ */
101
+ async fetchMember(userId) {
102
+ try {
103
+ const data = await this.client.rest.get(
104
+ Routes.guildMember(this.id, userId)
105
+ );
106
+ return new GuildMember(this.client, { ...data, guild_id: this.id }, this);
107
+ } catch {
108
+ return null;
109
+ }
110
+ }
111
+ /** Fetch all webhooks in this guild. Returned webhooks do not include the token (cannot send). */
112
+ async fetchWebhooks() {
113
+ const { Webhook } = await import("./Webhook-2MQESB7Z.mjs");
114
+ const data = await this.client.rest.get(Routes.guildWebhooks(this.id));
115
+ const list = Array.isArray(data) ? data : Object.values(data ?? {});
116
+ return list.map((w) => new Webhook(this.client, w));
117
+ }
118
+ };
119
+
120
+ export {
121
+ Guild
122
+ };
@@ -0,0 +1,413 @@
1
+ import {
2
+ ErrorCodes,
3
+ FluxerError
4
+ } from "./chunk-V6T5VMWD.mjs";
5
+ import {
6
+ Events
7
+ } from "./chunk-AH7KYH2Z.mjs";
8
+ import {
9
+ buildSendBody
10
+ } from "./chunk-PM2IUGNR.mjs";
11
+ import {
12
+ Base
13
+ } from "./chunk-XNS4O6QJ.mjs";
14
+
15
+ // src/client/MessageManager.ts
16
+ import { Routes } from "@fluxerjs/types";
17
+ import { FluxerAPIError, RateLimitError } from "@fluxerjs/rest";
18
+ var MessageManager = class {
19
+ constructor(client, channelId) {
20
+ this.client = client;
21
+ this.channelId = channelId;
22
+ }
23
+ /**
24
+ * Fetch a message by ID from this channel.
25
+ * @param messageId - Snowflake of the message
26
+ * @returns The message
27
+ * @throws FluxerError with MESSAGE_NOT_FOUND if the message does not exist
28
+ */
29
+ async fetch(messageId) {
30
+ try {
31
+ const { Message } = await import("./Message-OFIVTTAZ.mjs");
32
+ const data = await this.client.rest.get(
33
+ Routes.channelMessage(this.channelId, messageId)
34
+ );
35
+ return new Message(this.client, data);
36
+ } catch (err) {
37
+ if (err instanceof RateLimitError) throw err;
38
+ if (err instanceof FluxerAPIError && err.statusCode === 404) {
39
+ throw new FluxerError(`Message ${messageId} not found in channel ${this.channelId}`, {
40
+ code: ErrorCodes.MessageNotFound,
41
+ cause: err
42
+ });
43
+ }
44
+ throw err instanceof FluxerError ? err : new FluxerError(String(err), { cause: err });
45
+ }
46
+ }
47
+ };
48
+
49
+ // src/util/MessageCollector.ts
50
+ import { EventEmitter } from "events";
51
+ import { Collection } from "@fluxerjs/collection";
52
+ var MessageCollector = class extends EventEmitter {
53
+ client;
54
+ channelId;
55
+ options;
56
+ collected = new Collection();
57
+ _timeout = null;
58
+ _ended = false;
59
+ _listener;
60
+ constructor(client, channelId, options = {}) {
61
+ super();
62
+ this.client = client;
63
+ this.channelId = channelId;
64
+ this.options = {
65
+ filter: options.filter ?? (() => true),
66
+ time: options.time ?? 0,
67
+ max: options.max ?? 0
68
+ };
69
+ this._listener = (message) => {
70
+ if (this._ended || message.channelId !== this.channelId) return;
71
+ if (!this.options.filter(message)) return;
72
+ this.collected.set(message.id, message);
73
+ this.emit("collect", message);
74
+ if (this.options.max > 0 && this.collected.size >= this.options.max) {
75
+ this.stop("limit");
76
+ }
77
+ };
78
+ this.client.on(Events.MessageCreate, this._listener);
79
+ if (this.options.time > 0) {
80
+ this._timeout = setTimeout(() => this.stop("time"), this.options.time);
81
+ }
82
+ }
83
+ stop(reason = "user") {
84
+ if (this._ended) return;
85
+ this._ended = true;
86
+ this.client.off(Events.MessageCreate, this._listener);
87
+ if (this._timeout) {
88
+ clearTimeout(this._timeout);
89
+ this._timeout = null;
90
+ }
91
+ this.emit("end", this.collected, reason);
92
+ }
93
+ on(event, listener) {
94
+ return super.on(event, listener);
95
+ }
96
+ emit(event, ...args) {
97
+ return super.emit(event, ...args);
98
+ }
99
+ };
100
+
101
+ // src/structures/Channel.ts
102
+ import { ChannelType, Routes as Routes2 } from "@fluxerjs/types";
103
+ import { emitDeprecationWarning } from "@fluxerjs/util";
104
+ var Channel = class _Channel extends Base {
105
+ /** Whether this channel has a send method (TextChannel, DMChannel). */
106
+ isSendable() {
107
+ return "send" in this;
108
+ }
109
+ /** Whether this channel is a DM or Group DM. */
110
+ isDM() {
111
+ return this.type === ChannelType.DM || this.type === ChannelType.GroupDM;
112
+ }
113
+ /** Whether this channel is voice-based (VoiceChannel). */
114
+ isVoice() {
115
+ return "bitrate" in this;
116
+ }
117
+ /** Create a DM channel from API data (type DM or GroupDM). */
118
+ static createDM(client, data) {
119
+ return new DMChannel(client, data);
120
+ }
121
+ client;
122
+ id;
123
+ type;
124
+ /** Channel name. Guild channels and Group DMs have names; 1:1 DMs are typically null. */
125
+ name;
126
+ /** Channel icon hash (Group DMs). Null if none. */
127
+ icon;
128
+ /** ISO timestamp when the last message was pinned. Null if never pinned. */
129
+ lastPinTimestamp;
130
+ /** @param data - API channel from GET /channels/{id} or GET /guilds/{id}/channels */
131
+ constructor(client, data) {
132
+ super();
133
+ this.client = client;
134
+ this.id = data.id;
135
+ this.type = data.type;
136
+ this.name = data.name ?? null;
137
+ this.icon = data.icon ?? null;
138
+ this.lastPinTimestamp = data.last_pin_timestamp ?? null;
139
+ }
140
+ /**
141
+ * Create the appropriate channel subclass from API data.
142
+ * @param client - The client instance
143
+ * @param data - Channel data from the API
144
+ */
145
+ static from(client, data) {
146
+ const type = data.type ?? 0;
147
+ if (type === ChannelType.GuildText) return new TextChannel(client, data);
148
+ if (type === ChannelType.GuildCategory) return new CategoryChannel(client, data);
149
+ if (type === ChannelType.GuildVoice) return new VoiceChannel(client, data);
150
+ if (type === ChannelType.GuildLink || type === ChannelType.GuildLinkExtended)
151
+ return new LinkChannel(client, data);
152
+ return new GuildChannel(client, data);
153
+ }
154
+ /**
155
+ * Create a channel from API data, including DM and GroupDM.
156
+ * Used by ChannelManager.fetch() for GET /channels/{id}.
157
+ */
158
+ static fromOrCreate(client, data) {
159
+ const type = data.type ?? 0;
160
+ if (type === ChannelType.DM || type === ChannelType.GroupDM)
161
+ return _Channel.createDM(client, data);
162
+ return _Channel.from(client, data);
163
+ }
164
+ /**
165
+ * Bulk delete messages. Requires Manage Messages permission.
166
+ * @param messageIds - Array of message IDs to delete (2–100)
167
+ */
168
+ async bulkDeleteMessages(messageIds) {
169
+ await this.client.rest.post(Routes2.channelBulkDelete(this.id), {
170
+ body: { message_ids: messageIds },
171
+ auth: true
172
+ });
173
+ }
174
+ /**
175
+ * Send a typing indicator to the channel. Lasts ~10 seconds.
176
+ */
177
+ async sendTyping() {
178
+ await this.client.rest.post(Routes2.channelTyping(this.id), { auth: true });
179
+ }
180
+ };
181
+ var GuildChannel = class extends Channel {
182
+ guildId;
183
+ name;
184
+ position;
185
+ parentId;
186
+ /** Permission overwrites for roles and members. */
187
+ permissionOverwrites;
188
+ constructor(client, data) {
189
+ super(client, data);
190
+ this.guildId = data.guild_id ?? "";
191
+ this.name = data.name ?? null;
192
+ this.position = data.position;
193
+ this.parentId = data.parent_id ?? null;
194
+ this.permissionOverwrites = data.permission_overwrites ?? [];
195
+ }
196
+ /**
197
+ * Create a webhook in this channel.
198
+ * @param options - Webhook name and optional avatar URL
199
+ * @returns The webhook with token (required for send()). Requires Manage Webhooks permission.
200
+ */
201
+ async createWebhook(options) {
202
+ const { Webhook } = await import("./Webhook-RWDDYW2Q.mjs");
203
+ const data = await this.client.rest.post(Routes2.channelWebhooks(this.id), {
204
+ body: options,
205
+ auth: true
206
+ });
207
+ return new Webhook(this.client, data);
208
+ }
209
+ /**
210
+ * Fetch all webhooks in this channel.
211
+ * @returns Webhooks (includes token when listing from channel; can send via send())
212
+ */
213
+ async fetchWebhooks() {
214
+ const { Webhook } = await import("./Webhook-RWDDYW2Q.mjs");
215
+ const data = await this.client.rest.get(Routes2.channelWebhooks(this.id));
216
+ const list = Array.isArray(data) ? data : Object.values(data ?? {});
217
+ return list.map((w) => new Webhook(this.client, w));
218
+ }
219
+ /**
220
+ * Create an invite for this channel.
221
+ * @param options - max_uses (0–100), max_age (0–604800 seconds), unique, temporary
222
+ * Requires Create Instant Invite permission.
223
+ */
224
+ async createInvite(options) {
225
+ const { Invite } = await import("./Invite-UM5BU5A6.mjs");
226
+ const body = {};
227
+ if (options?.max_uses != null) body.max_uses = options.max_uses;
228
+ if (options?.max_age != null) body.max_age = options.max_age;
229
+ if (options?.unique != null) body.unique = options.unique;
230
+ if (options?.temporary != null) body.temporary = options.temporary;
231
+ const data = await this.client.rest.post(Routes2.channelInvites(this.id), {
232
+ body: Object.keys(body).length ? body : void 0,
233
+ auth: true
234
+ });
235
+ return new Invite(this.client, data);
236
+ }
237
+ /**
238
+ * Fetch invites for this channel.
239
+ * Requires Manage Channel permission.
240
+ */
241
+ async fetchInvites() {
242
+ const { Invite } = await import("./Invite-UM5BU5A6.mjs");
243
+ const data = await this.client.rest.get(Routes2.channelInvites(this.id));
244
+ const list = Array.isArray(data) ? data : Object.values(data ?? {});
245
+ return list.map((i) => new Invite(this.client, i));
246
+ }
247
+ };
248
+ var TextChannel = class extends GuildChannel {
249
+ topic;
250
+ nsfw;
251
+ rateLimitPerUser;
252
+ lastMessageId;
253
+ constructor(client, data) {
254
+ super(client, data);
255
+ this.topic = data.topic ?? null;
256
+ this.nsfw = data.nsfw ?? false;
257
+ this.rateLimitPerUser = data.rate_limit_per_user ?? 0;
258
+ this.lastMessageId = data.last_message_id ?? null;
259
+ }
260
+ /**
261
+ * Send a message to this channel.
262
+ * @param options - Text content or object with content, embeds, and/or files
263
+ */
264
+ async send(options) {
265
+ const opts = typeof options === "string" ? { content: options } : options;
266
+ const body = buildSendBody(options);
267
+ const { Message } = await import("./Message-OFIVTTAZ.mjs");
268
+ const postOptions = opts.files?.length ? { body, files: opts.files } : { body };
269
+ const data = await this.client.rest.post(Routes2.channelMessages(this.id), postOptions);
270
+ return new Message(this.client, data);
271
+ }
272
+ /** Message manager for this channel. Use channel.messages.fetch(messageId). */
273
+ get messages() {
274
+ return new MessageManager(this.client, this.id);
275
+ }
276
+ /**
277
+ * Create a message collector for this channel.
278
+ * Collects messages matching the filter until time expires or max is reached.
279
+ * @param options - Filter, time (ms), and max count
280
+ * @example
281
+ * const collector = channel.createMessageCollector({ filter: m => m.author.id === userId, time: 10000 });
282
+ * collector.on('collect', m => console.log(m.content));
283
+ * collector.on('end', (collected, reason) => { ... });
284
+ */
285
+ createMessageCollector(options) {
286
+ return new MessageCollector(this.client, this.id, options);
287
+ }
288
+ /**
289
+ * Fetch pinned messages in this channel.
290
+ * @returns Pinned messages
291
+ */
292
+ async fetchPinnedMessages() {
293
+ const { Message } = await import("./Message-OFIVTTAZ.mjs");
294
+ const data = await this.client.rest.get(Routes2.channelPins(this.id));
295
+ const list = Array.isArray(data) ? data : data?.items ?? [];
296
+ return list.map((item) => {
297
+ const msg = typeof item === "object" && item && "message" in item ? item.message : item;
298
+ return new Message(this.client, msg);
299
+ });
300
+ }
301
+ /**
302
+ * Fetch a message by ID from this channel.
303
+ * @param messageId - Snowflake of the message
304
+ * @returns The message, or null if not found
305
+ * @deprecated Use channel.messages.fetch(messageId) instead.
306
+ */
307
+ async fetchMessage(messageId) {
308
+ emitDeprecationWarning(
309
+ "Channel.fetchMessage()",
310
+ "Use channel.messages.fetch(messageId) instead."
311
+ );
312
+ return this.client.channels.fetchMessage(this.id, messageId);
313
+ }
314
+ };
315
+ var CategoryChannel = class extends GuildChannel {
316
+ };
317
+ var VoiceChannel = class extends GuildChannel {
318
+ bitrate;
319
+ userLimit;
320
+ rtcRegion;
321
+ constructor(client, data) {
322
+ super(client, data);
323
+ this.bitrate = data.bitrate ?? null;
324
+ this.userLimit = data.user_limit ?? null;
325
+ this.rtcRegion = data.rtc_region ?? null;
326
+ }
327
+ };
328
+ var LinkChannel = class extends GuildChannel {
329
+ url;
330
+ constructor(client, data) {
331
+ super(client, data);
332
+ this.url = data.url ?? null;
333
+ }
334
+ };
335
+ var DMChannel = class extends Channel {
336
+ lastMessageId;
337
+ /** Group DM creator ID. Null for 1:1 DMs. */
338
+ ownerId;
339
+ /** Group DM recipients as User objects. Empty for 1:1 DMs. */
340
+ recipients;
341
+ /** Group DM member display names (userId -> nickname). */
342
+ nicks;
343
+ constructor(client, data) {
344
+ super(client, data);
345
+ this.lastMessageId = data.last_message_id ?? null;
346
+ this.ownerId = data.owner_id ?? null;
347
+ this.recipients = (data.recipients ?? []).map(
348
+ (u) => client.getOrCreateUser(u)
349
+ );
350
+ this.nicks = data.nicks ?? {};
351
+ }
352
+ /**
353
+ * Send a message to this DM channel.
354
+ * @param options - Text content or object with content, embeds, and/or files
355
+ */
356
+ async send(options) {
357
+ const opts = typeof options === "string" ? { content: options } : options;
358
+ const body = buildSendBody(options);
359
+ const { Message } = await import("./Message-OFIVTTAZ.mjs");
360
+ const postOptions = opts.files?.length ? { body, files: opts.files } : { body };
361
+ const data = await this.client.rest.post(Routes2.channelMessages(this.id), postOptions);
362
+ return new Message(this.client, data);
363
+ }
364
+ /** Message manager for this channel. Use channel.messages.fetch(messageId). */
365
+ get messages() {
366
+ return new MessageManager(this.client, this.id);
367
+ }
368
+ /**
369
+ * Create a message collector for this DM channel.
370
+ * @param options - Filter, time (ms), and max count
371
+ */
372
+ createMessageCollector(options) {
373
+ return new MessageCollector(this.client, this.id, options);
374
+ }
375
+ /**
376
+ * Fetch pinned messages in this DM channel.
377
+ * @returns Pinned messages
378
+ */
379
+ async fetchPinnedMessages() {
380
+ const { Message } = await import("./Message-OFIVTTAZ.mjs");
381
+ const data = await this.client.rest.get(Routes2.channelPins(this.id));
382
+ const list = Array.isArray(data) ? data : data?.items ?? [];
383
+ return list.map((item) => {
384
+ const msg = typeof item === "object" && item && "message" in item ? item.message : item;
385
+ return new Message(this.client, msg);
386
+ });
387
+ }
388
+ /**
389
+ * Fetch a message by ID from this DM channel.
390
+ * @param messageId - Snowflake of the message
391
+ * @returns The message, or null if not found
392
+ * @deprecated Use channel.messages.fetch(messageId) instead.
393
+ */
394
+ async fetchMessage(messageId) {
395
+ emitDeprecationWarning(
396
+ "Channel.fetchMessage()",
397
+ "Use channel.messages.fetch(messageId) instead."
398
+ );
399
+ return this.client.channels.fetchMessage(this.id, messageId);
400
+ }
401
+ };
402
+
403
+ export {
404
+ MessageManager,
405
+ MessageCollector,
406
+ Channel,
407
+ GuildChannel,
408
+ TextChannel,
409
+ CategoryChannel,
410
+ VoiceChannel,
411
+ LinkChannel,
412
+ DMChannel
413
+ };
@@ -0,0 +1,136 @@
1
+ import {
2
+ Base
3
+ } from "./chunk-XNS4O6QJ.mjs";
4
+
5
+ // src/structures/Webhook.ts
6
+ import { Routes } from "@fluxerjs/types";
7
+ import { EmbedBuilder } from "@fluxerjs/builders";
8
+ function buildWebhookBody(options) {
9
+ const body = typeof options === "string" ? { content: options } : { ...options };
10
+ if (body.embeds && Array.isArray(body.embeds) && body.embeds.length > 0) {
11
+ body.embeds = body.embeds.map(
12
+ (e) => e instanceof EmbedBuilder ? e.toJSON() : e
13
+ );
14
+ }
15
+ return body;
16
+ }
17
+ var Webhook = class _Webhook extends Base {
18
+ client;
19
+ id;
20
+ guildId;
21
+ channelId;
22
+ name;
23
+ avatar;
24
+ /** Present only when webhook was created via createWebhook(); not returned when fetching. */
25
+ token;
26
+ /** User who created the webhook. */
27
+ user;
28
+ /** @param data - API webhook from POST /channels/{id}/webhooks (has token) or GET /webhooks/{id} (no token) */
29
+ constructor(client, data) {
30
+ super();
31
+ this.client = client;
32
+ this.id = data.id;
33
+ this.guildId = data.guild_id;
34
+ this.channelId = data.channel_id;
35
+ this.name = data.name ?? "Unknown";
36
+ this.avatar = data.avatar ?? null;
37
+ this.token = data.token ?? null;
38
+ this.user = client.getOrCreateUser(data.user);
39
+ }
40
+ /** Delete this webhook. Requires bot token with Manage Webhooks permission. */
41
+ async delete() {
42
+ await this.client.rest.delete(Routes.webhook(this.id), { auth: true });
43
+ }
44
+ /**
45
+ * Edit this webhook. With token: name and avatar only. Without token (bot auth): name, avatar, and channel_id.
46
+ * @param options - Fields to update (name, avatar, channel_id when using bot auth)
47
+ * @returns This webhook instance with updated fields
48
+ */
49
+ async edit(options) {
50
+ const body = {};
51
+ if (options.name !== void 0) body.name = options.name;
52
+ if (options.avatar !== void 0) body.avatar = options.avatar;
53
+ if ("channel_id" in options && options.channel_id !== void 0 && !this.token) {
54
+ body.channel_id = options.channel_id;
55
+ }
56
+ if (this.token) {
57
+ const data2 = await this.client.rest.patch(Routes.webhookExecute(this.id, this.token), {
58
+ body,
59
+ auth: false
60
+ });
61
+ const w2 = data2;
62
+ this.name = w2.name ?? this.name;
63
+ this.avatar = w2.avatar ?? null;
64
+ return this;
65
+ }
66
+ const data = await this.client.rest.patch(Routes.webhook(this.id), {
67
+ body,
68
+ auth: true
69
+ });
70
+ const w = data;
71
+ this.name = w.name ?? this.name;
72
+ this.avatar = w.avatar ?? null;
73
+ this.channelId = w.channel_id ?? this.channelId;
74
+ return this;
75
+ }
76
+ /**
77
+ * Send a message via this webhook. Requires the webhook token (only present when created, not when fetched).
78
+ * @param options - Text content or object with content, embeds (APIEmbed | EmbedBuilder), username, avatar_url, tts
79
+ * @param wait - If true, waits for the API and returns the created Message; otherwise returns void (204)
80
+ * @throws Error if token is not available
81
+ * @example
82
+ * await webhook.send('Hello!');
83
+ * await webhook.send({ embeds: [embed.toJSON()] });
84
+ * const msg = await webhook.send({ content: 'Hi' }, true);
85
+ */
86
+ async send(options, wait) {
87
+ if (!this.token) {
88
+ throw new Error(
89
+ "Webhook token is required to send. The token is only returned when creating a webhook; fetched webhooks cannot send."
90
+ );
91
+ }
92
+ const body = buildWebhookBody(options);
93
+ const route = Routes.webhookExecute(this.id, this.token) + (wait ? "?wait=true" : "");
94
+ const data = await this.client.rest.post(
95
+ route,
96
+ { body, auth: false }
97
+ );
98
+ if (wait && data) {
99
+ const { Message } = await import("./Message-ONWLVMU7.mjs");
100
+ return new Message(this.client, data);
101
+ }
102
+ return void 0;
103
+ }
104
+ /**
105
+ * Fetch a webhook by ID using bot auth.
106
+ * @param client - The client instance
107
+ * @param webhookId - The webhook ID
108
+ * @returns Webhook without token (cannot send)
109
+ */
110
+ static async fetch(client, webhookId) {
111
+ const data = await client.rest.get(Routes.webhook(webhookId));
112
+ return new _Webhook(client, data);
113
+ }
114
+ /**
115
+ * Create a Webhook instance from an ID and token (e.g. from a stored webhook URL).
116
+ * @param client - The client instance
117
+ * @param webhookId - The webhook ID
118
+ * @param token - The webhook token (from createWebhook or stored)
119
+ * @param options - Optional channelId, guildId, name for display
120
+ */
121
+ static fromToken(client, webhookId, token, options) {
122
+ return new _Webhook(client, {
123
+ id: webhookId,
124
+ guild_id: options?.guildId ?? "",
125
+ channel_id: options?.channelId ?? "",
126
+ name: options?.name ?? "Webhook",
127
+ avatar: null,
128
+ token,
129
+ user: { id: "", username: "webhook", discriminator: "0" }
130
+ });
131
+ }
132
+ };
133
+
134
+ export {
135
+ Webhook
136
+ };