title: Promise.all for objects in Javascript
body: <p>Promise.all can turn <code>[Promise a, Promise b]</code> into <code>Promise [a, b]</code>, which is super useful, but is there also a way to turn <code>{a: Promise a, b: Promise b}</code> into <code>Promise {a, b}</code>.</p>
  
  <p>The use case is:</p>
  
  <p>I have a function that loads some files from a website and gives back error messages in the case that it failed.
  This means, that its signature is <code>information -&gt; {values: values, messages: messages}</code>.</p>
  
  <p>But the whole check is async, so it turns out to be <code>information -&gt; {values: Promise values, messages: promise messages}</code> </p>