@apollo/client 3.12.0-rc.4 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/README.md +2 -0
  3. package/apollo-client.cjs +1 -1
  4. package/apollo-client.cjs.map +1 -1
  5. package/apollo-client.min.cjs +1 -1
  6. package/config/jest/setup.js +0 -2
  7. package/config/jest/setup.js.map +1 -1
  8. package/core/core.cjs +1 -1
  9. package/core/core.cjs.map +1 -1
  10. package/core/core.cjs.native.js +1 -1
  11. package/dev/dev.cjs +1 -1
  12. package/dev/dev.cjs.map +1 -1
  13. package/dev/dev.cjs.native.js +1 -1
  14. package/package.json +8 -7
  15. package/react/internal/internal.cjs +1 -1
  16. package/react/internal/internal.cjs.map +1 -1
  17. package/react/internal/internal.cjs.native.js +1 -1
  18. package/testing/internal/disposables/index.d.ts +0 -1
  19. package/testing/internal/disposables/index.js +0 -1
  20. package/testing/internal/disposables/index.js.map +1 -1
  21. package/testing/internal/index.d.ts +4 -1
  22. package/testing/internal/index.js +4 -1
  23. package/testing/internal/index.js.map +1 -1
  24. package/testing/internal/rtl/actAsync.d.ts +2 -0
  25. package/testing/internal/rtl/actAsync.js +21 -0
  26. package/testing/internal/rtl/actAsync.js.map +1 -0
  27. package/testing/internal/rtl/renderAsync.d.ts +9 -0
  28. package/testing/internal/rtl/renderAsync.js +23 -0
  29. package/testing/internal/rtl/renderAsync.js.map +1 -0
  30. package/testing/internal/rtl/renderHookAsync.d.ts +8 -0
  31. package/testing/internal/rtl/renderHookAsync.js +45 -0
  32. package/testing/internal/rtl/renderHookAsync.js.map +1 -0
  33. package/testing/internal/scenarios/index.d.ts +9 -0
  34. package/testing/internal/scenarios/index.js +9 -2
  35. package/testing/internal/scenarios/index.js.map +1 -1
  36. package/utilities/globals/globals.cjs +1 -1
  37. package/utilities/globals/globals.cjs.map +1 -1
  38. package/utilities/globals/globals.cjs.native.js +1 -1
  39. package/version.js +1 -1
  40. package/.changeset/brown-readers-smash.md +0 -5
  41. package/.changeset/clean-turkeys-kick.md +0 -5
  42. package/.changeset/cold-apes-bow.md +0 -5
  43. package/.changeset/early-bobcats-eat.md +0 -5
  44. package/.changeset/flat-beans-knock.md +0 -15
  45. package/.changeset/gorgeous-zebras-confess.md +0 -5
  46. package/.changeset/happy-months-happen.md +0 -5
  47. package/.changeset/itchy-penguins-worry.md +0 -5
  48. package/.changeset/kind-toys-tie.md +0 -5
  49. package/.changeset/long-zoos-ring.md +0 -5
  50. package/.changeset/mean-bottles-travel.md +0 -5
  51. package/.changeset/nasty-camels-pay.md +0 -36
  52. package/.changeset/nervous-owls-hear.md +0 -5
  53. package/.changeset/nice-countries-share.md +0 -5
  54. package/.changeset/perfect-jobs-flow.md +0 -5
  55. package/.changeset/pre.json +0 -27
  56. package/.changeset/slimy-points-end.md +0 -5
  57. package/.changeset/small-bears-confess.md +0 -5
  58. package/.changeset/wicked-pans-appear.md +0 -5
  59. package/testing/internal/disposables/disableActWarnings.d.ts +0 -9
  60. package/testing/internal/disposables/disableActWarnings.js +0 -15
  61. package/testing/internal/disposables/disableActWarnings.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actAsync.js","sourceRoot":"","sources":["../../../../src/testing/internal/rtl/actAsync.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,iFAAiF;AACjF,sEAAsE;AACtE,yEAAyE;AACzE,yEAAyE;;AAEzE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,wBAAwB,MAAM,sBAAsB,CAAC;AAEjE,IAAM,QAAQ,GACZ,OAAO,KAAK,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC;AAE7E,MAAM,UAAU,QAAQ,CAAI,KAA2B;IAAvD,iBAIC;IAHC,OAAO,QAAQ,CAAC;;;wBACP,qBAAM,KAAK,EAAE,EAAA;wBAApB,sBAAO,SAAa,EAAC;;;SACtB,CAAC,CAAC;AACL,CAAC","sourcesContent":["// This is a helper required for React 19 testing.\n// There are currently multiple directions this could play out in RTL and none of\n// them has been released yet, so we are inlining this helper for now.\n// See https://github.com/testing-library/react-testing-library/pull/1214\n// and https://github.com/testing-library/react-testing-library/pull/1365\n\nimport * as React from \"react\";\nimport * as DeprecatedReactTestUtils from \"react-dom/test-utils\";\n\nconst reactAct =\n typeof React.act === \"function\" ? React.act : DeprecatedReactTestUtils.act;\n\nexport function actAsync<T>(scope: () => T | Promise<T>): Promise<T> {\n return reactAct(async () => {\n return await scope();\n });\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import type { queries, Queries } from "@testing-library/dom";
