rubico 2.7.3 → 2.7.5
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/LICENSE +1 -1
- package/README.md +27 -30
- package/Transducer.d.ts +10 -10
- package/Transducer.js +65 -69
- package/__.js +1 -1
- package/_internal/FlatMappingIterator.js +1 -1
- package/_internal/MappingIterator.d.ts +1 -1
- package/_internal/MappingIterator.js +1 -1
- package/_internal/arrayFilter.js +6 -6
- package/_internal/arrayFilterIndexes.js +7 -7
- package/_internal/arrayFilterWithIndex.js +6 -6
- package/_internal/arrayFind.js +7 -7
- package/_internal/arrayFlatten.js +25 -25
- package/_internal/arrayForEach.d.ts +1 -1
- package/_internal/arrayForEach.js +1 -1
- package/_internal/arrayForEachSeries.js +1 -1
- package/_internal/arrayMap.d.ts +2 -2
- package/_internal/arrayMap.js +5 -5
- package/_internal/arrayMapPool.d.ts +1 -1
- package/_internal/arrayMapPool.js +10 -10
- package/_internal/arrayMapRate.js +4 -4
- package/_internal/arrayMapSeries.d.ts +1 -1
- package/_internal/arrayMapSeries.js +8 -8
- package/_internal/arrayMapWithIndex.js +4 -4
- package/_internal/arrayReduce.js +1 -1
- package/_internal/asyncGeneratorFunctionForEach.js +3 -3
- package/_internal/asyncGeneratorFunctionMap.js +3 -3
- package/_internal/asyncIteratorFind.js +3 -3
- package/_internal/asyncIteratorForEach.d.ts +1 -1
- package/_internal/asyncIteratorForEach.js +3 -3
- package/_internal/asyncIteratorForEachSeries.js +3 -3
- package/_internal/asyncIteratorToArray.js +2 -2
- package/_internal/copyDeep.js +12 -12
- package/_internal/funcAll.js +3 -3
- package/_internal/funcAllSeries.js +6 -6
- package/_internal/funcObjectAll.js +4 -4
- package/_internal/functionArrayAll.js +3 -3
- package/_internal/functionArrayAllSeries.js +6 -6
- package/_internal/functionObjectAll.js +4 -4
- package/_internal/generatorFunctionForEach.js +3 -3
- package/_internal/generatorFunctionMap.js +3 -3
- package/_internal/generatorFunctionReduce.js +1 -1
- package/_internal/iteratorEvery.js +2 -2
- package/_internal/iteratorFind.js +7 -7
- package/_internal/iteratorForEach.d.ts +1 -1
- package/_internal/iteratorForEach.js +3 -3
- package/_internal/iteratorForEachSeries.js +1 -1
- package/_internal/iteratorReduce.d.ts +1 -1
- package/_internal/iteratorReduce.js +2 -2
- package/_internal/iteratorSome.js +2 -2
- package/_internal/mapFilter.js +4 -4
- package/_internal/mapMap.d.ts +1 -1
- package/_internal/mapMap.js +6 -6
- package/_internal/mapMapPool.js +10 -10
- package/_internal/mapMapSeries.js +10 -10
- package/_internal/objectFilter.js +6 -6
- package/_internal/objectFlatMap.d.ts +1 -1
- package/_internal/objectFlatMap.js +1 -1
- package/_internal/objectFlatten.js +14 -14
- package/_internal/objectMap.js +3 -3
- package/_internal/objectMapOwn.js +3 -3
- package/_internal/objectMapPool.js +10 -10
- package/_internal/objectMapSeries.js +9 -9
- package/_internal/objectReduce.d.ts +1 -1
- package/_internal/objectReduce.js +2 -2
- package/_internal/reducerAllSync.d.ts +2 -2
- package/_internal/reducerAllSync.js +2 -2
- package/_internal/reducerAnySync.d.ts +1 -1
- package/_internal/reducerAnySync.js +2 -2
- package/_internal/reducerConcat.d.ts +1 -1
- package/_internal/reducerConcat.js +4 -4
- package/_internal/reducerConcatSync.js +2 -2
- package/_internal/reducerEvery.d.ts +2 -2
- package/_internal/reducerEvery.js +4 -4
- package/_internal/reducerFilter.d.ts +2 -2
- package/_internal/reducerFilter.js +5 -5
- package/_internal/reducerFlatten.js +3 -3
- package/_internal/reducerForEach.d.ts +2 -2
- package/_internal/reducerForEach.js +5 -5
- package/_internal/reducerMap.d.ts +1 -1
- package/_internal/reducerMap.js +5 -5
- package/_internal/reducerSome.d.ts +2 -2
- package/_internal/reducerSome.js +4 -4
- package/_internal/reducerTryCatch.d.ts +2 -2
- package/_internal/reducerTryCatch.js +8 -8
- package/_internal/setFilter.d.ts +1 -1
- package/_internal/setFilter.js +5 -5
- package/_internal/setFlatten.js +24 -24
- package/_internal/setMap.d.ts +1 -1
- package/_internal/setMap.js +6 -6
- package/_internal/setMapPool.js +9 -9
- package/_internal/setMapSeries.js +10 -10
- package/_internal/streamFlatExtend.js +25 -25
- package/_internal/streamFlatMap.js +2 -2
- package/all.js +3 -3
- package/and.js +5 -2
- package/assign.js +2 -2
- package/compose.js +6 -2
- package/curry.js +5 -12
- package/dist/Transducer.es.js +24 -24
- package/dist/Transducer.es.min.js +1 -1
- package/dist/Transducer.js +24 -24
- package/dist/Transducer.min.js +1 -1
- package/dist/Transducer.mjs +24 -24
- 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 +14 -14
- package/dist/all.es.min.js +1 -1
- package/dist/all.js +14 -14
- package/dist/all.min.js +1 -1
- package/dist/all.mjs +14 -14
- 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 +5 -5
- package/dist/assign.es.min.js +1 -1
- package/dist/assign.js +5 -5
- package/dist/assign.min.js +1 -1
- package/dist/assign.mjs +5 -5
- 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 +7 -7
- package/dist/every.es.min.js +1 -1
- package/dist/every.js +7 -7
- package/dist/every.min.js +1 -1
- package/dist/every.mjs +7 -7
- package/dist/filter.es.js +21 -21
- package/dist/filter.es.min.js +1 -1
- package/dist/filter.js +21 -21
- package/dist/filter.min.js +1 -1
- package/dist/filter.mjs +21 -21
- package/dist/flatMap.es.js +82 -82
- package/dist/flatMap.es.min.js +1 -1
- package/dist/flatMap.js +82 -82
- package/dist/flatMap.min.js +1 -1
- package/dist/flatMap.mjs +82 -82
- package/dist/forEach.es.js +7 -7
- package/dist/forEach.es.min.js +1 -1
- package/dist/forEach.js +7 -7
- package/dist/forEach.min.js +1 -1
- package/dist/forEach.mjs +7 -7
- 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 +83 -83
- package/dist/map.es.min.js +1 -1
- package/dist/map.js +83 -83
- package/dist/map.min.js +1 -1
- package/dist/map.mjs +83 -83
- 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 +13 -13
- package/dist/omit.es.min.js +1 -1
- package/dist/omit.js +13 -13
- package/dist/omit.min.js +1 -1
- package/dist/omit.mjs +13 -13
- 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 +5 -5
- package/dist/reduce.es.min.js +1 -1
- package/dist/reduce.js +5 -5
- package/dist/reduce.min.js +1 -1
- package/dist/reduce.mjs +5 -5
- package/dist/rubico.es.js +215 -215
- package/dist/rubico.es.min.js +1 -1
- package/dist/rubico.global.js +215 -215
- package/dist/rubico.global.min.js +1 -1
- package/dist/rubico.js +215 -215
- package/dist/rubico.min.js +1 -1
- package/dist/rubico.mjs +215 -215
- 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 +8 -8
- package/dist/some.es.min.js +1 -1
- package/dist/some.js +8 -8
- package/dist/some.min.js +1 -1
- package/dist/some.mjs +8 -8
- 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 +5 -5
- package/dist/transform.es.min.js +1 -1
- package/dist/transform.js +5 -5
- package/dist/transform.min.js +1 -1
- package/dist/transform.mjs +5 -5
- 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 +8 -8
- package/dist/x/append.es.min.js +1 -1
- package/dist/x/append.js +8 -8
- package/dist/x/append.min.js +1 -1
- package/dist/x/append.mjs +8 -8
- 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 +69 -37
- package/dist/x/defaultsDeep.es.min.js +2 -2
- package/dist/x/defaultsDeep.js +69 -37
- package/dist/x/defaultsDeep.min.js +2 -2
- package/dist/x/defaultsDeep.mjs +69 -37
- package/dist/x/differenceWith.es.js +14 -14
- package/dist/x/differenceWith.es.min.js +1 -1
- package/dist/x/differenceWith.js +14 -14
- package/dist/x/differenceWith.min.js +1 -1
- package/dist/x/differenceWith.mjs +14 -14
- package/dist/x/filterOut.es.js +21 -21
- package/dist/x/filterOut.es.min.js +1 -1
- package/dist/x/filterOut.js +21 -21
- package/dist/x/filterOut.min.js +1 -1
- package/dist/x/filterOut.mjs +21 -21
- package/dist/x/find.es.js +18 -18
- package/dist/x/find.es.min.js +1 -1
- package/dist/x/find.js +18 -18
- package/dist/x/find.min.js +1 -1
- package/dist/x/find.mjs +18 -18
- 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 +82 -82
- package/dist/x/flatten.es.min.js +1 -1
- package/dist/x/flatten.js +82 -82
- package/dist/x/flatten.min.js +1 -1
- package/dist/x/flatten.mjs +82 -82
- package/dist/x/groupBy.es.js +17 -17
- package/dist/x/groupBy.es.min.js +1 -1
- package/dist/x/groupBy.js +17 -17
- package/dist/x/groupBy.min.js +1 -1
- package/dist/x/groupBy.mjs +17 -17
- 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 +6 -6
- package/dist/x/maxBy.es.min.js +1 -1
- package/dist/x/maxBy.js +6 -6
- package/dist/x/maxBy.min.js +1 -1
- package/dist/x/maxBy.mjs +6 -6
- 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 +83 -83
- package/dist/x/pluck.es.min.js +1 -1
- package/dist/x/pluck.js +83 -83
- package/dist/x/pluck.min.js +1 -1
- package/dist/x/pluck.mjs +83 -83
- package/dist/x/prepend.es.js +8 -8
- package/dist/x/prepend.es.min.js +1 -1
- package/dist/x/prepend.js +8 -8
- package/dist/x/prepend.min.js +1 -1
- package/dist/x/prepend.mjs +8 -8
- 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 +39 -39
- package/dist/x/unionWith.es.min.js +1 -1
- package/dist/x/unionWith.js +39 -39
- package/dist/x/unionWith.min.js +1 -1
- package/dist/x/unionWith.mjs +39 -39
- 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 +32 -10
- package/es.js +215 -215
- package/every.d.ts +1 -1
- package/every.js +6 -3
- package/filter.d.ts +3 -3
- package/filter.js +14 -14
- package/flatMap.d.ts +9 -9
- package/flatMap.js +9 -9
- package/forEach.d.ts +1 -1
- package/forEach.js +19 -15
- package/global.js +1 -0
- package/gt.js +30 -13
- package/gte.js +31 -12
- package/index.js +215 -215
- package/lt.js +28 -9
- package/lte.js +34 -15
- package/map.d.ts +3 -3
- package/map.js +31 -31
- package/monad/Mux.benchmark.js +1 -1
- package/monad/Mux.js +6 -6
- package/monad/Struct.js +2 -2
- package/not.js +15 -7
- package/or.js +5 -2
- package/package.json +1 -1
- package/pipe.js +7 -13
- package/reduce.d.ts +7 -7
- package/reduce.js +16 -16
- package/some.d.ts +1 -1
- package/some.js +6 -3
- package/switchCase.d.ts +1 -1
- package/switchCase.js +7 -4
- package/tap.js +14 -4
- package/thunkify.js +2 -0
- package/transform.d.ts +1 -1
- package/transform.js +6 -15
- package/tryCatch.js +8 -2
- package/x/README.md +8 -8
- package/x/append.d.ts +2 -2
- package/x/append.js +8 -8
- package/x/defaultsDeep.js +94 -57
- package/x/defaultsDeep.test.js +24 -1
- package/x/differenceWith.js +13 -13
- package/x/find.d.ts +1 -1
- package/x/find.js +1 -1
- package/x/find.test.js +2 -2
- package/x/findIndex.test.js +1 -1
- package/x/first.d.ts +1 -1
- package/x/first.js +1 -1
- package/x/first.test.js +1 -1
- package/x/groupBy.d.ts +1 -1
- package/x/groupBy.js +13 -13
- package/x/last.d.ts +1 -1
- package/x/last.js +1 -1
- package/x/last.test.js +1 -1
- package/x/maxBy.d.ts +7 -7
- package/x/maxBy.js +13 -13
- package/x/maxBy.test.js +5 -5
- package/x/pluck.test.js +1 -1
- package/x/prepend.d.ts +2 -2
- package/x/prepend.js +8 -8
- package/x/size.d.ts +1 -1
- package/x/size.js +1 -1
- package/x/unionWith.js +11 -11
- package/x/unionWith.test.js +5 -5
- package/global.d.ts +0 -1
package/dist/x/flatten.es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.7.
|
|
2
|
+
* rubico v2.7.5
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2025 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
@@ -52,8 +52,8 @@ const funcConcatSync = (
|
|
|
52
52
|
|
|
53
53
|
const asyncIteratorForEach = async function (asyncIterator, callback) {
|
|
54
54
|
const promises = []
|
|
55
|
-
for await (const
|
|
56
|
-
const operation = callback(
|
|
55
|
+
for await (const element of asyncIterator) {
|
|
56
|
+
const operation = callback(element)
|
|
57
57
|
if (isPromise(operation)) {
|
|
58
58
|
promises.push(operation)
|
|
59
59
|
}
|
|
@@ -73,44 +73,44 @@ const arrayFlatten = function (array) {
|
|
|
73
73
|
let index = -1
|
|
74
74
|
|
|
75
75
|
while (++index < length) {
|
|
76
|
-
const
|
|
77
|
-
if (isArray(
|
|
78
|
-
const
|
|
79
|
-
let
|
|
80
|
-
while (++
|
|
81
|
-
result.push(
|
|
76
|
+
const element = array[index]
|
|
77
|
+
if (isArray(element)) {
|
|
78
|
+
const elementLength = element.length
|
|
79
|
+
let elementIndex = -1
|
|
80
|
+
while (++elementIndex < elementLength) {
|
|
81
|
+
result.push(element[elementIndex])
|
|
82
82
|
}
|
|
83
|
-
} else if (
|
|
84
|
-
result.push(
|
|
85
|
-
} else if (typeof
|
|
86
|
-
promises.push(
|
|
87
|
-
} else if (typeof
|
|
88
|
-
for (const
|
|
89
|
-
result.push(
|
|
83
|
+
} else if (element == null) {
|
|
84
|
+
result.push(element)
|
|
85
|
+
} else if (typeof element.then == 'function') {
|
|
86
|
+
promises.push(element.then(curry2(arrayPush, result, __)))
|
|
87
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
88
|
+
for (const subElement of element) {
|
|
89
|
+
result.push(subElement)
|
|
90
90
|
}
|
|
91
|
-
} else if (typeof
|
|
91
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
92
92
|
promises.push(asyncIteratorForEach(
|
|
93
|
-
|
|
94
|
-
} else if (typeof
|
|
95
|
-
const monadValue =
|
|
93
|
+
element[symbolAsyncIterator](), curry2(arrayPush, result, __)))
|
|
94
|
+
} else if (typeof element.chain == 'function') {
|
|
95
|
+
const monadValue = element.chain(identity)
|
|
96
96
|
isPromise(monadValue)
|
|
97
97
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
98
98
|
: result.push(monadValue)
|
|
99
|
-
} else if (typeof
|
|
100
|
-
const monadValue =
|
|
99
|
+
} else if (typeof element.flatMap == 'function') {
|
|
100
|
+
const monadValue = element.flatMap(identity)
|
|
101
101
|
isPromise(monadValue)
|
|
102
102
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
103
103
|
: result.push(monadValue)
|
|
104
|
-
} else if (typeof
|
|
105
|
-
const folded =
|
|
104
|
+
} else if (typeof element.reduce == 'function') {
|
|
105
|
+
const folded = element.reduce(funcConcatSync(
|
|
106
106
|
getArg1, curry2(arrayPush, result, __)), null)
|
|
107
107
|
isPromise(folded) && promises.push(folded)
|
|
108
|
-
} else if (
|
|
109
|
-
for (const key in
|
|
110
|
-
result.push(
|
|
108
|
+
} else if (element.constructor == Object) {
|
|
109
|
+
for (const key in element) {
|
|
110
|
+
result.push(element[key])
|
|
111
111
|
}
|
|
112
112
|
} else {
|
|
113
|
-
result.push(
|
|
113
|
+
result.push(element)
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
116
|
return promises.length == 0
|
|
@@ -155,45 +155,45 @@ const setFlatten = function (set) {
|
|
|
155
155
|
const size = set.size,
|
|
156
156
|
promises = [],
|
|
157
157
|
result = new Set(),
|
|
158
|
-
resultAddReducer = (_,
|
|
158
|
+
resultAddReducer = (_, subElement) => result.add(subElement),
|
|
159
159
|
resultAdd = curry3(callPropUnary, result, 'add', __),
|
|
160
160
|
getResult = () => result
|
|
161
161
|
|
|
162
|
-
for (const
|
|
163
|
-
if (isArray(
|
|
164
|
-
const
|
|
165
|
-
let
|
|
166
|
-
while (++
|
|
167
|
-
result.add(
|
|
162
|
+
for (const element of set) {
|
|
163
|
+
if (isArray(element)) {
|
|
164
|
+
const elementLength = element.length
|
|
165
|
+
let elementIndex = -1
|
|
166
|
+
while (++elementIndex < elementLength) {
|
|
167
|
+
result.add(element[elementIndex])
|
|
168
168
|
}
|
|
169
|
-
} else if (
|
|
170
|
-
result.add(
|
|
171
|
-
} else if (typeof
|
|
172
|
-
for (const
|
|
173
|
-
result.add(
|
|
169
|
+
} else if (element == null) {
|
|
170
|
+
result.add(element)
|
|
171
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
172
|
+
for (const subElement of element) {
|
|
173
|
+
result.add(subElement)
|
|
174
174
|
}
|
|
175
|
-
} else if (typeof
|
|
175
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
176
176
|
promises.push(
|
|
177
|
-
asyncIteratorForEach(
|
|
178
|
-
} else if (typeof
|
|
179
|
-
const monadValue =
|
|
177
|
+
asyncIteratorForEach(element[symbolAsyncIterator](), resultAdd))
|
|
178
|
+
} else if (typeof element.chain == 'function') {
|
|
179
|
+
const monadValue = element.chain(identity)
|
|
180
180
|
isPromise(monadValue)
|
|
181
181
|
? promises.push(monadValue.then(resultAdd))
|
|
182
182
|
: result.add(monadValue)
|
|
183
|
-
} else if (typeof
|
|
184
|
-
const monadValue =
|
|
183
|
+
} else if (typeof element.flatMap == 'function') {
|
|
184
|
+
const monadValue = element.flatMap(identity)
|
|
185
185
|
isPromise(monadValue)
|
|
186
186
|
? promises.push(monadValue.then(resultAdd))
|
|
187
187
|
: result.add(monadValue)
|
|
188
|
-
} else if (typeof
|
|
189
|
-
const folded =
|
|
188
|
+
} else if (typeof element.reduce == 'function') {
|
|
189
|
+
const folded = element.reduce(resultAddReducer, null)
|
|
190
190
|
isPromise(folded) && promises.push(folded)
|
|
191
|
-
} else if (
|
|
192
|
-
for (const key in
|
|
193
|
-
result.add(
|
|
191
|
+
} else if (element.constructor == Object) {
|
|
192
|
+
for (const key in element) {
|
|
193
|
+
result.add(element[key])
|
|
194
194
|
}
|
|
195
195
|
} else {
|
|
196
|
-
result.add(
|
|
196
|
+
result.add(element)
|
|
197
197
|
}
|
|
198
198
|
}
|
|
199
199
|
return promises.length == 0 ? result : promiseAll(promises).then(getResult)
|
|
@@ -209,31 +209,31 @@ const objectFlatten = function (object) {
|
|
|
209
209
|
getResult = () => result
|
|
210
210
|
|
|
211
211
|
for (const key in object) {
|
|
212
|
-
const
|
|
213
|
-
if (
|
|
212
|
+
const element = object[key]
|
|
213
|
+
if (element == null) {
|
|
214
214
|
continue
|
|
215
|
-
} else if (typeof
|
|
216
|
-
for (const
|
|
217
|
-
objectAssign(result,
|
|
215
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
216
|
+
for (const monadElement of element) {
|
|
217
|
+
objectAssign(result, monadElement)
|
|
218
218
|
}
|
|
219
|
-
} else if (typeof
|
|
219
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
220
220
|
promises.push(
|
|
221
|
-
asyncIteratorForEach(
|
|
222
|
-
} else if (typeof
|
|
223
|
-
const monadValue =
|
|
221
|
+
asyncIteratorForEach(element[symbolAsyncIterator](), resultAssign))
|
|
222
|
+
} else if (typeof element.chain == 'function') {
|
|
223
|
+
const monadValue = element.chain(identity)
|
|
224
224
|
isPromise(monadValue)
|
|
225
225
|
? promises.push(monadValue.then(resultAssign))
|
|
226
226
|
: objectAssign(result, monadValue)
|
|
227
|
-
} else if (typeof
|
|
228
|
-
const monadValue =
|
|
227
|
+
} else if (typeof element.flatMap == 'function') {
|
|
228
|
+
const monadValue = element.flatMap(identity)
|
|
229
229
|
isPromise(monadValue)
|
|
230
230
|
? promises.push(monadValue.then(resultAssign))
|
|
231
231
|
: resultAssign(monadValue)
|
|
232
|
-
} else if (typeof
|
|
233
|
-
const folded =
|
|
232
|
+
} else if (typeof element.reduce == 'function') {
|
|
233
|
+
const folded = element.reduce(resultAssignReducer, null)
|
|
234
234
|
isPromise(folded) && promises.push(folded)
|
|
235
235
|
} else {
|
|
236
|
-
objectAssign(result,
|
|
236
|
+
objectAssign(result, element)
|
|
237
237
|
}
|
|
238
238
|
}
|
|
239
239
|
return promises.length == 0
|
|
@@ -526,11 +526,11 @@ const mapReduce = function (map, reducer, result) {
|
|
|
526
526
|
|
|
527
527
|
const reducerConcat = (
|
|
528
528
|
reducerA, reducerB,
|
|
529
|
-
) => function pipedReducer(result,
|
|
530
|
-
const intermediate = reducerA(result,
|
|
529
|
+
) => function pipedReducer(result, element) {
|
|
530
|
+
const intermediate = reducerA(result, element)
|
|
531
531
|
return isPromise(intermediate)
|
|
532
|
-
? intermediate.then(curry2(reducerB, __,
|
|
533
|
-
: reducerB(intermediate,
|
|
532
|
+
? intermediate.then(curry2(reducerB, __, element))
|
|
533
|
+
: reducerB(intermediate, element)
|
|
534
534
|
}
|
|
535
535
|
|
|
536
536
|
const genericReduce = function (collection, reducer, result) {
|
|
@@ -592,7 +592,7 @@ const FlatMappingIterator = function (iterator, flatMapper) {
|
|
|
592
592
|
const monadAsArray = genericReduce(
|
|
593
593
|
flatMapper(iteration.value),
|
|
594
594
|
arrayPush,
|
|
595
|
-
[]) // this will always have at least one
|
|
595
|
+
[]) // this will always have at least one element
|
|
596
596
|
if (monadAsArray.length > 1) {
|
|
597
597
|
buffer = monadAsArray
|
|
598
598
|
bufferIndex = 1
|
|
@@ -668,11 +668,11 @@ const arrayMap = function (array, mapper) {
|
|
|
668
668
|
isAsync = false
|
|
669
669
|
|
|
670
670
|
while (++index < arrayLength) {
|
|
671
|
-
const
|
|
672
|
-
if (isPromise(
|
|
671
|
+
const resultElement = mapper(array[index], index, array)
|
|
672
|
+
if (isPromise(resultElement)) {
|
|
673
673
|
isAsync = true
|
|
674
674
|
}
|
|
675
|
-
result[index] =
|
|
675
|
+
result[index] = resultElement
|
|
676
676
|
}
|
|
677
677
|
return isAsync ? promiseAll(result) : result
|
|
678
678
|
}
|
|
@@ -713,11 +713,11 @@ const objectMap = function (object, mapper) {
|
|
|
713
713
|
const result = {}
|
|
714
714
|
let isAsync = false
|
|
715
715
|
for (const key in object) {
|
|
716
|
-
const
|
|
717
|
-
if (isPromise(
|
|
716
|
+
const resultElement = mapper(object[key], key, object)
|
|
717
|
+
if (isPromise(resultElement)) {
|
|
718
718
|
isAsync = true
|
|
719
719
|
}
|
|
720
|
-
result[key] =
|
|
720
|
+
result[key] = resultElement
|
|
721
721
|
}
|
|
722
722
|
return isAsync ? promiseObjectAll(result) : result
|
|
723
723
|
}
|
|
@@ -732,12 +732,12 @@ const objectFlatMap = function (object, flatMapper) {
|
|
|
732
732
|
const setMap = function (set, mapper) {
|
|
733
733
|
const result = new Set(),
|
|
734
734
|
promises = []
|
|
735
|
-
for (const
|
|
736
|
-
const
|
|
737
|
-
if (isPromise(
|
|
738
|
-
promises.push(
|
|
735
|
+
for (const element of set) {
|
|
736
|
+
const resultElement = mapper(element, element, set)
|
|
737
|
+
if (isPromise(resultElement)) {
|
|
738
|
+
promises.push(resultElement.then(curry3(callPropUnary, result, 'add', __)))
|
|
739
739
|
} else {
|
|
740
|
-
result.add(
|
|
740
|
+
result.add(resultElement)
|
|
741
741
|
}
|
|
742
742
|
}
|
|
743
743
|
return promises.length == 0
|
package/dist/x/flatten.es.min.js
CHANGED
package/dist/x/flatten.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.7.
|
|
2
|
+
* rubico v2.7.5
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2025 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
@@ -58,8 +58,8 @@ const funcConcatSync = (
|
|
|
58
58
|
|
|
59
59
|
const asyncIteratorForEach = async function (asyncIterator, callback) {
|
|
60
60
|
const promises = []
|
|
61
|
-
for await (const
|
|
62
|
-
const operation = callback(
|
|
61
|
+
for await (const element of asyncIterator) {
|
|
62
|
+
const operation = callback(element)
|
|
63
63
|
if (isPromise(operation)) {
|
|
64
64
|
promises.push(operation)
|
|
65
65
|
}
|
|
@@ -79,44 +79,44 @@ const arrayFlatten = function (array) {
|
|
|
79
79
|
let index = -1
|
|
80
80
|
|
|
81
81
|
while (++index < length) {
|
|
82
|
-
const
|
|
83
|
-
if (isArray(
|
|
84
|
-
const
|
|
85
|
-
let
|
|
86
|
-
while (++
|
|
87
|
-
result.push(
|
|
82
|
+
const element = array[index]
|
|
83
|
+
if (isArray(element)) {
|
|
84
|
+
const elementLength = element.length
|
|
85
|
+
let elementIndex = -1
|
|
86
|
+
while (++elementIndex < elementLength) {
|
|
87
|
+
result.push(element[elementIndex])
|
|
88
88
|
}
|
|
89
|
-
} else if (
|
|
90
|
-
result.push(
|
|
91
|
-
} else if (typeof
|
|
92
|
-
promises.push(
|
|
93
|
-
} else if (typeof
|
|
94
|
-
for (const
|
|
95
|
-
result.push(
|
|
89
|
+
} else if (element == null) {
|
|
90
|
+
result.push(element)
|
|
91
|
+
} else if (typeof element.then == 'function') {
|
|
92
|
+
promises.push(element.then(curry2(arrayPush, result, __)))
|
|
93
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
94
|
+
for (const subElement of element) {
|
|
95
|
+
result.push(subElement)
|
|
96
96
|
}
|
|
97
|
-
} else if (typeof
|
|
97
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
98
98
|
promises.push(asyncIteratorForEach(
|
|
99
|
-
|
|
100
|
-
} else if (typeof
|
|
101
|
-
const monadValue =
|
|
99
|
+
element[symbolAsyncIterator](), curry2(arrayPush, result, __)))
|
|
100
|
+
} else if (typeof element.chain == 'function') {
|
|
101
|
+
const monadValue = element.chain(identity)
|
|
102
102
|
isPromise(monadValue)
|
|
103
103
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
104
104
|
: result.push(monadValue)
|
|
105
|
-
} else if (typeof
|
|
106
|
-
const monadValue =
|
|
105
|
+
} else if (typeof element.flatMap == 'function') {
|
|
106
|
+
const monadValue = element.flatMap(identity)
|
|
107
107
|
isPromise(monadValue)
|
|
108
108
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
109
109
|
: result.push(monadValue)
|
|
110
|
-
} else if (typeof
|
|
111
|
-
const folded =
|
|
110
|
+
} else if (typeof element.reduce == 'function') {
|
|
111
|
+
const folded = element.reduce(funcConcatSync(
|
|
112
112
|
getArg1, curry2(arrayPush, result, __)), null)
|
|
113
113
|
isPromise(folded) && promises.push(folded)
|
|
114
|
-
} else if (
|
|
115
|
-
for (const key in
|
|
116
|
-
result.push(
|
|
114
|
+
} else if (element.constructor == Object) {
|
|
115
|
+
for (const key in element) {
|
|
116
|
+
result.push(element[key])
|
|
117
117
|
}
|
|
118
118
|
} else {
|
|
119
|
-
result.push(
|
|
119
|
+
result.push(element)
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
return promises.length == 0
|
|
@@ -161,45 +161,45 @@ const setFlatten = function (set) {
|
|
|
161
161
|
const size = set.size,
|
|
162
162
|
promises = [],
|
|
163
163
|
result = new Set(),
|
|
164
|
-
resultAddReducer = (_,
|
|
164
|
+
resultAddReducer = (_, subElement) => result.add(subElement),
|
|
165
165
|
resultAdd = curry3(callPropUnary, result, 'add', __),
|
|
166
166
|
getResult = () => result
|
|
167
167
|
|
|
168
|
-
for (const
|
|
169
|
-
if (isArray(
|
|
170
|
-
const
|
|
171
|
-
let
|
|
172
|
-
while (++
|
|
173
|
-
result.add(
|
|
168
|
+
for (const element of set) {
|
|
169
|
+
if (isArray(element)) {
|
|
170
|
+
const elementLength = element.length
|
|
171
|
+
let elementIndex = -1
|
|
172
|
+
while (++elementIndex < elementLength) {
|
|
173
|
+
result.add(element[elementIndex])
|
|
174
174
|
}
|
|
175
|
-
} else if (
|
|
176
|
-
result.add(
|
|
177
|
-
} else if (typeof
|
|
178
|
-
for (const
|
|
179
|
-
result.add(
|
|
175
|
+
} else if (element == null) {
|
|
176
|
+
result.add(element)
|
|
177
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
178
|
+
for (const subElement of element) {
|
|
179
|
+
result.add(subElement)
|
|
180
180
|
}
|
|
181
|
-
} else if (typeof
|
|
181
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
182
182
|
promises.push(
|
|
183
|
-
asyncIteratorForEach(
|
|
184
|
-
} else if (typeof
|
|
185
|
-
const monadValue =
|
|
183
|
+
asyncIteratorForEach(element[symbolAsyncIterator](), resultAdd))
|
|
184
|
+
} else if (typeof element.chain == 'function') {
|
|
185
|
+
const monadValue = element.chain(identity)
|
|
186
186
|
isPromise(monadValue)
|
|
187
187
|
? promises.push(monadValue.then(resultAdd))
|
|
188
188
|
: result.add(monadValue)
|
|
189
|
-
} else if (typeof
|
|
190
|
-
const monadValue =
|
|
189
|
+
} else if (typeof element.flatMap == 'function') {
|
|
190
|
+
const monadValue = element.flatMap(identity)
|
|
191
191
|
isPromise(monadValue)
|
|
192
192
|
? promises.push(monadValue.then(resultAdd))
|
|
193
193
|
: result.add(monadValue)
|
|
194
|
-
} else if (typeof
|
|
195
|
-
const folded =
|
|
194
|
+
} else if (typeof element.reduce == 'function') {
|
|
195
|
+
const folded = element.reduce(resultAddReducer, null)
|
|
196
196
|
isPromise(folded) && promises.push(folded)
|
|
197
|
-
} else if (
|
|
198
|
-
for (const key in
|
|
199
|
-
result.add(
|
|
197
|
+
} else if (element.constructor == Object) {
|
|
198
|
+
for (const key in element) {
|
|
199
|
+
result.add(element[key])
|
|
200
200
|
}
|
|
201
201
|
} else {
|
|
202
|
-
result.add(
|
|
202
|
+
result.add(element)
|
|
203
203
|
}
|
|
204
204
|
}
|
|
205
205
|
return promises.length == 0 ? result : promiseAll(promises).then(getResult)
|
|
@@ -215,31 +215,31 @@ const objectFlatten = function (object) {
|
|
|
215
215
|
getResult = () => result
|
|
216
216
|
|
|
217
217
|
for (const key in object) {
|
|
218
|
-
const
|
|
219
|
-
if (
|
|
218
|
+
const element = object[key]
|
|
219
|
+
if (element == null) {
|
|
220
220
|
continue
|
|
221
|
-
} else if (typeof
|
|
222
|
-
for (const
|
|
223
|
-
objectAssign(result,
|
|
221
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
222
|
+
for (const monadElement of element) {
|
|
223
|
+
objectAssign(result, monadElement)
|
|
224
224
|
}
|
|
225
|
-
} else if (typeof
|
|
225
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
226
226
|
promises.push(
|
|
227
|
-
asyncIteratorForEach(
|
|
228
|
-
} else if (typeof
|
|
229
|
-
const monadValue =
|
|
227
|
+
asyncIteratorForEach(element[symbolAsyncIterator](), resultAssign))
|
|
228
|
+
} else if (typeof element.chain == 'function') {
|
|
229
|
+
const monadValue = element.chain(identity)
|
|
230
230
|
isPromise(monadValue)
|
|
231
231
|
? promises.push(monadValue.then(resultAssign))
|
|
232
232
|
: objectAssign(result, monadValue)
|
|
233
|
-
} else if (typeof
|
|
234
|
-
const monadValue =
|
|
233
|
+
} else if (typeof element.flatMap == 'function') {
|
|
234
|
+
const monadValue = element.flatMap(identity)
|
|
235
235
|
isPromise(monadValue)
|
|
236
236
|
? promises.push(monadValue.then(resultAssign))
|
|
237
237
|
: resultAssign(monadValue)
|
|
238
|
-
} else if (typeof
|
|
239
|
-
const folded =
|
|
238
|
+
} else if (typeof element.reduce == 'function') {
|
|
239
|
+
const folded = element.reduce(resultAssignReducer, null)
|
|
240
240
|
isPromise(folded) && promises.push(folded)
|
|
241
241
|
} else {
|
|
242
|
-
objectAssign(result,
|
|
242
|
+
objectAssign(result, element)
|
|
243
243
|
}
|
|
244
244
|
}
|
|
245
245
|
return promises.length == 0
|
|
@@ -532,11 +532,11 @@ const mapReduce = function (map, reducer, result) {
|
|
|
532
532
|
|
|
533
533
|
const reducerConcat = (
|
|
534
534
|
reducerA, reducerB,
|
|
535
|
-
) => function pipedReducer(result,
|
|
536
|
-
const intermediate = reducerA(result,
|
|
535
|
+
) => function pipedReducer(result, element) {
|
|
536
|
+
const intermediate = reducerA(result, element)
|
|
537
537
|
return isPromise(intermediate)
|
|
538
|
-
? intermediate.then(curry2(reducerB, __,
|
|
539
|
-
: reducerB(intermediate,
|
|
538
|
+
? intermediate.then(curry2(reducerB, __, element))
|
|
539
|
+
: reducerB(intermediate, element)
|
|
540
540
|
}
|
|
541
541
|
|
|
542
542
|
const genericReduce = function (collection, reducer, result) {
|
|
@@ -598,7 +598,7 @@ const FlatMappingIterator = function (iterator, flatMapper) {
|
|
|
598
598
|
const monadAsArray = genericReduce(
|
|
599
599
|
flatMapper(iteration.value),
|
|
600
600
|
arrayPush,
|
|
601
|
-
[]) // this will always have at least one
|
|
601
|
+
[]) // this will always have at least one element
|
|
602
602
|
if (monadAsArray.length > 1) {
|
|
603
603
|
buffer = monadAsArray
|
|
604
604
|
bufferIndex = 1
|
|
@@ -674,11 +674,11 @@ const arrayMap = function (array, mapper) {
|
|
|
674
674
|
isAsync = false
|
|
675
675
|
|
|
676
676
|
while (++index < arrayLength) {
|
|
677
|
-
const
|
|
678
|
-
if (isPromise(
|
|
677
|
+
const resultElement = mapper(array[index], index, array)
|
|
678
|
+
if (isPromise(resultElement)) {
|
|
679
679
|
isAsync = true
|
|
680
680
|
}
|
|
681
|
-
result[index] =
|
|
681
|
+
result[index] = resultElement
|
|
682
682
|
}
|
|
683
683
|
return isAsync ? promiseAll(result) : result
|
|
684
684
|
}
|
|
@@ -719,11 +719,11 @@ const objectMap = function (object, mapper) {
|
|
|
719
719
|
const result = {}
|
|
720
720
|
let isAsync = false
|
|
721
721
|
for (const key in object) {
|
|
722
|
-
const
|
|
723
|
-
if (isPromise(
|
|
722
|
+
const resultElement = mapper(object[key], key, object)
|
|
723
|
+
if (isPromise(resultElement)) {
|
|
724
724
|
isAsync = true
|
|
725
725
|
}
|
|
726
|
-
result[key] =
|
|
726
|
+
result[key] = resultElement
|
|
727
727
|
}
|
|
728
728
|
return isAsync ? promiseObjectAll(result) : result
|
|
729
729
|
}
|
|
@@ -738,12 +738,12 @@ const objectFlatMap = function (object, flatMapper) {
|
|
|
738
738
|
const setMap = function (set, mapper) {
|
|
739
739
|
const result = new Set(),
|
|
740
740
|
promises = []
|
|
741
|
-
for (const
|
|
742
|
-
const
|
|
743
|
-
if (isPromise(
|
|
744
|
-
promises.push(
|
|
741
|
+
for (const element of set) {
|
|
742
|
+
const resultElement = mapper(element, element, set)
|
|
743
|
+
if (isPromise(resultElement)) {
|
|
744
|
+
promises.push(resultElement.then(curry3(callPropUnary, result, 'add', __)))
|
|
745
745
|
} else {
|
|
746
|
-
result.add(
|
|
746
|
+
result.add(resultElement)
|
|
747
747
|
}
|
|
748
748
|
}
|
|
749
749
|
return promises.length == 0
|
package/dist/x/flatten.min.js
CHANGED