X7ROOT File Manager
Current Path:
/usr/local/lib/node_modules/npm/node_modules/libnpmdiff/lib
usr
/
local
/
lib
/
node_modules
/
npm
/
node_modules
/
libnpmdiff
/
lib
/
📁
..
📄
format-diff.js
(2.48 KB)
📄
index.js
(1.23 KB)
📄
should-print-patch.js
(516 B)
📄
tarball.js
(1.14 KB)
📄
untar.js
(2.33 KB)
Editing: tarball.js
const { relative } = require('path') const Arborist = require('@npmcli/arborist') const npa = require('npm-package-arg') const pkgContents = require('@npmcli/installed-package-contents') const pacote = require('pacote') const { tarCreateOptions } = pacote.DirFetcher const tar = require('tar') // returns a simplified tarball when reading files from node_modules folder, // thus avoiding running the prepare scripts and the extra logic from packlist const nodeModulesTarball = (manifest, opts) => pkgContents({ path: manifest._resolved, depth: 1 }) .then(files => files.map(file => relative(manifest._resolved, file)) ) .then(files => tar.c(tarCreateOptions(manifest), files).concat() ) const tarball = (manifest, opts) => { const resolved = manifest._resolved const where = opts.where || process.cwd() const fromNodeModules = npa(resolved).type === 'directory' && /node_modules[\\/](@[^\\/]+\/)?[^\\/]+[\\/]?$/.test(relative(where, resolved)) if (fromNodeModules) { return nodeModulesTarball(manifest, opts) } return pacote.tarball(manifest._resolved, { ...opts, Arborist, }) } module.exports = tarball
Upload File
Create Folder