cli_command_project_lib_modify-plugin-factory.js
import { camelCase, upperFirst, kebabCase } from 'lodash-es'
import fs from 'fs-extra'
/**
* Modify the plugin factory file with the provided arguments.
*
* @async
* @memberof module:CLI/Command/Project
* @param {object} options - Parameters
* @param {string} options.cwd - Current working directory
* @param {object} options.argv - Command line arguments
* @param {string} options.argv.name - Plugin name
* @returns {Promise<void>}
*/
async function modifyPluginFactory (options) {
const { cwd, argv } = options
const file = `${cwd}/index.js`
let content = fs.readFileSync(file, 'utf8')
content = content.replaceAll('{name}', upperFirst(camelCase(argv.name)))
.replaceAll('{alias}', kebabCase(argv.name))
fs.writeFileSync(file, content, 'utf8')
}
export default modifyPluginFactory