diff --git a/src/browser/pw-session.ts b/src/browser/pw-session.ts index e8127b75a52..4920af5b5b4 100644 --- a/src/browser/pw-session.ts +++ b/src/browser/pw-session.ts @@ -107,6 +107,16 @@ function normalizeCdpUrl(raw: string) { return raw.replace(/\/$/, ""); } +function findNetworkRequestById(state: PageState, id: string): BrowserNetworkRequest | undefined { + for (let i = state.requests.length - 1; i >= 0; i -= 1) { + const candidate = state.requests[i]; + if (candidate && candidate.id === id) { + return candidate; + } + } + return undefined; +} + function roleRefsKey(cdpUrl: string, targetId: string) { return `${normalizeCdpUrl(cdpUrl)}::${targetId}`; } @@ -246,14 +256,7 @@ export function ensurePageState(page: Page): PageState { if (!id) { return; } - let rec: BrowserNetworkRequest | undefined; - for (let i = state.requests.length - 1; i >= 0; i -= 1) { - const candidate = state.requests[i]; - if (candidate && candidate.id === id) { - rec = candidate; - break; - } - } + const rec = findNetworkRequestById(state, id); if (!rec) { return; } @@ -265,14 +268,7 @@ export function ensurePageState(page: Page): PageState { if (!id) { return; } - let rec: BrowserNetworkRequest | undefined; - for (let i = state.requests.length - 1; i >= 0; i -= 1) { - const candidate = state.requests[i]; - if (candidate && candidate.id === id) { - rec = candidate; - break; - } - } + const rec = findNetworkRequestById(state, id); if (!rec) { return; }