node-install-release 1.18.4 → 1.18.5

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.
Files changed (94) hide show
  1. package/dist/cjs/cli.d.cts +0 -0
  2. package/dist/cjs/cli.d.ts +0 -0
  3. package/dist/cjs/cli.js +1 -1
  4. package/dist/cjs/cli.js.map +1 -1
  5. package/dist/cjs/compat.d.cts +1 -0
  6. package/dist/cjs/compat.d.ts +1 -0
  7. package/dist/cjs/compat.js +14 -3
  8. package/dist/cjs/compat.js.map +1 -1
  9. package/dist/cjs/constants.js.map +1 -1
  10. package/dist/cjs/createResult.js.map +1 -1
  11. package/dist/cjs/index.js +3 -1
  12. package/dist/cjs/index.js.map +1 -1
  13. package/dist/cjs/installNPM/index.js.map +1 -1
  14. package/dist/cjs/installNPM/installBin.js +6 -1
  15. package/dist/cjs/installNPM/installBin.js.map +1 -1
  16. package/dist/cjs/installNPM/installLib.js +16 -6
  17. package/dist/cjs/installNPM/installLib.js.map +1 -1
  18. package/dist/cjs/installNode/index.js +9 -8
  19. package/dist/cjs/installNode/index.js.map +1 -1
  20. package/dist/cjs/installNode/installCompressed.js +5 -1
  21. package/dist/cjs/installNode/installCompressed.js.map +1 -1
  22. package/dist/cjs/installNode/installExe.js +15 -3
  23. package/dist/cjs/installNode/installExe.js.map +1 -1
  24. package/dist/cjs/installNode/installSource/buildPosix.js +20 -12
  25. package/dist/cjs/installNode/installSource/buildPosix.js.map +1 -1
  26. package/dist/cjs/installNode/installSource/buildWin32.js +18 -6
  27. package/dist/cjs/installNode/installSource/buildWin32.js.map +1 -1
  28. package/dist/cjs/installNode/installSource/index.js +20 -4
  29. package/dist/cjs/installNode/installSource/index.js.map +1 -1
  30. package/dist/cjs/installNode/validateDownload.js +4 -3
  31. package/dist/cjs/installNode/validateDownload.js.map +1 -1
  32. package/dist/cjs/lib/checkMissing.js +1 -1
  33. package/dist/cjs/lib/checkMissing.js.map +1 -1
  34. package/dist/cjs/lib/conditionalCache.js +4 -2
  35. package/dist/cjs/lib/conditionalCache.js.map +1 -1
  36. package/dist/cjs/lib/conditionalCopy.js +3 -1
  37. package/dist/cjs/lib/conditionalCopy.js.map +1 -1
  38. package/dist/cjs/lib/copyFile.d.cts +1 -1
  39. package/dist/cjs/lib/copyFile.d.ts +1 -1
  40. package/dist/cjs/lib/copyFile.js +9 -3
  41. package/dist/cjs/lib/copyFile.js.map +1 -1
  42. package/dist/cjs/lib/ensureDestinationParent.js +3 -1
  43. package/dist/cjs/lib/ensureDestinationParent.js.map +1 -1
  44. package/dist/cjs/lib/extract.js +5 -1
  45. package/dist/cjs/lib/extract.js.map +1 -1
  46. package/dist/cjs/lib/getTarget.js.map +1 -1
  47. package/dist/cjs/workers/install.js +19 -18
  48. package/dist/cjs/workers/install.js.map +1 -1
  49. package/dist/esm/cli.d.ts +0 -0
  50. package/dist/esm/cli.js +1 -1
  51. package/dist/esm/cli.js.map +1 -1
  52. package/dist/esm/compat.d.ts +1 -0
  53. package/dist/esm/compat.js +3 -0
  54. package/dist/esm/compat.js.map +1 -1
  55. package/dist/esm/constants.js.map +1 -1
  56. package/dist/esm/createResult.js.map +1 -1
  57. package/dist/esm/index.js +5 -1
  58. package/dist/esm/index.js.map +1 -1
  59. package/dist/esm/installNPM/index.js.map +1 -1
  60. package/dist/esm/installNPM/installBin.js +4 -1
  61. package/dist/esm/installNPM/installBin.js.map +1 -1
  62. package/dist/esm/installNPM/installLib.js +8 -6
  63. package/dist/esm/installNPM/installLib.js.map +1 -1
  64. package/dist/esm/installNode/index.js +6 -5
  65. package/dist/esm/installNode/index.js.map +1 -1
  66. package/dist/esm/installNode/installCompressed.js +1 -1
  67. package/dist/esm/installNode/installCompressed.js.map +1 -1
  68. package/dist/esm/installNode/installExe.js +3 -3
  69. package/dist/esm/installNode/installExe.js.map +1 -1
  70. package/dist/esm/installNode/installSource/buildPosix.js +12 -12
  71. package/dist/esm/installNode/installSource/buildPosix.js.map +1 -1
  72. package/dist/esm/installNode/installSource/buildWin32.js +13 -5
  73. package/dist/esm/installNode/installSource/buildWin32.js.map +1 -1
  74. package/dist/esm/installNode/installSource/index.js +4 -4
  75. package/dist/esm/installNode/installSource/index.js.map +1 -1
  76. package/dist/esm/installNode/validateDownload.js +4 -3
  77. package/dist/esm/installNode/validateDownload.js.map +1 -1
  78. package/dist/esm/lib/checkMissing.js +1 -1
  79. package/dist/esm/lib/checkMissing.js.map +1 -1
  80. package/dist/esm/lib/conditionalCache.js +2 -2
  81. package/dist/esm/lib/conditionalCache.js.map +1 -1
  82. package/dist/esm/lib/conditionalCopy.js +1 -1
  83. package/dist/esm/lib/conditionalCopy.js.map +1 -1
  84. package/dist/esm/lib/copyFile.d.ts +1 -1
  85. package/dist/esm/lib/copyFile.js +2 -4
  86. package/dist/esm/lib/copyFile.js.map +1 -1
  87. package/dist/esm/lib/ensureDestinationParent.js +1 -1
  88. package/dist/esm/lib/ensureDestinationParent.js.map +1 -1
  89. package/dist/esm/lib/extract.js +1 -1
  90. package/dist/esm/lib/extract.js.map +1 -1
  91. package/dist/esm/lib/getTarget.js.map +1 -1
  92. package/dist/esm/workers/install.js +11 -16
  93. package/dist/esm/workers/install.js.map +1 -1
  94. package/package.json +4 -1
