Skip to content

Commit a9f1f15

Browse files
authored
fix: use maybeValue with preResolveTypes: true fix (#6951)
* use maybeValue if confifgured * dev-tests update * changeset * default maybeValue fix * further fix + tests+examples update * further fix * fragment inner fields become optional * dev tests update * dev tests update * minor fix * another minor fix
1 parent 3425354 commit a9f1f15

File tree

12 files changed

+375
-192
lines changed

12 files changed

+375
-192
lines changed

‎.changeset/little-camels-collect.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'@graphql-codegen/visitor-plugin-common': patch
3+
'@graphql-codegen/typescript-operations': patch
4+
---
5+
6+
Use maybeValue as default output for optionals on preResolveTypes: true

‎dev-test/githunt/types.avoidOptionals.ts

Lines changed: 87 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -172,13 +172,16 @@ export type OnCommentAddedSubscriptionVariables = Exact<{
172172

173173
export type OnCommentAddedSubscription = {
174174
__typename?: 'Subscription';
175-
commentAdded: {
176-
__typename?: 'Comment';
177-
id: number;
178-
createdAt: number;
179-
content: string;
180-
postedBy: { __typename?: 'User'; login: string; html_url: string };
181-
} | null;
175+
commentAdded:
176+
| {
177+
__typename?: 'Comment';
178+
id: number;
179+
createdAt: number;
180+
content: string;
181+
postedBy: { __typename?: 'User'; login: string; html_url: string };
182+
}
183+
| null
184+
| undefined;
182185
};
183186

184187
export type CommentQueryVariables = Exact<{
@@ -189,29 +192,36 @@ export type CommentQueryVariables = Exact<{
189192

190193
export type CommentQuery = {
191194
__typename?: 'Query';
192-
currentUser: { __typename?: 'User'; login: string; html_url: string } | null;
193-
entry: {
194-
__typename?: 'Entry';
195-
id: number;
196-
createdAt: number;
197-
commentCount: number;
198-
postedBy: { __typename?: 'User'; login: string; html_url: string };
199-
comments: Array<{
200-
__typename?: 'Comment';
201-
id: number;
202-
createdAt: number;
203-
content: string;
204-
postedBy: { __typename?: 'User'; login: string; html_url: string };
205-
} | null>;
206-
repository: {
207-
__typename?: 'Repository';
208-
description: string | null;
209-
open_issues_count: number | null;
210-
stargazers_count: number;
211-
full_name: string;
212-
html_url: string;
213-
};
214-
} | null;
195+
currentUser: { __typename?: 'User'; login: string; html_url: string } | null | undefined;
196+
entry:
197+
| {
198+
__typename?: 'Entry';
199+
id: number;
200+
createdAt: number;
201+
commentCount: number;
202+
postedBy: { __typename?: 'User'; login: string; html_url: string };
203+
comments: Array<
204+
| {
205+
__typename?: 'Comment';
206+
id: number;
207+
createdAt: number;
208+
content: string;
209+
postedBy: { __typename?: 'User'; login: string; html_url: string };
210+
}
211+
| null
212+
| undefined
213+
>;
214+
repository: {
215+
__typename?: 'Repository';
216+
description: string | null | undefined;
217+
open_issues_count: number | null | undefined;
218+
stargazers_count: number;
219+
full_name: string;
220+
html_url: string;
221+
};
222+
}
223+
| null
224+
| undefined;
215225
};
216226

217227
export type CommentsPageCommentFragment = {
@@ -226,7 +236,7 @@ export type CurrentUserForProfileQueryVariables = Exact<{ [key: string]: never }
226236

227237
export type CurrentUserForProfileQuery = {
228238
__typename?: 'Query';
229-
currentUser: { __typename?: 'User'; login: string; avatar_url: string } | null;
239+
currentUser: { __typename?: 'User'; login: string; avatar_url: string } | null | undefined;
230240
};
231241

232242
export type FeedEntryFragment = {
@@ -239,10 +249,10 @@ export type FeedEntryFragment = {
239249
__typename?: 'Repository';
240250
full_name: string;
241251
html_url: string;
242-
description: string | null;
252+
description: string | null | undefined;
243253
stargazers_count: number;
244-
open_issues_count: number | null;
245-
owner: { __typename?: 'User'; avatar_url: string } | null;
254+
open_issues_count: number | null | undefined;
255+
owner: { __typename?: 'User'; avatar_url: string } | null | undefined;
246256
};
247257
vote: { __typename?: 'Vote'; vote_value: number };
248258
postedBy: { __typename?: 'User'; html_url: string; login: string };
@@ -256,25 +266,32 @@ export type FeedQueryVariables = Exact<{
256266

257267
export type FeedQuery = {
258268
__typename?: 'Query';
259-
currentUser: { __typename?: 'User'; login: string } | null;
260-
feed: Array<{
261-
__typename?: 'Entry';
262-
id: number;
263-
commentCount: number;
264-
score: number;
265-
createdAt: number;
266-
repository: {
267-
__typename?: 'Repository';
268-
full_name: string;
269-
html_url: string;
270-
description: string | null;
271-
stargazers_count: number;
272-
open_issues_count: number | null;
273-
owner: { __typename?: 'User'; avatar_url: string } | null;
274-
};
275-
vote: { __typename?: 'Vote'; vote_value: number };
276-
postedBy: { __typename?: 'User'; html_url: string; login: string };
277-
} | null> | null;
269+
currentUser: { __typename?: 'User'; login: string } | null | undefined;
270+
feed:
271+
| Array<
272+
| {
273+
__typename?: 'Entry';
274+
id: number;
275+
commentCount: number;
276+
score: number;
277+
createdAt: number;
278+
repository: {
279+
__typename?: 'Repository';
280+
full_name: string;
281+
html_url: string;
282+
description: string | null | undefined;
283+
stargazers_count: number;
284+
open_issues_count: number | null | undefined;
285+
owner: { __typename?: 'User'; avatar_url: string } | null | undefined;
286+
};
287+
vote: { __typename?: 'Vote'; vote_value: number };
288+
postedBy: { __typename?: 'User'; html_url: string; login: string };
289+
}
290+
| null
291+
| undefined
292+
>
293+
| null
294+
| undefined;
278295
};
279296

280297
export type SubmitRepositoryMutationVariables = Exact<{
@@ -283,17 +300,17 @@ export type SubmitRepositoryMutationVariables = Exact<{
283300

284301
export type SubmitRepositoryMutation = {
285302
__typename?: 'Mutation';
286-
submitRepository: { __typename?: 'Entry'; createdAt: number } | null;
303+
submitRepository: { __typename?: 'Entry'; createdAt: number } | null | undefined;
287304
};
288305

289306
export type RepoInfoFragment = {
290307
__typename?: 'Entry';
291308
createdAt: number;
292309
repository: {
293310
__typename?: 'Repository';
294-
description: string | null;
311+
description: string | null | undefined;
295312
stargazers_count: number;
296-
open_issues_count: number | null;
313+
open_issues_count: number | null | undefined;
297314
};
298315
postedBy: { __typename?: 'User'; html_url: string; login: string };
299316
};
@@ -305,13 +322,16 @@ export type SubmitCommentMutationVariables = Exact<{
305322

306323
export type SubmitCommentMutation = {
307324
__typename?: 'Mutation';
308-
submitComment: {
309-
__typename?: 'Comment';
310-
id: number;
311-
createdAt: number;
312-
content: string;
313-
postedBy: { __typename?: 'User'; login: string; html_url: string };
314-
} | null;
325+
submitComment:
326+
| {
327+
__typename?: 'Comment';
328+
id: number;
329+
createdAt: number;
330+
content: string;
331+
postedBy: { __typename?: 'User'; login: string; html_url: string };
332+
}
333+
| null
334+
| undefined;
315335
};
316336

317337
export type VoteButtonsFragment = {
@@ -327,5 +347,8 @@ export type VoteMutationVariables = Exact<{
327347

328348
export type VoteMutation = {
329349
__typename?: 'Mutation';
330-
vote: { __typename?: 'Entry'; score: number; id: number; vote: { __typename?: 'Vote'; vote_value: number } } | null;
350+
vote:
351+
| { __typename?: 'Entry'; score: number; id: number; vote: { __typename?: 'Vote'; vote_value: number } }
352+
| null
353+
| undefined;
331354
};

0 commit comments

Comments
 (0)