(line: string | Buffer)
| 125 | const LARGE_JSONL_LINE_BYTES = 32 * 1024 |
| 126 | |
| 127 | export function parseJsonlLine(line: string | Buffer): JournalEntry | null { |
| 128 | if (Buffer.isBuffer(line)) { |
| 129 | if (line.length > LARGE_JSONL_LINE_BYTES) return parseLargeJsonlBuffer(line) |
| 130 | try { |
| 131 | return JSON.parse(line.toString('utf-8')) as JournalEntry |
| 132 | } catch { |
| 133 | return null |
| 134 | } |
| 135 | } |
| 136 | if (line.length > LARGE_JSONL_LINE_BYTES) return parseLargeJsonlLine(line) |
| 137 | try { |
| 138 | return JSON.parse(line) as JournalEntry |
| 139 | } catch { |
| 140 | return null |
| 141 | } |
| 142 | } |
| 143 | |
| 144 | const RAW_HEAD_BYTES = 2048 |
| 145 |
no test coverage detected