@isograph/react 0.4.3 → 0.5.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 (137) hide show
  1. package/.turbo/turbo-compile-libs.log +2 -2
  2. package/dist/core/FragmentReference.d.ts +4 -2
  3. package/dist/core/FragmentReference.d.ts.map +1 -1
  4. package/dist/core/FragmentReference.js +2 -2
  5. package/dist/core/IsographEnvironment.d.ts +19 -11
  6. package/dist/core/IsographEnvironment.d.ts.map +1 -1
  7. package/dist/core/IsographEnvironment.js +27 -2
  8. package/dist/core/PromiseWrapper.d.ts +13 -7
  9. package/dist/core/PromiseWrapper.d.ts.map +1 -1
  10. package/dist/core/brand.d.ts +17 -0
  11. package/dist/core/brand.d.ts.map +1 -1
  12. package/dist/core/cache.d.ts +10 -7
  13. package/dist/core/cache.d.ts.map +1 -1
  14. package/dist/core/cache.js +102 -74
  15. package/dist/core/check.d.ts +8 -4
  16. package/dist/core/check.d.ts.map +1 -1
  17. package/dist/core/check.js +10 -7
  18. package/dist/core/componentCache.d.ts +1 -1
  19. package/dist/core/componentCache.d.ts.map +1 -1
  20. package/dist/core/componentCache.js +6 -4
  21. package/dist/core/entrypoint.d.ts +17 -7
  22. package/dist/core/entrypoint.d.ts.map +1 -1
  23. package/dist/core/garbageCollection.d.ts +8 -2
  24. package/dist/core/garbageCollection.d.ts.map +1 -1
  25. package/dist/core/garbageCollection.js +36 -14
  26. package/dist/core/logging.d.ts +16 -3
  27. package/dist/core/logging.d.ts.map +1 -1
  28. package/dist/core/makeNetworkRequest.d.ts +4 -2
  29. package/dist/core/makeNetworkRequest.d.ts.map +1 -1
  30. package/dist/core/makeNetworkRequest.js +115 -38
  31. package/dist/core/optimisticProxy.d.ts +59 -0
  32. package/dist/core/optimisticProxy.d.ts.map +1 -0
  33. package/dist/core/optimisticProxy.js +399 -0
  34. package/dist/core/read.d.ts +3 -2
  35. package/dist/core/read.d.ts.map +1 -1
  36. package/dist/core/read.js +158 -123
  37. package/dist/core/reader.d.ts +7 -4
  38. package/dist/core/reader.d.ts.map +1 -1
  39. package/dist/core/startUpdate.d.ts +3 -2
  40. package/dist/core/startUpdate.d.ts.map +1 -1
  41. package/dist/core/startUpdate.js +33 -34
  42. package/dist/index.d.ts +2 -2
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +2 -1
  45. package/dist/loadable-hooks/useClientSideDefer.d.ts +9 -4
  46. package/dist/loadable-hooks/useClientSideDefer.d.ts.map +1 -1
  47. package/dist/loadable-hooks/useClientSideDefer.js +34 -1
  48. package/dist/loadable-hooks/useConnectionSpecPagination.d.ts +5 -3
  49. package/dist/loadable-hooks/useConnectionSpecPagination.d.ts.map +1 -1
  50. package/dist/loadable-hooks/useConnectionSpecPagination.js +27 -13
  51. package/dist/loadable-hooks/useImperativeLoadableField.d.ts +1 -1
  52. package/dist/loadable-hooks/useImperativeLoadableField.d.ts.map +1 -1
  53. package/dist/loadable-hooks/useSkipLimitPagination.d.ts +1 -1
  54. package/dist/loadable-hooks/useSkipLimitPagination.d.ts.map +1 -1
  55. package/dist/loadable-hooks/useSkipLimitPagination.js +1 -1
  56. package/dist/react/FragmentReader.d.ts +2 -1
  57. package/dist/react/FragmentReader.d.ts.map +1 -1
  58. package/dist/react/FragmentRenderer.d.ts +2 -1
  59. package/dist/react/FragmentRenderer.d.ts.map +1 -1
  60. package/dist/react/LoadableFieldReader.d.ts +9 -3
  61. package/dist/react/LoadableFieldReader.d.ts.map +1 -1
  62. package/dist/react/LoadableFieldReader.js +40 -1
  63. package/dist/react/LoadableFieldRenderer.d.ts +9 -3
  64. package/dist/react/LoadableFieldRenderer.d.ts.map +1 -1
  65. package/dist/react/LoadableFieldRenderer.js +36 -1
  66. package/dist/react/useImperativeReference.d.ts +4 -3
  67. package/dist/react/useImperativeReference.d.ts.map +1 -1
  68. package/dist/react/useImperativeReference.js +3 -5
  69. package/dist/react/useLazyReference.d.ts +2 -1
  70. package/dist/react/useLazyReference.d.ts.map +1 -1
  71. package/dist/react/useReadAndSubscribe.d.ts.map +1 -1
  72. package/dist/react/useReadAndSubscribe.js +1 -3
  73. package/dist/react/useResult.d.ts.map +1 -1
  74. package/dist/react/useResult.js +6 -5
  75. package/package.json +16 -17
  76. package/src/core/FragmentReference.ts +10 -4
  77. package/src/core/IsographEnvironment.ts +59 -13
  78. package/src/core/PromiseWrapper.ts +14 -7
  79. package/src/core/brand.ts +18 -0
  80. package/src/core/cache.ts +186 -91
  81. package/src/core/check.ts +21 -10
  82. package/src/core/componentCache.ts +8 -4
  83. package/src/core/entrypoint.ts +35 -6
  84. package/src/core/garbageCollection.ts +61 -19
  85. package/src/core/logging.ts +15 -3
  86. package/src/core/makeNetworkRequest.ts +307 -74
  87. package/src/core/optimisticProxy.ts +563 -0
  88. package/src/core/read.ts +233 -163
  89. package/src/core/reader.ts +10 -6
  90. package/src/core/startUpdate.ts +45 -30
  91. package/src/index.ts +2 -1
  92. package/src/loadable-hooks/useClientSideDefer.ts +76 -26
  93. package/src/loadable-hooks/useConnectionSpecPagination.ts +34 -17
  94. package/src/loadable-hooks/useImperativeLoadableField.ts +2 -2
  95. package/src/loadable-hooks/useSkipLimitPagination.ts +2 -3
  96. package/src/react/FragmentReader.tsx +3 -1
  97. package/src/react/FragmentRenderer.tsx +8 -1
  98. package/src/react/LoadableFieldReader.tsx +123 -12
  99. package/src/react/LoadableFieldRenderer.tsx +122 -12
  100. package/src/react/useImperativeReference.ts +20 -11
  101. package/src/react/useLazyReference.ts +17 -6
  102. package/src/react/useReadAndSubscribe.ts +1 -8
  103. package/src/react/useResult.ts +9 -11
  104. package/src/tests/__isograph/Node/asEconomist/resolver_reader.ts +1 -1
  105. package/src/tests/__isograph/Query/linkedUpdate/entrypoint.ts +3 -1
  106. package/src/tests/__isograph/Query/linkedUpdate/raw_response_type.ts +13 -0
  107. package/src/tests/__isograph/Query/linkedUpdate/resolver_reader.ts +1 -1
  108. package/src/tests/__isograph/Query/meName/entrypoint.ts +3 -1
  109. package/src/tests/__isograph/Query/meName/raw_response_type.ts +7 -0
  110. package/src/tests/__isograph/Query/meName/resolver_reader.ts +1 -1
  111. package/src/tests/__isograph/Query/meNameSuccessor/entrypoint.ts +3 -1
  112. package/src/tests/__isograph/Query/meNameSuccessor/raw_response_type.ts +14 -0
  113. package/src/tests/__isograph/Query/meNameSuccessor/resolver_reader.ts +1 -1
  114. package/src/tests/__isograph/Query/nodeField/entrypoint.ts +3 -1
  115. package/src/tests/__isograph/Query/nodeField/raw_response_type.ts +7 -0
  116. package/src/tests/__isograph/Query/nodeField/resolver_reader.ts +1 -1
  117. package/src/tests/__isograph/Query/normalizeUndefinedField/entrypoint.ts +33 -0
  118. package/src/tests/__isograph/Query/normalizeUndefinedField/normalization_ast.ts +25 -0
  119. package/src/tests/__isograph/Query/normalizeUndefinedField/output_type.ts +3 -0
  120. package/src/tests/__isograph/Query/normalizeUndefinedField/param_type.ts +9 -0
  121. package/src/tests/__isograph/Query/normalizeUndefinedField/query_text.ts +6 -0
  122. package/src/tests/__isograph/Query/normalizeUndefinedField/raw_response_type.ts +7 -0
  123. package/src/tests/__isograph/Query/normalizeUndefinedField/resolver_reader.ts +38 -0
  124. package/src/tests/__isograph/Query/startUpdate/entrypoint.ts +3 -1
  125. package/src/tests/__isograph/Query/startUpdate/raw_response_type.ts +8 -0
  126. package/src/tests/__isograph/Query/startUpdate/resolver_reader.ts +1 -1
  127. package/src/tests/__isograph/Query/subquery/entrypoint.ts +3 -1
  128. package/src/tests/__isograph/Query/subquery/raw_response_type.ts +9 -0
  129. package/src/tests/__isograph/Query/subquery/resolver_reader.ts +1 -1
  130. package/src/tests/__isograph/iso.ts +11 -1
  131. package/src/tests/garbageCollection.test.ts +8 -5
  132. package/src/tests/meNameSuccessor.ts +6 -3
  133. package/src/tests/nodeQuery.ts +4 -2
  134. package/src/tests/normalizeData.test.ts +89 -15
  135. package/src/tests/optimisticProxy.test.ts +860 -0
  136. package/src/tests/startUpdate.test.ts +7 -5
  137. package/src/tests/__isograph/Economist/__link/output_type.ts +0 -2
