dfx 0.106.0 → 0.107.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,13 +10,13 @@ import * as Chunk from "effect/Chunk";
10
10
  import { GenericTag } from "effect/Context";
11
11
  import * as Duration from "effect/Duration";
12
12
  import * as Effect from "effect/Effect";
13
- import { pipe } from "effect/Function";
14
13
  import * as Layer from "effect/Layer";
15
14
  import * as Option from "effect/Option";
16
- import * as PubSub from "effect/PubSub";
17
15
  import * as Mailbox from "effect/Mailbox";
18
16
  import * as Redacted from "effect/Redacted";
19
17
  import * as Ref from "effect/Ref";
18
+ import { genFn } from "dfx/utils/Effect";
19
+ import * as FiberHandle from "effect/FiberHandle";
20
20
  export const make = /*#__PURE__*/Effect.gen(function* () {
21
21
  const {
22
22
  gateway,
@@ -32,6 +32,7 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
32
32
  const connect = shard => Effect.gen(function* (_) {
33
33
  const outboundQueue = yield* Mailbox.make();
34
34
  const pendingQueue = yield* Mailbox.make();
35
+ const reconnectHandle = yield* FiberHandle.make();
35
36
  const phase = yield* Ref.make(0 /* Phase.Connecting */);
36
37
  const stateStore = shardState.forShard(shard);
37
38
  const resumeState = Option.getOrElse(yield* stateStore.get, () => ({
@@ -41,11 +42,32 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
41
42
  }));
42
43
  const setPhase = p => Effect.zipLeft(Ref.set(phase, p), Effect.annotateLogs(Effect.logTrace("phase transition"), "phase", p));
43
44
  const outbound = Effect.orDie(Effect.zipLeft(outboundQueue.take, limiter.maybeWait("dfx.shard.send", Duration.minutes(1), 120)));
44
- const send = p => Effect.flatMap(Ref.get(phase), phase => phase === 2 /* Phase.Connected */ ? outboundQueue.offer(p) : pendingQueue.offer(p));
45
- const heartbeatSend = p => Effect.flatMap(Ref.get(phase), phase => phase !== 0 /* Phase.Connecting */ ? outboundQueue.offer(p) : Effect.succeed(false));
45
+ function* send(p) {
46
+ if ((yield* Ref.get(phase)) === 2 /* Phase.Connected */) {
47
+ outboundQueue.unsafeOffer(p);
48
+ } else {
49
+ pendingQueue.unsafeOffer(p);
50
+ }
51
+ }
52
+ const heartbeatSend = genFn(function* (p) {
53
+ if ((yield* Ref.get(phase)) !== 0 /* Phase.Connecting */) {
54
+ outboundQueue.unsafeOffer(p);
55
+ return true;
56
+ }
57
+ return false;
58
+ });
46
59
  const prioritySend = p => outboundQueue.offer(p);
47
- const resume = pipe(setPhase(2 /* Phase.Connected */), Effect.zipRight(pendingQueue.clear), Effect.tap(_ => outboundQueue.offerAll(_)), Effect.asVoid);
48
- const onConnecting = pipe(outboundQueue.clear, Effect.tap(msgs => pendingQueue.offerAll(Chunk.filter(msgs, msg => msg !== Reconnect && msg.op !== Discord.GatewayOpcode.IDENTIFY && msg.op !== Discord.GatewayOpcode.RESUME && msg.op !== Discord.GatewayOpcode.HEARTBEAT))), Effect.zipRight(setPhase(0 /* Phase.Connecting */)));
60
+ const resume = Effect.gen(function* () {
61
+ yield* FiberHandle.clear(reconnectHandle);
62
+ yield* setPhase(2 /* Phase.Connected */);
63
+ const msgs = yield* pendingQueue.clear;
64
+ outboundQueue.unsafeOfferAll(Chunk.filter(msgs, msg => msg !== Reconnect && msg.op !== Discord.GatewayOpcode.IDENTIFY && msg.op !== Discord.GatewayOpcode.RESUME && msg.op !== Discord.GatewayOpcode.HEARTBEAT));
65
+ });
66
+ const onConnecting = Effect.gen(function* () {
67
+ const msgs = yield* outboundQueue.clear;
68
+ pendingQueue.unsafeOfferAll(Chunk.filter(msgs, msg => msg !== Reconnect && msg.op !== Discord.GatewayOpcode.IDENTIFY && msg.op !== Discord.GatewayOpcode.RESUME && msg.op !== Discord.GatewayOpcode.HEARTBEAT));
69
+ yield* setPhase(0 /* Phase.Connecting */);
70
+ });
49
71
  const socket = yield* dws.connect({
50
72
  outbound,
51
73
  onConnecting
@@ -61,7 +83,12 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
61
83
  intents: gateway.intents,
62
84
  presence: gateway.presence
63
85
  }, stateStore.get);
64
- const onPayload = p => pipe(Effect.suspend(() => {
86
+ // delayed reconnect
87
+ const delayedReconnect = Effect.gen(function* () {
88
+ yield* Effect.sleep(30_000);
89
+ yield* prioritySend(Reconnect);
90
+ });
91
+ function* onPayload(p) {
65
92
  if (typeof p.s === "number") {
66
93
  resumeState.sequence = p.s;
67
94
  }
@@ -69,49 +96,59 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
69
96
  const payload = p.d;
70
97
  resumeState.sessionId = payload.session_id;
71
98
  resumeState.resumeUrl = payload.resume_gateway_url;
72
- return Effect.zipRight(stateStore.set(resumeState), socket.setUrl(payload.resume_gateway_url));
99
+ yield* stateStore.set(resumeState);
100
+ yield* socket.setUrl(payload.resume_gateway_url);
101
+ } else if (resumeState.resumeUrl !== "" && resumeState.sessionId !== "") {
102
+ yield* stateStore.set(resumeState);
73
103
  }
74
- if (resumeState.resumeUrl !== "" && resumeState.sessionId !== "") {
75
- return stateStore.set(resumeState);
76
- }
77
- return Effect.void;
78
- }), Effect.tap(() => {
79
104
  switch (p.op) {
80
105
  case Discord.GatewayOpcode.HELLO:
81
106
  {
82
- return pipe(Effect.tap(identify, prioritySend), Effect.zipRight(setPhase(1 /* Phase.Handshake */)), Effect.zipRight(hellos.offer(p)));
107
+ yield* prioritySend(yield* identify);
108
+ yield* setPhase(1 /* Phase.Handshake */);
109
+ hellos.unsafeOffer(p);
110
+ yield* FiberHandle.run(reconnectHandle, delayedReconnect);
111
+ break;
83
112
  }
84
113
  case Discord.GatewayOpcode.HEARTBEAT_ACK:
85
114
  {
86
- return acks.offer(p);
115
+ acks.unsafeOffer(p);
116
+ break;
87
117
  }
88
118
  case Discord.GatewayOpcode.INVALID_SESSION:
89
119
  {
90
- if (p.d) {
91
- return send(Reconnect);
120
+ if (!p.d) {
121
+ resumeState.sessionId = "";
122
+ yield* stateStore.clear;
92
123
  }
93
- resumeState.sessionId = "";
94
- return Effect.zipRight(stateStore.clear, send(Reconnect));
124
+ yield* send(Reconnect);
125
+ break;
95
126
  }
96
127
  case Discord.GatewayOpcode.DISPATCH:
97
128
  {
98
129
  if (p.t === "READY" || p.t === "RESUMED") {
99
- return Effect.zipRight(resume, PubSub.publish(hub, p));
130
+ yield* resume;
100
131
  }
101
- return PubSub.publish(hub, p);
132
+ hub.unsafeOffer(p);
133
+ break;
102
134
  }
103
135
  case Discord.GatewayOpcode.RECONNECT:
104
136
  {
105
- return prioritySend(Reconnect);
106
- }
107
- default:
108
- {
109
- return Effect.void;
137
+ yield* prioritySend(Reconnect);
138
+ break;
110
139
  }
111
140
  }
112
- }));
113
- yield* sendMailbox.take.pipe(Effect.tap(send), Effect.forever, Effect.forkScoped, Effect.interruptible);
114
- yield* socket.take.pipe(Effect.flatMap(onPayload), Effect.forever, Effect.forkScoped, Effect.interruptible);
141
+ }
142
+ yield* Effect.gen(function* () {
143
+ while (true) {
144
+ yield* send(yield* sendMailbox.take);
145
+ }
146
+ }).pipe(Effect.forkScoped, Effect.interruptible);
147
+ yield* Effect.gen(function* () {
148
+ while (true) {
149
+ yield* onPayload(yield* socket.take);
150
+ }
151
+ }).pipe(Effect.forkScoped, Effect.interruptible);
115
152
  return {
116
153
  id: shard,
117
154
  send
@@ -1 +1 @@
1
- {"version":3,"file":"Shard.mjs","names":["DiscordConfig","DiscordWS","DiscordWSLive","Reconnect","Messaging","MesssagingLive","ShardStateStore","Heartbeats","Identify","RateLimiter","RateLimiterLive","Discord","Chunk","GenericTag","Duration","Effect","pipe","Layer","Option","PubSub","Mailbox","Redacted","Ref","make","gen","gateway","token","limiter","dws","hub","sendMailbox","shardState","connect","shard","_","outboundQueue","pendingQueue","phase","stateStore","forShard","resumeState","getOrElse","get","resumeUrl","sessionId","sequence","setPhase","p","zipLeft","set","annotateLogs","logTrace","outbound","orDie","take","maybeWait","minutes","send","flatMap","offer","heartbeatSend","succeed","prioritySend","resume","zipRight","clear","tap","offerAll","asVoid","onConnecting","msgs","filter","msg","op","GatewayOpcode","IDENTIFY","RESUME","HEARTBEAT","socket","hellos","acquireRelease","shutdown","acks","forkScoped","interruptible","identify","identifyOrResume","value","intents","presence","onPayload","suspend","s","DISPATCH","t","payload","d","session_id","resume_gateway_url","setUrl","void","HELLO","HEARTBEAT_ACK","INVALID_SESSION","publish","RECONNECT","forever","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","Chunk","GenericTag","Duration","Effect","Layer","Option","Mailbox","Redacted","Ref","genFn","FiberHandle","make","gen","gateway","token","limiter","dws","hub","sendMailbox","shardState","connect","shard","_","outboundQueue","pendingQueue","reconnectHandle","phase","stateStore","forShard","resumeState","getOrElse","get","resumeUrl","sessionId","sequence","setPhase","p","zipLeft","set","annotateLogs","logTrace","outbound","orDie","take","maybeWait","minutes","send","unsafeOffer","heartbeatSend","prioritySend","offer","resume","clear","msgs","unsafeOfferAll","filter","msg","op","GatewayOpcode","IDENTIFY","RESUME","HEARTBEAT","onConnecting","socket","hellos","acquireRelease","shutdown","acks","pipe","forkScoped","interruptible","identify","identifyOrResume","value","intents","presence","delayedReconnect","sleep","onPayload","s","DISPATCH","t","payload","d","session_id","resume_gateway_url","setUrl","HELLO","run","HEARTBEAT_ACK","INVALID_SESSION","RECONNECT","id","package","module","Shard","ShardLive","effect","provide"],"sources":["../../src/DiscordGateway/Shard.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/mjs/types.mjs CHANGED
@@ -22,9 +22,9 @@ export const ActivityFlag = {
22
22
  };
23
23
  export var ActivityLocationKind;
24
24
  (function (ActivityLocationKind) {
25
- /** The Location is a Guild Channel */
25
+ /** Location is a Guild Channel */
26
26
  ActivityLocationKind["GC"] = "'gc'";
27
- /** The Location is a Private Channel, such as a DM or GDM */
27
+ /** Location is a Private Channel, such as a DM or GDM */
28
28
  ActivityLocationKind["PC"] = "'pc'";
29
29
  })(ActivityLocationKind || (ActivityLocationKind = {}));
30
30
  export var ActivityType;
@@ -83,6 +83,15 @@ export var ApplicationCommandType;
83
83
  /** A UI-based command that represents the primary way to invoke an app's Activity */
84
84
  ApplicationCommandType[ApplicationCommandType["PRIMARY_ENTRY_POINT"] = 4] = "PRIMARY_ENTRY_POINT";
85
85
  })(ApplicationCommandType || (ApplicationCommandType = {}));
86
+ export var ApplicationEventWebhookStatus;
87
+ (function (ApplicationEventWebhookStatus) {
88
+ /** Webhook events are disabled by developer */
89
+ ApplicationEventWebhookStatus[ApplicationEventWebhookStatus["DISABLED"] = 1] = "DISABLED";
90
+ /** Webhook events are enabled by developer */
91
+ ApplicationEventWebhookStatus[ApplicationEventWebhookStatus["ENABLED"] = 2] = "ENABLED";
92
+ /** Webhook events are disabled by Discord, usually due to inactivity */
93
+ ApplicationEventWebhookStatus[ApplicationEventWebhookStatus["DISABLED_BY_DISCORD"] = 3] = "DISABLED_BY_DISCORD";
94
+ })(ApplicationEventWebhookStatus || (ApplicationEventWebhookStatus = {}));
86
95
  export const ApplicationFlag = {
87
96
  /** Indicates if an app uses the Auto Moderation API */
88
97
  APPLICATION_AUTO_MODERATION_RULE_CREATE_BADGE: 1 << 6,
@@ -859,6 +868,11 @@ export function createRoutes(fetch) {
859
868
  url: `/guilds/${guildId}/voice-states/@me`,
860
869
  options
861
870
  }),
871
+ getEntitlement: (applicationId, entitlementId, options) => fetch({
872
+ method: "GET",
873
+ url: `/applications/${applicationId}/entitlements/${entitlementId}`,
874
+ options
875
+ }),
862
876
  getFollowupMessage: (applicationId, interactionToken, messageId, params, options) => fetch({
863
877
  method: "GET",
864
878
  url: `/webhooks/${applicationId}/${interactionToken}/messages/${messageId}`,
@@ -1521,6 +1535,14 @@ export var EntryPointCommandHandlerType;
1521
1535
  EntryPointCommandHandlerType[EntryPointCommandHandlerType["DISCORD_LAUNCH_ACTIVITY"] = 2] = "DISCORD_LAUNCH_ACTIVITY";
1522
1536
  })(EntryPointCommandHandlerType || (EntryPointCommandHandlerType = {}));
1523
1537
  export var EventType;
1538
+ (function (EventType) {
1539
+ /** Sent when an app was authorized by a user to a server or their account */
1540
+ EventType["APPLICATION_AUTHORIZED"] = "APPLICATION_AUTHORIZED";
1541
+ /** Entitlement was created */
1542
+ EventType["ENTITLEMENT_CREATE"] = "ENTITLEMENT_CREATE";
1543
+ /** User was added to a Quest (currently unavailable) */
1544
+ EventType["QUEST_USER_ENROLLMENT"] = "QUEST_USER_ENROLLMENT";
1545
+ })(EventType || (EventType = {}));
1524
1546
  (function (EventType) {
1525
1547
  /** when a member sends or edits a message in the guild */
1526
1548
  EventType[EventType["MESSAGE_SEND"] = 1] = "MESSAGE_SEND";
@@ -2319,6 +2341,12 @@ export var VoiceOpcode;
2319
2341
  VoiceOpcode[VoiceOpcode["DAVE_MLS_INVALID_COMMIT_WELCOME"] = 31] = "DAVE_MLS_INVALID_COMMIT_WELCOME";
2320
2342
  })(VoiceOpcode || (VoiceOpcode = {}));
2321
2343
  export var WebhookType;
2344
+ (function (WebhookType) {
2345
+ /** PING event sent to verify your Webhook Event URL is active */
2346
+ WebhookType[WebhookType["PING"] = 0] = "PING";
2347
+ /** Webhook event (details for event in event body object) */
2348
+ WebhookType[WebhookType["EVENT"] = 1] = "EVENT";
2349
+ })(WebhookType || (WebhookType = {}));
2322
2350
  (function (WebhookType) {
2323
2351
  /** Incoming Webhooks can post messages to channels with a generated token */
2324
2352
  WebhookType[WebhookType["INCOMING"] = 1] = "INCOMING";