Repository navigation
Stop the editor's published bundle breaking in the browser - #39
Merged
Merged
Conversation
react-dom/client wasn't external, so the editor bundled react-dom as
CommonJS and rolldown left require("react") calls in it. Browsers have
no require, so the editor's UI failed to load in installed projects.
three's addons were bundled too, giving the game and the editor separate
copies of classes like TransformControls. Both are external now.
The template aliases core and the editor to their src/, so neither local
dev nor CI ever loaded dist/. The editor build now fails when a chunk
bundles a peer dependency or calls require() at runtime, and a new e2e
runs the template against the built packages (MAVONENGINE_USE_DIST=1)
and opens the editor in Chrome.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
react-dom/client wasn't external, so the editor bundled react-dom as CommonJS and rolldown left require("react") calls in it. Browsers have no require, so the editor's UI failed to load in installed projects. three's addons were bundled too, giving the game and the editor separate copies of classes like TransformControls. Both are external now.
The template aliases core and the editor to their src/, so neither local dev nor CI ever loaded dist/. The editor build now fails when a chunk bundles a peer dependency or calls require() at runtime, and a new e2e runs the template against the built packages (MAVONENGINE_USE_DIST=1) and opens the editor in Chrome.