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; }