UNPKG

resedit-cli

Version:

Command-line tool for editing Windows Resource data in executable binaries

44 lines (43 loc) 1.57 kB
import { createRequire } from 'module'; import * as log from '../log.js'; const require = createRequire(import.meta.url); const request = (() => { try { const packageJson = require('request/package.json'); if (typeof packageJson !== 'object' || packageJson === null || typeof packageJson.version !== 'string') { log.warn("Cannot determine 'request' package version"); } else { const versionTokens = packageJson.version.split('.'); if (versionTokens[0] !== '2' || Number(versionTokens[1]) < 88) { log.warn(`'request' module is found but unsupported version: ${packageJson.version} (expected: ^2.88.0)`); } } return require('request'); } catch (_a) { return null; } })(); export function isAvailable() { return request !== null; } export default function requestSimpleUsingModule(url, opt, cb) { log.debug("[sign] Use 'request' module"); const options = Object.assign(Object.assign({}, opt), { encoding: null }); request(url, options, (err, res, body) => { if (err !== null && err !== undefined) { cb(err, res.headers, body); } else { if (res.statusCode < 200 || res.statusCode >= 400) { cb(new Error(`Server error ${res.statusCode} ${res.statusMessage}`), res.headers, body); } else { cb(null, res.headers, body); } } }); }