Skip to content

Commit e82e2ff

Browse files
committed
Push component versions to desktop shell help menu
1 parent b9c9421 commit e82e2ff

2 files changed

Lines changed: 30 additions & 2 deletions

File tree

src/services/desktop-api.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ interface DesktopApi {
5656
*/
5757
getPathForFile?: (file: File) => string | null;
5858

59+
setComponentVersions?: (versions: Record<string, string>) => void;
60+
5961
setApiOperations?: (operations: OperationDefinition[]) => void;
6062
onOperationRequest?: (
6163
handler: (operation: string, params: Record<string, unknown>) => Promise<unknown>

src/services/service-versions.ts

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import * as semver from 'semver';
44
import { RUNNING_IN_WORKER } from '../util';
55
import { lazyObservablePromise } from "../util/observable";
66
import { getServerVersion, waitUntilServerReady } from "./server-api";
7-
import { getDesktopInjectedValue } from "./desktop-api";
7+
import { DesktopApi, getDesktopInjectedValue } from "./desktop-api";
88

99
export const UI_VERSION = process.env.UI_VERSION || "Unknown";
1010

@@ -88,4 +88,30 @@ export const SERVER_SEND_API_SUPPORTED = '^1.13.0';
8888
export const ADVANCED_PATCH_TRANSFORMS = '^1.18.0';
8989
export const WILDCARD_CLIENT_CERTS = '^1.22.0';
9090
export const KEY_LOG_FILE_SUPPORTED = '^1.23.0';
91-
export const WEBHOOK_AND_DELAY_RULES = '^1.23.0';
91+
export const WEBHOOK_AND_DELAY_RULES = '^1.23.0';
92+
93+
// Report component versions to the desktop app menu, when available:
94+
if (DesktopApi.setComponentVersions) {
95+
let desktop: string | undefined;
96+
let server: string | undefined;
97+
98+
const buildVersions = () => {
99+
const versions: Record<string, string> = {};
100+
if (desktop) versions["Desktop"] = desktop;
101+
if (server) versions["Server"] = server;
102+
versions["UI"] = UI_VERSION;
103+
return versions;
104+
};
105+
106+
DesktopApi.setComponentVersions(buildVersions());
107+
108+
desktopVersion.then((v) => {
109+
desktop = v;
110+
DesktopApi.setComponentVersions!(buildVersions());
111+
}).catch(() => {});
112+
113+
serverVersion.then((v) => {
114+
server = v;
115+
DesktopApi.setComponentVersions!(buildVersions());
116+
}).catch(() => {});
117+
}

0 commit comments

Comments
 (0)