@isograph/react 0.0.0-main-b80a5d6a → 0.0.0-main-043fded2

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.
@@ -51,10 +51,10 @@ function getOrCreateCacheForArtifact(environment, entrypoint, variables) {
51
51
  const itemCleanupPair = [
52
52
  {
53
53
  kind: 'FragmentReference',
54
- readerArtifact: entrypoint.readerArtifact,
54
+ readerArtifact: entrypoint.readerWithRefetchQueries.readerArtifact,
55
55
  root: IsographEnvironment_1.ROOT_ID,
56
56
  variables,
57
- nestedRefetchQueries: entrypoint.nestedRefetchQueries,
57
+ nestedRefetchQueries: entrypoint.readerWithRefetchQueries.nestedRefetchQueries,
58
58
  networkRequest: networkRequest,
59
59
  },
60
60
  disposeNetworkRequest,
@@ -1,12 +1,16 @@
1
1
  /// <reference types="react" />
2
2
  import { TopLevelReaderArtifact } from './reader';
3
3
  import { Arguments } from './util';
4
+ type ReaderWithRefetchQueries<TReadFromStore extends Object, TClientFieldValue> = {
5
+ readonly kind: 'ReaderWithRefetchQueries';
6
+ readonly readerArtifact: TopLevelReaderArtifact<TReadFromStore, TClientFieldValue, any>;
7
+ readonly nestedRefetchQueries: RefetchQueryNormalizationArtifactWrapper[];
8
+ };
4
9
  export type IsographEntrypoint<TReadFromStore extends Object, TClientFieldValue> = {
5
10
  readonly kind: 'Entrypoint';
6
11
  readonly queryText: string;
7
12
  readonly normalizationAst: NormalizationAst;
8
- readonly readerArtifact: TopLevelReaderArtifact<TReadFromStore, TClientFieldValue, any>;
9
- readonly nestedRefetchQueries: RefetchQueryNormalizationArtifactWrapper[];
13
+ readonly readerWithRefetchQueries: ReaderWithRefetchQueries<TReadFromStore, TClientFieldValue>;
10
14
  };
11
15
  export type NormalizationAstNode = NormalizationScalarField | NormalizationLinkedField | NormalizationInlineFragment;
12
16
  export type NormalizationAst = ReadonlyArray<NormalizationAstNode>;
@@ -39,3 +43,4 @@ export declare function assertIsEntrypoint<TReadFromStore extends Object, TClien
39
43
  export type ExtractReadFromStore<Type> = Type extends IsographEntrypoint<infer X, any> ? X : never;
40
44
  export type ExtractResolverResult<Type> = Type extends IsographEntrypoint<any, infer X> ? X : never;
41
45
  export type ExtractProps<Type> = Type extends React.FC<infer X> ? X : never;
46
+ export {};
@@ -28,7 +28,9 @@ function makeNetworkRequest(environment, artifact, variables) {
28
28
  });
29
29
  }
