Emulating a map() across multiple collections

I have some data stored in separate collections, and I’d like to essentially merge ($unionWith) them and return a normalized shape. In JS, it would look something like:

const types = ['type 1', 'type 2'];
[coll1, coll2].flatMap((coll, i) => coll.map(data => ({ type: types[i], data }))

The resulting data looking something like:
[{ type: 'type 1', data }, { type: 'type 1', data }, { type: 'type 2', data }]

My approach using mongo aggregations looks like this:

Would you be able to help me optimize/simplify/reorganize that, if possible? I just want to make sure I’m not missing an easier way.