//#region src/components/appVersionControl/utils.ts
/**
* 比较两个版本号
* @param version1 版本号1
* @param version2 版本号2
* @returns 如果version1大于version2返回1，相等返回0，小于返回-1
*/
const compareVersions = (version1, version2) => {
	const v1Parts = version1.split(".").map(Number);
	const v2Parts = version2.split(".").map(Number);
	for (let i = 0; i < Math.max(v1Parts.length, v2Parts.length); i++) {
		const v1Part = v1Parts[i] || 0;
		const v2Part = v2Parts[i] || 0;
		if (v1Part > v2Part) return 1;
		if (v1Part < v2Part) return -1;
	}
	return 0;
};
/**
* 从版本号列表中获取最大版本号
* @param versions 版本号列表
* @returns 最大的版本号，如果列表为空返回undefined
*/
const getMaxVersion = (versions) => {
	if (!versions || versions.length === 0) return void 0;
	return versions.reduce((max, current) => {
		if (!max) return current;
		return compareVersions(current, max) > 0 ? current : max;
	}, versions[0]);
};
//#endregion
export { getMaxVersion };
