| Server IP : 162.19.112.25 / Your IP : 216.73.217.36 Web Server : LiteSpeed System : Linux qamar.tasjeel.ae 5.14.0-611.55.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 15:19:29 EDT 2026 x86_64 User : archiart ( 1428) PHP Version : 8.2.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /opt/alt/alt-nodejs24/root/lib/node_modules/npm/node_modules/semver/functions/ |
Upload File : |
'use strict'
const parse = require('./parse')
const constants = require('../internal/constants')
const SemVer = require('../classes/semver')
const truncate = (version, truncation, options) => {
if (!constants.RELEASE_TYPES.includes(truncation)) {
return null
}
const clonedVersion = cloneInputVersion(version, options)
return clonedVersion && doTruncation(clonedVersion, truncation)
}
const cloneInputVersion = (version, options) => {
const versionStringToParse = (
version instanceof SemVer ? version.version : version
)
return parse(versionStringToParse, options)
}
const doTruncation = (version, truncation) => {
if (isPrerelease(truncation)) {
return version.version
}
version.prerelease = []
switch (truncation) {
case 'major':
version.minor = 0
version.patch = 0
break
case 'minor':
version.patch = 0
break
}
return version.format()
}
const isPrerelease = (type) => {
return type.startsWith('pre')
}
module.exports = truncate