rubico 2.8.6 → 2.11.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 (379) hide show
  1. package/README.md +1 -1
  2. package/_internal/FilteringAsyncIterator.js +74 -23
  3. package/_internal/FlatMappingAsyncIterator.js +41 -30
  4. package/_internal/LinkedList.js +54 -0
  5. package/_internal/LinkedList.test.js +34 -0
  6. package/_internal/MappingAsyncIterator.js +65 -15
  7. package/_internal/SerialMappingAsyncIterator.js +79 -0
  8. package/_internal/iteratorFind.js +0 -2
  9. package/_internal/iteratorForEachSeries.js +1 -1
  10. package/_internal/objectFlatten.js +4 -1
  11. package/all.js +7 -8
  12. package/and.js +1 -1
  13. package/assign.js +1 -1
  14. package/compose.js +1 -1
  15. package/curry.js +1 -1
  16. package/dist/Transducer.es.js +1 -1
  17. package/dist/Transducer.es.min.js +1 -1
  18. package/dist/Transducer.js +1 -1
  19. package/dist/Transducer.min.js +1 -1
  20. package/dist/Transducer.mjs +1 -1
  21. package/dist/__.es.js +1 -1
  22. package/dist/__.es.min.js +1 -1
  23. package/dist/__.js +1 -1
  24. package/dist/__.min.js +1 -1
  25. package/dist/__.mjs +1 -1
  26. package/dist/all.es.js +1 -1
  27. package/dist/all.es.min.js +1 -1
  28. package/dist/all.js +1 -1
  29. package/dist/all.min.js +1 -1
  30. package/dist/all.mjs +1 -1
  31. package/dist/always.es.js +1 -1
  32. package/dist/always.es.min.js +1 -1
  33. package/dist/always.js +1 -1
  34. package/dist/always.min.js +1 -1
  35. package/dist/always.mjs +1 -1
  36. package/dist/and.es.js +1 -1
  37. package/dist/and.es.min.js +1 -1
  38. package/dist/and.js +1 -1
  39. package/dist/and.min.js +1 -1
  40. package/dist/and.mjs +1 -1
  41. package/dist/assign.es.js +1 -1
  42. package/dist/assign.es.min.js +1 -1
  43. package/dist/assign.js +1 -1
  44. package/dist/assign.min.js +1 -1
  45. package/dist/assign.mjs +1 -1
  46. package/dist/compose.es.js +1 -1
  47. package/dist/compose.es.min.js +1 -1
  48. package/dist/compose.js +1 -1
  49. package/dist/compose.min.js +1 -1
  50. package/dist/compose.mjs +1 -1
  51. package/dist/curry.es.js +1 -1
  52. package/dist/curry.es.min.js +1 -1
  53. package/dist/curry.js +1 -1
  54. package/dist/curry.min.js +1 -1
  55. package/dist/curry.mjs +1 -1
  56. package/dist/eq.es.js +1 -1
  57. package/dist/eq.es.min.js +1 -1
  58. package/dist/eq.js +1 -1
  59. package/dist/eq.min.js +1 -1
  60. package/dist/eq.mjs +1 -1
  61. package/dist/every.es.js +1 -1
  62. package/dist/every.es.min.js +1 -1
  63. package/dist/every.js +1 -1
  64. package/dist/every.min.js +1 -1
  65. package/dist/every.mjs +1 -1
  66. package/dist/filter.es.js +4 -4
  67. package/dist/filter.es.min.js +2 -2
  68. package/dist/filter.js +4 -4
  69. package/dist/filter.min.js +2 -2
  70. package/dist/filter.mjs +4 -4
  71. package/dist/flatMap.es.js +44 -28
  72. package/dist/flatMap.es.min.js +2 -2
  73. package/dist/flatMap.js +44 -28
  74. package/dist/flatMap.min.js +2 -2
  75. package/dist/flatMap.mjs +44 -28
  76. package/dist/forEach.es.js +6 -6
  77. package/dist/forEach.es.min.js +2 -2
  78. package/dist/forEach.js +6 -6
  79. package/dist/forEach.min.js +2 -2
  80. package/dist/forEach.mjs +6 -6
  81. package/dist/get.es.js +1 -1
  82. package/dist/get.es.min.js +1 -1
  83. package/dist/get.js +1 -1
  84. package/dist/get.min.js +1 -1
  85. package/dist/get.mjs +1 -1
  86. package/dist/gt.es.js +1 -1
  87. package/dist/gt.es.min.js +1 -1
  88. package/dist/gt.js +1 -1
  89. package/dist/gt.min.js +1 -1
  90. package/dist/gt.mjs +1 -1
  91. package/dist/gte.es.js +1 -1
  92. package/dist/gte.es.min.js +1 -1
  93. package/dist/gte.js +1 -1
  94. package/dist/gte.min.js +1 -1
  95. package/dist/gte.mjs +1 -1
  96. package/dist/lt.es.js +1 -1
  97. package/dist/lt.es.min.js +1 -1
  98. package/dist/lt.js +1 -1
  99. package/dist/lt.min.js +1 -1
  100. package/dist/lt.mjs +1 -1
  101. package/dist/lte.es.js +1 -1
  102. package/dist/lte.es.min.js +1 -1
  103. package/dist/lte.js +1 -1
  104. package/dist/lte.min.js +1 -1
  105. package/dist/lte.mjs +1 -1
  106. package/dist/map.es.js +187 -39
  107. package/dist/map.es.min.js +2 -2
  108. package/dist/map.js +187 -39
  109. package/dist/map.min.js +2 -2
  110. package/dist/map.mjs +187 -39
  111. package/dist/not.es.js +1 -1
  112. package/dist/not.es.min.js +1 -1
  113. package/dist/not.js +1 -1
  114. package/dist/not.min.js +1 -1
  115. package/dist/not.mjs +1 -1
  116. package/dist/omit.es.js +1 -1
  117. package/dist/omit.es.min.js +1 -1
  118. package/dist/omit.js +1 -1
  119. package/dist/omit.min.js +1 -1
  120. package/dist/omit.mjs +1 -1
  121. package/dist/or.es.js +1 -1
  122. package/dist/or.es.min.js +1 -1
  123. package/dist/or.js +1 -1
  124. package/dist/or.min.js +1 -1
  125. package/dist/or.mjs +1 -1
  126. package/dist/pick.es.js +1 -1
  127. package/dist/pick.es.min.js +1 -1
  128. package/dist/pick.js +1 -1
  129. package/dist/pick.min.js +1 -1
  130. package/dist/pick.mjs +1 -1
  131. package/dist/pipe.es.js +1 -1
  132. package/dist/pipe.es.min.js +1 -1
  133. package/dist/pipe.js +1 -1
  134. package/dist/pipe.min.js +1 -1
  135. package/dist/pipe.mjs +1 -1
  136. package/dist/reduce.es.js +1 -1
  137. package/dist/reduce.es.min.js +1 -1
  138. package/dist/reduce.js +1 -1
  139. package/dist/reduce.min.js +1 -1
  140. package/dist/reduce.mjs +1 -1
  141. package/dist/rubico.es.js +233 -78
  142. package/dist/rubico.es.min.js +2 -2
  143. package/dist/rubico.global.js +233 -78
  144. package/dist/rubico.global.min.js +2 -2
  145. package/dist/rubico.js +233 -78
  146. package/dist/rubico.min.js +2 -2
  147. package/dist/rubico.mjs +233 -78
  148. package/dist/set.es.js +1 -1
  149. package/dist/set.es.min.js +1 -1
  150. package/dist/set.js +1 -1
  151. package/dist/set.min.js +1 -1
  152. package/dist/set.mjs +1 -1
  153. package/dist/some.es.js +1 -1
  154. package/dist/some.es.min.js +1 -1
  155. package/dist/some.js +1 -1
  156. package/dist/some.min.js +1 -1
  157. package/dist/some.mjs +1 -1
  158. package/dist/switchCase.es.js +1 -1
  159. package/dist/switchCase.es.min.js +1 -1
  160. package/dist/switchCase.js +1 -1
  161. package/dist/switchCase.min.js +1 -1
  162. package/dist/switchCase.mjs +1 -1
  163. package/dist/tap.es.js +1 -1
  164. package/dist/tap.es.min.js +1 -1
  165. package/dist/tap.js +1 -1
  166. package/dist/tap.min.js +1 -1
  167. package/dist/tap.mjs +1 -1
  168. package/dist/thunkify.es.js +1 -1
  169. package/dist/thunkify.es.min.js +1 -1
  170. package/dist/thunkify.js +1 -1
  171. package/dist/thunkify.min.js +1 -1
  172. package/dist/thunkify.mjs +1 -1
  173. package/dist/transform.es.js +1 -1
  174. package/dist/transform.es.min.js +1 -1
  175. package/dist/transform.js +1 -1
  176. package/dist/transform.min.js +1 -1
  177. package/dist/transform.mjs +1 -1
  178. package/dist/tryCatch.es.js +1 -1
  179. package/dist/tryCatch.es.min.js +1 -1
  180. package/dist/tryCatch.js +1 -1
  181. package/dist/tryCatch.min.js +1 -1
  182. package/dist/tryCatch.mjs +1 -1
  183. package/dist/x/append.es.js +1 -1
  184. package/dist/x/append.es.min.js +1 -1
  185. package/dist/x/append.js +1 -1
  186. package/dist/x/append.min.js +1 -1
  187. package/dist/x/append.mjs +1 -1
  188. package/dist/x/callProp.es.js +1 -1
  189. package/dist/x/callProp.es.min.js +1 -1
  190. package/dist/x/callProp.js +1 -1
  191. package/dist/x/callProp.min.js +1 -1
  192. package/dist/x/callProp.mjs +1 -1
  193. package/dist/x/defaultsDeep.es.js +1 -1
  194. package/dist/x/defaultsDeep.es.min.js +1 -1
  195. package/dist/x/defaultsDeep.js +1 -1
  196. package/dist/x/defaultsDeep.min.js +1 -1
  197. package/dist/x/defaultsDeep.mjs +1 -1
  198. package/dist/x/differenceWith.es.js +1 -1
  199. package/dist/x/differenceWith.es.min.js +1 -1
  200. package/dist/x/differenceWith.js +1 -1
  201. package/dist/x/differenceWith.min.js +1 -1
  202. package/dist/x/differenceWith.mjs +1 -1
  203. package/dist/x/filterOut.es.js +4 -4
  204. package/dist/x/filterOut.es.min.js +2 -2
  205. package/dist/x/filterOut.js +4 -4
  206. package/dist/x/filterOut.min.js +2 -2
  207. package/dist/x/filterOut.mjs +4 -4
  208. package/dist/x/find.es.js +1 -3
  209. package/dist/x/find.es.min.js +1 -1
  210. package/dist/x/find.js +1 -3
  211. package/dist/x/find.min.js +1 -1
  212. package/dist/x/find.mjs +1 -3
  213. package/dist/x/findIndex.es.js +1 -1
  214. package/dist/x/findIndex.es.min.js +1 -1
  215. package/dist/x/findIndex.js +1 -1
  216. package/dist/x/findIndex.min.js +1 -1
  217. package/dist/x/findIndex.mjs +1 -1
  218. package/dist/x/first.es.js +1 -1
  219. package/dist/x/first.es.min.js +1 -1
  220. package/dist/x/first.js +1 -1
  221. package/dist/x/first.min.js +1 -1
  222. package/dist/x/first.mjs +1 -1
  223. package/dist/x/flatten.es.js +44 -28
  224. package/dist/x/flatten.es.min.js +2 -2
  225. package/dist/x/flatten.js +44 -28
  226. package/dist/x/flatten.min.js +2 -2
  227. package/dist/x/flatten.mjs +44 -28
  228. package/dist/x/groupBy.es.js +1 -1
  229. package/dist/x/groupBy.es.min.js +1 -1
  230. package/dist/x/groupBy.js +1 -1
  231. package/dist/x/groupBy.min.js +1 -1
  232. package/dist/x/groupBy.mjs +1 -1
  233. package/dist/x/has.es.js +1 -1
  234. package/dist/x/has.es.min.js +1 -1
  235. package/dist/x/has.js +1 -1
  236. package/dist/x/has.min.js +1 -1
  237. package/dist/x/has.mjs +1 -1
  238. package/dist/x/identity.es.js +1 -1
  239. package/dist/x/identity.es.min.js +1 -1
  240. package/dist/x/identity.js +1 -1
  241. package/dist/x/identity.min.js +1 -1
  242. package/dist/x/identity.mjs +1 -1
  243. package/dist/x/includes.es.js +1 -1
  244. package/dist/x/includes.es.min.js +1 -1
  245. package/dist/x/includes.js +1 -1
  246. package/dist/x/includes.min.js +1 -1
  247. package/dist/x/includes.mjs +1 -1
  248. package/dist/x/isDeepEqual.es.js +1 -1
  249. package/dist/x/isDeepEqual.es.min.js +1 -1
  250. package/dist/x/isDeepEqual.js +1 -1
  251. package/dist/x/isDeepEqual.min.js +1 -1
  252. package/dist/x/isDeepEqual.mjs +1 -1
  253. package/dist/x/isEmpty.es.js +1 -1
  254. package/dist/x/isEmpty.es.min.js +1 -1
  255. package/dist/x/isEmpty.js +1 -1
  256. package/dist/x/isEmpty.min.js +1 -1
  257. package/dist/x/isEmpty.mjs +1 -1
  258. package/dist/x/isEqual.es.js +1 -1
  259. package/dist/x/isEqual.es.min.js +1 -1
  260. package/dist/x/isEqual.js +1 -1
  261. package/dist/x/isEqual.min.js +1 -1
  262. package/dist/x/isEqual.mjs +1 -1
  263. package/dist/x/isFunction.es.js +1 -1
  264. package/dist/x/isFunction.es.min.js +1 -1
  265. package/dist/x/isFunction.js +1 -1
  266. package/dist/x/isFunction.min.js +1 -1
  267. package/dist/x/isFunction.mjs +1 -1
  268. package/dist/x/isIn.es.js +1 -1
  269. package/dist/x/isIn.es.min.js +1 -1
  270. package/dist/x/isIn.js +1 -1
  271. package/dist/x/isIn.min.js +1 -1
  272. package/dist/x/isIn.mjs +1 -1
  273. package/dist/x/isObject.es.js +1 -1
  274. package/dist/x/isObject.es.min.js +1 -1
  275. package/dist/x/isObject.js +1 -1
  276. package/dist/x/isObject.min.js +1 -1
  277. package/dist/x/isObject.mjs +1 -1
  278. package/dist/x/isString.es.js +1 -1
  279. package/dist/x/isString.es.min.js +1 -1
  280. package/dist/x/isString.js +1 -1
  281. package/dist/x/isString.min.js +1 -1
  282. package/dist/x/isString.mjs +1 -1
  283. package/dist/x/keys.es.js +1 -1
  284. package/dist/x/keys.es.min.js +1 -1
  285. package/dist/x/keys.js +1 -1
  286. package/dist/x/keys.min.js +1 -1
  287. package/dist/x/keys.mjs +1 -1
  288. package/dist/x/last.es.js +1 -1
  289. package/dist/x/last.es.min.js +1 -1
  290. package/dist/x/last.js +1 -1
  291. package/dist/x/last.min.js +1 -1
  292. package/dist/x/last.mjs +1 -1
  293. package/dist/x/maxBy.es.js +1 -1
  294. package/dist/x/maxBy.es.min.js +1 -1
  295. package/dist/x/maxBy.js +1 -1
  296. package/dist/x/maxBy.min.js +1 -1
  297. package/dist/x/maxBy.mjs +1 -1
  298. package/dist/x/noop.es.js +1 -1
  299. package/dist/x/noop.es.min.js +1 -1
  300. package/dist/x/noop.js +1 -1
  301. package/dist/x/noop.min.js +1 -1
  302. package/dist/x/noop.mjs +1 -1
  303. package/dist/x/pluck.es.js +187 -39
  304. package/dist/x/pluck.es.min.js +2 -2
  305. package/dist/x/pluck.js +187 -39
  306. package/dist/x/pluck.min.js +2 -2
  307. package/dist/x/pluck.mjs +187 -39
  308. package/dist/x/prepend.es.js +1 -1
  309. package/dist/x/prepend.es.min.js +1 -1
  310. package/dist/x/prepend.js +1 -1
  311. package/dist/x/prepend.min.js +1 -1
  312. package/dist/x/prepend.mjs +1 -1
  313. package/dist/x/size.es.js +1 -1
  314. package/dist/x/size.es.min.js +1 -1
  315. package/dist/x/size.js +1 -1
  316. package/dist/x/size.min.js +1 -1
  317. package/dist/x/size.mjs +1 -1
  318. package/dist/x/trace.es.js +1 -1
  319. package/dist/x/trace.es.min.js +1 -1
  320. package/dist/x/trace.js +1 -1
  321. package/dist/x/trace.min.js +1 -1
  322. package/dist/x/trace.mjs +1 -1
  323. package/dist/x/unionWith.es.js +1 -1
  324. package/dist/x/unionWith.es.min.js +1 -1
  325. package/dist/x/unionWith.js +1 -1
  326. package/dist/x/unionWith.min.js +1 -1
  327. package/dist/x/unionWith.mjs +1 -1
  328. package/dist/x/uniq.es.js +1 -1
  329. package/dist/x/uniq.es.min.js +1 -1
  330. package/dist/x/uniq.js +1 -1
  331. package/dist/x/uniq.min.js +1 -1
  332. package/dist/x/uniq.mjs +1 -1
  333. package/dist/x/unless.es.js +1 -1
  334. package/dist/x/unless.es.min.js +1 -1
  335. package/dist/x/unless.js +1 -1
  336. package/dist/x/unless.min.js +1 -1
  337. package/dist/x/unless.mjs +1 -1
  338. package/dist/x/values.es.js +1 -1
  339. package/dist/x/values.es.min.js +1 -1
  340. package/dist/x/values.js +1 -1
  341. package/dist/x/values.min.js +1 -1
  342. package/dist/x/values.mjs +1 -1
  343. package/dist/x/when.es.js +1 -1
  344. package/dist/x/when.es.min.js +1 -1
  345. package/dist/x/when.js +1 -1
  346. package/dist/x/when.min.js +1 -1
  347. package/dist/x/when.mjs +1 -1
  348. package/eq.js +2 -2
  349. package/es.js +233 -78
  350. package/every.js +2 -2
  351. package/filter.js +22 -23
  352. package/flatMap.js +61 -54
  353. package/forEach.js +33 -56
  354. package/get.js +5 -3
  355. package/gt.js +2 -2
  356. package/gte.js +2 -2
  357. package/index.js +233 -78
  358. package/lt.js +2 -2
  359. package/lte.js +2 -2
  360. package/map.js +117 -154
  361. package/monad/README.md +1 -1
  362. package/not.js +1 -1
  363. package/omit.js +22 -19
  364. package/or.js +1 -1
  365. package/package.json +1 -1
  366. package/pick.js +14 -11
  367. package/pipe.js +1 -1
  368. package/reduce.js +1 -1
  369. package/set.js +17 -18
  370. package/some.js +2 -2
  371. package/switchCase.js +12 -4
  372. package/tap.js +6 -4
  373. package/transform.js +1 -1
  374. package/tryCatch.js +1 -1
  375. package/x/defaultsDeep.js +1 -1
  376. package/x/defaultsDeep.test.js +1 -1
  377. package/_internal/NextIteration.js +0 -12
  378. package/_internal/generatorFunctionFilter.js +0 -28
  379. package/_internal/iterationMap.js +0 -27
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/tryCatch.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/tryCatch.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/x/append.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/x/append.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -297,15 +297,15 @@ const _filter = function (value, predicate) {
297
297
  if (value.constructor == Map) {
298
298
  return mapFilter(value, predicate)
299
299
  }
300
- if (typeof value.filter == 'function') {
301
- return value.filter(predicate)
302
- }
303
300
  if (typeof value[symbolIterator] == 'function') {
304
301
  return FilteringIterator(value[symbolIterator](), predicate)
305
302
  }
306
303
  if (typeof value[symbolAsyncIterator] == 'function') {
307
304
  return FilteringAsyncIterator(value[symbolAsyncIterator](), predicate)
308
305
  }
306
+ if (typeof value.filter == 'function') {
307
+ return value.filter(predicate)
308
+ }
309
309
  if (value.constructor == Object) {
310
310
  return objectFilter(value, predicate)
311
311
  }
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
6
6
  * Rubico may be freely distributed under the CFOSS license.
7
7
  */
8
- const __=Symbol.for("placeholder"),curry2ResolveArg0=(r,t)=>function(n){return r(n,t)},curry2ResolveArg1=(r,t)=>function(n){return r(t,n)},curry2=function(r,t,n){return t==__?curry2ResolveArg0(r,n):curry2ResolveArg1(r,t)},symbolIterator=Symbol.iterator,FilteringIterator=(r,t)=>({[symbolIterator](){return this},next(){let n=r.next();for(;!n.done;){const{value:e}=n;if(t(e))return{value:e,done:!1};n=r.next()}return n}}),isPromise=r=>null!=r&&"function"==typeof r.then,symbolAsyncIterator=Symbol.asyncIterator,FilteringAsyncIterator=(r,t)=>({isAsyncIteratorDone:!1,[symbolAsyncIterator](){return this},async next(){for(;!this.isAsyncIteratorDone;){const{value:n,done:e}=await r.next();if(e)this.isAsyncIteratorDone=!0;else{const r=t(n);if(isPromise(r)?await r:r)return{value:n,done:!1}}}return{value:void 0,done:!0}}}),isArray=Array.isArray,curry4ResolveArg0=(r,t,n,e)=>function(o){return r(o,t,n,e)},curry4ResolveArg1=(r,t,n,e)=>function(o){return r(t,o,n,e)},curry4ResolveArg2=(r,t,n,e)=>function(o){return r(t,n,o,e)},curry4ResolveArg3=(r,t,n,e)=>function(o){return r(t,n,e,o)},curry4=function(r,t,n,e,o){return t==__?curry4ResolveArg0(r,n,e,o):n==__?curry4ResolveArg1(r,t,e,o):e==__?curry4ResolveArg2(r,t,n,o):curry4ResolveArg3(r,t,n,e)},promiseAll=Promise.all.bind(Promise),arrayExtendMap=function(r,t,n,e){const o=t.length;let i=r.length-1;for(;++e<o;)r[++i]=n(t[e],e,r);return r},arrayFilterByConditions=function(r,t,n,e){const o=r.length;let i=-1;for(;++n<o;)e[++i]&&t.push(r[n]);return t},arrayFilter=function(r,t){const n=r.length,e=[];let o=-1,i=-1;for(;++o<n;){const n=r[o],s=t(n,o,r);if(isPromise(s))return promiseAll(arrayExtendMap([s],r,t,o)).then(curry4(arrayFilterByConditions,r,e,o-1,__));s&&(e[++i]=n)}return e},curry3ResolveArg0=(r,t,n)=>function(e){return r(e,t,n)},curry3ResolveArg1=(r,t,n)=>function(e){return r(t,e,n)},curry3ResolveArg2=(r,t,n)=>function(e){return r(t,n,e)},curry3=function(r,t,n,e){return t==__?curry3ResolveArg0(r,n,e):n==__?curry3ResolveArg1(r,t,e):curry3ResolveArg2(r,t,n)},callPropUnary=(r,t,n)=>r[t](n),stringFilter=function(r,t){const n=arrayFilter(r,t);return isPromise(n)?n.then(curry3(callPropUnary,__,"join","")):n.join("")},always=r=>function(){return r},thunkConditional=(r,t,n)=>r?t():n(),thunkify1=(r,t)=>function(){return r(t)},noop=function(){},setFilter=function(r,t){const n=new Set,e=n.add.bind(n),o=[];for(const i of r){const s=t(i,i,r);isPromise(s)?o.push(s.then(curry3(thunkConditional,__,thunkify1(e,i),noop))):s&&n.add(i)}return 0==o.length?n:promiseAll(o).then(always(n))},thunkify4=(r,t,n,e,o)=>function(){return r(t,n,e,o)},callPropBinary=(r,t,n,e)=>r[t](n,e),mapFilter=function(r,t){const n=new Map,e=[];for(const[o,i]of r){const s=t(i,o,r);isPromise(s)?e.push(s.then(curry3(thunkConditional,__,thunkify4(callPropBinary,n,"set",o,i),noop))):s&&n.set(o,i)}return 0==e.length?n:promiseAll(e).then(always(n))},objectSetIf=function(r,t,n,e){e&&(r[t]=n)},objectFilter=function(r,t){const n={},e=[];for(const o in r){const i=r[o],s=t(i,o,r);isPromise(s)?e.push(s.then(curry4(objectSetIf,n,o,r[o],__))):s&&(n[o]=i)}return 0==e.length?n:promiseAll(e).then(always(n))},_filter=function(r,t){return isArray(r)?arrayFilter(r,t):null==r?r:"string"==typeof r||r.constructor==String?stringFilter(r,t):r.constructor==Set?setFilter(r,t):r.constructor==Map?mapFilter(r,t):"function"==typeof r.filter?r.filter(t):"function"==typeof r[symbolIterator]?FilteringIterator(r[symbolIterator](),t):"function"==typeof r[symbolAsyncIterator]?FilteringAsyncIterator(r[symbolAsyncIterator](),t):r.constructor==Object?objectFilter(r,t):r},filter=function(r,t){return"function"==typeof r?curry2(_filter,__,r):isPromise(r)?r.then(curry2(_filter,__,t)):_filter(r,t)},areAnyValuesPromises=function(r){if(isArray(r)){const t=r.length;let n=-1;for(;++n<t;){const t=r[n];if(isPromise(t))return!0}return!1}for(const t in r){const n=r[t];if(isPromise(n))return!0}return!1},curryArgs2ResolveArgs0=(r,t,n)=>function(...n){return r(n,t)},curryArgs2ResolveArgs1=(r,t,n)=>function(...n){return r(t,n)},curryArgs2=function(r,t,n){return t==__?curryArgs2ResolveArgs0(r,n):curryArgs2ResolveArgs1(r,t)},negate=r=>!r,_not=function(r,t){const n=t(...r);return isPromise(n)?n.then(negate):!n},not=function(...r){const t=r.pop();return"function"==typeof t?0==r.length?curryArgs2(_not,__,t):areAnyValuesPromises(r)?promiseAll(r).then(curry2(_not,__,t)):_not(r,t):isPromise(t)?t.then(negate):!t},filterOut=r=>filter(not(r));export default filterOut;
8
+ const __=Symbol.for("placeholder"),curry2ResolveArg0=(r,t)=>function(n){return r(n,t)},curry2ResolveArg1=(r,t)=>function(n){return r(t,n)},curry2=function(r,t,n){return t==__?curry2ResolveArg0(r,n):curry2ResolveArg1(r,t)},symbolIterator=Symbol.iterator,FilteringIterator=(r,t)=>({[symbolIterator](){return this},next(){let n=r.next();for(;!n.done;){const{value:e}=n;if(t(e))return{value:e,done:!1};n=r.next()}return n}}),isPromise=r=>null!=r&&"function"==typeof r.then,symbolAsyncIterator=Symbol.asyncIterator,FilteringAsyncIterator=(r,t)=>({isAsyncIteratorDone:!1,[symbolAsyncIterator](){return this},async next(){for(;!this.isAsyncIteratorDone;){const{value:n,done:e}=await r.next();if(e)this.isAsyncIteratorDone=!0;else{const r=t(n);if(isPromise(r)?await r:r)return{value:n,done:!1}}}return{value:void 0,done:!0}}}),isArray=Array.isArray,curry4ResolveArg0=(r,t,n,e)=>function(o){return r(o,t,n,e)},curry4ResolveArg1=(r,t,n,e)=>function(o){return r(t,o,n,e)},curry4ResolveArg2=(r,t,n,e)=>function(o){return r(t,n,o,e)},curry4ResolveArg3=(r,t,n,e)=>function(o){return r(t,n,e,o)},curry4=function(r,t,n,e,o){return t==__?curry4ResolveArg0(r,n,e,o):n==__?curry4ResolveArg1(r,t,e,o):e==__?curry4ResolveArg2(r,t,n,o):curry4ResolveArg3(r,t,n,e)},promiseAll=Promise.all.bind(Promise),arrayExtendMap=function(r,t,n,e){const o=t.length;let i=r.length-1;for(;++e<o;)r[++i]=n(t[e],e,r);return r},arrayFilterByConditions=function(r,t,n,e){const o=r.length;let i=-1;for(;++n<o;)e[++i]&&t.push(r[n]);return t},arrayFilter=function(r,t){const n=r.length,e=[];let o=-1,i=-1;for(;++o<n;){const n=r[o],s=t(n,o,r);if(isPromise(s))return promiseAll(arrayExtendMap([s],r,t,o)).then(curry4(arrayFilterByConditions,r,e,o-1,__));s&&(e[++i]=n)}return e},curry3ResolveArg0=(r,t,n)=>function(e){return r(e,t,n)},curry3ResolveArg1=(r,t,n)=>function(e){return r(t,e,n)},curry3ResolveArg2=(r,t,n)=>function(e){return r(t,n,e)},curry3=function(r,t,n,e){return t==__?curry3ResolveArg0(r,n,e):n==__?curry3ResolveArg1(r,t,e):curry3ResolveArg2(r,t,n)},callPropUnary=(r,t,n)=>r[t](n),stringFilter=function(r,t){const n=arrayFilter(r,t);return isPromise(n)?n.then(curry3(callPropUnary,__,"join","")):n.join("")},always=r=>function(){return r},thunkConditional=(r,t,n)=>r?t():n(),thunkify1=(r,t)=>function(){return r(t)},noop=function(){},setFilter=function(r,t){const n=new Set,e=n.add.bind(n),o=[];for(const i of r){const s=t(i,i,r);isPromise(s)?o.push(s.then(curry3(thunkConditional,__,thunkify1(e,i),noop))):s&&n.add(i)}return 0==o.length?n:promiseAll(o).then(always(n))},thunkify4=(r,t,n,e,o)=>function(){return r(t,n,e,o)},callPropBinary=(r,t,n,e)=>r[t](n,e),mapFilter=function(r,t){const n=new Map,e=[];for(const[o,i]of r){const s=t(i,o,r);isPromise(s)?e.push(s.then(curry3(thunkConditional,__,thunkify4(callPropBinary,n,"set",o,i),noop))):s&&n.set(o,i)}return 0==e.length?n:promiseAll(e).then(always(n))},objectSetIf=function(r,t,n,e){e&&(r[t]=n)},objectFilter=function(r,t){const n={},e=[];for(const o in r){const i=r[o],s=t(i,o,r);isPromise(s)?e.push(s.then(curry4(objectSetIf,n,o,r[o],__))):s&&(n[o]=i)}return 0==e.length?n:promiseAll(e).then(always(n))},_filter=function(r,t){return isArray(r)?arrayFilter(r,t):null==r?r:"string"==typeof r||r.constructor==String?stringFilter(r,t):r.constructor==Set?setFilter(r,t):r.constructor==Map?mapFilter(r,t):"function"==typeof r[symbolIterator]?FilteringIterator(r[symbolIterator](),t):"function"==typeof r[symbolAsyncIterator]?FilteringAsyncIterator(r[symbolAsyncIterator](),t):"function"==typeof r.filter?r.filter(t):r.constructor==Object?objectFilter(r,t):r},filter=function(r,t){return"function"==typeof r?curry2(_filter,__,r):isPromise(r)?r.then(curry2(_filter,__,t)):_filter(r,t)},areAnyValuesPromises=function(r){if(isArray(r)){const t=r.length;let n=-1;for(;++n<t;){const t=r[n];if(isPromise(t))return!0}return!1}for(const t in r){const n=r[t];if(isPromise(n))return!0}return!1},curryArgs2ResolveArgs0=(r,t,n)=>function(...n){return r(n,t)},curryArgs2ResolveArgs1=(r,t,n)=>function(...n){return r(t,n)},curryArgs2=function(r,t,n){return t==__?curryArgs2ResolveArgs0(r,n):curryArgs2ResolveArgs1(r,t)},negate=r=>!r,_not=function(r,t){const n=t(...r);return isPromise(n)?n.then(negate):!n},not=function(...r){const t=r.pop();return"function"==typeof t?0==r.length?curryArgs2(_not,__,t):areAnyValuesPromises(r)?promiseAll(r).then(curry2(_not,__,t)):_not(r,t):isPromise(t)?t.then(negate):!t},filterOut=r=>filter(not(r));export default filterOut;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -303,15 +303,15 @@ const _filter = function (value, predicate) {
303
303
  if (value.constructor == Map) {
304
304
  return mapFilter(value, predicate)
305
305
  }
306
- if (typeof value.filter == 'function') {
307
- return value.filter(predicate)
308
- }
309
306
  if (typeof value[symbolIterator] == 'function') {
310
307
  return FilteringIterator(value[symbolIterator](), predicate)
311
308
  }
312
309
  if (typeof value[symbolAsyncIterator] == 'function') {
313
310
  return FilteringAsyncIterator(value[symbolAsyncIterator](), predicate)
314
311
  }
312
+ if (typeof value.filter == 'function') {
313
+ return value.filter(predicate)
314
+ }
315
315
  if (value.constructor == Object) {
316
316
  return objectFilter(value, predicate)
317
317
  }
@@ -1,9 +1,9 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
6
6
  * Rubico may be freely distributed under the CFOSS license.
7
7
  */
8
8
 
9
- !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.filterOut=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Symbol.for("placeholder"),t=function(t,e,r){return e==n?((n,t)=>function(e){return n(e,t)})(t,r):((n,t)=>function(e){return n(t,e)})(t,e)},e=Symbol.iterator,r=(n,t)=>({[e](){return this},next(){let e=n.next();for(;!e.done;){const{value:r}=e;if(t(r))return{value:r,done:!1};e=n.next()}return e}}),o=n=>null!=n&&"function"==typeof n.then,u=Symbol.asyncIterator,c=(n,t)=>({isAsyncIteratorDone:!1,[u](){return this},async next(){for(;!this.isAsyncIteratorDone;){const{value:e,done:r}=await n.next();if(r)this.isAsyncIteratorDone=!0;else{const n=t(e);if(o(n)?await n:n)return{value:e,done:!1}}}return{value:void 0,done:!0}}}),i=Array.isArray,f=function(t,e,r,o,u){return e==n?((n,t,e,r)=>function(o){return n(o,t,e,r)})(t,r,o,u):r==n?((n,t,e,r)=>function(o){return n(t,o,e,r)})(t,e,o,u):o==n?((n,t,e,r)=>function(o){return n(t,e,o,r)})(t,e,r,u):((n,t,e,r)=>function(o){return n(t,e,r,o)})(t,e,r,o)},s=Promise.all.bind(Promise),l=function(n,t,e,r){const o=t.length;let u=n.length-1;for(;++r<o;)n[++u]=e(t[r],r,n);return n},h=function(n,t,e,r){const o=n.length;let u=-1;for(;++e<o;)r[++u]&&t.push(n[e]);return t},a=function(t,e){const r=t.length,u=[];let c=-1,i=-1;for(;++c<r;){const r=t[c],a=e(r,c,t);if(o(a))return s(l([a],t,e,c)).then(f(h,t,u,c-1,n));a&&(u[++i]=r)}return u},p=function(t,e,r,o){return e==n?((n,t,e)=>function(r){return n(r,t,e)})(t,r,o):r==n?((n,t,e)=>function(r){return n(t,r,e)})(t,e,o):((n,t,e)=>function(r){return n(t,e,r)})(t,e,r)},y=(n,t,e)=>n[t](e),d=n=>function(){return n},g=(n,t,e)=>n?t():e(),b=(n,t)=>function(){return n(t)},v=function(){},m=(n,t,e,r,o)=>function(){return n(t,e,r,o)},x=(n,t,e,r)=>n[t](e,r),S=function(n,t,e,r){r&&(n[t]=e)},j=function(t,l){return i(t)?a(t,l):null==t?t:"string"==typeof t||t.constructor==String?function(t,e){const r=a(t,e);return o(r)?r.then(p(y,n,"join","")):r.join("")}(t,l):t.constructor==Set?function(t,e){const r=new Set,u=r.add.bind(r),c=[];for(const i of t){const f=e(i,i,t);o(f)?c.push(f.then(p(g,n,b(u,i),v))):f&&r.add(i)}return 0==c.length?r:s(c).then(d(r))}(t,l):t.constructor==Map?function(t,e){const r=new Map,u=[];for(const[c,i]of t){const f=e(i,c,t);o(f)?u.push(f.then(p(g,n,m(x,r,"set",c,i),v))):f&&r.set(c,i)}return 0==u.length?r:s(u).then(d(r))}(t,l):"function"==typeof t.filter?t.filter(l):"function"==typeof t[e]?r(t[e](),l):"function"==typeof t[u]?c(t[u](),l):t.constructor==Object?function(t,e){const r={},u=[];for(const c in t){const i=t[c],s=e(i,c,t);o(s)?u.push(s.then(f(S,r,c,t[c],n))):s&&(r[c]=i)}return 0==u.length?r:s(u).then(d(r))}(t,l):t},A=n=>!n,w=function(n,t){const e=t(...n);return o(e)?e.then(A):!e},I=function(...e){const r=e.pop();return"function"==typeof r?0==e.length?(u=w,f=r,(c=n)==n?((n,t)=>function(...e){return n(e,t)})(u,f):((n,t)=>function(...e){return n(t,e)})(u,c)):function(n){if(i(n)){const t=n.length;let e=-1;for(;++e<t;){const t=n[e];if(o(t))return!0}return!1}for(const t in n){const e=n[t];if(o(e))return!0}return!1}(e)?s(e).then(t(w,n,r)):w(e,r):o(r)?r.then(A):!r;var u,c,f};return e=>{return"function"==typeof(r=I(e))?t(j,n,r):o(r)?r.then(t(j,n,u)):j(r,u);var r,u}}());
9
+ !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.filterOut=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Symbol.for("placeholder"),t=function(t,e,r){return e==n?((n,t)=>function(e){return n(e,t)})(t,r):((n,t)=>function(e){return n(t,e)})(t,e)},e=Symbol.iterator,r=(n,t)=>({[e](){return this},next(){let e=n.next();for(;!e.done;){const{value:r}=e;if(t(r))return{value:r,done:!1};e=n.next()}return e}}),o=n=>null!=n&&"function"==typeof n.then,u=Symbol.asyncIterator,c=(n,t)=>({isAsyncIteratorDone:!1,[u](){return this},async next(){for(;!this.isAsyncIteratorDone;){const{value:e,done:r}=await n.next();if(r)this.isAsyncIteratorDone=!0;else{const n=t(e);if(o(n)?await n:n)return{value:e,done:!1}}}return{value:void 0,done:!0}}}),i=Array.isArray,f=function(t,e,r,o,u){return e==n?((n,t,e,r)=>function(o){return n(o,t,e,r)})(t,r,o,u):r==n?((n,t,e,r)=>function(o){return n(t,o,e,r)})(t,e,o,u):o==n?((n,t,e,r)=>function(o){return n(t,e,o,r)})(t,e,r,u):((n,t,e,r)=>function(o){return n(t,e,r,o)})(t,e,r,o)},s=Promise.all.bind(Promise),l=function(n,t,e,r){const o=t.length;let u=n.length-1;for(;++r<o;)n[++u]=e(t[r],r,n);return n},h=function(n,t,e,r){const o=n.length;let u=-1;for(;++e<o;)r[++u]&&t.push(n[e]);return t},a=function(t,e){const r=t.length,u=[];let c=-1,i=-1;for(;++c<r;){const r=t[c],a=e(r,c,t);if(o(a))return s(l([a],t,e,c)).then(f(h,t,u,c-1,n));a&&(u[++i]=r)}return u},p=function(t,e,r,o){return e==n?((n,t,e)=>function(r){return n(r,t,e)})(t,r,o):r==n?((n,t,e)=>function(r){return n(t,r,e)})(t,e,o):((n,t,e)=>function(r){return n(t,e,r)})(t,e,r)},y=(n,t,e)=>n[t](e),d=n=>function(){return n},g=(n,t,e)=>n?t():e(),b=(n,t)=>function(){return n(t)},v=function(){},m=(n,t,e,r,o)=>function(){return n(t,e,r,o)},x=(n,t,e,r)=>n[t](e,r),S=function(n,t,e,r){r&&(n[t]=e)},j=function(t,l){return i(t)?a(t,l):null==t?t:"string"==typeof t||t.constructor==String?function(t,e){const r=a(t,e);return o(r)?r.then(p(y,n,"join","")):r.join("")}(t,l):t.constructor==Set?function(t,e){const r=new Set,u=r.add.bind(r),c=[];for(const i of t){const f=e(i,i,t);o(f)?c.push(f.then(p(g,n,b(u,i),v))):f&&r.add(i)}return 0==c.length?r:s(c).then(d(r))}(t,l):t.constructor==Map?function(t,e){const r=new Map,u=[];for(const[c,i]of t){const f=e(i,c,t);o(f)?u.push(f.then(p(g,n,m(x,r,"set",c,i),v))):f&&r.set(c,i)}return 0==u.length?r:s(u).then(d(r))}(t,l):"function"==typeof t[e]?r(t[e](),l):"function"==typeof t[u]?c(t[u](),l):"function"==typeof t.filter?t.filter(l):t.constructor==Object?function(t,e){const r={},u=[];for(const c in t){const i=t[c],s=e(i,c,t);o(s)?u.push(s.then(f(S,r,c,t[c],n))):s&&(r[c]=i)}return 0==u.length?r:s(u).then(d(r))}(t,l):t},A=n=>!n,w=function(n,t){const e=t(...n);return o(e)?e.then(A):!e},I=function(...e){const r=e.pop();return"function"==typeof r?0==e.length?(u=w,f=r,(c=n)==n?((n,t)=>function(...e){return n(e,t)})(u,f):((n,t)=>function(...e){return n(t,e)})(u,c)):function(n){if(i(n)){const t=n.length;let e=-1;for(;++e<t;){const t=n[e];if(o(t))return!0}return!1}for(const t in n){const e=n[t];if(o(e))return!0}return!1}(e)?s(e).then(t(w,n,r)):w(e,r):o(r)?r.then(A):!r;var u,c,f};return e=>{return"function"==typeof(r=I(e))?t(j,n,r):o(r)?r.then(t(j,n,u)):j(r,u);var r,u}}());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -297,15 +297,15 @@ const _filter = function (value, predicate) {
297
297
  if (value.constructor == Map) {
298
298
  return mapFilter(value, predicate)
299
299
  }
300
- if (typeof value.filter == 'function') {
301
- return value.filter(predicate)
302
- }
303
300
  if (typeof value[symbolIterator] == 'function') {
304
301
  return FilteringIterator(value[symbolIterator](), predicate)
305
302
  }
306
303
  if (typeof value[symbolAsyncIterator] == 'function') {
307
304
  return FilteringAsyncIterator(value[symbolAsyncIterator](), predicate)
308
305
  }
306
+ if (typeof value.filter == 'function') {
307
+ return value.filter(predicate)
308
+ }
309
309
  if (value.constructor == Object) {
310
310
  return objectFilter(value, predicate)
311
311
  }
package/dist/x/find.es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -110,7 +110,6 @@ const iteratorFindAsync = async function (iterator, predicate) {
110
110
  }
111
111
  iteration = iterator.next()
112
112
  }
