dfx 1.0.4 → 1.0.6

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 (364) hide show
  1. package/dist/Cache/driver.js +3 -0
  2. package/dist/Cache/driver.js.map +1 -0
  3. package/dist/Cache/memory.js +48 -0
  4. package/dist/Cache/memory.js.map +1 -0
  5. package/dist/Cache/memoryTTL.js +113 -0
  6. package/dist/Cache/memoryTTL.js.map +1 -0
  7. package/dist/Cache/prelude.js +130 -0
  8. package/dist/Cache/prelude.js.map +1 -0
  9. package/dist/Cache.js +77 -0
  10. package/dist/Cache.js.map +1 -0
  11. package/dist/DiscordConfig.js +29 -0
  12. package/dist/DiscordConfig.js.map +1 -0
  13. package/dist/DiscordGateway/DiscordWS.js +74 -0
  14. package/dist/DiscordGateway/DiscordWS.js.map +1 -0
  15. package/dist/DiscordGateway/Messaging.js +34 -0
  16. package/dist/DiscordGateway/Messaging.js.map +1 -0
  17. package/dist/DiscordGateway/Shard/StateStore.js +41 -0
  18. package/dist/DiscordGateway/Shard/StateStore.js.map +1 -0
  19. package/dist/DiscordGateway/Shard/heartbeats.js +25 -0
  20. package/dist/DiscordGateway/Shard/heartbeats.js.map +1 -0
  21. package/dist/DiscordGateway/Shard/identify.js +26 -0
  22. package/dist/DiscordGateway/Shard/identify.js.map +1 -0
  23. package/dist/DiscordGateway/Shard/sendEvents.js +26 -0
  24. package/dist/DiscordGateway/Shard/sendEvents.js.map +1 -0
  25. package/dist/DiscordGateway/Shard/utils.js +3 -0
  26. package/dist/DiscordGateway/Shard/utils.js.map +1 -0
  27. package/dist/DiscordGateway/Shard.js +134 -0
  28. package/dist/DiscordGateway/Shard.js.map +1 -0
  29. package/dist/DiscordGateway/ShardStore.js +23 -0
  30. package/dist/DiscordGateway/ShardStore.js.map +1 -0
  31. package/dist/DiscordGateway/Sharder.js +57 -0
  32. package/dist/DiscordGateway/Sharder.js.map +1 -0
  33. package/dist/DiscordGateway.js +21 -0
  34. package/dist/DiscordGateway.js.map +1 -0
  35. package/dist/DiscordREST/Generated.js +2302 -0
  36. package/dist/DiscordREST/Generated.js.map +1 -0
  37. package/dist/DiscordREST/utils.js +23 -0
  38. package/dist/DiscordREST/utils.js.map +1 -0
  39. package/dist/DiscordREST.js +123 -0
  40. package/dist/DiscordREST.js.map +1 -0
  41. package/dist/Helpers/flags.js +45 -0
  42. package/dist/Helpers/flags.js.map +1 -0
  43. package/{mjs/Helpers/intents.mjs → dist/Helpers/intents.js} +7 -5
  44. package/dist/Helpers/intents.js.map +1 -0
  45. package/dist/Helpers/interactions.js +114 -0
  46. package/dist/Helpers/interactions.js.map +1 -0
  47. package/dist/Helpers/members.js +10 -0
  48. package/dist/Helpers/members.js.map +1 -0
  49. package/dist/Helpers/permissions.js +84 -0
  50. package/dist/Helpers/permissions.js.map +1 -0
  51. package/dist/Helpers/ui.js +135 -0
  52. package/dist/Helpers/ui.js.map +1 -0
  53. package/dist/Interactions/builder.js +63 -0
  54. package/dist/Interactions/builder.js.map +1 -0
  55. package/dist/Interactions/commandHelper.js +47 -0
  56. package/dist/Interactions/commandHelper.js.map +1 -0
  57. package/dist/Interactions/context.js +35 -0
  58. package/dist/Interactions/context.js.map +1 -0
  59. package/dist/Interactions/definitions.js +51 -0
  60. package/dist/Interactions/definitions.js.map +1 -0
  61. package/dist/Interactions/error.js +2 -0
  62. package/dist/Interactions/error.js.map +1 -0
  63. package/dist/Interactions/gateway.js +75 -0
  64. package/dist/Interactions/gateway.js.map +1 -0
  65. package/dist/Interactions/handlers.js +61 -0
  66. package/dist/Interactions/handlers.js.map +1 -0
  67. package/dist/Interactions/index.js +11 -0
  68. package/dist/Interactions/index.js.map +1 -0
  69. package/dist/Interactions/utils.js +29 -0
  70. package/dist/Interactions/utils.js.map +1 -0
  71. package/dist/Interactions/webhook.js +56 -0
  72. package/dist/Interactions/webhook.js.map +1 -0
  73. package/dist/RateLimit/memory.js +35 -0
  74. package/dist/RateLimit/memory.js.map +1 -0
  75. package/dist/RateLimit/utils.js +18 -0
  76. package/dist/RateLimit/utils.js.map +1 -0
  77. package/dist/RateLimit.js +28 -0
  78. package/dist/RateLimit.js.map +1 -0
  79. package/{mjs/gateway.mjs → dist/gateway.js} +4 -4
  80. package/dist/gateway.js.map +1 -0
  81. package/{mjs/index.mjs → dist/index.js} +4 -4
  82. package/dist/index.js.map +1 -0
  83. package/dist/types.js +356 -0
  84. package/dist/types.js.map +1 -0
  85. package/dist/utils/Effect.js +42 -0
  86. package/dist/utils/Effect.js.map +1 -0
  87. package/dist/version.js +2 -0
  88. package/dist/version.js.map +1 -0
  89. package/{mjs/webhooks.mjs → dist/webhooks.js} +3 -3
  90. package/dist/webhooks.js.map +1 -0
  91. package/package.json +84 -32
  92. package/src/version.ts +1 -1
  93. package/Cache/driver.d.ts +0 -24
  94. package/Cache/driver.d.ts.map +0 -1
  95. package/Cache/driver.js +0 -11
  96. package/Cache/driver.js.map +0 -1
  97. package/Cache/memory.d.ts +0 -5
  98. package/Cache/memory.d.ts.map +0 -1
  99. package/Cache/memory.js +0 -57
  100. package/Cache/memory.js.map +0 -1
  101. package/Cache/memoryTTL.d.ts +0 -23
  102. package/Cache/memoryTTL.d.ts.map +0 -1
  103. package/Cache/memoryTTL.js +0 -128
  104. package/Cache/memoryTTL.js.map +0 -1
  105. package/Cache/prelude.d.ts +0 -32
  106. package/Cache/prelude.d.ts.map +0 -1
  107. package/Cache/prelude.js +0 -143
  108. package/Cache/prelude.js.map +0 -1
  109. package/Cache.d.ts +0 -81
  110. package/Cache.d.ts.map +0 -1
  111. package/Cache.js +0 -145
  112. package/Cache.js.map +0 -1
  113. package/DiscordConfig.d.ts +0 -35
  114. package/DiscordConfig.d.ts.map +0 -1
  115. package/DiscordConfig.js +0 -43
  116. package/DiscordConfig.js.map +0 -1
  117. package/DiscordGateway/DiscordWS.d.ts +0 -37
  118. package/DiscordGateway/DiscordWS.d.ts.map +0 -1
  119. package/DiscordGateway/DiscordWS.js +0 -86
  120. package/DiscordGateway/DiscordWS.js.map +0 -1
  121. package/DiscordGateway/Messaging.d.ts +0 -587
  122. package/DiscordGateway/Messaging.d.ts.map +0 -1
  123. package/DiscordGateway/Messaging.js +0 -43
  124. package/DiscordGateway/Messaging.js.map +0 -1
  125. package/DiscordGateway/Shard/StateStore.d.ts +0 -24
  126. package/DiscordGateway/Shard/StateStore.d.ts.map +0 -1
  127. package/DiscordGateway/Shard/StateStore.js +0 -49
  128. package/DiscordGateway/Shard/StateStore.js.map +0 -1
  129. package/DiscordGateway/Shard/heartbeats.d.ts +0 -8
  130. package/DiscordGateway/Shard/heartbeats.d.ts.map +0 -1
  131. package/DiscordGateway/Shard/heartbeats.js +0 -33
  132. package/DiscordGateway/Shard/heartbeats.js.map +0 -1
  133. package/DiscordGateway/Shard/identify.d.ts +0 -12
  134. package/DiscordGateway/Shard/identify.d.ts.map +0 -1
  135. package/DiscordGateway/Shard/identify.js +0 -37
  136. package/DiscordGateway/Shard/identify.js.map +0 -1
  137. package/DiscordGateway/Shard/sendEvents.d.ts +0 -8
  138. package/DiscordGateway/Shard/sendEvents.d.ts.map +0 -1
  139. package/DiscordGateway/Shard/sendEvents.js +0 -39
  140. package/DiscordGateway/Shard/sendEvents.js.map +0 -1
  141. package/DiscordGateway/Shard/utils.d.ts +0 -6
  142. package/DiscordGateway/Shard/utils.d.ts.map +0 -1
  143. package/DiscordGateway/Shard/utils.js +0 -11
  144. package/DiscordGateway/Shard/utils.js.map +0 -1
  145. package/DiscordGateway/Shard.d.ts +0 -29
  146. package/DiscordGateway/Shard.d.ts.map +0 -1
  147. package/DiscordGateway/Shard.js +0 -155
  148. package/DiscordGateway/Shard.js.map +0 -1
  149. package/DiscordGateway/ShardStore.d.ts +0 -19
  150. package/DiscordGateway/ShardStore.d.ts.map +0 -1
  151. package/DiscordGateway/ShardStore.js +0 -32
  152. package/DiscordGateway/ShardStore.js.map +0 -1
  153. package/DiscordGateway/Sharder.d.ts +0 -14
  154. package/DiscordGateway/Sharder.d.ts.map +0 -1
  155. package/DiscordGateway/Sharder.js +0 -75
  156. package/DiscordGateway/Sharder.js.map +0 -1
  157. package/DiscordGateway.d.ts +0 -33
  158. package/DiscordGateway.d.ts.map +0 -1
  159. package/DiscordGateway.js +0 -28
  160. package/DiscordGateway.js.map +0 -1
  161. package/DiscordREST/Generated.d.ts +0 -5577
  162. package/DiscordREST/Generated.d.ts.map +0 -1
  163. package/DiscordREST/Generated.js +0 -2480
  164. package/DiscordREST/Generated.js.map +0 -1
  165. package/DiscordREST/utils.d.ts +0 -14
  166. package/DiscordREST/utils.d.ts.map +0 -1
  167. package/DiscordREST/utils.js +0 -32
  168. package/DiscordREST/utils.js.map +0 -1
  169. package/DiscordREST.d.ts +0 -22
  170. package/DiscordREST.d.ts.map +0 -1
  171. package/DiscordREST.js +0 -128
  172. package/DiscordREST.js.map +0 -1
  173. package/Helpers/flags.d.ts +0 -28
  174. package/Helpers/flags.d.ts.map +0 -1
  175. package/Helpers/flags.js +0 -57
  176. package/Helpers/flags.js.map +0 -1
  177. package/Helpers/intents.d.ts +0 -25
  178. package/Helpers/intents.d.ts.map +0 -1
  179. package/Helpers/intents.js +0 -34
  180. package/Helpers/intents.js.map +0 -1
  181. package/Helpers/interactions.d.ts +0 -116
  182. package/Helpers/interactions.d.ts.map +0 -1
  183. package/Helpers/interactions.js +0 -143
  184. package/Helpers/interactions.js.map +0 -1
  185. package/Helpers/members.d.ts +0 -10
  186. package/Helpers/members.d.ts.map +0 -1
  187. package/Helpers/members.js +0 -17
  188. package/Helpers/members.js.map +0 -1
  189. package/Helpers/permissions.d.ts +0 -42
  190. package/Helpers/permissions.d.ts.map +0 -1
  191. package/Helpers/permissions.js +0 -97
  192. package/Helpers/permissions.js.map +0 -1
  193. package/Helpers/ui.d.ts +0 -105
  194. package/Helpers/ui.d.ts.map +0 -1
  195. package/Helpers/ui.js +0 -162
  196. package/Helpers/ui.js.map +0 -1
  197. package/Interactions/builder.d.ts +0 -48
  198. package/Interactions/builder.d.ts.map +0 -1
  199. package/Interactions/builder.js +0 -64
  200. package/Interactions/builder.js.map +0 -1
  201. package/Interactions/commandHelper.d.ts +0 -83
  202. package/Interactions/commandHelper.d.ts.map +0 -1
  203. package/Interactions/commandHelper.js +0 -57
  204. package/Interactions/commandHelper.js.map +0 -1
  205. package/Interactions/context.d.ts +0 -53
  206. package/Interactions/context.d.ts.map +0 -1
  207. package/Interactions/context.js +0 -47
  208. package/Interactions/context.js.map +0 -1
  209. package/Interactions/definitions.d.ts +0 -43
  210. package/Interactions/definitions.d.ts.map +0 -1
  211. package/Interactions/definitions.js +0 -67
  212. package/Interactions/definitions.js.map +0 -1
  213. package/Interactions/error.d.ts +0 -2
  214. package/Interactions/error.d.ts.map +0 -1
  215. package/Interactions/error.js +0 -8
  216. package/Interactions/error.js.map +0 -1
  217. package/Interactions/gateway.d.ts +0 -20
  218. package/Interactions/gateway.d.ts.map +0 -1
  219. package/Interactions/gateway.js +0 -92
  220. package/Interactions/gateway.js.map +0 -1
  221. package/Interactions/handlers.d.ts +0 -15
  222. package/Interactions/handlers.d.ts.map +0 -1
  223. package/Interactions/handlers.js +0 -73
  224. package/Interactions/handlers.js.map +0 -1
  225. package/Interactions/index.d.ts +0 -17
  226. package/Interactions/index.d.ts.map +0 -1
  227. package/Interactions/index.js +0 -94
  228. package/Interactions/index.js.map +0 -1
  229. package/Interactions/utils.d.ts +0 -61
  230. package/Interactions/utils.d.ts.map +0 -1
  231. package/Interactions/utils.js +0 -35
  232. package/Interactions/utils.js.map +0 -1
  233. package/Interactions/webhook.d.ts +0 -71
  234. package/Interactions/webhook.d.ts.map +0 -1
  235. package/Interactions/webhook.js +0 -89
  236. package/Interactions/webhook.js.map +0 -1
  237. package/RateLimit/memory.d.ts +0 -3
  238. package/RateLimit/memory.d.ts.map +0 -1
  239. package/RateLimit/memory.js +0 -47
  240. package/RateLimit/memory.js.map +0 -1
  241. package/RateLimit/utils.d.ts +0 -3
  242. package/RateLimit/utils.d.ts.map +0 -1
  243. package/RateLimit/utils.js +0 -25
  244. package/RateLimit/utils.js.map +0 -1
  245. package/RateLimit.d.ts +0 -30
  246. package/RateLimit.d.ts.map +0 -1
  247. package/RateLimit.js +0 -37
  248. package/RateLimit.js.map +0 -1
  249. package/gateway.d.ts +0 -19
  250. package/gateway.d.ts.map +0 -1
  251. package/gateway.js +0 -72
  252. package/gateway.js.map +0 -1
  253. package/index.d.ts +0 -18
  254. package/index.d.ts.map +0 -1
  255. package/index.js +0 -71
  256. package/index.js.map +0 -1
  257. package/mjs/Cache/driver.mjs +0 -3
  258. package/mjs/Cache/driver.mjs.map +0 -1
  259. package/mjs/Cache/memory.mjs +0 -48
  260. package/mjs/Cache/memory.mjs.map +0 -1
  261. package/mjs/Cache/memoryTTL.mjs +0 -119
  262. package/mjs/Cache/memoryTTL.mjs.map +0 -1
  263. package/mjs/Cache/prelude.mjs +0 -131
  264. package/mjs/Cache/prelude.mjs.map +0 -1
  265. package/mjs/Cache.mjs +0 -90
  266. package/mjs/Cache.mjs.map +0 -1
  267. package/mjs/DiscordConfig.mjs +0 -32
  268. package/mjs/DiscordConfig.mjs.map +0 -1
  269. package/mjs/DiscordGateway/DiscordWS.mjs +0 -77
  270. package/mjs/DiscordGateway/DiscordWS.mjs.map +0 -1
  271. package/mjs/DiscordGateway/Messaging.mjs +0 -35
  272. package/mjs/DiscordGateway/Messaging.mjs.map +0 -1
  273. package/mjs/DiscordGateway/Shard/StateStore.mjs +0 -41
  274. package/mjs/DiscordGateway/Shard/StateStore.mjs.map +0 -1
  275. package/mjs/DiscordGateway/Shard/heartbeats.mjs +0 -25
  276. package/mjs/DiscordGateway/Shard/heartbeats.mjs.map +0 -1
  277. package/mjs/DiscordGateway/Shard/identify.mjs +0 -29
  278. package/mjs/DiscordGateway/Shard/identify.mjs.map +0 -1
  279. package/mjs/DiscordGateway/Shard/sendEvents.mjs +0 -26
  280. package/mjs/DiscordGateway/Shard/sendEvents.mjs.map +0 -1
  281. package/mjs/DiscordGateway/Shard/utils.mjs +0 -3
  282. package/mjs/DiscordGateway/Shard/utils.mjs.map +0 -1
  283. package/mjs/DiscordGateway/Shard.mjs +0 -147
  284. package/mjs/DiscordGateway/Shard.mjs.map +0 -1
  285. package/mjs/DiscordGateway/ShardStore.mjs +0 -24
  286. package/mjs/DiscordGateway/ShardStore.mjs.map +0 -1
  287. package/mjs/DiscordGateway/Sharder.mjs +0 -67
  288. package/mjs/DiscordGateway/Sharder.mjs.map +0 -1
  289. package/mjs/DiscordGateway.mjs +0 -21
  290. package/mjs/DiscordGateway.mjs.map +0 -1
  291. package/mjs/DiscordREST/Generated.mjs +0 -2471
  292. package/mjs/DiscordREST/Generated.mjs.map +0 -1
  293. package/mjs/DiscordREST/utils.mjs +0 -21
  294. package/mjs/DiscordREST/utils.mjs.map +0 -1
  295. package/mjs/DiscordREST.mjs +0 -119
  296. package/mjs/DiscordREST.mjs.map +0 -1
  297. package/mjs/Helpers/flags.mjs +0 -45
  298. package/mjs/Helpers/flags.mjs.map +0 -1
  299. package/mjs/Helpers/intents.mjs.map +0 -1
  300. package/mjs/Helpers/interactions.mjs +0 -115
  301. package/mjs/Helpers/interactions.mjs.map +0 -1
  302. package/mjs/Helpers/members.mjs +0 -9
  303. package/mjs/Helpers/members.mjs.map +0 -1
  304. package/mjs/Helpers/permissions.mjs +0 -84
  305. package/mjs/Helpers/permissions.mjs.map +0 -1
  306. package/mjs/Helpers/ui.mjs +0 -137
  307. package/mjs/Helpers/ui.mjs.map +0 -1
  308. package/mjs/Interactions/builder.mjs +0 -56
  309. package/mjs/Interactions/builder.mjs.map +0 -1
  310. package/mjs/Interactions/commandHelper.mjs +0 -49
  311. package/mjs/Interactions/commandHelper.mjs.map +0 -1
  312. package/mjs/Interactions/context.mjs +0 -28
  313. package/mjs/Interactions/context.mjs.map +0 -1
  314. package/mjs/Interactions/definitions.mjs +0 -51
  315. package/mjs/Interactions/definitions.mjs.map +0 -1
  316. package/mjs/Interactions/error.mjs +0 -2
  317. package/mjs/Interactions/error.mjs.map +0 -1
  318. package/mjs/Interactions/gateway.mjs +0 -82
  319. package/mjs/Interactions/gateway.mjs.map +0 -1
  320. package/mjs/Interactions/handlers.mjs +0 -64
  321. package/mjs/Interactions/handlers.mjs.map +0 -1
  322. package/mjs/Interactions/index.mjs +0 -11
  323. package/mjs/Interactions/index.mjs.map +0 -1
  324. package/mjs/Interactions/utils.mjs +0 -26
  325. package/mjs/Interactions/utils.mjs.map +0 -1
  326. package/mjs/Interactions/webhook.mjs +0 -75
  327. package/mjs/Interactions/webhook.mjs.map +0 -1
  328. package/mjs/RateLimit/memory.mjs +0 -39
  329. package/mjs/RateLimit/memory.mjs.map +0 -1
  330. package/mjs/RateLimit/utils.mjs +0 -18
  331. package/mjs/RateLimit/utils.mjs.map +0 -1
  332. package/mjs/RateLimit.mjs +0 -28
  333. package/mjs/RateLimit.mjs.map +0 -1
  334. package/mjs/gateway.mjs.map +0 -1
  335. package/mjs/index.mjs.map +0 -1
  336. package/mjs/types.mjs +0 -356
  337. package/mjs/types.mjs.map +0 -1
  338. package/mjs/utils/Effect.mjs +0 -44
  339. package/mjs/utils/Effect.mjs.map +0 -1
  340. package/mjs/version.mjs +0 -2
  341. package/mjs/version.mjs.map +0 -1
  342. package/mjs/webhooks.mjs.map +0 -1
  343. package/tsconfig.base.json +0 -54
  344. package/tsconfig.build.json +0 -10
  345. package/tsconfig.examples.json +0 -10
  346. package/tsconfig.json +0 -14
  347. package/tsconfig.madge.json +0 -12
  348. package/tsconfig.test.json +0 -10
  349. package/types.d.ts +0 -2458
  350. package/types.d.ts.map +0 -1
  351. package/types.js +0 -408
  352. package/types.js.map +0 -1
  353. package/utils/Effect.d.ts +0 -5
  354. package/utils/Effect.d.ts.map +0 -1
  355. package/utils/Effect.js +0 -53
  356. package/utils/Effect.js.map +0 -1
  357. package/version.d.ts +0 -2
  358. package/version.d.ts.map +0 -1
  359. package/version.js +0 -8
  360. package/version.js.map +0 -1
  361. package/webhooks.d.ts +0 -8
  362. package/webhooks.d.ts.map +0 -1
  363. package/webhooks.js +0 -55
  364. package/webhooks.js.map +0 -1
