Replace lodash/lodash-es with native JavaScript and lightweight alternatives #96
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.
Removes lodash/lodash-es dependency across all packages, replacing with native JavaScript methods, VueUse composables, and minimal libraries (
fast-deep-equal,rfdc).Replacements by category
Array/Object methods → Native JS
indexOf,find,filter,map→Array.prototypemethodskeyBy→Object.fromEntrieswithmapisEmpty→Object.keys().lengthdifference→filterwithSetcompact→filter(Boolean)with type guardpartition→ CustomforEachimplementationAsync utilities → VueUse
throttle→useThrottleFn(components, hub-features)debounce→useDebounceFn(components) or custom helper (jsonforms)Specialized functions → Minimal libraries
cloneDeep→rfdcpackageisEqual→fast-deep-equalpackageuniqueId→ Custom counter implementationsmaxBy→ Manual loopmerge→ Spread operator with manual header mergingExample changes
Packages removed
lodash-esfrom components, hub-features, jsonforms@types/lodash-esfrom root devDependenciesPackages added
fast-deep-equal@3.1.3(isEqual replacement, no vulnerabilities)rfdc@1.4.1(cloneDeep replacement, no vulnerabilities)Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
vueuse.orgcurl -s REDACTED(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.