Skip to content

Commit 9856549

Browse files
committed
refactor: refactor shared utils + move openBrowser
1 parent 4a7fd64 commit 9856549

File tree

13 files changed

+59
-29
lines changed

13 files changed

+59
-29
lines changed

packages/@vue/cli-service/lib/commands/serve.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ const {
22
info,
33
error,
44
hasYarn,
5+
openBrowser,
56
clearConsole
67
} = require('@vue/cli-shared-utils')
78

@@ -37,7 +38,6 @@ module.exports = (api, options) => {
3738
const webpack = require('webpack')
3839
const WebpackDevServer = require('webpack-dev-server')
3940
const portfinder = require('portfinder')
40-
const openBrowser = require('../util/openBrowser')
4141
const prepareURLs = require('../util/prepareURLs')
4242
const prepareProxy = require('../util/prepareProxy')
4343
const launchEditorMiddleware = require('launch-editor-middleware')

packages/@vue/cli-service/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@
4242
"javascript-stringify": "^1.6.0",
4343
"launch-editor-middleware": "^2.2.0",
4444
"minimist": "^1.2.0",
45-
"opn": "^5.2.0",
4645
"optimize-css-assets-webpack-plugin": "^3.2.0",
4746
"ora": "^1.3.0",
4847
"portfinder": "^1.0.13",
Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
1-
Object.assign(exports, require('./env'))
2-
Object.assign(exports, require('./logger'))
3-
Object.assign(exports, require('./validate'))
4-
Object.assign(exports, require('./linkBin'))
1+
[
2+
'env',
3+
'linkBin',
4+
'logger',
5+
'spinner',
6+
'validate',
7+
'openBrowser'
8+
].forEach(m => {
9+
Object.assign(exports, require(`./lib/${m}`))
10+
})
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
module.exports = function silence (exports) {
2+
const logs = {}
3+
Object.keys(exports).forEach(key => {
4+
if (key !== 'error') {
5+
exports[key] = (...args) => {
6+
if (!logs[key]) logs[key] = []
7+
logs[key].push(args)
8+
}
9+
}
10+
})
11+
exports.logs = logs
12+
}

packages/@vue/cli-shared-utils/logger.js renamed to packages/@vue/cli-shared-utils/lib/logger.js

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
const chalk = require('chalk')
2-
const spinner = require('./spinner')
32
const readline = require('readline')
43
const padStart = require('string.prototype.padstart')
54

6-
Object.assign(exports, spinner)
7-
85
const format = (label, msg) => {
96
return msg.split('\n').map((line, i) => {
107
return i === 0
@@ -48,14 +45,5 @@ exports.clearConsole = title => {
4845

4946
// silent all logs except errors during tests and keep record
5047
if (process.env.VUE_CLI_TEST) {
51-
const logs = {}
52-
Object.keys(exports).forEach(key => {
53-
if (key !== 'error') {
54-
exports[key] = (...args) => {
55-
if (!logs[key]) logs[key] = []
56-
logs[key].push(args)
57-
}
58-
}
59-
})
60-
exports.logs = logs
48+
require('./_silence')(exports)
6149
}

packages/@vue/cli-service/lib/util/openBrowser.js renamed to packages/@vue/cli-shared-utils/lib/openBrowser.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
* https://github.com/facebookincubator/create-react-app/blob/master/LICENSE
77
*/
88

9+
const opn = require('opn')
10+
const execa = require('execa')
911
const chalk = require('chalk')
1012
const execSync = require('child_process').execSync
11-
const execa = require('execa')
12-
const opn = require('opn')
1313

1414
// https://github.com/sindresorhus/opn#app
1515
const OSX_CHROME = 'google chrome'
@@ -107,7 +107,7 @@ function startBrowserProcess (browser, url) {
107107
* Reads the BROWSER evironment variable and decides what to do with it. Returns
108108
* true if it opened a browser or ran a node.js script, otherwise false.
109109
*/
110-
function openBrowser (url) {
110+
exports.openBrowser = function (url) {
111111
const { action, value } = getBrowserEnv()
112112
switch (action) {
113113
case Actions.NONE:
@@ -121,5 +121,3 @@ function openBrowser (url) {
121121
throw new Error('Not implemented.')
122122
}
123123
}
124-
125-
module.exports = openBrowser

packages/@vue/cli-shared-utils/spinner.js renamed to packages/@vue/cli-shared-utils/lib/spinner.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,3 +42,8 @@ exports.pauseSpinner = () => {
4242
exports.resumeSpinner = () => {
4343
spinner.start()
4444
}
45+
46+
// silent all logs except errors during tests and keep record
47+
if (process.env.VUE_CLI_TEST) {
48+
require('./_silence')(exports)
49+
}

0 commit comments

Comments
 (0)