datamax-cli
Version:
datamax plugin cli
72 lines (70 loc) • 1.71 kB
JavaScript
const render = require("json-templater/string");
module.exports = function buildPj(config) {
let PACKAGEJSON_TEMPLATE = `{
"name": "{{pluginName}}",
"version": "1.0.0",
"private": false,
"author": "{{author}}",
"description": "{{description}}",
"scripts": {
"serve": "vue-cli-service serve",
"build": "rollup -c"
},
"dependencies": {
"axios": "^0.21.1",
"core-js": "^3.6.5",
"element-ui": "^2.15.2",
"rollup": "^2.50.5",
"rollup-plugin-less": "^1.1.3",
"rollup-plugin-vue": "^4.7.1",
"vue": "^2.6.11"
},
"devDependencies": {
"@rollup/plugin-babel": "^5.3.0",
"@rollup/plugin-commonjs": "^19.0.0",
"@rollup/plugin-json": "^4.1.0",
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-service": "~4.5.0",
"@vue/compiler-sfc": "^3.0.11",
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.2.2",
"less": "^3.0.4",
"less-loader": "^5.0.0",
"rollup-plugin-css-only": "^3.1.0",
"rollup-plugin-node-resolve": "^5.2.0",
"vue-template-compiler": "^2.6.12"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}
`;
let pj_template = render(PACKAGEJSON_TEMPLATE, {
pluginName: config.pluginName,
author: config.author,
description: config.description,
});
return {
template: pj_template,
dir: [config.root, config.pluginName],
file: "package.json",
};
};