From 25eca9a747c122b3096b0f2d01b3323339d57dd9 Mon Sep 17 00:00:00 2001 From: Alex Rudenko Date: Fri, 22 Sep 2023 22:37:03 +0200 Subject: [PATCH] fix: avoid structuredClone for Node 16 (#11006) --- packages/puppeteer-core/src/api/Page.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/puppeteer-core/src/api/Page.ts b/packages/puppeteer-core/src/api/Page.ts index d8f62dc5f4ea0..1f1a8dd21b466 100644 --- a/packages/puppeteer-core/src/api/Page.ts +++ b/packages/puppeteer-core/src/api/Page.ts @@ -2277,7 +2277,15 @@ export abstract class Page extends EventEmitter { ): Promise { await this.bringToFront(); - const options = structuredClone(userOptions) as ScreenshotOptions; + // TODO: use structuredClone after Node 16 support is dropped.« + const options = { + ...userOptions, + clip: userOptions.clip + ? { + ...userOptions.clip, + } + : undefined, + } as ScreenshotOptions; if (options.type === undefined && options.path !== undefined) { const filePath = options.path; // Note we cannot use Node.js here due to browser compatability.