(text)
| 220 | } |
| 221 | |
| 222 | function parseJsonOutput(text) { |
| 223 | const trimmed = text.trim(); |
| 224 | if (!trimmed) { |
| 225 | return null; |
| 226 | } |
| 227 | |
| 228 | try { |
| 229 | return JSON.parse(trimmed); |
| 230 | } catch {} |
| 231 | |
| 232 | return trimmed |
| 233 | .split(/\r?\n/) |
| 234 | .map((line) => line.trim()) |
| 235 | .filter(Boolean) |
| 236 | .map((line) => { |
| 237 | try { |
| 238 | return JSON.parse(line); |
| 239 | } catch { |
| 240 | return null; |
| 241 | } |
| 242 | }) |
| 243 | .filter(Boolean); |
| 244 | } |
| 245 | |
| 246 | function findLastEvent(text, type) { |
| 247 | const parsed = parseJsonOutput(text); |
no outgoing calls
no test coverage detected