dfx 0.41.1 → 0.42.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.
- package/Cache/prelude.d.ts +3 -0
- package/Cache/prelude.js +5 -2
- package/Cache/prelude.js.map +1 -1
- package/Cache.d.ts +6 -2
- package/Cache.js +6 -2
- package/Cache.js.map +1 -1
- package/DiscordGateway/DiscordWS.js +2 -1
- package/DiscordGateway/DiscordWS.js.map +1 -1
- package/DiscordGateway/WS.d.ts +4 -3
- package/DiscordGateway/WS.js +18 -16
- package/DiscordGateway/WS.js.map +1 -1
- package/package.json +2 -2
package/Cache/prelude.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ export interface OpsOptions<E, A> {
|
|
|
20
20
|
export declare const ops: <E, T>({ id, create, update, remove }: OpsOptions<E, T>) => Stream<never, E, CacheOp<T>>;
|
|
21
21
|
export declare const guilds: <RM, EM, E>(makeDriver: Effect<RM, EM, CacheDriver<E, Discord.Guild>>) => Effect<DiscordREST | DiscordGateway | RM, EM, {
|
|
22
22
|
get: (id: string) => Effect<never, import("../DiscordREST.js").DiscordRESTError | import("@effect-http/client").ResponseDecodeError | E, Discord.Guild>;
|
|
23
|
+
put: (_: Discord.Guild) => Effect<never, E, void>;
|
|
23
24
|
update: <R, E_1>(id: string, f: (_: Discord.Guild) => Effect<R, E_1, Discord.Guild>) => Effect<R, import("../DiscordREST.js").DiscordRESTError | import("@effect-http/client").ResponseDecodeError | E | E_1, Discord.Guild>;
|
|
24
25
|
run: Effect<never, E, never>;
|
|
25
26
|
size: Effect<never, E, number>;
|
|
@@ -29,6 +30,7 @@ export declare const guilds: <RM, EM, E>(makeDriver: Effect<RM, EM, CacheDriver<
|
|
|
29
30
|
}>;
|
|
30
31
|
export declare const channels: <RM, EM, E>(makeDriver: Effect<RM, EM, ParentCacheDriver<E, Discord.Channel>>) => Effect<DiscordREST | DiscordGateway | RM, EM, {
|
|
31
32
|
get: (parentId: string, id: string) => Effect<never, import("../DiscordREST.js").DiscordRESTError | import("@effect-http/client").ResponseDecodeError | E, Discord.Channel>;
|
|
33
|
+
put: (_: Discord.Channel) => Effect<never, import("../DiscordREST.js").DiscordRESTError | import("@effect-http/client").ResponseDecodeError | E, void>;
|
|
32
34
|
update: <R, E_1>(parentId: string, id: string, f: (_: Discord.Channel) => Effect<R, E_1, Discord.Channel>) => Effect<R, import("../DiscordREST.js").DiscordRESTError | import("@effect-http/client").ResponseDecodeError | E | E_1, Discord.Channel>;
|
|
33
35
|
getForParent: (parentId: string) => Effect<never, import("../DiscordREST.js").DiscordRESTError | import("@effect-http/client").ResponseDecodeError | E, ReadonlyMap<string, Discord.Channel>>;
|
|
34
36
|
run: Effect<never, E, never>;
|
|
@@ -41,6 +43,7 @@ export declare const channels: <RM, EM, E>(makeDriver: Effect<RM, EM, ParentCach
|
|
|
41
43
|
}>;
|
|
42
44
|
export declare const roles: <RM, EM, E>(makeDriver: Effect<RM, EM, ParentCacheDriver<E, Discord.Role>>) => Effect<DiscordREST | DiscordGateway | RM, EM, {
|
|
43
45
|
get: (parentId: string, id: string) => Effect<never, CacheMissError | E, Discord.Role>;
|
|
46
|
+
put: (_: Discord.Role) => Effect<never, CacheMissError | E, void>;
|
|
44
47
|
update: <R, E_1>(parentId: string, id: string, f: (_: Discord.Role) => Effect<R, E_1, Discord.Role>) => Effect<R, CacheMissError | E | E_1, Discord.Role>;
|
|
45
48
|
getForParent: (parentId: string) => Effect<never, import("../DiscordREST.js").DiscordRESTError | import("@effect-http/client").ResponseDecodeError | E, ReadonlyMap<string, Discord.Role>>;
|
|
46
49
|
run: Effect<never, E, never>;
|
package/Cache/prelude.js
CHANGED
|
@@ -52,6 +52,7 @@ export const ops = ({ id, create, update, remove }) => {
|
|
|
52
52
|
};
|
|
53
53
|
export const guilds = (makeDriver) => tsplus_module_2.flatMap(makeDriver, driver => tsplus_module_2.flatMap(DiscordGateway, gateway => tsplus_module_2.map(DiscordREST, rest => make({
|
|
54
54
|
driver,
|
|
55
|
+
id: _ => _.id,
|
|
55
56
|
ops: ops({
|
|
56
57
|
id: (g) => g.id,
|
|
57
58
|
create: tsplus_module_1.map(gateway.fromDispatch("GUILD_CREATE"), g => ({
|
|
@@ -68,6 +69,7 @@ export const guilds = (makeDriver) => tsplus_module_2.flatMap(makeDriver, driver
|
|
|
68
69
|
}))));
|
|
69
70
|
export const channels = (makeDriver) => tsplus_module_2.flatMap(makeDriver, driver => tsplus_module_2.flatMap(DiscordGateway, gateway => tsplus_module_2.map(DiscordREST, rest => makeWithParent({
|
|
70
71
|
driver,
|
|
72
|
+
id: _ => tsplus_module_2.succeed([_.guild_id, _.id]),
|
|
71
73
|
ops: opsWithParent({
|
|
72
74
|
id: (a) => a.id,
|
|
73
75
|
fromParent: tsplus_module_1.map(gateway
|
|
@@ -86,6 +88,7 @@ export const channels = (makeDriver) => tsplus_module_2.flatMap(makeDriver, driv
|
|
|
86
88
|
}))));
|
|
87
89
|
export const roles = (makeDriver) => tsplus_module_2.flatMap(makeDriver, driver => tsplus_module_2.flatMap(DiscordGateway, gateway => tsplus_module_2.map(DiscordREST, rest => makeWithParent({
|
|
88
90
|
driver,
|
|
91
|
+
id: _ => tsplus_module_2.fail(new CacheMissError("RolesCache/id", _.id)),
|
|
89
92
|
ops: opsWithParent({
|
|
90
93
|
id: (a) => a.id,
|
|
91
94
|
fromParent: tsplus_module_1.map(gateway
|
|
@@ -95,11 +98,11 @@ export const roles = (makeDriver) => tsplus_module_2.flatMap(makeDriver, driver
|
|
|
95
98
|
update: tsplus_module_1.map(gateway
|
|
96
99
|
.fromDispatch("GUILD_ROLE_UPDATE"), r => [r.guild_id, r.role]),
|
|
97
100
|
remove: tsplus_module_1.map(gateway
|
|
98
|
-
.fromDispatch("GUILD_ROLE_DELETE"),
|
|
101
|
+
.fromDispatch("GUILD_ROLE_DELETE"), r => [r.guild_id, r.role_id]),
|
|
99
102
|
parentRemove: tsplus_module_1.map(gateway.fromDispatch("GUILD_DELETE"), g => g.id),
|
|
100
103
|
}),
|
|
101
104
|
onMiss: (_, id) => tsplus_module_2.fail(new CacheMissError("RolesCache", id)),
|
|
102
105
|
onParentMiss: guildId => tsplus_module_2.map(tsplus_module_2.flatMap(rest
|
|
103
|
-
.getGuildRoles(guildId), r => r.json),
|
|
106
|
+
.getGuildRoles(guildId), r => r.json), _ => _.map(role => [role.id, role])),
|
|
104
107
|
}))));
|
|
105
108
|
//# sourceMappingURL=prelude.js.map
|
package/Cache/prelude.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prelude.js","sourceRoot":"","sources":["../../src/Cache/prelude.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prelude.js","sourceRoot":"","sources":["../../src/Cache/prelude.ts"],"names":[],"mappings":"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"}
|
package/Cache.d.ts
CHANGED
|
@@ -33,13 +33,15 @@ export type CacheOp<T> = {
|
|
|
33
33
|
op: "delete";
|
|
34
34
|
resourceId: string;
|
|
35
35
|
};
|
|
36
|
-
export declare const makeWithParent: <EOps, EDriver, EMiss, EPMiss, A>({ driver, ops, onMiss, onParentMiss, }: {
|
|
36
|
+
export declare const makeWithParent: <EOps, EDriver, EMiss, EPMiss, A>({ driver, ops, id, onMiss, onParentMiss, }: {
|
|
37
37
|
driver: ParentCacheDriver<EDriver, A>;
|
|
38
38
|
ops?: import("@effect-http/client/_common").Stream<never, EOps, ParentCacheOp<A>> | undefined;
|
|
39
|
+
id: (_: A) => import("@effect/io/Effect").Effect<never, EMiss, readonly [parentId: string, id: string]>;
|
|
39
40
|
onMiss: (parentId: string, id: string) => import("@effect/io/Effect").Effect<never, EMiss, A>;
|
|
40
41
|
onParentMiss: (parentId: string) => import("@effect/io/Effect").Effect<never, EPMiss, [id: string, resource: A][]>;
|
|
41
42
|
}) => {
|
|
42
43
|
get: (parentId: string, id: string) => import("@effect/io/Effect").Effect<never, EDriver | EMiss, A>;
|
|
44
|
+
put: (_: A) => import("@effect/io/Effect").Effect<never, EDriver | EMiss, void>;
|
|
43
45
|
update: <R, E>(parentId: string, id: string, f: (_: A) => import("@effect/io/Effect").Effect<R, E, A>) => import("@effect/io/Effect").Effect<R, EDriver | EMiss | E, A>;
|
|
44
46
|
getForParent: (parentId: string) => import("@effect/io/Effect").Effect<never, EDriver | EPMiss, ReadonlyMap<string, A>>;
|
|
45
47
|
run: import("@effect/io/Effect").Effect<never, EOps | EDriver, never>;
|
|
@@ -50,12 +52,14 @@ export declare const makeWithParent: <EOps, EDriver, EMiss, EPMiss, A>({ driver,
|
|
|
50
52
|
parentDelete: (parentId: string) => import("@effect/io/Effect").Effect<never, EDriver, void>;
|
|
51
53
|
refreshTTL: (parentId: string, resourceId: string) => import("@effect/io/Effect").Effect<never, EDriver, void>;
|
|
52
54
|
};
|
|
53
|
-
export declare const make: <EOps, EDriver, EMiss, A>({ driver, ops, onMiss, }: {
|
|
55
|
+
export declare const make: <EOps, EDriver, EMiss, A>({ driver, ops, id, onMiss, }: {
|
|
54
56
|
driver: CacheDriver<EDriver, A>;
|
|
55
57
|
ops?: import("@effect-http/client/_common").Stream<never, EOps, CacheOp<A>> | undefined;
|
|
58
|
+
id: (_: A) => string;
|
|
56
59
|
onMiss: (id: string) => import("@effect/io/Effect").Effect<never, EMiss, A>;
|
|
57
60
|
}) => {
|
|
58
61
|
get: (id: string) => import("@effect/io/Effect").Effect<never, EDriver | EMiss, A>;
|
|
62
|
+
put: (_: A) => import("@effect/io/Effect").Effect<never, EDriver, void>;
|
|
59
63
|
update: <R, E>(id: string, f: (_: A) => import("@effect/io/Effect").Effect<R, E, A>) => import("@effect/io/Effect").Effect<R, EDriver | EMiss | E, A>;
|
|
60
64
|
run: import("@effect/io/Effect").Effect<never, EOps | EDriver, never>;
|
|
61
65
|
size: import("@effect/io/Effect").Effect<never, EDriver, number>;
|
package/Cache.js
CHANGED
|
@@ -3,7 +3,7 @@ import * as tsplus_module_2 from "@effect/io/Effect";
|
|
|
3
3
|
export * from "./Cache/driver.js";
|
|
4
4
|
export { create as memoryDriver, createWithParent as memoryParentDriver, } from "./Cache/memory.js";
|
|
5
5
|
export { create as memoryTTLDriver, createWithParent as memoryTTLParentDriver, } from "./Cache/memoryTTL.js";
|
|
6
|
-
export const makeWithParent = ({ driver, ops = tsplus_module_1.empty, onMiss, onParentMiss, }) => {
|
|
6
|
+
export const makeWithParent = ({ driver, ops = tsplus_module_1.empty, id, onMiss, onParentMiss, }) => {
|
|
7
7
|
const sync = tsplus_module_1.runDrain(tsplus_module_1.tap(ops, (op) => {
|
|
8
8
|
switch (op.op) {
|
|
9
9
|
case "create":
|
|
@@ -17,16 +17,18 @@ export const makeWithParent = ({ driver, ops = tsplus_module_1.empty, onMiss, on
|
|
|
17
17
|
}));
|
|
18
18
|
const get = (parentId, id) => tsplus_module_2.someOrElseEffect(driver
|
|
19
19
|
.get(parentId, id), () => tsplus_module_2.tap(onMiss(parentId, id), a => driver.set(parentId, id, a)));
|
|
20
|
+
const put = (_) => tsplus_module_2.flatMap(id(_), ([parentId, id]) => driver.set(parentId, id, _));
|
|
20
21
|
const update = (parentId, id, f) => tsplus_module_2.tap(tsplus_module_2.flatMap(get(parentId, id), f), _ => driver.set(parentId, id, _));
|
|
21
22
|
return {
|
|
22
23
|
...driver,
|
|
23
24
|
get,
|
|
25
|
+
put,
|
|
24
26
|
update,
|
|
25
27
|
getForParent: (parentId) => tsplus_module_2.someOrElseEffect(driver.getForParent(parentId), () => tsplus_module_2.map(tsplus_module_2.tap(onParentMiss(parentId), entries => tsplus_module_2.allPar(entries.map(([id, a]) => driver.set(parentId, id, a)))), entries => new Map(entries))),
|
|
26
28
|
run: tsplus_module_2.zipParRight(sync, driver.run),
|
|
27
29
|
};
|
|
28
30
|
};
|
|
29
|
-
export const make = ({ driver, ops = tsplus_module_1.empty, onMiss, }) => {
|
|
31
|
+
export const make = ({ driver, ops = tsplus_module_1.empty, id, onMiss, }) => {
|
|
30
32
|
const sync = tsplus_module_1.runDrain(tsplus_module_1.tap(ops, (op) => {
|
|
31
33
|
switch (op.op) {
|
|
32
34
|
case "create":
|
|
@@ -38,10 +40,12 @@ export const make = ({ driver, ops = tsplus_module_1.empty, onMiss, }) => {
|
|
|
38
40
|
}));
|
|
39
41
|
const get = (id) => tsplus_module_2.someOrElseEffect(driver
|
|
40
42
|
.get(id), () => tsplus_module_2.tap(onMiss(id), a => driver.set(id, a)));
|
|
43
|
+
const put = (_) => driver.set(id(_), _);
|
|
41
44
|
const update = (id, f) => tsplus_module_2.tap(tsplus_module_2.flatMap(get(id), f), _ => driver.set(id, _));
|
|
42
45
|
return {
|
|
43
46
|
...driver,
|
|
44
47
|
get,
|
|
48
|
+
put,
|
|
45
49
|
update,
|
|
46
50
|
run: tsplus_module_2.zipParRight(sync, driver.run),
|
|
47
51
|
};
|
package/Cache.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cache.js","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":";;AAEA,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,MAAM,IAAI,YAAY,EACtB,gBAAgB,IAAI,kBAAkB,GACvC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,MAAM,IAAI,eAAe,EACzB,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,sBAAsB,CAAA;AAa7B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAkC,EAC9D,MAAM,EACN,GAAG,wBAAe,EAClB,MAAM,EACN,YAAY,
|
|
1
|
+
{"version":3,"file":"Cache.js","sourceRoot":"","sources":["../src/Cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,8 @@ const make = tsplus_module_5.flatMap(WS, ws => tsplus_module_5.map(DiscordWSCode
|
|
|
17
17
|
const takeOutbound = tsplus_module_5.map(outbound, a => a === Reconnect ? a : encoding.encode(a));
|
|
18
18
|
return tsplus_module_5.map(ws.connect(urlRef, takeOutbound, onReconnect), socket => {
|
|
19
19
|
const take = tsplus_module_5.map(socket.take, encoding.decode);
|
|
20
|
-
const run = tsplus_module_5.retry(socket.run, tsplus_module_4.whileInput(tsplus_module_4.exponential(tsplus_module_3.seconds(0.5)), (_) => _._tag === "WebSocketCloseError" && _.code < 2000)
|
|
20
|
+
const run = tsplus_module_5.retry(socket.run, tsplus_module_4.whileInput(tsplus_module_4.exponential(tsplus_module_3.seconds(0.5)), (_) => (_._tag === "WebSocketCloseError" && _.code < 2000) ||
|
|
21
|
+
(_._tag === "WebSocketError" && _.reason === "open")));
|
|
21
22
|
return {
|
|
22
23
|
run,
|
|
23
24
|
take,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscordWS.js","sourceRoot":"","sources":["../../src/DiscordGateway/DiscordWS.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,MAAM,EACN,SAAS,EACT,EAAE,GAGH,MAAM,uBAAuB,CAAA;AAkB9B,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAA,GAAG,EAAkB,CAAA;AACnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,wBAAc,cAAc,EAAE;IAClE,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC5C,CAAC,CAAA;AAEF,MAAM,IAAI,2BACK,EAAE,EAAT,EAAE,wBACW,cAAc,EAA3B,QAAQ;IAEd,MAAM,OAAO,GAAG,CAAC,EACf,GAAG,GAAG,2BAA2B,EACjC,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,WAAW,GACF,EAAE,EAAE,yBAGT,qBAAS,GAAG,GAAG,MAAM,OAAO,aAAa,QAAQ,CAAC,IAAI,EAAE,CAAC,EADrD,MAAM;QAGZ,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CAC7B,oBAAA,MAAM,EAAK,GAAG,GAAG,MAAM,OAAO,aAAa,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;QAC7D,MAAM,YAAY,GAAG,oBAAA,QAAQ,EAAK,CAAC,CAAC,EAAE,CACpC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CACzC,CAAA;mCACgB,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,EAAxD,MAAM;YACZ,MAAM,IAAI,GAAG,oBAAA,MAAM,CAAC,IAAI,EAAK,QAAQ,CAAC,MAAM,CAAC,CAAA;YAE7C,MAAM,GAAG,GAAG,sBAAA,MAAM,CAAC,GAAG,EACpB,2BAAA,4BAAqB,wBAAiB,GAAG,CAAC,CAAC,EACzC,CAAC,CAAuC,EAAE,EAAE,CAC1C,CAAC,CAAC,IAAI,KAAK,qBAAqB,IAAI,CAAC,CAAC,IAAI,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"DiscordWS.js","sourceRoot":"","sources":["../../src/DiscordGateway/DiscordWS.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,MAAM,EACN,SAAS,EACT,EAAE,GAGH,MAAM,uBAAuB,CAAA;AAkB9B,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAA,GAAG,EAAkB,CAAA;AACnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,wBAAc,cAAc,EAAE;IAClE,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC5C,CAAC,CAAA;AAEF,MAAM,IAAI,2BACK,EAAE,EAAT,EAAE,wBACW,cAAc,EAA3B,QAAQ;IAEd,MAAM,OAAO,GAAG,CAAC,EACf,GAAG,GAAG,2BAA2B,EACjC,OAAO,GAAG,EAAE,EACZ,QAAQ,EACR,WAAW,GACF,EAAE,EAAE,yBAGT,qBAAS,GAAG,GAAG,MAAM,OAAO,aAAa,QAAQ,CAAC,IAAI,EAAE,CAAC,EADrD,MAAM;QAGZ,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CAC7B,oBAAA,MAAM,EAAK,GAAG,GAAG,MAAM,OAAO,aAAa,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;QAC7D,MAAM,YAAY,GAAG,oBAAA,QAAQ,EAAK,CAAC,CAAC,EAAE,CACpC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CACzC,CAAA;mCACgB,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,EAAxD,MAAM;YACZ,MAAM,IAAI,GAAG,oBAAA,MAAM,CAAC,IAAI,EAAK,QAAQ,CAAC,MAAM,CAAC,CAAA;YAE7C,MAAM,GAAG,GAAG,sBAAA,MAAM,CAAC,GAAG,EACpB,2BAAA,4BAAqB,wBAAiB,GAAG,CAAC,CAAC,EACzC,CAAC,CAAuC,EAAE,EAAE,CAC1C,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,IAAI,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;gBACnD,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CACvD,CACF,CAAA;YAED,OAAO;gBACL,GAAG;gBACH,IAAI;gBACJ,MAAM;aACE,CAAA;;MACV,CAAA;IAEJ,OAAO,EAAE,OAAO,EAAW,CAAA;GAC3B,CAAA;AAGF,MAAM,CAAC,MAAM,SAAS,GAAG,gBAAA,GAAG,EAAa,CAAA;AACzC,MAAM,CAAC,MAAM,aAAa,2BAAa,wBAAA,IAAI,EAAS,SAAS,CAAC,EAAjC,MAAM,CAA2B,CAAA"}
|
package/DiscordGateway/WS.d.ts
CHANGED
|
@@ -7,9 +7,10 @@ export declare const Reconnect: unique symbol;
|
|
|
7
7
|
export type Reconnect = typeof Reconnect;
|
|
8
8
|
export type Message = string | Buffer | ArrayBuffer | Reconnect;
|
|
9
9
|
export declare class WebSocketError {
|
|
10
|
-
readonly reason:
|
|
10
|
+
readonly reason: "open" | "error";
|
|
11
|
+
readonly error?: unknown;
|
|
11
12
|
readonly _tag = "WebSocketError";
|
|
12
|
-
constructor(reason: unknown);
|
|
13
|
+
constructor(reason: "open" | "error", error?: unknown);
|
|
13
14
|
}
|
|
14
15
|
export declare class WebSocketCloseError {
|
|
15
16
|
readonly code: number;
|
|
@@ -18,7 +19,7 @@ export declare class WebSocketCloseError {
|
|
|
18
19
|
constructor(code: number, reason: string);
|
|
19
20
|
}
|
|
20
21
|
declare const make: import("@effect/io/Effect").Effect<Log, never, {
|
|
21
|
-
readonly connect: (url: Ref<string>, takeOutbound: Effect<never, never, Message>, onReconnect?: import("@effect/io/Effect").Effect<never, never, void
|
|
22
|
+
readonly connect: (url: Ref<string>, takeOutbound: Effect<never, never, Message>, onReconnect?: import("@effect/io/Effect").Effect<never, never, void>, openTimeout?: import("../_common.js").Duration) => import("@effect/io/Effect").Effect<never, never, {
|
|
22
23
|
readonly run: import("@effect/io/Effect").Effect<never, WebSocketError | WebSocketCloseError, never>;
|
|
23
24
|
readonly take: import("@effect/io/Effect").Effect<never, never, WebSocket.Data>;
|
|
24
25
|
}>;
|
package/DiscordGateway/WS.js
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect/io/Effect";
|
|
2
2
|
import * as tsplus_module_2 from "@effect/io/Ref";
|
|
3
|
-
import * as tsplus_module_3 from "@effect/
|
|
4
|
-
import * as tsplus_module_4 from "
|
|
3
|
+
import * as tsplus_module_3 from "@effect/data/Duration";
|
|
4
|
+
import * as tsplus_module_4 from "@effect/io/Queue";
|
|
5
|
+
import * as tsplus_module_5 from "dfx/_common";
|
|
5
6
|
import { Log } from "dfx/Log";
|
|
6
7
|
import WebSocket from "isomorphic-ws";
|
|
7
8
|
export const Reconnect = Symbol();
|
|
8
9
|
export class WebSocketError {
|
|
9
10
|
reason;
|
|
11
|
+
error;
|
|
10
12
|
_tag = "WebSocketError";
|
|
11
|
-
constructor(reason) {
|
|
13
|
+
constructor(reason, error) {
|
|
12
14
|
this.reason = reason;
|
|
15
|
+
this.error = error;
|
|
13
16
|
}
|
|
14
17
|
}
|
|
15
18
|
export class WebSocketCloseError {
|
|
@@ -22,24 +25,23 @@ export class WebSocketCloseError {
|
|
|
22
25
|
}
|
|
23
26
|
}
|
|
24
27
|
const isReconnect = (e) => e._tag === "WebSocketCloseError" && e.code === 1012;
|
|
25
|
-
const socket = (urlRef) => tsplus_module_1.acquireRelease(tsplus_module_1.
|
|
26
|
-
const ws = new WebSocket(url);
|
|
27
|
-
return tsplus_module_1.map(tsplus_module_1.async(resume => {
|
|
28
|
-
ws.addEventListener("open", () => resume(tsplus_module_1.unit()), {
|
|
29
|
-
once: true,
|
|
30
|
-
});
|
|
31
|
-
}), () => ws);
|
|
32
|
-
}), ws => tsplus_module_1.sync(() => {
|
|
28
|
+
const socket = (urlRef) => tsplus_module_1.tap(tsplus_module_1.acquireRelease(tsplus_module_1.map(tsplus_module_2.get(urlRef), _ => new WebSocket(_)), ws => tsplus_module_1.sync(() => {
|
|
33
29
|
;
|
|
34
30
|
ws.removeAllListeners?.();
|
|
35
31
|
ws.close();
|
|
36
|
-
}))
|
|
32
|
+
})), ws => ws.readyState === WebSocket.OPEN
|
|
33
|
+
? tsplus_module_1.unit()
|
|
34
|
+
: tsplus_module_1.async(resume => {
|
|
35
|
+
ws.addEventListener("open", () => resume(tsplus_module_1.unit()), {
|
|
36
|
+
once: true,
|
|
37
|
+
});
|
|
38
|
+
}));
|
|
37
39
|
const offer = (ws, queue, log) => tsplus_module_1.async(resume => {
|
|
38
40
|
ws.addEventListener("message", message => {
|
|
39
41
|
tsplus_module_1.runFork(tsplus_module_1.zipLeft(queue.offer(message.data), log.debug("WS", "offer", message.data)));
|
|
40
42
|
});
|
|
41
43
|
ws.addEventListener("error", cause => {
|
|
42
|
-
resume(tsplus_module_1.fail(new WebSocketError(cause)));
|
|
44
|
+
resume(tsplus_module_1.fail(new WebSocketError("error", cause)));
|
|
43
45
|
});
|
|
44
46
|
ws.addEventListener("close", e => {
|
|
45
47
|
resume(tsplus_module_1.fail(new WebSocketCloseError(e.code, e.reason)));
|
|
@@ -57,12 +59,12 @@ const send = (ws, take, log) => tsplus_module_1.forever(tsplus_module_1.tap(tspl
|
|
|
57
59
|
});
|
|
58
60
|
}));
|
|
59
61
|
const make = tsplus_module_1.map(Log, log => {
|
|
60
|
-
const connect = (url, takeOutbound, onReconnect = tsplus_module_1.unit()) => tsplus_module_1.map(
|
|
61
|
-
const run = tsplus_module_1.scoped(tsplus_module_1.retryWhile(tsplus_module_1.tapError(tsplus_module_1.flatMap(socket(url), ws => tsplus_module_1.zipParLeft(offer(ws, queue, log), send(ws, takeOutbound, log))), _ => (isReconnect(_) ? onReconnect : tsplus_module_1.unit())), isReconnect));
|
|
62
|
+
const connect = (url, takeOutbound, onReconnect = tsplus_module_1.unit(), openTimeout = tsplus_module_3.seconds(3)) => tsplus_module_1.map(tsplus_module_4.unbounded(), queue => {
|
|
63
|
+
const run = tsplus_module_1.scoped(tsplus_module_1.retryWhile(tsplus_module_1.tapError(tsplus_module_1.flatMap(tsplus_module_1.timeoutFail(socket(url), () => new WebSocketError("open"), openTimeout), ws => tsplus_module_1.zipParLeft(offer(ws, queue, log), send(ws, takeOutbound, log))), _ => (isReconnect(_) ? onReconnect : tsplus_module_1.unit())), isReconnect));
|
|
62
64
|
return { run, take: queue.take() };
|
|
63
65
|
});
|
|
64
66
|
return { connect };
|
|
65
67
|
});
|
|
66
|
-
export const WS =
|
|
68
|
+
export const WS = tsplus_module_5.Tag();
|
|
67
69
|
export const LiveWS = tsplus_module_1.toLayer(make, WS);
|
|
68
70
|
//# sourceMappingURL=WS.js.map
|
package/DiscordGateway/WS.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WS.js","sourceRoot":"","sources":["../../src/DiscordGateway/WS.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"WS.js","sourceRoot":"","sources":["../../src/DiscordGateway/WS.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dfx",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.42.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
"ws": "^8.13.0"
|
|
51
51
|
},
|
|
52
52
|
"sideEffects": false,
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "54cd36e45f7f87564661e1253529851fee551b53"
|
|
54
54
|
}
|