es-toolkit 1.48.1 → 1.49.0

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 (403) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/array/chunkBy.d.mts +32 -0
  3. package/dist/array/chunkBy.d.ts +32 -0
  4. package/dist/array/chunkBy.js +42 -0
  5. package/dist/array/chunkBy.mjs +42 -0
  6. package/dist/array/index.d.mts +2 -1
  7. package/dist/array/index.d.ts +2 -1
  8. package/dist/array/index.js +2 -0
  9. package/dist/array/index.mjs +2 -1
  10. package/dist/array/take.d.mts +1 -7
  11. package/dist/array/take.d.ts +1 -7
  12. package/dist/array/take.js +1 -9
  13. package/dist/array/take.mjs +1 -9
  14. package/dist/array/takeRight.d.mts +2 -2
  15. package/dist/array/takeRight.d.ts +2 -2
  16. package/dist/array/takeRight.js +2 -4
  17. package/dist/array/takeRight.mjs +2 -4
  18. package/dist/array/windowed.d.mts +1 -1
  19. package/dist/array/windowed.d.ts +1 -1
  20. package/dist/browser.global.js +3 -3
  21. package/dist/compat/array/chunk.js +4 -2
  22. package/dist/compat/array/chunk.mjs +4 -2
  23. package/dist/compat/array/differenceBy.js +5 -5
  24. package/dist/compat/array/differenceBy.mjs +5 -5
  25. package/dist/compat/array/drop.d.mts +2 -3
  26. package/dist/compat/array/drop.d.ts +2 -3
  27. package/dist/compat/array/drop.js +4 -4
  28. package/dist/compat/array/drop.mjs +4 -4
  29. package/dist/compat/array/dropRight.js +1 -1
  30. package/dist/compat/array/dropRight.mjs +1 -1
  31. package/dist/compat/array/dropRightWhile.d.mts +1 -1
  32. package/dist/compat/array/dropRightWhile.d.ts +1 -1
  33. package/dist/compat/array/dropRightWhile.js +5 -4
  34. package/dist/compat/array/dropRightWhile.mjs +5 -4
  35. package/dist/compat/array/dropWhile.d.mts +2 -2
  36. package/dist/compat/array/dropWhile.d.ts +2 -2
  37. package/dist/compat/array/dropWhile.js +4 -4
  38. package/dist/compat/array/dropWhile.mjs +4 -4
  39. package/dist/compat/array/findLast.js +1 -1
  40. package/dist/compat/array/findLast.mjs +1 -1
  41. package/dist/compat/array/includes.js +1 -1
  42. package/dist/compat/array/includes.mjs +1 -1
  43. package/dist/compat/array/nth.js +1 -1
  44. package/dist/compat/array/nth.mjs +1 -1
  45. package/dist/compat/array/slice.js +1 -1
  46. package/dist/compat/array/slice.mjs +1 -1
  47. package/dist/compat/array/sortedIndexBy.js +1 -1
  48. package/dist/compat/array/sortedIndexBy.mjs +1 -1
  49. package/dist/compat/array/take.js +2 -2
  50. package/dist/compat/array/take.mjs +2 -2
  51. package/dist/compat/array/takeRight.js +1 -1
  52. package/dist/compat/array/takeRight.mjs +1 -1
  53. package/dist/compat/compat.js +4 -4
  54. package/dist/compat/compat.mjs +4 -4
  55. package/dist/compat/index.js +4 -4
  56. package/dist/compat/index.mjs +4 -4
  57. package/dist/compat/math/add.js +1 -1
  58. package/dist/compat/math/add.mjs +1 -1
  59. package/dist/compat/math/divide.js +1 -1
  60. package/dist/compat/math/divide.mjs +1 -1
  61. package/dist/compat/math/multiply.js +1 -1
  62. package/dist/compat/math/multiply.mjs +1 -1
  63. package/dist/compat/math/random.js +3 -1
  64. package/dist/compat/math/random.mjs +3 -1
  65. package/dist/compat/math/subtract.js +1 -1
  66. package/dist/compat/math/subtract.mjs +1 -1
  67. package/dist/compat/object/get.js +1 -1
  68. package/dist/compat/object/get.mjs +1 -1
  69. package/dist/compat/object/omitBy.js +1 -1
  70. package/dist/compat/object/omitBy.mjs +1 -1
  71. package/dist/compat/object/pick.js +1 -1
  72. package/dist/compat/object/pick.mjs +1 -1
  73. package/dist/compat/object/pickBy.js +1 -1
  74. package/dist/compat/object/pickBy.mjs +1 -1
  75. package/dist/compat/string/repeat.js +1 -1
  76. package/dist/compat/string/repeat.mjs +1 -1
  77. package/dist/fp/_internal/lazy.js +58 -0
  78. package/dist/fp/_internal/lazy.mjs +57 -0
  79. package/dist/fp/array/at.d.mts +20 -0
  80. package/dist/fp/array/at.d.ts +20 -0
  81. package/dist/fp/array/at.js +25 -0
  82. package/dist/fp/array/at.mjs +25 -0
  83. package/dist/fp/array/cartesianProduct.d.mts +61 -0
  84. package/dist/fp/array/cartesianProduct.d.ts +61 -0
  85. package/dist/fp/array/cartesianProduct.js +9 -0
  86. package/dist/fp/array/cartesianProduct.mjs +9 -0
  87. package/dist/fp/array/chunk.d.mts +19 -0
  88. package/dist/fp/array/chunk.d.ts +19 -0
  89. package/dist/fp/array/chunk.js +24 -0
  90. package/dist/fp/array/chunk.mjs +24 -0
  91. package/dist/fp/array/chunkBy.d.mts +20 -0
  92. package/dist/fp/array/chunkBy.d.ts +20 -0
  93. package/dist/fp/array/chunkBy.js +25 -0
  94. package/dist/fp/array/chunkBy.mjs +25 -0
  95. package/dist/fp/array/combinations.d.mts +21 -0
  96. package/dist/fp/array/combinations.d.ts +21 -0
  97. package/dist/fp/array/combinations.js +26 -0
  98. package/dist/fp/array/combinations.mjs +26 -0
  99. package/dist/fp/array/compact.d.mts +22 -0
  100. package/dist/fp/array/compact.d.ts +22 -0
  101. package/dist/fp/array/compact.js +31 -0
  102. package/dist/fp/array/compact.mjs +30 -0
  103. package/dist/fp/array/countBy.d.mts +21 -0
  104. package/dist/fp/array/countBy.d.ts +21 -0
  105. package/dist/fp/array/countBy.js +26 -0
  106. package/dist/fp/array/countBy.mjs +26 -0
  107. package/dist/fp/array/difference.d.mts +21 -0
  108. package/dist/fp/array/difference.d.ts +21 -0
  109. package/dist/fp/array/difference.js +32 -0
  110. package/dist/fp/array/difference.mjs +31 -0
  111. package/dist/fp/array/differenceBy.d.mts +22 -0
  112. package/dist/fp/array/differenceBy.d.ts +22 -0
  113. package/dist/fp/array/differenceBy.js +33 -0
  114. package/dist/fp/array/differenceBy.mjs +32 -0
  115. package/dist/fp/array/differenceWith.d.mts +22 -0
  116. package/dist/fp/array/differenceWith.d.ts +22 -0
  117. package/dist/fp/array/differenceWith.js +32 -0
  118. package/dist/fp/array/differenceWith.mjs +31 -0
  119. package/dist/fp/array/drop.d.mts +20 -0
  120. package/dist/fp/array/drop.d.ts +20 -0
  121. package/dist/fp/array/drop.js +31 -0
  122. package/dist/fp/array/drop.mjs +30 -0
  123. package/dist/fp/array/dropRight.d.mts +20 -0
  124. package/dist/fp/array/dropRight.d.ts +20 -0
  125. package/dist/fp/array/dropRight.js +25 -0
  126. package/dist/fp/array/dropRight.mjs +25 -0
  127. package/dist/fp/array/dropRightWhile.d.mts +20 -0
  128. package/dist/fp/array/dropRightWhile.d.ts +20 -0
  129. package/dist/fp/array/dropRightWhile.js +25 -0
  130. package/dist/fp/array/dropRightWhile.mjs +25 -0
  131. package/dist/fp/array/dropWhile.d.mts +20 -0
  132. package/dist/fp/array/dropWhile.d.ts +20 -0
  133. package/dist/fp/array/dropWhile.js +36 -0
  134. package/dist/fp/array/dropWhile.mjs +36 -0
  135. package/dist/fp/array/filter.d.mts +45 -0
  136. package/dist/fp/array/filter.d.ts +45 -0
  137. package/dist/fp/array/filter.js +13 -0
  138. package/dist/fp/array/filter.mjs +12 -0
  139. package/dist/fp/array/find.d.mts +39 -0
  140. package/dist/fp/array/find.d.ts +39 -0
  141. package/dist/fp/array/find.js +8 -0
  142. package/dist/fp/array/find.mjs +8 -0
  143. package/dist/fp/array/findIndex.d.mts +20 -0
  144. package/dist/fp/array/findIndex.d.ts +20 -0
  145. package/dist/fp/array/findIndex.js +24 -0
  146. package/dist/fp/array/findIndex.mjs +24 -0
  147. package/dist/fp/array/findLast.d.mts +39 -0
  148. package/dist/fp/array/findLast.d.ts +39 -0
  149. package/dist/fp/array/findLast.js +11 -0
  150. package/dist/fp/array/findLast.mjs +11 -0
  151. package/dist/fp/array/findLastIndex.d.mts +20 -0
  152. package/dist/fp/array/findLastIndex.d.ts +20 -0
  153. package/dist/fp/array/findLastIndex.js +25 -0
  154. package/dist/fp/array/findLastIndex.mjs +25 -0
  155. package/dist/fp/array/flatMap.d.mts +28 -0
  156. package/dist/fp/array/flatMap.d.ts +28 -0
  157. package/dist/fp/array/flatMap.js +39 -0
  158. package/dist/fp/array/flatMap.mjs +38 -0
  159. package/dist/fp/array/flatMapDeep.d.mts +23 -0
  160. package/dist/fp/array/flatMapDeep.d.ts +23 -0
  161. package/dist/fp/array/flatMapDeep.js +38 -0
  162. package/dist/fp/array/flatMapDeep.mjs +37 -0
  163. package/dist/fp/array/flatten.d.mts +21 -0
  164. package/dist/fp/array/flatten.d.ts +21 -0
  165. package/dist/fp/array/flatten.js +39 -0
  166. package/dist/fp/array/flatten.mjs +38 -0
  167. package/dist/fp/array/flattenDeep.d.mts +21 -0
  168. package/dist/fp/array/flattenDeep.d.ts +21 -0
  169. package/dist/fp/array/flattenDeep.js +36 -0
  170. package/dist/fp/array/flattenDeep.mjs +35 -0
  171. package/dist/fp/array/forEach.d.mts +22 -0
  172. package/dist/fp/array/forEach.d.ts +22 -0
  173. package/dist/fp/array/forEach.js +33 -0
  174. package/dist/fp/array/forEach.mjs +32 -0
  175. package/dist/fp/array/groupBy.d.mts +21 -0
  176. package/dist/fp/array/groupBy.d.ts +21 -0
  177. package/dist/fp/array/groupBy.js +26 -0
  178. package/dist/fp/array/groupBy.mjs +26 -0
  179. package/dist/fp/array/head.d.mts +35 -0
  180. package/dist/fp/array/head.d.ts +35 -0
  181. package/dist/fp/array/head.js +9 -0
  182. package/dist/fp/array/head.mjs +9 -0
  183. package/dist/fp/array/index.d.mts +69 -0
  184. package/dist/fp/array/index.d.ts +69 -0
  185. package/dist/fp/array/index.js +68 -0
  186. package/dist/fp/array/index.mjs +68 -0
  187. package/dist/fp/array/initial.d.mts +19 -0
  188. package/dist/fp/array/initial.d.ts +19 -0
  189. package/dist/fp/array/initial.js +24 -0
  190. package/dist/fp/array/initial.mjs +24 -0
  191. package/dist/fp/array/intersection.d.mts +21 -0
  192. package/dist/fp/array/intersection.d.ts +21 -0
  193. package/dist/fp/array/intersection.js +32 -0
  194. package/dist/fp/array/intersection.mjs +31 -0
  195. package/dist/fp/array/intersectionBy.d.mts +22 -0
  196. package/dist/fp/array/intersectionBy.d.ts +22 -0
  197. package/dist/fp/array/intersectionBy.js +33 -0
  198. package/dist/fp/array/intersectionBy.mjs +32 -0
  199. package/dist/fp/array/intersectionWith.d.mts +22 -0
  200. package/dist/fp/array/intersectionWith.d.ts +22 -0
  201. package/dist/fp/array/intersectionWith.js +32 -0
  202. package/dist/fp/array/intersectionWith.mjs +31 -0
  203. package/dist/fp/array/isSubset.d.mts +20 -0
  204. package/dist/fp/array/isSubset.d.ts +20 -0
  205. package/dist/fp/array/isSubset.js +25 -0
  206. package/dist/fp/array/isSubset.mjs +25 -0
  207. package/dist/fp/array/isSubsetWith.d.mts +21 -0
  208. package/dist/fp/array/isSubsetWith.d.ts +21 -0
  209. package/dist/fp/array/isSubsetWith.js +26 -0
  210. package/dist/fp/array/isSubsetWith.mjs +26 -0
  211. package/dist/fp/array/join.d.mts +20 -0
  212. package/dist/fp/array/join.d.ts +20 -0
  213. package/dist/fp/array/join.js +24 -0
  214. package/dist/fp/array/join.mjs +24 -0
  215. package/dist/fp/array/keyBy.d.mts +21 -0
  216. package/dist/fp/array/keyBy.d.ts +21 -0
  217. package/dist/fp/array/keyBy.js +26 -0
  218. package/dist/fp/array/keyBy.mjs +26 -0
  219. package/dist/fp/array/last.d.mts +35 -0
  220. package/dist/fp/array/last.d.ts +35 -0
  221. package/dist/fp/array/last.js +9 -0
  222. package/dist/fp/array/last.mjs +9 -0
  223. package/dist/fp/array/length.d.mts +18 -0
  224. package/dist/fp/array/length.d.ts +18 -0
  225. package/dist/fp/array/length.js +22 -0
  226. package/dist/fp/array/length.mjs +22 -0
  227. package/dist/fp/array/map.d.mts +27 -0
  228. package/dist/fp/array/map.d.ts +27 -0
  229. package/dist/fp/array/map.js +36 -0
  230. package/dist/fp/array/map.mjs +35 -0
  231. package/dist/fp/array/maxBy.d.mts +37 -0
  232. package/dist/fp/array/maxBy.d.ts +37 -0
  233. package/dist/fp/array/maxBy.js +9 -0
  234. package/dist/fp/array/maxBy.mjs +9 -0
  235. package/dist/fp/array/minBy.d.mts +37 -0
  236. package/dist/fp/array/minBy.d.ts +37 -0
  237. package/dist/fp/array/minBy.js +9 -0
  238. package/dist/fp/array/minBy.mjs +9 -0
  239. package/dist/fp/array/orderBy.d.mts +21 -0
  240. package/dist/fp/array/orderBy.d.ts +21 -0
  241. package/dist/fp/array/orderBy.js +26 -0
  242. package/dist/fp/array/orderBy.mjs +26 -0
  243. package/dist/fp/array/partition.d.mts +39 -0
  244. package/dist/fp/array/partition.d.ts +39 -0
  245. package/dist/fp/array/partition.js +9 -0
  246. package/dist/fp/array/partition.mjs +9 -0
  247. package/dist/fp/array/reverse.d.mts +19 -0
  248. package/dist/fp/array/reverse.d.ts +19 -0
  249. package/dist/fp/array/reverse.js +23 -0
  250. package/dist/fp/array/reverse.mjs +23 -0
  251. package/dist/fp/array/sample.d.mts +18 -0
  252. package/dist/fp/array/sample.d.ts +18 -0
  253. package/dist/fp/array/sample.js +23 -0
  254. package/dist/fp/array/sample.mjs +23 -0
  255. package/dist/fp/array/sampleSize.d.mts +20 -0
  256. package/dist/fp/array/sampleSize.d.ts +20 -0
  257. package/dist/fp/array/sampleSize.js +25 -0
  258. package/dist/fp/array/sampleSize.mjs +25 -0
  259. package/dist/fp/array/shuffle.d.mts +19 -0
  260. package/dist/fp/array/shuffle.d.ts +19 -0
  261. package/dist/fp/array/shuffle.js +24 -0
  262. package/dist/fp/array/shuffle.mjs +24 -0
  263. package/dist/fp/array/sortBy.d.mts +26 -0
  264. package/dist/fp/array/sortBy.d.ts +26 -0
  265. package/dist/fp/array/sortBy.js +31 -0
  266. package/dist/fp/array/sortBy.mjs +31 -0
  267. package/dist/fp/array/tail.d.mts +19 -0
  268. package/dist/fp/array/tail.d.ts +19 -0
  269. package/dist/fp/array/tail.js +24 -0
  270. package/dist/fp/array/tail.mjs +24 -0
  271. package/dist/fp/array/take.d.mts +26 -0
  272. package/dist/fp/array/take.d.ts +26 -0
  273. package/dist/fp/array/take.js +39 -0
  274. package/dist/fp/array/take.mjs +38 -0
  275. package/dist/fp/array/takeRight.d.mts +20 -0
  276. package/dist/fp/array/takeRight.d.ts +20 -0
  277. package/dist/fp/array/takeRight.js +25 -0
  278. package/dist/fp/array/takeRight.mjs +25 -0
  279. package/dist/fp/array/takeRightWhile.d.mts +20 -0
  280. package/dist/fp/array/takeRightWhile.d.ts +20 -0
  281. package/dist/fp/array/takeRightWhile.js +25 -0
  282. package/dist/fp/array/takeRightWhile.mjs +25 -0
  283. package/dist/fp/array/takeWhile.d.mts +21 -0
  284. package/dist/fp/array/takeWhile.d.ts +21 -0
  285. package/dist/fp/array/takeWhile.js +32 -0
  286. package/dist/fp/array/takeWhile.mjs +31 -0
  287. package/dist/fp/array/toFilled.d.mts +23 -0
  288. package/dist/fp/array/toFilled.d.ts +23 -0
  289. package/dist/fp/array/toFilled.js +30 -0
  290. package/dist/fp/array/toFilled.mjs +30 -0
  291. package/dist/fp/array/union.d.mts +20 -0
  292. package/dist/fp/array/union.d.ts +20 -0
  293. package/dist/fp/array/union.js +25 -0
  294. package/dist/fp/array/union.mjs +25 -0
  295. package/dist/fp/array/unionBy.d.mts +22 -0
  296. package/dist/fp/array/unionBy.d.ts +22 -0
  297. package/dist/fp/array/unionBy.js +27 -0
  298. package/dist/fp/array/unionBy.mjs +27 -0
  299. package/dist/fp/array/unionWith.d.mts +21 -0
  300. package/dist/fp/array/unionWith.d.ts +21 -0
  301. package/dist/fp/array/unionWith.js +26 -0
  302. package/dist/fp/array/unionWith.mjs +26 -0
  303. package/dist/fp/array/uniq.d.mts +21 -0
  304. package/dist/fp/array/uniq.d.ts +21 -0
  305. package/dist/fp/array/uniq.js +36 -0
  306. package/dist/fp/array/uniq.mjs +36 -0
  307. package/dist/fp/array/uniqBy.d.mts +21 -0
  308. package/dist/fp/array/uniqBy.d.ts +21 -0
  309. package/dist/fp/array/uniqBy.js +38 -0
  310. package/dist/fp/array/uniqBy.mjs +38 -0
  311. package/dist/fp/array/uniqWith.d.mts +20 -0
  312. package/dist/fp/array/uniqWith.d.ts +20 -0
  313. package/dist/fp/array/uniqWith.js +35 -0
  314. package/dist/fp/array/uniqWith.mjs +35 -0
  315. package/dist/fp/array/unzip.d.mts +20 -0
  316. package/dist/fp/array/unzip.d.ts +20 -0
  317. package/dist/fp/array/unzip.js +24 -0
  318. package/dist/fp/array/unzip.mjs +24 -0
  319. package/dist/fp/array/unzipWith.d.mts +21 -0
  320. package/dist/fp/array/unzipWith.d.ts +21 -0
  321. package/dist/fp/array/unzipWith.js +26 -0
  322. package/dist/fp/array/unzipWith.mjs +26 -0
  323. package/dist/fp/array/windowed.d.mts +25 -0
  324. package/dist/fp/array/windowed.d.ts +25 -0
  325. package/dist/fp/array/windowed.js +50 -0
  326. package/dist/fp/array/windowed.mjs +50 -0
  327. package/dist/fp/array/without.d.mts +19 -0
  328. package/dist/fp/array/without.d.ts +19 -0
  329. package/dist/fp/array/without.js +30 -0
  330. package/dist/fp/array/without.mjs +29 -0
  331. package/dist/fp/array/xor.d.mts +20 -0
  332. package/dist/fp/array/xor.d.ts +20 -0
  333. package/dist/fp/array/xor.js +25 -0
  334. package/dist/fp/array/xor.mjs +25 -0
  335. package/dist/fp/array/xorBy.d.mts +22 -0
  336. package/dist/fp/array/xorBy.d.ts +22 -0
  337. package/dist/fp/array/xorBy.js +27 -0
  338. package/dist/fp/array/xorBy.mjs +27 -0
  339. package/dist/fp/array/xorWith.d.mts +21 -0
  340. package/dist/fp/array/xorWith.d.ts +21 -0
  341. package/dist/fp/array/xorWith.js +26 -0
  342. package/dist/fp/array/xorWith.mjs +26 -0
  343. package/dist/fp/array/zip.d.mts +61 -0
  344. package/dist/fp/array/zip.d.ts +61 -0
  345. package/dist/fp/array/zip.js +9 -0
  346. package/dist/fp/array/zip.mjs +9 -0
  347. package/dist/fp/array/zipObject.d.mts +21 -0
  348. package/dist/fp/array/zipObject.d.ts +21 -0
  349. package/dist/fp/array/zipObject.js +26 -0
  350. package/dist/fp/array/zipObject.mjs +26 -0
  351. package/dist/fp/array/zipWith.d.mts +57 -0
  352. package/dist/fp/array/zipWith.d.ts +57 -0
  353. package/dist/fp/array/zipWith.js +9 -0
  354. package/dist/fp/array/zipWith.mjs +9 -0
  355. package/dist/fp/index.d.mts +75 -0
  356. package/dist/fp/index.d.ts +75 -0
  357. package/dist/fp/index.js +150 -0
  358. package/dist/fp/index.mjs +77 -0
  359. package/dist/fp/math/add.d.mts +17 -0
  360. package/dist/fp/math/add.d.ts +17 -0
  361. package/dist/fp/math/add.js +21 -0
  362. package/dist/fp/math/add.mjs +21 -0
  363. package/dist/fp/math/index.d.mts +2 -0
  364. package/dist/fp/math/index.d.ts +2 -0
  365. package/dist/fp/math/index.js +2 -0
  366. package/dist/fp/math/index.mjs +2 -0
  367. package/dist/fp/math/multiply.d.mts +17 -0
  368. package/dist/fp/math/multiply.d.ts +17 -0
  369. package/dist/fp/math/multiply.js +21 -0
  370. package/dist/fp/math/multiply.mjs +21 -0
  371. package/dist/fp/object/index.d.mts +2 -0
  372. package/dist/fp/object/index.d.ts +2 -0
  373. package/dist/fp/object/index.js +2 -0
  374. package/dist/fp/object/index.mjs +2 -0
  375. package/dist/fp/object/omit.d.mts +18 -0
  376. package/dist/fp/object/omit.d.ts +18 -0
  377. package/dist/fp/object/omit.js +23 -0
  378. package/dist/fp/object/omit.mjs +23 -0
  379. package/dist/fp/object/pick.d.mts +19 -0
  380. package/dist/fp/object/pick.d.ts +19 -0
  381. package/dist/fp/object/pick.js +24 -0
  382. package/dist/fp/object/pick.mjs +24 -0
  383. package/dist/fp/pipe.d.mts +235 -0
  384. package/dist/fp/pipe.d.ts +235 -0
  385. package/dist/fp/pipe.js +116 -0
  386. package/dist/fp/pipe.mjs +116 -0
  387. package/dist/index.d.mts +3 -1
  388. package/dist/index.d.ts +3 -1
  389. package/dist/index.js +4 -0
  390. package/dist/index.mjs +3 -1
  391. package/dist/predicate/index.d.mts +2 -1
  392. package/dist/predicate/index.d.ts +2 -1
  393. package/dist/predicate/index.js +2 -0
  394. package/dist/predicate/index.mjs +2 -1
  395. package/dist/predicate/isIterable.d.mts +26 -0
  396. package/dist/predicate/isIterable.d.ts +26 -0
  397. package/dist/predicate/isIterable.js +28 -0
  398. package/dist/predicate/isIterable.mjs +28 -0
  399. package/dist/string/trimStart.js +1 -0
  400. package/dist/string/trimStart.mjs +1 -0
  401. package/fp.d.ts +1 -0
  402. package/fp.js +1 -0
  403. package/package.json +22 -1
