From 540de53cd0bcf2414924262a2ad680ca6ab2cd13 Mon Sep 17 00:00:00 2001 From: Corban-Lee Date: Thu, 15 May 2025 12:14:15 +0100 Subject: [PATCH] feat(bot): implement 'all' filter --- src/bot/filter.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/bot/filter.ts b/src/bot/filter.ts index f425690..744a64e 100644 --- a/src/bot/filter.ts +++ b/src/bot/filter.ts @@ -12,7 +12,14 @@ function splitWords(filterValue: string): string[] { } export const all = (filter: Filter, input: string) => { - throw new Error("'all' filter not implemented"); + try { + const flags = filter.is_insensitive ? "i" : ""; + return splitWords(filter.value) + .every(word => new RegExp(String.raw`\b(${word})\b`, flags).test(input)); + } catch (error) { + console.error(`ALL: Invalid regex pattern: ${filter.value}`, error); + return false; + } }; export const any = (filter: Filter, input: string) => {