From 67e77d0139c62fb3a9472758190d3c250181bc03 Mon Sep 17 00:00:00 2001 From: Simon Knott Date: Thu, 14 Nov 2024 15:52:24 +0100 Subject: [PATCH] chore(trace viewer): support HMR --- .../playwright-core/src/server/trace/viewer/traceViewer.ts | 6 +++++- packages/trace-viewer/src/ui/uiModeView.tsx | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/playwright-core/src/server/trace/viewer/traceViewer.ts b/packages/playwright-core/src/server/trace/viewer/traceViewer.ts index b1cc8141a4..3650ba88a7 100644 --- a/packages/playwright-core/src/server/trace/viewer/traceViewer.ts +++ b/packages/playwright-core/src/server/trace/viewer/traceViewer.ts @@ -127,7 +127,11 @@ export async function installRootRedirect(server: HttpServer, traceUrls: string[ params.set('server', server.urlPrefix('precise')); - const urlPath = `./trace/${options.webApp || 'index.html'}?${params.toString()}`; + let baseUrl = '.'; + if (process.env.PW_HMR) + baseUrl = 'http://localhost:44223'; // port is hardcoded in build.js + + const urlPath = `${baseUrl}/trace/${options.webApp || 'index.html'}?${params.toString()}`; server.routePath('/', (_, response) => { response.statusCode = 302; response.setHeader('Location', urlPath); diff --git a/packages/trace-viewer/src/ui/uiModeView.tsx b/packages/trace-viewer/src/ui/uiModeView.tsx index 69a5988641..da09c133dd 100644 --- a/packages/trace-viewer/src/ui/uiModeView.tsx +++ b/packages/trace-viewer/src/ui/uiModeView.tsx @@ -48,8 +48,8 @@ const xtermDataSource: XtermDataSource = { const searchParams = new URLSearchParams(window.location.search); const guid = searchParams.get('ws'); -const wsURL = new URL(`../${guid}`, window.location.toString()); -wsURL.protocol = (window.location.protocol === 'https:' ? 'wss:' : 'ws:'); +const wsURL = new URL(`/${guid}`, searchParams.get('server') ?? window.location.toString()); +wsURL.protocol = (wsURL.protocol === 'https:' ? 'wss:' : 'ws:'); const queryParams = { args: searchParams.getAll('arg'), grep: searchParams.get('grep') || undefined,