v0.20.0
- Use
typeof input === "object" && !Array.isArray(input) && input !== nullto testObjectdata instead ofObject.prototype.toString.call(input) === "[object Object]" - Use
hasOwnPropertyto find excess keys instead ofinoperator - Add
InvalidUnionerror with a better message produced bytoStringfunction