Files
2020-03-25 16:36:52 +01:00

34 lines
1.0 KiB
JavaScript

module.exports = (api, options) => {
api.render('./templateExampleApp')
if(options.createVueConfigJs.toLowerCase() === 'y') {
api.render('./template')
}
api.extendPackage({
dependencies: {
'@vue/composition-api': '^0.5.0'
},
devDependencies: {
"purs-loader": "^3.7.1"
}
})
api.injectImports(api.entryFile, `import VueCompositionApi from '@vue/composition-api'`)
module.exports.hooks = (api) => {
api.afterInvoke(() => {
const { EOL } = require('os')
const fs = require('fs')
const contentMain = fs.readFileSync(api.resolve(api.entryFile), { encoding: 'utf-8' })
const lines = contentMain.split(/\r?\n/g).reverse()
if (lines.findIndex(line => line.match(/Vue\.use.*VueCompositionApi.*/)) !== -1) return
const renderIndex = lines.findIndex(line => line.match(/import/))
lines[renderIndex-1] += `${EOL}Vue.use(VueCompositionApi);${EOL}`
lines.reverse()
fs.writeFileSync(api.entryFile, lines.join(EOL), { encoding: 'utf-8' })
})
}
}