dfx 0.108.0 → 0.110.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/Cache.js +1 -1
  2. package/Cache.js.map +1 -1
  3. package/DiscordGateway/DiscordWS.d.ts +1 -1
  4. package/DiscordGateway/DiscordWS.d.ts.map +1 -1
  5. package/DiscordGateway/DiscordWS.js +3 -3
  6. package/DiscordGateway/DiscordWS.js.map +1 -1
  7. package/DiscordGateway/Shard/StateStore.js +3 -3
  8. package/DiscordGateway/Shard/StateStore.js.map +1 -1
  9. package/DiscordGateway/Shard.d.ts.map +1 -1
  10. package/DiscordGateway/Shard.js +2 -8
  11. package/DiscordGateway/Shard.js.map +1 -1
  12. package/DiscordGateway/Sharder.d.ts +1 -1
  13. package/DiscordGateway/Sharder.d.ts.map +1 -1
  14. package/DiscordREST.d.ts.map +1 -1
  15. package/DiscordREST.js +23 -25
  16. package/DiscordREST.js.map +1 -1
  17. package/Interactions/context.js +1 -1
  18. package/Interactions/context.js.map +1 -1
  19. package/Interactions/definitions.d.ts +5 -5
  20. package/Interactions/webhook.js +1 -1
  21. package/Interactions/webhook.js.map +1 -1
  22. package/mjs/Cache.mjs +1 -1
  23. package/mjs/Cache.mjs.map +1 -1
  24. package/mjs/DiscordGateway/DiscordWS.mjs +3 -3
  25. package/mjs/DiscordGateway/DiscordWS.mjs.map +1 -1
  26. package/mjs/DiscordGateway/Shard/StateStore.mjs +3 -3
  27. package/mjs/DiscordGateway/Shard/StateStore.mjs.map +1 -1
  28. package/mjs/DiscordGateway/Shard.mjs +2 -8
  29. package/mjs/DiscordGateway/Shard.mjs.map +1 -1
  30. package/mjs/DiscordREST.mjs +23 -25
  31. package/mjs/DiscordREST.mjs.map +1 -1
  32. package/mjs/Interactions/context.mjs +1 -1
  33. package/mjs/Interactions/context.mjs.map +1 -1
  34. package/mjs/Interactions/webhook.mjs +1 -1
  35. package/mjs/Interactions/webhook.mjs.map +1 -1
  36. package/mjs/utils/Effect.mjs +0 -5
  37. package/mjs/utils/Effect.mjs.map +1 -1
  38. package/mjs/version.mjs +1 -1
  39. package/package.json +4 -4
  40. package/src/DiscordGateway/DiscordWS.ts +11 -11
  41. package/src/DiscordGateway/Shard.ts +5 -8
  42. package/src/DiscordREST.ts +45 -52
  43. package/src/utils/Effect.ts +0 -27
  44. package/src/version.ts +1 -1
  45. package/utils/Effect.d.ts +0 -6
  46. package/utils/Effect.d.ts.map +1 -1
  47. package/utils/Effect.js +1 -8
  48. package/utils/Effect.js.map +1 -1
  49. package/version.d.ts +1 -1
  50. package/version.js +1 -1
@@ -19,11 +19,11 @@ export const JsonDiscordWSCodecLive = /*#__PURE__*/Layer.succeed(DiscordWSCodec,
19
19
  });
