Files
DndGamePlayer/app/main/versionInfo.ts
T

25 lines
955 B
TypeScript

import { app } from 'electron';
/**
* Семантическая версия приложения: из упакованного приложения — `app.getVersion()` (= `version` из package.json),
* в dev при запуске через npm — обычно то же; иначе fallback на `npm_package_version` / `0.0.0`.
*/
export function getAppSemanticVersion(): string {
try {
const v = app.getVersion();
if (typeof v === 'string' && v.trim().length > 0) {
return v.trim();
}
} catch {
/* вне процесса Electron */
}
const fromEnv = process.env.npm_package_version?.trim();
return fromEnv !== undefined && fromEnv.length > 0 ? fromEnv : '0.0.0';
}
/** Необязательный номер сборки из CI (`DND_BUILD_NUMBER`). */
export function getOptionalBuildNumber(): string | null {
const b = process.env.DND_BUILD_NUMBER?.trim();
return b && b.length > 0 ? b : null;
}