File without changes
package/dist/cjs/cli.d.ts CHANGED
File without changes
package/dist/cjs/cli.js CHANGED
@@ -84,7 +84,7 @@ var _default = function(argv, name) {
84
84
  if (!options.silent) {
85
85
  console.log('\n======================');
86
86
  if (err) console.log("".concat(args[0], " not installed. Error: ").concat(err.message));
87
- else console.log("".concat(result.version, " installed in: ").concat(result.installPath));
87
+ else console.log("".concat(result === null || result === void 0 ? void 0 : result.version, " installed in: ").concat(result === null || result === void 0 ? void 0 : result.installPath));
88
88
  console.log('======================');
89
89
  }
90
90
  (0, _exitcompat.default)(err ? ERROR_CODE : 0);
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/cli.ts"],"sourcesContent":["import exit from 'exit-compat';\nimport fs from 'fs';\nimport getopts from 'getopts-compat';\nimport path from 'path';\nimport url from 'url';\nimport install, { type InstallOptions } from './index.ts';\n\nconst ERROR_CODE = 9;\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\n\nfunction getPackageVersion(): string {\n const packagePath = path.join(__dirname, '..', '..', 'package.json');\n const packageJson = JSON.parse(fs.readFileSync(packagePath, 'utf8'));\n return packageJson.version;\n}\n\nfunction printHelp(name: string): void {\n const version = getPackageVersion();\n console.log(`${name} v${version}`);\n console.log('');\n console.log(`Usage: ${name} <version> [options]`);\n console.log('');\n console.log('Arguments:');\n console.log(' version Node.js version to install (e.g., 18.0.0, lts, stable)');\n console.log('');\n console.log('Options:');\n console.log(' -p, --platform Target platform (default: current platform)');\n console.log(' -a, --arch Target architecture (default: current architecture)');\n console.log(' -f, --filename Specific filename to download');\n console.log(' -i, --installPath Installation directory');\n console.log(' -c, --storagePath Cache storage directory');\n console.log(' -si, --silent Suppress output');\n console.log(' -v, --version Show version number');\n console.log(' -h, --help Show this help message');\n}\n\nexport default (argv: string[], name?: string): void => {\n const cliName = name || 'nir';\n const options = getopts(argv, {\n alias: { platform: 'p', arch: 'a', filename: 'f', installPath: 'i', storagePath: 'c', silent: 'si', version: 'v', help: 'h' },\n boolean: ['silent', 'version', 'help'],\n });\n\n if (options.version) {\n console.log(getPackageVersion());\n exit(0);\n return;\n }\n\n if (options.help) {\n printHelp(cliName);\n exit(0);\n return;\n }\n\n const args = options._;\n if (args.length < 1) {\n console.log(`Missing command. Example usage: ${cliName} <version> [directory]`);\n exit(ERROR_CODE);\n return;\n }\n install(args[0], options as InstallOptions, (err, result) => {\n if (!options.silent) {\n console.log('\\n======================');\n if (err) console.log(`${args[0]} not installed. Error: ${err.message}`);\n else console.log(`${result.version} installed in: ${result.installPath}`);\n console.log('======================');\n }\n exit(err ? ERROR_CODE : 0);\n });\n};\n"],"names":["ERROR_CODE","__dirname","path","dirname","__filename","url","fileURLToPath","getPackageVersion","packagePath","join","packageJson","JSON","parse","fs","readFileSync","version","printHelp","name","console","log","argv","cliName","options","getopts","alias","platform","arch","filename","installPath","storagePath","silent","help","boolean","exit","args","_","length","install","err","result","message"],"mappings":";;;;+BAoCA;;;eAAA;;;iEApCiB;yDACF;oEACK;2DACH;0DACD;8DAC6B;;;;;;AAE7C,IAAMA,aAAa;AACnB,IAAMC,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAElG,SAASC;IACP,IAAMC,cAAcN,aAAI,CAACO,IAAI,CAACR,WAAW,MAAM,MAAM;IACrD,IAAMS,cAAcC,KAAKC,KAAK,CAACC,WAAE,CAACC,YAAY,CAACN,aAAa;IAC5D,OAAOE,YAAYK,OAAO;AAC5B;AAEA,SAASC,UAAUC,IAAY;IAC7B,IAAMF,UAAUR;IAChBW,QAAQC,GAAG,CAAC,AAAC,GAAWJ,OAATE,MAAK,MAAY,OAARF;IACxBG,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC,AAAC,UAAc,OAALF,MAAK;IAC3BC,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;AACd;IAEA,WAAe,SAACC,MAAgBH;IAC9B,IAAMI,UAAUJ,QAAQ;IACxB,IAAMK,UAAUC,IAAAA,sBAAO,EAACH,MAAM;QAC5BI,OAAO;YAAEC,UAAU;YAAKC,MAAM;YAAKC,UAAU;YAAKC,aAAa;YAAKC,aAAa;YAAKC,QAAQ;YAAMf,SAAS;YAAKgB,MAAM;QAAI;QAC5HC,SAAS;YAAC;YAAU;YAAW;SAAO;IACxC;IAEA,IAAIV,QAAQP,OAAO,EAAE;QACnBG,QAAQC,GAAG,CAACZ;QACZ0B,IAAAA,mBAAI,EAAC;QACL;IACF;IAEA,IAAIX,QAAQS,IAAI,EAAE;QAChBf,UAAUK;QACVY,IAAAA,mBAAI,EAAC;QACL;IACF;IAEA,IAAMC,OAAOZ,QAAQa,CAAC;IACtB,IAAID,KAAKE,MAAM,GAAG,GAAG;QACnBlB,QAAQC,GAAG,CAAC,AAAC,mCAA0C,OAARE,SAAQ;QACvDY,IAAAA,mBAAI,EAACjC;QACL;IACF;IACAqC,IAAAA,gBAAO,EAACH,IAAI,CAAC,EAAE,EAAEZ,SAA2B,SAACgB,KAAKC;QAChD,IAAI,CAACjB,QAAQQ,MAAM,EAAE;YACnBZ,QAAQC,GAAG,CAAC;YACZ,IAAImB,KAAKpB,QAAQC,GAAG,CAAC,AAAC,GAAmCmB,OAAjCJ,IAAI,CAAC,EAAE,EAAC,2BAAqC,OAAZI,IAAIE,OAAO;iBAC/DtB,QAAQC,GAAG,CAAC,AAAC,GAAkCoB,OAAhCA,OAAOxB,OAAO,EAAC,mBAAoC,OAAnBwB,OAAOX,WAAW;YACtEV,QAAQC,GAAG,CAAC;QACd;QACAc,IAAAA,mBAAI,EAACK,MAAMtC,aAAa;IAC1B;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/cli.ts"],"sourcesContent":["import exit from 'exit-compat';\nimport fs from 'fs';\nimport getopts from 'getopts-compat';\nimport path from 'path';\nimport url from 'url';\nimport install, { type InstallOptions } from './index.ts';\n\nconst ERROR_CODE = 9;\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\n\nfunction getPackageVersion(): string {\n const packagePath = path.join(__dirname, '..', '..', 'package.json');\n const packageJson = JSON.parse(fs.readFileSync(packagePath, 'utf8'));\n return packageJson.version;\n}\n\nfunction printHelp(name: string): void {\n const version = getPackageVersion();\n console.log(`${name} v${version}`);\n console.log('');\n console.log(`Usage: ${name} <version> [options]`);\n console.log('');\n console.log('Arguments:');\n console.log(' version Node.js version to install (e.g., 18.0.0, lts, stable)');\n console.log('');\n console.log('Options:');\n console.log(' -p, --platform Target platform (default: current platform)');\n console.log(' -a, --arch Target architecture (default: current architecture)');\n console.log(' -f, --filename Specific filename to download');\n console.log(' -i, --installPath Installation directory');\n console.log(' -c, --storagePath Cache storage directory');\n console.log(' -si, --silent Suppress output');\n console.log(' -v, --version Show version number');\n console.log(' -h, --help Show this help message');\n}\n\nexport default (argv: string[], name?: string): void => {\n const cliName = name || 'nir';\n const options = getopts(argv, {\n alias: { platform: 'p', arch: 'a', filename: 'f', installPath: 'i', storagePath: 'c', silent: 'si', version: 'v', help: 'h' },\n boolean: ['silent', 'version', 'help'],\n });\n\n if (options.version) {\n console.log(getPackageVersion());\n exit(0);\n return;\n }\n\n if (options.help) {\n printHelp(cliName);\n exit(0);\n return;\n }\n\n const args = options._;\n if (args.length < 1) {\n console.log(`Missing command. Example usage: ${cliName} <version> [directory]`);\n exit(ERROR_CODE);\n return;\n }\n install(args[0], options as InstallOptions, (err, result) => {\n if (!options.silent) {\n console.log('\\n======================');\n if (err) console.log(`${args[0]} not installed. Error: ${err.message}`);\n else console.log(`${result?.version} installed in: ${result?.installPath}`);\n console.log('======================');\n }\n exit(err ? ERROR_CODE : 0);\n });\n};\n"],"names":["ERROR_CODE","__dirname","path","dirname","__filename","url","fileURLToPath","getPackageVersion","packagePath","join","packageJson","JSON","parse","fs","readFileSync","version","printHelp","name","console","log","argv","cliName","options","getopts","alias","platform","arch","filename","installPath","storagePath","silent","help","boolean","exit","args","_","length","install","err","result","message"],"mappings":";;;;+BAoCA;;;eAAA;;;iEApCiB;yDACF;oEACK;2DACH;0DACD;8DAC6B;;;;;;AAE7C,IAAMA,aAAa;AACnB,IAAMC,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAElG,SAASC;IACP,IAAMC,cAAcN,aAAI,CAACO,IAAI,CAACR,WAAW,MAAM,MAAM;IACrD,IAAMS,cAAcC,KAAKC,KAAK,CAACC,WAAE,CAACC,YAAY,CAACN,aAAa;IAC5D,OAAOE,YAAYK,OAAO;AAC5B;AAEA,SAASC,UAAUC,IAAY;IAC7B,IAAMF,UAAUR;IAChBW,QAAQC,GAAG,CAAC,AAAC,GAAWJ,OAATE,MAAK,MAAY,OAARF;IACxBG,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC,AAAC,UAAc,OAALF,MAAK;IAC3BC,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;IACZD,QAAQC,GAAG,CAAC;AACd;IAEA,WAAe,SAACC,MAAgBH;IAC9B,IAAMI,UAAUJ,QAAQ;IACxB,IAAMK,UAAUC,IAAAA,sBAAO,EAACH,MAAM;QAC5BI,OAAO;YAAEC,UAAU;YAAKC,MAAM;YAAKC,UAAU;YAAKC,aAAa;YAAKC,aAAa;YAAKC,QAAQ;YAAMf,SAAS;YAAKgB,MAAM;QAAI;QAC5HC,SAAS;YAAC;YAAU;YAAW;SAAO;IACxC;IAEA,IAAIV,QAAQP,OAAO,EAAE;QACnBG,QAAQC,GAAG,CAACZ;QACZ0B,IAAAA,mBAAI,EAAC;QACL;IACF;IAEA,IAAIX,QAAQS,IAAI,EAAE;QAChBf,UAAUK;QACVY,IAAAA,mBAAI,EAAC;QACL;IACF;IAEA,IAAMC,OAAOZ,QAAQa,CAAC;IACtB,IAAID,KAAKE,MAAM,GAAG,GAAG;QACnBlB,QAAQC,GAAG,CAAC,AAAC,mCAA0C,OAARE,SAAQ;QACvDY,IAAAA,mBAAI,EAACjC;QACL;IACF;IACAqC,IAAAA,gBAAO,EAACH,IAAI,CAAC,EAAE,EAAEZ,SAA2B,SAACgB,KAAKC;QAChD,IAAI,CAACjB,QAAQQ,MAAM,EAAE;YACnBZ,QAAQC,GAAG,CAAC;YACZ,IAAImB,KAAKpB,QAAQC,GAAG,CAAC,AAAC,GAAmCmB,OAAjCJ,IAAI,CAAC,EAAE,EAAC,2BAAqC,OAAZI,IAAIE,OAAO;iBAC/DtB,QAAQC,GAAG,CAAC,AAjEvB,AAiEwB,UAAEoB,mBAAAA,6BAAAA,OAAQxB,OAAO,EAAC,mBAAqC,OAApBwB,mBAAAA,6BAAAA,OAAQX,WAAW;YACxEV,QAAQC,GAAG,CAAC;QACd;QACAc,IAAAA,mBAAI,EAACK,MAAMtC,aAAa;IAC1B;AACF"}
@@ -1 +1,2 @@
1
1
  export declare function homedir(): string;
2
+ export declare function tmpdir(): string;
@@ -1 +1,2 @@
1
1
  export declare function homedir(): string;
2
+ export declare function tmpdir(): string;
@@ -5,10 +5,18 @@
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- Object.defineProperty(exports, "homedir", {
9
- enumerable: true,
10
- get: function() {
8
+ function _export(target, all) {
9
+ for(var name in all)Object.defineProperty(target, name, {
10
+ enumerable: true,
11
+ get: Object.getOwnPropertyDescriptor(all, name).get
12
+ });
13
+ }
14
+ _export(exports, {
15
+ get homedir () {
11
16
  return homedir;
17
+ },
18
+ get tmpdir () {
19
+ return tmpdir;
12
20
  }
13
21
  });
14
22
  var _os = /*#__PURE__*/ _interop_require_default(require("os"));
@@ -20,4 +28,7 @@ function _interop_require_default(obj) {
20
28
  function homedir() {
21
29
  return typeof _os.default.homedir === 'function' ? _os.default.homedir() : require('homedir-polyfill')();
22
30
  }
31
+ function tmpdir() {
32
+ return typeof _os.default.tmpdir === 'function' ? _os.default.tmpdir() : require('os-shim').tmpdir();
33
+ }
23
34
  /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/compat.ts"],"sourcesContent":["/**\n * Compatibility Layer for Node.js 0.8+\n * Local to this package - contains only needed functions.\n */\nimport os from 'os';\n\nexport function homedir(): string {\n return typeof os.homedir === 'function' ? os.homedir() : require('homedir-polyfill')();\n}\n"],"names":["homedir","os","require"],"mappings":"AAAA;;;CAGC;;;;+BAGeA;;;eAAAA;;;yDAFD;;;;;;AAER,SAASA;IACd,OAAO,OAAOC,WAAE,CAACD,OAAO,KAAK,aAAaC,WAAE,CAACD,OAAO,KAAKE,QAAQ;AACnE"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/compat.ts"],"sourcesContent":["/**\n * Compatibility Layer for Node.js 0.8+\n * Local to this package - contains only needed functions.\n */\nimport os from 'os';\n\nexport function homedir(): string {\n return typeof os.homedir === 'function' ? os.homedir() : require('homedir-polyfill')();\n}\n\nexport function tmpdir(): string {\n return typeof os.tmpdir === 'function' ? os.tmpdir() : require('os-shim').tmpdir();\n}\n"],"names":["homedir","tmpdir","os","require"],"mappings":"AAAA;;;CAGC;;;;;;;;;;;QAGeA;eAAAA;;QAIAC;eAAAA;;;yDAND;;;;;;AAER,SAASD;IACd,OAAO,OAAOE,WAAE,CAACF,OAAO,KAAK,aAAaE,WAAE,CAACF,OAAO,KAAKG,QAAQ;AACnE;AAEO,SAASF;IACd,OAAO,OAAOC,WAAE,CAACD,MAAM,KAAK,aAAaC,WAAE,CAACD,MAAM,KAAKE,QAAQ,WAAWF,MAAM;AAClF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/constants.ts"],"sourcesContent":["import keys from 'lodash.keys';\nimport path from 'path';\nimport { homedir } from './compat.ts';\nimport createStoragePaths from './createStoragePaths.ts';\nimport files from './files.ts';\n\nimport type { FilePath } from './types.ts';\n\nexport const FILES = files;\nexport const DEFAULT_STORAGE_PATH = path.join(homedir(), '.nir') as string;\nexport const DEFAULT_STORAGE_PATHS = createStoragePaths(DEFAULT_STORAGE_PATH);\n\nexport const FILE_PLATFORMS = keys(FILES).filter((file) => ['src', 'headers'].indexOf(file) < 0) as string[];\n\nexport const FILE_PLATFORM_MAP = {\n win: 'win32',\n win32: 'win',\n osx: 'darwin',\n darwin: 'osx',\n};\n\nexport const EXTENSIONS_COMPRESSED = ['.gz', '.zip', '.xz', '.7z'];\n\nexport const NODE_FILE_PATHS = {\n win32: 'node.exe',\n posix: path.join('bin', 'node') as string,\n};\nexport const NODE_DIST_BASE_URL = 'https://nodejs.org/dist';\nexport const NODE_SCHEDULES_URL = 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json';\n\nexport const NPM_DIST_URL = 'https://registry.npmjs.org/npm';\nexport const NPM_DIST_TAGS_URL = 'https://registry.npmjs.org/-/package/npm/dist-tags';\nexport const NPM_MIN_VERSION = 3;\n\nexport const NPM_PACKAGE_PATH = {\n win32: path.join('node_modules', 'npm') as string,\n posix: path.join('lib', 'node_modules', 'npm') as string,\n};\n\nexport const NPM_FILE_PATHS = {\n win32: [\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npm'), dest: 'npm' },\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npm.cmd'), dest: 'npm.cmd' },\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npx'), dest: 'npx', optional: true },\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npx.cmd'), dest: 'npx.cmd', optional: true },\n ] as FilePath[],\n posix: [\n { src: path.join(NPM_PACKAGE_PATH.posix, 'bin', 'npm-cli.js'), dest: path.join('bin', 'npm') },\n { src: path.join(NPM_PACKAGE_PATH.posix, 'bin', 'npx-cli.js'), dest: path.join('bin', 'npx'), optional: true },\n ] as FilePath[],\n};\n"],"names":["DEFAULT_STORAGE_PATH","DEFAULT_STORAGE_PATHS","EXTENSIONS_COMPRESSED","FILES","FILE_PLATFORMS","FILE_PLATFORM_MAP","NODE_DIST_BASE_URL","NODE_FILE_PATHS","NODE_SCHEDULES_URL","NPM_DIST_TAGS_URL","NPM_DIST_URL","NPM_FILE_PATHS","NPM_MIN_VERSION","NPM_PACKAGE_PATH","files","path","join","homedir","createStoragePaths","keys","filter","file","indexOf","win","win32","osx","darwin","posix","src","dest","optional"],"mappings":";;;;;;;;;;;QASaA;eAAAA;;QACAC;eAAAA;;QAWAC;eAAAA;;QAbAC;eAAAA;;QAIAC;eAAAA;;QAEAC;eAAAA;;QAaAC;eAAAA;;QAJAC;eAAAA;;QAKAC;eAAAA;;QAGAC;eAAAA;;QADAC;eAAAA;;QASAC;eAAAA;;QAPAC;eAAAA;;QAEAC;eAAAA;;;iEAlCI;2DACA;wBACO;2EACO;8DACb;;;;;;AAIX,IAAMV,QAAQW,gBAAK;AACnB,IAAMd,uBAAuBe,aAAI,CAACC,IAAI,CAACC,IAAAA,iBAAO,KAAI;AAClD,IAAMhB,wBAAwBiB,IAAAA,6BAAkB,EAAClB;AAEjD,IAAMI,iBAAiBe,IAAAA,mBAAI,EAAChB,OAAOiB,MAAM,CAAC,SAACC;WAAS;QAAC;QAAO;KAAU,CAACC,OAAO,CAACD,QAAQ;;AAEvF,IAAMhB,oBAAoB;IAC/BkB,KAAK;IACLC,OAAO;IACPC,KAAK;IACLC,QAAQ;AACV;AAEO,IAAMxB,wBAAwB;IAAC;IAAO;IAAQ;IAAO;CAAM;AAE3D,IAAMK,kBAAkB;IAC7BiB,OAAO;IACPG,OAAOZ,aAAI,CAACC,IAAI,CAAC,OAAO;AAC1B;AACO,IAAMV,qBAAqB;AAC3B,IAAME,qBAAqB;AAE3B,IAAME,eAAe;AACrB,IAAMD,oBAAoB;AAC1B,IAAMG,kBAAkB;AAExB,IAAMC,mBAAmB;IAC9BW,OAAOT,aAAI,CAACC,IAAI,CAAC,gBAAgB;IACjCW,OAAOZ,aAAI,CAACC,IAAI,CAAC,OAAO,gBAAgB;AAC1C;AAEO,IAAML,iBAAiB;IAC5Ba,OAAO;QACL;YAAEI,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAQK,MAAM;QAAM;QACpE;YAAED,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAYK,MAAM;QAAU;QAC5E;YAAED,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAQK,MAAM;YAAOC,UAAU;QAAK;QACpF;YAAEF,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAYK,MAAM;YAAWC,UAAU;QAAK;KAC7F;IACDH,OAAO;QACL;YAAEC,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBc,KAAK,EAAE,OAAO;YAAeE,MAAMd,aAAI,CAACC,IAAI,CAAC,OAAO;QAAO;QAC7F;YAAEY,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBc,KAAK,EAAE,OAAO;YAAeE,MAAMd,aAAI,CAACC,IAAI,CAAC,OAAO;YAAQc,UAAU;QAAK;KAC9G;AACH"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/constants.ts"],"sourcesContent":["import keys from 'lodash.keys';\nimport path from 'path';\nimport { homedir } from './compat.ts';\nimport createStoragePaths from './createStoragePaths.ts';\nimport files from './files.ts';\n\nimport type { FilePath } from './types.ts';\n\nexport const FILES = files;\nexport const DEFAULT_STORAGE_PATH = path.join(homedir(), '.nir') as string;\nexport const DEFAULT_STORAGE_PATHS = createStoragePaths(DEFAULT_STORAGE_PATH);\n\nexport const FILE_PLATFORMS = keys(FILES).filter((file: string) => ['src', 'headers'].indexOf(file) < 0) as string[];\n\nexport const FILE_PLATFORM_MAP = {\n win: 'win32',\n win32: 'win',\n osx: 'darwin',\n darwin: 'osx',\n};\n\nexport const EXTENSIONS_COMPRESSED = ['.gz', '.zip', '.xz', '.7z'];\n\nexport const NODE_FILE_PATHS = {\n win32: 'node.exe',\n posix: path.join('bin', 'node') as string,\n};\nexport const NODE_DIST_BASE_URL = 'https://nodejs.org/dist';\nexport const NODE_SCHEDULES_URL = 'https://raw.githubusercontent.com/nodejs/Release/master/schedule.json';\n\nexport const NPM_DIST_URL = 'https://registry.npmjs.org/npm';\nexport const NPM_DIST_TAGS_URL = 'https://registry.npmjs.org/-/package/npm/dist-tags';\nexport const NPM_MIN_VERSION = 3;\n\nexport const NPM_PACKAGE_PATH = {\n win32: path.join('node_modules', 'npm') as string,\n posix: path.join('lib', 'node_modules', 'npm') as string,\n};\n\nexport const NPM_FILE_PATHS = {\n win32: [\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npm'), dest: 'npm' },\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npm.cmd'), dest: 'npm.cmd' },\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npx'), dest: 'npx', optional: true },\n { src: path.join(NPM_PACKAGE_PATH.win32, 'bin', 'npx.cmd'), dest: 'npx.cmd', optional: true },\n ] as FilePath[],\n posix: [\n { src: path.join(NPM_PACKAGE_PATH.posix, 'bin', 'npm-cli.js'), dest: path.join('bin', 'npm') },\n { src: path.join(NPM_PACKAGE_PATH.posix, 'bin', 'npx-cli.js'), dest: path.join('bin', 'npx'), optional: true },\n ] as FilePath[],\n};\n"],"names":["DEFAULT_STORAGE_PATH","DEFAULT_STORAGE_PATHS","EXTENSIONS_COMPRESSED","FILES","FILE_PLATFORMS","FILE_PLATFORM_MAP","NODE_DIST_BASE_URL","NODE_FILE_PATHS","NODE_SCHEDULES_URL","NPM_DIST_TAGS_URL","NPM_DIST_URL","NPM_FILE_PATHS","NPM_MIN_VERSION","NPM_PACKAGE_PATH","files","path","join","homedir","createStoragePaths","keys","filter","file","indexOf","win","win32","osx","darwin","posix","src","dest","optional"],"mappings":";;;;;;;;;;;QASaA;eAAAA;;QACAC;eAAAA;;QAWAC;eAAAA;;QAbAC;eAAAA;;QAIAC;eAAAA;;QAEAC;eAAAA;;QAaAC;eAAAA;;QAJAC;eAAAA;;QAKAC;eAAAA;;QAGAC;eAAAA;;QADAC;eAAAA;;QASAC;eAAAA;;QAPAC;eAAAA;;QAEAC;eAAAA;;;iEAlCI;2DACA;wBACO;2EACO;8DACb;;;;;;AAIX,IAAMV,QAAQW,gBAAK;AACnB,IAAMd,uBAAuBe,aAAI,CAACC,IAAI,CAACC,IAAAA,iBAAO,KAAI;AAClD,IAAMhB,wBAAwBiB,IAAAA,6BAAkB,EAAClB;AAEjD,IAAMI,iBAAiBe,IAAAA,mBAAI,EAAChB,OAAOiB,MAAM,CAAC,SAACC;WAAiB;QAAC;QAAO;KAAU,CAACC,OAAO,CAACD,QAAQ;;AAE/F,IAAMhB,oBAAoB;IAC/BkB,KAAK;IACLC,OAAO;IACPC,KAAK;IACLC,QAAQ;AACV;AAEO,IAAMxB,wBAAwB;IAAC;IAAO;IAAQ;IAAO;CAAM;AAE3D,IAAMK,kBAAkB;IAC7BiB,OAAO;IACPG,OAAOZ,aAAI,CAACC,IAAI,CAAC,OAAO;AAC1B;AACO,IAAMV,qBAAqB;AAC3B,IAAME,qBAAqB;AAE3B,IAAME,eAAe;AACrB,IAAMD,oBAAoB;AAC1B,IAAMG,kBAAkB;AAExB,IAAMC,mBAAmB;IAC9BW,OAAOT,aAAI,CAACC,IAAI,CAAC,gBAAgB;IACjCW,OAAOZ,aAAI,CAACC,IAAI,CAAC,OAAO,gBAAgB;AAC1C;AAEO,IAAML,iBAAiB;IAC5Ba,OAAO;QACL;YAAEI,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAQK,MAAM;QAAM;QACpE;YAAED,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAYK,MAAM;QAAU;QAC5E;YAAED,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAQK,MAAM;YAAOC,UAAU;QAAK;QACpF;YAAEF,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBW,KAAK,EAAE,OAAO;YAAYK,MAAM;YAAWC,UAAU;QAAK;KAC7F;IACDH,OAAO;QACL;YAAEC,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBc,KAAK,EAAE,OAAO;YAAeE,MAAMd,aAAI,CAACC,IAAI,CAAC,OAAO;QAAO;QAC7F;YAAEY,KAAKb,aAAI,CAACC,IAAI,CAACH,iBAAiBc,KAAK,EAAE,OAAO;YAAeE,MAAMd,aAAI,CAACC,IAAI,CAAC,OAAO;YAAQc,UAAU;QAAK;KAC9G;AACH"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/createResult.ts"],"sourcesContent":["import path from 'path';\nimport { DEFAULT_STORAGE_PATHS, NODE_FILE_PATHS } from './constants.ts';\n\nimport createStoragePaths from './createStoragePaths.ts';\nimport getTarget from './lib/getTarget.ts';\nimport type { InstallOptions, InstallResult } from './types.ts';\n\nexport default function createResult(options: InstallOptions, version: string): InstallResult {\n const storagePaths = options.storagePath ? createStoragePaths(options.storagePath) : DEFAULT_STORAGE_PATHS;\n let installPath = options.installPath || storagePaths.installPath;\n\n if (options.name) installPath = path.join(installPath, options.name);\n else if (!options.installPath) installPath = path.join(installPath, version);\n const { platform } = getTarget(options);\n const nodePath = NODE_FILE_PATHS[platform] || NODE_FILE_PATHS.posix;\n const execPath = path.join(installPath, nodePath);\n return { version, installPath, execPath, platform };\n}\n"],"names":["createResult","options","version","storagePaths","storagePath","createStoragePaths","DEFAULT_STORAGE_PATHS","installPath","name","path","join","platform","getTarget","nodePath","NODE_FILE_PATHS","posix","execPath"],"mappings":";;;;+BAOA;;;eAAwBA;;;2DAPP;2BACsC;2EAExB;kEACT;;;;;;AAGP,SAASA,aAAaC,OAAuB,EAAEC,OAAe;IAC3E,IAAMC,eAAeF,QAAQG,WAAW,GAAGC,IAAAA,6BAAkB,EAACJ,QAAQG,WAAW,IAAIE,kCAAqB;IAC1G,IAAIC,cAAcN,QAAQM,WAAW,IAAIJ,aAAaI,WAAW;IAEjE,IAAIN,QAAQO,IAAI,EAAED,cAAcE,aAAI,CAACC,IAAI,CAACH,aAAaN,QAAQO,IAAI;SAC9D,IAAI,CAACP,QAAQM,WAAW,EAAEA,cAAcE,aAAI,CAACC,IAAI,CAACH,aAAaL;IACpE,IAAM,AAAES,WAAaC,IAAAA,oBAAS,EAACX,SAAvBU;IACR,IAAME,WAAWC,4BAAe,CAACH,SAAS,IAAIG,4BAAe,CAACC,KAAK;IACnE,IAAMC,WAAWP,aAAI,CAACC,IAAI,CAACH,aAAaM;IACxC,OAAO;QAAEX,SAAAA;QAASK,aAAAA;QAAaS,UAAAA;QAAUL,UAAAA;IAAS;AACpD"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/createResult.ts"],"sourcesContent":["import path from 'path';\nimport { DEFAULT_STORAGE_PATHS, NODE_FILE_PATHS } from './constants.ts';\n\nimport createStoragePaths from './createStoragePaths.ts';\nimport getTarget from './lib/getTarget.ts';\nimport type { InstallOptions, InstallResult } from './types.ts';\n\nexport default function createResult(options: InstallOptions, version: string): InstallResult {\n const storagePaths = options.storagePath ? createStoragePaths(options.storagePath) : DEFAULT_STORAGE_PATHS;\n let installPath = options.installPath || storagePaths.installPath;\n\n if (options.name) installPath = path.join(installPath, options.name);\n else if (!options.installPath) installPath = path.join(installPath, version);\n const { platform } = getTarget(options);\n const nodePath = (NODE_FILE_PATHS as Record<string, string>)[platform as string] || NODE_FILE_PATHS.posix;\n const execPath = path.join(installPath, nodePath);\n return { version, installPath, execPath, platform };\n}\n"],"names":["createResult","options","version","storagePaths","storagePath","createStoragePaths","DEFAULT_STORAGE_PATHS","installPath","name","path","join","platform","getTarget","nodePath","NODE_FILE_PATHS","posix","execPath"],"mappings":";;;;+BAOA;;;eAAwBA;;;2DAPP;2BACsC;2EAExB;kEACT;;;;;;AAGP,SAASA,aAAaC,OAAuB,EAAEC,OAAe;IAC3E,IAAMC,eAAeF,QAAQG,WAAW,GAAGC,IAAAA,6BAAkB,EAACJ,QAAQG,WAAW,IAAIE,kCAAqB;IAC1G,IAAIC,cAAcN,QAAQM,WAAW,IAAIJ,aAAaI,WAAW;IAEjE,IAAIN,QAAQO,IAAI,EAAED,cAAcE,aAAI,CAACC,IAAI,CAACH,aAAaN,QAAQO,IAAI;SAC9D,IAAI,CAACP,QAAQM,WAAW,EAAEA,cAAcE,aAAI,CAACC,IAAI,CAACH,aAAaL;IACpE,IAAM,AAAES,WAAaC,IAAAA,oBAAS,EAACX,SAAvBU;IACR,IAAME,WAAW,AAACC,4BAAe,AAA2B,CAACH,SAAmB,IAAIG,4BAAe,CAACC,KAAK;IACzG,IAAMC,WAAWP,aAAI,CAACC,IAAI,CAACH,aAAaM;IACxC,OAAO;QAAEX,SAAAA;QAASK,aAAAA;QAAaS,UAAAA;QAAUL,UAAAA;IAAS;AACpD"}
package/dist/cjs/index.js CHANGED
@@ -33,7 +33,9 @@ function install(versionExpression, options, callback) {
33
33
  if (typeof callback === 'function') return (0, _installts.default)(versionExpression, options, callback);
34
34
  return new Promise(function(resolve, reject) {
35
35
  return (0, _installts.default)(versionExpression, options, function(err, result) {
36
- return err ? reject(err) : resolve(result);
36
+ if (err) return reject(err);
37
+ if (result === undefined) return reject(new Error('Result is undefined'));
38
+ resolve(result);
37
39
  });
38
40
  });
39
41
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/index.ts"],"sourcesContent":["import type { InstallCallback, InstallOptions, InstallResult } from './types.ts';\nimport worker from './workers/install.ts';\n\nexport type * from './types.ts';\n\nexport default function install(versionExpression: string): Promise<InstallResult>;\nexport default function install(versionExpression: string, options: InstallOptions): Promise<InstallResult>;\n\nexport default function install(versionExpression: string, callback: InstallCallback): void;\nexport default function install(versionExpression: string, options: InstallOptions, callback: InstallCallback): void;\n\nexport default function install(versionExpression: string, options?: InstallOptions | InstallCallback, callback?: InstallCallback): void | Promise<InstallResult> {\n callback = typeof options === 'function' ? options : callback;\n options = typeof options === 'function' ? {} : ((options || {}) as InstallOptions);\n\n if (typeof callback === 'function') return worker(versionExpression, options, callback);\n return new Promise((resolve, reject) => worker(versionExpression, options, (err, result) => (err ? reject(err) : resolve(result))));\n}\nexport { default as createResult } from './createResult.ts';\nexport { default as createStoragePaths } from './createStoragePaths.ts';\n"],"names":["createResult","createStoragePaths","install","versionExpression","options","callback","worker","Promise","resolve","reject","err","result"],"mappings":";;;;;;;;;;;QAkBoBA;eAAAA,uBAAY;;QACZC;eAAAA,6BAAkB;;QARtC;eAAwBC;;;gEAVL;qEAiBqB;2EACM;;;;;;AAR/B,SAASA,QAAQC,iBAAyB,EAAEC,OAA0C,EAAEC,QAA0B;IAC/HA,WAAW,OAAOD,YAAY,aAAaA,UAAUC;IACrDD,UAAU,OAAOA,YAAY,aAAa,CAAC,IAAMA,WAAW,CAAC;IAE7D,IAAI,OAAOC,aAAa,YAAY,OAAOC,IAAAA,kBAAM,EAACH,mBAAmBC,SAASC;IAC9E,OAAO,IAAIE,QAAQ,SAACC,SAASC;eAAWH,IAAAA,kBAAM,EAACH,mBAAmBC,SAAS,SAACM,KAAKC;mBAAYD,MAAMD,OAAOC,OAAOF,QAAQG;;;AAC3H"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/index.ts"],"sourcesContent":["import type { InstallCallback, InstallOptions, InstallResult } from './types.ts';\nimport worker from './workers/install.ts';\n\nexport type * from './types.ts';\n\nexport default function install(versionExpression: string): Promise<InstallResult>;\nexport default function install(versionExpression: string, options: InstallOptions): Promise<InstallResult>;\n\nexport default function install(versionExpression: string, callback: InstallCallback): void;\nexport default function install(versionExpression: string, options: InstallOptions, callback: InstallCallback): void;\n\nexport default function install(versionExpression: string, options?: InstallOptions | InstallCallback, callback?: InstallCallback): void | Promise<InstallResult> {\n callback = typeof options === 'function' ? options : callback;\n options = typeof options === 'function' ? {} : ((options || {}) as InstallOptions);\n\n if (typeof callback === 'function') return worker(versionExpression, options, callback);\n return new Promise((resolve, reject) =>\n worker(versionExpression, options, (err, result) => {\n if (err) return reject(err);\n if (result === undefined) return reject(new Error('Result is undefined'));\n resolve(result);\n })\n );\n}\nexport { default as createResult } from './createResult.ts';\nexport { default as createStoragePaths } from './createStoragePaths.ts';\n"],"names":["createResult","createStoragePaths","install","versionExpression","options","callback","worker","Promise","resolve","reject","err","result","undefined","Error"],"mappings":";;;;;;;;;;;QAwBoBA;eAAAA,uBAAY;;QACZC;eAAAA,6BAAkB;;QAdtC;eAAwBC;;;gEAVL;qEAuBqB;2EACM;;;;;;AAd/B,SAASA,QAAQC,iBAAyB,EAAEC,OAA0C,EAAEC,QAA0B;IAC/HA,WAAW,OAAOD,YAAY,aAAaA,UAAUC;IACrDD,UAAU,OAAOA,YAAY,aAAa,CAAC,IAAMA,WAAW,CAAC;IAE7D,IAAI,OAAOC,aAAa,YAAY,OAAOC,IAAAA,kBAAM,EAACH,mBAAmBC,SAASC;IAC9E,OAAO,IAAIE,QAAQ,SAACC,SAASC;eAC3BH,IAAAA,kBAAM,EAACH,mBAAmBC,SAAS,SAACM,KAAKC;YACvC,IAAID,KAAK,OAAOD,OAAOC;YACvB,IAAIC,WAAWC,WAAW,OAAOH,OAAO,IAAII,MAAM;YAClDL,QAAQG;QACV;;AAEJ"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNPM/index.ts"],"sourcesContent":["import Queue from 'queue-cb';\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\nimport installBin from './installBin.ts';\nimport installLib from './installLib.ts';\n\nexport default function install(version: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n let npmVersion: string | null = null;\n let checksum: string | undefined;\n\n const queue = new Queue(1);\n queue.defer((cb) =>\n installLib(version, dest, options, (err, _npmVersion, _checksum) => {\n npmVersion = _npmVersion;\n checksum = _checksum;\n cb(err);\n })\n );\n queue.defer(installBin.bind(null, version, dest, options));\n queue.await((err) => {\n let message = `npm ${npmVersion || ''}`;\n if (!err) {\n message += ' installed';\n if (checksum) message += ` (${checksum.slice(0, 8)})`;\n } else {\n message += ` install failed. Error: ${err.message}`;\n }\n console.log(message);\n callback(err);\n });\n}\n"],"names":["install","version","dest","options","callback","npmVersion","checksum","queue","Queue","defer","cb","installLib","err","_npmVersion","_checksum","installBin","bind","await","message","slice","console","log"],"mappings":";;;;+BAKA;;;eAAwBA;;;8DALN;mEAEK;mEACA;;;;;;AAER,SAASA,QAAQC,OAAe,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IAC/G,IAAIC,aAA4B;IAChC,IAAIC;IAEJ,IAAMC,QAAQ,IAAIC,gBAAK,CAAC;IACxBD,MAAME,KAAK,CAAC,SAACC;eACXC,IAAAA,qBAAU,EAACV,SAASC,MAAMC,SAAS,SAACS,KAAKC,aAAaC;YACpDT,aAAaQ;YACbP,WAAWQ;YACXJ,GAAGE;QACL;;IAEFL,MAAME,KAAK,CAACM,qBAAU,CAACC,IAAI,CAAC,MAAMf,SAASC,MAAMC;IACjDI,MAAMU,KAAK,CAAC,SAACL;QACX,IAAIM,UAAU,AAAC,OAAuB,OAAjBb,cAAc;QACnC,IAAI,CAACO,KAAK;YACRM,WAAW;YACX,IAAIZ,UAAUY,WAAW,AAAC,KAAyB,OAArBZ,SAASa,KAAK,CAAC,GAAG,IAAG;QACrD,OAAO;YACLD,WAAW,AAAC,2BAAsC,OAAZN,IAAIM,OAAO;QACnD;QACAE,QAAQC,GAAG,CAACH;QACZd,SAASQ;IACX;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNPM/index.ts"],"sourcesContent":["import Queue from 'queue-cb';\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\nimport installBin from './installBin.ts';\nimport installLib from './installLib.ts';\n\nexport default function install(version: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n let npmVersion: string | null | undefined = null;\n let checksum: string | undefined;\n\n const queue = new Queue(1);\n queue.defer((cb) =>\n installLib(version, dest, options, (err, _npmVersion, _checksum) => {\n npmVersion = _npmVersion;\n checksum = _checksum;\n cb(err);\n })\n );\n queue.defer(installBin.bind(null, version, dest, options));\n queue.await((err) => {\n let message = `npm ${npmVersion || ''}`;\n if (!err) {\n message += ' installed';\n if (checksum) message += ` (${checksum.slice(0, 8)})`;\n } else {\n message += ` install failed. Error: ${err.message}`;\n }\n console.log(message);\n callback(err);\n });\n}\n"],"names":["install","version","dest","options","callback","npmVersion","checksum","queue","Queue","defer","cb","installLib","err","_npmVersion","_checksum","installBin","bind","await","message","slice","console","log"],"mappings":";;;;+BAKA;;;eAAwBA;;;8DALN;mEAEK;mEACA;;;;;;AAER,SAASA,QAAQC,OAAe,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IAC/G,IAAIC,aAAwC;IAC5C,IAAIC;IAEJ,IAAMC,QAAQ,IAAIC,gBAAK,CAAC;IACxBD,MAAME,KAAK,CAAC,SAACC;eACXC,IAAAA,qBAAU,EAACV,SAASC,MAAMC,SAAS,SAACS,KAAKC,aAAaC;YACpDT,aAAaQ;YACbP,WAAWQ;YACXJ,GAAGE;QACL;;IAEFL,MAAME,KAAK,CAACM,qBAAU,CAACC,IAAI,CAAC,MAAMf,SAASC,MAAMC;IACjDI,MAAMU,KAAK,CAAC,SAACL;QACX,IAAIM,UAAU,AAAC,OAAuB,OAAjBb,cAAc;QACnC,IAAI,CAACO,KAAK;YACRM,WAAW;YACX,IAAIZ,UAAUY,WAAW,AAAC,KAAyB,OAArBZ,SAASa,KAAK,CAAC,GAAG,IAAG;QACrD,OAAO;YACLD,WAAW,AAAC,2BAAsC,OAAZN,IAAIM,OAAO;QACnD;QACAE,QAAQC,GAAG,CAACH;QACZd,SAASQ;IACX;AACF"}
@@ -22,7 +22,12 @@ function installBin(_version, dest, options, callback) {
22
22
  var files = _constantsts.NPM_FILE_PATHS[platform] || _constantsts.NPM_FILE_PATHS.posix;
23
23
  var queue = new _queuecb.default();
24
24
  files.forEach(function(file) {
25
- queue.defer(_conditionalCopyts.default.bind(null, _path.default.join(dest, file.src), _path.default.join(dest, file.dest), file.optional));
25
+ queue.defer(function(cb) {
26
+ var _file_optional;
27
+ return (0, _conditionalCopyts.default)(_path.default.join(dest, file.src), _path.default.join(dest, file.dest), (_file_optional = file.optional) !== null && _file_optional !== void 0 ? _file_optional : false, function(err) {
28
+ return cb(err);
29
+ });
30
+ });
26
31
  });
27
32
  queue.await(callback);
28
33
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNPM/installBin.ts"],"sourcesContent":["import path from 'path';\nimport Queue from 'queue-cb';\nimport { NPM_FILE_PATHS } from '../constants.ts';\nimport conditionalCopy from '../lib/conditionalCopy.ts';\n\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\n\nexport default function installBin(_version: string, dest: string, options: InstallOptions, callback: NoParamCallback) {\n const platform = options.platform;\n const files = NPM_FILE_PATHS[platform] || NPM_FILE_PATHS.posix;\n\n const queue = new Queue();\n files.forEach((file) => {\n queue.defer(conditionalCopy.bind(null, path.join(dest, file.src), path.join(dest, file.dest), file.optional));\n });\n queue.await(callback);\n}\n"],"names":["installBin","_version","dest","options","callback","platform","files","NPM_FILE_PATHS","posix","queue","Queue","forEach","file","defer","conditionalCopy","bind","path","join","src","optional","await"],"mappings":";;;;+BAOA;;;eAAwBA;;;2DAPP;8DACC;2BACa;wEACH;;;;;;AAIb,SAASA,WAAWC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACnH,IAAMC,WAAWF,QAAQE,QAAQ;IACjC,IAAMC,QAAQC,2BAAc,CAACF,SAAS,IAAIE,2BAAc,CAACC,KAAK;IAE9D,IAAMC,QAAQ,IAAIC,gBAAK;IACvBJ,MAAMK,OAAO,CAAC,SAACC;QACbH,MAAMI,KAAK,CAACC,0BAAe,CAACC,IAAI,CAAC,MAAMC,aAAI,CAACC,IAAI,CAACf,MAAMU,KAAKM,GAAG,GAAGF,aAAI,CAACC,IAAI,CAACf,MAAMU,KAAKV,IAAI,GAAGU,KAAKO,QAAQ;IAC7G;IACAV,MAAMW,KAAK,CAAChB;AACd"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNPM/installBin.ts"],"sourcesContent":["import path from 'path';\nimport Queue from 'queue-cb';\nimport { NPM_FILE_PATHS } from '../constants.ts';\nimport conditionalCopy from '../lib/conditionalCopy.ts';\n\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\n\nexport default function installBin(_version: string, dest: string, options: InstallOptions, callback: NoParamCallback) {\n const platform = options.platform;\n const files = (NPM_FILE_PATHS as Record<string, import('../types.ts').FilePath[]>)[platform as string] || NPM_FILE_PATHS.posix;\n\n const queue = new Queue();\n files.forEach((file: import('../types.ts').FilePath) => {\n queue.defer((cb) => conditionalCopy(path.join(dest, file.src), path.join(dest, file.dest), file.optional ?? false, (err) => cb(err)));\n });\n queue.await(callback);\n}\n"],"names":["installBin","_version","dest","options","callback","platform","files","NPM_FILE_PATHS","posix","queue","Queue","forEach","file","defer","cb","conditionalCopy","path","join","src","optional","err","await"],"mappings":";;;;+BAOA;;;eAAwBA;;;2DAPP;8DACC;2BACa;wEACH;;;;;;AAIb,SAASA,WAAWC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACnH,IAAMC,WAAWF,QAAQE,QAAQ;IACjC,IAAMC,QAAQ,AAACC,2BAAc,AAAqD,CAACF,SAAmB,IAAIE,2BAAc,CAACC,KAAK;IAE9H,IAAMC,QAAQ,IAAIC,gBAAK;IACvBJ,MAAMK,OAAO,CAAC,SAACC;QACbH,MAAMI,KAAK,CAAC,SAACC;gBAA8EF;mBAAvEG,IAAAA,0BAAe,EAACC,aAAI,CAACC,IAAI,CAACf,MAAMU,KAAKM,GAAG,GAAGF,aAAI,CAACC,IAAI,CAACf,MAAMU,KAAKV,IAAI,IAAGU,iBAAAA,KAAKO,QAAQ,cAAbP,4BAAAA,iBAAiB,OAAO,SAACQ;uBAAQN,GAAGM;;;IACjI;IACAX,MAAMY,KAAK,CAACjB;AACd"}
@@ -15,6 +15,7 @@ var _nodefilenametodistpaths = require("node-filename-to-dist-paths");
15
15
  var _onone = /*#__PURE__*/ _interop_require_default(require("on-one"));
16
16
  var _path = /*#__PURE__*/ _interop_require_default(require("path"));
17
17
  var _queuecb = /*#__PURE__*/ _interop_require_default(require("queue-cb"));
18
+ var _compatts = require("../compat.js");
18
19
  var _constantsts = require("../constants.js");
19
20
  var _conditionalCachets = /*#__PURE__*/ _interop_require_default(require("../lib/conditionalCache.js"));
20
21
  var _extractts = /*#__PURE__*/ _interop_require_default(require("../lib/extract.js"));
@@ -36,7 +37,7 @@ function calculateChecksum(filePath, callback) {
36
37
  'finish'
37
38
  ], function(err) {
38
39
  if (err) return callback(err);
39
- callback(null, hash.digest('hex'));
40
+ callback(undefined, hash.digest('hex'));
40
41
  });
41
42
  }
