node-install-release 1.12.4 → 1.13.0

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 (137) hide show
  1. package/dist/cjs/cli.d.cts +1 -1
  2. package/dist/cjs/cli.d.ts +1 -1
  3. package/dist/cjs/cli.js.map +1 -1
  4. package/dist/cjs/constants.d.cts +8 -23
  5. package/dist/cjs/constants.d.ts +8 -23
  6. package/dist/cjs/constants.js.map +1 -1
  7. package/dist/cjs/createStoragePaths.js.map +1 -1
  8. package/dist/cjs/files.d.cts +2 -1
  9. package/dist/cjs/files.d.ts +2 -1
  10. package/dist/cjs/files.js +1 -2
  11. package/dist/cjs/files.js.map +1 -1
  12. package/dist/cjs/index.d.cts +4 -1
  13. package/dist/cjs/index.d.ts +4 -1
  14. package/dist/cjs/index.js +1 -1
  15. package/dist/cjs/index.js.map +1 -1
  16. package/dist/cjs/installNPM/index.d.cts +2 -1
  17. package/dist/cjs/installNPM/index.d.ts +2 -1
  18. package/dist/cjs/installNPM/index.js.map +1 -1
  19. package/dist/cjs/installNPM/installBin.d.cts +2 -1
  20. package/dist/cjs/installNPM/installBin.d.ts +2 -1
  21. package/dist/cjs/installNPM/installBin.js.map +1 -1
  22. package/dist/cjs/installNPM/installLib.d.cts +3 -1
  23. package/dist/cjs/installNPM/installLib.d.ts +3 -1
  24. package/dist/cjs/installNPM/installLib.js.map +1 -1
  25. package/dist/cjs/installNode/index.d.cts +2 -1
  26. package/dist/cjs/installNode/index.d.ts +2 -1
  27. package/dist/cjs/installNode/index.js.map +1 -1
  28. package/dist/cjs/installNode/installCompressed.d.cts +2 -1
  29. package/dist/cjs/installNode/installCompressed.d.ts +2 -1
  30. package/dist/cjs/installNode/installCompressed.js.map +1 -1
  31. package/dist/cjs/installNode/installExe.d.cts +2 -1
  32. package/dist/cjs/installNode/installExe.d.ts +2 -1
  33. package/dist/cjs/installNode/installExe.js.map +1 -1
  34. package/dist/cjs/installNode/installFilename.d.cts +2 -1
  35. package/dist/cjs/installNode/installFilename.d.ts +2 -1
  36. package/dist/cjs/installNode/installFilename.js +8 -2
  37. package/dist/cjs/installNode/installFilename.js.map +1 -1
  38. package/dist/cjs/installNode/installSource/buildPosix.d.cts +2 -1
  39. package/dist/cjs/installNode/installSource/buildPosix.d.ts +2 -1
  40. package/dist/cjs/installNode/installSource/buildPosix.js.map +1 -1
  41. package/dist/cjs/installNode/installSource/buildWin32.d.cts +2 -1
  42. package/dist/cjs/installNode/installSource/buildWin32.d.ts +2 -1
  43. package/dist/cjs/installNode/installSource/buildWin32.js.map +1 -1
  44. package/dist/cjs/installNode/installSource/index.d.cts +2 -1
  45. package/dist/cjs/installNode/installSource/index.d.ts +2 -1
  46. package/dist/cjs/installNode/installSource/index.js.map +1 -1
  47. package/dist/cjs/installNode/validateDownload.d.cts +2 -1
  48. package/dist/cjs/installNode/validateDownload.d.ts +2 -1
  49. package/dist/cjs/installNode/validateDownload.js +4 -1
  50. package/dist/cjs/installNode/validateDownload.js.map +1 -1
  51. package/dist/cjs/lib/checkMissing.d.cts +3 -1
  52. package/dist/cjs/lib/checkMissing.d.ts +3 -1
  53. package/dist/cjs/lib/checkMissing.js.map +1 -1
  54. package/dist/cjs/lib/conditionalCache.d.cts +2 -1
  55. package/dist/cjs/lib/conditionalCache.d.ts +2 -1
  56. package/dist/cjs/lib/conditionalCache.js.map +1 -1
  57. package/dist/cjs/lib/conditionalCopy.d.cts +2 -1
  58. package/dist/cjs/lib/conditionalCopy.d.ts +2 -1
  59. package/dist/cjs/lib/conditionalCopy.js +4 -1
  60. package/dist/cjs/lib/conditionalCopy.js.map +1 -1
  61. package/dist/cjs/lib/conditionalExtract.d.cts +2 -1
  62. package/dist/cjs/lib/conditionalExtract.d.ts +2 -1
  63. package/dist/cjs/lib/conditionalExtract.js.map +1 -1
  64. package/dist/cjs/lib/copyFile.d.cts +2 -1
  65. package/dist/cjs/lib/copyFile.d.ts +2 -1
  66. package/dist/cjs/lib/copyFile.js.map +1 -1
  67. package/dist/cjs/lib/ensureDestinationParent.d.cts +2 -1
  68. package/dist/cjs/lib/ensureDestinationParent.d.ts +2 -1
  69. package/dist/cjs/lib/ensureDestinationParent.js +4 -1
  70. package/dist/cjs/lib/ensureDestinationParent.js.map +1 -1
  71. package/dist/cjs/lib/getTarget.d.cts +2 -4
  72. package/dist/cjs/lib/getTarget.d.ts +2 -4
  73. package/dist/cjs/lib/getTarget.js.map +1 -1
  74. package/dist/cjs/types.d.cts +20 -1
  75. package/dist/cjs/types.d.ts +20 -1
  76. package/dist/cjs/workers/install.d.cts +2 -1
  77. package/dist/cjs/workers/install.d.ts +2 -1
  78. package/dist/cjs/workers/install.js +19 -7
  79. package/dist/cjs/workers/install.js.map +1 -1
  80. package/dist/esm/cli.d.ts +1 -1
  81. package/dist/esm/cli.js.map +1 -1
  82. package/dist/esm/constants.d.ts +8 -23
  83. package/dist/esm/constants.js +0 -1
  84. package/dist/esm/constants.js.map +1 -1
  85. package/dist/esm/createStoragePaths.js.map +1 -1
  86. package/dist/esm/files.d.ts +2 -1
  87. package/dist/esm/files.js +1 -2
  88. package/dist/esm/files.js.map +1 -1
  89. package/dist/esm/index.d.ts +4 -1
  90. package/dist/esm/index.js +3 -1
  91. package/dist/esm/index.js.map +1 -1
  92. package/dist/esm/installNPM/index.d.ts +2 -1
  93. package/dist/esm/installNPM/index.js.map +1 -1
  94. package/dist/esm/installNPM/installBin.d.ts +2 -1
  95. package/dist/esm/installNPM/installBin.js.map +1 -1
  96. package/dist/esm/installNPM/installLib.d.ts +3 -1
  97. package/dist/esm/installNPM/installLib.js.map +1 -1
  98. package/dist/esm/installNode/index.d.ts +2 -1
  99. package/dist/esm/installNode/index.js.map +1 -1
  100. package/dist/esm/installNode/installCompressed.d.ts +2 -1
  101. package/dist/esm/installNode/installCompressed.js.map +1 -1
  102. package/dist/esm/installNode/installExe.d.ts +2 -1
  103. package/dist/esm/installNode/installExe.js.map +1 -1
  104. package/dist/esm/installNode/installFilename.d.ts +2 -1
  105. package/dist/esm/installNode/installFilename.js +8 -2
  106. package/dist/esm/installNode/installFilename.js.map +1 -1
  107. package/dist/esm/installNode/installSource/buildPosix.d.ts +2 -1
  108. package/dist/esm/installNode/installSource/buildPosix.js.map +1 -1
  109. package/dist/esm/installNode/installSource/buildWin32.d.ts +2 -1
  110. package/dist/esm/installNode/installSource/buildWin32.js.map +1 -1
  111. package/dist/esm/installNode/installSource/index.d.ts +2 -1
  112. package/dist/esm/installNode/installSource/index.js.map +1 -1
  113. package/dist/esm/installNode/validateDownload.d.ts +2 -1
  114. package/dist/esm/installNode/validateDownload.js +4 -1
  115. package/dist/esm/installNode/validateDownload.js.map +1 -1
  116. package/dist/esm/lib/checkMissing.d.ts +3 -1
  117. package/dist/esm/lib/checkMissing.js.map +1 -1
  118. package/dist/esm/lib/conditionalCache.d.ts +2 -1
  119. package/dist/esm/lib/conditionalCache.js.map +1 -1
  120. package/dist/esm/lib/conditionalCopy.d.ts +2 -1
  121. package/dist/esm/lib/conditionalCopy.js +4 -1
  122. package/dist/esm/lib/conditionalCopy.js.map +1 -1
  123. package/dist/esm/lib/conditionalExtract.d.ts +2 -1
  124. package/dist/esm/lib/conditionalExtract.js.map +1 -1
  125. package/dist/esm/lib/copyFile.d.ts +2 -1
  126. package/dist/esm/lib/copyFile.js.map +1 -1
  127. package/dist/esm/lib/ensureDestinationParent.d.ts +2 -1
  128. package/dist/esm/lib/ensureDestinationParent.js +4 -1
  129. package/dist/esm/lib/ensureDestinationParent.js.map +1 -1
  130. package/dist/esm/lib/getTarget.d.ts +2 -4
  131. package/dist/esm/lib/getTarget.js.map +1 -1
  132. package/dist/esm/types.d.ts +20 -1
  133. package/dist/esm/types.js.map +1 -1
  134. package/dist/esm/workers/install.d.ts +2 -1
  135. package/dist/esm/workers/install.js +17 -5
  136. package/dist/esm/workers/install.js.map +1 -1
  137. package/package.json +4 -4