2
+ import type { RenderOptions, RenderResult } from "@testing-library/react";
3
+ import type * as ReactDOMClient from "react-dom/client";
4
+ type RendererableContainer = ReactDOMClient.Container;
5
+ type HydrateableContainer = Parameters<(typeof ReactDOMClient)["hydrateRoot"]>[0];
6
+ export declare function renderAsync<Q extends Queries = typeof queries, Container extends RendererableContainer | HydrateableContainer = HTMLElement, BaseElement extends RendererableContainer | HydrateableContainer = Container>(ui: React.ReactNode, options: RenderOptions<Q, Container, BaseElement>): Promise<RenderResult<Q, Container, BaseElement>>;
7
+ export declare function renderAsync(ui: React.ReactNode, options?: Omit<RenderOptions, "queries"> | undefined): Promise<RenderResult>;
8
+ export {};
9
+ //# sourceMappingURL=renderAsync.d.ts.map
@@ -0,0 +1,23 @@
1
+ // This is a helper required for React 19 testing.
2
+ // There are currently multiple directions this could play out in RTL and none of
3
+ // them has been released yet, so we are inlining this helper for now.
4
+ // See https://github.com/testing-library/react-testing-library/pull/1214
5
+ // and https://github.com/testing-library/react-testing-library/pull/1365
6
+ import { __awaiter, __generator } from "tslib";
7
+ import { act, render } from "@testing-library/react";
8
+ export function renderAsync() {
9
+ var _this = this;
10
+ var args = [];
11
+ for (var _i = 0; _i < arguments.length; _i++) {
12
+ args[_i] = arguments[_i];
13
+ }
14
+ return act(function () { return __awaiter(_this, void 0, void 0, function () {
15
+ return __generator(this, function (_a) {
16
+ switch (_a.label) {
17
+ case 0: return [4 /*yield*/, render.apply(void 0, args)];
18
+ case 1: return [2 /*return*/, _a.sent()];
19
+ }
20
+ });
21
+ }); });
22
+ }
23
+ //# sourceMappingURL=renderAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderAsync.js","sourceRoot":"","sources":["../../../../src/testing/internal/rtl/renderAsync.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,iFAAiF;AACjF,sEAAsE;AACtE,yEAAyE;AACzE,yEAAyE;;AAIzE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAqBrD,MAAM,UAAU,WAAW;IAA3B,iBAIC;IAJ2B,cAAmB;SAAnB,UAAmB,EAAnB,qBAAmB,EAAnB,IAAmB;QAAnB,yBAAmB;;IAC7C,OAAO,GAAG,CAAC;;;wBACF,qBAAM,MAAM,eAAI,IAAI,GAAC;wBAA5B,sBAAO,SAAqB,EAAC;;;SAC9B,CAAC,CAAC;AACL,CAAC","sourcesContent":["// This is a helper required for React 19 testing.\n// There are currently multiple directions this could play out in RTL and none of\n// them has been released yet, so we are inlining this helper for now.\n// See https://github.com/testing-library/react-testing-library/pull/1214\n// and https://github.com/testing-library/react-testing-library/pull/1365\n\nimport type { queries, Queries } from \"@testing-library/dom\";\nimport type { RenderOptions, RenderResult } from \"@testing-library/react\";\nimport { act, render } from \"@testing-library/react\";\nimport type * as ReactDOMClient from \"react-dom/client\";\n\ntype RendererableContainer = ReactDOMClient.Container;\ntype HydrateableContainer = Parameters<\n (typeof ReactDOMClient)[\"hydrateRoot\"]\n>[0];\n\nexport function renderAsync<\n Q extends Queries = typeof queries,\n Container extends RendererableContainer | HydrateableContainer = HTMLElement,\n BaseElement extends RendererableContainer | HydrateableContainer = Container,\n>(\n ui: React.ReactNode,\n options: RenderOptions<Q, Container, BaseElement>\n): Promise<RenderResult<Q, Container, BaseElement>>;\nexport function renderAsync(\n ui: React.ReactNode,\n options?: Omit<RenderOptions, \"queries\"> | undefined\n): Promise<RenderResult>;\n\nexport function renderAsync(...args: [any, any]): any {\n return act(async () => {\n return await render(...args);\n });\n}\n"]}
@@ -0,0 +1,8 @@
1
+ import type { queries, Queries } from "@testing-library/dom";
2
+ import type { RenderHookOptions, RenderHookResult } from "@testing-library/react";
3
+ import type * as ReactDOMClient from "react-dom/client";
4
+ type RendererableContainer = ReactDOMClient.Container;
5
+ type HydrateableContainer = Parameters<(typeof ReactDOMClient)["hydrateRoot"]>[0];
6
+ export declare function renderHookAsync<Result, Props, Q extends Queries = typeof queries, Container extends RendererableContainer | HydrateableContainer = HTMLElement, BaseElement extends RendererableContainer | HydrateableContainer = Container>(renderCallback: (initialProps: Props) => Result, options?: RenderHookOptions<Props, Q, Container, BaseElement> | undefined): Promise<RenderHookResult<Result, Props>>;
7
+ export {};
8
+ //# sourceMappingURL=renderHookAsync.d.ts.map
@@ -0,0 +1,45 @@
1
+ // This is a helper required for React 19 testing.
2
+ // There are currently multiple directions this could play out in RTL and none of
3
+ // them has been released yet, so we are inlining this helper for now.
4
+ // See https://github.com/testing-library/react-testing-library/pull/1214
5
+ // and https://github.com/testing-library/react-testing-library/pull/1365
6
+ import { __awaiter, __generator, __rest } from "tslib";
7
+ import * as ReactDOM from "react-dom";
8
+ import * as React from "react";
9
+ import { renderAsync } from "./renderAsync.js";
10
+ export function renderHookAsync(renderCallback_1) {
11
+ return __awaiter(this, arguments, void 0, function (renderCallback, options) {
12
+ function TestComponent(_a) {
13
+ var renderCallbackProps = _a.renderCallbackProps;
14
+ var pendingResult = renderCallback(renderCallbackProps);
15
+ React.useEffect(function () {
16
+ result.current = pendingResult;
17
+ });
18
+ return null;
19
+ }
20
+ function rerender(rerenderCallbackProps) {
21
+ return baseRerender(React.createElement(TestComponent, { renderCallbackProps: rerenderCallbackProps }));
22
+ }
23
+ var initialProps, renderOptions, error, result, _a, baseRerender, unmount;
24
+ if (options === void 0) { options = {}; }
25
+ return __generator(this, function (_b) {
26
+ switch (_b.label) {
27
+ case 0:
28
+ initialProps = options.initialProps, renderOptions = __rest(options, ["initialProps"]);
29
+ if (renderOptions.legacyRoot && typeof ReactDOM.render !== "function") {
30
+ error = new Error("`legacyRoot: true` is not supported in this version of React. " +
31
+ "If your app runs React 19 or later, you should remove this flag. " +
32
+ "If your app runs React 18 or earlier, visit https://react.dev/blog/2022/03/08/react-18-upgrade-guide for upgrade instructions.");
33
+ Error.captureStackTrace(error, renderHookAsync);
34
+ throw error;
35
+ }
36
+ result = React.createRef();
37
+ return [4 /*yield*/, renderAsync(React.createElement(TestComponent, { renderCallbackProps: initialProps }), renderOptions)];
38
+ case 1:
39
+ _a = _b.sent(), baseRerender = _a.rerender, unmount = _a.unmount;
40
+ return [2 /*return*/, { result: result, rerender: rerender, unmount: unmount }];
41
+ }
42
+ });
43
+ });
44
+ }
45
+ //# sourceMappingURL=renderHookAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderHookAsync.js","sourceRoot":"","sources":["../../../../src/testing/internal/rtl/renderHookAsync.tsx"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,iFAAiF;AACjF,sEAAsE;AACtE,yEAAyE;AACzE,yEAAyE;;AAQzE,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAO/C,MAAM,UAAgB,eAAe;wDAOnC,cAA+C,EAC/C,OAA6E;QAgB7E,SAAS,aAAa,CAAC,EAItB;gBAHC,mBAAmB,yBAAA;YAInB,IAAM,aAAa,GAAG,cAAc,CAAC,mBAAmB,CAAC,CAAC;YAE1D,KAAK,CAAC,SAAS,CAAC;gBACd,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC;YACjC,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;QAOD,SAAS,QAAQ,CAAC,qBAA6B;YAC7C,OAAO,YAAY,CACjB,oBAAC,aAAa,IAAC,mBAAmB,EAAE,qBAAsB,GAAI,CAC/D,CAAC;QACJ,CAAC;;QAvCD,wBAAA,EAAA,YAA6E;;;;oBAErE,YAAY,GAAuB,OAAO,aAA9B,EAAK,aAAa,UAAK,OAAO,EAA5C,gBAAkC,CAAF,CAAa;oBAEnD,IAAI,aAAa,CAAC,UAAU,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;wBAChE,KAAK,GAAG,IAAI,KAAK,CACrB,gEAAgE;4BAC9D,mEAAmE;4BACnE,gIAAgI,CACnI,CAAC;wBACF,KAAK,CAAC,iBAAiB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;wBAChD,MAAM,KAAK,CAAC;oBACd,CAAC;oBAEK,MAAM,GAAG,KAAK,CAAC,SAAS,EAAiC,CAAC;oBAgBpB,qBAAM,WAAW,CAC3D,oBAAC,aAAa,IAAC,mBAAmB,EAAE,YAAa,GAAI,EACrD,aAAa,CACd,EAAA;;oBAHK,KAAsC,SAG3C,EAHiB,YAAY,cAAA,EAAE,OAAO,aAAA;oBAWvC,sBAAO,EAAE,MAAM,QAAA,EAAE,QAAQ,UAAA,EAAE,OAAO,SAAA,EAAE,EAAC;;;;CACtC","sourcesContent":["// This is a helper required for React 19 testing.\n// There are currently multiple directions this could play out in RTL and none of\n// them has been released yet, so we are inlining this helper for now.\n// See https://github.com/testing-library/react-testing-library/pull/1214\n// and https://github.com/testing-library/react-testing-library/pull/1365\n\nimport type { queries, Queries } from \"@testing-library/dom\";\nimport type {\n RenderHookOptions,\n RenderHookResult,\n} from \"@testing-library/react\";\nimport type * as ReactDOMClient from \"react-dom/client\";\nimport * as ReactDOM from \"react-dom\";\nimport * as React from \"react\";\nimport { renderAsync } from \"./renderAsync.js\";\n\ntype RendererableContainer = ReactDOMClient.Container;\ntype HydrateableContainer = Parameters<\n (typeof ReactDOMClient)[\"hydrateRoot\"]\n>[0];\n\nexport async function renderHookAsync<\n Result,\n Props,\n Q extends Queries = typeof queries,\n Container extends RendererableContainer | HydrateableContainer = HTMLElement,\n BaseElement extends RendererableContainer | HydrateableContainer = Container,\n>(\n renderCallback: (initialProps: Props) => Result,\n options: RenderHookOptions<Props, Q, Container, BaseElement> | undefined = {}\n): Promise<RenderHookResult<Result, Props>> {\n const { initialProps, ...renderOptions } = options;\n\n if (renderOptions.legacyRoot && typeof ReactDOM.render !== \"function\") {\n const error = new Error(\n \"`legacyRoot: true` is not supported in this version of React. \" +\n \"If your app runs React 19 or later, you should remove this flag. \" +\n \"If your app runs React 18 or earlier, visit https://react.dev/blog/2022/03/08/react-18-upgrade-guide for upgrade instructions.\"\n );\n Error.captureStackTrace(error, renderHookAsync);\n throw error;\n }\n\n const result = React.createRef<Result>() as { current: Result };\n\n function TestComponent({\n renderCallbackProps,\n }: {\n renderCallbackProps: Props;\n }) {\n const pendingResult = renderCallback(renderCallbackProps);\n\n React.useEffect(() => {\n result.current = pendingResult;\n });\n\n return null;\n }\n\n const { rerender: baseRerender, unmount } = await renderAsync(\n <TestComponent renderCallbackProps={initialProps!} />,\n renderOptions\n );\n\n function rerender(rerenderCallbackProps?: Props) {\n return baseRerender(\n <TestComponent renderCallbackProps={rerenderCallbackProps!} />\n );\n }\n\n return { result, rerender, unmount };\n}\n"]}
@@ -51,6 +51,15 @@ export declare function setupMaskedVariablesCase(): {
51
51
  query: MaskedDocumentNode<MaskedVariablesCaseData, VariablesCaseVariables>;
52
52
  unmaskedQuery: TypedDocumentNode<MaskedVariablesCaseData, VariablesCaseVariables>;
53
53
  };
