From af41c942ca24e8182d6128e9181af3d7c2d5182a Mon Sep 17 00:00:00 2001 From: Madeline <46743919+MaddyUnderStars@users.noreply.github.com> Date: Sat, 16 Jul 2022 18:06:43 +1000 Subject: Send offline group in LazyRequest (#778) * Send offline member group in LazyRequest * Better implementation of offline member group in lazy request * Always display roles separately to online members --- gateway/src/opcodes/LazyRequest.ts | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'gateway') diff --git a/gateway/src/opcodes/LazyRequest.ts b/gateway/src/opcodes/LazyRequest.ts index 2156070f..2bff1fd3 100644 --- a/gateway/src/opcodes/LazyRequest.ts +++ b/gateway/src/opcodes/LazyRequest.ts @@ -41,6 +41,9 @@ async function getMembers(guild_id: string, range: [number, number]) { .map((m) => m.roles) .flat() .unique((r: Role) => r.id); + member_roles.push(member_roles.splice(member_roles.findIndex(x => x.id == guild_id))[0]); // move @everyone/online to bottom + + const offlineItems = []; for (const role of member_roles) { // @ts-ignore @@ -63,7 +66,7 @@ async function getMembers(guild_id: string, range: [number, number]) { const session = member.user.sessions.first(); // TODO: properly mock/hide offline/invisible status - items.push({ + const item = { member: { ...member, roles, @@ -74,16 +77,35 @@ async function getMembers(guild_id: string, range: [number, number]) { user: { id: member.user.id }, }, }, - }); + } + + if (!member?.user?.sessions || !member.user.sessions.length) { + offlineItems.push(item); + group.count--; + continue; + } + + items.push(item); } members = other_members; } + if (offlineItems.length) { + const group = { + count: offlineItems.length, + id: "offline", + }; + items.push({ group }); + groups.push(group); + + items.push(...offlineItems); + } + return { items, groups, range, - members: items.map((x) => x.member).filter((x) => x), + members: items.map((x) => 'member' in x ? x.member : undefined).filter(x => !!x), }; } -- cgit 1.5.1 From 8e7d9906d26f056b89529dda0534b391aafe4632 Mon Sep 17 00:00:00 2001 From: Erkin Alp Güney Date: Sat, 16 Jul 2022 11:23:09 +0300 Subject: Revert "Send offline group in LazyRequest (#778)" (#787) This reverts commit af41c942ca24e8182d6128e9181af3d7c2d5182a. --- gateway/src/opcodes/LazyRequest.ts | 28 +++------------------------- 1 file changed, 3 insertions(+), 25 deletions(-) (limited to 'gateway') diff --git a/gateway/src/opcodes/LazyRequest.ts b/gateway/src/opcodes/LazyRequest.ts index 2bff1fd3..2156070f 100644 --- a/gateway/src/opcodes/LazyRequest.ts +++ b/gateway/src/opcodes/LazyRequest.ts @@ -41,9 +41,6 @@ async function getMembers(guild_id: string, range: [number, number]) { .map((m) => m.roles) .flat() .unique((r: Role) => r.id); - member_roles.push(member_roles.splice(member_roles.findIndex(x => x.id == guild_id))[0]); // move @everyone/online to bottom - - const offlineItems = []; for (const role of member_roles) { // @ts-ignore @@ -66,7 +63,7 @@ async function getMembers(guild_id: string, range: [number, number]) { const session = member.user.sessions.first(); // TODO: properly mock/hide offline/invisible status - const item = { + items.push({ member: { ...member, roles, @@ -77,35 +74,16 @@ async function getMembers(guild_id: string, range: [number, number]) { user: { id: member.user.id }, }, }, - } - - if (!member?.user?.sessions || !member.user.sessions.length) { - offlineItems.push(item); - group.count--; - continue; - } - - items.push(item); + }); } members = other_members; } - if (offlineItems.length) { - const group = { - count: offlineItems.length, - id: "offline", - }; - items.push({ group }); - groups.push(group); - - items.push(...offlineItems); - } - return { items, groups, range, - members: items.map((x) => 'member' in x ? x.member : undefined).filter(x => !!x), + members: items.map((x) => x.member).filter((x) => x), }; } -- cgit 1.5.1 From 072f6ab86253f674762bcca97541668fb679b3b0 Mon Sep 17 00:00:00 2001 From: Madeline <46743919+MaddyUnderStars@users.noreply.github.com> Date: Sat, 16 Jul 2022 18:35:44 +1000 Subject: Display offline members in member list (#788) * Send offline member group in LazyRequest * Better implementation of offline member group in lazy request --- gateway/src/opcodes/LazyRequest.ts | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'gateway') diff --git a/gateway/src/opcodes/LazyRequest.ts b/gateway/src/opcodes/LazyRequest.ts index 2156070f..7503ee61 100644 --- a/gateway/src/opcodes/LazyRequest.ts +++ b/gateway/src/opcodes/LazyRequest.ts @@ -42,6 +42,8 @@ async function getMembers(guild_id: string, range: [number, number]) { .flat() .unique((r: Role) => r.id); + const offlineItems = []; + for (const role of member_roles) { // @ts-ignore const [role_members, other_members] = partition(members, (m: Member) => @@ -63,7 +65,7 @@ async function getMembers(guild_id: string, range: [number, number]) { const session = member.user.sessions.first(); // TODO: properly mock/hide offline/invisible status - items.push({ + const item = { member: { ...member, roles, @@ -74,16 +76,35 @@ async function getMembers(guild_id: string, range: [number, number]) { user: { id: member.user.id }, }, }, - }); + } + + if (!member?.user?.sessions || !member.user.sessions.length) { + offlineItems.push(item); + group.count--; + continue; + } + + items.push(item); } members = other_members; } + if (offlineItems.length) { + const group = { + count: offlineItems.length, + id: "offline", + }; + items.push({ group }); + groups.push(group); + + items.push(...offlineItems); + } + return { items, groups, range, - members: items.map((x) => x.member).filter((x) => x), + members: items.map((x) => 'member' in x ? x.member : undefined).filter(x => !!x), }; } -- cgit 1.5.1 From 469e55fffa9ee68b6777eb7e923d5a3e07006335 Mon Sep 17 00:00:00 2001 From: Nobody Date: Tue, 19 Jul 2022 03:58:01 -0300 Subject: chore: fix package.json scripts npx should be used to execute local package binaries --- api/package.json | 10 +++++----- bundle/package.json | 4 ++-- cdn/package.json | 2 +- dashboard/package.json | 2 +- gateway/package.json | 2 +- util/package.json | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) (limited to 'gateway') diff --git a/api/package.json b/api/package.json index 29fa82a1..1bb49261 100644 --- a/api/package.json +++ b/api/package.json @@ -5,14 +5,14 @@ "main": "dist/index.js", "types": "src/index.ts", "scripts": { - "test:only": "jest --coverage --verbose --forceExit ./tests", - "test:routes": "jest --coverage --verbose --forceExit ./routes.test.ts", + "test:only": "npx jest --coverage --verbose --forceExit ./tests", + "test:routes": "npx jest --coverage --verbose --forceExit ./routes.test.ts", "test": "npm run build && npm run test:only", - "test:watch": "jest --watch", + "test:watch": "npx jest --watch", "start": "npm run build && node dist/start", "build": "npx tsc -p .", - "dev": "tsnd --respawn src/start.ts", - "patch": "ts-patch install -s && npx patch-package", + "dev": "npx tsnd --respawn src/start.ts", + "patch": "npx ts-patch install -s && npx patch-package", "postinstall": "npm run patch", "generate:docs": "node scripts/generate_openapi", "generate:schema": "node scripts/generate_schema" diff --git a/bundle/package.json b/bundle/package.json index d44d257f..c050a302 100644 --- a/bundle/package.json +++ b/bundle/package.json @@ -4,7 +4,7 @@ "description": "", "main": "src/start.js", "scripts": { - "setup": "node scripts/install.js && npm install --no-optional && ts-patch install -s && patch-package --patch-dir ../api/patches/ && npm run build", + "setup": "node scripts/install.js && npm install --no-optional && npx ts-patch install -s && npx patch-package --patch-dir ../api/patches/ && npm run build", "build": "node scripts/build.js", "start": "node scripts/build.js && node dist/bundle/src/start.js", "start:bundle": "node dist/bundle/src/start.js", @@ -111,4 +111,4 @@ "typescript-json-schema": "^0.50.1", "ws": "^7.4.2" } -} \ No newline at end of file +} diff --git a/cdn/package.json b/cdn/package.json index 46405b88..c63713c0 100644 --- a/cdn/package.json +++ b/cdn/package.json @@ -5,7 +5,7 @@ "main": "dist/index.js", "types": "src/index.ts", "scripts": { - "test": "npm run build && jest --coverage ./tests", + "test": "npm run build && npx jest --coverage ./tests", "build": "npx tsc -p .", "start": "node dist/start.js" }, diff --git a/dashboard/package.json b/dashboard/package.json index 9afe20f8..87bc1699 100644 --- a/dashboard/package.json +++ b/dashboard/package.json @@ -5,7 +5,7 @@ "main": "dist/index.js", "types": "src/index.ts", "scripts": { - "test": "npm run build && jest --coverage ./tests", + "test": "npm run build && npx jest --coverage ./tests", "build": "npx tsc -p .", "start": "node dist/start.js" }, diff --git a/gateway/package.json b/gateway/package.json index 7a3b1012..0524cc40 100644 --- a/gateway/package.json +++ b/gateway/package.json @@ -9,7 +9,7 @@ "test": "echo \"Error: no test specified\" && exit 1", "start": "npm run build && node dist/start.js", "build": "npx tsc -p .", - "dev": "tsnd --respawn src/start.ts" + "dev": "npx tsnd --respawn src/start.ts" }, "keywords": [], "author": "Fosscord", diff --git a/util/package.json b/util/package.json index 35d2fbbe..587e8a14 100644 --- a/util/package.json +++ b/util/package.json @@ -6,7 +6,7 @@ "types": "src/index.ts", "scripts": { "start": "npm run build && node dist/", - "test": "npm run build && jest", + "test": "npm run build && npx jest", "postinstall": "npm run build", "build": "npx tsc -p .", "typeorm": "node --require ts-node/register ./node_modules/typeorm/cli.js" -- cgit 1.5.1