diff --git a/dist-raw/node-options.js b/dist-raw/node-options.js index f27a44689..7a68872ce 100644 --- a/dist-raw/node-options.js +++ b/dist-raw/node-options.js @@ -25,7 +25,9 @@ function parseArgv(argv) { '--preserve-symlinks': Boolean, '--preserve-symlinks-main': Boolean, '--input-type': String, - '--experimental-specifier-resolution': String + '--experimental-specifier-resolution': String, + // Legacy alias for node versions prior to 12.16 + '--es-module-specifier-resolution': '--experimental-specifier-resolution', }, { argv, permissive: true diff --git a/esm-usage-example/package.json b/esm-usage-example/package.json index e9974a780..6c23fab66 100644 --- a/esm-usage-example/package.json +++ b/esm-usage-example/package.json @@ -1,7 +1,7 @@ { "type": "module", "dependencies": { - "ts-node": "github:TypeStrong/ts-node#ab/esm-support", + "ts-node": "github:TypeStrong/ts-node#master", "typescript": "^3.8.3" } } diff --git a/src/index.spec.ts b/src/index.spec.ts index 10e6aa376..80ea31857 100644 --- a/src/index.spec.ts +++ b/src/index.spec.ts @@ -887,6 +887,14 @@ describe('ts-node', function () { return done() }) }) + it('via --es-module-specifier-resolution alias', (done) => { + exec(`${cmd} --experimental-modules --es-module-specifier-resolution=node index.ts`, { cwd: join(__dirname, '../tests/esm-node-resolver') }, function (err, stdout) { + expect(err).to.equal(null) + expect(stdout).to.equal('foo bar baz biff\n') + + return done() + }) + }) it('via NODE_OPTIONS', (done) => { exec(`${cmd} index.ts`, { cwd: join(__dirname, '../tests/esm-node-resolver'),