The Product.media connection already allows us to query by media_type.
However, ProductVariant.media does not have the same query, which can be surprising.
Reasoning: I believe that when the vast majority of apps fetch variant data for display in their interface, they want an image, as opposed to other types of media, like video, etc. So, it’s incredibly useful to be able to efficiently fetch the first image associated with a variant.
Getting an image for a product is a bit confusing. I think it’s due to the discrepancy between images for products without variants and images for products with variants.