Support copy to clipboard on Windows

Summary:
Also fix lint errors about Buffer being undefined by adding env: node to the eslint config for local-cli.

Tested on windows 10.
Closes https://github.com/facebook/react-native/pull/11959

Differential Revision: D4438903

Pulled By: hramos

fbshipit-source-id: 28d5edd662dd1e63dedf1274ff0a21af4df84f5e
This commit is contained in:
Janic Duplessis 2017-01-19 16:23:32 -08:00 committed by Facebook Github Bot
parent 81193eba07
commit 10a29aa954
2 changed files with 8 additions and 1 deletions

View File

@ -2,5 +2,8 @@
"rules": { "rules": {
"extra-arrow-initializer": 0, "extra-arrow-initializer": 0,
"no-console-disallow": 0 "no-console-disallow": 0
},
"env": {
"node": true
} }
} }

View File

@ -13,7 +13,7 @@ var spawn = child_process.spawn;
/** /**
* Copy the content to host system clipboard. * Copy the content to host system clipboard.
* This is only supported on Mac for now. * This is only supported on Mac and Windows for now.
*/ */
function copyToClipBoard(content) { function copyToClipBoard(content) {
switch (process.platform) { switch (process.platform) {
@ -21,6 +21,10 @@ function copyToClipBoard(content) {
var child = spawn('pbcopy', []); var child = spawn('pbcopy', []);
child.stdin.end(new Buffer(content, 'utf8')); child.stdin.end(new Buffer(content, 'utf8'));
return true; return true;
case 'win32':
var child = spawn('clip', []);
child.stdin.end(new Buffer(content, 'utf8'));
return true;
default: default:
return false; return false;
} }