UNPKG

@grindife/supamelon

Version:

Combination of supabase and watermelondb

23 lines (19 loc) 619 B
// @flow type UnpackPromise = <T>(promise: Promise<T>) => T export default function allPromisesObj<T, Key, Spec: { [Key]: Promise<T> }>( promisesObj: Spec, // $FlowFixMe ): Promise<$ObjMap<Spec, UnpackPromise>> { return new Promise((resolve, reject) => { const keys = Object.keys(promisesObj) const len = keys.length Promise.all(Object.values(promisesObj)).then((result) => { const resultObj: { [string]: mixed } = {} for (let i = 0; i < len; i++) { resultObj[keys[i]] = result[i] } // $FlowFixMe resolve(resultObj) }, reject) }) }