279
*/
280
export function makeTruncatingReplacer(maxStringChars: number, maxTotalChars: number): (key: string, value: unknown) => unknown {
282
>
return (_key, val) => {
283
>
if (typeof val === 'string') {
284
>
let emitted: string;
285
>
if (val.length > maxStringChars) {
286
emitted = `${TRUNCATION_MARKER_PREFIX}; original ${val.length} chars]`;
288
emitted = TRUNCATION_MARKER_TOTAL;
290
>
total += val.length + 2;
291
>
return val;
292
>
}
293
total += emitted.length + 2;
294
return emitted;
295
}
297
>
};
298
>
}
299
300
/**