Version v1.31.0
Released on December 27th, 2024.
- Added support for the windowed, remove and asyncNoop functions.
- Introduced compatibility functions for pullAll, subtract, isBuffer, and methodOf.
- Enhanced the performance of pull when working with large arrays.
- Resolved an issue where reverse was not being exported in our compatibility library.
- Updated groupBy to properly handle keys like
toString
or valueOf
.
- Fixed merge to correctly merge values when
target
or any of its values are null
or undefined
.
We sincerely thank @T3sT3ro, @D-Sketon, @tuhm1, @willmanduffy, @apeltop, @aken-you, @SaeWooKKang, and @ssi02014 for their contributions. We appreciate your great efforts!
Version v1.30.1
Released on December 14th, 2024.
- Fixed uniqueId not being exported in our compatibility library.
We sincerely thank @redd97 for their contributions. We appreciate your great efforts!
Version v1.30.0
Released on December 13th, 2024.
- Introduced support for pull.
- Added compatibility functions for map, range, rangeRight, differenceWith, nth, noop, identity, keys, propertyOf, nthArg, delay, toPlainObject, unary, once, after, takeRightWhile, escapeRegExp, unescape, upperFirst, lowerFirst, deburr, lt, lte, toLower, invoke, method, reverse, now, findKey, stubArray, stubFalse, stubObject, stubString, and stubTrue.
We sincerely thank @healtheloper, @mass2527, @D-Sketon, @eunhyulkim, @scato3, @Na-hyunwoo, and @dasom-jo for their contributions. We appreciate your great efforts!
Version v1.29.0
Released on December 1st, 2024.
We sincerely thank @nnnnoel and @evan-moon for their contributions. We appreciate your great efforts!
Version v1.28.0
Released on November 30th, 2024.
- Added compatibility functions for gt, gte, toArray, toUpper, add, assignIn (extend), and isElement.
- Introduced new compatibility types for
DebouncedFunc
.
- Enhanced our function types to accept
PropertyKey
instead of just string
for property keys.
- Corrected flatMap to accurately infer return types when the
depth
parameter is omitted.
- Resolved issues with incorrect types for partial and partialRight.
- Fixed intersectionBy, differenceBy, and differenceWith to properly calculate differences between various element types.
- Ensured that words is now correctly exported in our compatibility library.
We sincerely thank @D-Sketon, @mass2527, @1eeminhyeong, @chhw130, @DONG-8, @filipsobol, @kim-dongho, @nnnnoel, @pbstar, and @jsparkdev for their contributions. We appreciate your great efforts!
Version v1.27.0
Released on November 10th, 2024.
- Added support for findKey and isSubsetWith.
- Introduced compatibility functions for words, at, differenceBy, uniqBy, forEach, each, sum, sumBy, union, zip, unzip, iteratee, isEmpty, and replace.
- Fixed a bug in cloneDeep that prevented it from correctly cloning object prototypes.
- Improved performance for at.
- Enhanced performance for toPath, get, set, unset, has, orderBy, chunk, difference, drop, dropRight, dropWhile, findLastIndex, head, last, sample, tail, take, and takeRight in our compatibility library.
We sincerely thank @scato3, @ssi02014, @filipsobol, @mass2527, @Gyumong, @D-Sketon, @dayongkr, @kyvg, @Na-hyunwoo, @kaehehehe, and @bhollis for their contributions. Special thanks to @cruelladevil for improving the documentation. We appreciate your great efforts!
Version v1.26.1
Released on October 25th, 2024.
- Fixed a bug in isMatch that did not strictly compare
null
in objects.
This version includes contributions from @D-Sketon. Thank you for your valuable contributions!
Version v1.26.0
Released on October 24th, 2024.
- Added support for invariant, identity, median, and medianBy.
- Added compatibility functions for template, uniqueId, intersectionBy, orderBy, sortBy, and some.
- Made it possible to use drop, dropRight, every, take, and takeRight directly as iteratees, allowing for usage like
arr.map(drop)
.
- Corrected merge to disallow primitive values such as numbers or strings.
This version includes contributions from @dayongkr, @Na-hyunwoo, @ssi02014, @kaehehehe, @jakvbs, @D-Sketon, and @seonghun0828. Thank you for your valuable contributions!
Version v1.25.2
Released on October 16th, 2024.
This version includes contributions from @D-Sketon. Thank you for your valuable contributions!
Version v1.25.1
Released on October 15th, 2024.
This version includes contributions from @D-Sketon. Thank you for your valuable contributions!
Version v1.25.0
Released on October 14th, 2024.
- Added support for isFile.
- Added compatibility functions for escape, toSafeInteger, intersection, sample, chunk, compact, head, initial, last, tail, take, takeRight, uniq, and without.
- Enhanced performance for at and isPlainObject.
- Resolved an issue in cloneDeep that prevented it from cloning symbol properties and read-only properties of objects.
- Fixed a problem in pick within our compatibility library that incorrectly added
undefined
for keys that do not exist.
This version includes contributions from @D-Sketon, @mass2527, @dayongkr, @lukaszkowalik2, @Gyumong, @Dohun-choi, @belgattitude, and @chhw130. Thank you for your valuable contributions!
Version v1.24.0
Released on October 7th, 2024.
- Added support for isBlob and isDate.
- Added compatibility functions for invertBy, times, constant, slice, toLength, defaultTo, dropRightWhile, curryRight, rangeRight, before, eq, defaults, toDefaulted, isArrayBuffer, isSet, and isMap.
- Enhanced difference to work with Array-like objects, aligning its functionality with lodash's behavior.
- Improved performance for pickBy and omitBy.
Version v1.23.0
Released on October 1st, 2024.
- Added support for isEqualWith, isArrayBuffer, curryRight, isJSONValue, isJSONObject, isJSONArray.
- Fixed a bug in merge that copied the reference from the
source
object to the target
object.
- Fixed a bug in includes that returned
true
for inherited properties.
- Fixed a bug in startCase and other string methods that did not correctly split the words when using accented letters.
- Fixed a bug in filter that did not provide correct arguments to the predicate function.
- Fixed a bug in isMatch that did not strictly compare primitive falsy values.
This version includes contributions from @D-Sketon, @wojtekmaj, @mass2527, @chhw130, and @knott11. Thank you for your valuable contributions!
Version v1.22.0
Released on September 28th, 2024.
- Added support for flow, flowRight, isMap, and isSet.
Added compatibility functions for filter, includes, every, flip, and dropWhile.
Fixed a bug in throttle that prevented it from throttling after the initial throttleMs
.
- Fixed a bug in cloneDeep that caused it to not clone the offset and length of
DataView
.
- Fixed a bug in clone that threw an error if
SharedArrayBuffer
is unavailable.
This version includes contributions from @dayongkr, @k-jeonghee, @D-Sketon, @iDevGon, @mass2527, @wojtekmaj, @jonganebski, @hyesungoh, and @chhw130. Thank you for your valuable contributions!
Version v1.21.0
Released on September 25th, 2024.
- Added support for constantCase and isError.
- Added compatibility functions for pad, padStart, padEnd, defer, isFinite, toNumber, toFinite, and toInteger.
- Improved performance for flatten, isNumber, isString, isSymbol, isRegExp, and isBoolean.
- Fixed compact to correctly exclude
0n
as a falsey value.
- Fixed pick to not pick nonexistent keys from the original object.
- Fixed omit to accept readonly arrays.
This version includes contributions from @hyesungoh, @D-Sketon, @mass2527, @gweesin, @VVSOGI, @coding-honey, @seonghun0828, and @jsparkdev. Thank you for your valuable contributions!
Version v1.20.0
Released on September 20th, 2024.
Version v1.19.0
Released on September 14th, 2024.
- Added support for isDate, curry, upperCase.
- Added compatibility functions for pick, omit, unset, toPath, trim, trimStart, trimEnd, isInteger, isSafeInteger, snakeCase, startCase, lowerCase, kebabCase, ceil, floor, round.
- Enhanced clone to handle
Buffer
s, SharedArrayBuffer
s, File
s, Blob
s, TypedArray
s, and Error
s.
- Fixed a bug where mergeWith did not preserve the original properties of the
target
object.
- Fixed a bug where groupBy couldn't group with keys like
toString
and indexOf
.
- Improved performance for has and get.
Version v1.18.0
Released on September 12th, 2024.
- Added support for isObject, findLastIndex, parseInt, rearg, conforms, conformsTo, bindKey, some, fromPairs, isArrayLikeObject, escapeRegExp, sortBy, isWeakSet, isWeakMap, flatMapDeep, escape, unescape, repeat, pad, join, and spread.
- Improved performance for deburr.
Version v1.17.0
Released on August 31st, 2024.
New Features
Bug Fixes
- Updated type definitions for throttle and debounce.
- (
es-toolkit/compat
) Fixed orderBy to correctly handle deep keys even when object shapes differ (#427).
Version v1.16.0
Released on August 15th, 2024.
Version v1.15.1
Released on August 10th, 2024.
- Disabled implicit conversion of values in orderBy for performance and simplicity.
Version v1.15.0
Released on August 10th, 2024.
Version v1.14.0
Released on August 9th, 2024.
- (
es-toolkit
) Added support for mapKeys, mapValues, cloneDeep, before, after, isSubset, ary, unary, flattenDeep, isEqual, isFunction, isBoolean, isPrimitive, and isTypedArray.
- (
es-toolkit/compat
) Added support for matches, isMatch, isArray, isArrayLike, isObjectLike, isArguments, size, bind, flattenDepth, and padStart.
- Added compatibility tests with lodash for many functions like initial, last, takeRight, without, uniq, invert, isNull, isUndefined, and isNil.
Version v1.13.1
Released on July 20th, 2024.
- Use the compatibility layer
es-toolkit/compat
in legacy CDN builds.
Version v1.13.0
Released on July 20th, 2024.
es-toolkit
can now be used in various CDNs, like unpkg and jsdelivr. See more in our usage docs
Features
Lodash Compatibility
Version v1.12.0
Released on July 19th, 2024.
- Fixed a bug where
es-toolkit/compat
was not available in modern Node.js environments.
- Added support for max and min in our compatibility layer
es-toolkit/compat
. (e1e6e38)
Version v1.11.0
Released on July 18th, 2024.
We're introducing es-toolkit/compat
, a new module designed as a drop-in replacement for lodash. It replicates lodash's API, making it easier to switch between the two libraries.
es-toolkit/compat
is undergoing rigorous testing using real lodash
test cases. Initial benchmarks suggest it's typically 5% slower and increases bundle size by 10% compared to the original es-toolkit
.
This module is intended to facilitate a smooth transition and should be replaced with the original es-toolkit
for optimal performance once migration is complete.
For more information, see our compatibility documentation.
Features
Bug fixes
Version v1.10.1
Released on July 15th, 2024.
Version v1.10.0
Released on July 14th, 2024.
Features
Version v1.9.0
Released on July 10th, 2024.
Version v1.8.0
Released on July 5th, 2024.
Version v1.7.1
Released on July 3rd, 2024.
Version v1.6.1
Released on June 30th, 2024.
Version v1.6.0
Released on June 30th, 2024.
Features
Version v1.5.0
Released on June 28th, 2024.
Features
Bug fixes
Version v1.4.0
Released on June 15th, 2024.
Features
Version v1.3.1
Released on June 15th, 2024.
Version v1.3.0
Released on June 14th, 2024.
Features
Version v1.2.2
Released on June 13th, 2024.
Version v1.2.1
Released on June 13th, 2024.
Version v1.2.0
Released on June 8th, 2024.
Features
Bug fixes
Version v1.1.0
Released on June 5th, 2024.
Version v1.0.4
Released on June 4th, 2024.
Version v1.0.3
Released on June 3rd, 2024.
Version v1.0.2
Initial release. Released on May 31th, 2024.