function isNodeVersionSupported()

in src/commands/remoteDebug/getRemoteDebugLanguage.ts [53:74]


function isNodeVersionSupported(nodeVersion: string): boolean {
    // the portal's Node runtimes includes several LTS versions i.e. (lts, 8-lts, 12-lts)
    if (/lts/i.test(nodeVersion)) {
        const ltsVersionNumber: number = Number(nodeVersion.split('-')[0]);
        // if there is no version number, ltsVersionNumber will equal 'lts' which isNan
        if (!isNaN(ltsVersionNumber) && ltsVersionNumber < 8) {
            return false;
        }

        return true;
    }

    const splitNodeVersion = nodeVersion.split('.');
    if (splitNodeVersion.length < 2) {
        return false;
    }

    const major = +splitNodeVersion[0];
    const minor = +splitNodeVersion[1];

    return (major > 8 || (major === 8 && minor >= 11));
}