dfx 0.48.2 → 0.49.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.
- package/DiscordGateway/Shard/identify.d.ts +1 -1
- package/DiscordGateway/Shard/identify.d.ts.map +1 -1
- package/DiscordGateway/Shard/sendEvents.d.ts +6 -6
- package/DiscordGateway/Shard/sendEvents.d.ts.map +1 -1
- package/DiscordGateway/Shard/sendEvents.js.map +1 -1
- package/DiscordGateway/Shard.d.ts +2 -4
- package/DiscordGateway/Shard.d.ts.map +1 -1
- package/DiscordGateway/Shard.js +4 -7
- package/DiscordGateway/Shard.js.map +1 -1
- package/DiscordGateway/Sharder.d.ts +2 -2
- package/DiscordGateway/Sharder.d.ts.map +1 -1
- package/DiscordGateway/Sharder.js +2 -2
- package/DiscordGateway/Sharder.js.map +1 -1
- package/DiscordGateway.d.ts +5 -4
- package/DiscordGateway.d.ts.map +1 -1
- package/DiscordGateway.js +11 -8
- package/DiscordGateway.js.map +1 -1
- package/Interactions/definitions.d.ts +2 -9
- package/Interactions/definitions.d.ts.map +1 -1
- package/Interactions/definitions.js.map +1 -1
- package/gateway.d.ts +1 -0
- package/gateway.d.ts.map +1 -1
- package/gateway.js +1 -0
- package/gateway.js.map +1 -1
- package/package.json +3 -3
- package/src/DiscordGateway/Shard/sendEvents.ts +12 -6
- package/src/DiscordGateway/Shard.ts +5 -5
- package/src/DiscordGateway/Sharder.ts +5 -2
- package/src/DiscordGateway.ts +9 -2
- package/src/Interactions/definitions.ts +2 -16
- package/src/gateway.ts +1 -0
- package/src/package.json +3 -3
|
@@ -9,5 +9,5 @@ export interface Requirements {
|
|
|
9
9
|
latestReady: Ref<Maybe<Discord.ReadyEvent>>;
|
|
10
10
|
latestSequence: Ref<Maybe<number>>;
|
|
11
11
|
}
|
|
12
|
-
export declare const identifyOrResume: (opts: Options, ready: Ref<Maybe<Discord.ReadyEvent>>, seq: Ref<Maybe<number>>) => import("@effect/io/Effect").Effect<never, never, import("../../types.js").GatewayPayload<
|
|
12
|
+
export declare const identifyOrResume: (opts: Options, ready: Ref<Maybe<Discord.ReadyEvent>>, seq: Ref<Maybe<number>>) => import("@effect/io/Effect").Effect<never, never, import("../../types.js").GatewayPayload<import("../../types.js").Identify> | import("../../types.js").GatewayPayload<import("../../types.js").Resume>>;
|
|
13
13
|
//# sourceMappingURL=identify.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identify.d.ts","sourceRoot":"","sources":["../../src/DiscordGateway/Shard/identify.ts"],"names":[],"mappings":";AAGA,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAA;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3C,cAAc,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;CACnC;AAsBD,eAAO,MAAM,gBAAgB,SACrB,OAAO,SACN,IAAI,MAAM,QAAQ,UAAU,CAAC,CAAC,OAChC,IAAI,MAAM,MAAM,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"identify.d.ts","sourceRoot":"","sources":["../../src/DiscordGateway/Shard/identify.ts"],"names":[],"mappings":";AAGA,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAA;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3C,cAAc,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;CACnC;AAsBD,eAAO,MAAM,gBAAgB,SACrB,OAAO,SACN,IAAI,MAAM,QAAQ,UAAU,CAAC,CAAC,OAChC,IAAI,MAAM,MAAM,CAAC,CAAC,4MAarB,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Discord } from "dfx/_common";
|
|
2
|
-
export declare const heartbeat: (d: Discord.Heartbeat) => Discord.GatewayPayload
|
|
3
|
-
export declare const identify: (d: Discord.Identify) => Discord.GatewayPayload
|
|
4
|
-
export declare const resume: (d: Discord.Resume) => Discord.GatewayPayload
|
|
5
|
-
export declare const requestGuildMembers: (d: Discord.RequestGuildMember) => Discord.GatewayPayload
|
|
6
|
-
export declare const voiceStateUpdate: (d: Discord.UpdateVoiceState) => Discord.GatewayPayload
|
|
7
|
-
export declare const presenceUpdate: (d: Discord.UpdatePresence) => Discord.GatewayPayload
|
|
2
|
+
export declare const heartbeat: (d: Discord.Heartbeat) => Discord.GatewayPayload<Discord.Heartbeat>;
|
|
3
|
+
export declare const identify: (d: Discord.Identify) => Discord.GatewayPayload<Discord.Identify>;
|
|
4
|
+
export declare const resume: (d: Discord.Resume) => Discord.GatewayPayload<Discord.Resume>;
|
|
5
|
+
export declare const requestGuildMembers: (d: Discord.RequestGuildMember) => Discord.GatewayPayload<Discord.RequestGuildMember>;
|
|
6
|
+
export declare const voiceStateUpdate: (d: Discord.UpdateVoiceState) => Discord.GatewayPayload<Discord.UpdateVoiceState>;
|
|
7
|
+
export declare const presenceUpdate: (d: Discord.UpdatePresence) => Discord.GatewayPayload<Discord.UpdatePresence>;
|
|
8
8
|
//# sourceMappingURL=sendEvents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendEvents.d.ts","sourceRoot":"","sources":["../../src/DiscordGateway/Shard/sendEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"sendEvents.d.ts","sourceRoot":"","sources":["../../src/DiscordGateway/Shard/sendEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,eAAO,MAAM,SAAS,MACjB,QAAQ,SAAS,KACnB,QAAQ,cAAc,CAAC,QAAQ,SAAS,CAGzC,CAAA;AAEF,eAAO,MAAM,QAAQ,MAChB,QAAQ,QAAQ,KAClB,QAAQ,cAAc,CAAC,QAAQ,QAAQ,CAGxC,CAAA;AAEF,eAAO,MAAM,MAAM,MACd,QAAQ,MAAM,KAChB,QAAQ,cAAc,CAAC,QAAQ,MAAM,CAGtC,CAAA;AAEF,eAAO,MAAM,mBAAmB,MAC3B,QAAQ,kBAAkB,KAC5B,QAAQ,cAAc,CAAC,QAAQ,kBAAkB,CAGlD,CAAA;AAEF,eAAO,MAAM,gBAAgB,MACxB,QAAQ,gBAAgB,KAC1B,QAAQ,cAAc,CAAC,QAAQ,gBAAgB,CAGhD,CAAA;AAEF,eAAO,MAAM,cAAc,MACtB,QAAQ,cAAc,KACxB,QAAQ,cAAc,CAAC,QAAQ,cAAc,CAG9C,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendEvents.js","sourceRoot":"","sources":["../../src/DiscordGateway/Shard/sendEvents.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"sendEvents.js","sourceRoot":"","sources":["../../src/DiscordGateway/Shard/sendEvents.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,CAAoB,EACuB,EAAE,CAAC,CAAC;IAC/C,EAAE,yCAAiC;IACnC,CAAC;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,CAAmB,EACuB,EAAE,CAAC,CAAC;IAC9C,EAAE,wCAAgC;IAClC,CAAC;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,CAAiB,EACuB,EAAE,CAAC,CAAC;IAC5C,EAAE,sCAA8B;IAChC,CAAC;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,CAA6B,EACuB,EAAE,CAAC,CAAC;IACxD,EAAE,qDAA6C;IAC/C,CAAC;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,CAA2B,EACuB,EAAE,CAAC,CAAC;IACtD,EAAE,kDAA0C;IAC5C,CAAC;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,CAAyB,EACuB,EAAE,CAAC,CAAC;IACpD,EAAE,+CAAuC;IACzC,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
import { Hub, Discord, Effect } from "dfx/_common";
|
|
1
|
+
import { Hub, Discord, Dequeue, Effect } from "dfx/_common";
|
|
2
2
|
import { DiscordConfig } from "dfx/DiscordConfig";
|
|
3
3
|
import { RateLimiter } from "dfx/RateLimit";
|
|
4
4
|
import { DiscordWS } from "./DiscordWS.js";
|
|
5
5
|
import { Log } from "dfx/Log";
|
|
6
6
|
export declare const make: import("@effect/io/Effect").Effect<DiscordConfig | Log | RateLimiter | DiscordWS, never, {
|
|
7
|
-
readonly connect: (shard: [id: number, count: number], hub: Hub<Discord.GatewayPayload<Discord.ReceiveEvent>>) => import("@effect/io/Effect").Effect<never, never, {
|
|
7
|
+
readonly connect: (shard: [id: number, count: number], hub: Hub<Discord.GatewayPayload<Discord.ReceiveEvent>>, sendQueue: Dequeue<Discord.GatewayPayload<Discord.SendEvent>>) => import("@effect/io/Effect").Effect<never, never, {
|
|
8
8
|
readonly run: import("@effect/io/Effect").Effect<never, import("./WS.js").WebSocketError | import("./WS.js").WebSocketCloseError, never>;
|
|
9
|
-
readonly send: (p: Discord.GatewayPayload) => import("@effect/io/Effect").Effect<never, never, boolean>;
|
|
10
|
-
readonly reconnect: import("@effect/io/Effect").Effect<never, never, boolean>;
|
|
11
9
|
}>;
|
|
12
10
|
}>;
|
|
13
11
|
export interface Shard extends Effect.Success<typeof make> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shard.d.ts","sourceRoot":"","sources":["../src/DiscordGateway/Shard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAmB,WAAW,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,SAAS,EAA0B,MAAM,gBAAgB,CAAA;AAMlE,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAQ7B,eAAO,MAAM,IAAI;8BAON,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,OAC7B,IAAI,QAAQ,cAAc,CAAC,QAAQ,YAAY,CAAC,CAAC
|
|
1
|
+
{"version":3,"file":"Shard.d.ts","sourceRoot":"","sources":["../src/DiscordGateway/Shard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAmB,WAAW,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,SAAS,EAA0B,MAAM,gBAAgB,CAAA;AAMlE,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAQ7B,eAAO,MAAM,IAAI;8BAON,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,OAC7B,IAAI,QAAQ,cAAc,CAAC,QAAQ,YAAY,CAAC,CAAC,aAC3C,QAAQ,QAAQ,cAAc,CAAC,QAAQ,SAAS,CAAC,CAAC;;;EAiJ/D,CAAA;AAEF,MAAM,WAAW,KAAM,SAAQ,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC;CAAG;AAC7D,eAAO,MAAM,KAAK,kDAAe,CAAA;AACjC,eAAO,MAAM,SAAS,mKACoC,CAAA"}
|
package/DiscordGateway/Shard.js
CHANGED
|
@@ -17,7 +17,7 @@ import * as Utils from "./Shard/utils.js";
|
|
|
17
17
|
import { Reconnect } from "./WS.js";
|
|
18
18
|
import { Log } from "dfx/Log";
|
|
19
19
|
export const make = tsplus_module_1.flatMap(DiscordConfig, ({ token, gateway }) => tsplus_module_1.flatMap(RateLimiter, limiter => tsplus_module_1.flatMap(DiscordWS, dws => tsplus_module_1.map(Log, log => {
|
|
20
|
-
const connect = (shard, hub) => tsplus_module_1.flatMap(tsplus_module_4.unbounded(), outboundQueue => tsplus_module_1.flatMap(tsplus_module_4.unbounded(), pendingQueue => tsplus_module_1.flatMap(tsplus_module_7.make(0 /* Phase.Connecting */), phase => {
|
|
20
|
+
const connect = (shard, hub, sendQueue) => tsplus_module_1.flatMap(tsplus_module_4.unbounded(), outboundQueue => tsplus_module_1.flatMap(tsplus_module_4.unbounded(), pendingQueue => tsplus_module_1.flatMap(tsplus_module_7.make(0 /* Phase.Connecting */), phase => {
|
|
21
21
|
const setPhase = (p) => tsplus_module_1.zipLeft(tsplus_module_7.set(phase, p), log.debug("Shard", shard, "phase", p));
|
|
22
22
|
const outbound = tsplus_module_1.tap(outboundQueue
|
|
23
23
|
.take(), () => limiter.maybeWait("dfx.shard.send", tsplus_module_8.minutes(1), 120));
|
|
@@ -69,12 +69,9 @@ export const make = tsplus_module_1.flatMap(DiscordConfig, ({ token, gateway })
|
|
|
69
69
|
}
|
|
70
70
|
return tsplus_module_1.map(effect, () => void 0);
|
|
71
71
|
});
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
send: (p) => send(p),
|
|
76
|
-
reconnect: send(Reconnect),
|
|
77
|
-
};
|
|
72
|
+
const drainSendQueue = tsplus_module_1.forever(tsplus_module_1.tap(sendQueue.take(), send));
|
|
73
|
+
const run = tsplus_module_1.zipParLeft(tsplus_module_1.zipParLeft(tsplus_module_1.zipParLeft(tsplus_module_1.forever(tsplus_module_1.flatMap(socket.take, onPayload)), heartbeats), drainSendQueue), socket.run);
|
|
74
|
+
return { run };
|
|
78
75
|
}));
|
|
79
76
|
})));
|
|
80
77
|
})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shard.js","sourceRoot":"","sources":["../src/DiscordGateway/Shard.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Shard.js","sourceRoot":"","sources":["../src/DiscordGateway/Shard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Maybe, Schedule, Effect, Discord, Hub } from "dfx/_common";
|
|
1
|
+
import { Maybe, Schedule, Effect, Discord, Hub, Dequeue } from "dfx/_common";
|
|
2
2
|
import { DiscordConfig } from "dfx/DiscordConfig";
|
|
3
3
|
import { DiscordREST } from "dfx/DiscordREST";
|
|
4
4
|
import { RateLimiter } from "../RateLimit.js";
|
|
@@ -6,7 +6,7 @@ import { Shard } from "./Shard.js";
|
|
|
6
6
|
import { ShardStore } from "./ShardStore.js";
|
|
7
7
|
import { WebSocketCloseError, WebSocketError } from "./WS.js";
|
|
8
8
|
declare const make: import("@effect/io/Effect").Effect<DiscordREST | DiscordConfig | RateLimiter | Shard | ShardStore, never, {
|
|
9
|
-
readonly run: (hub: Hub<Discord.GatewayPayload<Discord.ReceiveEvent>>) => import("@effect/io/Effect").Effect<never, WebSocketError | WebSocketCloseError, never>;
|
|
9
|
+
readonly run: (hub: Hub<Discord.GatewayPayload<Discord.ReceiveEvent>>, sendQueue: Dequeue<Discord.GatewayPayload<Discord.SendEvent>>) => import("@effect/io/Effect").Effect<never, WebSocketError | WebSocketCloseError, never>;
|
|
10
10
|
}>;
|
|
11
11
|
export interface Sharder extends Effect.Success<typeof make> {
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sharder.d.ts","sourceRoot":"","sources":["../src/DiscordGateway/Sharder.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAmB,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAa,KAAK,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAO7D,QAAA,MAAM,IAAI;
|
|
1
|
+
{"version":3,"file":"Sharder.d.ts","sourceRoot":"","sources":["../src/DiscordGateway/Sharder.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAmB,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAa,KAAK,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAO7D,QAAA,MAAM,IAAI;wBA6CD,IAAI,QAAQ,cAAc,CAAC,QAAQ,YAAY,CAAC,CAAC,aAC3C,QAAQ,QAAQ,cAAc,CAAC,QAAQ,SAAS,CAAC,CAAC;EAyC/D,CAAA;AAEF,MAAM,WAAW,OAAQ,SAAQ,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC;CAAG;AAC/D,eAAO,MAAM,OAAO,sDAAiB,CAAA;AACrC,eAAO,MAAM,WAAW,sNACgC,CAAA"}
|
|
@@ -34,12 +34,12 @@ const make = tsplus_module_5.flatMap(ShardStore, store => tsplus_module_5.flatMa
|
|
|
34
34
|
max_concurrency: 1,
|
|
35
35
|
},
|
|
36
36
|
})), gateway => {
|
|
37
|
-
const run = (hub) => tsplus_module_5.flatMap(tsplus_module_7.make(), deferred => tsplus_module_5.flatMap(takeConfig(config.shardCount ?? gateway.shards), take => {
|
|
37
|
+
const run = (hub, sendQueue) => tsplus_module_5.flatMap(tsplus_module_7.make(), deferred => tsplus_module_5.flatMap(takeConfig(config.shardCount ?? gateway.shards), take => {
|
|
38
38
|
const spawner = tsplus_module_5.forever(tsplus_module_5.flatMap(tsplus_module_5.flatMap(tsplus_module_5.tap(tsplus_module_5.map(take, config => ({
|
|
39
39
|
...config,
|
|
40
40
|
url: gateway.url,
|
|
41
41
|
concurrency: gateway.session_start_limit.max_concurrency,
|
|
42
|
-
})), ({ id, concurrency }) => limiter.maybeWait(`dfx.sharder.${id % concurrency}`, millis(config.identifyRateLimit[0]), config.identifyRateLimit[1])), c => shard.connect([c.id, c.totalCount], hub)), shard => tsplus_module_5.fork(tsplus_module_5.catchAllCause(shard.run, _ => tsplus_module_7.failCause(deferred, _)))));
|
|
42
|
+
})), ({ id, concurrency }) => limiter.maybeWait(`dfx.sharder.${id % concurrency}`, millis(config.identifyRateLimit[0]), config.identifyRateLimit[1])), c => shard.connect([c.id, c.totalCount], hub, sendQueue)), shard => tsplus_module_5.fork(tsplus_module_5.catchAllCause(shard.run, _ => tsplus_module_7.failCause(deferred, _)))));
|
|
43
43
|
const spawners = tsplus_module_6.map(tsplus_module_6.range(1, gateway.session_start_limit.max_concurrency), () => spawner);
|
|
44
44
|
return tsplus_module_5.zipParLeft(tsplus_module_5.allParDiscard(spawners), tsplus_module_4.deferredAwait(deferred));
|
|
45
45
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sharder.js","sourceRoot":"","sources":["../src/DiscordGateway/Sharder.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAI5C,MAAM,iBAAiB,GAAG,4BAAA,2BAAA,sBAAe,wBAAiB,CAAC,CAAC,CAAC,EAC3D,CAAC,CAAgB,EAAE,EAAE,CAAC,uBAAA,CAAC,CAAS,CACjC,CAA4D,CAAA;AAE7D,MAAM,IAAI,2BACQ,UAAU,EAApB,KAAK,4BACI,WAAW,EAApB,IAAI,4BACoB,aAAa,GAArC,EAAE,OAAO,EAAE,MAAM,EAAE,6BACP,WAAW,EAAvB,OAAO,4BACG,KAAK,EAAf,KAAK;IAEX,MAAM,UAAU,GAAG,CAAC,UAAkB,EAAE,EAAE,qBAEf,qBAAS,CAAC,CAAC,EAA5B,YAAY;QAElB,MAAM,OAAO,GAAG,CAAC,YAAoB,EAAgC,EAAE,CACrE,oBAAA,uBAAA,KAAK;aACF,OAAO,CAAC;YACP,UAAU;YACV,YAAY;SACb,CAAC,EACM,iBAAiB,CAAC,EACrB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QAEtB,OAAO,oBAAA,wBAAA,6BAAA,YAAY,EACH,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAChB,OAAO,CAAC,EACZ,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,EAAY,CAAA,CAAC,CAAA;MAC3C,CAAA;+BAGF,yBAAA,wBAAA,IAAI;SACD,aAAa,EAAE,EACP,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EACX,GAAG,EAAE,CACb,wBAA8C;QAC5C,GAAG,EAAE,2BAA2B;QAChC,MAAM,EAAE,CAAC;QACT,mBAAmB,EAAE;YACnB,KAAK,EAAE,CAAC;YACR,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,eAAe,EAAE,CAAC;SACnB;KACF,CAAC,CACH,EAfC,OAAO;QAkBb,MAAM,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"Sharder.js","sourceRoot":"","sources":["../src/DiscordGateway/Sharder.ts"],"names":[],"mappings":"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"}
|
package/DiscordGateway.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Stream, Discord, Hub, Effect } from "dfx/_common";
|
|
2
2
|
import { Sharder } from "./DiscordGateway/Sharder.js";
|
|
3
3
|
export declare const make: import("@effect/io/Effect").Effect<Sharder, never, {
|
|
4
|
-
run: import("@effect/io/Effect").Effect<never, import("./DiscordGateway/WS.js").WebSocketError | import("./DiscordGateway/WS.js").WebSocketCloseError, never>;
|
|
5
|
-
dispatch: import("@effect-http/client/_common").Stream<never, never, import("./types.js").GatewayPayload<import("./types.js").ReceiveEvent>>;
|
|
6
|
-
fromDispatch: <K extends keyof import("./types.js").ReceiveEvents>(event: K) => import("@effect-http/client/_common").Stream<never, never, import("./types.js").ReceiveEvents[K]>;
|
|
7
|
-
handleDispatch: <K_1 extends keyof import("./types.js").ReceiveEvents, R, E, A>(event: K_1, handle: (event: import("./types.js").ReceiveEvents[K_1]) => import("@effect/io/Effect").Effect<R, E, A>) => import("@effect/io/Effect").Effect<R, E, never>;
|
|
4
|
+
readonly run: import("@effect/io/Effect").Effect<never, import("./DiscordGateway/WS.js").WebSocketError | import("./DiscordGateway/WS.js").WebSocketCloseError, never>;
|
|
5
|
+
readonly dispatch: import("@effect-http/client/_common").Stream<never, never, import("./types.js").GatewayPayload<import("./types.js").ReceiveEvent>>;
|
|
6
|
+
readonly fromDispatch: <K extends keyof import("./types.js").ReceiveEvents>(event: K) => import("@effect-http/client/_common").Stream<never, never, import("./types.js").ReceiveEvents[K]>;
|
|
7
|
+
readonly handleDispatch: <K_1 extends keyof import("./types.js").ReceiveEvents, R, E, A>(event: K_1, handle: (event: import("./types.js").ReceiveEvents[K_1]) => import("@effect/io/Effect").Effect<R, E, A>) => import("@effect/io/Effect").Effect<R, E, never>;
|
|
8
|
+
readonly send: (payload: Discord.GatewayPayload<Discord.SendEvent>) => import("@effect/io/Effect").Effect<never, never, boolean>;
|
|
8
9
|
}>;
|
|
9
10
|
export interface DiscordGateway extends Effect.Success<typeof make> {
|
|
10
11
|
}
|
package/DiscordGateway.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscordGateway.d.ts","sourceRoot":"","sources":["src/DiscordGateway.ts"],"names":[],"mappings":";AAAA,OAAO,EAAe,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAsBlE,eAAO,MAAM,IAAI;;;;;
|
|
1
|
+
{"version":3,"file":"DiscordGateway.d.ts","sourceRoot":"","sources":["src/DiscordGateway.ts"],"names":[],"mappings":";AAAA,OAAO,EAAe,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAsBlE,eAAO,MAAM,IAAI;;;;;6BAOQ,QAAQ,cAAc,CAAC,QAAQ,SAAS,CAAC;EAgBhE,CAAA;AAEF,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC;CAAG;AACtE,eAAO,MAAM,cAAc,oEAAwB,CAAA;AACnD,eAAO,MAAM,kBAAkB,2UAA8C,CAAA"}
|
package/DiscordGateway.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect/stream/Stream";
|
|
2
2
|
import * as tsplus_module_2 from "@effect/io/Effect";
|
|
3
3
|
import * as tsplus_module_3 from "dfx/utils/hub";
|
|
4
|
-
import * as tsplus_module_4 from "@effect/io/
|
|
5
|
-
import * as tsplus_module_5 from "
|
|
6
|
-
import * as tsplus_module_6 from "
|
|
4
|
+
import * as tsplus_module_4 from "@effect/io/Queue";
|
|
5
|
+
import * as tsplus_module_5 from "@effect/io/Hub";
|
|
6
|
+
import * as tsplus_module_6 from "dfx/_common";
|
|
7
|
+
import * as tsplus_module_7 from "@effect/io/Layer";
|
|
7
8
|
import { LiveSharder, Sharder } from "./DiscordGateway/Sharder.js";
|
|
8
9
|
const fromDispatchFactory = (source) => (event) => tsplus_module_1.map(tsplus_module_1.filter(source, p => p.t === event), p => p.d);
|
|
9
10
|
const handleDispatchFactory = (hub) => (event, handle) => tsplus_module_3.subscribeForEachPar(hub, _ => {
|
|
@@ -12,18 +13,20 @@ const handleDispatchFactory = (hub) => (event, handle) => tsplus_module_3.subscr
|
|
|
12
13
|
}
|
|
13
14
|
return tsplus_module_2.unit();
|
|
14
15
|
});
|
|
15
|
-
export const make = tsplus_module_2.flatMap(Sharder, sharder => tsplus_module_2.map(tsplus_module_4.unbounded(),
|
|
16
|
+
export const make = tsplus_module_2.flatMap(Sharder, sharder => tsplus_module_2.flatMap(tsplus_module_5.unbounded(), hub => tsplus_module_2.map(tsplus_module_4.unbounded(), sendQueue => {
|
|
17
|
+
const send = (payload) => sendQueue.offer(payload);
|
|
16
18
|
const dispatch = tsplus_module_1.fromHub(hub);
|
|
17
19
|
const fromDispatch = fromDispatchFactory(dispatch);
|
|
18
20
|
const handleDispatch = handleDispatchFactory(hub);
|
|
19
|
-
const run = sharder.run(hub);
|
|
21
|
+
const run = sharder.run(hub, sendQueue);
|
|
20
22
|
return {
|
|
21
23
|
run,
|
|
22
24
|
dispatch,
|
|
23
25
|
fromDispatch,
|
|
24
26
|
handleDispatch,
|
|
27
|
+
send,
|
|
25
28
|
};
|
|
26
|
-
}));
|
|
27
|
-
export const DiscordGateway =
|
|
28
|
-
export const LiveDiscordGateway =
|
|
29
|
+
})));
|
|
30
|
+
export const DiscordGateway = tsplus_module_6.Tag();
|
|
31
|
+
export const LiveDiscordGateway = tsplus_module_7.provide(tsplus_module_2.toLayer(make, DiscordGateway))(LiveSharder);
|
|
29
32
|
//# sourceMappingURL=DiscordGateway.js.map
|
package/DiscordGateway.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscordGateway.js","sourceRoot":"","sources":["src/DiscordGateway.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DiscordGateway.js","sourceRoot":"","sources":["src/DiscordGateway.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAElE,MAAM,mBAAmB,GACvB,CAAO,MAAkE,EAAE,EAAE,CAC7E,CACE,KAAQ,EACgC,EAAE,CAC1C,oBAAA,uBAAA,MAAM,EAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,EAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAS,CAAC,CAAA;AAE3D,MAAM,qBAAqB,GACzB,CAAC,GAAsD,EAAE,EAAE,CAC3D,CACE,KAAQ,EACR,MAA4D,EACvC,EAAE,CACvB,oCAAA,GAAG,EAAqB,CAAC,CAAC,EAAE;IAC1B,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;QACjB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAQ,CAAC,CAAA;KAC1B;IACD,OAAO,sBAAa,CAAA;AACtB,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,IAAI,2BACG,OAAO,EAAnB,OAAO,4BACC,2BAA6D,EAArE,GAAG,wBAGP,2BAA4D,EADxD,SAAS;IAGf,MAAM,IAAI,GAAG,CAAC,OAAkD,EAAE,EAAE,CAClE,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAE1B,MAAM,QAAQ,GAAG,wBAAe,GAAG,CAAC,CAAA;IACpC,MAAM,YAAY,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAClD,MAAM,cAAc,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAA;IAEjD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IAEvC,OAAO;QACL,GAAG;QACH,QAAQ;QACR,YAAY;QACZ,cAAc;QACd,IAAI;KACI,CAAA;IACV,CAAA;AAGF,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAA,GAAG,EAAkB,CAAA;AACnD,MAAM,CAAC,MAAM,kBAAkB,2BAAkB,wBAAA,IAAI,EAAS,cAAc,CAAC,EAA3C,WAAW,CAAgC,CAAA"}
|
|
@@ -1,13 +1,6 @@
|
|
|
1
1
|
import { Discord, Maybe } from "dfx/_common";
|
|
2
2
|
import { Effect, EffectTypeId } from "@effect/io/Effect";
|
|
3
3
|
import { FocusedOptionContext, ResolvedDataNotFound, SubCommandContext } from "./context.js";
|
|
4
|
-
type DescriptionMissing<A> = [A] extends [
|
|
5
|
-
{
|
|
6
|
-
readonly type: Exclude<Discord.ApplicationCommandType, 1>;
|
|
7
|
-
}
|
|
8
|
-
] ? false : A extends {
|
|
9
|
-
readonly description: string;
|
|
10
|
-
} ? false : true;
|
|
11
4
|
export type InteractionDefinition<R, E> = GlobalApplicationCommand<R, E> | GuildApplicationCommand<R, E> | MessageComponent<R, E> | ModalSubmit<R, E> | Autocomplete<R, E>;
|
|
12
5
|
export declare class GlobalApplicationCommand<R, E> {
|
|
13
6
|
readonly command: Discord.CreateGlobalApplicationCommandParams;
|
|
@@ -15,14 +8,14 @@ export declare class GlobalApplicationCommand<R, E> {
|
|
|
15
8
|
readonly _tag = "GlobalApplicationCommand";
|
|
16
9
|
constructor(command: Discord.CreateGlobalApplicationCommandParams, handle: CommandHandler<R, E>);
|
|
17
10
|
}
|
|
18
|
-
export declare const global: <R, E, const A extends DeepReadonlyObject<import("../types.js").CreateGlobalApplicationCommandParams>>(command: A, handle:
|
|
11
|
+
export declare const global: <R, E, const A extends DeepReadonlyObject<import("../types.js").CreateGlobalApplicationCommandParams>>(command: A, handle: CommandHandler<R, E, A>) => GlobalApplicationCommand<Exclude<R, import("../types.js").Interaction | import("../types.js").ApplicationCommandDatum>, E>;
|
|
19
12
|
export declare class GuildApplicationCommand<R, E> {
|
|
20
13
|
readonly command: Discord.CreateGuildApplicationCommandParams;
|
|
21
14
|
readonly handle: CommandHandler<R, E>;
|
|
22
15
|
readonly _tag = "GuildApplicationCommand";
|
|
23
16
|
constructor(command: Discord.CreateGuildApplicationCommandParams, handle: CommandHandler<R, E>);
|
|
24
17
|
}
|
|
25
|
-
export declare const guild: <R, E, const A extends DeepReadonlyObject<import("../types.js").CreateGuildApplicationCommandParams>>(command: A, handle:
|
|
18
|
+
export declare const guild: <R, E, const A extends DeepReadonlyObject<import("../types.js").CreateGuildApplicationCommandParams>>(command: A, handle: CommandHandler<R, E, A>) => GuildApplicationCommand<Exclude<R, import("../types.js").Interaction | import("../types.js").ApplicationCommandDatum>, E>;
|
|
26
19
|
export declare class MessageComponent<R, E> {
|
|
27
20
|
readonly predicate: (customId: string) => Effect<R, E, boolean>;
|
|
28
21
|
readonly handle: Effect<R, E, Discord.InteractionResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../src/Interactions/definitions.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,cAAc,CAAA;AAErB,
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../src/Interactions/definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../src/Interactions/definitions.ts"],"names":[],"mappings":";AAAA,OAAO,EAAU,YAAY,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../src/Interactions/definitions.ts"],"names":[],"mappings":";AAAA,OAAO,EAAU,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAcxD,MAAM,OAAO,wBAAwB;IAGxB;IACA;IAHF,IAAI,GAAG,0BAA0B,CAAA;IAC1C,YACW,OAAqD,EACrD,MAA4B;QAD5B,YAAO,GAAP,OAAO,CAA8C;QACrD,WAAM,GAAN,MAAM,CAAsB;IACpC,CAAC;CACL;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,CAKpB,OAAU,EACV,MAA+B,EAC/B,EAAE,CACF,IAAI,wBAAwB,CAG1B,OAAc,EAAE,MAAa,CAAC,CAAA;AAElC,MAAM,OAAO,uBAAuB;IAGvB;IACA;IAHF,IAAI,GAAG,yBAAyB,CAAA;IACzC,YACW,OAAoD,EACpD,MAA4B;QAD5B,YAAO,GAAP,OAAO,CAA6C;QACpD,WAAM,GAAN,MAAM,CAAsB;IACpC,CAAC;CACL;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,CAKnB,OAAU,EACV,MAA+B,EAC/B,EAAE,CACF,IAAI,uBAAuB,CAGzB,OAAc,EAAE,MAAa,CAAC,CAAA;AAElC,MAAM,OAAO,gBAAgB;IAGhB;IACA;IAHF,IAAI,GAAG,kBAAkB,CAAA;IAClC,YACW,SAAsD,EACtD,MAAiD;QADjD,cAAS,GAAT,SAAS,CAA6C;QACtD,WAAM,GAAN,MAAM,CAA2C;IACzD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAmD,EACnD,MAA2D,EAC3D,EAAE,CACF,IAAI,gBAAgB,CAGlB,IAAW,EAAE,MAAa,CAAC,CAAA;AAE/B,MAAM,OAAO,WAAW;IAGX;IACA;IAHF,IAAI,GAAG,aAAa,CAAA;IAC7B,YACW,SAAsD,EACtD,MAAiD;QADjD,cAAS,GAAT,SAAS,CAA6C;QACtD,WAAM,GAAN,MAAM,CAA2C;IACzD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,IAAmD,EACnD,MAAmD,EACnD,EAAE,CACF,IAAI,WAAW,CAGb,IAAW,EAAE,MAAa,CAAC,CAAA;AAE/B,MAAM,OAAO,YAAY;IAGZ;IAIA;IANF,IAAI,GAAG,cAAc,CAAA;IAC9B,YACW,SAGiB,EACjB,MAAiD;QAJjD,cAAS,GAAT,SAAS,CAGQ;QACjB,WAAM,GAAN,MAAM,CAA2C;IACzD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,IAG4B,EAC5B,MAAmD,EACnD,EAAE,CACF,IAAI,YAAY,CAQd,IAAW,EAAE,MAAa,CAAC,CAAA"}
|
package/gateway.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export { DiscordGateway, LiveDiscordGateway } from "./DiscordGateway.js";
|
|
|
5
5
|
export * as DiscordWS from "./DiscordGateway/DiscordWS.js";
|
|
6
6
|
export * as Shard from "./DiscordGateway/Shard.js";
|
|
7
7
|
export * as ShardStore from "./DiscordGateway/ShardStore.js";
|
|
8
|
+
export * as SendEvent from "./DiscordGateway/Shard/sendEvents.js";
|
|
8
9
|
export * as WS from "./DiscordGateway/WS.js";
|
|
9
10
|
export { InteractionsRegistry, InteractionsRegistryLive, run as runIx, } from "./Interactions/gateway.js";
|
|
10
11
|
export declare const MemoryRateLimit: import("@effect-http/client/_common").Layer<Log.Log, never, import("dfx").RateLimiter>;
|
package/gateway.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["src/gateway.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAmB,GAAG,EAAE,MAAM,KAAK,CAAA;AAMzD,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,KAAK,KAAK,MAAM,2BAA2B,CAAA;AAClD,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,GAAG,IAAI,KAAK,GACb,MAAM,2BAA2B,CAAA;AAElC,eAAO,MAAM,eAAe,wFAA8C,CAAA;AAE1E,eAAO,MAAM,SAAS,qPAEsC,CAAA;AAE5D,eAAO,MAAM,oBAAoB,WACvB,OAAO,IAAI,CAAC,cAAc,QAAQ,CAAC,qRAU1C,CAAA;AAEH,eAAO,MAAM,QAAQ,WAAY,OAAO,IAAI,CAAC,cAAc,QAAQ,CAAC,yOACV,CAAA"}
|
|
1
|
+
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["src/gateway.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAmB,GAAG,EAAE,MAAM,KAAK,CAAA;AAMzD,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,KAAK,KAAK,MAAM,2BAA2B,CAAA;AAClD,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,SAAS,MAAM,sCAAsC,CAAA;AACjE,OAAO,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,GAAG,IAAI,KAAK,GACb,MAAM,2BAA2B,CAAA;AAElC,eAAO,MAAM,eAAe,wFAA8C,CAAA;AAE1E,eAAO,MAAM,SAAS,qPAEsC,CAAA;AAE5D,eAAO,MAAM,oBAAoB,WACvB,OAAO,IAAI,CAAC,cAAc,QAAQ,CAAC,qRAU1C,CAAA;AAEH,eAAO,MAAM,QAAQ,WAAY,OAAO,IAAI,CAAC,cAAc,QAAQ,CAAC,yOACV,CAAA"}
|
package/gateway.js
CHANGED
|
@@ -12,6 +12,7 @@ export { DiscordGateway, LiveDiscordGateway } from "./DiscordGateway.js";
|
|
|
12
12
|
export * as DiscordWS from "./DiscordGateway/DiscordWS.js";
|
|
13
13
|
export * as Shard from "./DiscordGateway/Shard.js";
|
|
14
14
|
export * as ShardStore from "./DiscordGateway/ShardStore.js";
|
|
15
|
+
export * as SendEvent from "./DiscordGateway/Shard/sendEvents.js";
|
|
15
16
|
export * as WS from "./DiscordGateway/WS.js";
|
|
16
17
|
export { InteractionsRegistry, InteractionsRegistryLive, run as runIx, } from "./Interactions/gateway.js";
|
|
17
18
|
export const MemoryRateLimit = tsplus_module_1.provide(LiveRateLimiter)(LiveMemoryRateLimitStore);
|
package/gateway.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["src/gateway.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAE1E,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,KAAK,KAAK,MAAM,2BAA2B,CAAA;AAClD,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,GAAG,IAAI,KAAK,GACb,MAAM,2BAA2B,CAAA;AAElC,MAAM,CAAC,MAAM,eAAe,2BAA+B,eAAe,EAA3C,wBAAwB,CAAmB,CAAA;AAE1E,MAAM,CAAC,MAAM,SAAS,2BAEpB,uBAA0C,eAAe,EAAxD,8BAAmB,kBAAkB,EAApC,eAAe,EAAsB,EAAmB,EAD1D,uBAAmD,sBAAsB,wBAAjD,wBAAwB,EAA/C,oBAAoB,GAAqD,CAChB,CAAA;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAA2C,EAC3C,EAAE,CACF,6BACE,oBAAA,2CAAA,uBAAc,MAAM,CAAC,GACP,aAAa,CAAC,IAAI,CAAC,EAC1B,MAAM,CAAC,EAAE;IACZ,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAA;IAC7D,MAAM,UAAU,GAAG,wBAAc,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACrE,oCAA8B,SAAS,wBAAtB,UAAU,EAApB,OAAO,GAAyB;AACzC,CAAC,CAAC,CACL,CAAA;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAA2C,EAAE,EAAE,yBAC1C,oBAAoB,CAAC,MAAM,CAAC,EAAxD,wBAAwB,CAAgC,CAAA"}
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["src/gateway.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAE1E,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,KAAK,KAAK,MAAM,2BAA2B,CAAA;AAClD,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,SAAS,MAAM,sCAAsC,CAAA;AACjE,OAAO,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,GAAG,IAAI,KAAK,GACb,MAAM,2BAA2B,CAAA;AAElC,MAAM,CAAC,MAAM,eAAe,2BAA+B,eAAe,EAA3C,wBAAwB,CAAmB,CAAA;AAE1E,MAAM,CAAC,MAAM,SAAS,2BAEpB,uBAA0C,eAAe,EAAxD,8BAAmB,kBAAkB,EAApC,eAAe,EAAsB,EAAmB,EAD1D,uBAAmD,sBAAsB,wBAAjD,wBAAwB,EAA/C,oBAAoB,GAAqD,CAChB,CAAA;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAA2C,EAC3C,EAAE,CACF,6BACE,oBAAA,2CAAA,uBAAc,MAAM,CAAC,GACP,aAAa,CAAC,IAAI,CAAC,EAC1B,MAAM,CAAC,EAAE;IACZ,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAA;IAC7D,MAAM,UAAU,GAAG,wBAAc,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACrE,oCAA8B,SAAS,wBAAtB,UAAU,EAApB,OAAO,GAAyB;AACzC,CAAC,CAAC,CACL,CAAA;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAA2C,EAAE,EAAE,yBAC1C,oBAAoB,CAAC,MAAM,CAAC,EAAxD,wBAAwB,CAAgC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dfx",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.49.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"dotenv": "^16.1.4",
|
|
33
33
|
"lerna": "^7.0.0",
|
|
34
34
|
"madge": "^6.1.0",
|
|
35
|
-
"typescript": "https://cdn.jsdelivr.net/npm/@tsplus/installer@0.0.
|
|
35
|
+
"typescript": "https://cdn.jsdelivr.net/npm/@tsplus/installer@0.0.177/compiler/typescript.tgz"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@effect-http/client": "^0.27.0",
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"ws": "^8.13.0"
|
|
49
49
|
},
|
|
50
50
|
"sideEffects": false,
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "927bb7a718347700774353d155db8bac66586e98"
|
|
52
52
|
}
|
|
@@ -1,37 +1,43 @@
|
|
|
1
1
|
import { Discord } from "dfx/_common"
|
|
2
2
|
|
|
3
|
-
export const heartbeat = (
|
|
3
|
+
export const heartbeat = (
|
|
4
|
+
d: Discord.Heartbeat,
|
|
5
|
+
): Discord.GatewayPayload<Discord.Heartbeat> => ({
|
|
4
6
|
op: Discord.GatewayOpcode.HEARTBEAT,
|
|
5
7
|
d,
|
|
6
8
|
})
|
|
7
9
|
|
|
8
|
-
export const identify = (
|
|
10
|
+
export const identify = (
|
|
11
|
+
d: Discord.Identify,
|
|
12
|
+
): Discord.GatewayPayload<Discord.Identify> => ({
|
|
9
13
|
op: Discord.GatewayOpcode.IDENTIFY,
|
|
10
14
|
d,
|
|
11
15
|
})
|
|
12
16
|
|
|
13
|
-
export const resume = (
|
|
17
|
+
export const resume = (
|
|
18
|
+
d: Discord.Resume,
|
|
19
|
+
): Discord.GatewayPayload<Discord.Resume> => ({
|
|
14
20
|
op: Discord.GatewayOpcode.RESUME,
|
|
15
21
|
d,
|
|
16
22
|
})
|
|
17
23
|
|
|
18
24
|
export const requestGuildMembers = (
|
|
19
25
|
d: Discord.RequestGuildMember,
|
|
20
|
-
): Discord.GatewayPayload => ({
|
|
26
|
+
): Discord.GatewayPayload<Discord.RequestGuildMember> => ({
|
|
21
27
|
op: Discord.GatewayOpcode.REQUEST_GUILD_MEMBERS,
|
|
22
28
|
d,
|
|
23
29
|
})
|
|
24
30
|
|
|
25
31
|
export const voiceStateUpdate = (
|
|
26
32
|
d: Discord.UpdateVoiceState,
|
|
27
|
-
): Discord.GatewayPayload => ({
|
|
33
|
+
): Discord.GatewayPayload<Discord.UpdateVoiceState> => ({
|
|
28
34
|
op: Discord.GatewayOpcode.VOICE_STATE_UPDATE,
|
|
29
35
|
d,
|
|
30
36
|
})
|
|
31
37
|
|
|
32
38
|
export const presenceUpdate = (
|
|
33
39
|
d: Discord.UpdatePresence,
|
|
34
|
-
): Discord.GatewayPayload => ({
|
|
40
|
+
): Discord.GatewayPayload<Discord.UpdatePresence> => ({
|
|
35
41
|
op: Discord.GatewayOpcode.PRESENCE_UPDATE,
|
|
36
42
|
d,
|
|
37
43
|
})
|
|
@@ -23,6 +23,7 @@ export const make = Do($ => {
|
|
|
23
23
|
const connect = (
|
|
24
24
|
shard: [id: number, count: number],
|
|
25
25
|
hub: Hub<Discord.GatewayPayload<Discord.ReceiveEvent>>,
|
|
26
|
+
sendQueue: Dequeue<Discord.GatewayPayload<Discord.SendEvent>>,
|
|
26
27
|
) =>
|
|
27
28
|
Do($ => {
|
|
28
29
|
const outboundQueue = $(Queue.unbounded<Message>())
|
|
@@ -155,16 +156,15 @@ export const make = Do($ => {
|
|
|
155
156
|
$(effect)
|
|
156
157
|
})
|
|
157
158
|
|
|
159
|
+
const drainSendQueue = sendQueue.take().tap(send).forever
|
|
160
|
+
|
|
158
161
|
const run = socket.take
|
|
159
162
|
.flatMap(onPayload)
|
|
160
163
|
.forever.zipParLeft(heartbeats)
|
|
164
|
+
.zipParLeft(drainSendQueue)
|
|
161
165
|
.zipParLeft(socket.run)
|
|
162
166
|
|
|
163
|
-
return {
|
|
164
|
-
run,
|
|
165
|
-
send: (p: Discord.GatewayPayload) => send(p),
|
|
166
|
-
reconnect: send(Reconnect),
|
|
167
|
-
} as const
|
|
167
|
+
return { run } as const
|
|
168
168
|
})
|
|
169
169
|
|
|
170
170
|
return { connect } as const
|
|
@@ -55,7 +55,10 @@ const make = Do($ => {
|
|
|
55
55
|
),
|
|
56
56
|
)
|
|
57
57
|
|
|
58
|
-
const run = (
|
|
58
|
+
const run = (
|
|
59
|
+
hub: Hub<Discord.GatewayPayload<Discord.ReceiveEvent>>,
|
|
60
|
+
sendQueue: Dequeue<Discord.GatewayPayload<Discord.SendEvent>>,
|
|
61
|
+
) =>
|
|
59
62
|
Do($ => {
|
|
60
63
|
const deferred = $(
|
|
61
64
|
Deferred.make<WebSocketError | WebSocketCloseError, never>(),
|
|
@@ -75,7 +78,7 @@ const make = Do($ => {
|
|
|
75
78
|
config.identifyRateLimit[1],
|
|
76
79
|
),
|
|
77
80
|
)
|
|
78
|
-
.flatMap(c => shard.connect([c.id, c.totalCount], hub))
|
|
81
|
+
.flatMap(c => shard.connect([c.id, c.totalCount], hub, sendQueue))
|
|
79
82
|
.flatMap(
|
|
80
83
|
shard => shard.run.catchAllCause(_ => deferred.failCause(_)).fork,
|
|
81
84
|
).forever
|
package/src/DiscordGateway.ts
CHANGED
|
@@ -24,18 +24,25 @@ export const make = Do($ => {
|
|
|
24
24
|
const sharder = $(Sharder)
|
|
25
25
|
const hub = $(Hub.unbounded<Discord.GatewayPayload<Discord.ReceiveEvent>>())
|
|
26
26
|
|
|
27
|
+
const sendQueue = $(
|
|
28
|
+
Queue.unbounded<Discord.GatewayPayload<Discord.SendEvent>>(),
|
|
29
|
+
)
|
|
30
|
+
const send = (payload: Discord.GatewayPayload<Discord.SendEvent>) =>
|
|
31
|
+
sendQueue.offer(payload)
|
|
32
|
+
|
|
27
33
|
const dispatch = Stream.fromHub(hub)
|
|
28
34
|
const fromDispatch = fromDispatchFactory(dispatch)
|
|
29
35
|
const handleDispatch = handleDispatchFactory(hub)
|
|
30
36
|
|
|
31
|
-
const run = sharder.run(hub)
|
|
37
|
+
const run = sharder.run(hub, sendQueue)
|
|
32
38
|
|
|
33
39
|
return {
|
|
34
40
|
run,
|
|
35
41
|
dispatch,
|
|
36
42
|
fromDispatch,
|
|
37
43
|
handleDispatch,
|
|
38
|
-
|
|
44
|
+
send,
|
|
45
|
+
} as const
|
|
39
46
|
})
|
|
40
47
|
|
|
41
48
|
export interface DiscordGateway extends Effect.Success<typeof make> {}
|
|
@@ -5,16 +5,6 @@ import {
|
|
|
5
5
|
SubCommandContext,
|
|
6
6
|
} from "./context.js"
|
|
7
7
|
|
|
8
|
-
type DescriptionMissing<A> = [A] extends [
|
|
9
|
-
{
|
|
10
|
-
readonly type: Exclude<Discord.ApplicationCommandType, 1>
|
|
11
|
-
},
|
|
12
|
-
]
|
|
13
|
-
? false
|
|
14
|
-
: A extends { readonly description: string }
|
|
15
|
-
? false
|
|
16
|
-
: true
|
|
17
|
-
|
|
18
8
|
export type InteractionDefinition<R, E> =
|
|
19
9
|
| GlobalApplicationCommand<R, E>
|
|
20
10
|
| GuildApplicationCommand<R, E>
|
|
@@ -36,9 +26,7 @@ export const global = <
|
|
|
36
26
|
const A extends DeepReadonlyObject<Discord.CreateGlobalApplicationCommandParams>,
|
|
37
27
|
>(
|
|
38
28
|
command: A,
|
|
39
|
-
handle:
|
|
40
|
-
? "command description is missing"
|
|
41
|
-
: CommandHandler<R, E, A>,
|
|
29
|
+
handle: CommandHandler<R, E, A>,
|
|
42
30
|
) =>
|
|
43
31
|
new GlobalApplicationCommand<
|
|
44
32
|
Exclude<R, Discord.Interaction | Discord.ApplicationCommandDatum>,
|
|
@@ -59,9 +47,7 @@ export const guild = <
|
|
|
59
47
|
const A extends DeepReadonlyObject<Discord.CreateGuildApplicationCommandParams>,
|
|
60
48
|
>(
|
|
61
49
|
command: A,
|
|
62
|
-
handle:
|
|
63
|
-
? "command description is missing"
|
|
64
|
-
: CommandHandler<R, E, A>,
|
|
50
|
+
handle: CommandHandler<R, E, A>,
|
|
65
51
|
) =>
|
|
66
52
|
new GuildApplicationCommand<
|
|
67
53
|
Exclude<R, Discord.Interaction | Discord.ApplicationCommandDatum>,
|
package/src/gateway.ts
CHANGED
|
@@ -10,6 +10,7 @@ export { DiscordGateway, LiveDiscordGateway } from "./DiscordGateway.js"
|
|
|
10
10
|
export * as DiscordWS from "./DiscordGateway/DiscordWS.js"
|
|
11
11
|
export * as Shard from "./DiscordGateway/Shard.js"
|
|
12
12
|
export * as ShardStore from "./DiscordGateway/ShardStore.js"
|
|
13
|
+
export * as SendEvent from "./DiscordGateway/Shard/sendEvents.js"
|
|
13
14
|
export * as WS from "./DiscordGateway/WS.js"
|
|
14
15
|
export {
|
|
15
16
|
InteractionsRegistry,
|
package/src/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dfx",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.49.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"dotenv": "^16.1.4",
|
|
33
33
|
"lerna": "^7.0.0",
|
|
34
34
|
"madge": "^6.1.0",
|
|
35
|
-
"typescript": "https://cdn.jsdelivr.net/npm/@tsplus/installer@0.0.
|
|
35
|
+
"typescript": "https://cdn.jsdelivr.net/npm/@tsplus/installer@0.0.177/compiler/typescript.tgz"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@effect-http/client": "^0.27.0",
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"ws": "^8.13.0"
|
|
49
49
|
},
|
|
50
50
|
"sideEffects": false,
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "927bb7a718347700774353d155db8bac66586e98"
|
|
52
52
|
}
|