"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = prompt;
Object.defineProperty(exports, "Question", {
  enumerable: true,
  get: function () {
    return _inquirer().Question;
  }
});
Object.defineProperty(exports, "ChoiceType", {
  enumerable: true,
  get: function () {
    return _inquirer().ChoiceType;
  }
});

function _commander() {
  const data = _interopRequireDefault(require("commander"));

  _commander = function () {
    return data;
  };

  return data;
}

function _inquirer() {
  const data = _interopRequireWildcard(require("inquirer"));

  _inquirer = function () {
    return data;
  };

  return data;
}

function _CommandError() {
  const data = _interopRequireDefault(require("./CommandError"));

  _CommandError = function () {
    return data;
  };

  return data;
}

function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function prompt(questions, {
  nonInteractiveHelp
} = {}) {
  const nQuestions = Array.isArray(questions) ? questions.length : 1;

  if (_commander().default.nonInteractive && nQuestions !== 0) {
    let message = `Input is required, but Expo CLI is in non-interactive mode.\n`;

    if (nonInteractiveHelp) {
      message += nonInteractiveHelp;
    } else {
      const question = Array.isArray(questions) ? questions[0] : questions;
      message += `Required input:\n${(question.message || '').trim().replace(/^/gm, '> ')}`;
    }

    throw new (_CommandError().default)('NON_INTERACTIVE', message);
  }

  return _inquirer().default.prompt(questions);
}

prompt.separator = (...args) => new (_inquirer().default.Separator)(...args);
//# sourceMappingURL=__sourcemaps__/prompt.js.map