54
+ export declare function addDelayToMocks<T extends MockedResponse<unknown>[]>(mocks: T, delay?: number, override?: boolean): {
55
+ delay: number;
56
+ request: import("../../../core/index.js").GraphQLRequest<Record<string, any>>;
57
+ maxUsageCount?: number;
58
+ result?: import("../../../core/index.js").FetchResult<unknown> | import("../../core/index.js").ResultFunction<import("../../../core/index.js").FetchResult<unknown>, Record<string, any>> | undefined;
59
+ error?: Error;
60
+ variableMatcher?: import("../../core/mocking/mockLink.js").VariableMatcher<Record<string, any>> | undefined;
61
+ newData?: import("../../core/index.js").ResultFunction<import("../../../core/index.js").FetchResult<unknown>, Record<string, any>> | undefined;
62
+ }[];
54
63
  interface Letter {
55
64
  letter: string;
56
65
  position: number;
@@ -1,4 +1,4 @@
1
- import { __makeTemplateObject, __spreadArray } from "tslib";
1
+ import { __assign, __makeTemplateObject, __spreadArray } from "tslib";
2
2
  import { ApolloLink, Observable, gql } from "../../../core/index.js";
3
3
  export function setupSimpleCase() {
4
4
  var query = gql(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n query GreetingQuery {\n greeting\n }\n "], ["\n query GreetingQuery {\n greeting\n }\n "])));
@@ -6,7 +6,7 @@ export function setupSimpleCase() {
6
6
  {
7
7
  request: { query: query },
8
8
  result: { data: { greeting: "Hello" } },
9
- delay: 10,
9
+ delay: 20,
10
10
  },
11
11
  ];
12
12
  return { query: query, mocks: mocks };
@@ -41,6 +41,13 @@ export function setupMaskedVariablesCase() {
41
41
  }); });
42
42
  return { mocks: mocks, query: query, unmaskedQuery: unmaskedQuery };
43
43
  }