113
- return undefined
114
113
  }
115
114
 
116
115
  const iteratorFind = function (iterator, predicate) {
@@ -129,7 +128,6 @@ const iteratorFind = function (iterator, predicate) {
129
128
  }
130
129
  iteration = iterator.next()
131
130
  }
132
- return undefined
133
131
  }
134
132
 
135
133
  const asyncIteratorFind = async function (asyncIterator, predicate) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/x/find.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -116,7 +116,6 @@ const iteratorFindAsync = async function (iterator, predicate) {
116
116
  }
117
117
  iteration = iterator.next()
118
118
  }
119
- return undefined
120
119
  }
121
120
 
122
121
  const iteratorFind = function (iterator, predicate) {
@@ -135,7 +134,6 @@ const iteratorFind = function (iterator, predicate) {
135
134
  }
136
135
  iteration = iterator.next()
137
136
  }
138
- return undefined
139
137
  }
140
138
 
141
139
  const asyncIteratorFind = async function (asyncIterator, predicate) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/x/find.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -110,7 +110,6 @@ const iteratorFindAsync = async function (iterator, predicate) {
110
110
  }
111
111
  iteration = iterator.next()
112
112
  }
113
- return undefined
114
113
  }
115
114
 
116
115
  const iteratorFind = function (iterator, predicate) {
@@ -129,7 +128,6 @@ const iteratorFind = function (iterator, predicate) {
129
128
  }
130
129
  iteration = iterator.next()
131
130
  }
