$39 GRAYBYTE WORDPRESS FILE MANAGER $34

SERVER : vnpttt-amd7f72-h1.vietnix.vn #1 SMP Fri May 24 12:42:50 UTC 2024
SERVER IP : 103.200.23.149 | ADMIN IP 216.73.216.22
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/lib/node_modules/npm/lib/

HOME
Current File : /lib/node_modules/npm/lib//cache.js
'use strict'
/* eslint-disable standard/no-callback-literal */

const BB = require('bluebird')

const assert = require('assert')
const cacache = require('cacache')
const finished = BB.promisify(require('mississippi').finished)
const log = require('npmlog')
const npa = require('npm-package-arg')
const npm = require('./npm.js')
const npmConfig = require('./config/figgy-config.js')
const output = require('./utils/output.js')
const pacote = require('pacote')
const path = require('path')
const rm = BB.promisify(require('./utils/gently-rm.js'))
const unbuild = BB.promisify(npm.commands.unbuild)

cache.usage = 'npm cache add <tarball file>' +
              '\nnpm cache add <folder>' +
              '\nnpm cache add <tarball url>' +
              '\nnpm cache add <git url>' +
              '\nnpm cache add <name>@<version>' +
              '\nnpm cache clean' +
              '\nnpm cache verify'

cache.completion = function (opts, cb) {
  var argv = opts.conf.argv.remain
  if (argv.length === 2) {
    return cb(null, ['add', 'clean'])
  }

  // TODO - eventually...
  switch (argv[2]) {
    case 'clean':
    case 'add':
      return cb(null, [])
  }
}

exports = module.exports = cache
function cache (args, cb) {
  const cmd = args.shift()
  let result
  switch (cmd) {
    case 'rm': case 'clear': case 'clean':
      result = clean(args)
      break
    case 'add':
      result = add(args, npm.prefix)
      break
    case 'verify': case 'check':
      result = verify()
      break
    default: return cb('Usage: ' + cache.usage)
  }
  if (!result || !result.then) {
    throw new Error(`npm cache ${cmd} handler did not return a Promise`)
  }
  result.then(() => cb(), cb)
}

// npm cache clean [pkg]*
cache.clean = clean
function clean (args) {
  if (!args) args = []
  if (args.length) {
    return BB.reject(new Error('npm cache clear does not accept arguments'))
  }
  const cachePath = path.join(npm.cache, '_cacache')
  if (!npm.config.get('force')) {
    return BB.reject(new Error("As of npm@5, the npm cache self-heals from corruption issues and data extracted from the cache is guaranteed to be valid. If you want to make sure everything is consistent, use 'npm cache verify' instead. On the other hand, if you're debugging an issue with the installer, you can use `npm install --cache /tmp/empty-cache` to use a temporary cache instead of nuking the actual one.\n\nIf you're sure you want to delete the entire cache, rerun this command with --force."))
  }
  // TODO - remove specific packages or package versions
  return rm(cachePath)
}

// npm cache add <tarball-url>
// npm cache add <pkg> <ver>
// npm cache add <tarball>
// npm cache add <folder>
cache.add = function (pkg, ver, where, scrub) {
  assert(typeof pkg === 'string', 'must include name of package to install')
  if (scrub) {
    return clean([]).then(() => {
      return add([pkg, ver], where)
    })
  }
  return add([pkg, ver], where)
}

function add (args, where) {
  var usage = 'Usage:\n' +
              '    npm cache add <tarball-url>\n' +
              '    npm cache add <pkg>@<ver>\n' +
              '    npm cache add <tarball>\n' +
              '    npm cache add <folder>\n'
  var spec
  log.silly('cache add', 'args', args)
  if (args[1] === undefined) args[1] = null
  // at this point the args length must ==2
  if (args[1] !== null) {
    spec = args[0] + '@' + args[1]
  } else if (args.length === 2) {
    spec = args[0]
  }
  log.verbose('cache add', 'spec', spec)
  if (!spec) return BB.reject(new Error(usage))
  log.silly('cache add', 'parsed spec', spec)
  return finished(pacote.tarball.stream(spec, npmConfig({where})).resume())
}

