Feature request: support the plugin option for swc compiler #35156
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.
I'm a bit out of my depth here. I am trying to integrate swc-plugin-transform-import into my Next.js build so that our imports of @mui are converted into default exports. The only solution that works is to fall back to the Babel compiler and use babel-plugin-transform-imports.
I couldn't find definitive documentation about the API from swc, but it seems like they support a 'plugin' option which allows transformations in Javascript. This is also based on what I've seen in the links i shared below. With the changes I've included, I can see that my plugin is getting passed to the 'transform' method of the SWC binary on my machine:
swc-darwin-x64
but my investigation ends there. I can tell that my plugin function is still not being called, but I'm hoping it's a simple fix maybe to continue passing the plugin function down into swc.The code I've added to
next.config.js
can be found here: #30862 (comment). I am trying to apply the plugin to thenext-swc-loader
. I tried adding a new rule, tried using swc-loader, etc. but ran into other issues, so I'm just asking for next-swc-loader to support this additional field instead.Two related issues posted against next.js related to people wanting to transform their imports:
Other links:
plugin
option for swc-loader.