132
- return undefined
133
131
  }
134
132
 
135
133
  const asyncIteratorFind = async function (asyncIterator, predicate) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/x/first.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
package/dist/x/first.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Rubico v2.8.6
2
+ * Rubico v2.10.0
3
3
  * https://rubico.land/
4
4
  *
5
5
  * © Richard Yufei Tong, King of Software
@@ -211,9 +211,12 @@ const objectFlatten = function (object) {
211
211
 
212
212
  for (const key in object) {
213
213
  const element = object[key]
214
+
214
215
  if (element == null) {
215
216
  continue
216
- } else if (typeof element[symbolIterator] == 'function') {
217
+ }
218
+
219
+ if (typeof element[symbolIterator] == 'function') {
217
220
  for (const monadElement of element) {
218
221
  objectAssign(result, monadElement)
219
222
  }
@@ -613,8 +616,11 @@ const sleep = time => new Promise(resolve => {
613
616
  })
614
617
 
615
618
  const FlatMappingAsyncIterator = function (asyncIterator, flatMapper) {
616
- const buffer = [],
617
- promises = new Set()
619
+ const buffer = []
620
+ const promises = new Set()
621
+
622
+ let consumingAsyncIterator = false
623
+ let isAsyncIteratorDone = false
618
624
 
619
625
  return {
620
626
  isAsyncIteratorDone: false,
@@ -625,38 +631,48 @@ const FlatMappingAsyncIterator = function (asyncIterator, flatMapper) {
625
631
  return '[object FlatMappingAsyncIterator]'
626
632
  },
627
633
 
628
-
629
- async next() {
630
- while (
631
- !this.isAsyncIteratorDone || buffer.length > 0 || promises.size > 0
632
- ) {
633
- if (!this.isAsyncIteratorDone) {
634
- const { value, done } = await asyncIterator.next()
635
- if (done) {
636
- this.isAsyncIteratorDone = done
637
- } else {
638
- const monad = flatMapper(value)
639
- if (isPromise(monad)) {
640
- const bufferLoading =
641
- monad.then(curry3(genericReduce, __, arrayPush, buffer))
642
- const promise = bufferLoading.then(() => promises.delete(promise))
643
- promises.add(promise)
644
- } else {
645
- const bufferLoading = genericReduce(monad, arrayPush, buffer)
646
- if (isPromise(bufferLoading)) {
647
- const promise = bufferLoading.then(() => promises.delete(promise))
648
- promises.add(promise)
649
- }
650
- }
634
+ // _consumeAsyncIterator() -> Promise<>
635
+ async _consumeAsyncIterator() {
636
+ for await (const item of asyncIterator) {
637
+ const monad = flatMapper(item)
638
+ if (isPromise(monad)) {
639
+ const bufferLoading =
640
+ monad.then(curry3(genericReduce, __, arrayPush, buffer))
641
+ const promise = bufferLoading.then(() => promises.delete(promise))
642
+ promises.add(promise)
643
+ } else {
644
+ const bufferLoading = genericReduce(monad, arrayPush, buffer)
645
+ if (isPromise(bufferLoading)) {
646
+ const promise = bufferLoading.then(() => promises.delete(promise))
647
+ promises.add(promise)
651
648
  }
652
649
  }
650
+ }
651
+ isAsyncIteratorDone = true
652
+ },
653
+
654
+
655
+ async next() {
656
+ if (!consumingAsyncIterator) {
657
+ this._consumeAsyncIterator()
658
+ consumingAsyncIterator = true
659
+ }
660
+
661
+ while (!isAsyncIteratorDone || promises.size > 0) {
653
662
  if (buffer.length > 0) {
654
663
  return { value: buffer.shift(), done: false }
655
664
  }
656
665
  if (promises.size > 0) {
657
- await promiseRace([sleep(1000), ...promises])
666
+ await promiseRace(promises)
667
+ } else {
668
+ await sleep(10)
658
669
  }
659
670
  }
671
+
672
+ if (buffer.length > 0) {
673
+ return { value: buffer.shift(), done: false }
674
+ }
675
+
660
676
  return { value: undefined, done: true }
661
677
  },
662
678
  }