diff --git a/extension/src/ConnectionHandler.ts b/extension/src/ConnectionHandler.ts index 3ea81e6..2db4e2e 100644 --- a/extension/src/ConnectionHandler.ts +++ b/extension/src/ConnectionHandler.ts @@ -72,12 +72,18 @@ export class ConnectionHandler { openInBrowser: async ({}) => { throwIfNotAuthenticated(); + const url = server.getIndexUrl({ + expression: this.watcher + ? this.watcher.expression + : undefined, + }); + let opened = false; if (config.useChromeKioskMode()) { - opened = await launchChrome(server.indexUrl); + opened = await launchChrome(url); } if (!opened) { - open(server.indexUrl); + open(url); } }, setPreferredDataExtractor: async ({ dataExtractorId }) => { diff --git a/extension/src/Server.ts b/extension/src/Server.ts index bab4b26..d99a05e 100644 --- a/extension/src/Server.ts +++ b/extension/src/Server.ts @@ -28,9 +28,13 @@ export class Server { }); } - public get indexUrl(): string { + public getIndexUrl(args: { expression?: string } = {}): string { const port = process.env.USE_DEV_UI ? 8080 : this.port; - return `http://localhost:${port}/index.html?serverPort=${this.port}&serverSecret=${this.secret}`; + const expr = + args.expression !== undefined + ? `&expression=${encodeURIComponent(args.expression)}` + : ""; + return `http://localhost:${port}/index.html?serverPort=${this.port}&serverSecret=${this.secret}${expr}`; } public get mainBundleUrl(): string { diff --git a/extension/src/WebViews.ts b/extension/src/WebViews.ts index a1138e5..ab167c2 100644 --- a/extension/src/WebViews.ts +++ b/extension/src/WebViews.ts @@ -89,7 +89,7 @@ export function getHtml(server: Server) { ${ isDev - ? `` + ? `` : `` }