first commit
This commit is contained in:
28
app_vue/node_modules/launch-editor-middleware/index.js
generated
vendored
Normal file
28
app_vue/node_modules/launch-editor-middleware/index.js
generated
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
const url = require('url')
|
||||
const path = require('path')
|
||||
const launch = require('launch-editor')
|
||||
|
||||
module.exports = (specifiedEditor, srcRoot, onErrorCallback) => {
|
||||
if (typeof specifiedEditor === 'function') {
|
||||
onErrorCallback = specifiedEditor
|
||||
specifiedEditor = undefined
|
||||
}
|
||||
|
||||
if (typeof srcRoot === 'function') {
|
||||
onErrorCallback = srcRoot
|
||||
srcRoot = undefined
|
||||
}
|
||||
|
||||
srcRoot = srcRoot || process.cwd()
|
||||
|
||||
return function launchEditorMiddleware (req, res) {
|
||||
const { file } = url.parse(req.url, true).query || {}
|
||||
if (!file) {
|
||||
res.statusCode = 500
|
||||
res.end(`launch-editor-middleware: required query param "file" is missing.`)
|
||||
} else {
|
||||
launch(path.resolve(srcRoot, file), specifiedEditor, onErrorCallback)
|
||||
res.end()
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user