42
43
  function installLib(version, dest, options, callback) {
@@ -49,22 +50,31 @@ function installLib(version, dest, options, callback) {
49
50
  (0, _getfilecompat.getContent)(_constantsts.NPM_DIST_TAGS_URL, 'utf8', function(err, res) {
50
51
  if (err) return callback(err);
51
52
  try {
52
- var distTags = JSON.parse(res.content);
53
+ var _ref, _options_cachePath;
54
+ var distTags = JSON.parse((_ref = res === null || res === void 0 ? void 0 : res.content) !== null && _ref !== void 0 ? _ref : '{}');
53
55
  var npmVersion = distTags["latest-".concat(npmMajor)] || distTags["next-".concat(npmMajor)] || distTags.latest;
54
56
  var downloadPath = "".concat(_constantsts.NPM_DIST_URL, "/-/npm-").concat(npmVersion, ".tgz");
55
- var cachePath = _path.default.join(options.cachePath, _path.default.basename(downloadPath));
57
+ var cachePath = _path.default.join((_options_cachePath = options.cachePath) !== null && _options_cachePath !== void 0 ? _options_cachePath : (0, _compatts.tmpdir)(), _path.default.basename(downloadPath));
56
58
  var checksum;
57
59
  var queue = new _queuecb.default(1);
58
- queue.defer(_conditionalCachets.default.bind(null, downloadPath, cachePath));
60
+ queue.defer(function(cb) {
61
+ return (0, _conditionalCachets.default)(downloadPath, cachePath, options, function(err) {
62
+ return cb(err);
63
+ });
64
+ });
59
65
  queue.defer(function(cb) {
60
66
  calculateChecksum(cachePath, function(err, hash) {
61
67
  checksum = hash;
62
68
  cb(err);
63
69
  });
64
70
  });
65
- queue.defer(_extractts.default.bind(null, cachePath, installPath));
71
+ queue.defer(function(cb) {
72
+ return (0, _extractts.default)(cachePath, installPath, function(err) {
73
+ return cb(err);
74
+ });
75
+ });
66
76
  queue.await(function(err) {
67
- err ? callback(err) : callback(null, npmVersion, checksum);
77
+ err ? callback(err) : callback(undefined, npmVersion, checksum);
68
78
  });
69
79
  } catch (_e) {
70
80
  return callback(new Error('Failed to parse npm dist-tags'));
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNPM/installLib.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\nimport { getContent } from 'get-file-compat';\nimport { getDist } from 'node-filename-to-dist-paths';\nimport oo from 'on-one';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport { NPM_DIST_TAGS_URL, NPM_DIST_URL, NPM_MIN_VERSION } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport extract from '../lib/extract.ts';\n\ninterface DistRecord {\n latest: string;\n}\n\nimport type { InstallOptions } from '../types.ts';\n\nexport type Callback = (error?: Error, npmVersion?: string, checksum?: string) => void;\n\nfunction calculateChecksum(filePath: string, callback: (err?: Error, checksum?: string) => void): void {\n const hash = crypto.createHash('sha256');\n const stream = fs.createReadStream(filePath);\n stream.on('data', (data) => hash.update(data));\n oo(stream, ['error', 'end', 'close', 'finish'], (err?: Error) => {\n if (err) return callback(err);\n callback(null, hash.digest('hex'));\n });\n}\n\nexport default function installLib(version: string, dest: string, options: InstallOptions, callback: Callback): void {\n const platform = options.platform;\n const libPath = platform === 'win32' ? dest : path.join(dest, 'lib');\n const installPath = path.join(libPath, 'node_modules', 'npm');\n\n const dist = getDist(version);\n const npmMajorPair = dist && dist.npm ? +dist.npm.split('.')[0] : NPM_MIN_VERSION;\n const npmMajor = Math.max(npmMajorPair, NPM_MIN_VERSION);\n\n getContent(NPM_DIST_TAGS_URL, 'utf8', (err, res) => {\n if (err) return callback(err);\n try {\n const distTags = JSON.parse(res.content) as DistRecord;\n const npmVersion = distTags[`latest-${npmMajor}`] || distTags[`next-${npmMajor}`] || distTags.latest;\n const downloadPath = `${NPM_DIST_URL}/-/npm-${npmVersion}.tgz`;\n const cachePath = path.join(options.cachePath, path.basename(downloadPath));\n\n let checksum: string | undefined;\n const queue = new Queue(1);\n queue.defer(conditionalCache.bind(null, downloadPath, cachePath));\n queue.defer((cb) => {\n calculateChecksum(cachePath, (err, hash) => {\n checksum = hash;\n cb(err);\n });\n });\n queue.defer(extract.bind(null, cachePath, installPath));\n queue.await((err) => {\n err ? callback(err) : callback(null, npmVersion, checksum);\n });\n } catch (_e) {\n return callback(new Error('Failed to parse npm dist-tags'));\n }\n });\n}\n"],"names":["installLib","calculateChecksum","filePath","callback","hash","crypto","createHash","stream","fs","createReadStream","on","data","update","oo","err","digest","version","dest","options","platform","libPath","path","join","installPath","dist","getDist","npmMajorPair","npm","split","NPM_MIN_VERSION","npmMajor","Math","max","getContent","NPM_DIST_TAGS_URL","res","distTags","JSON","parse","content","npmVersion","latest","downloadPath","NPM_DIST_URL","cachePath","basename","checksum","queue","Queue","defer","conditionalCache","bind","cb","extract","await","_e","Error"],"mappings":";;;;+BA6BA;;;eAAwBA;;;6DA7BL;yDACJ;6BACY;uCACH;4DACT;2DACE;8DACC;2BAC+C;yEACpC;gEACT;;;;;;AAUpB,SAASC,kBAAkBC,QAAgB,EAAEC,QAAkD;IAC7F,IAAMC,OAAOC,eAAM,CAACC,UAAU,CAAC;IAC/B,IAAMC,SAASC,WAAE,CAACC,gBAAgB,CAACP;IACnCK,OAAOG,EAAE,CAAC,QAAQ,SAACC;eAASP,KAAKQ,MAAM,CAACD;;IACxCE,IAAAA,cAAE,EAACN,QAAQ;QAAC;QAAS;QAAO;QAAS;KAAS,EAAE,SAACO;QAC/C,IAAIA,KAAK,OAAOX,SAASW;QACzBX,SAAS,MAAMC,KAAKW,MAAM,CAAC;IAC7B;AACF;AAEe,SAASf,WAAWgB,OAAe,EAAEC,IAAY,EAAEC,OAAuB,EAAEf,QAAkB;IAC3G,IAAMgB,WAAWD,QAAQC,QAAQ;IACjC,IAAMC,UAAUD,aAAa,UAAUF,OAAOI,aAAI,CAACC,IAAI,CAACL,MAAM;IAC9D,IAAMM,cAAcF,aAAI,CAACC,IAAI,CAACF,SAAS,gBAAgB;IAEvD,IAAMI,OAAOC,IAAAA,gCAAO,EAACT;IACrB,IAAMU,eAAeF,QAAQA,KAAKG,GAAG,GAAG,CAACH,KAAKG,GAAG,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE,GAAGC,4BAAe;IACjF,IAAMC,WAAWC,KAAKC,GAAG,CAACN,cAAcG,4BAAe;IAEvDI,IAAAA,yBAAU,EAACC,8BAAiB,EAAE,QAAQ,SAACpB,KAAKqB;QAC1C,IAAIrB,KAAK,OAAOX,SAASW;QACzB,IAAI;YACF,IAAMsB,WAAWC,KAAKC,KAAK,CAACH,IAAII,OAAO;YACvC,IAAMC,aAAaJ,QAAQ,CAAC,AAAC,UAAkB,OAATN,UAAW,IAAIM,QAAQ,CAAC,AAAC,QAAgB,OAATN,UAAW,IAAIM,SAASK,MAAM;YACpG,IAAMC,eAAe,AAAC,GAAwBF,OAAtBG,yBAAY,EAAC,WAAoB,OAAXH,YAAW;YACzD,IAAMI,YAAYvB,aAAI,CAACC,IAAI,CAACJ,QAAQ0B,SAAS,EAAEvB,aAAI,CAACwB,QAAQ,CAACH;YAE7D,IAAII;YACJ,IAAMC,QAAQ,IAAIC,gBAAK,CAAC;YACxBD,MAAME,KAAK,CAACC,2BAAgB,CAACC,IAAI,CAAC,MAAMT,cAAcE;YACtDG,MAAME,KAAK,CAAC,SAACG;gBACXnD,kBAAkB2C,WAAW,SAAC9B,KAAKV;oBACjC0C,WAAW1C;oBACXgD,GAAGtC;gBACL;YACF;YACAiC,MAAME,KAAK,CAACI,kBAAO,CAACF,IAAI,CAAC,MAAMP,WAAWrB;YAC1CwB,MAAMO,KAAK,CAAC,SAACxC;gBACXA,MAAMX,SAASW,OAAOX,SAAS,MAAMqC,YAAYM;YACnD;QACF,EAAE,OAAOS,IAAI;YACX,OAAOpD,SAAS,IAAIqD,MAAM;QAC5B;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNPM/installLib.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\nimport { getContent } from 'get-file-compat';\nimport { getDist } from 'node-filename-to-dist-paths';\nimport oo from 'on-one';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport { tmpdir } from '../compat.ts';\nimport { NPM_DIST_TAGS_URL, NPM_DIST_URL, NPM_MIN_VERSION } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport extract from '../lib/extract.ts';\n\ninterface DistRecord {\n latest: string;\n}\n\nimport type { InstallOptions } from '../types.ts';\n\nexport type Callback = (error?: Error, npmVersion?: string, checksum?: string) => void;\n\nfunction calculateChecksum(filePath: string, callback: (err?: Error, checksum?: string) => void): void {\n const hash = crypto.createHash('sha256');\n const stream = fs.createReadStream(filePath);\n stream.on('data', (data) => hash.update(data));\n oo(stream, ['error', 'end', 'close', 'finish'], (err: Error | null) => {\n if (err) return callback(err);\n callback(undefined, hash.digest('hex'));\n });\n}\n\nexport default function installLib(version: string, dest: string, options: InstallOptions, callback: Callback): void {\n const platform = options.platform;\n const libPath = platform === 'win32' ? dest : path.join(dest, 'lib');\n const installPath = path.join(libPath, 'node_modules', 'npm');\n\n const dist = getDist(version);\n const npmMajorPair = dist && dist.npm ? +dist.npm.split('.')[0] : NPM_MIN_VERSION;\n const npmMajor = Math.max(npmMajorPair, NPM_MIN_VERSION);\n\n getContent(NPM_DIST_TAGS_URL, 'utf8', (err, res) => {\n if (err) return callback(err);\n try {\n const distTags = JSON.parse(res?.content ?? '{}') as Record<string, string>;\n const npmVersion = distTags[`latest-${npmMajor}`] || distTags[`next-${npmMajor}`] || distTags.latest;\n const downloadPath = `${NPM_DIST_URL}/-/npm-${npmVersion}.tgz`;\n const cachePath = path.join(options.cachePath ?? tmpdir(), path.basename(downloadPath));\n\n let checksum: string | undefined;\n const queue = new Queue(1);\n queue.defer((cb) => conditionalCache(downloadPath, cachePath, options, (err) => cb(err)));\n queue.defer((cb) => {\n calculateChecksum(cachePath, (err, hash) => {\n checksum = hash;\n cb(err);\n });\n });\n queue.defer((cb) => extract(cachePath, installPath, (err) => cb(err)));\n queue.await((err) => {\n err ? callback(err) : callback(undefined, npmVersion, checksum);\n });\n } catch (_e) {\n return callback(new Error('Failed to parse npm dist-tags'));\n }\n });\n}\n"],"names":["installLib","calculateChecksum","filePath","callback","hash","crypto","createHash","stream","fs","createReadStream","on","data","update","oo","err","undefined","digest","version","dest","options","platform","libPath","path","join","installPath","dist","getDist","npmMajorPair","npm","split","NPM_MIN_VERSION","npmMajor","Math","max","getContent","NPM_DIST_TAGS_URL","res","distTags","JSON","parse","content","npmVersion","latest","downloadPath","NPM_DIST_URL","cachePath","tmpdir","basename","checksum","queue","Queue","defer","cb","conditionalCache","extract","await","_e","Error"],"mappings":";;;;+BA8BA;;;eAAwBA;;;6DA9BL;yDACJ;6BACY;uCACH;4DACT;2DACE;8DACC;wBACK;2BAC0C;yEACpC;gEACT;;;;;;AAUpB,SAASC,kBAAkBC,QAAgB,EAAEC,QAAkD;IAC7F,IAAMC,OAAOC,eAAM,CAACC,UAAU,CAAC;IAC/B,IAAMC,SAASC,WAAE,CAACC,gBAAgB,CAACP;IACnCK,OAAOG,EAAE,CAAC,QAAQ,SAACC;eAASP,KAAKQ,MAAM,CAACD;;IACxCE,IAAAA,cAAE,EAACN,QAAQ;QAAC;QAAS;QAAO;QAAS;KAAS,EAAE,SAACO;QAC/C,IAAIA,KAAK,OAAOX,SAASW;QACzBX,SAASY,WAAWX,KAAKY,MAAM,CAAC;IAClC;AACF;AAEe,SAAShB,WAAWiB,OAAe,EAAEC,IAAY,EAAEC,OAAuB,EAAEhB,QAAkB;IAC3G,IAAMiB,WAAWD,QAAQC,QAAQ;IACjC,IAAMC,UAAUD,aAAa,UAAUF,OAAOI,aAAI,CAACC,IAAI,CAACL,MAAM;IAC9D,IAAMM,cAAcF,aAAI,CAACC,IAAI,CAACF,SAAS,gBAAgB;IAEvD,IAAMI,OAAOC,IAAAA,gCAAO,EAACT;IACrB,IAAMU,eAAeF,QAAQA,KAAKG,GAAG,GAAG,CAACH,KAAKG,GAAG,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE,GAAGC,4BAAe;IACjF,IAAMC,WAAWC,KAAKC,GAAG,CAACN,cAAcG,4BAAe;IAEvDI,IAAAA,yBAAU,EAACC,8BAAiB,EAAE,QAAQ,SAACrB,KAAKsB;QAC1C,IAAItB,KAAK,OAAOX,SAASW;QACzB,IAAI;sBAI0BK;YAH5B,IAAMkB,WAAWC,KAAKC,KAAK,SAACH,gBAAAA,0BAAAA,IAAKI,OAAO,uCAAI;YAC5C,IAAMC,aAAaJ,QAAQ,CAAC,AAAC,UAAkB,OAATN,UAAW,IAAIM,QAAQ,CAAC,AAAC,QAAgB,OAATN,UAAW,IAAIM,SAASK,MAAM;YACpG,IAAMC,eAAe,AAAC,GAAwBF,OAAtBG,yBAAY,EAAC,WAAoB,OAAXH,YAAW;YACzD,IAAMI,YAAYvB,aAAI,CAACC,IAAI,EAACJ,qBAAAA,QAAQ0B,SAAS,cAAjB1B,gCAAAA,qBAAqB2B,IAAAA,gBAAM,KAAIxB,aAAI,CAACyB,QAAQ,CAACJ;YAEzE,IAAIK;YACJ,IAAMC,QAAQ,IAAIC,gBAAK,CAAC;YACxBD,MAAME,KAAK,CAAC,SAACC;uBAAOC,IAAAA,2BAAgB,EAACV,cAAcE,WAAW1B,SAAS,SAACL;2BAAQsC,GAAGtC;;;YACnFmC,MAAME,KAAK,CAAC,SAACC;gBACXnD,kBAAkB4C,WAAW,SAAC/B,KAAKV;oBACjC4C,WAAW5C;oBACXgD,GAAGtC;gBACL;YACF;YACAmC,MAAME,KAAK,CAAC,SAACC;uBAAOE,IAAAA,kBAAO,EAACT,WAAWrB,aAAa,SAACV;2BAAQsC,GAAGtC;;;YAChEmC,MAAMM,KAAK,CAAC,SAACzC;gBACXA,MAAMX,SAASW,OAAOX,SAASY,WAAW0B,YAAYO;YACxD;QACF,EAAE,OAAOQ,IAAI;YACX,OAAOrD,SAAS,IAAIsD,MAAM;QAC5B;IACF;AACF"}
@@ -42,20 +42,21 @@ function install(version, dest, options, callback) {
42
42
  ].concat(parts.slice(2)).join('-');
43
43
  });
44
44
  (_constantsts.FILES[filePlatform] || []).forEach(function(x) {
45
- filenames.push(x.filename);
45
+ filenames === null || filenames === void 0 ? void 0 : filenames.push(x.filename);
46
46
  });
47
- filenames.push('src');
48
- filenames = filenames.filter(function(filename, i) {
49
- return filenames.indexOf(filename) === i;
47
+ filenames === null || filenames === void 0 ? void 0 : filenames.push('src');
48
+ filenames = filenames === null || filenames === void 0 ? void 0 : filenames.filter(function(filename, i) {
49
+ return (filenames === null || filenames === void 0 ? void 0 : filenames.indexOf(filename)) === i;
50
50
  });
51
51
  }
52
- var tryNext = function(cb, lastErr) {
53
- if (filenames.length === 0) {
52
+ var tryNext = function tryNext1(cb, lastErr) {
53
+ if (filenames == null || filenames.length === 0) {
54
54
  var msg = "Failed to find installable for ".concat(version).concat(options.filename ? " Filename: ".concat(options.filename) : '');
55
55
  return cb(new Error(lastErr ? "".concat(msg, ": ").concat(lastErr.message) : msg));
56
56
  }
57
- (0, _installFilenamets.default)(filenames.shift(), version, dest, options, function(err, checksum) {
58
- return err ? tryNext(cb, err) : cb(null, checksum);
57
+ var filename = filenames.shift();
58
+ (0, _installFilenamets.default)(filename, version, dest, options, function(err, checksum) {
59
+ return err ? tryNext(cb, err) : cb(undefined, checksum);
59
60
  });
60
61
  };
61
62
  tryNext(function(err, checksum) {
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/index.ts"],"sourcesContent":["import { FILE_PLATFORM_MAP, FILES } from '../constants.ts';\nimport type { ChecksumResult, InstallOptions, NoParamCallback } from '../types.ts';\nimport installFilename from './installFilename.ts';\n\nexport default function install(version: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n let filenames = null;\n\n // a specific filename\n if (options.filename) filenames = [options.filename];\n // infer with fallbacks\n else {\n const { platform, arch } = options;\n const filePlatform = FILE_PLATFORM_MAP[platform] || platform;\n const parts = [filePlatform, arch];\n if (options.type) parts.push(options.type);\n if (options.compression) parts.push(options.compression);\n\n // generate the files in search order\n const archs = [arch, process.arch];\n filenames = archs.map((a) => [filePlatform, a].concat(parts.slice(2)).join('-'));\n (FILES[filePlatform] || []).forEach((x) => {\n filenames.push(x.filename);\n });\n filenames.push('src');\n filenames = filenames.filter((filename, i) => filenames.indexOf(filename) === i);\n }\n\n const tryNext = (cb: (err?: Error, checksum?: ChecksumResult) => void, lastErr?: Error) => {\n if (filenames.length === 0) {\n const msg = `Failed to find installable for ${version}${options.filename ? ` Filename: ${options.filename}` : ''}`;\n return cb(new Error(lastErr ? `${msg}: ${lastErr.message}` : msg));\n }\n installFilename(filenames.shift(), version, dest, options, (err, checksum) => (err ? tryNext(cb, err) : cb(null, checksum)));\n };\n tryNext((err, checksum) => {\n let message = `node ${version.slice(1)}`;\n if (!err) {\n message += ' installed';\n if (checksum) message += ` (${checksum.actual.slice(0, 8)})`;\n } else {\n message += ' install failed';\n if (checksum) message += ` (${checksum.actual} expecting ${checksum.expected})`;\n message += `. Error: ${err.message}`;\n }\n console.log(message);\n callback(err);\n });\n}\n"],"names":["install","version","dest","options","callback","filenames","filename","platform","arch","filePlatform","FILE_PLATFORM_MAP","parts","type","push","compression","archs","process","map","a","concat","slice","join","FILES","forEach","x","filter","i","indexOf","tryNext","cb","lastErr","length","msg","Error","message","installFilename","shift","err","checksum","actual","expected","console","log"],"mappings":";;;;+BAIA;;;eAAwBA;;;2BAJiB;wEAEb;;;;;;AAEb,SAASA,QAAQC,OAAe,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IAC/G,IAAIC,YAAY;IAEhB,sBAAsB;IACtB,IAAIF,QAAQG,QAAQ,EAAED,YAAY;QAACF,QAAQG,QAAQ;KAAC;SAE/C;QACH,IAAQC,WAAmBJ,QAAnBI,UAAUC,OAASL,QAATK;QAClB,IAAMC,eAAeC,8BAAiB,CAACH,SAAS,IAAIA;QACpD,IAAMI,QAAQ;YAACF;YAAcD;SAAK;QAClC,IAAIL,QAAQS,IAAI,EAAED,MAAME,IAAI,CAACV,QAAQS,IAAI;QACzC,IAAIT,QAAQW,WAAW,EAAEH,MAAME,IAAI,CAACV,QAAQW,WAAW;QAEvD,qCAAqC;QACrC,IAAMC,QAAQ;YAACP;YAAMQ,QAAQR,IAAI;SAAC;QAClCH,YAAYU,MAAME,GAAG,CAAC,SAACC;mBAAM;gBAACT;gBAAcS;aAAE,CAACC,MAAM,CAACR,MAAMS,KAAK,CAAC,IAAIC,IAAI,CAAC;;QAC1EC,CAAAA,kBAAK,CAACb,aAAa,IAAI,EAAE,AAAD,EAAGc,OAAO,CAAC,SAACC;YACnCnB,UAAUQ,IAAI,CAACW,EAAElB,QAAQ;QAC3B;QACAD,UAAUQ,IAAI,CAAC;QACfR,YAAYA,UAAUoB,MAAM,CAAC,SAACnB,UAAUoB;mBAAMrB,UAAUsB,OAAO,CAACrB,cAAcoB;;IAChF;IAEA,IAAME,UAAU,SAACC,IAAsDC;QACrE,IAAIzB,UAAU0B,MAAM,KAAK,GAAG;YAC1B,IAAMC,MAAM,AAAC,kCAA2C7B,OAAVF,SAAmE,OAAzDE,QAAQG,QAAQ,GAAG,AAAC,cAA8B,OAAjBH,QAAQG,QAAQ,IAAK;YAC9G,OAAOuB,GAAG,IAAII,MAAMH,UAAU,AAAC,GAAUA,OAARE,KAAI,MAAoB,OAAhBF,QAAQI,OAAO,IAAKF;QAC/D;QACAG,IAAAA,0BAAe,EAAC9B,UAAU+B,KAAK,IAAInC,SAASC,MAAMC,SAAS,SAACkC,KAAKC;mBAAcD,MAAMT,QAAQC,IAAIQ,OAAOR,GAAG,MAAMS;;IACnH;IACAV,QAAQ,SAACS,KAAKC;QACZ,IAAIJ,UAAU,AAAC,QAAwB,OAAjBjC,QAAQmB,KAAK,CAAC;QACpC,IAAI,CAACiB,KAAK;YACRH,WAAW;YACX,IAAII,UAAUJ,WAAW,AAAC,KAAgC,OAA5BI,SAASC,MAAM,CAACnB,KAAK,CAAC,GAAG,IAAG;QAC5D,OAAO;YACLc,WAAW;YACX,IAAII,UAAUJ,WAAW,AAAC,KAAiCI,OAA7BA,SAASC,MAAM,EAAC,eAA+B,OAAlBD,SAASE,QAAQ,EAAC;YAC7EN,WAAW,AAAC,YAAuB,OAAZG,IAAIH,OAAO;QACpC;QACAO,QAAQC,GAAG,CAACR;QACZ9B,SAASiC;IACX;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/index.ts"],"sourcesContent":["import { FILE_PLATFORM_MAP, FILES } from '../constants.ts';\nimport type { ChecksumResult, InstallOptions, NoParamCallback } from '../types.ts';\nimport installFilename from './installFilename.ts';\n\nexport default function install(version: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n let filenames: string[] | null = null;\n\n // a specific filename\n if (options.filename) filenames = [options.filename];\n // infer with fallbacks\n else {\n const { platform, arch } = options;\n const filePlatform = (FILE_PLATFORM_MAP as Record<string, string>)[platform as string] || platform;\n const parts = [filePlatform, arch];\n if (options.type) parts.push(options.type);\n if (options.compression) parts.push(options.compression as unknown as string);\n\n // generate the files in search order\n const archs = [arch, process.arch];\n filenames = archs.map((a) => [filePlatform, a].concat(parts.slice(2)).join('-'));\n ((FILES as Record<string, { filename: string }[]>)[filePlatform as string] || []).forEach((x: { filename: string }) => {\n filenames?.push(x.filename);\n });\n filenames?.push('src');\n filenames = filenames?.filter((filename, i) => filenames?.indexOf(filename) === i);\n }\n\n const tryNext = (cb: (err?: Error, checksum?: ChecksumResult) => void, lastErr?: Error) => {\n if (filenames == null || filenames.length === 0) {\n const msg = `Failed to find installable for ${version}${options.filename ? ` Filename: ${options.filename}` : ''}`;\n return cb(new Error(lastErr ? `${msg}: ${lastErr.message}` : msg));\n }\n const filename = filenames.shift()!;\n installFilename(filename, version, dest, options, (err, checksum) => (err ? tryNext(cb, err) : cb(undefined, checksum)));\n };\n tryNext((err, checksum) => {\n let message = `node ${version.slice(1)}`;\n if (!err) {\n message += ' installed';\n if (checksum) message += ` (${checksum.actual.slice(0, 8)})`;\n } else {\n message += ' install failed';\n if (checksum) message += ` (${checksum.actual} expecting ${checksum.expected})`;\n message += `. Error: ${err.message}`;\n }\n console.log(message);\n callback(err);\n });\n}\n"],"names":["install","version","dest","options","callback","filenames","filename","platform","arch","filePlatform","FILE_PLATFORM_MAP","parts","type","push","compression","archs","process","map","a","concat","slice","join","FILES","forEach","x","filter","i","indexOf","tryNext","cb","lastErr","length","msg","Error","message","shift","installFilename","err","checksum","undefined","actual","expected","console","log"],"mappings":";;;;+BAIA;;;eAAwBA;;;2BAJiB;wEAEb;;;;;;AAEb,SAASA,QAAQC,OAAe,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IAC/G,IAAIC,YAA6B;IAEjC,sBAAsB;IACtB,IAAIF,QAAQG,QAAQ,EAAED,YAAY;QAACF,QAAQG,QAAQ;KAAC;SAE/C;QACH,IAAQC,WAAmBJ,QAAnBI,UAAUC,OAASL,QAATK;QAClB,IAAMC,eAAe,AAACC,8BAAiB,AAA2B,CAACH,SAAmB,IAAIA;QAC1F,IAAMI,QAAQ;YAACF;YAAcD;SAAK;QAClC,IAAIL,QAAQS,IAAI,EAAED,MAAME,IAAI,CAACV,QAAQS,IAAI;QACzC,IAAIT,QAAQW,WAAW,EAAEH,MAAME,IAAI,CAACV,QAAQW,WAAW;QAEvD,qCAAqC;QACrC,IAAMC,QAAQ;YAACP;YAAMQ,QAAQR,IAAI;SAAC;QAClCH,YAAYU,MAAME,GAAG,CAAC,SAACC;mBAAM;gBAACT;gBAAcS;aAAE,CAACC,MAAM,CAACR,MAAMS,KAAK,CAAC,IAAIC,IAAI,CAAC;;QAC1E,CAAA,AAACC,kBAAK,AAA2C,CAACb,aAAuB,IAAI,EAAE,AAAD,EAAGc,OAAO,CAAC,SAACC;YACzFnB,sBAAAA,gCAAAA,UAAWQ,IAAI,CAACW,EAAElB,QAAQ;QAC5B;QACAD,sBAAAA,gCAAAA,UAAWQ,IAAI,CAAC;QAChBR,YAAYA,sBAAAA,gCAAAA,UAAWoB,MAAM,CAAC,SAACnB,UAAUoB;mBAAMrB,CAAAA,sBAAAA,gCAAAA,UAAWsB,OAAO,CAACrB,eAAcoB;;IAClF;IAEA,IAAME,UAAU,kBAACC,IAAsDC;QACrE,IAAIzB,aAAa,QAAQA,UAAU0B,MAAM,KAAK,GAAG;YAC/C,IAAMC,MAAM,AAAC,kCAA2C7B,OAAVF,SAAmE,OAAzDE,QAAQG,QAAQ,GAAG,AAAC,cAA8B,OAAjBH,QAAQG,QAAQ,IAAK;YAC9G,OAAOuB,GAAG,IAAII,MAAMH,UAAU,AAAC,GAAUA,OAARE,KAAI,MAAoB,OAAhBF,QAAQI,OAAO,IAAKF;QAC/D;QACA,IAAM1B,WAAWD,UAAU8B,KAAK;QAChCC,IAAAA,0BAAe,EAAC9B,UAAUL,SAASC,MAAMC,SAAS,SAACkC,KAAKC;mBAAcD,MAAMT,QAAQC,IAAIQ,OAAOR,GAAGU,WAAWD;;IAC/G;IACAV,QAAQ,SAACS,KAAKC;QACZ,IAAIJ,UAAU,AAAC,QAAwB,OAAjBjC,QAAQmB,KAAK,CAAC;QACpC,IAAI,CAACiB,KAAK;YACRH,WAAW;YACX,IAAII,UAAUJ,WAAW,AAAC,KAAgC,OAA5BI,SAASE,MAAM,CAACpB,KAAK,CAAC,GAAG,IAAG;QAC5D,OAAO;YACLc,WAAW;YACX,IAAII,UAAUJ,WAAW,AAAC,KAAiCI,OAA7BA,SAASE,MAAM,EAAC,eAA+B,OAAlBF,SAASG,QAAQ,EAAC;YAC7EP,WAAW,AAAC,YAAuB,OAAZG,IAAIH,OAAO;QACpC;QACAQ,QAAQC,GAAG,CAACT;QACZ9B,SAASiC;IACX;AACF"}
@@ -24,7 +24,11 @@ function installCompressed(distPath, dest, options, callback) {
24
24
  var cachePath = _path.default.join(options.cachePath, _path.default.basename(downloadPath));
25
25
  var checksum;
26
26
  var queue = new _queuecb.default(1);
27
- queue.defer(_conditionalCachets.default.bind(null, downloadPath, cachePath));
27
+ queue.defer(function(cb) {
28
+ return (0, _conditionalCachets.default)(downloadPath, cachePath, options, function(err) {
29
+ return cb(err);
30
+ });
31
+ });
28
32
  queue.defer(function(cb) {
29
33
  (0, _validateDownloadts.default)(distPath, cachePath, function(err, result) {
30
34
  checksum = result;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installCompressed.ts"],"sourcesContent":["import path from 'path';\nimport Queue from 'queue-cb';\n\nimport { NODE_DIST_BASE_URL } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport extract from '../lib/extract.ts';\nimport type { ChecksumCallback, ChecksumResult, InstallOptions } from '../types.ts';\nimport validateDownload from './validateDownload.ts';\n\nexport default function installCompressed(distPath: string, dest: string, options: InstallOptions, callback: ChecksumCallback): void {\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const cachePath = path.join(options.cachePath, path.basename(downloadPath));\n\n let checksum: ChecksumResult | undefined;\n const queue = new Queue(1);\n queue.defer(conditionalCache.bind(null, downloadPath, cachePath));\n queue.defer((cb) => {\n validateDownload(distPath, cachePath, (err, result) => {\n checksum = result;\n cb(err);\n });\n });\n queue.defer(extract.bind(null, cachePath, dest, { strip: 1, time: 1000 }));\n queue.await((err) => callback(err, checksum));\n}\n"],"names":["installCompressed","distPath","dest","options","callback","downloadPath","NODE_DIST_BASE_URL","cachePath","path","join","basename","checksum","queue","Queue","defer","conditionalCache","bind","cb","validateDownload","err","result","extract","strip","time","await"],"mappings":";;;;+BASA;;;eAAwBA;;;2DATP;8DACC;2BAEiB;yEACN;gEACT;yEAES;;;;;;AAEd,SAASA,kBAAkBC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAA0B;IAC3H,IAAMC,eAAe,AAAC,GAAwBJ,OAAtBK,+BAAkB,EAAC,KAAY,OAATL;IAC9C,IAAMM,YAAYC,aAAI,CAACC,IAAI,CAACN,QAAQI,SAAS,EAAEC,aAAI,CAACE,QAAQ,CAACL;IAE7D,IAAIM;IACJ,IAAMC,QAAQ,IAAIC,gBAAK,CAAC;IACxBD,MAAME,KAAK,CAACC,2BAAgB,CAACC,IAAI,CAAC,MAAMX,cAAcE;IACtDK,MAAME,KAAK,CAAC,SAACG;QACXC,IAAAA,2BAAgB,EAACjB,UAAUM,WAAW,SAACY,KAAKC;YAC1CT,WAAWS;YACXH,GAAGE;QACL;IACF;IACAP,MAAME,KAAK,CAACO,kBAAO,CAACL,IAAI,CAAC,MAAMT,WAAWL,MAAM;QAAEoB,OAAO;QAAGC,MAAM;IAAK;IACvEX,MAAMY,KAAK,CAAC,SAACL;eAAQf,SAASe,KAAKR;;AACrC"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installCompressed.ts"],"sourcesContent":["import path from 'path';\nimport Queue from 'queue-cb';\n\nimport { NODE_DIST_BASE_URL } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport extract from '../lib/extract.ts';\nimport type { ChecksumCallback, ChecksumResult, InstallOptions } from '../types.ts';\nimport validateDownload from './validateDownload.ts';\n\nexport default function installCompressed(distPath: string, dest: string, options: InstallOptions, callback: ChecksumCallback): void {\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const cachePath = path.join(options.cachePath!, path.basename(downloadPath));\n\n let checksum: ChecksumResult | undefined;\n const queue = new Queue(1);\n queue.defer((cb) => conditionalCache(downloadPath, cachePath, options, (err) => cb(err)));\n queue.defer((cb) => {\n validateDownload(distPath, cachePath, (err, result) => {\n checksum = result;\n cb(err);\n });\n });\n queue.defer(extract.bind(null, cachePath, dest, { strip: 1, time: 1000 }));\n queue.await((err) => callback(err, checksum));\n}\n"],"names":["installCompressed","distPath","dest","options","callback","downloadPath","NODE_DIST_BASE_URL","cachePath","path","join","basename","checksum","queue","Queue","defer","cb","conditionalCache","err","validateDownload","result","extract","bind","strip","time","await"],"mappings":";;;;+BASA;;;eAAwBA;;;2DATP;8DACC;2BAEiB;yEACN;gEACT;yEAES;;;;;;AAEd,SAASA,kBAAkBC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAA0B;IAC3H,IAAMC,eAAe,AAAC,GAAwBJ,OAAtBK,+BAAkB,EAAC,KAAY,OAATL;IAC9C,IAAMM,YAAYC,aAAI,CAACC,IAAI,CAACN,QAAQI,SAAS,EAAGC,aAAI,CAACE,QAAQ,CAACL;IAE9D,IAAIM;IACJ,IAAMC,QAAQ,IAAIC,gBAAK,CAAC;IACxBD,MAAME,KAAK,CAAC,SAACC;eAAOC,IAAAA,2BAAgB,EAACX,cAAcE,WAAWJ,SAAS,SAACc;mBAAQF,GAAGE;;;IACnFL,MAAME,KAAK,CAAC,SAACC;QACXG,IAAAA,2BAAgB,EAACjB,UAAUM,WAAW,SAACU,KAAKE;YAC1CR,WAAWQ;YACXJ,GAAGE;QACL;IACF;IACAL,MAAME,KAAK,CAACM,kBAAO,CAACC,IAAI,CAAC,MAAMd,WAAWL,MAAM;QAAEoB,OAAO;QAAGC,MAAM;IAAK;IACvEX,MAAMY,KAAK,CAAC,SAACP;eAAQb,SAASa,KAAKN;;AACrC"}
@@ -29,9 +29,21 @@ function installExe(distPath, dest, options, callback) {
29
29
  _fs.default.stat(execPath, function(err) {
30
30
  if (!err) return callback(); // already exists
31
31
  var queue = new _queuecb.default(1);
32
- queue.defer(_conditionalCachets.default.bind(null, downloadPath, cachePath));
33
- queue.defer(_validateDownloadts.default.bind(null, distPath, cachePath));
34
- queue.defer(_copyFilets.default.bind(null, cachePath, execPath));
32
+ queue.defer(function(cb) {
33
+ return (0, _conditionalCachets.default)(downloadPath, cachePath, options, function(err) {
34
+ return cb(err);
35
+ });
36
+ });
37
+ queue.defer(function(cb) {
38
+ return (0, _validateDownloadts.default)(distPath, cachePath, function(err) {
39
+ return cb(err);
40
+ });
41
+ });
42
+ queue.defer(function(cb) {
43
+ return (0, _copyFilets.default)(cachePath, execPath, function(err) {
44
+ return cb(err);
45
+ });
46
+ });
35
47
  queue.await(callback);
36
48
  });
37
49
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installExe.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nimport { NODE_DIST_BASE_URL, NODE_FILE_PATHS } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport copyFile from '../lib/copyFile.ts';\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\nimport validateDownload from './validateDownload.ts';\n\nexport default function installExe(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n const platform = options.platform;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const cachePath = path.join(options.cachePath, `node-${distPath}.exe`);\n const nodePath = NODE_FILE_PATHS[platform] || NODE_FILE_PATHS.posix;\n const execPath = path.join(dest, nodePath);\n\n fs.stat(execPath, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer(conditionalCache.bind(null, downloadPath, cachePath));\n queue.defer(validateDownload.bind(null, distPath, cachePath));\n queue.defer(copyFile.bind(null, cachePath, execPath));\n queue.await(callback);\n });\n}\n"],"names":["installExe","distPath","dest","options","callback","platform","downloadPath","NODE_DIST_BASE_URL","cachePath","path","join","nodePath","NODE_FILE_PATHS","posix","execPath","fs","stat","err","queue","Queue","defer","conditionalCache","bind","validateDownload","copyFile","await"],"mappings":";;;;+BAUA;;;eAAwBA;;;yDAVT;2DACE;8DACC;2BAEkC;yEACvB;iEACR;yEAEQ;;;;;;AAEd,SAASA,WAAWC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACnH,IAAMC,WAAWF,QAAQE,QAAQ;IACjC,IAAMC,eAAe,AAAC,GAAwBL,OAAtBM,+BAAkB,EAAC,KAAY,OAATN;IAC9C,IAAMO,YAAYC,aAAI,CAACC,IAAI,CAACP,QAAQK,SAAS,EAAE,AAAC,QAAgB,OAATP,UAAS;IAChE,IAAMU,WAAWC,4BAAe,CAACP,SAAS,IAAIO,4BAAe,CAACC,KAAK;IACnE,IAAMC,WAAWL,aAAI,CAACC,IAAI,CAACR,MAAMS;IAEjCI,WAAE,CAACC,IAAI,CAACF,UAAU,SAACG;QACjB,IAAI,CAACA,KAAK,OAAOb,YAAY,iBAAiB;QAE9C,IAAMc,QAAQ,IAAIC,gBAAK,CAAC;QACxBD,MAAME,KAAK,CAACC,2BAAgB,CAACC,IAAI,CAAC,MAAMhB,cAAcE;QACtDU,MAAME,KAAK,CAACG,2BAAgB,CAACD,IAAI,CAAC,MAAMrB,UAAUO;QAClDU,MAAME,KAAK,CAACI,mBAAQ,CAACF,IAAI,CAAC,MAAMd,WAAWM;QAC3CI,MAAMO,KAAK,CAACrB;IACd;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installExe.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nimport { NODE_DIST_BASE_URL, NODE_FILE_PATHS } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport copyFile from '../lib/copyFile.ts';\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\nimport validateDownload from './validateDownload.ts';\n\nexport default function installExe(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n const platform = options.platform;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const cachePath = path.join(options.cachePath!, `node-${distPath}.exe`);\n const nodePath = (NODE_FILE_PATHS as Record<string, string>)[platform as string] || NODE_FILE_PATHS.posix;\n const execPath = path.join(dest, nodePath);\n\n fs.stat(execPath, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer((cb) => conditionalCache(downloadPath, cachePath, options, (err) => cb(err)));\n queue.defer((cb) => validateDownload(distPath, cachePath, (err) => cb(err)));\n queue.defer((cb) => copyFile(cachePath, execPath, (err) => cb(err)));\n queue.await(callback);\n });\n}\n"],"names":["installExe","distPath","dest","options","callback","platform","downloadPath","NODE_DIST_BASE_URL","cachePath","path","join","nodePath","NODE_FILE_PATHS","posix","execPath","fs","stat","err","queue","Queue","defer","cb","conditionalCache","validateDownload","copyFile","await"],"mappings":";;;;+BAUA;;;eAAwBA;;;yDAVT;2DACE;8DACC;2BAEkC;yEACvB;iEACR;yEAEQ;;;;;;AAEd,SAASA,WAAWC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACnH,IAAMC,WAAWF,QAAQE,QAAQ;IACjC,IAAMC,eAAe,AAAC,GAAwBL,OAAtBM,+BAAkB,EAAC,KAAY,OAATN;IAC9C,IAAMO,YAAYC,aAAI,CAACC,IAAI,CAACP,QAAQK,SAAS,EAAG,AAAC,QAAgB,OAATP,UAAS;IACjE,IAAMU,WAAW,AAACC,4BAAe,AAA2B,CAACP,SAAmB,IAAIO,4BAAe,CAACC,KAAK;IACzG,IAAMC,WAAWL,aAAI,CAACC,IAAI,CAACR,MAAMS;IAEjCI,WAAE,CAACC,IAAI,CAACF,UAAU,SAACG;QACjB,IAAI,CAACA,KAAK,OAAOb,YAAY,iBAAiB;QAE9C,IAAMc,QAAQ,IAAIC,gBAAK,CAAC;QACxBD,MAAME,KAAK,CAAC,SAACC;mBAAOC,IAAAA,2BAAgB,EAAChB,cAAcE,WAAWL,SAAS,SAACc;uBAAQI,GAAGJ;;;QACnFC,MAAME,KAAK,CAAC,SAACC;mBAAOE,IAAAA,2BAAgB,EAACtB,UAAUO,WAAW,SAACS;uBAAQI,GAAGJ;;;QACtEC,MAAME,KAAK,CAAC,SAACC;mBAAOG,IAAAA,mBAAQ,EAAChB,WAAWM,UAAU,SAACG;uBAAQI,GAAGJ;;;QAC9DC,MAAMO,KAAK,CAACrB;IACd;AACF"}
@@ -22,18 +22,26 @@ function installPosix(buildPath, dest, _options, callback) {
22
22
  _fs.default.stat(buildTarget, function(err) {
23
23
  if (!err) return callback(); // already exists
24
24
  var queue = new _queuecb.default(1);
25
- queue.defer(_crossspawncb.default.bind(null, './configure', [
26
- "--prefix=".concat(dest)
27
- ], {
28
- stdio: 'inherit',
29
- cwd: buildPath
30
- }));
31
- queue.defer(_crossspawncb.default.bind(null, 'make', [
32
- 'install'
33
- ], {
34
- stdio: 'inherit',
35
- cwd: buildPath
36
- }, callback));
25
+ queue.defer(function(cb) {
26
+ return (0, _crossspawncb.default)('./configure', [
27
+ "--prefix=".concat(dest)
28
+ ], {
29
+ stdio: 'inherit',
30
+ cwd: buildPath
31
+ }, function(err) {
32
+ return cb(err);
33
+ });
34
+ });
35
+ queue.defer(function(cb) {
36
+ return (0, _crossspawncb.default)('make', [
37
+ 'install'
38
+ ], {
39
+ stdio: 'inherit',
40
+ cwd: buildPath
41
+ }, function(err) {
42
+ return cb(err);
43
+ });
44
+ });
37
45
  queue.await(callback);
38
46
  });
39
47
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/buildPosix.ts"],"sourcesContent":["import spawn from 'cross-spawn-cb';\nimport fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nimport type { InstallOptions, NoParamCallback } from '../../types.ts';\n\nexport default function installPosix(buildPath: string, dest: string, _options: InstallOptions, callback: NoParamCallback): void {\n const buildTarget = path.join(dest, 'node');\n\n fs.stat(buildTarget, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer(spawn.bind(null, './configure', [`--prefix=${dest}`], { stdio: 'inherit', cwd: buildPath }));\n queue.defer(spawn.bind(null, 'make', ['install'], { stdio: 'inherit', cwd: buildPath }, callback));\n queue.await(callback);\n });\n}\n"],"names":["installPosix","buildPath","dest","_options","callback","buildTarget","path","join","fs","stat","err","queue","Queue","defer","spawn","bind","stdio","cwd","await"],"mappings":";;;;+BAOA;;;eAAwBA;;;mEAPN;yDACH;2DACE;8DACC;;;;;;AAIH,SAASA,aAAaC,SAAiB,EAAEC,IAAY,EAAEC,QAAwB,EAAEC,QAAyB;IACvH,IAAMC,cAAcC,aAAI,CAACC,IAAI,CAACL,MAAM;IAEpCM,WAAE,CAACC,IAAI,CAACJ,aAAa,SAACK;QACpB,IAAI,CAACA,KAAK,OAAON,YAAY,iBAAiB;QAE9C,IAAMO,QAAQ,IAAIC,gBAAK,CAAC;QACxBD,MAAME,KAAK,CAACC,qBAAK,CAACC,IAAI,CAAC,MAAM,eAAe;YAAE,YAAgB,OAALb;SAAO,EAAE;YAAEc,OAAO;YAAWC,KAAKhB;QAAU;QACrGU,MAAME,KAAK,CAACC,qBAAK,CAACC,IAAI,CAAC,MAAM,QAAQ;YAAC;SAAU,EAAE;YAAEC,OAAO;YAAWC,KAAKhB;QAAU,GAAGG;QACxFO,MAAMO,KAAK,CAACd;IACd;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/buildPosix.ts"],"sourcesContent":["import spawn from 'cross-spawn-cb';\nimport fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nimport type { InstallOptions, NoParamCallback } from '../../types.ts';\n\nexport default function installPosix(buildPath: string, dest: string, _options: InstallOptions, callback: NoParamCallback): void {\n const buildTarget = path.join(dest, 'node');\n\n fs.stat(buildTarget, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer((cb) => spawn('./configure', [`--prefix=${dest}`], { stdio: 'inherit', cwd: buildPath }, (err) => cb(err)));\n queue.defer((cb) => spawn('make', ['install'], { stdio: 'inherit', cwd: buildPath }, (err) => cb(err)));\n queue.await(callback);\n });\n}\n"],"names":["installPosix","buildPath","dest","_options","callback","buildTarget","path","join","fs","stat","err","queue","Queue","defer","cb","spawn","stdio","cwd","await"],"mappings":";;;;+BAOA;;;eAAwBA;;;mEAPN;yDACH;2DACE;8DACC;;;;;;AAIH,SAASA,aAAaC,SAAiB,EAAEC,IAAY,EAAEC,QAAwB,EAAEC,QAAyB;IACvH,IAAMC,cAAcC,aAAI,CAACC,IAAI,CAACL,MAAM;IAEpCM,WAAE,CAACC,IAAI,CAACJ,aAAa,SAACK;QACpB,IAAI,CAACA,KAAK,OAAON,YAAY,iBAAiB;QAE9C,IAAMO,QAAQ,IAAIC,gBAAK,CAAC;QACxBD,MAAME,KAAK,CAAC,SAACC;mBAAOC,IAAAA,qBAAK,EAAC,eAAe;gBAAE,YAAgB,OAALb;aAAO,EAAE;gBAAEc,OAAO;gBAAWC,KAAKhB;YAAU,GAAG,SAACS;uBAAQI,GAAGJ;;;QACjHC,MAAME,KAAK,CAAC,SAACC;mBAAOC,IAAAA,qBAAK,EAAC,QAAQ;gBAAC;aAAU,EAAE;gBAAEC,OAAO;gBAAWC,KAAKhB;YAAU,GAAG,SAACS;uBAAQI,GAAGJ;;;QACjGC,MAAMO,KAAK,CAACd;IACd;AACF"}
@@ -24,13 +24,25 @@ function installWin32(buildPath, dest, _options, callback) {
24
24
  _fs.default.stat(buildTarget, function(err) {
25
25
  if (!err) return callback(); // already exists
26
26
  var queue = new _queuecb.default(1);
27
- queue.defer(_fs.default.stat.bind(null, buildSource, function(err) {
28
- return !err ? callback() : (0, _crossspawncb.default)('./vcbuild', [], {
29
- stdio: 'inherit',
30
- cwd: buildPath
27
+ queue.defer(function(cb) {
28
+ _fs.default.stat(buildSource, function(err) {
29
+ if (!err) {
30
+ callback();
31
+ return;
32
+ }
33
+ (0, _crossspawncb.default)('./vcbuild', [], {
34
+ stdio: 'inherit',
35
+ cwd: buildPath
36
+ }, function(spawnErr) {
37
+ return cb(spawnErr);
38
+ });
31
39
  });
32
- }));
33
- queue.defer(_conditionalCopyts.default.bind(null, buildSource, buildTarget, false));
40
+ });
41
+ queue.defer(function(cb) {
42
+ return (0, _conditionalCopyts.default)(buildSource, buildTarget, false, function(err) {
43
+ return cb(err);
44
+ });
45
+ });
34
46
  queue.await(callback);
35
47
  });
36
48
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/buildWin32.ts"],"sourcesContent":["import spawn from 'cross-spawn-cb';\nimport fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport conditionalCopy from '../../lib/conditionalCopy.ts';\n\nimport type { InstallOptions, NoParamCallback } from '../../types.ts';\n\nexport default function installWin32(buildPath: string, dest: string, _options: InstallOptions, callback: NoParamCallback): void {\n const buildSource = path.join(buildPath, 'out', 'Release', 'node.exe');\n const buildTarget = path.join(dest, 'node.exe');\n\n fs.stat(buildTarget, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer(fs.stat.bind(null, buildSource, (err) => (!err ? callback() : spawn('./vcbuild', [], { stdio: 'inherit', cwd: buildPath }))));\n queue.defer(conditionalCopy.bind(null, buildSource, buildTarget, false));\n queue.await(callback);\n });\n}\n"],"names":["installWin32","buildPath","dest","_options","callback","buildSource","path","join","buildTarget","fs","stat","err","queue","Queue","defer","bind","spawn","stdio","cwd","conditionalCopy","await"],"mappings":";;;;+BAQA;;;eAAwBA;;;mEARN;yDACH;2DACE;8DACC;wEACU;;;;;;AAIb,SAASA,aAAaC,SAAiB,EAAEC,IAAY,EAAEC,QAAwB,EAAEC,QAAyB;IACvH,IAAMC,cAAcC,aAAI,CAACC,IAAI,CAACN,WAAW,OAAO,WAAW;IAC3D,IAAMO,cAAcF,aAAI,CAACC,IAAI,CAACL,MAAM;IAEpCO,WAAE,CAACC,IAAI,CAACF,aAAa,SAACG;QACpB,IAAI,CAACA,KAAK,OAAOP,YAAY,iBAAiB;QAE9C,IAAMQ,QAAQ,IAAIC,gBAAK,CAAC;QACxBD,MAAME,KAAK,CAACL,WAAE,CAACC,IAAI,CAACK,IAAI,CAAC,MAAMV,aAAa,SAACM;mBAAS,CAACA,MAAMP,aAAaY,IAAAA,qBAAK,EAAC,aAAa,EAAE,EAAE;gBAAEC,OAAO;gBAAWC,KAAKjB;YAAU;;QACpIW,MAAME,KAAK,CAACK,0BAAe,CAACJ,IAAI,CAAC,MAAMV,aAAaG,aAAa;QACjEI,MAAMQ,KAAK,CAAChB;IACd;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/buildWin32.ts"],"sourcesContent":["import spawn from 'cross-spawn-cb';\nimport fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport conditionalCopy from '../../lib/conditionalCopy.ts';\n\nimport type { InstallOptions, NoParamCallback } from '../../types.ts';\n\nexport default function installWin32(buildPath: string, dest: string, _options: InstallOptions, callback: NoParamCallback): void {\n const buildSource = path.join(buildPath, 'out', 'Release', 'node.exe');\n const buildTarget = path.join(dest, 'node.exe');\n\n fs.stat(buildTarget, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer((cb) => {\n fs.stat(buildSource, (err: NodeJS.ErrnoException | null) => {\n if (!err) {\n callback();\n return;\n }\n spawn('./vcbuild', [], { stdio: 'inherit', cwd: buildPath }, (spawnErr) => cb(spawnErr));\n });\n });\n queue.defer((cb) => conditionalCopy(buildSource, buildTarget, false, (err) => cb(err)));\n queue.await(callback);\n });\n}\n"],"names":["installWin32","buildPath","dest","_options","callback","buildSource","path","join","buildTarget","fs","stat","err","queue","Queue","defer","cb","spawn","stdio","cwd","spawnErr","conditionalCopy","await"],"mappings":";;;;+BAQA;;;eAAwBA;;;mEARN;yDACH;2DACE;8DACC;wEACU;;;;;;AAIb,SAASA,aAAaC,SAAiB,EAAEC,IAAY,EAAEC,QAAwB,EAAEC,QAAyB;IACvH,IAAMC,cAAcC,aAAI,CAACC,IAAI,CAACN,WAAW,OAAO,WAAW;IAC3D,IAAMO,cAAcF,aAAI,CAACC,IAAI,CAACL,MAAM;IAEpCO,WAAE,CAACC,IAAI,CAACF,aAAa,SAACG;QACpB,IAAI,CAACA,KAAK,OAAOP,YAAY,iBAAiB;QAE9C,IAAMQ,QAAQ,IAAIC,gBAAK,CAAC;QACxBD,MAAME,KAAK,CAAC,SAACC;YACXN,WAAE,CAACC,IAAI,CAACL,aAAa,SAACM;gBACpB,IAAI,CAACA,KAAK;oBACRP;oBACA;gBACF;gBACAY,IAAAA,qBAAK,EAAC,aAAa,EAAE,EAAE;oBAAEC,OAAO;oBAAWC,KAAKjB;gBAAU,GAAG,SAACkB;2BAAaJ,GAAGI;;YAChF;QACF;QACAP,MAAME,KAAK,CAAC,SAACC;mBAAOK,IAAAA,0BAAe,EAACf,aAAaG,aAAa,OAAO,SAACG;uBAAQI,GAAGJ;;;QACjFC,MAAMS,KAAK,CAACjB;IACd;AACF"}
@@ -31,10 +31,26 @@ function InstallSource(distPath, dest, options, callback) {
31
31
  var tempBuildPath = (0, _tempsuffix.default)(_path.default.join(options.buildPath, _path.default.basename(distPath)));
32
32
  var cachePath = _path.default.join(options.cachePath, _path.default.basename(downloadPath));
33
33
  var queue = new _queuecb.default(1);
34
- queue.defer(_conditionalCachets.default.bind(null, downloadPath, cachePath));
35
- queue.defer(_validateDownloadts.default.bind(null, distPath, cachePath));
36
- queue.defer(_extractts.default.bind(null, cachePath, tempBuildPath));
37
- queue.defer(build.bind(null, tempBuildPath, dest, options));
34
+ queue.defer(function(cb) {
35
+ return (0, _conditionalCachets.default)(downloadPath, cachePath, options, function(err) {
36
+ return cb(err);
37
+ });
38
+ });
39
+ queue.defer(function(cb) {
40
+ return (0, _validateDownloadts.default)(distPath, cachePath, function(err) {
41
+ return cb(err);
42
+ });
43
+ });
44
+ queue.defer(function(cb) {
45
+ return (0, _extractts.default)(cachePath, tempBuildPath, function(err) {
46
+ return cb(err);
47
+ });
48
+ });
49
+ queue.defer(function(cb) {
50
+ return build(tempBuildPath, dest, options, function(err) {
51
+ return cb(err);
52
+ });
53
+ });
38
54
  queue.await(function(err) {
39
55
  // Always clean up temp build directory
40
56
  (0, _fsremovecompat.safeRm)(tempBuildPath, function() {
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/index.ts"],"sourcesContent":["import { safeRm } from 'fs-remove-compat';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport tempSuffix from 'temp-suffix';\n\nimport { NODE_DIST_BASE_URL } from '../../constants.ts';\nimport conditionalCache from '../../lib/conditionalCache.ts';\nimport extract from '../../lib/extract.ts';\nimport type { InstallOptions, NoParamCallback } from '../../types.ts';\nimport validateDownload from '../validateDownload.ts';\nimport buildPosix from './buildPosix.ts';\nimport buildWin32 from './buildWin32.ts';\n\nexport default function InstallSource(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n const platform = options.platform;\n const build = platform === 'win32' ? buildWin32 : buildPosix;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n // Use temp build path to avoid race conditions with parallel builds\n const tempBuildPath = tempSuffix(path.join(options.buildPath, path.basename(distPath)));\n const cachePath = path.join(options.cachePath, path.basename(downloadPath));\n\n const queue = new Queue(1);\n queue.defer(conditionalCache.bind(null, downloadPath, cachePath));\n queue.defer(validateDownload.bind(null, distPath, cachePath));\n queue.defer(extract.bind(null, cachePath, tempBuildPath));\n queue.defer(build.bind(null, tempBuildPath, dest, options));\n queue.await((err) => {\n // Always clean up temp build directory\n safeRm(tempBuildPath, () => callback(err));\n });\n}\n"],"names":["InstallSource","distPath","dest","options","callback","platform","build","buildWin32","buildPosix","downloadPath","NODE_DIST_BASE_URL","tempBuildPath","tempSuffix","path","join","buildPath","basename","cachePath","queue","Queue","defer","conditionalCache","bind","validateDownload","extract","await","err","safeRm"],"mappings":";;;;+BAaA;;;eAAwBA;;;8BAbD;2DACN;8DACC;iEACK;2BAEY;yEACN;gEACT;yEAES;mEACN;mEACA;;;;;;AAER,SAASA,cAAcC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACtH,IAAMC,WAAWF,QAAQE,QAAQ;IACjC,IAAMC,QAAQD,aAAa,UAAUE,qBAAU,GAAGC,qBAAU;IAC5D,IAAMC,eAAe,AAAC,GAAwBR,OAAtBS,+BAAkB,EAAC,KAAY,OAATT;IAC9C,oEAAoE;IACpE,IAAMU,gBAAgBC,IAAAA,mBAAU,EAACC,aAAI,CAACC,IAAI,CAACX,QAAQY,SAAS,EAAEF,aAAI,CAACG,QAAQ,CAACf;IAC5E,IAAMgB,YAAYJ,aAAI,CAACC,IAAI,CAACX,QAAQc,SAAS,EAAEJ,aAAI,CAACG,QAAQ,CAACP;IAE7D,IAAMS,QAAQ,IAAIC,gBAAK,CAAC;IACxBD,MAAME,KAAK,CAACC,2BAAgB,CAACC,IAAI,CAAC,MAAMb,cAAcQ;IACtDC,MAAME,KAAK,CAACG,2BAAgB,CAACD,IAAI,CAAC,MAAMrB,UAAUgB;IAClDC,MAAME,KAAK,CAACI,kBAAO,CAACF,IAAI,CAAC,MAAML,WAAWN;IAC1CO,MAAME,KAAK,CAACd,MAAMgB,IAAI,CAAC,MAAMX,eAAeT,MAAMC;IAClDe,MAAMO,KAAK,CAAC,SAACC;QACX,uCAAuC;QACvCC,IAAAA,sBAAM,EAAChB,eAAe;mBAAMP,SAASsB;;IACvC;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/index.ts"],"sourcesContent":["import { safeRm } from 'fs-remove-compat';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport tempSuffix from 'temp-suffix';\n\nimport { NODE_DIST_BASE_URL } from '../../constants.ts';\nimport conditionalCache from '../../lib/conditionalCache.ts';\nimport extract from '../../lib/extract.ts';\nimport type { InstallOptions, NoParamCallback } from '../../types.ts';\nimport validateDownload from '../validateDownload.ts';\nimport buildPosix from './buildPosix.ts';\nimport buildWin32 from './buildWin32.ts';\n\nexport default function InstallSource(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): void {\n const platform = options.platform;\n const build = platform === 'win32' ? buildWin32 : buildPosix;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n // Use temp build path to avoid race conditions with parallel builds\n const tempBuildPath = tempSuffix(path.join(options.buildPath!, path.basename(distPath)));\n const cachePath = path.join(options.cachePath!, path.basename(downloadPath));\n\n const queue = new Queue(1);\n queue.defer((cb) => conditionalCache(downloadPath, cachePath, options, (err) => cb(err)));\n queue.defer((cb) => validateDownload(distPath, cachePath, (err) => cb(err)));\n queue.defer((cb) => extract(cachePath, tempBuildPath, (err) => cb(err)));\n queue.defer((cb) => build(tempBuildPath, dest, options, (err) => cb(err)));\n queue.await((err) => {\n // Always clean up temp build directory\n safeRm(tempBuildPath, () => callback(err));\n });\n}\n"],"names":["InstallSource","distPath","dest","options","callback","platform","build","buildWin32","buildPosix","downloadPath","NODE_DIST_BASE_URL","tempBuildPath","tempSuffix","path","join","buildPath","basename","cachePath","queue","Queue","defer","cb","conditionalCache","err","validateDownload","extract","await","safeRm"],"mappings":";;;;+BAaA;;;eAAwBA;;;8BAbD;2DACN;8DACC;iEACK;2BAEY;yEACN;gEACT;yEAES;mEACN;mEACA;;;;;;AAER,SAASA,cAAcC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACtH,IAAMC,WAAWF,QAAQE,QAAQ;IACjC,IAAMC,QAAQD,aAAa,UAAUE,qBAAU,GAAGC,qBAAU;IAC5D,IAAMC,eAAe,AAAC,GAAwBR,OAAtBS,+BAAkB,EAAC,KAAY,OAATT;IAC9C,oEAAoE;IACpE,IAAMU,gBAAgBC,IAAAA,mBAAU,EAACC,aAAI,CAACC,IAAI,CAACX,QAAQY,SAAS,EAAGF,aAAI,CAACG,QAAQ,CAACf;IAC7E,IAAMgB,YAAYJ,aAAI,CAACC,IAAI,CAACX,QAAQc,SAAS,EAAGJ,aAAI,CAACG,QAAQ,CAACP;IAE9D,IAAMS,QAAQ,IAAIC,gBAAK,CAAC;IACxBD,MAAME,KAAK,CAAC,SAACC;eAAOC,IAAAA,2BAAgB,EAACb,cAAcQ,WAAWd,SAAS,SAACoB;mBAAQF,GAAGE;;;IACnFL,MAAME,KAAK,CAAC,SAACC;eAAOG,IAAAA,2BAAgB,EAACvB,UAAUgB,WAAW,SAACM;mBAAQF,GAAGE;;;IACtEL,MAAME,KAAK,CAAC,SAACC;eAAOI,IAAAA,kBAAO,EAACR,WAAWN,eAAe,SAACY;mBAAQF,GAAGE;;;IAClEL,MAAME,KAAK,CAAC,SAACC;eAAOf,MAAMK,eAAeT,MAAMC,SAAS,SAACoB;mBAAQF,GAAGE;;;IACpEL,MAAMQ,KAAK,CAAC,SAACH;QACX,uCAAuC;QACvCI,IAAAA,sBAAM,EAAChB,eAAe;mBAAMP,SAASmB;;IACvC;AACF"}