Files
ts-scripts/libraries/deno-commons-mod.ts
2025-01-19 09:53:51 +08:00

32 lines
1.1 KiB
TypeScript

export function compareVersion(ver1: string, ver2: string): 0 | 1 | -1 {
if (ver1 === ver2) return 0;
const ver1Parts = ver1.split(".");
const ver2Parts = ver2.split(".");
const ver1Main = parseInt(ver1Parts[0]);
const ver2Main = parseInt(ver2Parts[0]);
if (ver1Main > ver2Main) return 1;
if (ver1Main < ver2Main) return -1;
const ver1Second = parseInt(ver1Parts[1]);
const ver2Second = parseInt(ver2Parts[1]);
if (ver1Second > ver2Second) return 1;
if (ver1Second < ver2Second) return -1;
const ver1Third = parseInt(ver1Parts[2]);
const ver2Third = parseInt(ver2Parts[2]);
if (ver1Third > ver2Third) return 1;
if (ver1Third < ver2Third) return -1;
return 0;
}
export function isOn(val: string | undefined): boolean {
if ((val === null) || (val === undefined)) {
return false;
}
const lowerVal = val.toLowerCase();
return lowerVal === "on" || lowerVal === "yes" || lowerVal === "1" ||
lowerVal === "true";
}
export function isEnvOn(envKey: string): boolean {
return isOn(Deno.env.get(envKey));
}