fix(sw): fix UI mode on codespaces by not passing `server` (#33664)
This commit is contained in:
parent
6e19bc341f
commit
8c1002a98b
|
@ -125,8 +125,6 @@ export async function installRootRedirect(server: HttpServer, traceUrls: string[
|
||||||
for (const reporter of options.reporter || [])
|
for (const reporter of options.reporter || [])
|
||||||
params.append('reporter', reporter);
|
params.append('reporter', reporter);
|
||||||
|
|
||||||
params.set('server', server.urlPrefix('precise'));
|
|
||||||
|
|
||||||
const urlPath = `./trace/${options.webApp || 'index.html'}?${params.toString()}`;
|
const urlPath = `./trace/${options.webApp || 'index.html'}?${params.toString()}`;
|
||||||
server.routePath('/', (_, response) => {
|
server.routePath('/', (_, response) => {
|
||||||
response.statusCode = 302;
|
response.statusCode = 302;
|
||||||
|
|
|
@ -43,12 +43,9 @@ async function loadTrace(traceUrl: string, traceFileName: string | null, client:
|
||||||
const clientId = client?.id ?? '';
|
const clientId = client?.id ?? '';
|
||||||
let data = clientIdToTraceUrls.get(clientId);
|
let data = clientIdToTraceUrls.get(clientId);
|
||||||
if (!data) {
|
if (!data) {
|
||||||
let traceViewerServerBaseUrl = self.registration.scope;
|
let traceViewerServerBaseUrl = new URL('../', client?.url ?? self.registration.scope);
|
||||||
if (client?.url) {
|
if (traceViewerServerBaseUrl.searchParams.has('server'))
|
||||||
const clientUrl = new URL(client.url);
|
traceViewerServerBaseUrl = new URL(traceViewerServerBaseUrl.searchParams.get('server')!, traceViewerServerBaseUrl);
|
||||||
if (clientUrl.searchParams.has('server'))
|
|
||||||
traceViewerServerBaseUrl = clientUrl.searchParams.get('server')!;
|
|
||||||
}
|
|
||||||
|
|
||||||
data = { limit, traceUrls: new Set(), traceViewerServer: new TraceViewerServer(traceViewerServerBaseUrl) };
|
data = { limit, traceUrls: new Set(), traceViewerServer: new TraceViewerServer(traceViewerServerBaseUrl) };
|
||||||
clientIdToTraceUrls.set(clientId, data);
|
clientIdToTraceUrls.set(clientId, data);
|
||||||
|
|
|
@ -146,7 +146,7 @@ function formatUrl(trace: string, server: TraceViewerServer) {
|
||||||
}
|
}
|
||||||
|
|
||||||
export class TraceViewerServer {
|
export class TraceViewerServer {
|
||||||
constructor(private readonly baseUrl: string) {}
|
constructor(private readonly baseUrl: URL) {}
|
||||||
|
|
||||||
getFileURL(path: string): URL {
|
getFileURL(path: string): URL {
|
||||||
const url = new URL('trace/file', this.baseUrl);
|
const url = new URL('trace/file', this.baseUrl);
|
||||||
|
|
|
@ -47,9 +47,11 @@ const xtermDataSource: XtermDataSource = {
|
||||||
};
|
};
|
||||||
|
|
||||||
const searchParams = new URLSearchParams(window.location.search);
|
const searchParams = new URLSearchParams(window.location.search);
|
||||||
const guid = searchParams.get('ws');
|
let testServerBaseUrl = new URL('../', window.location.href);
|
||||||
const wsURL = new URL(`../${guid}`, window.location.toString());
|
if (testServerBaseUrl.searchParams.has('server'))
|
||||||
wsURL.protocol = (window.location.protocol === 'https:' ? 'wss:' : 'ws:');
|
testServerBaseUrl = new URL(testServerBaseUrl.searchParams.get('server')!, testServerBaseUrl);
|
||||||
|
const wsURL = new URL(searchParams.get('ws')!, testServerBaseUrl);
|
||||||
|
wsURL.protocol = (wsURL.protocol === 'https:' ? 'wss:' : 'ws:');
|
||||||
const queryParams = {
|
const queryParams = {
|
||||||
args: searchParams.getAll('arg'),
|
args: searchParams.getAll('arg'),
|
||||||
grep: searchParams.get('grep') || undefined,
|
grep: searchParams.get('grep') || undefined,
|
||||||
|
|
Loading…
Reference in New Issue