"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.taskRnvWorkspaceAdd = exports["default"] = void 0;var _path = _interopRequireDefault(require("path"));
var _prompt = require("../../cli/prompt");
var _logger = require("../../core/systemManager/logger");
var _workspace = require("../../core/projectManager/workspace");
var _fileutils = require("../../core/systemManager/fileutils");
var _taskManager = require("../../core/taskManager");
var _constants = require("../../core/constants");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 taskRnvWorkspaceAdd = /*#__PURE__*/function () {var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(c, parentTask, originTask) {var _yield$inquirerPrompt, workspace, workspacePath, _yield$inquirerPrompt2, confirm, workspaceID, _yield$inquirerPrompt3, workspaceIDInput;return regeneratorRuntime.wrap(function _callee$(_context) {while (1) {switch (_context.prev = _context.next) {case 0:
            (0, _logger.logTask)('taskRnvWorkspaceAdd');_context.next = 3;return (

              (0, _taskManager.executeTask)(c, _constants.TASK_PROJECT_CONFIGURE, _constants.TASK_WORKSPACE_ADD, originTask));case 3:_context.next = 5;return (

              (0, _prompt.inquirerPrompt)({
                name: 'workspace',
                type: 'input',
                message: 'absolute path to new workspace',
                validate: function validate(i) {return !!i || 'No path provided';} }));case 5:_yield$inquirerPrompt = _context.sent;workspace = _yield$inquirerPrompt.workspace;


            workspacePath = _path["default"].join(workspace);if (!

            (0, _fileutils.fsExistsSync)(workspacePath)) {_context.next = 15;break;}_context.next = 11;return (
              (0, _prompt.inquirerPrompt)({
                name: 'confirm',
                type: 'confirm',
                message: "Folder ".concat(workspacePath, " already exists are you sure you want to override it?") }));case 11:_yield$inquirerPrompt2 = _context.sent;confirm = _yield$inquirerPrompt2.confirm;if (

            confirm) {_context.next = 15;break;}return _context.abrupt("return");case 15:


            workspaceID = workspacePath.
            split('/').
            pop().
            replace(/@|\./g, '');_context.next = 18;return (

              (0, _prompt.inquirerPrompt)({
                name: 'workspaceIDInput',
                type: 'input',
                message: "ID of the workspace (".concat(workspaceID, ")") }));case 18:_yield$inquirerPrompt3 = _context.sent;workspaceIDInput = _yield$inquirerPrompt3.workspaceIDInput;


            workspaceID = workspaceIDInput || workspaceID;
            (0, _workspace.createWorkspace)(c, workspaceID, workspacePath);case 22:case "end":return _context.stop();}}}, _callee);}));return function taskRnvWorkspaceAdd(_x, _x2, _x3) {return _ref.apply(this, arguments);};}();exports.taskRnvWorkspaceAdd = taskRnvWorkspaceAdd;var _default =


{
  description: 'Add new workspace',
  fn: taskRnvWorkspaceAdd,
  task: _constants.TASK_WORKSPACE_ADD,
  params: _constants.PARAMS.withBase(),
  platforms: [],
  isGlobalScope: true };exports["default"] = _default;
//# sourceMappingURL=task.rnv.workspace.add.js.map