fix: replace previous mapping when provided with a new one #132
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.
We were replacing custom mappings only when a previous one did not exist.
This PR ensures we rebuild mappings anytime they change, but also skips running the map creation when unnecessary (via memoize and deep equal).
This also adds 2 new dependencies (which are <1kb combined), whereas we used to be dependency free. I don't know if that was by chance or philosophical when this project was started. Any thoughts on this? Do you mind the change? @mimshwright @vietqhoang
However our current build contains a lot of backwards browser compatibility cruft that is outdated and unneeded these days. I think we should tackle that it a separate PR (which would likely shed a lot of weight).
Fixes #129