Files
bettergi-scripts-list/repo/js/LinneaMining/utils/version.js
躁动的氨气 ffe9d777c6 feat: 莉奈娅挖矿一条龙 (#3174)
* feat: 莉奈娅挖矿一条龙

* feat: 更新版本号

* fix: 修复一些问题

* feat: 清理路线

* feat: 添加选择
2026-05-01 21:30:13 +08:00

32 lines
1.0 KiB
JavaScript

/**
* 语义化版本比对,判断当前版本是否满足最低要求
* 支持带预发布标识的版本号(如 0.60.2-alpha.2),自动提取主版本号进行比较
*
* @param {string} version - 当前版本号
* @param {string} minVersion - 最低要求版本号,默认 '0.60.2'
* @returns {boolean} 当前版本是否 >= 最低要求版本
*/
function checkVersion(version, minVersion = '0.60.2') {
const normalizeVersion = (v) => {
const match = String(v).match(/^(\d+\.\d+\.\d+)/)
return match ? match[1] : '0.0.0'
}
const currentParts = normalizeVersion(version).split('.').map(Number)
const minParts = normalizeVersion(minVersion).split('.').map(Number)
const maxLength = Math.max(currentParts.length, minParts.length)
while (currentParts.length < maxLength) currentParts.push(0)
while (minParts.length < maxLength) minParts.push(0)
for (let i = 0; i < maxLength; i++) {
if (currentParts[i] > minParts[i]) return true
if (currentParts[i] < minParts[i]) return false
}
return true
}
export { checkVersion };