opennms
Version:
Client API for the OpenNMS network monitoring platform
1 lines • 11.2 kB
JSON
{"remainingRequest":"/data/node_modules/babel-loader/lib/index.js!/data/node_modules/version_compare/version_compare.js","dependencies":[{"path":"/data/node_modules/version_compare/version_compare.js","mtime":1553611386840},{"path":"/data/.babelrc","mtime":1553611371556},{"path":"/data/node_modules/cache-loader/dist/cjs.js","mtime":1553611387012},{"path":"/data/node_modules/babel-loader/lib/index.js","mtime":1553611386992}],"contextDependencies":[],"result":["'use strict';\n\n(function (exports) {\n /**\n * Compares two software version numbers (e.g. \"1.7.1\" or \"1.2b\").\n *\n * This function was born in http://stackoverflow.com/a/6832721.\n *\n * @param {string} v1 The first version to be compared.\n * @param {string} v2 The second version to be compared.\n * @param {object} [options] Optional flags that affect comparison behavior:\n * <ul>\n * <li>\n * <tt>lexicographical: true</tt> compares each part of the version strings lexicographically instead of\n * naturally; this allows suffixes such as \"b\" or \"dev\" but will cause \"1.10\" to be considered smaller than\n * \"1.2\".\n * </li>\n * <li>\n * <tt>zeroExtend: true</tt> changes the result if one version string has less parts than the other. In\n * this case the shorter string will be padded with \"zero\" parts instead of being considered smaller.\n * </li>\n * </ul>\n * @returns {number|NaN}\n * <ul>\n * <li>0 if the versions are equal</li>\n * <li>a negative integer iff v1 < v2</li>\n * <li>a positive integer iff v1 > v2</li>\n * <li>NaN if either version string is in the wrong format</li>\n * </ul>\n *\n * @copyright by Jon Papaioannou ([\"john\", \"papaioannou\"].join(\".\") + \"@gmail.com\")\n * @license This function is in the public domain. Do what you want with it, no strings attached.\n */\n function compare(v1, v2, options) {\n //remove anything after - 1.1.2-3-a4agbr-dirty\n function cropDash(s) {\n var idx = s.indexOf('-');\n if (idx !== -1) {\n s = s.substring(0, idx);\n }\n return s;\n }\n\n v1 = cropDash(v1);\n v2 = cropDash(v2);\n var lexicographical = options && options.lexicographical,\n zeroExtend = options && options.zeroExtend,\n v1parts = v1.split('.'),\n v2parts = v2.split('.');\n\n function isValidPart(x) {\n return (lexicographical ? /^\\d+[A-Za-z]*$/ : /^\\d+$/).test(x);\n }\n\n if (!v1parts.every(isValidPart) || !v2parts.every(isValidPart)) {\n return NaN;\n }\n\n if (zeroExtend) {\n while (v1parts.length < v2parts.length) {\n v1parts.push(\"0\");\n }while (v2parts.length < v1parts.length) {\n v2parts.push(\"0\");\n }\n }\n\n if (!lexicographical) {\n v1parts = v1parts.map(Number);\n v2parts = v2parts.map(Number);\n }\n\n for (var i = 0; i < v1parts.length; ++i) {\n if (v2parts.length == i) {\n return 1;\n }\n\n if (v1parts[i] == v2parts[i]) {\n continue;\n } else if (v1parts[i] > v2parts[i]) {\n return 1;\n } else {\n return -1;\n }\n }\n\n if (v1parts.length != v2parts.length) {\n return -1;\n }\n\n return 0;\n }\n\n function matches(v1, v2, options) {\n return compare(v1, v2, options) === 0;\n }\n\n function gt(v1, v2, options) {\n return compare(v1, v2, options) > 0;\n }\n function gte(v1, v2, options) {\n return compare(v1, v2, options) >= 0;\n }\n function lt(v1, v2, options) {\n return compare(v1, v2, options) < 0;\n }\n function lte(v1, v2, options) {\n return compare(v1, v2, options) <= 0;\n }\n\n exports.compare = compare;\n exports.matches = matches;\n exports.gt = gt;\n exports.gte = gte;\n exports.lt = lt;\n exports.lte = lte;\n\n String.prototype.endsWith = function (suffix) {\n return this.indexOf(suffix, this.length - suffix.length) !== -1;\n };\n})(typeof exports === 'undefined' ? undefined.VersionCompare = {} : exports);",{"version":3,"sources":["node_modules/version_compare/version_compare.js"],"names":["exports","compare","v1","v2","options","cropDash","s","idx","indexOf","substring","lexicographical","zeroExtend","v1parts","split","v2parts","isValidPart","x","test","every","NaN","length","push","map","Number","i","matches","gt","gte","lt","lte","String","prototype","endsWith","suffix","VersionCompare"],"mappings":"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","file":"version_compare.js","sourceRoot":"/data","sourcesContent":["(function(exports){\n /**\n * Compares two software version numbers (e.g. \"1.7.1\" or \"1.2b\").\n *\n * This function was born in http://stackoverflow.com/a/6832721.\n *\n * @param {string} v1 The first version to be compared.\n * @param {string} v2 The second version to be compared.\n * @param {object} [options] Optional flags that affect comparison behavior:\n * <ul>\n * <li>\n * <tt>lexicographical: true</tt> compares each part of the version strings lexicographically instead of\n * naturally; this allows suffixes such as \"b\" or \"dev\" but will cause \"1.10\" to be considered smaller than\n * \"1.2\".\n * </li>\n * <li>\n * <tt>zeroExtend: true</tt> changes the result if one version string has less parts than the other. In\n * this case the shorter string will be padded with \"zero\" parts instead of being considered smaller.\n * </li>\n * </ul>\n * @returns {number|NaN}\n * <ul>\n * <li>0 if the versions are equal</li>\n * <li>a negative integer iff v1 < v2</li>\n * <li>a positive integer iff v1 > v2</li>\n * <li>NaN if either version string is in the wrong format</li>\n * </ul>\n *\n * @copyright by Jon Papaioannou ([\"john\", \"papaioannou\"].join(\".\") + \"@gmail.com\")\n * @license This function is in the public domain. Do what you want with it, no strings attached.\n */\n function compare(v1, v2, options) {\n //remove anything after - 1.1.2-3-a4agbr-dirty\n function cropDash(s){\n var idx = s.indexOf('-');\n if(idx !== -1) {\n s = s.substring(0, idx);\n }\n return s;\n }\n\n v1 = cropDash(v1);\n v2 = cropDash(v2);\n var lexicographical = options && options.lexicographical,\n zeroExtend = options && options.zeroExtend,\n v1parts = v1.split('.'),\n v2parts = v2.split('.');\n\n\n \n\n\n function isValidPart(x) {\n return (lexicographical ? /^\\d+[A-Za-z]*$/ : /^\\d+$/).test(x);\n }\n\n if (!v1parts.every(isValidPart) || !v2parts.every(isValidPart)) {\n return NaN;\n }\n\n if (zeroExtend) {\n while (v1parts.length < v2parts.length) v1parts.push(\"0\");\n while (v2parts.length < v1parts.length) v2parts.push(\"0\");\n }\n\n if (!lexicographical) {\n v1parts = v1parts.map(Number);\n v2parts = v2parts.map(Number);\n }\n\n for (var i = 0; i < v1parts.length; ++i) {\n if (v2parts.length == i) {\n return 1;\n }\n\n if (v1parts[i] == v2parts[i]) {\n continue;\n }\n else if (v1parts[i] > v2parts[i]) {\n return 1;\n }\n else {\n return -1;\n }\n }\n\n if (v1parts.length != v2parts.length) {\n return -1;\n }\n\n return 0;\n }\n\n function matches(v1, v2, options){\n return compare(v1, v2, options) === 0;\n }\n\n function gt(v1, v2, options){\n return compare(v1, v2, options) > 0;\n }\n function gte(v1, v2, options){\n return compare(v1, v2, options) >= 0;\n }\n function lt(v1, v2, options){\n return compare(v1, v2, options) < 0;\n }\n function lte(v1, v2, options){\n return compare(v1, v2, options) <= 0;\n }\n\n exports.compare = compare;\n exports.matches = matches;\n exports.gt = gt;\n exports.gte = gte;\n exports.lt = lt;\n exports.lte = lte;\n\n String.prototype.endsWith = function(suffix) {\n return this.indexOf(suffix, this.length - suffix.length) !== -1;\n };\n})(typeof exports === 'undefined'? this.VersionCompare = {}: exports);\n"]}]}