Skip to content

Commit bf58baa

Browse files
authored
feat: support loading ESModule TS files when using ts-node (#270)
* fix: esm `.ts` file fails to be loaded * feat: add support for `.cts` and `.mts` file
1 parent d136803 commit bf58baa

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/lib/strategies/LoaderStrategy.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export class LoaderStrategy<T extends Piece> implements ILoaderStrategy<T> {
2828
* extensions.
2929
*/
3030
if (Reflect.has(process, Symbol.for('ts-node.register.instance')) || !isNullish(process.env.TS_NODE_DEV)) {
31-
this.supportedExtensions.push('.ts');
31+
this.supportedExtensions.push('.ts', '.cts', '.mts');
3232
this.filterDtsFiles = true;
3333
}
3434
}
@@ -49,7 +49,7 @@ export class LoaderStrategy<T extends Piece> implements ILoaderStrategy<T> {
4949
}
5050

5151
public async preload(file: ModuleData): AsyncPreloadResult<T> {
52-
const mjs = file.extension === '.mjs' || (file.extension === '.js' && this.clientUsesESModules);
52+
const mjs = ['.mjs', '.mts'].includes(file.extension) || (['.js', '.ts'].includes(file.extension) && this.clientUsesESModules);
5353
if (mjs) {
5454
const url = pathToFileURL(file.path);
5555
url.searchParams.append('d', Date.now().toString());

0 commit comments

Comments
 (0)