]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - shared/core-utils/common/version.ts
Merge branch 'release/4.2.0' into develop
[github/Chocobozzz/PeerTube.git] / shared / core-utils / common / version.ts
CommitLineData
6702a1b2
C
1// Thanks https://stackoverflow.com/a/16187766
2function compareSemVer (a: string, b: string) {
3 const regExStrip0 = /(\.0+)+$/
4 const segmentsA = a.replace(regExStrip0, '').split('.')
5 const segmentsB = b.replace(regExStrip0, '').split('.')
6
7 const l = Math.min(segmentsA.length, segmentsB.length)
8
9 for (let i = 0; i < l; i++) {
a1587156 10 const diff = parseInt(segmentsA[i], 10) - parseInt(segmentsB[i], 10)
6702a1b2
C
11
12 if (diff) return diff
13 }
14
15 return segmentsA.length - segmentsB.length
16}
17
7c3b7976 18export {
c55e3d72 19 compareSemVer
7c3b7976 20}