rubico 2.4.2 → 2.6.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 +3 -0
- package/_internal/arrayMapPool.js +11 -19
- package/_internal/mapMapPool.js +80 -0
- package/_internal/mapMapSeries.js +62 -0
- package/_internal/objectForEachSeries.js +6 -4
- package/_internal/objectMapPool.js +77 -0
- package/_internal/objectMapSeries.js +62 -0
- package/_internal/setAdd.js +14 -0
- package/_internal/setMapPool.js +79 -0
- package/_internal/setMapSeries.js +61 -0
- package/_internal/stringMap.js +1 -1
- package/_internal/stringMapPool.js +22 -0
- package/_internal/stringMapSeries.js +31 -0
- package/all.js +11 -1
- package/and.js +9 -0
- package/assign.js +14 -1
- package/compose.js +8 -0
- 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 +1 -1
- package/dist/filter.es.min.js +1 -1
- package/dist/filter.js +1 -1
- package/dist/filter.min.js +1 -1
- package/dist/filter.mjs +1 -1
- package/dist/flatMap.es.js +1 -1
- package/dist/flatMap.es.min.js +1 -1
- package/dist/flatMap.js +1 -1
- package/dist/flatMap.min.js +1 -1
- package/dist/flatMap.mjs +1 -1
- package/dist/forEach.es.js +11 -8
- package/dist/forEach.es.min.js +2 -2
- package/dist/forEach.js +11 -8
- package/dist/forEach.min.js +2 -2
- package/dist/forEach.mjs +11 -8
- 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 +382 -51
- package/dist/map.es.min.js +2 -2
- package/dist/map.js +382 -51
- package/dist/map.min.js +2 -2
- package/dist/map.mjs +382 -51
- 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 +362 -33
- package/dist/rubico.es.min.js +2 -2
- package/dist/rubico.global.js +362 -33
- package/dist/rubico.global.min.js +2 -2
- package/dist/rubico.js +362 -33
- package/dist/rubico.min.js +2 -2
- package/dist/rubico.mjs +362 -33
- 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 +38 -1
- package/dist/tap.es.min.js +2 -2
- package/dist/tap.js +38 -1
- package/dist/tap.min.js +2 -2
- package/dist/tap.mjs +38 -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 +1 -1
- package/dist/x/filterOut.es.min.js +1 -1
- package/dist/x/filterOut.js +1 -1
- package/dist/x/filterOut.min.js +1 -1
- package/dist/x/filterOut.mjs +1 -1
- package/dist/x/find.es.js +1 -1
- package/dist/x/find.es.min.js +1 -1
- package/dist/x/find.js +1 -1
- package/dist/x/find.min.js +1 -1
- package/dist/x/find.mjs +1 -1
- 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 +1 -1
- package/dist/x/flatten.es.min.js +1 -1
- package/dist/x/flatten.js +1 -1
- package/dist/x/flatten.min.js +1 -1
- package/dist/x/flatten.mjs +1 -1
- 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 +382 -51
- package/dist/x/pluck.es.min.js +2 -2
- package/dist/x/pluck.js +382 -51
- package/dist/x/pluck.min.js +2 -2
- package/dist/x/pluck.mjs +382 -51
- 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 +38 -1
- package/dist/x/trace.es.min.js +2 -2
- package/dist/x/trace.js +38 -1
- package/dist/x/trace.min.js +2 -2
- package/dist/x/trace.mjs +38 -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 +6 -0
- package/es.js +362 -33
- package/every.js +6 -0
- package/filter.js +9 -0
- package/flatMap.js +7 -0
- package/forEach.js +22 -3
- package/get.js +6 -0
- package/gt.js +6 -0
- package/gte.js +6 -0
- package/index.js +362 -33
- package/lt.js +6 -0
- package/lte.js +6 -0
- package/map.js +172 -44
- package/not.js +8 -0
- package/omit.js +7 -0
- package/or.js +9 -0
- package/package.json +1 -1
- package/pick.js +7 -0
- package/pipe.js +8 -0
- package/reduce.js +8 -0
- package/set.js +6 -0
- package/some.js +6 -0
- package/switchCase.js +12 -0
- package/tap.js +11 -0
- package/transform.js +38 -10
- package/tryCatch.js +14 -0
package/dist/forEach.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.
|
|
2
|
+
* rubico v2.6.0
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2024 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
@@ -142,11 +142,11 @@ const arrayForEachSeries = function (array, callback) {
|
|
|
142
142
|
// _objectForEachSeriesAsync(
|
|
143
143
|
// object Object,
|
|
144
144
|
// callback function,
|
|
145
|
-
//
|
|
145
|
+
// doneKeys Object,
|
|
146
146
|
// ) -> Promise<object>
|
|
147
|
-
const _objectForEachSeriesAsync = async function (object, callback,
|
|
147
|
+
const _objectForEachSeriesAsync = async function (object, callback, doneKeys) {
|
|
148
148
|
for (const key in object) {
|
|
149
|
-
if (key
|
|
149
|
+
if (key in doneKeys) {
|
|
150
150
|
continue
|
|
151
151
|
}
|
|
152
152
|
const operation = callback(object[key])
|
|
@@ -158,11 +158,13 @@ const _objectForEachSeriesAsync = async function (object, callback, firstKey) {
|
|
|
158
158
|
}
|
|
159
159
|
|
|
160
160
|
const objectForEachSeries = function (object, callback) {
|
|
161
|
+
const doneKeys = {}
|
|
161
162
|
for (const key in object) {
|
|
163
|
+
doneKeys[key] = true
|
|
162
164
|
const operation = callback(object[key])
|
|
163
165
|
if (isPromise(operation)) {
|
|
164
166
|
return operation
|
|
165
|
-
.then(thunkify3(_objectForEachSeriesAsync, object, callback,
|
|
167
|
+
.then(thunkify3(_objectForEachSeriesAsync, object, callback, doneKeys))
|
|
166
168
|
}
|
|
167
169
|
}
|
|
168
170
|
return object
|
|
@@ -221,7 +223,8 @@ const _forEach = function (collection, callback) {
|
|
|
221
223
|
return collection
|
|
222
224
|
}
|
|
223
225
|
if (typeof collection.forEach == 'function') {
|
|
224
|
-
|
|
226
|
+
collection.forEach(callback)
|
|
227
|
+
return collection
|
|
225
228
|
}
|
|
226
229
|
if (typeof collection[symbolIterator] == 'function') {
|
|
227
230
|
return iteratorForEach(collection[symbolIterator](), callback)
|
|
@@ -249,7 +252,7 @@ const _forEachSeries = function (collection, callback) {
|
|
|
249
252
|
return arrayForEachSeries(collection, callback)
|
|
250
253
|
}
|
|
251
254
|
if (collection == null) {
|
|
252
|
-
throw new
|
|
255
|
+
throw new TypeError(`invalid collection ${collection}`)
|
|
253
256
|
}
|
|
254
257
|
if (typeof collection[symbolIterator] == 'function') {
|
|
255
258
|
return iteratorForEachSeries(collection[symbolIterator](), callback)
|
|
@@ -260,7 +263,7 @@ const _forEachSeries = function (collection, callback) {
|
|
|
260
263
|
if (collection.constructor == Object) {
|
|
261
264
|
return objectForEachSeries(collection, callback)
|
|
262
265
|
}
|
|
263
|
-
throw new
|
|
266
|
+
throw new TypeError(`invalid collection ${collection}`)
|
|
264
267
|
}
|
|
265
268
|
|
|
266
269
|
forEach.series = function forEachSeries(arg0, arg1) {
|
package/dist/forEach.min.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.
|
|
2
|
+
* rubico v2.6.0
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2024 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.forEach=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=Symbol.for("placeholder"),o=function(n,o,r){return o==t?((n,t)=>function(o){return n(o,t)})(n,r):((n,t)=>function(o){return n(t,o)})(n,o)},r=Array.isArray,e=(Object.prototype.toString,Promise.all.bind(Promise)),c=n=>function(){return n},u=Symbol.iterator,f=Symbol.asyncIterator,i=(n,t,o,r)=>function(){return n(t,o,r)},s=async function(t,o,r){const e=t.length;for(;++r<e;){const e=o(t[r]);n(e)&&await e}return t},l=async function(t,o,r){for(const e in t){if(e
|
|
8
|
+
!function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.forEach=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=Symbol.for("placeholder"),o=function(n,o,r){return o==t?((n,t)=>function(o){return n(o,t)})(n,r):((n,t)=>function(o){return n(t,o)})(n,o)},r=Array.isArray,e=(Object.prototype.toString,Promise.all.bind(Promise)),c=n=>function(){return n},u=Symbol.iterator,f=Symbol.asyncIterator,i=(n,t,o,r)=>function(){return n(t,o,r)},s=async function(t,o,r){const e=t.length;for(;++r<e;){const e=o(t[r]);n(e)&&await e}return t},l=async function(t,o,r){for(const e in t){if(e in r)continue;const c=o(t[e]);n(c)&&await c}return t},a=(n,t,o)=>function(){return n(t,o)},h=async function(t,o){let r=t.next();for(;!r.done;){const e=o(r.value);n(e)&&await e,r=t.next()}return t},y=function(t,o){return r(t)?function(t,o){const r=t.length,u=[];let f=-1;for(;++f<r;){const r=o(t[f]);n(r)&&u.push(r)}return 0==u.length?t:e(u).then(c(t))}(t,o):null==t?t:"function"==typeof t.forEach?(t.forEach(o),t):"function"==typeof t[u]?function(t,o){const r=[];for(const e of t){const t=o(e);n(t)&&r.push(t)}return 0==r.length?t:e(r).then(c(t))}(t[u](),o):"function"==typeof t[f]?async function(t,o){const r=[];for await(const e of t){const t=o(e);n(t)&&r.push(t)}return 0==r.length?t:e(r).then(c(t))}(t[f](),o):t.constructor==Object?function(t,o){const r=[];for(const e in t){const c=o(t[e]);n(c)&&r.push(c)}return 0==r.length?t:e(r).then(c(t))}(t,o):t},p=function(r,e){return"function"==typeof r?o(y,t,r):n(r)?r.then(o(y,t,e)):y(r,e)},b=function(t,o){if(r(t))return function(t,o){const r=t.length;let e=-1;for(;++e<r;){const r=o(t[e]);if(n(r))return r.then(i(s,t,o,e))}return t}(t,o);if(null==t)throw new TypeError(`invalid collection ${t}`);if("function"==typeof t[u])return function(t,o){let r=t.next();for(;!t.done;){const e=o(r.value);if(n(e))return e.then(a(h,t,o));r=t.next()}return t}(t[u](),o);if("function"==typeof t[f])return async function(t,o){for await(const r of t){const t=o(r);n(t)&&await t}return t}(t[f](),o);if(t.constructor==Object)return function(t,o){const r={};for(const e in t){r[e]=!0;const c=o(t[e]);if(n(c))return c.then(i(l,t,o,r))}return t}(t,o);throw new TypeError(`invalid collection ${t}`)};return p.series=function(r,e){return"function"==typeof r?o(b,t,r):n(r)?r.then(o(b,t,e)):b(r,e)},p}());
|
package/dist/forEach.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.
|
|
2
|
+
* rubico v2.6.0
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2024 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
@@ -136,11 +136,11 @@ const arrayForEachSeries = function (array, callback) {
|
|
|
136
136
|
// _objectForEachSeriesAsync(
|
|
137
137
|
// object Object,
|
|
138
138
|
// callback function,
|
|
139
|
-
//
|
|
139
|
+
// doneKeys Object,
|
|
140
140
|
// ) -> Promise<object>
|
|
141
|
-
const _objectForEachSeriesAsync = async function (object, callback,
|
|
141
|
+
const _objectForEachSeriesAsync = async function (object, callback, doneKeys) {
|
|
142
142
|
for (const key in object) {
|
|
143
|
-
if (key
|
|
143
|
+
if (key in doneKeys) {
|
|
144
144
|
continue
|
|
145
145
|
}
|
|
146
146
|
const operation = callback(object[key])
|
|
@@ -152,11 +152,13 @@ const _objectForEachSeriesAsync = async function (object, callback, firstKey) {
|
|
|
152
152
|
}
|
|
153
153
|
|
|
154
154
|
const objectForEachSeries = function (object, callback) {
|
|
155
|
+
const doneKeys = {}
|
|
155
156
|
for (const key in object) {
|
|
157
|
+
doneKeys[key] = true
|
|
156
158
|
const operation = callback(object[key])
|
|
157
159
|
if (isPromise(operation)) {
|
|
158
160
|
return operation
|
|
159
|
-
.then(thunkify3(_objectForEachSeriesAsync, object, callback,
|
|
161
|
+
.then(thunkify3(_objectForEachSeriesAsync, object, callback, doneKeys))
|
|
160
162
|
}
|
|
161
163
|
}
|
|
162
164
|
return object
|
|
@@ -215,7 +217,8 @@ const _forEach = function (collection, callback) {
|
|
|
215
217
|
return collection
|
|
216
218
|
}
|
|
217
219
|
if (typeof collection.forEach == 'function') {
|
|
218
|
-
|
|
220
|
+
collection.forEach(callback)
|
|
221
|
+
return collection
|
|
219
222
|
}
|
|
220
223
|
if (typeof collection[symbolIterator] == 'function') {
|
|
221
224
|
return iteratorForEach(collection[symbolIterator](), callback)
|
|
@@ -243,7 +246,7 @@ const _forEachSeries = function (collection, callback) {
|
|
|
243
246
|
return arrayForEachSeries(collection, callback)
|
|
244
247
|
}
|
|
245
248
|
if (collection == null) {
|
|
246
|
-
throw new
|
|
249
|
+
throw new TypeError(`invalid collection ${collection}`)
|
|
247
250
|
}
|
|
248
251
|
if (typeof collection[symbolIterator] == 'function') {
|
|
249
252
|
return iteratorForEachSeries(collection[symbolIterator](), callback)
|
|
@@ -254,7 +257,7 @@ const _forEachSeries = function (collection, callback) {
|
|
|
254
257
|
if (collection.constructor == Object) {
|
|
255
258
|
return objectForEachSeries(collection, callback)
|
|
256
259
|
}
|
|
257
|
-
throw new
|
|
260
|
+
throw new TypeError(`invalid collection ${collection}`)
|
|
258
261
|
}
|
|
259
262
|
|
|
260
263
|
forEach.series = function forEachSeries(arg0, arg1) {
|
package/dist/get.es.js
CHANGED
package/dist/get.es.min.js
CHANGED
package/dist/get.js
CHANGED
package/dist/get.min.js
CHANGED
package/dist/get.mjs
CHANGED
package/dist/gt.es.js
CHANGED
package/dist/gt.es.min.js
CHANGED
package/dist/gt.js
CHANGED
package/dist/gt.min.js
CHANGED
package/dist/gt.mjs
CHANGED
package/dist/gte.es.js
CHANGED
package/dist/gte.es.min.js
CHANGED
package/dist/gte.js
CHANGED
package/dist/gte.min.js
CHANGED
package/dist/gte.mjs
CHANGED
package/dist/lt.es.js
CHANGED
package/dist/lt.es.min.js
CHANGED
package/dist/lt.js
CHANGED
package/dist/lt.min.js
CHANGED
package/dist/lt.mjs
CHANGED
package/dist/lte.es.js
CHANGED
package/dist/lte.es.min.js
CHANGED
package/dist/lte.js
CHANGED
package/dist/lte.min.js
CHANGED
package/dist/lte.mjs
CHANGED