| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 | module.exports = (api, options) => {  api.render('./template', {    doesCompile: api.hasPlugin('babel') || api.hasPlugin('typescript')  })  api.extendPackage({    scripts: {      'serve': 'vue-cli-service serve',      'build': 'vue-cli-service build'    },    dependencies: {      'vue': '^2.6.10'    },    devDependencies: {      'vue-template-compiler': '^2.6.10'    },    'postcss': {      'plugins': {        'autoprefixer': {}      }    },    browserslist: [      '> 1%',      'last 2 versions'    ]  })  if (options.router) {    require('./router')(api, options)  }  if (options.vuex) {    require('./vuex')(api, options)  }  if (options.cssPreprocessor) {    const deps = {      // TODO: remove 'sass' option in v4 or rename 'dart-sass' to 'sass'      sass: {        'node-sass': '^4.12.0',        'sass-loader': '^8.0.0'      },      'node-sass': {        'node-sass': '^4.12.0',        'sass-loader': '^8.0.0'      },      'dart-sass': {        sass: '^1.19.0',        'sass-loader': '^8.0.0'      },      less: {        'less': '^3.0.4',        'less-loader': '^5.0.0'      },      stylus: {        'stylus': '^0.54.5',        'stylus-loader': '^3.0.2'      }    }    api.extendPackage({      devDependencies: deps[options.cssPreprocessor]    })  }  // additional tooling configurations  if (options.configs) {    api.extendPackage(options.configs)  }}
 |