diff options
| author | Hazelnoot <acomputerdog@gmail.com> | 2025-05-10 21:44:10 -0400 |
|---|---|---|
| committer | Hazelnoot <acomputerdog@gmail.com> | 2025-05-10 21:44:10 -0400 |
| commit | a46887d05f65c540ebf7a2cdaf119a26ac4786c5 (patch) | |
| tree | 45c21e61216741d60b709a1e136372f5a972489d /packages/backend/src/server/api/endpoints | |
| parent | merge: put back buttons "show/hide replies-to-others from all" (!1009) (diff) | |
| download | sharkey-a46887d05f65c540ebf7a2cdaf119a26ac4786c5.tar.gz sharkey-a46887d05f65c540ebf7a2cdaf119a26ac4786c5.tar.bz2 sharkey-a46887d05f65c540ebf7a2cdaf119a26ac4786c5.zip | |
fix calculation of word mute
Diffstat (limited to 'packages/backend/src/server/api/endpoints')
| -rw-r--r-- | packages/backend/src/server/api/endpoints/i/update.ts | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/packages/backend/src/server/api/endpoints/i/update.ts b/packages/backend/src/server/api/endpoints/i/update.ts index ad8f38703b..f35e395841 100644 --- a/packages/backend/src/server/api/endpoints/i/update.ts +++ b/packages/backend/src/server/api/endpoints/i/update.ts @@ -330,8 +330,13 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- if (ps.chatScope !== undefined) updates.chatScope = ps.chatScope; function checkMuteWordCount(mutedWords: (string[] | string)[], limit: number) { - // TODO: ちゃんと数える - const length = JSON.stringify(mutedWords).length; + const length = mutedWords.reduce((sum, word) => { + const wordLength = Array.isArray(word) + ? word.reduce((l, w) => l + w.length, 0) + : word.length; + return sum + wordLength; + }, 0); + if (length > limit) { throw new ApiError(meta.errors.tooManyMutedWords); } |