137 lines
3.6 KiB
JavaScript
Executable File
137 lines
3.6 KiB
JavaScript
Executable File
#!/usr/bin/env node
|
|
"use strict";
|
|
var __assign = (this && this.__assign) || function () {
|
|
__assign = Object.assign || function(t) {
|
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
s = arguments[i];
|
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
t[p] = s[p];
|
|
}
|
|
return t;
|
|
};
|
|
return __assign.apply(this, arguments);
|
|
};
|
|
var __spreadArrays = (this && this.__spreadArrays) || function () {
|
|
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
|
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
|
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
|
r[k] = a[j];
|
|
return r;
|
|
};
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var _1 = require(".");
|
|
var minimist_1 = __importDefault(require("minimist"));
|
|
var nodeArgs = [];
|
|
var unknown = [];
|
|
var devArgs = process.argv.slice(2, 100);
|
|
var tsNodeFlags = {
|
|
boolean: [
|
|
'scope',
|
|
'emit',
|
|
'files',
|
|
'pretty',
|
|
'transpile-only',
|
|
'prefer-ts-exts',
|
|
'prefer-ts',
|
|
'log-error',
|
|
'skip-project',
|
|
'skip-ignore',
|
|
'compiler-host',
|
|
'script-mode',
|
|
],
|
|
string: [
|
|
'compiler',
|
|
'project',
|
|
'ignore',
|
|
'ignore-diagnostics',
|
|
'compiler-options',
|
|
'scopeDir',
|
|
'transpiler'
|
|
],
|
|
};
|
|
var tsNodeAlias = {
|
|
'transpile-only': 'T',
|
|
'compiler-host': 'H',
|
|
ignore: 'I',
|
|
'ignore-diagnostics': 'D',
|
|
'compiler-options': 'O',
|
|
compiler: 'C',
|
|
project: 'P',
|
|
'script-mode': 's',
|
|
};
|
|
var devFlags = {
|
|
boolean: [
|
|
'deps',
|
|
'all-deps',
|
|
'dedupe',
|
|
'fork',
|
|
'exec-check',
|
|
'debug',
|
|
'poll',
|
|
'respawn',
|
|
'notify',
|
|
'tree-kill',
|
|
'clear',
|
|
'cls',
|
|
'exit-child',
|
|
'error-recompile',
|
|
'quiet',
|
|
'rs',
|
|
],
|
|
string: [
|
|
'dir',
|
|
'deps-level',
|
|
'compile-timeout',
|
|
'ignore-watch',
|
|
'interval',
|
|
'debounce',
|
|
'watch',
|
|
'cache-directory',
|
|
],
|
|
};
|
|
var opts = minimist_1.default(devArgs, {
|
|
stopEarly: true,
|
|
boolean: __spreadArrays(devFlags.boolean, tsNodeFlags.boolean),
|
|
string: __spreadArrays(devFlags.string, tsNodeFlags.string),
|
|
alias: __assign(__assign({}, tsNodeAlias), { 'prefer-ts-exts': 'prefer-ts' }),
|
|
default: {
|
|
fork: true,
|
|
},
|
|
unknown: function (arg) {
|
|
unknown.push(arg);
|
|
return true;
|
|
},
|
|
});
|
|
var script = opts._[0];
|
|
var scriptArgs = opts._.slice(1);
|
|
opts.priorNodeArgs = [];
|
|
unknown.forEach(function (arg) {
|
|
if (arg === script || nodeArgs.indexOf(arg) >= 0)
|
|
return;
|
|
var argName = arg.replace(/^-+/, '');
|
|
// fix this
|
|
var argOpts = opts[argName];
|
|
var argValues = Array.isArray(argOpts) ? argOpts : [argOpts];
|
|
argValues.forEach(function (argValue) {
|
|
if ((arg === '-r' || arg === '--require') && argValue === 'esm') {
|
|
opts.priorNodeArgs.push(arg, argValue);
|
|
return false;
|
|
}
|
|
nodeArgs.push(arg);
|
|
if (typeof argValue === 'string') {
|
|
nodeArgs.push(argValue);
|
|
}
|
|
});
|
|
});
|
|
if (!script) {
|
|
// eslint-disable-next-line no-console
|
|
console.log('ts-node-dev: no script to run provided');
|
|
// eslint-disable-next-line no-console
|
|
console.log('Usage: ts-node-dev [options] script [arguments]\n');
|
|
process.exit(1);
|
|
}
|
|
_1.runDev(script, scriptArgs, nodeArgs, opts);
|