rubico 2.7.2 → 2.7.4

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 (495) hide show
  1. package/README.md +14 -17
  2. package/Transducer.d.ts +10 -10
  3. package/Transducer.js +65 -69
  4. package/__.js +1 -1
  5. package/_internal/FlatMappingIterator.js +1 -1
  6. package/_internal/MappingIterator.d.ts +1 -1
  7. package/_internal/MappingIterator.js +1 -1
  8. package/_internal/arrayFilter.js +6 -6
  9. package/_internal/arrayFilterIndexes.js +7 -7
  10. package/_internal/arrayFilterWithIndex.js +6 -6
  11. package/_internal/arrayFind.js +7 -7
  12. package/_internal/arrayFlatten.js +25 -25
  13. package/_internal/arrayForEach.d.ts +1 -1
  14. package/_internal/arrayForEach.js +1 -1
  15. package/_internal/arrayForEachSeries.js +1 -1
  16. package/_internal/arrayMap.d.ts +2 -2
  17. package/_internal/arrayMap.js +5 -5
  18. package/_internal/arrayMapPool.d.ts +1 -1
  19. package/_internal/arrayMapPool.js +10 -10
  20. package/_internal/arrayMapRate.js +4 -4
  21. package/_internal/arrayMapSeries.d.ts +1 -1
  22. package/_internal/arrayMapSeries.js +8 -8
  23. package/_internal/arrayMapWithIndex.js +4 -4
  24. package/_internal/arrayReduce.js +1 -1
  25. package/_internal/asyncGeneratorFunctionForEach.js +3 -3
  26. package/_internal/asyncGeneratorFunctionMap.js +3 -3
  27. package/_internal/asyncIteratorFind.js +3 -3
  28. package/_internal/asyncIteratorForEach.d.ts +1 -1
  29. package/_internal/asyncIteratorForEach.js +3 -3
  30. package/_internal/asyncIteratorForEachSeries.js +3 -3
  31. package/_internal/asyncIteratorToArray.js +2 -2
  32. package/_internal/copyDeep.js +12 -12
  33. package/_internal/funcAll.js +3 -3
  34. package/_internal/funcAllSeries.js +6 -6
  35. package/_internal/funcObjectAll.js +4 -4
  36. package/_internal/functionArrayAll.js +3 -3
  37. package/_internal/functionArrayAllSeries.js +6 -6
  38. package/_internal/functionObjectAll.js +4 -4
  39. package/_internal/generatorFunctionForEach.js +3 -3
  40. package/_internal/generatorFunctionMap.js +3 -3
  41. package/_internal/generatorFunctionReduce.js +1 -1
  42. package/_internal/iteratorEvery.js +2 -2
  43. package/_internal/iteratorFind.js +7 -7
  44. package/_internal/iteratorForEach.d.ts +1 -1
  45. package/_internal/iteratorForEach.js +3 -3
  46. package/_internal/iteratorForEachSeries.js +1 -1
  47. package/_internal/iteratorReduce.d.ts +1 -1
  48. package/_internal/iteratorReduce.js +2 -2
  49. package/_internal/iteratorSome.js +2 -2
  50. package/_internal/mapFilter.js +4 -4
  51. package/_internal/mapMap.d.ts +1 -1
  52. package/_internal/mapMap.js +6 -6
  53. package/_internal/mapMapPool.js +10 -10
  54. package/_internal/mapMapSeries.js +10 -10
  55. package/_internal/objectFilter.js +6 -6
  56. package/_internal/objectFlatMap.d.ts +1 -1
  57. package/_internal/objectFlatMap.js +1 -1
  58. package/_internal/objectFlatten.js +14 -14
  59. package/_internal/objectMap.js +3 -3
  60. package/_internal/objectMapOwn.js +3 -3
  61. package/_internal/objectMapPool.js +10 -10
  62. package/_internal/objectMapSeries.js +9 -9
  63. package/_internal/objectReduce.d.ts +1 -1
  64. package/_internal/objectReduce.js +2 -2
  65. package/_internal/reducerAllSync.d.ts +2 -2
  66. package/_internal/reducerAllSync.js +2 -2
  67. package/_internal/reducerAnySync.d.ts +1 -1
  68. package/_internal/reducerAnySync.js +2 -2
  69. package/_internal/reducerConcat.d.ts +1 -1
  70. package/_internal/reducerConcat.js +4 -4
  71. package/_internal/reducerConcatSync.js +2 -2
  72. package/_internal/reducerEvery.d.ts +2 -2
  73. package/_internal/reducerEvery.js +4 -4
  74. package/_internal/reducerFilter.d.ts +2 -2
  75. package/_internal/reducerFilter.js +5 -5
  76. package/_internal/reducerFlatten.js +3 -3
  77. package/_internal/reducerForEach.d.ts +2 -2
  78. package/_internal/reducerForEach.js +5 -5
  79. package/_internal/reducerMap.d.ts +1 -1
  80. package/_internal/reducerMap.js +5 -5
  81. package/_internal/reducerSome.d.ts +2 -2
  82. package/_internal/reducerSome.js +4 -4
  83. package/_internal/reducerTryCatch.d.ts +2 -2
  84. package/_internal/reducerTryCatch.js +8 -8
  85. package/_internal/setFilter.d.ts +1 -1
  86. package/_internal/setFilter.js +5 -5
  87. package/_internal/setFlatten.js +24 -24
  88. package/_internal/setMap.d.ts +1 -1
  89. package/_internal/setMap.js +6 -6
  90. package/_internal/setMapPool.js +9 -9
  91. package/_internal/setMapSeries.js +10 -10
  92. package/_internal/streamFlatExtend.js +25 -25
  93. package/_internal/streamFlatMap.js +2 -2
  94. package/all.js +29 -30
  95. package/and.js +27 -13
  96. package/assign.js +15 -23
  97. package/compose.js +7 -5
  98. package/curry.js +5 -12
  99. package/dist/Transducer.es.js +24 -24
  100. package/dist/Transducer.es.min.js +1 -1
  101. package/dist/Transducer.js +24 -24
  102. package/dist/Transducer.min.js +1 -1
  103. package/dist/Transducer.mjs +24 -24
  104. package/dist/__.es.js +1 -1
  105. package/dist/__.es.min.js +1 -1
  106. package/dist/__.js +1 -1
  107. package/dist/__.min.js +1 -1
  108. package/dist/__.mjs +1 -1
  109. package/dist/all.es.js +14 -14
  110. package/dist/all.es.min.js +1 -1
  111. package/dist/all.js +14 -14
  112. package/dist/all.min.js +1 -1
  113. package/dist/all.mjs +14 -14
  114. package/dist/always.es.js +1 -1
  115. package/dist/always.es.min.js +1 -1
  116. package/dist/always.js +1 -1
  117. package/dist/always.min.js +1 -1
  118. package/dist/always.mjs +1 -1
  119. package/dist/and.es.js +1 -1
  120. package/dist/and.es.min.js +1 -1
  121. package/dist/and.js +1 -1
  122. package/dist/and.min.js +1 -1
  123. package/dist/and.mjs +1 -1
  124. package/dist/assign.es.js +5 -5
  125. package/dist/assign.es.min.js +1 -1
  126. package/dist/assign.js +5 -5
  127. package/dist/assign.min.js +1 -1
  128. package/dist/assign.mjs +5 -5
  129. package/dist/compose.es.js +1 -1
  130. package/dist/compose.es.min.js +1 -1
  131. package/dist/compose.js +1 -1
  132. package/dist/compose.min.js +1 -1
  133. package/dist/compose.mjs +1 -1
  134. package/dist/curry.es.js +1 -1
  135. package/dist/curry.es.min.js +1 -1
  136. package/dist/curry.js +1 -1
  137. package/dist/curry.min.js +1 -1
  138. package/dist/curry.mjs +1 -1
  139. package/dist/eq.es.js +1 -1
  140. package/dist/eq.es.min.js +1 -1
  141. package/dist/eq.js +1 -1
  142. package/dist/eq.min.js +1 -1
  143. package/dist/eq.mjs +1 -1
  144. package/dist/every.es.js +7 -7
  145. package/dist/every.es.min.js +1 -1
  146. package/dist/every.js +7 -7
  147. package/dist/every.min.js +1 -1
  148. package/dist/every.mjs +7 -7
  149. package/dist/filter.es.js +21 -21
  150. package/dist/filter.es.min.js +1 -1
  151. package/dist/filter.js +21 -21
  152. package/dist/filter.min.js +1 -1
  153. package/dist/filter.mjs +21 -21
  154. package/dist/flatMap.es.js +82 -82
  155. package/dist/flatMap.es.min.js +1 -1
  156. package/dist/flatMap.js +82 -82
  157. package/dist/flatMap.min.js +1 -1
  158. package/dist/flatMap.mjs +82 -82
  159. package/dist/forEach.es.js +7 -7
  160. package/dist/forEach.es.min.js +1 -1
  161. package/dist/forEach.js +7 -7
  162. package/dist/forEach.min.js +1 -1
  163. package/dist/forEach.mjs +7 -7
  164. package/dist/get.es.js +1 -1
  165. package/dist/get.es.min.js +1 -1
  166. package/dist/get.js +1 -1
  167. package/dist/get.min.js +1 -1
  168. package/dist/get.mjs +1 -1
  169. package/dist/gt.es.js +1 -1
  170. package/dist/gt.es.min.js +1 -1
  171. package/dist/gt.js +1 -1
  172. package/dist/gt.min.js +1 -1
  173. package/dist/gt.mjs +1 -1
  174. package/dist/gte.es.js +1 -1
  175. package/dist/gte.es.min.js +1 -1
  176. package/dist/gte.js +1 -1
  177. package/dist/gte.min.js +1 -1
  178. package/dist/gte.mjs +1 -1
  179. package/dist/lt.es.js +1 -1
  180. package/dist/lt.es.min.js +1 -1
  181. package/dist/lt.js +1 -1
  182. package/dist/lt.min.js +1 -1
  183. package/dist/lt.mjs +1 -1
  184. package/dist/lte.es.js +1 -1
  185. package/dist/lte.es.min.js +1 -1
  186. package/dist/lte.js +1 -1
  187. package/dist/lte.min.js +1 -1
  188. package/dist/lte.mjs +1 -1
  189. package/dist/map.es.js +83 -83
  190. package/dist/map.es.min.js +1 -1
  191. package/dist/map.js +83 -83
  192. package/dist/map.min.js +1 -1
  193. package/dist/map.mjs +83 -83
  194. package/dist/not.es.js +4 -2
  195. package/dist/not.es.min.js +2 -2
  196. package/dist/not.js +4 -2
  197. package/dist/not.min.js +2 -2
  198. package/dist/not.mjs +4 -2
  199. package/dist/omit.es.js +13 -13
  200. package/dist/omit.es.min.js +1 -1
  201. package/dist/omit.js +13 -13
  202. package/dist/omit.min.js +1 -1
  203. package/dist/omit.mjs +13 -13
  204. package/dist/or.es.js +1 -1
  205. package/dist/or.es.min.js +1 -1
  206. package/dist/or.js +1 -1
  207. package/dist/or.min.js +1 -1
  208. package/dist/or.mjs +1 -1
  209. package/dist/pick.es.js +1 -1
  210. package/dist/pick.es.min.js +1 -1
  211. package/dist/pick.js +1 -1
  212. package/dist/pick.min.js +1 -1
  213. package/dist/pick.mjs +1 -1
  214. package/dist/pipe.es.js +1 -1
  215. package/dist/pipe.es.min.js +1 -1
  216. package/dist/pipe.js +1 -1
  217. package/dist/pipe.min.js +1 -1
  218. package/dist/pipe.mjs +1 -1
  219. package/dist/reduce.es.js +5 -5
  220. package/dist/reduce.es.min.js +1 -1
  221. package/dist/reduce.js +5 -5
  222. package/dist/reduce.min.js +1 -1
  223. package/dist/reduce.mjs +5 -5
  224. package/dist/rubico.es.js +218 -216
  225. package/dist/rubico.es.min.js +2 -2
  226. package/dist/rubico.global.js +218 -216
  227. package/dist/rubico.global.min.js +2 -2
  228. package/dist/rubico.js +218 -216
  229. package/dist/rubico.min.js +2 -2
  230. package/dist/rubico.mjs +218 -216
  231. package/dist/set.es.js +1 -1
  232. package/dist/set.es.min.js +1 -1
  233. package/dist/set.js +1 -1
  234. package/dist/set.min.js +1 -1
  235. package/dist/set.mjs +1 -1
  236. package/dist/some.es.js +8 -8
  237. package/dist/some.es.min.js +1 -1
  238. package/dist/some.js +8 -8
  239. package/dist/some.min.js +1 -1
  240. package/dist/some.mjs +8 -8
  241. package/dist/switchCase.es.js +1 -1
  242. package/dist/switchCase.es.min.js +1 -1
  243. package/dist/switchCase.js +1 -1
  244. package/dist/switchCase.min.js +1 -1
  245. package/dist/switchCase.mjs +1 -1
  246. package/dist/tap.es.js +1 -1
  247. package/dist/tap.es.min.js +1 -1
  248. package/dist/tap.js +1 -1
  249. package/dist/tap.min.js +1 -1
  250. package/dist/tap.mjs +1 -1
  251. package/dist/thunkify.es.js +1 -1
  252. package/dist/thunkify.es.min.js +1 -1
  253. package/dist/thunkify.js +1 -1
  254. package/dist/thunkify.min.js +1 -1
  255. package/dist/thunkify.mjs +1 -1
  256. package/dist/transform.es.js +5 -5
  257. package/dist/transform.es.min.js +1 -1
  258. package/dist/transform.js +5 -5
  259. package/dist/transform.min.js +1 -1
  260. package/dist/transform.mjs +5 -5
  261. package/dist/tryCatch.es.js +1 -1
  262. package/dist/tryCatch.es.min.js +1 -1
  263. package/dist/tryCatch.js +1 -1
  264. package/dist/tryCatch.min.js +1 -1
  265. package/dist/tryCatch.mjs +1 -1
  266. package/dist/x/append.es.js +8 -8
  267. package/dist/x/append.es.min.js +1 -1
  268. package/dist/x/append.js +8 -8
  269. package/dist/x/append.min.js +1 -1
  270. package/dist/x/append.mjs +8 -8
  271. package/dist/x/callProp.es.js +1 -1
  272. package/dist/x/callProp.es.min.js +1 -1
  273. package/dist/x/callProp.js +1 -1
  274. package/dist/x/callProp.min.js +1 -1
  275. package/dist/x/callProp.mjs +1 -1
  276. package/dist/x/defaultsDeep.es.js +69 -37
  277. package/dist/x/defaultsDeep.es.min.js +2 -2
  278. package/dist/x/defaultsDeep.js +69 -37
  279. package/dist/x/defaultsDeep.min.js +2 -2
  280. package/dist/x/defaultsDeep.mjs +69 -37
  281. package/dist/x/differenceWith.es.js +14 -14
  282. package/dist/x/differenceWith.es.min.js +1 -1
  283. package/dist/x/differenceWith.js +14 -14
  284. package/dist/x/differenceWith.min.js +1 -1
  285. package/dist/x/differenceWith.mjs +14 -14
  286. package/dist/x/filterOut.es.js +24 -22
  287. package/dist/x/filterOut.es.min.js +2 -2
  288. package/dist/x/filterOut.js +24 -22
  289. package/dist/x/filterOut.min.js +2 -2
  290. package/dist/x/filterOut.mjs +24 -22
  291. package/dist/x/find.es.js +18 -18
  292. package/dist/x/find.es.min.js +1 -1
  293. package/dist/x/find.js +18 -18
  294. package/dist/x/find.min.js +1 -1
  295. package/dist/x/find.mjs +18 -18
  296. package/dist/x/findIndex.es.js +1 -1
  297. package/dist/x/findIndex.es.min.js +1 -1
  298. package/dist/x/findIndex.js +1 -1
  299. package/dist/x/findIndex.min.js +1 -1
  300. package/dist/x/findIndex.mjs +1 -1
  301. package/dist/x/first.es.js +1 -1
  302. package/dist/x/first.es.min.js +1 -1
  303. package/dist/x/first.js +1 -1
  304. package/dist/x/first.min.js +1 -1
  305. package/dist/x/first.mjs +1 -1
  306. package/dist/x/flatten.es.js +82 -82
  307. package/dist/x/flatten.es.min.js +1 -1
  308. package/dist/x/flatten.js +82 -82
  309. package/dist/x/flatten.min.js +1 -1
  310. package/dist/x/flatten.mjs +82 -82
  311. package/dist/x/groupBy.es.js +17 -17
  312. package/dist/x/groupBy.es.min.js +1 -1
  313. package/dist/x/groupBy.js +17 -17
  314. package/dist/x/groupBy.min.js +1 -1
  315. package/dist/x/groupBy.mjs +17 -17
  316. package/dist/x/has.es.js +1 -1
  317. package/dist/x/has.es.min.js +1 -1
  318. package/dist/x/has.js +1 -1
  319. package/dist/x/has.min.js +1 -1
  320. package/dist/x/has.mjs +1 -1
  321. package/dist/x/identity.es.js +1 -1
  322. package/dist/x/identity.es.min.js +1 -1
  323. package/dist/x/identity.js +1 -1
  324. package/dist/x/identity.min.js +1 -1
  325. package/dist/x/identity.mjs +1 -1
  326. package/dist/x/includes.es.js +1 -1
  327. package/dist/x/includes.es.min.js +1 -1
  328. package/dist/x/includes.js +1 -1
  329. package/dist/x/includes.min.js +1 -1
  330. package/dist/x/includes.mjs +1 -1
  331. package/dist/x/isDeepEqual.es.js +1 -1
  332. package/dist/x/isDeepEqual.es.min.js +1 -1
  333. package/dist/x/isDeepEqual.js +1 -1
  334. package/dist/x/isDeepEqual.min.js +1 -1
  335. package/dist/x/isDeepEqual.mjs +1 -1
  336. package/dist/x/isEmpty.es.js +1 -1
  337. package/dist/x/isEmpty.es.min.js +1 -1
  338. package/dist/x/isEmpty.js +1 -1
  339. package/dist/x/isEmpty.min.js +1 -1
  340. package/dist/x/isEmpty.mjs +1 -1
  341. package/dist/x/isEqual.es.js +1 -1
  342. package/dist/x/isEqual.es.min.js +1 -1
  343. package/dist/x/isEqual.js +1 -1
  344. package/dist/x/isEqual.min.js +1 -1
  345. package/dist/x/isEqual.mjs +1 -1
  346. package/dist/x/isFunction.es.js +1 -1
  347. package/dist/x/isFunction.es.min.js +1 -1
  348. package/dist/x/isFunction.js +1 -1
  349. package/dist/x/isFunction.min.js +1 -1
  350. package/dist/x/isFunction.mjs +1 -1
  351. package/dist/x/isIn.es.js +1 -1
  352. package/dist/x/isIn.es.min.js +1 -1
  353. package/dist/x/isIn.js +1 -1
  354. package/dist/x/isIn.min.js +1 -1
  355. package/dist/x/isIn.mjs +1 -1
  356. package/dist/x/isObject.es.js +1 -1
  357. package/dist/x/isObject.es.min.js +1 -1
  358. package/dist/x/isObject.js +1 -1
  359. package/dist/x/isObject.min.js +1 -1
  360. package/dist/x/isObject.mjs +1 -1
  361. package/dist/x/isString.es.js +1 -1
  362. package/dist/x/isString.es.min.js +1 -1
  363. package/dist/x/isString.js +1 -1
  364. package/dist/x/isString.min.js +1 -1
  365. package/dist/x/isString.mjs +1 -1
  366. package/dist/x/keys.es.js +1 -1
  367. package/dist/x/keys.es.min.js +1 -1
  368. package/dist/x/keys.js +1 -1
  369. package/dist/x/keys.min.js +1 -1
  370. package/dist/x/keys.mjs +1 -1
  371. package/dist/x/last.es.js +1 -1
  372. package/dist/x/last.es.min.js +1 -1
  373. package/dist/x/last.js +1 -1
  374. package/dist/x/last.min.js +1 -1
  375. package/dist/x/last.mjs +1 -1
  376. package/dist/x/maxBy.es.js +6 -6
  377. package/dist/x/maxBy.es.min.js +1 -1
  378. package/dist/x/maxBy.js +6 -6
  379. package/dist/x/maxBy.min.js +1 -1
  380. package/dist/x/maxBy.mjs +6 -6
  381. package/dist/x/noop.es.js +1 -1
  382. package/dist/x/noop.es.min.js +1 -1
  383. package/dist/x/noop.js +1 -1
  384. package/dist/x/noop.min.js +1 -1
  385. package/dist/x/noop.mjs +1 -1
  386. package/dist/x/pluck.es.js +83 -83
  387. package/dist/x/pluck.es.min.js +1 -1
  388. package/dist/x/pluck.js +83 -83
  389. package/dist/x/pluck.min.js +1 -1
  390. package/dist/x/pluck.mjs +83 -83
  391. package/dist/x/prepend.es.js +8 -8
  392. package/dist/x/prepend.es.min.js +1 -1
  393. package/dist/x/prepend.js +8 -8
  394. package/dist/x/prepend.min.js +1 -1
  395. package/dist/x/prepend.mjs +8 -8
  396. package/dist/x/size.es.js +1 -1
  397. package/dist/x/size.es.min.js +1 -1
  398. package/dist/x/size.js +1 -1
  399. package/dist/x/size.min.js +1 -1
  400. package/dist/x/size.mjs +1 -1
  401. package/dist/x/trace.es.js +1 -1
  402. package/dist/x/trace.es.min.js +1 -1
  403. package/dist/x/trace.js +1 -1
  404. package/dist/x/trace.min.js +1 -1
  405. package/dist/x/trace.mjs +1 -1
  406. package/dist/x/unionWith.es.js +39 -39
  407. package/dist/x/unionWith.es.min.js +1 -1
  408. package/dist/x/unionWith.js +39 -39
  409. package/dist/x/unionWith.min.js +1 -1
  410. package/dist/x/unionWith.mjs +39 -39
  411. package/dist/x/uniq.es.js +1 -1
  412. package/dist/x/uniq.es.min.js +1 -1
  413. package/dist/x/uniq.js +1 -1
  414. package/dist/x/uniq.min.js +1 -1
  415. package/dist/x/uniq.mjs +1 -1
  416. package/dist/x/unless.es.js +1 -1
  417. package/dist/x/unless.es.min.js +1 -1
  418. package/dist/x/unless.js +1 -1
  419. package/dist/x/unless.min.js +1 -1
  420. package/dist/x/unless.mjs +1 -1
  421. package/dist/x/values.es.js +1 -1
  422. package/dist/x/values.es.min.js +1 -1
  423. package/dist/x/values.js +1 -1
  424. package/dist/x/values.min.js +1 -1
  425. package/dist/x/values.mjs +1 -1
  426. package/dist/x/when.es.js +1 -1
  427. package/dist/x/when.es.min.js +1 -1
  428. package/dist/x/when.js +1 -1
  429. package/dist/x/when.min.js +1 -1
  430. package/dist/x/when.mjs +1 -1
  431. package/eq.js +32 -10
  432. package/es.js +218 -216
  433. package/every.d.ts +1 -1
  434. package/every.js +5 -3
  435. package/filter.d.ts +3 -3
  436. package/filter.js +15 -15
  437. package/flatMap.d.ts +9 -9
  438. package/flatMap.js +13 -11
  439. package/forEach.d.ts +1 -1
  440. package/forEach.js +19 -15
  441. package/gt.js +30 -13
  442. package/gte.js +31 -12
  443. package/index.js +218 -216
  444. package/lt.js +28 -9
  445. package/lte.js +34 -15
  446. package/map.d.ts +3 -3
  447. package/map.js +32 -32
  448. package/monad/Mux.benchmark.js +1 -1
  449. package/monad/Mux.js +6 -6
  450. package/monad/Struct.js +2 -2
  451. package/not.js +23 -8
  452. package/omit.js +2 -3
  453. package/or.js +30 -14
  454. package/package.json +1 -1
  455. package/pick.js +2 -3
  456. package/pipe.js +7 -15
  457. package/reduce.d.ts +7 -7
  458. package/reduce.js +19 -24
  459. package/some.d.ts +1 -1
  460. package/some.js +5 -3
  461. package/switchCase.d.ts +1 -1
  462. package/switchCase.js +13 -12
  463. package/tap.js +20 -4
  464. package/thunkify.js +2 -0
  465. package/transform.d.ts +1 -1
  466. package/transform.js +9 -23
  467. package/tryCatch.js +41 -8
  468. package/x/README.md +8 -8
  469. package/x/append.d.ts +2 -2
  470. package/x/append.js +8 -8
  471. package/x/defaultsDeep.js +94 -57
  472. package/x/defaultsDeep.test.js +24 -1
  473. package/x/differenceWith.js +13 -13
  474. package/x/find.d.ts +1 -1
  475. package/x/find.js +1 -1
  476. package/x/find.test.js +2 -2
  477. package/x/findIndex.test.js +1 -1
  478. package/x/first.d.ts +1 -1
  479. package/x/first.js +1 -1
  480. package/x/first.test.js +1 -1
  481. package/x/groupBy.d.ts +1 -1
  482. package/x/groupBy.js +13 -13
  483. package/x/last.d.ts +1 -1
  484. package/x/last.js +1 -1
  485. package/x/last.test.js +1 -1
  486. package/x/maxBy.d.ts +7 -7
  487. package/x/maxBy.js +13 -13
  488. package/x/maxBy.test.js +5 -5
  489. package/x/pluck.test.js +1 -1
  490. package/x/prepend.d.ts +2 -2
  491. package/x/prepend.js +8 -8
  492. package/x/size.d.ts +1 -1
  493. package/x/size.js +1 -1
  494. package/x/unionWith.js +11 -11
  495. package/x/unionWith.test.js +5 -5
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -7,59 +7,91 @@
7
7
 
8
8
  const isArray = Array.isArray
9
9
 
10
- const arrayDefaultsDeepFromArray = function (array, defaultArray) {
11
- const defaultArrayLength = defaultArray.length,
12
- result = array.slice()
10
+ const __ = Symbol.for('placeholder')
11
+
12
+ // argument resolver for curry2
13
+ const curry2ResolveArg0 = (
14
+ baseFunc, arg1,
15
+ ) => function arg0Resolver(arg0) {
16
+ return baseFunc(arg0, arg1)
17
+ }
18
+
19
+ // argument resolver for curry2
20
+ const curry2ResolveArg1 = (
21
+ baseFunc, arg0,
22
+ ) => function arg1Resolver(arg1) {
23
+ return baseFunc(arg0, arg1)
24
+ }
25
+
26
+ const curry2 = function (baseFunc, arg0, arg1) {
27
+ return arg0 == __
28
+ ? curry2ResolveArg0(baseFunc, arg1)
29
+ : curry2ResolveArg1(baseFunc, arg0)
30
+ }
31
+
32
+ function arrayDefaultsDeepFromArray(data, defaults) {
33
+ const defaultArrayLength = defaults.length,
34
+ result = data.slice()
13
35
  let index = -1
14
36
  while (++index < defaultArrayLength) {
15
- const item = array[index],
16
- defaultItem = defaultArray[index]
17
- if (isArray(item) && isArray(defaultItem)) {
18
- result[index] = arrayDefaultsDeepFromArray(item, defaultItem)
19
- } else if (item == null) {
20
- result[index] = defaultItem
21
- } else if (defaultItem == null) {
22
- result[index] = item
23
- } else if (item.constructor == Object && defaultItem.constructor == Object) {
24
- result[index] = objectDefaultsDeepFromObject(item, defaultItem)
37
+ const element = data[index],
38
+ defaultElement = defaults[index]
39
+ if (isArray(element) && isArray(defaultElement)) {
40
+ result[index] = arrayDefaultsDeepFromArray(element, defaultElement)
41
+ } else if (element == null) {
42
+ result[index] = defaultElement
43
+ } else if (defaultElement == null) {
44
+ result[index] = element
45
+ } else if (element.constructor == Object && defaultElement.constructor == Object) {
46
+ result[index] = objectDefaultsDeepFromObject(element, defaultElement)
25
47
  } else {
26
- result[index] = item
48
+ result[index] = element
27
49
  }
28
50
  }
29
51
  return result
30
52
  }
31
53
 
32
- const objectDefaultsDeepFromObject = function (object, defaultObject) {
33
- const result = { ...object }
34
- for (const key in defaultObject) {
35
- const item = object[key],
36
- defaultItem = defaultObject[key]
37
- if (isArray(item) && isArray(defaultItem)) {
38
- result[key] = arrayDefaultsDeepFromArray(item, defaultItem)
39
- } else if (item == null) {
40
- result[key] = defaultItem
41
- } else if (defaultItem == null) {
42
- result[key] = item
43
- } else if (item.constructor == Object && defaultItem.constructor == Object) {
44
- result[key] = objectDefaultsDeepFromObject(item, defaultItem)
54
+ function objectDefaultsDeepFromObject(data, defaults) {
55
+ const result = { ...data }
56
+ for (const key in defaults) {
57
+ const element = data[key],
58
+ defaultElement = defaults[key]
59
+ if (isArray(element) && isArray(defaultElement)) {
60
+ result[key] = arrayDefaultsDeepFromArray(element, defaultElement)
61
+ } else if (element == null) {
62
+ result[key] = defaultElement
63
+ } else if (defaultElement == null) {
64
+ result[key] = element
65
+ } else if (element.constructor == Object && defaultElement.constructor == Object) {
66
+ result[key] = objectDefaultsDeepFromObject(element, defaultElement)
45
67
  } else {
46
- result[key] = item
68
+ result[key] = element
47
69
  }
48
70
  }
49
71
  return result
50
72
  }
51
73
 
52
- const defaultsDeep = defaultCollection => function defaulting(value) {
53
- if (isArray(value) && isArray(defaultCollection)) {
54
- return arrayDefaultsDeepFromArray(value, defaultCollection)
74
+ function _defaultsDeep(data, defaults) {
75
+ if (isArray(data) && isArray(defaults)) {
76
+ return arrayDefaultsDeepFromArray(data, defaults)
77
+ }
78
+ if (data == null || defaults == null) {
79
+ return data
80
+ }
81
+ if (data.constructor == Object && defaults.constructor == Object) {
82
+ return objectDefaultsDeepFromObject(data, defaults)
55
83
  }
56
- if (value == null || defaultCollection == null) {
57
- return value
84
+ return data
85
+ }
86
+
87
+ function defaultsDeep(...args) {
88
+ if (args.length == 1) {
89
+ return curry2(_defaultsDeep, __, args[0])
58
90
  }
59
- if (value.constructor == Object && defaultCollection.constructor == Object) {
60
- return objectDefaultsDeepFromObject(value, defaultCollection)
91
+ if (args.length == 2) {
92
+ return _defaultsDeep(...args)
61
93
  }
62
- return value
94
+ throw new TypeError('Invalid number of arguments')
63
95
  }
64
96
 
65
97
  export default defaultsDeep
@@ -1,7 +1,7 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
- const isArray=Array.isArray,arrayDefaultsDeepFromArray=function(r,e){const t=e.length,c=r.slice();let o=-1;for(;++o<t;){const t=r[o],a=e[o];isArray(t)&&isArray(a)?c[o]=arrayDefaultsDeepFromArray(t,a):null==t?c[o]=a:null==a?c[o]=t:t.constructor==Object&&a.constructor==Object?c[o]=objectDefaultsDeepFromObject(t,a):c[o]=t}return c},objectDefaultsDeepFromObject=function(r,e){const t={...r};for(const c in e){const o=r[c],a=e[c];isArray(o)&&isArray(a)?t[c]=arrayDefaultsDeepFromArray(o,a):null==o?t[c]=a:null==a?t[c]=o:o.constructor==Object&&a.constructor==Object?t[c]=objectDefaultsDeepFromObject(o,a):t[c]=o}return t},defaultsDeep=r=>function(e){return isArray(e)&&isArray(r)?arrayDefaultsDeepFromArray(e,r):null==e||null==r?e:e.constructor==Object&&r.constructor==Object?objectDefaultsDeepFromObject(e,r):e};export default defaultsDeep;
7
+ const isArray=Array.isArray,__=Symbol.for("placeholder"),curry2ResolveArg0=(r,e)=>function(t){return r(t,e)},curry2ResolveArg1=(r,e)=>function(t){return r(e,t)},curry2=function(r,e,t){return e==__?curry2ResolveArg0(r,t):curry2ResolveArg1(r,e)};function arrayDefaultsDeepFromArray(r,e){const t=e.length,o=r.slice();let u=-1;for(;++u<t;){const t=r[u],n=e[u];isArray(t)&&isArray(n)?o[u]=arrayDefaultsDeepFromArray(t,n):null==t?o[u]=n:null==n?o[u]=t:t.constructor==Object&&n.constructor==Object?o[u]=objectDefaultsDeepFromObject(t,n):o[u]=t}return o}function objectDefaultsDeepFromObject(r,e){const t={...r};for(const o in e){const u=r[o],n=e[o];isArray(u)&&isArray(n)?t[o]=arrayDefaultsDeepFromArray(u,n):null==u?t[o]=n:null==n?t[o]=u:u.constructor==Object&&n.constructor==Object?t[o]=objectDefaultsDeepFromObject(u,n):t[o]=u}return t}function _defaultsDeep(r,e){return isArray(r)&&isArray(e)?arrayDefaultsDeepFromArray(r,e):null==r||null==e?r:r.constructor==Object&&e.constructor==Object?objectDefaultsDeepFromObject(r,e):r}function defaultsDeep(...r){if(1==r.length)return curry2(_defaultsDeep,__,r[0]);if(2==r.length)return _defaultsDeep(...r);throw new TypeError("Invalid number of arguments")}export default defaultsDeep;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -13,59 +13,91 @@
13
13
 
14
14
  const isArray = Array.isArray
15
15
 
16
- const arrayDefaultsDeepFromArray = function (array, defaultArray) {
17
- const defaultArrayLength = defaultArray.length,
18
- result = array.slice()
16
+ const __ = Symbol.for('placeholder')
17
+
18
+ // argument resolver for curry2
19
+ const curry2ResolveArg0 = (
20
+ baseFunc, arg1,
21
+ ) => function arg0Resolver(arg0) {
22
+ return baseFunc(arg0, arg1)
23
+ }
24
+
25
+ // argument resolver for curry2
26
+ const curry2ResolveArg1 = (
27
+ baseFunc, arg0,
28
+ ) => function arg1Resolver(arg1) {
29
+ return baseFunc(arg0, arg1)
30
+ }
31
+
32
+ const curry2 = function (baseFunc, arg0, arg1) {
33
+ return arg0 == __
34
+ ? curry2ResolveArg0(baseFunc, arg1)
35
+ : curry2ResolveArg1(baseFunc, arg0)
36
+ }
37
+
38
+ function arrayDefaultsDeepFromArray(data, defaults) {
39
+ const defaultArrayLength = defaults.length,
40
+ result = data.slice()
19
41
  let index = -1
20
42
  while (++index < defaultArrayLength) {
21
- const item = array[index],
22
- defaultItem = defaultArray[index]
23
- if (isArray(item) && isArray(defaultItem)) {
24
- result[index] = arrayDefaultsDeepFromArray(item, defaultItem)
25
- } else if (item == null) {
26
- result[index] = defaultItem
27
- } else if (defaultItem == null) {
28
- result[index] = item
29
- } else if (item.constructor == Object && defaultItem.constructor == Object) {
30
- result[index] = objectDefaultsDeepFromObject(item, defaultItem)
43
+ const element = data[index],
44
+ defaultElement = defaults[index]
45
+ if (isArray(element) && isArray(defaultElement)) {
46
+ result[index] = arrayDefaultsDeepFromArray(element, defaultElement)
47
+ } else if (element == null) {
48
+ result[index] = defaultElement
49
+ } else if (defaultElement == null) {
50
+ result[index] = element
51
+ } else if (element.constructor == Object && defaultElement.constructor == Object) {
52
+ result[index] = objectDefaultsDeepFromObject(element, defaultElement)
31
53
  } else {
32
- result[index] = item
54
+ result[index] = element
33
55
  }
34
56
  }
35
57
  return result
36
58
  }
37
59
 
38
- const objectDefaultsDeepFromObject = function (object, defaultObject) {
39
- const result = { ...object }
40
- for (const key in defaultObject) {
41
- const item = object[key],
42
- defaultItem = defaultObject[key]
43
- if (isArray(item) && isArray(defaultItem)) {
44
- result[key] = arrayDefaultsDeepFromArray(item, defaultItem)
45
- } else if (item == null) {
46
- result[key] = defaultItem
47
- } else if (defaultItem == null) {
48
- result[key] = item
49
- } else if (item.constructor == Object && defaultItem.constructor == Object) {
50
- result[key] = objectDefaultsDeepFromObject(item, defaultItem)
60
+ function objectDefaultsDeepFromObject(data, defaults) {
61
+ const result = { ...data }
62
+ for (const key in defaults) {
63
+ const element = data[key],
64
+ defaultElement = defaults[key]
65
+ if (isArray(element) && isArray(defaultElement)) {
66
+ result[key] = arrayDefaultsDeepFromArray(element, defaultElement)
67
+ } else if (element == null) {
68
+ result[key] = defaultElement
69
+ } else if (defaultElement == null) {
70
+ result[key] = element
71
+ } else if (element.constructor == Object && defaultElement.constructor == Object) {
72
+ result[key] = objectDefaultsDeepFromObject(element, defaultElement)
51
73
  } else {
52
- result[key] = item
74
+ result[key] = element
53
75
  }
54
76
  }
55
77
  return result
56
78
  }
57
79
 
58
- const defaultsDeep = defaultCollection => function defaulting(value) {
59
- if (isArray(value) && isArray(defaultCollection)) {
60
- return arrayDefaultsDeepFromArray(value, defaultCollection)
80
+ function _defaultsDeep(data, defaults) {
81
+ if (isArray(data) && isArray(defaults)) {
82
+ return arrayDefaultsDeepFromArray(data, defaults)
83
+ }
84
+ if (data == null || defaults == null) {
85
+ return data
86
+ }
87
+ if (data.constructor == Object && defaults.constructor == Object) {
88
+ return objectDefaultsDeepFromObject(data, defaults)
61
89
  }
62
- if (value == null || defaultCollection == null) {
63
- return value
90
+ return data
91
+ }
92
+
93
+ function defaultsDeep(...args) {
94
+ if (args.length == 1) {
95
+ return curry2(_defaultsDeep, __, args[0])
64
96
  }
65
- if (value.constructor == Object && defaultCollection.constructor == Object) {
66
- return objectDefaultsDeepFromObject(value, defaultCollection)
97
+ if (args.length == 2) {
98
+ return _defaultsDeep(...args)
67
99
  }
68
- return value
100
+ throw new TypeError('Invalid number of arguments')
69
101
  }
70
102
 
71
103
  return defaultsDeep
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(t,n){"object"==typeof module?module.exports=n:"function"==typeof define?define((()=>n)):t.defaultsDeep=n}("object"==typeof globalThis?globalThis:this,function(){"use strict";const t=Array.isArray,n=function(c,e){const r=e.length,u=c.slice();let l=-1;for(;++l<r;){const r=c[l],s=e[l];t(r)&&t(s)?u[l]=n(r,s):null==r?u[l]=s:null==s?u[l]=r:r.constructor==Object&&s.constructor==Object?u[l]=o(r,s):u[l]=r}return u},o=function(c,e){const r={...c};for(const u in e){const l=c[u],s=e[u];t(l)&&t(s)?r[u]=n(l,s):null==l?r[u]=s:null==s?r[u]=l:l.constructor==Object&&s.constructor==Object?r[u]=o(l,s):r[u]=l}return r};return c=>function(e){return t(e)&&t(c)?n(e,c):null==e||null==c?e:e.constructor==Object&&c.constructor==Object?o(e,c):e}}());
8
+ !function(t,n){"object"==typeof module?module.exports=n:"function"==typeof define?define((()=>n)):t.defaultsDeep=n}("object"==typeof globalThis?globalThis:this,function(){"use strict";const t=Array.isArray,n=Symbol.for("placeholder");function o(n,e){const c=e.length,u=n.slice();let l=-1;for(;++l<c;){const c=n[l],s=e[l];t(c)&&t(s)?u[l]=o(c,s):null==c?u[l]=s:null==s?u[l]=c:c.constructor==Object&&s.constructor==Object?u[l]=r(c,s):u[l]=c}return u}function r(n,e){const c={...n};for(const u in e){const l=n[u],s=e[u];t(l)&&t(s)?c[u]=o(l,s):null==l?c[u]=s:null==s?c[u]=l:l.constructor==Object&&s.constructor==Object?c[u]=r(l,s):c[u]=l}return c}function e(n,e){return t(n)&&t(e)?o(n,e):null==n||null==e?n:n.constructor==Object&&e.constructor==Object?r(n,e):n}return function(...t){if(1==t.length)return o=e,r=n,c=t[0],r==n?((t,n)=>function(o){return t(o,n)})(o,c):((t,n)=>function(o){return t(n,o)})(o,r);var o,r,c;if(2==t.length)return e(...t);throw new TypeError("Invalid number of arguments")}}());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -7,59 +7,91 @@
7
7
 
8
8
  const isArray = Array.isArray
9
9
 
10
- const arrayDefaultsDeepFromArray = function (array, defaultArray) {
11
- const defaultArrayLength = defaultArray.length,
12
- result = array.slice()
10
+ const __ = Symbol.for('placeholder')
11
+
12
+ // argument resolver for curry2
13
+ const curry2ResolveArg0 = (
14
+ baseFunc, arg1,
15
+ ) => function arg0Resolver(arg0) {
16
+ return baseFunc(arg0, arg1)
17
+ }
18
+
19
+ // argument resolver for curry2
20
+ const curry2ResolveArg1 = (
21
+ baseFunc, arg0,
22
+ ) => function arg1Resolver(arg1) {
23
+ return baseFunc(arg0, arg1)
24
+ }
25
+
26
+ const curry2 = function (baseFunc, arg0, arg1) {
27
+ return arg0 == __
28
+ ? curry2ResolveArg0(baseFunc, arg1)
29
+ : curry2ResolveArg1(baseFunc, arg0)
30
+ }
31
+
32
+ function arrayDefaultsDeepFromArray(data, defaults) {
33
+ const defaultArrayLength = defaults.length,
34
+ result = data.slice()
13
35
  let index = -1
14
36
  while (++index < defaultArrayLength) {
15
- const item = array[index],
16
- defaultItem = defaultArray[index]
17
- if (isArray(item) && isArray(defaultItem)) {
18
- result[index] = arrayDefaultsDeepFromArray(item, defaultItem)
19
- } else if (item == null) {
20
- result[index] = defaultItem
21
- } else if (defaultItem == null) {
22
- result[index] = item
23
- } else if (item.constructor == Object && defaultItem.constructor == Object) {
24
- result[index] = objectDefaultsDeepFromObject(item, defaultItem)
37
+ const element = data[index],
38
+ defaultElement = defaults[index]
39
+ if (isArray(element) && isArray(defaultElement)) {
40
+ result[index] = arrayDefaultsDeepFromArray(element, defaultElement)
41
+ } else if (element == null) {
42
+ result[index] = defaultElement
43
+ } else if (defaultElement == null) {
44
+ result[index] = element
45
+ } else if (element.constructor == Object && defaultElement.constructor == Object) {
46
+ result[index] = objectDefaultsDeepFromObject(element, defaultElement)
25
47
  } else {
26
- result[index] = item
48
+ result[index] = element
27
49
  }
28
50
  }
29
51
  return result
30
52
  }
31
53
 
32
- const objectDefaultsDeepFromObject = function (object, defaultObject) {
33
- const result = { ...object }
34
- for (const key in defaultObject) {
35
- const item = object[key],
36
- defaultItem = defaultObject[key]
37
- if (isArray(item) && isArray(defaultItem)) {
38
- result[key] = arrayDefaultsDeepFromArray(item, defaultItem)
39
- } else if (item == null) {
40
- result[key] = defaultItem
41
- } else if (defaultItem == null) {
42
- result[key] = item
43
- } else if (item.constructor == Object && defaultItem.constructor == Object) {
44
- result[key] = objectDefaultsDeepFromObject(item, defaultItem)
54
+ function objectDefaultsDeepFromObject(data, defaults) {
55
+ const result = { ...data }
56
+ for (const key in defaults) {
57
+ const element = data[key],
58
+ defaultElement = defaults[key]
59
+ if (isArray(element) && isArray(defaultElement)) {
60
+ result[key] = arrayDefaultsDeepFromArray(element, defaultElement)
61
+ } else if (element == null) {
62
+ result[key] = defaultElement
63
+ } else if (defaultElement == null) {
64
+ result[key] = element
65
+ } else if (element.constructor == Object && defaultElement.constructor == Object) {
66
+ result[key] = objectDefaultsDeepFromObject(element, defaultElement)
45
67
  } else {
46
- result[key] = item
68
+ result[key] = element
47
69
  }
48
70
  }
49
71
  return result
50
72
  }
51
73
 
52
- const defaultsDeep = defaultCollection => function defaulting(value) {
53
- if (isArray(value) && isArray(defaultCollection)) {
54
- return arrayDefaultsDeepFromArray(value, defaultCollection)
74
+ function _defaultsDeep(data, defaults) {
75
+ if (isArray(data) && isArray(defaults)) {
76
+ return arrayDefaultsDeepFromArray(data, defaults)
77
+ }
78
+ if (data == null || defaults == null) {
79
+ return data
80
+ }
81
+ if (data.constructor == Object && defaults.constructor == Object) {
82
+ return objectDefaultsDeepFromObject(data, defaults)
55
83
  }
56
- if (value == null || defaultCollection == null) {
57
- return value
84
+ return data
85
+ }
86
+
87
+ function defaultsDeep(...args) {
88
+ if (args.length == 1) {
89
+ return curry2(_defaultsDeep, __, args[0])
58
90
  }
59
- if (value.constructor == Object && defaultCollection.constructor == Object) {
60
- return objectDefaultsDeepFromObject(value, defaultCollection)
91
+ if (args.length == 2) {
92
+ return _defaultsDeep(...args)
61
93
  }
62
- return value
94
+ throw new TypeError('Invalid number of arguments')
63
95
  }
64
96
 
65
97
  export default defaultsDeep
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -141,13 +141,13 @@ const differenceWithArrayAsync = async function (
141
141
  ) {
142
142
  const allValuesLength = allValues.length
143
143
  while (++index < allValuesLength) {
144
- const item = allValues[index]
145
- let doesItemExistByComparator = arraySome(array, curry2(comparator, item, __))
146
- if (isPromise(doesItemExistByComparator)) {
147
- doesItemExistByComparator = await doesItemExistByComparator
144
+ const element = allValues[index]
145
+ let doesElementExistByComparator = arraySome(array, curry2(comparator, element, __))
146
+ if (isPromise(doesElementExistByComparator)) {
147
+ doesElementExistByComparator = await doesElementExistByComparator
148
148
  }
149
- if (!doesItemExistByComparator) {
150
- result.push(item)
149
+ if (!doesElementExistByComparator) {
150
+ result.push(element)
151
151
  }
152
152
  }
153
153
  return result
@@ -158,14 +158,14 @@ const differenceWithArray = function (comparator, allValues, array) {
158
158
  result = []
159
159
  let index = -1
160
160
  while (++index < allValuesLength) {
161
- const item = allValues[index],
162
- doesItemExistByComparator = arraySome(array, curry2(comparator, item, __))
163
- if (isPromise(doesItemExistByComparator)) {
164
- return doesItemExistByComparator.then(funcConcatSync(
165
- curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, item)),
161
+ const element = allValues[index],
162
+ doesElementExistByComparator = arraySome(array, curry2(comparator, element, __))
163
+ if (isPromise(doesElementExistByComparator)) {
164
+ return doesElementExistByComparator.then(funcConcatSync(
165
+ curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, element)),
166
166
  thunkify5(differenceWithArrayAsync, comparator, allValues, array, result, index)))
167
- } else if (!doesItemExistByComparator) {
168
- result.push(item)
167
+ } else if (!doesElementExistByComparator) {
168
+ result.push(element)
169
169
  }
170
170
  }
171
171
  return result
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -147,13 +147,13 @@ const differenceWithArrayAsync = async function (
147
147
  ) {
148
148
  const allValuesLength = allValues.length
149
149
  while (++index < allValuesLength) {
150
- const item = allValues[index]
151
- let doesItemExistByComparator = arraySome(array, curry2(comparator, item, __))
152
- if (isPromise(doesItemExistByComparator)) {
153
- doesItemExistByComparator = await doesItemExistByComparator
150
+ const element = allValues[index]
151
+ let doesElementExistByComparator = arraySome(array, curry2(comparator, element, __))
152
+ if (isPromise(doesElementExistByComparator)) {
153
+ doesElementExistByComparator = await doesElementExistByComparator
154
154
  }
155
- if (!doesItemExistByComparator) {
156
- result.push(item)
155
+ if (!doesElementExistByComparator) {
156
+ result.push(element)
157
157
  }
158
158
  }
159
159
  return result
@@ -164,14 +164,14 @@ const differenceWithArray = function (comparator, allValues, array) {
164
164
  result = []
165
165
  let index = -1
166
166
  while (++index < allValuesLength) {
167
- const item = allValues[index],
168
- doesItemExistByComparator = arraySome(array, curry2(comparator, item, __))
169
- if (isPromise(doesItemExistByComparator)) {
170
- return doesItemExistByComparator.then(funcConcatSync(
171
- curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, item)),
167
+ const element = allValues[index],
168
+ doesElementExistByComparator = arraySome(array, curry2(comparator, element, __))
169
+ if (isPromise(doesElementExistByComparator)) {
170
+ return doesElementExistByComparator.then(funcConcatSync(
171
+ curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, element)),
172
172
  thunkify5(differenceWithArrayAsync, comparator, allValues, array, result, index)))
173
- } else if (!doesItemExistByComparator) {
174
- result.push(item)
173
+ } else if (!doesElementExistByComparator) {
174
+ result.push(element)
175
175
  }
176
176
  }
177
177
  return result
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.2
2
+ * rubico v2.7.4
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2025 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -141,13 +141,13 @@ const differenceWithArrayAsync = async function (
141
141
  ) {
142
142
  const allValuesLength = allValues.length
143
143
  while (++index < allValuesLength) {
144
- const item = allValues[index]
145
- let doesItemExistByComparator = arraySome(array, curry2(comparator, item, __))
146
- if (isPromise(doesItemExistByComparator)) {
147
- doesItemExistByComparator = await doesItemExistByComparator
144
+ const element = allValues[index]
145
+ let doesElementExistByComparator = arraySome(array, curry2(comparator, element, __))
146
+ if (isPromise(doesElementExistByComparator)) {
147
+ doesElementExistByComparator = await doesElementExistByComparator
148
148
  }
149
- if (!doesItemExistByComparator) {
150
- result.push(item)
149
+ if (!doesElementExistByComparator) {
150
+ result.push(element)
151
151
  }
152
152
  }
153
153
  return result
@@ -158,14 +158,14 @@ const differenceWithArray = function (comparator, allValues, array) {
158
158
  result = []
159
159
  let index = -1
160
160
  while (++index < allValuesLength) {
161
- const item = allValues[index],
162
- doesItemExistByComparator = arraySome(array, curry2(comparator, item, __))
163
- if (isPromise(doesItemExistByComparator)) {
164
- return doesItemExistByComparator.then(funcConcatSync(
165
- curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, item)),
161
+ const element = allValues[index],
162
+ doesElementExistByComparator = arraySome(array, curry2(comparator, element, __))
163
+ if (isPromise(doesElementExistByComparator)) {
164
+ return doesElementExistByComparator.then(funcConcatSync(
165
+ curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, element)),
166
166
  thunkify5(differenceWithArrayAsync, comparator, allValues, array, result, index)))
167
- } else if (!doesItemExistByComparator) {
168
- result.push(item)
167
+ } else if (!doesElementExistByComparator) {
168
+ result.push(element)
169
169
  }
170
170
  }
171
171
  return result