diff --git a/packages/playwright-core/src/server/injected/clock.ts b/packages/playwright-core/src/server/injected/clock.ts index 26342f0223..1d6b4b7017 100644 --- a/packages/playwright-core/src/server/injected/clock.ts +++ b/packages/playwright-core/src/server/injected/clock.ts @@ -301,7 +301,11 @@ export class ClockController { if (typeof timer.func !== 'function') { let error: Error | undefined; try { - (() => { eval(timer.func); })(); + // Using global this is not correct here, + // but it is already broken since the eval scope is different from the one + // on the original call site. + // eslint-disable-next-line no-restricted-globals + (() => { globalThis.eval(timer.func); })(); } catch (e) { error = e; } diff --git a/packages/playwright/bundles/babel/package.json b/packages/playwright/bundles/babel/package.json index 223f0310c7..27853cf80e 100644 --- a/packages/playwright/bundles/babel/package.json +++ b/packages/playwright/bundles/babel/package.json @@ -3,7 +3,7 @@ "version": "0.0.1", "private": true, "scripts": { - "esbuild": "esbuild ./src/babelBundleImpl.ts --bundle --outdir=../../lib/transform --format=cjs --platform=node --target=ES2019", + "esbuild": "esbuild ./src/babelBundleImpl.ts --bundle --outdir=../../lib/transform --format=cjs --platform=node --target=ES2019 --external:playwright", "build": "npm run esbuild -- --minify", "watch": "npm run esbuild -- --watch --sourcemap", "generate-license": "node ../../../../utils/generate_third_party_notice.js"