dfx 0.90.1 → 0.90.3

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 (86) hide show
  1. package/Cache/prelude.d.ts.map +1 -1
  2. package/Cache/prelude.js +8 -2
  3. package/Cache/prelude.js.map +1 -1
  4. package/Cache.d.ts +11 -7
  5. package/Cache.d.ts.map +1 -1
  6. package/Cache.js +12 -13
  7. package/Cache.js.map +1 -1
  8. package/DiscordGateway/DiscordWS.d.ts.map +1 -1
  9. package/DiscordGateway/DiscordWS.js +2 -2
  10. package/DiscordGateway/DiscordWS.js.map +1 -1
  11. package/DiscordGateway/Shard.d.ts +2 -2
  12. package/DiscordGateway/Shard.d.ts.map +1 -1
  13. package/DiscordGateway/Shard.js +25 -11
  14. package/DiscordGateway/Shard.js.map +1 -1
  15. package/DiscordGateway/Sharder.d.ts.map +1 -1
  16. package/DiscordGateway/Sharder.js +1 -1
  17. package/DiscordGateway/Sharder.js.map +1 -1
  18. package/DiscordREST.d.ts +10 -5
  19. package/DiscordREST.d.ts.map +1 -1
  20. package/DiscordREST.js +15 -9
  21. package/DiscordREST.js.map +1 -1
  22. package/Interactions/context.d.ts +14 -21
  23. package/Interactions/context.d.ts.map +1 -1
  24. package/Interactions/context.js +12 -34
  25. package/Interactions/context.js.map +1 -1
  26. package/Interactions/definitions.d.ts +3 -2
  27. package/Interactions/definitions.d.ts.map +1 -1
  28. package/Interactions/error.d.ts +2 -0
  29. package/Interactions/error.d.ts.map +1 -0
  30. package/Interactions/error.js +8 -0
  31. package/Interactions/error.js.map +1 -0
  32. package/Interactions/gateway.d.ts.map +1 -1
  33. package/Interactions/gateway.js +1 -1
  34. package/Interactions/gateway.js.map +1 -1
  35. package/Interactions/webhook.d.ts +9 -4
  36. package/Interactions/webhook.d.ts.map +1 -1
  37. package/Interactions/webhook.js +6 -8
  38. package/Interactions/webhook.js.map +1 -1
  39. package/mjs/Cache/prelude.mjs +8 -2
  40. package/mjs/Cache/prelude.mjs.map +1 -1
  41. package/mjs/Cache.mjs +10 -12
  42. package/mjs/Cache.mjs.map +1 -1
  43. package/mjs/DiscordGateway/DiscordWS.mjs +2 -2
  44. package/mjs/DiscordGateway/DiscordWS.mjs.map +1 -1
  45. package/mjs/DiscordGateway/Shard.mjs +25 -11
  46. package/mjs/DiscordGateway/Shard.mjs.map +1 -1
  47. package/mjs/DiscordGateway/Sharder.mjs +1 -1
  48. package/mjs/DiscordGateway/Sharder.mjs.map +1 -1
  49. package/mjs/DiscordREST.mjs +14 -8
  50. package/mjs/DiscordREST.mjs.map +1 -1
  51. package/mjs/Interactions/context.mjs +11 -31
  52. package/mjs/Interactions/context.mjs.map +1 -1
  53. package/mjs/Interactions/error.mjs +2 -0
  54. package/mjs/Interactions/error.mjs.map +1 -0
  55. package/mjs/Interactions/gateway.mjs +1 -1
  56. package/mjs/Interactions/gateway.mjs.map +1 -1
  57. package/mjs/Interactions/webhook.mjs +6 -8
  58. package/mjs/Interactions/webhook.mjs.map +1 -1
  59. package/mjs/utils/Effect.mjs +2 -2
  60. package/mjs/utils/Effect.mjs.map +1 -1
  61. package/mjs/version.mjs +1 -1
  62. package/package.json +4 -4
  63. package/src/Cache/prelude.ts +6 -2
  64. package/src/Cache.ts +19 -8
  65. package/src/DiscordGateway/DiscordWS.ts +2 -0
  66. package/src/DiscordGateway/Shard.ts +17 -6
  67. package/src/DiscordGateway/Sharder.ts +1 -0
  68. package/src/DiscordREST.ts +21 -9
  69. package/src/Interactions/context.ts +24 -45
  70. package/src/Interactions/definitions.ts +2 -2
  71. package/src/Interactions/error.ts +3 -0
  72. package/src/Interactions/gateway.ts +1 -0
  73. package/src/Interactions/webhook.ts +7 -5
  74. package/src/utils/Effect.ts +2 -0
  75. package/src/version.ts +1 -1
  76. package/utils/Effect.d.ts.map +1 -1
  77. package/utils/Effect.js +2 -2
  78. package/utils/Effect.js.map +1 -1
  79. package/version.d.ts +1 -1
  80. package/version.js +1 -1
  81. package/DiscordGateway/WS.d.ts +0 -38
  82. package/DiscordGateway/WS.d.ts.map +0 -1
  83. package/DiscordGateway/WS.js +0 -115
  84. package/DiscordGateway/WS.js.map +0 -1
  85. package/mjs/DiscordGateway/WS.mjs +0 -104
  86. package/mjs/DiscordGateway/WS.mjs.map +0 -1
@@ -8,6 +8,8 @@ import * as Layer from "effect/Layer";
8
8
  import { handlers } from "dfx/Interactions/handlers";
