keycloak-themes/default/keycloak/common/resources/node_modules/shx/lib/cli.js
2024-10-03 15:50:32 -06:00

40 lines
No EOL
1.2 KiB
JavaScript
Executable file

#!/usr/bin/env node
'use strict';
var _minimist = require('minimist');
var _minimist2 = _interopRequireDefault(_minimist);
var _shx = require('./shx');
var _config = require('./config');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var parsedArgs = (0, _minimist2.default)(process.argv.slice(2), { stopEarly: true, boolean: true });
// `input` is null if we're running from a TTY, or a string of all stdin if
// running from the right-hand side of a pipe
var run = function run(input) {
// Pass stdin to shx as the 'this' parameter
process.exitCode = _shx.shx.call(input, process.argv);
// We use process.exitCode to ensure we don't terminate the process before
// streams finish. See:
// https://github.com/shelljs/shx/issues/85
};
// ShellJS doesn't support input streams, so we have to collect all input first
if ((0, _config.shouldReadStdin)(parsedArgs._)) {
// Read all stdin first, and then pass that onto ShellJS
var chunks = [];
process.stdin.on('data', function (data) {
return chunks.push(data);
});
process.stdin.on('end', function () {
return run(chunks.join(''));
});
} else {
// There's no stdin, so we can immediately invoke the ShellJS function
run(null);
}