import https from 'https'; const getDistVersion = async (packageName: string, distTag: string) => { const url = `https://registry.npmjs.org/-/package/${packageName}/dist-tags`; return new Promise((resolve, reject) => { https .get(url, (res) => { let body = ''; res.on('data', (chunk) => (body += chunk)); res.on('end', () => { try { const json = JSON.parse(body); const version = json[distTag]; if (!version) { reject(new Error('Error getting version')); } resolve(version); } catch { reject(new Error('Could not parse version response')); } }); }) .on('error', (err) => reject(err)); }); }; export default getDistVersion;