Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .api-reports/api-report-core.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -668,7 +668,7 @@ export type InternalRefetchQueriesInclude = InternalRefetchQueryDescriptor[] | R
export type InternalRefetchQueriesMap<TResult> = Map<ObservableQuery<any>, InternalRefetchQueriesResult<TResult>>;

// @public (undocumented)
export interface InternalRefetchQueriesOptions<TCache extends ApolloCache, TResult> extends Omit<ApolloClient.RefetchQueriesOptions<TCache, TResult>, "include"> {
export interface InternalRefetchQueriesOptions<TCache extends Cache_2.Implementation, TResult> extends Omit<ApolloClient.RefetchQueriesOptions<TCache, TResult>, "include"> {
// (undocumented)
include?: InternalRefetchQueriesInclude;
// (undocumented)
Expand Down
7 changes: 3 additions & 4 deletions .api-reports/api-report-react.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
```ts

import type { ApolloCache } from '@apollo/client/cache';
import type { ApolloCache as ApolloCache_2 } from '@apollo/client';
import type { ApolloClient } from '@apollo/client';
import type { Cache as Cache_2 } from '@apollo/client/cache';
import type { DataState } from '@apollo/client';
Expand Down Expand Up @@ -131,16 +130,16 @@ type MakeRequiredVariablesOptional<TVariables extends OperationVariables, TConfi
} & Omit<TVariables, keyof TConfiguredVariables>>;

// @public @deprecated (undocumented)
export type MutationFunctionOptions<TData = unknown, TVariables extends OperationVariables = OperationVariables, _TContext = DefaultContext, TCache extends ApolloCache_2 = ApolloCache_2> = useMutation.MutationFunctionOptions<TData, TVariables, TCache>;
export type MutationFunctionOptions<TData = unknown, TVariables extends OperationVariables = OperationVariables, _TContext = DefaultContext, TCache extends Cache_2.Implementation = Cache_2.Implementation> = useMutation.MutationFunctionOptions<TData, TVariables, TCache>;

// @public @deprecated (undocumented)
export type MutationHookOptions<TData = unknown, TVariables extends OperationVariables = OperationVariables, _TContext = DefaultContext, TCache extends ApolloCache_2 = ApolloCache_2> = useMutation.Options<TData, TVariables, TCache>;
export type MutationHookOptions<TData = unknown, TVariables extends OperationVariables = OperationVariables, _TContext = DefaultContext, TCache extends Cache_2.Implementation = Cache_2.Implementation> = useMutation.Options<TData, TVariables, TCache>;

// @public @deprecated (undocumented)
export type MutationResult<TData = unknown> = useMutation.Result<TData>;

// @public @deprecated (undocumented)
export type MutationTuple<TData, TVariables extends OperationVariables, _TContext = DefaultContext, TCache extends ApolloCache_2 = ApolloCache_2> = useMutation.ResultTuple<TData, TVariables, TCache>;
export type MutationTuple<TData, TVariables extends OperationVariables, _TContext = DefaultContext, TCache extends Cache_2.Implementation = Cache_2.Implementation> = useMutation.ResultTuple<TData, TVariables, TCache>;

// @public @deprecated (undocumented)
export type OnDataOptions<TData = unknown> = useSubscription.OnDataOptions<TData>;
Expand Down
2 changes: 1 addition & 1 deletion .api-reports/api-report.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -1646,7 +1646,7 @@ export type InternalRefetchQueriesInclude = InternalRefetchQueryDescriptor[] | R
export type InternalRefetchQueriesMap<TResult> = Map<ObservableQuery<any>, InternalRefetchQueriesResult<TResult>>;

// @public (undocumented)
export interface InternalRefetchQueriesOptions<TCache extends ApolloCache, TResult> extends Omit<ApolloClient.RefetchQueriesOptions<TCache, TResult>, "include"> {
export interface InternalRefetchQueriesOptions<TCache extends Cache_2.Implementation, TResult> extends Omit<ApolloClient.RefetchQueriesOptions<TCache, TResult>, "include"> {
// (undocumented)
include?: InternalRefetchQueriesInclude;
// (undocumented)
Expand Down
5 changes: 5 additions & 0 deletions .changeset/tidy-cache-type-constraints.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@apollo/client": patch
---

Align the remaining cache generic constraints with `Cache.Implementation`. The deprecated React mutation types (`MutationHookOptions`, `MutationFunctionOptions`, `MutationTuple`) and the internal `InternalRefetchQueriesOptions` and `QueryInfo` types still constrained their cache type parameter to `ApolloCache`, so they now match the rest of the overridable cache API.
8 changes: 4 additions & 4 deletions .size-limits.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\" (CJS)": 47873,
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\" (production) (CJS)": 42183,
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\"": 35925,
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\" (production)": 29449
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\" (CJS)": 47998,
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\" (production) (CJS)": 42268,
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\"": 35960,
"import { ApolloClient, InMemoryCache, HttpLink } from \"@apollo/client\" (production)": 29486
}
2 changes: 1 addition & 1 deletion src/core/QueryInfo.ts
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ const queryInfoIds = new WeakMap<QueryManager, number>();
export class QueryInfo<
TData,
TVariables extends OperationVariables = OperationVariables,
TCache extends ApolloCache = ApolloCache,
TCache extends Cache.Implementation = Cache.Implementation,
> {
// TODO remove soon - this should be able to be handled by cancelling old operations before starting new ones
lastRequestId = 1;
Expand Down
3 changes: 1 addition & 2 deletions src/core/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import type {
ObservableNotification,
} from "rxjs";

import type { ApolloCache } from "@apollo/client/cache";
import type { Cache } from "@apollo/client/cache";
import type { ClientAwarenessLink } from "@apollo/client/link/client-awareness";
import type { Unmasked } from "@apollo/client/masking";
Expand Down Expand Up @@ -273,7 +272,7 @@ export type RefetchQueriesPromiseResults<TResult> =

// Used by QueryManager["refetchQueries"]
export interface InternalRefetchQueriesOptions<
TCache extends ApolloCache,
TCache extends Cache.Implementation,
TResult,
> extends Omit<ApolloClient.RefetchQueriesOptions<TCache, TResult>, "include"> {
// Just like the refetchQueries option for a mutation, an array of strings,
Expand Down
13 changes: 5 additions & 8 deletions src/react/types/deprecated.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
import type {
ApolloCache,
DefaultContext,
OperationVariables,
} from "@apollo/client";
import type { DefaultContext, OperationVariables } from "@apollo/client";
import type { Cache } from "@apollo/client/cache";

import type { useBackgroundQuery } from "../hooks/useBackgroundQuery.js";
import type { useFragment } from "../hooks/useFragment.js";
Expand Down Expand Up @@ -62,7 +59,7 @@ export type MutationHookOptions<
TData = unknown,
TVariables extends OperationVariables = OperationVariables,
_TContext = DefaultContext,
TCache extends ApolloCache = ApolloCache,
TCache extends Cache.Implementation = Cache.Implementation,
> = useMutation.Options<TData, TVariables, TCache>;

/** @deprecated Use `useMutation.Result` instead */
Expand All @@ -73,15 +70,15 @@ export type MutationFunctionOptions<
TData = unknown,
TVariables extends OperationVariables = OperationVariables,
_TContext = DefaultContext,
TCache extends ApolloCache = ApolloCache,
TCache extends Cache.Implementation = Cache.Implementation,
> = useMutation.MutationFunctionOptions<TData, TVariables, TCache>;

/** @deprecated Use `useMutation.ResultTuple` instead */
export type MutationTuple<
TData,
TVariables extends OperationVariables,
_TContext = DefaultContext,
TCache extends ApolloCache = ApolloCache,
TCache extends Cache.Implementation = Cache.Implementation,
> = useMutation.ResultTuple<TData, TVariables, TCache>;

/** @deprecated Use `useSubscription.Result` instead */
Expand Down
Loading