rubico 2.6.0 → 2.6.2
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/_internal/areAllValuesNonfunctions.js +16 -4
- package/_internal/areAnyValuesPromises.js +16 -4
- package/_internal/functionArrayAll.js +2 -1
- package/_internal/functionObjectAll.js +2 -1
- package/all.js +101 -22
- package/assign.js +19 -3
- 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 +107 -8
- package/dist/all.es.min.js +2 -2
- package/dist/all.js +107 -8
- package/dist/all.min.js +2 -2
- package/dist/all.mjs +107 -8
- 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 +30 -9
- package/dist/and.es.min.js +2 -2
- package/dist/and.js +30 -9
- package/dist/and.min.js +2 -2
- package/dist/and.mjs +30 -9
- package/dist/assign.es.js +3 -2
- package/dist/assign.es.min.js +2 -2
- package/dist/assign.js +3 -2
- package/dist/assign.min.js +2 -2
- package/dist/assign.mjs +3 -2
- package/dist/compose.es.js +17 -5
- package/dist/compose.es.min.js +2 -2
- package/dist/compose.js +17 -5
- package/dist/compose.min.js +2 -2
- package/dist/compose.mjs +17 -5
- 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 +17 -5
- package/dist/eq.es.min.js +2 -2
- package/dist/eq.js +17 -5
- package/dist/eq.min.js +2 -2
- package/dist/eq.mjs +17 -5
- 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 +1 -1
- package/dist/forEach.es.min.js +1 -1
- package/dist/forEach.js +1 -1
- package/dist/forEach.min.js +1 -1
- package/dist/forEach.mjs +1 -1
- 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 +17 -5
- package/dist/gt.es.min.js +2 -2
- package/dist/gt.js +17 -5
- package/dist/gt.min.js +2 -2
- package/dist/gt.mjs +17 -5
- package/dist/gte.es.js +17 -5
- package/dist/gte.es.min.js +2 -2
- package/dist/gte.js +17 -5
- package/dist/gte.min.js +2 -2
- package/dist/gte.mjs +17 -5
- package/dist/lt.es.js +17 -5
- package/dist/lt.es.min.js +2 -2
- package/dist/lt.js +17 -5
- package/dist/lt.min.js +2 -2
- package/dist/lt.mjs +17 -5
- package/dist/lte.es.js +17 -5
- package/dist/lte.es.min.js +2 -2
- package/dist/lte.js +17 -5
- package/dist/lte.min.js +2 -2
- package/dist/lte.mjs +17 -5
- package/dist/map.es.js +1 -1
- package/dist/map.es.min.js +1 -1
- package/dist/map.js +1 -1
- package/dist/map.min.js +1 -1
- package/dist/map.mjs +1 -1
- package/dist/not.es.js +17 -5
- package/dist/not.es.min.js +2 -2
- package/dist/not.js +17 -5
- package/dist/not.min.js +2 -2
- package/dist/not.mjs +17 -5
- 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 +30 -9
- package/dist/or.es.min.js +2 -2
- package/dist/or.js +30 -9
- package/dist/or.min.js +2 -2
- package/dist/or.mjs +30 -9
- 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 +17 -5
- package/dist/pipe.es.min.js +2 -2
- package/dist/pipe.js +17 -5
- package/dist/pipe.min.js +2 -2
- package/dist/pipe.mjs +17 -5
- 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 +170 -89
- package/dist/rubico.es.min.js +2 -2
- package/dist/rubico.global.js +170 -89
- package/dist/rubico.global.min.js +2 -2
- package/dist/rubico.js +170 -89
- package/dist/rubico.min.js +2 -2
- package/dist/rubico.mjs +170 -89
- 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 +30 -9
- package/dist/switchCase.es.min.js +2 -2
- package/dist/switchCase.js +30 -9
- package/dist/switchCase.min.js +2 -2
- package/dist/switchCase.mjs +30 -9
- package/dist/tap.es.js +80 -19
- package/dist/tap.es.min.js +2 -2
- package/dist/tap.js +80 -19
- package/dist/tap.min.js +2 -2
- package/dist/tap.mjs +80 -19
- package/dist/thunkify.es.js +17 -5
- package/dist/thunkify.es.min.js +2 -2
- package/dist/thunkify.js +17 -5
- package/dist/thunkify.min.js +2 -2
- package/dist/thunkify.mjs +17 -5
- 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 +17 -5
- package/dist/tryCatch.es.min.js +2 -2
- package/dist/tryCatch.js +17 -5
- package/dist/tryCatch.min.js +2 -2
- package/dist/tryCatch.mjs +17 -5
- 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 +15 -5
- package/dist/x/filterOut.es.min.js +2 -2
- package/dist/x/filterOut.js +15 -5
- package/dist/x/filterOut.min.js +2 -2
- package/dist/x/filterOut.mjs +15 -5
- 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 +1 -1
- package/dist/x/pluck.es.min.js +1 -1
- package/dist/x/pluck.js +1 -1
- package/dist/x/pluck.min.js +1 -1
- package/dist/x/pluck.mjs +1 -1
- 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 +82 -21
- package/dist/x/trace.es.min.js +2 -2
- package/dist/x/trace.js +82 -21
- package/dist/x/trace.min.js +2 -2
- package/dist/x/trace.mjs +82 -21
- 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/es.js +170 -89
- package/index.js +170 -89
- package/package.json +1 -1
- package/tap.js +66 -28
package/dist/tap.es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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.
|
|
@@ -91,11 +91,54 @@ const curryArgs2 = function (baseFunc, arg0, arg1) {
|
|
|
91
91
|
return curryArgs2ResolveArgs1(baseFunc, arg0)
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
+
// argument resolver for curryArgs3
|
|
95
|
+
const curryArgs3ResolveArgs0 = (
|
|
96
|
+
baseFunc, arg1, arg2,
|
|
97
|
+
) => function args0Resolver(...args) {
|
|
98
|
+
return baseFunc(args, arg1, arg2)
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// argument resolver for curryArgs3
|
|
102
|
+
const curryArgs3ResolveArgs1 = (
|
|
103
|
+
baseFunc, arg0, arg2,
|
|
104
|
+
) => function arg1Resolver(...args) {
|
|
105
|
+
return baseFunc(arg0, args, arg2)
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// argument resolver for curryArgs3
|
|
109
|
+
const curryArgs3ResolveArgs2 = (
|
|
110
|
+
baseFunc, arg0, arg1,
|
|
111
|
+
) => function arg2Resolver(...args) {
|
|
112
|
+
return baseFunc(arg0, arg1, args)
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
const curryArgs3 = function (baseFunc, arg0, arg1, arg2) {
|
|
116
|
+
if (arg0 == __) {
|
|
117
|
+
return curryArgs3ResolveArgs0(baseFunc, arg1, arg2)
|
|
118
|
+
}
|
|
119
|
+
if (arg1 == __) {
|
|
120
|
+
return curryArgs3ResolveArgs1(baseFunc, arg0, arg2)
|
|
121
|
+
}
|
|
122
|
+
return curryArgs3ResolveArgs2(baseFunc, arg0, arg1)
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
const isArray = Array.isArray
|
|
126
|
+
|
|
94
127
|
const areAnyValuesPromises = function (values) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
128
|
+
if (isArray(values)) {
|
|
129
|
+
const length = values.length
|
|
130
|
+
let index = -1
|
|
131
|
+
while (++index < length) {
|
|
132
|
+
const value = values[index]
|
|
133
|
+
if (isPromise(value)) {
|
|
134
|
+
return true
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return false
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
for (const key in values) {
|
|
141
|
+
const value = values[key]
|
|
99
142
|
if (isPromise(value)) {
|
|
100
143
|
return true
|
|
101
144
|
}
|
|
@@ -105,32 +148,36 @@ const areAnyValuesPromises = function (values) {
|
|
|
105
148
|
|
|
106
149
|
const promiseAll = Promise.all.bind(Promise)
|
|
107
150
|
|
|
108
|
-
// _tap(args Array,
|
|
109
|
-
const _tap = function (args,
|
|
151
|
+
// _tap(args Array, f function) -> Promise|any
|
|
152
|
+
const _tap = function (args, f) {
|
|
110
153
|
const result = args[0],
|
|
111
|
-
call =
|
|
154
|
+
call = f(...args)
|
|
112
155
|
return isPromise(call) ? call.then(always(result)) : result
|
|
113
156
|
}
|
|
114
157
|
|
|
115
158
|
const tap = function (...args) {
|
|
116
|
-
const
|
|
159
|
+
const f = args.pop()
|
|
117
160
|
if (args.length == 0) {
|
|
118
|
-
return curryArgs2(_tap, __,
|
|
161
|
+
return curryArgs2(_tap, __, f)
|
|
119
162
|
}
|
|
120
163
|
if (areAnyValuesPromises(args)) {
|
|
121
|
-
return promiseAll(args).then(curry2(_tap, __,
|
|
164
|
+
return promiseAll(args).then(curry2(_tap, __, f))
|
|
122
165
|
}
|
|
123
|
-
return _tap(args,
|
|
166
|
+
return _tap(args, f)
|
|
124
167
|
}
|
|
125
168
|
|
|
126
|
-
|
|
127
|
-
const
|
|
128
|
-
if (isPromise(
|
|
129
|
-
return
|
|
130
|
-
thunkConditional,
|
|
169
|
+
const _tapIf = function (predicate, f, args) {
|
|
170
|
+
const b = predicate(...args)
|
|
171
|
+
if (isPromise(b)) {
|
|
172
|
+
return b.then(curry3(
|
|
173
|
+
thunkConditional,
|
|
174
|
+
__,
|
|
175
|
+
thunkifyArgs(tap(f), args),
|
|
176
|
+
always(args[0]),
|
|
177
|
+
))
|
|
131
178
|
}
|
|
132
|
-
if (
|
|
133
|
-
const execution =
|
|
179
|
+
if (b) {
|
|
180
|
+
const execution = f(...args)
|
|
134
181
|
if (isPromise(execution)) {
|
|
135
182
|
return execution.then(always(args[0]))
|
|
136
183
|
}
|
|
@@ -138,4 +185,18 @@ tap.if = (predicate, func) => function tappingIf(...args) {
|
|
|
138
185
|
return args[0]
|
|
139
186
|
}
|
|
140
187
|
|
|
188
|
+
tap.if = function (...args) {
|
|
189
|
+
if (args.length == 2) {
|
|
190
|
+
return curryArgs3(_tapIf, args[0], args[1], __)
|
|
191
|
+
}
|
|
192
|
+
const argsLength = args.length
|
|
193
|
+
const f = args[argsLength - 1]
|
|
194
|
+
const predicate = args[argsLength - 2]
|
|
195
|
+
const argValues = args.slice(0, -2)
|
|
196
|
+
if (areAnyValuesPromises(argValues)) {
|
|
197
|
+
return promiseAll(argValues).then(curry3(_tapIf, predicate, f, __))
|
|
198
|
+
}
|
|
199
|
+
return _tapIf(predicate, f, args)
|
|
200
|
+
}
|
|
201
|
+
|
|
141
202
|
export default tap
|
package/dist/tap.es.min.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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
|
-
const isPromise=r=>null!=r&&"function"==typeof r.then,always=r=>function(){return r},thunkifyArgs=(r,n)=>function(){return r(...n)},thunkConditional=(r,n,e)=>r?n():e(),__=Symbol.for("placeholder"),curry2ResolveArg0=(r,n)=>function(e){return r(e,n)},curry2ResolveArg1=(r,n)=>function(e){return r(n,e)},curry2=function(r,n,e){return n==__?curry2ResolveArg0(r,e):curry2ResolveArg1(r,n)},curry3ResolveArg0=(r,n,e)=>function(t){return r(t,n,e)},curry3ResolveArg1=(r,n,e)=>function(t){return r(n,t,e)},curry3ResolveArg2=(r,n,e)=>function(t){return r(n,e,t)},curry3=function(r,n,e,t){return n==__?curry3ResolveArg0(r,e,t):e==__?curry3ResolveArg1(r,n,t):curry3ResolveArg2(r,n,e)},curryArgs2ResolveArgs0=(r,n,e)=>function(...e){return r(e,n)},curryArgs2ResolveArgs1=(r,n,e)=>function(...e){return r(n,e)},curryArgs2=function(r,n,e){return n==__?curryArgs2ResolveArgs0(r,e):curryArgs2ResolveArgs1(r,n)},areAnyValuesPromises=function(r){const n=r.length;let e=-1;for(;++e<n;){const n=r[e];if(isPromise(n))return!0}return!1},promiseAll=Promise.all.bind(Promise),_tap=function(r,n){const e=r[0],t=n(...r);return isPromise(t)?t.then(always(e)):e},tap=function(...r){const n=r.pop();return 0==r.length?curryArgs2(_tap,__,n):areAnyValuesPromises(r)?promiseAll(r).then(curry2(_tap,__,n)):_tap(r,n)}
|
|
7
|
+
const isPromise=r=>null!=r&&"function"==typeof r.then,always=r=>function(){return r},thunkifyArgs=(r,n)=>function(){return r(...n)},thunkConditional=(r,n,e)=>r?n():e(),__=Symbol.for("placeholder"),curry2ResolveArg0=(r,n)=>function(e){return r(e,n)},curry2ResolveArg1=(r,n)=>function(e){return r(n,e)},curry2=function(r,n,e){return n==__?curry2ResolveArg0(r,e):curry2ResolveArg1(r,n)},curry3ResolveArg0=(r,n,e)=>function(t){return r(t,n,e)},curry3ResolveArg1=(r,n,e)=>function(t){return r(n,t,e)},curry3ResolveArg2=(r,n,e)=>function(t){return r(n,e,t)},curry3=function(r,n,e,t){return n==__?curry3ResolveArg0(r,e,t):e==__?curry3ResolveArg1(r,n,t):curry3ResolveArg2(r,n,e)},curryArgs2ResolveArgs0=(r,n,e)=>function(...e){return r(e,n)},curryArgs2ResolveArgs1=(r,n,e)=>function(...e){return r(n,e)},curryArgs2=function(r,n,e){return n==__?curryArgs2ResolveArgs0(r,e):curryArgs2ResolveArgs1(r,n)},curryArgs3ResolveArgs0=(r,n,e)=>function(...t){return r(t,n,e)},curryArgs3ResolveArgs1=(r,n,e)=>function(...t){return r(n,t,e)},curryArgs3ResolveArgs2=(r,n,e)=>function(...t){return r(n,e,t)},curryArgs3=function(r,n,e,t){return n==__?curryArgs3ResolveArgs0(r,e,t):e==__?curryArgs3ResolveArgs1(r,n,t):curryArgs3ResolveArgs2(r,n,e)},isArray=Array.isArray,areAnyValuesPromises=function(r){if(isArray(r)){const n=r.length;let e=-1;for(;++e<n;){const n=r[e];if(isPromise(n))return!0}return!1}for(const n in r){const e=r[n];if(isPromise(e))return!0}return!1},promiseAll=Promise.all.bind(Promise),_tap=function(r,n){const e=r[0],t=n(...r);return isPromise(t)?t.then(always(e)):e},tap=function(...r){const n=r.pop();return 0==r.length?curryArgs2(_tap,__,n):areAnyValuesPromises(r)?promiseAll(r).then(curry2(_tap,__,n)):_tap(r,n)},_tapIf=function(r,n,e){const t=r(...e);if(isPromise(t))return t.then(curry3(thunkConditional,__,thunkifyArgs(tap(n),e),always(e[0])));if(t){const r=n(...e);if(isPromise(r))return r.then(always(e[0]))}return e[0]};tap.if=function(...r){if(2==r.length)return curryArgs3(_tapIf,r[0],r[1],__);const n=r.length,e=r[n-1],t=r[n-2],s=r.slice(0,-2);return areAnyValuesPromises(s)?promiseAll(s).then(curry3(_tapIf,t,e,__)):_tapIf(t,e,r)};export default tap;
|
package/dist/tap.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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.
|
|
@@ -97,11 +97,54 @@ const curryArgs2 = function (baseFunc, arg0, arg1) {
|
|
|
97
97
|
return curryArgs2ResolveArgs1(baseFunc, arg0)
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
+
// argument resolver for curryArgs3
|
|
101
|
+
const curryArgs3ResolveArgs0 = (
|
|
102
|
+
baseFunc, arg1, arg2,
|
|
103
|
+
) => function args0Resolver(...args) {
|
|
104
|
+
return baseFunc(args, arg1, arg2)
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// argument resolver for curryArgs3
|
|
108
|
+
const curryArgs3ResolveArgs1 = (
|
|
109
|
+
baseFunc, arg0, arg2,
|
|
110
|
+
) => function arg1Resolver(...args) {
|
|
111
|
+
return baseFunc(arg0, args, arg2)
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
// argument resolver for curryArgs3
|
|
115
|
+
const curryArgs3ResolveArgs2 = (
|
|
116
|
+
baseFunc, arg0, arg1,
|
|
117
|
+
) => function arg2Resolver(...args) {
|
|
118
|
+
return baseFunc(arg0, arg1, args)
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
const curryArgs3 = function (baseFunc, arg0, arg1, arg2) {
|
|
122
|
+
if (arg0 == __) {
|
|
123
|
+
return curryArgs3ResolveArgs0(baseFunc, arg1, arg2)
|
|
124
|
+
}
|
|
125
|
+
if (arg1 == __) {
|
|
126
|
+
return curryArgs3ResolveArgs1(baseFunc, arg0, arg2)
|
|
127
|
+
}
|
|
128
|
+
return curryArgs3ResolveArgs2(baseFunc, arg0, arg1)
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
const isArray = Array.isArray
|
|
132
|
+
|
|
100
133
|
const areAnyValuesPromises = function (values) {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
134
|
+
if (isArray(values)) {
|
|
135
|
+
const length = values.length
|
|
136
|
+
let index = -1
|
|
137
|
+
while (++index < length) {
|
|
138
|
+
const value = values[index]
|
|
139
|
+
if (isPromise(value)) {
|
|
140
|
+
return true
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
return false
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
for (const key in values) {
|
|
147
|
+
const value = values[key]
|
|
105
148
|
if (isPromise(value)) {
|
|
106
149
|
return true
|
|
107
150
|
}
|
|
@@ -111,32 +154,36 @@ const areAnyValuesPromises = function (values) {
|
|
|
111
154
|
|
|
112
155
|
const promiseAll = Promise.all.bind(Promise)
|
|
113
156
|
|
|
114
|
-
// _tap(args Array,
|
|
115
|
-
const _tap = function (args,
|
|
157
|
+
// _tap(args Array, f function) -> Promise|any
|
|
158
|
+
const _tap = function (args, f) {
|
|
116
159
|
const result = args[0],
|
|
117
|
-
call =
|
|
160
|
+
call = f(...args)
|
|
118
161
|
return isPromise(call) ? call.then(always(result)) : result
|
|
119
162
|
}
|
|
120
163
|
|
|
121
164
|
const tap = function (...args) {
|
|
122
|
-
const
|
|
165
|
+
const f = args.pop()
|
|
123
166
|
if (args.length == 0) {
|
|
124
|
-
return curryArgs2(_tap, __,
|
|
167
|
+
return curryArgs2(_tap, __, f)
|
|
125
168
|
}
|
|
126
169
|
if (areAnyValuesPromises(args)) {
|
|
127
|
-
return promiseAll(args).then(curry2(_tap, __,
|
|
170
|
+
return promiseAll(args).then(curry2(_tap, __, f))
|
|
128
171
|
}
|
|
129
|
-
return _tap(args,
|
|
172
|
+
return _tap(args, f)
|
|
130
173
|
}
|
|
131
174
|
|
|
132
|
-
|
|
133
|
-
const
|
|
134
|
-
if (isPromise(
|
|
135
|
-
return
|
|
136
|
-
thunkConditional,
|
|
175
|
+
const _tapIf = function (predicate, f, args) {
|
|
176
|
+
const b = predicate(...args)
|
|
177
|
+
if (isPromise(b)) {
|
|
178
|
+
return b.then(curry3(
|
|
179
|
+
thunkConditional,
|
|
180
|
+
__,
|
|
181
|
+
thunkifyArgs(tap(f), args),
|
|
182
|
+
always(args[0]),
|
|
183
|
+
))
|
|
137
184
|
}
|
|
138
|
-
if (
|
|
139
|
-
const execution =
|
|
185
|
+
if (b) {
|
|
186
|
+
const execution = f(...args)
|
|
140
187
|
if (isPromise(execution)) {
|
|
141
188
|
return execution.then(always(args[0]))
|
|
142
189
|
}
|
|
@@ -144,5 +191,19 @@ tap.if = (predicate, func) => function tappingIf(...args) {
|
|
|
144
191
|
return args[0]
|
|
145
192
|
}
|
|
146
193
|
|
|
194
|
+
tap.if = function (...args) {
|
|
195
|
+
if (args.length == 2) {
|
|
196
|
+
return curryArgs3(_tapIf, args[0], args[1], __)
|
|
197
|
+
}
|
|
198
|
+
const argsLength = args.length
|
|
199
|
+
const f = args[argsLength - 1]
|
|
200
|
+
const predicate = args[argsLength - 2]
|
|
201
|
+
const argValues = args.slice(0, -2)
|
|
202
|
+
if (areAnyValuesPromises(argValues)) {
|
|
203
|
+
return promiseAll(argValues).then(curry3(_tapIf, predicate, f, __))
|
|
204
|
+
}
|
|
205
|
+
return _tapIf(predicate, f, args)
|
|
206
|
+
}
|
|
207
|
+
|
|
147
208
|
return tap
|
|
148
209
|
}())))
|
package/dist/tap.min.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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.tap=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=n=>function(){return n},r=(n,t,r)=>n?t():r(),e=Symbol.for("placeholder"),o=Promise.all.bind(Promise),
|
|
8
|
+
!function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.tap=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=n=>function(){return n},r=(n,t,r)=>n?t():r(),e=Symbol.for("placeholder"),u=function(n,t,r,u){return t==e?((n,t,r)=>function(e){return n(e,t,r)})(n,r,u):r==e?((n,t,r)=>function(e){return n(t,e,r)})(n,t,u):((n,t,r)=>function(e){return n(t,r,e)})(n,t,r)},o=Array.isArray,i=function(t){if(o(t)){const r=t.length;let e=-1;for(;++e<r;){const r=t[e];if(n(r))return!0}return!1}for(const r in t){const e=t[r];if(n(e))return!0}return!1},f=Promise.all.bind(Promise),c=function(r,e){const u=r[0],o=e(...r);return n(o)?o.then(t(u)):u},s=function(...n){const t=n.pop();return 0==n.length?(r=c,o=t,(u=e)==e?((n,t)=>function(...r){return n(r,t)})(r,o):((n,t)=>function(...r){return n(t,r)})(r,u)):i(n)?f(n).then(function(n,t,r){return t==e?((n,t)=>function(r){return n(r,t)})(n,r):((n,t)=>function(r){return n(t,r)})(n,t)}(c,e,t)):c(n,t);var r,u,o},l=function(o,i,f){const c=o(...f);if(n(c))return c.then(u(r,e,((n,t)=>function(){return n(...t)})(s(i),f),t(f[0])));if(c){const r=i(...f);if(n(r))return r.then(t(f[0]))}return f[0]};return s.if=function(...n){if(2==n.length)return t=l,r=n[0],o=n[1],c=e,r==e?((n,t,r)=>function(...e){return n(e,t,r)})(t,o,c):o==e?((n,t,r)=>function(...e){return n(t,e,r)})(t,r,c):((n,t,r)=>function(...e){return n(t,r,e)})(t,r,o);var t,r,o,c;const s=n.length,h=n[s-1],a=n[s-2],p=n.slice(0,-2);return i(p)?f(p).then(u(l,a,h,e)):l(a,h,n)},s}());
|
package/dist/tap.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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.
|
|
@@ -91,11 +91,54 @@ const curryArgs2 = function (baseFunc, arg0, arg1) {
|
|
|
91
91
|
return curryArgs2ResolveArgs1(baseFunc, arg0)
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
+
// argument resolver for curryArgs3
|
|
95
|
+
const curryArgs3ResolveArgs0 = (
|
|
96
|
+
baseFunc, arg1, arg2,
|
|
97
|
+
) => function args0Resolver(...args) {
|
|
98
|
+
return baseFunc(args, arg1, arg2)
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// argument resolver for curryArgs3
|
|
102
|
+
const curryArgs3ResolveArgs1 = (
|
|
103
|
+
baseFunc, arg0, arg2,
|
|
104
|
+
) => function arg1Resolver(...args) {
|
|
105
|
+
return baseFunc(arg0, args, arg2)
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
// argument resolver for curryArgs3
|
|
109
|
+
const curryArgs3ResolveArgs2 = (
|
|
110
|
+
baseFunc, arg0, arg1,
|
|
111
|
+
) => function arg2Resolver(...args) {
|
|
112
|
+
return baseFunc(arg0, arg1, args)
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
const curryArgs3 = function (baseFunc, arg0, arg1, arg2) {
|
|
116
|
+
if (arg0 == __) {
|
|
117
|
+
return curryArgs3ResolveArgs0(baseFunc, arg1, arg2)
|
|
118
|
+
}
|
|
119
|
+
if (arg1 == __) {
|
|
120
|
+
return curryArgs3ResolveArgs1(baseFunc, arg0, arg2)
|
|
121
|
+
}
|
|
122
|
+
return curryArgs3ResolveArgs2(baseFunc, arg0, arg1)
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
const isArray = Array.isArray
|
|
126
|
+
|
|
94
127
|
const areAnyValuesPromises = function (values) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
128
|
+
if (isArray(values)) {
|
|
129
|
+
const length = values.length
|
|
130
|
+
let index = -1
|
|
131
|
+
while (++index < length) {
|
|
132
|
+
const value = values[index]
|
|
133
|
+
if (isPromise(value)) {
|
|
134
|
+
return true
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return false
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
for (const key in values) {
|
|
141
|
+
const value = values[key]
|
|
99
142
|
if (isPromise(value)) {
|
|
100
143
|
return true
|
|
101
144
|
}
|
|
@@ -105,32 +148,36 @@ const areAnyValuesPromises = function (values) {
|
|
|
105
148
|
|
|
106
149
|
const promiseAll = Promise.all.bind(Promise)
|
|
107
150
|
|
|
108
|
-
// _tap(args Array,
|
|
109
|
-
const _tap = function (args,
|
|
151
|
+
// _tap(args Array, f function) -> Promise|any
|
|
152
|
+
const _tap = function (args, f) {
|
|
110
153
|
const result = args[0],
|
|
111
|
-
call =
|
|
154
|
+
call = f(...args)
|
|
112
155
|
return isPromise(call) ? call.then(always(result)) : result
|
|
113
156
|
}
|
|
114
157
|
|
|
115
158
|
const tap = function (...args) {
|
|
116
|
-
const
|
|
159
|
+
const f = args.pop()
|
|
117
160
|
if (args.length == 0) {
|
|
118
|
-
return curryArgs2(_tap, __,
|
|
161
|
+
return curryArgs2(_tap, __, f)
|
|
119
162
|
}
|
|
120
163
|
if (areAnyValuesPromises(args)) {
|
|
121
|
-
return promiseAll(args).then(curry2(_tap, __,
|
|
164
|
+
return promiseAll(args).then(curry2(_tap, __, f))
|
|
122
165
|
}
|
|
123
|
-
return _tap(args,
|
|
166
|
+
return _tap(args, f)
|
|
124
167
|
}
|
|
125
168
|
|
|
126
|
-
|
|
127
|
-
const
|
|
128
|
-
if (isPromise(
|
|
129
|
-
return
|
|
130
|
-
thunkConditional,
|
|
169
|
+
const _tapIf = function (predicate, f, args) {
|
|
170
|
+
const b = predicate(...args)
|
|
171
|
+
if (isPromise(b)) {
|
|
172
|
+
return b.then(curry3(
|
|
173
|
+
thunkConditional,
|
|
174
|
+
__,
|
|
175
|
+
thunkifyArgs(tap(f), args),
|
|
176
|
+
always(args[0]),
|
|
177
|
+
))
|
|
131
178
|
}
|
|
132
|
-
if (
|
|
133
|
-
const execution =
|
|
179
|
+
if (b) {
|
|
180
|
+
const execution = f(...args)
|
|
134
181
|
if (isPromise(execution)) {
|
|
135
182
|
return execution.then(always(args[0]))
|
|
136
183
|
}
|
|
@@ -138,4 +185,18 @@ tap.if = (predicate, func) => function tappingIf(...args) {
|
|
|
138
185
|
return args[0]
|
|
139
186
|
}
|
|
140
187
|
|
|
188
|
+
tap.if = function (...args) {
|
|
189
|
+
if (args.length == 2) {
|
|
190
|
+
return curryArgs3(_tapIf, args[0], args[1], __)
|
|
191
|
+
}
|
|
192
|
+
const argsLength = args.length
|
|
193
|
+
const f = args[argsLength - 1]
|
|
194
|
+
const predicate = args[argsLength - 2]
|
|
195
|
+
const argValues = args.slice(0, -2)
|
|
196
|
+
if (areAnyValuesPromises(argValues)) {
|
|
197
|
+
return promiseAll(argValues).then(curry3(_tapIf, predicate, f, __))
|
|
198
|
+
}
|
|
199
|
+
return _tapIf(predicate, f, args)
|
|
200
|
+
}
|
|
201
|
+
|
|
141
202
|
export default tap
|
package/dist/thunkify.es.js
CHANGED
|
@@ -1,17 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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
|
+
const isArray = Array.isArray
|
|
9
|
+
|
|
8
10
|
const isPromise = value => value != null && typeof value.then == 'function'
|
|
9
11
|
|
|
10
12
|
const areAnyValuesPromises = function (values) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
if (isArray(values)) {
|
|
14
|
+
const length = values.length
|
|
15
|
+
let index = -1
|
|
16
|
+
while (++index < length) {
|
|
17
|
+
const value = values[index]
|
|
18
|
+
if (isPromise(value)) {
|
|
19
|
+
return true
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return false
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
for (const key in values) {
|
|
26
|
+
const value = values[key]
|
|
15
27
|
if (isPromise(value)) {
|
|
16
28
|
return true
|
|
17
29
|
}
|
package/dist/thunkify.es.min.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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
|
-
const isPromise=r=>null!=r&&"function"==typeof r.then,areAnyValuesPromises=function(r){const e=r.length;let n=-1;for(;++n<e;){const e=r[n];if(isPromise(e))return!0}return!1},promiseAll=Promise.all.bind(Promise),__=Symbol.for("placeholder"),curry2ResolveArg0=(r,e)=>function(n){return r(n,e)},curry2ResolveArg1=(r,e)=>function(n){return r(e,n)},curry2=function(r,e,n){return e==__?curry2ResolveArg0(r,n):curry2ResolveArg1(r,e)},funcApply=(r,e)=>r(...e),thunkify=(r,...e)=>function(){return areAnyValuesPromises(e)?promiseAll(e).then(curry2(funcApply,r,__)):r(...e)};export default thunkify;
|
|
7
|
+
const isArray=Array.isArray,isPromise=r=>null!=r&&"function"==typeof r.then,areAnyValuesPromises=function(r){if(isArray(r)){const e=r.length;let n=-1;for(;++n<e;){const e=r[n];if(isPromise(e))return!0}return!1}for(const e in r){const n=r[e];if(isPromise(n))return!0}return!1},promiseAll=Promise.all.bind(Promise),__=Symbol.for("placeholder"),curry2ResolveArg0=(r,e)=>function(n){return r(n,e)},curry2ResolveArg1=(r,e)=>function(n){return r(e,n)},curry2=function(r,e,n){return e==__?curry2ResolveArg0(r,n):curry2ResolveArg1(r,e)},funcApply=(r,e)=>r(...e),thunkify=(r,...e)=>function(){return areAnyValuesPromises(e)?promiseAll(e).then(curry2(funcApply,r,__)):r(...e)};export default thunkify;
|
package/dist/thunkify.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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.
|
|
@@ -11,13 +11,25 @@
|
|
|
11
11
|
else (root.thunkify = thunkify) // Browser
|
|
12
12
|
}(typeof globalThis == 'object' ? globalThis : this, (function () { 'use strict'
|
|
13
13
|
|
|
14
|
+
const isArray = Array.isArray
|
|
15
|
+
|
|
14
16
|
const isPromise = value => value != null && typeof value.then == 'function'
|
|
15
17
|
|
|
16
18
|
const areAnyValuesPromises = function (values) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
if (isArray(values)) {
|
|
20
|
+
const length = values.length
|
|
21
|
+
let index = -1
|
|
22
|
+
while (++index < length) {
|
|
23
|
+
const value = values[index]
|
|
24
|
+
if (isPromise(value)) {
|
|
25
|
+
return true
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return false
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
for (const key in values) {
|
|
32
|
+
const value = values[key]
|
|
21
33
|
if (isPromise(value)) {
|
|
22
34
|
return true
|
|
23
35
|
}
|
package/dist/thunkify.min.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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.thunkify=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,
|
|
8
|
+
!function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.thunkify=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=Array.isArray,t=n=>null!=n&&"function"==typeof n.then,o=Promise.all.bind(Promise),e=Symbol.for("placeholder"),r=(n,t)=>n(...t);return(i,...f)=>function(){return function(o){if(n(o)){const n=o.length;let e=-1;for(;++e<n;){const n=o[e];if(t(n))return!0}return!1}for(const n in o){const e=o[n];if(t(e))return!0}return!1}(f)?o(f).then((u=r,l=e,(c=i)==e?((n,t)=>function(o){return n(o,t)})(u,l):((n,t)=>function(o){return n(t,o)})(u,c))):i(...f);var u,c,l}}());
|
package/dist/thunkify.mjs
CHANGED
|
@@ -1,17 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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
|
+
const isArray = Array.isArray
|
|
9
|
+
|
|
8
10
|
const isPromise = value => value != null && typeof value.then == 'function'
|
|
9
11
|
|
|
10
12
|
const areAnyValuesPromises = function (values) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
if (isArray(values)) {
|
|
14
|
+
const length = values.length
|
|
15
|
+
let index = -1
|
|
16
|
+
while (++index < length) {
|
|
17
|
+
const value = values[index]
|
|
18
|
+
if (isPromise(value)) {
|
|
19
|
+
return true
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return false
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
for (const key in values) {
|
|
26
|
+
const value = values[key]
|
|
15
27
|
if (isPromise(value)) {
|
|
16
28
|
return true
|
|
17
29
|
}
|
package/dist/transform.es.js
CHANGED
package/dist/transform.es.min.js
CHANGED
package/dist/transform.js
CHANGED
package/dist/transform.min.js
CHANGED
package/dist/transform.mjs
CHANGED
package/dist/tryCatch.es.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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.
|
|
@@ -46,11 +46,23 @@ const catcherApply = function (catcher, err, args) {
|
|
|
46
46
|
return catcher(err, ...args)
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
+
const isArray = Array.isArray
|
|
50
|
+
|
|
49
51
|
const areAnyValuesPromises = function (values) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
if (isArray(values)) {
|
|
53
|
+
const length = values.length
|
|
54
|
+
let index = -1
|
|
55
|
+
while (++index < length) {
|
|
56
|
+
const value = values[index]
|
|
57
|
+
if (isPromise(value)) {
|
|
58
|
+
return true
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return false
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
for (const key in values) {
|
|
65
|
+
const value = values[key]
|
|
54
66
|
if (isPromise(value)) {
|
|
55
67
|
return true
|
|
56
68
|
}
|
package/dist/tryCatch.es.min.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.6.
|
|
2
|
+
* rubico v2.6.2
|
|
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
|
-
const isPromise=r=>null!=r&&"function"==typeof r.then,promiseAll=Promise.all.bind(Promise),__=Symbol.for("placeholder"),curry3ResolveArg0=(r,t,e)=>function(n){return r(n,t,e)},curry3ResolveArg1=(r,t,e)=>function(n){return r(t,n,e)},curry3ResolveArg2=(r,t,e)=>function(n){return r(t,e,n)},curry3=function(r,t,e,n){return t==__?curry3ResolveArg0(r,e,n):e==__?curry3ResolveArg1(r,t,n):curry3ResolveArg2(r,t,e)},catcherApply=function(r,t,e){return r(t,...e)},areAnyValuesPromises=function(r){const t=r.length;let e=-1;for(;++e<t;){const t=r[e];if(isPromise(t))return!0}return!1},_tryCatch=function(r,t,e){try{const n=r(...e);return isPromise(n)?n.catch(curry3(catcherApply,t,__,e)):n}catch(r){return t(r,...e)}},tryCatch=function(...r){if(r.length>2){const t=r.pop(),e=r.pop();return areAnyValuesPromises(r)?promiseAll(r).then(curry3(_tryCatch,e,t,__)):_tryCatch(e,t,r)}const t=r[0],e=r[1];return function(...r){return _tryCatch(t,e,r)}};export default tryCatch;
|
|
7
|
+
const isPromise=r=>null!=r&&"function"==typeof r.then,promiseAll=Promise.all.bind(Promise),__=Symbol.for("placeholder"),curry3ResolveArg0=(r,t,e)=>function(n){return r(n,t,e)},curry3ResolveArg1=(r,t,e)=>function(n){return r(t,n,e)},curry3ResolveArg2=(r,t,e)=>function(n){return r(t,e,n)},curry3=function(r,t,e,n){return t==__?curry3ResolveArg0(r,e,n):e==__?curry3ResolveArg1(r,t,n):curry3ResolveArg2(r,t,e)},catcherApply=function(r,t,e){return r(t,...e)},isArray=Array.isArray,areAnyValuesPromises=function(r){if(isArray(r)){const t=r.length;let e=-1;for(;++e<t;){const t=r[e];if(isPromise(t))return!0}return!1}for(const t in r){const e=r[t];if(isPromise(e))return!0}return!1},_tryCatch=function(r,t,e){try{const n=r(...e);return isPromise(n)?n.catch(curry3(catcherApply,t,__,e)):n}catch(r){return t(r,...e)}},tryCatch=function(...r){if(r.length>2){const t=r.pop(),e=r.pop();return areAnyValuesPromises(r)?promiseAll(r).then(curry3(_tryCatch,e,t,__)):_tryCatch(e,t,r)}const t=r[0],e=r[1];return function(...r){return _tryCatch(t,e,r)}};export default tryCatch;
|