hischool.js 0.0.1

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 (369) hide show
  1. package/README.md +41 -0
  2. package/lib/cjs/Client.d.ts +166 -0
  3. package/lib/cjs/Client.d.ts.map +1 -0
  4. package/lib/cjs/Client.js +221 -0
  5. package/lib/cjs/api/baseURL.d.ts +2 -0
  6. package/lib/cjs/api/baseURL.d.ts.map +1 -0
  7. package/lib/cjs/api/baseURL.js +5 -0
  8. package/lib/cjs/api/index.d.ts +177 -0
  9. package/lib/cjs/api/index.d.ts.map +1 -0
  10. package/lib/cjs/api/index.js +150 -0
  11. package/lib/cjs/api/params.d.ts +285 -0
  12. package/lib/cjs/api/params.d.ts.map +1 -0
  13. package/lib/cjs/api/params.js +194 -0
  14. package/lib/cjs/api/routes.d.ts +1089 -0
  15. package/lib/cjs/api/routes.d.ts.map +1 -0
  16. package/lib/cjs/api/routes.js +2 -0
  17. package/lib/cjs/api/schema.d.ts +4705 -0
  18. package/lib/cjs/api/schema.d.ts.map +1 -0
  19. package/lib/cjs/api/schema.js +2 -0
  20. package/lib/cjs/api/types.d.ts +131 -0
  21. package/lib/cjs/api/types.d.ts.map +1 -0
  22. package/lib/cjs/api/types.js +2 -0
  23. package/lib/cjs/classes/BannedUser.d.ts +18 -0
  24. package/lib/cjs/classes/BannedUser.d.ts.map +1 -0
  25. package/lib/cjs/classes/BannedUser.js +21 -0
  26. package/lib/cjs/classes/Bot.d.ts +82 -0
  27. package/lib/cjs/classes/Bot.d.ts.map +1 -0
  28. package/lib/cjs/classes/Bot.js +145 -0
  29. package/lib/cjs/classes/Channel.d.ts +465 -0
  30. package/lib/cjs/classes/Channel.d.ts.map +1 -0
  31. package/lib/cjs/classes/Channel.js +599 -0
  32. package/lib/cjs/classes/ChannelUnread.d.ts +27 -0
  33. package/lib/cjs/classes/ChannelUnread.d.ts.map +1 -0
  34. package/lib/cjs/classes/ChannelUnread.js +50 -0
  35. package/lib/cjs/classes/ChannelWebhook.d.ts +53 -0
  36. package/lib/cjs/classes/ChannelWebhook.d.ts.map +1 -0
  37. package/lib/cjs/classes/ChannelWebhook.js +113 -0
  38. package/lib/cjs/classes/Emoji.d.ts +57 -0
  39. package/lib/cjs/classes/Emoji.d.ts.map +1 -0
  40. package/lib/cjs/classes/Emoji.js +104 -0
  41. package/lib/cjs/classes/File.d.ts +67 -0
  42. package/lib/cjs/classes/File.d.ts.map +1 -0
  43. package/lib/cjs/classes/File.js +102 -0
  44. package/lib/cjs/classes/Invite.d.ts +60 -0
  45. package/lib/cjs/classes/Invite.d.ts.map +1 -0
  46. package/lib/cjs/classes/Invite.js +91 -0
  47. package/lib/cjs/classes/MFA.d.ts +83 -0
  48. package/lib/cjs/classes/MFA.d.ts.map +1 -0
  49. package/lib/cjs/classes/MFA.js +196 -0
  50. package/lib/cjs/classes/Message.d.ts +484 -0
  51. package/lib/cjs/classes/Message.d.ts.map +1 -0
  52. package/lib/cjs/classes/Message.js +341 -0
  53. package/lib/cjs/classes/MessageEmbed.d.ts +122 -0
  54. package/lib/cjs/classes/MessageEmbed.d.ts.map +1 -0
  55. package/lib/cjs/classes/MessageEmbed.js +181 -0
  56. package/lib/cjs/classes/PublicBot.d.ts +28 -0
  57. package/lib/cjs/classes/PublicBot.d.ts.map +1 -0
  58. package/lib/cjs/classes/PublicBot.js +60 -0
  59. package/lib/cjs/classes/PublicInvite.d.ts +57 -0
  60. package/lib/cjs/classes/PublicInvite.d.ts.map +1 -0
  61. package/lib/cjs/classes/PublicInvite.js +104 -0
  62. package/lib/cjs/classes/Server.d.ts +473 -0
  63. package/lib/cjs/classes/Server.d.ts.map +1 -0
  64. package/lib/cjs/classes/Server.js +585 -0
  65. package/lib/cjs/classes/ServerBan.d.ts +26 -0
  66. package/lib/cjs/classes/ServerBan.d.ts.map +1 -0
  67. package/lib/cjs/classes/ServerBan.js +44 -0
  68. package/lib/cjs/classes/ServerMember.d.ts +138 -0
  69. package/lib/cjs/classes/ServerMember.d.ts.map +1 -0
  70. package/lib/cjs/classes/ServerMember.js +234 -0
  71. package/lib/cjs/classes/Session.d.ts +45 -0
  72. package/lib/cjs/classes/Session.d.ts.map +1 -0
  73. package/lib/cjs/classes/Session.js +94 -0
  74. package/lib/cjs/classes/SystemMessage.d.ts +127 -0
  75. package/lib/cjs/classes/SystemMessage.d.ts.map +1 -0
  76. package/lib/cjs/classes/SystemMessage.js +172 -0
  77. package/lib/cjs/classes/User.d.ts +203 -0
  78. package/lib/cjs/classes/User.d.ts.map +1 -0
  79. package/lib/cjs/classes/User.js +299 -0
  80. package/lib/cjs/classes/UserProfile.d.ts +23 -0
  81. package/lib/cjs/classes/UserProfile.d.ts.map +1 -0
  82. package/lib/cjs/classes/UserProfile.js +35 -0
  83. package/lib/cjs/classes/index.d.ts +21 -0
  84. package/lib/cjs/classes/index.d.ts.map +1 -0
  85. package/lib/cjs/classes/index.js +36 -0
  86. package/lib/cjs/collections/AccountCollection.d.ts +91 -0
  87. package/lib/cjs/collections/AccountCollection.d.ts.map +1 -0
  88. package/lib/cjs/collections/AccountCollection.js +150 -0
  89. package/lib/cjs/collections/BotCollection.d.ts +39 -0
  90. package/lib/cjs/collections/BotCollection.d.ts.map +1 -0
  91. package/lib/cjs/collections/BotCollection.js +89 -0
  92. package/lib/cjs/collections/ChannelCollection.d.ts +39 -0
  93. package/lib/cjs/collections/ChannelCollection.d.ts.map +1 -0
  94. package/lib/cjs/collections/ChannelCollection.js +93 -0
  95. package/lib/cjs/collections/ChannelUnreadCollection.d.ts +24 -0
  96. package/lib/cjs/collections/ChannelUnreadCollection.d.ts.map +1 -0
  97. package/lib/cjs/collections/ChannelUnreadCollection.js +56 -0
  98. package/lib/cjs/collections/ChannelWebhookCollection.d.ts +29 -0
  99. package/lib/cjs/collections/ChannelWebhookCollection.d.ts.map +1 -0
  100. package/lib/cjs/collections/ChannelWebhookCollection.js +69 -0
  101. package/lib/cjs/collections/Collection.d.ts +153 -0
  102. package/lib/cjs/collections/Collection.d.ts.map +1 -0
  103. package/lib/cjs/collections/Collection.js +170 -0
  104. package/lib/cjs/collections/EmojiCollection.d.ts +27 -0
  105. package/lib/cjs/collections/EmojiCollection.d.ts.map +1 -0
  106. package/lib/cjs/collections/EmojiCollection.js +67 -0
  107. package/lib/cjs/collections/MessageCollection.d.ts +28 -0
  108. package/lib/cjs/collections/MessageCollection.d.ts.map +1 -0
  109. package/lib/cjs/collections/MessageCollection.js +69 -0
  110. package/lib/cjs/collections/ServerCollection.d.ts +36 -0
  111. package/lib/cjs/collections/ServerCollection.d.ts.map +1 -0
  112. package/lib/cjs/collections/ServerCollection.js +96 -0
  113. package/lib/cjs/collections/ServerMemberCollection.d.ts +45 -0
  114. package/lib/cjs/collections/ServerMemberCollection.d.ts.map +1 -0
  115. package/lib/cjs/collections/ServerMemberCollection.js +95 -0
  116. package/lib/cjs/collections/SessionCollection.d.ts +27 -0
  117. package/lib/cjs/collections/SessionCollection.d.ts.map +1 -0
  118. package/lib/cjs/collections/SessionCollection.js +63 -0
  119. package/lib/cjs/collections/UserCollection.d.ts +31 -0
  120. package/lib/cjs/collections/UserCollection.d.ts.map +1 -0
  121. package/lib/cjs/collections/UserCollection.js +81 -0
  122. package/lib/cjs/collections/index.d.ts +12 -0
  123. package/lib/cjs/collections/index.d.ts.map +1 -0
  124. package/lib/cjs/collections/index.js +38 -0
  125. package/lib/cjs/events/EventClient.d.ts +89 -0
  126. package/lib/cjs/events/EventClient.d.ts.map +1 -0
  127. package/lib/cjs/events/EventClient.js +186 -0
  128. package/lib/cjs/events/index.d.ts +18 -0
  129. package/lib/cjs/events/index.d.ts.map +1 -0
  130. package/lib/cjs/events/index.js +20 -0
  131. package/lib/cjs/events/v1.d.ts +214 -0
  132. package/lib/cjs/events/v1.d.ts.map +1 -0
  133. package/lib/cjs/events/v1.js +502 -0
  134. package/lib/cjs/hydration/bot.d.ts +21 -0
  135. package/lib/cjs/hydration/bot.d.ts.map +1 -0
  136. package/lib/cjs/hydration/bot.js +31 -0
  137. package/lib/cjs/hydration/channel.d.ts +25 -0
  138. package/lib/cjs/hydration/channel.d.ts.map +1 -0
  139. package/lib/cjs/hydration/channel.js +40 -0
  140. package/lib/cjs/hydration/channelUnread.d.ts +11 -0
  141. package/lib/cjs/hydration/channelUnread.d.ts.map +1 -0
  142. package/lib/cjs/hydration/channelUnread.js +19 -0
  143. package/lib/cjs/hydration/channelWebhook.d.ts +12 -0
  144. package/lib/cjs/hydration/channelWebhook.d.ts.map +1 -0
  145. package/lib/cjs/hydration/channelWebhook.js +21 -0
  146. package/lib/cjs/hydration/emoji.d.ts +13 -0
  147. package/lib/cjs/hydration/emoji.d.ts.map +1 -0
  148. package/lib/cjs/hydration/emoji.js +18 -0
  149. package/lib/cjs/hydration/index.d.ts +1404 -0
  150. package/lib/cjs/hydration/index.d.ts.map +1 -0
  151. package/lib/cjs/hydration/index.js +68 -0
  152. package/lib/cjs/hydration/message.d.ts +25 -0
  153. package/lib/cjs/hydration/message.d.ts.map +1 -0
  154. package/lib/cjs/hydration/message.js +48 -0
  155. package/lib/cjs/hydration/server.d.ts +31 -0
  156. package/lib/cjs/hydration/server.d.ts.map +1 -0
  157. package/lib/cjs/hydration/server.js +44 -0
  158. package/lib/cjs/hydration/serverMember.d.ts +14 -0
  159. package/lib/cjs/hydration/serverMember.d.ts.map +1 -0
  160. package/lib/cjs/hydration/serverMember.js +21 -0
  161. package/lib/cjs/hydration/session.d.ts +8 -0
  162. package/lib/cjs/hydration/session.d.ts.map +1 -0
  163. package/lib/cjs/hydration/session.js +13 -0
  164. package/lib/cjs/hydration/user.d.ts +43 -0
  165. package/lib/cjs/hydration/user.d.ts.map +1 -0
  166. package/lib/cjs/hydration/user.js +53 -0
  167. package/lib/cjs/index.d.ts +9 -0
  168. package/lib/cjs/index.d.ts.map +1 -0
  169. package/lib/cjs/index.js +43 -0
  170. package/lib/cjs/lib/merge.d.ts +15 -0
  171. package/lib/cjs/lib/merge.d.ts.map +1 -0
  172. package/lib/cjs/lib/merge.js +2 -0
  173. package/lib/cjs/lib/regex.d.ts +13 -0
  174. package/lib/cjs/lib/regex.d.ts.map +1 -0
  175. package/lib/cjs/lib/regex.js +15 -0
  176. package/lib/cjs/permissions/calculator.d.ts +19 -0
  177. package/lib/cjs/permissions/calculator.d.ts.map +1 -0
  178. package/lib/cjs/permissions/calculator.js +136 -0
  179. package/lib/cjs/permissions/definitions.d.ts +73 -0
  180. package/lib/cjs/permissions/definitions.d.ts.map +1 -0
  181. package/lib/cjs/permissions/definitions.js +124 -0
  182. package/lib/cjs/storage/ObjectStorage.d.ts +28 -0
  183. package/lib/cjs/storage/ObjectStorage.d.ts.map +1 -0
  184. package/lib/cjs/storage/ObjectStorage.js +41 -0
  185. package/lib/esm/Client.d.ts +166 -0
  186. package/lib/esm/Client.d.ts.map +1 -0
  187. package/lib/esm/Client.js +214 -0
  188. package/lib/esm/api/baseURL.d.ts +2 -0
  189. package/lib/esm/api/baseURL.d.ts.map +1 -0
  190. package/lib/esm/api/baseURL.js +2 -0
  191. package/lib/esm/api/index.d.ts +177 -0
  192. package/lib/esm/api/index.d.ts.map +1 -0
  193. package/lib/esm/api/index.js +139 -0
  194. package/lib/esm/api/params.d.ts +285 -0
  195. package/lib/esm/api/params.d.ts.map +1 -0
  196. package/lib/esm/api/params.js +191 -0
  197. package/lib/esm/api/routes.d.ts +1089 -0
  198. package/lib/esm/api/routes.d.ts.map +1 -0
  199. package/lib/esm/api/routes.js +1 -0
  200. package/lib/esm/api/schema.d.ts +4705 -0
  201. package/lib/esm/api/schema.d.ts.map +1 -0
  202. package/lib/esm/api/schema.js +1 -0
  203. package/lib/esm/api/types.d.ts +131 -0
  204. package/lib/esm/api/types.d.ts.map +1 -0
  205. package/lib/esm/api/types.js +1 -0
  206. package/lib/esm/classes/BannedUser.d.ts +18 -0
  207. package/lib/esm/classes/BannedUser.d.ts.map +1 -0
  208. package/lib/esm/classes/BannedUser.js +21 -0
  209. package/lib/esm/classes/Bot.d.ts +82 -0
  210. package/lib/esm/classes/Bot.d.ts.map +1 -0
  211. package/lib/esm/classes/Bot.js +116 -0
  212. package/lib/esm/classes/Channel.d.ts +465 -0
  213. package/lib/esm/classes/Channel.d.ts.map +1 -0
  214. package/lib/esm/classes/Channel.js +529 -0
  215. package/lib/esm/classes/ChannelUnread.d.ts +27 -0
  216. package/lib/esm/classes/ChannelUnread.d.ts.map +1 -0
  217. package/lib/esm/classes/ChannelUnread.js +34 -0
  218. package/lib/esm/classes/ChannelWebhook.d.ts +53 -0
  219. package/lib/esm/classes/ChannelWebhook.d.ts.map +1 -0
  220. package/lib/esm/classes/ChannelWebhook.js +83 -0
  221. package/lib/esm/classes/Emoji.d.ts +57 -0
  222. package/lib/esm/classes/Emoji.d.ts.map +1 -0
  223. package/lib/esm/classes/Emoji.js +77 -0
  224. package/lib/esm/classes/File.d.ts +67 -0
  225. package/lib/esm/classes/File.d.ts.map +1 -0
  226. package/lib/esm/classes/File.js +105 -0
  227. package/lib/esm/classes/Invite.d.ts +60 -0
  228. package/lib/esm/classes/Invite.d.ts.map +1 -0
  229. package/lib/esm/classes/Invite.js +80 -0
  230. package/lib/esm/classes/MFA.d.ts +83 -0
  231. package/lib/esm/classes/MFA.d.ts.map +1 -0
  232. package/lib/esm/classes/MFA.js +165 -0
  233. package/lib/esm/classes/Message.d.ts +484 -0
  234. package/lib/esm/classes/Message.d.ts.map +1 -0
  235. package/lib/esm/classes/Message.js +300 -0
  236. package/lib/esm/classes/MessageEmbed.d.ts +122 -0
  237. package/lib/esm/classes/MessageEmbed.d.ts.map +1 -0
  238. package/lib/esm/classes/MessageEmbed.js +192 -0
  239. package/lib/esm/classes/PublicBot.d.ts +28 -0
  240. package/lib/esm/classes/PublicBot.d.ts.map +1 -0
  241. package/lib/esm/classes/PublicBot.js +47 -0
  242. package/lib/esm/classes/PublicInvite.d.ts +57 -0
  243. package/lib/esm/classes/PublicInvite.d.ts.map +1 -0
  244. package/lib/esm/classes/PublicInvite.js +100 -0
  245. package/lib/esm/classes/Server.d.ts +473 -0
  246. package/lib/esm/classes/Server.d.ts.map +1 -0
  247. package/lib/esm/classes/Server.js +522 -0
  248. package/lib/esm/classes/ServerBan.d.ts +26 -0
  249. package/lib/esm/classes/ServerBan.d.ts.map +1 -0
  250. package/lib/esm/classes/ServerBan.js +33 -0
  251. package/lib/esm/classes/ServerMember.d.ts +138 -0
  252. package/lib/esm/classes/ServerMember.d.ts.map +1 -0
  253. package/lib/esm/classes/ServerMember.js +199 -0
  254. package/lib/esm/classes/Session.d.ts +45 -0
  255. package/lib/esm/classes/Session.d.ts.map +1 -0
  256. package/lib/esm/classes/Session.js +65 -0
  257. package/lib/esm/classes/SystemMessage.d.ts +127 -0
  258. package/lib/esm/classes/SystemMessage.d.ts.map +1 -0
  259. package/lib/esm/classes/SystemMessage.js +171 -0
  260. package/lib/esm/classes/User.d.ts +203 -0
  261. package/lib/esm/classes/User.d.ts.map +1 -0
  262. package/lib/esm/classes/User.js +252 -0
  263. package/lib/esm/classes/UserProfile.d.ts +23 -0
  264. package/lib/esm/classes/UserProfile.d.ts.map +1 -0
  265. package/lib/esm/classes/UserProfile.js +31 -0
  266. package/lib/esm/classes/index.d.ts +21 -0
  267. package/lib/esm/classes/index.d.ts.map +1 -0
  268. package/lib/esm/classes/index.js +20 -0
  269. package/lib/esm/collections/AccountCollection.d.ts +91 -0
  270. package/lib/esm/collections/AccountCollection.d.ts.map +1 -0
  271. package/lib/esm/collections/AccountCollection.js +139 -0
  272. package/lib/esm/collections/BotCollection.d.ts +39 -0
  273. package/lib/esm/collections/BotCollection.d.ts.map +1 -0
  274. package/lib/esm/collections/BotCollection.js +68 -0
  275. package/lib/esm/collections/ChannelCollection.d.ts +39 -0
  276. package/lib/esm/collections/ChannelCollection.d.ts.map +1 -0
  277. package/lib/esm/collections/ChannelCollection.js +75 -0
  278. package/lib/esm/collections/ChannelUnreadCollection.d.ts +24 -0
  279. package/lib/esm/collections/ChannelUnreadCollection.d.ts.map +1 -0
  280. package/lib/esm/collections/ChannelUnreadCollection.js +41 -0
  281. package/lib/esm/collections/ChannelWebhookCollection.d.ts +29 -0
  282. package/lib/esm/collections/ChannelWebhookCollection.d.ts.map +1 -0
  283. package/lib/esm/collections/ChannelWebhookCollection.js +52 -0
  284. package/lib/esm/collections/Collection.d.ts +153 -0
  285. package/lib/esm/collections/Collection.d.ts.map +1 -0
  286. package/lib/esm/collections/Collection.js +160 -0
  287. package/lib/esm/collections/EmojiCollection.d.ts +27 -0
  288. package/lib/esm/collections/EmojiCollection.d.ts.map +1 -0
  289. package/lib/esm/collections/EmojiCollection.js +52 -0
  290. package/lib/esm/collections/MessageCollection.d.ts +28 -0
  291. package/lib/esm/collections/MessageCollection.d.ts.map +1 -0
  292. package/lib/esm/collections/MessageCollection.js +54 -0
  293. package/lib/esm/collections/ServerCollection.d.ts +36 -0
  294. package/lib/esm/collections/ServerCollection.d.ts.map +1 -0
  295. package/lib/esm/collections/ServerCollection.js +79 -0
  296. package/lib/esm/collections/ServerMemberCollection.d.ts +45 -0
  297. package/lib/esm/collections/ServerMemberCollection.d.ts.map +1 -0
  298. package/lib/esm/collections/ServerMemberCollection.js +80 -0
  299. package/lib/esm/collections/SessionCollection.d.ts +27 -0
  300. package/lib/esm/collections/SessionCollection.d.ts.map +1 -0
  301. package/lib/esm/collections/SessionCollection.js +46 -0
  302. package/lib/esm/collections/UserCollection.d.ts +31 -0
  303. package/lib/esm/collections/UserCollection.d.ts.map +1 -0
  304. package/lib/esm/collections/UserCollection.js +66 -0
  305. package/lib/esm/collections/index.d.ts +12 -0
  306. package/lib/esm/collections/index.d.ts.map +1 -0
  307. package/lib/esm/collections/index.js +11 -0
  308. package/lib/esm/events/EventClient.d.ts +89 -0
  309. package/lib/esm/events/EventClient.d.ts.map +1 -0
  310. package/lib/esm/events/EventClient.js +175 -0
  311. package/lib/esm/events/index.d.ts +18 -0
  312. package/lib/esm/events/index.d.ts.map +1 -0
  313. package/lib/esm/events/index.js +2 -0
  314. package/lib/esm/events/v1.d.ts +214 -0
  315. package/lib/esm/events/v1.d.ts.map +1 -0
  316. package/lib/esm/events/v1.js +514 -0
  317. package/lib/esm/hydration/bot.d.ts +21 -0
  318. package/lib/esm/hydration/bot.d.ts.map +1 -0
  319. package/lib/esm/hydration/bot.js +28 -0
  320. package/lib/esm/hydration/channel.d.ts +25 -0
  321. package/lib/esm/hydration/channel.d.ts.map +1 -0
  322. package/lib/esm/hydration/channel.js +37 -0
  323. package/lib/esm/hydration/channelUnread.d.ts +11 -0
  324. package/lib/esm/hydration/channelUnread.d.ts.map +1 -0
  325. package/lib/esm/hydration/channelUnread.js +16 -0
  326. package/lib/esm/hydration/channelWebhook.d.ts +12 -0
  327. package/lib/esm/hydration/channelWebhook.d.ts.map +1 -0
  328. package/lib/esm/hydration/channelWebhook.js +18 -0
  329. package/lib/esm/hydration/emoji.d.ts +13 -0
  330. package/lib/esm/hydration/emoji.d.ts.map +1 -0
  331. package/lib/esm/hydration/emoji.js +15 -0
  332. package/lib/esm/hydration/index.d.ts +1404 -0
  333. package/lib/esm/hydration/index.d.ts.map +1 -0
  334. package/lib/esm/hydration/index.js +65 -0
  335. package/lib/esm/hydration/message.d.ts +25 -0
  336. package/lib/esm/hydration/message.d.ts.map +1 -0
  337. package/lib/esm/hydration/message.js +45 -0
  338. package/lib/esm/hydration/server.d.ts +31 -0
  339. package/lib/esm/hydration/server.d.ts.map +1 -0
  340. package/lib/esm/hydration/server.js +41 -0
  341. package/lib/esm/hydration/serverMember.d.ts +14 -0
  342. package/lib/esm/hydration/serverMember.d.ts.map +1 -0
  343. package/lib/esm/hydration/serverMember.js +18 -0
  344. package/lib/esm/hydration/session.d.ts +8 -0
  345. package/lib/esm/hydration/session.d.ts.map +1 -0
  346. package/lib/esm/hydration/session.js +10 -0
  347. package/lib/esm/hydration/user.d.ts +43 -0
  348. package/lib/esm/hydration/user.d.ts.map +1 -0
  349. package/lib/esm/hydration/user.js +50 -0
  350. package/lib/esm/index.d.ts +9 -0
  351. package/lib/esm/index.d.ts.map +1 -0
  352. package/lib/esm/index.js +8 -0
  353. package/lib/esm/lib/merge.d.ts +15 -0
  354. package/lib/esm/lib/merge.d.ts.map +1 -0
  355. package/lib/esm/lib/merge.js +1 -0
  356. package/lib/esm/lib/regex.d.ts +13 -0
  357. package/lib/esm/lib/regex.d.ts.map +1 -0
  358. package/lib/esm/lib/regex.js +12 -0
  359. package/lib/esm/package.json +3 -0
  360. package/lib/esm/permissions/calculator.d.ts +19 -0
  361. package/lib/esm/permissions/calculator.d.ts.map +1 -0
  362. package/lib/esm/permissions/calculator.js +129 -0
  363. package/lib/esm/permissions/definitions.d.ts +73 -0
  364. package/lib/esm/permissions/definitions.d.ts.map +1 -0
  365. package/lib/esm/permissions/definitions.js +121 -0
  366. package/lib/esm/storage/ObjectStorage.d.ts +28 -0
  367. package/lib/esm/storage/ObjectStorage.d.ts.map +1 -0
  368. package/lib/esm/storage/ObjectStorage.js +39 -0
  369. package/package.json +59 -0
