es-toolkit icon indicating copy to clipboard operation
es-toolkit copied to clipboard

A modern JavaScript utility library that's 2-3 times faster and up to 97% smaller—a major upgrade to lodash.

Results 194 es-toolkit issues
Sort by recently updated
recently updated
newest added

Currently, `groupBy` returns a type of `Record`, but I believe a more accurate (and useful) type would be `Record` - this is what https://remedajs.com/docs/#groupBy does.

Currently, `isPlainObject` asserts `value is Record`, but I think it would be safer to assert `value is Record` (like https://remedajs.com/docs/#isPlainObject) does?

I was looking for utilities for working with built in data structures, namely `Map`. There don't seem to be any? I need a map function, but lots of others could...

It seems that function delay() should be export as "e.delay=e.delay$1", whlie it's assigned to a function directed to setTimeout().

Checks if a value is a valid URL string. Uses JavaScript's built-in URL constructor to validate the URL. Valid URL format must include a protocol (http, https, etc.).

```TypeScript export const cartesianProduct = (...args: T[][]): T[][] => args.reduce((acc, cur) => acc.flatMap((x) => cur.map((y) => x.concat([y]))), [[]] as T[][]); export function* cartesianProductGenerator( ...args: T[][] ): Generator { if (args.length...

## Description We have to add `truncate` to `compat/string` package. If there are no assignees, feel free to assign yourself and contribute. Thank you! 😊 ## References - [Lodash Document](https://lodash.com/docs/4.17.15#truncate)...

I was looking for `deepMap` and couldn't find one, but after a bit realized that `cloneDeepWith` is essentially what I need. It would help discoverability/adoption of the tool if documentation...

What if we added a `throttleAsync` function to throttle asynchronous functions? ### Suggesting I suggest implementing a promise-based throttling function that only allows a new invocation when the previous one...

Need to keep the array value rather than flatten it. Make flatten array value an option in the second param.