package/Cache/prelude.js DELETED
@@ -1,143 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.roles = exports.opsWithParent = exports.ops = exports.guilds = exports.channels = void 0;
7
- var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
8
- var Stream = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Stream"));
9
- var _DiscordREST = /*#__PURE__*/require("../DiscordREST.js");
10
- var _Cache = /*#__PURE__*/require("../Cache.js");
11
- var _DiscordGateway = /*#__PURE__*/require("../DiscordGateway.js");
12
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
- const opsWithParent = ({
14
- create,
15
- fromParent,
16
- id,
17
- parentRemove,
18
- remove,
19
- update
20
- }) => {
21
- const fromParentOps = Stream.flatMap(fromParent, ([parentId, a]) => Stream.fromIterable(a.map(resource => ({
22
- op: "create",
23
- parentId,
24
- resourceId: id(resource),
25
- resource
26
- }))));
27
- const createOps = Stream.map(create, ([parentId, resource]) => ({
28
- op: "create",
29
- parentId,
30
- resourceId: id(resource),
31
- resource
32
- }));
33
- const updateOps = Stream.map(update, ([parentId, resource]) => ({
34
- op: "update",
35
- parentId,
36
- resourceId: id(resource),
37
- resource
38
- }));
39
- const removeOps = Stream.map(remove, ([parentId, resourceId]) => ({
40
- op: "delete",
41
- parentId,
42
- resourceId
43
- }));
44
- const parentRemoveOps = Stream.map(parentRemove, parentId => ({
45
- op: "parentDelete",
46
- parentId
47
- }));
48
- return Stream.merge(fromParentOps, createOps).pipe(Stream.merge(updateOps), Stream.merge(removeOps), Stream.merge(parentRemoveOps));
49
- };
50
- exports.opsWithParent = opsWithParent;
51
- const ops = ({
52
- create,
53
- id,
54
- remove,
55
- update
56
- }) => {
57
- const createOps = Stream.map(create, resource => ({
58
- op: "create",
59
- resourceId: id(resource),
60
- resource
61
- }));
62
- const updateOps = Stream.map(update, resource => ({
63
- op: "update",
64
- resourceId: id(resource),
65
- resource
66
- }));
67
- const removeOps = Stream.map(remove, resourceId => ({
68
- op: "delete",
69
- resourceId
70
- }));
71
- return Stream.merge(createOps, updateOps).pipe(Stream.merge(removeOps));
72
- };
73
- exports.ops = ops;
74
- const guilds = makeDriver => Effect.gen(function* () {
75
- const driver = yield* makeDriver;
76
- const gateway = yield* _DiscordGateway.DiscordGateway;
77
- const rest = yield* _DiscordREST.DiscordREST;
78
- return yield* (0, _Cache.make)({
79
- driver,
80
- id: _ => _.id,
81
- ops: ops({
82
- id: g => g.id,
83
- create: Stream.map(gateway.fromDispatch("GUILD_CREATE"), g => ({
84
- ...g,
85
- channels: [],
86
- roles: [],
87
- emojis: [],
88
- members: []
89
- })),
90
- update: gateway.fromDispatch("GUILD_UPDATE"),
91
- remove: Stream.map(gateway.fromDispatch("GUILD_DELETE"), a => a.id)
92
- }),
93
- onMiss: id => rest.getGuild(id, {})
94
- });
95
- });
96
- exports.guilds = guilds;
97
- const channels = makeDriver => Effect.gen(function* () {
98
- const driver = yield* makeDriver;
99
- const gateway = yield* _DiscordGateway.DiscordGateway;
100
- const rest = yield* _DiscordREST.DiscordREST;
101
- return yield* (0, _Cache.makeWithParent)({
102
- driver,
103
- id: _ => Effect.succeed([_.guild_id, _.id]),
104
- ops: opsWithParent({
105
- id: a => a.id,
106
- fromParent: Stream.map(gateway.fromDispatch("GUILD_CREATE"), g => [g.id, g.channels.concat(g.threads)]),
107
- create: Stream.merge(gateway.fromDispatch("CHANNEL_CREATE"), gateway.fromDispatch("THREAD_CREATE")).pipe(Stream.map(c => [c.guild_id, c])),
108
- update: Stream.merge(gateway.fromDispatch("CHANNEL_UPDATE"), gateway.fromDispatch("THREAD_UPDATE")).pipe(Stream.map(c => [c.guild_id, c])),
109
- remove: Stream.merge(gateway.fromDispatch("CHANNEL_DELETE"), gateway.fromDispatch("THREAD_DELETE")).pipe(Stream.map(a => [a.guild_id, a.id])),
110
- parentRemove: Stream.map(gateway.fromDispatch("GUILD_DELETE"), g => g.id)
111
- }),
112
- onMiss: (_, id) => rest.getChannel(id),
113
- onParentMiss: guildId => Effect.map(rest.listGuildChannels(guildId), guildChannels => guildChannels.map(channel => [channel.id, channel]))
114
- });
115
- });
116
- exports.channels = channels;
117
- const roles = makeDriver => Effect.gen(function* () {
118
- const driver = yield* makeDriver;
119
- const gateway = yield* _DiscordGateway.DiscordGateway;
120
- const rest = yield* _DiscordREST.DiscordREST;
121
- return yield* (0, _Cache.makeWithParent)({
122
- driver,
123
- id: _ => Effect.fail(new _Cache.CacheMissError({
124
- cacheName: "RolesCache/id",
125
- id: _.id
126
- })),
127
- ops: opsWithParent({
128
- id: a => a.id,
129
- fromParent: Stream.map(gateway.fromDispatch("GUILD_CREATE"), g => [g.id, g.roles]),
130
- create: Stream.map(gateway.fromDispatch("GUILD_ROLE_CREATE"), r => [r.guild_id, r.role]),
131
- update: Stream.map(gateway.fromDispatch("GUILD_ROLE_UPDATE"), r => [r.guild_id, r.role]),
132
- remove: Stream.map(gateway.fromDispatch("GUILD_ROLE_DELETE"), r => [r.guild_id, r.role_id]),
133
- parentRemove: Stream.map(gateway.fromDispatch("GUILD_DELETE"), g => g.id)
134
- }),
135
- onMiss: (_, id) => Effect.fail(new _Cache.CacheMissError({
136
- cacheName: "RolesCache",
137
- id
138
- })),
139
- onParentMiss: guildId => rest.listGuildRoles(guildId).pipe(Effect.map(_ => _.map(role => [role.id, role])))
140
- });
141
- });
142
- exports.roles = roles;
143
- //# sourceMappingURL=prelude.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prelude.js","names":["Effect","_interopRequireWildcard","require","Stream","_DiscordREST","_Cache","_DiscordGateway","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","opsWithParent","create","fromParent","id","parentRemove","remove","update","fromParentOps","flatMap","parentId","a","fromIterable","map","resource","op","resourceId","createOps","updateOps","removeOps","parentRemoveOps","merge","pipe","exports","ops","guilds","makeDriver","gen","driver","gateway","DiscordGateway","rest","DiscordREST","make","_","g","fromDispatch","channels","roles","emojis","members","onMiss","getGuild","makeWithParent","succeed","guild_id","concat","threads","c","getChannel","onParentMiss","guildId","listGuildChannels","guildChannels","channel","fail","CacheMissError","cacheName","role","role_id","listGuildRoles"],"sources":["../src/Cache/prelude.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/Cache.d.ts DELETED
@@ -1,81 +0,0 @@
1
- import type { CacheDriver, ParentCacheDriver } from "./Cache/driver.ts";
2
- import * as Data from "effect/Data";
3
- import * as Effect from "effect/Effect";
4
- import type * as Scope from "effect/Scope";
5
- import * as Stream from "effect/Stream";
6
- export * from "./Cache/driver.ts";
7
- export { create as memoryDriver, createWithParent as memoryParentDriver, } from "./Cache/memory.ts";
8
- export { create as memoryTTLDriver, createWithParent as memoryTTLParentDriver, } from "./Cache/memoryTTL.ts";
9
- export type ParentCacheOp<T> = {
10
- op: "create";
11
- parentId: string;
12
- resourceId: string;
13
- resource: T;
14
- } | {
15
- op: "update";
16
- parentId: string;
17
- resourceId: string;
18
- resource: T;
19
- } | {
20
- op: "delete";
21
- parentId: string;
22
- resourceId: string;
23
- } | {
24
- op: "parentDelete";
25
- parentId: string;
26
- };
27
- export type CacheOp<T> = {
28
- op: "create";
29
- resourceId: string;
30
- resource: T;
31
- } | {
32
- op: "update";
33
- resourceId: string;
34
- resource: T;
35
- } | {
36
- op: "delete";
37
- resourceId: string;
38
- };
39
- export interface ParentCache<EDriver, EMiss, EPMiss, A> {
40
- readonly get: (parentId: string, id: string) => Effect.Effect<A, EDriver | EMiss>;
41
- readonly put: (_: A) => Effect.Effect<void, EDriver | EMiss>;
42
- readonly update: <R, E>(parentId: string, id: string, f: (_: A) => Effect.Effect<A, E, R>) => Effect.Effect<A, EDriver | EMiss | E, R>;
43
- readonly getForParent: (parentId: string) => Effect.Effect<ReadonlyMap<string, A>, EDriver | EPMiss>;
44
- readonly size: Effect.Effect<number, EDriver>;
45
- readonly sizeForParent: (parentId: string) => Effect.Effect<number, EDriver>;
46
- readonly set: (parentId: string, resourceId: string, resource: A) => Effect.Effect<void, EDriver>;
47
- readonly delete: (parentId: string, resourceId: string) => Effect.Effect<void, EDriver>;
48
- readonly parentDelete: (parentId: string) => Effect.Effect<void, EDriver>;
49
- readonly refreshTTL: (parentId: string, resourceId: string) => Effect.Effect<void, EDriver>;
50
- }
51
- export declare const makeWithParent: <EOps, EDriver, EMiss, EPMiss, A>({ driver, id: identify, onMiss, onParentMiss, ops, }: {
52
- driver: ParentCacheDriver<EDriver, A>;
53
- ops?: Stream.Stream<ParentCacheOp<A>, EOps>;
54
- id: (_: A) => Effect.Effect<readonly [parentId: string, id: string], EMiss>;
55
- onMiss: (parentId: string, id: string) => Effect.Effect<A, EMiss>;
56
- onParentMiss: (parentId: string) => Effect.Effect<Array<readonly [id: string, resource: A]>, EPMiss>;
57
- }) => Effect.Effect<ParentCache<EDriver, EMiss, EPMiss, A>, never, Scope.Scope>;
58
- export interface Cache<EDriver, EMiss, A> {
59
- readonly get: (id: string) => Effect.Effect<A, EDriver | EMiss>;
60
- readonly put: (_: A) => Effect.Effect<void, EDriver>;
61
- readonly update: <R, E>(id: string, f: (_: A) => Effect.Effect<A, E, R>) => Effect.Effect<A, EDriver | EMiss | E, R>;
62
- readonly size: Effect.Effect<number, EDriver>;
63
- readonly set: (resourceId: string, resource: A) => Effect.Effect<void, EDriver>;
64
- readonly delete: (resourceId: string) => Effect.Effect<void, EDriver>;
65
- readonly refreshTTL: (resourceId: string) => Effect.Effect<void, EDriver>;
66
- }
67
- export declare const make: <EOps, EDriver, EMiss, A>({ driver, id: identify, onMiss, ops, }: {
68
- driver: CacheDriver<EDriver, A>;
69
- ops?: Stream.Stream<CacheOp<A>, EOps>;
70
- id: (_: A) => string;
71
- onMiss: (id: string) => Effect.Effect<A, EMiss>;
72
- }) => Effect.Effect<Cache<EDriver, EMiss, A>, never, Scope.Scope>;
73
- export declare const CacheErrorTypeId: unique symbol;
74
- export declare class CacheMissError extends Data.Error<{
75
- cacheName: string;
76
- id: string;
77
- }> {
78
- readonly _tag = "CacheMissError";
79
- get message(): string;
80
- }
81
- //# sourceMappingURL=Cache.d.ts.map
package/Cache.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"Cache.d.ts","sourceRoot":"","sources":["./src/Cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACvE,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,MAAM,IAAI,YAAY,EACtB,gBAAgB,IAAI,kBAAkB,GACvC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,MAAM,IAAI,eAAe,EACzB,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,sBAAsB,CAAA;AAE7B,MAAM,MAAM,aAAa,CAAC,CAAC,IACvB;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,CAAC,CAAA;CAAE,GACnE;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,CAAC,CAAA;CAAE,GACnE;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,EAAE,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5C,MAAM,MAAM,OAAO,CAAC,CAAC,IACjB;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,CAAC,CAAA;CAAE,GACjD;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,CAAC,CAAA;CAAE,GACjD;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAA;AAMxC,MAAM,WAAW,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACpD,QAAQ,CAAC,GAAG,EAAE,CACZ,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,KACP,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC,CAAA;IACtC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAAC,CAAA;IAC5D,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EACpB,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAChC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7C,QAAQ,CAAC,YAAY,EAAE,CACrB,QAAQ,EAAE,MAAM,KACb,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,CAAA;IAC5D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7C,QAAQ,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5E,QAAQ,CAAC,GAAG,EAAE,CACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,CAAC,KACR,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,CACf,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACjC,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACzE,QAAQ,CAAC,UAAU,EAAE,CACnB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,KACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;CAClC;AAED,eAAO,MAAM,cAAc,GAAI,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,sDAM7D;IACD,MAAM,EAAE,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3C,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IAC3E,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACjE,YAAY,EAAE,CACZ,QAAQ,EAAE,MAAM,KACb,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;CACtE,KAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAqFzE,CAAA;AAEH,MAAM,WAAW,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC,CAAA;IAC/D,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACpD,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EACpB,EAAE,EAAE,MAAM,EACV,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAChC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7C,QAAQ,CAAC,GAAG,EAAE,CACZ,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,CAAC,KACR,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACrE,QAAQ,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;CAC1E;AAED,eAAO,MAAM,IAAI,GAAI,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,wCAK3C;IACD,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IACrC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAA;IACpB,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;CAChD,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAuD3D,CAAA;AAEH,eAAO,MAAM,gBAAgB,eAAqC,CAAA;AAElE,qBAAa,cAAe,SAAQ,IAAI,CAAC,KAAK,CAAC;IAC7C,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;CACX,CAAC;IACA,QAAQ,CAAC,IAAI,oBAAmB;IAEhC,IAAI,OAAO,WAEV;CACF"}
package/Cache.js DELETED
@@ -1,145 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _exportNames = {
7
- makeWithParent: true,
8
- make: true,
9
- CacheErrorTypeId: true,
10
- CacheMissError: true,
11
- memoryDriver: true,
12
- memoryParentDriver: true,
13
- memoryTTLDriver: true,
14
- memoryTTLParentDriver: true
15
- };
16
- exports.makeWithParent = exports.make = exports.CacheMissError = exports.CacheErrorTypeId = void 0;
17
- Object.defineProperty(exports, "memoryDriver", {
18
- enumerable: true,
19
- get: function () {
20
- return _memory.create;
21
- }
22
- });
23
- Object.defineProperty(exports, "memoryParentDriver", {
24
- enumerable: true,
25
- get: function () {
26
- return _memory.createWithParent;
27
- }
28
- });
29
- Object.defineProperty(exports, "memoryTTLDriver", {
30
- enumerable: true,
31
- get: function () {
32
- return _memoryTTL.create;
33
- }
34
- });
35
- Object.defineProperty(exports, "memoryTTLParentDriver", {
36
- enumerable: true,
37
- get: function () {
38
- return _memoryTTL.createWithParent;
39
- }
40
- });
41
- var Data = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Data"));
42
- var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
43
- var Option = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Option"));
44
- var Schedule = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Schedule"));
45
- var Stream = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Stream"));
46
- var _driver = /*#__PURE__*/require("./Cache/driver.js");
47
- Object.keys(_driver).forEach(function (key) {
48
- if (key === "default" || key === "__esModule") return;
49
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
50
- if (key in exports && exports[key] === _driver[key]) return;
51
- Object.defineProperty(exports, key, {
52
- enumerable: true,
53
- get: function () {
54
- return _driver[key];
55
- }
56
- });
57
- });
58
- var _memory = /*#__PURE__*/require("./Cache/memory.js");
59
- var _memoryTTL = /*#__PURE__*/require("./Cache/memoryTTL.js");
60
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
61
- const retryPolicy = /*#__PURE__*/Schedule.exponential("500 millis").pipe(/*#__PURE__*/Schedule.either(/*#__PURE__*/Schedule.spaced("10 seconds")));
62
- const makeWithParent = ({
63
- driver,
64
- id: identify,
65
- onMiss,
66
- onParentMiss,
67
- ops = Stream.empty
68
- }) => Effect.gen(function* () {
69
- yield* Stream.runDrain(Stream.tap(ops, op => {
70
- switch (op.op) {
71
- case "create":
72
- case "update":
73
- return driver.set(op.parentId, op.resourceId, op.resource);
74
- case "delete":
75
- return driver.delete(op.parentId, op.resourceId);
76
- case "parentDelete":
77
- return driver.parentDelete(op.parentId);
78
- }
79
- })).pipe(Effect.tapCause(cause => Effect.logError("ops error, restarting", cause)), Effect.retry(retryPolicy), Effect.forkScoped, Effect.interruptible);
80
- yield* driver.run.pipe(Effect.tapCause(cause => Effect.logError("cache driver error, restarting", cause)), Effect.retry(retryPolicy), Effect.forkScoped, Effect.interruptible);
81
- const get = (parentId, id) => Effect.flatMap(driver.get(parentId, id), option => Option.match(option, {
82
- onNone: () => Effect.tap(onMiss(parentId, id), a => driver.set(parentId, id, a)),
83
- onSome: Effect.succeed
84
- }));
85
- const put = _ => Effect.flatMap(identify(_), ([parentId, id]) => driver.set(parentId, id, _));
86
- const update = (parentId, id, f) => Effect.flatMap(get(parentId, id), a => Effect.tap(f(a), next => driver.set(parentId, id, next)));
87
- return {
88
- ...driver,
89
- get,
90
- put,
91
- update,
92
- getForParent: parentId => Effect.flatMap(driver.getForParent(parentId), option => Option.match(option, {
93
- onNone: () => onParentMiss(parentId).pipe(Effect.tap(entries => Effect.all(entries.map(([id, a]) => driver.set(parentId, id, a)), {
94
- concurrency: "unbounded"
95
- })), Effect.map(entries => new Map(entries))),
96
- onSome: Effect.succeed
97
- }))
98
- };
99
- }).pipe(Effect.annotateLogs({
100
- package: "dfx",
101
- service: "Cache"
102
- }));
103
- exports.makeWithParent = makeWithParent;
104
- const make = ({
105
- driver,
106
- id: identify,
107
- onMiss,
108
- ops = Stream.empty
109
- }) => Effect.gen(function* () {
110
- yield* Stream.runDrain(Stream.tap(ops, op => {
111
- switch (op.op) {
112
- case "create":
113
- case "update":
114
- return driver.set(op.resourceId, op.resource);
115
- case "delete":
116
- return driver.delete(op.resourceId);
117
- }
118
- })).pipe(Effect.tapCause(cause => Effect.logError("ops error, restarting", cause)), Effect.retry(retryPolicy), Effect.forkScoped, Effect.interruptible);
119
- yield* driver.run.pipe(Effect.tapCause(cause => Effect.logError("cache driver error, restarting", cause)), Effect.retry(retryPolicy), Effect.forkScoped, Effect.interruptible);
120
- const get = id => Effect.flatMap(driver.get(id), option => Option.match(option, {
121
- onNone: () => Effect.tap(onMiss(id), a => driver.set(id, a)),
122
- onSome: Effect.succeed
123
- }));
124
- const put = _ => driver.set(identify(_), _);
125
- const update = (id, f) => Effect.flatMap(get(id), a => Effect.tap(f(a), next => driver.set(id, next)));
126
- return {
127
- ...driver,
128
- get,
129
- put,
130
- update
131
- };
132
- }).pipe(Effect.annotateLogs({
133
- package: "dfx",
134
- service: "Cache"
135
- }));
136
- exports.make = make;
137
- const CacheErrorTypeId = exports.CacheErrorTypeId = /*#__PURE__*/Symbol.for("dfx/Cache/CacheError");
138
- class CacheMissError extends Data.Error {
139
- _tag = "CacheMissError";
140
- get message() {
141
- return `Cache miss for "${this.cacheName}" with id: ${this.id}`;
142
- }
143
- }
144
- exports.CacheMissError = CacheMissError;
145
- //# sourceMappingURL=Cache.js.map
package/Cache.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"Cache.js","names":["Data","_interopRequireWildcard","require","Effect","Option","Schedule","Stream","_driver","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_memory","_memoryTTL","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","set","getOwnPropertyDescriptor","retryPolicy","exponential","pipe","either","spaced","makeWithParent","driver","id","identify","onMiss","onParentMiss","ops","empty","gen","runDrain","tap","op","parentId","resourceId","resource","delete","parentDelete","tapCause","cause","logError","retry","forkScoped","interruptible","run","flatMap","option","match","onNone","a","onSome","succeed","put","_","update","next","getForParent","entries","all","map","concurrency","Map","annotateLogs","package","service","make","CacheErrorTypeId","Symbol","for","CacheMissError","Error","_tag","message","cacheName"],"sources":["./src/Cache.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,35 +0,0 @@
1
- import * as Discord from "./types.ts";
2
- import * as Config from "effect/Config";
3
- import * as Duration from "effect/Duration";
4
- import * as Layer from "effect/Layer";
5
- import type * as Redacted from "effect/Redacted";
6
- import * as ServiceMap from "effect/ServiceMap";
7
- export interface DiscordConfigService {
8
- readonly token: Redacted.Redacted;
9
- readonly rest: {
10
- readonly baseUrl: string;
11
- readonly globalRateLimit: {
12
- readonly limit: number;
13
- readonly window: Duration.Input;
14
- };
15
- };
16
- readonly gateway: {
17
- readonly intents: number;
18
- readonly presence?: Discord.GatewayPresenceUpdateData;
19
- readonly shardCount?: number;
20
- readonly identifyRateLimit: readonly [window: number, limit: number];
21
- };
22
- }
23
- declare const DiscordConfig_base: ServiceMap.ServiceClass<DiscordConfig, "dfx/DiscordConfig", DiscordConfigService>;
24
- export declare class DiscordConfig extends DiscordConfig_base {
25
- }
26
- export interface MakeOpts {
27
- readonly token: Redacted.Redacted;
28
- readonly rest?: Partial<DiscordConfigService["rest"]>;
29
- readonly gateway?: Partial<DiscordConfigService["gateway"]>;
30
- }
31
- export declare const make: ({ gateway, rest, token, }: MakeOpts) => DiscordConfigService;
32
- export declare const layer: (opts: MakeOpts) => Layer.Layer<DiscordConfig>;
33
- export declare const layerConfig: (_: Config.Wrap<MakeOpts>) => Layer.Layer<DiscordConfig, Config.ConfigError>;
34
- export {};
35
- //# sourceMappingURL=DiscordConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DiscordConfig.d.ts","sourceRoot":"","sources":["./src/DiscordConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,YAAY,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAE3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAI/C,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE;QACb,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,eAAe,EAAE;YACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;YACtB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAA;SAChC,CAAA;KACF,CAAA;IACD,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAA;QACrD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;QAE5B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;KACrE,CAAA;CACF;;AACD,qBAAa,aAAc,SAAQ,kBAGX;CAAG;AAE3B,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAA;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAA;IACrD,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAA;CAC5D;AAED,eAAO,MAAM,IAAI,GAAI,2BAIlB,QAAQ,KAAG,oBAgBZ,CAAA;AAEF,eAAO,MAAM,KAAK,GAAI,MAAM,QAAQ,KAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CACtB,CAAA;AAE1C,eAAO,MAAM,WAAW,GACtB,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KACvB,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,WAAW,CAC4B,CAAA"}
package/DiscordConfig.js DELETED
@@ -1,43 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.make = exports.layerConfig = exports.layer = exports.DiscordConfig = void 0;
7
- var Discord = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./types.js"));
8
- var Config = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Config"));
9
- var Duration = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Duration"));
10
- var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
11
- var Layer = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Layer"));
12
- var ServiceMap = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/ServiceMap"));
13
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
- const VERSION = 10;
15
- class DiscordConfig extends /*#__PURE__*/ServiceMap.Service()("dfx/DiscordConfig") {}
16
- exports.DiscordConfig = DiscordConfig;
17
- const make = ({
18
- gateway,
19
- rest,
20
- token
21
- }) => ({
22
- token,
23
- rest: {
24
- baseUrl: `https://discord.com/api/v${VERSION}`,
25
- ...rest,
26
- globalRateLimit: {
27
- limit: 50,
28
- window: Duration.seconds(1),
29
- ...rest?.globalRateLimit
30
- }
31
- },
32
- gateway: {
33
- intents: Discord.GatewayIntentBits.Guilds,
34
- identifyRateLimit: [5000, 1],
35
- ...gateway
36
- }
37
- });
38
- exports.make = make;
39
- const layer = opts => Layer.succeed(DiscordConfig, make(opts));
40
- exports.layer = layer;
41
- const layerConfig = _ => Layer.effect(DiscordConfig, Effect.map(Config.unwrap(_).asEffect(), make));
42
- exports.layerConfig = layerConfig;
43
- //# sourceMappingURL=DiscordConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DiscordConfig.js","names":["Discord","_interopRequireWildcard","require","Config","Duration","Effect","Layer","ServiceMap","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","VERSION","DiscordConfig","Service","exports","make","gateway","rest","token","baseUrl","globalRateLimit","limit","window","seconds","intents","GatewayIntentBits","Guilds","identifyRateLimit","layer","opts","succeed","layerConfig","_","effect","map","unwrap","asEffect"],"sources":["./src/DiscordConfig.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,gBAAAC,uBAAA,cAAAC,OAAA;AACA,IAAAC,MAAA,gBAAAF,uBAAA,cAAAC,OAAA;AACA,IAAAE,QAAA,gBAAAH,uBAAA,cAAAC,OAAA;AACA,IAAAG,MAAA,gBAAAJ,uBAAA,cAAAC,OAAA;AACA,IAAAI,KAAA,gBAAAL,uBAAA,cAAAC,OAAA;AAEA,IAAAK,UAAA,gBAAAN,uBAAA,cAAAC,OAAA;AAA+C,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE/C,MAAMkB,OAAO,GAAG,EAAE;AAmBZ,MAAOC,aAAc,sBAAQrB,UAAU,CAACsB,OAAO,EAGlD,CAAC,mBAAmB,CAAC;AAAGC,OAAA,CAAAF,aAAA,GAAAA,aAAA;AAQpB,MAAMG,IAAI,GAAGA,CAAC;EACnBC,OAAO;EACPC,IAAI;EACJC;AAAK,CACI,MAA4B;EACrCA,KAAK;EACLD,IAAI,EAAE;IACJE,OAAO,EAAE,4BAA4BR,OAAO,EAAE;IAC9C,GAAGM,IAAI;IACPG,eAAe,EAAE;MACfC,KAAK,EAAE,EAAE;MACTC,MAAM,EAAElC,QAAQ,CAACmC,OAAO,CAAC,CAAC,CAAC;MAC3B,GAAGN,IAAI,EAAEG;;GAEZ;EACDJ,OAAO,EAAE;IACPQ,OAAO,EAAExC,OAAO,CAACyC,iBAAiB,CAACC,MAAM;IACzCC,iBAAiB,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5B,GAAGX;;CAEN,CAAC;AAAAF,OAAA,CAAAC,IAAA,GAAAA,IAAA;AAEK,MAAMa,KAAK,GAAIC,IAAc,IAClCvC,KAAK,CAACwC,OAAO,CAAClB,aAAa,EAAEG,IAAI,CAACc,IAAI,CAAC,CAAC;AAAAf,OAAA,CAAAc,KAAA,GAAAA,KAAA;AAEnC,MAAMG,WAAW,GACtBC,CAAwB,IAExB1C,KAAK,CAAC2C,MAAM,CAACrB,aAAa,EAAEvB,MAAM,CAAC6C,GAAG,CAAC/C,MAAM,CAACgD,MAAM,CAACH,CAAC,CAAC,CAACI,QAAQ,EAAE,EAAErB,IAAI,CAAC,CAAC;AAAAD,OAAA,CAAAiB,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -1,37 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as Layer from "effect/Layer";
3
- import type * as Discord from "../types.ts";
4
- import * as ServiceMap from "effect/ServiceMap";
5
- import * as Socket from "effect/unstable/socket/Socket";
6
- import type * as Scope from "effect/Scope";
7
- export type Message = Discord.GatewayReceivePayload;
8
- export type MessageSend = Discord.GatewaySendPayload | Reconnect;
9
- export declare const Reconnect: unique symbol;
10
- export type Reconnect = typeof Reconnect;
11
- export interface OpenOpts {
12
- url?: string;
13
- version?: number;
14
- encoding?: DiscordWSCodec;
15
- onConnecting: Effect.Effect<void>;
16
- }
17
- export interface DiscordWSCodecService {
18
- type: "json" | "etf";
19
- encode: (p: Discord.GatewaySendPayload) => Uint8Array | string;
20
- decode: (p: Uint8Array | string) => Discord.GatewayReceivePayload;
21
- }
22
- declare const DiscordWSCodec_base: ServiceMap.ServiceClass<DiscordWSCodec, "dfx/DiscordGateway/DiscordWS/Codec", DiscordWSCodecService>;
23
- export declare class DiscordWSCodec extends DiscordWSCodec_base {
24
- }
25
- export declare const JsonDiscordWSCodecLive: Layer.Layer<DiscordWSCodec, never, never>;
26
- declare const DiscordWS_base: ServiceMap.ServiceClass<DiscordWS, "dfx/DiscordGateway/DiscordWS", {
27
- readonly connect: (args_0: OpenOpts) => Effect.Effect<{
28
- readonly take: Effect.Effect<Discord.GatewayReceivePayload, never, never>;
29
- readonly setUrl: (url: string) => Effect.Effect<void, never, never>;
30
- readonly write: (message: MessageSend) => Effect.Effect<void>;
31
- }, never, Socket.WebSocketConstructor | Scope.Scope>;
32
- }>;
33
- export declare class DiscordWS extends DiscordWS_base {
34
- }
35
- export declare const DiscordWSLive: Layer.Layer<DiscordWS, never, DiscordWSCodec>;
36
- export {};
37
- //# sourceMappingURL=DiscordWS.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DiscordWS.d.ts","sourceRoot":"","sources":["../src/DiscordGateway/DiscordWS.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,OAAO,MAAM,aAAa,CAAA;AAG3C,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AACvD,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAK1C,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAA;AACnD,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAA;AAEhE,eAAO,MAAM,SAAS,eAAgD,CAAA;AACtE,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAA;AAExC,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAA;IACpB,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,KAAK,UAAU,GAAG,MAAM,CAAA;IAC9D,MAAM,EAAE,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAA;CAClE;;AAID,qBAAa,cAAe,SAAQ,mBAGK;CAAG;AAE5C,eAAO,MAAM,sBAAsB,2CAIjC,CAAA;;sBAgGoB,CAAC,MAAM,EAAE,QAAQ,KAAK,MAAM,CAAC,MAAM,CACnD;QACE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAC1B,OAAO,CAAC,qBAAqB,EAC7B,KAAK,EACL,KAAK,CACN,CAAA;QACD,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QACnE,QAAQ,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;KAC9D,EACD,KAAK,EACL,MAAM,CAAC,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAC1C;;AAfL,qBAAa,SAAU,SAAQ,cAiBI;CAAG;AAEtC,eAAO,MAAM,aAAa,+CAAgC,CAAA"}
@@ -1,86 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Reconnect = exports.JsonDiscordWSCodecLive = exports.DiscordWSLive = exports.DiscordWSCodec = exports.DiscordWS = void 0;
7
- var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
8
- var Layer = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Layer"));
9
- var Ref = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Ref"));
10
- var Schedule = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Schedule"));
11
- var Cause = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Cause"));
12
- var ServiceMap = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/ServiceMap"));
13
- var Queue = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Queue"));
14
- var Socket = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/unstable/socket/Socket"));
15
- var _Logger = /*#__PURE__*/require("effect/Logger");
16
- var LogLevel = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/LogLevel"));
17
- var _References = /*#__PURE__*/require("effect/References");
18
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
19
- const Reconnect = exports.Reconnect = /*#__PURE__*/Symbol.for("dfx/DiscordGateway/WS/Reconnect");
20
- const decoder = /*#__PURE__*/new TextDecoder();
21
- class DiscordWSCodec extends /*#__PURE__*/ServiceMap.Service()("dfx/DiscordGateway/DiscordWS/Codec") {}
22
- exports.DiscordWSCodec = DiscordWSCodec;
23
- const JsonDiscordWSCodecLive = exports.JsonDiscordWSCodecLive = /*#__PURE__*/Layer.succeed(DiscordWSCodec, {
24
- type: "json",
25
- encode: p => JSON.stringify(p),
26
- decode: p => JSON.parse(typeof p === "string" ? p : decoder.decode(p))
27
- });
28
- const make = /*#__PURE__*/Effect.gen(function* () {
29
- const encoding = yield* DiscordWSCodec;
30
- const connect = Effect.fnUntraced(function* ({
31
- onConnecting,
32
- url = "wss://gateway.discord.gg/",
33
- version = 10
34
- }) {
35
- const urlRef = yield* Ref.make(`${url}?v=${version}&encoding=${encoding.type}`);
36
- const setUrl = nextUrl => Ref.set(urlRef, `${nextUrl}?v=${version}&encoding=${encoding.type}`);
37
- const messages = yield* Queue.make();
38
- const socket = yield* Socket.makeWebSocket(Ref.get(urlRef), {
39
- closeCodeIsError: _ => true,
40
- openTimeout: 5000
41
- });
42
- const writeRaw = yield* socket.writer;
43
- const logWriteError = cause => Effect.annotateLogs(Effect.logDebug(cause), {
44
- module: "DiscordGateway/DiscordWS",
45
- channel: "outbound"
46
- });
47
- const write = message => {
48
- if (message === Reconnect) {
49
- return Effect.catchCause(writeRaw(new Socket.CloseEvent(3000, "reconnecting")), logWriteError);
50
- }
51
- return Effect.catchCause(writeRaw(encoding.encode(message)), logWriteError);
52
- };
53
- const traceEnabled = LogLevel.isLessThanOrEqualTo(yield* _References.MinimumLogLevel, "Trace");
54
- const loggers = yield* _Logger.CurrentLoggers;
55
- yield* onConnecting.pipe(Effect.andThen(Effect.withFiber(fiber => socket.runRaw(_ => {
56
- const message = encoding.decode(_);
57
- Queue.offerUnsafe(messages, message);
58
- if (!traceEnabled) return;
59
- loggers.forEach(logger => {
60
- logger.log({
61
- message,
62
- cause: Cause.empty,
63
- fiber,
64
- logLevel: "Trace",
65
- date: new Date()
66
- });
67
- });
68
- }))), Effect.retry({
69
- while: e => e.reason._tag === "SocketCloseError" && e.reason.code === 3000
70
- }), Effect.catchCause(cause => Effect.logDebug("Got socket error, reconnecting", cause)), Effect.repeat(Schedule.exponential(500).pipe(Schedule.either(Schedule.spaced(10000)))), Effect.annotateLogs("channel", "inbound"), Effect.forkScoped);
71
- return {
72
- take: Queue.take(messages),
73
- setUrl,
74
- write
75
- };
76
- }, Effect.annotateLogs({
77
- module: "DiscordGateway/DiscordWS"
78
- }));
79
- return {
80
- connect
81
- };
82
- });
83
- class DiscordWS extends /*#__PURE__*/ServiceMap.Service()("dfx/DiscordGateway/DiscordWS") {}
84
- exports.DiscordWS = DiscordWS;
85
- const DiscordWSLive = exports.DiscordWSLive = /*#__PURE__*/Layer.effect(DiscordWS, make);
86
- //# sourceMappingURL=DiscordWS.js.map