@isograph/react 0.0.0-main-02afc629 → 0.0.0-main-08dac51c
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.
- package/.turbo/turbo-compile-libs.log +1 -1
- package/dist/core/FragmentReference.d.ts +4 -2
- package/dist/core/FragmentReference.d.ts.map +1 -1
- package/dist/core/FragmentReference.js +2 -2
- package/dist/core/IsographEnvironment.d.ts +6 -1
- package/dist/core/IsographEnvironment.d.ts.map +1 -1
- package/dist/core/IsographEnvironment.js +19 -1
- package/dist/core/cache.d.ts.map +1 -1
- package/dist/core/cache.js +3 -5
- package/dist/core/componentCache.d.ts +1 -1
- package/dist/core/componentCache.d.ts.map +1 -1
- package/dist/core/componentCache.js +6 -4
- package/dist/core/entrypoint.d.ts +4 -1
- package/dist/core/entrypoint.d.ts.map +1 -1
- package/dist/core/makeNetworkRequest.js +6 -2
- package/dist/core/read.d.ts.map +1 -1
- package/dist/core/read.js +15 -11
- package/dist/core/reader.d.ts +1 -1
- package/dist/core/reader.d.ts.map +1 -1
- package/dist/core/startUpdate.d.ts +1 -1
- package/dist/core/startUpdate.d.ts.map +1 -1
- package/dist/core/startUpdate.js +2 -2
- package/dist/loadable-hooks/useConnectionSpecPagination.d.ts.map +1 -1
- package/dist/loadable-hooks/useConnectionSpecPagination.js +1 -1
- package/dist/loadable-hooks/useSkipLimitPagination.d.ts.map +1 -1
- package/dist/loadable-hooks/useSkipLimitPagination.js +1 -1
- package/dist/react/useImperativeReference.d.ts.map +1 -1
- package/dist/react/useImperativeReference.js +3 -5
- package/dist/react/useReadAndSubscribe.d.ts.map +1 -1
- package/dist/react/useReadAndSubscribe.js +1 -3
- package/dist/react/useResult.d.ts.map +1 -1
- package/dist/react/useResult.js +6 -5
- package/package.json +4 -4
- package/src/core/FragmentReference.ts +10 -4
- package/src/core/IsographEnvironment.ts +37 -2
- package/src/core/cache.ts +8 -6
- package/src/core/componentCache.ts +8 -4
- package/src/core/entrypoint.ts +8 -1
- package/src/core/makeNetworkRequest.ts +4 -2
- package/src/core/read.ts +22 -15
- package/src/core/reader.ts +2 -2
- package/src/core/startUpdate.ts +1 -2
- package/src/loadable-hooks/useConnectionSpecPagination.ts +0 -1
- package/src/loadable-hooks/useSkipLimitPagination.ts +0 -1
- package/src/react/useImperativeReference.ts +11 -7
- package/src/react/useReadAndSubscribe.ts +1 -8
- package/src/react/useResult.ts +9 -11
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
../.. | WARN Unsupported engine: wanted: {"node":"22.9.0"} (current: {"node":"v22.21.1","pnpm":"10.15.0"})
|
|
2
2
|
|
|
3
|
-
> @isograph/react@0.0.0-main-
|
|
3
|
+
> @isograph/react@0.0.0-main-08dac51c compile-libs /home/runner/work/isograph/isograph/libs/isograph-react
|
|
4
4
|
> rimraf dist && tsc -p tsconfig.pkg.json
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReaderWithRefetchQueries } from '../core/entrypoint';
|
|
2
|
-
import { type StoreLink } from './IsographEnvironment';
|
|
2
|
+
import { type ComponentOrFieldName, type StoreLink } from './IsographEnvironment';
|
|
3
3
|
import { PromiseWrapper } from './PromiseWrapper';
|
|
4
4
|
import type { StartUpdate } from './reader';
|
|
5
5
|
export type VariableValue = string | number | boolean | null | {
|
|
@@ -26,9 +26,11 @@ export type FragmentReference<TReadFromStore extends UnknownTReadFromStore, TCli
|
|
|
26
26
|
readonly kind: 'FragmentReference';
|
|
27
27
|
readonly readerWithRefetchQueries: PromiseWrapper<ReaderWithRefetchQueries<TReadFromStore, TClientFieldValue>>;
|
|
28
28
|
readonly root: StoreLink;
|
|
29
|
+
readonly fieldName: ComponentOrFieldName;
|
|
30
|
+
readonly readerArtifactKind: 'EagerReaderArtifact' | 'ComponentReaderArtifact';
|
|
29
31
|
readonly variables: ExtractParameters<TReadFromStore>;
|
|
30
32
|
readonly networkRequest: PromiseWrapper<void, any>;
|
|
31
33
|
};
|
|
32
34
|
export type StableIdForFragmentReference = string;
|
|
33
|
-
export declare function stableIdForFragmentReference(fragmentReference: FragmentReference<any, any
|
|
35
|
+
export declare function stableIdForFragmentReference(fragmentReference: FragmentReference<any, any>): StableIdForFragmentReference;
|
|
34
36
|
//# sourceMappingURL=FragmentReference.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FragmentReference.d.ts","sourceRoot":"","sources":["../../src/core/FragmentReference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,
|
|
1
|
+
{"version":3,"file":"FragmentReference.d.ts","sourceRoot":"","sources":["../../src/core/FragmentReference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,SAAS,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ;IACE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC;CACzC,GACD,aAAa,EAAE,CAAC;AAEpB,MAAM,MAAM,SAAS,GAAG;IAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAAA;CAAE,CAAC;AAEpE,MAAM,MAAM,qBAAqB,GAAG;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS;IACrC,IAAI,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;CAC9B,GACG,CAAC,GACD,KAAK,CAAC;AAEV,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS;IAC3C,UAAU,EAAE,MAAM,CAAC,SAAS,SAAS,CAAC;CACvC,GACG,CAAC,GACD,SAAS,CAAC;AAEd,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,qBAAqB,IAC5D,CAAC,CAAC,aAAa,CAAC,CAAC;AAEnB,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,qBAAqB,IAC9D,mCAAmC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7D,MAAM,MAAM,mCAAmC,CAAC,CAAC,IAC/C,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE7C,MAAM,MAAM,iBAAiB,CAC3B,cAAc,SAAS,qBAAqB,EAC5C,iBAAiB,IACf;IACF,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,wBAAwB,EAAE,cAAc,CAC/C,wBAAwB,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAC5D,CAAC;IACF,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,QAAQ,CAAC,kBAAkB,EACvB,qBAAqB,GACrB,yBAAyB,CAAC;IAO9B,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,CAAC;IACtD,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAElD,wBAAgB,4BAA4B,CAC1C,iBAAiB,EAAE,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,GAC7C,4BAA4B,CAE9B"}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.stableIdForFragmentReference = stableIdForFragmentReference;
|
|
4
4
|
const cache_1 = require("./cache");
|
|
5
|
-
function stableIdForFragmentReference(fragmentReference
|
|
6
|
-
return `${fragmentReference.root.__typename}/${fragmentReference.root.__link}/${fieldName}/${JSON.stringify((0, cache_1.stableCopy)(fragmentReference.variables))}`;
|
|
5
|
+
function stableIdForFragmentReference(fragmentReference) {
|
|
6
|
+
return `${fragmentReference.root.__typename}/${fragmentReference.root.__link}/${fragmentReference.fieldName}/${JSON.stringify((0, cache_1.stableCopy)(fragmentReference.variables))}`;
|
|
7
7
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ParentCache } from '@isograph/react-disposable-state';
|
|
2
2
|
import type { Brand } from './brand';
|
|
3
|
-
import { IsographEntrypoint, IsographOperation, IsographPersistedOperation } from './entrypoint';
|
|
3
|
+
import { IsographEntrypoint, IsographOperation, IsographPersistedOperation, type ReaderWithRefetchQueries, type ReaderWithRefetchQueriesLoader } from './entrypoint';
|
|
4
4
|
import { FragmentReference, Variables, type StableIdForFragmentReference, type UnknownTReadFromStore } from './FragmentReference';
|
|
5
5
|
import type { RetainedQuery } from './garbageCollection';
|
|
6
6
|
import { LogFunction, WrappedLogFunction } from './logging';
|
|
@@ -84,4 +84,9 @@ export declare function createIsographStore(): BaseStoreLayerData;
|
|
|
84
84
|
export declare function assertLink(link: DataTypeValue): StoreLink | null | undefined;
|
|
85
85
|
export declare function getLink(maybeLink: DataTypeValue): StoreLink | null;
|
|
86
86
|
export declare function getOrLoadIsographArtifact(environment: IsographEnvironment, key: string, loader: () => Promise<IsographEntrypoint<any, any, any, any>>): PromiseWrapper<IsographEntrypoint<any, any, any, any>>;
|
|
87
|
+
export declare function getOrLoadReaderWithRefetchQueries(_environment: IsographEnvironment, readerWithRefetchQueries: ReaderWithRefetchQueries<any, any> | ReaderWithRefetchQueriesLoader<any, any>): {
|
|
88
|
+
readerWithRefetchQueries: PromiseWrapper<ReaderWithRefetchQueries<any, any>>;
|
|
89
|
+
fieldName: string;
|
|
90
|
+
readerArtifactKind: 'EagerReaderArtifact' | 'ComponentReaderArtifact';
|
|
91
|
+
};
|
|
87
92
|
//# sourceMappingURL=IsographEnvironment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IsographEnvironment.d.ts","sourceRoot":"","sources":["../../src/core/IsographEnvironment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"IsographEnvironment.d.ts","sourceRoot":"","sources":["../../src/core/IsographEnvironment.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,9 @@ exports.createIsographStore = createIsographStore;
|
|
|
6
6
|
exports.assertLink = assertLink;
|
|
7
7
|
exports.getLink = getLink;
|
|
8
8
|
exports.getOrLoadIsographArtifact = getOrLoadIsographArtifact;
|
|
9
|
-
|
|
9
|
+
exports.getOrLoadReaderWithRefetchQueries = getOrLoadReaderWithRefetchQueries;
|
|
10
10
|
const cache_1 = require("./cache");
|
|
11
|
+
const PromiseWrapper_1 = require("./PromiseWrapper");
|
|
11
12
|
exports.ROOT_ID = '__ROOT';
|
|
12
13
|
const DEFAULT_GC_BUFFER_SIZE = 10;
|
|
13
14
|
function createIsographEnvironment(baseStoreLayerData, networkFunction, missingFieldHandler, logFunction) {
|
|
@@ -74,3 +75,20 @@ function getOrLoadIsographArtifact(environment, key, loader) {
|
|
|
74
75
|
environment.entrypointArtifactCache.set(key, wrapped);
|
|
75
76
|
return wrapped;
|
|
76
77
|
}
|
|
78
|
+
function getOrLoadReaderWithRefetchQueries(_environment, readerWithRefetchQueries) {
|
|
79
|
+
switch (readerWithRefetchQueries.kind) {
|
|
80
|
+
case 'ReaderWithRefetchQueries':
|
|
81
|
+
return {
|
|
82
|
+
readerWithRefetchQueries: (0, PromiseWrapper_1.wrapResolvedValue)(readerWithRefetchQueries),
|
|
83
|
+
fieldName: readerWithRefetchQueries.readerArtifact.fieldName,
|
|
84
|
+
readerArtifactKind: readerWithRefetchQueries.readerArtifact.kind,
|
|
85
|
+
};
|
|
86
|
+
case 'ReaderWithRefetchQueriesLoader':
|
|
87
|
+
return {
|
|
88
|
+
// TODO: cache promise wrapper
|
|
89
|
+
readerWithRefetchQueries: (0, PromiseWrapper_1.wrapPromise)(readerWithRefetchQueries.loader()),
|
|
90
|
+
fieldName: readerWithRefetchQueries.fieldName,
|
|
91
|
+
readerArtifactKind: readerWithRefetchQueries.readerArtifactKind,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
}
|
package/dist/core/cache.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/core/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAEP,WAAW,EACZ,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,kBAAkB,EAElB,wBAAwB,EACxB,wBAAwB,EACxB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACT,KAAK,qBAAqB,EAE3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,MAAM,
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/core/cache.ts"],"names":[],"mappings":"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"}
|
package/dist/core/cache.js
CHANGED
|
@@ -20,7 +20,6 @@ const IsographEnvironment_1 = require("./IsographEnvironment");
|
|
|
20
20
|
const logging_1 = require("./logging");
|
|
21
21
|
const makeNetworkRequest_1 = require("./makeNetworkRequest");
|
|
22
22
|
const optimisticProxy_1 = require("./optimisticProxy");
|
|
23
|
-
const PromiseWrapper_1 = require("./PromiseWrapper");
|
|
24
23
|
const read_1 = require("./read");
|
|
25
24
|
exports.TYPENAME_FIELD_NAME = '__typename';
|
|
26
25
|
function getOrCreateItemInSuspenseCache(environment, index, factory) {
|
|
@@ -65,15 +64,14 @@ function getOrCreateCacheForArtifact(environment, entrypoint, variables, fetchOp
|
|
|
65
64
|
break;
|
|
66
65
|
}
|
|
67
66
|
const factory = () => {
|
|
68
|
-
const readerWithRefetchQueries = entrypoint.readerWithRefetchQueries
|
|
69
|
-
'ReaderWithRefetchQueriesLoader'
|
|
70
|
-
? (0, PromiseWrapper_1.wrapPromise)(entrypoint.readerWithRefetchQueries.loader())
|
|
71
|
-
: (0, PromiseWrapper_1.wrapResolvedValue)(entrypoint.readerWithRefetchQueries);
|
|
67
|
+
const { fieldName, readerArtifactKind, readerWithRefetchQueries } = (0, IsographEnvironment_1.getOrLoadReaderWithRefetchQueries)(environment, entrypoint.readerWithRefetchQueries);
|
|
72
68
|
const [networkRequest, disposeNetworkRequest] = (0, makeNetworkRequest_1.maybeMakeNetworkRequest)(environment, entrypoint, variables, readerWithRefetchQueries, fetchOptions !== null && fetchOptions !== void 0 ? fetchOptions : null);
|
|
73
69
|
const itemCleanupPair = [
|
|
74
70
|
{
|
|
75
71
|
kind: 'FragmentReference',
|
|
76
72
|
readerWithRefetchQueries,
|
|
73
|
+
fieldName,
|
|
74
|
+
readerArtifactKind,
|
|
77
75
|
root: { __link: IsographEnvironment_1.ROOT_ID, __typename: entrypoint.concreteType },
|
|
78
76
|
variables,
|
|
79
77
|
networkRequest: networkRequest,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FragmentReference } from './FragmentReference';
|
|
2
2
|
import { IsographEnvironment } from './IsographEnvironment';
|
|
3
3
|
import { NetworkRequestReaderOptions } from './read';
|
|
4
|
-
export declare function getOrCreateCachedComponent(environment: IsographEnvironment,
|
|
4
|
+
export declare function getOrCreateCachedComponent(environment: IsographEnvironment, fragmentReference: FragmentReference<any, any>, networkRequestOptions: NetworkRequestReaderOptions): React.FC<any>;
|
|
5
5
|
//# sourceMappingURL=componentCache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentCache.d.ts","sourceRoot":"","sources":["../../src/core/componentCache.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"componentCache.d.ts","sourceRoot":"","sources":["../../src/core/componentCache.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EAElB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,QAAQ,CAAC;AAGrD,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,mBAAmB,EAChC,iBAAiB,EAAE,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,EAC9C,qBAAqB,EAAE,2BAA2B,GACjD,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CA+Cf"}
|
|
@@ -2,22 +2,24 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getOrCreateCachedComponent = getOrCreateCachedComponent;
|
|
4
4
|
const useReadAndSubscribe_1 = require("../react/useReadAndSubscribe");
|
|
5
|
+
const useResult_1 = require("../react/useResult");
|
|
5
6
|
const FragmentReference_1 = require("./FragmentReference");
|
|
6
7
|
const logging_1 = require("./logging");
|
|
7
8
|
const PromiseWrapper_1 = require("./PromiseWrapper");
|
|
8
9
|
const startUpdate_1 = require("./startUpdate");
|
|
9
|
-
function getOrCreateCachedComponent(environment,
|
|
10
|
+
function getOrCreateCachedComponent(environment, fragmentReference, networkRequestOptions) {
|
|
10
11
|
var _a;
|
|
11
12
|
var _b, _c;
|
|
12
13
|
// We create startUpdate outside of component to make it stable
|
|
13
14
|
const startUpdate = (0, startUpdate_1.createStartUpdate)(environment, fragmentReference, networkRequestOptions);
|
|
14
|
-
return ((_a = (_b = environment.componentCache)[_c = (0, FragmentReference_1.stableIdForFragmentReference)(fragmentReference
|
|
15
|
+
return ((_a = (_b = environment.componentCache)[_c = (0, FragmentReference_1.stableIdForFragmentReference)(fragmentReference)]) !== null && _a !== void 0 ? _a : (_b[_c] = (() => {
|
|
15
16
|
function Component(additionalRuntimeProps) {
|
|
17
|
+
(0, useResult_1.maybeUnwrapNetworkRequest)(fragmentReference.networkRequest, networkRequestOptions);
|
|
16
18
|
const readerWithRefetchQueries = (0, PromiseWrapper_1.readPromise)(fragmentReference.readerWithRefetchQueries);
|
|
17
19
|
const data = (0, useReadAndSubscribe_1.useReadAndSubscribe)(fragmentReference, networkRequestOptions, readerWithRefetchQueries.readerArtifact.readerAst);
|
|
18
20
|
(0, logging_1.logMessage)(environment, () => ({
|
|
19
21
|
kind: 'ComponentRerendered',
|
|
20
|
-
componentName,
|
|
22
|
+
componentName: fragmentReference.fieldName,
|
|
21
23
|
rootLink: fragmentReference.root,
|
|
22
24
|
}));
|
|
23
25
|
return readerWithRefetchQueries.readerArtifact.resolver({
|
|
@@ -29,7 +31,7 @@ function getOrCreateCachedComponent(environment, componentName, fragmentReferenc
|
|
|
29
31
|
}, additionalRuntimeProps);
|
|
30
32
|
}
|
|
31
33
|
const idString = `(type: ${fragmentReference.root.__typename}, id: ${fragmentReference.root.__link})`;
|
|
32
|
-
Component.displayName = `${
|
|
34
|
+
Component.displayName = `${fragmentReference.fieldName} ${idString} @component`;
|
|
33
35
|
return Component;
|
|
34
36
|
})()));
|
|
35
37
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Contravariant, PhantomData } from './brand';
|
|
2
2
|
import type { NetworkResponseObject } from './cache';
|
|
3
3
|
import type { UnknownTReadFromStore } from './FragmentReference';
|
|
4
|
-
import type { TypeName } from './IsographEnvironment';
|
|
4
|
+
import type { ComponentOrFieldName, TypeName } from './IsographEnvironment';
|
|
5
5
|
import { TopLevelReaderArtifact } from './reader';
|
|
6
6
|
import { Arguments } from './util';
|
|
7
7
|
export type ReaderWithRefetchQueries<TReadFromStore extends UnknownTReadFromStore, TClientFieldValue> = {
|
|
@@ -11,6 +11,8 @@ export type ReaderWithRefetchQueries<TReadFromStore extends UnknownTReadFromStor
|
|
|
11
11
|
};
|
|
12
12
|
export type ReaderWithRefetchQueriesLoader<TReadFromStore extends UnknownTReadFromStore, TClientFieldValue> = {
|
|
13
13
|
readonly kind: 'ReaderWithRefetchQueriesLoader';
|
|
14
|
+
readonly fieldName: ComponentOrFieldName;
|
|
15
|
+
readonly readerArtifactKind: 'EagerReaderArtifact' | 'ComponentReaderArtifact';
|
|
14
16
|
readonly loader: () => Promise<ReaderWithRefetchQueries<TReadFromStore, TClientFieldValue>>;
|
|
15
17
|
};
|
|
16
18
|
export type NetworkRequestInfo<TNormalizationAst> = {
|
|
@@ -45,6 +47,7 @@ export type IsographEntrypoint<TReadFromStore extends UnknownTReadFromStore, TCl
|
|
|
45
47
|
export type IsographEntrypointLoader<TReadFromStore extends UnknownTReadFromStore, TClientFieldValue, TRawResponseType extends NetworkResponseObject> = {
|
|
46
48
|
readonly kind: 'EntrypointLoader';
|
|
47
49
|
readonly typeAndField: string;
|
|
50
|
+
readonly readerArtifactKind: 'EagerReaderArtifact' | 'ComponentReaderArtifact';
|
|
48
51
|
readonly loader: () => Promise<IsographEntrypoint<TReadFromStore, TClientFieldValue, NormalizationAst, TRawResponseType>>;
|
|
49
52
|
};
|
|
50
53
|
export type NormalizationAstNode = NormalizationScalarField | NormalizationLinkedField | NormalizationInlineFragment;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entrypoint.d.ts","sourceRoot":"","sources":["../../src/core/entrypoint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"entrypoint.d.ts","sourceRoot":"","sources":["../../src/core/entrypoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -166,6 +166,8 @@ function readDataForOnComplete(artifact, environment, root, variables, readerWit
|
|
|
166
166
|
kind: 'FragmentReference',
|
|
167
167
|
// TODO this smells.
|
|
168
168
|
readerWithRefetchQueries: (0, PromiseWrapper_1.wrapResolvedValue)(resolvedReaderWithRefetchQueries),
|
|
169
|
+
fieldName: resolvedReaderWithRefetchQueries.readerArtifact.fieldName,
|
|
170
|
+
readerArtifactKind: resolvedReaderWithRefetchQueries.readerArtifact.kind,
|
|
169
171
|
root,
|
|
170
172
|
variables,
|
|
171
173
|
networkRequest: fakeNetworkRequest,
|
|
@@ -177,13 +179,15 @@ function readDataForOnComplete(artifact, environment, root, variables, readerWit
|
|
|
177
179
|
// @ts-expect-error We should find a way to encode this in the type system:
|
|
178
180
|
// if we have a ComponentReaderArtifact, we will necessarily have a
|
|
179
181
|
// TClientFieldValue which is a React.FC<...>
|
|
180
|
-
return (0, componentCache_1.getOrCreateCachedComponent)(environment,
|
|
182
|
+
return (0, componentCache_1.getOrCreateCachedComponent)(environment, {
|
|
181
183
|
kind: 'FragmentReference',
|
|
182
184
|
readerWithRefetchQueries: (0, PromiseWrapper_1.wrapResolvedValue)({
|
|
183
185
|
kind: 'ReaderWithRefetchQueries',
|
|
184
186
|
readerArtifact: readerArtifact,
|
|
185
187
|
nestedRefetchQueries: resolvedReaderWithRefetchQueries.nestedRefetchQueries,
|
|
186
188
|
}),
|
|
189
|
+
fieldName: readerArtifact.fieldName,
|
|
190
|
+
readerArtifactKind: readerArtifact.kind,
|
|
187
191
|
root,
|
|
188
192
|
variables,
|
|
189
193
|
networkRequest: fakeNetworkRequest,
|
|
@@ -192,7 +196,7 @@ function readDataForOnComplete(artifact, environment, root, variables, readerWit
|
|
|
192
196
|
case 'EagerReaderArtifact': {
|
|
193
197
|
return readerArtifact.resolver(Object.assign({ data: fragmentResult, parameters: variables }, (readerArtifact.hasUpdatable
|
|
194
198
|
? {
|
|
195
|
-
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragment,
|
|
199
|
+
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragment, fakeNetworkRequestOptions),
|
|
196
200
|
}
|
|
197
201
|
: undefined)));
|
|
198
202
|
}
|
package/dist/core/read.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../src/core/read.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAEL,wCAAwC,EAEzC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,SAAS,EACT,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../src/core/read.ts"],"names":[],"mappings":"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"}
|
package/dist/core/read.js
CHANGED
|
@@ -177,14 +177,13 @@ function readLoadablySelectedFieldData(environment, field, root, variables, netw
|
|
|
177
177
|
// Fetcher
|
|
178
178
|
() => {
|
|
179
179
|
const fragmentReferenceAndDisposeFromEntrypoint = (entrypoint) => {
|
|
180
|
-
const readerWithRefetchQueries = entrypoint.readerWithRefetchQueries
|
|
181
|
-
'ReaderWithRefetchQueriesLoader'
|
|
182
|
-
? (0, PromiseWrapper_1.wrapPromise)(entrypoint.readerWithRefetchQueries.loader())
|
|
183
|
-
: (0, PromiseWrapper_1.wrapResolvedValue)(entrypoint.readerWithRefetchQueries);
|
|
180
|
+
const { fieldName, readerArtifactKind, readerWithRefetchQueries } = (0, IsographEnvironment_1.getOrLoadReaderWithRefetchQueries)(environment, entrypoint.readerWithRefetchQueries);
|
|
184
181
|
const [networkRequest, disposeNetworkRequest] = (0, makeNetworkRequest_1.maybeMakeNetworkRequest)(environment, entrypoint, localVariables, readerWithRefetchQueries, fetchOptions !== null && fetchOptions !== void 0 ? fetchOptions : null);
|
|
185
182
|
const fragmentReference = {
|
|
186
183
|
kind: 'FragmentReference',
|
|
187
184
|
readerWithRefetchQueries,
|
|
185
|
+
fieldName,
|
|
186
|
+
readerArtifactKind,
|
|
188
187
|
// TODO localVariables is not guaranteed to have an id field
|
|
189
188
|
root,
|
|
190
189
|
variables: localVariables,
|
|
@@ -204,10 +203,7 @@ function readLoadablySelectedFieldData(environment, field, root, variables, netw
|
|
|
204
203
|
else {
|
|
205
204
|
// Promise is pending or thrown
|
|
206
205
|
let entrypointLoaderState = { kind: 'EntrypointNotLoaded' };
|
|
207
|
-
const readerWithRefetchQueries = (0, PromiseWrapper_1.wrapPromise)(isographArtifactPromiseWrapper.promise.then((entrypoint) => entrypoint.readerWithRefetchQueries.
|
|
208
|
-
'ReaderWithRefetchQueriesLoader'
|
|
209
|
-
? entrypoint.readerWithRefetchQueries.loader()
|
|
210
|
-
: entrypoint.readerWithRefetchQueries));
|
|
206
|
+
const readerWithRefetchQueries = (0, PromiseWrapper_1.wrapPromise)(isographArtifactPromiseWrapper.promise.then((entrypoint) => (0, IsographEnvironment_1.getOrLoadReaderWithRefetchQueries)(environment, entrypoint.readerWithRefetchQueries).readerWithRefetchQueries.promise));
|
|
211
207
|
const networkRequest = (0, PromiseWrapper_1.wrapPromise)(isographArtifactPromiseWrapper.promise.then((entrypoint) => {
|
|
212
208
|
if (entrypointLoaderState.kind === 'EntrypointNotLoaded') {
|
|
213
209
|
const [networkRequest, disposeNetworkRequest] = (0, makeNetworkRequest_1.maybeMakeNetworkRequest)(environment, entrypoint, localVariables, readerWithRefetchQueries, fetchOptions !== null && fetchOptions !== void 0 ? fetchOptions : null);
|
|
@@ -221,6 +217,8 @@ function readLoadablySelectedFieldData(environment, field, root, variables, netw
|
|
|
221
217
|
const fragmentReference = {
|
|
222
218
|
kind: 'FragmentReference',
|
|
223
219
|
readerWithRefetchQueries,
|
|
220
|
+
fieldName: field.name,
|
|
221
|
+
readerArtifactKind: field.entrypoint.readerArtifactKind,
|
|
224
222
|
// TODO localVariables is not guaranteed to have an id field
|
|
225
223
|
root,
|
|
226
224
|
variables: localVariables,
|
|
@@ -324,6 +322,8 @@ function readResolverFieldData(environment, field, root, variables, nestedRefetc
|
|
|
324
322
|
const fragment = {
|
|
325
323
|
kind: 'FragmentReference',
|
|
326
324
|
readerWithRefetchQueries: (0, PromiseWrapper_1.wrapResolvedValue)(readerWithRefetchQueries),
|
|
325
|
+
fieldName: field.readerArtifact.fieldName,
|
|
326
|
+
readerArtifactKind: field.readerArtifact.kind,
|
|
327
327
|
root,
|
|
328
328
|
variables: generateChildVariableMap(variables, field.arguments),
|
|
329
329
|
networkRequest,
|
|
@@ -343,7 +343,7 @@ function readResolverFieldData(environment, field, root, variables, nestedRefetc
|
|
|
343
343
|
data: data.data,
|
|
344
344
|
parameters: variables,
|
|
345
345
|
startUpdate: field.readerArtifact.hasUpdatable
|
|
346
|
-
? (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragment,
|
|
346
|
+
? (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragment, networkRequestOptions)
|
|
347
347
|
: undefined,
|
|
348
348
|
};
|
|
349
349
|
return {
|
|
@@ -354,7 +354,7 @@ function readResolverFieldData(environment, field, root, variables, nestedRefetc
|
|
|
354
354
|
case 'ComponentReaderArtifact': {
|
|
355
355
|
return {
|
|
356
356
|
kind: 'Success',
|
|
357
|
-
data: (0, componentCache_1.getOrCreateCachedComponent)(environment,
|
|
357
|
+
data: (0, componentCache_1.getOrCreateCachedComponent)(environment, fragment, networkRequestOptions),
|
|
358
358
|
};
|
|
359
359
|
}
|
|
360
360
|
default: {
|
|
@@ -403,6 +403,8 @@ function readLinkedFieldData(environment, field, storeRecord, root, variables, n
|
|
|
403
403
|
kind: 'FragmentReference',
|
|
404
404
|
readerWithRefetchQueries: (0, PromiseWrapper_1.wrapResolvedValue)(readerWithRefetchQueries),
|
|
405
405
|
root,
|
|
406
|
+
fieldName: field.condition.fieldName,
|
|
407
|
+
readerArtifactKind: field.condition.kind,
|
|
406
408
|
variables: generateChildVariableMap(variables,
|
|
407
409
|
// TODO this is wrong
|
|
408
410
|
// should use field.arguments
|
|
@@ -412,7 +414,7 @@ function readLinkedFieldData(environment, field, storeRecord, root, variables, n
|
|
|
412
414
|
};
|
|
413
415
|
const condition = field.condition.resolver(Object.assign({ data: data.data, parameters: {} }, (field.condition.hasUpdatable
|
|
414
416
|
? {
|
|
415
|
-
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragment,
|
|
417
|
+
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragment, networkRequestOptions),
|
|
416
418
|
}
|
|
417
419
|
: undefined)));
|
|
418
420
|
value = condition;
|
|
@@ -598,6 +600,8 @@ function readClientPointerData(environment, field, root, variables, nestedRefetc
|
|
|
598
600
|
const [networkRequest, disposeNetworkRequest] = (0, makeNetworkRequest_1.maybeMakeNetworkRequest)(environment, refetchQueryArtifact, variables, readerWithRefetchQueries, fetchOptions !== null && fetchOptions !== void 0 ? fetchOptions : null);
|
|
599
601
|
const fragmentReference = {
|
|
600
602
|
kind: 'FragmentReference',
|
|
603
|
+
fieldName: field.fieldName,
|
|
604
|
+
readerArtifactKind: 'EagerReaderArtifact',
|
|
601
605
|
readerWithRefetchQueries: readerWithRefetchQueries,
|
|
602
606
|
root,
|
|
603
607
|
variables,
|
package/dist/core/reader.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { Arguments } from './util';
|
|
|
7
7
|
export type TopLevelReaderArtifact<TReadFromStore extends UnknownTReadFromStore, TClientFieldValue, TComponentProps extends Record<PropertyKey, never>> = EagerReaderArtifact<TReadFromStore, TClientFieldValue> | ComponentReaderArtifact<TReadFromStore, TComponentProps>;
|
|
8
8
|
export type EagerReaderArtifact<TReadFromStore extends UnknownTReadFromStore, TClientFieldValue> = {
|
|
9
9
|
readonly kind: 'EagerReaderArtifact';
|
|
10
|
-
readonly fieldName:
|
|
10
|
+
readonly fieldName: ComponentOrFieldName;
|
|
11
11
|
readonly readerAst: ReaderAst<TReadFromStore>;
|
|
12
12
|
readonly resolver: (data: ResolverFirstParameter<TReadFromStore>) => TClientFieldValue;
|
|
13
13
|
readonly hasUpdatable: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/core/reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,iCAAiC,EACjC,wCAAwC,EACzC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,SAAS,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,MAAM,MAAM,sBAAsB,CAChC,cAAc,SAAS,qBAAqB,EAC5C,iBAAiB,EACjB,eAAe,SAAS,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAEhD,mBAAmB,CAAC,cAAc,EAAE,iBAAiB,CAAC,GACtD,uBAAuB,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;AAE7D,MAAM,MAAM,mBAAmB,CAC7B,cAAc,SAAS,qBAAqB,EAC5C,iBAAiB,IACf;IACF,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"reader.d.ts","sourceRoot":"","sources":["../../src/core/reader.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { type ExtractStartUpdate, type ExtractUpdatableData, type FragmentRefere
|
|
|
3
3
|
import { type IsographEnvironment } from './IsographEnvironment';
|
|
4
4
|
import { type StoreLayer } from './optimisticProxy';
|
|
5
5
|
import { type NetworkRequestReaderOptions } from './read';
|
|
6
|
-
export declare function getOrCreateCachedStartUpdate<TReadFromStore extends UnknownTReadFromStore>(environment: IsographEnvironment, fragmentReference: FragmentReference<TReadFromStore, unknown>,
|
|
6
|
+
export declare function getOrCreateCachedStartUpdate<TReadFromStore extends UnknownTReadFromStore>(environment: IsographEnvironment, fragmentReference: FragmentReference<TReadFromStore, unknown>, networkRequestOptions: NetworkRequestReaderOptions): ExtractStartUpdate<TReadFromStore>;
|
|
7
7
|
export declare function createStartUpdate<TReadFromStore extends UnknownTReadFromStore>(environment: IsographEnvironment, fragmentReference: FragmentReference<TReadFromStore, unknown>, networkRequestOptions: NetworkRequestReaderOptions): ExtractStartUpdate<TReadFromStore>;
|
|
8
8
|
export declare function createUpdatableProxy<TReadFromStore extends UnknownTReadFromStore>(environment: IsographEnvironment, storeLayer: StoreLayer, fragmentReference: FragmentReference<TReadFromStore, unknown>, networkRequestOptions: NetworkRequestReaderOptions, mutableUpdatedIds: EncounteredIds): ExtractUpdatableData<TReadFromStore>;
|
|
9
9
|
//# sourceMappingURL=startUpdate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startUpdate.d.ts","sourceRoot":"","sources":["../../src/core/startUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAKL,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAML,KAAK,2BAA2B,EAEjC,MAAM,QAAQ,CAAC;AAGhB,wBAAgB,4BAA4B,CAC1C,cAAc,SAAS,qBAAqB,EAE5C,WAAW,EAAE,mBAAmB,EAChC,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,EAC7D,
|
|
1
|
+
{"version":3,"file":"startUpdate.d.ts","sourceRoot":"","sources":["../../src/core/startUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAKL,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAML,KAAK,2BAA2B,EAEjC,MAAM,QAAQ,CAAC;AAGhB,wBAAgB,4BAA4B,CAC1C,cAAc,SAAS,qBAAqB,EAE5C,WAAW,EAAE,mBAAmB,EAChC,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,EAC7D,qBAAqB,EAAE,2BAA2B,GACjD,kBAAkB,CAAC,cAAc,CAAC,CAQpC;AAED,wBAAgB,iBAAiB,CAAC,cAAc,SAAS,qBAAqB,EAC5E,WAAW,EAAE,mBAAmB,EAChC,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,EAC7D,qBAAqB,EAAE,2BAA2B,GACjD,kBAAkB,CAAC,cAAc,CAAC,CAqCpC;AAED,wBAAgB,oBAAoB,CAClC,cAAc,SAAS,qBAAqB,EAE5C,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,EAC7D,qBAAqB,EAAE,2BAA2B,EAClD,iBAAiB,EAAE,cAAc,GAChC,oBAAoB,CAAC,cAAc,CAAC,CAmBtC"}
|
package/dist/core/startUpdate.js
CHANGED
|
@@ -10,10 +10,10 @@ const logging_1 = require("./logging");
|
|
|
10
10
|
const optimisticProxy_1 = require("./optimisticProxy");
|
|
11
11
|
const PromiseWrapper_1 = require("./PromiseWrapper");
|
|
12
12
|
const read_1 = require("./read");
|
|
13
|
-
function getOrCreateCachedStartUpdate(environment, fragmentReference,
|
|
13
|
+
function getOrCreateCachedStartUpdate(environment, fragmentReference, networkRequestOptions) {
|
|
14
14
|
var _a;
|
|
15
15
|
var _b, _c;
|
|
16
|
-
return ((_a = (_b = environment.eagerReaderCache)[_c = (0, FragmentReference_1.stableIdForFragmentReference)(fragmentReference
|
|
16
|
+
return ((_a = (_b = environment.eagerReaderCache)[_c = (0, FragmentReference_1.stableIdForFragmentReference)(fragmentReference)]) !== null && _a !== void 0 ? _a : (_b[_c] = createStartUpdate(environment, fragmentReference, networkRequestOptions)));
|
|
17
17
|
}
|
|
18
18
|
function createStartUpdate(environment, fragmentReference, networkRequestOptions) {
|
|
19
19
|
return (updater) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConnectionSpecPagination.d.ts","sourceRoot":"","sources":["../../src/loadable-hooks/useConnectionSpecPagination.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AAMnC,OAAO,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAM/D,MAAM,MAAM,wBAAwB,CAClC,cAAc,SAAS,qBAAqB,EAC5C,KAAK,IAEH;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,eAAe,EAAE,iBAAiB,CAAC,cAAc,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;CAC/B,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,CACT,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAC3C,IAAI,CAAC;IACV,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAwBN,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI;IAC1B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC7B,CAAC;AAOF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,2BAA2B,CACzC,cAAc,SAAS,qBAAqB,EAC5C,KAAK,EAEL,aAAa,EAAE,aAAa,CAC1B,cAAc,EACd,UAAU,CAAC,KAAK,CAAC,EACjB,+BAA+B,CAChC,EACD,YAAY,CAAC,EAAE,QAAQ,GACtB,wBAAwB,CAAC,cAAc,EAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"useConnectionSpecPagination.d.ts","sourceRoot":"","sources":["../../src/loadable-hooks/useConnectionSpecPagination.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AAMnC,OAAO,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAM/D,MAAM,MAAM,wBAAwB,CAClC,cAAc,SAAS,qBAAqB,EAC5C,KAAK,IAEH;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,eAAe,EAAE,iBAAiB,CAAC,cAAc,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;CAC/B,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,CACT,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAC3C,IAAI,CAAC;IACV,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAwBN,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI;IAC1B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC7B,CAAC;AAOF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,2BAA2B,CACzC,cAAc,SAAS,qBAAqB,EAC5C,KAAK,EAEL,aAAa,EAAE,aAAa,CAC1B,cAAc,EACd,UAAU,CAAC,KAAK,CAAC,EACjB,+BAA+B,CAChC,EACD,YAAY,CAAC,EAAE,QAAQ,GACtB,wBAAwB,CAAC,cAAc,EAAE,KAAK,CAAC,CAqPjD"}
|
|
@@ -42,7 +42,7 @@ function useConnectionSpecPagination(loadableField, initialState) {
|
|
|
42
42
|
}
|
|
43
43
|
const firstParameter = Object.assign({ data, parameters: fragmentReference.variables }, (readerWithRefetchQueries.readerArtifact.hasUpdatable
|
|
44
44
|
? {
|
|
45
|
-
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragmentReference,
|
|
45
|
+
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragmentReference, networkRequestOptions),
|
|
46
46
|
}
|
|
47
47
|
: undefined));
|
|
48
48
|
if (readerWithRefetchQueries.readerArtifact.kind !== 'EagerReaderArtifact') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSkipLimitPagination.d.ts","sourceRoot":"","sources":["../../src/loadable-hooks/useSkipLimitPagination.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AAMnC,OAAO,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAM/D,MAAM,MAAM,uBAAuB,CACjC,cAAc,SAAS,qBAAqB,EAC5C,KAAK,IAEH;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,KAC9C,IAAI,CAAC;IACV,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;CACxC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CACzC,cAAc,EACd,aAAa,CAAC,KAAK,CAAC,CACrB,CAAC;CACH,CAAC;AA6BN,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,KAAK,EACL,cAAc,SAAS,qBAAqB,EAE5C,aAAa,EAAE,aAAa,CAC1B,cAAc,EACd,aAAa,CAAC,KAAK,CAAC,EACpB,0BAA0B,CAC3B,EACD,YAAY,CAAC,EAAE;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;CAC7B,GACA,uBAAuB,CAAC,cAAc,EAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"useSkipLimitPagination.d.ts","sourceRoot":"","sources":["../../src/loadable-hooks/useSkipLimitPagination.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AAMnC,OAAO,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAM/D,MAAM,MAAM,uBAAuB,CACjC,cAAc,SAAS,qBAAqB,EAC5C,KAAK,IAEH;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,KAC9C,IAAI,CAAC;IACV,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;CACxC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CACzC,cAAc,EACd,aAAa,CAAC,KAAK,CAAC,CACrB,CAAC;CACH,CAAC;AA6BN,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,KAAK,EACL,cAAc,SAAS,qBAAqB,EAE5C,aAAa,EAAE,aAAa,CAC1B,cAAc,EACd,aAAa,CAAC,KAAK,CAAC,EACpB,0BAA0B,CAC3B,EACD,YAAY,CAAC,EAAE;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;CAC7B,GACA,uBAAuB,CAAC,cAAc,EAAE,KAAK,CAAC,CA2OhD"}
|
|
@@ -41,7 +41,7 @@ function useSkipLimitPagination(loadableField, initialState) {
|
|
|
41
41
|
}
|
|
42
42
|
const firstParameter = Object.assign({ data, parameters: fragmentReference.variables }, (readerWithRefetchQueries.readerArtifact.hasUpdatable
|
|
43
43
|
? {
|
|
44
|
-
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragmentReference,
|
|
44
|
+
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragmentReference, networkRequestOptions),
|
|
45
45
|
}
|
|
46
46
|
: undefined));
|
|
47
47
|
if (readerWithRefetchQueries.readerArtifact.kind !== 'EagerReaderArtifact') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useImperativeReference.d.ts","sourceRoot":"","sources":["../../src/react/useImperativeReference.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"useImperativeReference.d.ts","sourceRoot":"","sources":["../../src/react/useImperativeReference.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AAQnC,MAAM,MAAM,4BAA4B,CACtC,cAAc,SAAS,qBAAqB,EAC5C,iBAAiB,EACjB,iBAAiB,SAAS,gBAAgB,GAAG,sBAAsB,IACjE;IACF,iBAAiB,EAAE,iBAAiB,CAClC,cAAc,EACd,iBAAiB,CAClB,GAAG,IAAI,CAAC;IACT,qBAAqB,EAAE,CACrB,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC5C,GAAG,CAAC,YAAY,CAAC,EAAE,sBAAsB,SAAS,iBAAiB,GAC/D,CAAC,YAAY,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,GACvD,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAC,KACjD,IAAI,CAAC;CACX,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,cAAc,SAAS,qBAAqB,EAC5C,iBAAiB,EACjB,iBAAiB,SAAS,gBAAgB,GAAG,sBAAsB,EACnE,gBAAgB,SAAS,qBAAqB,EAE9C,UAAU,EAAE,kBAAkB,CAC5B,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,CACjB,GACA,4BAA4B,CAC7B,cAAc,EACd,iBAAiB,EACjB,iBAAiB,CAClB,CAwCA"}
|
|
@@ -4,7 +4,6 @@ exports.useImperativeReference = useImperativeReference;
|
|
|
4
4
|
const react_disposable_state_1 = require("@isograph/react-disposable-state");
|
|
5
5
|
const IsographEnvironment_1 = require("../core/IsographEnvironment");
|
|
6
6
|
const makeNetworkRequest_1 = require("../core/makeNetworkRequest");
|
|
7
|
-
const PromiseWrapper_1 = require("../core/PromiseWrapper");
|
|
8
7
|
const IsographEnvironmentProvider_1 = require("./IsographEnvironmentProvider");
|
|
9
8
|
function useImperativeReference(entrypoint) {
|
|
10
9
|
const { state, setState } = (0, react_disposable_state_1.useUpdatableDisposableState)();
|
|
@@ -12,15 +11,14 @@ function useImperativeReference(entrypoint) {
|
|
|
12
11
|
return {
|
|
13
12
|
fragmentReference: state !== react_disposable_state_1.UNASSIGNED_STATE ? state : null,
|
|
14
13
|
loadFragmentReference: (variables, fetchOptions) => {
|
|
15
|
-
const readerWithRefetchQueries = entrypoint.readerWithRefetchQueries
|
|
16
|
-
'ReaderWithRefetchQueriesLoader'
|
|
17
|
-
? (0, PromiseWrapper_1.wrapPromise)(entrypoint.readerWithRefetchQueries.loader())
|
|
18
|
-
: (0, PromiseWrapper_1.wrapResolvedValue)(entrypoint.readerWithRefetchQueries);
|
|
14
|
+
const { fieldName, readerArtifactKind, readerWithRefetchQueries } = (0, IsographEnvironment_1.getOrLoadReaderWithRefetchQueries)(environment, entrypoint.readerWithRefetchQueries);
|
|
19
15
|
const [networkRequest, disposeNetworkRequest] = (0, makeNetworkRequest_1.maybeMakeNetworkRequest)(environment, entrypoint, variables, readerWithRefetchQueries, fetchOptions !== null && fetchOptions !== void 0 ? fetchOptions : null);
|
|
20
16
|
setState([
|
|
21
17
|
{
|
|
22
18
|
kind: 'FragmentReference',
|
|
23
19
|
readerWithRefetchQueries,
|
|
20
|
+
fieldName,
|
|
21
|
+
readerArtifactKind,
|
|
24
22
|
root: { __link: IsographEnvironment_1.ROOT_ID, __typename: entrypoint.concreteType },
|
|
25
23
|
variables,
|
|
26
24
|
networkRequest,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useReadAndSubscribe.d.ts","sourceRoot":"","sources":["../../src/react/useReadAndSubscribe.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EACX,iBAAiB,EAEjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"useReadAndSubscribe.d.ts","sourceRoot":"","sources":["../../src/react/useReadAndSubscribe.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EACX,iBAAiB,EAEjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,2BAA2B,EAE3B,sBAAsB,EACvB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAIhD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,cAAc,SAAS,qBAAqB,EAE5C,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,GAAG,CAAC,EACzD,qBAAqB,EAAE,2BAA2B,EAClD,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC,GACnC,WAAW,CAAC,cAAc,CAAC,CAY7B;AAED,wBAAgB,sBAAsB,CACpC,cAAc,SAAS,qBAAqB,EAE5C,KAAK,EAAE,aAAa,CAAC;IACnB,OAAO,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAC;IAChD,QAAQ,EAAE,CAAC,cAAc,EAAE,sBAAsB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IAC3E,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAC1D,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;CACtC,CAAC,QAiCH"}
|
|
@@ -5,7 +5,6 @@ exports.useSubscribeToMultiple = useSubscribeToMultiple;
|
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const cache_1 = require("../core/cache");
|
|
7
7
|
const FragmentReference_1 = require("../core/FragmentReference");
|
|
8
|
-
const PromiseWrapper_1 = require("../core/PromiseWrapper");
|
|
9
8
|
const read_1 = require("../core/read");
|
|
10
9
|
const IsographEnvironmentProvider_1 = require("./IsographEnvironmentProvider");
|
|
11
10
|
const useRerenderOnChange_1 = require("./useRerenderOnChange");
|
|
@@ -36,8 +35,7 @@ function useSubscribeToMultiple(items) {
|
|
|
36
35
|
[
|
|
37
36
|
items
|
|
38
37
|
.map(({ fragmentReference }) => {
|
|
39
|
-
|
|
40
|
-
(0, FragmentReference_1.stableIdForFragmentReference)(fragmentReference, readerWithRefetchQueries.readerArtifact.fieldName);
|
|
38
|
+
(0, FragmentReference_1.stableIdForFragmentReference)(fragmentReference);
|
|
41
39
|
})
|
|
42
40
|
.join('.'),
|
|
43
41
|
]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useResult.d.ts","sourceRoot":"","sources":["../../src/react/useResult.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,cAAc,EAEf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,2BAA2B,EAC5B,MAAM,cAAc,CAAC;AAKtB,wBAAgB,SAAS,CACvB,cAAc,SAAS,qBAAqB,EAC5C,iBAAiB,EAEjB,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,iBAAiB,CAAC,EACvE,4BAA4B,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,GAAG,IAAI,GACzE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"useResult.d.ts","sourceRoot":"","sources":["../../src/react/useResult.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,cAAc,EAEf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,2BAA2B,EAC5B,MAAM,cAAc,CAAC;AAKtB,wBAAgB,SAAS,CACvB,cAAc,SAAS,qBAAqB,EAC5C,iBAAiB,EAEjB,iBAAiB,EAAE,iBAAiB,CAAC,cAAc,EAAE,iBAAiB,CAAC,EACvE,4BAA4B,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,GAAG,IAAI,GACzE,iBAAiB,CA6CnB;AAED,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,EACzC,qBAAqB,EAAE,2BAA2B,QAWnD"}
|
package/dist/react/useResult.js
CHANGED
|
@@ -11,20 +11,21 @@ const useReadAndSubscribe_1 = require("./useReadAndSubscribe");
|
|
|
11
11
|
function useResult(fragmentReference, partialNetworkRequestOptions) {
|
|
12
12
|
const environment = (0, IsographEnvironmentProvider_1.useIsographEnvironment)();
|
|
13
13
|
const networkRequestOptions = (0, read_1.getNetworkRequestOptionsWithDefaults)(partialNetworkRequestOptions);
|
|
14
|
-
|
|
15
|
-
const readerWithRefetchQueries = (0, PromiseWrapper_1.readPromise)(fragmentReference.readerWithRefetchQueries);
|
|
16
|
-
switch (readerWithRefetchQueries.readerArtifact.kind) {
|
|
14
|
+
switch (fragmentReference.readerArtifactKind) {
|
|
17
15
|
case 'ComponentReaderArtifact': {
|
|
18
16
|
// @ts-expect-error
|
|
19
|
-
return (0, componentCache_1.getOrCreateCachedComponent)(environment,
|
|
17
|
+
return (0, componentCache_1.getOrCreateCachedComponent)(environment, fragmentReference, networkRequestOptions);
|
|
20
18
|
}
|
|
21
19
|
case 'EagerReaderArtifact': {
|
|
20
|
+
maybeUnwrapNetworkRequest(fragmentReference.networkRequest, networkRequestOptions);
|
|
21
|
+
const readerWithRefetchQueries = (0, PromiseWrapper_1.readPromise)(fragmentReference.readerWithRefetchQueries);
|
|
22
22
|
const data = (0, useReadAndSubscribe_1.useReadAndSubscribe)(fragmentReference, networkRequestOptions, readerWithRefetchQueries.readerArtifact.readerAst);
|
|
23
23
|
const param = Object.assign({ data: data, parameters: fragmentReference.variables }, (readerWithRefetchQueries.readerArtifact.hasUpdatable
|
|
24
24
|
? {
|
|
25
|
-
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragmentReference,
|
|
25
|
+
startUpdate: (0, startUpdate_1.getOrCreateCachedStartUpdate)(environment, fragmentReference, networkRequestOptions),
|
|
26
26
|
}
|
|
27
27
|
: undefined));
|
|
28
|
+
// @ts-expect-error
|
|
28
29
|
return readerWithRefetchQueries.readerArtifact.resolver(param);
|
|
29
30
|
}
|
|
30
31
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@isograph/react",
|
|
3
|
-
"version": "0.0.0-main-
|
|
3
|
+
"version": "0.0.0-main-08dac51c",
|
|
4
4
|
"description": "Use Isograph with React",
|
|
5
5
|
"homepage": "https://isograph.dev",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
"author": "Isograph Labs",
|
|
9
9
|
"license": "MIT",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@isograph/
|
|
12
|
-
"@isograph/
|
|
13
|
-
"@isograph/
|
|
11
|
+
"@isograph/react-disposable-state": "0.0.0-main-08dac51c",
|
|
12
|
+
"@isograph/reference-counted-pointer": "0.0.0-main-08dac51c",
|
|
13
|
+
"@isograph/disposable-types": "0.0.0-main-08dac51c"
|
|
14
14
|
},
|
|
15
15
|
"peerDependencies": {
|
|
16
16
|
"react": "^18.0.0 || ^19.0.0"
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { ReaderWithRefetchQueries } from '../core/entrypoint';
|
|
2
2
|
import { stableCopy } from './cache';
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
type ComponentOrFieldName,
|
|
5
|
+
type StoreLink,
|
|
6
|
+
} from './IsographEnvironment';
|
|
4
7
|
import { PromiseWrapper } from './PromiseWrapper';
|
|
5
8
|
import type { StartUpdate } from './reader';
|
|
6
9
|
|
|
@@ -53,8 +56,12 @@ export type FragmentReference<
|
|
|
53
56
|
ReaderWithRefetchQueries<TReadFromStore, TClientFieldValue>
|
|
54
57
|
>;
|
|
55
58
|
readonly root: StoreLink;
|
|
59
|
+
readonly fieldName: ComponentOrFieldName;
|
|
60
|
+
readonly readerArtifactKind:
|
|
61
|
+
| 'EagerReaderArtifact'
|
|
62
|
+
| 'ComponentReaderArtifact';
|
|
56
63
|
// TODO we potentially stably copy and stringify variables a lot!
|
|
57
|
-
// So, we should employ interior mutability: pretend that
|
|
64
|
+
// So, we should employ interior mutability: pretend that fragment reference
|
|
58
65
|
// is immutable, but actually store something like
|
|
59
66
|
// `Map<Variable, StablyCopiedStringifiedOutput>`
|
|
60
67
|
// and read or update that map when we would otherwise stably copy and
|
|
@@ -67,7 +74,6 @@ export type StableIdForFragmentReference = string;
|
|
|
67
74
|
|
|
68
75
|
export function stableIdForFragmentReference(
|
|
69
76
|
fragmentReference: FragmentReference<any, any>,
|
|
70
|
-
fieldName: string,
|
|
71
77
|
): StableIdForFragmentReference {
|
|
72
|
-
return `${fragmentReference.root.__typename}/${fragmentReference.root.__link}/${fieldName}/${JSON.stringify(stableCopy(fragmentReference.variables))}`;
|
|
78
|
+
return `${fragmentReference.root.__typename}/${fragmentReference.root.__link}/${fragmentReference.fieldName}/${JSON.stringify(stableCopy(fragmentReference.variables))}`;
|
|
73
79
|
}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { ParentCache } from '@isograph/react-disposable-state';
|
|
2
2
|
import type { Brand } from './brand';
|
|
3
|
+
import { isArray } from './cache';
|
|
3
4
|
import {
|
|
4
5
|
IsographEntrypoint,
|
|
5
6
|
IsographOperation,
|
|
6
7
|
IsographPersistedOperation,
|
|
8
|
+
type ReaderWithRefetchQueries,
|
|
9
|
+
type ReaderWithRefetchQueriesLoader,
|
|
7
10
|
} from './entrypoint';
|
|
8
11
|
import {
|
|
9
12
|
FragmentReference,
|
|
@@ -14,10 +17,13 @@ import {
|
|
|
14
17
|
import type { RetainedQuery } from './garbageCollection';
|
|
15
18
|
import { LogFunction, WrappedLogFunction } from './logging';
|
|
16
19
|
import { type StoreLayer } from './optimisticProxy';
|
|
17
|
-
import {
|
|
20
|
+
import {
|
|
21
|
+
PromiseWrapper,
|
|
22
|
+
wrapPromise,
|
|
23
|
+
wrapResolvedValue,
|
|
24
|
+
} from './PromiseWrapper';
|
|
18
25
|
import { WithEncounteredRecords } from './read';
|
|
19
26
|
import type { ReaderAst, StartUpdate } from './reader';
|
|
20
|
-
import { isArray } from './cache';
|
|
21
27
|
|
|
22
28
|
export type ComponentOrFieldName = string;
|
|
23
29
|
export type StringifiedArgs = string;
|
|
@@ -219,3 +225,32 @@ export function getOrLoadIsographArtifact(
|
|
|
219
225
|
environment.entrypointArtifactCache.set(key, wrapped);
|
|
220
226
|
return wrapped;
|
|
221
227
|
}
|
|
228
|
+
|
|
229
|
+
export function getOrLoadReaderWithRefetchQueries(
|
|
230
|
+
_environment: IsographEnvironment,
|
|
231
|
+
readerWithRefetchQueries:
|
|
232
|
+
| ReaderWithRefetchQueries<any, any>
|
|
233
|
+
| ReaderWithRefetchQueriesLoader<any, any>,
|
|
234
|
+
): {
|
|
235
|
+
readerWithRefetchQueries: PromiseWrapper<ReaderWithRefetchQueries<any, any>>;
|
|
236
|
+
fieldName: string;
|
|
237
|
+
readerArtifactKind: 'EagerReaderArtifact' | 'ComponentReaderArtifact';
|
|
238
|
+
} {
|
|
239
|
+
switch (readerWithRefetchQueries.kind) {
|
|
240
|
+
case 'ReaderWithRefetchQueries':
|
|
241
|
+
return {
|
|
242
|
+
readerWithRefetchQueries: wrapResolvedValue(readerWithRefetchQueries),
|
|
243
|
+
fieldName: readerWithRefetchQueries.readerArtifact.fieldName,
|
|
244
|
+
readerArtifactKind: readerWithRefetchQueries.readerArtifact.kind,
|
|
245
|
+
};
|
|
246
|
+
case 'ReaderWithRefetchQueriesLoader':
|
|
247
|
+
return {
|
|
248
|
+
// TODO: cache promise wrapper
|
|
249
|
+
readerWithRefetchQueries: wrapPromise(
|
|
250
|
+
readerWithRefetchQueries.loader(),
|
|
251
|
+
),
|
|
252
|
+
fieldName: readerWithRefetchQueries.fieldName,
|
|
253
|
+
readerArtifactKind: readerWithRefetchQueries.readerArtifactKind,
|
|
254
|
+
};
|
|
255
|
+
}
|
|
256
|
+
}
|
package/src/core/cache.ts
CHANGED
|
@@ -26,6 +26,7 @@ import {
|
|
|
26
26
|
DataTypeValue,
|
|
27
27
|
FragmentSubscription,
|
|
28
28
|
getLink,
|
|
29
|
+
getOrLoadReaderWithRefetchQueries,
|
|
29
30
|
ROOT_ID,
|
|
30
31
|
StoreLink,
|
|
31
32
|
StoreRecord,
|
|
@@ -39,7 +40,6 @@ import {
|
|
|
39
40
|
getMutableStoreRecordProxy,
|
|
40
41
|
type StoreLayerWithData,
|
|
41
42
|
} from './optimisticProxy';
|
|
42
|
-
import { wrapPromise, wrapResolvedValue } from './PromiseWrapper';
|
|
43
43
|
import { readButDoNotEvaluate, WithEncounteredRecords } from './read';
|
|
44
44
|
import { ReaderLinkedField, ReaderScalarField, type ReaderAst } from './reader';
|
|
45
45
|
import { Argument, ArgumentValue } from './util';
|
|
@@ -113,11 +113,11 @@ export function getOrCreateCacheForArtifact<
|
|
|
113
113
|
break;
|
|
114
114
|
}
|
|
115
115
|
const factory = () => {
|
|
116
|
-
const readerWithRefetchQueries =
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
116
|
+
const { fieldName, readerArtifactKind, readerWithRefetchQueries } =
|
|
117
|
+
getOrLoadReaderWithRefetchQueries(
|
|
118
|
+
environment,
|
|
119
|
+
entrypoint.readerWithRefetchQueries,
|
|
120
|
+
);
|
|
121
121
|
const [networkRequest, disposeNetworkRequest] = maybeMakeNetworkRequest(
|
|
122
122
|
environment,
|
|
123
123
|
entrypoint,
|
|
@@ -132,6 +132,8 @@ export function getOrCreateCacheForArtifact<
|
|
|
132
132
|
{
|
|
133
133
|
kind: 'FragmentReference',
|
|
134
134
|
readerWithRefetchQueries,
|
|
135
|
+
fieldName,
|
|
136
|
+
readerArtifactKind,
|
|
135
137
|
root: { __link: ROOT_ID, __typename: entrypoint.concreteType },
|
|
136
138
|
variables,
|
|
137
139
|
networkRequest: networkRequest,
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useReadAndSubscribe } from '../react/useReadAndSubscribe';
|
|
2
|
+
import { maybeUnwrapNetworkRequest } from '../react/useResult';
|
|
2
3
|
import {
|
|
3
4
|
FragmentReference,
|
|
4
5
|
stableIdForFragmentReference,
|
|
@@ -11,7 +12,6 @@ import { createStartUpdate } from './startUpdate';
|
|
|
11
12
|
|
|
12
13
|
export function getOrCreateCachedComponent(
|
|
13
14
|
environment: IsographEnvironment,
|
|
14
|
-
componentName: string,
|
|
15
15
|
fragmentReference: FragmentReference<any, any>,
|
|
16
16
|
networkRequestOptions: NetworkRequestReaderOptions,
|
|
17
17
|
): React.FC<any> {
|
|
@@ -23,9 +23,13 @@ export function getOrCreateCachedComponent(
|
|
|
23
23
|
);
|
|
24
24
|
|
|
25
25
|
return (environment.componentCache[
|
|
26
|
-
stableIdForFragmentReference(fragmentReference
|
|
26
|
+
stableIdForFragmentReference(fragmentReference)
|
|
27
27
|
] ??= (() => {
|
|
28
28
|
function Component(additionalRuntimeProps: { [key: string]: any }) {
|
|
29
|
+
maybeUnwrapNetworkRequest(
|
|
30
|
+
fragmentReference.networkRequest,
|
|
31
|
+
networkRequestOptions,
|
|
32
|
+
);
|
|
29
33
|
const readerWithRefetchQueries = readPromise(
|
|
30
34
|
fragmentReference.readerWithRefetchQueries,
|
|
31
35
|
);
|
|
@@ -38,7 +42,7 @@ export function getOrCreateCachedComponent(
|
|
|
38
42
|
|
|
39
43
|
logMessage(environment, () => ({
|
|
40
44
|
kind: 'ComponentRerendered',
|
|
41
|
-
componentName,
|
|
45
|
+
componentName: fragmentReference.fieldName,
|
|
42
46
|
rootLink: fragmentReference.root,
|
|
43
47
|
}));
|
|
44
48
|
|
|
@@ -54,7 +58,7 @@ export function getOrCreateCachedComponent(
|
|
|
54
58
|
);
|
|
55
59
|
}
|
|
56
60
|
const idString = `(type: ${fragmentReference.root.__typename}, id: ${fragmentReference.root.__link})`;
|
|
57
|
-
Component.displayName = `${
|
|
61
|
+
Component.displayName = `${fragmentReference.fieldName} ${idString} @component`;
|
|
58
62
|
return Component;
|
|
59
63
|
})());
|
|
60
64
|
}
|
package/src/core/entrypoint.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Contravariant, PhantomData } from './brand';
|
|
2
2
|
import type { NetworkResponseObject } from './cache';
|
|
3
3
|
import type { UnknownTReadFromStore } from './FragmentReference';
|
|
4
|
-
import type { TypeName } from './IsographEnvironment';
|
|
4
|
+
import type { ComponentOrFieldName, TypeName } from './IsographEnvironment';
|
|
5
5
|
import { TopLevelReaderArtifact } from './reader';
|
|
6
6
|
import { Arguments } from './util';
|
|
7
7
|
|
|
@@ -24,6 +24,10 @@ export type ReaderWithRefetchQueriesLoader<
|
|
|
24
24
|
TClientFieldValue,
|
|
25
25
|
> = {
|
|
26
26
|
readonly kind: 'ReaderWithRefetchQueriesLoader';
|
|
27
|
+
readonly fieldName: ComponentOrFieldName;
|
|
28
|
+
readonly readerArtifactKind:
|
|
29
|
+
| 'EagerReaderArtifact'
|
|
30
|
+
| 'ComponentReaderArtifact';
|
|
27
31
|
readonly loader: () => Promise<
|
|
28
32
|
ReaderWithRefetchQueries<TReadFromStore, TClientFieldValue>
|
|
29
33
|
>;
|
|
@@ -78,6 +82,9 @@ export type IsographEntrypointLoader<
|
|
|
78
82
|
> = {
|
|
79
83
|
readonly kind: 'EntrypointLoader';
|
|
80
84
|
readonly typeAndField: string;
|
|
85
|
+
readonly readerArtifactKind:
|
|
86
|
+
| 'EagerReaderArtifact'
|
|
87
|
+
| 'ComponentReaderArtifact';
|
|
81
88
|
readonly loader: () => Promise<
|
|
82
89
|
IsographEntrypoint<
|
|
83
90
|
TReadFromStore,
|
|
@@ -346,6 +346,8 @@ function readDataForOnComplete<
|
|
|
346
346
|
readerWithRefetchQueries: wrapResolvedValue(
|
|
347
347
|
resolvedReaderWithRefetchQueries,
|
|
348
348
|
),
|
|
349
|
+
fieldName: resolvedReaderWithRefetchQueries.readerArtifact.fieldName,
|
|
350
|
+
readerArtifactKind: resolvedReaderWithRefetchQueries.readerArtifact.kind,
|
|
349
351
|
root,
|
|
350
352
|
variables,
|
|
351
353
|
networkRequest: fakeNetworkRequest,
|
|
@@ -363,7 +365,6 @@ function readDataForOnComplete<
|
|
|
363
365
|
// TClientFieldValue which is a React.FC<...>
|
|
364
366
|
return getOrCreateCachedComponent(
|
|
365
367
|
environment,
|
|
366
|
-
readerArtifact.fieldName,
|
|
367
368
|
{
|
|
368
369
|
kind: 'FragmentReference',
|
|
369
370
|
readerWithRefetchQueries: wrapResolvedValue({
|
|
@@ -372,6 +373,8 @@ function readDataForOnComplete<
|
|
|
372
373
|
nestedRefetchQueries:
|
|
373
374
|
resolvedReaderWithRefetchQueries.nestedRefetchQueries,
|
|
374
375
|
}),
|
|
376
|
+
fieldName: readerArtifact.fieldName,
|
|
377
|
+
readerArtifactKind: readerArtifact.kind,
|
|
375
378
|
root,
|
|
376
379
|
variables,
|
|
377
380
|
networkRequest: fakeNetworkRequest,
|
|
@@ -388,7 +391,6 @@ function readDataForOnComplete<
|
|
|
388
391
|
startUpdate: getOrCreateCachedStartUpdate(
|
|
389
392
|
environment,
|
|
390
393
|
fragment,
|
|
391
|
-
resolvedReaderWithRefetchQueries.readerArtifact.fieldName,
|
|
392
394
|
fakeNetworkRequestOptions,
|
|
393
395
|
),
|
|
394
396
|
}
|
package/src/core/read.ts
CHANGED
|
@@ -21,6 +21,7 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
assertLink,
|
|
23
23
|
getOrLoadIsographArtifact,
|
|
24
|
+
getOrLoadReaderWithRefetchQueries,
|
|
24
25
|
IsographEnvironment,
|
|
25
26
|
type DataTypeValue,
|
|
26
27
|
type StoreLink,
|
|
@@ -346,11 +347,11 @@ export function readLoadablySelectedFieldData(
|
|
|
346
347
|
const fragmentReferenceAndDisposeFromEntrypoint = (
|
|
347
348
|
entrypoint: IsographEntrypoint<any, any, any, {}>,
|
|
348
349
|
): [FragmentReference<any, any>, CleanupFn] => {
|
|
349
|
-
const readerWithRefetchQueries =
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
350
|
+
const { fieldName, readerArtifactKind, readerWithRefetchQueries } =
|
|
351
|
+
getOrLoadReaderWithRefetchQueries(
|
|
352
|
+
environment,
|
|
353
|
+
entrypoint.readerWithRefetchQueries,
|
|
354
|
+
);
|
|
354
355
|
const [networkRequest, disposeNetworkRequest] =
|
|
355
356
|
maybeMakeNetworkRequest(
|
|
356
357
|
environment,
|
|
@@ -363,7 +364,8 @@ export function readLoadablySelectedFieldData(
|
|
|
363
364
|
const fragmentReference: FragmentReference<any, any> = {
|
|
364
365
|
kind: 'FragmentReference',
|
|
365
366
|
readerWithRefetchQueries,
|
|
366
|
-
|
|
367
|
+
fieldName,
|
|
368
|
+
readerArtifactKind,
|
|
367
369
|
// TODO localVariables is not guaranteed to have an id field
|
|
368
370
|
root,
|
|
369
371
|
variables: localVariables,
|
|
@@ -397,11 +399,12 @@ export function readLoadablySelectedFieldData(
|
|
|
397
399
|
| { kind: 'Disposed' } = { kind: 'EntrypointNotLoaded' };
|
|
398
400
|
|
|
399
401
|
const readerWithRefetchQueries = wrapPromise(
|
|
400
|
-
isographArtifactPromiseWrapper.promise.then(
|
|
401
|
-
entrypoint
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
402
|
+
isographArtifactPromiseWrapper.promise.then(
|
|
403
|
+
(entrypoint) =>
|
|
404
|
+
getOrLoadReaderWithRefetchQueries(
|
|
405
|
+
environment,
|
|
406
|
+
entrypoint.readerWithRefetchQueries,
|
|
407
|
+
).readerWithRefetchQueries.promise,
|
|
405
408
|
),
|
|
406
409
|
);
|
|
407
410
|
const networkRequest = wrapPromise(
|
|
@@ -427,7 +430,8 @@ export function readLoadablySelectedFieldData(
|
|
|
427
430
|
const fragmentReference: FragmentReference<any, any> = {
|
|
428
431
|
kind: 'FragmentReference',
|
|
429
432
|
readerWithRefetchQueries,
|
|
430
|
-
|
|
433
|
+
fieldName: field.name,
|
|
434
|
+
readerArtifactKind: field.entrypoint.readerArtifactKind,
|
|
431
435
|
// TODO localVariables is not guaranteed to have an id field
|
|
432
436
|
root,
|
|
433
437
|
variables: localVariables,
|
|
@@ -563,6 +567,8 @@ export function readResolverFieldData(
|
|
|
563
567
|
const fragment = {
|
|
564
568
|
kind: 'FragmentReference',
|
|
565
569
|
readerWithRefetchQueries: wrapResolvedValue(readerWithRefetchQueries),
|
|
570
|
+
fieldName: field.readerArtifact.fieldName,
|
|
571
|
+
readerArtifactKind: field.readerArtifact.kind,
|
|
566
572
|
root,
|
|
567
573
|
variables: generateChildVariableMap(variables, field.arguments),
|
|
568
574
|
networkRequest,
|
|
@@ -595,7 +601,6 @@ export function readResolverFieldData(
|
|
|
595
601
|
? getOrCreateCachedStartUpdate(
|
|
596
602
|
environment,
|
|
597
603
|
fragment,
|
|
598
|
-
readerWithRefetchQueries.readerArtifact.fieldName,
|
|
599
604
|
networkRequestOptions,
|
|
600
605
|
)
|
|
601
606
|
: undefined,
|
|
@@ -610,7 +615,6 @@ export function readResolverFieldData(
|
|
|
610
615
|
kind: 'Success',
|
|
611
616
|
data: getOrCreateCachedComponent(
|
|
612
617
|
environment,
|
|
613
|
-
field.readerArtifact.fieldName,
|
|
614
618
|
fragment,
|
|
615
619
|
networkRequestOptions,
|
|
616
620
|
),
|
|
@@ -688,6 +692,8 @@ export function readLinkedFieldData(
|
|
|
688
692
|
kind: 'FragmentReference',
|
|
689
693
|
readerWithRefetchQueries: wrapResolvedValue(readerWithRefetchQueries),
|
|
690
694
|
root,
|
|
695
|
+
fieldName: field.condition.fieldName,
|
|
696
|
+
readerArtifactKind: field.condition.kind,
|
|
691
697
|
variables: generateChildVariableMap(
|
|
692
698
|
variables,
|
|
693
699
|
// TODO this is wrong
|
|
@@ -706,7 +712,6 @@ export function readLinkedFieldData(
|
|
|
706
712
|
startUpdate: getOrCreateCachedStartUpdate(
|
|
707
713
|
environment,
|
|
708
714
|
fragment,
|
|
709
|
-
readerWithRefetchQueries.readerArtifact.fieldName,
|
|
710
715
|
networkRequestOptions,
|
|
711
716
|
),
|
|
712
717
|
}
|
|
@@ -965,6 +970,8 @@ export function readClientPointerData(
|
|
|
965
970
|
|
|
966
971
|
const fragmentReference: FragmentReference<any, any> = {
|
|
967
972
|
kind: 'FragmentReference',
|
|
973
|
+
fieldName: field.fieldName,
|
|
974
|
+
readerArtifactKind: 'EagerReaderArtifact',
|
|
968
975
|
readerWithRefetchQueries: readerWithRefetchQueries,
|
|
969
976
|
root,
|
|
970
977
|
variables,
|
package/src/core/reader.ts
CHANGED
|
@@ -31,7 +31,7 @@ export type EagerReaderArtifact<
|
|
|
31
31
|
TClientFieldValue,
|
|
32
32
|
> = {
|
|
33
33
|
readonly kind: 'EagerReaderArtifact';
|
|
34
|
-
readonly fieldName:
|
|
34
|
+
readonly fieldName: ComponentOrFieldName;
|
|
35
35
|
readonly readerAst: ReaderAst<TReadFromStore>;
|
|
36
36
|
readonly resolver: (
|
|
37
37
|
data: ResolverFirstParameter<TReadFromStore>,
|
|
@@ -151,7 +151,7 @@ export type LoadablySelectedField = {
|
|
|
151
151
|
readonly queryArguments: Arguments | null;
|
|
152
152
|
readonly refetchReaderAst: ReaderAst<any>;
|
|
153
153
|
|
|
154
|
-
// TODO we should not type these as any
|
|
154
|
+
// TODO we should not type these as any.
|
|
155
155
|
readonly entrypoint:
|
|
156
156
|
| IsographEntrypoint<any, any, any, any>
|
|
157
157
|
| IsographEntrypointLoader<any, any, any>;
|
package/src/core/startUpdate.ts
CHANGED
|
@@ -43,11 +43,10 @@ export function getOrCreateCachedStartUpdate<
|
|
|
43
43
|
>(
|
|
44
44
|
environment: IsographEnvironment,
|
|
45
45
|
fragmentReference: FragmentReference<TReadFromStore, unknown>,
|
|
46
|
-
eagerResolverName: string,
|
|
47
46
|
networkRequestOptions: NetworkRequestReaderOptions,
|
|
48
47
|
): ExtractStartUpdate<TReadFromStore> {
|
|
49
48
|
return (environment.eagerReaderCache[
|
|
50
|
-
stableIdForFragmentReference(fragmentReference
|
|
49
|
+
stableIdForFragmentReference(fragmentReference)
|
|
51
50
|
] ??= createStartUpdate(
|
|
52
51
|
environment,
|
|
53
52
|
fragmentReference,
|
|
@@ -14,9 +14,11 @@ import {
|
|
|
14
14
|
FragmentReference,
|
|
15
15
|
type UnknownTReadFromStore,
|
|
16
16
|
} from '../core/FragmentReference';
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
getOrLoadReaderWithRefetchQueries,
|
|
19
|
+
ROOT_ID,
|
|
20
|
+
} from '../core/IsographEnvironment';
|
|
18
21
|
import { maybeMakeNetworkRequest } from '../core/makeNetworkRequest';
|
|
19
|
-
import { wrapPromise, wrapResolvedValue } from '../core/PromiseWrapper';
|
|
20
22
|
import { useIsographEnvironment } from './IsographEnvironmentProvider';
|
|
21
23
|
|
|
22
24
|
export type UseImperativeReferenceResult<
|
|
@@ -64,11 +66,11 @@ export function useImperativeReference<
|
|
|
64
66
|
variables: ExtractParameters<TReadFromStore>,
|
|
65
67
|
fetchOptions?: FetchOptions<TClientFieldValue>,
|
|
66
68
|
) => {
|
|
67
|
-
const readerWithRefetchQueries =
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
69
|
+
const { fieldName, readerArtifactKind, readerWithRefetchQueries } =
|
|
70
|
+
getOrLoadReaderWithRefetchQueries(
|
|
71
|
+
environment,
|
|
72
|
+
entrypoint.readerWithRefetchQueries,
|
|
73
|
+
);
|
|
72
74
|
const [networkRequest, disposeNetworkRequest] = maybeMakeNetworkRequest(
|
|
73
75
|
environment,
|
|
74
76
|
entrypoint,
|
|
@@ -80,6 +82,8 @@ export function useImperativeReference<
|
|
|
80
82
|
{
|
|
81
83
|
kind: 'FragmentReference',
|
|
82
84
|
readerWithRefetchQueries,
|
|
85
|
+
fieldName,
|
|
86
|
+
readerArtifactKind,
|
|
83
87
|
root: { __link: ROOT_ID, __typename: entrypoint.concreteType },
|
|
84
88
|
variables,
|
|
85
89
|
networkRequest,
|
|
@@ -6,7 +6,6 @@ import {
|
|
|
6
6
|
stableIdForFragmentReference,
|
|
7
7
|
type UnknownTReadFromStore,
|
|
8
8
|
} from '../core/FragmentReference';
|
|
9
|
-
import { readPromise } from '../core/PromiseWrapper';
|
|
10
9
|
import {
|
|
11
10
|
NetworkRequestReaderOptions,
|
|
12
11
|
readButDoNotEvaluate,
|
|
@@ -75,13 +74,7 @@ export function useSubscribeToMultiple<
|
|
|
75
74
|
[
|
|
76
75
|
items
|
|
77
76
|
.map(({ fragmentReference }) => {
|
|
78
|
-
|
|
79
|
-
fragmentReference.readerWithRefetchQueries,
|
|
80
|
-
);
|
|
81
|
-
stableIdForFragmentReference(
|
|
82
|
-
fragmentReference,
|
|
83
|
-
readerWithRefetchQueries.readerArtifact.fieldName,
|
|
84
|
-
);
|
|
77
|
+
stableIdForFragmentReference(fragmentReference);
|
|
85
78
|
})
|
|
86
79
|
.join('.'),
|
|
87
80
|
],
|
package/src/react/useResult.ts
CHANGED
|
@@ -28,25 +28,23 @@ export function useResult<
|
|
|
28
28
|
partialNetworkRequestOptions,
|
|
29
29
|
);
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
fragmentReference.networkRequest,
|
|
33
|
-
networkRequestOptions,
|
|
34
|
-
);
|
|
35
|
-
const readerWithRefetchQueries = readPromise(
|
|
36
|
-
fragmentReference.readerWithRefetchQueries,
|
|
37
|
-
);
|
|
38
|
-
|
|
39
|
-
switch (readerWithRefetchQueries.readerArtifact.kind) {
|
|
31
|
+
switch (fragmentReference.readerArtifactKind) {
|
|
40
32
|
case 'ComponentReaderArtifact': {
|
|
41
33
|
// @ts-expect-error
|
|
42
34
|
return getOrCreateCachedComponent(
|
|
43
35
|
environment,
|
|
44
|
-
readerWithRefetchQueries.readerArtifact.fieldName,
|
|
45
36
|
fragmentReference,
|
|
46
37
|
networkRequestOptions,
|
|
47
38
|
);
|
|
48
39
|
}
|
|
49
40
|
case 'EagerReaderArtifact': {
|
|
41
|
+
maybeUnwrapNetworkRequest(
|
|
42
|
+
fragmentReference.networkRequest,
|
|
43
|
+
networkRequestOptions,
|
|
44
|
+
);
|
|
45
|
+
const readerWithRefetchQueries = readPromise(
|
|
46
|
+
fragmentReference.readerWithRefetchQueries,
|
|
47
|
+
);
|
|
50
48
|
const data = useReadAndSubscribe(
|
|
51
49
|
fragmentReference,
|
|
52
50
|
networkRequestOptions,
|
|
@@ -60,12 +58,12 @@ export function useResult<
|
|
|
60
58
|
startUpdate: getOrCreateCachedStartUpdate(
|
|
61
59
|
environment,
|
|
62
60
|
fragmentReference,
|
|
63
|
-
readerWithRefetchQueries.readerArtifact.fieldName,
|
|
64
61
|
networkRequestOptions,
|
|
65
62
|
),
|
|
66
63
|
}
|
|
67
64
|
: undefined),
|
|
68
65
|
};
|
|
66
|
+
// @ts-expect-error
|
|
69
67
|
return readerWithRefetchQueries.readerArtifact.resolver(param);
|
|
70
68
|
}
|
|
71
69
|
}
|