refactors

This commit is contained in:
silverwind 2020-03-08 14:45:20 +01:00
parent 356e01bdc3
commit 6325f4c917
Signed by: silverwind
GPG Key ID: 2E62B41C93869443

@ -4,20 +4,21 @@
const chalk = require("chalk"); const chalk = require("chalk");
const fetch = require("make-fetch-happen"); const fetch = require("make-fetch-happen");
const findUp = require("find-up"); const findUp = require("find-up");
const gitInfo = memoize(require("hosted-git-info").fromUrl);
const minimist = require("minimist"); const minimist = require("minimist");
const rat = require("registry-auth-token");
const rc = require("rc"); const rc = require("rc");
const registryAuthToken = memoize(require("registry-auth-token")); const ru = require("registry-auth-token/registry-url");
const registryUrl = memoize(require("registry-auth-token/registry-url"));
const semver = require("semver"); const semver = require("semver");
const stringWidth = require("string-width"); const stringWidth = require("string-width");
const textTable = require("text-table"); const textTable = require("text-table");
const {fromUrl} = require("hosted-git-info");
const {join} = require("path"); const {join} = require("path");
const {lstatSync, readFileSync, truncateSync, writeFileSync} = require("fs"); const {lstatSync, readFileSync, truncateSync, writeFileSync} = require("fs");
const {platform} = require("os"); const {platform} = require("os");
const {version} = require("./package.json"); const {version} = require("./package.json");
process.env.NODE_ENV = "production"; process.env.NODE_ENV = "production";
const MAX_SOCKETS = 64; const MAX_SOCKETS = 64;
const sep = "\0"; const sep = "\0";
@ -27,6 +28,16 @@ const stripRe = /^.*?:\/\/(.*?@)?(github\.com[:/])/i;
const partsRe = /^([^/]+)\/([^/#]+)?.*?([0-9a-f]+|v?[0-9]+\.[0-9]+\.[0-9]+)$/i; const partsRe = /^([^/]+)\/([^/#]+)?.*?([0-9a-f]+|v?[0-9]+\.[0-9]+\.[0-9]+)$/i;
const hashRe = /^[0-9a-f]+$/i; const hashRe = /^[0-9a-f]+$/i;
const memoize = (fn) => {
const cache = {};
return (arg, arg2) => cache[arg] || (cache[arg] = fn(arg, arg2));
};
const esc = str => str.replace(/[|\\{}()[\]^$+*?.-]/g, "\\$&");
const gitInfo = memoize(fromUrl);
const registryAuthToken = memoize(rat);
const registryUrl = memoize(ru);
const args = minimist(process.argv.slice(2), { const args = minimist(process.argv.slice(2), {
boolean: [ boolean: [
"c", "color", "c", "color",
@ -213,15 +224,6 @@ if (!Object.keys(deps).length) {
} }
} }
function esc(str) {
return str.replace(/[|\\{}()[\]^$+*?.-]/g, "\\$&");
}
function memoize(fn) {
const cache = {};
return (arg, arg2) => cache[arg] || (cache[arg] = fn(arg, arg2));
}
function getAuthAndRegistry(name, registry) { function getAuthAndRegistry(name, registry) {
if (!name.startsWith("@")) { if (!name.startsWith("@")) {
return [registryAuthToken(registry, authTokenOpts), registry]; return [registryAuthToken(registry, authTokenOpts), registry];