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.
- package/README.md +1 -1
- package/_internal/FilteringAsyncIterator.js +74 -23
- package/_internal/FlatMappingAsyncIterator.js +41 -30
- package/_internal/LinkedList.js +54 -0
- package/_internal/LinkedList.test.js +34 -0
- package/_internal/MappingAsyncIterator.js +65 -15
- package/_internal/SerialMappingAsyncIterator.js +79 -0
- package/_internal/iteratorFind.js +0 -2
- package/_internal/iteratorForEachSeries.js +1 -1
- package/_internal/objectFlatten.js +4 -1
- package/all.js +7 -8
- package/and.js +1 -1
- package/assign.js +1 -1
- package/compose.js +1 -1
- package/curry.js +1 -1
- package/dist/Transducer.es.js +1 -1
- package/dist/Transducer.es.min.js +1 -1
- package/dist/Transducer.js +1 -1
- package/dist/Transducer.min.js +1 -1
- package/dist/Transducer.mjs +1 -1
- package/dist/__.es.js +1 -1
- package/dist/__.es.min.js +1 -1
- package/dist/__.js +1 -1
- package/dist/__.min.js +1 -1
- package/dist/__.mjs +1 -1
- package/dist/all.es.js +1 -1
- package/dist/all.es.min.js +1 -1
- package/dist/all.js +1 -1
- package/dist/all.min.js +1 -1
- package/dist/all.mjs +1 -1
- package/dist/always.es.js +1 -1
- package/dist/always.es.min.js +1 -1
- package/dist/always.js +1 -1
- package/dist/always.min.js +1 -1
- package/dist/always.mjs +1 -1
- package/dist/and.es.js +1 -1
- package/dist/and.es.min.js +1 -1
- package/dist/and.js +1 -1
- package/dist/and.min.js +1 -1
- package/dist/and.mjs +1 -1
- package/dist/assign.es.js +1 -1
- package/dist/assign.es.min.js +1 -1
- package/dist/assign.js +1 -1
- package/dist/assign.min.js +1 -1
- package/dist/assign.mjs +1 -1
- package/dist/compose.es.js +1 -1
- package/dist/compose.es.min.js +1 -1
- package/dist/compose.js +1 -1
- package/dist/compose.min.js +1 -1
- package/dist/compose.mjs +1 -1
- package/dist/curry.es.js +1 -1
- package/dist/curry.es.min.js +1 -1
- package/dist/curry.js +1 -1
- package/dist/curry.min.js +1 -1
- package/dist/curry.mjs +1 -1
- package/dist/eq.es.js +1 -1
- package/dist/eq.es.min.js +1 -1
- package/dist/eq.js +1 -1
- package/dist/eq.min.js +1 -1
- package/dist/eq.mjs +1 -1
- package/dist/every.es.js +1 -1
- package/dist/every.es.min.js +1 -1
- package/dist/every.js +1 -1
- package/dist/every.min.js +1 -1
- package/dist/every.mjs +1 -1
- package/dist/filter.es.js +4 -4
- package/dist/filter.es.min.js +2 -2
- package/dist/filter.js +4 -4
- package/dist/filter.min.js +2 -2
- package/dist/filter.mjs +4 -4
- package/dist/flatMap.es.js +44 -28
- package/dist/flatMap.es.min.js +2 -2
- package/dist/flatMap.js +44 -28
- package/dist/flatMap.min.js +2 -2
- package/dist/flatMap.mjs +44 -28
- package/dist/forEach.es.js +6 -6
- package/dist/forEach.es.min.js +2 -2
- package/dist/forEach.js +6 -6
- package/dist/forEach.min.js +2 -2
- package/dist/forEach.mjs +6 -6
- package/dist/get.es.js +1 -1
- package/dist/get.es.min.js +1 -1
- package/dist/get.js +1 -1
- package/dist/get.min.js +1 -1
- package/dist/get.mjs +1 -1
- package/dist/gt.es.js +1 -1
- package/dist/gt.es.min.js +1 -1
- package/dist/gt.js +1 -1
- package/dist/gt.min.js +1 -1
- package/dist/gt.mjs +1 -1
- package/dist/gte.es.js +1 -1
- package/dist/gte.es.min.js +1 -1
- package/dist/gte.js +1 -1
- package/dist/gte.min.js +1 -1
- package/dist/gte.mjs +1 -1
- package/dist/lt.es.js +1 -1
- package/dist/lt.es.min.js +1 -1
- package/dist/lt.js +1 -1
- package/dist/lt.min.js +1 -1
- package/dist/lt.mjs +1 -1
- package/dist/lte.es.js +1 -1
- package/dist/lte.es.min.js +1 -1
- package/dist/lte.js +1 -1
- package/dist/lte.min.js +1 -1
- package/dist/lte.mjs +1 -1
- package/dist/map.es.js +187 -39
- package/dist/map.es.min.js +2 -2
- package/dist/map.js +187 -39
- package/dist/map.min.js +2 -2
- package/dist/map.mjs +187 -39
- package/dist/not.es.js +1 -1
- package/dist/not.es.min.js +1 -1
- package/dist/not.js +1 -1
- package/dist/not.min.js +1 -1
- package/dist/not.mjs +1 -1
- package/dist/omit.es.js +1 -1
- package/dist/omit.es.min.js +1 -1
- package/dist/omit.js +1 -1
- package/dist/omit.min.js +1 -1
- package/dist/omit.mjs +1 -1
- package/dist/or.es.js +1 -1
- package/dist/or.es.min.js +1 -1
- package/dist/or.js +1 -1
- package/dist/or.min.js +1 -1
- package/dist/or.mjs +1 -1
- package/dist/pick.es.js +1 -1
- package/dist/pick.es.min.js +1 -1
- package/dist/pick.js +1 -1
- package/dist/pick.min.js +1 -1
- package/dist/pick.mjs +1 -1
- package/dist/pipe.es.js +1 -1
- package/dist/pipe.es.min.js +1 -1
- package/dist/pipe.js +1 -1
- package/dist/pipe.min.js +1 -1
- package/dist/pipe.mjs +1 -1
- package/dist/reduce.es.js +1 -1
- package/dist/reduce.es.min.js +1 -1
- package/dist/reduce.js +1 -1
- package/dist/reduce.min.js +1 -1
- package/dist/reduce.mjs +1 -1
- package/dist/rubico.es.js +233 -78
- package/dist/rubico.es.min.js +2 -2
- package/dist/rubico.global.js +233 -78
- package/dist/rubico.global.min.js +2 -2
- package/dist/rubico.js +233 -78
- package/dist/rubico.min.js +2 -2
- package/dist/rubico.mjs +233 -78
- package/dist/set.es.js +1 -1
- package/dist/set.es.min.js +1 -1
- package/dist/set.js +1 -1
- package/dist/set.min.js +1 -1
- package/dist/set.mjs +1 -1
- package/dist/some.es.js +1 -1
- package/dist/some.es.min.js +1 -1
- package/dist/some.js +1 -1
- package/dist/some.min.js +1 -1
- package/dist/some.mjs +1 -1
- package/dist/switchCase.es.js +1 -1
- package/dist/switchCase.es.min.js +1 -1
- package/dist/switchCase.js +1 -1
- package/dist/switchCase.min.js +1 -1
- package/dist/switchCase.mjs +1 -1
- package/dist/tap.es.js +1 -1
- package/dist/tap.es.min.js +1 -1
- package/dist/tap.js +1 -1
- package/dist/tap.min.js +1 -1
- package/dist/tap.mjs +1 -1
- package/dist/thunkify.es.js +1 -1
- package/dist/thunkify.es.min.js +1 -1
- package/dist/thunkify.js +1 -1
- package/dist/thunkify.min.js +1 -1
- package/dist/thunkify.mjs +1 -1
- package/dist/transform.es.js +1 -1
- package/dist/transform.es.min.js +1 -1
- package/dist/transform.js +1 -1
- package/dist/transform.min.js +1 -1
- package/dist/transform.mjs +1 -1
- package/dist/tryCatch.es.js +1 -1
- package/dist/tryCatch.es.min.js +1 -1
- package/dist/tryCatch.js +1 -1
- package/dist/tryCatch.min.js +1 -1
- package/dist/tryCatch.mjs +1 -1
- package/dist/x/append.es.js +1 -1
- package/dist/x/append.es.min.js +1 -1
- package/dist/x/append.js +1 -1
- package/dist/x/append.min.js +1 -1
- package/dist/x/append.mjs +1 -1
- package/dist/x/callProp.es.js +1 -1
- package/dist/x/callProp.es.min.js +1 -1
- package/dist/x/callProp.js +1 -1
- package/dist/x/callProp.min.js +1 -1
- package/dist/x/callProp.mjs +1 -1
- package/dist/x/defaultsDeep.es.js +1 -1
- package/dist/x/defaultsDeep.es.min.js +1 -1
- package/dist/x/defaultsDeep.js +1 -1
- package/dist/x/defaultsDeep.min.js +1 -1
- package/dist/x/defaultsDeep.mjs +1 -1
- package/dist/x/differenceWith.es.js +1 -1
- package/dist/x/differenceWith.es.min.js +1 -1
- package/dist/x/differenceWith.js +1 -1
- package/dist/x/differenceWith.min.js +1 -1
- package/dist/x/differenceWith.mjs +1 -1
- package/dist/x/filterOut.es.js +4 -4
- package/dist/x/filterOut.es.min.js +2 -2
- package/dist/x/filterOut.js +4 -4
- package/dist/x/filterOut.min.js +2 -2
- package/dist/x/filterOut.mjs +4 -4
- package/dist/x/find.es.js +1 -3
- package/dist/x/find.es.min.js +1 -1
- package/dist/x/find.js +1 -3
- package/dist/x/find.min.js +1 -1
- package/dist/x/find.mjs +1 -3
- package/dist/x/findIndex.es.js +1 -1
- package/dist/x/findIndex.es.min.js +1 -1
- package/dist/x/findIndex.js +1 -1
- package/dist/x/findIndex.min.js +1 -1
- package/dist/x/findIndex.mjs +1 -1
- package/dist/x/first.es.js +1 -1
- package/dist/x/first.es.min.js +1 -1
- package/dist/x/first.js +1 -1
- package/dist/x/first.min.js +1 -1
- package/dist/x/first.mjs +1 -1
- package/dist/x/flatten.es.js +44 -28
- package/dist/x/flatten.es.min.js +2 -2
- package/dist/x/flatten.js +44 -28
- package/dist/x/flatten.min.js +2 -2
- package/dist/x/flatten.mjs +44 -28
- package/dist/x/groupBy.es.js +1 -1
- package/dist/x/groupBy.es.min.js +1 -1
- package/dist/x/groupBy.js +1 -1
- package/dist/x/groupBy.min.js +1 -1
- package/dist/x/groupBy.mjs +1 -1
- package/dist/x/has.es.js +1 -1
- package/dist/x/has.es.min.js +1 -1
- package/dist/x/has.js +1 -1
- package/dist/x/has.min.js +1 -1
- package/dist/x/has.mjs +1 -1
- package/dist/x/identity.es.js +1 -1
- package/dist/x/identity.es.min.js +1 -1
- package/dist/x/identity.js +1 -1
- package/dist/x/identity.min.js +1 -1
- package/dist/x/identity.mjs +1 -1
- package/dist/x/includes.es.js +1 -1
- package/dist/x/includes.es.min.js +1 -1
- package/dist/x/includes.js +1 -1
- package/dist/x/includes.min.js +1 -1
- package/dist/x/includes.mjs +1 -1
- package/dist/x/isDeepEqual.es.js +1 -1
- package/dist/x/isDeepEqual.es.min.js +1 -1
- package/dist/x/isDeepEqual.js +1 -1
- package/dist/x/isDeepEqual.min.js +1 -1
- package/dist/x/isDeepEqual.mjs +1 -1
- package/dist/x/isEmpty.es.js +1 -1
- package/dist/x/isEmpty.es.min.js +1 -1
- package/dist/x/isEmpty.js +1 -1
- package/dist/x/isEmpty.min.js +1 -1
- package/dist/x/isEmpty.mjs +1 -1
- package/dist/x/isEqual.es.js +1 -1
- package/dist/x/isEqual.es.min.js +1 -1
- package/dist/x/isEqual.js +1 -1
- package/dist/x/isEqual.min.js +1 -1
- package/dist/x/isEqual.mjs +1 -1
- package/dist/x/isFunction.es.js +1 -1
- package/dist/x/isFunction.es.min.js +1 -1
- package/dist/x/isFunction.js +1 -1
- package/dist/x/isFunction.min.js +1 -1
- package/dist/x/isFunction.mjs +1 -1
- package/dist/x/isIn.es.js +1 -1
- package/dist/x/isIn.es.min.js +1 -1
- package/dist/x/isIn.js +1 -1
- package/dist/x/isIn.min.js +1 -1
- package/dist/x/isIn.mjs +1 -1
- package/dist/x/isObject.es.js +1 -1
- package/dist/x/isObject.es.min.js +1 -1
- package/dist/x/isObject.js +1 -1
- package/dist/x/isObject.min.js +1 -1
- package/dist/x/isObject.mjs +1 -1
- package/dist/x/isString.es.js +1 -1
- package/dist/x/isString.es.min.js +1 -1
- package/dist/x/isString.js +1 -1
- package/dist/x/isString.min.js +1 -1
- package/dist/x/isString.mjs +1 -1
- package/dist/x/keys.es.js +1 -1
- package/dist/x/keys.es.min.js +1 -1
- package/dist/x/keys.js +1 -1
- package/dist/x/keys.min.js +1 -1
- package/dist/x/keys.mjs +1 -1
- package/dist/x/last.es.js +1 -1
- package/dist/x/last.es.min.js +1 -1
- package/dist/x/last.js +1 -1
- package/dist/x/last.min.js +1 -1
- package/dist/x/last.mjs +1 -1
- package/dist/x/maxBy.es.js +1 -1
- package/dist/x/maxBy.es.min.js +1 -1
- package/dist/x/maxBy.js +1 -1
- package/dist/x/maxBy.min.js +1 -1
- package/dist/x/maxBy.mjs +1 -1
- package/dist/x/noop.es.js +1 -1
- package/dist/x/noop.es.min.js +1 -1
- package/dist/x/noop.js +1 -1
- package/dist/x/noop.min.js +1 -1
- package/dist/x/noop.mjs +1 -1
- package/dist/x/pluck.es.js +187 -39
- package/dist/x/pluck.es.min.js +2 -2
- package/dist/x/pluck.js +187 -39
- package/dist/x/pluck.min.js +2 -2
- package/dist/x/pluck.mjs +187 -39
- package/dist/x/prepend.es.js +1 -1
- package/dist/x/prepend.es.min.js +1 -1
- package/dist/x/prepend.js +1 -1
- package/dist/x/prepend.min.js +1 -1
- package/dist/x/prepend.mjs +1 -1
- package/dist/x/size.es.js +1 -1
- package/dist/x/size.es.min.js +1 -1
- package/dist/x/size.js +1 -1
- package/dist/x/size.min.js +1 -1
- package/dist/x/size.mjs +1 -1
- package/dist/x/trace.es.js +1 -1
- package/dist/x/trace.es.min.js +1 -1
- package/dist/x/trace.js +1 -1
- package/dist/x/trace.min.js +1 -1
- package/dist/x/trace.mjs +1 -1
- package/dist/x/unionWith.es.js +1 -1
- package/dist/x/unionWith.es.min.js +1 -1
- package/dist/x/unionWith.js +1 -1
- package/dist/x/unionWith.min.js +1 -1
- package/dist/x/unionWith.mjs +1 -1
- package/dist/x/uniq.es.js +1 -1
- package/dist/x/uniq.es.min.js +1 -1
- package/dist/x/uniq.js +1 -1
- package/dist/x/uniq.min.js +1 -1
- package/dist/x/uniq.mjs +1 -1
- package/dist/x/unless.es.js +1 -1
- package/dist/x/unless.es.min.js +1 -1
- package/dist/x/unless.js +1 -1
- package/dist/x/unless.min.js +1 -1
- package/dist/x/unless.mjs +1 -1
- package/dist/x/values.es.js +1 -1
- package/dist/x/values.es.min.js +1 -1
- package/dist/x/values.js +1 -1
- package/dist/x/values.min.js +1 -1
- package/dist/x/values.mjs +1 -1
- package/dist/x/when.es.js +1 -1
- package/dist/x/when.es.min.js +1 -1
- package/dist/x/when.js +1 -1
- package/dist/x/when.min.js +1 -1
- package/dist/x/when.mjs +1 -1
- package/eq.js +2 -2
- package/es.js +233 -78
- package/every.js +2 -2
- package/filter.js +22 -23
- package/flatMap.js +61 -54
- package/forEach.js +33 -56
- package/get.js +5 -3
- package/gt.js +2 -2
- package/gte.js +2 -2
- package/index.js +233 -78
- package/lt.js +2 -2
- package/lte.js +2 -2
- package/map.js +117 -154
- package/monad/README.md +1 -1
- package/not.js +1 -1
- package/omit.js +22 -19
- package/or.js +1 -1
- package/package.json +1 -1
- package/pick.js +14 -11
- package/pipe.js +1 -1
- package/reduce.js +1 -1
- package/set.js +17 -18
- package/some.js +2 -2
- package/switchCase.js +12 -4
- package/tap.js +6 -4
- package/transform.js +1 -1
- package/tryCatch.js +1 -1
- package/x/defaultsDeep.js +1 -1
- package/x/defaultsDeep.test.js +1 -1
- package/_internal/NextIteration.js +0 -12
- package/_internal/generatorFunctionFilter.js +0 -28
- package/_internal/iterationMap.js +0 -27
package/dist/tryCatch.es.js
CHANGED
package/dist/tryCatch.es.min.js
CHANGED
package/dist/tryCatch.js
CHANGED
package/dist/tryCatch.min.js
CHANGED
package/dist/tryCatch.mjs
CHANGED
package/dist/x/append.es.js
CHANGED
package/dist/x/append.es.min.js
CHANGED
package/dist/x/append.js
CHANGED
package/dist/x/append.min.js
CHANGED
package/dist/x/append.mjs
CHANGED
package/dist/x/callProp.es.js
CHANGED
package/dist/x/callProp.js
CHANGED
package/dist/x/callProp.min.js
CHANGED
package/dist/x/callProp.mjs
CHANGED
package/dist/x/defaultsDeep.js
CHANGED
package/dist/x/defaultsDeep.mjs
CHANGED
package/dist/x/differenceWith.js
CHANGED
package/dist/x/filterOut.es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Rubico v2.
|
|
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.
|
|
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
|
|
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;
|
package/dist/x/filterOut.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Rubico v2.
|
|
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
|
}
|
package/dist/x/filterOut.min.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Rubico v2.
|
|
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
|
|
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}}());
|
package/dist/x/filterOut.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Rubico v2.
|
|
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.
|
|
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) {
|
package/dist/x/find.es.min.js
CHANGED
package/dist/x/find.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Rubico v2.
|
|
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) {
|
package/dist/x/find.min.js
CHANGED
package/dist/x/find.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Rubico v2.
|
|
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) {
|
package/dist/x/findIndex.es.js
CHANGED
package/dist/x/findIndex.js
CHANGED
package/dist/x/findIndex.min.js
CHANGED
package/dist/x/findIndex.mjs
CHANGED
package/dist/x/first.es.js
CHANGED
package/dist/x/first.es.min.js
CHANGED
package/dist/x/first.js
CHANGED
package/dist/x/first.min.js
CHANGED
package/dist/x/first.mjs
CHANGED
package/dist/x/flatten.es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Rubico v2.
|
|
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
|
-
}
|
|
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
|
-
|
|
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
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
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(
|
|
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
|
}
|