Socket
Socket
Sign inDemoInstall

is-valid-instance

Package Overview
Dependencies
3
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    is-valid-instance

Returns true if a value is a valid instance of Base.


Version published
Weekly downloads
166K
decreased by-35.15%
Maintainers
1
Install size
24.8 kB
Created
Weekly downloads
 

Readme

Source

is-valid-instance NPM version NPM downloads Build Status

Returns true if a value is a valid instance of Base.

Install

Install with npm:

$ npm install is-valid-instance --save

Usage

Use in your [base][] plugin to ensure that the plugin is registered on a valid instance.

var isValidInstance = require('is-valid-instance');

function plugin(app) {
  if (!isValidInstance(app)) return;
  // do plugin stauff
}

API

Params

  • val {Object}
  • names {Array|Function}: One or more names to check for on the given instance. Example app will check for app.isApp === true or app._name === 'app'.
  • fn {Function}: Custom function for validating the instance.
  • returns {Boolean}

Example

function plugin(app) {
  if (!isValidInstance(app)) return;
  // do plugin stuff
}

Examples

Collection instance

Return true if the instance is a [templates][] view-collection (views):

function plugin(collection) {
  if (!isValidInstance(collection, ['views'])) {
    // optionally return the plugin function so the plugin is re-tried on 
    // each instance until it finds the correct one
    return plugin;
  }
  // do plugin stauff
}

View instance

Return true if the instance is a [templates][] view:

function plugin(view) {
  if (!isValidInstance(view, ['view'])) {
    return plugin;
  }
  // do plugin stauff
}

View instance

Return true if the instance is either "app" or "collection":

function plugin(app) {
  if (!isValidInstance(app, ['app', 'collection'])) {
    return plugin;
  }
  // do plugin stauff
}

You might also be interested in these projects:

  • base-app: Starting point for creating a base application, with a few light plugins for running tasks… more | homepage
  • base: base is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… more | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Building docs

Generate readme and API documentation with verb:

$ npm install verb && npm run docs

Or, if verb is installed globally:

$ verb

Running tests

Install dev dependencies:

$ npm install -d && npm test

Author

Jon Schlinkert

License

Copyright © 2016, Jon Schlinkert. Released under the MIT license.


This file was generated by verb, v0.9.0, on May 15, 2016.

Keywords

FAQs

Last updated on 15 May 2016

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc