rubico 2.7.9 → 2.8.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 (343) hide show
  1. package/README.md +2 -2
  2. package/_internal/arraySome.js +6 -6
  3. package/_internal/asyncIteratorEvery.js +10 -10
  4. package/_internal/asyncIteratorSome.js +9 -9
  5. package/_internal/curryArity.js +14 -12
  6. package/_internal/mapMapEntries.js +1 -1
  7. package/_internal/objectMapEntries.js +1 -1
  8. package/curry.js +59 -3
  9. package/dist/Transducer.es.js +1 -1
  10. package/dist/Transducer.es.min.js +1 -1
  11. package/dist/Transducer.js +1 -1
  12. package/dist/Transducer.min.js +2 -2
  13. package/dist/Transducer.mjs +1 -1
  14. package/dist/__.es.js +1 -1
  15. package/dist/__.es.min.js +1 -1
  16. package/dist/__.js +1 -1
  17. package/dist/__.min.js +2 -2
  18. package/dist/__.mjs +1 -1
  19. package/dist/all.es.js +1 -1
  20. package/dist/all.es.min.js +1 -1
  21. package/dist/all.js +1 -1
  22. package/dist/all.min.js +2 -2
  23. package/dist/all.mjs +1 -1
  24. package/dist/always.es.js +1 -1
  25. package/dist/always.es.min.js +1 -1
  26. package/dist/always.js +1 -1
  27. package/dist/always.min.js +2 -2
  28. package/dist/always.mjs +1 -1
  29. package/dist/and.es.js +1 -1
  30. package/dist/and.es.min.js +1 -1
  31. package/dist/and.js +1 -1
  32. package/dist/and.min.js +2 -2
  33. package/dist/and.mjs +1 -1
  34. package/dist/assign.es.js +1 -1
  35. package/dist/assign.es.min.js +1 -1
  36. package/dist/assign.js +1 -1
  37. package/dist/assign.min.js +2 -2
  38. package/dist/assign.mjs +1 -1
  39. package/dist/compose.es.js +1 -1
  40. package/dist/compose.es.min.js +1 -1
  41. package/dist/compose.js +1 -1
  42. package/dist/compose.min.js +2 -2
  43. package/dist/compose.mjs +1 -1
  44. package/dist/curry.es.js +17 -13
  45. package/dist/curry.es.min.js +2 -2
  46. package/dist/curry.js +17 -13
  47. package/dist/curry.min.js +2 -2
  48. package/dist/curry.mjs +17 -13
  49. package/dist/eq.es.js +1 -1
  50. package/dist/eq.es.min.js +1 -1
  51. package/dist/eq.js +1 -1
  52. package/dist/eq.min.js +2 -2
  53. package/dist/eq.mjs +1 -1
  54. package/dist/every.es.js +9 -9
  55. package/dist/every.es.min.js +2 -2
  56. package/dist/every.js +9 -9
  57. package/dist/every.min.js +2 -2
  58. package/dist/every.mjs +9 -9
  59. package/dist/filter.es.js +1 -1
  60. package/dist/filter.es.min.js +1 -1
  61. package/dist/filter.js +1 -1
  62. package/dist/filter.min.js +2 -2
  63. package/dist/filter.mjs +1 -1
  64. package/dist/flatMap.es.js +1 -1
  65. package/dist/flatMap.es.min.js +2 -2
  66. package/dist/flatMap.js +1 -1
  67. package/dist/flatMap.min.js +2 -2
  68. package/dist/flatMap.mjs +1 -1
  69. package/dist/forEach.es.js +1 -1
  70. package/dist/forEach.es.min.js +1 -1
  71. package/dist/forEach.js +1 -1
  72. package/dist/forEach.min.js +2 -2
  73. package/dist/forEach.mjs +1 -1
  74. package/dist/get.es.js +1 -1
  75. package/dist/get.es.min.js +1 -1
  76. package/dist/get.js +1 -1
  77. package/dist/get.min.js +2 -2
  78. package/dist/get.mjs +1 -1
  79. package/dist/gt.es.js +1 -1
  80. package/dist/gt.es.min.js +1 -1
  81. package/dist/gt.js +1 -1
  82. package/dist/gt.min.js +2 -2
  83. package/dist/gt.mjs +1 -1
  84. package/dist/gte.es.js +1 -1
  85. package/dist/gte.es.min.js +1 -1
  86. package/dist/gte.js +1 -1
  87. package/dist/gte.min.js +2 -2
  88. package/dist/gte.mjs +1 -1
  89. package/dist/lt.es.js +1 -1
  90. package/dist/lt.es.min.js +1 -1
  91. package/dist/lt.js +1 -1
  92. package/dist/lt.min.js +2 -2
  93. package/dist/lt.mjs +1 -1
  94. package/dist/lte.es.js +1 -1
  95. package/dist/lte.es.min.js +1 -1
  96. package/dist/lte.js +1 -1
  97. package/dist/lte.min.js +2 -2
  98. package/dist/lte.mjs +1 -1
  99. package/dist/map.es.js +13 -13
  100. package/dist/map.es.min.js +2 -2
  101. package/dist/map.js +13 -13
  102. package/dist/map.min.js +2 -2
  103. package/dist/map.mjs +13 -13
  104. package/dist/not.es.js +1 -1
  105. package/dist/not.es.min.js +1 -1
  106. package/dist/not.js +1 -1
  107. package/dist/not.min.js +2 -2
  108. package/dist/not.mjs +1 -1
  109. package/dist/omit.es.js +1 -1
  110. package/dist/omit.es.min.js +1 -1
  111. package/dist/omit.js +1 -1
  112. package/dist/omit.min.js +2 -2
  113. package/dist/omit.mjs +1 -1
  114. package/dist/or.es.js +1 -1
  115. package/dist/or.es.min.js +1 -1
  116. package/dist/or.js +1 -1
  117. package/dist/or.min.js +2 -2
  118. package/dist/or.mjs +1 -1
  119. package/dist/pick.es.js +1 -1
  120. package/dist/pick.es.min.js +1 -1
  121. package/dist/pick.js +1 -1
  122. package/dist/pick.min.js +2 -2
  123. package/dist/pick.mjs +1 -1
  124. package/dist/pipe.es.js +1 -1
  125. package/dist/pipe.es.min.js +1 -1
  126. package/dist/pipe.js +1 -1
  127. package/dist/pipe.min.js +2 -2
  128. package/dist/pipe.mjs +1 -1
  129. package/dist/reduce.es.js +1 -1
  130. package/dist/reduce.es.min.js +1 -1
  131. package/dist/reduce.js +1 -1
  132. package/dist/reduce.min.js +2 -2
  133. package/dist/reduce.mjs +1 -1
  134. package/dist/rubico.es.js +40 -36
  135. package/dist/rubico.es.min.js +2 -2
  136. package/dist/rubico.global.js +40 -36
  137. package/dist/rubico.global.min.js +2 -2
  138. package/dist/rubico.js +40 -36
  139. package/dist/rubico.min.js +2 -2
  140. package/dist/rubico.mjs +40 -36
  141. package/dist/set.es.js +1 -1
  142. package/dist/set.es.min.js +1 -1
  143. package/dist/set.js +1 -1
  144. package/dist/set.min.js +2 -2
  145. package/dist/set.mjs +1 -1
  146. package/dist/some.es.js +14 -14
  147. package/dist/some.es.min.js +2 -2
  148. package/dist/some.js +14 -14
  149. package/dist/some.min.js +2 -2
  150. package/dist/some.mjs +14 -14
  151. package/dist/switchCase.es.js +1 -1
  152. package/dist/switchCase.es.min.js +1 -1
  153. package/dist/switchCase.js +1 -1
  154. package/dist/switchCase.min.js +2 -2
  155. package/dist/switchCase.mjs +1 -1
  156. package/dist/tap.es.js +1 -1
  157. package/dist/tap.es.min.js +1 -1
  158. package/dist/tap.js +1 -1
  159. package/dist/tap.min.js +2 -2
  160. package/dist/tap.mjs +1 -1
  161. package/dist/thunkify.es.js +1 -1
  162. package/dist/thunkify.es.min.js +1 -1
  163. package/dist/thunkify.js +1 -1
  164. package/dist/thunkify.min.js +2 -2
  165. package/dist/thunkify.mjs +1 -1
  166. package/dist/transform.es.js +1 -1
  167. package/dist/transform.es.min.js +1 -1
  168. package/dist/transform.js +1 -1
  169. package/dist/transform.min.js +2 -2
  170. package/dist/transform.mjs +1 -1
  171. package/dist/tryCatch.es.js +1 -1
  172. package/dist/tryCatch.es.min.js +1 -1
  173. package/dist/tryCatch.js +1 -1
  174. package/dist/tryCatch.min.js +2 -2
  175. package/dist/tryCatch.mjs +1 -1
  176. package/dist/x/append.es.js +1 -1
  177. package/dist/x/append.es.min.js +1 -1
  178. package/dist/x/append.js +1 -1
  179. package/dist/x/append.min.js +2 -2
  180. package/dist/x/append.mjs +1 -1
  181. package/dist/x/callProp.es.js +1 -1
  182. package/dist/x/callProp.es.min.js +1 -1
  183. package/dist/x/callProp.js +1 -1
  184. package/dist/x/callProp.min.js +2 -2
  185. package/dist/x/callProp.mjs +1 -1
  186. package/dist/x/defaultsDeep.es.js +1 -1
  187. package/dist/x/defaultsDeep.es.min.js +1 -1
  188. package/dist/x/defaultsDeep.js +1 -1
  189. package/dist/x/defaultsDeep.min.js +2 -2
  190. package/dist/x/defaultsDeep.mjs +1 -1
  191. package/dist/x/differenceWith.es.js +6 -6
  192. package/dist/x/differenceWith.es.min.js +2 -2
  193. package/dist/x/differenceWith.js +6 -6
  194. package/dist/x/differenceWith.min.js +2 -2
  195. package/dist/x/differenceWith.mjs +6 -6
  196. package/dist/x/filterOut.es.js +1 -1
  197. package/dist/x/filterOut.es.min.js +1 -1
  198. package/dist/x/filterOut.js +1 -1
  199. package/dist/x/filterOut.min.js +2 -2
  200. package/dist/x/filterOut.mjs +1 -1
  201. package/dist/x/find.es.js +1 -1
  202. package/dist/x/find.es.min.js +1 -1
  203. package/dist/x/find.js +1 -1
  204. package/dist/x/find.min.js +2 -2
  205. package/dist/x/find.mjs +1 -1
  206. package/dist/x/findIndex.es.js +1 -1
  207. package/dist/x/findIndex.es.min.js +1 -1
  208. package/dist/x/findIndex.js +1 -1
  209. package/dist/x/findIndex.min.js +2 -2
  210. package/dist/x/findIndex.mjs +1 -1
  211. package/dist/x/first.es.js +1 -1
  212. package/dist/x/first.es.min.js +1 -1
  213. package/dist/x/first.js +1 -1
  214. package/dist/x/first.min.js +2 -2
  215. package/dist/x/first.mjs +1 -1
  216. package/dist/x/flatten.es.js +1 -1
  217. package/dist/x/flatten.es.min.js +2 -2
  218. package/dist/x/flatten.js +1 -1
  219. package/dist/x/flatten.min.js +2 -2
  220. package/dist/x/flatten.mjs +1 -1
  221. package/dist/x/groupBy.es.js +1 -1
  222. package/dist/x/groupBy.es.min.js +1 -1
  223. package/dist/x/groupBy.js +1 -1
  224. package/dist/x/groupBy.min.js +2 -2
  225. package/dist/x/groupBy.mjs +1 -1
  226. package/dist/x/has.es.js +1 -1
  227. package/dist/x/has.es.min.js +1 -1
  228. package/dist/x/has.js +1 -1
  229. package/dist/x/has.min.js +2 -2
  230. package/dist/x/has.mjs +1 -1
  231. package/dist/x/identity.es.js +1 -1
  232. package/dist/x/identity.es.min.js +1 -1
  233. package/dist/x/identity.js +1 -1
  234. package/dist/x/identity.min.js +2 -2
  235. package/dist/x/identity.mjs +1 -1
  236. package/dist/x/includes.es.js +1 -1
  237. package/dist/x/includes.es.min.js +1 -1
  238. package/dist/x/includes.js +1 -1
  239. package/dist/x/includes.min.js +2 -2
  240. package/dist/x/includes.mjs +1 -1
  241. package/dist/x/isDeepEqual.es.js +1 -1
  242. package/dist/x/isDeepEqual.es.min.js +1 -1
  243. package/dist/x/isDeepEqual.js +1 -1
  244. package/dist/x/isDeepEqual.min.js +2 -2
  245. package/dist/x/isDeepEqual.mjs +1 -1
  246. package/dist/x/isEmpty.es.js +1 -1
  247. package/dist/x/isEmpty.es.min.js +1 -1
  248. package/dist/x/isEmpty.js +1 -1
  249. package/dist/x/isEmpty.min.js +2 -2
  250. package/dist/x/isEmpty.mjs +1 -1
  251. package/dist/x/isEqual.es.js +1 -1
  252. package/dist/x/isEqual.es.min.js +1 -1
  253. package/dist/x/isEqual.js +1 -1
  254. package/dist/x/isEqual.min.js +2 -2
  255. package/dist/x/isEqual.mjs +1 -1
  256. package/dist/x/isFunction.es.js +1 -1
  257. package/dist/x/isFunction.es.min.js +1 -1
  258. package/dist/x/isFunction.js +1 -1
  259. package/dist/x/isFunction.min.js +2 -2
  260. package/dist/x/isFunction.mjs +1 -1
  261. package/dist/x/isIn.es.js +1 -1
  262. package/dist/x/isIn.es.min.js +1 -1
  263. package/dist/x/isIn.js +1 -1
  264. package/dist/x/isIn.min.js +2 -2
  265. package/dist/x/isIn.mjs +1 -1
  266. package/dist/x/isObject.es.js +1 -1
  267. package/dist/x/isObject.es.min.js +1 -1
  268. package/dist/x/isObject.js +1 -1
  269. package/dist/x/isObject.min.js +2 -2
  270. package/dist/x/isObject.mjs +1 -1
  271. package/dist/x/isString.es.js +1 -1
  272. package/dist/x/isString.es.min.js +1 -1
  273. package/dist/x/isString.js +1 -1
  274. package/dist/x/isString.min.js +2 -2
  275. package/dist/x/isString.mjs +1 -1
  276. package/dist/x/keys.es.js +1 -1
  277. package/dist/x/keys.es.min.js +1 -1
  278. package/dist/x/keys.js +1 -1
  279. package/dist/x/keys.min.js +2 -2
  280. package/dist/x/keys.mjs +1 -1
  281. package/dist/x/last.es.js +1 -1
  282. package/dist/x/last.es.min.js +1 -1
  283. package/dist/x/last.js +1 -1
  284. package/dist/x/last.min.js +2 -2
  285. package/dist/x/last.mjs +1 -1
  286. package/dist/x/maxBy.es.js +1 -1
  287. package/dist/x/maxBy.es.min.js +1 -1
  288. package/dist/x/maxBy.js +1 -1
  289. package/dist/x/maxBy.min.js +2 -2
  290. package/dist/x/maxBy.mjs +1 -1
  291. package/dist/x/noop.es.js +1 -1
  292. package/dist/x/noop.es.min.js +1 -1
  293. package/dist/x/noop.js +1 -1
  294. package/dist/x/noop.min.js +2 -2
  295. package/dist/x/noop.mjs +1 -1
  296. package/dist/x/pluck.es.js +13 -13
  297. package/dist/x/pluck.es.min.js +2 -2
  298. package/dist/x/pluck.js +13 -13
  299. package/dist/x/pluck.min.js +2 -2
  300. package/dist/x/pluck.mjs +13 -13
  301. package/dist/x/prepend.es.js +1 -1
  302. package/dist/x/prepend.es.min.js +1 -1
  303. package/dist/x/prepend.js +1 -1
  304. package/dist/x/prepend.min.js +2 -2
  305. package/dist/x/prepend.mjs +1 -1
  306. package/dist/x/size.es.js +1 -1
  307. package/dist/x/size.es.min.js +1 -1
  308. package/dist/x/size.js +1 -1
  309. package/dist/x/size.min.js +2 -2
  310. package/dist/x/size.mjs +1 -1
  311. package/dist/x/trace.es.js +1 -1
  312. package/dist/x/trace.es.min.js +1 -1
  313. package/dist/x/trace.js +1 -1
  314. package/dist/x/trace.min.js +2 -2
  315. package/dist/x/trace.mjs +1 -1
  316. package/dist/x/unionWith.es.js +1 -1
  317. package/dist/x/unionWith.es.min.js +1 -1
  318. package/dist/x/unionWith.js +1 -1
  319. package/dist/x/unionWith.min.js +2 -2
  320. package/dist/x/unionWith.mjs +1 -1
  321. package/dist/x/uniq.es.js +1 -1
  322. package/dist/x/uniq.es.min.js +1 -1
  323. package/dist/x/uniq.js +1 -1
  324. package/dist/x/uniq.min.js +2 -2
  325. package/dist/x/uniq.mjs +1 -1
  326. package/dist/x/unless.es.js +1 -1
  327. package/dist/x/unless.es.min.js +1 -1
  328. package/dist/x/unless.js +1 -1
  329. package/dist/x/unless.min.js +2 -2
  330. package/dist/x/unless.mjs +1 -1
  331. package/dist/x/values.es.js +1 -1
  332. package/dist/x/values.es.min.js +1 -1
  333. package/dist/x/values.js +1 -1
  334. package/dist/x/values.min.js +2 -2
  335. package/dist/x/values.mjs +1 -1
  336. package/dist/x/when.es.js +1 -1
  337. package/dist/x/when.es.min.js +1 -1
  338. package/dist/x/when.js +1 -1
  339. package/dist/x/when.min.js +2 -2
  340. package/dist/x/when.mjs +1 -1
  341. package/es.js +40 -36
  342. package/index.js +40 -36
  343. package/package.json +2 -1
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(r,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):r.prepend=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const r=function(r){return"string"==typeof r||null!=r&&r.constructor==String},t=Array.isArray;return n=>function(o){if(t(o))return t(n)?[...n,...o]:[n,...o];if(r(o)){if(!r(n))throw new TypeError(`${n} is not a string`);return`${n}${o}`}throw new TypeError(`${o} is not an Array or string`)}}());
8
+ !function(r,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):r.prepend=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const r=function(r){return"string"==typeof r||null!=r&&r.constructor==String},t=Array.isArray;return n=>function(o){if(t(o))return t(n)?[...n,...o]:[n,...o];if(r(o)){if(!r(n))throw new TypeError(`${n} is not a string`);return`${n}${o}`}throw new TypeError(`${o} is not an Array or string`)}}());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/size.es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/size.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(e,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):e.size=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";return e=>"string"==typeof e?e.length:null==e?0:"number"==typeof e.length?e.length:"number"==typeof e.size?e.size:e.constructor==Object?(e=>{let t=0;for(const n in e)t+=1;return t})(e):1}());
8
+ !function(e,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):e.size=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";return e=>"string"==typeof e?e.length:null==e?0:"number"==typeof e.length?e.length:"number"==typeof e.size?e.size:e.constructor==Object?(e=>{let t=0;for(const n in e)t+=1;return t})(e):1}());
package/dist/x/size.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/trace.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.trace=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=n=>function(){return n},r=(n,t,r)=>n?t():r(),e=Symbol.for("placeholder"),o=function(n,t,r,o){return t==e?((n,t,r)=>function(e){return n(e,t,r)})(n,r,o):r==e?((n,t,r)=>function(e){return n(t,e,r)})(n,t,o):((n,t,r)=>function(e){return n(t,r,e)})(n,t,r)},u=Array.isArray,c=function(t){if(u(t)){const r=t.length;let e=-1;for(;++e<r;){const r=t[e];if(n(r))return!0}return!1}for(const r in t){const e=t[r];if(n(e))return!0}return!1},i=Promise.all.bind(Promise),f=function(r,e){const o=r[0],u=e(...r);return n(u)?u.then(t(o)):o},s=function(...n){const t=n.pop();return 0==n.length?(r=f,u=t,(o=e)==e?((n,t)=>function(...r){return n(r,t)})(r,u):((n,t)=>function(...r){return n(t,r)})(r,o)):c(n)?i(n).then(function(n,t,r){return t==e?((n,t)=>function(r){return n(r,t)})(n,r):((n,t)=>function(r){return n(t,r)})(n,t)}(f,e,t)):f(n,t);var r,o,u},l=function(u,c,i){const f=u(...i);if(n(f))return f.then(o(r,e,((n,t)=>function(){return n(...t)})(s(c),i),t(i[0])));if(f){const r=c(...i);if(n(r))return r.then(t(i[0]))}return i[0]};s.if=function(...n){if(2==n.length)return t=l,r=n[0],u=n[1],f=e,r==e?((n,t,r)=>function(...e){return n(e,t,r)})(t,u,f):u==e?((n,t,r)=>function(...e){return n(t,e,r)})(t,r,f):((n,t,r)=>function(...e){return n(t,r,e)})(t,r,u);var t,r,u,f;const s=n.length,h=n[s-1],a=n[s-2],p=n.slice(0,-2);return c(p)?i(p).then(o(l,a,h,e)):l(a,h,n)};const h=console.log;return function(...t){const r=t[0];return"function"==typeof r?s((e=r,o=h,function(...t){const r=e(...t);return n(r)?r.then(o):o(r)})):s(h)(...t);var e,o}}());
8
+ !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):n.trace=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=n=>function(){return n},r=(n,t,r)=>n?t():r(),e=Symbol.for("placeholder"),o=function(n,t,r,o){return t==e?((n,t,r)=>function(e){return n(e,t,r)})(n,r,o):r==e?((n,t,r)=>function(e){return n(t,e,r)})(n,t,o):((n,t,r)=>function(e){return n(t,r,e)})(n,t,r)},u=Array.isArray,c=function(t){if(u(t)){const r=t.length;let e=-1;for(;++e<r;){const r=t[e];if(n(r))return!0}return!1}for(const r in t){const e=t[r];if(n(e))return!0}return!1},i=Promise.all.bind(Promise),f=function(r,e){const o=r[0],u=e(...r);return n(u)?u.then(t(o)):o},s=function(...n){const t=n.pop();return 0==n.length?(r=f,u=t,(o=e)==e?((n,t)=>function(...r){return n(r,t)})(r,u):((n,t)=>function(...r){return n(t,r)})(r,o)):c(n)?i(n).then(function(n,t,r){return t==e?((n,t)=>function(r){return n(r,t)})(n,r):((n,t)=>function(r){return n(t,r)})(n,t)}(f,e,t)):f(n,t);var r,o,u},l=function(u,c,i){const f=u(...i);if(n(f))return f.then(o(r,e,((n,t)=>function(){return n(...t)})(s(c),i),t(i[0])));if(f){const r=c(...i);if(n(r))return r.then(t(i[0]))}return i[0]};s.if=function(...n){if(2==n.length)return t=l,r=n[0],u=n[1],f=e,r==e?((n,t,r)=>function(...e){return n(e,t,r)})(t,u,f):u==e?((n,t,r)=>function(...e){return n(t,e,r)})(t,r,f):((n,t,r)=>function(...e){return n(t,r,e)})(t,r,u);var t,r,u,f;const s=n.length,h=n[s-1],a=n[s-2],p=n.slice(0,-2);return c(p)?i(p).then(o(l,a,h,e)):l(a,h,n)};const h=console.log;return function(...t){const r=t[0];return"function"==typeof r?s((e=r,o=h,function(...t){const r=e(...t);return n(r)?r.then(o):o(r)})):s(h)(...t);var e,o}}());
package/dist/x/trace.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.unionWith=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Array.isArray,t=n=>null!=n&&"function"==typeof n.then,e=Promise.all.bind(Promise),o=Symbol.for("placeholder"),u=function(n,t,e,u){return t==o?((n,t,e)=>function(o){return n(o,t,e)})(n,e,u):e==o?((n,t,e)=>function(o){return n(t,o,e)})(n,t,u):((n,t,e)=>function(o){return n(t,e,o)})(n,t,e)},r=(n,t,e)=>function(){return n(t,e)},f=(n,t,e,o,u)=>function(){return n(t,e,o,u)},c=(n,t)=>function(...e){return t(n(...e))},i=(n,t,e)=>n[t](e),s=(n,t,e)=>n?t():e(),l=function(n,t){return n.push(t),n},h=n=>function(){return n},p=function(n,t,e){return t==o?((n,t)=>function(e){return n(e,t)})(n,e):((n,t)=>function(e){return n(t,e)})(n,t)},a=(n,t)=>t,y=n=>n,g=async function(n,o){const u=[];for await(const e of n){const n=o(e);t(n)&&u.push(n)}return 0==u.length?n:e(u).then(h(n))},b=Symbol.iterator,d=Symbol.asyncIterator,m=function(){},w=function(n,r,f){const c=n.length,s=[];let l=-1;for(;++l<c;){const e=f(r,n[l]);if(t(e))s.push(e);else if(e)return!0}return 0!=s.length&&e(s).then(u(i,o,"some",Boolean))},j=async function(n,e,o,u){const r=n.length;for(;++u<r;){const r=n[u],f=w(o,r,e);(t(f)?await f:f)||o.push(r)}return o};return i=>function(A){if(n(A))return function(n,e){const i=n.length,h=[];let p=-1;for(;++p<i;){const i=n[p],a=w(h,i,e);if(t(a))return a.then(c(u(s,o,m,r(l,h,i)),f(j,n,e,h,p)));a||h.push(i)}return h}(function(u){const r=u.length,f=[],i=[];let s=-1;for(;++s<r;){const e=u[s];if(n(e)){const n=e.length;let t=-1;for(;++t<n;)i.push(e[t])}else if(null==e)i.push(e);else if("function"==typeof e.then)f.push(e.then(p(l,i,o)));else if("function"==typeof e[b])for(const n of e)i.push(n);else if("function"==typeof e[d])f.push(g(e[d](),p(l,i,o)));else if("function"==typeof e.chain){const n=e.chain(y);t(n)?f.push(n.then(p(l,i,o))):i.push(n)}else if("function"==typeof e.flatMap){const n=e.flatMap(y);t(n)?f.push(n.then(p(l,i,o))):i.push(n)}else if("function"==typeof e.reduce){const n=e.reduce(c(a,p(l,i,o)),null);t(n)&&f.push(n)}else if(e.constructor==Object)for(const n in e)i.push(e[n]);else i.push(e)}return 0==f.length?i:e(f).then(h(i))}(A),i);throw new TypeError(`${A} is not an Array`)}}());
8
+ !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):n.unionWith=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Array.isArray,t=n=>null!=n&&"function"==typeof n.then,e=Promise.all.bind(Promise),o=Symbol.for("placeholder"),u=function(n,t,e,u){return t==o?((n,t,e)=>function(o){return n(o,t,e)})(n,e,u):e==o?((n,t,e)=>function(o){return n(t,o,e)})(n,t,u):((n,t,e)=>function(o){return n(t,e,o)})(n,t,e)},r=(n,t,e)=>function(){return n(t,e)},f=(n,t,e,o,u)=>function(){return n(t,e,o,u)},c=(n,t)=>function(...e){return t(n(...e))},i=(n,t,e)=>n[t](e),s=(n,t,e)=>n?t():e(),l=function(n,t){return n.push(t),n},h=n=>function(){return n},p=function(n,t,e){return t==o?((n,t)=>function(e){return n(e,t)})(n,e):((n,t)=>function(e){return n(t,e)})(n,t)},a=(n,t)=>t,y=n=>n,g=async function(n,o){const u=[];for await(const e of n){const n=o(e);t(n)&&u.push(n)}return 0==u.length?n:e(u).then(h(n))},b=Symbol.iterator,d=Symbol.asyncIterator,m=function(){},w=function(n,r,f){const c=n.length,s=[];let l=-1;for(;++l<c;){const e=f(r,n[l]);if(t(e))s.push(e);else if(e)return!0}return 0!=s.length&&e(s).then(u(i,o,"some",Boolean))},j=async function(n,e,o,u){const r=n.length;for(;++u<r;){const r=n[u],f=w(o,r,e);(t(f)?await f:f)||o.push(r)}return o};return i=>function(A){if(n(A))return function(n,e){const i=n.length,h=[];let p=-1;for(;++p<i;){const i=n[p],a=w(h,i,e);if(t(a))return a.then(c(u(s,o,m,r(l,h,i)),f(j,n,e,h,p)));a||h.push(i)}return h}(function(u){const r=u.length,f=[],i=[];let s=-1;for(;++s<r;){const e=u[s];if(n(e)){const n=e.length;let t=-1;for(;++t<n;)i.push(e[t])}else if(null==e)i.push(e);else if("function"==typeof e.then)f.push(e.then(p(l,i,o)));else if("function"==typeof e[b])for(const n of e)i.push(n);else if("function"==typeof e[d])f.push(g(e[d](),p(l,i,o)));else if("function"==typeof e.chain){const n=e.chain(y);t(n)?f.push(n.then(p(l,i,o))):i.push(n)}else if("function"==typeof e.flatMap){const n=e.flatMap(y);t(n)?f.push(n.then(p(l,i,o))):i.push(n)}else if("function"==typeof e.reduce){const n=e.reduce(c(a,p(l,i,o)),null);t(n)&&f.push(n)}else if(e.constructor==Object)for(const n in e)i.push(e[n]);else i.push(e)}return 0==f.length?i:e(f).then(h(i))}(A),i);throw new TypeError(`${A} is not an Array`)}}());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/uniq.es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/uniq.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(r,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):r.uniq=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const r=Array.isArray;return t=>{if(!r(t))throw Error("uniq(arr): arr is not an array");return[...new Set(t)]}}());
8
+ !function(r,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):r.uniq=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const r=Array.isArray;return t=>{if(!r(t))throw Error("uniq(arr): arr is not an array");return[...new Set(t)]}}());
package/dist/x/uniq.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/unless.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.unless=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Symbol.for("placeholder"),t=(n,t,e)=>n?t():e();return(e,o)=>function(u){const r=e(u);return(n=>null!=n&&"function"==typeof n.then)(r)?r.then((f=t,c=n,i=(n=>function(){return n})(u),l=((n,t)=>function(){return n(t)})(o,u),c==n?((n,t,e)=>function(o){return n(o,t,e)})(f,i,l):i==n?((n,t,e)=>function(o){return n(t,o,e)})(f,c,l):((n,t,e)=>function(o){return n(t,e,o)})(f,c,i))):r?u:o(u);var f,c,i,l}}());
8
+ !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):n.unless=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Symbol.for("placeholder"),t=(n,t,e)=>n?t():e();return(e,o)=>function(u){const r=e(u);return(n=>null!=n&&"function"==typeof n.then)(r)?r.then((f=t,c=n,i=(n=>function(){return n})(u),l=((n,t)=>function(){return n(t)})(o,u),c==n?((n,t,e)=>function(o){return n(o,t,e)})(f,i,l):i==n?((n,t,e)=>function(o){return n(t,o,e)})(f,c,l):((n,t,e)=>function(o){return n(t,e,o)})(f,c,i))):r?u:o(u);var f,c,i,l}}());
package/dist/x/unless.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/values.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(e,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):e.values=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const e=Object.values;return t=>null==t?[]:"function"==typeof t.values?[...t.values()]:e(t)}());
8
+ !function(e,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):e.values=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const e=Object.values;return t=>null==t?[]:"function"==typeof t.values?[...t.values()]:e(t)}());
package/dist/x/values.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/when.es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/x/when.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.when=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Symbol.for("placeholder"),t=(n,t,e)=>n?t():e();return(e,o)=>function(u){const r=e(u);return(n=>null!=n&&"function"==typeof n.then)(r)?r.then((f=t,c=n,i=((n,t)=>function(){return n(t)})(o,u),l=(n=>function(){return n})(u),c==n?((n,t,e)=>function(o){return n(o,t,e)})(f,i,l):i==n?((n,t,e)=>function(o){return n(t,o,e)})(f,c,l):((n,t,e)=>function(o){return n(t,e,o)})(f,c,i))):r?o(u):u;var f,c,i,l}}());
8
+ !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define(()=>t):n.when=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Symbol.for("placeholder"),t=(n,t,e)=>n?t():e();return(e,o)=>function(u){const r=e(u);return(n=>null!=n&&"function"==typeof n.then)(r)?r.then((f=t,c=n,i=((n,t)=>function(){return n(t)})(o,u),l=(n=>function(){return n})(u),c==n?((n,t,e)=>function(o){return n(o,t,e)})(f,i,l):i==n?((n,t,e)=>function(o){return n(t,o,e)})(f,c,l):((n,t,e)=>function(o){return n(t,e,o)})(f,c,i))):r?o(u):u;var f,c,i,l}}());
package/dist/x/when.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.7.9
2
+ * rubico v2.8.0
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2026 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1062,7 +1062,7 @@ const objectMapPool = function (o, concurrency, f) {
1062
1062
  return result
1063
1063
  }
1064
1064
 
1065
- const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
1065
+ const _curryArity = (arity, func, context, args) => function curried(...curriedArgs) {
1066
1066
  const argsLength = args.length,
1067
1067
  curriedArgsLength = curriedArgs.length,
1068
1068
  nextArgs = []
@@ -1083,8 +1083,8 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
1083
1083
  }
1084
1084
  if (nextArgs.length == arity) {
1085
1085
  return numCurriedPlaceholders == 0
1086
- ? func(...nextArgs)
1087
- : curryArity(arity, func, nextArgs)
1086
+ ? func.apply(context, nextArgs)
1087
+ : curryArity(arity, func, context, nextArgs)
1088
1088
  }
1089
1089
  }
1090
1090
 
@@ -1096,26 +1096,26 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
1096
1096
  nextArgs.push(curriedArg)
1097
1097
  if (nextArgs.length == arity) {
1098
1098
  return numCurriedPlaceholders == 0
1099
- ? func(...nextArgs)
1100
- : curryArity(arity, func, nextArgs)
1099
+ ? func.apply(context, nextArgs)
1100
+ : curryArity(arity, func, context, nextArgs)
1101
1101
  }
1102
1102
  }
1103
- return curryArity(arity, func, nextArgs)
1103
+ return curryArity(arity, func, context, nextArgs)
1104
1104
  }
1105
1105
 
1106
- const curryArity = function (arity, func, args) {
1106
+ const curryArity = function (arity, func, context, args) {
1107
1107
  const argsLength = args.length
1108
1108
  if (argsLength < arity) {
1109
- return _curryArity(arity, func, args)
1109
+ return _curryArity(arity, func, context, args)
1110
1110
  }
1111
1111
  let argsIndex = -1
1112
1112
  while (++argsIndex < argsLength) {
1113
1113
  const arg = args[argsIndex]
1114
1114
  if (arg == __) {
1115
- return _curryArity(arity, func, args)
1115
+ return _curryArity(arity, func, context, args)
1116
1116
  }
1117
1117
  }
1118
- return func(...args)
1118
+ return func.apply(context, args)
1119
1119
  }
1120
1120
 
1121
1121
  const spread2 = func => function spreading2([arg0, arg1]) {
@@ -1130,7 +1130,7 @@ const objectMapEntries = function (object, mapper) {
1130
1130
  mapping = mapper([key, value])
1131
1131
  if (isPromise(mapping)) {
1132
1132
  promises.push(mapping.then(
1133
- spread2(curryArity(3, objectSet, [result]))))
1133
+ spread2(curryArity(3, objectSet, this, [result]))))
1134
1134
  } else {
1135
1135
  result[mapping[0]] = mapping[1]
1136
1136
  }
@@ -1146,7 +1146,7 @@ const mapMapEntriesForEachCallback = (
1146
1146
  ) => function callback(value, key) {
1147
1147
  const mapping = mapper([key, value])
1148
1148
  if (isPromise(mapping)) {
1149
- promises.push(mapping.then(spread2(curryArity(3, mapSet, [result]))))
1149
+ promises.push(mapping.then(spread2(curryArity(3, mapSet, this, [result]))))
1150
1150
  } else {
1151
1151
  result.set(mapping[0], mapping[1])
1152
1152
  }
@@ -2455,21 +2455,21 @@ const SelfReferencingPromise = function (basePromise) {
2455
2455
  }
2456
2456
 
2457
2457
  const asyncArraySome = async function (
2458
- array, predicate, index, promisesInFlight,
2458
+ array, predicate, index, promises,
2459
2459
  ) {
2460
2460
  const length = array.length
2461
2461
 
2462
2462
  while (++index < length) {
2463
2463
  const predication = predicate(array[index])
2464
2464
  if (isPromise(predication)) {
2465
- promisesInFlight.add(SelfReferencingPromise(predication))
2465
+ promises.add(SelfReferencingPromise(predication))
2466
2466
  } else if (predication) {
2467
2467
  return true
2468
2468
  }
2469
2469
  }
2470
- while (promisesInFlight.size > 0) {
2471
- const [predication, promise] = await promiseRace(promisesInFlight)
2472
- promisesInFlight.delete(promise)
2470
+ while (promises.size > 0) {
2471
+ const [predication, promise] = await promiseRace(promises)
2472
+ promises.delete(promise)
2473
2473
  if (predication) {
2474
2474
  return true
2475
2475
  }
@@ -2494,7 +2494,7 @@ const arraySome = function (array, predicate) {
2494
2494
  }
2495
2495
 
2496
2496
  const asyncIteratorSome = async function (
2497
- iterator, predicate, promisesInFlight, maxConcurrency = 20,
2497
+ iterator, predicate, promises, maxConcurrency = 20,
2498
2498
  ) {
2499
2499
  let iteration = iterator.next()
2500
2500
  if (isPromise(iteration)) {
@@ -2502,16 +2502,16 @@ const asyncIteratorSome = async function (
2502
2502
  }
2503
2503
 
2504
2504
  while (!iteration.done) {
2505
- if (promisesInFlight.size >= maxConcurrency) {
2506
- const [predication, promise] = await promiseRace(promisesInFlight)
2507
- promisesInFlight.delete(promise)
2505
+ if (promises.size >= maxConcurrency) {
2506
+ const [predication, promise] = await promiseRace(promises)
2507
+ promises.delete(promise)
2508
2508
  if (predication) {
2509
2509
  return true
2510
2510
  }
2511
2511
  }
2512
2512
  const predication = predicate(iteration.value)
2513
2513
  if (isPromise(predication)) {
2514
- promisesInFlight.add(SelfReferencingPromise(predication))
2514
+ promises.add(SelfReferencingPromise(predication))
2515
2515
  } else if (predication) {
2516
2516
  return true
2517
2517
  }
@@ -2520,9 +2520,9 @@ const asyncIteratorSome = async function (
2520
2520
  iteration = await iteration
2521
2521
  }
2522
2522
  }
2523
- while (promisesInFlight.size > 0) {
2524
- const [predication, promise] = await promiseRace(promisesInFlight)
2525
- promisesInFlight.delete(promise)
2523
+ while (promises.size > 0) {
2524
+ const [predication, promise] = await promiseRace(promises)
2525
+ promises.delete(promise)
2526
2526
  if (predication) {
2527
2527
  return true
2528
2528
  }
@@ -2621,13 +2621,13 @@ const iteratorEvery = function (iterator, predicate) {
2621
2621
  }
2622
2622
 
2623
2623
  const asyncIteratorEvery = async function (
2624
- asyncIterator, predicate, promisesInFlight, maxConcurrency = 20,
2624
+ asyncIterator, predicate, promises, maxConcurrency = 20,
2625
2625
  ) {
2626
2626
  let iteration = await asyncIterator.next()
2627
2627
  while (!iteration.done) {
2628
- if (promisesInFlight.size >= maxConcurrency) {
2629
- const [predication, promise] = await promiseRace(promisesInFlight)
2630
- promisesInFlight.delete(promise)
2628
+ if (promises.size >= maxConcurrency) {
2629
+ const [predication, promise] = await promiseRace(promises)
2630
+ promises.delete(promise)
2631
2631
  if (!predication) {
2632
2632
  return false
2633
2633
  }
@@ -2635,15 +2635,15 @@ const asyncIteratorEvery = async function (
2635
2635
 
2636
2636
  const predication = predicate(iteration.value)
2637
2637
  if (isPromise(predication)) {
2638
- promisesInFlight.add(SelfReferencingPromise(predication))
2638
+ promises.add(SelfReferencingPromise(predication))
2639
2639
  } else if (!predication) {
2640
2640
  return false
2641
2641
  }
2642
2642
  iteration = await asyncIterator.next()
2643
2643
  }
2644
- while (promisesInFlight.size > 0) {
2645
- const [predication, promise] = await promiseRace(promisesInFlight)
2646
- promisesInFlight.delete(promise)
2644
+ while (promises.size > 0) {
2645
+ const [predication, promise] = await promiseRace(promises)
2646
+ promises.delete(promise)
2647
2647
  if (!predication) {
2648
2648
  return false
2649
2649
  }
@@ -3285,10 +3285,14 @@ const thunkify = (func, ...args) => function thunk() {
3285
3285
  return func(...args)
3286
3286
  }
3287
3287
 
3288
- const curry = (func, ...args) => curryArity(func.length, func, args)
3288
+ const curry = (func, ...args) => curryArity(func.length, func, this, args)
3289
3289
 
3290
3290
  curry.arity = function curryArity_(arity, func, ...args) {
3291
- return curryArity(arity, func, args)
3291
+ return curryArity(arity, func, this, args)
3292
+ }
3293
+
3294
+ curry.call = function call(func, context, ...args) {
3295
+ return curryArity(func.length, func, context, args)
3292
3296
  }
3293
3297
 
3294
3298
  const rubico = {