const product = obj => Object.entries(obj).reduce((acc, [key, values]) => acc.reduce((acc, item) => [ ...acc, ...values.map(value => ({ ...item, [key]: value })) ], []), [{}]);