title: How to chain a Promise.all with other Promises?
body: <p>I want to execute my code in the following order:</p>
  
  <ol>
  <li>Promise 1</li>
  <li>Wait for 1 to be done, then do Promise 2+3 at the same time</li>
  <li>Final function waits for Promise 2+3 to be done</li>
  </ol>
  
  <p>I'm having some trouble figuring it out, my code so far is below.</p>
  
  <pre><code>function getPromise1() {
    return new Promise((resolve, reject) =&gt; {
      // do something async
      resolve('myResult');
    });
  }
  
  function getPromise2() {
    return new Promise((resolve, reject) =&gt; {
      // do something async
      resolve('myResult');
    });
  }
  
  function getPromise3() {
    return new Promise((resolve, reject) =&gt; {
      // do something async
      resolve('myResult');
    });
  }
  
  getPromise1()
  .then(
    Promise.all([getPromise2(), getPromise3()])
    .then() // ???
  )
  .then(() =&gt; console.log('Finished!'));
  </code></pre>