12345678910111213141516171819202122232425262728293031323334 |
- const fs = require('fs')
- const path = require('path')
- const resolve = require('resolve')
- const { execa } = require('@vue/cli-shared-utils')
- module.exports = function inspect (paths, args) {
- const cwd = process.cwd()
- let servicePath
- try {
- servicePath = resolve.sync('@vue/cli-service', { basedir: cwd })
- } catch (e) {
- const { error } = require('@vue/cli-shared-utils')
- error(
- `Failed to locate @vue/cli-service.\n` +
- `Note that \`vue inspect\` is an alias of \`vue-cli-service inspect\`\n` +
- `and can only be used in a project where @vue/cli-service is locally installed.`
- )
- process.exit(1)
- }
- const binPath = path.resolve(servicePath, '../../bin/vue-cli-service.js')
- if (fs.existsSync(binPath)) {
- execa('node', [
- binPath,
- 'inspect',
- ...(args.mode ? ['--mode', args.mode] : []),
- ...(args.rule ? ['--rule', args.rule] : []),
- ...(args.plugin ? ['--plugin', args.plugin] : []),
- ...(args.rules ? ['--rules'] : []),
- ...(args.plugins ? ['--plugins'] : []),
- ...(args.verbose ? ['--verbose'] : []),
- ...paths
- ], { cwd, stdio: 'inherit' })
- }
- }
|