@@ -0,0 +1,514 @@
1
+ import { hydrate } from "../hydration/index.js";
2
+ import { ReactiveSet } from "@solid-primitives/set";
3
+ import { batch } from "solid-js";
4
+ /**
5
+ * Handle an event for the Client
6
+ * @param client Client
7
+ * @param event Event
8
+ * @param setReady Signal state change
9
+ */
10
+ export async function handleEvent(client, event, setReady) {
11
+ if (client.options.debug) {
12
+ console.debug("[S->C]", event);
13
+ }
14
+ switch (event.type) {
15
+ case "Bulk": {
16
+ for (const item of event.v) {
17
+ handleEvent(client, item, setReady);
18
+ }
19
+ break;
20
+ }
21
+ case "Ready": {
22
+ batch(() => {
23
+ for (const user of event.users) {
24
+ const u = client.users.getOrCreate(user._id, user);
25
+ if (u.relationship === "User") {
26
+ client.user = u;
27
+ }
28
+ }
29
+ for (const server of event.servers) {
30
+ client.servers.getOrCreate(server._id, server);
31
+ }
32
+ for (const member of event.members) {
33
+ client.serverMembers.getOrCreate(member._id, member);
34
+ }
35
+ for (const channel of event.channels) {
36
+ client.channels.getOrCreate(channel._id, channel);
37
+ }
38
+ for (const emoji of event.emojis) {
39
+ client.emojis.getOrCreate(emoji._id, emoji);
40
+ }
41
+ });
42
+ if (client.options.syncUnreads) {
43
+ await client.channelUnreads.sync();
44
+ }
45
+ setReady(true);
46
+ client.emit("ready");
47
+ break;
48
+ }
49
+ case "Message": {
50
+ if (!client.messages.has(event._id)) {
51
+ // TODO: this should not be necessary in future protocols:
52
+ if (event.author &&
53
+ event.author != "00000000000000000000000000" &&
54
+ !event.webhook &&
55
+ // TODO: this is causing a lot of extra requests!
56
+ // usually 2 extra requests before a message can come through!!
57
+ client.options.eagerFetching) {
58
+ await client.users.fetch(event.author);
59
+ const serverId = client.channels.get(event.channel)?.serverId;
60
+ if (serverId)
61
+ await client.serverMembers.fetch(serverId, event.author);
62
+ }
63
+ batch(() => {
64
+ client.messages.getOrCreate(event._id, event, true);
65
+ client.channels.updateUnderlyingObject(event.channel, "lastMessageId", event._id);
66
+ });
67
+ }
68
+ break;
69
+ }
70
+ case "MessageUpdate": {
71
+ const message = client.messages.getOrPartial(event.id);
72
+ if (message) {
73
+ const previousMessage = {
74
+ ...client.messages.getUnderlyingObject(event.id),
75
+ channelId: event.channel,
76
+ };
77
+ client.messages.updateUnderlyingObject(event.id, {
78
+ ...hydrate("message", { ...event.data, channel: event.channel }, client, false),
79
+ editedAt: new Date(),
80
+ });
81
+ client.emit("messageUpdate", message, previousMessage);
82
+ }
83
+ break;
84
+ }
85
+ case "MessageAppend": {
86
+ const message = client.messages.getOrPartial(event.id);
87
+ if (message) {
88
+ const previousMessage = {
89
+ ...client.messages.getUnderlyingObject(event.id),
90
+ channelId: event.channel,
91
+ };
92
+ client.messages.updateUnderlyingObject(event.id, "embeds", (embeds) => [...(embeds ?? []), event.append.embeds ?? []]);
93
+ client.messages.updateUnderlyingObject(event.id, "channelId", event.channel);
94
+ client.emit("messageUpdate", message, previousMessage);
95
+ }
96
+ break;
97
+ }
98
+ case "MessageDelete": {
99
+ if (client.messages.getOrPartial(event.id)) {
100
+ const message = client.messages.getUnderlyingObject(event.id);
101
+ client.emit("messageDelete", message);
102
+ client.messages.delete(event.id);
103
+ }
104
+ break;
105
+ }
106
+ case "BulkMessageDelete": {
107
+ batch(() => client.emit("messageDeleteBulk", event.ids
108
+ .map((id) => {
109
+ if (client.messages.has(id)) {
110
+ const message = client.messages.getUnderlyingObject(id);
111
+ client.messages.delete(id);
112
+ return message;
113
+ }
114
+ return undefined;
115
+ })
116
+ .filter((x) => x), client.channels.get(event.channel)));
117
+ break;
118
+ }
119
+ case "MessageReact": {
120
+ const message = client.messages.getOrPartial(event.id);
121
+ if (message) {
122
+ const reactions = message.reactions;
123
+ const set = reactions.get(event.emoji_id);
124
+ if (set) {
125
+ if (set.has(event.user_id))
126
+ return;
127
+ set.add(event.user_id);
128
+ }
129
+ else {
130
+ reactions.set(event.emoji_id, new ReactiveSet([event.user_id]));
131
+ }
132
+ client.emit("messageReactionAdd", message, event.user_id, event.emoji_id);
133
+ }
134
+ break;
135
+ }
136
+ case "MessageUnreact": {
137
+ const message = client.messages.getOrPartial(event.id);
138
+ if (message) {
139
+ const set = message.reactions.get(event.emoji_id);
140
+ if (set?.has(event.user_id)) {
141
+ set.delete(event.user_id);
142
+ }
143
+ else if (!client.messages.isPartial(event.id)) {
144
+ return;
145
+ }
146
+ client.emit("messageReactionRemove", message, event.user_id, event.emoji_id);
147
+ }
148
+ break;
149
+ }
150
+ case "MessageRemoveReaction": {
151
+ const message = client.messages.getOrPartial(event.id);
152
+ if (message) {
153
+ const reactions = message.reactions;
154
+ if (reactions.has(event.emoji_id)) {
155
+ reactions.delete(event.emoji_id);
156
+ }
157
+ else if (!client.messages.isPartial(event.id)) {
158
+ return;
159
+ }
160
+ client.emit("messageReactionRemoveEmoji", message, event.emoji_id);
161
+ }
162
+ break;
163
+ }
164
+ case "ChannelCreate": {
165
+ if (!client.channels.has(event._id)) {
166
+ client.channels.getOrCreate(event._id, event, true);
167
+ }
168
+ break;
169
+ }
170
+ case "ChannelUpdate": {
171
+ const channel = client.channels.getOrPartial(event.id);
172
+ if (channel) {
173
+ const previousChannel = {
174
+ ...client.channels.getUnderlyingObject(event.id),
175
+ };
176
+ const changes = hydrate("channel", event.data, client, false);
177
+ if (event.clear) {
178
+ for (const remove of event.clear) {
179
+ switch (remove) {
180
+ case "Description":
181
+ changes["description"] = undefined;
182
+ break;
183
+ case "DefaultPermissions":
184
+ changes["defaultPermissions"] = undefined;
185
+ break;
186
+ case "Icon":
187
+ changes["icon"] = undefined;
188
+ break;
189
+ }
190
+ }
191
+ }
192
+ client.channels.updateUnderlyingObject(event.id, changes);
193
+ client.emit("channelUpdate", channel, previousChannel);
194
+ }
195
+ break;
196
+ }
197
+ case "ChannelDelete": {
198
+ if (client.channels.getOrPartial(event.id)) {
199
+ const channel = client.channels.getUnderlyingObject(event.id);
200
+ client.emit("channelDelete", channel);
201
+ client.channels.delete(event.id);
202
+ }
203
+ break;
204
+ }
205
+ case "ChannelGroupJoin": {
206
+ const channel = client.channels.getOrPartial(event.id);
207
+ if (channel) {
208
+ if (!channel.recipientIds.has(event.user)) {
209
+ channel.recipientIds.add(event.user);
210
+ }
211
+ else if (!client.channels.isPartial(event.id)) {
212
+ return;
213
+ }
214
+ client.emit("channelGroupJoin", channel, await client.users.fetch(event.user));
215
+ }
216
+ break;
217
+ }
218
+ case "ChannelGroupLeave": {
219
+ const channel = client.channels.getOrPartial(event.id);
220
+ if (channel) {
221
+ if (channel.recipientIds.has(event.user)) {
222
+ channel.recipientIds.delete(event.user);
223
+ }
224
+ else if (!client.channels.isPartial(event.id)) {
225
+ return;
226
+ }
227
+ client.emit("channelGroupLeave", channel, client.users.getOrPartial(event.user));
228
+ }
229
+ break;
230
+ }
231
+ case "ChannelStartTyping": {
232
+ const channel = client.channels.getOrPartial(event.id);
233
+ if (channel) {
234
+ if (!channel.typingIds.has(event.user)) {
235
+ channel.typingIds.add(event.user);
236
+ }
237
+ else if (!client.channels.isPartial(event.id)) {
238
+ return;
239
+ }
240
+ client.emit("channelStartTyping", channel, client.users.getOrPartial(event.user));
241
+ }
242
+ break;
243
+ }
244
+ case "ChannelStopTyping": {
245
+ const channel = client.channels.getOrPartial(event.id);
246
+ if (channel) {
247
+ if (channel.typingIds.has(event.user)) {
248
+ channel.typingIds.delete(event.user);
249
+ }
250
+ else if (!client.channels.isPartial(event.id)) {
251
+ return;
252
+ }
253
+ client.emit("channelStopTyping", channel, client.users.getOrPartial(event.user));
254
+ }
255
+ break;
256
+ }
257
+ case "ChannelAck": {
258
+ const channel = client.channels.getOrPartial(event.id);
259
+ if (channel) {
260
+ client.emit("channelAcknowledged", channel, event.message_id);
261
+ }
262
+ break;
263
+ }
264
+ case "ServerCreate": {
265
+ if (!client.servers.has(event.server._id)) {
266
+ batch(() => {
267
+ for (const channel of event.channels) {
268
+ client.channels.getOrCreate(channel._id, channel);
269
+ }
270
+ client.servers.getOrCreate(event.server._id, event.server, true);
271
+ });
272
+ }
273
+ break;
274
+ }
275
+ case "ServerUpdate": {
276
+ const server = client.servers.getOrPartial(event.id);
277
+ if (server) {
278
+ const previousServer = {
279
+ ...client.servers.getUnderlyingObject(event.id),
280
+ };
281
+ const changes = hydrate("server", event.data, client, false);
282
+ if (event.clear) {
283
+ for (const remove of event.clear) {
284
+ switch (remove) {
285
+ case "Banner":
286
+ changes["banner"] = undefined;
287
+ break;
288
+ case "Categories":
289
+ changes["categories"] = undefined;
290
+ break;
291
+ case "SystemMessages":
292
+ changes["systemMessages"] = undefined;
293
+ break;
294
+ case "Description":
295
+ changes["description"] = undefined;
296
+ break;
297
+ case "Icon":
298
+ changes["icon"] = undefined;
299
+ break;
300
+ }
301
+ }
302
+ }
303
+ client.servers.updateUnderlyingObject(event.id, changes);
304
+ client.emit("serverUpdate", server, previousServer);
305
+ }
306
+ break;
307
+ }
308
+ case "ServerDelete": {
309
+ const server = client.servers.getOrPartial(event.id);
310
+ if (server) {
311
+ // TODO: server should tell us if it's a leave or delete on our end
312
+ server.$delete();
313
+ }
314
+ break;
315
+ }
316
+ case "ServerRoleUpdate": {
317
+ const server = client.servers.getOrPartial(event.id);
318
+ if (server) {
319
+ const role = server.roles.get(event.role_id) ?? {};
320
+ server.roles.set(event.role_id, {
321
+ ...role,
322
+ ...event.data,
323
+ });
324
+ client.emit("serverRoleUpdate", server, event.role_id, role);
325
+ }
326
+ break;
327
+ }
328
+ case "ServerRoleDelete": {
329
+ const server = client.servers.getOrPartial(event.id);
330
+ if (server) {
331
+ let role = {};
332
+ const roles = server.roles;
333
+ if (roles.has(event.role_id)) {
334
+ role = roles.get(event.role_id);
335
+ roles.delete(event.role_id);
336
+ }
337
+ else if (!client.servers.isPartial(event.id)) {
338
+ return;
339
+ }
340
+ client.emit("serverRoleDelete", server, event.role_id, role);
341
+ }
342
+ break;
343
+ }
344
+ case "ServerMemberJoin": {
345
+ const id = {
346
+ server: event.id,
347
+ user: event.user,
348
+ };
349
+ if (!client.serverMembers.hasByKey(id)) {
350
+ if (!client.users.has(id.user)) {
351
+ if (client.options.eagerFetching) {
352
+ await client.users.fetch(id.user);
353
+ }
354
+ }
355
+ client.emit("serverMemberJoin", client.serverMembers.getOrCreate(id, {
356
+ _id: id,
357
+ joined_at: new Date().toUTCString(),
358
+ }));
359
+ }
360
+ break;
361
+ }
362
+ case "ServerMemberUpdate": {
363
+ const member = client.serverMembers.getOrPartial(event.id);
364
+ if (member) {
365
+ const previousMember = {
366
+ ...client.serverMembers.getUnderlyingObject(event.id.server + event.id.user),
367
+ };
368
+ const changes = hydrate("serverMember", event.data, client, false);
369
+ if (event.clear) {
370
+ for (const remove of event.clear) {
371
+ switch (remove) {
372
+ case "Nickname":
373
+ changes["nickname"] = undefined;
374
+ break;
375
+ case "Avatar":
376
+ changes["avatar"] = undefined;
377
+ break;
378
+ case "Roles":
379
+ changes["roles"] = [];
380
+ break;
381
+ case "Timeout":
382
+ changes["timeout"] = undefined;
383
+ break;
384
+ }
385
+ }
386
+ }
387
+ client.serverMembers.updateUnderlyingObject(event.id.server + event.id.user, changes);
388
+ client.emit("serverMemberUpdate", member, previousMember);
389
+ }
390
+ break;
391
+ }
392
+ case "ServerMemberLeave": {
393
+ if (event.user) {
394
+ handleEvent(client, {
395
+ type: "ServerDelete",
396
+ id: event.id,
397
+ }, setReady);
398
+ return;
399
+ }
400
+ const id = {
401
+ server: event.id,
402
+ user: event.user,
403
+ };
404
+ if (client.serverMembers.getOrPartial(id)) {
405
+ const member = client.serverMembers.getUnderlyingObject(id.server + id.user);
406
+ client.emit("serverMemberLeave", member);
407
+ client.serverMembers.delete(id.server + id.user);
408
+ }
409
+ break;
410
+ }
411
+ case "UserUpdate": {
412
+ const user = client.users.getOrPartial(event.id);
413
+ if (user) {
414
+ const previousUser = {
415
+ ...client.users.getUnderlyingObject(event.id),
416
+ };
417
+ const changes = hydrate("user", event.data, client, false);
418
+ if (event.clear) {
419
+ for (const remove of event.clear) {
420
+ switch (remove) {
421
+ case "Avatar":
422
+ changes["avatar"] = undefined;
423
+ break;
424
+ case "StatusPresence":
425
+ changes["status"] = {
426
+ ...(previousUser.status ?? {}),
427
+ ...(changes["status"] ?? {}),
428
+ presence: undefined,
429
+ };
430
+ break;
431
+ case "StatusText":
432
+ changes["status"] = {
433
+ ...(previousUser.status ?? {}),
434
+ ...(changes["status"] ?? {}),
435
+ text: undefined,
436
+ };
437
+ break;
438
+ }
439
+ }
440
+ }
441
+ client.users.updateUnderlyingObject(event.id, changes);
442
+ client.emit("userUpdate", user, previousUser);
443
+ }
444
+ break;
445
+ }
446
+ case "UserRelationship": {
447
+ handleEvent(client, {
448
+ type: "UserUpdate",
449
+ id: event.user._id,
450
+ data: {
451
+ relationship: event.user.relationship,
452
+ },
453
+ }, setReady);
454
+ break;
455
+ }
456
+ case "UserPresence": {
457
+ handleEvent(client, {
458
+ type: "UserUpdate",
459
+ id: event.id,
460
+ data: {
461
+ online: event.online,
462
+ },
463
+ }, setReady);
464
+ break;
465
+ }
466
+ case "UserSettingsUpdate": {
467
+ client.emit("userSettingsUpdate", event.id, event.update);
468
+ break;
469
+ }
470
+ case "UserPlatformWipe": {
471
+ batch(() => {
472
+ handleEvent(client, {
473
+ type: "BulkMessageDelete",
474
+ channel: "0",
475
+ ids: client.messages
476
+ .toList()
477
+ .filter((message) => message.authorId === event.user_id)
478
+ .map((message) => message.id),
479
+ }, setReady);
480
+ handleEvent(client, {
481
+ type: "UserUpdate",
482
+ id: event.user_id,
483
+ data: {
484
+ username: `Deleted User`,
485
+ online: false,
486
+ flags: event.flags,
487
+ badges: 0,
488
+ relationship: "None",
489
+ },
490
+ clear: ["Avatar", "StatusPresence", "StatusText"],
491
+ }, setReady);
492
+ });
493
+ break;
494
+ }
495
+ case "EmojiCreate": {
496
+ if (!client.emojis.has(event._id)) {
497
+ client.emojis.getOrCreate(event._id, event, true);
498
+ }
499
+ break;
500
+ }
501
+ case "EmojiDelete": {
502
+ if (client.emojis.getOrPartial(event.id)) {
503
+ const emoji = client.emojis.getUnderlyingObject(event.id);
504
+ client.emit("emojiDelete", emoji);
505
+ client.emojis.delete(event.id);
506
+ }
507
+ break;
508
+ }
509
+ case "Auth": {
510
+ // TODO: implement DeleteSession and DeleteAllSessions
511
+ break;
512
+ }
513
+ }
514
+ }
@@ -0,0 +1,21 @@
1
+ import { Bot as ApiBot } from "../api";
2
+ import { Hydrate } from "./index";
3
+ export type HydratedBot = {
4
+ id: string;
5
+ ownerId: string;
6
+ token: string;
7
+ public: boolean;
8
+ analytics: boolean;
9
+ discoverable: boolean;
10
+ interactionsUrl?: string;
11
+ termsOfServiceUrl?: string;
12
+ privacyPolicyUrl?: string;
13
+ flags: BotFlags;
14
+ };
15
+ export declare const botHydration: Hydrate<ApiBot, HydratedBot>;
16
+ /**
17
+ * Flags attributed to users
18
+ */
19
+ export declare enum BotFlags {
20
+ }
21
+ //# sourceMappingURL=bot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../../../src/hydration/bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,QAAQ,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,CAqBrD,CAAC;AAEF;;GAEG;AACH,oBAAY,QAAQ;CAAG"}
@@ -0,0 +1,28 @@
1
+ export const botHydration = {
2
+ keyMapping: {
3
+ _id: "id",
4
+ owner: "ownerId",
5
+ interactions_url: "interactionsUrl",
6
+ terms_of_service_url: "termsOfServiceUrl",
7
+ privacy_policy_url: "privacyPolicyUrl",
8
+ },
9
+ functions: {
10
+ id: (bot) => bot._id,
11
+ ownerId: (bot) => bot.owner,
12
+ token: (bot) => bot.token,
13
+ public: (bot) => bot.public,
14
+ analytics: (bot) => bot.analytics,
15
+ discoverable: (bot) => bot.discoverable,
16
+ interactionsUrl: (bot) => bot.interactions_url,
17
+ termsOfServiceUrl: (bot) => bot.terms_of_service_url,
18
+ privacyPolicyUrl: (bot) => bot.privacy_policy_url,
19
+ flags: (bot) => bot.flags,
20
+ },
21
+ initialHydration: () => ({}),
22
+ };
23
+ /**
24
+ * Flags attributed to users
25
+ */
26
+ export var BotFlags;
27
+ (function (BotFlags) {
28
+ })(BotFlags || (BotFlags = {}));
@@ -0,0 +1,25 @@
1
+ import { Channel as ApiChannel, OverrideField } from "../api";
2
+ import { File } from "../index.js";
3
+ import type { Merge } from "../lib/merge.js";
4
+ import { Hydrate } from "./index.js";
5
+ import { ReactiveSet } from "@solid-primitives/set";
6
+ export type HydratedChannel = {
7
+ id: string;
8
+ channelType: ApiChannel["channel_type"];
9
+ name: string;
10
+ description?: string;
11
+ icon?: File;
12
+ active: boolean;
13
+ typingIds: ReactiveSet<string>;
14
+ recipientIds: ReactiveSet<string>;
15
+ userId?: string;
16
+ ownerId?: string;
17
+ serverId?: string;
18
+ permissions?: number;
19
+ defaultPermissions?: OverrideField;
20
+ rolePermissions?: Record<string, OverrideField>;
21
+ nsfw: boolean;
22
+ lastMessageId?: string;
23
+ };
24
+ export declare const channelHydration: Hydrate<Merge<ApiChannel>, HydratedChannel>;
25
+ //# sourceMappingURL=channel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../src/hydration/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAU,IAAI,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;IAExC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAElC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,aAAa,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAChD,IAAI,EAAE,OAAO,CAAC;IAEd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,eAAe,CAkCxE,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { File } from "../index.js";
2
+ import { ReactiveSet } from "@solid-primitives/set";
3
+ export const channelHydration = {
4
+ keyMapping: {
5
+ _id: "id",
6
+ channel_type: "channelType",
7
+ recipients: "recipientIds",
8
+ user: "userId",
9
+ owner: "ownerId",
10
+ server: "serverId",
11
+ default_permissions: "defaultPermissions",
12
+ role_permissions: "rolePermissions",
13
+ last_message_id: "lastMessageId",
14
+ },
15
+ functions: {
16
+ id: (channel) => channel._id,
17
+ channelType: (channel) => channel.channel_type,
18
+ name: (channel) => channel.name,
19
+ description: (channel) => channel.description,
20
+ icon: (channel, ctx) => new File(ctx, channel.icon),
21
+ active: (channel) => channel.active || false,
22
+ typingIds: () => new ReactiveSet(),
23
+ recipientIds: (channel) => new ReactiveSet(channel.recipients),
24
+ userId: (channel) => channel.user,
25
+ ownerId: (channel) => channel.owner,
26
+ serverId: (channel) => channel.server,
27
+ permissions: (channel) => channel.permissions,
28
+ defaultPermissions: (channel) => channel.default_permissions,
29
+ rolePermissions: (channel) => channel.role_permissions,
30
+ nsfw: (channel) => channel.nsfw || false,
31
+ lastMessageId: (channel) => channel.last_message_id,
32
+ },
33
+ initialHydration: () => ({
34
+ typingIds: new ReactiveSet(),
35
+ recipientIds: new ReactiveSet(),
36
+ }),
37
+ };
@@ -0,0 +1,11 @@
1
+ import { API } from "../index.js";
2
+ import type { Merge } from "../lib/merge.js";
3
+ import { Hydrate } from "./index.js";
4
+ import { ReactiveSet } from "@solid-primitives/set";
5
+ export type HydratedChannelUnread = {
6
+ id: string;
7
+ lastMessageId?: string;
8
+ messageMentionIds: ReactiveSet<string>;
9
+ };
10
+ export declare const channelUnreadHydration: Hydrate<Merge<API.ChannelUnread>, HydratedChannelUnread>;
11
+ //# sourceMappingURL=channelUnread.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channelUnread.d.ts","sourceRoot":"","sources":["../../../src/hydration/channelUnread.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACxC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAC1C,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,EACxB,qBAAqB,CAetB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { ReactiveSet } from "@solid-primitives/set";
2
+ export const channelUnreadHydration = {
3
+ keyMapping: {
4
+ _id: "id",
5
+ last_id: "lastMessageId",
6
+ mentions: "messageMentionIds",
7
+ },
8
+ functions: {
9
+ id: (unread) => unread._id.channel,
10
+ lastMessageId: (unread) => unread.last_id,
11
+ messageMentionIds: (unread) => new ReactiveSet(unread.mentions),
12
+ },
13
+ initialHydration: () => ({
14
+ messageMentionIds: new ReactiveSet(),
15
+ }),
16
+ };
@@ -0,0 +1,12 @@
1
+ import { API, File } from "../index.js";
2
+ import type { Merge } from "../lib/merge.js";
3
+ import { Hydrate } from "./index.js";
4
+ export type HydratedChannelWebhook = {
5
+ id: string;
6
+ name: string;
7
+ avatar?: File;
8
+ channelId: string;
9
+ token: string;
10
+ };
11
+ export declare const channelWebhookHydration: Hydrate<Merge<API.Webhook>, HydratedChannelWebhook>;
12
+ //# sourceMappingURL=channelWebhook.d.ts.map