UNPKG

storycrawler

Version:

Utilities to build Storybook crawling tools with Puppeteer

59 lines (58 loc) 1.19 kB
import type { Page } from 'puppeteer-core'; /** * * Helper to wait until requesting assets are resolved * * @example * * ```ts * class Worker { * constructor() { * this.resourceWatcher = new ResourceWatcher(this.page).init(); * } * async someTask() { * this.resourceWatcher.clear(); * await this.doSomething(this.page); // Trigger some HTTP requests * await this.resourceWatcher.waitForRequestsComplete(); * } * } * ``` * **/ export declare class ResourceWatcher { private page; private resolvedAssetsMap; private requestedAssetUrls; /** * * @param page - Puppeteer page object * **/ constructor(page: Page); /** * * Registers listeners to the Puppeteer page object. * * @returns The ResourceWatcher instance itself * **/ init(): this; /** * * Clears requested URLs to wait for. * **/ clear(): void; /** * * @returns URLs requested * **/ getRequestedUrls(): string[]; /** * * Waits until the all resource requests are finished. * **/ waitForRequestsComplete(): Promise<string[]>; }