mirror of
https://github.com/titanscouting/tra-analysis.git
synced 2025-10-24 01:49:20 +00:00
push all website files
This commit is contained in:
50
website/node_modules/npm/lib/search/all-package-search.js
generated
vendored
Normal file
50
website/node_modules/npm/lib/search/all-package-search.js
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
var ms = require('mississippi')
|
||||
var allPackageMetadata = require('./all-package-metadata')
|
||||
var packageFilter = require('./package-filter.js')
|
||||
|
||||
module.exports = allPackageSearch
|
||||
function allPackageSearch (opts) {
|
||||
var searchSection = (opts.unicode ? '🤔 ' : '') + 'search'
|
||||
|
||||
// Get a stream with *all* the packages. This takes care of dealing
|
||||
// with the local cache as well, but that's an internal detail.
|
||||
var allEntriesStream = allPackageMetadata(opts.staleness)
|
||||
|
||||
// Grab a stream that filters those packages according to given params.
|
||||
var filterStream = streamFilter(function (pkg) {
|
||||
opts.log.gauge.pulse('search')
|
||||
opts.log.gauge.show({section: searchSection, logline: 'scanning ' + pkg.name})
|
||||
// Simply 'true' if the package matches search parameters.
|
||||
var match = packageFilter(pkg, opts.include, opts.exclude, {
|
||||
description: opts.description
|
||||
})
|
||||
return match
|
||||
})
|
||||
return ms.pipeline.obj(allEntriesStream, filterStream)
|
||||
}
|
||||
|
||||
function streamFilter (filter) {
|
||||
return ms.through.obj(function (data, enc, cb) {
|
||||
if (filter(data)) {
|
||||
this.push(standardizePkg(data))
|
||||
}
|
||||
cb()
|
||||
})
|
||||
}
|
||||
|
||||
function standardizePkg (data) {
|
||||
return {
|
||||
name: data.name,
|
||||
description: data.description,
|
||||
maintainers: (data.maintainers || []).map(function (m) {
|
||||
return { username: m.name, email: m.email }
|
||||
}),
|
||||
keywords: data.keywords || [],
|
||||
version: Object.keys(data.versions || {})[0] || [],
|
||||
date: (
|
||||
data.time &&
|
||||
data.time.modified &&
|
||||
new Date(data.time.modified)
|
||||
) || null
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user