UNPKG

@snyk/ruby-semver

Version:

node-semver compatible API with RubyGems semantics

74 lines 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.inc = void 0; exports.valid = valid; exports.prerelease = prerelease; exports.platform = platform; exports.major = major; exports.minor = minor; exports.patch = patch; const gem_version_1 = require("./ruby/gem-version"); const inc = () => { throw new Error('Not implemented'); }; exports.inc = inc; function valid(v) { if (!v) { return null; } try { return gem_version_1.GemVersion.create(v).toString(); } catch (err) { return null; } } function prerelease(v) { try { const version = gem_version_1.GemVersion.create(v); if (version.isPrerelease()) { const segments = version.getSegments(); const preStartIndex = segments.findIndex((s) => typeof s === 'string' && /[a-zA-Z]/.test(s)); return segments.slice(preStartIndex); } else { return null; } } catch (err) { return null; } } function platform(v) { try { const version = gem_version_1.GemVersion.create(v); if (version.platform) { return version.platform; } else { return null; } } catch (err) { return null; } } function _segmentAt(v, index) { try { const segment = gem_version_1.GemVersion.create(v).getSegments()[index]; return segment === undefined ? null : segment; } catch (err) { return null; } } function major(v) { return _segmentAt(v, 0); } function minor(v) { return _segmentAt(v, 1); } function patch(v) { return _segmentAt(v, 2); } //# sourceMappingURL=functions.js.map