@@ -0,0 +1,22 @@
1
+ //#region src/fp/array/forEach.d.ts
2
+ /**
3
+ * Creates a function that runs a callback for every element and returns the original array.
4
+ *
5
+ * This mirrors Remeda's pipeline-friendly `forEach` behavior: the side effect
6
+ * runs, then the input continues through the pipeline by reference. The returned
7
+ * function is lazy-capable inside {@link pipe}; when followed by a
8
+ * short-circuiting operator, the callback only runs for consumed values.
9
+ *
10
+ * @template T - The type of elements in the array.
11
+ * @param callback - Called with each value and index.
12
+ * @returns A function that performs the side effect and returns the original array.
13
+ *
14
+ * @example
15
+ * import { forEach, map, pipe } from 'es-toolkit/fp';
16
+ *
17
+ * pipe([1, 2, 3], forEach(value => console.log(value)), map(value => value * 2));
18
+ * // => [2, 4, 6]
19
+ */
20
+ declare function forEach<T>(callback: (value: T, index: number) => void): (array: readonly T[]) => readonly T[];
21
+ //#endregion
22
+ export { forEach };
@@ -0,0 +1,22 @@
1
+ //#region src/fp/array/forEach.d.ts
2
+ /**
3
+ * Creates a function that runs a callback for every element and returns the original array.
4
+ *
5
+ * This mirrors Remeda's pipeline-friendly `forEach` behavior: the side effect
6
+ * runs, then the input continues through the pipeline by reference. The returned
7
+ * function is lazy-capable inside {@link pipe}; when followed by a
8
+ * short-circuiting operator, the callback only runs for consumed values.
9
+ *
10
+ * @template T - The type of elements in the array.
11
+ * @param callback - Called with each value and index.
12
+ * @returns A function that performs the side effect and returns the original array.
13
+ *
14
+ * @example
15
+ * import { forEach, map, pipe } from 'es-toolkit/fp';
16
+ *
17
+ * pipe([1, 2, 3], forEach(value => console.log(value)), map(value => value * 2));
18
+ * // => [2, 4, 6]
19
+ */
20
+ declare function forEach<T>(callback: (value: T, index: number) => void): (array: readonly T[]) => readonly T[];
21
+ //#endregion
22
+ export { forEach };
@@ -0,0 +1,33 @@
1
+ const require_lazy = require("../_internal/lazy.js");
2
+ //#region src/fp/array/forEach.ts
3
+ /**
4
+ * Creates a function that runs a callback for every element and returns the original array.
5
+ *
6
+ * This mirrors Remeda's pipeline-friendly `forEach` behavior: the side effect
7
+ * runs, then the input continues through the pipeline by reference. The returned
8
+ * function is lazy-capable inside {@link pipe}; when followed by a
9
+ * short-circuiting operator, the callback only runs for consumed values.
10
+ *
11
+ * @template T - The type of elements in the array.
12
+ * @param callback - Called with each value and index.
13
+ * @returns A function that performs the side effect and returns the original array.
14
+ *
15
+ * @example
16
+ * import { forEach, map, pipe } from 'es-toolkit/fp';
17
+ *
18
+ * pipe([1, 2, 3], forEach(value => console.log(value)), map(value => value * 2));
19
+ * // => [2, 4, 6]
20
+ */
21
+ function forEach(callback) {
22
+ function forEachEager(array) {
23
+ array.forEach(callback);
24
+ return array;
25
+ }
26
+ const forEachLazy = require_lazy.createLazyFunction((value, index, emit) => {
27
+ callback(value, index);
28
+ emit(value);
29
+ });
30
+ return require_lazy.combineEagerAndLazyFunctions(forEachEager, forEachLazy);
31
+ }
32
+ //#endregion
33
+ exports.forEach = forEach;
@@ -0,0 +1,32 @@
1
+ import { combineEagerAndLazyFunctions, createLazyFunction } from "../_internal/lazy.mjs";
2
+ //#region src/fp/array/forEach.ts
3
+ /**
4
+ * Creates a function that runs a callback for every element and returns the original array.
5
+ *
6
+ * This mirrors Remeda's pipeline-friendly `forEach` behavior: the side effect
7
+ * runs, then the input continues through the pipeline by reference. The returned
8
+ * function is lazy-capable inside {@link pipe}; when followed by a
9
+ * short-circuiting operator, the callback only runs for consumed values.
10
+ *
11
+ * @template T - The type of elements in the array.
12
+ * @param callback - Called with each value and index.
13
+ * @returns A function that performs the side effect and returns the original array.
14
+ *
15
+ * @example
16
+ * import { forEach, map, pipe } from 'es-toolkit/fp';
17
+ *
18
+ * pipe([1, 2, 3], forEach(value => console.log(value)), map(value => value * 2));
19
+ * // => [2, 4, 6]
20
+ */
21
+ function forEach(callback) {
22
+ function forEachEager(array) {
23
+ array.forEach(callback);
24
+ return array;
25
+ }
26
+ return combineEagerAndLazyFunctions(forEachEager, createLazyFunction((value, index, emit) => {
27
+ callback(value, index);
28
+ emit(value);
29
+ }));
30
+ }
31
+ //#endregion
32
+ export { forEach };
@@ -0,0 +1,21 @@
1
+ //#region src/fp/array/groupBy.d.ts
2
+ /**
3
+ * Creates a function that groups values by a derived key.
4
+ *
5
+ * The key selector receives each value, index, and full input array. Values that produce
6
+ * the same key are collected in insertion order.
7
+ *
8
+ * @template T - The type of elements in the array.
9
+ * @template K - The property-key type produced by the selector.
10
+ * @param getKey - Called with each value, index, and array to produce a group key.
11
+ * @returns A function that maps a readonly array to grouped values.
12
+ *
13
+ * @example
14
+ * import { groupBy, pipe } from 'es-toolkit/fp';
15
+ *
16
+ * pipe(['ant', 'bear', 'cat'], groupBy(word => word.length));
17
+ * // => { 3: ['ant', 'cat'], 4: ['bear'] }
18
+ */
19
+ declare function groupBy<T, K extends PropertyKey>(getKey: (item: T, index: number, array: readonly T[]) => K): (array: readonly T[]) => Record<K, T[]>;
20
+ //#endregion
21
+ export { groupBy };
@@ -0,0 +1,21 @@
1
+ //#region src/fp/array/groupBy.d.ts
2
+ /**
3
+ * Creates a function that groups values by a derived key.
4
+ *
5
+ * The key selector receives each value, index, and full input array. Values that produce
6
+ * the same key are collected in insertion order.
7
+ *
8
+ * @template T - The type of elements in the array.
9
+ * @template K - The property-key type produced by the selector.
10
+ * @param getKey - Called with each value, index, and array to produce a group key.
11
+ * @returns A function that maps a readonly array to grouped values.
12
+ *
13
+ * @example
14
+ * import { groupBy, pipe } from 'es-toolkit/fp';
15
+ *
16
+ * pipe(['ant', 'bear', 'cat'], groupBy(word => word.length));
17
+ * // => { 3: ['ant', 'cat'], 4: ['bear'] }
18
+ */
19
+ declare function groupBy<T, K extends PropertyKey>(getKey: (item: T, index: number, array: readonly T[]) => K): (array: readonly T[]) => Record<K, T[]>;
20
+ //#endregion
21
+ export { groupBy };
@@ -0,0 +1,26 @@
1
+ const require_groupBy = require("../../array/groupBy.js");
2
+ //#region src/fp/array/groupBy.ts
3
+ /**
4
+ * Creates a function that groups values by a derived key.
5
+ *
6
+ * The key selector receives each value, index, and full input array. Values that produce
7
+ * the same key are collected in insertion order.
8
+ *
9
+ * @template T - The type of elements in the array.
10
+ * @template K - The property-key type produced by the selector.
11
+ * @param getKey - Called with each value, index, and array to produce a group key.
12
+ * @returns A function that maps a readonly array to grouped values.
13
+ *
14
+ * @example
15
+ * import { groupBy, pipe } from 'es-toolkit/fp';
16
+ *
17
+ * pipe(['ant', 'bear', 'cat'], groupBy(word => word.length));
18
+ * // => { 3: ['ant', 'cat'], 4: ['bear'] }
19
+ */
20
+ function groupBy(getKey) {
21
+ return function(array) {
22
+ return require_groupBy.groupBy(array, getKey);
23
+ };
24
+ }
25
+ //#endregion
26
+ exports.groupBy = groupBy;
@@ -0,0 +1,26 @@
1
+ import { groupBy as groupBy$1 } from "../../array/groupBy.mjs";
2
+ //#region src/fp/array/groupBy.ts
3
+ /**
4
+ * Creates a function that groups values by a derived key.
5
+ *
6
+ * The key selector receives each value, index, and full input array. Values that produce
7
+ * the same key are collected in insertion order.
8
+ *
9
+ * @template T - The type of elements in the array.
10
+ * @template K - The property-key type produced by the selector.
11
+ * @param getKey - Called with each value, index, and array to produce a group key.
12
+ * @returns A function that maps a readonly array to grouped values.
13
+ *
14
+ * @example
15
+ * import { groupBy, pipe } from 'es-toolkit/fp';
16
+ *
17
+ * pipe(['ant', 'bear', 'cat'], groupBy(word => word.length));
18
+ * // => { 3: ['ant', 'cat'], 4: ['bear'] }
19
+ */
20
+ function groupBy(getKey) {
21
+ return function(array) {
22
+ return groupBy$1(array, getKey);
23
+ };
24
+ }
25
+ //#endregion
26
+ export { groupBy };
@@ -0,0 +1,35 @@
1
+ //#region src/fp/array/head.d.ts
2
+ /**
3
+ * Creates a function that returns the first element of a non-empty array.
4
+ *
5
+ * This overload preserves the non-empty tuple guarantee: the returned function
6
+ * always returns T when the piped array has at least one element.
7
+ *
8
+ * @template T - The type of elements in the array.
9
+ * @returns A function that maps a non-empty readonly array to its first element.
10
+ *
11
+ * @example
12
+ * import { head, pipe } from 'es-toolkit/fp';
13
+ *
14
+ * pipe([1, 2, 3] as const, head());
15
+ * // => 1
16
+ */
17
+ declare function head<T>(): (array: readonly [T, ...T[]]) => T;
18
+ /**
19
+ * Creates a function that returns the first element of an array, or undefined.
20
+ *
21
+ * Empty arrays return undefined, matching the main {@link head} behavior. Use
22
+ * the returned function with {@link pipe}.
23
+ *
24
+ * @template T - The type of elements in the array.
25
+ * @returns A function that maps a readonly array to its first element, or undefined.
26
+ *
27
+ * @example
28
+ * import { head, pipe } from 'es-toolkit/fp';
29
+ *
30
+ * pipe([] as number[], head());
31
+ * // => undefined
32
+ */
33
+ declare function head<T>(): (array: readonly T[]) => T | undefined;
34
+ //#endregion
35
+ export { head };
@@ -0,0 +1,35 @@
1
+ //#region src/fp/array/head.d.ts
2
+ /**
3
+ * Creates a function that returns the first element of a non-empty array.
4
+ *
5
+ * This overload preserves the non-empty tuple guarantee: the returned function
6
+ * always returns T when the piped array has at least one element.
7
+ *
8
+ * @template T - The type of elements in the array.
9
+ * @returns A function that maps a non-empty readonly array to its first element.
10
+ *
11
+ * @example
12
+ * import { head, pipe } from 'es-toolkit/fp';
13
+ *
14
+ * pipe([1, 2, 3] as const, head());
15
+ * // => 1
16
+ */
17
+ declare function head<T>(): (array: readonly [T, ...T[]]) => T;
18
+ /**
19
+ * Creates a function that returns the first element of an array, or undefined.
20
+ *
21
+ * Empty arrays return undefined, matching the main {@link head} behavior. Use
22
+ * the returned function with {@link pipe}.
23
+ *
24
+ * @template T - The type of elements in the array.
25
+ * @returns A function that maps a readonly array to its first element, or undefined.
26
+ *
27
+ * @example
28
+ * import { head, pipe } from 'es-toolkit/fp';
29
+ *
30
+ * pipe([] as number[], head());
31
+ * // => undefined
32
+ */
33
+ declare function head<T>(): (array: readonly T[]) => T | undefined;
34
+ //#endregion
35
+ export { head };
@@ -0,0 +1,9 @@
1
+ const require_head = require("../../array/head.js");
2
+ //#region src/fp/array/head.ts
3
+ function head() {
4
+ return function(array) {
5
+ return require_head.head(array);
6
+ };
7
+ }
8
+ //#endregion
9
+ exports.head = head;
@@ -0,0 +1,9 @@
1
+ import { head as head$1 } from "../../array/head.mjs";
2
+ //#region src/fp/array/head.ts
3
+ function head() {
4
+ return function(array) {
5
+ return head$1(array);
6
+ };
7
+ }
8
+ //#endregion
9
+ export { head };
@@ -0,0 +1,69 @@
1
+ import { WindowedOptions } from "../../array/windowed.mjs";
2
+ import { at } from "./at.mjs";
3
+ import { cartesianProduct } from "./cartesianProduct.mjs";
4
+ import { chunk } from "./chunk.mjs";
5
+ import { chunkBy } from "./chunkBy.mjs";
6
+ import { combinations } from "./combinations.mjs";
7
+ import { compact } from "./compact.mjs";
8
+ import { countBy } from "./countBy.mjs";
9
+ import { difference } from "./difference.mjs";
10
+ import { differenceBy } from "./differenceBy.mjs";
11
+ import { differenceWith } from "./differenceWith.mjs";
12
+ import { drop } from "./drop.mjs";
13
+ import { dropRight } from "./dropRight.mjs";
14
+ import { dropRightWhile } from "./dropRightWhile.mjs";
15
+ import { dropWhile } from "./dropWhile.mjs";
16
+ import { filter } from "./filter.mjs";
17
+ import { find } from "./find.mjs";
18
+ import { findIndex } from "./findIndex.mjs";
19
+ import { findLast } from "./findLast.mjs";
20
+ import { findLastIndex } from "./findLastIndex.mjs";
21
+ import { flatMap } from "./flatMap.mjs";
22
+ import { flatMapDeep } from "./flatMapDeep.mjs";
23
+ import { flatten } from "./flatten.mjs";
24
+ import { flattenDeep } from "./flattenDeep.mjs";
25
+ import { forEach } from "./forEach.mjs";
26
+ import { groupBy } from "./groupBy.mjs";
27
+ import { head } from "./head.mjs";
28
+ import { initial } from "./initial.mjs";
29
+ import { intersection } from "./intersection.mjs";
30
+ import { intersectionBy } from "./intersectionBy.mjs";
31
+ import { intersectionWith } from "./intersectionWith.mjs";
32
+ import { isSubset } from "./isSubset.mjs";
33
+ import { isSubsetWith } from "./isSubsetWith.mjs";
34
+ import { join } from "./join.mjs";
35
+ import { keyBy } from "./keyBy.mjs";
36
+ import { last } from "./last.mjs";
37
+ import { length } from "./length.mjs";
38
+ import { map } from "./map.mjs";
39
+ import { maxBy } from "./maxBy.mjs";
40
+ import { minBy } from "./minBy.mjs";
41
+ import { orderBy } from "./orderBy.mjs";
42
+ import { partition } from "./partition.mjs";
43
+ import { reverse } from "./reverse.mjs";
44
+ import { sample } from "./sample.mjs";
45
+ import { sampleSize } from "./sampleSize.mjs";
46
+ import { shuffle } from "./shuffle.mjs";
47
+ import { sortBy } from "./sortBy.mjs";
48
+ import { tail } from "./tail.mjs";
49
+ import { take } from "./take.mjs";
50
+ import { takeRight } from "./takeRight.mjs";
51
+ import { takeRightWhile } from "./takeRightWhile.mjs";
52
+ import { takeWhile } from "./takeWhile.mjs";
53
+ import { toFilled } from "./toFilled.mjs";
54
+ import { union } from "./union.mjs";
55
+ import { unionBy } from "./unionBy.mjs";
56
+ import { unionWith } from "./unionWith.mjs";
57
+ import { uniq } from "./uniq.mjs";
58
+ import { uniqBy } from "./uniqBy.mjs";
59
+ import { uniqWith } from "./uniqWith.mjs";
60
+ import { unzip } from "./unzip.mjs";
61
+ import { unzipWith } from "./unzipWith.mjs";
62
+ import { windowed } from "./windowed.mjs";
63
+ import { without } from "./without.mjs";
64
+ import { xor } from "./xor.mjs";
65
+ import { xorBy } from "./xorBy.mjs";
66
+ import { xorWith } from "./xorWith.mjs";
67
+ import { zip } from "./zip.mjs";
68
+ import { zipObject } from "./zipObject.mjs";
69
+ import { zipWith } from "./zipWith.mjs";
@@ -0,0 +1,69 @@
1
+ import { WindowedOptions } from "../../array/windowed.js";
2
+ import { at } from "./at.js";
3
+ import { cartesianProduct } from "./cartesianProduct.js";
4
+ import { chunk } from "./chunk.js";
5
+ import { chunkBy } from "./chunkBy.js";
6
+ import { combinations } from "./combinations.js";
7
+ import { compact } from "./compact.js";
8
+ import { countBy } from "./countBy.js";
9
+ import { difference } from "./difference.js";
10
+ import { differenceBy } from "./differenceBy.js";
11
+ import { differenceWith } from "./differenceWith.js";
12
+ import { drop } from "./drop.js";
13
+ import { dropRight } from "./dropRight.js";
14
+ import { dropRightWhile } from "./dropRightWhile.js";
15
+ import { dropWhile } from "./dropWhile.js";
16
+ import { filter } from "./filter.js";
17
+ import { find } from "./find.js";
18
+ import { findIndex } from "./findIndex.js";
19
+ import { findLast } from "./findLast.js";
20
+ import { findLastIndex } from "./findLastIndex.js";
21
+ import { flatMap } from "./flatMap.js";
22
+ import { flatMapDeep } from "./flatMapDeep.js";
23
+ import { flatten } from "./flatten.js";
24
+ import { flattenDeep } from "./flattenDeep.js";
25
+ import { forEach } from "./forEach.js";
26
+ import { groupBy } from "./groupBy.js";
27
+ import { head } from "./head.js";
28
+ import { initial } from "./initial.js";
29
+ import { intersection } from "./intersection.js";
30
+ import { intersectionBy } from "./intersectionBy.js";
31
+ import { intersectionWith } from "./intersectionWith.js";
32
+ import { isSubset } from "./isSubset.js";
33
+ import { isSubsetWith } from "./isSubsetWith.js";
34
+ import { join } from "./join.js";
35
+ import { keyBy } from "./keyBy.js";
36
+ import { last } from "./last.js";
37
+ import { length } from "./length.js";
38
+ import { map } from "./map.js";
39
+ import { maxBy } from "./maxBy.js";
40
+ import { minBy } from "./minBy.js";
41
+ import { orderBy } from "./orderBy.js";
42
+ import { partition } from "./partition.js";
43
+ import { reverse } from "./reverse.js";
44
+ import { sample } from "./sample.js";
45
+ import { sampleSize } from "./sampleSize.js";
46
+ import { shuffle } from "./shuffle.js";
47
+ import { sortBy } from "./sortBy.js";
48
+ import { tail } from "./tail.js";
49
+ import { take } from "./take.js";
50
+ import { takeRight } from "./takeRight.js";
51
+ import { takeRightWhile } from "./takeRightWhile.js";
52
+ import { takeWhile } from "./takeWhile.js";
53
+ import { toFilled } from "./toFilled.js";
54
+ import { union } from "./union.js";
55
+ import { unionBy } from "./unionBy.js";
56
+ import { unionWith } from "./unionWith.js";
57
+ import { uniq } from "./uniq.js";
58
+ import { uniqBy } from "./uniqBy.js";
59
+ import { uniqWith } from "./uniqWith.js";
60
+ import { unzip } from "./unzip.js";
61
+ import { unzipWith } from "./unzipWith.js";
62
+ import { windowed } from "./windowed.js";
63
+ import { without } from "./without.js";
64
+ import { xor } from "./xor.js";
65
+ import { xorBy } from "./xorBy.js";
66
+ import { xorWith } from "./xorWith.js";
67
+ import { zip } from "./zip.js";
68
+ import { zipObject } from "./zipObject.js";
69
+ import { zipWith } from "./zipWith.js";
@@ -0,0 +1,68 @@
1
+ require("./at.js");
2
+ require("./cartesianProduct.js");
3
+ require("./chunk.js");
4
+ require("./chunkBy.js");
5
+ require("./combinations.js");
6
+ require("./compact.js");
7
+ require("./countBy.js");
8
+ require("./difference.js");
9
+ require("./differenceBy.js");
10
+ require("./differenceWith.js");
11
+ require("./drop.js");
12
+ require("./dropRight.js");
13
+ require("./dropRightWhile.js");
14
+ require("./dropWhile.js");
15
+ require("./filter.js");
16
+ require("./find.js");
17
+ require("./findIndex.js");
18
+ require("./findLast.js");
19
+ require("./findLastIndex.js");
20
+ require("./flatMap.js");
21
+ require("./flatMapDeep.js");
22
+ require("./flatten.js");
23
+ require("./flattenDeep.js");
24
+ require("./forEach.js");
25
+ require("./groupBy.js");
26
+ require("./head.js");
27
+ require("./initial.js");
28
+ require("./intersection.js");
29
+ require("./intersectionBy.js");
30
+ require("./intersectionWith.js");
31
+ require("./isSubset.js");
32
+ require("./isSubsetWith.js");
33
+ require("./join.js");
34
+ require("./keyBy.js");
35
+ require("./last.js");
36
+ require("./length.js");
37
+ require("./map.js");
38
+ require("./maxBy.js");
39
+ require("./minBy.js");
40
+ require("./orderBy.js");
41
+ require("./partition.js");
42
+ require("./reverse.js");
43
+ require("./sample.js");
44
+ require("./sampleSize.js");
45
+ require("./shuffle.js");
46
+ require("./sortBy.js");
47
+ require("./tail.js");
48
+ require("./take.js");
49
+ require("./takeRight.js");
50
+ require("./takeRightWhile.js");
51
+ require("./takeWhile.js");
52
+ require("./toFilled.js");
53
+ require("./union.js");
54
+ require("./unionBy.js");
55
+ require("./unionWith.js");
56
+ require("./uniq.js");
57
+ require("./uniqBy.js");
58
+ require("./uniqWith.js");
59
+ require("./unzip.js");
60
+ require("./unzipWith.js");
61
+ require("./windowed.js");
62
+ require("./without.js");
63
+ require("./xor.js");
64
+ require("./xorBy.js");
65
+ require("./xorWith.js");
66
+ require("./zip.js");
67
+ require("./zipObject.js");
68
+ require("./zipWith.js");
@@ -0,0 +1,68 @@
1
+ import "./at.mjs";
2
+ import "./cartesianProduct.mjs";
3
+ import "./chunk.mjs";
4
+ import "./chunkBy.mjs";
5
+ import "./combinations.mjs";
6
+ import "./compact.mjs";
7
+ import "./countBy.mjs";
8
+ import "./difference.mjs";
9
+ import "./differenceBy.mjs";
10
+ import "./differenceWith.mjs";
11
+ import "./drop.mjs";
12
+ import "./dropRight.mjs";
13
+ import "./dropRightWhile.mjs";
14
+ import "./dropWhile.mjs";
15
+ import "./filter.mjs";
16
+ import "./find.mjs";
17
+ import "./findIndex.mjs";
18
+ import "./findLast.mjs";
19
+ import "./findLastIndex.mjs";
20
+ import "./flatMap.mjs";
21
+ import "./flatMapDeep.mjs";
22
+ import "./flatten.mjs";
23
+ import "./flattenDeep.mjs";
24
+ import "./forEach.mjs";
25
+ import "./groupBy.mjs";
26
+ import "./head.mjs";
27
+ import "./initial.mjs";
28
+ import "./intersection.mjs";
29
+ import "./intersectionBy.mjs";
30
+ import "./intersectionWith.mjs";
31
+ import "./isSubset.mjs";
32
+ import "./isSubsetWith.mjs";
33
+ import "./join.mjs";
34
+ import "./keyBy.mjs";
35
+ import "./last.mjs";
36
+ import "./length.mjs";
37
+ import "./map.mjs";
38
+ import "./maxBy.mjs";
39
+ import "./minBy.mjs";
40
+ import "./orderBy.mjs";
41
+ import "./partition.mjs";
42
+ import "./reverse.mjs";
43
+ import "./sample.mjs";
44
+ import "./sampleSize.mjs";
45
+ import "./shuffle.mjs";
46
+ import "./sortBy.mjs";
47
+ import "./tail.mjs";
48
+ import "./take.mjs";
49
+ import "./takeRight.mjs";
50
+ import "./takeRightWhile.mjs";
51
+ import "./takeWhile.mjs";
52
+ import "./toFilled.mjs";
53
+ import "./union.mjs";
54
+ import "./unionBy.mjs";
55
+ import "./unionWith.mjs";
56
+ import "./uniq.mjs";
57
+ import "./uniqBy.mjs";
58
+ import "./uniqWith.mjs";
59
+ import "./unzip.mjs";
60
+ import "./unzipWith.mjs";
61
+ import "./windowed.mjs";
62
+ import "./without.mjs";
63
+ import "./xor.mjs";
64
+ import "./xorBy.mjs";
65
+ import "./xorWith.mjs";
66
+ import "./zip.mjs";
67
+ import "./zipObject.mjs";
68
+ import "./zipWith.mjs";
@@ -0,0 +1,19 @@
1
+ //#region src/fp/array/initial.d.ts
2
+ /**
3
+ * Creates a function that returns every element except the last one.
4
+ *
5
+ * The returned function follows the main {@link initial} behavior and always returns a new array.
6
+ * Use it with {@link pipe}.
7
+ *
8
+ * @template T - The type of elements in the array.
9
+ * @returns A function that maps a readonly array to its initial elements.
10
+ *
11
+ * @example
12
+ * import { initial, pipe } from 'es-toolkit/fp';
13
+ *
14
+ * pipe([1, 2, 3], initial());
15
+ * // => [1, 2]
16
+ */
17
+ declare function initial<T>(): (array: readonly T[]) => T[];
18
+ //#endregion
19
+ export { initial };
@@ -0,0 +1,19 @@
1
+ //#region src/fp/array/initial.d.ts
2
+ /**
3
+ * Creates a function that returns every element except the last one.
4
+ *
5
+ * The returned function follows the main {@link initial} behavior and always returns a new array.
6
+ * Use it with {@link pipe}.
7
+ *
8
+ * @template T - The type of elements in the array.
9
+ * @returns A function that maps a readonly array to its initial elements.
10
+ *
11
+ * @example
12
+ * import { initial, pipe } from 'es-toolkit/fp';
13
+ *
14
+ * pipe([1, 2, 3], initial());
15
+ * // => [1, 2]
16
+ */
17
+ declare function initial<T>(): (array: readonly T[]) => T[];
18
+ //#endregion
19
+ export { initial };
@@ -0,0 +1,24 @@
1
+ const require_initial = require("../../array/initial.js");
2
+ //#region src/fp/array/initial.ts
3
+ /**
4
+ * Creates a function that returns every element except the last one.
5
+ *
6
+ * The returned function follows the main {@link initial} behavior and always returns a new array.
7
+ * Use it with {@link pipe}.
8
+ *
9
+ * @template T - The type of elements in the array.
10
+ * @returns A function that maps a readonly array to its initial elements.
11
+ *
12
+ * @example
13
+ * import { initial, pipe } from 'es-toolkit/fp';
14
+ *
15
+ * pipe([1, 2, 3], initial());
16
+ * // => [1, 2]
17
+ */
18
+ function initial() {
19
+ return function(array) {
20
+ return require_initial.initial(array);
21
+ };
22
+ }
23
+ //#endregion
24
+ exports.initial = initial;