Fixes#21995
Unblocks
- https://github.com/sxzz/ast-explorer/pull/263
Why?
- getting the actual list of visitorKeys provides an optimization for
tools like zimmerframe, which will `walk` over only the things specified
in the visitorKeys list -- helping prevent accidental recursive
visiting, which can happen when a tree adds parent referencs
Co-authored-by: Cameron <cameron.clark@hey.com>
Now that `apps/oxlint` and `napi/parser` are both ESM packages (#13723 and #14042), we can use `.js` file extensions for all ESM files, rather than the mix of `.js` and `.mjs` file we had previously.
It's less confusing having to remember what's `.js` and what's `.mjs`, and avoids ugly workarounds like #14038 (`.d.mts`??).