Skip to content

Commit 607d418

Browse files
author
Geoff Davis
committed
init
0 parents  commit 607d418

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

index.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
const asyncFactory = (fn, ...params) =>
2+
new Promise((resolve, reject) => {
3+
const safeParams =
4+
params.length > 0
5+
? params
6+
: fn.length === 1
7+
? new Array(fn.length).fill(null)
8+
: new Array(fn.length - 1).fill(null);
9+
try {
10+
(fn.length > 1 &&
11+
fn.length !== safeParams.length &&
12+
fn(...safeParams, resolve)) ||
13+
resolve(fn(...safeParams));
14+
} catch (e) {
15+
reject(e);
16+
}
17+
});

0 commit comments

Comments
 (0)