{
  "_args": [
    [
      "gulp-load-plugins@https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.2.0.tgz",
      "/Users/nw/flint/packages/flint"
    ]
  ],
  "_from": "gulp-load-plugins@1.2.0",
  "_id": "gulp-load-plugins@1.2.0",
  "_inCache": true,
  "_location": "/gulp-load-plugins",
  "_phantomChildren": {
    "inflight": "1.0.4",
    "inherits": "2.0.1",
    "minimatch": "2.0.10",
    "once": "1.3.3"
  },
  "_requested": {
    "name": "gulp-load-plugins",
    "raw": "gulp-load-plugins@https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.2.0.tgz",
    "rawSpec": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.2.0.tgz",
    "scope": null,
    "spec": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.2.0.tgz",
    "type": "remote"
  },
  "_requiredBy": [
    "/"
  ],
  "_resolved": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.2.0.tgz",
  "_shasum": "49513d284313cba79b8446e17cb36311e5175b70",
  "_shrinkwrap": null,
  "_spec": "gulp-load-plugins@https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-1.2.0.tgz",
  "_where": "/Users/nw/flint/packages/flint",
  "author": {
    "name": "Jack Franklin"
  },
  "bugs": {
    "url": "https://github.com/jackfranklin/gulp-load-plugins/issues"
  },
  "contributors": [
    {
      "name": "Callum Macrae"
    },
    {
      "name": "Pascal Hartig"
    },
    {
      "name": "kombucha"
    },
    {
      "name": "Nicolas Froidure"
    },
    {
      "name": "Sindre Sorhus"
    },
    {
      "name": "Julien Fontanet",
      "email": "julien.fontanet@vates.fr"
    },
    {
      "name": "Ben Briggs"
    },
    {
      "name": "Hutson Betts"
    },
    {
      "name": "Christian Maniewski"
    },
    {
      "name": "Connor Peet"
    },
    {
      "name": "Dorian Camilleri"
    },
    {
      "name": "Carlos Henrique"
    }
  ],
  "dependencies": {
    "findup-sync": "^0.2.1",
    "gulp-util": "^3.0.7",
    "multimatch": "2.0.0",
    "resolve": "^1.1.6"
  },
  "description": "Automatically load any gulp plugins in your package.json",
  "devDependencies": {
    "jshint": "^2.5.1",
    "mocha": "^2.1.0",
    "proxyquire": "^1.0.1",
    "sinon": "^1.9.1"
  },
  "files": [
    "index.js"
  ],
  "homepage": "https://github.com/jackfranklin/gulp-load-plugins#readme",
  "keywords": [
    "gulp",
    "gulpfriendly",
    "load",
    "plugins",
    "require"
  ],
  "license": "MIT",
  "name": "gulp-load-plugins",
  "optionalDependencies": {},
  "readme": "# gulp-load-plugins\n\n[![npm](https://nodei.co/npm/gulp-load-plugins.svg?downloads=true)](https://nodei.co/npm/gulp-load-plugins/)\n\n> Loads in any gulp plugins and attaches them to the global scope, or an object of your choice.\n\n[![Build Status](https://travis-ci.org/jackfranklin/gulp-load-plugins.svg?branch=master)](https://travis-ci.org/jackfranklin/gulp-load-plugins)\n\n\n## Install\n\n```sh\n$ npm install --save-dev gulp-load-plugins\n```\n\n\n## Usage\n\nGiven a `package.json` file that has some dependencies within:\n\n```json\n{\n    \"dependencies\": {\n        \"gulp-jshint\": \"*\",\n        \"gulp-concat\": \"*\"\n    }\n}\n```\n\nAdding this into your `Gulpfile.js`:\n\n```js\nvar gulp = require('gulp');\nvar gulpLoadPlugins = require('gulp-load-plugins');\nvar plugins = gulpLoadPlugins();\n```\n\nOr, even shorter:\n\n```js\nvar plugins = require('gulp-load-plugins')();\n```\n\nWill result in the following happening (roughly, plugins are lazy loaded but in practice you won't notice any difference):\n\n```js\nplugins.jshint = require('gulp-jshint');\nplugins.concat = require('gulp-concat');\n```\n\nYou can then use the plugins just like you would if you'd manually required them, but referring to them as `plugins.name()`, rather than just `name()`.\n\nThis frees you up from having to manually require each gulp plugin.\n\n## Options\n\nYou can pass in an object of options that are shown below: (the values for the keys are the defaults):\n\n```js\ngulpLoadPlugins({\n    DEBUG: false, // when set to true, the plugin will log info to console. Useful for bug reporting and issue debugging\n    pattern: ['gulp-*', 'gulp.*'], // the glob(s) to search for\n    config: 'package.json', // where to find the plugins, by default searched up from process.cwd()\n    scope: ['dependencies', 'devDependencies', 'peerDependencies'], // which keys in the config to look within\n    replaceString: /^gulp(-|\\.)/, // what to remove from the name of the module when adding it to the context\n    camelize: true, // if true, transforms hyphenated plugins names to camel case\n    lazy: true, // whether the plugins should be lazy loaded on demand\n    rename: {}, // a mapping of plugins to rename\n    renameFn: function (name) { ... } // a function to handle the renaming of plugins (the default works)\n});\n```\n\n## Renaming\n\nFrom 0.8.0, you can pass in an object of mappings for renaming plugins. For example, imagine you want to load the `gulp-ruby-sass` plugin, but want to refer to it as just `sass`:\n\n```js\ngulpLoadPlugins({\n  rename: {\n    'gulp-ruby-sass': 'sass'\n  }\n});\n```\n\nNote that if you specify the `renameFn` options with your own custom rename function, while the `rename` option will still work, the `replaceString` and `camelize` options will be ignored.\n\n## npm Scopes\n\n`gulp-load-plugins` comes with [npm scope](https://docs.npmjs.com/misc/scope) support. The major difference is that scoped plugins are accessible through an object on `plugins` that represents the scope. For example, if the plugin is `@myco/gulp-test-plugin` then you can access the plugin as shown in the following example:\n\n```js\nvar plugins = require('gulp-load-plugins')();\n\nplugins.myco.testPlugin();\n```\n\n## Lazy Loading\n\nIn 0.4.0 and prior, lazy loading used to only work with plugins that return a function. In newer versions though, lazy loading should work for any plugin. If you have a problem related to this please try disabling lazy loading and see if that fixes it. Feel free to open an issue on this repo too.\n\n\n## Credit\n\nCredit largely goes to @sindresorhus for his [load-grunt-plugins](https://github.com/sindresorhus/load-grunt-tasks) plugin. This plugin is almost identical, just tweaked slightly to work with Gulp and to expose the required plugins.\n\n\n## Changelog\n\n##### 1.2\n- throw an error if two packages are loaded that end up having the same name after the `replaceString` has been removed - thanks @carloshpds\n\n##### 1.1\n- added `DEBUG` option to turn on logging and help us debug issues - thanks @dcamilleri\n\n\n##### 1.0.0\n- added `renameFn` function to give users complete control over the name a plugin should be given when loaded - thanks @callumacrae\n\n##### 1.0.0-rc.1\n- This is the first release candidate for what will become version 1 of gulp-load-plugins. Once a fix for [#70](https://github.com/jackfranklin/gulp-load-plugins/issues/70) is landed, I plan to release V1.\n- **Breaking Change** support for `NODE_PATH` is no longer supported. It was causing complexities and in [the PR that droppped support](https://github.com/jackfranklin/gulp-load-plugins/pull/75) no one shouted that they required `NODE_PATH` support.\n\n##### 0.10.0\n- throw a more informative error if a plugin is loaded that gulp-load-plugins can't find. [PR](https://github.com/jackfranklin/gulp-load-plugins/pull/68) - thanks @connor4312\n- allow `require` to look on the `NODE_PATH` if it can't find the module in the working directory. [PR](https://github.com/jackfranklin/gulp-load-plugins/pull/69) - thanks @chmanie\n\n##### 0.9.0\n- add support for npm-scoped plugins. [PR](https://github.com/jackfranklin/gulp-load-plugins/pull/63) - thanks @hbetts\n\n##### 0.8.1\n- fixed a bug where gulp-load-plugins would use the right `package.json` file but the wrong `node_modules` directory - thanks @callumacrae\n\n##### 0.8.0\n- add the ability to rename plugins that gulp-load-plugins loads in.\n\n##### 0.7.1\n- add `files` property to package.json so only required files are downloaded when installed - thanks @shinnn\n\n\n##### 0.7.0\n- support loading plugins with a dot in the name, such as `gulp.spritesmith` - thanks to @MRuy\n- upgrade multimatch to 1.0.0\n\n\n##### 0.6.0\n- Fix issues around plugin picking wrong package.json file - thanks @iliakan (see [issue](https://github.com/jackfranklin/gulp-load-plugins/issues/35)).\n\n##### 0.5.3\n- Show a nicer error if the plugin is unable to load any configuration and hence can't find any dependencies to load\n\n##### 0.5.2\n- Swap out globule for multimatch, thanks @sindresorhus.\n\n##### 0.5.1\n- Updated some internal dependencies which should see some small improvements - thanks @shinnn for this contribution.\n\n##### 0.5.0\n- improved lazy loading so it should work with plugins that don't just return a function. Thanks to @nfroidure for help with this.\n\n##### 0.4.0\n- plugins are lazy loaded for performance benefit. Thanks @julien-f for this.\n\n##### 0.3.0\n- turn the `camelize` option on by default\n\n##### 0.2.0\n- added `camelize` option, thanks @kombucha.\n- renamed to `gulp-load-plugins`.\n\n##### 0.1.1\n- add link to this repository into `package.json` (thanks @ben-eb).\n\n##### 0.1.0\n- move to `gulpLoadplugins` returning an object with the tasks define.\n\n##### 0.0.5\n- added `replaceString` option to configure exactly what gets replace when the plugin adds the module to the context\n\n##### 0.0.4\n- fixed keyword typo so plugin appears in search for gulp plugins\n\n##### 0.0.3\n- removed accidental console.log I'd left in\n\n##### 0.0.2\n- fixed accidentally missing a dependency out of package.json\n\n##### 0.0.1\n- initial release\n",
  "readmeFilename": "README.md",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/jackfranklin/gulp-load-plugins.git"
  },
  "scripts": {
    "test": "NODE_PATH=test/global_modules mocha"
  },
  "version": "1.2.0"
}
