UNPKG

create-widget-app

Version:

The create-widget-app command line tool makes it easy to generate a configured WP Elementor widget.

27 lines (23 loc) 1.15 kB
const fs = require('fs'); const path = require('path'); const { execSync } = require('child_process'); const indexHtmlTemplate = require('../templates/index-html.template'); const gitIgnoreTemplate = require('../templates/git-ignore.template'); const readMeTemplate = require('../templates/readme.template'); const screenshotTemplate = require('../templates/screenshot.template'); const { decamelize } = require("../common/utils"); module.exports.run = (widgetName = "", options = {}) => { const widgetDir = path.resolve(process.env.PWD, widgetName); if (fs.existsSync(widgetDir)) { return console.log(`[create-widget-app] Widget ${widgetDir} already exists!`); } else { fs.mkdirSync(widgetDir); console.log(`[create-widget-app] Created ${widgetDir}`); } indexHtmlTemplate.render(widgetDir, { className: decamelize(widgetName) }); gitIgnoreTemplate.render(widgetDir) readMeTemplate.render(widgetDir, { className: decamelize(widgetName) }); screenshotTemplate.render(widgetDir) execSync(`cd ${widgetName} && git init && git add . && git commit -m'init commit'`); console.log('Done!') };