@quantiya/codevibe-claude-plugin 2.0.23 → 2.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/dist/server.js +7 -7
  3. package/node_modules/@quantiya/codevibe-core/dist/appsync/appsync-client.d.ts +25 -0
  4. package/node_modules/@quantiya/codevibe-core/dist/appsync/index.d.ts +1 -1
  5. package/node_modules/@quantiya/codevibe-core/dist/config/config.d.ts +1 -1
  6. package/node_modules/@quantiya/codevibe-core/dist/e1/__tests__/prompt-publication.test.d.ts +1 -0
  7. package/node_modules/@quantiya/codevibe-core/dist/e1/index.d.ts +1 -0
  8. package/node_modules/@quantiya/codevibe-core/dist/e1/prompt-publication.d.ts +14 -0
  9. package/node_modules/@quantiya/codevibe-core/dist/index.d.ts +1 -1
  10. package/node_modules/@quantiya/codevibe-core/dist/index.js +289 -289
  11. package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/quorum-loop-outcome-recency.test.d.ts +1 -0
  12. package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.d.ts +7 -0
  13. package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.js +388 -121
  14. package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/quorum-loop.d.ts +4 -0
  15. package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/types.d.ts +24 -0
  16. package/node_modules/@quantiya/codevibe-core/dist/ordinal-presentation.d.ts +4 -0
  17. package/node_modules/@quantiya/codevibe-core/dist/ordinal-presentation.test.d.ts +1 -0
  18. package/node_modules/@quantiya/codevibe-core/package.json +1 -1
  19. package/node_modules/fs-ext/build/Makefile +1 -1
  20. package/node_modules/fs-ext/build/Release/fs_ext.node +0 -0
  21. package/package.json +2 -2
  22. package/node_modules/@iarna/toml/CHANGELOG.md +0 -278
  23. package/node_modules/color-convert/CHANGELOG.md +0 -54
  24. package/node_modules/cross-spawn/node_modules/which/CHANGELOG.md +0 -166
  25. package/node_modules/deep-extend/CHANGELOG.md +0 -46
  26. package/node_modules/es-toolkit/CHANGELOG.md +0 -1018
  27. package/node_modules/es-toolkit/src/compat/_internal/Equals.d.ts +0 -1
  28. package/node_modules/es-toolkit/src/compat/_internal/IsWritable.d.ts +0 -3
  29. package/node_modules/es-toolkit/src/compat/_internal/MutableList.d.ts +0 -4
  30. package/node_modules/es-toolkit/src/compat/_internal/RejectReadonly.d.ts +0 -4
  31. package/node_modules/keytar/build/Release/keytar.node +0 -0
