diff --git a/frontend/package.json b/frontend/package.json index f933cdf..3780d3c 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -19,7 +19,7 @@ "@types/qrcode": "^1.5.6", "js-cookie": "^3.0.5", "qrcode": "^1.5.4", - "socket.io-client": "^4.8.1", + "socket.io-client": "^4.8.2", "tailwindcss": "^4.1.18" } } diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml index 02fe5dd..32fa6d4 100644 --- a/frontend/pnpm-lock.yaml +++ b/frontend/pnpm-lock.yaml @@ -21,8 +21,8 @@ importers: specifier: ^1.5.4 version: 1.5.4 socket.io-client: - specifier: ^4.8.1 - version: 4.8.1 + specifier: ^4.8.2 + version: 4.8.2 tailwindcss: specifier: ^4.1.18 version: 4.1.18 @@ -675,8 +675,8 @@ packages: set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} - socket.io-client@4.8.1: - resolution: {integrity: sha512-hJVXfu3E28NmzGk8o1sHhN3om52tRvwYeidbj7xKy2eIIse5IoKX3USlS6Tqt3BHAtflLIkCQBkzVrEEfWUyYQ==} + socket.io-client@4.8.2: + resolution: {integrity: sha512-4MY14EMsyEPFA6lM01XIYepRdV8P6dUir2hxAlAysOYcbNAy5QNHYgIHOcQ1KYM7wTcKnKEW/ZRoIxRinWRXvA==} engines: {node: '>=10.0.0'} socket.io-parser@4.2.4: @@ -1286,10 +1286,10 @@ snapshots: set-blocking@2.0.0: {} - socket.io-client@4.8.1: + socket.io-client@4.8.2: dependencies: '@socket.io/component-emitter': 3.1.2 - debug: 4.3.7 + debug: 4.4.3 engine.io-client: 6.6.3 socket.io-parser: 4.2.4 transitivePeerDependencies: diff --git a/src/chat/package.json b/src/chat/package.json index 502b538..408f8c2 100644 --- a/src/chat/package.json +++ b/src/chat/package.json @@ -26,7 +26,7 @@ "@fastify/websocket": "^11.2.0", "fastify": "^5.6.2", "fastify-plugin": "^5.1.0", - "socket.io": "^4.8.1", + "socket.io": "^4.8.2", "typebox": "^1.0.65" }, "devDependencies": { diff --git a/src/chat/src/broadcast.ts b/src/chat/src/broadcast.ts index 7cb1048..f3089eb 100644 --- a/src/chat/src/broadcast.ts +++ b/src/chat/src/broadcast.ts @@ -1,41 +1,11 @@ -import type { ClientMessage } from './chat_types'; +import type { ClientMessage, BlockRelation} from './chat_types'; import { clientChat } from './app'; import { FastifyInstance } from 'fastify'; import { getUserByName } from './getUserByName'; import type { User } from '@shared/database/mixin/user'; import { color } from './app'; - -type BlockRelation = { - blocked: string; - blocker: string; -}; - -function checkNamePair(list: BlockRelation[], name1: string, name2: string): (boolean) { - const matches: BlockRelation[] = []; - let exists: boolean = false; - for (const item of list) { - if (item.blocker === name1) { - matches.push(item); - if (item.blocked === name2) { - exists = true; - return true;; - } - } - } - return exists; -} - -function whoBlockedMe(fastify: FastifyInstance, myID: string): BlockRelation [] { - const usersBlocked = - fastify.db.getAllBlockedUsers() ?? []; - - return usersBlocked - .filter(entry => entry.blocked === myID) - .map(entry => ({ - blocked: entry.user, - blocker: entry.blocked, - })); -} +import { checkNamePair } from './checkNamePair'; +import { whoBlockedMe } from './whoBlockedMe'; export async function broadcast(fastify: FastifyInstance, data: ClientMessage, sender?: string) { diff --git a/src/chat/src/chat_types.ts b/src/chat/src/chat_types.ts index ae26cbc..31154b4 100644 --- a/src/chat/src/chat_types.ts +++ b/src/chat/src/chat_types.ts @@ -48,3 +48,8 @@ export type obj = SenderWindowID: string, Sendertext: string, }; + +export type BlockRelation = { + blocked: string; + blocker: string; +}; \ No newline at end of file diff --git a/src/chat/src/checkNamePair.ts b/src/chat/src/checkNamePair.ts new file mode 100644 index 0000000..c79ed28 --- /dev/null +++ b/src/chat/src/checkNamePair.ts @@ -0,0 +1,16 @@ +import type { BlockRelation} from './chat_types'; + +export function checkNamePair(list: BlockRelation[], name1: string, name2: string): (boolean) { + const matches: BlockRelation[] = []; + let exists: boolean = false; + for (const item of list) { + if (item.blocker === name1) { + matches.push(item); + if (item.blocked === name2) { + exists = true; + return true;; + } + } + } + return exists; +} \ No newline at end of file diff --git a/src/chat/src/whoBlockedMe.ts b/src/chat/src/whoBlockedMe.ts new file mode 100644 index 0000000..c0863bd --- /dev/null +++ b/src/chat/src/whoBlockedMe.ts @@ -0,0 +1,16 @@ +import { FastifyInstance } from 'fastify'; +import type { BlockRelation} from './chat_types'; + +export function whoBlockedMe(fastify: FastifyInstance, myID: string): BlockRelation [] { + const usersBlocked = + fastify.db.getAllBlockedUsers() ?? []; + + return usersBlocked + .filter(entry => entry.blocked === myID) + .map(entry => ({ + blocked: entry.user, + blocker: entry.blocked, + })); +} + + diff --git a/src/package.json b/src/package.json index d58f871..042b4a1 100644 --- a/src/package.json +++ b/src/package.json @@ -23,13 +23,13 @@ }, "devDependencies": { "@eslint/js": "^9.39.2", - "@typescript-eslint/eslint-plugin": "^8.50.0", - "@typescript-eslint/parser": "^8.50.0", + "@typescript-eslint/eslint-plugin": "^8.50.1", + "@typescript-eslint/parser": "^8.50.1", "eslint": "^9.39.2", "husky": "^9.1.7", "lint-staged": "^16.2.7", "typescript": "^5.9.3", - "typescript-eslint": "^8.50.0", + "typescript-eslint": "^8.50.1", "vite": "^7.3.0" }, "dependencies": { diff --git a/src/tic-tac-toe/package.json b/src/tic-tac-toe/package.json index 3079a99..a4d3fad 100644 --- a/src/tic-tac-toe/package.json +++ b/src/tic-tac-toe/package.json @@ -22,7 +22,7 @@ "@fastify/websocket": "^11.2.0", "fastify": "^5.6.2", "fastify-plugin": "^5.1.0", - "socket.io": "^4.8.1", + "socket.io": "^4.8.2", "typebox": "^1.0.65" }, "devDependencies": {