probot
Version:
A framework for building GitHub Apps to automate and improve your workflow
31 lines (30 loc) • 1.11 kB
JavaScript
import { detectRuntime } from "./detect-runtime.js";
export function isSupportedRuntime(globalThis) {
switch (detectRuntime(globalThis)) {
case "node": {
const versions = globalThis.process
.versions;
const version = versions.node;
const [major, minor, patch] = version.split(".", 3).map(Number);
return (major >= 22 ||
(major === 20 && (minor > 18 || (minor === 18 && patch >= 1))));
}
case "deno": {
const versions = globalThis.process
.versions;
const version = versions.deno;
const [major, minor] = version.split(".", 2).map(Number);
return major >= 3 || (major === 2 && minor >= 3);
}
case "bun": {
const versions = globalThis.process
.versions;
const version = versions.bun;
const [major, minor] = version.split(".", 2).map(Number);
return major > 1 || (major === 1 && minor >= 2);
}
default: {
return false;
}
}
}