File: /var/dev/nowruzgan/travelogue/node_modules/ol/string.js
/**
* @module ol/string
*/
/**
* @param {number} number Number to be formatted
* @param {number} width The desired width
* @param {number} [precision] Precision of the output string (i.e. number of decimal places)
* @return {string} Formatted string
*/
export function padNumber(number, width, precision) {
const numberString =
precision !== undefined ? number.toFixed(precision) : '' + number;
let decimal = numberString.indexOf('.');
decimal = decimal === -1 ? numberString.length : decimal;
return decimal > width
? numberString
: new Array(1 + width - decimal).join('0') + numberString;
}
/**
* Adapted from https://github.com/omichelsen/compare-versions/blob/master/index.js
* @param {string|number} v1 First version
* @param {string|number} v2 Second version
* @return {number} Value
*/
export function compareVersions(v1, v2) {
const s1 = ('' + v1).split('.');
const s2 = ('' + v2).split('.');
for (let i = 0; i < Math.max(s1.length, s2.length); i++) {
const n1 = parseInt(s1[i] || '0', 10);
const n2 = parseInt(s2[i] || '0', 10);
if (n1 > n2) {
return 1;
}
if (n2 > n1) {
return -1;
}
}
return 0;
}