Update selected item color in Pass menu
[ProtonMail-WebClient.git] / packages / pass / lib / search / match-every.ts
blob4ef20f31b809b1565e06778a793575e72c475fb6
1 import { normalize } from '@proton/shared/lib/helpers/string';
3 /** Searches for occurrences of the normalized `value` in
4  * the provided needles. Needles should already be normalized.
5  * Early termination is implicit via `some`. */
6 export const matchEvery =
7     (needles: string[]) =>
8     (haystack: string): boolean => {
9         if (needles.length === 0) return false;
10         const normalizedHaystack = normalize(haystack, true);
11         return needles.every((needle) => normalizedHaystack.includes(needle));
12     };