The APIClient system forms the foundation for most everything within the Client SDK, and as such the types and handling of data sent using these classes and protocols is of the utmost importance. To that end, this PR introduces several enhancements that will improve APIClient for future changes.
Ensure APIRequestBody parameters use the concrete APIRequestArgument instead of Any to improve how arguments are handled, tested, and validated.
Add APIRequestArgument conformances to several key types, including JWT, GrantType, and Token.Kind.
Improve default APIRequestArgument value conversion for types that already conform to RawRepresentable with a String value type.
Ensure SDKVersion.register is thread-safe, and begin initial adoption of the Sendable protocol.
The APIClient system forms the foundation for most everything within the Client SDK, and as such the types and handling of data sent using these classes and protocols is of the utmost importance. To that end, this PR introduces several enhancements that will improve APIClient for future changes.
APIRequestArgument
instead ofAny
to improve how arguments are handled, tested, and validated.APIRequestArgument
conformances to several key types, includingJWT
,GrantType
, andToken.Kind
.APIRequestArgument
value conversion for types that already conform toRawRepresentable
with aString
value type.SDKVersion.register
is thread-safe, and begin initial adoption of theSendable
protocol.