Sha256: aedb34d292df189f0f9e766b306a3652ffcf2303ef4d5580e9723d5033d4f022
Contents?: true
Size: 683 Bytes
Versions: 26
Compression:
Stored size: 683 Bytes
Contents
'use strict'; Object.defineProperty(exports, '__esModule', { value: true, }); exports.promiseForObject = promiseForObject; /** * This function transforms a JS object `ObjMap<Promise<T>>` into * a `Promise<ObjMap<T>>` * * This is akin to bluebird's `Promise.props`, but implemented only using * `Promise.all` so it will work with any implementation of ES6 promises. */ function promiseForObject(object) { return Promise.all(Object.values(object)).then((resolvedValues) => { const resolvedObject = Object.create(null); for (const [i, key] of Object.keys(object).entries()) { resolvedObject[key] = resolvedValues[i]; } return resolvedObject; }); }
Version data entries
26 entries across 26 versions & 1 rubygems