Make internal imports more friendly for users using ES Modules #53
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.
Context
A user noticed an error when trying to import the package when using ES Modules:
We're using the buffer package so that our package can work in both NodeJS and browsers. To "tell" the code to import this version of Buffer, and not the built-in version, you have to import it via a directory and not the package name. Importing from
buffer/
is problematic, butbuffer/index.js
is fineWhilst fixing this issue I noticed it had a problem with me import
{ lib, ... }
from crypto-js. Using the default import fixed thatAnd finally I also noticed the package doesn't have a default export, so I added that too
Changes
buffer
imports more explicitcrypto-js
Testing
@wingy3181 kindly provided a repo to replicate the issue, along with some test cases. Here's the test cases succeeding with the modified version of the package: