Merged
Conversation
|
Size Change: +337 B (0%) Total Size: 1.24 MB
ℹ️ View Unchanged
|
ntsekouras
reviewed
Jun 20, 2022
This reverts commit 3fe8e9d.
ntsekouras
approved these changes
Jun 21, 2022
Contributor
ntsekouras
left a comment
There was a problem hiding this comment.
LGTM, thanks @tyxla !
Member
Author
|
Thanks for the great feedback, @ntsekouras 🙌 |
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.
What?
Lodash's
findKey()is used only a few times in the entire codebase. This PR aims to remove that usage.Why?
Lodash is known to unnecessarily inflate the bundle size of packages, and in most cases, it can be replaced with native language functionality. See these for more information and rationale:
@wordpress/api-fetchpackage haslodashas a dependency #39495How?
Removing
_.findKey()is straightforward in favor of a custom implementation that loops through the values and returns the key of the first match.Essentially, the usages of
findKey()here were a few, but they were all doing the same thing, so this was a good opportunity to extract and reuse. This seems to have been @ellatrix's intention anyway as mentioned in #39838 (comment). So, we're doing the following here:_.findKey(), which was the sole usage offindKey()._.findKey()in our ESLint config so it won't be used again.Testing Instructions
Verify tests pass:
npm run test-unit packages/block-editor/src/utils/test/selection.js