@@ -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 installFilename from './installFilename.ts';\n\nexport default function install(version, dest, options, callback) {\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) => filenames.push(x.filename));\n filenames.push('src');\n filenames = filenames.filter((filename, i) => filenames.indexOf(filename) === i);\n }\n\n const tryNext = (cb) => {\n if (filenames.length === 0) return cb(new Error(`Failed to find installable for ${version}${options.filename ? ` Filename: ${options.filename}` : ''}`));\n installFilename(filenames.shift(), version, dest, options, (err) => (err ? tryNext(cb) : cb()));\n };\n tryNext((err) => {\n console.log(`node ${version.slice(1)} ${!err ? 'installed' : `install failed. Error: ${err.message}`}`);\n callback(err);\n });\n}\n"],"names":["FILE_PLATFORM_MAP","FILES","installFilename","install","version","dest","options","callback","filenames","filename","platform","arch","filePlatform","parts","type","push","compression","archs","process","map","a","concat","slice","join","forEach","x","filter","i","indexOf","tryNext","cb","length","Error","shift","err","console","log","message"],"mappings":"AAAA,SAASA,iBAAiB,EAAEC,KAAK,QAAQ,kBAAkB;AAC3D,OAAOC,qBAAqB,uBAAuB;AAEnD,eAAe,SAASC,QAAQC,OAAO,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IAC9D,IAAIC,YAAY;IAEhB,sBAAsB;IACtB,IAAIF,QAAQG,QAAQ,EAAED,YAAY;QAACF,QAAQG,QAAQ;KAAC;SAE/C;QACH,MAAM,EAAEC,QAAQ,EAAEC,IAAI,EAAE,GAAGL;QAC3B,MAAMM,eAAeZ,iBAAiB,CAACU,SAAS,IAAIA;QACpD,MAAMG,QAAQ;YAACD;YAAcD;SAAK;QAClC,IAAIL,QAAQQ,IAAI,EAAED,MAAME,IAAI,CAACT,QAAQQ,IAAI;QACzC,IAAIR,QAAQU,WAAW,EAAEH,MAAME,IAAI,CAACT,QAAQU,WAAW;QAEvD,qCAAqC;QACrC,MAAMC,QAAQ;YAACN;YAAMO,QAAQP,IAAI;SAAC;QAClCH,YAAYS,MAAME,GAAG,CAAC,CAACC,IAAM;gBAACR;gBAAcQ;aAAE,CAACC,MAAM,CAACR,MAAMS,KAAK,CAAC,IAAIC,IAAI,CAAC;QAC1EtB,CAAAA,KAAK,CAACW,aAAa,IAAI,EAAE,AAAD,EAAGY,OAAO,CAAC,CAACC,IAAMjB,UAAUO,IAAI,CAACU,EAAEhB,QAAQ;QACpED,UAAUO,IAAI,CAAC;QACfP,YAAYA,UAAUkB,MAAM,CAAC,CAACjB,UAAUkB,IAAMnB,UAAUoB,OAAO,CAACnB,cAAckB;IAChF;IAEA,MAAME,UAAU,CAACC;QACf,IAAItB,UAAUuB,MAAM,KAAK,GAAG,OAAOD,GAAG,IAAIE,MAAM,CAAC,+BAA+B,EAAE5B,UAAUE,QAAQG,QAAQ,GAAG,CAAC,WAAW,EAAEH,QAAQG,QAAQ,EAAE,GAAG,IAAI;QACtJP,gBAAgBM,UAAUyB,KAAK,IAAI7B,SAASC,MAAMC,SAAS,CAAC4B,MAASA,MAAML,QAAQC,MAAMA;IAC3F;IACAD,QAAQ,CAACK;QACPC,QAAQC,GAAG,CAAC,CAAC,KAAK,EAAEhC,QAAQkB,KAAK,CAAC,GAAG,CAAC,EAAE,CAACY,MAAM,cAAc,CAAC,uBAAuB,EAAEA,IAAIG,OAAO,EAAE,EAAE;QACtG9B,SAAS2B;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 { InstallOptions, NoParamCallback } from '../types.ts';\nimport installFilename from './installFilename.ts';\n\nexport default function install(version: string, dest: string, options: InstallOptions, callback: NoParamCallback): undefined {\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) => filenames.push(x.filename));\n filenames.push('src');\n filenames = filenames.filter((filename, i) => filenames.indexOf(filename) === i);\n }\n\n const tryNext = (cb) => {\n if (filenames.length === 0) return cb(new Error(`Failed to find installable for ${version}${options.filename ? ` Filename: ${options.filename}` : ''}`));\n installFilename(filenames.shift(), version, dest, options, (err) => (err ? tryNext(cb) : cb()));\n };\n tryNext((err) => {\n console.log(`node ${version.slice(1)} ${!err ? 'installed' : `install failed. Error: ${err.message}`}`);\n callback(err);\n });\n}\n"],"names":["FILE_PLATFORM_MAP","FILES","installFilename","install","version","dest","options","callback","filenames","filename","platform","arch","filePlatform","parts","type","push","compression","archs","process","map","a","concat","slice","join","forEach","x","filter","i","indexOf","tryNext","cb","length","Error","shift","err","console","log","message"],"mappings":"AAAA,SAASA,iBAAiB,EAAEC,KAAK,QAAQ,kBAAkB;AAE3D,OAAOC,qBAAqB,uBAAuB;AAEnD,eAAe,SAASC,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,MAAM,EAAEC,QAAQ,EAAEC,IAAI,EAAE,GAAGL;QAC3B,MAAMM,eAAeZ,iBAAiB,CAACU,SAAS,IAAIA;QACpD,MAAMG,QAAQ;YAACD;YAAcD;SAAK;QAClC,IAAIL,QAAQQ,IAAI,EAAED,MAAME,IAAI,CAACT,QAAQQ,IAAI;QACzC,IAAIR,QAAQU,WAAW,EAAEH,MAAME,IAAI,CAACT,QAAQU,WAAW;QAEvD,qCAAqC;QACrC,MAAMC,QAAQ;YAACN;YAAMO,QAAQP,IAAI;SAAC;QAClCH,YAAYS,MAAME,GAAG,CAAC,CAACC,IAAM;gBAACR;gBAAcQ;aAAE,CAACC,MAAM,CAACR,MAAMS,KAAK,CAAC,IAAIC,IAAI,CAAC;QAC1EtB,CAAAA,KAAK,CAACW,aAAa,IAAI,EAAE,AAAD,EAAGY,OAAO,CAAC,CAACC,IAAMjB,UAAUO,IAAI,CAACU,EAAEhB,QAAQ;QACpED,UAAUO,IAAI,CAAC;QACfP,YAAYA,UAAUkB,MAAM,CAAC,CAACjB,UAAUkB,IAAMnB,UAAUoB,OAAO,CAACnB,cAAckB;IAChF;IAEA,MAAME,UAAU,CAACC;QACf,IAAItB,UAAUuB,MAAM,KAAK,GAAG,OAAOD,GAAG,IAAIE,MAAM,CAAC,+BAA+B,EAAE5B,UAAUE,QAAQG,QAAQ,GAAG,CAAC,WAAW,EAAEH,QAAQG,QAAQ,EAAE,GAAG,IAAI;QACtJP,gBAAgBM,UAAUyB,KAAK,IAAI7B,SAASC,MAAMC,SAAS,CAAC4B,MAASA,MAAML,QAAQC,MAAMA;IAC3F;IACAD,QAAQ,CAACK;QACPC,QAAQC,GAAG,CAAC,CAAC,KAAK,EAAEhC,QAAQkB,KAAK,CAAC,GAAG,CAAC,EAAE,CAACY,MAAM,cAAc,CAAC,uBAAuB,EAAEA,IAAIG,OAAO,EAAE,EAAE;QACtG9B,SAAS2B;IACX;AACF"}
@@ -1 +1,2 @@
1
- export default function installCompressed(distPath: any, dest: any, options: any, callback: any): void;
1
+ import type { InstallOptions, NoParamCallback } from '../types.ts';
2
+ export default function installCompressed(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): undefined;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installCompressed.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport { NODE_DIST_BASE_URL } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport conditionalExtract from '../lib/conditionalExtract.ts';\nimport validateDownload from './validateDownload.ts';\n\nexport default function installCompressed(distPath, dest, options, callback) {\n const platform = options.platform;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const cachePath = path.join(options.cachePath, path.basename(downloadPath));\n\n fs.stat(dest, (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(conditionalExtract.bind(null, cachePath, dest, { strip: 1, time: 1000 }));\n queue.await((err) => {\n // some compressed versions of node come with npm pre-installed, but we want to override with a specific version\n const libPath = platform === 'win32' ? dest : path.join(dest, 'lib');\n const installPath = path.join(libPath, 'node_modules', 'npm');\n rimraf2(installPath, { disableGlob: true }, () => callback(err));\n });\n });\n}\n"],"names":["fs","path","Queue","rimraf2","NODE_DIST_BASE_URL","conditionalCache","conditionalExtract","validateDownload","installCompressed","distPath","dest","options","callback","platform","downloadPath","cachePath","join","basename","stat","err","queue","defer","bind","strip","time","await","libPath","installPath","disableGlob"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAE9B,SAASC,kBAAkB,QAAQ,kBAAkB;AACrD,OAAOC,sBAAsB,6BAA6B;AAC1D,OAAOC,wBAAwB,+BAA+B;AAC9D,OAAOC,sBAAsB,wBAAwB;AAErD,eAAe,SAASC,kBAAkBC,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACzE,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,eAAe,GAAGV,mBAAmB,CAAC,EAAEK,UAAU;IACxD,MAAMM,YAAYd,KAAKe,IAAI,CAACL,QAAQI,SAAS,EAAEd,KAAKgB,QAAQ,CAACH;IAE7Dd,GAAGkB,IAAI,CAACR,MAAM,CAACS;QACb,IAAI,CAACA,KAAK,OAAOP,YAAY,iBAAiB;QAE9C,MAAMQ,QAAQ,IAAIlB,MAAM;QACxBkB,MAAMC,KAAK,CAAChB,iBAAiBiB,IAAI,CAAC,MAAMR,cAAcC;QACtDK,MAAMC,KAAK,CAACd,iBAAiBe,IAAI,CAAC,MAAMb,UAAUM;QAClDK,MAAMC,KAAK,CAACf,mBAAmBgB,IAAI,CAAC,MAAMP,WAAWL,MAAM;YAAEa,OAAO;YAAGC,MAAM;QAAK;QAClFJ,MAAMK,KAAK,CAAC,CAACN;YACX,gHAAgH;YAChH,MAAMO,UAAUb,aAAa,UAAUH,OAAOT,KAAKe,IAAI,CAACN,MAAM;YAC9D,MAAMiB,cAAc1B,KAAKe,IAAI,CAACU,SAAS,gBAAgB;YACvDvB,QAAQwB,aAAa;gBAAEC,aAAa;YAAK,GAAG,IAAMhB,SAASO;QAC7D;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installCompressed.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport { NODE_DIST_BASE_URL } from '../constants.ts';\nimport conditionalCache from '../lib/conditionalCache.ts';\nimport conditionalExtract from '../lib/conditionalExtract.ts';\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\nimport validateDownload from './validateDownload.ts';\n\nexport default function installCompressed(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): undefined {\n const platform = options.platform;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const cachePath = path.join(options.cachePath, path.basename(downloadPath));\n\n fs.stat(dest, (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(conditionalExtract.bind(null, cachePath, dest, { strip: 1, time: 1000 }));\n queue.await((err) => {\n // some compressed versions of node come with npm pre-installed, but we want to override with a specific version\n const libPath = platform === 'win32' ? dest : path.join(dest, 'lib');\n const installPath = path.join(libPath, 'node_modules', 'npm');\n rimraf2(installPath, { disableGlob: true }, () => callback(err));\n });\n });\n}\n"],"names":["fs","path","Queue","rimraf2","NODE_DIST_BASE_URL","conditionalCache","conditionalExtract","validateDownload","installCompressed","distPath","dest","options","callback","platform","downloadPath","cachePath","join","basename","stat","err","queue","defer","bind","strip","time","await","libPath","installPath","disableGlob"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAE9B,SAASC,kBAAkB,QAAQ,kBAAkB;AACrD,OAAOC,sBAAsB,6BAA6B;AAC1D,OAAOC,wBAAwB,+BAA+B;AAE9D,OAAOC,sBAAsB,wBAAwB;AAErD,eAAe,SAASC,kBAAkBC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IAC1H,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,eAAe,GAAGV,mBAAmB,CAAC,EAAEK,UAAU;IACxD,MAAMM,YAAYd,KAAKe,IAAI,CAACL,QAAQI,SAAS,EAAEd,KAAKgB,QAAQ,CAACH;IAE7Dd,GAAGkB,IAAI,CAACR,MAAM,CAACS;QACb,IAAI,CAACA,KAAK,OAAOP,YAAY,iBAAiB;QAE9C,MAAMQ,QAAQ,IAAIlB,MAAM;QACxBkB,MAAMC,KAAK,CAAChB,iBAAiBiB,IAAI,CAAC,MAAMR,cAAcC;QACtDK,MAAMC,KAAK,CAACd,iBAAiBe,IAAI,CAAC,MAAMb,UAAUM;QAClDK,MAAMC,KAAK,CAACf,mBAAmBgB,IAAI,CAAC,MAAMP,WAAWL,MAAM;YAAEa,OAAO;YAAGC,MAAM;QAAK;QAClFJ,MAAMK,KAAK,CAAC,CAACN;YACX,gHAAgH;YAChH,MAAMO,UAAUb,aAAa,UAAUH,OAAOT,KAAKe,IAAI,CAACN,MAAM;YAC9D,MAAMiB,cAAc1B,KAAKe,IAAI,CAACU,SAAS,gBAAgB;YACvDvB,QAAQwB,aAAa;gBAAEC,aAAa;YAAK,GAAG,IAAMhB,SAASO;QAC7D;IACF;AACF"}
@@ -1 +1,2 @@
1
- export default function installExe(distPath: any, dest: any, options: any, callback: any): void;
1
+ import type { InstallOptions, NoParamCallback } from '../types.ts';
2
+ export default function installExe(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): undefined;
@@ -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 validateDownload from './validateDownload.ts';\n\nexport default function installExe(distPath, dest, options, callback) {\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":["fs","path","Queue","NODE_DIST_BASE_URL","NODE_FILE_PATHS","conditionalCache","copyFile","validateDownload","installExe","distPath","dest","options","callback","platform","downloadPath","cachePath","join","nodePath","posix","execPath","stat","err","queue","defer","bind","await"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,SAASC,kBAAkB,EAAEC,eAAe,QAAQ,kBAAkB;AACtE,OAAOC,sBAAsB,6BAA6B;AAC1D,OAAOC,cAAc,qBAAqB;AAC1C,OAAOC,sBAAsB,wBAAwB;AAErD,eAAe,SAASC,WAAWC,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IAClE,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,eAAe,GAAGX,mBAAmB,CAAC,EAAEM,UAAU;IACxD,MAAMM,YAAYd,KAAKe,IAAI,CAACL,QAAQI,SAAS,EAAE,CAAC,KAAK,EAAEN,SAAS,IAAI,CAAC;IACrE,MAAMQ,WAAWb,eAAe,CAACS,SAAS,IAAIT,gBAAgBc,KAAK;IACnE,MAAMC,WAAWlB,KAAKe,IAAI,CAACN,MAAMO;IAEjCjB,GAAGoB,IAAI,CAACD,UAAU,CAACE;QACjB,IAAI,CAACA,KAAK,OAAOT,YAAY,iBAAiB;QAE9C,MAAMU,QAAQ,IAAIpB,MAAM;QACxBoB,MAAMC,KAAK,CAAClB,iBAAiBmB,IAAI,CAAC,MAAMV,cAAcC;QACtDO,MAAMC,KAAK,CAAChB,iBAAiBiB,IAAI,CAAC,MAAMf,UAAUM;QAClDO,MAAMC,KAAK,CAACjB,SAASkB,IAAI,CAAC,MAAMT,WAAWI;QAC3CG,MAAMG,KAAK,CAACb;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): undefined {\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":["fs","path","Queue","NODE_DIST_BASE_URL","NODE_FILE_PATHS","conditionalCache","copyFile","validateDownload","installExe","distPath","dest","options","callback","platform","downloadPath","cachePath","join","nodePath","posix","execPath","stat","err","queue","defer","bind","await"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,SAASC,kBAAkB,EAAEC,eAAe,QAAQ,kBAAkB;AACtE,OAAOC,sBAAsB,6BAA6B;AAC1D,OAAOC,cAAc,qBAAqB;AAE1C,OAAOC,sBAAsB,wBAAwB;AAErD,eAAe,SAASC,WAAWC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACnH,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,eAAe,GAAGX,mBAAmB,CAAC,EAAEM,UAAU;IACxD,MAAMM,YAAYd,KAAKe,IAAI,CAACL,QAAQI,SAAS,EAAE,CAAC,KAAK,EAAEN,SAAS,IAAI,CAAC;IACrE,MAAMQ,WAAWb,eAAe,CAACS,SAAS,IAAIT,gBAAgBc,KAAK;IACnE,MAAMC,WAAWlB,KAAKe,IAAI,CAACN,MAAMO;IAEjCjB,GAAGoB,IAAI,CAACD,UAAU,CAACE;QACjB,IAAI,CAACA,KAAK,OAAOT,YAAY,iBAAiB;QAE9C,MAAMU,QAAQ,IAAIpB,MAAM;QACxBoB,MAAMC,KAAK,CAAClB,iBAAiBmB,IAAI,CAAC,MAAMV,cAAcC;QACtDO,MAAMC,KAAK,CAAChB,iBAAiBiB,IAAI,CAAC,MAAMf,UAAUM;QAClDO,MAAMC,KAAK,CAACjB,SAASkB,IAAI,CAAC,MAAMT,WAAWI;QAC3CG,MAAMG,KAAK,CAACb;IACd;AACF"}
@@ -1 +1,2 @@
1
- export default function installFilename(filename: any, version: any, dest: any, options: any, callback: any): any;
1
+ import type { InstallOptions, NoParamCallback } from '../types.ts';
2
+ export default function installFilename(filename: string, version: string, dest: string, options: InstallOptions, callback: NoParamCallback): undefined;
@@ -6,13 +6,19 @@ import installExe from './installExe.js';
6
6
  import installSource from './installSource/index.js';
7
7
  export default function installFilename(filename, version, dest, options, callback) {
8
8
  const distPath = fromFilename(filename, version);
9
- if (!distPath) return callback(new Error('Not found'));
9
+ if (!distPath) {
10
+ callback(new Error('Not found'));
11
+ return;
12
+ }
10
13
  const ext = path.extname(distPath);
11
14
  if (filename === 'src') return installSource(distPath, dest, options, callback);
12
15
  if (ext === '.exe') return installExe(distPath, dest, options, callback);
13
16
  if (EXTENSIONS_COMPRESSED.indexOf(ext) >= 0) {
14
17
  // 7z is not supported by fast extract
15
- if (ext === '.7z') return callback(new Error('7z not supported. Make a request feature request: https://github.com/kmalakoff/node-install-release/pulls'));
18
+ if (ext === '.7z') {
19
+ callback(new Error('7z not supported. Make a request feature request: https://github.com/kmalakoff/node-install-release/pulls'));
20
+ return;
21
+ }
16
22
  return installCompressed(distPath, dest, options, callback);
17
23
  }
18
24
  callback(new Error(`Unable to install ${version} distPath: ${distPath}`));
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installFilename.ts"],"sourcesContent":["import fromFilename from 'node-filename-to-dist-paths';\nimport path from 'path';\nimport { EXTENSIONS_COMPRESSED } from '../constants.ts';\n\nimport installCompressed from './installCompressed.ts';\nimport installExe from './installExe.ts';\nimport installSource from './installSource/index.ts';\n\nexport default function installFilename(filename, version, dest, options, callback) {\n const distPath = fromFilename(filename, version);\n if (!distPath) return callback(new Error('Not found'));\n const ext = path.extname(distPath);\n\n if (filename === 'src') return installSource(distPath, dest, options, callback);\n if (ext === '.exe') return installExe(distPath, dest, options, callback);\n if (EXTENSIONS_COMPRESSED.indexOf(ext) >= 0) {\n // 7z is not supported by fast extract\n if (ext === '.7z') return callback(new Error('7z not supported. Make a request feature request: https://github.com/kmalakoff/node-install-release/pulls'));\n return installCompressed(distPath, dest, options, callback);\n }\n callback(new Error(`Unable to install ${version} distPath: ${distPath}`));\n}\n"],"names":["fromFilename","path","EXTENSIONS_COMPRESSED","installCompressed","installExe","installSource","installFilename","filename","version","dest","options","callback","distPath","Error","ext","extname","indexOf"],"mappings":"AAAA,OAAOA,kBAAkB,8BAA8B;AACvD,OAAOC,UAAU,OAAO;AACxB,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAOC,uBAAuB,yBAAyB;AACvD,OAAOC,gBAAgB,kBAAkB;AACzC,OAAOC,mBAAmB,2BAA2B;AAErD,eAAe,SAASC,gBAAgBC,QAAQ,EAAEC,OAAO,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IAChF,MAAMC,WAAWZ,aAAaO,UAAUC;IACxC,IAAI,CAACI,UAAU,OAAOD,SAAS,IAAIE,MAAM;IACzC,MAAMC,MAAMb,KAAKc,OAAO,CAACH;IAEzB,IAAIL,aAAa,OAAO,OAAOF,cAAcO,UAAUH,MAAMC,SAASC;IACtE,IAAIG,QAAQ,QAAQ,OAAOV,WAAWQ,UAAUH,MAAMC,SAASC;IAC/D,IAAIT,sBAAsBc,OAAO,CAACF,QAAQ,GAAG;QAC3C,sCAAsC;QACtC,IAAIA,QAAQ,OAAO,OAAOH,SAAS,IAAIE,MAAM;QAC7C,OAAOV,kBAAkBS,UAAUH,MAAMC,SAASC;IACpD;IACAA,SAAS,IAAIE,MAAM,CAAC,kBAAkB,EAAEL,QAAQ,WAAW,EAAEI,UAAU;AACzE"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installFilename.ts"],"sourcesContent":["import fromFilename from 'node-filename-to-dist-paths';\nimport path from 'path';\nimport { EXTENSIONS_COMPRESSED } from '../constants.ts';\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\nimport installCompressed from './installCompressed.ts';\nimport installExe from './installExe.ts';\nimport installSource from './installSource/index.ts';\n\nexport default function installFilename(filename: string, version: string, dest: string, options: InstallOptions, callback: NoParamCallback): undefined {\n const distPath = fromFilename(filename, version);\n if (!distPath) {\n callback(new Error('Not found'));\n return;\n }\n const ext = path.extname(distPath);\n\n if (filename === 'src') return installSource(distPath, dest, options, callback);\n if (ext === '.exe') return installExe(distPath, dest, options, callback);\n if (EXTENSIONS_COMPRESSED.indexOf(ext) >= 0) {\n // 7z is not supported by fast extract\n if (ext === '.7z') {\n callback(new Error('7z not supported. Make a request feature request: https://github.com/kmalakoff/node-install-release/pulls'));\n return;\n }\n return installCompressed(distPath, dest, options, callback);\n }\n callback(new Error(`Unable to install ${version} distPath: ${distPath}`));\n}\n"],"names":["fromFilename","path","EXTENSIONS_COMPRESSED","installCompressed","installExe","installSource","installFilename","filename","version","dest","options","callback","distPath","Error","ext","extname","indexOf"],"mappings":"AAAA,OAAOA,kBAAkB,8BAA8B;AACvD,OAAOC,UAAU,OAAO;AACxB,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAOC,uBAAuB,yBAAyB;AACvD,OAAOC,gBAAgB,kBAAkB;AACzC,OAAOC,mBAAmB,2BAA2B;AAErD,eAAe,SAASC,gBAAgBC,QAAgB,EAAEC,OAAe,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACzI,MAAMC,WAAWZ,aAAaO,UAAUC;IACxC,IAAI,CAACI,UAAU;QACbD,SAAS,IAAIE,MAAM;QACnB;IACF;IACA,MAAMC,MAAMb,KAAKc,OAAO,CAACH;IAEzB,IAAIL,aAAa,OAAO,OAAOF,cAAcO,UAAUH,MAAMC,SAASC;IACtE,IAAIG,QAAQ,QAAQ,OAAOV,WAAWQ,UAAUH,MAAMC,SAASC;IAC/D,IAAIT,sBAAsBc,OAAO,CAACF,QAAQ,GAAG;QAC3C,sCAAsC;QACtC,IAAIA,QAAQ,OAAO;YACjBH,SAAS,IAAIE,MAAM;YACnB;QACF;QACA,OAAOV,kBAAkBS,UAAUH,MAAMC,SAASC;IACpD;IACAA,SAAS,IAAIE,MAAM,CAAC,kBAAkB,EAAEL,QAAQ,WAAW,EAAEI,UAAU;AACzE"}
@@ -1 +1,2 @@
1
- export default function installPosix(buildPath: any, dest: any, _options: any, callback: any): void;
1
+ import type { InstallOptions, NoParamCallback } from '../../types.ts';
2
+ export default function installPosix(buildPath: string, dest: string, _options: InstallOptions, callback: NoParamCallback): undefined;
@@ -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\nexport default function installPosix(buildPath, dest, _options, callback) {\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":["spawn","fs","path","Queue","installPosix","buildPath","dest","_options","callback","buildTarget","join","stat","err","queue","defer","bind","stdio","cwd","await"],"mappings":"AAAA,OAAOA,WAAW,iBAAiB;AACnC,OAAOC,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,eAAe,SAASC,aAAaC,SAAS,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,QAAQ;IACtE,MAAMC,cAAcP,KAAKQ,IAAI,CAACJ,MAAM;IAEpCL,GAAGU,IAAI,CAACF,aAAa,CAACG;QACpB,IAAI,CAACA,KAAK,OAAOJ,YAAY,iBAAiB;QAE9C,MAAMK,QAAQ,IAAIV,MAAM;QACxBU,MAAMC,KAAK,CAACd,MAAMe,IAAI,CAAC,MAAM,eAAe;YAAC,CAAC,SAAS,EAAET,MAAM;SAAC,EAAE;YAAEU,OAAO;YAAWC,KAAKZ;QAAU;QACrGQ,MAAMC,KAAK,CAACd,MAAMe,IAAI,CAAC,MAAM,QAAQ;YAAC;SAAU,EAAE;YAAEC,OAAO;YAAWC,KAAKZ;QAAU,GAAGG;QACxFK,MAAMK,KAAK,CAACV;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): undefined {\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":["spawn","fs","path","Queue","installPosix","buildPath","dest","_options","callback","buildTarget","join","stat","err","queue","defer","bind","stdio","cwd","await"],"mappings":"AAAA,OAAOA,WAAW,iBAAiB;AACnC,OAAOC,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAI7B,eAAe,SAASC,aAAaC,SAAiB,EAAEC,IAAY,EAAEC,QAAwB,EAAEC,QAAyB;IACvH,MAAMC,cAAcP,KAAKQ,IAAI,CAACJ,MAAM;IAEpCL,GAAGU,IAAI,CAACF,aAAa,CAACG;QACpB,IAAI,CAACA,KAAK,OAAOJ,YAAY,iBAAiB;QAE9C,MAAMK,QAAQ,IAAIV,MAAM;QACxBU,MAAMC,KAAK,CAACd,MAAMe,IAAI,CAAC,MAAM,eAAe;YAAC,CAAC,SAAS,EAAET,MAAM;SAAC,EAAE;YAAEU,OAAO;YAAWC,KAAKZ;QAAU;QACrGQ,MAAMC,KAAK,CAACd,MAAMe,IAAI,CAAC,MAAM,QAAQ;YAAC;SAAU,EAAE;YAAEC,OAAO;YAAWC,KAAKZ;QAAU,GAAGG;QACxFK,MAAMK,KAAK,CAACV;IACd;AACF"}
@@ -1 +1,2 @@
1
- export default function installWin32(buildPath: any, dest: any, _options: any, callback: any): void;
1
+ import type { InstallOptions, NoParamCallback } from '../../types.ts';
2
+ export default function installWin32(buildPath: string, dest: string, _options: InstallOptions, callback: NoParamCallback): undefined;
@@ -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\nexport default function installWin32(buildPath, dest, _options, callback) {\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":["spawn","fs","path","Queue","conditionalCopy","installWin32","buildPath","dest","_options","callback","buildSource","join","buildTarget","stat","err","queue","defer","bind","stdio","cwd","await"],"mappings":"AAAA,OAAOA,WAAW,iBAAiB;AACnC,OAAOC,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAC7B,OAAOC,qBAAqB,+BAA+B;AAE3D,eAAe,SAASC,aAAaC,SAAS,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,QAAQ;IACtE,MAAMC,cAAcR,KAAKS,IAAI,CAACL,WAAW,OAAO,WAAW;IAC3D,MAAMM,cAAcV,KAAKS,IAAI,CAACJ,MAAM;IAEpCN,GAAGY,IAAI,CAACD,aAAa,CAACE;QACpB,IAAI,CAACA,KAAK,OAAOL,YAAY,iBAAiB;QAE9C,MAAMM,QAAQ,IAAIZ,MAAM;QACxBY,MAAMC,KAAK,CAACf,GAAGY,IAAI,CAACI,IAAI,CAAC,MAAMP,aAAa,CAACI,MAAS,CAACA,MAAML,aAAaT,MAAM,aAAa,EAAE,EAAE;gBAAEkB,OAAO;gBAAWC,KAAKb;YAAU;QACpIS,MAAMC,KAAK,CAACZ,gBAAgBa,IAAI,CAAC,MAAMP,aAAaE,aAAa;QACjEG,MAAMK,KAAK,CAACX;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): undefined {\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":["spawn","fs","path","Queue","conditionalCopy","installWin32","buildPath","dest","_options","callback","buildSource","join","buildTarget","stat","err","queue","defer","bind","stdio","cwd","await"],"mappings":"AAAA,OAAOA,WAAW,iBAAiB;AACnC,OAAOC,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAC7B,OAAOC,qBAAqB,+BAA+B;AAI3D,eAAe,SAASC,aAAaC,SAAiB,EAAEC,IAAY,EAAEC,QAAwB,EAAEC,QAAyB;IACvH,MAAMC,cAAcR,KAAKS,IAAI,CAACL,WAAW,OAAO,WAAW;IAC3D,MAAMM,cAAcV,KAAKS,IAAI,CAACJ,MAAM;IAEpCN,GAAGY,IAAI,CAACD,aAAa,CAACE;QACpB,IAAI,CAACA,KAAK,OAAOL,YAAY,iBAAiB;QAE9C,MAAMM,QAAQ,IAAIZ,MAAM;QACxBY,MAAMC,KAAK,CAACf,GAAGY,IAAI,CAACI,IAAI,CAAC,MAAMP,aAAa,CAACI,MAAS,CAACA,MAAML,aAAaT,MAAM,aAAa,EAAE,EAAE;gBAAEkB,OAAO;gBAAWC,KAAKb;YAAU;QACpIS,MAAMC,KAAK,CAACZ,gBAAgBa,IAAI,CAAC,MAAMP,aAAaE,aAAa;QACjEG,MAAMK,KAAK,CAACX;IACd;AACF"}
@@ -1 +1,2 @@
1
- export default function InstallSource(distPath: any, dest: any, options: any, callback: any): void;
1
+ import type { InstallOptions, NoParamCallback } from '../../types.ts';
2
+ export default function InstallSource(distPath: string, dest: string, options: InstallOptions, callback: NoParamCallback): undefined;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/index.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 conditionalExtract from '../../lib/conditionalExtract.ts';\nimport validateDownload from '../validateDownload.ts';\nimport buildPosix from './buildPosix.ts';\nimport buildWin32 from './buildWin32.ts';\n\nexport default function InstallSource(distPath, dest, options, callback) {\n const platform = options.platform;\n const build = platform === 'win32' ? buildWin32 : buildPosix;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const buildPath = 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(conditionalExtract.bind(null, cachePath, buildPath, { strip: 1 }));\n queue.defer(build.bind(null, buildPath, dest, options));\n queue.await(callback);\n}\n"],"names":["path","Queue","NODE_DIST_BASE_URL","conditionalCache","conditionalExtract","validateDownload","buildPosix","buildWin32","InstallSource","distPath","dest","options","callback","platform","build","downloadPath","buildPath","join","basename","cachePath","queue","defer","bind","strip","await"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,SAASC,kBAAkB,QAAQ,qBAAqB;AACxD,OAAOC,sBAAsB,gCAAgC;AAC7D,OAAOC,wBAAwB,kCAAkC;AACjE,OAAOC,sBAAsB,yBAAyB;AACtD,OAAOC,gBAAgB,kBAAkB;AACzC,OAAOC,gBAAgB,kBAAkB;AAEzC,eAAe,SAASC,cAAcC,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACrE,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,QAAQD,aAAa,UAAUN,aAAaD;IAClD,MAAMS,eAAe,GAAGb,mBAAmB,CAAC,EAAEO,UAAU;IACxD,MAAMO,YAAYhB,KAAKiB,IAAI,CAACN,QAAQK,SAAS,EAAEhB,KAAKkB,QAAQ,CAACT;IAC7D,MAAMU,YAAYnB,KAAKiB,IAAI,CAACN,QAAQQ,SAAS,EAAEnB,KAAKkB,QAAQ,CAACH;IAE7D,MAAMK,QAAQ,IAAInB,MAAM;IACxBmB,MAAMC,KAAK,CAAClB,iBAAiBmB,IAAI,CAAC,MAAMP,cAAcI;IACtDC,MAAMC,KAAK,CAAChB,iBAAiBiB,IAAI,CAAC,MAAMb,UAAUU;IAClDC,MAAMC,KAAK,CAACjB,mBAAmBkB,IAAI,CAAC,MAAMH,WAAWH,WAAW;QAAEO,OAAO;IAAE;IAC3EH,MAAMC,KAAK,CAACP,MAAMQ,IAAI,CAAC,MAAMN,WAAWN,MAAMC;IAC9CS,MAAMI,KAAK,CAACZ;AACd"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/installSource/index.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 conditionalExtract from '../../lib/conditionalExtract.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): undefined {\n const platform = options.platform;\n const build = platform === 'win32' ? buildWin32 : buildPosix;\n const downloadPath = `${NODE_DIST_BASE_URL}/${distPath}`;\n const buildPath = 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(conditionalExtract.bind(null, cachePath, buildPath, { strip: 1 }));\n queue.defer(build.bind(null, buildPath, dest, options));\n queue.await(callback);\n}\n"],"names":["path","Queue","NODE_DIST_BASE_URL","conditionalCache","conditionalExtract","validateDownload","buildPosix","buildWin32","InstallSource","distPath","dest","options","callback","platform","build","downloadPath","buildPath","join","basename","cachePath","queue","defer","bind","strip","await"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,SAASC,kBAAkB,QAAQ,qBAAqB;AACxD,OAAOC,sBAAsB,gCAAgC;AAC7D,OAAOC,wBAAwB,kCAAkC;AAEjE,OAAOC,sBAAsB,yBAAyB;AACtD,OAAOC,gBAAgB,kBAAkB;AACzC,OAAOC,gBAAgB,kBAAkB;AAEzC,eAAe,SAASC,cAAcC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAAyB;IACtH,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,QAAQD,aAAa,UAAUN,aAAaD;IAClD,MAAMS,eAAe,GAAGb,mBAAmB,CAAC,EAAEO,UAAU;IACxD,MAAMO,YAAYhB,KAAKiB,IAAI,CAACN,QAAQK,SAAS,EAAEhB,KAAKkB,QAAQ,CAACT;IAC7D,MAAMU,YAAYnB,KAAKiB,IAAI,CAACN,QAAQQ,SAAS,EAAEnB,KAAKkB,QAAQ,CAACH;IAE7D,MAAMK,QAAQ,IAAInB,MAAM;IACxBmB,MAAMC,KAAK,CAAClB,iBAAiBmB,IAAI,CAAC,MAAMP,cAAcI;IACtDC,MAAMC,KAAK,CAAChB,iBAAiBiB,IAAI,CAAC,MAAMb,UAAUU;IAClDC,MAAMC,KAAK,CAACjB,mBAAmBkB,IAAI,CAAC,MAAMH,WAAWH,WAAW;QAAEO,OAAO;IAAE;IAC3EH,MAAMC,KAAK,CAACP,MAAMQ,IAAI,CAAC,MAAMN,WAAWN,MAAMC;IAC9CS,MAAMI,KAAK,CAACZ;AACd"}
@@ -1 +1,2 @@
1
- export default function validateDownload(distPath: any, installPath: any, callback: any): void;
1
+ import type { NoParamCallback } from '../types.ts';
2
+ export default function validateDownload(distPath: string, installPath: string, callback: NoParamCallback): undefined;
@@ -20,7 +20,10 @@ export default function validateDownload(distPath, installPath, callback) {
20
20
  'close',
21
21
  'finish'
22
22
  ], (err)=>{
23
- if (err) return callback(err);
23
+ if (err) {
24
+ callback(err);
25
+ return;
26
+ }
24
27
  hash.digest('hex') !== expected ? callback(new Error(`${filename} checksum failed`)) : callback();
25
28
  });
26
29
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/validateDownload.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\nimport get from 'get-remote';\nimport oo from 'on-one';\nimport { NODE_DIST_BASE_URL } from '../constants.ts';\nexport default function validateDownload(distPath, installPath, callback) {\n const version = distPath.split('/')[0];\n const downloadPath = `${NODE_DIST_BASE_URL}/${version}/SHASUMS256.txt`;\n get(downloadPath).text((err, res) => {\n if (err) return callback(err);\n const text = res.body;\n const filename = distPath.split('/').slice(1).join('/');\n const expected = text.split(filename)[0].split('\\n').pop().trim();\n const hash = crypto.createHash('sha256');\n const stream = fs.createReadStream(installPath);\n stream.on('data', (data) => hash.update(data));\n oo(stream, ['error', 'end', 'close', 'finish'], (err) => {\n if (err) return callback(err);\n hash.digest('hex') !== expected ? callback(new Error(`${filename} checksum failed`)) : callback();\n });\n });\n}\n"],"names":["crypto","fs","get","oo","NODE_DIST_BASE_URL","validateDownload","distPath","installPath","callback","version","split","downloadPath","text","err","res","body","filename","slice","join","expected","pop","trim","hash","createHash","stream","createReadStream","on","data","update","digest","Error"],"mappings":"AAAA,OAAOA,YAAY,SAAS;AAC5B,OAAOC,QAAQ,KAAK;AACpB,OAAOC,SAAS,aAAa;AAC7B,OAAOC,QAAQ,SAAS;AACxB,SAASC,kBAAkB,QAAQ,kBAAkB;AACrD,eAAe,SAASC,iBAAiBC,QAAQ,EAAEC,WAAW,EAAEC,QAAQ;IACtE,MAAMC,UAAUH,SAASI,KAAK,CAAC,IAAI,CAAC,EAAE;IACtC,MAAMC,eAAe,GAAGP,mBAAmB,CAAC,EAAEK,QAAQ,eAAe,CAAC;IACtEP,IAAIS,cAAcC,IAAI,CAAC,CAACC,KAAKC;QAC3B,IAAID,KAAK,OAAOL,SAASK;QACzB,MAAMD,OAAOE,IAAIC,IAAI;QACrB,MAAMC,WAAWV,SAASI,KAAK,CAAC,KAAKO,KAAK,CAAC,GAAGC,IAAI,CAAC;QACnD,MAAMC,WAAWP,KAAKF,KAAK,CAACM,SAAS,CAAC,EAAE,CAACN,KAAK,CAAC,MAAMU,GAAG,GAAGC,IAAI;QAC/D,MAAMC,OAAOtB,OAAOuB,UAAU,CAAC;QAC/B,MAAMC,SAASvB,GAAGwB,gBAAgB,CAAClB;QACnCiB,OAAOE,EAAE,CAAC,QAAQ,CAACC,OAASL,KAAKM,MAAM,CAACD;QACxCxB,GAAGqB,QAAQ;YAAC;YAAS;YAAO;YAAS;SAAS,EAAE,CAACX;YAC/C,IAAIA,KAAK,OAAOL,SAASK;YACzBS,KAAKO,MAAM,CAAC,WAAWV,WAAWX,SAAS,IAAIsB,MAAM,GAAGd,SAAS,gBAAgB,CAAC,KAAKR;QACzF;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/installNode/validateDownload.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\nimport get from 'get-remote';\nimport oo from 'on-one';\nimport { NODE_DIST_BASE_URL } from '../constants.ts';\n\nimport type { NoParamCallback } from '../types.ts';\n\nexport default function validateDownload(distPath: string, installPath: string, callback: NoParamCallback): undefined {\n const version = distPath.split('/')[0];\n const downloadPath = `${NODE_DIST_BASE_URL}/${version}/SHASUMS256.txt`;\n get(downloadPath).text((err, res) => {\n if (err) return callback(err);\n const text = res.body;\n const filename = distPath.split('/').slice(1).join('/');\n const expected = text.split(filename)[0].split('\\n').pop().trim();\n const hash = crypto.createHash('sha256');\n const stream = fs.createReadStream(installPath);\n stream.on('data', (data) => hash.update(data));\n oo(stream, ['error', 'end', 'close', 'finish'], (err?: Error) => {\n if (err) {\n callback(err);\n return;\n }\n hash.digest('hex') !== expected ? callback(new Error(`${filename} checksum failed`)) : callback();\n });\n });\n}\n"],"names":["crypto","fs","get","oo","NODE_DIST_BASE_URL","validateDownload","distPath","installPath","callback","version","split","downloadPath","text","err","res","body","filename","slice","join","expected","pop","trim","hash","createHash","stream","createReadStream","on","data","update","digest","Error"],"mappings":"AAAA,OAAOA,YAAY,SAAS;AAC5B,OAAOC,QAAQ,KAAK;AACpB,OAAOC,SAAS,aAAa;AAC7B,OAAOC,QAAQ,SAAS;AACxB,SAASC,kBAAkB,QAAQ,kBAAkB;AAIrD,eAAe,SAASC,iBAAiBC,QAAgB,EAAEC,WAAmB,EAAEC,QAAyB;IACvG,MAAMC,UAAUH,SAASI,KAAK,CAAC,IAAI,CAAC,EAAE;IACtC,MAAMC,eAAe,GAAGP,mBAAmB,CAAC,EAAEK,QAAQ,eAAe,CAAC;IACtEP,IAAIS,cAAcC,IAAI,CAAC,CAACC,KAAKC;QAC3B,IAAID,KAAK,OAAOL,SAASK;QACzB,MAAMD,OAAOE,IAAIC,IAAI;QACrB,MAAMC,WAAWV,SAASI,KAAK,CAAC,KAAKO,KAAK,CAAC,GAAGC,IAAI,CAAC;QACnD,MAAMC,WAAWP,KAAKF,KAAK,CAACM,SAAS,CAAC,EAAE,CAACN,KAAK,CAAC,MAAMU,GAAG,GAAGC,IAAI;QAC/D,MAAMC,OAAOtB,OAAOuB,UAAU,CAAC;QAC/B,MAAMC,SAASvB,GAAGwB,gBAAgB,CAAClB;QACnCiB,OAAOE,EAAE,CAAC,QAAQ,CAACC,OAASL,KAAKM,MAAM,CAACD;QACxCxB,GAAGqB,QAAQ;YAAC;YAAS;YAAO;YAAS;SAAS,EAAE,CAACX;YAC/C,IAAIA,KAAK;gBACPL,SAASK;gBACT;YACF;YACAS,KAAKO,MAAM,CAAC,WAAWV,WAAWX,SAAS,IAAIsB,MAAM,GAAGd,SAAS,gBAAgB,CAAC,KAAKR;QACzF;IACF;AACF"}
@@ -1 +1,3 @@
1
- export default function checkMissing(dest: any, options: any, callback: any): void;
1
+ import type { InstallOptions } from '../types.ts';
2
+ export type Callback = (error?: Error, missing?: string[]) => undefined;
3
+ export default function checkMissing(dest: string, options: InstallOptions, callback: Callback): undefined;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/checkMissing.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nimport { NODE_FILE_PATHS, NPM_FILE_PATHS } from '../constants.ts';\n\nexport default function checkMissing(dest, options, callback) {\n const platform = options.platform;\n const nodePath = NODE_FILE_PATHS[platform] || NODE_FILE_PATHS.posix;\n const npmPaths = NPM_FILE_PATHS[platform] || NPM_FILE_PATHS.posix;\n\n const missing = [];\n function check(filePath, key, cb) {\n fs.stat(path.join(dest, filePath), (err) => {\n if (err && missing.indexOf(key) < 0) missing.push(key);\n cb();\n });\n }\n\n const queue = new Queue();\n queue.defer(check.bind(null, nodePath, 'node'));\n for (const key in npmPaths) {\n if (!npmPaths[key].optional) queue.defer(check.bind(null, npmPaths[key].dest, 'npm'));\n }\n queue.await(() => callback(null, missing));\n}\n"],"names":["fs","path","Queue","NODE_FILE_PATHS","NPM_FILE_PATHS","checkMissing","dest","options","callback","platform","nodePath","posix","npmPaths","missing","check","filePath","key","cb","stat","join","err","indexOf","push","queue","defer","bind","optional","await"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,SAASC,eAAe,EAAEC,cAAc,QAAQ,kBAAkB;AAElE,eAAe,SAASC,aAAaC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IAC1D,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,WAAWP,eAAe,CAACM,SAAS,IAAIN,gBAAgBQ,KAAK;IACnE,MAAMC,WAAWR,cAAc,CAACK,SAAS,IAAIL,eAAeO,KAAK;IAEjE,MAAME,UAAU,EAAE;IAClB,SAASC,MAAMC,QAAQ,EAAEC,GAAG,EAAEC,EAAE;QAC9BjB,GAAGkB,IAAI,CAACjB,KAAKkB,IAAI,CAACb,MAAMS,WAAW,CAACK;YAClC,IAAIA,OAAOP,QAAQQ,OAAO,CAACL,OAAO,GAAGH,QAAQS,IAAI,CAACN;YAClDC;QACF;IACF;IAEA,MAAMM,QAAQ,IAAIrB;IAClBqB,MAAMC,KAAK,CAACV,MAAMW,IAAI,CAAC,MAAMf,UAAU;IACvC,IAAK,MAAMM,OAAOJ,SAAU;QAC1B,IAAI,CAACA,QAAQ,CAACI,IAAI,CAACU,QAAQ,EAAEH,MAAMC,KAAK,CAACV,MAAMW,IAAI,CAAC,MAAMb,QAAQ,CAACI,IAAI,CAACV,IAAI,EAAE;IAChF;IACAiB,MAAMI,KAAK,CAAC,IAAMnB,SAAS,MAAMK;AACnC"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/checkMissing.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nimport { NODE_FILE_PATHS, NPM_FILE_PATHS } from '../constants.ts';\n\nimport type { InstallOptions } from '../types.ts';\n\nexport type Callback = (error?: Error, missing?: string[]) => undefined;\n\nexport default function checkMissing(dest: string, options: InstallOptions, callback: Callback): undefined {\n const platform = options.platform;\n const nodePath = NODE_FILE_PATHS[platform] || NODE_FILE_PATHS.posix;\n const npmPaths = NPM_FILE_PATHS[platform] || NPM_FILE_PATHS.posix;\n\n const missing: string[] = [];\n function check(filePath, key, cb) {\n fs.stat(path.join(dest, filePath), (err) => {\n if (err && missing.indexOf(key) < 0) missing.push(key);\n cb();\n });\n }\n\n const queue = new Queue();\n queue.defer(check.bind(null, nodePath, 'node'));\n for (const key in npmPaths) {\n if (!npmPaths[key].optional) queue.defer(check.bind(null, npmPaths[key].dest, 'npm'));\n }\n queue.await(() => callback(null, missing));\n}\n"],"names":["fs","path","Queue","NODE_FILE_PATHS","NPM_FILE_PATHS","checkMissing","dest","options","callback","platform","nodePath","posix","npmPaths","missing","check","filePath","key","cb","stat","join","err","indexOf","push","queue","defer","bind","optional","await"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,SAASC,eAAe,EAAEC,cAAc,QAAQ,kBAAkB;AAMlE,eAAe,SAASC,aAAaC,IAAY,EAAEC,OAAuB,EAAEC,QAAkB;IAC5F,MAAMC,WAAWF,QAAQE,QAAQ;IACjC,MAAMC,WAAWP,eAAe,CAACM,SAAS,IAAIN,gBAAgBQ,KAAK;IACnE,MAAMC,WAAWR,cAAc,CAACK,SAAS,IAAIL,eAAeO,KAAK;IAEjE,MAAME,UAAoB,EAAE;IAC5B,SAASC,MAAMC,QAAQ,EAAEC,GAAG,EAAEC,EAAE;QAC9BjB,GAAGkB,IAAI,CAACjB,KAAKkB,IAAI,CAACb,MAAMS,WAAW,CAACK;YAClC,IAAIA,OAAOP,QAAQQ,OAAO,CAACL,OAAO,GAAGH,QAAQS,IAAI,CAACN;YAClDC;QACF;IACF;IAEA,MAAMM,QAAQ,IAAIrB;IAClBqB,MAAMC,KAAK,CAACV,MAAMW,IAAI,CAAC,MAAMf,UAAU;IACvC,IAAK,MAAMM,OAAOJ,SAAU;QAC1B,IAAI,CAACA,QAAQ,CAACI,IAAI,CAACU,QAAQ,EAAEH,MAAMC,KAAK,CAACV,MAAMW,IAAI,CAAC,MAAMb,QAAQ,CAACI,IAAI,CAACV,IAAI,EAAE;IAChF;IACAiB,MAAMI,KAAK,CAAC,IAAMnB,SAAS,MAAMK;AACnC"}
@@ -1 +1,2 @@
1
- export default function conditionalCache(endpoint: any, dest: any, options: any, callback?: any): void;
1
+ import type { InstallOptions, NoParamCallback } from '../types.ts';
2
+ export default function conditionalCache(endpoint: string, dest: string, options: InstallOptions, callback?: NoParamCallback): undefined;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/conditionalCache.ts"],"sourcesContent":["import fs from 'fs';\nimport get from 'get-remote';\nimport path from 'path';\n\nimport ensureDestinationParent from './ensureDestinationParent.ts';\n\nexport default function conditionalCache(endpoint, dest, options, callback?) {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n\n fs.stat(dest, (err) => {\n if (!err) return callback(); // already exists\n\n ensureDestinationParent(dest, (err) => {\n if (err) return callback(err);\n get(endpoint, { filename: path.basename(dest), time: 1000 }).file(path.dirname(dest), callback);\n });\n });\n}\n"],"names":["fs","get","path","ensureDestinationParent","conditionalCache","endpoint","dest","options","callback","stat","err","filename","basename","time","file","dirname"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,SAAS,aAAa;AAC7B,OAAOC,UAAU,OAAO;AAExB,OAAOC,6BAA6B,+BAA+B;AAEnE,eAAe,SAASC,iBAAiBC,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAS;IACzE,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IAEtBP,GAAGS,IAAI,CAACH,MAAM,CAACI;QACb,IAAI,CAACA,KAAK,OAAOF,YAAY,iBAAiB;QAE9CL,wBAAwBG,MAAM,CAACI;YAC7B,IAAIA,KAAK,OAAOF,SAASE;YACzBT,IAAII,UAAU;gBAAEM,UAAUT,KAAKU,QAAQ,CAACN;gBAAOO,MAAM;YAAK,GAAGC,IAAI,CAACZ,KAAKa,OAAO,CAACT,OAAOE;QACxF;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/conditionalCache.ts"],"sourcesContent":["import fs from 'fs';\nimport get from 'get-remote';\nimport path from 'path';\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\nimport ensureDestinationParent from './ensureDestinationParent.ts';\n\nexport default function conditionalCache(endpoint: string, dest: string, options: InstallOptions, callback?: NoParamCallback): undefined {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n\n fs.stat(dest, (err) => {\n if (!err) return callback(); // already exists\n\n ensureDestinationParent(dest, (err) => {\n if (err) return callback(err);\n get(endpoint, { filename: path.basename(dest), time: 1000 }).file(path.dirname(dest), callback);\n });\n });\n}\n"],"names":["fs","get","path","ensureDestinationParent","conditionalCache","endpoint","dest","options","callback","stat","err","filename","basename","time","file","dirname"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,SAAS,aAAa;AAC7B,OAAOC,UAAU,OAAO;AAExB,OAAOC,6BAA6B,+BAA+B;AAEnE,eAAe,SAASC,iBAAiBC,QAAgB,EAAEC,IAAY,EAAEC,OAAuB,EAAEC,QAA0B;IAC1H,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IAEtBP,GAAGS,IAAI,CAACH,MAAM,CAACI;QACb,IAAI,CAACA,KAAK,OAAOF,YAAY,iBAAiB;QAE9CL,wBAAwBG,MAAM,CAACI;YAC7B,IAAIA,KAAK,OAAOF,SAASE;YACzBT,IAAII,UAAU;gBAAEM,UAAUT,KAAKU,QAAQ,CAACN;gBAAOO,MAAM;YAAK,GAAGC,IAAI,CAACZ,KAAKa,OAAO,CAACT,OAAOE;QACxF;IACF;AACF"}
@@ -1 +1,2 @@
1
- export default function conditionalCopy(src: any, dest: any, optional: any, callback: any): any;
1
+ import type { NoParamCallback } from '../types.ts';
2
+ export default function conditionalCopy(src: string, dest: string, optional: boolean, callback: NoParamCallback): undefined;
@@ -1,7 +1,10 @@
1
1
  import fs from 'fs';
2
2
  import copyFile from './copyFile.js';
3
3
  export default function conditionalCopy(src, dest, optional, callback) {
4
- if (typeof optional === 'function') return callback(new Error('conditionalCopy missing options'));
4
+ if (typeof optional === 'function') {
5
+ callback(new Error('conditionalCopy missing options'));
6
+ return;
7
+ }
5
8
  fs.stat(dest, (err)=>{
6
9
  if (!err) return callback(); // already exists
7
10
  fs.stat(src, (err)=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/conditionalCopy.ts"],"sourcesContent":["import fs from 'fs';\nimport copyFile from './copyFile.ts';\n\nexport default function conditionalCopy(src, dest, optional, callback) {\n if (typeof optional === 'function') return callback(new Error('conditionalCopy missing options'));\n\n fs.stat(dest, (err) => {\n if (!err) return callback(); // already exists\n\n fs.stat(src, (err) => {\n err && optional ? callback() : copyFile(src, dest, callback); // optional file missing\n });\n });\n}\n"],"names":["fs","copyFile","conditionalCopy","src","dest","optional","callback","Error","stat","err"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,cAAc,gBAAgB;AAErC,eAAe,SAASC,gBAAgBC,GAAG,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,QAAQ;IACnE,IAAI,OAAOD,aAAa,YAAY,OAAOC,SAAS,IAAIC,MAAM;IAE9DP,GAAGQ,IAAI,CAACJ,MAAM,CAACK;QACb,IAAI,CAACA,KAAK,OAAOH,YAAY,iBAAiB;QAE9CN,GAAGQ,IAAI,CAACL,KAAK,CAACM;YACZA,OAAOJ,WAAWC,aAAaL,SAASE,KAAKC,MAAME,WAAW,wBAAwB;QACxF;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/conditionalCopy.ts"],"sourcesContent":["import fs from 'fs';\nimport type { NoParamCallback } from '../types.ts';\nimport copyFile from './copyFile.ts';\n\nexport default function conditionalCopy(src: string, dest: string, optional: boolean, callback: NoParamCallback): undefined {\n if (typeof optional === 'function') {\n callback(new Error('conditionalCopy missing options'));\n return;\n }\n\n fs.stat(dest, (err) => {\n if (!err) return callback(); // already exists\n\n fs.stat(src, (err) => {\n err && optional ? callback() : copyFile(src, dest, callback); // optional file missing\n });\n });\n}\n"],"names":["fs","copyFile","conditionalCopy","src","dest","optional","callback","Error","stat","err"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AAEpB,OAAOC,cAAc,gBAAgB;AAErC,eAAe,SAASC,gBAAgBC,GAAW,EAAEC,IAAY,EAAEC,QAAiB,EAAEC,QAAyB;IAC7G,IAAI,OAAOD,aAAa,YAAY;QAClCC,SAAS,IAAIC,MAAM;QACnB;IACF;IAEAP,GAAGQ,IAAI,CAACJ,MAAM,CAACK;QACb,IAAI,CAACA,KAAK,OAAOH,YAAY,iBAAiB;QAE9CN,GAAGQ,IAAI,CAACL,KAAK,CAACM;YACZA,OAAOJ,WAAWC,aAAaL,SAASE,KAAKC,MAAME,WAAW,wBAAwB;QACxF;IACF;AACF"}
@@ -1 +1,2 @@
1
- export default function conditionalExtract(src: any, dest: any, options: any, callback?: any): void;
1
+ import type { InstallOptions, NoParamCallback } from '../types.ts';
2
+ export default function conditionalExtract(src: string, dest: string, options: InstallOptions | NoParamCallback, callback?: NoParamCallback): undefined;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/conditionalExtract.ts"],"sourcesContent":["import extract from 'fast-extract';\nimport fs from 'fs';\nimport mkdirp from 'mkdirp-classic';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nexport default function conditionalExtract(src, dest, options, callback?) {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n\n fs.stat(dest, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer(mkdirp.bind(null, path.dirname(dest)));\n queue.defer(extract.bind(null, src, dest, { strip: 1, time: 1000 }));\n queue.await(callback);\n });\n}\n"],"names":["extract","fs","mkdirp","path","Queue","conditionalExtract","src","dest","options","callback","stat","err","queue","defer","bind","dirname","strip","time","await"],"mappings":"AAAA,OAAOA,aAAa,eAAe;AACnC,OAAOC,QAAQ,KAAK;AACpB,OAAOC,YAAY,iBAAiB;AACpC,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAE7B,eAAe,SAASC,mBAAmBC,GAAG,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAS;IACtE,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IAEtBP,GAAGS,IAAI,CAACH,MAAM,CAACI;QACb,IAAI,CAACA,KAAK,OAAOF,YAAY,iBAAiB;QAE9C,MAAMG,QAAQ,IAAIR,MAAM;QACxBQ,MAAMC,KAAK,CAACX,OAAOY,IAAI,CAAC,MAAMX,KAAKY,OAAO,CAACR;QAC3CK,MAAMC,KAAK,CAACb,QAAQc,IAAI,CAAC,MAAMR,KAAKC,MAAM;YAAES,OAAO;YAAGC,MAAM;QAAK;QACjEL,MAAMM,KAAK,CAACT;IACd;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/conditionalExtract.ts"],"sourcesContent":["import extract from 'fast-extract';\nimport fs from 'fs';\nimport mkdirp from 'mkdirp-classic';\nimport path from 'path';\nimport Queue from 'queue-cb';\n\nimport type { InstallOptions, NoParamCallback } from '../types.ts';\n\nexport default function conditionalExtract(src: string, dest: string, options: InstallOptions | NoParamCallback, callback?: NoParamCallback): undefined {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || ({} as InstallOptions);\n\n fs.stat(dest, (err) => {\n if (!err) return callback(); // already exists\n\n const queue = new Queue(1);\n queue.defer(mkdirp.bind(null, path.dirname(dest)));\n queue.defer(extract.bind(null, src, dest, { strip: 1, time: 1000 }));\n queue.await(callback);\n });\n}\n"],"names":["extract","fs","mkdirp","path","Queue","conditionalExtract","src","dest","options","callback","stat","err","queue","defer","bind","dirname","strip","time","await"],"mappings":"AAAA,OAAOA,aAAa,eAAe;AACnC,OAAOC,QAAQ,KAAK;AACpB,OAAOC,YAAY,iBAAiB;AACpC,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAI7B,eAAe,SAASC,mBAAmBC,GAAW,EAAEC,IAAY,EAAEC,OAAyC,EAAEC,QAA0B;IACzI,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAY,CAAC;IAEvBP,GAAGS,IAAI,CAACH,MAAM,CAACI;QACb,IAAI,CAACA,KAAK,OAAOF,YAAY,iBAAiB;QAE9C,MAAMG,QAAQ,IAAIR,MAAM;QACxBQ,MAAMC,KAAK,CAACX,OAAOY,IAAI,CAAC,MAAMX,KAAKY,OAAO,CAACR;QAC3CK,MAAMC,KAAK,CAACb,QAAQc,IAAI,CAAC,MAAMR,KAAKC,MAAM;YAAES,OAAO;YAAGC,MAAM;QAAK;QACjEL,MAAMM,KAAK,CAACT;IACd;AACF"}
@@ -1 +1,2 @@
1
- export default function safeCopyFile(src: any, dest: any, callback: any): void;
1
+ import { type NoParamCallback } from 'fs';
2
+ export default function safeCopyFile(src: string, dest: string, callback: NoParamCallback): void;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/copyFile.ts"],"sourcesContent":["import fs from 'fs';\nimport pump from 'pump';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport ensureDestinationParent from './ensureDestinationParent.ts';\n\nfunction streamCopyFile(src, dest, callback) {\n fs.stat(src, (err) => {\n if (err) return callback(err);\n pump(fs.createReadStream(src), fs.createWriteStream(dest), callback);\n });\n}\n\nconst copyFile = fs.copyFile || streamCopyFile;\n\nexport default function safeCopyFile(src, dest, callback) {\n const queue = new Queue(1);\n\n queue.defer(ensureDestinationParent.bind(null, dest));\n queue.defer((callback) => {\n rimraf2(dest, { disableGlob: true }, (err) => {\n err && err.code !== 'EEXIST' ? callback(err) : callback();\n });\n });\n queue.defer(copyFile.bind(null, src, dest));\n queue.await(callback);\n}\n"],"names":["fs","pump","Queue","rimraf2","ensureDestinationParent","streamCopyFile","src","dest","callback","stat","err","createReadStream","createWriteStream","copyFile","safeCopyFile","queue","defer","bind","disableGlob","code","await"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAE9B,OAAOC,6BAA6B,+BAA+B;AAEnE,SAASC,eAAeC,GAAG,EAAEC,IAAI,EAAEC,QAAQ;IACzCR,GAAGS,IAAI,CAACH,KAAK,CAACI;QACZ,IAAIA,KAAK,OAAOF,SAASE;QACzBT,KAAKD,GAAGW,gBAAgB,CAACL,MAAMN,GAAGY,iBAAiB,CAACL,OAAOC;IAC7D;AACF;AAEA,MAAMK,WAAWb,GAAGa,QAAQ,IAAIR;AAEhC,eAAe,SAASS,aAAaR,GAAG,EAAEC,IAAI,EAAEC,QAAQ;IACtD,MAAMO,QAAQ,IAAIb,MAAM;IAExBa,MAAMC,KAAK,CAACZ,wBAAwBa,IAAI,CAAC,MAAMV;IAC/CQ,MAAMC,KAAK,CAAC,CAACR;QACXL,QAAQI,MAAM;YAAEW,aAAa;QAAK,GAAG,CAACR;YACpCA,OAAOA,IAAIS,IAAI,KAAK,WAAWX,SAASE,OAAOF;QACjD;IACF;IACAO,MAAMC,KAAK,CAACH,SAASI,IAAI,CAAC,MAAMX,KAAKC;IACrCQ,MAAMK,KAAK,CAACZ;AACd"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/copyFile.ts"],"sourcesContent":["import fs, { type NoParamCallback } from 'fs';\nimport pump from 'pump';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport ensureDestinationParent from './ensureDestinationParent.ts';\n\nfunction streamCopyFile(src: string, dest: string, callback: NoParamCallback): undefined {\n fs.stat(src, (err) => {\n if (err) return callback(err);\n pump(fs.createReadStream(src), fs.createWriteStream(dest), callback);\n });\n}\n\nconst copyFile = fs.copyFile || streamCopyFile;\n\nexport default function safeCopyFile(src: string, dest: string, callback: NoParamCallback) {\n const queue = new Queue(1);\n\n queue.defer(ensureDestinationParent.bind(null, dest));\n queue.defer((callback) => {\n rimraf2(dest, { disableGlob: true }, (err) => {\n err && err.code !== 'EEXIST' ? callback(err) : callback();\n });\n });\n queue.defer(copyFile.bind(null, src, dest));\n queue.await(callback);\n}\n"],"names":["fs","pump","Queue","rimraf2","ensureDestinationParent","streamCopyFile","src","dest","callback","stat","err","createReadStream","createWriteStream","copyFile","safeCopyFile","queue","defer","bind","disableGlob","code","await"],"mappings":"AAAA,OAAOA,QAAkC,KAAK;AAC9C,OAAOC,UAAU,OAAO;AACxB,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAE9B,OAAOC,6BAA6B,+BAA+B;AAEnE,SAASC,eAAeC,GAAW,EAAEC,IAAY,EAAEC,QAAyB;IAC1ER,GAAGS,IAAI,CAACH,KAAK,CAACI;QACZ,IAAIA,KAAK,OAAOF,SAASE;QACzBT,KAAKD,GAAGW,gBAAgB,CAACL,MAAMN,GAAGY,iBAAiB,CAACL,OAAOC;IAC7D;AACF;AAEA,MAAMK,WAAWb,GAAGa,QAAQ,IAAIR;AAEhC,eAAe,SAASS,aAAaR,GAAW,EAAEC,IAAY,EAAEC,QAAyB;IACvF,MAAMO,QAAQ,IAAIb,MAAM;IAExBa,MAAMC,KAAK,CAACZ,wBAAwBa,IAAI,CAAC,MAAMV;IAC/CQ,MAAMC,KAAK,CAAC,CAACR;QACXL,QAAQI,MAAM;YAAEW,aAAa;QAAK,GAAG,CAACR;YACpCA,OAAOA,IAAIS,IAAI,KAAK,WAAWX,SAASE,OAAOF;QACjD;IACF;IACAO,MAAMC,KAAK,CAACH,SAASI,IAAI,CAAC,MAAMX,KAAKC;IACrCQ,MAAMK,KAAK,CAACZ;AACd"}
@@ -1 +1,2 @@
1
- export default function ensureDestinationParent(dest: any, callback: any): any;
1
+ import type { NoParamCallback } from '../types.ts';
2
+ export default function ensureDestinationParent(dest: string, callback: NoParamCallback): undefined;
@@ -2,6 +2,9 @@ import mkdirp from 'mkdirp-classic';
2
2
  import path from 'path';
3
3
  export default function ensureDestinationParent(dest, callback) {
4
4
  const parent = path.dirname(dest);
5
- if (parent === '.' || parent === '/') return callback();
5
+ if (parent === '.' || parent === '/') {
6
+ callback();
7
+ return;
8
+ }
6
9
  mkdirp(parent, callback);
7
10
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/ensureDestinationParent.ts"],"sourcesContent":["import mkdirp from 'mkdirp-classic';\nimport path from 'path';\n\nexport default function ensureDestinationParent(dest, callback) {\n const parent = path.dirname(dest);\n if (parent === '.' || parent === '/') return callback();\n mkdirp(parent, callback);\n}\n"],"names":["mkdirp","path","ensureDestinationParent","dest","callback","parent","dirname"],"mappings":"AAAA,OAAOA,YAAY,iBAAiB;AACpC,OAAOC,UAAU,OAAO;AAExB,eAAe,SAASC,wBAAwBC,IAAI,EAAEC,QAAQ;IAC5D,MAAMC,SAASJ,KAAKK,OAAO,CAACH;IAC5B,IAAIE,WAAW,OAAOA,WAAW,KAAK,OAAOD;IAC7CJ,OAAOK,QAAQD;AACjB"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/ensureDestinationParent.ts"],"sourcesContent":["import mkdirp from 'mkdirp-classic';\nimport path from 'path';\n\nimport type { NoParamCallback } from '../types.ts';\n\nexport default function ensureDestinationParent(dest: string, callback: NoParamCallback): undefined {\n const parent = path.dirname(dest);\n if (parent === '.' || parent === '/') {\n callback();\n return;\n }\n mkdirp(parent, callback);\n}\n"],"names":["mkdirp","path","ensureDestinationParent","dest","callback","parent","dirname"],"mappings":"AAAA,OAAOA,YAAY,iBAAiB;AACpC,OAAOC,UAAU,OAAO;AAIxB,eAAe,SAASC,wBAAwBC,IAAY,EAAEC,QAAyB;IACrF,MAAMC,SAASJ,KAAKK,OAAO,CAACH;IAC5B,IAAIE,WAAW,OAAOA,WAAW,KAAK;QACpCD;QACA;IACF;IACAJ,OAAOK,QAAQD;AACjB"}
@@ -1,4 +1,2 @@
1
- export default function getTarget(options: any): {
2
- platform: any;
3
- arch: any;
4
- };
1
+ import type { InstallOptions, Target } from '../types.ts';
2
+ export default function getTarget(options: InstallOptions): Target;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/getTarget.ts"],"sourcesContent":["import { FILE_PLATFORM_MAP, FILE_PLATFORMS } from '../constants.ts';\nimport machineArch from '../machine/arch.cjs';\n\nlet archMachine: NodeJS.Architecture;\nexport default function getTarget(options) {\n let platform = options.platform;\n let arch = options.arch;\n if (options.filename) {\n const filePlatform = options.filename.split('-')[0];\n if (FILE_PLATFORMS.indexOf(filePlatform) >= 0) platform = FILE_PLATFORM_MAP[filePlatform] || filePlatform;\n arch = options.filename.split('-')[1];\n }\n if (!platform) platform = process.platform;\n if (!arch) {\n if (!archMachine) archMachine = machineArch() as NodeJS.Architecture; // call first time needed\n arch = archMachine;\n }\n return { platform, arch };\n}\n"],"names":["FILE_PLATFORM_MAP","FILE_PLATFORMS","machineArch","archMachine","getTarget","options","platform","arch","filename","filePlatform","split","indexOf","process"],"mappings":"AAAA,SAASA,iBAAiB,EAAEC,cAAc,QAAQ,kBAAkB;AACpE,OAAOC,iBAAiB,sBAAsB;AAE9C,IAAIC;AACJ,eAAe,SAASC,UAAUC,OAAO;IACvC,IAAIC,WAAWD,QAAQC,QAAQ;IAC/B,IAAIC,OAAOF,QAAQE,IAAI;IACvB,IAAIF,QAAQG,QAAQ,EAAE;QACpB,MAAMC,eAAeJ,QAAQG,QAAQ,CAACE,KAAK,CAAC,IAAI,CAAC,EAAE;QACnD,IAAIT,eAAeU,OAAO,CAACF,iBAAiB,GAAGH,WAAWN,iBAAiB,CAACS,aAAa,IAAIA;QAC7FF,OAAOF,QAAQG,QAAQ,CAACE,KAAK,CAAC,IAAI,CAAC,EAAE;IACvC;IACA,IAAI,CAACJ,UAAUA,WAAWM,QAAQN,QAAQ;IAC1C,IAAI,CAACC,MAAM;QACT,IAAI,CAACJ,aAAaA,cAAcD,eAAsC,yBAAyB;QAC/FK,OAAOJ;IACT;IACA,OAAO;QAAEG;QAAUC;IAAK;AAC1B"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/lib/getTarget.ts"],"sourcesContent":["import { FILE_PLATFORM_MAP, FILE_PLATFORMS } from '../constants.ts';\nimport machineArch from '../machine/arch.cjs';\n\nlet archMachine: NodeJS.Architecture;\n\nimport type { InstallOptions, Target } from '../types.ts';\n\nexport default function getTarget(options: InstallOptions): Target {\n let platform = options.platform;\n let arch = options.arch;\n if (options.filename) {\n const filePlatform = options.filename.split('-')[0];\n if (FILE_PLATFORMS.indexOf(filePlatform) >= 0) platform = FILE_PLATFORM_MAP[filePlatform] || filePlatform;\n arch = options.filename.split('-')[1] as NodeJS.Architecture;\n }\n if (!platform) platform = process.platform;\n if (!arch) {\n if (!archMachine) archMachine = machineArch() as NodeJS.Architecture; // call first time needed\n arch = archMachine;\n }\n return { platform, arch };\n}\n"],"names":["FILE_PLATFORM_MAP","FILE_PLATFORMS","machineArch","archMachine","getTarget","options","platform","arch","filename","filePlatform","split","indexOf","process"],"mappings":"AAAA,SAASA,iBAAiB,EAAEC,cAAc,QAAQ,kBAAkB;AACpE,OAAOC,iBAAiB,sBAAsB;AAE9C,IAAIC;AAIJ,eAAe,SAASC,UAAUC,OAAuB;IACvD,IAAIC,WAAWD,QAAQC,QAAQ;IAC/B,IAAIC,OAAOF,QAAQE,IAAI;IACvB,IAAIF,QAAQG,QAAQ,EAAE;QACpB,MAAMC,eAAeJ,QAAQG,QAAQ,CAACE,KAAK,CAAC,IAAI,CAAC,EAAE;QACnD,IAAIT,eAAeU,OAAO,CAACF,iBAAiB,GAAGH,WAAWN,iBAAiB,CAACS,aAAa,IAAIA;QAC7FF,OAAOF,QAAQG,QAAQ,CAACE,KAAK,CAAC,IAAI,CAAC,EAAE;IACvC;IACA,IAAI,CAACJ,UAAUA,WAAWM,QAAQN,QAAQ;IAC1C,IAAI,CAACC,MAAM;QACT,IAAI,CAACJ,aAAaA,cAAcD,eAAsC,yBAAyB;QAC/FK,OAAOJ;IACT;IACA,OAAO;QAAEG;QAAUC;IAAK;AAC1B"}
@@ -1,3 +1,13 @@
1
+ import type { VersionOptions } from 'node-resolve-versions';
2
+ export interface File {
3
+ filename: string;
4
+ starting: string;
5
+ }
6
+ export interface FilePath {
7
+ src: string;
8
+ dest: string;
9
+ optional?: boolean;
10
+ }
1
11
  export type StorageLocations = {
2
12
  cachePath: string;
3
13
  buildPath: string;
@@ -9,12 +19,21 @@ export type InstallResult = {
9
19
  execPath: string;
10
20
  platform: NodeJS.Platform;
11
21
  };
12
- export interface InstallOptions {
22
+ export interface InstallOptions extends VersionOptions {
23
+ type?: string;
24
+ compression?: boolean;
13
25
  installPath?: string;
26
+ buildPath?: string;
14
27
  name?: string;
15
28
  storagePath?: string;
16
29
  filename?: string;
17
30
  platform?: NodeJS.Platform;
18
31
  arch?: NodeJS.Architecture;
32
+ cachePath?: string;
33
+ }
34
+ export interface Target {
35
+ platform: NodeJS.Platform;
36
+ arch: NodeJS.Architecture;
19
37
  }
20
38
  export type InstallCallback = (err?: Error, result?: InstallResult) => void;
39
+ export type NoParamCallback = (err?: Error) => void;
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/types.ts"],"sourcesContent":["export type StorageLocations = {\n cachePath: string;\n buildPath: string;\n installPath: string;\n};\n\nexport type InstallResult = {\n version: string;\n installPath: string;\n execPath: string;\n platform: NodeJS.Platform;\n};\n\nexport interface InstallOptions {\n installPath?: string;\n name?: string;\n storagePath?: string;\n filename?: string;\n platform?: NodeJS.Platform;\n arch?: NodeJS.Architecture;\n}\n\nexport type InstallCallback = (err?: Error, result?: InstallResult) => void;\n"],"names":[],"mappings":"AAsBA,WAA4E"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/types.ts"],"sourcesContent":["import type { VersionOptions } from 'node-resolve-versions';\n\nexport interface File {\n filename: string;\n starting: string;\n}\n\nexport interface FilePath {\n src: string;\n dest: string;\n optional?: boolean;\n}\n\nexport type StorageLocations = {\n cachePath: string;\n buildPath: string;\n installPath: string;\n};\n\nexport type InstallResult = {\n version: string;\n installPath: string;\n execPath: string;\n platform: NodeJS.Platform;\n};\n\nexport interface InstallOptions extends VersionOptions {\n type?: string;\n compression?: boolean;\n installPath?: string;\n buildPath?: string;\n name?: string;\n storagePath?: string;\n filename?: string;\n platform?: NodeJS.Platform;\n arch?: NodeJS.Architecture;\n cachePath?: string;\n}\n\nexport interface Target {\n platform: NodeJS.Platform;\n arch: NodeJS.Architecture;\n}\n\nexport type InstallCallback = (err?: Error, result?: InstallResult) => void;\nexport type NoParamCallback = (err?: Error) => void;\n"],"names":[],"mappings":"AA6CA,WAAoD"}
@@ -1 +1,2 @@
1
- export default function install(versionExpression: any, options: any, callback: any): void;
1
+ import type { InstallCallback, InstallOptions } from '../types.ts';
2
+ export default function install(versionExpression: string, options: InstallOptions, callback: InstallCallback): undefined;
@@ -10,8 +10,8 @@ import installNPM from '../installNPM/index.js';
10
10
  import checkMissing from '../lib/checkMissing.js';
11
11
  import ensureDestinationParent from '../lib/ensureDestinationParent.js';
12
12
  import getTarget from '../lib/getTarget.js';
13
- // short circuit
14
13
  function getVersions(versionExpression, options, callback) {
14
+ // short circuit
15
15
  isVersion(versionExpression) ? callback(null, [
16
16
  versionExpression
17
17
  ]) : resolveVersions(versionExpression, options, callback);
@@ -24,13 +24,25 @@ export default function install(versionExpression, options, callback) {
24
24
  ...getTarget(options)
25
25
  };
26
26
  getVersions(versionExpression, options, (err, versions)=>{
27
- if (err) return callback(err);
28
- if (!versions.length) return callback(new Error(`Could not resolve versions for: ${versionExpression}`));
29
- if (versions.length !== 1) return callback(new Error(`Version ${versionExpression} resolved to multiple versions: ${versions.map((x)=>x.version)}. Expecting one.`));
27
+ if (err) {
28
+ callback(err);
29
+ return;
30
+ }
31
+ if (!versions.length) {
32
+ callback(new Error(`Could not resolve versions for: ${versionExpression}`));
33
+ return;
34
+ }
35
+ if (versions.length !== 1) {
36
+ callback(new Error(`Version ${versionExpression} resolved to multiple versions: ${versions.map((x)=>x)}. Expecting one.`));
37
+ return;
38
+ }
30
39
  const version = versions[0];
31
40
  const result = createResult(options, version);
32
41
  checkMissing(result.installPath, options, (err, missing)=>{
33
- if (err || !missing.length) return callback(err, result);
42
+ if (err || !missing.length) {
43
+ callback(err, result);
44
+ return;
45
+ }
34
46
  const queue = new Queue(1);
35
47
  queue.defer(mkdirp.bind(null, options.cachePath));
36
48
  queue.defer(ensureDestinationParent.bind(null, result.installPath));
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/workers/install.ts"],"sourcesContent":["import isVersion from 'is-version';\nimport mkdirp from 'mkdirp-classic';\nimport resolveVersions from 'node-resolve-versions';\nimport Queue from 'queue-cb';\n\nimport { DEFAULT_STORAGE_PATHS } from '../constants.ts';\n\nimport createResult from '../createResult.ts';\nimport createStoragePaths from '../createStoragePaths.ts';\nimport installNode from '../installNode/index.ts';\n\nimport installNPM from '../installNPM/index.ts';\nimport checkMissing from '../lib/checkMissing.ts';\nimport ensureDestinationParent from '../lib/ensureDestinationParent.ts';\nimport getTarget from '../lib/getTarget.ts';\n\n// short circuit\nfunction getVersions(versionExpression, options, callback) {\n isVersion(versionExpression) ? callback(null, [versionExpression]) : resolveVersions(versionExpression, options, callback);\n}\n\nexport default function install(versionExpression, options, callback) {\n const storagePaths = options.storagePath ? createStoragePaths(options.storagePath) : DEFAULT_STORAGE_PATHS;\n options = { ...storagePaths, ...options, ...getTarget(options) };\n getVersions(versionExpression, options, (err, versions) => {\n if (err) return callback(err);\n if (!versions.length) return callback(new Error(`Could not resolve versions for: ${versionExpression}`));\n if (versions.length !== 1) return callback(new Error(`Version ${versionExpression} resolved to multiple versions: ${versions.map((x) => x.version)}. Expecting one.`));\n\n const version = versions[0];\n const result = createResult(options, version);\n\n checkMissing(result.installPath, options, (err, missing) => {\n if (err || !missing.length) return callback(err, result);\n\n const queue = new Queue(1);\n queue.defer(mkdirp.bind(null, options.cachePath));\n queue.defer(ensureDestinationParent.bind(null, result.installPath));\n !~missing.indexOf('node') || queue.defer(installNode.bind(null, version, result.installPath, options));\n !~missing.indexOf('npm') || queue.defer(installNPM.bind(null, version, result.installPath, options));\n queue.await((err) => (err ? callback(err) : callback(null, result)));\n });\n });\n}\n"],"names":["isVersion","mkdirp","resolveVersions","Queue","DEFAULT_STORAGE_PATHS","createResult","createStoragePaths","installNode","installNPM","checkMissing","ensureDestinationParent","getTarget","getVersions","versionExpression","options","callback","install","storagePaths","storagePath","err","versions","length","Error","map","x","version","result","installPath","missing","queue","defer","bind","cachePath","indexOf","await"],"mappings":"AAAA,OAAOA,eAAe,aAAa;AACnC,OAAOC,YAAY,iBAAiB;AACpC,OAAOC,qBAAqB,wBAAwB;AACpD,OAAOC,WAAW,WAAW;AAE7B,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAOC,kBAAkB,qBAAqB;AAC9C,OAAOC,wBAAwB,2BAA2B;AAC1D,OAAOC,iBAAiB,0BAA0B;AAElD,OAAOC,gBAAgB,yBAAyB;AAChD,OAAOC,kBAAkB,yBAAyB;AAClD,OAAOC,6BAA6B,oCAAoC;AACxE,OAAOC,eAAe,sBAAsB;AAE5C,gBAAgB;AAChB,SAASC,YAAYC,iBAAiB,EAAEC,OAAO,EAAEC,QAAQ;IACvDf,UAAUa,qBAAqBE,SAAS,MAAM;QAACF;KAAkB,IAAIX,gBAAgBW,mBAAmBC,SAASC;AACnH;AAEA,eAAe,SAASC,QAAQH,iBAAiB,EAAEC,OAAO,EAAEC,QAAQ;IAClE,MAAME,eAAeH,QAAQI,WAAW,GAAGZ,mBAAmBQ,QAAQI,WAAW,IAAId;IACrFU,UAAU;QAAE,GAAGG,YAAY;QAAE,GAAGH,OAAO;QAAE,GAAGH,UAAUG,QAAQ;IAAC;IAC/DF,YAAYC,mBAAmBC,SAAS,CAACK,KAAKC;QAC5C,IAAID,KAAK,OAAOJ,SAASI;QACzB,IAAI,CAACC,SAASC,MAAM,EAAE,OAAON,SAAS,IAAIO,MAAM,CAAC,gCAAgC,EAAET,mBAAmB;QACtG,IAAIO,SAASC,MAAM,KAAK,GAAG,OAAON,SAAS,IAAIO,MAAM,CAAC,QAAQ,EAAET,kBAAkB,gCAAgC,EAAEO,SAASG,GAAG,CAAC,CAACC,IAAMA,EAAEC,OAAO,EAAE,gBAAgB,CAAC;QAEpK,MAAMA,UAAUL,QAAQ,CAAC,EAAE;QAC3B,MAAMM,SAASrB,aAAaS,SAASW;QAErChB,aAAaiB,OAAOC,WAAW,EAAEb,SAAS,CAACK,KAAKS;YAC9C,IAAIT,OAAO,CAACS,QAAQP,MAAM,EAAE,OAAON,SAASI,KAAKO;YAEjD,MAAMG,QAAQ,IAAI1B,MAAM;YACxB0B,MAAMC,KAAK,CAAC7B,OAAO8B,IAAI,CAAC,MAAMjB,QAAQkB,SAAS;YAC/CH,MAAMC,KAAK,CAACpB,wBAAwBqB,IAAI,CAAC,MAAML,OAAOC,WAAW;YACjE,CAAC,CAACC,QAAQK,OAAO,CAAC,WAAWJ,MAAMC,KAAK,CAACvB,YAAYwB,IAAI,CAAC,MAAMN,SAASC,OAAOC,WAAW,EAAEb;YAC7F,CAAC,CAACc,QAAQK,OAAO,CAAC,UAAUJ,MAAMC,KAAK,CAACtB,WAAWuB,IAAI,CAAC,MAAMN,SAASC,OAAOC,WAAW,EAAEb;YAC3Fe,MAAMK,KAAK,CAAC,CAACf,MAASA,MAAMJ,SAASI,OAAOJ,SAAS,MAAMW;QAC7D;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-install-release/src/workers/install.ts"],"sourcesContent":["import isVersion from 'is-version';\nimport mkdirp from 'mkdirp-classic';\nimport resolveVersions from 'node-resolve-versions';\nimport Queue from 'queue-cb';\n\nimport { DEFAULT_STORAGE_PATHS } from '../constants.ts';\n\nimport createResult from '../createResult.ts';\nimport createStoragePaths from '../createStoragePaths.ts';\nimport installNode from '../installNode/index.ts';\n\nimport installNPM from '../installNPM/index.ts';\nimport checkMissing from '../lib/checkMissing.ts';\nimport ensureDestinationParent from '../lib/ensureDestinationParent.ts';\nimport getTarget from '../lib/getTarget.ts';\n\nimport type { InstallCallback, InstallOptions } from '../types.ts';\n\ntype GetVersionsCallback = (error?: Error, results?: string[]) => undefined;\nfunction getVersions(versionExpression: string, options: InstallOptions, callback: GetVersionsCallback): undefined {\n // short circuit\n isVersion(versionExpression) ? callback(null, [versionExpression]) : resolveVersions(versionExpression, options, callback);\n}\n\nexport default function install(versionExpression: string, options: InstallOptions, callback: InstallCallback): undefined {\n const storagePaths = options.storagePath ? createStoragePaths(options.storagePath) : DEFAULT_STORAGE_PATHS;\n options = { ...storagePaths, ...options, ...getTarget(options) };\n getVersions(versionExpression, options, (err?: Error, versions?: string[]): undefined => {\n if (err) {\n callback(err);\n return;\n }\n if (!versions.length) {\n callback(new Error(`Could not resolve versions for: ${versionExpression}`));\n return;\n }\n if (versions.length !== 1) {\n callback(new Error(`Version ${versionExpression} resolved to multiple versions: ${versions.map((x) => x)}. Expecting one.`));\n return;\n }\n\n const version = versions[0];\n const result = createResult(options, version);\n\n checkMissing(result.installPath, options, (err, missing): undefined => {\n if (err || !missing.length) {\n callback(err, result);\n return;\n }\n\n const queue = new Queue(1);\n queue.defer(mkdirp.bind(null, options.cachePath));\n queue.defer(ensureDestinationParent.bind(null, result.installPath));\n !~missing.indexOf('node') || queue.defer(installNode.bind(null, version, result.installPath, options));\n !~missing.indexOf('npm') || queue.defer(installNPM.bind(null, version, result.installPath, options));\n queue.await((err) => (err ? callback(err) : callback(null, result)));\n });\n });\n}\n"],"names":["isVersion","mkdirp","resolveVersions","Queue","DEFAULT_STORAGE_PATHS","createResult","createStoragePaths","installNode","installNPM","checkMissing","ensureDestinationParent","getTarget","getVersions","versionExpression","options","callback","install","storagePaths","storagePath","err","versions","length","Error","map","x","version","result","installPath","missing","queue","defer","bind","cachePath","indexOf","await"],"mappings":"AAAA,OAAOA,eAAe,aAAa;AACnC,OAAOC,YAAY,iBAAiB;AACpC,OAAOC,qBAAqB,wBAAwB;AACpD,OAAOC,WAAW,WAAW;AAE7B,SAASC,qBAAqB,QAAQ,kBAAkB;AAExD,OAAOC,kBAAkB,qBAAqB;AAC9C,OAAOC,wBAAwB,2BAA2B;AAC1D,OAAOC,iBAAiB,0BAA0B;AAElD,OAAOC,gBAAgB,yBAAyB;AAChD,OAAOC,kBAAkB,yBAAyB;AAClD,OAAOC,6BAA6B,oCAAoC;AACxE,OAAOC,eAAe,sBAAsB;AAK5C,SAASC,YAAYC,iBAAyB,EAAEC,OAAuB,EAAEC,QAA6B;IACpG,gBAAgB;IAChBf,UAAUa,qBAAqBE,SAAS,MAAM;QAACF;KAAkB,IAAIX,gBAAgBW,mBAAmBC,SAASC;AACnH;AAEA,eAAe,SAASC,QAAQH,iBAAyB,EAAEC,OAAuB,EAAEC,QAAyB;IAC3G,MAAME,eAAeH,QAAQI,WAAW,GAAGZ,mBAAmBQ,QAAQI,WAAW,IAAId;IACrFU,UAAU;QAAE,GAAGG,YAAY;QAAE,GAAGH,OAAO;QAAE,GAAGH,UAAUG,QAAQ;IAAC;IAC/DF,YAAYC,mBAAmBC,SAAS,CAACK,KAAaC;QACpD,IAAID,KAAK;YACPJ,SAASI;YACT;QACF;QACA,IAAI,CAACC,SAASC,MAAM,EAAE;YACpBN,SAAS,IAAIO,MAAM,CAAC,gCAAgC,EAAET,mBAAmB;YACzE;QACF;QACA,IAAIO,SAASC,MAAM,KAAK,GAAG;YACzBN,SAAS,IAAIO,MAAM,CAAC,QAAQ,EAAET,kBAAkB,gCAAgC,EAAEO,SAASG,GAAG,CAAC,CAACC,IAAMA,GAAG,gBAAgB,CAAC;YAC1H;QACF;QAEA,MAAMC,UAAUL,QAAQ,CAAC,EAAE;QAC3B,MAAMM,SAASrB,aAAaS,SAASW;QAErChB,aAAaiB,OAAOC,WAAW,EAAEb,SAAS,CAACK,KAAKS;YAC9C,IAAIT,OAAO,CAACS,QAAQP,MAAM,EAAE;gBAC1BN,SAASI,KAAKO;gBACd;YACF;YAEA,MAAMG,QAAQ,IAAI1B,MAAM;YACxB0B,MAAMC,KAAK,CAAC7B,OAAO8B,IAAI,CAAC,MAAMjB,QAAQkB,SAAS;YAC/CH,MAAMC,KAAK,CAACpB,wBAAwBqB,IAAI,CAAC,MAAML,OAAOC,WAAW;YACjE,CAAC,CAACC,QAAQK,OAAO,CAAC,WAAWJ,MAAMC,KAAK,CAACvB,YAAYwB,IAAI,CAAC,MAAMN,SAASC,OAAOC,WAAW,EAAEb;YAC7F,CAAC,CAACc,QAAQK,OAAO,CAAC,UAAUJ,MAAMC,KAAK,CAACtB,WAAWuB,IAAI,CAAC,MAAMN,SAASC,OAAOC,WAAW,EAAEb;YAC3Fe,MAAMK,KAAK,CAAC,CAACf,MAASA,MAAMJ,SAASI,OAAOJ,SAAS,MAAMW;QAC7D;IACF;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-install-release",
3
- "version": "1.12.4",
3
+ "version": "1.13.0",
4
4
  "description": "Cross-platform solution for installing releases of Node.js",
5
5
  "keywords": [
6
6
  "node",
@@ -44,15 +44,15 @@
44
44
  "cross-spawn-cb": "^2.3.3",
45
45
  "exit": "^0.1.2",
46
46
  "fast-extract": "^1.4.16",
47
- "function-exec-sync": "^1.3.2",
47
+ "function-exec-sync": "^1.3.3",
48
48
  "get-remote": "^2.0.3",
49
49
  "getopts-compat": "^2.2.6",
50
50
  "homedir-polyfill": "^1.0.3",
51
51
  "is-version": "^0.2.17",
52
52
  "lodash.keys": "^4.2.0",
53
53
  "mkdirp-classic": "^0.5.3",
54
- "node-filename-to-dist-paths": "^1.2.1",
55
- "node-resolve-versions": "^1.0.52",
54
+ "node-filename-to-dist-paths": "^1.2.2",
55
+ "node-resolve-versions": "^1.2.0",
56
56
  "on-one": "^0.1.9",
57
57
  "pump": "^3.0.3",
58
58
  "queue-cb": "^1.5.5",