Skip to content

Helper function using inquirer to validate a value provided in a prompt does not exist as an npm package.

License

Notifications You must be signed in to change notification settings

SBoudrias/inquirer-npm-name

Repository files navigation

inquirer-npm-name NPM version Build Status Dependency Status Coverage percentage

Helper function using inquirer to validate a value provided in a prompt does not exist as a npm package.

The supplied value must be a valid package name (as per validate-npm-package-name); otherwise, the user will again be prompted to enter a name.

If the value is already used as a npm package, then the users will be prompted and asked if they want to choose another one. If so, we'll recurse through the same validation process until we have a name that is unused on the npm registry. This is a helper to catch naming issue in advance, it is not a validation rule as the user can always decide to continue with the same name.

Install

$ npm install --save inquirer-npm-name

Usage

var inquirer = require('inquirer');
var askName = require('inquirer-npm-name');

askName(
  {
    name: 'name',
    message: 'Some Module Name' // Default: 'Module Name'
  },
  inquirer
).then(function(answer) {
  console.log(answer.name);
});

// Equivalent to {name: 'name'}
askName('name', inquirer).then(function(answer) {
  console.log(answer.name);
});

Inside a Yeoman Generator you'd call it this way:

var generators = require('yeoman-generator');
var inquirer = require('inquirer');
var askName = require('inquirer-npm-name');

module.exports = generators.Base.extend({
  prompting: function() {
    return askName(
      {
        name: 'name',
        message: 'Module Name'
      },
      this
    ).then(function(name) {
      console.log(name);
    });
  }
});

askName takes 2 parameters:

  1. prompt an Inquirer prompt configuration or just a string to serve as name.
  2. inquirer or any object with a obj.prompt() method.

Returns: A Promise resolved with the answer object.

License

MIT © Simon Boudrias

About

Helper function using inquirer to validate a value provided in a prompt does not exist as an npm package.

Resources

License

Stars

Watchers

Forks

Packages

No packages published