MCPcopy Create free account
hub / github.com/violentmonkey/violentmonkey / compareVersion

Function compareVersion

src/common/util.js:146–156  ·  view source on GitHub ↗
(ver1, ver2)

Source from the content-addressed store, hash-verified

144
145/** @return -1 | 0 | 1 */
146export function compareVersion(ver1, ver2) {
147 // Used in safe context
148 // eslint-disable-next-line no-restricted-syntax
149 const [, main1 = ver1 || '', pre1] = VERSION_RE.exec(ver1);
150 // eslint-disable-next-line no-restricted-syntax
151 const [, main2 = ver2 || '', pre2] = VERSION_RE.exec(ver2);
152 const delta = compareVersionChunk(main1, main2)
153 || !pre1 - !pre2 // 1.2.3-pre-release is less than 1.2.3
154 || pre1 && compareVersionChunk(pre1, pre2, true); // if pre1 is present, pre2 is too
155 return delta < 0 ? -1 : +!!delta;
156}
157
158function compareVersionChunk(ver1, ver2, isSemverMode) {
159 const parts1 = ver1.split('.');

Callers 3

index.test.jsFile · 0.90
initOptionsFunction · 0.90
downloadUpdateFunction · 0.90

Calls 1

compareVersionChunkFunction · 0.85

Tested by

no test coverage detected