Fixes the file extensions in TypeScript files so they may be loaded as ES modules.
ES Modules require import
s to contain the file extension.
Currently, TypeScript doesn't add the file extensions for you. (issue) 🤞
Although, they could be added in the TS file this makes using the non-module (nodejs / mocha testing) difficult.
This simple program allows you to continue writing your TS files without the extension and will append .js
to all your local imports.
This:
import Default from "no-change";
import { func } from "./local/function";
// ...
Turns into:
* import Default from "no-change";
* import { func } from "./local/function.js";
// ...
$ npm i -D tsc-esm
After you have compiled your TypeScript run it through this CLI.
$ tsc && tsc-esm index.js dist/*.js
- Do not add extension if it already exists