diff --git a/src/protocol.test.ts b/src/protocol.test.ts index d886cc0..22b1eac 100644 --- a/src/protocol.test.ts +++ b/src/protocol.test.ts @@ -122,6 +122,13 @@ describe('parseCommand', () => { const result = parseCommand(cmd({ id: '1', action: 'screenshot', fullPage: true })); expect(result.success).toBe(true); }); + + it('should parse screenshot with null selector', () => { + const result = parseCommand( + cmd({ id: '1', action: 'screenshot', path: 'test.png', selector: null }) + ); + expect(result.success).toBe(true); + }); }); describe('cookies', () => { diff --git a/src/protocol.ts b/src/protocol.ts index 4e13e2c..8f899eb 100644 --- a/src/protocol.ts +++ b/src/protocol.ts @@ -693,7 +693,7 @@ const screenshotSchema = baseCommandSchema.extend({ action: z.literal('screenshot'), path: z.string().nullable().optional(), fullPage: z.boolean().optional(), - selector: z.string().min(1).optional(), + selector: z.string().min(1).nullish(), format: z.enum(['png', 'jpeg']).optional(), quality: z.number().min(0).max(100).optional(), });