diff --git a/src/providers/inspect/inspect-view-server.ts b/src/providers/inspect/inspect-view-server.ts index ebbb47b..97d43aa 100644 --- a/src/providers/inspect/inspect-view-server.ts +++ b/src/providers/inspect/inspect-view-server.ts @@ -47,6 +47,7 @@ export class InspectViewServer extends PackageViewServer { } public async evalLogFiles( + log_dir: string, mtime: number, clientFileCount: number ): Promise { @@ -62,7 +63,14 @@ export class InspectViewServer extends PackageViewServer { if (token) { headers["If-None-Match"] = token; } - return (await this.api_json("/api/log-files", headers)).data; + + // Forward the log_dir + const params = new URLSearchParams(); + params.append("log_dir", log_dir); + + return ( + await this.api_json(`/api/log-files?${params.toString()}`, headers) + ).data; } else { throw new Error("evalLogFile not implemented"); } diff --git a/src/providers/logview/logview-panel.ts b/src/providers/logview/logview-panel.ts index 71516f4..c9619cd 100644 --- a/src/providers/logview/logview-panel.ts +++ b/src/providers/logview/logview-panel.ts @@ -36,9 +36,21 @@ export class LogviewPanel extends Disposable { // serve eval log api to webview this._rpcDisconnect = webviewPanelJsonRpcServer(panel_, { - [kMethodEvalLogDir]: async () => server.evalLogDir(), + [kMethodEvalLogDir]: async () => { + if (type === "dir") { + return JSON.stringify({ log_dir: uri.toString() }); + } + const result = await server.evalLogDir(); + return result; + }, [kMethodEvalLogFiles]: async (params: unknown[]) => - server.evalLogFiles(params[0] as number, params[1] as number), + type === "dir" + ? server.evalLogFiles( + uri.toString(), + params[0] as number, + params[1] as number + ) + : Promise.resolve(undefined), [kMethodEvalLogs]: async () => type === "dir" ? server.evalLogs(uri) : server.evalLogsSolo(uri), [kMethodEvalLog]: (params: unknown[]) =>