9
9
  import { Interaction } from "dfx/Interactions/index";
10
10
  import * as Verify from "discord-verify";
11
+ import { RefailError } from "@effect/platform/Error";
12
+ import { InteractionsErrorTypeId } from "dfx/Interactions/error";
11
13
  export class BadWebhookSignature {
12
14
  _tag = "BadWebhookSignature";
13
15
  }
@@ -29,20 +31,16 @@ const makeConfig = ({
29
31
  export const WebhookConfig = /*#__PURE__*/GenericTag("dfx/Interactions/WebhookConfig");
30
32
  export const layer = opts => Layer.succeed(WebhookConfig, makeConfig(opts));
31
33
  export const layerConfig = config => Layer.effect(WebhookConfig, Effect.map(config, makeConfig));
32
- export class WebhookParseError {
33
- reason;
34
- _tag = "WebhookParseError";
35
- constructor(reason) {
36
- this.reason = reason;
37
- }
38
- }
34
+ export class WebhookParseError extends RefailError(InteractionsErrorTypeId, "WebhookParseError") {}
39
35
  const fromHeadersAndBody = (headers, body) => Effect.tap(WebhookConfig, ({
40
36
  algorithm,
41
37
  crypto,
42
38
  publicKey
43
39
  }) => checkSignature(publicKey, headers, body, crypto, algorithm)).pipe(Effect.flatMap(() => Effect.try({
44
40
  try: () => JSON.parse(body),
45
- catch: reason => new WebhookParseError(reason)
41
+ catch: error => new WebhookParseError({
42
+ error
43
+ })
46
44
  })));
47
45
  const run = (definitions, handleResponse) => {
48
46
  const handler = handlers(definitions, handleResponse);
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.mjs","names":["Chunk","GenericTag","identity","Option","Secret","Effect","Layer","handlers","Interaction","Verify","BadWebhookSignature","_tag","checkSignature","publicKey","headers","body","crypto","algorithm","all","signature","fromNullable","timestamp","pipe","flatMap","_","promise","verify","filterOrFail","catchAllCause","fail","asUnit","makeConfig","applicationId","value","PlatformAlgorithm","WebhookConfig","layer","opts","succeed","layerConfig","config","effect","map","WebhookParseError","reason","constructor","fromHeadersAndBody","tap","try","JSON","parse","catch","run","definitions","handleResponse","handler","interaction","provideService","type","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","Secret","Effect","Layer","handlers","Interaction","Verify","RefailError","InteractionsErrorTypeId","BadWebhookSignature","_tag","checkSignature","publicKey","headers","body","crypto","algorithm","all","signature","fromNullable","timestamp","pipe","flatMap","_","promise","verify","filterOrFail","catchAllCause","fail","asUnit","makeConfig","applicationId","value","PlatformAlgorithm","WebhookConfig","layer","opts","succeed","layerConfig","config","effect","map","WebhookParseError","fromHeadersAndBody","tap","try","JSON","parse","catch","error","run","definitions","handleResponse","handler","interaction","provideService","type","makeHandler","ix","handle","d","_i","r","success","makeSimpleHandler"],"sources":["../../src/Interactions/webhook.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ import * as Effect from "effect/Effect";
4
4
  import * as PubSub from "effect/PubSub";
5
5
  import * as Queue from "effect/Queue";
6
6
  export const subscribeForEachPar = (self, effect) => Effect.flatMap(Deferred.make(), deferred => {
7
- const run = pipe(PubSub.subscribe(self), Effect.flatMap(queue => Effect.forever(Effect.flatMap(Queue.take(queue), _ => Effect.fork(Effect.catchAllCause(effect(_), _ => Deferred.failCause(deferred, _)))))), Effect.scoped);
7
+ const run = pipe(PubSub.subscribe(self), Effect.flatMap(queue => Effect.forever(Effect.flatMap(Queue.take(queue), _ => Effect.fork(Effect.catchAllCause(effect(_), _ => Deferred.failCause(deferred, _)))))), Effect.scoped, Effect.interruptible);
8
8
  return Effect.all([run, Deferred.await(deferred)], {
9
9
  concurrency: "unbounded",
10
10
  discard: true
@@ -14,7 +14,7 @@ export const foreverSwitch = (self, f) => pipe(Effect.all([Deferred.make(), Effe
14
14
  let fiber;
15
15
  const run = pipe(self, Effect.tap(() => fiber ? fiber.interruptAsFork(fiberId) : Effect.unit), Effect.flatMap(_ => pipe(f(_), Effect.tapErrorCause(_ => Deferred.failCause(causeDeferred, _)), Effect.fork)), Effect.tap(fiber_ => Effect.sync(() => {
16
16
  fiber = fiber_;
17
- })), Effect.forever);
17
+ })), Effect.forever, Effect.interruptible);
18
18
  return Effect.all([run, Deferred.await(causeDeferred)], {
19
19
  concurrency: "unbounded",
20
20
  discard: true
@@ -1 +1 @@
1
- {"version":3,"file":"Effect.mjs","names":["pipe","Deferred","Effect","PubSub","Queue","subscribeForEachPar","self","effect","flatMap","make","deferred","run","subscribe","queue","forever","take","_","fork","catchAllCause","failCause","scoped","all","await","concurrency","discard","foreverSwitch","f","fiberId","causeDeferred","fiber","tap","interruptAsFork","unit","tapErrorCause","fiber_","sync"],"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;AAEvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,OAAO,MAAMC,mBAAmB,GAAGA,CACjCC,IAAsB,EACtBC,MAAwC,KAExCL,MAAM,CAACM,OAAO,CAACP,QAAQ,CAACQ,IAAI,EAAY,EAAEC,QAAQ,IAAG;EACnD,MAAMC,GAAG,GAAGX,IAAI,CACdG,MAAM,CAACS,SAAS,CAACN,IAAI,CAAC,EACtBJ,MAAM,CAACM,OAAO,CAACK,KAAK,IAClBX,MAAM,CAACY,OAAO,CACZZ,MAAM,CAACM,OAAO,CAACJ,KAAK,CAACW,IAAI,CAACF,KAAK,CAAC,EAAEG,CAAC,IACjCd,MAAM,CAACe,IAAI,CACTf,MAAM,CAACgB,aAAa,CAACX,MAAM,CAACS,CAAC,CAAC,EAAEA,CAAC,IAC/Bf,QAAQ,CAACkB,SAAS,CAACT,QAAQ,EAAEM,CAAC,CAAC,CAChC,CACF,CACF,CACF,CACF,EACDd,MAAM,CAACkB,MAAM,CACd;EAED,OAAOlB,MAAM,CAACmB,GAAG,CAAC,CAACV,GAAG,EAAEV,QAAQ,CAACqB,KAAK,CAACZ,QAAQ,CAAC,CAAC,EAAE;IACjDa,WAAW,EAAE,WAAW;IACxBC,OAAO,EAAE;GACV,CAA+B;AAClC,CAAC,CAAC;AAEJ,OAAO,MAAMC,aAAa,GAAGA,CAC3BnB,IAA4B,EAC5BoB,CAAqC,KAErC1B,IAAI,CACFE,MAAM,CAACmB,GAAG,CAAC,CAACpB,QAAQ,CAACQ,IAAI,EAAa,EAAEP,MAAM,CAACyB,OAAO,CAAC,CAAC,EACxDzB,MAAM,CAACM,OAAO,CAAC,CAAC,CAACoB,aAAa,EAAED,OAAO,CAAC,KAAI;EAC1C,IAAIE,KAAuD;EAE3D,MAAMlB,GAAG,GAAGX,IAAI,CACdM,IAAI,EACJJ,MAAM,CAAC4B,GAAG,CAAC,MACTD,KAAK,GAAGA,KAAK,CAACE,eAAe,CAACJ,OAAO,CAAC,GAAGzB,MAAM,CAAC8B,IAAI,CACrD,EACD9B,MAAM,CAACM,OAAO,CAACQ,CAAC,IACdhB,IAAI,CACF0B,CAAC,CAACV,CAAC,CAAC,EACJd,MAAM,CAAC+B,aAAa,CAACjB,CAAC,IAAIf,QAAQ,CAACkB,SAAS,CAACS,aAAa,EAAEZ,CAAC,CAAC,CAAC,EAC/Dd,MAAM,CAACe,IAAI,CACZ,CACF,EACDf,MAAM,CAAC4B,GAAG,CAACI,MAAM,IACfhC,MAAM,CAACiC,IAAI,CAAC,MAAK;IACfN,KAAK,GAAGK,MAAM;EAChB,CAAC,CAAC,CACH,EACDhC,MAAM,CAACY,OAAO,CACf;EAED,OAAOZ,MAAM,CAACmB,GAAG,CAAC,CAACV,GAAG,EAAEV,QAAQ,CAACqB,KAAK,CAACM,aAAa,CAAC,CAAC,EAAE;IACtDL,WAAW,EAAE,WAAW;IACxBC,OAAO,EAAE;GACV,CAAyC;AAC5C,CAAC,CAAC,CACH","ignoreList":[]}
1
+ {"version":3,"file":"Effect.mjs","names":["pipe","Deferred","Effect","PubSub","Queue","subscribeForEachPar","self","effect","flatMap","make","deferred","run","subscribe","queue","forever","take","_","fork","catchAllCause","failCause","scoped","interruptible","all","await","concurrency","discard","foreverSwitch","f","fiberId","causeDeferred","fiber","tap","interruptAsFork","unit","tapErrorCause","fiber_","sync"],"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;AAEvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,OAAO,MAAMC,mBAAmB,GAAGA,CACjCC,IAAsB,EACtBC,MAAwC,KAExCL,MAAM,CAACM,OAAO,CAACP,QAAQ,CAACQ,IAAI,EAAY,EAAEC,QAAQ,IAAG;EACnD,MAAMC,GAAG,GAAGX,IAAI,CACdG,MAAM,CAACS,SAAS,CAACN,IAAI,CAAC,EACtBJ,MAAM,CAACM,OAAO,CAACK,KAAK,IAClBX,MAAM,CAACY,OAAO,CACZZ,MAAM,CAACM,OAAO,CAACJ,KAAK,CAACW,IAAI,CAACF,KAAK,CAAC,EAAEG,CAAC,IACjCd,MAAM,CAACe,IAAI,CACTf,MAAM,CAACgB,aAAa,CAACX,MAAM,CAACS,CAAC,CAAC,EAAEA,CAAC,IAC/Bf,QAAQ,CAACkB,SAAS,CAACT,QAAQ,EAAEM,CAAC,CAAC,CAChC,CACF,CACF,CACF,CACF,EACDd,MAAM,CAACkB,MAAM,EACblB,MAAM,CAACmB,aAAa,CACrB;EAED,OAAOnB,MAAM,CAACoB,GAAG,CAAC,CAACX,GAAG,EAAEV,QAAQ,CAACsB,KAAK,CAACb,QAAQ,CAAC,CAAC,EAAE;IACjDc,WAAW,EAAE,WAAW;IACxBC,OAAO,EAAE;GACV,CAA+B;AAClC,CAAC,CAAC;AAEJ,OAAO,MAAMC,aAAa,GAAGA,CAC3BpB,IAA4B,EAC5BqB,CAAqC,KAErC3B,IAAI,CACFE,MAAM,CAACoB,GAAG,CAAC,CAACrB,QAAQ,CAACQ,IAAI,EAAa,EAAEP,MAAM,CAAC0B,OAAO,CAAC,CAAC,EACxD1B,MAAM,CAACM,OAAO,CAAC,CAAC,CAACqB,aAAa,EAAED,OAAO,CAAC,KAAI;EAC1C,IAAIE,KAAuD;EAE3D,MAAMnB,GAAG,GAAGX,IAAI,CACdM,IAAI,EACJJ,MAAM,CAAC6B,GAAG,CAAC,MACTD,KAAK,GAAGA,KAAK,CAACE,eAAe,CAACJ,OAAO,CAAC,GAAG1B,MAAM,CAAC+B,IAAI,CACrD,EACD/B,MAAM,CAACM,OAAO,CAACQ,CAAC,IACdhB,IAAI,CACF2B,CAAC,CAACX,CAAC,CAAC,EACJd,MAAM,CAACgC,aAAa,CAAClB,CAAC,IAAIf,QAAQ,CAACkB,SAAS,CAACU,aAAa,EAAEb,CAAC,CAAC,CAAC,EAC/Dd,MAAM,CAACe,IAAI,CACZ,CACF,EACDf,MAAM,CAAC6B,GAAG,CAACI,MAAM,IACfjC,MAAM,CAACkC,IAAI,CAAC,MAAK;IACfN,KAAK,GAAGK,MAAM;EAChB,CAAC,CAAC,CACH,EACDjC,MAAM,CAACY,OAAO,EACdZ,MAAM,CAACmB,aAAa,CACrB;EAED,OAAOnB,MAAM,CAACoB,GAAG,CAAC,CAACX,GAAG,EAAEV,QAAQ,CAACsB,KAAK,CAACM,aAAa,CAAC,CAAC,EAAE;IACtDL,WAAW,EAAE,WAAW;IACxBC,OAAO,EAAE;GACV,CAAyC;AAC5C,CAAC,CAAC,CACH","ignoreList":[]}
package/mjs/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const LIB_VERSION = "0.90.1";
1
+ export const LIB_VERSION = "0.90.3";
2
2
  //# sourceMappingURL=version.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dfx",
3
- "version": "0.90.1",
3
+ "version": "0.90.3",
4
4
  "description": "Effect-TS discord library",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -35,8 +35,8 @@
35
35
  "sideEffects": [],
36
36
  "author": "Tim Smart <hello@timsmart.co>",
37
37
  "peerDependencies": {
38
- "@effect/platform": "^0.48.2",
39
- "effect": "^2.4.6"
38
+ "@effect/platform": "^0.48.7",
39
+ "effect": "^2.4.7"
40
40
  },
41
41
  "optionalDependencies": {
42
42
  "bufferutil": "^4.0.8",
@@ -44,6 +44,6 @@
44
44
  "utf-8-validate": "^6.0.3",
45
45
  "zlib-sync": "^0.1.9"
46
46
  },
47
- "gitHead": "a0646af3c95517d380611a89d8981b80cfc1ebe0",
47
+ "gitHead": "848c3faff6aa1455f3c919677506ef1a9dd72273",
48
48
  "main": "./index.js"
49
49
  }
@@ -238,7 +238,10 @@ export const roles = <RM, EM, E>(
238
238
  return yield* _(
239
239
  makeWithParent({
240
240
  driver,
241
- id: _ => Effect.fail(new CacheMissError("RolesCache/id", _.id)),
241
+ id: _ =>
242
+ Effect.fail(
243
+ new CacheMissError({ cacheName: "RolesCache/id", id: _.id }),
244
+ ),
242
245
  ops: opsWithParent({
243
246
  id: (a: Discord.Role) => a.id,
244
247
  fromParent: Stream.map(gateway.fromDispatch("GUILD_CREATE"), g => [
@@ -262,7 +265,8 @@ export const roles = <RM, EM, E>(
262
265
  g => g.id,
263
266
  ),
264
267
  }),
265
- onMiss: (_, id) => Effect.fail(new CacheMissError("RolesCache", id)),
268
+ onMiss: (_, id) =>
269
+ Effect.fail(new CacheMissError({ cacheName: "RolesCache", id })),
266
270
  onParentMiss: guildId =>
267
271
  rest
268
272
  .getGuildRoles(guildId)
package/src/Cache.ts CHANGED
@@ -1,9 +1,10 @@
1
+ import { TypeIdError } from "@effect/platform/Error"
2
+ import type { CacheDriver, ParentCacheDriver } from "dfx/Cache/driver"
3
+ import * as Effect from "effect/Effect"
1
4
  import * as Option from "effect/Option"
2
5
  import * as Schedule from "effect/Schedule"
3
6
  import type * as Scope from "effect/Scope"
4
- import * as Effect from "effect/Effect"
5
7
  import * as Stream from "effect/Stream"
6
- import type { CacheDriver, ParentCacheDriver } from "dfx/Cache/driver"
7
8
 
8
9
  export * from "dfx/Cache/driver"
9
10
  export {
@@ -97,6 +98,7 @@ export const makeWithParent = <EOps, EDriver, EMiss, EPMiss, A>({
97
98
  Effect.tapErrorCause(_ => Effect.logError("ops error, restarting", _)),
98
99
  Effect.retry(retryPolicy),
99
100
  Effect.forkScoped,
101
+ Effect.interruptible,
100
102
  )
101
103
  yield* _(
102
104
  driver.run,
@@ -105,6 +107,7 @@ export const makeWithParent = <EOps, EDriver, EMiss, EPMiss, A>({
105
107
  ),
106
108
  Effect.retry(retryPolicy),
107
109
  Effect.forkScoped,
110
+ Effect.interruptible,
108
111
  )
109
112
 
110
113
  const get = (parentId: string, id: string) =>
@@ -208,6 +211,7 @@ export const make = <EOps, EDriver, EMiss, A>({
208
211
  Effect.tapErrorCause(_ => Effect.logError("ops error, restarting", _)),
209
212
  Effect.retry(retryPolicy),
210
213
  Effect.forkScoped,
214
+ Effect.interruptible,
211
215
  )
212
216
 
213
217
  yield* _(
@@ -217,6 +221,7 @@ export const make = <EOps, EDriver, EMiss, A>({
217
221
  ),
218
222
  Effect.retry(retryPolicy),
219
223
  Effect.forkScoped,
224
+ Effect.interruptible,
220
225
  )
221
226
 
222
227
  const get = (id: string) =>
@@ -249,10 +254,16 @@ export const make = <EOps, EDriver, EMiss, A>({
249
254
  }),
250
255
  )
251
256
 
252
- export class CacheMissError {
253
- readonly _tag = "CacheMissError"
254
- constructor(
255
- readonly cacheName: string,
256
- readonly id: string,
257
- ) {}
257
+ export const CacheErrorTypeId = Symbol.for("dfx/Cache/CacheError")
258
+
259
+ export class CacheMissError extends TypeIdError(
260
+ CacheErrorTypeId,
261
+ "CacheMissError",
262
+ )<{
263
+ cacheName: string
264
+ id: string
265
+ }> {
266
+ get message() {
267
+ return `Cache miss for "${this.cacheName}" with id: ${this.id}`
268
+ }
258
269
  }
@@ -78,6 +78,7 @@ const make = Effect.gen(function* (_) {
78
78
  Effect.forever,
79
79
  Effect.annotateLogs("channel", "outbound"),
80
80
  Effect.forkScoped,
81
+ Effect.interruptible,
81
82
  )
82
83
  yield* _(
83
84
  onConnecting,
@@ -103,6 +104,7 @@ const make = Effect.gen(function* (_) {
103
104
  ),
104
105
  Effect.annotateLogs("channel", "inbound"),
105
106
  Effect.forkScoped,
107
+ Effect.interruptible,
106
108
  )
107
109
 
108
110
  return {
@@ -60,7 +60,7 @@ export const make = Effect.gen(function* (_) {
60
60
 
61
61
  const heartbeatSend = (p: Message) =>
62
62
  Effect.flatMap(Ref.get(phase), phase =>
63
- phase === Phase.Connected
63
+ phase !== Phase.Connecting
64
64
  ? Queue.offer(outboundQueue, p)
65
65
  : Effect.succeed(false),
66
66
  )
@@ -134,6 +134,7 @@ export const make = Effect.gen(function* (_) {
134
134
  yield* _(
135
135
  Heartbeats.send(hellos, acks, latestSequence, heartbeatSend),
136
136
  Effect.forkScoped,
137
+ Effect.interruptible,
137
138
  )
138
139
 
139
140
  // identify
@@ -155,26 +156,34 @@ export const make = Effect.gen(function* (_) {
155
156
  Effect.zipRight(maybeUpdateUrl(p)),
156
157
  Effect.tap(() => {
157
158
  switch (p.op) {
158
- case Discord.GatewayOpcode.HELLO:
159
+ case Discord.GatewayOpcode.HELLO: {
159
160
  return pipe(
160
161
  Effect.tap(identify, prioritySend),
161
162
  Effect.zipRight(setPhase(Phase.Handshake)),
162
163
  Effect.zipRight(Queue.offer(hellos, p)),
163
164
  )
164
- case Discord.GatewayOpcode.HEARTBEAT_ACK:
165
+ }
166
+ case Discord.GatewayOpcode.HEARTBEAT_ACK: {
165
167
  return Queue.offer(acks, p)
166
- case Discord.GatewayOpcode.INVALID_SESSION:
168
+ }
169
+ case Discord.GatewayOpcode.INVALID_SESSION: {
167
170
  return Effect.tap(
168
171
  InvalidSession.fromPayload(p, latestReady),
169
172
  send,
170
173
  )
171
- case Discord.GatewayOpcode.DISPATCH:
174
+ }
175
+ case Discord.GatewayOpcode.DISPATCH: {
172
176
  if (p.t === "READY" || p.t === "RESUMED") {
173
177
  return Effect.zipRight(resume, PubSub.publish(hub, p))
174
178
  }
175
179
  return PubSub.publish(hub, p)
176
- default:
180
+ }
181
+ case Discord.GatewayOpcode.RECONNECT: {
182
+ return prioritySend(Reconnect)
183
+ }
184
+ default: {
177
185
  return Effect.unit
186
+ }
178
187
  }
179
188
  }),
180
189
  )
@@ -184,6 +193,7 @@ export const make = Effect.gen(function* (_) {
184
193
  Effect.tap(send),
185
194
  Effect.forever,
186
195
  Effect.forkScoped,
196
+ Effect.interruptible,
187
197
  )
188
198
 
189
199
  yield* _(
@@ -191,6 +201,7 @@ export const make = Effect.gen(function* (_) {
191
201
  Effect.flatMap(onPayload),
192
202
  Effect.forever,
193
203
  Effect.forkScoped,
204
+ Effect.interruptible,
194
205
  )
195
206
 
196
207
  return { id: shard, send } as const
@@ -92,6 +92,7 @@ const make = Effect.gen(function* (_) {
92
92
  Effect.ensuring(Ref.set(currentShards, HashSet.empty())),
93
93
  Effect.forever,
94
94
  Effect.forkScoped,
95
+ Effect.interruptible,
95
96
  )
96
97
 
97
98
  return { shards: Ref.get(currentShards) } as const
@@ -21,13 +21,25 @@ import * as Discord from "dfx/types"
21
21
  import { LIB_VERSION } from "dfx/version"
22
22
  import type { Scope } from "effect/Scope"
23
23
  import * as Effectable from "effect/Effectable"
24
+ import { TypeIdError } from "@effect/platform/Error"
24
25
 
25
- export class DiscordRESTError {
26
- readonly _tag = "DiscordRESTError"
27
- constructor(
28
- readonly error: Http.error.HttpClientError,
29
- readonly body?: unknown,
30
- ) {}
26
+ export const DiscordRESTErrorTypeId = Symbol.for(
27
+ "dfx/DiscordREST/DiscordRESTError",
28
+ )
29
+
30
+ export class DiscordRESTError extends TypeIdError(
31
+ DiscordRESTErrorTypeId,
32
+ "DiscordRESTError",
33
+ )<{
34
+ error: Http.error.HttpClientError
35
+ body?: unknown
36
+ }> {
37
+ get message() {
38
+ const httpMessage = this.error.message
39
+ return this.body !== undefined
40
+ ? `${httpMessage}: ${JSON.stringify(this.body)}`
41
+ : httpMessage
42
+ }
31
43
  }
32
44
 
33
45
  const make = Effect.gen(function* (_) {
@@ -146,12 +158,12 @@ const make = Effect.gen(function* (_) {
146
158
  Http.client.catchAll(error =>
147
159
  error.reason === "StatusCode"
148
160
  ? error.response.json.pipe(
149
- Effect.mapError(_ => new DiscordRESTError(_)),
161
+ Effect.mapError(_ => new DiscordRESTError({ error })),
150
162
  Effect.flatMap(body =>
151
- Effect.fail(new DiscordRESTError(error, body)),
163
+ Effect.fail(new DiscordRESTError({ error, body })),
152
164
  ),
153
165
  )
154
- : Effect.fail(new DiscordRESTError(error)),
166
+ : Effect.fail(new DiscordRESTError({ error })),
155
167
  ),
156
168
  )
157
169
 
@@ -1,10 +1,13 @@
1
+ import { TypeIdError } from "@effect/platform/Error"
2
+ import * as IxHelpers from "dfx/Helpers/interactions"
3
+ import { InteractionsErrorTypeId } from "dfx/Interactions/error"
4
+ import type * as Discord from "dfx/types"
5
+ import type { NoSuchElementException } from "effect/Cause"
1
6
  import { GenericTag } from "effect/Context"
7
+ import * as Effect from "effect/Effect"
2
8
  import type * as HashMap from "effect/HashMap"
3
9
  import * as Option from "effect/Option"
4
10
  import * as Arr from "effect/ReadonlyArray"
5
- import * as Effect from "effect/Effect"
6
- import * as IxHelpers from "dfx/Helpers/interactions"
7
- import type * as Discord from "dfx/types"
8
11
 
9
12
  export interface DiscordInteraction {
10
13
  readonly _: unique symbol
@@ -59,44 +62,31 @@ export const SubCommandContext = GenericTag<
59
62
  SubCommandContext
60
63
  >("dfx/Interactions/SubCommandContext")
61
64
 
62
- export class ResolvedDataNotFound {
63
- readonly _tag = "ResolvedDataNotFound"
64
- constructor(
65
- readonly data: Discord.Interaction,
66
- readonly name?: string,
67
- ) {}
68
- }
69
-
70
65
  export const resolvedValues = <A>(
71
66
  f: (id: Discord.Snowflake, data: Discord.ResolvedDatum) => A | undefined,
72
- ): Effect.Effect<ReadonlyArray<A>, ResolvedDataNotFound, DiscordInteraction> =>
73
- Effect.flatMap(Interaction, ix =>
74
- Effect.mapError(
75
- IxHelpers.resolveValues(f)(ix),
76
- () => new ResolvedDataNotFound(ix),
77
- ),
78
- )
67
+ ): Effect.Effect<
68
+ ReadonlyArray<A>,
69
+ NoSuchElementException,
70
+ DiscordInteraction
71
+ > => Effect.flatMap(Interaction, ix => IxHelpers.resolveValues(f)(ix))
79
72
 
80
73
  export const resolved = <A>(
81
74
  name: string,
82
75
  f: (id: Discord.Snowflake, data: Discord.ResolvedDatum) => A | undefined,
83
- ): Effect.Effect<A, ResolvedDataNotFound, DiscordInteraction> =>
84
- Effect.flatMap(Interaction, ix =>
85
- Effect.mapError(
86
- IxHelpers.resolveOptionValue(name, f)(ix),
87
- () => new ResolvedDataNotFound(ix, name),
88
- ),
89
- )
76
+ ): Effect.Effect<A, NoSuchElementException, DiscordInteraction> =>
77
+ Effect.flatMap(Interaction, ix => IxHelpers.resolveOptionValue(name, f)(ix))
90
78
 
91
79
  export const focusedOptionValue = Effect.map(
92
80
  FocusedOptionContext,
93
81
  _ => _.focusedOption.value ?? "",
94
82
  )
95
83
 
96
- export class SubCommandNotFound {
97
- readonly _tag = "SubCommandNotFound"
98
- constructor(readonly data: Discord.ApplicationCommandDatum) {}
99
- }
84
+ export class SubCommandNotFound extends TypeIdError(
85
+ InteractionsErrorTypeId,
86
+ "SubCommandNotFound",
87
+ )<{
88
+ data: Discord.ApplicationCommandDatum
89
+ }> {}
100
90
 
101
91
  export const handleSubCommands = <
102
92
  NER extends Record<
@@ -128,7 +118,7 @@ export const handleSubCommands = <
128
118
  Effect.flatMap(data =>
129
119
  Effect.mapError(
130
120
  Arr.findFirst(IxHelpers.allSubCommands(data), _ => !!commands[_.name]),
131
- () => new SubCommandNotFound(data),
121
+ () => new SubCommandNotFound({ data }),
132
122
  ),
133
123
  ),
134
124
  Effect.flatMap(command =>
@@ -188,18 +178,7 @@ export const modalValues = Effect.map(ModalSubmitData, IxHelpers.componentsMap)
188
178
  export const modalValueOption = (name: string) =>
189
179
  Effect.map(ModalSubmitData, IxHelpers.componentValue(name))
190
180
 
191
- export class ModalValueNotFound {
192
- readonly _tag = "ModalValueNotFound"
193
- constructor(
194
- readonly data: Discord.ModalSubmitDatum,
195
- readonly name: string,
196
- ) {}
197
- }
198
-
199
- export const modalValue = (name: string) =>
200
- Effect.flatMap(ModalSubmitData, data =>
201
- Effect.mapError(
202
- IxHelpers.componentValue(name)(data),
203
- () => new ModalValueNotFound(data, name),
204
- ),
205
- )
181
+ export const modalValue = (
182
+ name: string,
183
+ ): Effect.Effect<string, NoSuchElementException, DiscordModalSubmit> =>
184
+ Effect.flatMap(ModalSubmitData, data => IxHelpers.componentValue(name)(data))
@@ -6,10 +6,10 @@ import type {
6
6
  DiscordInteraction,
7
7
  DiscordMessageComponent,
8
8
  DiscordModalSubmit,
9
- ResolvedDataNotFound,
10
9
  SubCommandContext,
11
10
  } from "dfx/Interactions/context"
12
11
  import type * as Discord from "dfx/types"
12
+ import type { NoSuchElementException } from "effect/Cause"
13
13
 
14
14
  export type InteractionDefinition<R, E> =
15
15
  | GlobalApplicationCommand<R, E>
@@ -143,7 +143,7 @@ export interface CommandHelper<A> {
143
143
  resolve: <T>(
144
144
  name: AllResolvables<A>["name"],
145
145
  f: (id: Discord.Snowflake, data: Discord.ResolvedDatum) => T | undefined,
146
- ) => Effect.Effect<T, ResolvedDataNotFound, DiscordInteraction>
146
+ ) => Effect.Effect<T, NoSuchElementException, DiscordInteraction>
147
147
 
148
148
  option: (
149
149
  name: AllCommandOptions<A>["name"],
@@ -0,0 +1,3 @@
1
+ export const InteractionsErrorTypeId = Symbol.for(
2
+ "dfx/Interactions/InteractionsError",
3
+ )
@@ -146,6 +146,7 @@ const makeRegistry = Effect.gen(function* (_) {
146
146
  ),
147
147
  ),
148
148
  Effect.forkScoped,
149
+ Effect.interruptible,
149
150
  )
150
151
 
151
152
  return { register } as const
@@ -18,6 +18,8 @@ import type {
18
18
  import { Interaction } from "dfx/Interactions/index"
19
19
  import type * as Discord from "dfx/types"
20
20
  import * as Verify from "discord-verify"
21
+ import { RefailError } from "@effect/platform/Error"
22
+ import { InteractionsErrorTypeId } from "dfx/Interactions/error"
21
23
 
22
24
  export class BadWebhookSignature {
23
25
  readonly _tag = "BadWebhookSignature"
@@ -88,10 +90,10 @@ export const layerConfig: (
88
90
  config: Config.Config<MakeConfigOpts>,
89
91
  ) => Layer.effect(WebhookConfig, Effect.map(config, makeConfig))
90
92
 
91
- export class WebhookParseError {
92
- readonly _tag = "WebhookParseError"
93
- constructor(readonly reason: unknown) {}
94
- }
93
+ export class WebhookParseError extends RefailError(
94
+ InteractionsErrorTypeId,
95
+ "WebhookParseError",
96
+ )<{}> {}
95
97
 
96
98
  const fromHeadersAndBody = (headers: Headers, body: string) =>
97
99
  Effect.tap(WebhookConfig, ({ algorithm, crypto, publicKey }) =>
@@ -100,7 +102,7 @@ const fromHeadersAndBody = (headers: Headers, body: string) =>
100
102
  Effect.flatMap(() =>
101
103
  Effect.try({
102
104
  try: () => JSON.parse(body) as Discord.Interaction,
103
- catch: reason => new WebhookParseError(reason),
105
+ catch: error => new WebhookParseError({ error }),
104
106
  }),
105
107
  ),
106
108
  )
@@ -24,6 +24,7 @@ export const subscribeForEachPar = <R, E, A, X>(
24
24
  ),
25
25
  ),
26
26
  Effect.scoped,
27
+ Effect.interruptible,
27
28
  )
28
29
 
29
30
  return Effect.all([run, Deferred.await(deferred)], {
@@ -59,6 +60,7 @@ export const foreverSwitch = <R, E, A, R1, E1, X>(
59
60
  }),
60
61
  ),
61
62
  Effect.forever,
63
+ Effect.interruptible,
62
64
  )
63
65
 
64
66
  return Effect.all([run, Deferred.await(causeDeferred)], {
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const LIB_VERSION = "0.90.1";
1
+ export const LIB_VERSION = "0.90.3";
@@ -1 +1 @@
1
- {"version":3,"file":"Effect.d.ts","sourceRoot":"","sources":["../src/utils/Effect.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,eAAO,MAAM,mBAAmB,qBACxB,aAAa,CAAC,CAAC,CAAC,cACV,CAAC,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KACvC,aAAa,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAsBxB,CAAA;AAEJ,eAAO,MAAM,aAAa,6BAClB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SACrB,CAAC,KAAK,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,KACpC,aAAa,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CA+BnC,CAAA"}
1
+ {"version":3,"file":"Effect.d.ts","sourceRoot":"","sources":["../src/utils/Effect.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,eAAO,MAAM,mBAAmB,qBACxB,aAAa,CAAC,CAAC,CAAC,cACV,CAAC,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KACvC,aAAa,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAuBxB,CAAA;AAEJ,eAAO,MAAM,aAAa,6BAClB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SACrB,CAAC,KAAK,aAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,KACpC,aAAa,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAgCnC,CAAA"}
package/utils/Effect.js CHANGED
@@ -12,7 +12,7 @@ var Queue = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Q
12
12
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
13
13
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
14
  const subscribeForEachPar = (self, effect) => Effect.flatMap(Deferred.make(), deferred => {
15
- const run = (0, _Function.pipe)(PubSub.subscribe(self), Effect.flatMap(queue => Effect.forever(Effect.flatMap(Queue.take(queue), _ => Effect.fork(Effect.catchAllCause(effect(_), _ => Deferred.failCause(deferred, _)))))), Effect.scoped);
15
+ const run = (0, _Function.pipe)(PubSub.subscribe(self), Effect.flatMap(queue => Effect.forever(Effect.flatMap(Queue.take(queue), _ => Effect.fork(Effect.catchAllCause(effect(_), _ => Deferred.failCause(deferred, _)))))), Effect.scoped, Effect.interruptible);
16
16
  return Effect.all([run, Deferred.await(deferred)], {
17
17
  concurrency: "unbounded",
18
18
  discard: true
@@ -23,7 +23,7 @@ const foreverSwitch = (self, f) => (0, _Function.pipe)(Effect.all([Deferred.make
23
23
  let fiber;
24
24
  const run = (0, _Function.pipe)(self, Effect.tap(() => fiber ? fiber.interruptAsFork(fiberId) : Effect.unit), Effect.flatMap(_ => (0, _Function.pipe)(f(_), Effect.tapErrorCause(_ => Deferred.failCause(causeDeferred, _)), Effect.fork)), Effect.tap(fiber_ => Effect.sync(() => {
25
25
  fiber = fiber_;
26
- })), Effect.forever);
26
+ })), Effect.forever, Effect.interruptible);
27
27
  return Effect.all([run, Deferred.await(causeDeferred)], {
28
28
  concurrency: "unbounded",
29
29
  discard: true
@@ -1 +1 @@
1
- {"version":3,"file":"Effect.js","names":["_Function","require","Deferred","_interopRequireWildcard","Effect","PubSub","Queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","subscribeForEachPar","self","effect","flatMap","make","deferred","run","pipe","subscribe","queue","forever","take","_","fork","catchAllCause","failCause","scoped","all","await","concurrency","discard","exports","foreverSwitch","f","fiberId","causeDeferred","fiber","tap","interruptAsFork","unit","tapErrorCause","fiber_","sync"],"sources":["../src/utils/Effect.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Effect.js","names":["_Function","require","Deferred","_interopRequireWildcard","Effect","PubSub","Queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","subscribeForEachPar","self","effect","flatMap","make","deferred","run","pipe","subscribe","queue","forever","take","_","fork","catchAllCause","failCause","scoped","interruptible","all","await","concurrency","discard","exports","foreverSwitch","f","fiberId","causeDeferred","fiber","tap","interruptAsFork","unit","tapErrorCause","fiber_","sync"],"sources":["../src/utils/Effect.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const LIB_VERSION = "0.90.1";
1
+ export declare const LIB_VERSION = "0.90.3";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.LIB_VERSION = void 0;
7
- const LIB_VERSION = exports.LIB_VERSION = "0.90.1";
7
+ const LIB_VERSION = exports.LIB_VERSION = "0.90.3";
8
8
  //# sourceMappingURL=version.js.map