@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,150 @@
1
+ import {
2
+ Base
3
+ } from "./chunk-XNS4O6QJ.mjs";
4
+
5
+ // src/structures/Message.ts
6
+ import { Collection } from "@fluxerjs/collection";
7
+ import { Routes } from "@fluxerjs/types";
8
+ import { EmbedBuilder } from "@fluxerjs/builders";
9
+ var Message = class _Message extends Base {
10
+ client;
11
+ id;
12
+ channelId;
13
+ guildId;
14
+ author;
15
+ content;
16
+ createdAt;
17
+ editedAt;
18
+ pinned;
19
+ attachments;
20
+ channel;
21
+ /** @param data - API message from POST/PATCH /channels/{id}/messages or gateway MESSAGE_CREATE */
22
+ constructor(client, data) {
23
+ super();
24
+ this.client = client;
25
+ this.id = data.id;
26
+ this.channelId = data.channel_id;
27
+ this.guildId = data.guild_id ?? null;
28
+ this.author = client.getOrCreateUser(data.author);
29
+ this.content = data.content;
30
+ this.createdAt = new Date(data.timestamp);
31
+ this.editedAt = data.edited_timestamp ? new Date(data.edited_timestamp) : null;
32
+ this.pinned = data.pinned;
33
+ this.attachments = new Collection();
34
+ for (const a of data.attachments ?? []) this.attachments.set(a.id, a);
35
+ }
36
+ /**
37
+ * Send a message to this channel without replying. Use when you want a standalone message.
38
+ * @param options - Text content or object with content and/or embeds
39
+ * @example
40
+ * await message.send('Pong!');
41
+ * await message.send({ embeds: [embed.toJSON()] });
42
+ */
43
+ async send(options) {
44
+ const body = typeof options === "string" ? { content: options } : options;
45
+ const data = await this.client.rest.post(Routes.channelMessages(this.channelId), { body });
46
+ return new _Message(this.client, data);
47
+ }
48
+ /**
49
+ * Send a message to a specific channel. Use for logging, forwarding, or sending to another channel in the guild.
50
+ * @param channelId - Snowflake of the target channel (e.g. log channel ID)
51
+ * @param options - Text content or object with content and/or embeds
52
+ * @example
53
+ * await message.sendTo(logChannelId, 'User ' + message.author.username + ' said: ' + message.content);
54
+ * await message.sendTo(announceChannelId, { embeds: [embed.toJSON()] });
55
+ */
56
+ async sendTo(channelId, options) {
57
+ return this.client.channels.send(channelId, options);
58
+ }
59
+ /**
60
+ * Reply to this message.
61
+ * @param options - Text content or object with content and/or embeds
62
+ */
63
+ async reply(options) {
64
+ const body = typeof options === "string" ? {
65
+ content: options,
66
+ message_reference: {
67
+ channel_id: this.channelId,
68
+ message_id: this.id,
69
+ guild_id: this.guildId ?? void 0
70
+ }
71
+ } : {
72
+ ...options,
73
+ message_reference: {
74
+ channel_id: this.channelId,
75
+ message_id: this.id,
76
+ guild_id: this.guildId ?? void 0
77
+ }
78
+ };
79
+ const data = await this.client.rest.post(Routes.channelMessages(this.channelId), { body });
80
+ return new _Message(this.client, data);
81
+ }
82
+ /**
83
+ * Edit this message. Only the author (or admins) can edit.
84
+ * @param options - New content and/or embeds
85
+ */
86
+ async edit(options) {
87
+ const body = {};
88
+ if (options.content !== void 0) body.content = options.content;
89
+ if (options.embeds?.length) {
90
+ body.embeds = options.embeds.map((e) => e instanceof EmbedBuilder ? e.toJSON() : e);
91
+ }
92
+ const data = await this.client.rest.patch(Routes.channelMessage(this.channelId, this.id), {
93
+ body
94
+ });
95
+ return new _Message(this.client, data);
96
+ }
97
+ /** Delete this message. */
98
+ async delete() {
99
+ await this.client.rest.delete(Routes.channelMessage(this.channelId, this.id));
100
+ }
101
+ /**
102
+ * Format emoji for reaction API: unicode string or "name:id" for custom.
103
+ * For string resolution (e.g. :name:), use client.resolveEmoji; Message methods resolve automatically when guildId is available.
104
+ */
105
+ static formatEmoji(emoji) {
106
+ if (typeof emoji === "string") return emoji;
107
+ return `${emoji.name}:${emoji.id}`;
108
+ }
109
+ resolveEmojiForReaction(emoji) {
110
+ return this.client.resolveEmoji(emoji, this.guildId);
111
+ }
112
+ /**
113
+ * Add a reaction to this message (as the bot).
114
+ * @param emoji - Unicode emoji, custom `{ name, id }`, `:name:`, `name:id`, or `<:name:id>`
115
+ */
116
+ async react(emoji) {
117
+ const emojiStr = await this.resolveEmojiForReaction(emoji);
118
+ const route = `${Routes.channelMessageReaction(this.channelId, this.id, emojiStr)}/@me`;
119
+ await this.client.rest.put(route);
120
+ }
121
+ /**
122
+ * Remove the bot's reaction, or a specific user's reaction if userId is provided.
123
+ * @param emoji - Unicode emoji, custom `{ name, id }`, `:name:`, `name:id`, or `<:name:id>`
124
+ * @param userId - If provided, removes that user's reaction (requires moderator permissions)
125
+ */
126
+ async removeReaction(emoji, userId) {
127
+ const emojiStr = await this.resolveEmojiForReaction(emoji);
128
+ const route = `${Routes.channelMessageReaction(this.channelId, this.id, emojiStr)}/${userId ?? "@me"}`;
129
+ await this.client.rest.delete(route);
130
+ }
131
+ /**
132
+ * Remove all reactions from this message.
133
+ * Requires moderator permissions.
134
+ */
135
+ async removeAllReactions() {
136
+ await this.client.rest.delete(Routes.channelMessageReactions(this.channelId, this.id));
137
+ }
138
+ /**
139
+ * Remove all reactions of a specific emoji from this message.
140
+ * @param emoji - Unicode emoji, custom `{ name, id }`, `:name:`, `name:id`, or `<:name:id>`. Requires moderator permissions.
141
+ */
142
+ async removeReactionEmoji(emoji) {
143
+ const emojiStr = await this.resolveEmojiForReaction(emoji);
144
+ await this.client.rest.delete(Routes.channelMessageReaction(this.channelId, this.id, emojiStr));
145
+ }
146
+ };
147
+
148
+ export {
149
+ Message
150
+ };
package/dist/index.d.mts CHANGED
@@ -716,7 +716,7 @@ declare class User extends Base {
716
716
  size?: number;
717
717
  extension?: string;
718
718
  }): string | null;
