Skip to content

Commit 716d02e

Browse files
deprecate use(Lazy)Query on(Error|Completed) callbacks (#12340)
* deprecate `use(Lazy)Query` `on(Error|Completed)` callbacks * changeset * Apply suggestions from code review Co-authored-by: Jerel Miller <jerelmiller@gmail.com> * Update src/react/types/deprecation.md Co-authored-by: Jerel Miller <jerelmiller@gmail.com> * Apply suggestions from code review * Update src/react/types/deprecation.md * Update src/react/types/deprecation.md * Slight tweaks to changes around behavior section * Slight tweak to defer section * Add section on our recommendation * Update section for bugs * Minor tweak to solutions section * Mention switch in behavior * Slight tweak to end * remove draft file, add links to issue * api-extractor --------- Co-authored-by: Jerel Miller <jerelmiller@gmail.com>
1 parent 67c16c9 commit 716d02e

9 files changed

+50
-4
lines changed

.api-reports/api-report-react.api.md

+4
Original file line numberDiff line numberDiff line change
@@ -1048,7 +1048,9 @@ export interface LazyQueryHookExecOptions<TData = any, TVariables extends Operat
10481048
export interface LazyQueryHookOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
10491049
// @internal (undocumented)
10501050
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1051+
// @deprecated
10511052
onCompleted?: (data: MaybeMasked<TData>) => void;
1053+
// @deprecated
10521054
onError?: (error: ApolloError) => void;
10531055
}
10541056

@@ -1596,7 +1598,9 @@ export interface QueryDataOptions<TData = any, TVariables extends OperationVaria
15961598
export interface QueryFunctionOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
15971599
// @internal (undocumented)
15981600
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1601+
// @deprecated
15991602
onCompleted?: (data: MaybeMasked<TData>) => void;
1603+
// @deprecated
16001604
onError?: (error: ApolloError) => void;
16011605
skip?: boolean;
16021606
}

.api-reports/api-report-react_components.api.md

+2
Original file line numberDiff line numberDiff line change
@@ -1419,7 +1419,9 @@ export interface QueryComponentOptions<TData = any, TVariables extends Operation
14191419
interface QueryFunctionOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
14201420
// @internal (undocumented)
14211421
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1422+
// @deprecated
14221423
onCompleted?: (data: MaybeMasked<TData>) => void;
1424+
// @deprecated
14231425
onError?: (error: ApolloError) => void;
14241426
skip?: boolean;
14251427
}

.api-reports/api-report-react_context.api.md

+2
Original file line numberDiff line numberDiff line change
@@ -1346,7 +1346,9 @@ interface QueryDataOptions<TData = any, TVariables extends OperationVariables =
13461346
interface QueryFunctionOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
13471347
// @internal (undocumented)
13481348
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1349+
// @deprecated
13491350
onCompleted?: (data: MaybeMasked<TData>) => void;
1351+
// @deprecated
13501352
onError?: (error: ApolloError) => void;
13511353
skip?: boolean;
13521354
}

.api-reports/api-report-react_hooks.api.md

+4
Original file line numberDiff line numberDiff line change
@@ -997,7 +997,9 @@ interface LazyQueryHookExecOptions<TData = any, TVariables extends OperationVari
997997
interface LazyQueryHookOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
998998
// @internal (undocumented)
999999
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1000+
// @deprecated
10001001
onCompleted?: (data: MaybeMasked<TData>) => void;
1002+
// @deprecated
10011003
onError?: (error: ApolloError) => void;
10021004
}
10031005

@@ -1469,7 +1471,9 @@ const QUERY_REF_BRAND: unique symbol;
14691471
interface QueryFunctionOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
14701472
// @internal (undocumented)
14711473
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1474+
// @deprecated
14721475
onCompleted?: (data: MaybeMasked<TData>) => void;
1476+
// @deprecated
14731477
onError?: (error: ApolloError) => void;
14741478
skip?: boolean;
14751479
}

.api-reports/api-report-react_internal.api.md

+2
Original file line numberDiff line numberDiff line change
@@ -1566,7 +1566,9 @@ const QUERY_REFERENCE_SYMBOL: unique symbol;
15661566
interface QueryFunctionOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
15671567
// @internal (undocumented)
15681568
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1569+
// @deprecated
15691570
onCompleted?: (data: MaybeMasked<TData>) => void;
1571+
// @deprecated
15701572
onError?: (error: ApolloError) => void;
15711573
skip?: boolean;
15721574
}

