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/unionWith.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.
|
|
@@ -97,8 +97,8 @@ const identity = value => value
|
|
|
97
97
|
|
|
98
98
|
const asyncIteratorForEach = async function (asyncIterator, callback) {
|
|
99
99
|
const promises = []
|
|
100
|
-
for await (const
|
|
101
|
-
const operation = callback(
|
|
100
|
+
for await (const element of asyncIterator) {
|
|
101
|
+
const operation = callback(element)
|
|
102
102
|
if (isPromise(operation)) {
|
|
103
103
|
promises.push(operation)
|
|
104
104
|
}
|
|
@@ -118,44 +118,44 @@ const arrayFlatten = function (array) {
|
|
|
118
118
|
let index = -1
|
|
119
119
|
|
|
120
120
|
while (++index < length) {
|
|
121
|
-
const
|
|
122
|
-
if (isArray(
|
|
123
|
-
const
|
|
124
|
-
let
|
|
125
|
-
while (++
|
|
126
|
-
result.push(
|
|
121
|
+
const element = array[index]
|
|
122
|
+
if (isArray(element)) {
|
|
123
|
+
const elementLength = element.length
|
|
124
|
+
let elementIndex = -1
|
|
125
|
+
while (++elementIndex < elementLength) {
|
|
126
|
+
result.push(element[elementIndex])
|
|
127
127
|
}
|
|
128
|
-
} else if (
|
|
129
|
-
result.push(
|
|
130
|
-
} else if (typeof
|
|
131
|
-
promises.push(
|
|
132
|
-
} else if (typeof
|
|
133
|
-
for (const
|
|
134
|
-
result.push(
|
|
128
|
+
} else if (element == null) {
|
|
129
|
+
result.push(element)
|
|
130
|
+
} else if (typeof element.then == 'function') {
|
|
131
|
+
promises.push(element.then(curry2(arrayPush, result, __)))
|
|
132
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
133
|
+
for (const subElement of element) {
|
|
134
|
+
result.push(subElement)
|
|
135
135
|
}
|
|
136
|
-
} else if (typeof
|
|
136
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
137
137
|
promises.push(asyncIteratorForEach(
|
|
138
|
-
|
|
139
|
-
} else if (typeof
|
|
140
|
-
const monadValue =
|
|
138
|
+
element[symbolAsyncIterator](), curry2(arrayPush, result, __)))
|
|
139
|
+
} else if (typeof element.chain == 'function') {
|
|
140
|
+
const monadValue = element.chain(identity)
|
|
141
141
|
isPromise(monadValue)
|
|
142
142
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
143
143
|
: result.push(monadValue)
|
|
144
|
-
} else if (typeof
|
|
145
|
-
const monadValue =
|
|
144
|
+
} else if (typeof element.flatMap == 'function') {
|
|
145
|
+
const monadValue = element.flatMap(identity)
|
|
146
146
|
isPromise(monadValue)
|
|
147
147
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
148
148
|
: result.push(monadValue)
|
|
149
|
-
} else if (typeof
|
|
150
|
-
const folded =
|
|
149
|
+
} else if (typeof element.reduce == 'function') {
|
|
150
|
+
const folded = element.reduce(funcConcatSync(
|
|
151
151
|
getArg1, curry2(arrayPush, result, __)), null)
|
|
152
152
|
isPromise(folded) && promises.push(folded)
|
|
153
|
-
} else if (
|
|
154
|
-
for (const key in
|
|
155
|
-
result.push(
|
|
153
|
+
} else if (element.constructor == Object) {
|
|
154
|
+
for (const key in element) {
|
|
155
|
+
result.push(element[key])
|
|
156
156
|
}
|
|
157
157
|
} else {
|
|
158
|
-
result.push(
|
|
158
|
+
result.push(element)
|
|
159
159
|
}
|
|
160
160
|
}
|
|
161
161
|
return promises.length == 0
|
|
@@ -184,12 +184,12 @@ const arrayIncludesWith = function (array, value, comparator) {
|
|
|
184
184
|
const arrayUniqWithAsync = async function (array, comparator, result, index) {
|
|
185
185
|
const length = array.length
|
|
186
186
|
while (++index < length) {
|
|
187
|
-
const
|
|
188
|
-
|
|
187
|
+
const element = array[index],
|
|
188
|
+
elementAlreadyExists = arrayIncludesWith(result, element, comparator)
|
|
189
189
|
if (!(
|
|
190
|
-
isPromise(
|
|
190
|
+
isPromise(elementAlreadyExists) ? await elementAlreadyExists : elementAlreadyExists
|
|
191
191
|
)) {
|
|
192
|
-
result.push(
|
|
192
|
+
result.push(element)
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
195
|
return result
|
|
@@ -200,14 +200,14 @@ const arrayUniqWith = function (array, comparator) {
|
|
|
200
200
|
result = []
|
|
201
201
|
let index = -1
|
|
202
202
|
while (++index < length) {
|
|
203
|
-
const
|
|
204
|
-
|
|
205
|
-
if (isPromise(
|
|
206
|
-
return
|
|
207
|
-
curry3(thunkConditional, __, noop, thunkify2(arrayPush, result,
|
|
203
|
+
const element = array[index],
|
|
204
|
+
elementAlreadyExists = arrayIncludesWith(result, element, comparator)
|
|
205
|
+
if (isPromise(elementAlreadyExists)) {
|
|
206
|
+
return elementAlreadyExists.then(funcConcatSync(
|
|
207
|
+
curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, element)),
|
|
208
208
|
thunkify4(arrayUniqWithAsync, array, comparator, result, index)))
|
|
209
|
-
} else if (!
|
|
210
|
-
result.push(
|
|
209
|
+
} else if (!elementAlreadyExists) {
|
|
210
|
+
result.push(element)
|
|
211
211
|
}
|
|
212
212
|
}
|
|
213
213
|
return result
|
package/dist/x/unionWith.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.
|
|
@@ -103,8 +103,8 @@ const identity = value => value
|
|
|
103
103
|
|
|
104
104
|
const asyncIteratorForEach = async function (asyncIterator, callback) {
|
|
105
105
|
const promises = []
|
|
106
|
-
for await (const
|
|
107
|
-
const operation = callback(
|
|
106
|
+
for await (const element of asyncIterator) {
|
|
107
|
+
const operation = callback(element)
|
|
108
108
|
if (isPromise(operation)) {
|
|
109
109
|
promises.push(operation)
|
|
110
110
|
}
|
|
@@ -124,44 +124,44 @@ const arrayFlatten = function (array) {
|
|
|
124
124
|
let index = -1
|
|
125
125
|
|
|
126
126
|
while (++index < length) {
|
|
127
|
-
const
|
|
128
|
-
if (isArray(
|
|
129
|
-
const
|
|
130
|
-
let
|
|
131
|
-
while (++
|
|
132
|
-
result.push(
|
|
127
|
+
const element = array[index]
|
|
128
|
+
if (isArray(element)) {
|
|
129
|
+
const elementLength = element.length
|
|
130
|
+
let elementIndex = -1
|
|
131
|
+
while (++elementIndex < elementLength) {
|
|
132
|
+
result.push(element[elementIndex])
|
|
133
133
|
}
|
|
134
|
-
} else if (
|
|
135
|
-
result.push(
|
|
136
|
-
} else if (typeof
|
|
137
|
-
promises.push(
|
|
138
|
-
} else if (typeof
|
|
139
|
-
for (const
|
|
140
|
-
result.push(
|
|
134
|
+
} else if (element == null) {
|
|
135
|
+
result.push(element)
|
|
136
|
+
} else if (typeof element.then == 'function') {
|
|
137
|
+
promises.push(element.then(curry2(arrayPush, result, __)))
|
|
138
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
139
|
+
for (const subElement of element) {
|
|
140
|
+
result.push(subElement)
|
|
141
141
|
}
|
|
142
|
-
} else if (typeof
|
|
142
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
143
143
|
promises.push(asyncIteratorForEach(
|
|
144
|
-
|
|
145
|
-
} else if (typeof
|
|
146
|
-
const monadValue =
|
|
144
|
+
element[symbolAsyncIterator](), curry2(arrayPush, result, __)))
|
|
145
|
+
} else if (typeof element.chain == 'function') {
|
|
146
|
+
const monadValue = element.chain(identity)
|
|
147
147
|
isPromise(monadValue)
|
|
148
148
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
149
149
|
: result.push(monadValue)
|
|
150
|
-
} else if (typeof
|
|
151
|
-
const monadValue =
|
|
150
|
+
} else if (typeof element.flatMap == 'function') {
|
|
151
|
+
const monadValue = element.flatMap(identity)
|
|
152
152
|
isPromise(monadValue)
|
|
153
153
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
154
154
|
: result.push(monadValue)
|
|
155
|
-
} else if (typeof
|
|
156
|
-
const folded =
|
|
155
|
+
} else if (typeof element.reduce == 'function') {
|
|
156
|
+
const folded = element.reduce(funcConcatSync(
|
|
157
157
|
getArg1, curry2(arrayPush, result, __)), null)
|
|
158
158
|
isPromise(folded) && promises.push(folded)
|
|
159
|
-
} else if (
|
|
160
|
-
for (const key in
|
|
161
|
-
result.push(
|
|
159
|
+
} else if (element.constructor == Object) {
|
|
160
|
+
for (const key in element) {
|
|
161
|
+
result.push(element[key])
|
|
162
162
|
}
|
|
163
163
|
} else {
|
|
164
|
-
result.push(
|
|
164
|
+
result.push(element)
|
|
165
165
|
}
|
|
166
166
|
}
|
|
167
167
|
return promises.length == 0
|
|
@@ -190,12 +190,12 @@ const arrayIncludesWith = function (array, value, comparator) {
|
|
|
190
190
|
const arrayUniqWithAsync = async function (array, comparator, result, index) {
|
|
191
191
|
const length = array.length
|
|
192
192
|
while (++index < length) {
|
|
193
|
-
const
|
|
194
|
-
|
|
193
|
+
const element = array[index],
|
|
194
|
+
elementAlreadyExists = arrayIncludesWith(result, element, comparator)
|
|
195
195
|
if (!(
|
|
196
|
-
isPromise(
|
|
196
|
+
isPromise(elementAlreadyExists) ? await elementAlreadyExists : elementAlreadyExists
|
|
197
197
|
)) {
|
|
198
|
-
result.push(
|
|
198
|
+
result.push(element)
|
|
199
199
|
}
|
|
200
200
|
}
|
|
201
201
|
return result
|
|
@@ -206,14 +206,14 @@ const arrayUniqWith = function (array, comparator) {
|
|
|
206
206
|
result = []
|
|
207
207
|
let index = -1
|
|
208
208
|
while (++index < length) {
|
|
209
|
-
const
|
|
210
|
-
|
|
211
|
-
if (isPromise(
|
|
212
|
-
return
|
|
213
|
-
curry3(thunkConditional, __, noop, thunkify2(arrayPush, result,
|
|
209
|
+
const element = array[index],
|
|
210
|
+
elementAlreadyExists = arrayIncludesWith(result, element, comparator)
|
|
211
|
+
if (isPromise(elementAlreadyExists)) {
|
|
212
|
+
return elementAlreadyExists.then(funcConcatSync(
|
|
213
|
+
curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, element)),
|
|
214
214
|
thunkify4(arrayUniqWithAsync, array, comparator, result, index)))
|
|
215
|
-
} else if (!
|
|
216
|
-
result.push(
|
|
215
|
+
} else if (!elementAlreadyExists) {
|
|
216
|
+
result.push(element)
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
219
|
return result
|
package/dist/x/unionWith.min.js
CHANGED
package/dist/x/unionWith.mjs
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.
|
|
@@ -97,8 +97,8 @@ const identity = value => value
|
|
|
97
97
|
|
|
98
98
|
const asyncIteratorForEach = async function (asyncIterator, callback) {
|
|
99
99
|
const promises = []
|
|
100
|
-
for await (const
|
|
101
|
-
const operation = callback(
|
|
100
|
+
for await (const element of asyncIterator) {
|
|
101
|
+
const operation = callback(element)
|
|
102
102
|
if (isPromise(operation)) {
|
|
103
103
|
promises.push(operation)
|
|
104
104
|
}
|
|
@@ -118,44 +118,44 @@ const arrayFlatten = function (array) {
|
|
|
118
118
|
let index = -1
|
|
119
119
|
|
|
120
120
|
while (++index < length) {
|
|
121
|
-
const
|
|
122
|
-
if (isArray(
|
|
123
|
-
const
|
|
124
|
-
let
|
|
125
|
-
while (++
|
|
126
|
-
result.push(
|
|
121
|
+
const element = array[index]
|
|
122
|
+
if (isArray(element)) {
|
|
123
|
+
const elementLength = element.length
|
|
124
|
+
let elementIndex = -1
|
|
125
|
+
while (++elementIndex < elementLength) {
|
|
126
|
+
result.push(element[elementIndex])
|
|
127
127
|
}
|
|
128
|
-
} else if (
|
|
129
|
-
result.push(
|
|
130
|
-
} else if (typeof
|
|
131
|
-
promises.push(
|
|
132
|
-
} else if (typeof
|
|
133
|
-
for (const
|
|
134
|
-
result.push(
|
|
128
|
+
} else if (element == null) {
|
|
129
|
+
result.push(element)
|
|
130
|
+
} else if (typeof element.then == 'function') {
|
|
131
|
+
promises.push(element.then(curry2(arrayPush, result, __)))
|
|
132
|
+
} else if (typeof element[symbolIterator] == 'function') {
|
|
133
|
+
for (const subElement of element) {
|
|
134
|
+
result.push(subElement)
|
|
135
135
|
}
|
|
136
|
-
} else if (typeof
|
|
136
|
+
} else if (typeof element[symbolAsyncIterator] == 'function') {
|
|
137
137
|
promises.push(asyncIteratorForEach(
|
|
138
|
-
|
|
139
|
-
} else if (typeof
|
|
140
|
-
const monadValue =
|
|
138
|
+
element[symbolAsyncIterator](), curry2(arrayPush, result, __)))
|
|
139
|
+
} else if (typeof element.chain == 'function') {
|
|
140
|
+
const monadValue = element.chain(identity)
|
|
141
141
|
isPromise(monadValue)
|
|
142
142
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
143
143
|
: result.push(monadValue)
|
|
144
|
-
} else if (typeof
|
|
145
|
-
const monadValue =
|
|
144
|
+
} else if (typeof element.flatMap == 'function') {
|
|
145
|
+
const monadValue = element.flatMap(identity)
|
|
146
146
|
isPromise(monadValue)
|
|
147
147
|
? promises.push(monadValue.then(curry2(arrayPush, result, __)))
|
|
148
148
|
: result.push(monadValue)
|
|
149
|
-
} else if (typeof
|
|
150
|
-
const folded =
|
|
149
|
+
} else if (typeof element.reduce == 'function') {
|
|
150
|
+
const folded = element.reduce(funcConcatSync(
|
|
151
151
|
getArg1, curry2(arrayPush, result, __)), null)
|
|
152
152
|
isPromise(folded) && promises.push(folded)
|
|
153
|
-
} else if (
|
|
154
|
-
for (const key in
|
|
155
|
-
result.push(
|
|
153
|
+
} else if (element.constructor == Object) {
|
|
154
|
+
for (const key in element) {
|
|
155
|
+
result.push(element[key])
|
|
156
156
|
}
|
|
157
157
|
} else {
|
|
158
|
-
result.push(
|
|
158
|
+
result.push(element)
|
|
159
159
|
}
|
|
160
160
|
}
|
|
161
161
|
return promises.length == 0
|
|
@@ -184,12 +184,12 @@ const arrayIncludesWith = function (array, value, comparator) {
|
|
|
184
184
|
const arrayUniqWithAsync = async function (array, comparator, result, index) {
|
|
185
185
|
const length = array.length
|
|
186
186
|
while (++index < length) {
|
|
187
|
-
const
|
|
188
|
-
|
|
187
|
+
const element = array[index],
|
|
188
|
+
elementAlreadyExists = arrayIncludesWith(result, element, comparator)
|
|
189
189
|
if (!(
|
|
190
|
-
isPromise(
|
|
190
|
+
isPromise(elementAlreadyExists) ? await elementAlreadyExists : elementAlreadyExists
|
|
191
191
|
)) {
|
|
192
|
-
result.push(
|
|
192
|
+
result.push(element)
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
195
|
return result
|
|
@@ -200,14 +200,14 @@ const arrayUniqWith = function (array, comparator) {
|
|
|
200
200
|
result = []
|
|
201
201
|
let index = -1
|
|
202
202
|
while (++index < length) {
|
|
203
|
-
const
|
|
204
|
-
|
|
205
|
-
if (isPromise(
|
|
206
|
-
return
|
|
207
|
-
curry3(thunkConditional, __, noop, thunkify2(arrayPush, result,
|
|
203
|
+
const element = array[index],
|
|
204
|
+
elementAlreadyExists = arrayIncludesWith(result, element, comparator)
|
|
205
|
+
if (isPromise(elementAlreadyExists)) {
|
|
206
|
+
return elementAlreadyExists.then(funcConcatSync(
|
|
207
|
+
curry3(thunkConditional, __, noop, thunkify2(arrayPush, result, element)),
|
|
208
208
|
thunkify4(arrayUniqWithAsync, array, comparator, result, index)))
|
|
209
|
-
} else if (!
|
|
210
|
-
result.push(
|
|
209
|
+
} else if (!elementAlreadyExists) {
|
|
210
|
+
result.push(element)
|
|
211
211
|
}
|
|
212
212
|
}
|
|
213
213
|
return result
|
package/dist/x/uniq.es.js
CHANGED
package/dist/x/uniq.es.min.js
CHANGED
package/dist/x/uniq.js
CHANGED
package/dist/x/uniq.min.js
CHANGED
package/dist/x/uniq.mjs
CHANGED
package/dist/x/unless.es.js
CHANGED
package/dist/x/unless.es.min.js
CHANGED
package/dist/x/unless.js
CHANGED
package/dist/x/unless.min.js
CHANGED
package/dist/x/unless.mjs
CHANGED
package/dist/x/values.es.js
CHANGED
package/dist/x/values.es.min.js
CHANGED
package/dist/x/values.js
CHANGED
package/dist/x/values.min.js
CHANGED
package/dist/x/values.mjs
CHANGED
package/dist/x/when.es.js
CHANGED
package/dist/x/when.es.min.js
CHANGED
package/dist/x/when.js
CHANGED
package/dist/x/when.min.js
CHANGED
package/dist/x/when.mjs
CHANGED
package/eq.js
CHANGED
|
@@ -6,20 +6,28 @@ const equals = require('./_internal/equals')
|
|
|
6
6
|
*
|
|
7
7
|
* @synopsis
|
|
8
8
|
* ```coffeescript [specscript]
|
|
9
|
-
*
|
|
9
|
+
* args Array<any>
|
|
10
|
+
* argsOrPromises Array<Promise|any>
|
|
10
11
|
*
|
|
11
|
-
*
|
|
12
|
-
* eq(...args, leftValue Promise|any, right function) -> Promise|boolean
|
|
12
|
+
* type SyncOrAsyncResolver = (...args)=>Promise|any
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* leftValue Promise|any
|
|
15
|
+
* rightValue Promise|any
|
|
16
|
+
* leftResolver SyncOrAsyncResolver
|
|
17
|
+
* rightResolver SyncOrAsyncResolver
|
|
18
|
+
*
|
|
19
|
+
* eq(leftValue, rightValue) -> Promise|boolean
|
|
20
|
+
* eq(...argsOrPromises, leftResolver, rightValue) -> Promise|boolean
|
|
21
|
+
* eq(...argsOrPromises, leftValue, rightResolver) -> Promise|boolean
|
|
22
|
+
* eq(...argsOrPromises, leftResolver, rightResolver) -> Promise|boolean
|
|
23
|
+
* eq(leftResolver, rightValue)(...args) -> Promise|boolean
|
|
24
|
+
* eq(leftValue, rightResolver)(...args) -> Promise|boolean
|
|
25
|
+
* eq(leftResolver, rightResolver)(...args) -> Promise|boolean
|
|
16
26
|
*
|
|
17
|
-
* eq(left function, right function)(...args) -> Promise|boolean
|
|
18
|
-
* eq(...args, left function, right function) -> Promise|boolean
|
|
19
27
|
* ```
|
|
20
28
|
*
|
|
21
29
|
* @description
|
|
22
|
-
*
|
|
30
|
+
* Function equivalent to the [Equality (==)](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Equality) operator. Tests for equality (`==`) between two values.
|
|
23
31
|
*
|
|
24
32
|
* ```javascript [playground]
|
|
25
33
|
* const areNamesEqual = eq('Ted', 'John')
|
|
@@ -27,7 +35,7 @@ const equals = require('./_internal/equals')
|
|
|
27
35
|
* console.log(areNamesEqual) // false
|
|
28
36
|
* ```
|
|
29
37
|
*
|
|
30
|
-
* If either of the two values are resolver functions, `eq` returns a function that resolves the
|
|
38
|
+
* If either of the two values are resolver functions, `eq` returns a function that resolves the value(s) to compare.
|
|
31
39
|
*
|
|
32
40
|
* ```javascript [playground]
|
|
33
41
|
* const personIsJohn = eq(get('name'), 'John')
|
|
@@ -35,10 +43,24 @@ const equals = require('./_internal/equals')
|
|
|
35
43
|
* const person = { name: 'John', likes: 'bananas' }
|
|
36
44
|
*
|
|
37
45
|
* if (personIsJohn(person)) {
|
|
38
|
-
* console.log('The person is
|
|
46
|
+
* console.log('The person is John')
|
|
39
47
|
* }
|
|
40
48
|
* ```
|
|
41
49
|
*
|
|
50
|
+
* If either of the two resolver functions is asynchronous, `eq` returns an asynchronous function.
|
|
51
|
+
*
|
|
52
|
+
* ```javascript [playground]
|
|
53
|
+
* const asyncPersonIsJohn = eq(async person => person.name, 'John')
|
|
54
|
+
*
|
|
55
|
+
* const person = { name: 'John', likes: 'bananas' }
|
|
56
|
+
*
|
|
57
|
+
* asyncPersonIsJohn(person).then(condition => {
|
|
58
|
+
* if (condition) {
|
|
59
|
+
* console.log('The person is John')
|
|
60
|
+
* }
|
|
61
|
+
* })
|
|
62
|
+
* ```
|
|
63
|
+
*
|
|
42
64
|
* `eq` supports a lazy API for composability.
|
|
43
65
|
*
|
|
44
66
|
* ```javascript [playground]
|