Has anyone looked at implementing a plugin similar to babel-plugin-lodash but for Babylon?
This would let you import from @babylonjs/core
while allowing for tree shaking, so you don’t have to think about which file is the right one to import from.
I tried using babel-plugin-direct-import
to do this for me automatically, but it didn’t work. I’m guessing it doesn’t follow export * as
and all the root-level exports are themselves export * as
.
This was the config I used:
[
"babel-plugin-direct-import",
{
modules: [
"@babylonjs/core",
"@babylonjs/gui",
"@babylonjs/inspector",
"@babylonjs/loaders",
"@babylonjs/materials",
"@babylonjs/procedural-textures",
"@babylonjs/serializers",
],
},
],
There’s probably a way to auto-generate the list of files to import from based on the paths in the export * as
from the index files in @babylonjs/core
(i.e. flatten it). From there, we could have a plugin that rewrites the imports for us.
I might be able to do this when I work on reducing the bundle size in my game