UNPKG

gotbit-tools

Version:

GotBit development tool for js

53 lines (46 loc) 1.3 kB
const { exec } = require('child_process') const inquirer = require('inquirer') const copyTemplate = (template, dir) => ` git clone --single-branch --branch ${template}-stable --recursive https://gitlab.bc.gotbit.io/bc/pepega-team/templates/dapp-template.git __TEMP__ mkdir ${dir} cp -r __TEMP__/${template}/. ${dir} rm -rf __TEMP__ ` const copyMono = (dir) => ` git clone --single-branch --branch main --recursive https://gitlab.bc.gotbit.io/bc/pepega-team/templates/dapp-monorepo.git ${dir} rm -rf ./${dir}/.git ` function sh(command) { exec(command) } const templateList = ['frontend-vue', 'contracts', 'mono'] async function create(template, options) { if (!template) { const res = await inquirer.prompt([ { name: 'template', message: 'Name of template:', type: 'list', choices: templateList, }, ]) template = res.template } if (!options.dir) { const res = await inquirer.prompt([ { name: 'dir', message: 'Write folder name:', type: 'text', }, ]) options.dir = res.dir } console.log(`Creating "${template}-stable" in ${options.dir}/`) if (template === 'mono') { sh(copyMono(options.dir)) } else { sh(copyTemplate(template, options.dir)) } } module.exports = create