719
- /** Get the avatar URL, or the default avatar if none set. */
719
+ /** Get the avatar URL, or the default avatar if none set (Fluxer: fluxerstatic.com). */
720
720
  displayAvatarURL(options?: {
721
721
  size?: number;
722
722
  extension?: string;
@@ -1267,6 +1267,10 @@ interface PartialMessage {
1267
1267
  id: string;
1268
1268
  channelId: string;
1269
1269
  channel?: Channel | null;
1270
+ /** Message content, when provided by the gateway (e.g. Fluxer). */
1271
+ content?: string | null;
1272
+ /** Author user ID, when provided by the gateway (e.g. Fluxer). */
1273
+ authorId?: string | null;
1270
1274
  }
1271
1275
 
1272
1276
  /**
@@ -1578,6 +1582,7 @@ declare class Client extends EventEmitter {
1578
1582
  * Resolve an emoji argument to the API format (unicode or "name:id").
1579
1583
  * Supports: <:name:id>, :name:, name:id, { name, id }, unicode.
1580
1584
  * When id is missing (e.g. :name:), fetches guild emojis if guildId provided.
1585
+ * When reacting in a guild channel, custom emojis must be from that guild.
1581
1586
  * @param emoji - Emoji string or object
1582
1587
  * @param guildId - Guild ID for resolving custom emoji by name (required when id is missing)
1583
1588
  * @returns API-formatted string for reactions
@@ -1587,6 +1592,12 @@ declare class Client extends EventEmitter {
1587
1592
  id?: string;
1588
1593
  animated?: boolean;
1589
1594
  }, guildId?: string | null): Promise<string>;
1595
+ /**
1596
+ * Asserts that a custom emoji (by id) belongs to the given guild.
1597
+ * Used when reacting in guild channels to reject emojis from other servers.
1598
+ * @throws FluxerError with EMOJI_NOT_IN_GUILD if the emoji is not in the guild
1599
+ */
1600
+ private assertEmojiInGuild;
1590
1601
  /**
1591
1602
  * Fetch instance info (API URL, gateway URL, features). GET /instance.
1592
1603
  * Does not require authentication.
@@ -1658,8 +1669,14 @@ declare const ErrorCodes: {
1658
1669
  readonly GuildNotFound: "GUILD_NOT_FOUND";
1659
1670
  readonly MemberNotFound: "MEMBER_NOT_FOUND";
1660
1671
  readonly RoleNotFound: "ROLE_NOT_FOUND";
1672
+ readonly EmojiNotInGuild: "EMOJI_NOT_IN_GUILD";
1661
1673
  };
1662
1674
 
1675
+ /** User Content CDN (avatars, icons, banners, emojis, attachments). */
1676
+ declare const CDN_URL = "https://fluxerusercontent.com";
1677
+ /** Static Assets CDN (default avatars). Use fluxerstatic.com for default avatars per Fluxer API. */
1678
+ declare const STATIC_CDN_URL = "https://fluxerstatic.com";
1679
+
1663
1680
  interface CdnUrlOptions {
1664
1681
  size?: number;
1665
1682
  extension?: string;
@@ -1716,9 +1733,10 @@ declare function cdnMemberAvatarURL(guildId: string, userId: string, avatarHash:
1716
1733
  declare function cdnMemberBannerURL(guildId: string, userId: string, bannerHash: string | null, options?: CdnUrlOptions): string | null;
1717
1734
  /**
1718
1735
  * Get the default avatar URL (used when user has no custom avatar).
1719
- * @param discriminatorIndex - Optional index 0-4 for default avatar variant
1736
+ * Fluxer uses fluxerstatic.com with index = userId % 6 (six default avatar variants).
1737
+ * @param userIdOrIndex - User ID (snowflake string) to derive index, or explicit index 0-5
1720
1738
  * @returns The default avatar URL
1721
1739
  */
1722
- declare function cdnDefaultAvatarURL(discriminatorIndex?: number): string;
1740
+ declare function cdnDefaultAvatarURL(userIdOrIndex: string | number): string;
1723
1741
 
1724
- export { Base, CategoryChannel, type CdnUrlOptions, Channel, ChannelManager, Client, type ClientEventMethods, type ClientEvents, ClientUser, type CollectedReaction, DMChannel, ErrorCodes, Events, type FetchedUserWithProfile, FluxerError, type FluxerErrorOptions, Guild, GuildBan, GuildChannel, GuildEmoji, GuildMember, GuildMemberManager, GuildSticker, Invite, LinkChannel, Message, MessageCollector, type MessageCollectorEndReason, type MessageCollectorOptions, type MessageEditOptions, MessageManager, MessageReaction, type MessageSendOptions, type PartialMessage, ReactionCollector, type ReactionCollectorEndReason, type ReactionCollectorOptions, Role, TextChannel, User, UsersManager, VoiceChannel, Webhook, type WebhookSendOptions, cdnAvatarURL, cdnBannerURL, cdnDefaultAvatarURL, cdnDisplayAvatarURL, cdnMemberAvatarURL, cdnMemberBannerURL };
1742
+ export { Base, CDN_URL, CategoryChannel, type CdnUrlOptions, Channel, ChannelManager, Client, type ClientEventMethods, type ClientEvents, ClientUser, type CollectedReaction, DMChannel, ErrorCodes, Events, type FetchedUserWithProfile, FluxerError, type FluxerErrorOptions, Guild, GuildBan, GuildChannel, GuildEmoji, GuildMember, GuildMemberManager, GuildSticker, Invite, LinkChannel, Message, MessageCollector, type MessageCollectorEndReason, type MessageCollectorOptions, type MessageEditOptions, MessageManager, MessageReaction, type MessageSendOptions, type PartialMessage, ReactionCollector, type ReactionCollectorEndReason, type ReactionCollectorOptions, Role, STATIC_CDN_URL, TextChannel, User, UsersManager, VoiceChannel, Webhook, type WebhookSendOptions, cdnAvatarURL, cdnBannerURL, cdnDefaultAvatarURL, cdnDisplayAvatarURL, cdnMemberAvatarURL, cdnMemberBannerURL };
package/dist/index.d.ts CHANGED
@@ -716,7 +716,7 @@ declare class User extends Base {
716
716
  size?: number;
717
717
  extension?: string;
718
718
  }): string | null;
719
- /** Get the avatar URL, or the default avatar if none set. */
719
+ /** Get the avatar URL, or the default avatar if none set (Fluxer: fluxerstatic.com). */
720
720
  displayAvatarURL(options?: {
721
721
  size?: number;
722
722
  extension?: string;
@@ -1267,6 +1267,10 @@ interface PartialMessage {
1267
1267
  id: string;
1268
1268
  channelId: string;
1269
1269
  channel?: Channel | null;
1270
+ /** Message content, when provided by the gateway (e.g. Fluxer). */
1271
+ content?: string | null;
1272
+ /** Author user ID, when provided by the gateway (e.g. Fluxer). */
1273
+ authorId?: string | null;
1270
1274
  }
1271
1275
 
1272
1276
  /**
@@ -1578,6 +1582,7 @@ declare class Client extends EventEmitter {
1578
1582
  * Resolve an emoji argument to the API format (unicode or "name:id").
1579
1583
  * Supports: <:name:id>, :name:, name:id, { name, id }, unicode.
1580
1584
  * When id is missing (e.g. :name:), fetches guild emojis if guildId provided.
1585
+ * When reacting in a guild channel, custom emojis must be from that guild.
1581
1586
  * @param emoji - Emoji string or object
1582
1587
  * @param guildId - Guild ID for resolving custom emoji by name (required when id is missing)
1583
1588
  * @returns API-formatted string for reactions
@@ -1587,6 +1592,12 @@ declare class Client extends EventEmitter {
1587
1592
  id?: string;
1588
1593
  animated?: boolean;
1589
1594
  }, guildId?: string | null): Promise<string>;
1595
+ /**
1596
+ * Asserts that a custom emoji (by id) belongs to the given guild.
1597
+ * Used when reacting in guild channels to reject emojis from other servers.
1598
+ * @throws FluxerError with EMOJI_NOT_IN_GUILD if the emoji is not in the guild
1599
+ */
1600
+ private assertEmojiInGuild;
1590
1601
  /**
1591
1602
  * Fetch instance info (API URL, gateway URL, features). GET /instance.
1592
1603
  * Does not require authentication.
@@ -1658,8 +1669,14 @@ declare const ErrorCodes: {
1658
1669
  readonly GuildNotFound: "GUILD_NOT_FOUND";
1659
1670
  readonly MemberNotFound: "MEMBER_NOT_FOUND";
1660
1671
  readonly RoleNotFound: "ROLE_NOT_FOUND";
1672
+ readonly EmojiNotInGuild: "EMOJI_NOT_IN_GUILD";
1661
1673
  };
1662
1674
 
1675
+ /** User Content CDN (avatars, icons, banners, emojis, attachments). */
1676
+ declare const CDN_URL = "https://fluxerusercontent.com";
1677
+ /** Static Assets CDN (default avatars). Use fluxerstatic.com for default avatars per Fluxer API. */
1678
+ declare const STATIC_CDN_URL = "https://fluxerstatic.com";
1679
+
1663
1680
  interface CdnUrlOptions {
1664
1681
  size?: number;
1665
1682
  extension?: string;
@@ -1716,9 +1733,10 @@ declare function cdnMemberAvatarURL(guildId: string, userId: string, avatarHash:
1716
1733
  declare function cdnMemberBannerURL(guildId: string, userId: string, bannerHash: string | null, options?: CdnUrlOptions): string | null;
1717
1734
  /**
1718
1735
  * Get the default avatar URL (used when user has no custom avatar).
1719
- * @param discriminatorIndex - Optional index 0-4 for default avatar variant
1736
+ * Fluxer uses fluxerstatic.com with index = userId % 6 (six default avatar variants).
1737
+ * @param userIdOrIndex - User ID (snowflake string) to derive index, or explicit index 0-5
1720
1738
  * @returns The default avatar URL
1721
1739
  */
1722
- declare function cdnDefaultAvatarURL(discriminatorIndex?: number): string;
1740
+ declare function cdnDefaultAvatarURL(userIdOrIndex: string | number): string;
1723
1741
 
1724
- export { Base, CategoryChannel, type CdnUrlOptions, Channel, ChannelManager, Client, type ClientEventMethods, type ClientEvents, ClientUser, type CollectedReaction, DMChannel, ErrorCodes, Events, type FetchedUserWithProfile, FluxerError, type FluxerErrorOptions, Guild, GuildBan, GuildChannel, GuildEmoji, GuildMember, GuildMemberManager, GuildSticker, Invite, LinkChannel, Message, MessageCollector, type MessageCollectorEndReason, type MessageCollectorOptions, type MessageEditOptions, MessageManager, MessageReaction, type MessageSendOptions, type PartialMessage, ReactionCollector, type ReactionCollectorEndReason, type ReactionCollectorOptions, Role, TextChannel, User, UsersManager, VoiceChannel, Webhook, type WebhookSendOptions, cdnAvatarURL, cdnBannerURL, cdnDefaultAvatarURL, cdnDisplayAvatarURL, cdnMemberAvatarURL, cdnMemberBannerURL };
1742
+ export { Base, CDN_URL, CategoryChannel, type CdnUrlOptions, Channel, ChannelManager, Client, type ClientEventMethods, type ClientEvents, ClientUser, type CollectedReaction, DMChannel, ErrorCodes, Events, type FetchedUserWithProfile, FluxerError, type FluxerErrorOptions, Guild, GuildBan, GuildChannel, GuildEmoji, GuildMember, GuildMemberManager, GuildSticker, Invite, LinkChannel, Message, MessageCollector, type MessageCollectorEndReason, type MessageCollectorOptions, type MessageEditOptions, MessageManager, MessageReaction, type MessageSendOptions, type PartialMessage, ReactionCollector, type ReactionCollectorEndReason, type ReactionCollectorOptions, Role, STATIC_CDN_URL, TextChannel, User, UsersManager, VoiceChannel, Webhook, type WebhookSendOptions, cdnAvatarURL, cdnBannerURL, cdnDefaultAvatarURL, cdnDisplayAvatarURL, cdnMemberAvatarURL, cdnMemberBannerURL };
package/dist/index.js CHANGED
@@ -50,7 +50,8 @@ var init_ErrorCodes = __esm({
50
50
  MessageNotFound: "MESSAGE_NOT_FOUND",
51
51
  GuildNotFound: "GUILD_NOT_FOUND",
52
52
  MemberNotFound: "MEMBER_NOT_FOUND",
53
- RoleNotFound: "ROLE_NOT_FOUND"
53
+ RoleNotFound: "ROLE_NOT_FOUND",
54
+ EmojiNotInGuild: "EMOJI_NOT_IN_GUILD"
54
55
  };
55
56
  }
56
57
  });
@@ -600,11 +601,12 @@ var init_MessageCollector = __esm({
600
601
  });
601
602
 
602
603
  // src/util/Constants.ts
603
- var CDN_URL;
604
+ var CDN_URL, STATIC_CDN_URL;
604
605
  var init_Constants = __esm({
605
606
  "src/util/Constants.ts"() {
606
607
  "use strict";
607
608
  CDN_URL = "https://fluxerusercontent.com";
609
+ STATIC_CDN_URL = "https://fluxerstatic.com";
608
610
  }
609
611
  });
610
612
 
@@ -624,7 +626,7 @@ function cdnAvatarURL(userId, avatarHash, options) {
624
626
  return `${CDN_URL}/avatars/${userId}/${avatarHash}.${ext}${size}`;
625
627
  }
626
628
  function cdnDisplayAvatarURL(userId, avatarHash, options) {
627
- return cdnAvatarURL(userId, avatarHash, options) ?? `${CDN_URL}/avatars/0/0.png`;
629
+ return cdnAvatarURL(userId, avatarHash, options) ?? cdnDefaultAvatarURL(userId);
628
630
  }
629
631
  function cdnBannerURL(resourceId, bannerHash, options) {
630
632
  if (!bannerHash) return null;
@@ -644,9 +646,9 @@ function cdnMemberBannerURL(guildId, userId, bannerHash, options) {
644
646
  const size = appendSize(options);
645
647
  return `${CDN_URL}/guilds/${guildId}/users/${userId}/banners/${bannerHash}.${ext}${size}`;
646
648
  }
647
- function cdnDefaultAvatarURL(discriminatorIndex) {
648
- const index = discriminatorIndex != null ? discriminatorIndex % 5 : 0;
649
- return `${CDN_URL}/avatars/0/${index}.png`;
649
+ function cdnDefaultAvatarURL(userIdOrIndex) {
650
+ const index = typeof userIdOrIndex === "string" ? Number(BigInt(userIdOrIndex) % 6n) : Math.abs(Math.floor(userIdOrIndex) % 6);
651
+ return `${STATIC_CDN_URL}/avatars/${index}.png`;
650
652
  }
651
653
  var init_cdn = __esm({
652
654
  "src/util/cdn.ts"() {
@@ -2327,6 +2329,7 @@ var init_User = __esm({
2327
2329
  init_Base();
2328
2330
  import_types16 = require("@fluxerjs/types");
2329
2331
  init_Constants();
2332
+ init_cdn();
2330
2333
  User = class extends Base {
2331
2334
  client;
2332
2335
  id;
@@ -2379,9 +2382,9 @@ var init_User = __esm({
2379
2382
  const size = options?.size ? `?size=${options.size}` : "";
2380
2383
  return `${CDN_URL}/avatars/${this.id}/${this.avatar}.${ext}${size}`;
2381
2384
  }
2382
- /** Get the avatar URL, or the default avatar if none set. */
2385
+ /** Get the avatar URL, or the default avatar if none set (Fluxer: fluxerstatic.com). */
2383
2386
  displayAvatarURL(options) {
2384
- return this.avatarURL(options) ?? `${CDN_URL}/avatars/0/0.png`;
2387
+ return this.avatarURL(options) ?? cdnDefaultAvatarURL(this.id);
2385
2388
  }
2386
2389
  /**
2387
2390
  * Get the URL for this user's banner.
@@ -2535,6 +2538,7 @@ var index_exports = {};
2535
2538
  __export(index_exports, {
2536
2539
  AttachmentBuilder: () => import_builders3.AttachmentBuilder,
2537
2540
  Base: () => Base,
2541
+ CDN_URL: () => CDN_URL,
2538
2542
  CategoryChannel: () => CategoryChannel,
2539
2543
  Channel: () => Channel,
2540
2544
  ChannelManager: () => ChannelManager,
@@ -2566,6 +2570,7 @@ __export(index_exports, {
2566
2570
  ReactionCollector: () => ReactionCollector,
2567
2571
  Role: () => Role,
2568
2572
  Routes: () => import_types21.Routes,
2573
+ STATIC_CDN_URL: () => STATIC_CDN_URL,
2569
2574
  TextChannel: () => TextChannel,
2570
2575
  User: () => User,
2571
2576
  UserFlagsBitField: () => import_util9.UserFlagsBitField,
@@ -2843,7 +2848,9 @@ handlers.set("MESSAGE_DELETE", async (client, d) => {
2843
2848
  client.emit(Events.MessageDelete, {
2844
2849
  id: data.id,
2845
2850
  channelId: data.channel_id,
2846
- channel
2851
+ channel,
2852
+ content: data.content ?? null,
2853
+ authorId: data.author_id ?? null
2847
2854
  });
2848
2855
  });
2849
2856
  handlers.set("MESSAGE_REACTION_ADD", async (client, d) => {
@@ -3161,20 +3168,31 @@ var Client = class extends import_events3.EventEmitter {
3161
3168
  * Resolve an emoji argument to the API format (unicode or "name:id").
3162
3169
  * Supports: <:name:id>, :name:, name:id, { name, id }, unicode.
3163
3170
  * When id is missing (e.g. :name:), fetches guild emojis if guildId provided.
3171
+ * When reacting in a guild channel, custom emojis must be from that guild.
3164
3172
  * @param emoji - Emoji string or object
3165
3173
  * @param guildId - Guild ID for resolving custom emoji by name (required when id is missing)
3166
3174
  * @returns API-formatted string for reactions
3167
3175
  */
3168
3176
  async resolveEmoji(emoji, guildId) {
3169
3177
  if (typeof emoji === "object" && emoji.id) {
3178
+ if (guildId) {
3179
+ await this.assertEmojiInGuild(emoji.id, guildId);
3180
+ }
3170
3181
  return (0, import_util7.formatEmoji)({ name: emoji.name, id: emoji.id, animated: emoji.animated });
3171
3182
  }
3172
3183
  const parsed = (0, import_util7.parseEmoji)(
3173
3184
  typeof emoji === "string" ? emoji : emoji.id ? `:${emoji.name}:` : emoji.name
3174
3185
  );
3175
3186
  if (!parsed) throw new Error("Invalid emoji");
3176
- if (parsed.id) return (0, import_util7.formatEmoji)(parsed);
3187
+ if (parsed.id) {
3188
+ if (guildId) {
3189
+ await this.assertEmojiInGuild(parsed.id, guildId);
3190
+ }
3191
+ return (0, import_util7.formatEmoji)(parsed);
3192
+ }
3177
3193
  if (!/^\w+$/.test(parsed.name)) return encodeURIComponent(parsed.name);
3194
+ const unicodeFromShortcode = (0, import_util7.getUnicodeFromShortcode)(parsed.name);
3195
+ if (unicodeFromShortcode) return encodeURIComponent(unicodeFromShortcode);
3178
3196
  if (guildId) {
3179
3197
  const emojis = await this.rest.get(import_types20.Routes.guildEmojis(guildId));
3180
3198
  const list = Array.isArray(emojis) ? emojis : Object.values(emojis ?? {});
@@ -3191,6 +3209,21 @@ var Client = class extends import_events3.EventEmitter {
3191
3209
  }
3192
3210
  return encodeURIComponent(parsed.name);
3193
3211
  }
3212
+ /**
3213
+ * Asserts that a custom emoji (by id) belongs to the given guild.
3214
+ * Used when reacting in guild channels to reject emojis from other servers.
3215
+ * @throws FluxerError with EMOJI_NOT_IN_GUILD if the emoji is not in the guild
3216
+ */
3217
+ async assertEmojiInGuild(emojiId, guildId) {
3218
+ const emojis = await this.rest.get(import_types20.Routes.guildEmojis(guildId));
3219
+ const list = Array.isArray(emojis) ? emojis : Object.values(emojis ?? {});
3220
+ const found = list.some((e) => e.id === emojiId);
3221
+ if (!found) {
3222
+ throw new FluxerError("Custom emoji is from another server. Use an emoji from this server.", {
3223
+ code: ErrorCodes.EmojiNotInGuild
3224
+ });
3225
+ }
3226
+ }
3194
3227
  /**
3195
3228
  * Fetch instance info (API URL, gateway URL, features). GET /instance.
3196
3229
  * Does not require authentication.
@@ -3380,11 +3413,13 @@ var import_builders3 = require("@fluxerjs/builders");
3380
3413
  var import_types21 = require("@fluxerjs/types");
3381
3414
  var import_util8 = require("@fluxerjs/util");
3382
3415
  var import_util9 = require("@fluxerjs/util");
3416
+ init_Constants();
3383
3417
  init_cdn();
3384
3418
  // Annotate the CommonJS export names for ESM import in node:
3385
3419
  0 && (module.exports = {
3386
3420
  AttachmentBuilder,
3387
3421
  Base,
3422
+ CDN_URL,
3388
3423
  CategoryChannel,
3389
3424
  Channel,
3390
3425
  ChannelManager,
@@ -3416,6 +3451,7 @@ init_cdn();
3416
3451
  ReactionCollector,
3417
3452
  Role,
3418
3453
  Routes,
3454
+ STATIC_CDN_URL,
3419
3455
  TextChannel,
3420
3456
  User,
3421
3457
  UserFlagsBitField,