Dive into secure and efficient coding practices with our curated list of the top 10 examples showcasing 'npm-registry-fetch' in functional components in JavaScript. Our advanced machine learning engine meticulously scans each line of code, cross-referencing millions of open source libraries to ensure your implementation is not just functional, but also robust and secure. Elevate your React applications to new heights by mastering the art of handling side effects, API calls, and asynchronous operations with confidence and precision.
async function getAvailableHaulPreset(
progress: Ora,
targetHaulPreset: string
): Promise {
// Stop searching on 0.59 - there's no preset below 0.59.
if (targetHaulPreset.includes('0.59')) {
return targetHaulPreset;
}
try {
await npmFetch(targetHaulPreset);
return targetHaulPreset;
} catch (error) {
if (error.statusCode === 404) {
progress.info(
`${targetHaulPreset} not available. Trying older version...`
);
const previousHaulPreset = targetHaulPreset.replace(/-0\.\d+$/, match => {
const [major, minor] = match.slice(1).split('.');
return `-${major}.${parseInt(minor, 10) - 1}`;
});
return await getAvailableHaulPreset(progress, previousHaulPreset);
}
return targetHaulPreset;
}
}
return libaccess.lsPackages(username, opts).then(access => {
// do a bit of filtering at this point, so that we don't need
// to fetch versions for more than one thing, but also don't
// accidentally a whole project.
let pkgs = Object.keys(access)
if (!cliOpts.partialWord || !pkgs.length) { return pkgs }
const pp = npa(cliOpts.partialWord).name
pkgs = pkgs.filter(p => !p.indexOf(pp))
if (pkgs.length > 1) return pkgs
return npmFetch.json(npa(pkgs[0]).escapedName, opts).then(doc => {
const vers = Object.keys(doc.versions)
if (!vers.length) {
return pkgs
} else {
return vers.map(v => `${pkgs[0]}@${v}`)
}
})
})
}).nodeify(cb)
function annotateManifest (spec, manifest, opts) {
const shasum = manifest.dist && manifest.dist.shasum
manifest._integrity = manifest.dist && manifest.dist.integrity
manifest._shasum = shasum
if (!manifest._integrity && shasum) {
// Use legacy dist.shasum field if available.
manifest._integrity = ssri.fromHex(shasum, 'sha1').toString()
}
manifest._resolved = (
manifest.dist && manifest.dist.tarball
)
if (!manifest._resolved) {
const registry = fetch.pickRegistry(spec, opts)
const uri = registry.replace(/\/?$/, '/') + spec.escapedName
const err = new Error(
`Manifest for ${manifest.name}@${manifest.version} from ${uri} is missing a tarball url (pkg.dist.tarball). Guessing a default.`
)
err.code = 'ENOTARBALL'
err.manifest = manifest
if (!manifest._warnings) { manifest._warnings = [] }
manifest._warnings.push(err.message)
manifest._resolved =
`${registry}/${manifest.name}/-/${manifest.name}-${manifest.version}.tgz`
}
return manifest
}
constructor (spec, opts) {
super(spec, opts)
// try to use corgis if available
this.fullMetadata = !!opts.fullMetadata
// handle case when npm-package-arg guesses wrong.
if (this.spec.type === 'tag' &&
this.spec.rawSpec === '' &&
this.tag !== 'latest')
this.spec = npa(`${this.spec.name}@${this.tag}`)
this.registry = fetch.pickRegistry(spec, opts)
this.packumentUrl = this.registry.replace(/\/*$/, '/') +
this.spec.escapedName
// XXX pacote <=9 has some logic to ignore opts.resolved if
// the resolved URL doesn't go to the same registry.
// Consider reproducing that here, to throw away this.resolved
// in that case.
}
function tarball (spec, opts) {
opts = optCheck(opts)
const registry = fetch.pickRegistry(spec, opts)
const stream = new PassThrough()
let mani
if (
opts.resolved &&
// spec.type === 'version' &&
opts.resolved.indexOf(registry) === 0
) {
// fakeChild is a shortcut to avoid looking up a manifest!
mani = BB.resolve({
name: spec.name,
version: spec.fetchSpec,
_integrity: opts.integrity,
_resolved: opts.resolved,
_fakeChild: true
})
} else {
const body = {
_id: 'org.couchdb.user:' + username,
name: username,
password: password,
type: 'user',
roles: [],
date: new Date().toISOString()
}
const logObj = {}
Object.keys(body).forEach(k => {
logObj[k] = k === 'password' ? 'XXXXX' : body[k]
})
process.emit('log', 'verbose', 'login', 'before first PUT', logObj)
const target = '-/user/org.couchdb.user:' + encodeURIComponent(username)
return fetch.json(target, opts.concat({
method: 'PUT',
body
})).catch(err => {
if (err.code === 'E400') {
err.message = `There is no user with the username "${username}".`
throw err
}
if (err.code !== 'E409') throw err
return fetch.json(target, opts.concat({
query: {write: true}
})).then(result => {
Object.keys(result).forEach(function (k) {
if (!body[k] || k === 'roles') {
body[k] = result[k]
}
})
_id: 'org.couchdb.user:' + username,
name: username,
password: password,
email: email,
type: 'user',
roles: [],
date: new Date().toISOString()
}
const logObj = {}
Object.keys(body).forEach(k => {
logObj[k] = k === 'password' ? 'XXXXX' : body[k]
})
process.emit('log', 'verbose', 'adduser', 'before first PUT', logObj)
const target = '/-/user/org.couchdb.user:' + encodeURIComponent(username)
return fetch.json(target, opts.concat({
method: 'PUT',
body
})).then(result => {
result.username = username
return result
})
}
return new opts.Promise((resolve, reject) => {
validate('SSSO|SSZO', [org, user, role, opts])
user = user.replace(/^@?/, '')
org = org.replace(/^@?/, '')
fetch.json(`/-/org/${eu(org)}/user`, opts.concat({
method: 'PUT',
body: { user, role }
})).then(resolve, reject)
}).then(ret => Object.assign(new MembershipDetail(), ret))
}
function get (opts) {
validate('O', arguments)
return fetch.json('/-/npm/v1/user', opts)
}
cmd.find = (id, opts) => {
opts = HooksConfig(opts)
validate('SO', [id, opts])
return fetch.json(`/-/npm/v1/hooks/hook/${eu(id)}`, opts)
}