(candidates: string[], patterns: string[] | undefined)
| 132 | }; |
| 133 | |
| 134 | function matchPatterns(candidates: string[], patterns: string[] | undefined): number | null { |
| 135 | if (!patterns || patterns.length === 0) return null; |
| 136 | const normalizedPatterns = patterns.map(normalizeText); |
| 137 | for (let index = 0; index < candidates.length; index++) { |
| 138 | const normalizedCandidate = normalizeText(candidates[index]); |
| 139 | if (normalizedPatterns.some((pattern) => normalizedCandidate.includes(pattern))) { |
| 140 | return index + 1; |
| 141 | } |
| 142 | } |
| 143 | return null; |
| 144 | } |
| 145 | |
| 146 | export function matchSignals( |
| 147 | payload: string, |
no test coverage detected