{"_id":"is-valid-app","maintainers":[{"name":"doowb","email":"brian.woodward@gmail.com"},{"name":"jonschlinkert","email":"github@sellside.com"}],"keywords":["app","is","valid"],"dist-tags":{"latest":"0.3.0"},"author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"description":"Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.","readme":"# is-valid-app [![NPM version](https://img.shields.io/npm/v/is-valid-app.svg?style=flat)](https://www.npmjs.com/package/is-valid-app) [![NPM monthly downloads](https://img.shields.io/npm/dm/is-valid-app.svg?style=flat)](https://npmjs.org/package/is-valid-app)  [![NPM total downloads](https://img.shields.io/npm/dt/is-valid-app.svg?style=flat)](https://npmjs.org/package/is-valid-app) [![Linux Build Status](https://img.shields.io/travis/node-base/is-valid-app.svg?style=flat&label=Travis)](https://travis-ci.org/node-base/is-valid-app)\n\n> Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.\n\n## Install\n\nInstall with [npm](https://www.npmjs.com/):\n\n```sh\n$ npm install --save is-valid-app\n```\n\n## Usage\n\n```js\nvar isValid = require('is-valid-app');\n\n// in your Base plugin\nfunction plugin(app) {\n  // plugin name is required as the second argument\n  if (!isValid(app, 'my-plugin')) return;\n  // do plugin stuff\n}\n```\n\nOptionally pass an array of instance types as the third argument:\n\n```js\nfunction plugin(app) {\n  if (!isValid(app, 'my-plugin', ['view', 'collection'])) return;\n  // do plugin stuff\n}\n```\n\nVisit [base](https://github.com/node-base/base) for more details.\n\n## History\n\n**v0.3.0**\n\n* upgrades [is-valid-instance](https://github.com/jonschlinkert/is-valid-instance) to v0.3.0, which adds support for checking `app.type` for the instance type. We don't expect any regressions, but if you experience one, please [create an issue](../../issues/new).\n\n## About\n\n### Related projects\n\n* [base](https://www.npmjs.com/package/base): base is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… [more](https://github.com/node-base/base) | [homepage](https://github.com/node-base/base \"base is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting with a handful of common methods, like `set`, `get`, `del` and `use`.\")\n* [is-registered](https://www.npmjs.com/package/is-registered): Util for Base that optionally prevents a plugin from being registered more than once on… [more](https://github.com/jonschlinkert/is-registered) | [homepage](https://github.com/jonschlinkert/is-registered \"Util for Base that optionally prevents a plugin from being registered more than once on an instance\")\n* [is-valid-instance](https://www.npmjs.com/package/is-valid-instance): Returns true if a value is a valid instance of Base. | [homepage](https://github.com/jonschlinkert/is-valid-instance \"Returns true if a value is a valid instance of Base.\")\n\n### Contributing\n\nPull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).\n\n### Contributors\n\n| **Commits** | **Contributor** | \n| --- | --- |\n| 10 | [jonschlinkert](https://github.com/jonschlinkert) |\n| 3 | [doowb](https://github.com/doowb) |\n\n### Building docs\n\n_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_\n\nTo generate the readme, run the following command:\n\n```sh\n$ npm install -g verbose/verb#dev verb-generate-readme && verb\n```\n\n### Running tests\n\nRunning and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:\n\n```sh\n$ npm install && npm test\n```\n\n### Author\n\n**Jon Schlinkert**\n\n* [github/jonschlinkert](https://github.com/jonschlinkert)\n* [twitter/jonschlinkert](https://twitter.com/jonschlinkert)\n\n### License\n\nCopyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert).\nReleased under the [MIT License](LICENSE).\n\n***\n\n_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.4.3, on March 24, 2017._","repository":{"type":"git","url":"git+https://github.com/node-base/is-valid-app.git"},"bugs":{"url":"https://github.com/node-base/is-valid-app/issues"},"license":"MIT","versions":{"0.1.1":{"name":"is-valid-app","description":"Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.","version":"0.1.1","homepage":"https://github.com/jonschlinkert/is-valid-app","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git+https://github.com/jonschlinkert/is-valid-app.git"},"bugs":{"url":"https://github.com/jonschlinkert/is-valid-app/issues"},"license":"MIT","files":["index.js","utils.js"],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"dependencies":{"debug":"^2.2.0","is-registered":"^0.1.5","is-valid-instance":"^0.1.0","lazy-cache":"^2.0.1"},"devDependencies":{"base":"^0.8.1","gulp-format-md":"^0.1.9","mocha":"^2.5.3"},"keywords":[],"verb":{"toc":false,"layout":"default","tasks":["readme"],"plugins":["gulp-format-md"],"related":{"list":["base","is-registered","is-valid-instance"]},"reflinks":["base","verb","verb-readme-generator"],"lint":{"reflinks":true}},"gitHead":"f30c40eeea7793d42e68a34de5fef3025fa03fa9","_id":"is-valid-app@0.1.1","_shasum":"d6691c8e8915ffcc9b2722a034e8e565c1060690","_from":".","_npmVersion":"3.8.9","_nodeVersion":"6.2.0","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"d6691c8e8915ffcc9b2722a034e8e565c1060690","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/is-valid-app/-/is-valid-app-0.1.1.tgz","integrity":"sha512-Yd2M6iBM8S4zEBnnBYkuogP6nbb5eAD1rTaC9id2POC5SmDSJRRjfJwXXbKejB/iR49qwrag3tlf6qpmLvDIrw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqn+o2+41mUEqej+4ean3X9DzHeTqpF7hqrnue49BAhgIhANJFzIGn7Rcnxy9sVatSh0GGyV0k1vCszsF3RNfwtllJ"}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/is-valid-app-0.1.1.tgz_1465609695417_0.1709931690711528"}},"0.2.0":{"name":"is-valid-app","description":"Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.","version":"0.2.0","homepage":"https://github.com/jonschlinkert/is-valid-app","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git+https://github.com/jonschlinkert/is-valid-app.git"},"bugs":{"url":"https://github.com/jonschlinkert/is-valid-app/issues"},"license":"MIT","files":["index.js","utils.js"],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"dependencies":{"debug":"^2.2.0","is-registered":"^0.1.5","is-valid-instance":"^0.2.0","lazy-cache":"^2.0.1"},"devDependencies":{"base":"^0.8.1","gulp-format-md":"^0.1.9","mocha":"^2.5.3"},"keywords":[],"verb":{"toc":false,"layout":"default","tasks":["readme"],"plugins":["gulp-format-md"],"related":{"list":["base","is-registered","is-valid-instance"]},"reflinks":["base","verb","verb-readme-generator"],"lint":{"reflinks":true}},"gitHead":"3ff483ff9235f4685d48f126ca0c61c62afd7aff","_id":"is-valid-app@0.2.0","_shasum":"4484c17f66ece795d62b9f51d304df5a56cdbb50","_from":".","_npmVersion":"3.8.9","_nodeVersion":"6.2.0","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"doowb","email":"brian.woodward@gmail.com"},{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"4484c17f66ece795d62b9f51d304df5a56cdbb50","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/is-valid-app/-/is-valid-app-0.2.0.tgz","integrity":"sha512-bA1n4nMZZOMbPhI0t5jsJ6ACwIpJHMkjjmNlTpkqtt11gboWvX35XH3GdtJeBHVVdfy5KFhc2hxPmGFak0Lm+Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHUqElZNlNMQoi66Ho3LaEXr/u9m3PovUytGFVmcKonnAiBWolwIBZ1v0xRZ7cabCVZylxaV0+gouRqw64NC9dxNFA=="}]},"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/is-valid-app-0.2.0.tgz_1467069686146_0.7745284799020737"}},"0.1.2":{"name":"is-valid-app","description":"Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.","version":"0.1.2","homepage":"https://github.com/node-base/is-valid-app","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git+https://github.com/node-base/is-valid-app.git"},"bugs":{"url":"https://github.com/node-base/is-valid-app/issues"},"license":"MIT","files":["index.js","utils.js"],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"dependencies":{"debug":"^2.2.0","is-registered":"^0.1.5","is-valid-instance":"^0.1.0","lazy-cache":"^2.0.1"},"devDependencies":{"base":"^0.8.1","gulp-format-md":"^0.1.9","mocha":"^2.5.3"},"keywords":[],"verb":{"toc":false,"layout":"default","tasks":["readme"],"plugins":["gulp-format-md"],"related":{"list":["base","is-registered","is-valid-instance"]},"reflinks":["base","verb","verb-readme-generator"],"lint":{"reflinks":true}},"gitHead":"e0094185960769667b28c2d0cfb185f63c81b07e","_id":"is-valid-app@0.1.2","_shasum":"2f67cbb3baf64d659c70d043fc91139b5a8b9590","_from":".","_npmVersion":"3.7.5","_nodeVersion":"5.1.1","_npmUser":{"name":"doowb","email":"brian.woodward@gmail.com"},"dist":{"shasum":"2f67cbb3baf64d659c70d043fc91139b5a8b9590","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/is-valid-app/-/is-valid-app-0.1.2.tgz","integrity":"sha512-UKIjincKieawS6pPJjpH76qUmblicLSi0pqGCvFdscOM3pWgnrRBtB/iWIRYXKNCW8qjxb+6k12wFd82Kq94CA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAF/xl6ZYQF7C85EkBftcw7+8xvZ81w113+rRMuQI3t8AiBL7CUGCY4k4MO31q55qDK+hne1Itm2a5Bq3wyGclvl8Q=="}]},"maintainers":[{"name":"doowb","email":"brian.woodward@gmail.com"},{"name":"jonschlinkert","email":"github@sellside.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/is-valid-app-0.1.2.tgz_1466531197858_0.30062287487089634"}},"0.2.1":{"name":"is-valid-app","description":"Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.","version":"0.2.1","homepage":"https://github.com/node-base/is-valid-app","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"contributors":[{"name":"Brian Woodward","email":"brian.woodward@gmail.com","url":"https://github.com/doowb"},{"name":"Jon Schlinkert","email":"jon.schlinkert@sellside.com","url":"http://twitter.com/jonschlinkert"}],"repository":{"type":"git","url":"git+https://github.com/node-base/is-valid-app.git"},"bugs":{"url":"https://github.com/node-base/is-valid-app/issues"},"license":"MIT","files":["index.js","utils.js"],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"dependencies":{"debug":"^2.2.0","is-registered":"^0.1.5","is-valid-instance":"^0.2.0","lazy-cache":"^2.0.1"},"devDependencies":{"base":"^0.8.1","gulp-format-md":"^0.1.9","mocha":"^2.5.3"},"keywords":["app","is","valid"],"verb":{"toc":false,"layout":"default","tasks":["readme"],"plugins":["gulp-format-md"],"related":{"list":["base","is-registered","is-valid-instance"]},"reflinks":["base","verb","verb-readme-generator"],"lint":{"reflinks":true}},"gitHead":"da8d832cdb45a3618fb42fed9a03a2cddfe37dbf","_id":"is-valid-app@0.2.1","_shasum":"65cf195bbd71bd776cb161991c684248d65dff89","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.3.0","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"doowb","email":"brian.woodward@gmail.com"},{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"65cf195bbd71bd776cb161991c684248d65dff89","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/is-valid-app/-/is-valid-app-0.2.1.tgz","integrity":"sha512-2/qNSVFKyi5WiaIgv153Vt2ZM7T7HSlUu/m3HMnoyp6pk5NYhOUz0aU7Gx2DGYRnZ/8q+pMOwd93pCE8uWhvBg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICw0csvctcBBGWcJvqt9qb0jvzAe4ecoPKtq/POvHcbqAiBHmKjiMu3c9rBMFPEHaVZOvQ6HkDrYOutiBb70DaWyqw=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/is-valid-app-0.2.1.tgz_1473646435852_0.08490326255559921"}},"0.3.0":{"name":"is-valid-app","description":"Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.","version":"0.3.0","homepage":"https://github.com/node-base/is-valid-app","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"contributors":[{"name":"Brian Woodward","email":"brian.woodward@gmail.com","url":"https://twitter.com/doowb"},{"name":"Jon Schlinkert","email":"jon.schlinkert@sellside.com","url":"http://twitter.com/jonschlinkert"}],"repository":{"type":"git","url":"git+https://github.com/node-base/is-valid-app.git"},"bugs":{"url":"https://github.com/node-base/is-valid-app/issues"},"license":"MIT","files":["index.js","utils.js"],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"dependencies":{"debug":"^2.6.3","is-registered":"^0.1.5","is-valid-instance":"^0.3.0","lazy-cache":"^2.0.2"},"devDependencies":{"base":"^0.11.1","gulp-format-md":"^0.1.11","mocha":"^3.2.0"},"keywords":["app","is","valid"],"verb":{"toc":false,"layout":"default","tasks":["readme"],"plugins":["gulp-format-md"],"related":{"list":["base","is-registered","is-valid-instance"]},"reflinks":["base","verb","verb-readme-generator"],"lint":{"reflinks":true}},"gitHead":"4b2c3ab424dd9059314a96f2c2580afdc8c30497","_id":"is-valid-app@0.3.0","_shasum":"78106b751f3ca32385fb45492bf29417b5993c80","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.7.3","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"doowb","email":"brian.woodward@gmail.com"},{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"78106b751f3ca32385fb45492bf29417b5993c80","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/is-valid-app/-/is-valid-app-0.3.0.tgz","integrity":"sha512-6+PklNvJraE3XpoqWurkrPIqFIeJin5kwX+sJjcwhPcFY7TM0wjbJlPIBCvHtGawIfb4WtS1t22s7TdgQ0S+Xg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAynQBfUAXYQ5j5j0oUe89rblzcXfgbp61/BVl3G0xl2AiEAtyE6s8MvjAstMQHiopqKdOxKegdO/VnVpZKnf3rrygw="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/is-valid-app-0.3.0.tgz_1490376943187_0.055901037296280265"}},"0.1.0":{"name":"is-valid-app","description":"Wrapper around is-valid-instance and is-registered for validating `base` plugins. Returns true if `app` is a valid instance of base and a plugin is not registered yet.","version":"0.1.0","homepage":"https://github.com/jonschlinkert/is-valid-app","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git+https://github.com/jonschlinkert/is-valid-app.git"},"bugs":{"url":"https://github.com/jonschlinkert/is-valid-app/issues"},"license":"MIT","files":["index.js"],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"dependencies":{"is-registered":"^0.1.4","is-valid-instance":"^0.1.0"},"devDependencies":{"base":"^0.8.1","gulp-format-md":"^0.1.9","mocha":"^2.5.3"},"keywords":[],"verb":{"toc":false,"layout":"default","tasks":["readme"],"plugins":["gulp-format-md"],"related":{"list":["is-registered","is-valid-instance","base"]},"reflinks":["verb","base"],"lint":{"reflinks":true}},"gitHead":"b2498d87e6b27c6449a192fd5c74a2756007d0c1","_id":"is-valid-app@0.1.0","_shasum":"f5f1d1a924347bdf0f31a4a1030a355e784220f4","_from":".","_npmVersion":"3.8.9","_nodeVersion":"6.2.0","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"f5f1d1a924347bdf0f31a4a1030a355e784220f4","tarball":"https://nexus.nspop.dk/nexus/repository/nsp-npm/is-valid-app/-/is-valid-app-0.1.0.tgz","integrity":"sha512-OG0je1cf4N4Ernc6+OKiMoTYn586I5yAzpjX3JwCeQPyQJPvKZbcTfSk4dFVOVEucb2zBEhptrmzLHV3YfYWGQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDHmGl8+jK2mZB8rG2YZCqDZGzKb8pgBBJzwWOD7K8uDAiEA/lWL0eBfudaIOsNP0XlXSOz9cZVyTF++5bP/3moJHQA="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/is-valid-app-0.1.0.tgz_1464622717623_0.12211038218811154"}}},"name":"is-valid-app","time":{"created":"2016-05-30T15:38:40.250Z","modified":"2025-05-07T15:11:21.515Z","0.1.1":"2016-06-11T01:48:18.062Z","0.2.0":"2016-06-27T23:21:27.153Z","0.1.2":"2016-06-21T17:46:40.250Z","0.2.1":"2016-09-12T02:13:57.846Z","0.3.0":"2017-03-24T17:35:43.635Z","0.1.0":"2016-05-30T15:38:40.250Z"},"readmeFilename":"README.md","contributors":[{"name":"Brian Woodward","email":"brian.woodward@gmail.com","url":"https://twitter.com/doowb"},{"name":"Jon Schlinkert","email":"jon.schlinkert@sellside.com","url":"http://twitter.com/jonschlinkert"}],"homepage":"https://github.com/node-base/is-valid-app"}