30
30
  if (status.kind === 'UndisposedIncomplete') {
31
- (0, cache_1.normalizeData)(environment, artifact.normalizationAst, (_a = networkResponse.data) !== null && _a !== void 0 ? _a : {}, variables, artifact.kind === 'Entrypoint' ? artifact.nestedRefetchQueries : []);
31
+ (0, cache_1.normalizeData)(environment, artifact.normalizationAst, (_a = networkResponse.data) !== null && _a !== void 0 ? _a : {}, variables, artifact.kind === 'Entrypoint'
32
+ ? artifact.readerWithRefetchQueries.nestedRefetchQueries
33
+ : []);
32
34
  const retainedQuery = {
33
35
  normalizationAst: artifact.normalizationAst,
34
36
  variables,
package/dist/core/read.js CHANGED
@@ -249,11 +249,12 @@ function readData(environment, ast, root, variables, nestedRefetchQueries, netwo
249
249
  const [networkRequest, disposeNetworkRequest] = (0, makeNetworkRequest_1.makeNetworkRequest)(environment, field.entrypoint, localVariables);
250
250
  const fragmentReference = {
251
251
  kind: 'FragmentReference',
252
- readerArtifact: field.entrypoint.readerArtifact,
252
+ readerArtifact: field.entrypoint.readerWithRefetchQueries.readerArtifact,
253
253
  // TODO localVariables is not guaranteed to have an id field
254
254
  root: localVariables.id,
255
255
  variables: localVariables,
256
- nestedRefetchQueries: field.entrypoint.nestedRefetchQueries,
256
+ nestedRefetchQueries: field.entrypoint.readerWithRefetchQueries
257
+ .nestedRefetchQueries,
257
258
  networkRequest,
258
259
  };
259
260
  return [fragmentReference, disposeNetworkRequest];
@@ -15,10 +15,10 @@ function useImperativeReference(entrypoint) {
15
15
  setState([
16
16
  {
17
17
  kind: 'FragmentReference',
18
- readerArtifact: entrypoint.readerArtifact,
18
+ readerArtifact: entrypoint.readerWithRefetchQueries.readerArtifact,
19
19
  root: IsographEnvironment_1.ROOT_ID,
20
20
  variables,
21
- nestedRefetchQueries: entrypoint.nestedRefetchQueries,
21
+ nestedRefetchQueries: entrypoint.readerWithRefetchQueries.nestedRefetchQueries,
22
22
  networkRequest,
23
23
  },
24
24
  () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@isograph/react",
3
- "version": "0.0.0-main-b80a5d6a",
3
+ "version": "0.0.0-main-043fded2",
4
4
  "description": "Use Isograph with React",
5
5
  "homepage": "https://isograph.dev",
6
6
  "main": "dist/index.js",
@@ -17,9 +17,9 @@
17
17
  "tsc": "tsc"
18
18
  },
19
19
  "dependencies": {
20
- "@isograph/disposable-types": "0.0.0-main-b80a5d6a",
21
- "@isograph/react-disposable-state": "0.0.0-main-b80a5d6a",
22
- "@isograph/reference-counted-pointer": "0.0.0-main-b80a5d6a"
20
+ "@isograph/disposable-types": "0.0.0-main-043fded2",
21
+ "@isograph/react-disposable-state": "0.0.0-main-043fded2",
22
+ "@isograph/reference-counted-pointer": "0.0.0-main-043fded2"
23
23
  },
24
24
  "peerDependencies": {
25
25
  "react": "18.2.0"
package/src/core/cache.ts CHANGED
@@ -95,10 +95,11 @@ export function getOrCreateCacheForArtifact<
95
95
  > = [
96
96
  {
97
97
  kind: 'FragmentReference',
98
- readerArtifact: entrypoint.readerArtifact,
98
+ readerArtifact: entrypoint.readerWithRefetchQueries.readerArtifact,
99
99
  root: ROOT_ID,
100
100
  variables,
101
- nestedRefetchQueries: entrypoint.nestedRefetchQueries,
101
+ nestedRefetchQueries:
102
+ entrypoint.readerWithRefetchQueries.nestedRefetchQueries,
102
103
  networkRequest: networkRequest,
103
104
  },
104
105
  disposeNetworkRequest,
@@ -1,14 +1,11 @@
1
1
  import { TopLevelReaderArtifact } from './reader';
2
2
  import { Arguments } from './util';
3
3
 
4
- // This type should be treated as an opaque type.
5
- export type IsographEntrypoint<
4
+ type ReaderWithRefetchQueries<
6
5
  TReadFromStore extends Object,
7
6
  TClientFieldValue,
8
7
  > = {
9
- readonly kind: 'Entrypoint';
10
- readonly queryText: string;
11
- readonly normalizationAst: NormalizationAst;
8
+ readonly kind: 'ReaderWithRefetchQueries';
12
9
  readonly readerArtifact: TopLevelReaderArtifact<
13
10
  TReadFromStore,
14
11
  TClientFieldValue,
@@ -18,6 +15,20 @@ export type IsographEntrypoint<
18
15
  readonly nestedRefetchQueries: RefetchQueryNormalizationArtifactWrapper[];
19
16
  };
20
17
 
18
+ // This type should be treated as an opaque type.
19
+ export type IsographEntrypoint<
20
+ TReadFromStore extends Object,
21
+ TClientFieldValue,
22
+ > = {
23
+ readonly kind: 'Entrypoint';
24
+ readonly queryText: string;
25
+ readonly normalizationAst: NormalizationAst;
26
+ readonly readerWithRefetchQueries: ReaderWithRefetchQueries<
27
+ TReadFromStore,
28
+ TClientFieldValue
29
+ >;
30
+ };
31
+
21
32
  export type NormalizationAstNode =
22
33
  | NormalizationScalarField
23
34
  | NormalizationLinkedField
@@ -48,7 +48,9 @@ export function makeNetworkRequest(
48
48
  artifact.normalizationAst,
49
49
  networkResponse.data ?? {},
50
50
  variables,
51
- artifact.kind === 'Entrypoint' ? artifact.nestedRefetchQueries : [],
51
+ artifact.kind === 'Entrypoint'
52
+ ? artifact.readerWithRefetchQueries.nestedRefetchQueries
53
+ : [],
52
54
  );
53
55
  const retainedQuery = {
54
56
  normalizationAst: artifact.normalizationAst,
package/src/core/read.ts CHANGED
@@ -372,11 +372,14 @@ function readData<TReadFromStore>(
372
372
  );
373
373
  const fragmentReference: FragmentReference<any, any> = {
374
374
  kind: 'FragmentReference',
375
- readerArtifact: field.entrypoint.readerArtifact,
375
+ readerArtifact:
376
+ field.entrypoint.readerWithRefetchQueries.readerArtifact,
376
377
  // TODO localVariables is not guaranteed to have an id field
377
378
  root: localVariables.id,
378
379
  variables: localVariables,
379
- nestedRefetchQueries: field.entrypoint.nestedRefetchQueries,
380
+ nestedRefetchQueries:
381
+ field.entrypoint.readerWithRefetchQueries
382
+ .nestedRefetchQueries,
380
383
  networkRequest,
381
384
  };
382
385
  return [fragmentReference, disposeNetworkRequest];
@@ -35,10 +35,11 @@ export function useImperativeReference<
35
35
  setState([
36
36
  {
37
37
  kind: 'FragmentReference',
38
- readerArtifact: entrypoint.readerArtifact,
38
+ readerArtifact: entrypoint.readerWithRefetchQueries.readerArtifact,
39
39
  root: ROOT_ID,
40
40
  variables,
41
- nestedRefetchQueries: entrypoint.nestedRefetchQueries,
41
+ nestedRefetchQueries:
42
+ entrypoint.readerWithRefetchQueries.nestedRefetchQueries,
42
43
  networkRequest,
43
44
  },
44
45
  () => {
@@ -37,8 +37,11 @@ const artifact: IsographEntrypoint<
37
37
  kind: "Entrypoint",
38
38
  queryText,
39
39
  normalizationAst,
40
- nestedRefetchQueries,
41
- readerArtifact: readerResolver,
42
- };
40
+ readerWithRefetchQueries: {
41
+ kind: "ReaderWithRefetchQueries",
42
+ nestedRefetchQueries,
43
+ readerArtifact: readerResolver,
44
+ }
45
+ };
43
46
 
44
47
  export default artifact;
@@ -73,8 +73,11 @@ const artifact: IsographEntrypoint<
73
73
  kind: "Entrypoint",
74
74
  queryText,
75
75
  normalizationAst,
76
- nestedRefetchQueries,
77
- readerArtifact: readerResolver,
78
- };
76
+ readerWithRefetchQueries: {
77
+ kind: "ReaderWithRefetchQueries",
78
+ nestedRefetchQueries,
79
+ readerArtifact: readerResolver,
80
+ }
81
+ };
79
82
 
80
83
  export default artifact;
@@ -36,8 +36,11 @@ const artifact: IsographEntrypoint<
36
36
  kind: "Entrypoint",
37
37
  queryText,
38
38
  normalizationAst,
39
- nestedRefetchQueries,
40
- readerArtifact: readerResolver,
41
- };
39
+ readerWithRefetchQueries: {
40
+ kind: "ReaderWithRefetchQueries",
41
+ nestedRefetchQueries,
42
+ readerArtifact: readerResolver,
43
+ }
44
+ };
42
45
 
43
46
  export default artifact;