tsc-esm-fix
ts2esm


tsc-esm-fix | ts2esm | |
---|---|---|
2 | 2 | |
75 | 64 | |
- | - | |
7.8 | 8.9 | |
5 days ago | 10 days ago | |
TypeScript | TypeScript | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tsc-esm-fix
-
TypeScript is now officially 10 years old
Probably because it compiles them to a pre-standard ES5-compatible implementation based on good ol' `Foo.prototype`. And since they've already handled them one way, they can't become spec-compliant without breaking backwards compatibility.
The other place where this shines through particularly egregiously is the support of ESM static import/export. Everybody's build tools been compiling that back down to CJS so hard that Node.js 16+ introduced intentional incompatibilities between CJS and ESM modes just to get people to finally switch to the standards-compliant module system. So you end up in a situation where the library is written in TypeScript with ESM syntax but the only available browser build is a CJS blob which completely defeats the main touted benefit of static imports/exports, namely dead code elimination...
So you decide what the hell, let's switch TSC to ESM and moduleResolution node16, and end up having to use something like https://github.com/antongolub/tsc-esm-fix because the only allowed fix for TSC doing the wrong thing is at the completely wrong level - https://www.typescriptlang.org/docs/handbook/esm-node.html - if you don't see what's wrong with that, you're one of today's lucky 10000...
- TS and ts-jest meet “type”: “module”
ts2esm
What are some alternatives?
ts-jest - A Jest transformer with source map support that lets you use Jest to test projects written in TypeScript.
expunge-assist - Expunge Assist is a free digital tool specifically designed to aid Californians with arrest and conviction histories in clearing their criminal records.
tsx - ⚡️ TypeScript Execute | The easiest way to run TypeScript in Node.js
js-assistant - 120+ refactorings and code-assists for Visual Studio Code
node-win32-api - win32 api
astx - Super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring
react-pair - 🖇️ Util to help with the paired hook pattern
pkgroll - 📦 Zero-config package bundler for Node.js + TypeScript
proposal-type-annotations - ECMAScript proposal for type syntax that is erased - Stage 1
ts-migrate - A tool to help migrate JavaScript code quickly and conveniently to TypeScript
TypeScript - TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
rollup-plugin-ts - A TypeScript Rollup plugin that bundles declarations, respects Browserslists, and enables seamless integration with transpilers such as babel and swc