44
+ export function addDelayToMocks(mocks, delay, override) {
45
+ if (delay === void 0) { delay = 150; }
46
+ if (override === void 0) { override = false; }
47
+ return mocks.map(function (mock) {
48
+ return override ? __assign(__assign({}, mock), { delay: delay }) : __assign({ delay: delay }, mock);
49
+ });
50
+ }
44
51
  export function setupPaginatedCase() {
45
52
  var query = gql(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n query LettersQuery($limit: Int, $offset: Int) {\n letters(limit: $limit, offset: $offset) {\n letter\n position\n }\n }\n "], ["\n query LettersQuery($limit: Int, $offset: Int) {\n letters(limit: $limit, offset: $offset) {\n letter\n position\n }\n }\n "])));
46
53
  var data = "ABCDEFGHIJKLMNOPQRSTUV".split("").map(function (letter, index) { return ({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/testing/internal/scenarios/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { ApolloLink, Observable, gql } from \"../../../core/index.js\";\nimport type { TypedDocumentNode } from \"../../../core/index.js\";\nimport type { MaskedDocumentNode } from \"../../../masking/index.js\";\nimport type { MockedResponse } from \"../../core/index.js\";\n\nexport interface SimpleCaseData {\n greeting: string;\n}\n\nexport function setupSimpleCase() {\n const query: TypedDocumentNode<SimpleCaseData, Record<string, never>> = gql`\n query GreetingQuery {\n greeting\n }\n `;\n\n const mocks: MockedResponse<SimpleCaseData>[] = [\n {\n request: { query },\n result: { data: { greeting: \"Hello\" } },\n delay: 10,\n },\n ];\n\n return { query, mocks };\n}\n\nexport interface VariablesCaseData {\n character: {\n __typename: \"Character\";\n id: string;\n name: string;\n };\n}\n\nexport interface VariablesCaseVariables {\n id: string;\n}\n\nexport function setupVariablesCase() {\n const query: TypedDocumentNode<VariablesCaseData, VariablesCaseVariables> =\n gql`\n query CharacterQuery($id: ID!) {\n character(id: $id) {\n id\n name\n }\n }\n `;\n const CHARACTERS = [\"Spider-Man\", \"Black Widow\", \"Iron Man\", \"Hulk\"];\n\n const mocks: MockedResponse<VariablesCaseData>[] = [...CHARACTERS].map(\n (name, index) => ({\n request: { query, variables: { id: String(index + 1) } },\n result: {\n data: {\n character: { __typename: \"Character\", id: String(index + 1), name },\n },\n },\n delay: 20,\n })\n );\n\n return { mocks, query };\n}\n\nexport type MaskedVariablesCaseFragment = {\n __typename: \"Character\";\n name: string;\n} & { \" $fragmentName\"?: \"MaskedVariablesCaseFragment\" };\n\nexport interface MaskedVariablesCaseData {\n character: {\n __typename: \"Character\";\n id: string;\n } & {\n \" $fragmentRefs\"?: {\n MaskedVariablesCaseFragment: MaskedVariablesCaseFragment;\n };\n };\n}\n\nexport interface UnmaskedVariablesCaseData {\n character: {\n __typename: \"Character\";\n id: string;\n name: string;\n };\n}\n\nexport function setupMaskedVariablesCase() {\n const document = gql`\n query CharacterQuery($id: ID!) {\n character(id: $id) {\n id\n ...CharacterFragment\n }\n }\n\n fragment CharacterFragment on Character {\n name\n }\n `;\n const query: MaskedDocumentNode<\n MaskedVariablesCaseData,\n VariablesCaseVariables\n > = document;\n\n const unmaskedQuery: TypedDocumentNode<\n MaskedVariablesCaseData,\n VariablesCaseVariables\n > = document;\n\n const CHARACTERS = [\"Spider-Man\", \"Black Widow\", \"Iron Man\", \"Hulk\"];\n\n const mocks: MockedResponse<MaskedVariablesCaseData>[] = [...CHARACTERS].map(\n (name, index) => ({\n request: { query, variables: { id: String(index + 1) } },\n result: {\n data: {\n character: { __typename: \"Character\", id: String(index + 1), name },\n },\n },\n delay: 20,\n })\n );\n\n return { mocks, query, unmaskedQuery };\n}\n\ninterface Letter {\n letter: string;\n position: number;\n}\n\nexport interface PaginatedCaseData {\n letters: Letter[];\n}\n\nexport interface PaginatedCaseVariables {\n limit?: number;\n offset?: number;\n}\n\nexport function setupPaginatedCase() {\n const query: TypedDocumentNode<PaginatedCaseData, PaginatedCaseVariables> =\n gql`\n query LettersQuery($limit: Int, $offset: Int) {\n letters(limit: $limit, offset: $offset) {\n letter\n position\n }\n }\n `;\n\n const data = \"ABCDEFGHIJKLMNOPQRSTUV\".split(\"\").map((letter, index) => ({\n __typename: \"Letter\",\n letter,\n position: index + 1,\n }));\n\n const link = new ApolloLink((operation) => {\n const { offset = 0, limit = 2 } = operation.variables;\n const letters = data.slice(offset, offset + limit);\n\n return new Observable((observer) => {\n setTimeout(() => {\n observer.next({ data: { letters } });\n observer.complete();\n }, 10);\n });\n });\n\n return { query, link, data };\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/testing/internal/scenarios/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { ApolloLink, Observable, gql } from \"../../../core/index.js\";\nimport type { TypedDocumentNode } from \"../../../core/index.js\";\nimport type { MaskedDocumentNode } from \"../../../masking/index.js\";\nimport type { MockedResponse } from \"../../core/index.js\";\n\nexport interface SimpleCaseData {\n greeting: string;\n}\n\nexport function setupSimpleCase() {\n const query: TypedDocumentNode<SimpleCaseData, Record<string, never>> = gql`\n query GreetingQuery {\n greeting\n }\n `;\n\n const mocks: MockedResponse<SimpleCaseData>[] = [\n {\n request: { query },\n result: { data: { greeting: \"Hello\" } },\n delay: 20,\n },\n ];\n\n return { query, mocks };\n}\n\nexport interface VariablesCaseData {\n character: {\n __typename: \"Character\";\n id: string;\n name: string;\n };\n}\n\nexport interface VariablesCaseVariables {\n id: string;\n}\n\nexport function setupVariablesCase() {\n const query: TypedDocumentNode<VariablesCaseData, VariablesCaseVariables> =\n gql`\n query CharacterQuery($id: ID!) {\n character(id: $id) {\n id\n name\n }\n }\n `;\n const CHARACTERS = [\"Spider-Man\", \"Black Widow\", \"Iron Man\", \"Hulk\"];\n\n const mocks: MockedResponse<VariablesCaseData>[] = [...CHARACTERS].map(\n (name, index) => ({\n request: { query, variables: { id: String(index + 1) } },\n result: {\n data: {\n character: { __typename: \"Character\", id: String(index + 1), name },\n },\n },\n delay: 20,\n })\n );\n\n return { mocks, query };\n}\n\nexport type MaskedVariablesCaseFragment = {\n __typename: \"Character\";\n name: string;\n} & { \" $fragmentName\"?: \"MaskedVariablesCaseFragment\" };\n\nexport interface MaskedVariablesCaseData {\n character: {\n __typename: \"Character\";\n id: string;\n } & {\n \" $fragmentRefs\"?: {\n MaskedVariablesCaseFragment: MaskedVariablesCaseFragment;\n };\n };\n}\n\nexport interface UnmaskedVariablesCaseData {\n character: {\n __typename: \"Character\";\n id: string;\n name: string;\n };\n}\n\nexport function setupMaskedVariablesCase() {\n const document = gql`\n query CharacterQuery($id: ID!) {\n character(id: $id) {\n id\n ...CharacterFragment\n }\n }\n\n fragment CharacterFragment on Character {\n name\n }\n `;\n const query: MaskedDocumentNode<\n MaskedVariablesCaseData,\n VariablesCaseVariables\n > = document;\n\n const unmaskedQuery: TypedDocumentNode<\n MaskedVariablesCaseData,\n VariablesCaseVariables\n > = document;\n\n const CHARACTERS = [\"Spider-Man\", \"Black Widow\", \"Iron Man\", \"Hulk\"];\n\n const mocks: MockedResponse<MaskedVariablesCaseData>[] = [...CHARACTERS].map(\n (name, index) => ({\n request: { query, variables: { id: String(index + 1) } },\n result: {\n data: {\n character: { __typename: \"Character\", id: String(index + 1), name },\n },\n },\n delay: 20,\n })\n );\n\n return { mocks, query, unmaskedQuery };\n}\n\nexport function addDelayToMocks<T extends MockedResponse<unknown>[]>(\n mocks: T,\n delay = 150,\n override = false\n) {\n return mocks.map((mock) =>\n override ? { ...mock, delay } : { delay, ...mock }\n );\n}\n\ninterface Letter {\n letter: string;\n position: number;\n}\n\nexport interface PaginatedCaseData {\n letters: Letter[];\n}\n\nexport interface PaginatedCaseVariables {\n limit?: number;\n offset?: number;\n}\n\nexport function setupPaginatedCase() {\n const query: TypedDocumentNode<PaginatedCaseData, PaginatedCaseVariables> =\n gql`\n query LettersQuery($limit: Int, $offset: Int) {\n letters(limit: $limit, offset: $offset) {\n letter\n position\n }\n }\n `;\n\n const data = \"ABCDEFGHIJKLMNOPQRSTUV\".split(\"\").map((letter, index) => ({\n __typename: \"Letter\",\n letter,\n position: index + 1,\n }));\n\n const link = new ApolloLink((operation) => {\n const { offset = 0, limit = 2 } = operation.variables;\n const letters = data.slice(offset, offset + limit);\n\n return new Observable((observer) => {\n setTimeout(() => {\n observer.next({ data: { letters } });\n observer.complete();\n }, 10);\n });\n });\n\n return { query, link, data };\n}\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tsInvariant = require('ts-invariant');
6
6
 
7
- var version = "3.12.0-rc.4";
7
+ var version = "3.12.0";
8
8
 
9
9
  function maybe(thunk) {
10
10
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"globals.cjs","sources":["../../version.js","maybe.js","global.js","../common/makeUniqueId.js","../common/stringifyForDisplay.js","invariantWrappers.js","index.js"],"sourcesContent":["export var version = \"3.12.0-rc.4\";\n//# sourceMappingURL=version.js.map","export function maybe(thunk) {\n try {\n return thunk();\n }\n catch (_a) { }\n}\n//# sourceMappingURL=maybe.js.map","import { maybe } from \"./maybe.js\";\nexport default (maybe(function () { return globalThis; }) ||\n maybe(function () { return window; }) ||\n maybe(function () { return self; }) ||\n maybe(function () { return global; }) || // We don't expect the Function constructor ever to be invoked at runtime, as\n// long as at least one of globalThis, window, self, or global is defined, so\n// we are under no obligation to make it easy for static analysis tools to\n// detect syntactic usage of the Function constructor. If you think you can\n// improve your static analysis to detect this obfuscation, think again. This\n// is an arms race you cannot win, at least not in JavaScript.\nmaybe(function () {\n return maybe.constructor(\"return this\")();\n}));\n//# sourceMappingURL=global.js.map","var prefixCounts = new Map();\n// These IDs won't be globally unique, but they will be unique within this\n// process, thanks to the counter, and unguessable thanks to the random suffix.\nexport function makeUniqueId(prefix) {\n var count = prefixCounts.get(prefix) || 1;\n prefixCounts.set(prefix, count + 1);\n return \"\".concat(prefix, \":\").concat(count, \":\").concat(Math.random().toString(36).slice(2));\n}\n//# sourceMappingURL=makeUniqueId.js.map","import { makeUniqueId } from \"./makeUniqueId.js\";\nexport function stringifyForDisplay(value, space) {\n if (space === void 0) { space = 0; }\n var undefId = makeUniqueId(\"stringifyForDisplay\");\n return JSON.stringify(value, function (key, value) {\n return value === void 0 ? undefId : value;\n }, space)\n .split(JSON.stringify(undefId))\n .join(\"<undefined>\");\n}\n//# sourceMappingURL=stringifyForDisplay.js.map","import { invariant as originalInvariant, InvariantError } from \"ts-invariant\";\nimport { version } from \"../../version.js\";\nimport global from \"./global.js\";\nimport { stringifyForDisplay } from \"../common/stringifyForDisplay.js\";\nfunction wrap(fn) {\n return function (message) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n if (typeof message === \"number\") {\n var arg0 = message;\n message = getHandledErrorMsg(arg0);\n if (!message) {\n message = getFallbackErrorMsg(arg0, args);\n args = [];\n }\n }\n fn.apply(void 0, [message].concat(args));\n };\n}\nvar invariant = Object.assign(function invariant(condition, message) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n if (!condition) {\n originalInvariant(condition, getHandledErrorMsg(message, args) || getFallbackErrorMsg(message, args));\n }\n}, {\n debug: wrap(originalInvariant.debug),\n log: wrap(originalInvariant.log),\n warn: wrap(originalInvariant.warn),\n error: wrap(originalInvariant.error),\n});\n/**\n * Returns an InvariantError.\n *\n * `message` can only be a string, a concatenation of strings, or a ternary statement\n * that results in a string. This will be enforced on build, where the message will\n * be replaced with a message number.\n * String substitutions with %s are supported and will also return\n * pretty-stringified objects.\n * Excess `optionalParams` will be swallowed.\n */\nfunction newInvariantError(message) {\n var optionalParams = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n optionalParams[_i - 1] = arguments[_i];\n }\n return new InvariantError(getHandledErrorMsg(message, optionalParams) ||\n getFallbackErrorMsg(message, optionalParams));\n}\nvar ApolloErrorMessageHandler = Symbol.for(\"ApolloErrorMessageHandler_\" + version);\nfunction stringify(arg) {\n if (typeof arg == \"string\") {\n return arg;\n }\n try {\n return stringifyForDisplay(arg, 2).slice(0, 1000);\n }\n catch (_a) {\n return \"<non-serializable>\";\n }\n}\nfunction getHandledErrorMsg(message, messageArgs) {\n if (messageArgs === void 0) { messageArgs = []; }\n if (!message)\n return;\n return (global[ApolloErrorMessageHandler] &&\n global[ApolloErrorMessageHandler](message, messageArgs.map(stringify)));\n}\nfunction getFallbackErrorMsg(message, messageArgs) {\n if (messageArgs === void 0) { messageArgs = []; }\n if (!message)\n return;\n return \"An error occurred! For more details, see the full error text at https://go.apollo.dev/c/err#\".concat(encodeURIComponent(JSON.stringify({\n version: version,\n message: message,\n args: messageArgs.map(stringify),\n })));\n}\nexport { invariant, InvariantError, newInvariantError, ApolloErrorMessageHandler, };\n//# sourceMappingURL=invariantWrappers.js.map","import { invariant, newInvariantError, InvariantError, } from \"./invariantWrappers.js\";\nexport { maybe } from \"./maybe.js\";\nexport { default as global } from \"./global.js\";\nexport { invariant, newInvariantError, InvariantError };\n/**\n * @deprecated we do not use this internally anymore,\n * it is just exported for backwards compatibility\n */\n// this file is extempt from automatic `__DEV__` replacement\n// so we have to write it out here\n// @ts-ignore\nexport var DEV = globalThis.__DEV__ !== false;\nexport { DEV as __DEV__ };\n//# sourceMappingURL=index.js.map"],"names":["originalInvariant","InvariantError","global"],"mappings":"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"}
1
+ {"version":3,"file":"globals.cjs","sources":["../../version.js","maybe.js","global.js","../common/makeUniqueId.js","../common/stringifyForDisplay.js","invariantWrappers.js","index.js"],"sourcesContent":["export var version = \"3.12.0\";\n//# sourceMappingURL=version.js.map","export function maybe(thunk) {\n try {\n return thunk();\n }\n catch (_a) { }\n}\n//# sourceMappingURL=maybe.js.map","import { maybe } from \"./maybe.js\";\nexport default (maybe(function () { return globalThis; }) ||\n maybe(function () { return window; }) ||\n maybe(function () { return self; }) ||\n maybe(function () { return global; }) || // We don't expect the Function constructor ever to be invoked at runtime, as\n// long as at least one of globalThis, window, self, or global is defined, so\n// we are under no obligation to make it easy for static analysis tools to\n// detect syntactic usage of the Function constructor. If you think you can\n// improve your static analysis to detect this obfuscation, think again. This\n// is an arms race you cannot win, at least not in JavaScript.\nmaybe(function () {\n return maybe.constructor(\"return this\")();\n}));\n//# sourceMappingURL=global.js.map","var prefixCounts = new Map();\n// These IDs won't be globally unique, but they will be unique within this\n// process, thanks to the counter, and unguessable thanks to the random suffix.\nexport function makeUniqueId(prefix) {\n var count = prefixCounts.get(prefix) || 1;\n prefixCounts.set(prefix, count + 1);\n return \"\".concat(prefix, \":\").concat(count, \":\").concat(Math.random().toString(36).slice(2));\n}\n//# sourceMappingURL=makeUniqueId.js.map","import { makeUniqueId } from \"./makeUniqueId.js\";\nexport function stringifyForDisplay(value, space) {\n if (space === void 0) { space = 0; }\n var undefId = makeUniqueId(\"stringifyForDisplay\");\n return JSON.stringify(value, function (key, value) {\n return value === void 0 ? undefId : value;\n }, space)\n .split(JSON.stringify(undefId))\n .join(\"<undefined>\");\n}\n//# sourceMappingURL=stringifyForDisplay.js.map","import { invariant as originalInvariant, InvariantError } from \"ts-invariant\";\nimport { version } from \"../../version.js\";\nimport global from \"./global.js\";\nimport { stringifyForDisplay } from \"../common/stringifyForDisplay.js\";\nfunction wrap(fn) {\n return function (message) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n if (typeof message === \"number\") {\n var arg0 = message;\n message = getHandledErrorMsg(arg0);\n if (!message) {\n message = getFallbackErrorMsg(arg0, args);\n args = [];\n }\n }\n fn.apply(void 0, [message].concat(args));\n };\n}\nvar invariant = Object.assign(function invariant(condition, message) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n if (!condition) {\n originalInvariant(condition, getHandledErrorMsg(message, args) || getFallbackErrorMsg(message, args));\n }\n}, {\n debug: wrap(originalInvariant.debug),\n log: wrap(originalInvariant.log),\n warn: wrap(originalInvariant.warn),\n error: wrap(originalInvariant.error),\n});\n/**\n * Returns an InvariantError.\n *\n * `message` can only be a string, a concatenation of strings, or a ternary statement\n * that results in a string. This will be enforced on build, where the message will\n * be replaced with a message number.\n * String substitutions with %s are supported and will also return\n * pretty-stringified objects.\n * Excess `optionalParams` will be swallowed.\n */\nfunction newInvariantError(message) {\n var optionalParams = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n optionalParams[_i - 1] = arguments[_i];\n }\n return new InvariantError(getHandledErrorMsg(message, optionalParams) ||\n getFallbackErrorMsg(message, optionalParams));\n}\nvar ApolloErrorMessageHandler = Symbol.for(\"ApolloErrorMessageHandler_\" + version);\nfunction stringify(arg) {\n if (typeof arg == \"string\") {\n return arg;\n }\n try {\n return stringifyForDisplay(arg, 2).slice(0, 1000);\n }\n catch (_a) {\n return \"<non-serializable>\";\n }\n}\nfunction getHandledErrorMsg(message, messageArgs) {\n if (messageArgs === void 0) { messageArgs = []; }\n if (!message)\n return;\n return (global[ApolloErrorMessageHandler] &&\n global[ApolloErrorMessageHandler](message, messageArgs.map(stringify)));\n}\nfunction getFallbackErrorMsg(message, messageArgs) {\n if (messageArgs === void 0) { messageArgs = []; }\n if (!message)\n return;\n return \"An error occurred! For more details, see the full error text at https://go.apollo.dev/c/err#\".concat(encodeURIComponent(JSON.stringify({\n version: version,\n message: message,\n args: messageArgs.map(stringify),\n })));\n}\nexport { invariant, InvariantError, newInvariantError, ApolloErrorMessageHandler, };\n//# sourceMappingURL=invariantWrappers.js.map","import { invariant, newInvariantError, InvariantError, } from \"./invariantWrappers.js\";\nexport { maybe } from \"./maybe.js\";\nexport { default as global } from \"./global.js\";\nexport { invariant, newInvariantError, InvariantError };\n/**\n * @deprecated we do not use this internally anymore,\n * it is just exported for backwards compatibility\n */\n// this file is extempt from automatic `__DEV__` replacement\n// so we have to write it out here\n// @ts-ignore\nexport var DEV = globalThis.__DEV__ !== false;\nexport { DEV as __DEV__ };\n//# sourceMappingURL=index.js.map"],"names":["originalInvariant","InvariantError","global"],"mappings":";;;;;;AAAO,IAAI,OAAO,GAAG,QAAQ;;ACAtB,SAAS,KAAK,CAAC,KAAK,EAAE;AAC7B,IAAI,IAAI;AACR,QAAQ,OAAO,KAAK,EAAE,CAAC;AACvB,KAAK;AACL,IAAI,OAAO,EAAE,EAAE,GAAG;AAClB;;ACJA,eAAe,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,UAAU,CAAC,EAAE,CAAC;AACzD,IAAI,KAAK,CAAC,YAAY,EAAE,OAAO,MAAM,CAAC,EAAE,CAAC;AACzC,IAAI,KAAK,CAAC,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;AACvC,IAAI,KAAK,CAAC,YAAY,EAAE,OAAO,MAAM,CAAC,EAAE,CAAC;AAMzC,KAAK,CAAC,YAAY;AAClB,IAAI,OAAO,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;AAC9C,CAAC,CAAC;;ACZF,IAAI,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;AAGtB,SAAS,YAAY,CAAC,MAAM,EAAE;AACrC,IAAI,IAAI,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9C,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;AACxC,IAAI,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACjG;;ACNO,SAAS,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE;AAClD,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE;AACxC,IAAI,IAAI,OAAO,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAC;AACtD,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,EAAE,KAAK,EAAE;AACvD,QAAQ,OAAO,KAAK,KAAK,KAAK,CAAC,GAAG,OAAO,GAAG,KAAK,CAAC;AAClD,KAAK,EAAE,KAAK,CAAC;AACb,SAAS,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACvC,SAAS,IAAI,CAAC,aAAa,CAAC,CAAC;AAC7B;;ACLA,SAAS,IAAI,CAAC,EAAE,EAAE;AAClB,IAAI,OAAO,UAAU,OAAO,EAAE;AAC9B,QAAQ,IAAI,IAAI,GAAG,EAAE,CAAC;AACtB,QAAQ,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;AACtD,YAAY,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;AACzC,SAAS;AACT,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;AACzC,YAAY,IAAI,IAAI,GAAG,OAAO,CAAC;AAC/B,YAAY,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAC/C,YAAY,IAAI,CAAC,OAAO,EAAE;AAC1B,gBAAgB,OAAO,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC1D,gBAAgB,IAAI,GAAG,EAAE,CAAC;AAC1B,aAAa;AACb,SAAS;AACT,QAAQ,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACjD,KAAK,CAAC;AACN,CAAC;AACE,IAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE;AACrE,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;AAClB,IAAI,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;AAClD,QAAQ,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;AACrC,KAAK;AACL,IAAI,IAAI,CAAC,SAAS,EAAE;AACpB,QAAQA,qBAAiB,CAAC,SAAS,EAAE,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9G,KAAK;AACL,CAAC,EAAE;AACH,IAAI,KAAK,EAAE,IAAI,CAACA,qBAAiB,CAAC,KAAK,CAAC;AACxC,IAAI,GAAG,EAAE,IAAI,CAACA,qBAAiB,CAAC,GAAG,CAAC;AACpC,IAAI,IAAI,EAAE,IAAI,CAACA,qBAAiB,CAAC,IAAI,CAAC;AACtC,IAAI,KAAK,EAAE,IAAI,CAACA,qBAAiB,CAAC,KAAK,CAAC;AACxC,CAAC,EAAE;AAWH,SAAS,iBAAiB,CAAC,OAAO,EAAE;AACpC,IAAI,IAAI,cAAc,GAAG,EAAE,CAAC;AAC5B,IAAI,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;AAClD,QAAQ,cAAc,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;AAC/C,KAAK;AACL,IAAI,OAAO,IAAIC,0BAAc,CAAC,kBAAkB,CAAC,OAAO,EAAE,cAAc,CAAC;AACzE,QAAQ,mBAAmB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;AACtD,CAAC;AACD,IAAI,yBAAyB,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,GAAG,OAAO,CAAC,CAAC;AACnF,SAAS,SAAS,CAAC,GAAG,EAAE;AACxB,IAAI,IAAI,OAAO,GAAG,IAAI,QAAQ,EAAE;AAChC,QAAQ,OAAO,GAAG,CAAC;AACnB,KAAK;AACL,IAAI,IAAI;AACR,QAAQ,OAAO,mBAAmB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAC1D,KAAK;AACL,IAAI,OAAO,EAAE,EAAE;AACf,QAAQ,OAAO,oBAAoB,CAAC;AACpC,KAAK;AACL,CAAC;AACD,SAAS,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE;AAClD,IAAI,IAAI,WAAW,KAAK,KAAK,CAAC,EAAE,EAAE,WAAW,GAAG,EAAE,CAAC,EAAE;AACrD,IAAI,IAAI,CAAC,OAAO;AAChB,QAAQ,OAAO;AACf,IAAI,QAAQC,QAAM,CAAC,yBAAyB,CAAC;AAC7C,QAAQA,QAAM,CAAC,yBAAyB,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE;AAChF,CAAC;AACD,SAAS,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE;AACnD,IAAI,IAAI,WAAW,KAAK,KAAK,CAAC,EAAE,EAAE,WAAW,GAAG,EAAE,CAAC,EAAE;AACrD,IAAI,IAAI,CAAC,OAAO;AAChB,QAAQ,OAAO;AACf,IAAI,OAAO,8FAA8F,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC;AACnJ,QAAQ,OAAO,EAAE,OAAO;AACxB,QAAQ,OAAO,EAAE,OAAO;AACxB,QAAQ,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC;AACxC,KAAK,CAAC,CAAC,CAAC,CAAC;AACT;;ACtEU,IAAC,GAAG,GAAG,UAAU,CAAC,OAAO,KAAK;;;;;;;;;;"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tsInvariant = require('ts-invariant');
6
6
 
7
- var version = "3.12.0-rc.4";
7
+ var version = "3.12.0";
8
8
 
9
9
  function maybe(thunk) {
10
10
  try {
package/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export var version = "3.12.0-rc.4";
1
+ export var version = "3.12.0";
2
2
  //# sourceMappingURL=version.js.map
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Maintain the existing document if its unchanged by the codemod and move to more naive whitespace formatting
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Fix issue when using `Unmasked` with older versions of TypeScript when used with array fields.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": minor
3
- ---
4
-
5
- Promote to 3.12.0-rc.0
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Prevent field accessor warnings when using `@unmask(mode: "migrate")` on objects that are passed into `cache.identify`.
@@ -1,15 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Provide a codemod that applies `@unmask` to all named fragments for all operations and fragments. To use the codemod, run the following command:
6
-
7
- ```
8
- npx jscodeshift -t node_modules/@apollo/client/scripts/codemods/data-masking/unmask.ts --extensions tsx --parser tsx path/to/app/
9
- ```
10
-
11
- To customize the tag used to search for GraphQL operations, use the `--tag` option. By default the codemod looks for `gql` and `graphql` tags.
12
-
13
- To apply the directive in migrate mode in order to receive runtime warnings on potentially masked fields, use the `--mode migrate` option.
14
-
15
- For more information on the options that can be used with `jscodeshift`, check out the [`jscodeshift` documentation](https://github.com/facebook/jscodeshift).
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Fix issue where data went missing when an unmasked fragment in migrate mode selected fields that the parent did not.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Data masking types: handle overlapping nested array types and fragments on interface types.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Fix issue where masked data would sometimes get returned when the field was part of a child fragment from a fragment unmasked by the parent query.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Warn when using data masking with "no-cache" operations.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": minor
3
- ---
4
-
5
- Allow `null` as a valid `from` value in `useFragment`.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Fix issue where the warning emitted by `@unmask(mode: "migrate")` would trigger unnecessarily when the fragment was used alongside a masked fragment inside an inline fragment.
@@ -1,36 +0,0 @@
1
- ---
2
- "@apollo/client": minor
3
- ---
4
-
5
- Introduces data masking into Apollo Client. Data masking allows components to access only the data they asked for through GraphQL fragments. This prevents coupling between components that might otherwise implicitly rely on fields not requested by the component. Data masking also provides the benefit that masked fields only rerender components that ask for the field.
6
-
7
- To enable data masking in Apollo Client, set the `dataMasking` option to `true`.
8
-
9
- ```ts
10
- new ApolloClient({
11
- dataMasking: true,
12
- // ... other options
13
- })
14
- ```
15
-
16
- You can selectively disable data masking using the `@unmask` directive. Apply this to any named fragment to receive all fields requested by the fragment.
17
-
18
- ```graphql
19
- query {
20
- user {
21
- id
22
- ...UserFields @unmask
23
- }
24
- }
25
- ```
26
-
27
- To help with migration, use the `@unmask` migrate mode which will add warnings when accessing fields that would otherwise be masked.
28
-
29
- ```graphql
30
- query {
31
- user {
32
- id
33
- ...UserFields @unmask(mode: "migrate")
34
- }
35
- }
36
- ```
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Fix error when combining `@unmask` and `@defer` directives on a fragment spread when data masking is enabled.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Fix error thrown when applying unmask migrate mode warnings on interface types with selection sets that contain inline fragment conditions.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Add a helper that will skip the TS unmasking alorithm when no fragments are present on type level
@@ -1,27 +0,0 @@
1
- {
2
- "mode": "pre",
3
- "tag": "rc",
4
- "initialVersions": {
5
- "@apollo/client": "3.11.5"
6
- },
7
- "changesets": [
8
- "brown-readers-smash",
9
- "clean-turkeys-kick",
10
- "cold-apes-bow",
11
- "early-bobcats-eat",
12
- "flat-beans-knock",
13
- "gorgeous-zebras-confess",
14
- "happy-months-happen",
15
- "itchy-penguins-worry",
16
- "kind-toys-tie",
17
- "long-zoos-ring",
18
- "mean-bottles-travel",
19
- "nasty-camels-pay",
20
- "nervous-owls-hear",
21
- "nice-countries-share",
22
- "perfect-jobs-flow",
23
- "slimy-points-end",
24
- "small-bears-confess",
25
- "wicked-pans-appear"
26
- ]
27
- }
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Ensure documents unchanged by the codemod are left untouched.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Ensure `null` is retained in nullable types when unmasking a type with the `Unmasked` helper type.
@@ -1,5 +0,0 @@
1
- ---
2
- "@apollo/client": patch
3
- ---
4
-
5
- Fix issue that threw errors when masking partial data with `@unmask(mode: "migrate")`.
@@ -1,9 +0,0 @@
1
- /**
2
- * Temporarily disable act warnings.
3
- *
4
- * https://github.com/reactwg/react-18/discussions/102
5
- */
6
- export declare function disableActWarnings(): {
7
- prevActEnv: any;
8
- } & Disposable;
9
- //# sourceMappingURL=disableActWarnings.d.ts.map
@@ -1,15 +0,0 @@
1
- import { withCleanup } from "./withCleanup.js";
2
- /**
3
- * Temporarily disable act warnings.
4
- *
5
- * https://github.com/reactwg/react-18/discussions/102
6
- */
7
- export function disableActWarnings() {
8
- var prev = { prevActEnv: globalThis.IS_REACT_ACT_ENVIRONMENT };
9
- globalThis.IS_REACT_ACT_ENVIRONMENT = false;
10
- return withCleanup(prev, function (_a) {
11
- var prevActEnv = _a.prevActEnv;
12
- globalThis.IS_REACT_ACT_ENVIRONMENT = prevActEnv;
13
- });
14
- }
15
- //# sourceMappingURL=disableActWarnings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"disableActWarnings.js","sourceRoot":"","sources":["../../../../src/testing/internal/disposables/disableActWarnings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,IAAM,IAAI,GAAG,EAAE,UAAU,EAAG,UAAkB,CAAC,wBAAwB,EAAE,CAAC;IACzE,UAAkB,CAAC,wBAAwB,GAAG,KAAK,CAAC;IAErD,OAAO,WAAW,CAAC,IAAI,EAAE,UAAC,EAAc;YAAZ,UAAU,gBAAA;QACnC,UAAkB,CAAC,wBAAwB,GAAG,UAAU,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { withCleanup } from \"./withCleanup.js\";\n\n/**\n * Temporarily disable act warnings.\n *\n * https://github.com/reactwg/react-18/discussions/102\n */\nexport function disableActWarnings() {\n const prev = { prevActEnv: (globalThis as any).IS_REACT_ACT_ENVIRONMENT };\n (globalThis as any).IS_REACT_ACT_ENVIRONMENT = false;\n\n return withCleanup(prev, ({ prevActEnv }) => {\n (globalThis as any).IS_REACT_ACT_ENVIRONMENT = prevActEnv;\n });\n}\n"]}