fun build(): SharingRequest
Copies products, so mutating the caller’s list cannot change an already-built request.