node-semvers 1.2.7 → 1.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,10 +6,10 @@ var url = require('url');
6
6
  var moduleRoot = require('module-root-sync');
7
7
 
8
8
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
9
- var __dirname$1 = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('postinstall.cjs', document.baseURI).href))));
9
+ var __dirname$1 = path.dirname(typeof __filename === 'undefined' ? url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('postinstall.cjs', document.baseURI).href))) : __filename);
10
10
  var root = moduleRoot(__dirname$1);
11
11
  var constants = {
12
- CACHE_DIRECTORY: path.resolve(path.join(root, '.cache')),
12
+ CACHE_PATH: path.resolve(path.join(root, '.cache')),
13
13
  DISTS_URL: 'https://nodejs.org/dist/index.json',
14
14
  SCHEDULES_URL: 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json'
15
15
  };
@@ -24,7 +24,7 @@ function postinstall() {
24
24
  }, callback);
25
25
  });
26
26
  };
27
- var cache = new Cache(constants.CACHE_DIRECTORY);
27
+ var cache = new Cache(constants.CACHE_PATH);
28
28
  cacheJSON(function(err) {
29
29
  if (err) {
30
30
  console.log("Failed to cache dists and schedules. Error: ".concat(err.message));
@@ -95,26 +95,26 @@ var NodeVersions = /*#__PURE__*/ function() {
95
95
  callback = options;
96
96
  options = null;
97
97
  }
98
- if (typeof callback === 'function') {
99
- options = options || {};
100
- var cache = new _fetchjsoncache.default(options.cacheDirectory || _constants.default.CACHE_DIRECTORY);
98
+ options = options || {};
99
+ function worker(options, callback) {
100
+ var cache = new _fetchjsoncache.default(options.cachePath || _constants.default.CACHE_PATH);
101
101
  cache.get(_constants.default.DISTS_URL, function(err, versions) {
102
102
  if (err) return callback(err);
103
103
  cache.get(_constants.default.SCHEDULES_URL, function(err, schedule) {
104
104
  err ? callback(err) : callback(null, new NodeVersions(versions, schedule));
105
105
  });
106
106
  });
107
- } else {
108
- return new Promise(function(resolve, reject) {
109
- NodeVersions.load(options, function loadCallback(err, NodeVersions) {
110
- err ? reject(err) : resolve(NodeVersions);
111
- });
112
- });
113
107
  }
108
+ if (typeof callback === 'function') return worker(options, callback);
109
+ return new Promise(function(resolve, reject) {
110
+ return worker(options, function(err, versions) {
111
+ err ? reject(err) : resolve(versions);
112
+ });
113
+ });
114
114
  };
115
115
  NodeVersions.loadSync = function loadSync(options) {
116
116
  options = options || {};
117
- var cache = new _fetchjsoncache.default(options.cacheDirectory || _constants.default.CACHE_DIRECTORY);
117
+ var cache = new _fetchjsoncache.default(options.cachePath || _constants.default.CACHE_PATH);
118
118
  var versions = cache.getSync(_constants.default.DISTS_URL);
119
119
  var schedule = cache.getSync(_constants.default.SCHEDULES_URL);
120
120
  if (!versions || !schedule) return null;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/NodeVersions.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\nimport semver from 'semver';\n\nimport constants from './constants.js';\nimport { major, minor } from './lib/keyFunctions.js';\nimport { even, odd } from './lib/lineFunctions.js';\nimport match from './lib/match.js';\nimport normalizeSchedule from './lib/normalizeSchedule.js';\nimport normalizeVersion from './lib/normalizeVersion.js';\nimport parseExpression from './parseExpression/index.js';\n\nimport type { LoadError, LoadOptions, ResolveOptions, Schedule, ScheduleRaw, Version, VersionRaw } from './types.js';\n\nexport type LoadCallback = (error?: LoadError, semvers?: NodeVersions) => void;\n\nexport default class NodeVersions {\n versions: Version[];\n schedules: Schedule[];\n\n constructor(versions: VersionRaw[], schedule: ScheduleRaw[]) {\n if (!versions) throw new Error('Missing option: versions');\n if (!schedule) throw new Error('Missing option: schedule');\n\n this.schedules = [];\n for (const name in schedule) this.schedules.push(normalizeSchedule(name, schedule[name]));\n this.schedules = this.schedules.sort((a, b) => (semver.gt(semver.coerce(a.semver), semver.coerce(b.semver)) ? 1 : -1));\n\n this.versions = [];\n for (let index = 0; index < versions.length; index++) this.versions.push(normalizeVersion(versions[index], this.schedules));\n this.versions = this.versions.sort((a, b) => (semver.gt(a.semver, b.semver) ? -1 : 1));\n }\n\n static load(options?: LoadOptions | LoadCallback, callback?: LoadCallback): undefined | Promise<NodeVersions> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n\n if (typeof callback === 'function') {\n options = options || {};\n\n const cache = new Cache((options as LoadOptions).cacheDirectory || constants.CACHE_DIRECTORY);\n cache.get(constants.DISTS_URL, (err, versions: VersionRaw[]) => {\n if (err) return callback(err);\n\n cache.get(constants.SCHEDULES_URL, (err, schedule: ScheduleRaw[]) => {\n err ? callback(err) : callback(null, new NodeVersions(versions, schedule));\n });\n });\n } else {\n return new Promise((resolve, reject) => {\n NodeVersions.load(options, function loadCallback(err, NodeVersions) {\n err ? reject(err) : resolve(NodeVersions);\n });\n });\n }\n }\n\n static loadSync(options?: LoadOptions): NodeVersions | null {\n options = options || {};\n const cache = new Cache(options.cacheDirectory || constants.CACHE_DIRECTORY);\n const versions = cache.getSync(constants.DISTS_URL) as VersionRaw[];\n const schedule = cache.getSync(constants.SCHEDULES_URL) as ScheduleRaw[];\n if (!versions || !schedule) return null;\n return new NodeVersions(versions, schedule);\n }\n\n resolve(expression: string | number | Date, options?: ResolveOptions): string | string[] | Version | Version[] | null {\n options = options || {};\n const path = options.path || 'version';\n\n // normalize\n if (typeof expression === 'number') expression = `${expression}`;\n if (typeof expression !== 'string') return null;\n expression = expression.trim();\n\n // single result, try a match\n const query = parseExpression.call(this, expression, options.now || new Date());\n if (query) {\n let version = null;\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (!match(test, query)) continue;\n version = test;\n break;\n }\n if (version) return version[path];\n }\n\n // filtered expression\n const range = options.range || '';\n const filters = { lts: !!~range.indexOf('lts'), key: undefined, line: undefined };\n filters.key = ~range.indexOf('major') ? major : ~range.indexOf('minor') ? minor : undefined;\n filters.line = ~range.indexOf('even') ? even : ~range.indexOf('odd') ? odd : undefined;\n\n const results = [];\n const founds = {};\n\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (filters.lts && !test.lts) continue;\n if (filters.line && !filters.line(test)) continue;\n if (!semver.satisfies(test.semver, expression)) continue;\n if (filters.key) {\n if (founds[filters.key(test)]) continue;\n founds[filters.key(test)] = true;\n }\n results.unshift(test[path]);\n }\n return results;\n }\n}\n"],"names":["NodeVersions","versions","schedule","Error","schedules","name","push","normalizeSchedule","sort","a","b","semver","gt","coerce","index","length","normalizeVersion","resolve","expression","options","path","trim","query","parseExpression","call","now","Date","version","test","date","match","range","filters","lts","indexOf","key","undefined","line","major","minor","even","odd","results","founds","satisfies","unshift","load","callback","cache","Cache","cacheDirectory","constants","CACHE_DIRECTORY","get","DISTS_URL","err","SCHEDULES_URL","Promise","reject","loadCallback","loadSync","getSync"],"mappings":"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"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/NodeVersions.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\nimport semver from 'semver';\n\nimport constants from './constants.js';\nimport { major, minor } from './lib/keyFunctions.js';\nimport { even, odd } from './lib/lineFunctions.js';\nimport match from './lib/match.js';\nimport normalizeSchedule from './lib/normalizeSchedule.js';\nimport normalizeVersion from './lib/normalizeVersion.js';\nimport parseExpression from './parseExpression/index.js';\n\nimport type { LoadError, LoadOptions, ResolveOptions, Schedule, ScheduleRaw, Version, VersionRaw } from './types.js';\n\nexport type LoadCallback = (error?: LoadError, semvers?: NodeVersions) => void;\n\nexport default class NodeVersions {\n versions: Version[];\n schedules: Schedule[];\n\n constructor(versions: VersionRaw[], schedule: ScheduleRaw[]) {\n if (!versions) throw new Error('Missing option: versions');\n if (!schedule) throw new Error('Missing option: schedule');\n\n this.schedules = [];\n for (const name in schedule) this.schedules.push(normalizeSchedule(name, schedule[name]));\n this.schedules = this.schedules.sort((a, b) => (semver.gt(semver.coerce(a.semver), semver.coerce(b.semver)) ? 1 : -1));\n\n this.versions = [];\n for (let index = 0; index < versions.length; index++) this.versions.push(normalizeVersion(versions[index], this.schedules));\n this.versions = this.versions.sort((a, b) => (semver.gt(a.semver, b.semver) ? -1 : 1));\n }\n\n static load(options?: LoadOptions | LoadCallback, callback?: LoadCallback): undefined | Promise<NodeVersions> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n\n function worker(options, callback) {\n const cache = new Cache((options as LoadOptions).cachePath || constants.CACHE_PATH);\n cache.get(constants.DISTS_URL, (err, versions: VersionRaw[]) => {\n if (err) return callback(err);\n\n cache.get(constants.SCHEDULES_URL, (err, schedule: ScheduleRaw[]) => {\n err ? callback(err) : callback(null, new NodeVersions(versions, schedule));\n });\n });\n }\n\n if (typeof callback === 'function') return worker(options, callback) as undefined;\n return new Promise((resolve, reject) =>\n worker(options, (err, versions) => {\n err ? reject(err) : resolve(versions);\n })\n );\n }\n\n static loadSync(options?: LoadOptions): NodeVersions | null {\n options = options || {};\n const cache = new Cache(options.cachePath || constants.CACHE_PATH);\n const versions = cache.getSync(constants.DISTS_URL) as VersionRaw[];\n const schedule = cache.getSync(constants.SCHEDULES_URL) as ScheduleRaw[];\n if (!versions || !schedule) return null;\n return new NodeVersions(versions, schedule);\n }\n\n resolve(expression: string | number | Date, options?: ResolveOptions): string | string[] | Version | Version[] | null {\n options = options || {};\n const path = options.path || 'version';\n\n // normalize\n if (typeof expression === 'number') expression = `${expression}`;\n if (typeof expression !== 'string') return null;\n expression = expression.trim();\n\n // single result, try a match\n const query = parseExpression.call(this, expression, options.now || new Date());\n if (query) {\n let version = null;\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (!match(test, query)) continue;\n version = test;\n break;\n }\n if (version) return version[path];\n }\n\n // filtered expression\n const range = options.range || '';\n const filters = { lts: !!~range.indexOf('lts'), key: undefined, line: undefined };\n filters.key = ~range.indexOf('major') ? major : ~range.indexOf('minor') ? minor : undefined;\n filters.line = ~range.indexOf('even') ? even : ~range.indexOf('odd') ? odd : undefined;\n\n const results = [];\n const founds = {};\n\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (filters.lts && !test.lts) continue;\n if (filters.line && !filters.line(test)) continue;\n if (!semver.satisfies(test.semver, expression)) continue;\n if (filters.key) {\n if (founds[filters.key(test)]) continue;\n founds[filters.key(test)] = true;\n }\n results.unshift(test[path]);\n }\n return results;\n }\n}\n"],"names":["NodeVersions","versions","schedule","Error","schedules","name","push","normalizeSchedule","sort","a","b","semver","gt","coerce","index","length","normalizeVersion","resolve","expression","options","path","trim","query","parseExpression","call","now","Date","version","test","date","match","range","filters","lts","indexOf","key","undefined","line","major","minor","even","odd","results","founds","satisfies","unshift","load","callback","worker","cache","Cache","cachePath","constants","CACHE_PATH","get","DISTS_URL","err","SCHEDULES_URL","Promise","reject","loadSync","getSync"],"mappings":"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"}
@@ -25,7 +25,7 @@ var _default = function() {
25
25
  }, callback);
26
26
  });
27
27
  };
28
- var cache = new _fetchjsoncache.default(_constantscjs.default.CACHE_DIRECTORY);
28
+ var cache = new _fetchjsoncache.default(_constantscjs.default.CACHE_PATH);
29
29
  cacheJSON(function(err) {
30
30
  if (err) {
31
31
  console.log("Failed to cache dists and schedules. Error: ".concat(err.message));
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/assets/postinstall.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\n// @ts-ignore\nimport constants from '../constants.cjs';\n\nexport default () => {\n const cache = new Cache(constants.CACHE_DIRECTORY);\n\n function cacheJSON(callback) {\n cache.get(constants.DISTS_URL, { force: true }, (err) => {\n err ? callback(err) : cache.get(constants.SCHEDULES_URL, { force: true }, callback);\n });\n }\n\n cacheJSON((err) => {\n if (err) {\n console.log(`Failed to cache dists and schedules. Error: ${err.message}`);\n return process.exit(err.code || -1);\n }\n process.exit(0);\n });\n};\n"],"names":["cacheJSON","callback","cache","get","constants","DISTS_URL","force","err","SCHEDULES_URL","Cache","CACHE_DIRECTORY","console","log","message","process","exit","code"],"mappings":";;;;+BAIA;;;eAAA;;;qEAJkB;mEAEI;;;;;;IAEtB,WAAe;QAGJA,YAAT,SAASA,UAAUC,QAAQ;QACzBC,MAAMC,GAAG,CAACC,qBAAS,CAACC,SAAS,EAAE;YAAEC,OAAO;QAAK,GAAG,SAACC;YAC/CA,MAAMN,SAASM,OAAOL,MAAMC,GAAG,CAACC,qBAAS,CAACI,aAAa,EAAE;gBAAEF,OAAO;YAAK,GAAGL;QAC5E;IACF;IANA,IAAMC,QAAQ,IAAIO,uBAAK,CAACL,qBAAS,CAACM,eAAe;IAQjDV,UAAU,SAACO;QACT,IAAIA,KAAK;YACPI,QAAQC,GAAG,CAAC,AAAC,+CAA0D,OAAZL,IAAIM,OAAO;YACtE,OAAOC,QAAQC,IAAI,CAACR,IAAIS,IAAI,IAAI,CAAC;QACnC;QACAF,QAAQC,IAAI,CAAC;IACf;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/assets/postinstall.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\n// @ts-ignore\nimport constants from '../constants.cjs';\n\nexport default () => {\n const cache = new Cache(constants.CACHE_PATH);\n\n function cacheJSON(callback) {\n cache.get(constants.DISTS_URL, { force: true }, (err) => {\n err ? callback(err) : cache.get(constants.SCHEDULES_URL, { force: true }, callback);\n });\n }\n\n cacheJSON((err) => {\n if (err) {\n console.log(`Failed to cache dists and schedules. Error: ${err.message}`);\n return process.exit(err.code || -1);\n }\n process.exit(0);\n });\n};\n"],"names":["cacheJSON","callback","cache","get","constants","DISTS_URL","force","err","SCHEDULES_URL","Cache","CACHE_PATH","console","log","message","process","exit","code"],"mappings":";;;;+BAIA;;;eAAA;;;qEAJkB;mEAEI;;;;;;IAEtB,WAAe;QAGJA,YAAT,SAASA,UAAUC,QAAQ;QACzBC,MAAMC,GAAG,CAACC,qBAAS,CAACC,SAAS,EAAE;YAAEC,OAAO;QAAK,GAAG,SAACC;YAC/CA,MAAMN,SAASM,OAAOL,MAAMC,GAAG,CAACC,qBAAS,CAACI,aAAa,EAAE;gBAAEF,OAAO;YAAK,GAAGL;QAC5E;IACF;IANA,IAAMC,QAAQ,IAAIO,uBAAK,CAACL,qBAAS,CAACM,UAAU;IAQ5CV,UAAU,SAACO;QACT,IAAIA,KAAK;YACPI,QAAQC,GAAG,CAAC,AAAC,+CAA0D,OAAZL,IAAIM,OAAO;YACtE,OAAOC,QAAQC,IAAI,CAACR,IAAIS,IAAI,IAAI,CAAC;QACnC;QACAF,QAAQC,IAAI,CAAC;IACf;AACF"}
@@ -16,10 +16,10 @@ function _interop_require_default(obj) {
16
16
  default: obj
17
17
  };
18
18
  }
19
- var __dirname = _path.default.dirname(typeof __filename !== 'undefined' ? __filename : _url.default.fileURLToPath(require("url").pathToFileURL(__filename).toString()));
19
+ var __dirname = _path.default.dirname(typeof __filename === 'undefined' ? _url.default.fileURLToPath(require("url").pathToFileURL(__filename).toString()) : __filename);
20
20
  var root = (0, _modulerootsync.default)(__dirname);
21
21
  var _default = {
22
- CACHE_DIRECTORY: _path.default.resolve(_path.default.join(root, '.cache')),
22
+ CACHE_PATH: _path.default.resolve(_path.default.join(root, '.cache')),
23
23
  DISTS_URL: 'https://nodejs.org/dist/index.json',
24
24
  SCHEDULES_URL: 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json'
25
25
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/constants.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport moduleRoot from 'module-root-sync';\n\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst root = moduleRoot(__dirname);\n\nexport default {\n CACHE_DIRECTORY: path.resolve(path.join(root, '.cache')),\n DISTS_URL: 'https://nodejs.org/dist/index.json',\n SCHEDULES_URL: 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json',\n};\n"],"names":["__dirname","path","dirname","__filename","url","fileURLToPath","root","moduleRoot","CACHE_DIRECTORY","resolve","join","DISTS_URL","SCHEDULES_URL"],"mappings":";;;;+BAOA;;;eAAA;;;2DAPiB;0DACD;qEACO;;;;;;AAEvB,IAAMA,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,OAAOC,IAAAA,uBAAU,EAACP;IAExB,WAAe;IACbQ,iBAAiBP,aAAI,CAACQ,OAAO,CAACR,aAAI,CAACS,IAAI,CAACJ,MAAM;IAC9CK,WAAW;IACXC,eAAe;AACjB"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/constants.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport moduleRoot from 'module-root-sync';\n\nconst __dirname = path.dirname(typeof __filename === 'undefined' ? url.fileURLToPath(import.meta.url) : __filename);\nconst root = moduleRoot(__dirname);\n\nexport default {\n CACHE_PATH: path.resolve(path.join(root, '.cache')),\n DISTS_URL: 'https://nodejs.org/dist/index.json',\n SCHEDULES_URL: 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json',\n};\n"],"names":["__dirname","path","dirname","__filename","url","fileURLToPath","root","moduleRoot","CACHE_PATH","resolve","join","DISTS_URL","SCHEDULES_URL"],"mappings":";;;;+BAOA;;;eAAA;;;2DAPiB;0DACD;qEACO;;;;;;AAEvB,IAAMA,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcC,YAAG,CAACC,aAAa,CAAC,uDAAmBF;AACxG,IAAMG,OAAOC,IAAAA,uBAAU,EAACP;IAExB,WAAe;IACbQ,YAAYP,aAAI,CAACQ,OAAO,CAACR,aAAI,CAACS,IAAI,CAACJ,MAAM;IACzCK,WAAW;IACXC,eAAe;AACjB"}
@@ -13,26 +13,24 @@ let NodeVersions = class NodeVersions {
13
13
  callback = options;
14
14
  options = null;
15
15
  }
16
- if (typeof callback === 'function') {
17
- options = options || {};
18
- const cache = new Cache(options.cacheDirectory || constants.CACHE_DIRECTORY);
16
+ options = options || {};
17
+ function worker(options, callback) {
18
+ const cache = new Cache(options.cachePath || constants.CACHE_PATH);
19
19
  cache.get(constants.DISTS_URL, (err, versions)=>{
20
20
  if (err) return callback(err);
21
21
  cache.get(constants.SCHEDULES_URL, (err, schedule)=>{
22
22
  err ? callback(err) : callback(null, new NodeVersions(versions, schedule));
23
23
  });
24
24
  });
25
- } else {
26
- return new Promise((resolve, reject)=>{
27
- NodeVersions.load(options, function loadCallback(err, NodeVersions) {
28
- err ? reject(err) : resolve(NodeVersions);
29
- });
30
- });
31
25
  }
26
+ if (typeof callback === 'function') return worker(options, callback);
27
+ return new Promise((resolve, reject)=>worker(options, (err, versions)=>{
28
+ err ? reject(err) : resolve(versions);
29
+ }));
32
30
  }
33
31
  static loadSync(options) {
34
32
  options = options || {};
35
- const cache = new Cache(options.cacheDirectory || constants.CACHE_DIRECTORY);
33
+ const cache = new Cache(options.cachePath || constants.CACHE_PATH);
36
34
  const versions = cache.getSync(constants.DISTS_URL);
37
35
  const schedule = cache.getSync(constants.SCHEDULES_URL);
38
36
  if (!versions || !schedule) return null;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/NodeVersions.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\nimport semver from 'semver';\n\nimport constants from './constants.js';\nimport { major, minor } from './lib/keyFunctions.js';\nimport { even, odd } from './lib/lineFunctions.js';\nimport match from './lib/match.js';\nimport normalizeSchedule from './lib/normalizeSchedule.js';\nimport normalizeVersion from './lib/normalizeVersion.js';\nimport parseExpression from './parseExpression/index.js';\n\nimport type { LoadError, LoadOptions, ResolveOptions, Schedule, ScheduleRaw, Version, VersionRaw } from './types.js';\n\nexport type LoadCallback = (error?: LoadError, semvers?: NodeVersions) => void;\n\nexport default class NodeVersions {\n versions: Version[];\n schedules: Schedule[];\n\n constructor(versions: VersionRaw[], schedule: ScheduleRaw[]) {\n if (!versions) throw new Error('Missing option: versions');\n if (!schedule) throw new Error('Missing option: schedule');\n\n this.schedules = [];\n for (const name in schedule) this.schedules.push(normalizeSchedule(name, schedule[name]));\n this.schedules = this.schedules.sort((a, b) => (semver.gt(semver.coerce(a.semver), semver.coerce(b.semver)) ? 1 : -1));\n\n this.versions = [];\n for (let index = 0; index < versions.length; index++) this.versions.push(normalizeVersion(versions[index], this.schedules));\n this.versions = this.versions.sort((a, b) => (semver.gt(a.semver, b.semver) ? -1 : 1));\n }\n\n static load(options?: LoadOptions | LoadCallback, callback?: LoadCallback): undefined | Promise<NodeVersions> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n\n if (typeof callback === 'function') {\n options = options || {};\n\n const cache = new Cache((options as LoadOptions).cacheDirectory || constants.CACHE_DIRECTORY);\n cache.get(constants.DISTS_URL, (err, versions: VersionRaw[]) => {\n if (err) return callback(err);\n\n cache.get(constants.SCHEDULES_URL, (err, schedule: ScheduleRaw[]) => {\n err ? callback(err) : callback(null, new NodeVersions(versions, schedule));\n });\n });\n } else {\n return new Promise((resolve, reject) => {\n NodeVersions.load(options, function loadCallback(err, NodeVersions) {\n err ? reject(err) : resolve(NodeVersions);\n });\n });\n }\n }\n\n static loadSync(options?: LoadOptions): NodeVersions | null {\n options = options || {};\n const cache = new Cache(options.cacheDirectory || constants.CACHE_DIRECTORY);\n const versions = cache.getSync(constants.DISTS_URL) as VersionRaw[];\n const schedule = cache.getSync(constants.SCHEDULES_URL) as ScheduleRaw[];\n if (!versions || !schedule) return null;\n return new NodeVersions(versions, schedule);\n }\n\n resolve(expression: string | number | Date, options?: ResolveOptions): string | string[] | Version | Version[] | null {\n options = options || {};\n const path = options.path || 'version';\n\n // normalize\n if (typeof expression === 'number') expression = `${expression}`;\n if (typeof expression !== 'string') return null;\n expression = expression.trim();\n\n // single result, try a match\n const query = parseExpression.call(this, expression, options.now || new Date());\n if (query) {\n let version = null;\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (!match(test, query)) continue;\n version = test;\n break;\n }\n if (version) return version[path];\n }\n\n // filtered expression\n const range = options.range || '';\n const filters = { lts: !!~range.indexOf('lts'), key: undefined, line: undefined };\n filters.key = ~range.indexOf('major') ? major : ~range.indexOf('minor') ? minor : undefined;\n filters.line = ~range.indexOf('even') ? even : ~range.indexOf('odd') ? odd : undefined;\n\n const results = [];\n const founds = {};\n\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (filters.lts && !test.lts) continue;\n if (filters.line && !filters.line(test)) continue;\n if (!semver.satisfies(test.semver, expression)) continue;\n if (filters.key) {\n if (founds[filters.key(test)]) continue;\n founds[filters.key(test)] = true;\n }\n results.unshift(test[path]);\n }\n return results;\n }\n}\n"],"names":["Cache","semver","constants","major","minor","even","odd","match","normalizeSchedule","normalizeVersion","parseExpression","NodeVersions","load","options","callback","cache","cacheDirectory","CACHE_DIRECTORY","get","DISTS_URL","err","versions","SCHEDULES_URL","schedule","Promise","resolve","reject","loadCallback","loadSync","getSync","expression","path","trim","query","call","now","Date","version","index","length","test","date","range","filters","lts","indexOf","key","undefined","line","results","founds","satisfies","unshift","constructor","Error","schedules","name","push","sort","a","b","gt","coerce"],"mappings":"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"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/NodeVersions.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\nimport semver from 'semver';\n\nimport constants from './constants.js';\nimport { major, minor } from './lib/keyFunctions.js';\nimport { even, odd } from './lib/lineFunctions.js';\nimport match from './lib/match.js';\nimport normalizeSchedule from './lib/normalizeSchedule.js';\nimport normalizeVersion from './lib/normalizeVersion.js';\nimport parseExpression from './parseExpression/index.js';\n\nimport type { LoadError, LoadOptions, ResolveOptions, Schedule, ScheduleRaw, Version, VersionRaw } from './types.js';\n\nexport type LoadCallback = (error?: LoadError, semvers?: NodeVersions) => void;\n\nexport default class NodeVersions {\n versions: Version[];\n schedules: Schedule[];\n\n constructor(versions: VersionRaw[], schedule: ScheduleRaw[]) {\n if (!versions) throw new Error('Missing option: versions');\n if (!schedule) throw new Error('Missing option: schedule');\n\n this.schedules = [];\n for (const name in schedule) this.schedules.push(normalizeSchedule(name, schedule[name]));\n this.schedules = this.schedules.sort((a, b) => (semver.gt(semver.coerce(a.semver), semver.coerce(b.semver)) ? 1 : -1));\n\n this.versions = [];\n for (let index = 0; index < versions.length; index++) this.versions.push(normalizeVersion(versions[index], this.schedules));\n this.versions = this.versions.sort((a, b) => (semver.gt(a.semver, b.semver) ? -1 : 1));\n }\n\n static load(options?: LoadOptions | LoadCallback, callback?: LoadCallback): undefined | Promise<NodeVersions> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n\n function worker(options, callback) {\n const cache = new Cache((options as LoadOptions).cachePath || constants.CACHE_PATH);\n cache.get(constants.DISTS_URL, (err, versions: VersionRaw[]) => {\n if (err) return callback(err);\n\n cache.get(constants.SCHEDULES_URL, (err, schedule: ScheduleRaw[]) => {\n err ? callback(err) : callback(null, new NodeVersions(versions, schedule));\n });\n });\n }\n\n if (typeof callback === 'function') return worker(options, callback) as undefined;\n return new Promise((resolve, reject) =>\n worker(options, (err, versions) => {\n err ? reject(err) : resolve(versions);\n })\n );\n }\n\n static loadSync(options?: LoadOptions): NodeVersions | null {\n options = options || {};\n const cache = new Cache(options.cachePath || constants.CACHE_PATH);\n const versions = cache.getSync(constants.DISTS_URL) as VersionRaw[];\n const schedule = cache.getSync(constants.SCHEDULES_URL) as ScheduleRaw[];\n if (!versions || !schedule) return null;\n return new NodeVersions(versions, schedule);\n }\n\n resolve(expression: string | number | Date, options?: ResolveOptions): string | string[] | Version | Version[] | null {\n options = options || {};\n const path = options.path || 'version';\n\n // normalize\n if (typeof expression === 'number') expression = `${expression}`;\n if (typeof expression !== 'string') return null;\n expression = expression.trim();\n\n // single result, try a match\n const query = parseExpression.call(this, expression, options.now || new Date());\n if (query) {\n let version = null;\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (!match(test, query)) continue;\n version = test;\n break;\n }\n if (version) return version[path];\n }\n\n // filtered expression\n const range = options.range || '';\n const filters = { lts: !!~range.indexOf('lts'), key: undefined, line: undefined };\n filters.key = ~range.indexOf('major') ? major : ~range.indexOf('minor') ? minor : undefined;\n filters.line = ~range.indexOf('even') ? even : ~range.indexOf('odd') ? odd : undefined;\n\n const results = [];\n const founds = {};\n\n for (let index = 0; index < this.versions.length; index++) {\n const test = this.versions[index];\n if (options.now && options.now < test.date) continue;\n if (filters.lts && !test.lts) continue;\n if (filters.line && !filters.line(test)) continue;\n if (!semver.satisfies(test.semver, expression)) continue;\n if (filters.key) {\n if (founds[filters.key(test)]) continue;\n founds[filters.key(test)] = true;\n }\n results.unshift(test[path]);\n }\n return results;\n }\n}\n"],"names":["Cache","semver","constants","major","minor","even","odd","match","normalizeSchedule","normalizeVersion","parseExpression","NodeVersions","load","options","callback","worker","cache","cachePath","CACHE_PATH","get","DISTS_URL","err","versions","SCHEDULES_URL","schedule","Promise","resolve","reject","loadSync","getSync","expression","path","trim","query","call","now","Date","version","index","length","test","date","range","filters","lts","indexOf","key","undefined","line","results","founds","satisfies","unshift","constructor","Error","schedules","name","push","sort","a","b","gt","coerce"],"mappings":"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"}
@@ -2,7 +2,7 @@ import Cache from 'fetch-json-cache';
2
2
  // @ts-ignore
3
3
  import constants from '../constants.cjs';
4
4
  export default (()=>{
5
- const cache = new Cache(constants.CACHE_DIRECTORY);
5
+ const cache = new Cache(constants.CACHE_PATH);
6
6
  function cacheJSON(callback) {
7
7
  cache.get(constants.DISTS_URL, {
8
8
  force: true
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/assets/postinstall.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\n// @ts-ignore\nimport constants from '../constants.cjs';\n\nexport default () => {\n const cache = new Cache(constants.CACHE_DIRECTORY);\n\n function cacheJSON(callback) {\n cache.get(constants.DISTS_URL, { force: true }, (err) => {\n err ? callback(err) : cache.get(constants.SCHEDULES_URL, { force: true }, callback);\n });\n }\n\n cacheJSON((err) => {\n if (err) {\n console.log(`Failed to cache dists and schedules. Error: ${err.message}`);\n return process.exit(err.code || -1);\n }\n process.exit(0);\n });\n};\n"],"names":["Cache","constants","cache","CACHE_DIRECTORY","cacheJSON","callback","get","DISTS_URL","force","err","SCHEDULES_URL","console","log","message","process","exit","code"],"mappings":"AAAA,OAAOA,WAAW,mBAAmB;AACrC,aAAa;AACb,OAAOC,eAAe,mBAAmB;AAEzC,eAAe,CAAA;IACb,MAAMC,QAAQ,IAAIF,MAAMC,UAAUE,eAAe;IAEjD,SAASC,UAAUC,QAAQ;QACzBH,MAAMI,GAAG,CAACL,UAAUM,SAAS,EAAE;YAAEC,OAAO;QAAK,GAAG,CAACC;YAC/CA,MAAMJ,SAASI,OAAOP,MAAMI,GAAG,CAACL,UAAUS,aAAa,EAAE;gBAAEF,OAAO;YAAK,GAAGH;QAC5E;IACF;IAEAD,UAAU,CAACK;QACT,IAAIA,KAAK;YACPE,QAAQC,GAAG,CAAC,CAAC,4CAA4C,EAAEH,IAAII,OAAO,EAAE;YACxE,OAAOC,QAAQC,IAAI,CAACN,IAAIO,IAAI,IAAI,CAAC;QACnC;QACAF,QAAQC,IAAI,CAAC;IACf;AACF,CAAA,EAAE"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/assets/postinstall.ts"],"sourcesContent":["import Cache from 'fetch-json-cache';\n// @ts-ignore\nimport constants from '../constants.cjs';\n\nexport default () => {\n const cache = new Cache(constants.CACHE_PATH);\n\n function cacheJSON(callback) {\n cache.get(constants.DISTS_URL, { force: true }, (err) => {\n err ? callback(err) : cache.get(constants.SCHEDULES_URL, { force: true }, callback);\n });\n }\n\n cacheJSON((err) => {\n if (err) {\n console.log(`Failed to cache dists and schedules. Error: ${err.message}`);\n return process.exit(err.code || -1);\n }\n process.exit(0);\n });\n};\n"],"names":["Cache","constants","cache","CACHE_PATH","cacheJSON","callback","get","DISTS_URL","force","err","SCHEDULES_URL","console","log","message","process","exit","code"],"mappings":"AAAA,OAAOA,WAAW,mBAAmB;AACrC,aAAa;AACb,OAAOC,eAAe,mBAAmB;AAEzC,eAAe,CAAA;IACb,MAAMC,QAAQ,IAAIF,MAAMC,UAAUE,UAAU;IAE5C,SAASC,UAAUC,QAAQ;QACzBH,MAAMI,GAAG,CAACL,UAAUM,SAAS,EAAE;YAAEC,OAAO;QAAK,GAAG,CAACC;YAC/CA,MAAMJ,SAASI,OAAOP,MAAMI,GAAG,CAACL,UAAUS,aAAa,EAAE;gBAAEF,OAAO;YAAK,GAAGH;QAC5E;IACF;IAEAD,UAAU,CAACK;QACT,IAAIA,KAAK;YACPE,QAAQC,GAAG,CAAC,CAAC,4CAA4C,EAAEH,IAAII,OAAO,EAAE;YACxE,OAAOC,QAAQC,IAAI,CAACN,IAAIO,IAAI,IAAI,CAAC;QACnC;QACAF,QAAQC,IAAI,CAAC;IACf;AACF,CAAA,EAAE"}
@@ -1,10 +1,10 @@
1
1
  import path from 'path';
2
2
  import url from 'url';
3
3
  import moduleRoot from 'module-root-sync';
4
- const __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));
4
+ const __dirname = path.dirname(typeof __filename === 'undefined' ? url.fileURLToPath(import.meta.url) : __filename);
5
5
  const root = moduleRoot(__dirname);
6
6
  export default {
7
- CACHE_DIRECTORY: path.resolve(path.join(root, '.cache')),
7
+ CACHE_PATH: path.resolve(path.join(root, '.cache')),
8
8
  DISTS_URL: 'https://nodejs.org/dist/index.json',
9
9
  SCHEDULES_URL: 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json'
10
10
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/constants.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport moduleRoot from 'module-root-sync';\n\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst root = moduleRoot(__dirname);\n\nexport default {\n CACHE_DIRECTORY: path.resolve(path.join(root, '.cache')),\n DISTS_URL: 'https://nodejs.org/dist/index.json',\n SCHEDULES_URL: 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json',\n};\n"],"names":["path","url","moduleRoot","__dirname","dirname","__filename","fileURLToPath","root","CACHE_DIRECTORY","resolve","join","DISTS_URL","SCHEDULES_URL"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,OAAOC,gBAAgB,mBAAmB;AAE1C,MAAMC,YAAYH,KAAKI,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaJ,IAAIK,aAAa,CAAC,YAAYL,GAAG;AACjH,MAAMM,OAAOL,WAAWC;AAExB,eAAe;IACbK,iBAAiBR,KAAKS,OAAO,CAACT,KAAKU,IAAI,CAACH,MAAM;IAC9CI,WAAW;IACXC,eAAe;AACjB,EAAE"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/constants.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport moduleRoot from 'module-root-sync';\n\nconst __dirname = path.dirname(typeof __filename === 'undefined' ? url.fileURLToPath(import.meta.url) : __filename);\nconst root = moduleRoot(__dirname);\n\nexport default {\n CACHE_PATH: path.resolve(path.join(root, '.cache')),\n DISTS_URL: 'https://nodejs.org/dist/index.json',\n SCHEDULES_URL: 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json',\n};\n"],"names":["path","url","moduleRoot","__dirname","dirname","__filename","fileURLToPath","root","CACHE_PATH","resolve","join","DISTS_URL","SCHEDULES_URL"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,OAAOC,gBAAgB,mBAAmB;AAE1C,MAAMC,YAAYH,KAAKI,OAAO,CAAC,OAAOC,eAAe,cAAcJ,IAAIK,aAAa,CAAC,YAAYL,GAAG,IAAII;AACxG,MAAME,OAAOL,WAAWC;AAExB,eAAe;IACbK,YAAYR,KAAKS,OAAO,CAACT,KAAKU,IAAI,CAACH,MAAM;IACzCI,WAAW;IACXC,eAAe;AACjB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/types.ts"],"sourcesContent":["export interface LoadOptions {\n cacheDirectory?: string;\n now?: Date;\n}\n\nexport interface LoadError extends Error {\n code?: number;\n}\n\nexport interface ResolveOptions {\n now?: Date;\n range?: string;\n path?: string;\n}\n\nexport interface ScheduleRaw {\n version: string;\n name: string;\n semver: string;\n date: string;\n start: string;\n end: string;\n codename?: string;\n lts: string;\n maintenance?: string;\n}\n\nexport interface Schedule {\n name: string;\n semver: string;\n raw: ScheduleRaw;\n start: Date;\n end: Date;\n codename?: string;\n lts?: Date;\n maintenance?: Date;\n}\n\nexport interface VersionRaw {\n version: string;\n name: string;\n semver: string;\n major: number;\n minor: number;\n patch: number;\n lts: string;\n date: Date;\n raw: ScheduleRaw;\n codename: string;\n}\n\nexport interface Version {\n version: string;\n name: string;\n semver: string;\n major: number;\n minor: number;\n patch: number;\n lts: string;\n date: Date;\n raw: VersionRaw;\n codename: string;\n}\n"],"names":[],"mappings":"AAmDA,WAWC"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-semvers/src/types.ts"],"sourcesContent":["export interface LoadOptions {\n cachePath?: string;\n now?: Date;\n}\n\nexport interface LoadError extends Error {\n code?: number;\n}\n\nexport interface ResolveOptions {\n now?: Date;\n range?: string;\n path?: string;\n}\n\nexport interface ScheduleRaw {\n version: string;\n name: string;\n semver: string;\n date: string;\n start: string;\n end: string;\n codename?: string;\n lts: string;\n maintenance?: string;\n}\n\nexport interface Schedule {\n name: string;\n semver: string;\n raw: ScheduleRaw;\n start: Date;\n end: Date;\n codename?: string;\n lts?: Date;\n maintenance?: Date;\n}\n\nexport interface VersionRaw {\n version: string;\n name: string;\n semver: string;\n major: number;\n minor: number;\n patch: number;\n lts: string;\n date: Date;\n raw: ScheduleRaw;\n codename: string;\n}\n\nexport interface Version {\n version: string;\n name: string;\n semver: string;\n major: number;\n minor: number;\n patch: number;\n lts: string;\n date: Date;\n raw: VersionRaw;\n codename: string;\n}\n"],"names":[],"mappings":"AAmDA,WAWC"}
@@ -1,5 +1,5 @@
1
1
  declare const _default: {
2
- CACHE_DIRECTORY: string;
2
+ CACHE_PATH: any;
3
3
  DISTS_URL: string;
4
4
  SCHEDULES_URL: string;
5
5
  };
@@ -1,5 +1,5 @@
1
1
  export interface LoadOptions {
2
- cacheDirectory?: string;
2
+ cachePath?: string;
3
3
  now?: Date;
4
4
  }
5
5
  export interface LoadError extends Error {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-semvers",
3
- "version": "1.2.7",
3
+ "version": "1.2.8",
4
4
  "description": "Utilities for managing versions of node including looking up codenames",
5
5
  "keywords": [
6
6
  "node",
@@ -49,11 +49,10 @@
49
49
  },
50
50
  "dependencies": {
51
51
  "exit": "^0.1.2",
52
- "fetch-json-cache": "^1.2.3",
52
+ "fetch-json-cache": "^1.2.5",
53
53
  "getopts-compat": "^2.2.5",
54
54
  "isarray": "^2.0.5",
55
55
  "module-root-sync": "^0.1.1",
56
- "pinkie-promise": "^2.0.1",
57
56
  "semver": "^5.7.1"
58
57
  },
59
58
  "devDependencies": {
@@ -64,11 +63,12 @@
64
63
  "cr": "^0.1.0",
65
64
  "cross-spawn-cb": "^1.5.7",
66
65
  "depcheck": "^1.4.7",
67
- "get-tsconfig-compat": "^2.0.2",
66
+ "get-tsconfig-compat": "^2.0.3",
67
+ "pinkie-promise": "^2.0.1",
68
68
  "rimraf2": "^2.8.2",
69
69
  "rollup": "^4.29.1",
70
70
  "rollup-plugin-node-externals": "^8.0.0",
71
- "ts-swc-rollup-plugin": "^1.6.5"
71
+ "ts-swc-rollup-plugin": "^1.6.7"
72
72
  },
73
73
  "engines": {
74
74
  "node": ">=0.8"