cache.verify = verify
function verify () {
  const cache = path.join(npm.config.get('cache'), '_cacache')
  let prefix = cache
  if (prefix.indexOf(process.env.HOME) === 0) {
    prefix = '~' + prefix.substr(process.env.HOME.length)
  }
  return cacache.verify(cache).then((stats) => {
    output(`Cache verified and compressed (${prefix}):`)
    output(`Content verified: ${stats.verifiedContent} (${stats.keptSize} bytes)`)
    stats.badContentCount && output(`Corrupted content removed: ${stats.badContentCount}`)
    stats.reclaimedCount && output(`Content garbage-collected: ${stats.reclaimedCount} (${stats.reclaimedSize} bytes)`)
    stats.missingContent && output(`Missing content: ${stats.missingContent}`)
    output(`Index entries: ${stats.totalEntries}`)
    output(`Finished in ${stats.runTime.total / 1000}s`)
  })
}

cache.unpack = unpack
function unpack (pkg, ver, unpackTarget, dmode, fmode, uid, gid) {
  return unbuild([unpackTarget], true).then(() => {
    const opts = npmConfig({dmode, fmode, uid, gid, offline: true})
    return pacote.extract(npa.resolve(pkg, ver), unpackTarget, opts)
  })
}

Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
1 Jan 1970 8.00 AM
root / root
0
auth
--
31 Aug 2024 8.02 AM
root / root
0755
config
--
31 Aug 2024 8.02 AM
root / root
0755
doctor
--
31 Aug 2024 8.02 AM
root / root
0755
install
--
31 Aug 2024 8.02 AM
root / root
0755
search
--
31 Aug 2024 8.02 AM
root / root
0755
utils
--
31 Aug 2024 8.02 AM
root / root
0755
access.js
5.539 KB
10 Mar 2021 9.36 PM
root / root
0644
adduser.js
1.306 KB
10 Mar 2021 9.36 PM
root / root
0644
audit.js
10.558 KB
10 Mar 2021 9.36 PM
root / root
0644
bin.js
0.503 KB
10 Mar 2021 9.36 PM
root / root
0644
bugs.js
0.844 KB
10 Mar 2021 9.36 PM
root / root
0644
build.js
4.438 KB
10 Mar 2021 9.36 PM
root / root
0644
cache.js
4.661 KB
10 Mar 2021 9.36 PM
root / root
0644
ci.js
1.31 KB
10 Mar 2021 9.36 PM
root / root
0644
completion.js
7.107 KB
10 Mar 2021 9.36 PM
root / root
0644
config.js
7.434 KB
10 Mar 2021 9.36 PM
root / root
0644
dedupe.js
4.882 KB
10 Mar 2021 9.36 PM
root / root
0644
deprecate.js
2.106 KB
10 Mar 2021 9.36 PM
root / root
0644
dist-tag.js
4.105 KB
10 Mar 2021 9.36 PM
root / root
0644
docs.js
1.038 KB
10 Mar 2021 9.36 PM
root / root
0644
doctor.js
3.979 KB
10 Mar 2021 9.36 PM
root / root
0644
edit.js
1.374 KB
10 Mar 2021 9.36 PM
root / root
0644
explore.js
1.669 KB
10 Mar 2021 9.36 PM
root / root
0644
fetch-package-metadata.js
3.969 KB
10 Mar 2021 9.36 PM
root / root
0644
fetch-package-metadata.md
1.769 KB
10 Mar 2021 9.36 PM
root / root
0644
fund.js
4.908 KB
10 Mar 2021 9.36 PM
root / root
0644
get.js
0.229 KB
10 Mar 2021 9.36 PM
root / root
0644
help-search.js
5.642 KB
10 Mar 2021 9.36 PM
root / root
0644
help.js
6.354 KB
10 Mar 2021 9.36 PM
root / root
0644
hook.js
4.616 KB
10 Mar 2021 9.36 PM
root / root
0644
init.js
2.739 KB
10 Mar 2021 9.36 PM
root / root
0644
install-ci-test.js
0.475 KB
10 Mar 2021 9.36 PM
root / root
0644
install-test.js
0.495 KB
10 Mar 2021 9.36 PM
root / root
0644
install.js
36.47 KB
10 Mar 2021 9.36 PM
root / root
0644
link.js
5.604 KB
10 Mar 2021 9.36 PM
root / root
0644
logout.js
1.259 KB
10 Mar 2021 9.36 PM
root / root
0644
ls.js
16.094 KB
10 Mar 2021 9.36 PM
root / root
0644
npm.js
14.374 KB
10 Mar 2021 9.36 PM
root / root
0644
org.js
4.176 KB
10 Mar 2021 9.36 PM
root / root
0644
outdated.js
12.277 KB
10 Mar 2021 9.36 PM
root / root
0644
owner.js
6.596 KB
10 Mar 2021 9.36 PM
root / root
0644
pack.js
11.785 KB
10 Mar 2021 9.36 PM
root / root
0644
ping.js
1.114 KB
10 Mar 2021 9.36 PM
root / root
0644
prefix.js
0.322 KB
10 Mar 2021 9.36 PM
root / root
0644
profile.js
11.134 KB
10 Mar 2021 9.36 PM
root / root
0644
prune.js
2.228 KB
10 Mar 2021 9.36 PM
root / root
0644
publish.js
5.141 KB
10 Mar 2021 9.36 PM
root / root
0644
rebuild.js
2.093 KB
10 Mar 2021 9.36 PM
root / root
0644
repo.js
1.437 KB
10 Mar 2021 9.36 PM
root / root
0644
restart.js
0.063 KB
10 Mar 2021 9.36 PM
root / root
0644
root.js
0.313 KB
10 Mar 2021 9.36 PM
root / root
0644
run-script.js
5.41 KB
10 Mar 2021 9.36 PM
root / root
0644
search.js
3.361 KB
10 Mar 2021 9.36 PM
root / root
0644
set.js
0.27 KB
10 Mar 2021 9.36 PM
root / root
0644
shrinkwrap.js
9.82 KB
10 Mar 2021 9.36 PM
root / root
0644
star.js
2.106 KB
10 Mar 2021 9.36 PM
root / root
0644
stars.js
1.029 KB
10 Mar 2021 9.36 PM
root / root
0644
start.js
0.061 KB
10 Mar 2021 9.36 PM
root / root
0644
stop.js
0.06 KB
10 Mar 2021 9.36 PM
root / root
0644
substack.js
0.497 KB
10 Mar 2021 9.36 PM
root / root
0644
team.js
4.613 KB
10 Mar 2021 9.36 PM
root / root
0644
test.js
0.365 KB
10 Mar 2021 9.36 PM
root / root
0644
token.js
6.658 KB
10 Mar 2021 9.36 PM
root / root
0644
unbuild.js
4.271 KB
10 Mar 2021 9.36 PM
root / root
0644
uninstall.js
2.208 KB
10 Mar 2021 9.36 PM
root / root
0644
unpublish.js
3.51 KB
10 Mar 2021 9.36 PM
root / root
0644
update.js
2.161 KB
10 Mar 2021 9.36 PM
root / root
0644
version.js
9.794 KB
10 Mar 2021 9.36 PM
root / root
0644
view.js
15.11 KB
10 Mar 2021 9.36 PM
root / root
0644
visnup.js
4.008 KB
10 Mar 2021 9.36 PM
root / root
0644
whoami.js
1.767 KB
10 Mar 2021 9.36 PM
root / root
0644
xmas.js
1.624 KB
10 Mar 2021 9.36 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF