Files
paseo/packages/app/src/utils/app-version.ts
2026-02-23 15:29:04 +07:00

35 lines
754 B
TypeScript

import Constants from "expo-constants";
import appPackage from "../../package.json";
function toVersionOrNull(value: unknown): string | null {
if (typeof value !== "string") {
return null;
}
const trimmed = value.trim();
if (trimmed.length === 0) {
return null;
}
return trimmed;
}
export function resolveAppVersion(): string | null {
const packageVersion = toVersionOrNull(appPackage?.version);
if (packageVersion) {
return packageVersion;
}
const expoVersion = toVersionOrNull(Constants.expoConfig?.version);
if (expoVersion) {
return expoVersion;
}
const manifestVersion = toVersionOrNull((Constants as any).manifest?.version);
if (manifestVersion) {
return manifestVersion;
}
return null;
}