summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/endpoints/i
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-05-10 21:44:10 -0400
committerHazelnoot <acomputerdog@gmail.com>2025-05-10 21:44:10 -0400
commita46887d05f65c540ebf7a2cdaf119a26ac4786c5 (patch)
tree45c21e61216741d60b709a1e136372f5a972489d /packages/backend/src/server/api/endpoints/i
parentmerge: put back buttons "show/hide replies-to-others from all" (!1009) (diff)
downloadsharkey-a46887d05f65c540ebf7a2cdaf119a26ac4786c5.tar.gz
sharkey-a46887d05f65c540ebf7a2cdaf119a26ac4786c5.tar.bz2
sharkey-a46887d05f65c540ebf7a2cdaf119a26ac4786c5.zip
fix calculation of word mute
Diffstat (limited to 'packages/backend/src/server/api/endpoints/i')
-rw-r--r--packages/backend/src/server/api/endpoints/i/update.ts9
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);
}