UNPKG

intreface.cli

Version:

Intreface Dev Tools

99 lines (98 loc) 3.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.linkTypeSelect = exports.gitRepositorySelect = exports.confirmRemove = exports.projectIp = exports.projectNameSelect = exports.projectName = exports.gitPassword = exports.gitLogin = exports.mysqlPassword = exports.mysqlLogin = exports.directoryBitrix = exports.directoryRepository = exports.directoryServer = void 0; const validator_1 = require("./validator"); const objectPath = require("object-path"); const path = require("path"); const system_1 = require("./system"); const io_1 = require("./io"); exports.directoryServer = { name: 'directoryServer', message: 'Location server environment', type: 'input', validate: validator_1.validateDirectoryExist }; exports.directoryRepository = { name: 'directoryRepository', message: 'Location of git repositories', type: 'input', validate: validator_1.validateDirectoryExist }; exports.directoryBitrix = { name: 'directoryBitrix', message: 'Location of bitrix projects', type: 'input', validate: validator_1.validateDirectoryExist }; exports.mysqlLogin = { name: 'mysqlLogin', message: 'MySQL login', type: 'input', validate: validator_1.validateStringNotEmpty }; exports.mysqlPassword = { name: 'mysqlPassword', message: 'MySQL password', type: 'password' }; exports.gitLogin = { name: 'gitLogin', message: 'Git/BitBucket login', type: 'input', validate: validator_1.validateStringNotEmpty }; exports.gitPassword = { name: 'gitPassword', message: 'Git/BitBucket password', type: 'password', validate: validator_1.validateStringNotEmpty }; exports.projectName = { name: 'projectName', message: 'Project name [ex. intreface.com]', type: 'input', validate: validator_1.validateStringNotEmpty }; exports.projectNameSelect = { name: 'projectName', message: 'Project name', type: 'list', choices() { const config = objectPath(system_1.readConfig()); let list = system_1.getDirectoryList(config.get('directory.bitrix')); return list.filter(item => { return !io_1.isFileExist(path.join(config.get('directory.bitrix'), item, '.cli.ignore')); }); } }; exports.projectIp = { name: 'projectIp', message: 'Project IP [ex. 127.0.0.100]', type: 'input', validate: validator_1.validateIsIpV4 }; exports.confirmRemove = { name: 'confirmRemove', message: 'Are you sure you want to remove project?', type: 'confirm' }; exports.gitRepositorySelect = { name: 'gitRepository', message: 'Git repository', type: 'list', choices() { const config = objectPath(system_1.readConfig()); let list = system_1.getDirectoryList(config.get('directory.repository')); return list.filter(item => { return !io_1.isFileExist(path.join(config.get('directory.repository'), item, '.cli.ignore')); }); } }; exports.linkTypeSelect = { name: 'linkType', message: 'Link type', type: 'list', choices() { return ['Project', 'Module', 'Composer']; } };