SemVerUtils
import { SemVerUtils } from '@kairo-js/utils'
Semantic version utility class. All methods are static. Provides comparison, formatting, and range-checking operations for SemVer objects.
Methods
compare
static compare(a: SemVer, b: SemVer): numberCompares two semantic versions.
Parameters
a:
SemVerThe first version.
b:
SemVerThe second version.
Returns: number — A negative number if a < b, a positive number if a > b, or 0 if they are equal.
equals
static equals(a: SemVer, b: SemVer): booleanChecks whether two semantic versions are equal.
Parameters
a:
SemVerThe first version.
b:
SemVerThe second version.
Returns: boolean — true if a and b represent the same version, otherwise false.
format
static format(version: SemVer): stringConverts a SemVer object to its string representation (e.g. "1.2.3" or "1.2.3-beta.1").
Parameters
version:
SemVerThe version to format.
Returns: string — The formatted version string.
isPrerelease
static isPrerelease(version: SemVer): booleanChecks whether a version is a pre-release version.
Parameters
version:
SemVerThe version to check.
Returns: boolean — true if the version has a non-empty prerelease field, otherwise false.
rcompare
static rcompare(a: SemVer, b: SemVer): numberCompares two semantic versions in reverse order. Equivalent to compare(b, a). Useful for sorting a list of versions in descending order.
Parameters
a:
SemVerThe first version.
b:
SemVerThe second version.
Returns: number — A positive number if a < b, a negative number if a > b, or 0 if they are equal.
satisfies
static satisfies(version: SemVer, range: string): booleanChecks whether a version satisfies a semver range string.
Parameters
version:
SemVerThe version to test.
range:
stringA semver range string (e.g.
"^1.0.0",">=2.1.0 <3.0.0").
Returns: boolean — true if version satisfies the given range, otherwise false.