Mirror: The highly customizable and versatile GraphQL client with which you add on features like normalized caching as you grow.

Fix(core): Type definition for `GraphQLRequestParams` (#3807)

Signed-off-by: Julien Hauseux <julien.hauseux@gmail.com>

authored by

Julien Hauseux and committed by
GitHub
b757332b 00d36ceb

+15 -10
+5
.changeset/shaggy-taxis-grab.md
··· 1 + --- 2 + '@urql/core': minor 3 + --- 4 + 5 + Fix type definition for `GraphQLRequestParams` to make `variables` field optional if and only if **all** fields are optional or nullish
+10 -10
packages/core/src/types.ts
··· 386 386 variables?: Variables; 387 387 } 388 388 : Variables extends { 389 - [P in keyof Variables]: Exclude<Variables[P], null | void>; 389 + [P in keyof Variables]: undefined extends Variables[P] 390 + ? unknown 391 + : null extends Variables[P] 392 + ? unknown 393 + : void extends Variables[P] 394 + ? unknown 395 + : never; 390 396 } 391 - ? Variables extends { 392 - [P in keyof Variables]: never; 397 + ? { 398 + variables?: Variables; 393 399 } 394 - ? { 395 - variables?: Variables; 396 - } 397 - : { 398 - variables: Variables; 399 - } 400 400 : { 401 - variables?: Variables; 401 + variables: Variables; 402 402 })) 403 403 | { 404 404 query: DocumentInput<Data, Variables>;