From 912d1c31d8fc00550d5f9a4d437b874be811a08d Mon Sep 17 00:00:00 2001 From: Flam3rboy <34555296+Flam3rboy@users.noreply.github.com> Date: Mon, 20 Sep 2021 23:34:54 +0200 Subject: [PATCH] :art: rewrite imports --- api/package-lock.json | Bin 938709 -> 1010210 bytes api/package.json | 8 +++++++- bundle/package-lock.json | Bin 94710 -> 99097 bytes bundle/package.json | 1 + cdn/package-lock.json | Bin 360232 -> 361915 bytes cdn/package.json | 1 + cdn/tsconfig.json | 2 +- gateway/package-lock.json | Bin 161981 -> 163664 bytes gateway/package.json | 1 + gateway/src/events/Close.ts | 2 +- gateway/src/events/Connection.ts | 11 +++++++---- gateway/src/events/Message.ts | 3 +-- gateway/src/listener/listener.ts | 7 ++----- gateway/src/opcodes/Heartbeat.ts | 5 +---- gateway/src/opcodes/Identify.ts | 16 +++++++++++----- gateway/src/opcodes/LazyRequest.ts | 5 +---- gateway/src/opcodes/PresenceUpdate.ts | 3 +-- gateway/src/opcodes/RequestGuildMembers.ts | 4 +--- gateway/src/opcodes/Resume.ts | 5 +---- gateway/src/opcodes/VoiceStateUpdate.ts | 4 +--- gateway/src/opcodes/index.ts | 3 +-- gateway/src/opcodes/instanceOf.ts | 3 +-- gateway/src/util/Send.ts | 6 ++---- gateway/src/util/WebSocket.ts | 4 +--- gateway/src/util/setHeartbeat.ts | 2 +- gateway/tsconfig.json | 1 + 26 files changed, 46 insertions(+), 51 deletions(-) diff --git a/api/package-lock.json b/api/package-lock.json index dcbb75d1b0bffcffebf956cd7c400ee3eccdc702..53088d5db68182a874a3380567f35b7d7ad5eacf 100644 GIT binary patch delta 14936 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 diff --git a/api/package.json b/api/package.json index ce5bcdf9..53031071 100644 --- a/api/package.json +++ b/api/package.json @@ -46,6 +46,7 @@ "@types/express": "^4.17.9", "@types/i18next-node-fs-backend": "^2.1.0", "@types/jest": "^27.0.1", + "@types/jest-expect-message": "^1.0.3", "@types/jsonwebtoken": "^8.5.0", "@types/mongodb": "^3.6.9", "@types/mongoose": "^5.10.5", @@ -61,6 +62,8 @@ "caxa": "^2.1.0", "image-size": "^1.0.0", "jest": "^26.6.3", + "jest-expect-message": "^1.0.2", + "jest-runtime": "^27.2.1", "saslprep": "^1.0.3", "ts-node": "^9.1.1", "ts-node-dev": "^1.1.6", @@ -85,7 +88,7 @@ "express": "^4.17.1", "express-validator": "^6.9.2", "form-data": "^3.0.0", - "i18next": "^19.8.5", + "i18next": "^19.9.2", "i18next-http-middleware": "^3.1.3", "i18next-node-fs-backend": "^2.1.3", "jsonwebtoken": "^8.5.1", @@ -106,6 +109,9 @@ "setupFiles": [ "/jest/setup.js" ], + "setupFilesAfterEnv": [ + "jest-expect-message" + ], "globalSetup": "/jest/globalSetup.js", "verbose": true } diff --git a/bundle/package-lock.json b/bundle/package-lock.json index 6a6588427b3840e66fdb87a59aaf2e325c551def..0ed6b03a887e8da24430c92adb434de7e07cee91 100644 GIT binary patch delta 2528 zcmd6nO>EO<7{}!`ZP&smw6xHcQ5p_oq;_m4&Bvs{ny;q$Y~rL%qYdFCPMpMv9otEq zXo4|KyKn(LV%c^X+i90cXgP2gprP%+G=$m%6Vt>1Ar9j(;IJKbn&Z%Ro7iOn4PX2| zAFtoX&-?s;zu)cs=>5KPmvrF!@nHL!PSU})_xg^cd6Ch-woiY=iV?HetbS&2Kz;OY zr05jG83mD%7#U^CwapyMlXK*Tz({E^FUXszIPll;_Q`7$0vCIZ?v$zmBg%}_%^)!x zBM1ns21d2R(85Np8c@pr$K1k z*bdjzlkLO1Uo;Jrr93J!IYxmKUyQZhbs@w!z2P&W#!UmAh1E}|;Oi+}yi)Z=5?qXm z&j-kW*G|O~ylts2t(YaAF0(n_5(rTxo7qhS9BH>rGKKNFkjY1zji|k8OeTFnF1TDX zSu5di$}VJlTrlqTd*IGH(LwDvNp5fqAp9=G1gG!elbcRyy&^3|Ld|gJbho5t%3&9s zzPT77rV9BbSBhjSevdb_5>Rq-(H4qFm85AQS$CN{mXNHZ63K|OT&D6wpr{xYTs)gu z(IHzsdDOTfA^Q?shAjqJ$bEKAeuHaHpb(MbSAgxkxg{%{pYt!zG%Hm}ikJrNT?utP%__ zN5y)EVog>lh!gduLamtVT*{I6dcAYL1!sw-T{$<^^w~Inafwd?@jz>`M{A+hTr);s z__}0r9G_a32WI`Nm*!AaY}ve`g-xn9)J?4u4rEtoLzJo*d9K!#D}j+(N>{ED%Wzyl z()Qw*4KuHQT9Q>oqMf1BVixtL_nw*@Tkl54naY=qX)ccyB)~53fuZ^F9ul*{+3~&Y ztC#op_te=uY!B~N=a&xPL#n0qQ+uOC>o$Vyk9!qgW@WiT1Y--4l+RSI2@od#sSxivjl2vv!XbBHf3lK5j zFXbgh>HctMNY&DZwS(8|){M?f_SQvO5a3~c9F9*Lhcv69UVC=|$L~(ROrSCqu@{^nQ0m9SmLTVFl^?6LoY#DgXcg delta 169 zcmbQ)#`f(o>xO+SlcPihHossgW|`ce!?yVx=Q+m7r7U`r-*SsiuDC5Wx&4va=4hUU zT$?>#axzYqm6$a-f!k>E0}-yxLXyVDo2~s7T{rhkO*7nVa8i+dbIv7y*2y*ZeK)`7 z3}&2s;$|h>tdp!;H&@;c;el({c)`gCG_+Z3JChirt>t#p0LDEUldrwxpKO2f<@UAJ NjGI`d8#Xb%008vMMd<(l diff --git a/bundle/package.json b/bundle/package.json index 72b24568..4b4e8286 100644 --- a/bundle/package.json +++ b/bundle/package.json @@ -45,6 +45,7 @@ "@types/ws": "^7.4.0", "@zerollup/ts-transform-paths": "^1.7.18", "ts-node": "^10.2.1", + "ts-patch": "^1.4.4", "typescript": "^4.3.5" }, "dependencies": { diff --git a/cdn/package-lock.json b/cdn/package-lock.json index 8a70844c3f4c4f80ebd18075261a740377b6afed..b6faa0e4f0172cd5e98240a3bbf2953085d96e0c 100644 GIT binary patch delta 979 zcmZ4SPjq*;*am4K&cx4VYYgfDQ8oBuR96LmY$|baa&p$T^UP)5&NG)q<`DqYOHyqB delta 76 zcmdnpEwEjazZD^=Cd4!)-_+-)qZUkVid?N%_&JOf(o1H8E?*HU5z1XKKX!v_;iIBMw86}>~SK(C^lrI<`kqBO@264 zoCRd;WJXSX6=WAcY#ooQO>r=MDu7G79d73^=E zQ<_v55aC%I5SV6GVCkP3;9C$>;ZmV*P?BE~;Nxa&8Id1UZern*SZ10MT$beNYT;s( z>KITE5#d!)=3PF$QH9Z9a>W;ZMx)6e4$4iAJ;gOmlaZgz))?q>qsa?{Wu#HOfEq|B zUNJ%T3aUD&m(T*DlHF53%m^sq=Wa7pvgE>AZocXRQ`^m5e>HmaI@kke2O z*-g+8MT*$zhH8vzX#Qn8~G_OuxC;hm6e<9=c J{e?{b*Z>;NTV((M delta 64 zcmccck8|%w&JELlZ#khF~>te>uRqV4wnxo~nN6Ry2IZUo%x7n_cz{m-b x.id !== this.user_id); + x.channel.recipients = x.channel.recipients!.filter( + (x) => x.id !== this.user_id + ); } return x.channel; }); @@ -109,7 +115,7 @@ export async function onIdentify(this: WebSocket, data: Payload) { if (!user) return this.close(CLOSECODES.Authentication_failed); for (let relation of user.relationships) { - const related_user = relation.to + const related_user = relation.to; const public_related_user = { username: related_user.username, discriminator: related_user.discriminator, diff --git a/gateway/src/opcodes/LazyRequest.ts b/gateway/src/opcodes/LazyRequest.ts index 41ec3446..db00157f 100644 --- a/gateway/src/opcodes/LazyRequest.ts +++ b/gateway/src/opcodes/LazyRequest.ts @@ -2,13 +2,10 @@ import { getPermission, Member, PublicMemberProjection, - PublicUserProjection, Role, } from "@fosscord/util"; import { LazyRequest } from "../schema/LazyRequest"; -import { OPCODES, Payload } from "@fosscord/gateway/util/Constants"; -import { Send } from "@fosscord/gateway/util/Send"; -import WebSocket from "@fosscord/gateway/util/WebSocket"; +import { WebSocket, Send, OPCODES, Payload } from "@fosscord/gateway"; import { check } from "./instanceOf"; import "missing-native-js-functions"; diff --git a/gateway/src/opcodes/PresenceUpdate.ts b/gateway/src/opcodes/PresenceUpdate.ts index 4febbfcb..53d7b9d2 100644 --- a/gateway/src/opcodes/PresenceUpdate.ts +++ b/gateway/src/opcodes/PresenceUpdate.ts @@ -1,5 +1,4 @@ -import { CLOSECODES, Payload } from "@fosscord/gateway/util/Constants"; -import WebSocket from "@fosscord/gateway/util/WebSocket"; +import { WebSocket, Payload } from "@fosscord/gateway"; export function onPresenceUpdate(this: WebSocket, data: Payload) { // return this.close(CLOSECODES.Unknown_error); diff --git a/gateway/src/opcodes/RequestGuildMembers.ts b/gateway/src/opcodes/RequestGuildMembers.ts index 9c1654fa..b80721dc 100644 --- a/gateway/src/opcodes/RequestGuildMembers.ts +++ b/gateway/src/opcodes/RequestGuildMembers.ts @@ -1,6 +1,4 @@ -import { CLOSECODES, Payload } from "@fosscord/gateway/util/Constants"; - -import WebSocket from "@fosscord/gateway/util/WebSocket"; +import { Payload, WebSocket } from "@fosscord/gateway"; export function onRequestGuildMembers(this: WebSocket, data: Payload) { // return this.close(CLOSECODES.Unknown_error); diff --git a/gateway/src/opcodes/Resume.ts b/gateway/src/opcodes/Resume.ts index e155c139..398cce25 100644 --- a/gateway/src/opcodes/Resume.ts +++ b/gateway/src/opcodes/Resume.ts @@ -1,7 +1,4 @@ -import { CLOSECODES, Payload } from "@fosscord/gateway/util/Constants"; -import { Send } from "@fosscord/gateway/util/Send"; - -import WebSocket from "@fosscord/gateway/util/WebSocket"; +import { WebSocket, Payload, Send } from "@fosscord/gateway"; export async function onResume(this: WebSocket, data: Payload) { console.log("Got Resume -> cancel not implemented"); diff --git a/gateway/src/opcodes/VoiceStateUpdate.ts b/gateway/src/opcodes/VoiceStateUpdate.ts index 60803ec3..084c5766 100644 --- a/gateway/src/opcodes/VoiceStateUpdate.ts +++ b/gateway/src/opcodes/VoiceStateUpdate.ts @@ -1,6 +1,5 @@ import { VoiceStateUpdateSchema } from "../schema/VoiceStateUpdateSchema"; -import { Payload } from "@fosscord/gateway/util/Constants"; -import WebSocket from "@fosscord/gateway/util/WebSocket"; +import { Payload, WebSocket, genVoiceToken } from "@fosscord/gateway"; import { check } from "./instanceOf"; import { Config, @@ -12,7 +11,6 @@ import { VoiceState, VoiceStateUpdateEvent, } from "@fosscord/util"; -import { genVoiceToken } from "@fosscord/gateway/util/SessionUtils"; // TODO: check if a voice server is setup // Notice: Bot users respect the voice channel's user limit, if set. When the voice channel is full, you will not receive the Voice State Update or Voice Server Update events in response to your own Voice State Update. Having MANAGE_CHANNELS permission bypasses this limit and allows you to join regardless of the channel being full or not. diff --git a/gateway/src/opcodes/index.ts b/gateway/src/opcodes/index.ts index c4069589..027739db 100644 --- a/gateway/src/opcodes/index.ts +++ b/gateway/src/opcodes/index.ts @@ -1,5 +1,4 @@ -import { Payload } from "@fosscord/gateway/util/Constants"; -import WebSocket from "@fosscord/gateway/util/WebSocket"; +import { WebSocket, Payload } from "@fosscord/gateway"; import { onHeartbeat } from "./Heartbeat"; import { onIdentify } from "./Identify"; import { onLazyRequest } from "./LazyRequest"; diff --git a/gateway/src/opcodes/instanceOf.ts b/gateway/src/opcodes/instanceOf.ts index 6d84ac21..37d513ad 100644 --- a/gateway/src/opcodes/instanceOf.ts +++ b/gateway/src/opcodes/instanceOf.ts @@ -1,6 +1,5 @@ import { instanceOf } from "lambert-server"; -import { CLOSECODES } from "@fosscord/gateway/util/Constants"; -import WebSocket from "@fosscord/gateway/util/WebSocket"; +import { WebSocket, CLOSECODES } from "@fosscord/gateway"; export function check(this: WebSocket, schema: any, data: any) { try { diff --git a/gateway/src/util/Send.ts b/gateway/src/util/Send.ts index 1b00e361..ff8aefc9 100644 --- a/gateway/src/util/Send.ts +++ b/gateway/src/util/Send.ts @@ -2,9 +2,7 @@ var erlpack: any; try { erlpack = require("erlpack"); } catch (error) {} -import { Payload } from "@fosscord/gateway/util/Constants"; - -import WebSocket from "./WebSocket"; +import { Payload, WebSocket } from "@fosscord/gateway"; export async function Send(socket: WebSocket, data: Payload) { let buffer: Buffer | string; @@ -20,7 +18,7 @@ export async function Send(socket: WebSocket, data: Payload) { } return new Promise((res, rej) => { - socket.send(buffer, (err) => { + socket.send(buffer, (err: any) => { if (err) return rej(err); return res(null); }); diff --git a/gateway/src/util/WebSocket.ts b/gateway/src/util/WebSocket.ts index 15d1549f..b80265a7 100644 --- a/gateway/src/util/WebSocket.ts +++ b/gateway/src/util/WebSocket.ts @@ -3,7 +3,7 @@ import WS from "ws"; import { Deflate } from "zlib"; import { Channel } from "amqplib"; -interface WebSocket extends WS { +export interface WebSocket extends WS { version: number; user_id: string; session_id: string; @@ -19,5 +19,3 @@ interface WebSocket extends WS { permissions: Record; events: Record; } - -export default WebSocket; diff --git a/gateway/src/util/setHeartbeat.ts b/gateway/src/util/setHeartbeat.ts index 9f88b481..f6871cfe 100644 --- a/gateway/src/util/setHeartbeat.ts +++ b/gateway/src/util/setHeartbeat.ts @@ -1,5 +1,5 @@ import { CLOSECODES } from "./Constants"; -import WebSocket from "./WebSocket"; +import { WebSocket } from "./WebSocket"; // TODO: make heartbeat timeout configurable export function setHeartbeat(socket: WebSocket) { diff --git a/gateway/tsconfig.json b/gateway/tsconfig.json index c50bd77a..dd066383 100644 --- a/gateway/tsconfig.json +++ b/gateway/tsconfig.json @@ -70,6 +70,7 @@ "resolveJsonModule": true, "baseUrl": ".", "paths": { + "@fosscord/gateway": ["src/index"], "@fosscord/gateway/*": ["src/*"], "@fosscord/util/*": ["../util/src/*"] },