Skip to content

Commit a839b9b

Browse files
committed
refactor: fix lint
1 parent 8f812c5 commit a839b9b

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

packages/utils/src/lib/profiler/wal-json-trace.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { performance } from 'node:perf_hooks';
2-
import type { WalFormat } from '../wal.js';
2+
import type { InvalidEntry, WalFormat } from '../wal.js';
33
import {
44
decodeTraceEvent,
55
encodeTraceEvent,
@@ -108,8 +108,14 @@ export const traceEventWalFormat = <
108108
: `${baseName}${finalExtension}`,
109109
// eslint-disable-next-line functional/prefer-tacit
110110
finalizer: (
111-
records: UserTimingTraceEvent[],
111+
records: (UserTimingTraceEvent | InvalidEntry<string>)[],
112112
metadata?: Record<string, unknown>,
113-
) => generateTraceContent(records, metadata),
113+
) => {
114+
const validRecords = records.filter(
115+
(r): r is UserTimingTraceEvent =>
116+
!(typeof r === 'object' && r != null && '__invalid' in r),
117+
);
118+
return generateTraceContent(validRecords, metadata);
119+
},
114120
} satisfies WalFormat<T>;
115121
};

packages/utils/src/lib/wal.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,10 @@ export type WalFormat<T> = {
225225
/** Function to generate final merged file path */
226226
finalPath: () => string;
227227
/** Finalizer for converting records to a string */
228-
finalizer: (records: T[], opt?: Record<string, unknown>) => string;
228+
finalizer: (
229+
records: (T | InvalidEntry<string>)[],
230+
opt?: Record<string, unknown>,
231+
) => string;
229232
};
230233

231234
export const stringCodec = <
@@ -250,7 +253,7 @@ export const stringCodec = <
250253
* - codec defaults to stringCodec<T>()
251254
* - shardPath defaults to (id: string) => `${baseName}.${id}${walExtension}`
252255
* - finalPath defaults to () => `${baseName}${finalExtension}`
253-
* - finalizer defaults to (encodedRecords: T[]) => `${encodedRecords.join('\n')}\n`
256+
* - finalizer defaults to (encodedRecords: (T | InvalidEntry<string>)[]) => `${encodedRecords.join('\n')}\n`
254257
* @param format - Partial WalFormat configuration
255258
* @returns Parsed WalFormat with defaults filled in
256259
*/
@@ -264,7 +267,8 @@ export function parseWalFormat<T extends object | string = object>(
264267
codec = stringCodec<T>(),
265268
shardPath = (id: string) => `${baseName}.${id}.${walExtension}`,
266269
finalPath = () => `${baseName}.${finalExtension}`,
267-
finalizer = (encodedRecords: T[]) => `${encodedRecords.join('\n')}\n`,
270+
finalizer = (encodedRecords: (T | InvalidEntry<string>)[]) =>
271+
`${encodedRecords.join('\n')}\n`,
268272
} = format;
269273

270274
return {

0 commit comments

Comments
 (0)