Spaces:
Sleeping
Sleeping
module.exports = (api, options) => { | |
api.render('./template', { | |
doesCompile: api.hasPlugin('babel') || api.hasPlugin('typescript') | |
}) | |
if (options.vueVersion === '3') { | |
api.extendPackage({ | |
dependencies: { | |
'vue': '^3.0.0' | |
}, | |
devDependencies: { | |
'@vue/compiler-sfc': '^3.0.0' | |
} | |
}) | |
} else { | |
api.extendPackage({ | |
dependencies: { | |
'vue': '^2.6.11' | |
}, | |
devDependencies: { | |
'vue-template-compiler': '^2.6.11' | |
} | |
}) | |
} | |
api.extendPackage({ | |
scripts: { | |
'serve': 'vue-cli-service serve', | |
'build': 'vue-cli-service build' | |
}, | |
browserslist: [ | |
'> 1%', | |
'last 2 versions', | |
'not dead' | |
] | |
}) | |
if (options.cssPreprocessor) { | |
const deps = { | |
sass: { | |
sass: '^1.26.5', | |
'sass-loader': '^8.0.2' | |
}, | |
'node-sass': { | |
'node-sass': '^4.12.0', | |
'sass-loader': '^8.0.2' | |
}, | |
'dart-sass': { | |
sass: '^1.26.5', | |
'sass-loader': '^8.0.2' | |
}, | |
less: { | |
'less': '^3.0.4', | |
'less-loader': '^5.0.0' | |
}, | |
stylus: { | |
'stylus': '^0.54.7', | |
'stylus-loader': '^3.0.2' | |
} | |
} | |
api.extendPackage({ | |
devDependencies: deps[options.cssPreprocessor] | |
}) | |
} | |
// for v3 compatibility | |
if (options.router && !api.hasPlugin('router')) { | |
require('./router')(api, options, options) | |
} | |
// for v3 compatibility | |
if (options.vuex && !api.hasPlugin('vuex')) { | |
require('./vuex')(api, options, options) | |
} | |
// additional tooling configurations | |
if (options.configs) { | |
api.extendPackage(options.configs) | |
} | |
} | |