Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/feathers-studio/promise.object
📤 Deep resolve promises in objects.
https://github.com/feathers-studio/promise.object
deep-resolve object promise promise-a-plus
Last synced: about 16 hours ago
JSON representation
📤 Deep resolve promises in objects.
- Host: GitHub
- URL: https://github.com/feathers-studio/promise.object
- Owner: feathers-studio
- License: mit
- Created: 2018-06-01T06:30:45.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-05-17T07:20:40.000Z (over 1 year ago)
- Last Synced: 2025-01-10T03:59:21.430Z (about 1 month ago)
- Topics: deep-resolve, object, promise, promise-a-plus
- Language: TypeScript
- Homepage:
- Size: 21.5 KB
- Stars: 8
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 📤 Promise.object
`Promise.object` is `Promise.all` for objects, and it traverses deeply! It's also fully typed.
## Installation
```shell
npm install --save @codefeathers/promise.object
```## Usage
```TS
import promiseObject from "@codefeathers/promise.object";const resolved = await promiseObject({
foo: Promise.resolve(5),
bar: {
baz: Promise.resolve([ 1, 2, 3 ])
}
});console.log(resolved);
//-> { foo: 5, bar: { baz: [ 1, 2, 3 ] } }
```We need to go _deeper_!
```JavaScript
import promiseObject from "@codefeathers/promise.object";const resolved = await promiseObject(
Promise.resolve({
foo: Promise.resolve({
bar: Promise.resolve(5)
})
})
);console.log(resolved);
//-> { foo: { bar: 5 } }
```## Deno
```TS
import promiseObject from "https://deno.land/x/[email protected]";
```## Credits
The original idea and challenge was from [@TRGWII](https://github.com/TRGWII).