20
20
  const make = /*#__PURE__*/Effect.gen(function* () {
21
21
  const encoding = yield* DiscordWSCodec;
22
- const connect = ({
22
+ const connect = Effect.fnUntraced(function* ({
23
23
  onConnecting,
24
24
  url = "wss://gateway.discord.gg/",
25
25
  version = 10
26
- }) => Effect.gen(function* () {
26
+ }) {
27
27
  const urlRef = yield* Ref.make(`${url}?v=${version}&encoding=${encoding.type}`);
28
28
  const setUrl = url => Ref.set(urlRef, `${url}?v=${version}&encoding=${encoding.type}`);
29
29
  const messages = yield* Mailbox.make();
@@ -54,7 +54,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
54
54
  setUrl,
55
55
  write
56
56
  };
57
- }).pipe(Effect.annotateLogs({
57
+ }, Effect.annotateLogs({
58
58
  module: "DiscordGateway/DiscordWS"
59
59
  }));
60
60
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"DiscordWS.mjs","names":["GenericTag","Effect","Layer","Ref","Socket","Mailbox","Schedule","Cause","Option","LogLevel","Reconnect","Symbol","for","decoder","TextDecoder","logLevelTrace","some","Trace","DiscordWSCodec","JsonDiscordWSCodecLive","succeed","type","encode","p","JSON","stringify","decode","parse","make","gen","encoding","connect","onConnecting","url","version","urlRef","setUrl","set","messages","socket","makeWebSocket","get","closeCodeIsError","_","openTimeout","writeRaw","writer","logWriteError","cause","annotateLogs","logDebug","module","channel","write","message","catchAllCause","CloseEvent","pipe","zipRight","withFiberRuntime","fiber","runRaw","unsafeOffer","log","empty","retry","while","e","reason","code","repeat","exponential","union","spaced","forkScoped","interruptible","take","DiscordWS","DiscordWSLive","effect"],"sources":["../../src/DiscordGateway/DiscordWS.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DiscordWS.mjs","names":["GenericTag","Effect","Layer","Ref","Socket","Mailbox","Schedule","Cause","Option","LogLevel","Reconnect","Symbol","for","decoder","TextDecoder","logLevelTrace","some","Trace","DiscordWSCodec","JsonDiscordWSCodecLive","succeed","type","encode","p","JSON","stringify","decode","parse","make","gen","encoding","connect","fnUntraced","onConnecting","url","version","urlRef","setUrl","set","messages","socket","makeWebSocket","get","closeCodeIsError","_","openTimeout","writeRaw","writer","logWriteError","cause","annotateLogs","logDebug","module","channel","write","message","catchAllCause","CloseEvent","pipe","zipRight","withFiberRuntime","fiber","runRaw","unsafeOffer","log","empty","retry","while","e","reason","code","repeat","exponential","union","spaced","forkScoped","interruptible","take","DiscordWS","DiscordWSLive","effect"],"sources":["../../src/DiscordGateway/DiscordWS.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,8 +3,8 @@ import * as Option from "effect/Option";
3
3
  import * as Context from "effect/Context";
4
4
  import * as Layer from "effect/Layer";
5
5
  import * as KVS from "@effect/platform/KeyValueStore";
6
- export class ShardStateStore extends Context.Tag("dfx/Shard/StateStore")() {
7
- static MemoryLive = Layer.sync(ShardStateStore, () => {
6
+ export class ShardStateStore extends /*#__PURE__*/Context.Tag("dfx/Shard/StateStore")() {
7
+ static MemoryLive = /*#__PURE__*/Layer.sync(ShardStateStore, () => {
8
8
  const store = new Map();
9
9
  return ShardStateStore.of({
10
10
  forShard: ([id, count]) => {
@@ -23,7 +23,7 @@ export class ShardStateStore extends Context.Tag("dfx/Shard/StateStore")() {
23
23
  }
24
24
  });
25
25
  });
26
- static KVSLive = Layer.effect(ShardStateStore, Effect.gen(function* (_) {
26
+ static KVSLive = /*#__PURE__*/Layer.effect(ShardStateStore, /*#__PURE__*/Effect.gen(function* (_) {
27
27
  const store = yield* KVS.KeyValueStore;
28
28
  return ShardStateStore.of({
29
29
  forShard([id, count]) {
@@ -1 +1 @@
1
- {"version":3,"file":"StateStore.mjs","names":["Effect","Option","Context","Layer","KVS","ShardStateStore","Tag","MemoryLive","sync","store","Map","of","forShard","id","count","key","get","fromNullable","set","state","clear","delete","KVSLive","effect","gen","_","KeyValueStore","map","orDie","JSON","parse","stringify","remove"],"sources":["../../../src/DiscordGateway/Shard/StateStore.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,GAAG,MAAM,gCAAgC;AAcrD,OAAM,MAAOC,eAAgB,SAAQH,OAAO,CAACI,GAAG,CAAC,sBAAsB,CAAC,EAGrE;EACD,OAAOC,UAAU,GAAiCJ,KAAK,CAACK,IAAI,CAC1DH,eAAe,EACf,MAAK;IACH,MAAMI,KAAK,GAAG,IAAIC,GAAG,EAAsB;IAE3C,OAAOL,eAAe,CAACM,EAAE,CAAC;MACxBC,QAAQ,EAAEA,CAAC,CAACC,EAAE,EAAEC,KAAK,CAAC,KAAI;QACxB,MAAMC,GAAG,GAAG,GAAGF,EAAE,IAAIC,KAAK,EAAE;QAC5B,OAAO;UACLE,GAAG,EAAEhB,MAAM,CAACQ,IAAI,CAAC,MAAMP,MAAM,CAACgB,YAAY,CAACR,KAAK,CAACO,GAAG,CAACD,GAAG,CAAC,CAAC,CAAC;UAC3DG,GAAGA,CAACC,KAAK;YACP,OAAOnB,MAAM,CAACQ,IAAI,CAAC,MAAK;cACtBC,KAAK,CAACS,GAAG,CAACH,GAAG,EAAEI,KAAK,CAAC;YACvB,CAAC,CAAC;UACJ,CAAC;UACDC,KAAK,EAAEpB,MAAM,CAACQ,IAAI,CAAC,MAAK;YACtBC,KAAK,CAACY,MAAM,CAACN,GAAG,CAAC;UACnB,CAAC;SACF;MACH;KACD,CAAC;EACJ,CAAC,CACF;EAED,OAAOO,OAAO,GACZnB,KAAK,CAACoB,MAAM,CACVlB,eAAe,EACfL,MAAM,CAACwB,GAAG,CAAC,WAAWC,CAAC;IACrB,MAAMhB,KAAK,GAAG,OAAOL,GAAG,CAACsB,aAAa;IACtC,OAAOrB,eAAe,CAACM,EAAE,CAAC;MACxBC,QAAQA,CAAC,CAACC,EAAE,EAAEC,KAAK,CAAC;QAClB,MAAMC,GAAG,GAAG,mBAAmBF,EAAE,IAAIC,KAAK,EAAE;QAC5C,OAAO;UACLE,GAAG,EAAEhB,MAAM,CAAC2B,GAAG,CACb3B,MAAM,CAAC4B,KAAK,CAACnB,KAAK,CAACO,GAAG,CAACD,GAAG,CAAC,CAAC,EAC5Bd,MAAM,CAAC0B,GAAG,CAACE,IAAI,CAACC,KAAK,CAAC,CACvB;UACDZ,GAAG,EAAEC,KAAK,IAAInB,MAAM,CAAC4B,KAAK,CAACnB,KAAK,CAACS,GAAG,CAACH,GAAG,EAAEc,IAAI,CAACE,SAAS,CAACZ,KAAK,CAAC,CAAC,CAAC;UACjEC,KAAK,EAAEpB,MAAM,CAAC4B,KAAK,CAACnB,KAAK,CAACuB,MAAM,CAACjB,GAAG,CAAC;SACtC;MACH;KACD,CAAC;EACJ,CAAC,CAAC,CACH","ignoreList":[]}
1
+ {"version":3,"file":"StateStore.mjs","names":["Effect","Option","Context","Layer","KVS","ShardStateStore","Tag","MemoryLive","sync","store","Map","of","forShard","id","count","key","get","fromNullable","set","state","clear","delete","KVSLive","effect","gen","_","KeyValueStore","map","orDie","JSON","parse","stringify","remove"],"sources":["../../../src/DiscordGateway/Shard/StateStore.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,GAAG,MAAM,gCAAgC;AAcrD,OAAM,MAAOC,eAAgB,sBAAQH,OAAO,CAACI,GAAG,CAAC,sBAAsB,CAAC,EAGrE;EACD,OAAOC,UAAU,gBAAiCJ,KAAK,CAACK,IAAI,CAC1DH,eAAe,EACf,MAAK;IACH,MAAMI,KAAK,GAAG,IAAIC,GAAG,EAAsB;IAE3C,OAAOL,eAAe,CAACM,EAAE,CAAC;MACxBC,QAAQ,EAAEA,CAAC,CAACC,EAAE,EAAEC,KAAK,CAAC,KAAI;QACxB,MAAMC,GAAG,GAAG,GAAGF,EAAE,IAAIC,KAAK,EAAE;QAC5B,OAAO;UACLE,GAAG,EAAEhB,MAAM,CAACQ,IAAI,CAAC,MAAMP,MAAM,CAACgB,YAAY,CAACR,KAAK,CAACO,GAAG,CAACD,GAAG,CAAC,CAAC,CAAC;UAC3DG,GAAGA,CAACC,KAAK;YACP,OAAOnB,MAAM,CAACQ,IAAI,CAAC,MAAK;cACtBC,KAAK,CAACS,GAAG,CAACH,GAAG,EAAEI,KAAK,CAAC;YACvB,CAAC,CAAC;UACJ,CAAC;UACDC,KAAK,EAAEpB,MAAM,CAACQ,IAAI,CAAC,MAAK;YACtBC,KAAK,CAACY,MAAM,CAACN,GAAG,CAAC;UACnB,CAAC;SACF;MACH;KACD,CAAC;EACJ,CAAC,CACF;EAED,OAAOO,OAAO,gBACZnB,KAAK,CAACoB,MAAM,CACVlB,eAAe,eACfL,MAAM,CAACwB,GAAG,CAAC,WAAWC,CAAC;IACrB,MAAMhB,KAAK,GAAG,OAAOL,GAAG,CAACsB,aAAa;IACtC,OAAOrB,eAAe,CAACM,EAAE,CAAC;MACxBC,QAAQA,CAAC,CAACC,EAAE,EAAEC,KAAK,CAAC;QAClB,MAAMC,GAAG,GAAG,mBAAmBF,EAAE,IAAIC,KAAK,EAAE;QAC5C,OAAO;UACLE,GAAG,EAAEhB,MAAM,CAAC2B,GAAG,CACb3B,MAAM,CAAC4B,KAAK,CAACnB,KAAK,CAACO,GAAG,CAACD,GAAG,CAAC,CAAC,EAC5Bd,MAAM,CAAC0B,GAAG,CAACE,IAAI,CAACC,KAAK,CAAC,CACvB;UACDZ,GAAG,EAAEC,KAAK,IAAInB,MAAM,CAAC4B,KAAK,CAACnB,KAAK,CAACS,GAAG,CAACH,GAAG,EAAEc,IAAI,CAACE,SAAS,CAACZ,KAAK,CAAC,CAAC,CAAC;UACjEC,KAAK,EAAEpB,MAAM,CAAC4B,KAAK,CAACnB,KAAK,CAACuB,MAAM,CAACjB,GAAG,CAAC;SACtC;MACH;KACD,CAAC;EACJ,CAAC,CAAC,CACH","ignoreList":[]}
@@ -43,10 +43,7 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
43
43
  if (phase === 0 /* Phase.Connecting */) return Effect.void;
44
44
  return write(p);
45
45
  });
46
- const resume = Effect.gen(function* () {
47
- yield* FiberHandle.clear(reconnectHandle);
48
- yield* setPhase(2 /* Phase.Connected */);
49
- });
46
+ const resume = Effect.zipRight(FiberHandle.clear(reconnectHandle), setPhase(2 /* Phase.Connected */));
50
47
  const onConnecting = setPhase(0 /* Phase.Connecting */);
51
48
  const socket = yield* dws.connect({
52
49
  onConnecting
@@ -64,10 +61,7 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
64
61
  presence: gateway.presence
65
62
  }, stateStore.get);
66
63
  // delayed reconnect
67
- const delayedReconnect = Effect.gen(function* () {
68
- yield* Effect.sleep(30_000);
69
- yield* socket.write(Reconnect);
70
- });
64
+ const delayedReconnect = Effect.delay(socket.write(Reconnect), 30_000);
71
65
  function* onPayload(p) {
72
66
  if (typeof p.s === "number") {
73
67
  resumeState.sequence = p.s;
@@ -1 +1 @@
1
- {"version":3,"file":"Shard.mjs","names":["DiscordConfig","DiscordWS","DiscordWSLive","Reconnect","Messaging","MesssagingLive","ShardStateStore","Heartbeats","Identify","RateLimiter","RateLimiterLive","Discord","GenericTag","Duration","Effect","Layer","Option","Mailbox","Redacted","FiberHandle","make","gen","gateway","token","limiter","dws","hub","sendMailbox","shardState","connect","shard","_","reconnectHandle","phase","stateStore","forShard","resumeState","getOrElse","get","resumeUrl","sessionId","sequence","setPhase","p","suspend","annotateLogs","logTrace","heartbeatSend","void","write","resume","clear","onConnecting","socket","zipRight","maybeWait","minutes","hellos","acquireRelease","shutdown","acks","send","pipe","forkScoped","interruptible","identify","identifyOrResume","value","intents","presence","delayedReconnect","sleep","onPayload","s","op","GatewayOpcode","DISPATCH","t","payload","d","session_id","resume_gateway_url","set","setUrl","HELLO","unsafeOffer","run","HEARTBEAT_ACK","INVALID_SESSION","RECONNECT","take","id","package","module","Shard","ShardLive","effect","provide"],"sources":["../../src/DiscordGateway/Shard.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Shard.mjs","names":["DiscordConfig","DiscordWS","DiscordWSLive","Reconnect","Messaging","MesssagingLive","ShardStateStore","Heartbeats","Identify","RateLimiter","RateLimiterLive","Discord","GenericTag","Duration","Effect","Layer","Option","Mailbox","Redacted","FiberHandle","make","gen","gateway","token","limiter","dws","hub","sendMailbox","shardState","connect","shard","_","reconnectHandle","phase","stateStore","forShard","resumeState","getOrElse","get","resumeUrl","sessionId","sequence","setPhase","p","suspend","annotateLogs","logTrace","heartbeatSend","void","write","resume","zipRight","clear","onConnecting","socket","maybeWait","minutes","hellos","acquireRelease","shutdown","acks","send","pipe","forkScoped","interruptible","identify","identifyOrResume","value","intents","presence","delayedReconnect","delay","onPayload","s","op","GatewayOpcode","DISPATCH","t","payload","d","session_id","resume_gateway_url","set","setUrl","HELLO","unsafeOffer","run","HEARTBEAT_ACK","INVALID_SESSION","RECONNECT","take","id","package","module","Shard","ShardLive","effect","provide"],"sources":["../../src/DiscordGateway/Shard.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAa,QAAQ,mBAAmB;AAEjD,SACEC,SAAS,EACTC,aAAa,EACbC,SAAS,QACJ,8BAA8B;AACrC,SAASC,SAAS,EAAEC,cAAc,QAAQ,8BAA8B;AAExE,SAASC,eAAe,QAAQ,qCAAqC;AACrE,OAAO,KAAKC,UAAU,MAAM,qCAAqC;AACjE,OAAO,KAAKC,QAAQ,MAAM,mCAAmC;AAC7D,SAASC,WAAW,EAAEC,eAAe,QAAQ,eAAe;AAC5D,OAAO,KAAKC,OAAO,MAAM,WAAW;AACpC,SAASC,UAAU,QAAQ,gBAAgB;AAC3C,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAE3C,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AAQjD,OAAO,MAAMC,IAAI,gBAAGN,MAAM,CAACO,GAAG,CAAC,aAAS;EACtC,MAAM;IAAEC,OAAO;IAAEC;EAAK,CAAE,GAAG,OAAOvB,aAAa;EAC/C,MAAMwB,OAAO,GAAG,OAAOf,WAAW;EAClC,MAAMgB,GAAG,GAAG,OAAOxB,SAAS;EAC5B,MAAM;IAAEyB,GAAG;IAAEC;EAAW,CAAE,GAAG,OAAOvB,SAAS;EAC7C,MAAMwB,UAAU,GAAG,OAAOtB,eAAe;EAEzC,MAAMuB,OAAO,GAAIC,KAAkC,IACjDhB,MAAM,CAACO,GAAG,CAAC,WAAWU,CAAC;IACrB,MAAMC,eAAe,GAAG,OAAOb,WAAW,CAACC,IAAI,EAAE;IACjD,IAAIa,KAAK;IACT,MAAMC,UAAU,GAAGN,UAAU,CAACO,QAAQ,CAACL,KAAK,CAAC;IAC7C,MAAMM,WAAW,GAA8BpB,MAAM,CAACqB,SAAS,CAC7D,OAAOH,UAAU,CAACI,GAAG,EACrB,OAAO;MACLC,SAAS,EAAE,EAAE;MACbC,SAAS,EAAE,EAAE;MACbC,QAAQ,EAAE;KACX,CAAC,CACH;IACD,MAAMC,QAAQ,GAAIC,CAAQ,IACxB7B,MAAM,CAAC8B,OAAO,CAAC,MAAK;MAClBX,KAAK,GAAGU,CAAC;MACT,OAAO7B,MAAM,CAAC+B,YAAY,CACxB/B,MAAM,CAACgC,QAAQ,CAAC,kBAAkB,CAAC,EACnC,OAAO,EACPH,CAAC,CACF;IACH,CAAC,CAAC;IAEJ,MAAMI,aAAa,GAAIJ,CAAU,IAC/B7B,MAAM,CAAC8B,OAAO,CAAC,MAAK;MAClB,IAAIX,KAAK,+BAAuB,OAAOnB,MAAM,CAACkC,IAAI;MAClD,OAAOC,KAAK,CAACN,CAAC,CAAC;IACjB,CAAC,CAAC;IAEJ,MAAMO,MAAM,GAAGpC,MAAM,CAACqC,QAAQ,CAC5BhC,WAAW,CAACiC,KAAK,CAACpB,eAAe,CAAC,EAClCU,QAAQ,yBAAiB,CAC1B;IAED,MAAMW,YAAY,GAAGX,QAAQ,0BAAkB;IAE/C,MAAMY,MAAM,GAAG,OAAO7B,GAAG,CAACI,OAAO,CAAC;MAAEwB;IAAY,CAAE,CAAC;IACnD,MAAMJ,KAAK,GAAIN,CAAU,IACvB7B,MAAM,CAACqC,QAAQ,CACb3B,OAAO,CAAC+B,SAAS,CAAC,gBAAgB,EAAE1C,QAAQ,CAAC2C,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAC7DF,MAAM,CAACL,KAAK,CAACN,CAAC,CAAC,CAChB;IAEH,MAAMc,MAAM,GAAG,OAAO3C,MAAM,CAAC4C,cAAc,CACzCzC,OAAO,CAACG,IAAI,EAA0B,EACtCW,CAAC,IAAIA,CAAC,CAAC4B,QAAQ,CAChB;IACD,MAAMC,IAAI,GAAG,OAAO9C,MAAM,CAAC4C,cAAc,CACvCzC,OAAO,CAACG,IAAI,EAA0B,EACtCW,CAAC,IAAIA,CAAC,CAAC4B,QAAQ,CAChB;IAED;IACA,OAAOpD,UAAU,CAACsD,IAAI,CAACJ,MAAM,EAAEG,IAAI,EAAE1B,UAAU,CAACI,GAAG,EAAES,aAAa,CAAC,CAACe,IAAI,CACtEhD,MAAM,CAACiD,UAAU,EACjBjD,MAAM,CAACkD,aAAa,CACrB;IAED;IACA,MAAMC,QAAQ,GAAGzD,QAAQ,CAAC0D,gBAAgB,CACxC;MACE3C,KAAK,EAAEL,QAAQ,CAACiD,KAAK,CAAC5C,KAAK,CAAC;MAC5BO,KAAK;MACLsC,OAAO,EAAE9C,OAAO,CAAC8C,OAAO;MACxBC,QAAQ,EAAE/C,OAAO,CAAC+C;KACnB,EACDnC,UAAU,CAACI,GAAG,CACf;IAED;IACA,MAAMgC,gBAAgB,GAAGxD,MAAM,CAACyD,KAAK,CAACjB,MAAM,CAACL,KAAK,CAAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEtE,UAAUqE,SAASA,CAAC7B,CAAyB;MAC3C,IAAI,OAAOA,CAAC,CAAC8B,CAAC,KAAK,QAAQ,EAAE;QAC3BrC,WAAW,CAACK,QAAQ,GAAGE,CAAC,CAAC8B,CAAC;MAC5B;MACA,IAAI9B,CAAC,CAAC+B,EAAE,KAAK/D,OAAO,CAACgE,aAAa,CAACC,QAAQ,IAAIjC,CAAC,CAACkC,CAAC,KAAK,OAAO,EAAE;QAC9D,MAAMC,OAAO,GAAGnC,CAAC,CAACoC,CAAuB;QACzC3C,WAAW,CAACI,SAAS,GAAGsC,OAAO,CAACE,UAAU;QAC1C5C,WAAW,CAACG,SAAS,GAAGuC,OAAO,CAACG,kBAAkB;QAClD,OAAO/C,UAAU,CAACgD,GAAG,CAAC9C,WAAW,CAAC;QAClC,OAAOkB,MAAM,CAAC6B,MAAM,CAACL,OAAO,CAACG,kBAAkB,CAAC;MAClD,CAAC,MAAM,IACL7C,WAAW,CAACG,SAAS,KAAK,EAAE,IAC5BH,WAAW,CAACI,SAAS,KAAK,EAAE,EAC5B;QACA,OAAON,UAAU,CAACgD,GAAG,CAAC9C,WAAW,CAAC;MACpC;MAEA,QAAQO,CAAC,CAAC+B,EAAE;QACV,KAAK/D,OAAO,CAACgE,aAAa,CAACS,KAAK;UAAE;YAChC,OAAOnC,KAAK,CAAC,OAAOgB,QAAQ,CAAC;YAC7B,OAAOvB,QAAQ,yBAAiB;YAChCe,MAAM,CAAC4B,WAAW,CAAC1C,CAAC,CAAC;YACrB,OAAOxB,WAAW,CAACmE,GAAG,CAACtD,eAAe,EAAEsC,gBAAgB,CAAC;YACzD;UACF;QACA,KAAK3D,OAAO,CAACgE,aAAa,CAACY,aAAa;UAAE;YACxC3B,IAAI,CAACyB,WAAW,CAAC1C,CAAC,CAAC;YACnB;UACF;QACA,KAAKhC,OAAO,CAACgE,aAAa,CAACa,eAAe;UAAE;YAC1C,IAAI,CAAC7C,CAAC,CAACoC,CAAC,EAAE;cACR3C,WAAW,CAACI,SAAS,GAAG,EAAE;cAC1B,OAAON,UAAU,CAACkB,KAAK;YACzB;YACA,OAAOE,MAAM,CAACL,KAAK,CAAC9C,SAAS,CAAC;YAC9B;UACF;QACA,KAAKQ,OAAO,CAACgE,aAAa,CAACC,QAAQ;UAAE;YACnC,IAAIjC,CAAC,CAACkC,CAAC,KAAK,OAAO,IAAIlC,CAAC,CAACkC,CAAC,KAAK,SAAS,EAAE;cACxC,OAAO3B,MAAM;YACf;YACAxB,GAAG,CAAC2D,WAAW,CAAC1C,CAAC,CAAC;YAClB;UACF;QACA,KAAKhC,OAAO,CAACgE,aAAa,CAACc,SAAS;UAAE;YACpC,OAAOnC,MAAM,CAACL,KAAK,CAAC9C,SAAS,CAAC;YAC9B;UACF;MACF;IACF;IAEA,OAAOW,MAAM,CAACO,GAAG,CAAC,aAAS;MACzB,OAAO,IAAI,EAAE;QACX,OAAO4B,KAAK,CAAC,OAAOtB,WAAW,CAAC+D,IAAI,CAAC;MACvC;IACF,CAAC,CAAC,CAAC5B,IAAI,CAAChD,MAAM,CAACiD,UAAU,EAAEjD,MAAM,CAACkD,aAAa,CAAC;IAEhD,OAAOlD,MAAM,CAACO,GAAG,CAAC,aAAS;MACzB,OAAO,IAAI,EAAE;QACX,OAAOmD,SAAS,CAAC,OAAOlB,MAAM,CAACoC,IAAI,CAAC;MACtC;IACF,CAAC,CAAC,CAAC5B,IAAI,CAAChD,MAAM,CAACiD,UAAU,EAAEjD,MAAM,CAACkD,aAAa,CAAC;IAEhD,OAAO;MAAE2B,EAAE,EAAE7D;IAAK,CAAW;EAC/B,CAAC,CAAC,CAACgC,IAAI,CACLhD,MAAM,CAAC+B,YAAY,CAAC;IAClB+C,OAAO,EAAE,KAAK;IACdC,MAAM,EAAE,sBAAsB;IAC9B/D;GACD,CAAC,CACH;EAEH,OAAO;IAAED;EAAO,CAAW;AAC7B,CAAC,CAAC;AAOF,OAAO,MAAMiE,KAAK,gBAAGlF,UAAU,CAAsB,0BAA0B,CAAC;AAChF,OAAO,MAAMmF,SAAS,gBAAGhF,KAAK,CAACiF,MAAM,CAACF,KAAK,EAAE1E,IAAI,CAAC,CAAC0C,IAAI,cACrD/C,KAAK,CAACkF,OAAO,CAAC/F,aAAa,CAAC,eAC5Ba,KAAK,CAACkF,OAAO,CAAC5F,cAAc,CAAC,eAC7BU,KAAK,CAACkF,OAAO,CAACvF,eAAe,CAAC,CAC/B","ignoreList":[]}
@@ -18,7 +18,7 @@ import * as Option from "effect/Option";
18
18
  import * as Ref from "effect/Ref";
19
19
  import * as Redacted from "effect/Redacted";
20
20
  export const DiscordRESTErrorTypeId = /*#__PURE__*/Symbol.for("dfx/DiscordREST/DiscordRESTError");
21
- export class DiscordRESTError extends TypeIdError(DiscordRESTErrorTypeId, "DiscordRESTError") {
21
+ export class DiscordRESTError extends /*#__PURE__*/TypeIdError(DiscordRESTErrorTypeId, "DiscordRESTError") {
22
22
  get message() {
23
23
  const httpMessage = this.cause.message;
24
24
  return this.body !== undefined ? `${httpMessage}: ${JSON.stringify(this.body)}` : httpMessage;
@@ -43,36 +43,34 @@ const make = /*#__PURE__*/Effect.gen(function* () {
43
43
  const removeBadRoute = route => Ref.update(badRoutesRef, HashSet.remove(route));
44
44
  const invalidRateLimit = route => isBadRoute(route).pipe(Effect.tap(invalid => invalid ? maybeWait("dfx.rest.invalid", Duration.minutes(10), 10000) : Effect.void), Effect.asVoid);
45
45
  // Request rate limiting
46
- const requestRateLimit = (path, request) => Effect.Do.pipe(Effect.let("route", () => routeFromConfig(path, request.method)), Effect.bind("maybeBucket", ({
47
- route
48
- }) => store.getBucketForRoute(route)), Effect.flatMap(({
49
- maybeBucket,
50
- route
51
- }) => Option.match(maybeBucket, {
52
- onNone: () => invalidRateLimit(route),
53
- onSome: bucket => Effect.zipRight(invalidRateLimit(route), maybeWait(`dfx.rest.${bucket.key}`, millis(bucket.resetAfter), bucket.limit))
54
- })));
46
+ const requestRateLimit = Effect.fnUntraced(function* (path, request) {
47
+ const route = routeFromConfig(path, request.method);
48
+ const maybeBucket = yield* store.getBucketForRoute(route);
49
+ yield* invalidRateLimit(route);
50
+ if (Option.isNone(maybeBucket)) return;
51
+ const bucket = maybeBucket.value;
52
+ yield* maybeWait(`dfx.rest.${bucket.key}`, millis(bucket.resetAfter), bucket.limit);
53
+ });
55
54
  // Update rate limit buckets
56
- const updateBuckets = (request, response) => Effect.Do.pipe(Effect.let("route", () => routeFromConfig(request.url, request.method)), Effect.bind("rateLimit", () => rateLimitFromHeaders(response.headers)), Effect.bind("hasBucket", ({
57
- rateLimit
58
- }) => store.hasBucket(rateLimit.bucket)), Effect.flatMap(({
59
- hasBucket,
60
- rateLimit,
61
- route
62
- }) => {
63
- const effectsToRun = [removeBadRoute(route), store.putBucketRoute(route, rateLimit.bucket)];
55
+ const updateBuckets = Effect.fnUntraced(function* (request, response) {
56
+ const route = routeFromConfig(request.url, request.method);
57
+ const rateLimitOption = rateLimitFromHeaders(response.headers);
58
+ if (Option.isNone(rateLimitOption)) return;
59
+ const rateLimit = rateLimitOption.value;
60
+ const hasBucket = yield* store.hasBucket(rateLimit.bucket);
61
+ const fibers = [];
62
+ fibers.push(yield* Effect.fork(removeBadRoute(route)));
63
+ fibers.push(yield* Effect.fork(store.putBucketRoute(route, rateLimit.bucket)));
64
64
  if (!hasBucket || rateLimit.limit - 1 === rateLimit.remaining) {
65
- effectsToRun.push(store.removeCounter(`dfx.rest.?.${route}`), store.putBucket({
65
+ fibers.push(yield* Effect.fork(store.removeCounter(`dfx.rest.?.${route}`)));
66
+ fibers.push(yield* Effect.fork(store.putBucket({
66
67
  key: rateLimit.bucket,
67
68
  resetAfter: Duration.toMillis(rateLimit.retryAfter),
68
69
  limit: !hasBucket && rateLimit.remaining > 0 ? rateLimit.remaining : rateLimit.limit
69
- }));
70
+ })));
70
71
  }
71
- return Effect.all(effectsToRun, {
72
- concurrency: "unbounded",
73
- discard: true
74
- });
75
- }), Effect.ignore);
72
+ for (const fiber of fibers) yield* fiber.await;
73
+ });
76
74
  const httpClient = pipe(HttpClient.filterStatusOk(http), HttpClient.mapRequest(req => pipe(HttpRequest.prependUrl(req, rest.baseUrl), HttpRequest.setHeaders({
77
75
  Authorization: `Bot ${Redacted.value(token)}`,
78
76
  "User-Agent": `DiscordBot (https://github.com/tim-smart/dfx, ${LIB_VERSION})`
@@ -1 +1 @@
1
- {"version":3,"file":"DiscordREST.mjs","names":["TypeIdError","HttpClient","HttpRequest","DiscordConfig","rateLimitFromHeaders","retryAfter","routeFromConfig","RateLimitStore","RateLimiter","RateLimiterLive","Discord","LIB_VERSION","GenericTag","Duration","millis","Effect","Effectable","pipe","HashSet","Layer","Option","Ref","Redacted","DiscordRESTErrorTypeId","Symbol","for","DiscordRESTError","message","httpMessage","cause","body","undefined","JSON","stringify","make","gen","rest","token","http","store","maybeWait","globalRateLimit","decode","window","limit","badRoutesRef","empty","tenMinutes","toMillis","minutes","addBadRoute","route","logDebug","zipRight","update","add","incrementCounter","annotateLogs","isBadRoute","map","get","has","removeBadRoute","remove","invalidRateLimit","tap","invalid","void","asVoid","requestRateLimit","path","request","Do","let","method","bind","getBucketForRoute","flatMap","maybeBucket","match","onNone","onSome","bucket","key","resetAfter","updateBuckets","response","url","headers","rateLimit","hasBucket","effectsToRun","putBucketRoute","remaining","push","removeCounter","putBucket","all","concurrency","discard","ignore","httpClient","filterStatusOk","mapRequest","req","prependUrl","baseUrl","setHeaders","Authorization","value","catchAll","reason","json","mapError","_","fail","executor","zipLeft","execute","catchTag","e","status","sleep","getOrElse","seconds","package","module","routes","createRoutes","options","params","hasBody","appendUrlParams","_tag","formData","append","bodyUnsafeJson","RestResponseImpl","Class","effect","constructor","commit","scoped","DiscordREST","DiscordRESTLive","provide"],"sources":["../src/DiscordREST.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DiscordREST.mjs","names":["TypeIdError","HttpClient","HttpRequest","DiscordConfig","rateLimitFromHeaders","retryAfter","routeFromConfig","RateLimitStore","RateLimiter","RateLimiterLive","Discord","LIB_VERSION","GenericTag","Duration","millis","Effect","Effectable","pipe","HashSet","Layer","Option","Ref","Redacted","DiscordRESTErrorTypeId","Symbol","for","DiscordRESTError","message","httpMessage","cause","body","undefined","JSON","stringify","make","gen","rest","token","http","store","maybeWait","globalRateLimit","decode","window","limit","badRoutesRef","empty","tenMinutes","toMillis","minutes","addBadRoute","route","logDebug","zipRight","update","add","incrementCounter","annotateLogs","isBadRoute","map","get","has","removeBadRoute","remove","invalidRateLimit","tap","invalid","void","asVoid","requestRateLimit","fnUntraced","path","request","method","maybeBucket","getBucketForRoute","isNone","bucket","value","key","resetAfter","updateBuckets","response","url","rateLimitOption","headers","rateLimit","hasBucket","fibers","push","fork","putBucketRoute","remaining","removeCounter","putBucket","fiber","await","httpClient","filterStatusOk","mapRequest","req","prependUrl","baseUrl","setHeaders","Authorization","catchAll","reason","json","mapError","_","flatMap","fail","executor","zipLeft","execute","catchTag","e","status","all","concurrency","discard","sleep","getOrElse","seconds","package","module","routes","createRoutes","options","params","hasBody","appendUrlParams","_tag","formData","append","bodyUnsafeJson","RestResponseImpl","Class","effect","constructor","commit","scoped","DiscordREST","DiscordRESTLive","provide"],"sources":["../src/DiscordREST.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -14,7 +14,7 @@ export const SubCommandContext = /*#__PURE__*/GenericTag("dfx/Interactions/SubCo
14
14
  export const resolvedValues = f => Effect.flatMap(Interaction, ix => IxHelpers.resolveValues(f)(ix));
15
15
  export const resolved = (name, f) => Effect.flatMap(Interaction, ix => IxHelpers.resolveOptionValue(name, f)(ix));
16
16
  export const focusedOptionValue = /*#__PURE__*/Effect.map(FocusedOptionContext, _ => _.value ?? "");
17
- export class SubCommandNotFound extends TypeIdError(InteractionsErrorTypeId, "SubCommandNotFound") {}
17
+ export class SubCommandNotFound extends /*#__PURE__*/TypeIdError(InteractionsErrorTypeId, "SubCommandNotFound") {}
18
18
  export const handleSubCommands = commands => ApplicationCommand.pipe(Effect.flatMap(data => Effect.mapError(Arr.findFirst(IxHelpers.allSubCommands(data), _ => !!commands[_.name]), () => new SubCommandNotFound({
19
19
  data
20
20
  }))), Effect.flatMap(command => Effect.provideService(commands[command.name], SubCommandContext, {
@@ -1 +1 @@
1
- {"version":3,"file":"context.mjs","names":["TypeIdError","IxHelpers","InteractionsErrorTypeId","GenericTag","Effect","Option","Arr","Interaction","ApplicationCommand","MessageComponentData","ModalSubmitData","FocusedOptionContext","SubCommandContext","resolvedValues","f","flatMap","ix","resolveValues","resolved","name","resolveOptionValue","focusedOptionValue","map","_","value","SubCommandNotFound","handleSubCommands","commands","pipe","data","mapError","findFirst","allSubCommands","command","provideService","currentSubCommand","optionsMap","RequiredOptionNotFound","_tag","constructor","option","getOption","optionValue","match","flatMapNullable","a","onNone","fail","onSome","succeed","optionValueOptional","o","modalValues","componentsMap","modalValueOption","componentValue","modalValue"],"sources":["../../src/Interactions/context.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"context.mjs","names":["TypeIdError","IxHelpers","InteractionsErrorTypeId","GenericTag","Effect","Option","Arr","Interaction","ApplicationCommand","MessageComponentData","ModalSubmitData","FocusedOptionContext","SubCommandContext","resolvedValues","f","flatMap","ix","resolveValues","resolved","name","resolveOptionValue","focusedOptionValue","map","_","value","SubCommandNotFound","handleSubCommands","commands","pipe","data","mapError","findFirst","allSubCommands","command","provideService","currentSubCommand","optionsMap","RequiredOptionNotFound","_tag","constructor","option","getOption","optionValue","match","flatMapNullable","a","onNone","fail","onSome","succeed","optionValueOptional","o","modalValues","componentsMap","modalValueOption","componentValue","modalValue"],"sources":["../../src/Interactions/context.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -31,7 +31,7 @@ const makeConfig = ({
31
31
  export const WebhookConfig = /*#__PURE__*/GenericTag("dfx/Interactions/WebhookConfig");
32
32
  export const layer = opts => Layer.succeed(WebhookConfig, makeConfig(opts));
33
33
  export const layerConfig = config => Layer.effect(WebhookConfig, Effect.map(config, makeConfig));
34
- export class WebhookParseError extends TypeIdError(InteractionsErrorTypeId, "WebhookParseError") {}
34
+ export class WebhookParseError extends /*#__PURE__*/TypeIdError(InteractionsErrorTypeId, "WebhookParseError") {}
35
35
  const fromHeadersAndBody = (headers, body) => Effect.tap(WebhookConfig, ({
36
36
  algorithm,
37
37
  crypto,
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.mjs","names":["Chunk","GenericTag","identity","Option","Redacted","Effect","Layer","handlers","Interaction","Verify","TypeIdError","InteractionsErrorTypeId","BadWebhookSignature","_tag","checkSignature","publicKey","headers","body","crypto","algorithm","all","signature","fromNullable","timestamp","pipe","flatMap","_","promise","verify","filterOrFail","catchAllCause","fail","asVoid","makeConfig","applicationId","value","PlatformAlgorithm","WebhookConfig","layer","opts","succeed","layerConfig","config","effect","map","WebhookParseError","fromHeadersAndBody","tap","try","JSON","parse","catch","cause","run","definitions","handleResponse","handler","interaction","withSpan","provideService","type","attributes","interactionId","id","captureStackTrace","makeHandler","ix","handle","d","_i","r","error","success","makeSimpleHandler"],"sources":["../../src/Interactions/webhook.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"webhook.mjs","names":["Chunk","GenericTag","identity","Option","Redacted","Effect","Layer","handlers","Interaction","Verify","TypeIdError","InteractionsErrorTypeId","BadWebhookSignature","_tag","checkSignature","publicKey","headers","body","crypto","algorithm","all","signature","fromNullable","timestamp","pipe","flatMap","_","promise","verify","filterOrFail","catchAllCause","fail","asVoid","makeConfig","applicationId","value","PlatformAlgorithm","WebhookConfig","layer","opts","succeed","layerConfig","config","effect","map","WebhookParseError","fromHeadersAndBody","tap","try","JSON","parse","catch","cause","run","definitions","handleResponse","handler","interaction","withSpan","provideService","type","attributes","interactionId","id","captureStackTrace","makeHandler","ix","handle","d","_i","r","error","success","makeSimpleHandler"],"sources":["../../src/Interactions/webhook.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -15,9 +15,4 @@ export const foreverSwitch = (self, f) => Effect.gen(function* () {
15
15
  fiber = fiber_;
16
16
  }))), Effect.forever, Effect.raceFirst(Deferred.await(deferred)));
17
17
  });
18
- export function genFn(body) {
19
- return function (...args) {
20
- return Effect.gen(() => body(...args));
21
- };
22
- }
23
18
  //# sourceMappingURL=Effect.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Effect.mjs","names":["pipe","Deferred","Effect","Fiber","PubSub","Queue","subscribeForEachPar","self","effect","flatMap","make","deferred","run","subscribe","queue","forever","take","a","fork","catchAllCause","cause","failCause","scoped","interruptible","raceFirst","await","foreverSwitch","f","gen","fiber","tap","interruptFork","void","fiber_","genFn","body","args"],"sources":["../../src/utils/Effect.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,IAAI,QAAQ,iBAAiB;AACtC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAGrC,OAAO,MAAMC,mBAAmB,GAAGA,CACjCC,IAAsB,EACtBC,MAAwC,KAExCN,MAAM,CAACO,OAAO,CAACR,QAAQ,CAACS,IAAI,EAAY,EAAEC,QAAQ,IAAG;EACnD,MAAMC,GAAG,GAAGZ,IAAI,CACdI,MAAM,CAACS,SAAS,CAACN,IAAI,CAAC,EACtBL,MAAM,CAACO,OAAO,CAACK,KAAK,IAClBZ,MAAM,CAACa,OAAO,CACZb,MAAM,CAACO,OAAO,CAACJ,KAAK,CAACW,IAAI,CAACF,KAAK,CAAC,EAAEG,CAAC,IACjCf,MAAM,CAACgB,IAAI,CACThB,MAAM,CAACiB,aAAa,CAACX,MAAM,CAACS,CAAC,CAAC,EAAEG,KAAK,IACnCnB,QAAQ,CAACoB,SAAS,CAACV,QAAQ,EAAES,KAAK,CAAC,CACpC,CACF,CACF,CACF,CACF,EACDlB,MAAM,CAACoB,MAAM,EACbpB,MAAM,CAACqB,aAAa,CACrB;EAED,OAAOrB,MAAM,CAACsB,SAAS,CAACZ,GAAG,EAAEX,QAAQ,CAACwB,KAAK,CAACd,QAAQ,CAAC,CAAC;AACxD,CAAC,CAAC;AAEJ,OAAO,MAAMe,aAAa,GAAGA,CAC3BnB,IAA4B,EAC5BoB,CAAqC,KAErCzB,MAAM,CAAC0B,GAAG,CAAC,aAAS;EAClB,MAAMjB,QAAQ,GAAG,OAAOV,QAAQ,CAACS,IAAI,EAAa;EAClD,IAAImB,KAAuD;EAC3D,OAAO,OAAOtB,IAAI,CAACP,IAAI,CACrBE,MAAM,CAAC4B,GAAG,CAAC,MAAOD,KAAK,GAAG1B,KAAK,CAAC4B,aAAa,CAACF,KAAK,CAAC,GAAG3B,MAAM,CAAC8B,IAAK,CAAC,EACpE9B,MAAM,CAACO,OAAO,CAACQ,CAAC,IACdU,CAAC,CAACV,CAAC,CAAC,CAACjB,IAAI,CACPE,MAAM,CAACiB,aAAa,CAACC,KAAK,IAAInB,QAAQ,CAACoB,SAAS,CAACV,QAAQ,EAAES,KAAK,CAAC,CAAC,EAClElB,MAAM,CAACgB,IAAI,EACXhB,MAAM,CAAC4B,GAAG,CAACG,MAAM,IAAG;IAClBJ,KAAK,GAAGI,MAAM;EAChB,CAAC,CAAC,CACH,CACF,EACD/B,MAAM,CAACa,OAAO,EACdb,MAAM,CAACsB,SAAS,CAACvB,QAAQ,CAACwB,KAAK,CAACd,QAAQ,CAAC,CAAC,CAC3C;AACH,CAAC,CAAC;AAEJ,OAAM,SAAUuB,KAAKA,CAKnBC,IAAoD;EAgBpD,OAAO,UAAU,GAAGC,IAAI;IACtB,OAAOlC,MAAM,CAAC0B,GAAG,CAAC,MAAMO,IAAI,CAAC,GAAGC,IAAI,CAAC,CAAC;EACxC,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"file":"Effect.mjs","names":["pipe","Deferred","Effect","Fiber","PubSub","Queue","subscribeForEachPar","self","effect","flatMap","make","deferred","run","subscribe","queue","forever","take","a","fork","catchAllCause","cause","failCause","scoped","interruptible","raceFirst","await","foreverSwitch","f","gen","fiber","tap","interruptFork","void","fiber_"],"sources":["../../src/utils/Effect.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,IAAI,QAAQ,iBAAiB;AACtC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,OAAO,MAAMC,mBAAmB,GAAGA,CACjCC,IAAsB,EACtBC,MAAwC,KAExCN,MAAM,CAACO,OAAO,CAACR,QAAQ,CAACS,IAAI,EAAY,EAAEC,QAAQ,IAAG;EACnD,MAAMC,GAAG,GAAGZ,IAAI,CACdI,MAAM,CAACS,SAAS,CAACN,IAAI,CAAC,EACtBL,MAAM,CAACO,OAAO,CAACK,KAAK,IAClBZ,MAAM,CAACa,OAAO,CACZb,MAAM,CAACO,OAAO,CAACJ,KAAK,CAACW,IAAI,CAACF,KAAK,CAAC,EAAEG,CAAC,IACjCf,MAAM,CAACgB,IAAI,CACThB,MAAM,CAACiB,aAAa,CAACX,MAAM,CAACS,CAAC,CAAC,EAAEG,KAAK,IACnCnB,QAAQ,CAACoB,SAAS,CAACV,QAAQ,EAAES,KAAK,CAAC,CACpC,CACF,CACF,CACF,CACF,EACDlB,MAAM,CAACoB,MAAM,EACbpB,MAAM,CAACqB,aAAa,CACrB;EAED,OAAOrB,MAAM,CAACsB,SAAS,CAACZ,GAAG,EAAEX,QAAQ,CAACwB,KAAK,CAACd,QAAQ,CAAC,CAAC;AACxD,CAAC,CAAC;AAEJ,OAAO,MAAMe,aAAa,GAAGA,CAC3BnB,IAA4B,EAC5BoB,CAAqC,KAErCzB,MAAM,CAAC0B,GAAG,CAAC,aAAS;EAClB,MAAMjB,QAAQ,GAAG,OAAOV,QAAQ,CAACS,IAAI,EAAa;EAClD,IAAImB,KAAuD;EAC3D,OAAO,OAAOtB,IAAI,CAACP,IAAI,CACrBE,MAAM,CAAC4B,GAAG,CAAC,MAAOD,KAAK,GAAG1B,KAAK,CAAC4B,aAAa,CAACF,KAAK,CAAC,GAAG3B,MAAM,CAAC8B,IAAK,CAAC,EACpE9B,MAAM,CAACO,OAAO,CAACQ,CAAC,IACdU,CAAC,CAACV,CAAC,CAAC,CAACjB,IAAI,CACPE,MAAM,CAACiB,aAAa,CAACC,KAAK,IAAInB,QAAQ,CAACoB,SAAS,CAACV,QAAQ,EAAES,KAAK,CAAC,CAAC,EAClElB,MAAM,CAACgB,IAAI,EACXhB,MAAM,CAAC4B,GAAG,CAACG,MAAM,IAAG;IAClBJ,KAAK,GAAGI,MAAM;EAChB,CAAC,CAAC,CACH,CACF,EACD/B,MAAM,CAACa,OAAO,EACdb,MAAM,CAACsB,SAAS,CAACvB,QAAQ,CAACwB,KAAK,CAACd,QAAQ,CAAC,CAAC,CAC3C;AACH,CAAC,CAAC","ignoreList":[]}
package/mjs/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const LIB_VERSION = "0.108.0";
1
+ export const LIB_VERSION = "0.110.0";
2
2
  //# sourceMappingURL=version.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dfx",
3
- "version": "0.108.0",
3
+ "version": "0.110.0",
4
4
  "description": "Effect-TS discord library",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -35,12 +35,12 @@
35
35
  "sideEffects": [],
36
36
  "author": "Tim Smart <hello@timsmart.co>",
37
37
  "peerDependencies": {
38
- "@effect/platform": "^0.71",
39
- "effect": "^3.11"
38
+ "@effect/platform": "^0.75",
39
+ "effect": "^3.12"
40
40
  },
41
41
  "optionalDependencies": {
42
42
  "discord-verify": "^1.2.0"
43
43
  },
44
- "gitHead": "cd1e95fa8c01ace20f42c79dd8c418c6d396bfdd",
44
+ "gitHead": "17b5315dbd850e124c92945c2cb66da46956d199",
45
45
  "main": "./index.js"
46
46
  }
@@ -46,12 +46,12 @@ export const JsonDiscordWSCodecLive = Layer.succeed(DiscordWSCodec, {
46
46
  const make = Effect.gen(function* () {
47
47
  const encoding = yield* DiscordWSCodec
48
48
 
49
- const connect = ({
50
- onConnecting,
51
- url = "wss://gateway.discord.gg/",
52
- version = 10,
53
- }: OpenOpts) =>
54
- Effect.gen(function* () {
49
+ const connect = Effect.fnUntraced(
50
+ function* ({
51
+ onConnecting,
52
+ url = "wss://gateway.discord.gg/",
53
+ version = 10,
54
+ }: OpenOpts) {
55
55
  const urlRef = yield* Ref.make(
56
56
  `${url}?v=${version}&encoding=${encoding.type}`,
57
57
  )
@@ -113,11 +113,11 @@ const make = Effect.gen(function* () {
113
113
  setUrl,
114
114
  write,
115
115
  } as const
116
- }).pipe(
117
- Effect.annotateLogs({
118
- module: "DiscordGateway/DiscordWS",
119
- }),
120
- )
116
+ },
117
+ Effect.annotateLogs({
118
+ module: "DiscordGateway/DiscordWS",
119
+ }),
120
+ )
121
121
 
122
122
  return { connect } as const
123
123
  })
@@ -64,10 +64,10 @@ export const make = Effect.gen(function* () {
64
64
  return write(p)
65
65
  })
66
66
 
67
- const resume = Effect.gen(function* () {
68
- yield* FiberHandle.clear(reconnectHandle)
69
- yield* setPhase(Phase.Connected)
70
- })
67
+ const resume = Effect.zipRight(
68
+ FiberHandle.clear(reconnectHandle),
69
+ setPhase(Phase.Connected),
70
+ )
71
71
 
72
72
  const onConnecting = setPhase(Phase.Connecting)
73
73
 
@@ -105,10 +105,7 @@ export const make = Effect.gen(function* () {
105
105
  )
106
106
 
107
107
  // delayed reconnect
108
- const delayedReconnect = Effect.gen(function* () {
109
- yield* Effect.sleep(30_000)
110
- yield* socket.write(Reconnect)
111
- })
108
+ const delayedReconnect = Effect.delay(socket.write(Reconnect), 30_000)
112
109
 
113
110
  function* onPayload(p: Discord.GatewayPayload) {
114
111
  if (typeof p.s === "number") {
@@ -25,6 +25,7 @@ import * as Option from "effect/Option"
25
25
  import * as Ref from "effect/Ref"
26
26
  import type { Scope } from "effect/Scope"
27
27
  import * as Redacted from "effect/Redacted"
28
+ import type * as Fiber from "effect/Fiber"
28
29
 
29
30
  export const DiscordRESTErrorTypeId = Symbol.for(
30
31
  "dfx/DiscordREST/DiscordRESTError",
@@ -85,68 +86,60 @@ const make = Effect.gen(function* () {
85
86
  )
86
87
 
87
88
  // Request rate limiting
88
- const requestRateLimit = (
89
+ const requestRateLimit = Effect.fnUntraced(function* (
89
90
  path: string,
90
91
  request: HttpRequest.HttpClientRequest,
91
- ) =>
92
- Effect.Do.pipe(
93
- Effect.let("route", () => routeFromConfig(path, request.method)),
94
- Effect.bind("maybeBucket", ({ route }) => store.getBucketForRoute(route)),
95
- Effect.flatMap(({ maybeBucket, route }) =>
96
- Option.match(maybeBucket, {
97
- onNone: () => invalidRateLimit(route),
98
- onSome: bucket =>
99
- Effect.zipRight(
100
- invalidRateLimit(route),
101
- maybeWait(
102
- `dfx.rest.${bucket.key}`,
103
- millis(bucket.resetAfter),
104
- bucket.limit,
105
- ),
106
- ),
107
- }),
108
- ),
92
+ ) {
93
+ const route = routeFromConfig(path, request.method)
94
+ const maybeBucket = yield* store.getBucketForRoute(route)
95
+ yield* invalidRateLimit(route)
96
+ if (Option.isNone(maybeBucket)) return
97
+ const bucket = maybeBucket.value
98
+ yield* maybeWait(
99
+ `dfx.rest.${bucket.key}`,
100
+ millis(bucket.resetAfter),
101
+ bucket.limit,
109
102
  )
103
+ })
110
104
 
111
105
  // Update rate limit buckets
112
- const updateBuckets = (
106
+ const updateBuckets = Effect.fnUntraced(function* (
113
107
  request: HttpRequest.HttpClientRequest,
114
108
  response: HttpResponse.HttpClientResponse,
115
- ) =>
116
- Effect.Do.pipe(
117
- Effect.let("route", () => routeFromConfig(request.url, request.method)),
118
- Effect.bind("rateLimit", () => rateLimitFromHeaders(response.headers)),
119
- Effect.bind("hasBucket", ({ rateLimit }) =>
120
- store.hasBucket(rateLimit.bucket),
121
- ),
122
- Effect.flatMap(({ hasBucket, rateLimit, route }) => {
123
- const effectsToRun = [
124
- removeBadRoute(route),
125
- store.putBucketRoute(route, rateLimit.bucket),
126
- ]
127
-
128
- if (!hasBucket || rateLimit.limit - 1 === rateLimit.remaining) {
129
- effectsToRun.push(
130
- store.removeCounter(`dfx.rest.?.${route}`),
131
- store.putBucket({
132
- key: rateLimit.bucket,
133
- resetAfter: Duration.toMillis(rateLimit.retryAfter),
134
- limit:
135
- !hasBucket && rateLimit.remaining > 0
136
- ? rateLimit.remaining
137
- : rateLimit.limit,
138
- }),
139
- )
140
- }
109
+ ) {
110
+ const route = routeFromConfig(request.url, request.method)
111
+ const rateLimitOption = rateLimitFromHeaders(response.headers)
112
+ if (Option.isNone(rateLimitOption)) return
113
+ const rateLimit = rateLimitOption.value
114
+ const hasBucket = yield* store.hasBucket(rateLimit.bucket)
115
+ const fibers: Array<Fiber.RuntimeFiber<unknown, unknown>> = []
141
116
 
142
- return Effect.all(effectsToRun, {
143
- concurrency: "unbounded",
144
- discard: true,
145
- })
146
- }),
147
- Effect.ignore,
117
+ fibers.push(yield* Effect.fork(removeBadRoute(route)))
118
+ fibers.push(
119
+ yield* Effect.fork(store.putBucketRoute(route, rateLimit.bucket)),
148
120
  )
149
121
 
122
+ if (!hasBucket || rateLimit.limit - 1 === rateLimit.remaining) {
123
+ fibers.push(
124
+ yield* Effect.fork(store.removeCounter(`dfx.rest.?.${route}`)),
125
+ )
126
+ fibers.push(
127
+ yield* Effect.fork(
128
+ store.putBucket({
129
+ key: rateLimit.bucket,
130
+ resetAfter: Duration.toMillis(rateLimit.retryAfter),
131
+ limit:
132
+ !hasBucket && rateLimit.remaining > 0
133
+ ? rateLimit.remaining
134
+ : rateLimit.limit,
135
+ }),
136
+ ),
137
+ )
138
+ }
139
+
140
+ for (const fiber of fibers) yield* fiber.await
141
+ })
142
+
150
143
  const httpClient = pipe(
151
144
  HttpClient.filterStatusOk(http),
152
145
  HttpClient.mapRequest(req =>