concurrently
Advanced tools
Comparing version 8.1.0 to 8.2.0
@@ -51,10 +51,23 @@ "use strict"; | ||
} | ||
const commandsMap = new Map(); | ||
for (const command of commands) { | ||
commandsMap.set(command.index.toString(), command); | ||
commandsMap.set(command.name, command); | ||
} | ||
Rx.fromEvent(inputStream, 'data') | ||
.pipe((0, operators_1.map)((data) => String(data))) | ||
.subscribe((data) => { | ||
const dataParts = data.split(/:(.+)/); | ||
const targetId = dataParts.length > 1 ? dataParts[0] : this.defaultInputTarget; | ||
const input = dataParts[1] || data; | ||
const command = commands.find((command) => command.name === targetId || | ||
command.index.toString() === targetId.toString()); | ||
let command, input; | ||
const dataParts = data.split(/:(.+)/s); | ||
let target = dataParts[0]; | ||
if (dataParts.length > 1 && (command = commandsMap.get(target))) { | ||
input = dataParts[1]; | ||
} | ||
else { | ||
// If `target` does not match a registered command, | ||
// fallback to `defaultInputTarget` and forward the whole input data | ||
target = this.defaultInputTarget.toString(); | ||
command = commandsMap.get(target); | ||
input = data; | ||
} | ||
if (command && command.stdin) { | ||
@@ -64,3 +77,3 @@ command.stdin.write(input); | ||
else { | ||
this.logger.logGlobalEvent(`Unable to find command ${targetId}, or it has no stdin open\n`); | ||
this.logger.logGlobalEvent(`Unable to find command "${target}", or it has no stdin open\n`); | ||
} | ||
@@ -67,0 +80,0 @@ }); |
{ | ||
"name": "concurrently", | ||
"version": "8.1.0", | ||
"version": "8.2.0", | ||
"description": "Run commands concurrently", | ||
@@ -41,27 +41,27 @@ "main": "index.js", | ||
"chalk": "^4.1.2", | ||
"date-fns": "^2.29.3", | ||
"date-fns": "^2.30.0", | ||
"lodash": "^4.17.21", | ||
"rxjs": "^7.8.0", | ||
"shell-quote": "^1.8.0", | ||
"spawn-command": "0.0.2-1", | ||
"rxjs": "^7.8.1", | ||
"shell-quote": "^1.8.1", | ||
"spawn-command": "0.0.2", | ||
"supports-color": "^8.1.1", | ||
"tree-kill": "^1.2.2", | ||
"yargs": "^17.7.1" | ||
"yargs": "^17.7.2" | ||
}, | ||
"devDependencies": { | ||
"@hirez_io/observer-spy": "^2.2.0", | ||
"@swc/core": "^1.3.42", | ||
"@swc/jest": "^0.2.24", | ||
"@types/jest": "^29.5.0", | ||
"@types/lodash": "^4.14.192", | ||
"@types/node": "^14.18.42", | ||
"@swc/core": "^1.3.62", | ||
"@swc/jest": "^0.2.26", | ||
"@types/jest": "^29.5.2", | ||
"@types/lodash": "^4.14.195", | ||
"@types/node": "^14.18.48", | ||
"@types/shell-quote": "^1.7.1", | ||
"@types/supports-color": "^8.1.1", | ||
"@types/yargs": "^17.0.24", | ||
"@typescript-eslint/eslint-plugin": "^5.57.0", | ||
"@typescript-eslint/parser": "^5.57.0", | ||
"@typescript-eslint/eslint-plugin": "^5.59.9", | ||
"@typescript-eslint/parser": "^5.59.9", | ||
"coveralls-next": "^4.2.0", | ||
"ctrlc-wrapper": "^0.0.4", | ||
"esbuild": "~0.17.14", | ||
"eslint": "^8.37.0", | ||
"esbuild": "~0.17.19", | ||
"eslint": "^8.42.0", | ||
"eslint-config-prettier": "^8.8.0", | ||
@@ -75,7 +75,7 @@ "eslint-plugin-import": "^2.27.5", | ||
"jest-create-mock-instance": "^2.0.0", | ||
"lint-staged": "^13.2.0", | ||
"prettier": "^2.8.7", | ||
"lint-staged": "^13.2.2", | ||
"prettier": "^2.8.8", | ||
"safe-publish-latest": "^2.0.0", | ||
"string-argv": "^0.3.1", | ||
"typescript": "~5.0.2" | ||
"string-argv": "^0.3.2", | ||
"typescript": "~5.1.3" | ||
}, | ||
@@ -82,0 +82,0 @@ "files": [ |
120621
2499
+ Addedspawn-command@0.0.2(transitive)
- Removedspawn-command@0.0.2-1(transitive)
Updateddate-fns@^2.30.0
Updatedrxjs@^7.8.1
Updatedshell-quote@^1.8.1
Updatedspawn-command@0.0.2
Updatedyargs@^17.7.2