123456789101112131415161718192021222324252627282930313233343536373839 |
- var Q = require('q');
- var RegistryClient = require('bower-registry-client');
- var cli = require('../util/cli');
- var Tracker = require('../util/analytics').Tracker;
- var defaultConfig = require('../config');
- function search(logger, name, config) {
- var registryClient;
- var tracker;
- config = defaultConfig(config);
- config.cache = config.storage.registry;
- registryClient = new RegistryClient(config, logger);
- tracker = new Tracker(config);
- tracker.track('search', name);
- // If no name was specified, list all packages
- if (!name) {
- return Q.nfcall(registryClient.list.bind(registryClient));
- // Otherwise search it
- } else {
- return Q.nfcall(registryClient.search.bind(registryClient), name);
- }
- }
- // -------------------
- search.line = function (logger, argv) {
- var options = cli.readOptions(argv);
- var name = options.argv.remain.slice(1).join(' ');
- return search(logger, name, options);
- };
- search.completion = function () {
- // TODO:
- };
- module.exports = search;
|