"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.taskRnvPlatformSetup = exports["default"] = void 0;var _inquirer = _interopRequireDefault(require("inquirer"));
var _constants = require("../../core/constants");
var _platformManager = require("../../core/platformManager");
var _logger = require("../../core/systemManager/logger");
var _taskManager = require("../../core/taskManager");function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { "default": obj };}function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {try {var info = gen[key](arg);var value = info.value;} catch (error) {reject(error);return;}if (info.done) {resolve(value);} else {Promise.resolve(value).then(_next, _throw);}}function _asyncToGenerator(fn) {return function () {var self = this,args = arguments;return new Promise(function (resolve, reject) {var gen = fn.apply(self, args);function _next(value) {asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);}function _throw(err) {asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);}_next(undefined);});};}


var taskRnvPlatformSetup = /*#__PURE__*/function () {var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(c, parentTask, originTask) {var _c$files$project$conf;var currentPlatforms, _yield$inquirer$promp, inputSupportedPlatforms;return regeneratorRuntime.wrap(function _callee$(_context) {while (1) {switch (_context.prev = _context.next) {case 0:
            (0, _logger.logTask)('taskRnvPlatformSetup');_context.next = 3;return (

              (0, _taskManager.executeTask)(c, _constants.TASK_PROJECT_CONFIGURE, _constants.TASK_PLATFORM_SETUP, originTask));case 3:

            currentPlatforms = ((_c$files$project$conf = c.files.project.config.defaults) === null || _c$files$project$conf === void 0 ? void 0 : _c$files$project$conf.supportedPlatforms) || [];_context.next = 6;return (

              _inquirer["default"].prompt({
                name: 'inputSupportedPlatforms',
                type: 'checkbox',
                pageSize: 20,
                message: 'What platforms would you like to use?',
                validate: function validate(val) {return !!val.length || 'Please select at least a platform';},
                "default": currentPlatforms,
                choices: c.runtime.availablePlatforms }));case 6:_yield$inquirer$promp = _context.sent;inputSupportedPlatforms = _yield$inquirer$promp.inputSupportedPlatforms;


            (0, _platformManager.updateProjectPlatforms)(c, inputSupportedPlatforms);case 9:case "end":return _context.stop();}}}, _callee);}));return function taskRnvPlatformSetup(_x, _x2, _x3) {return _ref.apply(this, arguments);};}();exports.taskRnvPlatformSetup = taskRnvPlatformSetup;var _default =


{
  description: '',
  fn: taskRnvPlatformSetup,
  task: _constants.TASK_PLATFORM_SETUP,
  params: _constants.PARAMS.withBase(),
  platforms: [],
  skipPlatforms: true };exports["default"] = _default;
//# sourceMappingURL=task.rnv.platform.setup.js.map