Skip to content

Commit 634f7ea

Browse files
authored
more DocumentationTypes, get docs to compile (#12771)
* make docs compile * bump * bump * bump * bump * bump * bump * bump * bump
1 parent db6f7c3 commit 634f7ea

File tree

4 files changed

+141
-101
lines changed

4 files changed

+141
-101
lines changed

docs/source/_sidebar.yaml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,6 @@ items:
143143
href: ./api/react/testing
144144
- label: SSR
145145
href: ./api/react/ssr
146-
- label: Components (deprecated)
147-
href: ./api/react/components
148-
- label: HOC (deprecated)
149-
href: ./api/react/hoc
150146
- label: Apollo Link
151147
children:
152148
- label: Overview

docs/source/api/react/hooks.mdx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -230,8 +230,8 @@ function List() {
230230
```ts
231231
function useSuspenseQuery<TData, TVariables>(
232232
query: DocumentNode,
233-
options?: SuspenseQueryHookOptions<TData, TVariables> | SkipToken,
234-
): UseSuspenseQueryResult<TData, TVariables>
233+
options?: useSuspenseQuery.Options<TData, TVariables> | SkipToken,
234+
): useSuspenseQuery.Result<TData, TVariables>
235235
```
236236

237237
### Params
@@ -245,10 +245,10 @@ function useSuspenseQuery<TData, TVariables>(
245245

246246
#### `options`
247247

248-
Instead of passing a `SuspenseQueryHookOptions` object into the hook, you can also pass a [`skipToken`](#skiptoken) to prevent the `useSuspenseQuery` hook from executing the query or suspending.
248+
Instead of passing a `useSuspenseQuery.Options` object into the hook, you can also pass a [`skipToken`](#skiptoken) to prevent the `useSuspenseQuery` hook from executing the query or suspending.
249249

250250
<InterfaceDetails
251-
canonicalReference="@apollo/client!SuspenseQueryHookOptions:interface"
251+
canonicalReference="@apollo/client!useSuspenseQuery.DocumentationTypes.Options:interface"
252252
customPropertyOrder={["variables", "errorPolicy", "skip"]}
253253
headingLevel={3}
254254
/>
@@ -387,7 +387,7 @@ function useReadQuery<TData>(
387387
<UseReadQueryResult />
388388

389389
<FunctionDetails
390-
canonicalReference="@apollo/client!useLoadableQuery:function(5)"
390+
canonicalReference="@apollo/client!useLoadableQuery.DocumentationTypes.useLoadableQuery:function(1)"
391391
headingLevel={2}
392392
>
393393
```ts
@@ -397,6 +397,7 @@ function useReadQuery<TData>(
397397
{
398398
fetchMore: FetchMoreFunction<TData, TVariables>;
399399
refetch: RefetchFunction<TData, TVariables>;
400+
subscribeToMore: SubscribeToMoreFunction<TData, TVariables>;
400401
reset: ResetFunction;
401402
}
402403
]
@@ -415,14 +416,13 @@ function useReadQuery<TData>(
415416
idPrefix="useloadablequery-result"
416417
name="queryRef"
417418
type="QueryRef<TData, TVariables> | null"
418-
canonicalReference="@apollo/client!QueryRef:interface"
419419
>
420420
The `queryRef` used by `useReadQuery` to read the query result.
421421
</ManualTupleItem>
422422
<ManualTupleItem
423423
idPrefix="useloadablequery-result"
424424
name="handlers"
425-
type="{ fetchMore: FetchMoreFunction<TData, TVariables>; refetch: RefetchFunction<TData, TVariables>; reset: ResetFunction; }"
425+
type="{ fetchMore: FetchMoreFunction<TData, TVariables>; refetch: RefetchFunction<TData, TVariables>; subscribeToMore: SubscribeToMoreFunction<TData, TVariables>; reset: ResetFunction; }"
426426
>
427427
Additional handlers used for the query, such as `refetch`.
428428
</ManualTupleItem>

src/react/hooks/useLoadableQuery.ts

Lines changed: 56 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -98,50 +98,18 @@ export declare namespace useLoadableQuery {
9898
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#returnPartialData:member} */
9999
returnPartialData?: boolean;
100100
}
101-
}
102101

103-
export function useLoadableQuery<
104-
TData = unknown,
105-
TVariables extends OperationVariables = OperationVariables,
106-
>(
107-
query: DocumentNode | TypedDocumentNode<TData, TVariables>,
108-
options: useLoadableQuery.Options & {
109-
returnPartialData: true;
110-
errorPolicy: "ignore" | "all";
102+
export namespace DocumentationTypes {
103+
/** {@inheritDoc @apollo/client!useLoadableQuery:function(1)} */
104+
export function useLoadableQuery<
105+
TData = unknown,
106+
TVariables extends OperationVariables = OperationVariables,
107+
>(
108+
query: DocumentNode | TypedDocumentNode<TData, TVariables>,
109+
options: useLoadableQuery.Options
110+
): useLoadableQuery.Result<TData, TVariables>;
111111
}
112-
): useLoadableQuery.Result<
113-
TData,
114-
TVariables,
115-
"complete" | "streaming" | "partial" | "empty"
116-
>;
117-
118-
export function useLoadableQuery<
119-
TData = unknown,
120-
TVariables extends OperationVariables = OperationVariables,
121-
>(
122-
query: DocumentNode | TypedDocumentNode<TData, TVariables>,
123-
options: useLoadableQuery.Options & {
124-
errorPolicy: "ignore" | "all";
125-
}
126-
): useLoadableQuery.Result<
127-
TData,
128-
TVariables,
129-
"complete" | "streaming" | "empty"
130-
>;
131-
132-
export function useLoadableQuery<
133-
TData = unknown,
134-
TVariables extends OperationVariables = OperationVariables,
135-
>(
136-
query: DocumentNode | TypedDocumentNode<TData, TVariables>,
137-
options: useLoadableQuery.Options & {
138-
returnPartialData: true;
139-
}
140-
): useLoadableQuery.Result<
141-
TData,
142-
TVariables,
143-
"complete" | "streaming" | "partial"
144-
>;
112+
}
145113

146114
/**
147115
* A hook for imperatively loading a query, such as responding to a user
@@ -188,6 +156,52 @@ export function useLoadableQuery<
188156
* @param options - Options to control how the query is executed.
189157
* @returns A tuple in the form of `[loadQuery, queryRef, handlers]`
190158
*/
159+
export function useLoadableQuery<
160+
TData = unknown,
161+
TVariables extends OperationVariables = OperationVariables,
162+
>(
163+
query: DocumentNode | TypedDocumentNode<TData, TVariables>,
164+
options: useLoadableQuery.Options & {
165+
returnPartialData: true;
166+
errorPolicy: "ignore" | "all";
167+
}
168+
): useLoadableQuery.Result<
169+
TData,
170+
TVariables,
171+
"complete" | "streaming" | "partial" | "empty"
172+
>;
173+
174+
/** {@inheritDoc @apollo/client!useLoadableQuery:function(1)} */
175+
export function useLoadableQuery<
176+
TData = unknown,
177+
TVariables extends OperationVariables = OperationVariables,
178+
>(
179+
query: DocumentNode | TypedDocumentNode<TData, TVariables>,
180+
options: useLoadableQuery.Options & {
181+
errorPolicy: "ignore" | "all";
182+
}
183+
): useLoadableQuery.Result<
184+
TData,
185+
TVariables,
186+
"complete" | "streaming" | "empty"
187+
>;
188+
189+
/** {@inheritDoc @apollo/client!useLoadableQuery:function(1)} */
190+
export function useLoadableQuery<
191+
TData = unknown,
192+
TVariables extends OperationVariables = OperationVariables,
193+
>(
194+
query: DocumentNode | TypedDocumentNode<TData, TVariables>,
195+
options: useLoadableQuery.Options & {
196+
returnPartialData: true;
197+
}
198+
): useLoadableQuery.Result<
199+
TData,
200+
TVariables,
201+
"complete" | "streaming" | "partial"
202+
>;
203+
204+
/** {@inheritDoc @apollo/client!useLoadableQuery:function(1)} */
191205
export function useLoadableQuery<
192206
TData = unknown,
193207
TVariables extends OperationVariables = OperationVariables,

src/react/hooks/useSuspenseQuery.ts

Lines changed: 78 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import type {
2828
import { getSuspenseCache } from "@apollo/client/react/internal";
2929
import { __DEV__ } from "@apollo/client/utilities/environment";
3030
import type {
31+
DocumentationTypes as UtilityDocumentationTypes,
3132
NoInfer,
3233
VariablesOption,
3334
} from "@apollo/client/utilities/internal";
@@ -44,67 +45,96 @@ export declare namespace useSuspenseQuery {
4445
"cache-first" | "network-only" | "no-cache" | "cache-and-network"
4546
>;
4647

48+
export namespace Base {
49+
export interface Options<
50+
TVariables extends OperationVariables = OperationVariables,
51+
> {
52+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#client:member} */
53+
client?: ApolloClient;
54+
55+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#context:member} */
56+
context?: DefaultContext;
57+
58+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#errorPolicy:member} */
59+
errorPolicy?: ErrorPolicy;
60+
61+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#returnPartialData:member} */
62+
returnPartialData?: boolean;
63+
64+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#refetchWritePolicy_suspense:member} */
65+
refetchWritePolicy?: RefetchWritePolicy;
66+
67+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#fetchPolicy:member} */
68+
fetchPolicy?: FetchPolicy;
69+
70+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#queryKey:member} */
71+
queryKey?: string | number | any[];
72+
73+
/**
74+
* {@inheritDoc @apollo/client!QueryOptionsDocumentation#skip_deprecated:member}
75+
*
76+
* @example Recommended usage of `skipToken`:
77+
* ```ts
78+
* import { skipToken, useSuspenseQuery } from '@apollo/client';
79+
*
80+
* const { data } = useSuspenseQuery(query, id ? { variables: { id } } : skipToken);
81+
* ```
82+
*/
83+
skip?: boolean;
84+
}
85+
}
4786
export type Options<
4887
TVariables extends OperationVariables = OperationVariables,
49-
> = {
50-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#client:member} */
51-
client?: ApolloClient;
52-
53-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#context:member} */
54-
context?: DefaultContext;
55-
56-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#errorPolicy:member} */
57-
errorPolicy?: ErrorPolicy;
88+
> = Base.Options<TVariables> & VariablesOption<TVariables>;
89+
90+
export namespace DocumentationTypes {
91+
export interface Options<
92+
TVariables extends OperationVariables = OperationVariables,
93+
> extends Base.Options<TVariables> {
94+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#variables:member} */
95+
variables?: TVariables;
96+
}
97+
}
5898

59-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#returnPartialData:member} */
60-
returnPartialData?: boolean;
99+
export namespace Base {
100+
export interface Result<
101+
TData = unknown,
102+
TVariables extends OperationVariables = OperationVariables,
103+
> {
104+
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#client:member} */
105+
client: ApolloClient;
61106

62-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#refetchWritePolicy_suspense:member} */
63-
refetchWritePolicy?: RefetchWritePolicy;
107+
/** {@inheritDoc @apollo/client!QueryResultDocumentation#error:member} */
108+
error: ErrorLike | undefined;
64109

65-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#fetchPolicy:member} */
66-
fetchPolicy?: FetchPolicy;
110+
/** {@inheritDoc @apollo/client!QueryResultDocumentation#fetchMore:member} */
111+
fetchMore: FetchMoreFunction<TData, TVariables>;
67112

68-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#queryKey:member} */
69-
queryKey?: string | number | any[];
113+
/** {@inheritDoc @apollo/client!QueryResultDocumentation#networkStatus:member} */
114+
networkStatus: NetworkStatus;
70115

71-
/**
72-
* {@inheritDoc @apollo/client!QueryOptionsDocumentation#skip_deprecated:member}
73-
*
74-
* @example Recommended usage of `skipToken`:
75-
* ```ts
76-
* import { skipToken, useSuspenseQuery } from '@apollo/client';
77-
*
78-
* const { data } = useSuspenseQuery(query, id ? { variables: { id } } : skipToken);
79-
* ```
80-
*/
81-
skip?: boolean;
82-
} & VariablesOption<TVariables>;
116+
/** {@inheritDoc @apollo/client!QueryResultDocumentation#refetch:member} */
117+
refetch: RefetchFunction<TData, TVariables>;
83118

119+
/** {@inheritDoc @apollo/client!QueryResultDocumentation#subscribeToMore:member} */
120+
subscribeToMore: SubscribeToMoreFunction<TData, TVariables>;
121+
}
122+
}
84123
export type Result<
85124
TData = unknown,
86125
TVariables extends OperationVariables = OperationVariables,
87126
TStates extends
88127
DataState<TData>["dataState"] = DataState<TData>["dataState"],
89-
> = {
90-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#client:member} */
91-
client: ApolloClient;
92-
93-
/** {@inheritDoc @apollo/client!QueryResultDocumentation#error:member} */
94-
error: ErrorLike | undefined;
95-
96-
/** {@inheritDoc @apollo/client!QueryResultDocumentation#fetchMore:member} */
97-
fetchMore: FetchMoreFunction<TData, TVariables>;
98-
99-
/** {@inheritDoc @apollo/client!QueryResultDocumentation#networkStatus:member} */
100-
networkStatus: NetworkStatus;
101-
102-
/** {@inheritDoc @apollo/client!QueryResultDocumentation#refetch:member} */
103-
refetch: RefetchFunction<TData, TVariables>;
104-
105-
/** {@inheritDoc @apollo/client!QueryResultDocumentation#subscribeToMore:member} */
106-
subscribeToMore: SubscribeToMoreFunction<TData, TVariables>;
107-
} & GetDataState<MaybeMasked<TData>, TStates>;
128+
> = Base.Result<TData, TVariables> &
129+
GetDataState<MaybeMasked<TData>, TStates>;
130+
131+
export namespace DocumentationTypes {
132+
export interface Result<
133+
TData = unknown,
134+
TVariables extends OperationVariables = OperationVariables,
135+
> extends Base.Result<TData, TVariables>,
136+
UtilityDocumentationTypes.DataState<TData> {}
137+
}
108138
}
109139

110140
export function useSuspenseQuery<

0 commit comments

Comments
 (0)