@@ -1,1018 +0,0 @@
1
- # es-toolkit Changelog
2
-
3
- ## Version v1.51.0
4
-
5
- Released on August 17th, 2026.
6
-
7
- - Added the `es-toolkit/bigint` entrypoint: `bigint` counterparts of the math
8
- functions (`sum`, `sumBy`, `max`, `min`, `maxBy`, `minBy`, `clamp`, `inRange`,
9
- `median`, `medianBy`, `percentile`, `range`, `rangeRight`), kept separate so
10
- the `number` implementations stay unchanged. ([#1966])
11
- - Added `dedent`, which removes common leading whitespace from template strings. ([#1679])
12
- - Added `deepFreeze` for recursively freezing objects. ([#1680])
13
- - Added `mapValuesAsync` and `mapKeysAsync`. ([#1544])
14
- - Added `toPascalCaseKeys`, `toKebabCaseKeys`, and `toConstantCaseKeys`,
15
- completing the object key casing family. ([#1984])
16
- - Exported the `ToCamelCaseKeys`, `ToPascalCaseKeys`, `ToSnakeCaseKeys`,
17
- `ToKebabCaseKeys`, and `ToConstantCaseKeys` types. ([#1651])
18
- - Added a `preserveArrays` option to `flattenObject`. ([#974])
19
-
20
- - Fixed `retry` to pass the last error to the `delay` callback ([#1759]) and to
21
- throw the last attempt's error without applying a final delay ([#1901]).
22
- - Fixed `mergeWith` and `toMerged` to handle mixed array/object types
23
- consistently with `merge`. ([#2026])
24
- - Fixed `pullAt` to remove the correct elements with negative indices. ([#1613])
25
- - Fixed `at`, `pullAt`, `orderBy`, and `sortBy` to accept readonly arrays. ([#2016])
26
- - Moved `limitAsync` from the array to the promise category. ([#2022])
27
- - Included the NOTICE file in the published npm and JSR packages. ([#2020])
28
-
29
- The following bring `es-toolkit/compat` closer to Lodash. Behavior for the affected
30
- edge cases now matches Lodash, so results may differ if you relied on the previous output.
31
-
32
- - Added `entries` and `entriesIn`. ([#1874])
33
- - Fixed `compat/isMatch` and `compat/isMatchWith` to handle object source
34
- patterns against primitive and non-plain-object targets like Lodash. ([#1432])
35
- - Fixed `compat/set` to block `constructor.prototype` paths, preventing
36
- prototype pollution. ([#1904])
37
- - Fixed `compat/find` to respect array-like `length` ([#1958]) and to convert
38
- `fromIndex` to an integer ([#1961]), and `compat/indexOf` to convert
39
- `fromIndex` to an integer when searching for `NaN` ([#1951]).
40
- - Fixed `compat/orderBy` to resolve unresolved deep paths and nullish elements
41
- to `undefined` ([#2010]), to exclude the `length` property from array-like
42
- values ([#2002]), and to read the criterion property from primitive values ([#1903]).
43
- - Fixed `compat/toPath` to split unquoted dotted keys inside brackets. ([#1899])
44
- - Fixed `compat/omit` to treat a key array as a single deep path. ([#1902])
45
- - Fixed `compat/map` to make the iteratee optional with an identity default. ([#1928])
46
- - Fixed `compat/size` to count combined Unicode symbols as single characters. ([#1900])
47
- - Fixed `compat/intersectionBy` to support number, object, and nullish iteratee
48
- shorthands ([#1993]), and `compat/intersectionWith` to apply the comparator
49
- when deduplicating the first array ([#1953]).
50
- - Fixed `compat/difference`, `compat/differenceBy`, `compat/uniqBy`, and
51
- `compat/unionBy` to normalize `-0` to `0`. ([#2007])
52
- - Fixed `compat/maxBy` and `compat/minBy` to skip nullish iteratee values ([#1927]),
53
- and `compat/meanBy` to skip `undefined` values when averaging ([#1978]).
54
- - Fixed `compat/some`, `compat/template` ([#2009]), and `compat/fill` ([#1952])
55
- to gate guard handling with `isIterateeCall`.
56
- - Fixed `compat/iteratee` to treat a boolean as a property shorthand. ([#1941])
57
- - Fixed `compat/reverse` to support array-like objects and `arguments`. ([#2008])
58
- - Fixed `compat/toArray` to convert non-array-like iterables. ([#1999])
59
- - Fixed `compat/toString` to render nested nullish values like Lodash. ([#1992])
60
- - Fixed `compat/zipObject` to treat `null` keys and values as empty arrays. ([#2005])
61
- - Fixed `compat/sampleSize` to clamp the default size to the collection length. ([#2003])
62
- - Fixed `compat/takeWhile`, `compat/takeRightWhile`, and `compat/uniqBy` to
63
- support string inputs. ([#2004])
64
- - Fixed `compat/chunk` to return an empty array for an empty collection with an
65
- `Infinity` size. ([#1995])
66
- - Fixed `compat/lastIndexOf` to read holes in sparse arrays as `undefined`. ([#1977])
67
- - Fixed `compat/last` to return `undefined` for empty array-like inputs. ([#1954])
68
- - Fixed `compat/pullAll` to return the array as-is when `values` is nullish. ([#1962])
69
-
70
- - Added a browser compatibility test suite. ([#2012])
71
- - Improved documentation, JSDoc accuracy, tests, and internal refactoring across
72
- `compat` and the docs site. ([#1622], [#1789], [#1824], [#1844], [#1849],
73
- [#1854], [#1855], [#1859], [#1860], [#1868], [#1871], [#1887], [#1898],
74
- [#1933], [#1939], [#1947], [#1950], [#1955], [#1956], [#1957], [#1960],
75
- [#1963], [#1964], [#1968], [#1969], [#1970], [#1972], [#1979], [#1985],
76
- [#2000], [#2001], [#2021], [#2025], [#2027])
77
-
78
- We sincerely thank @Antoliny0919, @D-Sketon, @kojesung, @chuenchen309,
79
- @mariazuheros, @DongEun02, @raon0211, @sukvvon, @racgoo, @dayongkr, @Kropiunig,
80
- @ssi02014, @sarathfrancis90, @mym0404, @mlnwns, @kdelay, @gwagjiug, @dohwi,
81
- @blro0319, @benedictleejh, @amir-rezaei, @ianzone, @sen2y, @rossyman,
82
- @eunwoo-levi, @ramong26, @Gdm0714, and everyone else who contributed.
83
- We appreciate your great efforts!
84
-
85
- ## Version v1.50.0
86
-
87
- Released on July 24th, 2026.
88
-
89
- - Added the `es-toolkit/types` entrypoint: a declaration-only module of compile-time
90
- type utilities TypeScript lacks natively — `ValueOf`, `Simplify`, `Writable`,
91
- `NonEmptyArray`, `DeepPartial`, and `DeepReadonly`. ([#1818])
92
- - Added `flow` to `es-toolkit/fp`, a reusable data-last composition built on `pipe`. ([#1812])
93
-
94
- The following bring `es-toolkit/compat` closer to Lodash. Behavior for the affected
95
- edge cases now matches Lodash, so results may differ if you relied on the previous output.
96
-
97
- - Fixed `compat/intersectionBy` to dedupe a single array (including by the iteratee)
98
- and to keep results consistent with Lodash. ([#1935])
99
- - Fixed `compat/findIndex` and `compat/findLastIndex` to coerce a `NaN` `fromIndex`
100
- to `0` and to convert `fromIndex` to an integer. ([#1828], [#1834], [#1938])
101
- - Fixed `compat/lastIndexOf` to coerce `fromIndex` like Lodash. ([#1832])
102
- - Fixed `compat/every` to treat a falsy, non-nullish `doesMatch` as a `_.property`
103
- shorthand instead of identity. ([#1940])
104
- - Fixed `compat/nth` to support string inputs. ([#1833])
105
- - Fixed `compat/inRange` to not throw on a lone negative bound. ([#1835])
106
- - Fixed `compat/toArray` to convert `Set`s to arrays like Lodash. ([#1840])
107
- - Fixed `compat/values` to treat sparse array holes as `undefined`. ([#1894])
108
- - Fixed `compat/maxBy` and `compat/minBy` to restore Lodash-compatible comparison. ([#1893])
109
- - Fixed `compat/includes` to exclude the `length` property when matching array-like values. ([#1886])
110
- - Fixed the case functions to split ordinal numbers like Lodash, and to count string
111
- size and padding by code points for multi-byte characters. ([#1836], [#1852], [#1853])
112
- - Fixed `compat/unset` to not treat an own literal dotted key as a deep path. ([#1808])
113
- - Moved `compat/flattenDepth`'s flattening logic out of `flatten`. ([#1847])
114
- - Restored the standalone `eq` and `templateSettings` entry points. ([#1895])
115
-
116
- - Fixed `deburr` to remove all combining diacritical marks, matching Lodash. ([#1807])
117
- - Fixed `partition` to accept any predicate return value, like `Array.prototype.filter`. ([#1937])
118
- - Fixed `has` and `hasIn` to prioritize nullish literal keys over paths. ([#1810])
119
- - Fixed `invokeMap` to normalize a string path via `toPath` for `this` binding. ([#1814])
120
- - Fixed `isDeepKey` to detect deep keys with stricter patterns. ([#1621])
121
- - Fixed `unzipWith` to return an empty array instead of throwing on empty input. ([#1816])
122
-
123
- - Improved documentation, JSDoc accuracy, and internal refactoring across `compat`
124
- and `fp`. ([#1817], [#1820], [#1822], [#1823], [#1825], [#1829], [#1830], [#1842],
125
- [#1845], [#1851], [#1858], [#1867], [#1879])
126
-
127
- We sincerely thank @Antoliny0919, @raon0211, @dayongkr, @spokodev, @sarathfrancis90,
128
- @mayur-shenoy, @mahirhir, @kojesung, @Hprogram, @BangDori, and everyone else who
129
- contributed. We appreciate your great efforts!
130
-
131
- ## Version v1.49.0
132
-
133
- Released on June 26th, 2026.
134
-
135
- - Added the `es-toolkit/fp` entrypoint with data-last, pipeable utilities,
136
- documentation, benchmarks, and bundle-size checks. ([#1781])
137
- - Added a broad set of array utilities to `es-toolkit/fp`, covering slicing,
138
- grouping, set operations, ordering, zipping, and collection helpers. ([#1801])
139
- - Fixed `trimStart` to validate multi-character trim strings correctly before
140
- it stops trimming. ([#1615])
141
- - Fixed `compat/pick` to prefer a literal key over a dot-notation path when the
142
- picked value is `undefined`. ([#1775])
143
- - Fixed `compat/random` to better match Lodash behavior for coerced bounds and
144
- floating-point options. ([#1767])
145
- - Fixed `compat/chunk` to handle `NaN` and `Infinity` size values consistently
146
- with Lodash. ([#1797])
147
- - Improved documentation and JSDoc accuracy across array, function, and compat
148
- references. ([#1785], [#1786], [#1788], [#1790], [#1791], [#1792], [#1793],
149
- [#1795], [#1800])
150
-
151
- We sincerely thank @Antoliny0919, @D-Sketon, @eunwoo-levi, and @raon0211 for
152
- their contributions. We appreciate your great efforts!
153
-
154
- ## Version v1.48.1
155
-
156
- Released on June 21st, 2026.
157
-
158
- - Fixed the `jsdelivr` and `unpkg` CDN `<script>` entry that regressed in v1.48.0. The fields are now declared at the package root so `yarn pack` preserves them, since `publishConfig` only carries standard fields and dropped them. Both CDNs now serve the UMD bundle again.
159
-
160
- ## Version v1.48.0
161
-
162
- Released on June 21st, 2026.
163
-
164
- - Added `AbortSignal` support to `timeout` and `withTimeout`. ([#1617])
165
- - Fixed CDN `<script>` resolution by pointing `jsdelivr`/`unpkg` to the UMD bundle and dropping the misused `browser` field. ([#1395])
166
- - Fixed `toMerged` to deep clone the target so untouched nested values stay independent. ([#1780])
167
- - Fixed `compat/toPath` to keep empty segments for consecutive and trailing dots. ([#1778])
168
- - Fixed `compat/difference` to treat sparse array holes as `undefined`. ([#1773])
169
- - Fixed `compat/parseInt` to coerce input to a string before parsing. ([#1771])
170
- - Fixed `compat/isNaN` to improve checks for boxed values and non-numbers. ([#1646])
171
- - Fixed `compat/isMatchWith` to align nested primitive matching with lodash. ([#1647])
172
-
173
- We sincerely thank @aidant, @Antoliny0919, @D-Sketon, @miinhho, @MyraxByte, @raon0211, @sarathfrancis90, and @ssi02014 for their contributions. We appreciate your great efforts!
174
-
175
- ## Version v1.47.1
176
-
177
- Released on June 12th, 2026.
178
-
179
- - Fixed `maxBy` and `minBy` to propagate `NaN`, matching `Math.max`/`Math.min` behavior. ([#1749])
180
- - Fixed `orderBy` and `sortBy` to place `null` and `undefined` values last when sorting. ([#1681])
181
- - Fixed `isNumber` to no longer treat boxed `Number` objects as numbers. ([#1726])
182
- - Fixed `reduce` and `reduceRight` to respect explicitly passed nullish accumulators. ([#1742])
183
- - Fixed `isEmpty` to handle functions with own enumerable properties. ([#1645])
184
- - Fixed the `globalThis` polyfill to avoid `Function(...)`, supporting CSP environments without `unsafe-eval`.
185
- - Fixed ESM resolution for `./compat/*` subpaths in package exports. ([#1757])
186
- - Fixed `compat/size` to count array-like objects by their `length`. ([#1766])
187
- - Fixed `compat/round`, `compat/ceil`, and `compat/floor` to return `Infinity` for infinite values with precision. ([#1764])
188
- - Fixed `compat/random` to coerce the upper bound for non-number `max`. ([#1751])
189
- - Fixed `compat/toLength` to coerce non-numeric values to 0. ([#1758])
190
- - Removed unused generic type parameters from `pull`. ([#1746])
191
-
192
- We sincerely thank @Amund211, @Antoliny0919, @chatman-media, @D-Sketon, @dayongkr, @JetProc, @parkhojeong, @pbk95120, @raon0211, @sarathfrancis90, @shaked-shlomo, and @sukvvon for their contributions. We appreciate your great efforts!
193
-
194
- ## Version v1.47.0
195
-
196
- Released on May 25th, 2026.
197
-
198
- - Added `es-toolkit/server` entrypoint with `colors` namespace for ANSI terminal color utilities. ([#1683])
199
- - Added `exec` function. ([#1689])
200
- - Added `sortKeys` to the `object` entrypoint. ([#1674])
201
- - Added `cartesianProduct` and `combinations` to the `array` entrypoint. ([#1713])
202
- - Added `allKeyed` to the `promise` entrypoint. ([#1672])
203
- - Added `percentile` to the `math` entrypoint. ([#1710])
204
- - Added an interactive playground page to docs. ([#1720])
205
- - Reorganized docs to introduce a flavor switcher and co-locate `compat` under `/compat/`. ([#1699])
206
- - Fixed `uniqWith` in `compat` to match lodash's comparator argument order. ([#1729])
207
- - Fixed `compat/omitBy` to not treat plain objects with numeric `length` as array-like. ([#1709])
208
-
209
- We sincerely thank @Antoliny0919, @ATOM00blue, @dayongkr, @guesung, @myeong-jae-hwi, @raon0211, @seungrodotlee, and @Xiaohang0316 for their contributions. We appreciate your great efforts!
210
-
211
- ## Version v1.46.1
212
-
213
- Released on April 29th, 2026.
214
-
215
- - Fixed `AbortError` and `TimeoutError` to fall back to `Error` when `DOMException` is undefined. ([#1694])
216
- - Fixed missing `forEach` and `countBy` exports for `map` and `set`. ([#1695])
217
-
218
- We sincerely thank @SrAnthony and @umsungjun for their contributions. We appreciate your great efforts!
219
-
220
- ## Version v1.46.0
221
-
222
- Released on April 22th, 2026.
223
-
224
- - Changed `AbortError` and `TimeoutError` to extend `DOMException`. ([#1660])
225
- - Added `keyBy` to the `map` entrypoint exports. ([#1650])
226
- - Added Claude Code plugin marketplace and es-toolkit usage skills. ([#1644])
227
- - Fixed `isBuffer` to add a browser export condition to avoid a 44KB Buffer polyfill. ([#1671])
228
- - Fixed `toCamelCaseKeys` and `toSnakeCaseKeys` to be exported from `compat` for the browser bundle. ([#1685])
229
- - Fixed `partial` by adding missing full-application overloads for 2/3/4 arguments. ([#1684])
230
- - Added Agent Skills and Claude Code Plugin guide to the AI Integration page. ([#1664])
231
-
232
- We sincerely thank @raon0211, @jantimon, @jaydeep-pipaliya, @ethanresnick, @zaewc, @minsoo-web, @wondonghwi, @xxxxxxjun, @jiji-hoon96, @james-rae, @Gamez0, and @dayongkr for their contributions. We appreciate your great efforts!
233
-
234
- ## Version v1.45.1
235
-
236
- Released on March 4th, 2026.
237
-
238
- - Reverted the return type of `sample` to not include `undefined`.
239
- - Fixed Deno install command to include `jsr:` prefix. ([#1627])
240
-
241
- We sincerely thank @mwln for their contributions. We appreciate your great efforts!
242
-
243
- ## Version v1.45.0
244
-
245
- Released on March 2nd, 2026.
246
-
247
- - Fixed `findIndex` to add missing default parameter for `doesMatch`. ([#1373])
248
- - Fixed `sample` to include `undefined` in return union type. ([#1302])
249
- - Fixed `cloneDeep` to support cloning `Error` objects.
250
- - Fixed `retry` to correctly match retry count with the `retries` option.
251
- - Fixed missing `Map` and `Set` in check-dist entrypoints.
252
- - Fixed missing packages in `publishConfig`. ([#1597])
253
- - Reverted the overload for runtime-determined key arrays in `omit`. ([#1595])
254
- - Added AI Integration page with `llms.txt` documentation to docs.
255
-
256
- We sincerely thank @D-Sketon, @dayongkr, @matthiasfeist, @raon0211, and @screendriver for their contributions. We appreciate your great efforts!
257
-
258
- ## Version v1.44.0
259
-
260
- Released on January 16th, 2026.
261
-
262
- - Added `shouldRetry` option to `retry` function. ([#1585])
263
- - Added `isEmptyObject` predicate function. ([#1584])
264
- - Added `isNumber` predicate function.
265
- - Enhanced error cloning to support `AggregateError`. ([#1563])
266
- - Implemented collection methods for Maps and Sets.
267
- - Added bundle size analysis and visualization components to docs. ([#1564])
268
- - Fixed `flattenObject` to retain empty objects and arrays.
269
- - Enhanced type safety for `clone` function.
270
- - Fixed `clone` error when cloning object with null prototype. ([#1570])
271
- - Fixed array function callbacks to include index and array parameters. ([#1561])
272
- - Fixed `compat/cloneDeep` and `cloneDeepWith` to clone null-prototype objects as regular objects. ([#1562])
273
- - Fixed `compat/clamp` to ensure consistency with lodash. ([#1555])
274
- - Simplified `intersection` filter callback for consistency. ([#1582])
275
- - Fixed incorrect function names and output in `cloneDeep` JSDoc examples. ([#1583])
276
-
277
- We sincerely thank @raon0211, @dayongkr, @eunwoo-levi, @matt-oakes, @T3sT3ro, and @D-Sketon for their contributions. We appreciate your great efforts!
278
-
279
- ## Version v1.43.0
280
-
281
- Released on December 12th, 2025.
282
-
283
- - Enhanced `merge` to handle arrays and objects consistently, and to match lodash's behavior with date values and array-like objects. ([#1553], [#1542], [#1548])
284
- - Fixed `isMatch` and `isMatchWith` to match lodash's behavior.
285
- - Fixed `intersectionBy` implementation and removed duplicates when the mapper produces the same values. ([#1528])
286
- - Fixed `throttle` working like debounce.
287
- - Fixed type inference in `toSnakeCaseKeys`, `toCamelCaseKeys` for edge cases and improved type inference for uppercase keys. ([#1538])
288
- - Fixed casing utilities (`camelCase`, `kebabCase`, `lowerCase`, `snakeCase`, `startCase`, `upperCase`) to match lodash's behavior. ([#1525])
289
- - Fixed `compat/template` to disable ES interpolation when custom `interpolate` is provided. ([#1527])
290
- - Fixed incorrect example in `differenceBy` documentation. ([#1543])
291
- - Performance improvement: updated `deburr` to use arrays to construct the deburrMap. ([#1526])
292
-
293
- We sincerely thank @dayongkr, @raon0211, @wo-o29, @Yeom-JinHo, @Copilot, @oshosh, @vbfox, @sukvvon, @sankeyangshu, @D-Sketon, @seo-rii for their contributions. We appreciate your great efforts!
294
-
295
- ## Version v1.42.0
296
-
297
- Released on November 17th, 2025.
298
-
299
- - Added new async utilities: `filterAsync`, `flatMapAsync`, `forEachAsync`, `mapAsync`, `reduceAsync`, and `limitAsync` for handling asynchronous operations.
300
- - Exported `ThrottleOptions` and `DebounceOptions` interfaces for better type support.
301
- - Fixed `isFinite` to implement type predicate to narrow type to number.
302
- - Fixed `isSafeInteger` to implement type predicate to narrow type to number.
303
- - Fixed `omit` to prevent adding index properties to array-like objects.
304
- - Fixed `mergeWith` to remove unnecessary nullish coalescing for 100% branch coverage.
305
- - Fixed `compat/updateWith` to remove unreachable code and add prototype pollution test.
306
- - Updated documentation headings for consistency.
307
- - Improved test coverage for `compat/mergeWith`, `compat/unset`, `get`, `toMerged`, `mergeWith`, and `compat/intersectionBy` with additional edge cases and security tests.
308
-
309
- We sincerely thank @Debbl, @wo-o29, @raon0211, @Yeom-JinHo, @sukvvon, and @D-Sketon for their contributions. We appreciate your great efforts!
310
-
311
- ## Version v1.41.0
312
-
313
- Released on October 24th, 2025.
314
-
315
- - Enhanced `throttle` to preserve `this` context when called as a method.
316
- - Added type guard support for `partition` function.
317
- - Fixed `omit` to support runtime-determined key arrays with proper overloads.
318
- - Fixed `defaults` in compatibility layer to properly handle undefined and null sources.
319
- - Fixed `toSnakeCaseKeys` and `toCamelCaseKeys` to correctly return types for non-plain objects.
320
- - Fixed `toMerged` and `mergeWith` to properly handle shared objects in merge logic.
321
- - Fixed `compat/union` to support array-like objects.
322
- - Fixed `compat/updateWith` to use `get` for value retrieval in updater function.
323
- - Fixed circular import between `isMatch` and `isMatchWith`.
324
- - Fixed `find` and `findLast` by simplifying logic and removing unnecessary checks.
325
- - Fixed `takeRight` by improving test coverage and removing redundant checks.
326
- - Fixed `curry` and `curryRight` by removing unnecessary type assertions.
327
- - Fixed `isEqualWith` and `mapKeys` by removing unnecessary type assertions.
328
- - Improved performance for `meanBy` by removing intermediate array creation.
329
- - Updated build system to use UMD format instead of IIFE for browser builds.
330
- - Fixed numerous documentation examples across compat modules.
331
- - Improved test coverage with additional test cases for edge cases and compatibility.
332
-
333
- We sincerely thank @the5thbeatle, @wo-o29, @hwibaski, @manudeli, @raon0211, @dayongkr, @D-Sketon, @yoouungyoung, @Dohun-choi, @sukvvon, @zoulou00, and @sen2y for their contributions. We appreciate your great efforts!
334
-
335
- ## Version v1.40.0
336
-
337
- Released on October 8th, 2025.
338
-
339
- - Enhanced `sumBy` to pass the element index to the `getValue` callback function.
340
- - Improved performance for `uniq` function.
341
- - Fixed `cloneDeepWith` to handle runtime errors in environments without Blob support and correctly clone Boolean, Number, and String objects.
342
- - Fixed `omit` to avoid unnecessary deep cloning, improving performance.
343
- - Fixed `toCamelCaseKeys` to properly handle PascalCase type conversion.
344
- - Fixed `toPath` to correctly handle arrays and non-string inputs.
345
- - Fixed `repeat` to validate and handle invalid repeat counts.
346
- - Fixed `sortedIndexBy` to properly handle default iteratee.
347
- - Fixed `some` predicate check to correctly handle null and undefined cases.
348
- - Fixed compatibility issue in `compat/unset` with nonexistent paths.
349
- - Fixed several JSDoc issues across multiple functions including return types, parameter descriptions, and method names.
350
- - Improved documentation clarity and consistency across multiple functions.
351
- - Enhanced test coverage with additional test cases for compat functions and edge cases.
352
- - Updated build configuration and CI workflows.
353
-
354
- We sincerely thank @wo-o29, @D-Sketon, @HidenLee, @yoouung, @manudeli, @dayongkr, @Li13, @nicklemmon, @sen2y, @miinhho, @raon0211, @joshkel, @jgjgill, @mlnwns, @Dohun-choi, @PinkChampagne17, @sukvvon, @YOUNGHO8762, @caseBread, @Jeongeun-Choi, @artechventure and hoyyChoi for their contributions. We appreciate your great efforts!
355
-
356
- ## Version v1.39.10
357
-
358
- Released on August 17th, 2025.
359
-
360
- - Fixed `defaultsDeep` to properly handle deep merging of objects in arrays
361
- - Fixed several documentation issues and examples across multiple functions
362
-
363
- We sincerely thank @wo-o29, @thwlckd, @kilimandzharov, and @dayongkr for their contributions. We appreciate your great efforts!
364
-
365
- ## Version v1.39.9
366
-
367
- Released on August 10th, 2025.
368
-
369
- - Fixed `mergeWith` to properly handle null values returned from customizer function.
370
- - Fixed `cloneDeepWith` to properly handle customizer returning null values.
371
- - Fixed some of the documentation issues.
372
-
373
- We sincerely thank @raon0211, @joshkel, and @Najeong-Kim for their contributions. We appreciate your great efforts!
374
-
375
- ## Version v1.39.8
376
-
377
- Released on July 25th, 2025.
378
-
379
- - Aligned the types of `fill`, `pullAll`, `pullAllBy`, `pullAllWith`, `pullAt`, `remove`, and `reverse` in our compatibility library with the latest Lodash types (`@types/lodash` v4.17.20).
380
-
381
- ## Version v1.39.7
382
-
383
- Released on July 9th, 2025.
384
-
385
- - Fixed a compatibility issue with Lodash's `debounce` and `throttle` functions.
386
- - Remove useless source map for reduce bundle size.
387
- - Fix some of the documentation issues.
388
-
389
- We sincerely thank @dayongkr, @cobocho, @raon0211, and @D-Sketon for their contributions. We appreciate your great efforts!
390
-
391
- ## Version v1.39.6
392
-
393
- Released on July 2th, 2025.
394
-
395
- - Fixed handling of null/undefined values in `values` function.
396
- - Fixed type safety in `compat/get` by adding GetFieldType utility type.
397
-
398
- We sincerely thank @raon0211, @dayongkr, @yhb-flydream, @ssi02014, @JeongHwan-dev, and @guesung for their contributions. We appreciate your great efforts!
399
-
400
- ## Version v1.39.5
401
-
402
- Released on June 24th, 2025.
403
-
404
- - Fixed type compatibility issues between `es-toolkit/compat` and `@types/lodash`.
405
- - Improved documentation.
406
-
407
- We thank @raon0211, @dayongkr, @sukvvon, and @yhb-flydream for their contributions.
408
-
409
- ## Version v1.39.4
410
-
411
- Released on June 21st, 2025.
412
-
413
- - Fixed prototype pollution issue in es-toolkit to enhance security.
414
- - Enhanced build system to provide compat/\* functions in CommonJS format by default.
415
-
416
- We thank @raon0211, and @dayongkr for their contributions.
417
-
418
- ## Version v1.39.3
419
-
420
- Released on June 7th, 2025.
421
-
422
- - Fixed postbuild script to ensure compat function categorization aligns with src directory structure.
423
-
424
- ## Version v1.39.2
425
-
426
- Released on June 7th, 2025.
427
-
428
- - Added dual package export support for individual compat functions (e.g., `es-toolkit/compat/add`).
429
-
430
- ## Version v1.39.1
431
-
432
- Released on June 6th, 2025.
433
-
434
- - Resolved mismatch between named and default exports in compat .d.ts and .js files to improve TypeScript integration.
435
-
436
- ## Version v1.39.0
437
-
438
- 🎉 Released on June 5th, 2025. 🎉
439
-
440
- We're thrilled to announce that `es-toolkit/compat` has achieved full compatibility with Lodash! 🎉
441
-
442
- A huge thank you to all our contributors who made this possible.
443
-
444
- - Introduced compatibility functions for [defaultsDeep](https://es-toolkit.slash.page/reference/compat/object/defaultsDeep.html), [isMatchWith](https://es-toolkit.slash.page/reference/compat/predicate/isMatchWith.html), [flatMapDepth](https://es-toolkit.slash.page/reference/compat/array/flatMapDepth.html), [flatMapDeep](https://es-toolkit.slash.page/reference/compat/array/flatMapDeep.html), [overArgs](https://es-toolkit.slash.page/reference/compat/function/overArgs.html), [findLastKey](https://es-toolkit.slash.page/reference/compat/object/findLastKey.html) and [truncate](https://es-toolkit.slash.page/reference/compat/string/truncate.html).
445
- - Enhanced build system to support `es-toolkit/compat/*` module imports.
446
- - Fixed special functions like `each` to ensure proper functionality.
447
- - Fixed Deno compatibility issues for `defaultsDeep` function.
448
- - Fixed import paths in Deno environment.
449
- - Added benchmark comparing es-toolkit and lodash `identity` function performance.
450
- - Improved documentation and test coverage for various functions.
451
-
452
- We sincerely thank @raon0211, @dayongkr, @mreiden, @hwibaski, @shren207, @jiji-hoon96, and @myungjuice for their contributions. We appreciate your great efforts!
453
-
454
- ### ⭐️ Special Thanks to Our Amazing Contributors Who Made 100% Compatibility Possible ⭐️
455
-
456
- @raon0211, @dayongkr, @D-Sketon, @mass2527, @ssi02014, @shren207, @chhw130, @haejunejung, @jsparkdev, @manudeli, @jgjgill, @hyesungoh, @kaehehehe, @filipsobol, @fvsch, @wondonghwi, @seungrodotlee, @bertyhell, @minchodang, @Jeong-Rae, @kangju2000, @juno7803, @wojtekmaj, @mattiacoll, @changwoolab, @po4tion, @gyumong, @choi2021, @mancuoj, @de-novo, @eunhyulkim, @kim-sung-jee, @gs18004, @Hanna922, @Na-hyunwoo, @aken-you, @tanggd, @ho991217, @piquark6046, @jiji-hoon96, @seonghun0828, @pkovzz, @nnnnoel, @noelkim-prestolabs, @minsoo-web, @hautest, @scato3, @l2hyunwoo, @WooWan, @VVSOGI, @k-jeonghee, @knott11, @lukaszkowalik2, @moonheekim0118, @sadobass, @minjongbaek, @umsungjun, @sossost, @sunrabbit123, @Seung-wan, @cruelladevil, @iDevGon, @oror-sine, @1eeminhyeong, @benzyminzy, @BlackWhite2000, @tooooo1, @L2HYUNN, @DonghyunKim98, @dasom-jo, @guesung, @uniqueeest, @KiKoS0, @myungjuice, @seung-juv, @Collection50, @nowethan, @coding-honey, @ariandel-dev, @apeltop, @jch1223, @yhay81, @milooy, @raviqqe, @youznn, @BinskLee, @YEONDG, @shinwonse, @willmanduffy, @vjo, @touhidrahman, @T3sT3ro, @belgattitude, @WISUNGWON, @anaclumos, @hsskey, @BasixKOR, @Kyujenius, @Dohun-choi, @dngur9801, @sanginchun, @westofsky, @DONG-8, @yhmpc, @pbstar, @MoXiaoluo, @uussong, @tuhm1, @tisou1, @spookyuser, @sa02045, @Hotanya, @nia3y, @mreiden, @kms0219kms, @IkumaTadokoro, @hansolbangul, @hainan-612, @hwibaski, @jeongshin, @HoberMin, @ohprettyhak, @gweesin, @FengBuPi, @kyvg, @evan-moon, @chldmsqls34, @kimpuro, @dogagenc, @Duck-98, @redd97, @faner11, @bhollis, @jaehunn, @babay123, @beomxtone, @ankitjha420, @shan-mx, @2skydev, @StyleShit, @confidential-nt, @siddsarkar, @seongminn, @healtheloper, @pnodet, @Gaic4o, @leeminhee119, @leehj322, @kristian240, @kingston, @kim-dongho, @jungwoo3490, @joris-gallot, @jonganebski, @jiwooproity, @moshuying, @jakvbs, @therealjamesjung, @SaeWooKKang and @HyeokjaeLee
457
-
458
- ## Version v1.38.0
459
-
460
- Released on May 18th, 2025.
461
-
462
- - Added compatibility functions for [bindAll](https://es-toolkit.slash.page/reference/compat/util/bindAll.html), [setWith](https://es-toolkit.slash.page/reference/compat/object/setWith.html), [memoize](https://es-toolkit.slash.page/reference/function/memoize.html), [isNative](https://es-toolkit.slash.page/reference/compat/predicate/isNative.html), [invokeMap](https://es-toolkit.slash.page/reference/compat/array/invokeMap.html), [clone](https://es-toolkit.slash.page/reference/object/clone.html), [cloneWith](https://es-toolkit.slash.page/reference/compat/object/cloneWith.html), and [sortedLastIndexOf](https://es-toolkit.slash.page/reference/compat/array/sortedLastIndexOf.html).
463
- - Enhanced [invariant](https://es-toolkit.slash.page/reference/util/invariant.html) function to accept Error instances and added [assert](https://es-toolkit.slash.page/reference/util/assert.html) alias.
464
- - Fixed type definitions and empty array handling in [maxBy](https://es-toolkit.slash.page/reference/array/maxBy.html) and [minBy](https://es-toolkit.slash.page/reference/array/minBy.html).
465
- - Fixed typo 'Partail' to 'Partial' in [findKey](https://es-toolkit.slash.page/reference/object/findKey.html) type annotation.
466
- - Enhanced [max](https://es-toolkit.slash.page/reference/math/max.html) and [min](https://es-toolkit.slash.page/reference/math/min.html) functions to skip NaN, symbol, and null values, and return undefined when all values are skipped.
467
- - Fixed sparse array handling in compat functions to match Lodash's behavior.
468
- - Improved test coverage and documentation for various functions.
469
- - Fixed various documentation issues and typos.
470
-
471
- We sincerely thank @myungjuice, @scato3, @uniqueeest, @YEONDG, @shren207, @hyesungoh, @kms0219kms, @minjongbaek, @kristian240, @D-Sketon, @Seung-wan, @jiji-hoon96, @raon0211, and @dayongkr for their contributions. We appreciate your great efforts!
472
-
473
- ## Version v1.37.2
474
-
475
- Released on May 4th, 2025.
476
-
477
- - Fixed an issue in `es-toolkit/compat`'s `throttle` function to match Lodash's behavior by immediately invoking the throttled function when wait time is zero.
478
-
479
- ## Version v1.37.1
480
-
481
- Released on May 3rd, 2025.
482
-
483
- - Fixed a bug in JSR's `@es-toolkit/es-toolkit` package that prevented importing the `camelCase` function in Deno.
484
-
485
- ## Version v1.37.0
486
-
487
- Released on May 3rd, 2025.
488
-
489
- - Introduced compatibility functions for [result](https://es-toolkit.slash.page/reference/compat/object/result.html), [omitBy](https://es-toolkit.slash.page/reference/object/omitBy.html), [xorBy](https://es-toolkit.slash.page/reference/array/xorBy.html), [xorWith](https://es-toolkit.slash.page/reference/array/xorWith.html), [unzipWith](https://es-toolkit.slash.page/reference/array/unzipWith.html), [sampleSize](https://es-toolkit.slash.page/reference/array/sampleSize.html), [transform](https://es-toolkit.slash.page/reference/compat/object/transform.html), [wrap](https://es-toolkit.slash.page/reference/compat/function/wrap.html), [countBy](https://es-toolkit.slash.page/reference/array/countBy.html), and [xor](https://es-toolkit.slash.page/reference/array/xor.html).
490
- - Added vitest benchmark for [ary](https://es-toolkit.slash.page/reference/function/ary.html) function.
491
- - Fixed string comparison in [sortBy](https://es-toolkit.slash.page/reference/array/sortBy.html) and [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html) by removing locale comparison and using ASCII code instead.
492
- - Fixed type definition in [isBuffer](https://es-toolkit.slash.page/reference/predicate/isBuffer.html).
493
- - Fixed internal documentation links for Korean and Japanese headings.
494
- - Improved code readability and documentation for various functions.
495
- - Prevented circular dependencies by updating import paths in [toCamelCaseKeys](https://es-toolkit.slash.page/reference/object/toCamelCaseKeys.html) and [toSnakeCaseKeys](https://es-toolkit.slash.page/reference/object/toSnakeCaseKeys.html).
496
-
497
- We sincerely thank @chldmsqls34, @umsungjun, @raon0211, @dayongkr, @shren207, @oror-sine, @L2HYUNN, @D-Sketon, @ariandel-dev, @Jeong-Rae, and @beomxtone for their contributions. We appreciate your great efforts!
498
-
499
- ## Version v1.36.0
500
-
501
- Released on April 24th, 2025.
502
-
503
- - Introduced compatibility functions for [groupBy](https://es-toolkit.slash.page/reference/array/groupBy.html), [partial](https://es-toolkit.slash.page/reference/function/partial.html), [partialRight](https://es-toolkit.slash.page/reference/function/partialRight.html), [forEachRight](https://es-toolkit.slash.page/reference/array/forEachRight.html), [forOwnRight](https://es-toolkit.slash.page/reference/compat/object/forOwnRight.html), [forIn](https://es-toolkit.slash.page/reference/compat/object/forIn.html), [forInRight](https://es-toolkit.slash.page/reference/compat/object/forInRight.html), [overEvery](https://es-toolkit.slash.page/reference/compat/util/overEvery.html), [hasIn](https://es-toolkit.slash.page/reference/compat/object/hasIn.html), [pullAt](https://es-toolkit.slash.page/reference/array/pullAt.html), [forOwn](https://es-toolkit.slash.page/reference/compat/object/forOwn.html), [pullAllWith](https://es-toolkit.slash.page/reference/compat/array/pullAllWith.html), [overSome](https://es-toolkit.slash.page/reference/compat/util/overSome.html), [partition](https://es-toolkit.slash.page/reference/array/partition.html), and [flatMap](https://es-toolkit.slash.page/reference/array/flatMap.html).
504
- - Fixed compatibility issues in [take](https://es-toolkit.slash.page/reference/array/take.html), [takeRight](https://es-toolkit.slash.page/reference/array/takeRight.html), [defaults](https://es-toolkit.slash.page/reference/compat/object/defaults.html), [repeat](https://es-toolkit.slash.page/reference/compat/string/repeat.html), and [words](https://es-toolkit.slash.page/reference/string/words.html) by adding proper guards.
505
- - Fixed [throttle](https://es-toolkit.slash.page/reference/function/throttle.html) behavior when both leading and trailing options are enabled.
506
- - Improved performance for [find](https://es-toolkit.slash.page/reference/compat/array/find.html) by removing unnecessary slice operations.
507
- - Enhanced performance of [toPairs](https://es-toolkit.slash.page/reference/compat/object/toPairs.html) by pre-allocating arrays and using iterator values.
508
- - Simplified implementation and aligned types with Lodash for [partition](https://es-toolkit.slash.page/reference/array/partition.html).
509
-
510
- We sincerely thank @D-Sketon, @raon0211, @dayongkr, @minjongbaek, @seungrodotlee, @mass2527, @uniqueeest, @leehj322, @cruelladevil, @shren207, and @ssi02014 for their contributions. We appreciate your great efforts!
511
-
512
- ## Version v1.35.0
513
-
514
- Released on April 16th, 2025.
515
-
516
- - Added support for [toCamelCaseKeys](https://es-toolkit.slash.page/reference/object/toCamelCaseKeys.html) and [toSnakeCaseKeys](https://es-toolkit.slash.page/reference/object/toSnakeCaseKeys.html).
517
- - Added support for custom delay function based on attempts in [retry](https://es-toolkit.slash.page/reference/function/retry.html).
518
- - Introduced compatibility functions for [at](https://es-toolkit.slash.page/reference/array/at.html) (array), [split](https://es-toolkit.slash.page/reference/compat/string/split.html), [shuffle](https://es-toolkit.slash.page/reference/array/shuffle.html), [zipWith](https://es-toolkit.slash.page/reference/array/zipWith.html), [zipObject](https://es-toolkit.slash.page/reference/array/zipObject.html), [keyBy](https://es-toolkit.slash.page/reference/array/keyBy.html), [assign](https://es-toolkit.slash.page/reference/compat/object/assign.html), [assignInWith](https://es-toolkit.slash.page/reference/compat/object/assignInWith.html), [assignWith](https://es-toolkit.slash.page/reference/compat/object/assignWith.html), [update](https://es-toolkit.slash.page/reference/compat/object/update.html), [updateWith](https://es-toolkit.slash.page/reference/compat/object/updateWith.html), [uniqWith](https://es-toolkit.slash.page/reference/array/uniqWith.html), [unionBy](https://es-toolkit.slash.page/reference/array/unionBy.html), [unionWith](https://es-toolkit.slash.page/reference/array/unionWith.html), [takeWhile](https://es-toolkit.slash.page/reference/array/takeWhile.html), [sortedLastIndex](https://es-toolkit.slash.page/reference/compat/array/sortedLastIndex.html), [sortedLastIndexBy](https://es-toolkit.slash.page/reference/compat/array/sortedLastIndexBy.html), [toPairs](https://es-toolkit.slash.page/reference/compat/object/toPairs.html), [toPairsIn](https://es-toolkit.slash.page/reference/compat/object/toPairsIn.html), [cond](https://es-toolkit.slash.page/reference/compat/util/cond.html), [over](https://es-toolkit.slash.page/reference/compat/util/over.html), [functions](https://es-toolkit.slash.page/reference/compat/object/functions.html), and [create](https://es-toolkit.slash.page/reference/compat/object/create.html) in `es-toolkit/compat`.
519
- - Fixed Lodash compatibility issues in [pick](https://es-toolkit.slash.page/reference/object/pick.html) and [pickBy](https://es-toolkit.slash.page/reference/object/pickBy.html).
520
-
521
- We sincerely thank @shren207, @kim-sung-jee, @HyeokjaeLee, @Jeong-Rae, @D-Sketon, @jsparkdev, @wojtekmaj, @FengBuPi, @oror-sine, @L2HYUNN, @gs18004, @ohprettyhak, and @kimpuro for their contributions. We appreciate your great efforts!
522
-
523
- ## Version v1.34.1
524
-
525
- Released on March 27th, 2025.
526
-
527
- - Fixed a bug in [isBrowser](https://es-toolkit.slash.page/reference/predicate/isBrowser.html) and [isNode](https://es-toolkit.slash.page/reference/predicate/isNode.html) that caused them to not work properly in Deno environments.
528
-
529
- ## Version v1.34.0
530
-
531
- Released on March 27th, 2025.
532
-
533
- - Added support for [isBrowser](https://es-toolkit.slash.page/reference/predicate/isBrowser.html), [isNode](https://es-toolkit.slash.page/reference/predicate/isNode.html), [attempt](https://es-toolkit.slash.page/reference/util/attempt.html), [attemptAsync](https://es-toolkit.slash.page/reference/util/attemptAsync.html).
534
- - Introduced compatibility functions for [functionsIn](https://es-toolkit.slash.page/reference/compat/object/functionsIn.html), [meanBy](https://es-toolkit.slash.page/reference/math/meanBy.html), [minBy](https://es-toolkit.slash.page/reference/math/minBy.html), [mean](https://es-toolkit.slash.page/reference/math/mean.html), [sortedIndexOf](https://es-toolkit.slash.page/reference/compat/array/sortedIndexOf.html).
535
- - Fixed compatibility with lodash for [set](https://es-toolkit.slash.page/reference/compat/object/set.html), [add](https://es-toolkit.slash.page/reference/compat/math/add.html), [subtract](https://es-toolkit.slash.page/reference/compat/math/subtract.html).
536
-
537
- We sincerely thank @dayongkr, @D-Sketon, @seongminn, @Kyujenius for their contributions. We appreciate your great efforts!
538
-
539
- ## Version v1.33.0
540
-
541
- Released on March 9th, 2025.
542
-
543
- - Added support for [reverseString](https://es-toolkit.slash.page/reference/string/reverseString.html) and [isJSON](https://es-toolkit.slash.page/reference/predicate/isJSON.html).
544
- - Introduced compatibility functions for [pullAllBy](https://es-toolkit.slash.page/reference/compat/array/pullAllBy.html), [intersectionWith](https://es-toolkit.slash.page/reference/array/intersectionWith.html), [findLast](https://es-toolkit.slash.page/reference/compat/array/findLast.html), [reduce](https://es-toolkit.slash.page/reference/compat/array/reduce.html), [reduceRight](https://es-toolkit.slash.page/reference/compat/array/reduceRight.html), [divide](https://es-toolkit.slash.page/reference/compat/math/divide.html), [values](https://es-toolkit.slash.page/reference/compat/object/values.html), [valuesIn](https://es-toolkit.slash.page/reference/compat/object/valuesIn.html), [maxBy](https://es-toolkit.slash.page/reference/compat/math/maxBy.html), and [pickBy](https://es-toolkit.slash.page/reference/compat/object/pickBy.html).
545
- - Fixed package exports on React Native so that `es-toolkit` can be used in React Native projects.
546
- - Fixed a bug in [sum](https://es-toolkit.slash.page/reference/math/sum.html) where passing `undefined` values like `sum([undefined, 1, 2, 3])` resulted in `NaN`, which was different from lodash.
547
- - Fixed a bug in [assignIn](https://es-toolkit.slash.page/reference/compat/object/assignIn.html) that didn't assign keys with undefined values.
548
-
549
- ## Version v1.32.0
550
-
551
- Released on January 30th, 2025.
552
-
553
- - Added support for [Semaphore](https://es-toolkit.slash.page/reference/promise/Semaphore.html), [Mutex](https://es-toolkit.slash.page/reference/promise/Mutex.html), [isPromise](https://es-toolkit.slash.page/reference/predicate/isPromise.html), and [retry](https://es-toolkit.slash.page/reference/function/retry.html).
554
- - Introduced compatibility functions for [multiply](https://es-toolkit.slash.page/reference/compat/math/multiply.html), [sortedIndex](https://es-toolkit.slash.page/reference/compat/array/sortedIndex.html), and [sortedIndexBy](https://es-toolkit.slash.page/reference/compat/array/sortedIndexBy.html).
555
- - Added support for custom delimiters in [flattenObject](https://es-toolkit.slash.page/reference/object/flattenObject.html).
556
- - Added support for `fromIndex` parameters in [find](https://es-toolkit.slash.page/reference/compat/array/find.html).
557
- - Fixed a bug in [cloneDeep](https://es-toolkit.slash.page/reference/object/cloneDeep.html) and [cloneDeepWith](https://es-toolkit.slash.page/reference/object/cloneDeepWith.html) that cloned uncloneable objects.
558
-
559
- ## Version v1.31.0
560
-
561
- Released on December 27th, 2024.
562
-
563
- - Added support for the [windowed](https://es-toolkit.slash.page/reference/array/windowed.html), [remove](https://es-toolkit.slash.page/reference/array/remove.html) and [asyncNoop](https://es-toolkit.slash.page/reference/function/asyncNoop.html) functions.
564
- - Introduced compatibility functions for [pullAll](https://es-toolkit.slash.page/reference/compat/array/pullAll.html), [subtract](https://es-toolkit.slash.page/reference/compat/math/subtract.html), [isBuffer](https://es-toolkit.slash.page/reference/predicate/isBuffer.html), and [methodOf](https://es-toolkit.slash.page/reference/compat/util/methodOf.html).
565
- - Enhanced the performance of [pull](https://es-toolkit.slash.page/reference/array/pull.html) when working with large arrays.
566
- - Resolved an issue where [reverse](https://es-toolkit.slash.page/reference/compat/array/reverse.html) was not being exported in our compatibility library.
567
- - Updated [groupBy](https://es-toolkit.slash.page/reference/array/groupBy.html) to properly handle keys like `toString` or `valueOf`.
568
- - Fixed [merge](https://es-toolkit.slash.page/reference/object/merge.html) to correctly merge values when `target` or any of its values are `null` or `undefined`.
569
-
570
- We sincerely thank @T3sT3ro, @D-Sketon, @tuhm1, @willmanduffy, @apeltop, @aken-you, @SaeWooKKang, and @ssi02014 for their contributions. We appreciate your great efforts!
571
-
572
- ## Version v1.30.1
573
-
574
- Released on December 14th, 2024.
575
-
576
- - Fixed [uniqueId](https://es-toolkit.slash.page/reference/compat/util/uniqueId.html) not being exported in our compatibility library.
577
-
578
- We sincerely thank @redd97 for their contributions. We appreciate your great efforts!
579
-
580
- ## Version v1.30.0
581
-
582
- Released on December 13th, 2024.
583
-
584
- - Introduced support for [pull](https://es-toolkit.slash.page/reference/array/pull.html).
585
- - Added compatibility functions for [map](https://es-toolkit.slash.page/reference/compat/array/map.html), [range](https://es-toolkit.slash.page/reference/math/range.html), [rangeRight](https://es-toolkit.slash.page/reference/math/rangeRight.html), [differenceWith](https://es-toolkit.slash.page/reference/array/differenceWith.html), [nth](https://es-toolkit.slash.page/reference/compat/array/nth.html), [noop](https://es-toolkit.slash.page/reference/function/noop.html), [identity](https://es-toolkit.slash.page/reference/function/identity.html), [keys](https://es-toolkit.slash.page/reference/compat/object/keys.html), [propertyOf](https://es-toolkit.slash.page/reference/compat/object/propertyOf.html), [nthArg](https://es-toolkit.slash.page/reference/compat/function/nthArg.html), [delay](https://es-toolkit.slash.page/reference/promise/delay.html), [toPlainObject](https://es-toolkit.slash.page/reference/compat/util/toPlainObject.html), [unary](https://es-toolkit.slash.page/reference/function/unary.html), [once](https://es-toolkit.slash.page/reference/function/once.html), [after](https://es-toolkit.slash.page/reference/function/after.html), [takeRightWhile](https://es-toolkit.slash.page/reference/array/takeRightWhile.html), [escapeRegExp](https://es-toolkit.slash.page/reference/string/escapeRegExp.html), [unescape](https://es-toolkit.slash.page/reference/string/unescape.html), [upperFirst](https://es-toolkit.slash.page/reference/string/upperFirst.html), [lowerFirst](https://es-toolkit.slash.page/reference/string/lowerFirst.html), [deburr](https://es-toolkit.slash.page/reference/string/deburr.html), [lt](https://es-toolkit.slash.page/reference/util/lt.html), [lte](https://es-toolkit.slash.page/reference/util/lte.html), [toLower](https://es-toolkit.slash.page/reference/compat/string/toLower.html), [invoke](https://es-toolkit.slash.page/reference/compat/util/invoke.html), [method](https://es-toolkit.slash.page/reference/compat/util/method.html), [reverse](https://es-toolkit.slash.page/reference/compat/array/reverse.html), [now](https://es-toolkit.slash.page/reference/compat/util/now.html), [findKey](https://es-toolkit.slash.page/reference/object/findKey.html), [stubArray](https://es-toolkit.slash.page/reference/compat/util/stubArray.html), [stubFalse](https://es-toolkit.slash.page/reference/compat/util/stubFalse.html), [stubObject](https://es-toolkit.slash.page/reference/compat/util/stubObject.html), [stubString](https://es-toolkit.slash.page/reference/compat/util/stubString.html), and [stubTrue](https://es-toolkit.slash.page/reference/compat/util/stubTrue.html).
586
-
587
- We sincerely thank @healtheloper, @mass2527, @D-Sketon, @eunhyulkim, @scato3, @Na-hyunwoo, and @dasom-jo for their contributions. We appreciate your great efforts!
588
-
589
- ## Version v1.29.0
590
-
591
- Released on December 1st, 2024.
592
-
593
- - Introduced support for [cloneDeepWith](https://es-toolkit.slash.page/reference/object/cloneDeepWith.html).
594
- - Added a compatibility function for [lastIndexOf](https://es-toolkit.slash.page/reference/compat/array/lastIndexOf.html).
595
- - Fixed an issue in [flattenObject](https://es-toolkit.slash.page/reference/object/flattenObject.html) where nested objects in arrays were not flattened correctly.
596
-
597
- We sincerely thank @nnnnoel and @evan-moon for their contributions. We appreciate your great efforts!
598
-
599
- ## Version v1.28.0
600
-
601
- Released on November 30th, 2024.
602
-
603
- - Added compatibility functions for [gt](https://es-toolkit.slash.page/reference/compat/util/gt.html), [gte](https://es-toolkit.slash.page/reference/compat/util/gte.html), [toArray](https://es-toolkit.slash.page/reference/compat/util/toArray.html), [toUpper](https://es-toolkit.slash.page/reference/compat/string/toUpper.html), [add](https://es-toolkit.slash.page/reference/compat/math/add.html), [assignIn](https://es-toolkit.slash.page/reference/compat/object/assignIn.html) ([extend](https://es-toolkit.slash.page/reference/compat/object/extend.html)), and [isElement](https://es-toolkit.slash.page/reference/compat/predicate/isElement.html).
604
- - Introduced new compatibility types for `DebouncedFunc`.
605
- - Enhanced our function types to accept `PropertyKey` instead of just `string` for property keys.
606
- - Corrected [flatMap](https://es-toolkit.slash.page/reference/array/flatMap.html) to accurately infer return types when the `depth` parameter is omitted.
607
- - Resolved issues with incorrect types for [partial](https://es-toolkit.slash.page/reference/function/partial.html) and [partialRight](https://es-toolkit.slash.page/reference/function/partialRight.html).
608
- - Fixed [intersectionBy](https://es-toolkit.slash.page/reference/array/intersectionBy.html), [differenceBy](https://es-toolkit.slash.page/reference/array/differenceBy.html), and [differenceWith](https://es-toolkit.slash.page/reference/array/differenceWith.html) to properly calculate differences between various element types.
609
- - Ensured that [words](https://es-toolkit.slash.page/reference/string/words.html) is now correctly exported in our compatibility library.
610
-
611
- 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!
612
-
613
- ## Version v1.27.0
614
-
615
- Released on November 10th, 2024.
616
-
617
- - Added support for [findKey](https://es-toolkit.slash.page/reference/object/findKey.html) and [isSubsetWith](https://es-toolkit.slash.page/reference/array/isSubsetWith.html).
618
- - Introduced compatibility functions for [words](https://es-toolkit.slash.page/reference/string/words.html), [at](https://es-toolkit.slash.page/reference/array/at.html), [differenceBy](https://es-toolkit.slash.page/reference/array/differenceBy.html), [uniqBy](https://es-toolkit.slash.page/reference/array/uniqBy.html), [forEach](https://es-toolkit.slash.page/reference/compat/array/forEach.html), [each](https://es-toolkit.slash.page/reference/compat/array/each.html), [sum](https://es-toolkit.slash.page/reference/math/sum.html), [sumBy](https://es-toolkit.slash.page/reference/array/sumBy.html), [union](https://es-toolkit.slash.page/reference/array/union.html), [zip](https://es-toolkit.slash.page/reference/array/zip.html), [unzip](https://es-toolkit.slash.page/reference/array/unzip.html), [iteratee](https://es-toolkit.slash.page/reference/compat/util/iteratee.html), [isEmpty](https://es-toolkit.slash.page/reference/compat/predicate/isEmpty.html), and [replace](https://es-toolkit.slash.page/reference/compat/string/replace.html).
619
- - Fixed a bug in [cloneDeep](https://es-toolkit.slash.page/reference/object/cloneDeep.html) that prevented it from correctly cloning object prototypes.
620
- - Improved performance for [at](https://es-toolkit.slash.page/reference/array/at.html).
621
- - Enhanced performance for [toPath](https://es-toolkit.slash.page/reference/compat/util/toPath.html), [get](https://es-toolkit.slash.page/reference/compat/object/get.html), [set](https://es-toolkit.slash.page/reference/compat/object/set.html), [unset](https://es-toolkit.slash.page/reference/compat/object/unset.html), [has](https://es-toolkit.slash.page/reference/compat/object/has.html), [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html), [chunk](https://es-toolkit.slash.page/reference/array/chunk.html), [difference](https://es-toolkit.slash.page/reference/array/difference.html), [drop](https://es-toolkit.slash.page/reference/array/drop.html), [dropRight](https://es-toolkit.slash.page/reference/array/dropRight.html), [dropWhile](https://es-toolkit.slash.page/reference/array/dropWhile.html), [findLastIndex](https://es-toolkit.slash.page/reference/compat/array/findLastIndex.html), [head](https://es-toolkit.slash.page/reference/array/head.html), [last](https://es-toolkit.slash.page/reference/array/last.html), [sample](https://es-toolkit.slash.page/reference/array/sample.html), [tail](https://es-toolkit.slash.page/reference/array/tail.html), [take](https://es-toolkit.slash.page/reference/array/take.html), and [takeRight](https://es-toolkit.slash.page/reference/array/takeRight.html) in our compatibility library.
622
-
623
- 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!
624
-
625
- ## Version v1.26.1
626
-
627
- Released on October 25th, 2024.
628
-
629
- - Fixed a bug in [isMatch](https://es-toolkit.slash.page/reference/compat/predicate/isMatch.html) that did not strictly compare `null` in objects.
630
-
631
- This version includes contributions from @D-Sketon. Thank you for your valuable contributions!
632
-
633
- ## Version v1.26.0
634
-
635
- Released on October 24th, 2024.
636
-
637
- - Added support for [invariant](https://es-toolkit.slash.page/reference/util/invariant.html), [identity](https://es-toolkit.slash.page/reference/function/identity.html), [median](https://es-toolkit.slash.page/reference/math/median.html), and [medianBy](https://es-toolkit.slash.page/reference/math/medianBy.html).
638
- - Added compatibility functions for [template](https://es-toolkit.slash.page/reference/compat/string/template.html), [uniqueId](https://es-toolkit.slash.page/reference/compat/util/uniqueId.html), [intersectionBy](https://es-toolkit.slash.page/reference/array/intersectionBy.html), [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html), [sortBy](https://es-toolkit.slash.page/reference/array/sortBy.html), and [some](https://es-toolkit.slash.page/reference/array/some.html).
639
- - Made it possible to use [drop](https://es-toolkit.slash.page/reference/array/drop.html), [dropRight](https://es-toolkit.slash.page/reference/array/dropRight.html), [every](https://es-toolkit.slash.page/reference/compat/array/every.html), [take](https://es-toolkit.slash.page/reference/array/take.html), and [takeRight](https://es-toolkit.slash.page/reference/array/takeRight.html) directly as iteratees, allowing for usage like `arr.map(drop)`.
640
- - Corrected [merge](https://es-toolkit.slash.page/reference/object/merge.html) to disallow primitive values such as numbers or strings.
641
-
642
- This version includes contributions from @dayongkr, @Na-hyunwoo, @ssi02014, @kaehehehe, @jakvbs, @D-Sketon, and @seonghun0828. Thank you for your valuable contributions!
643
-
644
- ## Version v1.25.2
645
-
646
- Released on October 16th, 2024.
647
-
648
- - Fixed a problem with [isJSONValue](https://es-toolkit.slash.page/reference/predicate/isJSONValue.html), [isJSONArray](https://es-toolkit.slash.page/reference/predicate/isJSONArray.html), and [isJSONObject](https://es-toolkit.slash.page/reference/predicate/isJSONObject.html) that led to circular dependencies.
649
- - Enhanced [flatten](https://es-toolkit.slash.page/reference/array/flatten.html), [flattenDeep](https://es-toolkit.slash.page/reference/array/flattenDeep.html), [flattenDepth](https://es-toolkit.slash.page/reference/compat/array/flattenDepth.html#flattendepth), [slice](https://es-toolkit.slash.page/reference/compat/array/slice.html), and [zipObjectDeep](https://es-toolkit.slash.page/reference/compat/array/zipObjectDeep.html) to work with array-like objects in our compatibility library, ensuring they are fully compatible with lodash.
650
-
651
- This version includes contributions from @D-Sketon. Thank you for your valuable contributions!
652
-
653
- ## Version v1.25.1
654
-
655
- Released on October 15th, 2024.
656
-
657
- - Resolved an issue in [cloneDeep](https://es-toolkit.slash.page/reference/object/cloneDeep.html) that incorrectly copied properties from the `target` when they were read-only.
658
- - Updated [every](https://es-toolkit.slash.page/reference/compat/array/every.html), [filter](https://es-toolkit.slash.page/reference/compat/array/filter.html), [find](https://es-toolkit.slash.page/reference/compat/array/find.html), [findIndex](https://es-toolkit.slash.page/reference/compat/array/findIndex.html), [findLastIndex](https://es-toolkit.slash.page/reference/compat/array/findLastIndex.html), [indexOf](https://es-toolkit.slash.page/reference/compat/array/indexOf.html), and [join](https://es-toolkit.slash.page/reference/compat/array/join.html) to now accept array-like objects and a `fromIndex` parameter, making them compatible with lodash.
659
-
660
- This version includes contributions from @D-Sketon. Thank you for your valuable contributions!
661
-
662
- ## Version v1.25.0
663
-
664
- Released on October 14th, 2024.
665
-
666
- - Added support for [isFile](https://es-toolkit.slash.page/reference/predicate/isFile.html).
667
- - Added compatibility functions for [escape](https://es-toolkit.slash.page/reference/string/escape.html), [toSafeInteger](https://es-toolkit.slash.page/reference/compat/util/toSafeInteger.html), [intersection](https://es-toolkit.slash.page/reference/array/intersection.html), [sample](https://es-toolkit.slash.page/reference/array/sample.html), [chunk](https://es-toolkit.slash.page/reference/array/chunk.html), [compact](https://es-toolkit.slash.page/reference/array/compact.html), [head](https://es-toolkit.slash.page/reference/array/head.html), [initial](https://es-toolkit.slash.page/reference/array/initial.html), [last](https://es-toolkit.slash.page/reference/array/last.html), [tail](https://es-toolkit.slash.page/reference/array/tail.html), [take](https://es-toolkit.slash.page/reference/array/take.html), [takeRight](https://es-toolkit.slash.page/reference/array/takeRight.html), [uniq](https://es-toolkit.slash.page/reference/array/uniq.html), and [without](https://es-toolkit.slash.page/reference/array/without.html).
668
- - Enhanced performance for [at](https://es-toolkit.slash.page/reference/array/at.html) and [isPlainObject](https://es-toolkit.slash.page/reference/predicate/isPlainObject.html).
669
- - Resolved an issue in [cloneDeep](https://es-toolkit.slash.page/reference/object/cloneDeep.html) that prevented it from cloning symbol properties and read-only properties of objects.
670
- - Fixed a problem in [pick](https://es-toolkit.slash.page/reference/object/pick.html) within our compatibility library that incorrectly added `undefined` for keys that do not exist.
671
-
672
- This version includes contributions from @D-Sketon, @mass2527, @dayongkr, @lukaszkowalik2, @Gyumong, @Dohun-choi, @belgattitude, and @chhw130. Thank you for your valuable contributions!
673
-
674
- ## Version v1.24.0
675
-
676
- Released on October 7th, 2024.
677
-
678
- - Added support for [isBlob](https://es-toolkit.slash.page/reference/predicate/isBlob.html) and [isDate](https://es-toolkit.slash.page/reference/predicate/isDate.html).
679
- - Added compatibility functions for [invertBy](https://es-toolkit.slash.page/reference/compat/object/invertBy.html), [times](https://es-toolkit.slash.page/reference/compat/util/times.html), [constant](https://es-toolkit.slash.page/reference/compat/util/constant.html), [slice](https://es-toolkit.slash.page/reference/compat/array/slice.html), [toLength](https://es-toolkit.slash.page/reference/compat/util/toLength.html), [defaultTo](https://es-toolkit.slash.page/reference/compat/util/defaultTo.html), [dropRightWhile](https://es-toolkit.slash.page/reference/array/dropRightWhile.html), [curryRight](https://es-toolkit.slash.page/reference/function/curryRight.html), [rangeRight](https://es-toolkit.slash.page/reference/math/rangeRight.html), [before](https://es-toolkit.slash.page/reference/function/before.html), [eq](https://es-toolkit.slash.page/reference/compat/util/eq.html), [defaults](https://es-toolkit.slash.page/reference/compat/object/defaults.html), [toDefaulted](https://es-toolkit.slash.page/reference/compat/object/toDefaulted.html), [isArrayBuffer](https://es-toolkit.slash.page/reference/predicate/isArrayBuffer.html), [isSet](https://es-toolkit.slash.page/reference/predicate/isSet.html), and [isMap](https://es-toolkit.slash.page/reference/predicate/isMap.html).
680
- - Enhanced [difference](https://es-toolkit.slash.page/reference/array/difference.html) to work with Array-like objects, aligning its functionality with lodash's behavior.
681
- - Improved performance for [pickBy](https://es-toolkit.slash.page/reference/object/pickBy.html) and [omitBy](https://es-toolkit.slash.page/reference/object/omitBy.html).
682
-
683
- ## Version v1.23.0
684
-
685
- Released on October 1st, 2024.
686
-
687
- - Added support for [isEqualWith](https://es-toolkit.slash.page/reference/predicate/isEqualWith.html), [isArrayBuffer](https://es-toolkit.slash.page/reference/predicate/isArrayBuffer.html), [curryRight](https://es-toolkit.slash.page/reference/function/curryRight.html), [isJSONValue](https://es-toolkit.slash.page/reference/predicate/isJSONValue.html), [isJSONObject](https://es-toolkit.slash.page/reference/predicate/isJSONObject.html), [isJSONArray](https://es-toolkit.slash.page/reference/predicate/isJSONArray.html).
688
- - Fixed a bug in [merge](https://es-toolkit.slash.page/reference/object/merge.html) that copied the reference from the `source` object to the `target` object.
689
- - Fixed a bug in [includes](https://es-toolkit.slash.page/reference/compat/array/includes.html) that returned `true` for inherited properties.
690
- - Fixed a bug in [startCase](https://es-toolkit.slash.page/reference/string/startCase.html) and other string methods that did not correctly split the words when using accented letters.
691
- - Fixed a bug in [filter](https://es-toolkit.slash.page/reference/compat/array/filter.html) that did not provide correct arguments to the predicate function.
692
- - Fixed a bug in [isMatch](https://es-toolkit.slash.page/reference/compat/predicate/isMatch.html) that did not strictly compare primitive falsy values.
693
-
694
- This version includes contributions from @D-Sketon, @wojtekmaj, @mass2527, @chhw130, and @knott11. Thank you for your valuable contributions!
695
-
696
- ## Version v1.22.0
697
-
698
- Released on September 28th, 2024.
699
-
700
- - Added support for [flow](https://es-toolkit.slash.page/reference/function/flow.html), [flowRight](https://es-toolkit.slash.page/reference/function/flowRight.html), [isMap](https://es-toolkit.slash.page/reference/predicate/isMap.html), and [isSet](https://es-toolkit.slash.page/reference/predicate/isSet.html).
701
- - Added compatibility functions for [filter](https://es-toolkit.slash.page/reference/compat/array/filter.html), [includes](https://es-toolkit.slash.page/reference/compat/array/includes.html), [every](https://es-toolkit.slash.page/reference/compat/array/every.html), [flip](https://es-toolkit.slash.page/reference/compat/function/flip.html), and [dropWhile](https://es-toolkit.slash.page/reference/array/dropWhile.html).
702
-
703
- - Fixed a bug in [throttle](https://es-toolkit.slash.page/reference/function/throttle.html) that prevented it from throttling after the initial `throttleMs`.
704
- - Fixed a bug in [cloneDeep](https://es-toolkit.slash.page/reference/object/cloneDeep.html) that caused it to not clone the offset and length of `DataView`.
705
- - Fixed a bug in [clone](https://es-toolkit.slash.page/reference/object/clone.html) that threw an error if `SharedArrayBuffer` is unavailable.
706
-
707
- This version includes contributions from @dayongkr, @k-jeonghee, @D-Sketon, @iDevGon, @mass2527, @wojtekmaj, @jonganebski, @hyesungoh, and @chhw130. Thank you for your valuable contributions!
708
-
709
- ## Version v1.21.0
710
-
711
- Released on September 25th, 2024.
712
-
713
- - Added support for [constantCase](https://es-toolkit.slash.page/reference/string/constantCase.html) and [isError](https://es-toolkit.slash.page/reference/predicate/isError.html).
714
- - Added compatibility functions for [pad](https://es-toolkit.slash.page/reference/compat/string/pad.html), [padStart](https://es-toolkit.slash.page/reference/compat/string/padStart.html), [padEnd](https://es-toolkit.slash.page/reference/compat/string/padEnd.html), [defer](https://es-toolkit.slash.page/reference/compat/function/defer.html), [isFinite](https://es-toolkit.slash.page/reference/compat/predicate/isFinite.html), [toNumber](https://es-toolkit.slash.page/reference/compat/math/toNumber.html), [toFinite](https://es-toolkit.slash.page/reference/compat/math/toFinite.html), and [toInteger](https://es-toolkit.slash.page/reference/compat/math/toInteger.html).
715
- - Improved performance for [flatten](https://es-toolkit.slash.page/reference/array/flatten.html), [isNumber](https://es-toolkit.slash.page/reference/predicate/isNumber.html), [isString](https://es-toolkit.slash.page/reference/predicate/isString.html), [isSymbol](https://es-toolkit.slash.page/reference/predicate/isSymbol.html), [isRegExp](https://es-toolkit.slash.page/reference/predicate/isRegExp.html), and [isBoolean](https://es-toolkit.slash.page/reference/predicate/isBoolean.html).
716
- - Fixed [compact](https://es-toolkit.slash.page/reference/array/compact.html) to correctly exclude `0n` as a falsey value.
717
- - Fixed [pick](https://es-toolkit.slash.page/reference/object/pick.html) to not pick nonexistent keys from the original object.
718
- - Fixed [omit](https://es-toolkit.slash.page/reference/object/omit.html) to accept readonly arrays.
719
-
720
- This version includes contributions from @hyesungoh, @D-Sketon, @mass2527, @gweesin, @VVSOGI, @coding-honey, @seonghun0828, and @jsparkdev. Thank you for your valuable contributions!
721
-
722
- ## Version v1.20.0
723
-
724
- Released on September 20th, 2024.
725
-
726
- - Added support for function invocation on leading and trailing edges for [debounce](https://es-toolkit.slash.page/reference/function/debounce.html) and [throttle](https://es-toolkit.slash.page/reference/function/throttle.html).
727
- - Added compatibility functions for [debounce](https://es-toolkit.slash.page/reference/function/debounce.html), [throttle](https://es-toolkit.slash.page/reference/function/throttle.html), [curry](https://es-toolkit.slash.page/reference/function/curry.html), [isNumber](https://es-toolkit.slash.page/reference/compat/predicate/isNumber.html), and [isNaN](https://es-toolkit.slash.page/reference/compat/predicate/isNaN.html).
728
- - Improved performance for [at](https://es-toolkit.slash.page/reference/array/at.html), [zip](https://es-toolkit.slash.page/reference/array/zip.html), [zipWith](https://es-toolkit.slash.page/reference/array/zipWith.html), and [drop](https://es-toolkit.slash.page/reference/array/drop.html).
729
-
730
- ## Version v1.19.0
731
-
732
- Released on September 14th, 2024.
733
-
734
- - Added support for [isDate](https://es-toolkit.slash.page/reference/predicate/isDate.html), [curry](https://es-toolkit.slash.page/reference/function/curry.html), [upperCase](https://es-toolkit.slash.page/reference/string/upperCase.html).
735
- - Added compatibility functions for [pick](https://es-toolkit.slash.page/reference/object/pick.html), [omit](https://es-toolkit.slash.page/reference/object/omit.html), [unset](https://es-toolkit.slash.page/reference/compat/object/unset.html), [toPath](https://es-toolkit.slash.page/reference/compat/util/toPath.html), [trim](https://es-toolkit.slash.page/reference/compat/string/trim.html), [trimStart](https://es-toolkit.slash.page/reference/compat/string/trimStart.html), [trimEnd](https://es-toolkit.slash.page/reference/compat/string/trimEnd.html), [isInteger](https://es-toolkit.slash.page/reference/compat/predicate/isInteger.html), [isSafeInteger](https://es-toolkit.slash.page/reference/compat/predicate/isSafeInteger.html), [snakeCase](https://es-toolkit.slash.page/reference/string/snakeCase.html), [startCase](https://es-toolkit.slash.page/reference/string/startCase.html), [lowerCase](https://es-toolkit.slash.page/reference/string/lowerCase.html), [kebabCase](https://es-toolkit.slash.page/reference/string/kebabCase.html), [ceil](https://es-toolkit.slash.page/reference/compat/math/ceil.html), [floor](https://es-toolkit.slash.page/reference/compat/math/floor.html), [round](https://es-toolkit.slash.page/reference/math/round.html).
736
- - Enhanced [clone](https://es-toolkit.slash.page/reference/object/clone.html) to handle `Buffer`s, `SharedArrayBuffer`s, `File`s, `Blob`s, `TypedArray`s, and `Error`s.
737
- - Fixed a bug where [mergeWith](https://es-toolkit.slash.page/reference/object/mergeWith.html) did not preserve the original properties of the `target` object.
738
- - Fixed a bug where [groupBy](https://es-toolkit.slash.page/reference/array/groupBy.html) couldn't group with keys like `toString` and `indexOf`.
739
- - Improved performance for [has](https://es-toolkit.slash.page/reference/compat/object/has.html) and [get](https://es-toolkit.slash.page/reference/compat/object/get.html).
740
-
741
- ## Version v1.18.0
742
-
743
- Released on September 12th, 2024.
744
-
745
- - Added support for [isObject](https://es-toolkit.slash.page/reference/compat/predicate/isObject.html), [findLastIndex](https://es-toolkit.slash.page/reference/compat/array/findLastIndex.html), [parseInt](https://es-toolkit.slash.page/reference/compat/math/parseInt.html), [rearg](https://es-toolkit.slash.page/reference/compat/function/rearg.html), [conforms](https://es-toolkit.slash.page/reference/compat/predicate/conforms.html), [conformsTo](https://es-toolkit.slash.page/reference/compat/predicate/conformsTo.html), [bindKey](https://es-toolkit.slash.page/reference/compat/function/bindKey.html), [some](https://es-toolkit.slash.page/reference/compat/array/some.html), [fromPairs](https://es-toolkit.slash.page/reference/compat/object/fromPairs.html), [isArrayLikeObject](https://es-toolkit.slash.page/reference/compat/predicate/isArrayLikeObject.html), [escapeRegExp](https://es-toolkit.slash.page/reference/string/escapeRegExp.html), [sortBy](https://es-toolkit.slash.page/reference/array/sortBy.html), [isWeakSet](https://es-toolkit.slash.page/reference/predicate/isWeakSet.html), [isWeakMap](https://es-toolkit.slash.page/reference/predicate/isWeakMap.html), [flatMapDeep](https://es-toolkit.slash.page/reference/array/flatMapDeep.html), [escape](https://es-toolkit.slash.page/reference/string/escape.html), [unescape](https://es-toolkit.slash.page/reference/string/unescape.html), [repeat](https://es-toolkit.slash.page/reference/compat/string/repeat.html), [pad](https://es-toolkit.slash.page/reference/compat/string/pad.html), [join](https://es-toolkit.slash.page/reference/compat/array/join.html), and [spread](https://es-toolkit.slash.page/reference/compat/function/spread.html).
746
- - Improved performance for [deburr](https://es-toolkit.slash.page/reference/string/deburr.html).
747
-
748
- ## Version v1.17.0
749
-
750
- Released on August 31st, 2024.
751
-
752
- ### New Features
753
-
754
- - Added support for new functions: [at](https://es-toolkit.slash.page/reference/array/at.html), [pullAt](https://es-toolkit.slash.page/reference/array/pullAt.html), [deburr](https://es-toolkit.slash.page/reference/string/deburr.html), [lowerFirst](https://es-toolkit.slash.page/reference/string/lowerFirst.html), [upperFirst](https://es-toolkit.slash.page/reference/string/upperFirst.html), and [isRegExp](https://es-toolkit.slash.page/reference/predicate/isRegExp.html).
755
- - Enhanced [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html) and [sortBy](https://es-toolkit.slash.page/reference/array/sortBy.html) to support function criteria.
756
- - [countBy](https://es-toolkit.slash.page/reference/array/countBy.html) now supports numeric and symbol keys.
757
-
758
- #### Bug Fixes
759
-
760
- - Updated type definitions for [throttle](https://es-toolkit.slash.page/reference/function/throttle.html) and [debounce](https://es-toolkit.slash.page/reference/function/debounce.html).
761
- - (`es-toolkit/compat`) Fixed [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html) to correctly handle deep keys even when object shapes differ ([#427](https://github.com/toss/es-toolkit/pull/427)).
762
-
763
- ## Version v1.16.0
764
-
765
- Released on August 15th, 2024.
766
-
767
- - Added support for [memoize](https://es-toolkit.slash.page/reference/function/memoize.html), [find](https://es-toolkit.slash.page/reference/compat/array/find.html), [findIndex](https://es-toolkit.slash.page/reference/compat/array/findIndex.html), [has](https://es-toolkit.slash.page/reference/compat/object/has.html), [partial](https://es-toolkit.slash.page/reference/function/partial.html), [partialRight](https://es-toolkit.slash.page/reference/function/partialRight.html), [sortBy](https://es-toolkit.slash.page/reference/array/sortBy.html), [isString](https://es-toolkit.slash.page/reference/predicate/isString.html), [rest](https://es-toolkit.slash.page/reference/function/rest.html), [padEnd](https://es-toolkit.slash.page/reference/compat/string/padEnd.html).
768
-
769
- ## Version v1.15.1
770
-
771
- Released on August 10th, 2024.
772
-
773
- - Disabled implicit conversion of values in [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html) for performance and simplicity.
774
-
775
- ## Version v1.15.0
776
-
777
- Released on August 10th, 2024.
778
-
779
- - Added support for [merge](https://es-toolkit.slash.page/reference/object/merge.html), [mergeWith](https://es-toolkit.slash.page/reference/object/mergeWith.html), [toMerged](https://es-toolkit.slash.page/reference/object/toMerged.html), [isSymbol](https://es-toolkit.slash.page/reference/predicate/isSymbol.html), [pascalCase](https://es-toolkit.slash.page/reference/string/pascalCase.html).
780
- - Added compatibility tests with lodash for [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html).
781
-
782
- ## Version v1.14.0
783
-
784
- Released on August 9th, 2024.
785
-
786
- - (`es-toolkit`) Added support for [mapKeys](https://es-toolkit.slash.page/reference/object/mapKeys.html), [mapValues](https://es-toolkit.slash.page/reference/object/mapValues.html), [cloneDeep](https://es-toolkit.slash.page/reference/object/cloneDeep.html), [before](https://es-toolkit.slash.page/reference/function/before.html), [after](https://es-toolkit.slash.page/reference/function/after.html), [isSubset](https://es-toolkit.slash.page/reference/array/isSubset.html), [ary](https://es-toolkit.slash.page/reference/function/ary.html), [unary](https://es-toolkit.slash.page/reference/function/unary.html), [flattenDeep](https://es-toolkit.slash.page/reference/array/flattenDeep.html), [isEqual](https://es-toolkit.slash.page/reference/predicate/isEqual.html), [isFunction](https://es-toolkit.slash.page/reference/predicate/isFunction.html), [isBoolean](https://es-toolkit.slash.page/reference/predicate/isBoolean.html), [isPrimitive](https://es-toolkit.slash.page/reference/predicate/isPrimitive.html), and [isTypedArray](https://es-toolkit.slash.page/reference/predicate/isTypedArray.html).
787
- - (`es-toolkit/compat`) Added support for [matches](https://es-toolkit.slash.page/reference/compat/predicate/matches.html), [isMatch](https://es-toolkit.slash.page/reference/compat/predicate/isMatch.html), [isArray](https://es-toolkit.slash.page/reference/compat/predicate/isArray.html), [isArrayLike](https://es-toolkit.slash.page/reference/compat/predicate/isArrayLike.html), [isObjectLike](https://es-toolkit.slash.page/reference/compat/predicate/isObjectLike.html), [isArguments](https://es-toolkit.slash.page/reference/compat/predicate/isArguments.html), [size](https://es-toolkit.slash.page/reference/compat/array/size.html), [bind](https://es-toolkit.slash.page/reference/compat/function/bind.html), [flattenDepth](https://es-toolkit.slash.page/reference/array/flatten.html), and [padStart](https://es-toolkit.slash.page/reference/compat/string/padStart.html).
788
- - Added compatibility tests with lodash for many functions like [initial](https://es-toolkit.slash.page/reference/array/initial.html), [last](https://es-toolkit.slash.page/reference/array/last.html), [takeRight](https://es-toolkit.slash.page/reference/array/takeRight.html), [without](https://es-toolkit.slash.page/reference/array/without.html), [uniq](https://es-toolkit.slash.page/reference/array/uniq.html), [invert](https://es-toolkit.slash.page/reference/object/invert.html), [isNull](https://es-toolkit.slash.page/reference/predicate/isNull.html), [isUndefined](https://es-toolkit.slash.page/reference/predicate/isUndefined.html), and [isNil](https://es-toolkit.slash.page/reference/predicate/isNil.html).
789
-
790
- ## Version v1.13.1
791
-
792
- Released on July 20th, 2024.
793
-
794
- - Use the compatibility layer `es-toolkit/compat` in legacy CDN builds.
795
-
796
- ## Version v1.13.0
797
-
798
- Released on July 20th, 2024.
799
-
800
- `es-toolkit` can now be used in various CDNs, like [unpkg](https://unpkg.com) and [jsdelivr](https://www.jsdelivr.com). See more in our [usage docs](https://es-toolkit.slash.page/usage.html)
801
-
802
- ### Features
803
-
804
- - Added support for [flattenObject](https://es-toolkit.slash.page/reference/object/flattenObject.html), [isPlainObject](https://es-toolkit.slash.page/reference/predicate/isPlainObject.html), [isLength](https://es-toolkit.slash.page/reference/predicate/isLength.html). ([3e60443](https://github.com/toss/es-toolkit/commit/3e60443a408d3296e4a18a1601a16f5953d414f9), [3764993](https://github.com/toss/es-toolkit/commit/376499351f347c269400ee0eeb5145ad041c7c06), [#245](https://github.com/toss/es-toolkit/pull/245))
805
- - Added support for [concat](https://es-toolkit.slash.page/reference/compat/array/concat.html) in our compatibility layer `es-toolkit/compat`. ([e09517f](https://github.com/toss/es-toolkit/commit/e09517f05c180b43e0f2b0b0fa44167f9c4832f3))
806
-
807
- ### Lodash Compatibility
808
-
809
- - Ensured compatibility with [difference](https://es-toolkit.slash.page/reference/array/difference.html) and [take](https://es-toolkit.slash.page/reference/compat/array/take.html)
810
-
811
- ## Version v1.12.0
812
-
813
- Released on July 19th, 2024.
814
-
815
- - Fixed a bug where `es-toolkit/compat` was not available in modern Node.js environments.
816
- - Added support for [max](https://es-toolkit.slash.page/reference/compat/math/max.html) and [min](https://es-toolkit.slash.page/reference/compat/math/min.html) in our compatibility layer `es-toolkit/compat`. ([e1e6e38](https://github.com/toss/es-toolkit/commit/e1e6e38206750fb90f5b99cace9196635288e21c))
817
-
818
- ## Version v1.11.0
819
-
820
- Released on July 18th, 2024.
821
-
822
- ### Introducing `es-toolkit/compat`
823
-
824
- 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.
825
-
826
- `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`.
827
-
828
- 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.
829
-
830
- For more information, see our [compatibility documentation](https://es-toolkit.slash.page/compatibility.html).
831
-
832
- ### Features
833
-
834
- - Added support for [get](https://es-toolkit.slash.page/reference/compat/object/get.html) and [set](https://es-toolkit.slash.page/reference/compat/object/set.html) in our compatibility layer `es-toolkit/compat`. (https://github.com/toss/es-toolkit/pull/232, https://github.com/toss/es-toolkit/pull/223)
835
- - Added support for [zipObjectDeep](https://es-toolkit.slash.page/reference/compat/array/zipObjectDeep.html) in our compatibility layer `es-toolkit/compat`. (https://github.com/toss/es-toolkit/pull/150)
836
- - Added support for [flatMap](https://es-toolkit.slash.page/reference/compat/array/flatMap.html). (https://github.com/toss/es-toolkit/pull/209)
837
- - Added support for [startCase](https://es-toolkit.slash.page/reference/string/startCase.html), [startsWith](https://es-toolkit.slash.page/reference/string/startsWith.html), and [endsWith](https://es-toolkit.slash.page/reference/string/endsWith.html). (https://github.com/toss/es-toolkit/pull/224).
838
- - Added support for [withTimeout](https://es-toolkit.slash.page/reference/promise/withTimeout.html). (https://github.com/toss/es-toolkit/pull/210)
839
-
840
- ### Bug fixes
841
-
842
- - Fixed `drop` and `dropRight` incorrectly accepting negative integers. (https://github.com/toss/es-toolkit/pull/218)
843
- - Fixed `invert` not to invert inherited properties. (https://github.com/toss/es-toolkit/pull/221)
844
-
845
- ### Performance Improvements
846
-
847
- - Improved performance for `dropRightWhile`. (https://github.com/toss/es-toolkit/pull/220)
848
-
849
- ## Version v1.10.1
850
-
851
- Released on July 15th, 2024.
852
-
853
- - Fixed [camelCase](https://es-toolkit.slash.page/reference/string/camelCase.html) using `capitalize` from incorrect import. ([8dda135](https://github.com/toss/es-toolkit/commit/8dda135fa339ae4953908a74b2e6eeca9f163a20))
854
-
855
- ## Version v1.10.0
856
-
857
- Released on July 14th, 2024.
858
-
859
- ### Features
860
-
861
- - Add support for [capitalize](https://es-toolkit.slash.page/reference/string/capitalize.html), [snakeCase](https://es-toolkit.slash.page/reference/string/snakeCase.html), [kebabCase](https://es-toolkit.slash.page/reference/string/kebabCase.html), [camelCase](https://es-toolkit.slash.page/reference/string/camelCase.html) and [lowerCase](https://es-toolkit.slash.page/reference/string/lowerCase.html). (https://github.com/toss/es-toolkit/pull/152, https://github.com/toss/es-toolkit/pull/161, https://github.com/toss/es-toolkit/pull/162, https://github.com/toss/es-toolkit/pull/166, [21d6530](https://github.com/toss/es-toolkit/commit/21d6530e16471d596410d57d59fd3ced8fc5569f)).
862
- - Add support for [negate](https://es-toolkit.slash.page/reference/function/negate.html). (https://github.com/toss/es-toolkit/pull/177)
863
- - Add support for [isEqual](https://es-toolkit.slash.page/reference/predicate/isEqual.html). (https://github.com/toss/es-toolkit/pull/174)
864
- - Add support for [clone](https://es-toolkit.slash.page/reference/object/clone.html). (https://github.com/toss/es-toolkit/pull/155)
865
- - Add support for [toFilled](https://es-toolkit.slash.page/reference/array/toFilled.html). (https://github.com/toss/es-toolkit/pull/154)
866
- - Add support for [initial](https://es-toolkit.slash.page/reference/array/initial.html) and [last](https://es-toolkit.slash.page/reference/array/last.html). (https://github.com/toss/es-toolkit/pull/188, https://github.com/toss/es-toolkit/pull/149)
867
- - Add support for [flattenDeep](https://es-toolkit.slash.page/reference/array/flattenDeep.html). (https://github.com/toss/es-toolkit/pull/160)
868
-
869
- ### Performance Improvements
870
-
871
- - Optimize the performance of [isNil](https://es-toolkit.slash.page/reference/predicate/isNil.html) by simplifying its check. ([489ac76](https://github.com/toss/es-toolkit/commit/489ac76fc62f97cbfa3ca9eec2e0a4c03c4f5b1c))
872
- - Optimize the performance of [sum](https://es-toolkit.slash.page/reference/array/sum.html). (https://github.com/toss/es-toolkit/pull/155)
873
-
874
- ## Version v1.9.0
875
-
876
- Released on July 10th, 2024.
877
-
878
- - Add support for [head](https://es-toolkit.slash.page/reference/array/head.html) and [tail](https://es-toolkit.slash.page/reference/array/tail.html). (https://github.com/toss/es-toolkit/pull/131, https://github.com/toss/es-toolkit/pull/143).
879
- - Add support for [unzip](https://es-toolkit.slash.page/reference/array/unzip.html). (https://github.com/toss/es-toolkit/pull/130)
880
- - Add support for [flatten](https://es-toolkit.slash.page/reference/array/flatten.html), which is six times faster than `Array#flat`. (https://github.com/toss/es-toolkit/pull/147)
881
-
882
- ## Version v1.8.0
883
-
884
- Released on July 5th, 2024.
885
-
886
- - Add support for [orderBy](https://es-toolkit.slash.page/reference/array/orderBy.html). (https://github.com/toss/es-toolkit/pull/123)
887
- - Add support for [invert](https://es-toolkit.slash.page/reference/array/invert.html). (https://github.com/toss/es-toolkit/pull/125)
888
- - Add support for [inRange](https://es-toolkit.slash.page/reference/array/inRange.html). (https://github.com/toss/es-toolkit/pull/124)
889
-
890
- ## Version v1.7.1
891
-
892
- Released on July 3rd, 2024.
893
-
894
- - Add support for [unzipWith](https://es-toolkit.slash.page/reference/array/unzipWith.html). (https://github.com/toss/es-toolkit/pull/113)
895
- - Add support for [forEachRight](https://es-toolkit.slash.page/reference/array/forEachRight.html). (https://github.com/toss/es-toolkit/pull/119)
896
- - Add support for [countBy](https://es-toolkit.slash.page/reference/array/countBy.html). (https://github.com/toss/es-toolkit/pull/117)
897
- - Add support for [without](https://es-toolkit.slash.page/reference/array/without.html). (https://github.com/toss/es-toolkit/pull/115)
898
- - Add support for [fill](https://es-toolkit.slash.page/reference/array/fill.html). (https://github.com/toss/es-toolkit/pull/109)
899
- - Add support for [sampleSize](https://es-toolkit.slash.page/reference/array/sampleSize.html). (https://github.com/toss/es-toolkit/pull/101)
900
- - Add support for [meanBy](https://es-toolkit.slash.page/reference/math/meanBy.html). (https://github.com/toss/es-toolkit/pull/104)
901
- - Accept number and symbol keys in [keyBy](https://es-toolkit.slash.page/reference/array/keyBy.html) and [groupBy](https://es-toolkit.slash.page/reference/array/groupBy.html) (https://github.com/toss/es-toolkit/pull/98, https://github.com/toss/es-toolkit/pull/99)
902
-
903
- ## Version v1.6.1
904
-
905
- Released on June 30th, 2024.
906
-
907
- - Publish package on [JSR](https://jsr.io/@es-toolkit/es-toolkit).
908
-
909
- ## Version v1.6.0
910
-
911
- Released on June 30th, 2024.
912
-
913
- ### Features
914
-
915
- - Add support for [keyBy](https://es-toolkit.slash.page/reference/array/keyBy.html). (https://github.com/toss/es-toolkit/pull/93).
916
- - Add support for [zipObject](https://es-toolkit.slash.page/reference/array/zipObject.html). (https://github.com/toss/es-toolkit/pull/92).
917
- - Add support for [compact](https://es-toolkit.slash.page/reference/array/compact.html). ([60ae59b](https://github.com/toss/es-toolkit/commit/60ae59bcfee69992e5447322e1da9cb7631c5745))
918
- - Add support for [mean](https://es-toolkit.slash.page/reference/math/mean.html). ([715bc60](https://github.com/toss/es-toolkit/commit/715bc60b26bb24ad490b8befe16204050699f0c0))
919
-
920
- ## Version v1.5.0
921
-
922
- Released on June 28th, 2024.
923
-
924
- ### Features
925
-
926
- - Add support for [range](https://es-toolkit.slash.page/reference/math/range.html). (https://github.com/toss/es-toolkit/pull/77, [2db11d8](https://github.com/toss/es-toolkit/commit/2db11d8882f6d7b0b53271c76f4c5007b6a9181e)).
927
- - Add support for [minBy](https://es-toolkit.slash.page/reference/math/minBy.html) (https://github.com/toss/es-toolkit/pull/71).
928
- - Add support for [maxBy](https://es-toolkit.slash.page/reference/math/maxBy.html) (https://github.com/toss/es-toolkit/pull/64).
929
-
930
- ### Bug fixes
931
-
932
- - Enforce stricter argument types in `pickBy` and `omitBy`. (https://github.com/toss/es-toolkit/pull/60)
933
- - Fix a bug in `difference` where one array parameter was not readonly. (https://github.com/toss/es-toolkit/pull/83)
934
- - Fix a bug in `round` where it incorrectly accepts floating-point numbers as `precision`. (https://github.com/toss/es-toolkit/pull/79)
935
-
936
- ## Version v1.4.0
937
-
938
- Released on June 15th, 2024.
939
-
940
- ### Features
941
-
942
- - Add support for [random](https://es-toolkit.slash.page/reference/math/random.html). (https://github.com/toss/es-toolkit/pull/53)
943
- - Add support for [randomInt](https://es-toolkit.slash.page/reference/math/randomInt.html). ([99a34e4](https://github.com/toss/es-toolkit/commit/99a34e4e9944c1b843e9d97dff0b5ff4e5eec260))
944
- - Add support for using AbortSignals to cancel the `Promise` returned by `delay`. (https://github.com/toss/es-toolkit/pull/52)
945
-
946
- ### Performance Optimizations
947
-
948
- - Optimized `uniqBy`. ([60e7974](https://github.com/toss/es-toolkit/commit/60e79741271e645bfa551f708466e43b136f69b1))
949
-
950
- ## Version v1.3.1
951
-
952
- Released on June 15th, 2024.
953
-
954
- - Fixed a bug in `dropWhile` where it incorrectly returned the entire array when no elements matched the predicate. (https://github.com/toss/es-toolkit/pull/49)
955
-
956
- ## Version v1.3.0
957
-
958
- Released on June 14th, 2024.
959
-
960
- ### Features
961
-
962
- - Add support for using AbortSignals to cancel `debounce`d functions. (https://github.com/toss/es-toolkit/pull/45)
963
-
964
- ### Performance Optimizations
965
-
966
- - Optimize the time complexity of `intersection`. (https://github.com/toss/es-toolkit/pull/47)
967
-
968
- ## Version v1.2.2
969
-
970
- Released on June 13th, 2024.
971
-
972
- - Add support for `readonly` arrays in array utilities. (https://github.com/toss/es-toolkit/pull/32, [e595e5e](https://github.com/toss/es-toolkit/commit/e595e5e017e1f2cb138b1ad3d708635efc5e289e))
973
- - Optimize the time complexity of `uniq`. (https://github.com/toss/es-toolkit/pull/40)
974
- - Optimize the time complexity of `intersectionBy`. (https://github.com/toss/es-toolkit/pull/44)
975
-
976
- ## Version v1.2.1
977
-
978
- Released on June 13th, 2024.
979
-
980
- - Ensure that the `omit` and `pick` functions only accept plain JavaScript objects as arguments. (https://github.com/toss/es-toolkit/pull/35)
981
-
982
- ## Version v1.2.0
983
-
984
- Released on June 8th, 2024.
985
-
986
- ### Features
987
-
988
- - Added the `noop` function. (https://github.com/toss/es-toolkit/commit/678028dd3d60509b99dfec47aed7f1088140d19d)
989
-
990
- ### Performance Improvements
991
-
992
- - Optimized the `difference` and `differenceBy` functions for better performance with large arrays. (https://github.com/toss/es-toolkit/pull/27, https://github.com/toss/es-toolkit/pull/28)
993
-
994
- ### Bug fixes
995
-
996
- - Fixed `shuffle` to ensure it does not modify the original array. (https://github.com/toss/es-toolkit/pull/29)
997
-
998
- ## Version v1.1.0
999
-
1000
- Released on June 5th, 2024.
1001
-
1002
- - Support passing arguments to throttled and debounced functions. (https://github.com/toss/es-toolkit/pull/26)
1003
-
1004
- ## Version v1.0.4
1005
-
1006
- Released on June 4th, 2024.
1007
-
1008
- - Provide correct type declarations for ECMAScript Modules. (https://github.com/toss/es-toolkit/pull/21)
1009
-
1010
- ## Version v1.0.3
1011
-
1012
- Released on June 3rd, 2024.
1013
-
1014
- - Provide correct types for `"module": "Node"`, ` "Node10"`, and `"Node16"`. (https://github.com/toss/es-toolkit/pull/16)
1015
-
1016
- ## Version v1.0.2
1017
-
1018
- Initial release. Released on May 31th, 2024.