diff --git a/backend/functions/src/services/puppeteer.ts b/backend/functions/src/services/puppeteer.ts index 59c02fa..b532b20 100644 --- a/backend/functions/src/services/puppeteer.ts +++ b/backend/functions/src/services/puppeteer.ts @@ -4,7 +4,7 @@ import { container, singleton } from 'tsyringe'; import { AsyncService, Defer, marshalErrorLike, AssertionFailureError, delay, Deferred, perNextTick, ParamValidationError } from 'civkit'; import { Logger } from '../shared/services/logger'; -import type { Browser, CookieParam, GoToOptions, HTTPResponse, Page } from 'puppeteer'; +import type { Browser, CookieParam, GoToOptions, HTTPResponse, Page, Viewport } from 'puppeteer'; import type { Cookie } from 'set-cookie-parser'; import puppeteer from 'puppeteer-extra'; @@ -555,6 +555,9 @@ export class PuppeteerControl extends AsyncService { } page.emit('snapshot', snapshot); })); + preparations.push(page.exposeFunction('setViewport', (viewport: Viewport | null) => { + page.setViewport(viewport).catch(() => undefined); + })); preparations.push(page.evaluateOnNewDocument(SCRIPT_TO_INJECT_INTO_FRAME)); preparations.push(page.setRequestInterception(true));