1.0.2 • Published 6 years ago
@cuties/created v1.0.2
cutie-created
Cutie extension for creating objects with async arguments. It's based on the Async Tree Pattern.
Install
npm install @cuties/created
Run test
npm test
Run build
npm run build
Example
Let's say you have an object User:
class User {
  constructor (name, email) {
    this.name = name
    this.email = email
  }
}But in some cases you can get name and email only via async calls, so you need User to have async arguments, but User is not an async object. This lib provides the object Created, which solves the problem.
const { Created } = require('@cuties/cutie')
const User = require('./User')
new Created(
  User, new RetrievedSomehowUserName(), new RetrievedSomehowUserEmail()
).call()And in this case Created represents User with properties from the specified async objects.
So, the signature of Created is
new Created(ObjThatYouNeedToCreate, ...asyncArgsOfObjThatYouNeedToCreate)