@@ -1,6 +1,7 @@
1
1
  import type {IsographEntrypoint, NormalizationAst, RefetchQueryNormalizationArtifactWrapper} from '@isograph/react';
2
2
  import {Query__startUpdate__param} from './param_type';
3
3
  import {Query__startUpdate__output_type} from './output_type';
4
+ import type {Query__startUpdate__raw_response_type} from './raw_response_type';
4
5
  import readerResolver from './resolver_reader';
5
6
  import queryText from './query_text';
6
7
  import normalizationAst from './normalization_ast';
@@ -9,7 +10,8 @@ const nestedRefetchQueries: RefetchQueryNormalizationArtifactWrapper[] = [];
9
10
  const artifact: IsographEntrypoint<
10
11
  Query__startUpdate__param,
11
12
  Query__startUpdate__output_type,
12
- NormalizationAst
13
+ NormalizationAst,
14
+ Query__startUpdate__raw_response_type
13
15
  > = {
14
16
  kind: "Entrypoint",
15
17
  networkRequestInfo: {
@@ -0,0 +1,8 @@
1
+ export type Query__startUpdate__raw_response_type = {
2
+ node____id___v_id?: ({
3
+ __typename: "Economist",
4
+ id: string,
5
+ name: string,
6
+ } | null),
7
+ }
8
+
@@ -46,7 +46,7 @@ const artifact: EagerReaderArtifact<
46
46
  Query__startUpdate__output_type
47
47
  > = {
48
48
  kind: "EagerReaderArtifact",
49
- fieldName: "Query.startUpdate",
49
+ fieldName: "startUpdate",
50
50
  resolver,
51
51
  readerAst,
52
52
  hasUpdatable: true,
@@ -1,6 +1,7 @@
1
1
  import type {IsographEntrypoint, NormalizationAst, RefetchQueryNormalizationArtifactWrapper} from '@isograph/react';
2
2
  import {Query__subquery__param} from './param_type';
3
3
  import {Query__subquery__output_type} from './output_type';
4
+ import type {Query__subquery__raw_response_type} from './raw_response_type';
4
5
  import readerResolver from './resolver_reader';
5
6
  import queryText from './query_text';
6
7
  import normalizationAst from './normalization_ast';
@@ -9,7 +10,8 @@ const nestedRefetchQueries: RefetchQueryNormalizationArtifactWrapper[] = [];
9
10
  const artifact: IsographEntrypoint<
10
11
  Query__subquery__param,
11
12
  Query__subquery__output_type,
12
- NormalizationAst
13
+ NormalizationAst,
14
+ Query__subquery__raw_response_type
13
15
  > = {
14
16
  kind: "Entrypoint",
15
17
  networkRequestInfo: {
@@ -0,0 +1,9 @@
1
+ export type Query__subquery__raw_response_type = {
2
+ query: {
3
+ node____id___v_id?: ({
4
+ __typename: string,
5
+ id: string,
6
+ } | null),
7
+ },
8
+ }
9
+
@@ -45,7 +45,7 @@ const artifact: EagerReaderArtifact<
45
45
  Query__subquery__output_type
46
46
  > = {
47
47
  kind: "EagerReaderArtifact",
48
- fieldName: "Query.subquery",
48
+ fieldName: "subquery",
49
49
  resolver,
50
50
  readerAst,
51
51
  hasUpdatable: false,
@@ -3,12 +3,14 @@ import { type Query__linkedUpdate__param } from './Query/linkedUpdate/param_type
3
3
  import { type Query__meNameSuccessor__param } from './Query/meNameSuccessor/param_type';
4
4
  import { type Query__meName__param } from './Query/meName/param_type';
5
5
  import { type Query__nodeField__param } from './Query/nodeField/param_type';
6
+ import { type Query__normalizeUndefinedField__param } from './Query/normalizeUndefinedField/param_type';
6
7
  import { type Query__startUpdate__param } from './Query/startUpdate/param_type';
7
8
  import { type Query__subquery__param } from './Query/subquery/param_type';
8
9
  import entrypoint_Query__linkedUpdate from '../__isograph/Query/linkedUpdate/entrypoint';
9
10
  import entrypoint_Query__meNameSuccessor from '../__isograph/Query/meNameSuccessor/entrypoint';
10
11
  import entrypoint_Query__meName from '../__isograph/Query/meName/entrypoint';
11
12
  import entrypoint_Query__nodeField from '../__isograph/Query/nodeField/entrypoint';
13
+ import entrypoint_Query__normalizeUndefinedField from '../__isograph/Query/normalizeUndefinedField/entrypoint';
12
14
  import entrypoint_Query__startUpdate from '../__isograph/Query/startUpdate/entrypoint';
13
15
  import entrypoint_Query__subquery from '../__isograph/Query/subquery/entrypoint';
14
16
 
@@ -76,6 +78,10 @@ export function iso<T>(
76
78
  param: T & MatchesWhitespaceAndString<'field Query.nodeField', T>
77
79
  ): IdentityWithParam<Query__nodeField__param>;
78
80
 
81
+ export function iso<T>(
82
+ param: T & MatchesWhitespaceAndString<'field Query.normalizeUndefinedField', T>
83
+ ): IdentityWithParam<Query__normalizeUndefinedField__param>;
84
+
79
85
  export function iso<T>(
80
86
  param: T & MatchesWhitespaceAndString<'field Query.startUpdate', T>
81
87
  ): IdentityWithParam<Query__startUpdate__param>;
@@ -100,6 +106,10 @@ export function iso<T>(
100
106
  param: T & MatchesWhitespaceAndString<'entrypoint Query.nodeField', T>
101
107
  ): typeof entrypoint_Query__nodeField;
102
108
 
109
+ export function iso<T>(
110
+ param: T & MatchesWhitespaceAndString<'entrypoint Query.normalizeUndefinedField', T>
111
+ ): typeof entrypoint_Query__normalizeUndefinedField;
112
+
103
113
  export function iso<T>(
104
114
  param: T & MatchesWhitespaceAndString<'entrypoint Query.startUpdate', T>
105
115
  ): typeof entrypoint_Query__startUpdate;
@@ -111,7 +121,7 @@ export function iso<T>(
111
121
  export function iso(_isographLiteralText: string):
112
122
  | IdentityWithParam<any>
113
123
  | IdentityWithParamComponent<any>
114
- | IsographEntrypoint<any, any, any>
124
+ | IsographEntrypoint<any, any, any, any>
115
125
  {
116
126
  throw new Error('iso: Unexpected invocation at runtime. Either the Babel transform ' +
117
127
  'was not set up, or it failed to identify this call site. Make sure it ' +
@@ -2,17 +2,19 @@ import { describe, expect, test } from 'vitest';
2
2
  import {
3
3
  garbageCollectEnvironment,
4
4
  retainQuery,
5
+ type RetainedQuery,
5
6
  } from '../core/garbageCollection';
6
7
  import {
7
8
  createIsographEnvironment,
8
9
  ROOT_ID,
9
- type IsographStore,
10
+ type BaseStoreLayerData,
10
11
  } from '../core/IsographEnvironment';
12
+ import { wrapResolvedValue } from '../core/PromiseWrapper';
11
13
  import { iso } from './__isograph/iso';
12
14
  import { meNameSuccessorRetainedQuery } from './meNameSuccessor';
13
15
  import { nodeFieldRetainedQuery } from './nodeQuery';
14
16
 
15
- const getDefaultStore = (): IsographStore => ({
17
+ const getDefaultStore = (): BaseStoreLayerData => ({
16
18
  Query: {
17
19
  [ROOT_ID]: {
18
20
  me: { __link: '0', __typename: 'Economist' },
@@ -55,9 +57,10 @@ export const meNameField = iso(`
55
57
  `)(() => {});
56
58
 
57
59
  const meNameEntrypoint = iso(`entrypoint Query.meName`);
58
- const meNameRetainedQuery = {
59
- normalizationAst:
60
- meNameEntrypoint.networkRequestInfo.normalizationAst.selections,
60
+ const meNameRetainedQuery: RetainedQuery = {
61
+ normalizationAst: wrapResolvedValue(
62
+ meNameEntrypoint.networkRequestInfo.normalizationAst,
63
+ ),
61
64
  variables: {},
62
65
  root: { __link: ROOT_ID, __typename: 'Query' },
63
66
  };
@@ -1,4 +1,6 @@
1
+ import type { RetainedQuery } from '../core/garbageCollection';
1
2
  import { ROOT_ID } from '../core/IsographEnvironment';
3
+ import { wrapResolvedValue } from '../core/PromiseWrapper';
2
4
  import { iso } from './__isograph/iso';
3
5
 
4
6
  export const meNameField = iso(`
@@ -14,9 +16,10 @@ export const meNameField = iso(`
14
16
  }
15
17
  `)(() => {});
16
18
  const meNameSuccessorEntrypoint = iso(`entrypoint Query.meNameSuccessor`);
17
- export const meNameSuccessorRetainedQuery = {
18
- normalizationAst:
19
- meNameSuccessorEntrypoint.networkRequestInfo.normalizationAst.selections,
19
+ export const meNameSuccessorRetainedQuery: RetainedQuery = {
20
+ normalizationAst: wrapResolvedValue(
21
+ meNameSuccessorEntrypoint.networkRequestInfo.normalizationAst,
22
+ ),
20
23
  variables: {},
21
24
  root: {
22
25
  __link: ROOT_ID,
@@ -1,5 +1,6 @@
1
1
  import { RetainedQuery } from '../core/garbageCollection';
2
2
  import { ROOT_ID } from '../core/IsographEnvironment';
3
+ import { wrapResolvedValue } from '../core/PromiseWrapper';
3
4
  import { iso } from './__isograph/iso';
4
5
 
5
6
  // TODO investigate why this can't be in garbageCollection.test.ts without
@@ -13,8 +14,9 @@ export const nodeField = iso(`
13
14
  `)(() => {});
14
15
  const nodeFieldEntrypoint = iso(`entrypoint Query.nodeField`);
15
16
  export const nodeFieldRetainedQuery: RetainedQuery = {
16
- normalizationAst:
17
- nodeFieldEntrypoint.networkRequestInfo.normalizationAst.selections,
17
+ normalizationAst: wrapResolvedValue(
18
+ nodeFieldEntrypoint.networkRequestInfo.normalizationAst,
19
+ ),
18
20
  variables: { id: 0 },
19
21
  root: { __link: ROOT_ID, __typename: 'Query' },
20
22
  };
@@ -1,10 +1,10 @@
1
- import { describe, expect, test, vi } from 'vitest';
1
+ import { beforeEach, describe, expect, test, vi } from 'vitest';
2
2
  import { getOrCreateCacheForArtifact, normalizeData } from '../core/cache';
3
3
  import {
4
4
  createIsographEnvironment,
5
5
  createIsographStore,
6
6
  ROOT_ID,
7
- type IsographStore,
7
+ type BaseStoreLayerData,
8
8
  } from '../core/IsographEnvironment';
9
9
  import {
10
10
  readButDoNotEvaluate,
@@ -13,6 +13,86 @@ import {
13
13
  import { iso } from './__isograph/iso';
14
14
  import type { Query__subquery__param } from './__isograph/Query/subquery/param_type';
15
15
 
16
+ let store: ReturnType<typeof createIsographStore>;
17
+ let environment: ReturnType<typeof createIsographEnvironment>;
18
+
19
+ beforeEach(() => {
20
+ store = createIsographStore();
21
+ const networkFunction = vi.fn().mockRejectedValue(new Error('Fetch failed'));
22
+ environment = createIsographEnvironment(store, networkFunction);
23
+ });
24
+
25
+ export const normalizeUndefinedField = iso(`
26
+ field Query.normalizeUndefinedField {
27
+ me {
28
+ name
29
+ }
30
+ }
31
+ `)(() => {});
32
+
33
+ const normalizeUndefinedFieldEntrypoint = iso(
34
+ `entrypoint Query.normalizeUndefinedField`,
35
+ );
36
+
37
+ describe('normalize undefined field', () => {
38
+ test('should normalize scalar field to null', () => {
39
+ normalizeData(
40
+ environment,
41
+ environment.store,
42
+ normalizeUndefinedFieldEntrypoint.networkRequestInfo.normalizationAst
43
+ .selections,
44
+ {
45
+ me: { __typename: 'Economist', id: '1' },
46
+ },
47
+ {},
48
+ {
49
+ __link: ROOT_ID,
50
+ __typename: normalizeUndefinedFieldEntrypoint.concreteType,
51
+ },
52
+ new Map(),
53
+ );
54
+ expect(store).toStrictEqual({
55
+ Economist: {
56
+ '1': {
57
+ id: '1',
58
+ name: null,
59
+ },
60
+ },
61
+ Query: {
62
+ [ROOT_ID]: {
63
+ me: {
64
+ __typename: 'Economist',
65
+ __link: '1',
66
+ },
67
+ },
68
+ },
69
+ });
70
+ });
71
+
72
+ test('should normalize linked field to null', () => {
73
+ normalizeData(
74
+ environment,
75
+ environment.store,
76
+ normalizeUndefinedFieldEntrypoint.networkRequestInfo.normalizationAst
77
+ .selections,
78
+ {},
79
+ {},
80
+ {
81
+ __link: ROOT_ID,
82
+ __typename: normalizeUndefinedFieldEntrypoint.concreteType,
83
+ },
84
+ new Map(),
85
+ );
86
+ expect(store).toStrictEqual({
87
+ Query: {
88
+ [ROOT_ID]: {
89
+ me: null,
90
+ },
91
+ },
92
+ });
93
+ });
94
+ });
95
+
16
96
  export const subquery = iso(`
17
97
  field Query.subquery($id: ID!) {
18
98
  query {
@@ -25,22 +105,18 @@ export const subquery = iso(`
25
105
 
26
106
  const entrypoint = iso(`entrypoint Query.subquery`);
27
107
 
28
- describe('normalizeData', () => {
29
- test('nested Query should be normalized', () => {
30
- const store = createIsographStore();
31
- const networkFunction = vi
32
- .fn()
33
- .mockRejectedValue(new Error('Fetch failed'));
34
- const environment = createIsographEnvironment(store, networkFunction);
35
-
108
+ describe('nested Query', () => {
109
+ test('should be normalized', () => {
36
110
  normalizeData(
37
111
  environment,
112
+ environment.store,
38
113
  entrypoint.networkRequestInfo.normalizationAst.selections,
39
114
  {
40
115
  query: { node____id___v_id: { __typename: 'Economist', id: '1' } },
41
116
  },
42
117
  { id: '1' },
43
118
  { __link: ROOT_ID, __typename: entrypoint.concreteType },
119
+ new Map(),
44
120
  );
45
121
 
46
122
  expect(store).toStrictEqual({
@@ -62,13 +138,11 @@ describe('normalizeData', () => {
62
138
  },
63
139
  },
64
140
  },
65
- } satisfies IsographStore);
141
+ } satisfies BaseStoreLayerData);
66
142
  });
67
- });
68
143
 
69
- describe('readData', () => {
70
- test('nested Query should be read', () => {
71
- const store: IsographStore = {
144
+ test('should be read', () => {
145
+ const store: BaseStoreLayerData = {
72
146
  Economist: {
73
147
  '1': {
74
148
  __typename: 'Economist',