Linux s17.hosterpk.com 6.12.0-124.55.3.el10_1.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:54:02 EDT 2026 x86_64
LiteSpeed
Server IP : 192.169.89.90 & Your IP : 216.73.217.173
Domains :
Cant Read [ /etc/named.conf ]
User : hamzalar
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
node_modules_22 /
npm /
lib /
commands /
Delete
Unzip
Name
Size
Permission
Date
Action
access.js
6.04
KB
-rw-r--r--
2026-03-24 04:05
adduser.js
1.29
KB
-rw-r--r--
2026-03-24 04:05
audit.js
3.15
KB
-rw-r--r--
2026-03-24 04:05
bugs.js
847
B
-rw-r--r--
2026-03-24 04:05
cache.js
7.12
KB
-rw-r--r--
2026-03-24 04:05
ci.js
4.22
KB
-rw-r--r--
2026-03-24 04:05
completion.js
8.9
KB
-rw-r--r--
2026-03-24 04:05
config.js
11.18
KB
-rw-r--r--
2026-03-24 04:05
dedupe.js
1.41
KB
-rw-r--r--
2026-03-24 04:05
deprecate.js
2.13
KB
-rw-r--r--
2026-03-24 04:05
diff.js
8
KB
-rw-r--r--
2026-03-24 04:05
dist-tag.js
5.52
KB
-rw-r--r--
2026-03-24 04:05
docs.js
449
B
-rw-r--r--
2026-03-24 04:05
doctor.js
10.1
KB
-rw-r--r--
2026-03-24 04:05
edit.js
1.76
KB
-rw-r--r--
2026-03-24 04:05
exec.js
3.42
KB
-rw-r--r--
2026-03-24 04:05
explain.js
3.58
KB
-rw-r--r--
2026-03-24 04:05
explore.js
2.16
KB
-rw-r--r--
2026-03-24 04:05
find-dupes.js
634
B
-rw-r--r--
2026-03-24 04:05
fund.js
6.46
KB
-rw-r--r--
2026-03-24 04:05
get.js
577
B
-rw-r--r--
2026-03-24 04:05
help-search.js
5.52
KB
-rw-r--r--
2026-03-24 04:05
help.js
3.66
KB
-rw-r--r--
2026-03-24 04:05
hook.js
3.37
KB
-rw-r--r--
2026-03-24 04:05
init.js
6.85
KB
-rw-r--r--
2026-03-24 04:05
install-ci-test.js
373
B
-rw-r--r--
2026-03-24 04:05
install-test.js
370
B
-rw-r--r--
2026-03-24 04:05
install.js
5.15
KB
-rw-r--r--
2026-03-24 04:05
link.js
5.25
KB
-rw-r--r--
2026-03-24 04:05
ll.js
234
B
-rw-r--r--
2026-03-24 04:05
login.js
1.29
KB
-rw-r--r--
2026-03-24 04:05
logout.js
1.42
KB
-rw-r--r--
2026-03-24 04:05
ls.js
18.19
KB
-rw-r--r--
2026-03-24 04:05
org.js
4.02
KB
-rw-r--r--
2026-03-24 04:05
outdated.js
7.7
KB
-rw-r--r--
2026-03-24 04:05
owner.js
5.85
KB
-rw-r--r--
2026-03-24 04:05
pack.js
2.6
KB
-rw-r--r--
2026-03-24 04:05
ping.js
873
B
-rw-r--r--
2026-03-24 04:05
pkg.js
3.56
KB
-rw-r--r--
2026-03-24 04:05
prefix.js
335
B
-rw-r--r--
2026-03-24 04:05
profile.js
10.57
KB
-rw-r--r--
2026-03-24 04:05
prune.js
799
B
-rw-r--r--
2026-03-24 04:05
publish.js
7.38
KB
-rw-r--r--
2026-03-24 04:05
query.js
3.51
KB
-rw-r--r--
2026-03-24 04:05
rebuild.js
2.19
KB
-rw-r--r--
2026-03-24 04:05
repo.js
1.25
KB
-rw-r--r--
2026-03-24 04:05
restart.js
310
B
-rw-r--r--
2026-03-24 04:05
root.js
295
B
-rw-r--r--
2026-03-24 04:05
run-script.js
6.08
KB
-rw-r--r--
2026-03-24 04:05
sbom.js
4.51
KB
-rw-r--r--
2026-03-24 04:05
search.js
1.83
KB
-rw-r--r--
2026-03-24 04:05
set.js
671
B
-rw-r--r--
2026-03-24 04:05
shrinkwrap.js
2.65
KB
-rw-r--r--
2026-03-24 04:05
star.js
1.87
KB
-rw-r--r--
2026-03-24 04:05
stars.js
1.03
KB
-rw-r--r--
2026-03-24 04:05
start.js
300
B
-rw-r--r--
2026-03-24 04:05
stop.js
295
B
-rw-r--r--
2026-03-24 04:05
team.js
4.36
KB
-rw-r--r--
2026-03-24 04:05
test.js
295
B
-rw-r--r--
2026-03-24 04:05
token.js
6.02
KB
-rw-r--r--
2026-03-24 04:05
uninstall.js
1.52
KB
-rw-r--r--
2026-03-24 04:05
unpublish.js
5.27
KB
-rw-r--r--
2026-03-24 04:05
unstar.js
183
B
-rw-r--r--
2026-03-24 04:05
update.js
1.72
KB
-rw-r--r--
2026-03-24 04:05
version.js
3.54
KB
-rw-r--r--
2026-03-24 04:05
view.js
12.8
KB
-rw-r--r--
2026-03-24 04:05
whoami.js
527
B
-rw-r--r--
2026-03-24 04:05
Save
Rename
const localeCompare = require('@isaacs/string-locale-compare')('en') const BaseCommand = require('../base-cmd.js') const { log, output } = require('proc-log') const { cyclonedxOutput } = require('../utils/sbom-cyclonedx.js') const { spdxOutput } = require('../utils/sbom-spdx.js') const SBOM_FORMATS = ['cyclonedx', 'spdx'] class SBOM extends BaseCommand { #response = {} // response is the sbom response static description = 'Generate a Software Bill of Materials (SBOM)' static name = 'sbom' static workspaces = true static params = [ 'omit', 'package-lock-only', 'sbom-format', 'sbom-type', 'workspace', 'workspaces', ] async exec () { const sbomFormat = this.npm.config.get('sbom-format') const packageLockOnly = this.npm.config.get('package-lock-only') if (!sbomFormat) { /* eslint-disable-next-line max-len */ throw this.usageError(`Must specify --sbom-format flag with one of: ${SBOM_FORMATS.join(', ')}.`) } const opts = { ...this.npm.flatOptions, path: this.npm.prefix, forceActual: true, } const Arborist = require('@npmcli/arborist') const arb = new Arborist(opts) const tree = packageLockOnly ? await arb.loadVirtual(opts).catch(() => { /* eslint-disable-next-line max-len */ throw this.usageError('A package lock or shrinkwrap file is required in package-lock-only mode') }) : await arb.loadActual(opts) // Collect the list of selected workspaces in the project const wsNodes = this.workspaceNames?.length ? arb.workspaceNodes(tree, this.workspaceNames) : null // Build the selector and query the tree for the list of nodes const selector = this.#buildSelector({ wsNodes }) log.info('sbom', `Using dependency selector: ${selector}`) const items = await tree.querySelectorAll(selector) const errors = items.flatMap(node => detectErrors(node)) if (errors.length) { throw Object.assign(new Error([...new Set(errors)].join('\n')), { code: 'ESBOMPROBLEMS', }) } // Populate the response with the list of unique nodes (sorted by location) this.#buildResponse(items.sort((a, b) => localeCompare(a.location, b.location))) // TODO(BREAKING_CHANGE): all sbom output is in json mode but setting it before // any of the errors will cause those to be thrown in json mode. this.npm.config.set('json', true) output.buffer(this.#response) } async execWorkspaces (args) { await this.setWorkspaces() return this.exec(args) } // Build the selector from all of the specified filter options #buildSelector ({ wsNodes }) { let selector const omit = this.npm.flatOptions.omit const workspacesEnabled = this.npm.flatOptions.workspacesEnabled // If omit is specified, omit all nodes and their children which match the // specified selectors const omits = omit.reduce((acc, o) => `${acc}:not(.${o})`, '') if (!workspacesEnabled) { // If workspaces are disabled, omit all workspace nodes and their children selector = `:root > :not(.workspace)${omits},:root > :not(.workspace) *${omits},:extraneous` } else if (wsNodes && wsNodes.length > 0) { // If one or more workspaces are selected, select only those workspaces and their children selector = wsNodes.map(ws => `#${ws.name},#${ws.name} *${omits}`).join(',') } else { selector = `:root *${omits},:extraneous` } // Always include the root node return `:root,${selector}` } // builds a normalized inventory #buildResponse (items) { const sbomFormat = this.npm.config.get('sbom-format') const packageType = this.npm.config.get('sbom-type') const packageLockOnly = this.npm.config.get('package-lock-only') this.#response = sbomFormat === 'cyclonedx' ? cyclonedxOutput({ npm: this.npm, nodes: items, packageType, packageLockOnly }) : spdxOutput({ npm: this.npm, nodes: items, packageType }) } } const detectErrors = (node) => { const errors = [] // Look for missing dependencies (that are NOT optional), or invalid dependencies for (const edge of node.edgesOut.values()) { if (edge.missing && !(edge.type === 'optional' || edge.type === 'peerOptional')) { errors.push(`missing: ${edge.name}@${edge.spec}, required by ${edge.from.pkgid}`) } if (edge.invalid) { /* istanbul ignore next */ const spec = edge.spec || '*' const from = edge.from.pkgid errors.push(`invalid: ${edge.to.pkgid}, ${spec} required by ${from}`) } } return errors } module.exports = SBOM