开发者社区> 镜像站> NPM> mothership
mothership
Helps a module find its package.json mothership.
Last updated 7 years ago by thlorenz .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install mothership 
SYNC missed versions from official npm registry.

mothership build status

Helps a module find its package.json mothership.

var mothership = require('mothership')
  , path = require('path');

mothership(
    path.join(__dirname, 'uno', 'dos', 'tres')
  , function ismothership (pack) {
      return !!(pack.dependencies && pack.dependencies.unodep);
    }
  , function (err, res) {
      if (err) return console.error(err);
      console.log('first mothership', res.path);  // => [..]/example/uno/package.json
  }
)

// Synchronous
var res = mothership.sync(
    path.join(__dirname, 'uno', 'dos', 'tres')
  , function ismothership (pack) {
      return !!(pack.dependencies && pack.dependencies.unodep);
    }
)      

console.log('found mothership', res.path);  // => [..]/example/uno/package.json

Installation

npm install mothership

API

mothership(start, ismothership, cb)

Searches upwards from start for package.json files, asking for each if it is the mothership. If a mothership is found it calls back with that. If it reaches the top of the univers it calls back with nothing.

mothership result
  • path: full path to the package.json that is the mother ship
  • pack: the package.json object, same that was passed to ismothership
Parameters:
Name Type Description
start string

full path at which to start looking for the mothership

ismothership function

invoked with the package object, needs to return true if it is the mothership

cb function

called back with either an error or full path to package.json that is the mothership

Source:

mothership::sync(start, ismothership) → {string}

Synchronous version of mothership.

Parameters:
Name Type Description
start string

full path at which to start looking for the mothership

ismothership function

invoked with the package object, needs to return true if it is the mothership

Source:
Returns:

full path to package.json that is the mothership or null if it wasn't found

Type
string

generated with docme

License

MIT

Current Tags

  • 0.3.0                                ...           latest (7 years ago)

3 Versions

  • 0.3.0                                ...           7 years ago
  • 0.2.0                                ...           7 years ago
  • 0.1.0                                ...           7 years ago