.api-reports/api-report-react_ssr.api.md

+2
Original file line numberDiff line numberDiff line change
@@ -1331,7 +1331,9 @@ interface QueryDataOptions<TData = any, TVariables extends OperationVariables =
13311331
interface QueryFunctionOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
13321332
// @internal (undocumented)
13331333
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1334+
// @deprecated
13341335
onCompleted?: (data: MaybeMasked<TData>) => void;
1336+
// @deprecated
13351337
onError?: (error: ApolloError) => void;
13361338
skip?: boolean;
13371339
}

.api-reports/api-report.api.md

+4
Original file line numberDiff line numberDiff line change
@@ -1465,7 +1465,9 @@ export interface LazyQueryHookExecOptions<TData = any, TVariables extends Operat
14651465
export interface LazyQueryHookOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
14661466
// @internal (undocumented)
14671467
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
1468+
// @deprecated
14681469
onCompleted?: (data: MaybeMasked<TData>) => void;
1470+
// @deprecated
14691471
onError?: (error: ApolloError) => void;
14701472
}
14711473

@@ -2180,7 +2182,9 @@ export interface QueryDataOptions<TData = any, TVariables extends OperationVaria
21802182
export interface QueryFunctionOptions<TData = any, TVariables extends OperationVariables = OperationVariables> extends BaseQueryOptions<TVariables, TData> {
21812183
// @internal (undocumented)
21822184
defaultOptions?: Partial<WatchQueryOptions<TVariables, TData>>;
2185+
// @deprecated
21832186
onCompleted?: (data: MaybeMasked<TData>) => void;
2187+
// @deprecated
21842188
onError?: (error: ApolloError) => void;
21852189
skip?: boolean;
21862190
}

.changeset/heavy-pumas-boil.md

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"@apollo/client": minor
3+
---
4+
5+
Deprecate the `onCompleted` and `onError` callbacks of `useQuery` and `useLazyQuery`.
6+
For more context, please see the [related issue](https://github.com/apollographql/apollo-client/issues/12352) on GitHub.

src/react/types/types.ts

+24-4
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,19 @@ export interface QueryFunctionOptions<
6868
> extends BaseQueryOptions<TVariables, TData> {
6969
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#skip:member} */
7070
skip?: boolean;
71-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#onCompleted:member} */
71+
/**
72+
* {@inheritDoc @apollo/client!QueryOptionsDocumentation#onCompleted:member}
73+
*
74+
* @deprecated This option will be removed in the next major version of Apollo Client.
75+
* For more context, please see the [related issue](https://github.com/apollographql/apollo-client/issues/12352) on GitHub.
76+
*/
7277
onCompleted?: (data: MaybeMasked<TData>) => void;
73-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#onError:member} */
78+
/**
79+
* {@inheritDoc @apollo/client!QueryOptionsDocumentation#onError:member}
80+
*
81+
* @deprecated This option will be removed in the next major version of Apollo Client.
82+
* For more context, please see the [related issue](https://github.com/apollographql/apollo-client/issues/12352) on GitHub.
83+
*/
7484
onError?: (error: ApolloError) => void;
7585

7686
// Default WatchQueryOptions for this useQuery, providing initial values for
@@ -167,9 +177,19 @@ export interface LazyQueryHookOptions<
167177
TData = any,
168178
TVariables extends OperationVariables = OperationVariables,
169179
> extends BaseQueryOptions<TVariables, TData> {
170-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#onCompleted:member} */
180+
/**
181+
* {@inheritDoc @apollo/client!QueryOptionsDocumentation#onCompleted:member}
182+
*
183+
* @deprecated This option will be removed in the next major version of Apollo Client.
184+
* For more context, please see the [related issue](https://github.com/apollographql/apollo-client/issues/12352) on GitHub.
185+
*/
171186
onCompleted?: (data: MaybeMasked<TData>) => void;
172-
/** {@inheritDoc @apollo/client!QueryOptionsDocumentation#onError:member} */
187+
/**
188+
* {@inheritDoc @apollo/client!QueryOptionsDocumentation#onError:member}
189+
*
190+
* @deprecated This option will be removed in the next major version of Apollo Client.
191+
* For more context, please see the [related issue](https://github.com/apollographql/apollo-client/issues/12352) on GitHub.
192+
*/
173193
onError?: (error: ApolloError) => void;
174194

175195
/** @internal */

0 commit comments

Comments
 (0)