@isograph/react 0.4.3 → 0.5.1
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 +10 -3
- package/dist/_virtual/rolldown_runtime.js +25 -0
- package/dist/core/FragmentReference.d.mts +38 -0
- package/dist/core/FragmentReference.d.mts.map +1 -0
- package/dist/core/FragmentReference.d.ts +31 -27
- package/dist/core/FragmentReference.d.ts.map +1 -1
- package/dist/core/FragmentReference.js +8 -6
- package/dist/core/FragmentReference.mjs +10 -0
- package/dist/core/FragmentReference.mjs.map +1 -0
- package/dist/core/IsographEnvironment.d.mts +89 -0
- package/dist/core/IsographEnvironment.d.mts.map +1 -0
- package/dist/core/IsographEnvironment.d.ts +77 -72
- package/dist/core/IsographEnvironment.d.ts.map +1 -1
- package/dist/core/IsographEnvironment.js +62 -59
- package/dist/core/IsographEnvironment.mjs +67 -0
- package/dist/core/IsographEnvironment.mjs.map +1 -0
- package/dist/core/PromiseWrapper.d.mts +36 -0
- package/dist/core/PromiseWrapper.d.mts.map +1 -0
- package/dist/core/PromiseWrapper.d.ts +27 -18
- package/dist/core/PromiseWrapper.d.ts.map +1 -1
- package/dist/core/PromiseWrapper.js +45 -43
- package/dist/core/PromiseWrapper.mjs +49 -0
- package/dist/core/PromiseWrapper.mjs.map +1 -0
- package/dist/core/areEqualWithDeepComparison.js +56 -108
- package/dist/core/areEqualWithDeepComparison.mjs +62 -0
- package/dist/core/areEqualWithDeepComparison.mjs.map +1 -0
- package/dist/core/brand.d.mts +19 -0
- package/dist/core/brand.d.mts.map +1 -0
- package/dist/core/brand.d.ts +18 -1
- package/dist/core/brand.d.ts.map +1 -1
- package/dist/core/cache.d.mts +20 -0
- package/dist/core/cache.d.mts.map +1 -0
- package/dist/core/cache.d.ts +18 -34
- package/dist/core/cache.d.ts.map +1 -1
- package/dist/core/cache.js +210 -516
- package/dist/core/cache.mjs +237 -0
- package/dist/core/cache.mjs.map +1 -0
- package/dist/core/check.d.mts +28 -0
- package/dist/core/check.d.mts.map +1 -0
- package/dist/core/check.d.ts +24 -18
- package/dist/core/check.d.ts.map +1 -1
- package/dist/core/check.js +80 -124
- package/dist/core/check.mjs +84 -0
- package/dist/core/check.mjs.map +1 -0
- package/dist/core/componentCache.js +10 -34
- package/dist/core/componentCache.mjs +12 -0
- package/dist/core/componentCache.mjs.map +1 -0
- package/dist/core/entrypoint.d.mts +99 -0
- package/dist/core/entrypoint.d.mts.map +1 -0
- package/dist/core/entrypoint.d.ts +83 -68
- package/dist/core/entrypoint.d.ts.map +1 -1
- package/dist/core/entrypoint.js +6 -5
- package/dist/core/entrypoint.mjs +8 -0
- package/dist/core/entrypoint.mjs.map +1 -0
- package/dist/core/garbageCollection.d.mts +18 -0
- package/dist/core/garbageCollection.d.mts.map +1 -0
- package/dist/core/garbageCollection.d.ts +15 -10
- package/dist/core/garbageCollection.d.ts.map +1 -1
- package/dist/core/garbageCollection.js +82 -99
- package/dist/core/garbageCollection.mjs +89 -0
- package/dist/core/garbageCollection.mjs.map +1 -0
- package/dist/core/getOrCreateCacheForArtifact.js +37 -0
- package/dist/core/getOrCreateCacheForArtifact.mjs +38 -0
- package/dist/core/getOrCreateCacheForArtifact.mjs.map +1 -0
- package/dist/core/logging.d.mts +95 -0
- package/dist/core/logging.d.mts.map +1 -0
- package/dist/core/logging.d.ts +78 -60
- package/dist/core/logging.d.ts.map +1 -1
- package/dist/core/logging.js +17 -18
- package/dist/core/logging.mjs +20 -0
- package/dist/core/logging.mjs.map +1 -0
- package/dist/core/makeNetworkRequest.d.mts +13 -0
- package/dist/core/makeNetworkRequest.d.mts.map +1 -0
- package/dist/core/makeNetworkRequest.d.ts +12 -8
- package/dist/core/makeNetworkRequest.d.ts.map +1 -1
- package/dist/core/makeNetworkRequest.js +188 -195
- package/dist/core/makeNetworkRequest.mjs +195 -0
- package/dist/core/makeNetworkRequest.mjs.map +1 -0
- package/dist/core/optimisticProxy.d.mts +43 -0
- package/dist/core/optimisticProxy.d.mts.map +1 -0
- package/dist/core/optimisticProxy.d.ts +43 -0
- package/dist/core/optimisticProxy.d.ts.map +1 -0
- package/dist/core/optimisticProxy.js +273 -0
- package/dist/core/optimisticProxy.mjs +268 -0
- package/dist/core/optimisticProxy.mjs.map +1 -0
- package/dist/core/read.d.mts +29 -0
- package/dist/core/read.d.mts.map +1 -0
- package/dist/core/read.d.ts +23 -27
- package/dist/core/read.d.ts.map +1 -1
- package/dist/core/read.js +438 -618
- package/dist/core/read.mjs +456 -0
- package/dist/core/read.mjs.map +1 -0
- package/dist/core/reader.d.mts +89 -0
- package/dist/core/reader.d.mts.map +1 -0
- package/dist/core/reader.d.ts +78 -74
- package/dist/core/reader.d.ts.map +1 -1
- package/dist/core/startUpdate.js +118 -156
- package/dist/core/startUpdate.mjs +125 -0
- package/dist/core/startUpdate.mjs.map +1 -0
- package/dist/core/subscribe.d.mts +12 -0
- package/dist/core/subscribe.d.mts.map +1 -0
- package/dist/core/subscribe.d.ts +12 -0
- package/dist/core/subscribe.d.ts.map +1 -0
- package/dist/core/subscribe.js +79 -0
- package/dist/core/subscribe.mjs +79 -0
- package/dist/core/subscribe.mjs.map +1 -0
- package/dist/core/util.d.mts +27 -0
- package/dist/core/util.d.mts.map +1 -0
- package/dist/core/util.d.ts +21 -17
- package/dist/core/util.d.ts.map +1 -1
- package/dist/core/util.js +22 -2
- package/dist/core/util.mjs +21 -0
- package/dist/core/util.mjs.map +1 -0
- package/dist/core/writeData.d.mts +11 -0
- package/dist/core/writeData.d.mts.map +1 -0
- package/dist/core/writeData.d.ts +11 -0
- package/dist/core/writeData.d.ts.map +1 -0
- package/dist/core/writeData.js +41 -0
- package/dist/core/writeData.mjs +42 -0
- package/dist/core/writeData.mjs.map +1 -0
- package/dist/index.d.mts +32 -0
- package/dist/index.d.ts +32 -29
- package/dist/index.js +70 -68
- package/dist/index.mjs +31 -0
- package/dist/loadable-hooks/useClientSideDefer.d.mts +12 -0
- package/dist/loadable-hooks/useClientSideDefer.d.mts.map +1 -0
- package/dist/loadable-hooks/useClientSideDefer.d.ts +10 -8
- package/dist/loadable-hooks/useClientSideDefer.d.ts.map +1 -1
- package/dist/loadable-hooks/useClientSideDefer.js +14 -12
- package/dist/loadable-hooks/useClientSideDefer.mjs +14 -0
- package/dist/loadable-hooks/useClientSideDefer.mjs.map +1 -0
- package/dist/loadable-hooks/useConnectionSpecPagination.d.mts +33 -0
- package/dist/loadable-hooks/useConnectionSpecPagination.d.mts.map +1 -0
- package/dist/loadable-hooks/useConnectionSpecPagination.d.ts +27 -21
- package/dist/loadable-hooks/useConnectionSpecPagination.d.ts.map +1 -1
- package/dist/loadable-hooks/useConnectionSpecPagination.js +133 -158
- package/dist/loadable-hooks/useConnectionSpecPagination.mjs +134 -0
- package/dist/loadable-hooks/useConnectionSpecPagination.mjs.map +1 -0
- package/dist/loadable-hooks/useImperativeExposedMutationField.d.mts +8 -0
- package/dist/loadable-hooks/useImperativeExposedMutationField.d.mts.map +1 -0
- package/dist/loadable-hooks/useImperativeExposedMutationField.d.ts +6 -3
- package/dist/loadable-hooks/useImperativeExposedMutationField.d.ts.map +1 -1
- package/dist/loadable-hooks/useImperativeExposedMutationField.js +9 -12
- package/dist/loadable-hooks/useImperativeExposedMutationField.mjs +11 -0
- package/dist/loadable-hooks/useImperativeExposedMutationField.mjs.map +1 -0
- package/dist/loadable-hooks/useImperativeLoadableField.d.mts +19 -0
- package/dist/loadable-hooks/useImperativeLoadableField.d.mts.map +1 -0
- package/dist/loadable-hooks/useImperativeLoadableField.d.ts +15 -11
- package/dist/loadable-hooks/useImperativeLoadableField.d.ts.map +1 -1
- package/dist/loadable-hooks/useImperativeLoadableField.js +16 -12
- package/dist/loadable-hooks/useImperativeLoadableField.mjs +17 -0
- package/dist/loadable-hooks/useImperativeLoadableField.mjs.map +1 -0
- package/dist/loadable-hooks/useSkipLimitPagination.d.mts +24 -0
- package/dist/loadable-hooks/useSkipLimitPagination.d.mts.map +1 -0
- package/dist/loadable-hooks/useSkipLimitPagination.d.ts +19 -15
- package/dist/loadable-hooks/useSkipLimitPagination.d.ts.map +1 -1
- package/dist/loadable-hooks/useSkipLimitPagination.js +118 -160
- package/dist/loadable-hooks/useSkipLimitPagination.mjs +119 -0
- package/dist/loadable-hooks/useSkipLimitPagination.mjs.map +1 -0
- package/dist/react/FragmentReader.d.mts +18 -0
- package/dist/react/FragmentReader.d.mts.map +1 -0
- package/dist/react/FragmentReader.d.ts +16 -7
- package/dist/react/FragmentReader.d.ts.map +1 -1
- package/dist/react/FragmentReader.js +8 -7
- package/dist/react/FragmentReader.mjs +10 -0
- package/dist/react/FragmentReader.mjs.map +1 -0
- package/dist/react/FragmentRenderer.d.mts +20 -0
- package/dist/react/FragmentRenderer.d.mts.map +1 -0
- package/dist/react/FragmentRenderer.d.ts +18 -13
- package/dist/react/FragmentRenderer.d.ts.map +1 -1
- package/dist/react/FragmentRenderer.js +11 -33
- package/dist/react/FragmentRenderer.mjs +12 -0
- package/dist/react/FragmentRenderer.mjs.map +1 -0
- package/dist/react/IsographEnvironmentProvider.d.mts +17 -0
- package/dist/react/IsographEnvironmentProvider.d.mts.map +1 -0
- package/dist/react/IsographEnvironmentProvider.d.ts +15 -9
- package/dist/react/IsographEnvironmentProvider.d.ts.map +1 -1
- package/dist/react/IsographEnvironmentProvider.js +15 -39
- package/dist/react/IsographEnvironmentProvider.mjs +17 -0
- package/dist/react/IsographEnvironmentProvider.mjs.map +1 -0
- package/dist/react/LoadableFieldReader.d.mts +21 -0
- package/dist/react/LoadableFieldReader.d.mts.map +1 -0
- package/dist/react/LoadableFieldReader.d.ts +20 -11
- package/dist/react/LoadableFieldReader.d.ts.map +1 -1
- package/dist/react/LoadableFieldReader.js +13 -8
- package/dist/react/LoadableFieldReader.mjs +14 -0
- package/dist/react/LoadableFieldReader.mjs.map +1 -0
- package/dist/react/LoadableFieldRenderer.d.mts +22 -0
- package/dist/react/LoadableFieldRenderer.d.mts.map +1 -0
- package/dist/react/LoadableFieldRenderer.d.ts +21 -12
- package/dist/react/LoadableFieldRenderer.d.ts.map +1 -1
- package/dist/react/LoadableFieldRenderer.js +13 -35
- package/dist/react/LoadableFieldRenderer.mjs +14 -0
- package/dist/react/LoadableFieldRenderer.mjs.map +1 -0
- package/dist/react/RenderAfterCommit__DO_NOT_USE.d.mts +18 -0
- package/dist/react/RenderAfterCommit__DO_NOT_USE.d.mts.map +1 -0
- package/dist/react/RenderAfterCommit__DO_NOT_USE.d.ts +11 -3
- package/dist/react/RenderAfterCommit__DO_NOT_USE.d.ts.map +1 -1
- package/dist/react/RenderAfterCommit__DO_NOT_USE.js +17 -13
- package/dist/react/RenderAfterCommit__DO_NOT_USE.mjs +18 -0
- package/dist/react/RenderAfterCommit__DO_NOT_USE.mjs.map +1 -0
- package/dist/react/createIsographEnvironment.d.mts +9 -0
- package/dist/react/createIsographEnvironment.d.mts.map +1 -0
- package/dist/react/createIsographEnvironment.d.ts +8 -0
- package/dist/react/createIsographEnvironment.d.ts.map +1 -0
- package/dist/react/createIsographEnvironment.js +10 -0
- package/dist/react/createIsographEnvironment.mjs +11 -0
- package/dist/react/createIsographEnvironment.mjs.map +1 -0
- package/dist/react/maybeUnwrapNetworkRequest.js +11 -0
- package/dist/react/maybeUnwrapNetworkRequest.mjs +12 -0
- package/dist/react/maybeUnwrapNetworkRequest.mjs.map +1 -0
- package/dist/react/useImperativeReference.d.mts +15 -0
- package/dist/react/useImperativeReference.d.mts.map +1 -0
- package/dist/react/useImperativeReference.d.ts +13 -7
- package/dist/react/useImperativeReference.d.ts.map +1 -1
- package/dist/react/useImperativeReference.js +34 -32
- package/dist/react/useImperativeReference.mjs +35 -0
- package/dist/react/useImperativeReference.mjs.map +1 -0
- package/dist/react/useLazyReference.d.mts +13 -0
- package/dist/react/useLazyReference.d.mts.map +1 -0
- package/dist/react/useLazyReference.d.ts +11 -5
- package/dist/react/useLazyReference.d.ts.map +1 -1
- package/dist/react/useLazyReference.js +17 -40
- package/dist/react/useLazyReference.mjs +18 -0
- package/dist/react/useLazyReference.mjs.map +1 -0
- package/dist/react/useReadAndSubscribe.d.mts +20 -0
- package/dist/react/useReadAndSubscribe.d.mts.map +1 -0
- package/dist/react/useReadAndSubscribe.d.ts +14 -9
- package/dist/react/useReadAndSubscribe.d.ts.map +1 -1
- package/dist/react/useReadAndSubscribe.js +57 -39
- package/dist/react/useReadAndSubscribe.mjs +59 -0
- package/dist/react/useReadAndSubscribe.mjs.map +1 -0
- package/dist/react/useRerenderOnChange.d.mts +12 -0
- package/dist/react/useRerenderOnChange.d.mts.map +1 -0
- package/dist/react/useRerenderOnChange.d.ts +10 -6
- package/dist/react/useRerenderOnChange.d.ts.map +1 -1
- package/dist/react/useRerenderOnChange.js +16 -20
- package/dist/react/useRerenderOnChange.mjs +17 -0
- package/dist/react/useRerenderOnChange.mjs.map +1 -0
- package/dist/react/useResult.d.mts +8 -0
- package/dist/react/useResult.d.mts.map +1 -0
- package/dist/react/useResult.d.ts +7 -5
- package/dist/react/useResult.d.ts.map +1 -1
- package/dist/react/useResult.js +27 -39
- package/dist/react/useResult.mjs +30 -0
- package/dist/react/useResult.mjs.map +1 -0
- package/package.json +26 -19
- package/src/core/FragmentReference.ts +13 -7
- package/src/core/IsographEnvironment.ts +80 -21
- package/src/core/PromiseWrapper.ts +14 -7
- package/src/core/areEqualWithDeepComparison.ts +2 -18
- package/src/core/brand.ts +18 -0
- package/src/core/cache.ts +62 -332
- package/src/core/check.ts +30 -26
- package/src/core/componentCache.ts +11 -44
- package/src/core/entrypoint.ts +50 -9
- package/src/core/garbageCollection.ts +81 -28
- package/src/core/getOrCreateCacheForArtifact.ts +86 -0
- package/src/core/logging.ts +25 -13
- package/src/core/makeNetworkRequest.ts +320 -94
- package/src/core/optimisticProxy.ts +544 -0
- package/src/core/read.ts +251 -198
- package/src/core/reader.ts +18 -17
- package/src/core/startUpdate.ts +47 -36
- package/src/core/subscribe.ts +189 -0
- package/src/core/util.ts +26 -0
- package/src/core/writeData.ts +79 -0
- package/src/index.ts +6 -4
- package/src/loadable-hooks/useClientSideDefer.ts +80 -30
- package/src/loadable-hooks/useConnectionSpecPagination.ts +54 -35
- package/src/loadable-hooks/useImperativeLoadableField.ts +5 -5
- package/src/loadable-hooks/useSkipLimitPagination.ts +22 -21
- package/src/react/FragmentReader.tsx +3 -1
- package/src/react/FragmentRenderer.tsx +8 -1
- package/src/react/IsographEnvironmentProvider.tsx +2 -1
- package/src/react/LoadableFieldReader.tsx +125 -16
- package/src/react/LoadableFieldRenderer.tsx +124 -16
- package/src/react/createIsographEnvironment.ts +23 -0
- package/src/react/maybeUnwrapNetworkRequest.ts +17 -0
- package/src/react/useImperativeReference.ts +25 -15
- package/src/react/useLazyReference.ts +20 -10
- package/src/react/useReadAndSubscribe.ts +53 -12
- package/src/react/useRerenderOnChange.ts +3 -3
- package/src/react/useResult.ts +15 -35
- package/src/tests/__isograph/Node/asEconomist/resolver_reader.ts +1 -1
- package/src/tests/__isograph/Query/linkedUpdate/entrypoint.ts +3 -1
- package/src/tests/__isograph/Query/linkedUpdate/raw_response_type.ts +13 -0
- package/src/tests/__isograph/Query/linkedUpdate/resolver_reader.ts +1 -1
- package/src/tests/__isograph/Query/meName/entrypoint.ts +3 -1
- package/src/tests/__isograph/Query/meName/raw_response_type.ts +7 -0
- package/src/tests/__isograph/Query/meName/resolver_reader.ts +1 -1
- package/src/tests/__isograph/Query/meNameSuccessor/entrypoint.ts +3 -1
- package/src/tests/__isograph/Query/meNameSuccessor/raw_response_type.ts +14 -0
- package/src/tests/__isograph/Query/meNameSuccessor/resolver_reader.ts +1 -1
- package/src/tests/__isograph/Query/nodeField/entrypoint.ts +3 -1
- package/src/tests/__isograph/Query/nodeField/raw_response_type.ts +7 -0
- package/src/tests/__isograph/Query/nodeField/resolver_reader.ts +1 -1
- package/src/tests/__isograph/Query/normalizeUndefinedField/entrypoint.ts +33 -0
- package/src/tests/__isograph/Query/normalizeUndefinedField/normalization_ast.ts +25 -0
- package/src/tests/__isograph/Query/normalizeUndefinedField/output_type.ts +3 -0
- package/src/tests/__isograph/Query/normalizeUndefinedField/param_type.ts +9 -0
- package/src/tests/__isograph/Query/normalizeUndefinedField/query_text.ts +6 -0
- package/src/tests/__isograph/Query/normalizeUndefinedField/raw_response_type.ts +7 -0
- package/src/tests/__isograph/Query/normalizeUndefinedField/resolver_reader.ts +38 -0
- package/src/tests/__isograph/Query/startUpdate/entrypoint.ts +3 -1
- package/src/tests/__isograph/Query/startUpdate/raw_response_type.ts +8 -0
- package/src/tests/__isograph/Query/startUpdate/resolver_reader.ts +1 -1
- package/src/tests/__isograph/Query/subquery/entrypoint.ts +3 -1
- package/src/tests/__isograph/Query/subquery/raw_response_type.ts +9 -0
- package/src/tests/__isograph/Query/subquery/resolver_reader.ts +1 -1
- package/src/tests/__isograph/iso.ts +11 -1
- package/src/tests/garbageCollection.test.ts +10 -10
- package/src/tests/meNameSuccessor.ts +7 -4
- package/src/tests/nodeQuery.ts +6 -4
- package/src/tests/normalizeData.test.ts +94 -18
- package/src/tests/optimisticProxy.test.ts +862 -0
- package/src/tests/startUpdate.test.ts +11 -11
- package/vitest.config.ts +5 -0
- package/dist/core/areEqualWithDeepComparison.d.ts +0 -3
- package/dist/core/areEqualWithDeepComparison.d.ts.map +0 -1
- package/dist/core/brand.js +0 -2
- package/dist/core/componentCache.d.ts +0 -5
- package/dist/core/componentCache.d.ts.map +0 -1
- package/dist/core/reader.js +0 -2
- package/dist/core/startUpdate.d.ts +0 -8
- package/dist/core/startUpdate.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
|
@@ -1,29 +1,27 @@
|
|
|
1
|
-
import { ItemCleanupPair } from '@isograph/disposable-types';
|
|
1
|
+
import type { ItemCleanupPair } from '@isograph/disposable-types';
|
|
2
2
|
import {
|
|
3
3
|
UNASSIGNED_STATE,
|
|
4
4
|
useUpdatableDisposableState,
|
|
5
5
|
} from '@isograph/react-disposable-state';
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
ReferenceCountedPointer,
|
|
9
|
-
} from '@isograph/reference-counted-pointer';
|
|
6
|
+
import type { ReferenceCountedPointer } from '@isograph/reference-counted-pointer';
|
|
7
|
+
import { createReferenceCountedPointer } from '@isograph/reference-counted-pointer';
|
|
10
8
|
import { useState } from 'react';
|
|
11
9
|
import { subscribeToAnyChange } from '../core/cache';
|
|
12
|
-
import { FetchOptions } from '../core/check';
|
|
13
|
-
import {
|
|
10
|
+
import type { FetchOptions } from '../core/check';
|
|
11
|
+
import type {
|
|
14
12
|
FragmentReference,
|
|
15
|
-
|
|
13
|
+
UnknownTReadFromStore,
|
|
16
14
|
} from '../core/FragmentReference';
|
|
17
15
|
import { getPromiseState, readPromise } from '../core/PromiseWrapper';
|
|
18
16
|
import {
|
|
19
17
|
readButDoNotEvaluate,
|
|
20
18
|
type WithEncounteredRecords,
|
|
21
19
|
} from '../core/read';
|
|
22
|
-
import { LoadableField,
|
|
20
|
+
import type { LoadableField, ReaderAst } from '../core/reader';
|
|
23
21
|
import { getOrCreateCachedStartUpdate } from '../core/startUpdate';
|
|
24
22
|
import { useIsographEnvironment } from '../react/IsographEnvironmentProvider';
|
|
23
|
+
import { maybeUnwrapNetworkRequest } from '../react/maybeUnwrapNetworkRequest';
|
|
25
24
|
import { useSubscribeToMultiple } from '../react/useReadAndSubscribe';
|
|
26
|
-
import { maybeUnwrapNetworkRequest } from '../react/useResult';
|
|
27
25
|
|
|
28
26
|
export type UsePaginationReturnValue<
|
|
29
27
|
TReadFromStore extends UnknownTReadFromStore,
|
|
@@ -35,13 +33,16 @@ export type UsePaginationReturnValue<
|
|
|
35
33
|
results: ReadonlyArray<TItem>;
|
|
36
34
|
}
|
|
37
35
|
| {
|
|
38
|
-
kind: '
|
|
36
|
+
kind: 'HasMoreRecords';
|
|
39
37
|
fetchMore: (
|
|
40
38
|
count: number,
|
|
41
|
-
fetchOptions?: FetchOptions<Connection<TItem
|
|
39
|
+
fetchOptions?: FetchOptions<Connection<TItem>, never>,
|
|
42
40
|
) => void;
|
|
43
41
|
results: ReadonlyArray<TItem>;
|
|
44
|
-
|
|
42
|
+
}
|
|
43
|
+
| {
|
|
44
|
+
kind: 'NoMoreRecords';
|
|
45
|
+
results: ReadonlyArray<TItem>;
|
|
45
46
|
};
|
|
46
47
|
|
|
47
48
|
type LoadedFragmentReferences<
|
|
@@ -134,7 +135,6 @@ export function useConnectionSpecPagination<
|
|
|
134
135
|
startUpdate: getOrCreateCachedStartUpdate(
|
|
135
136
|
environment,
|
|
136
137
|
fragmentReference,
|
|
137
|
-
readerWithRefetchQueries.readerArtifact.fieldName,
|
|
138
138
|
networkRequestOptions,
|
|
139
139
|
),
|
|
140
140
|
}
|
|
@@ -208,7 +208,10 @@ export function useConnectionSpecPagination<
|
|
|
208
208
|
|
|
209
209
|
const getFetchMore =
|
|
210
210
|
(after: string | null) =>
|
|
211
|
-
(
|
|
211
|
+
(
|
|
212
|
+
count: number,
|
|
213
|
+
fetchOptions?: FetchOptions<Connection<TItem>, never>,
|
|
214
|
+
): void => {
|
|
212
215
|
const loadedField = loadableField(
|
|
213
216
|
{
|
|
214
217
|
after: after,
|
|
@@ -259,7 +262,7 @@ export function useConnectionSpecPagination<
|
|
|
259
262
|
const mostRecentFragmentReference =
|
|
260
263
|
mostRecentItem?.[0].getItemIfNotDisposed();
|
|
261
264
|
|
|
262
|
-
if (mostRecentItem && mostRecentFragmentReference
|
|
265
|
+
if (mostRecentItem != null && mostRecentFragmentReference == null) {
|
|
263
266
|
throw new Error(
|
|
264
267
|
'FragmentReference is unexpectedly disposed. \
|
|
265
268
|
This is indicative of a bug in Isograph.',
|
|
@@ -267,11 +270,15 @@ export function useConnectionSpecPagination<
|
|
|
267
270
|
}
|
|
268
271
|
|
|
269
272
|
const networkRequestStatus =
|
|
270
|
-
mostRecentFragmentReference
|
|
271
|
-
|
|
273
|
+
mostRecentFragmentReference != null
|
|
274
|
+
? {
|
|
275
|
+
mostRecentFragmentReference,
|
|
276
|
+
state: getPromiseState(mostRecentFragmentReference.networkRequest),
|
|
277
|
+
}
|
|
278
|
+
: null;
|
|
272
279
|
|
|
273
280
|
const slicedFragmentReferences =
|
|
274
|
-
networkRequestStatus?.kind === 'Ok'
|
|
281
|
+
networkRequestStatus?.state?.kind === 'Ok'
|
|
275
282
|
? loadedReferences
|
|
276
283
|
: loadedReferences.slice(0, loadedReferences.length - 1);
|
|
277
284
|
|
|
@@ -301,16 +308,22 @@ export function useConnectionSpecPagination<
|
|
|
301
308
|
subscribeCompletedFragmentReferences(completedFragmentReferences),
|
|
302
309
|
);
|
|
303
310
|
|
|
304
|
-
if (
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
+
if (networkRequestStatus == null) {
|
|
312
|
+
if (initialState?.hasNextPage ?? true) {
|
|
313
|
+
return {
|
|
314
|
+
kind: 'HasMoreRecords',
|
|
315
|
+
fetchMore: getFetchMore(initialState?.endCursor ?? null),
|
|
316
|
+
results: [],
|
|
317
|
+
};
|
|
318
|
+
} else {
|
|
319
|
+
return {
|
|
320
|
+
kind: 'NoMoreRecords',
|
|
321
|
+
results: [],
|
|
322
|
+
};
|
|
323
|
+
}
|
|
311
324
|
}
|
|
312
325
|
|
|
313
|
-
switch (networkRequestStatus.kind) {
|
|
326
|
+
switch (networkRequestStatus.state.kind) {
|
|
314
327
|
case 'Pending': {
|
|
315
328
|
const unsubscribe = subscribeToAnyChange(environment, () => {
|
|
316
329
|
unsubscribe();
|
|
@@ -323,23 +336,29 @@ export function useConnectionSpecPagination<
|
|
|
323
336
|
return {
|
|
324
337
|
results: results.edges,
|
|
325
338
|
kind: 'Pending',
|
|
326
|
-
pendingFragment: mostRecentFragmentReference,
|
|
339
|
+
pendingFragment: networkRequestStatus.mostRecentFragmentReference,
|
|
327
340
|
};
|
|
328
341
|
}
|
|
329
342
|
case 'Err': {
|
|
330
|
-
throw networkRequestStatus.error;
|
|
343
|
+
throw networkRequestStatus.state.error;
|
|
331
344
|
}
|
|
332
345
|
case 'Ok': {
|
|
333
346
|
const results = readCompletedFragmentReferences(
|
|
334
347
|
completedFragmentReferences,
|
|
335
348
|
);
|
|
336
349
|
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
350
|
+
if (results.pageInfo.hasNextPage) {
|
|
351
|
+
return {
|
|
352
|
+
kind: 'HasMoreRecords',
|
|
353
|
+
fetchMore: getFetchMore(results.pageInfo.endCursor),
|
|
354
|
+
results: results.edges,
|
|
355
|
+
};
|
|
356
|
+
} else {
|
|
357
|
+
return {
|
|
358
|
+
kind: 'NoMoreRecords',
|
|
359
|
+
results: results.edges,
|
|
360
|
+
};
|
|
361
|
+
}
|
|
343
362
|
}
|
|
344
363
|
}
|
|
345
364
|
}
|
|
@@ -2,12 +2,12 @@ import {
|
|
|
2
2
|
UNASSIGNED_STATE,
|
|
3
3
|
useUpdatableDisposableState,
|
|
4
4
|
} from '@isograph/react-disposable-state';
|
|
5
|
-
import { FetchOptions } from '../core/check';
|
|
6
|
-
import {
|
|
5
|
+
import type { FetchOptions } from '../core/check';
|
|
6
|
+
import type {
|
|
7
7
|
ExtractParameters,
|
|
8
8
|
FragmentReference,
|
|
9
9
|
} from '../core/FragmentReference';
|
|
10
|
-
import { LoadableField } from '../core/reader';
|
|
10
|
+
import type { LoadableField } from '../core/reader';
|
|
11
11
|
|
|
12
12
|
export type UseImperativeLoadableFieldReturn<
|
|
13
13
|
TReadFromStore extends { data: object; parameters: object },
|
|
@@ -19,7 +19,7 @@ export type UseImperativeLoadableFieldReturn<
|
|
|
19
19
|
// TODO this should be void iff all args are provided by the query, like in
|
|
20
20
|
// useClientSideDefer.
|
|
21
21
|
args: Omit<ExtractParameters<TReadFromStore>, keyof TProvidedArgs> | void,
|
|
22
|
-
fetchOptions?: FetchOptions<TResult>,
|
|
22
|
+
fetchOptions?: FetchOptions<TResult, never>,
|
|
23
23
|
) => void;
|
|
24
24
|
};
|
|
25
25
|
|
|
@@ -40,7 +40,7 @@ export function useImperativeLoadableField<
|
|
|
40
40
|
return {
|
|
41
41
|
loadFragmentReference: (
|
|
42
42
|
args: Omit<ExtractParameters<TReadFromStore>, keyof TProvidedArgs> | void,
|
|
43
|
-
fetchOptions?: FetchOptions<TResult>,
|
|
43
|
+
fetchOptions?: FetchOptions<TResult, never>,
|
|
44
44
|
) => {
|
|
45
45
|
const [_id, loader] = loadableField(args, fetchOptions ?? {});
|
|
46
46
|
setState(loader());
|
|
@@ -1,29 +1,27 @@
|
|
|
1
|
-
import { ItemCleanupPair } from '@isograph/disposable-types';
|
|
1
|
+
import type { ItemCleanupPair } from '@isograph/disposable-types';
|
|
2
2
|
import {
|
|
3
3
|
UNASSIGNED_STATE,
|
|
4
4
|
useUpdatableDisposableState,
|
|
5
5
|
} from '@isograph/react-disposable-state';
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
ReferenceCountedPointer,
|
|
9
|
-
} from '@isograph/reference-counted-pointer';
|
|
6
|
+
import type { ReferenceCountedPointer } from '@isograph/reference-counted-pointer';
|
|
7
|
+
import { createReferenceCountedPointer } from '@isograph/reference-counted-pointer';
|
|
10
8
|
import { useState } from 'react';
|
|
11
9
|
import { subscribeToAnyChange } from '../core/cache';
|
|
12
|
-
import { FetchOptions } from '../core/check';
|
|
13
|
-
import {
|
|
10
|
+
import type { FetchOptions } from '../core/check';
|
|
11
|
+
import type {
|
|
14
12
|
FragmentReference,
|
|
15
|
-
|
|
13
|
+
UnknownTReadFromStore,
|
|
16
14
|
} from '../core/FragmentReference';
|
|
17
15
|
import { getPromiseState, readPromise } from '../core/PromiseWrapper';
|
|
18
16
|
import {
|
|
19
17
|
readButDoNotEvaluate,
|
|
20
18
|
type WithEncounteredRecords,
|
|
21
19
|
} from '../core/read';
|
|
22
|
-
import { LoadableField,
|
|
20
|
+
import type { LoadableField, ReaderAst } from '../core/reader';
|
|
23
21
|
import { getOrCreateCachedStartUpdate } from '../core/startUpdate';
|
|
24
22
|
import { useIsographEnvironment } from '../react/IsographEnvironmentProvider';
|
|
23
|
+
import { maybeUnwrapNetworkRequest } from '../react/maybeUnwrapNetworkRequest';
|
|
25
24
|
import { useSubscribeToMultiple } from '../react/useReadAndSubscribe';
|
|
26
|
-
import { maybeUnwrapNetworkRequest } from '../react/useResult';
|
|
27
25
|
|
|
28
26
|
export type UseSkipLimitReturnValue<
|
|
29
27
|
TReadFromStore extends UnknownTReadFromStore,
|
|
@@ -33,7 +31,7 @@ export type UseSkipLimitReturnValue<
|
|
|
33
31
|
readonly kind: 'Complete';
|
|
34
32
|
readonly fetchMore: (
|
|
35
33
|
count: number,
|
|
36
|
-
fetchOptions?: FetchOptions<ReadonlyArray<TItem
|
|
34
|
+
fetchOptions?: FetchOptions<ReadonlyArray<TItem>, never>,
|
|
37
35
|
) => void;
|
|
38
36
|
readonly results: ReadonlyArray<TItem>;
|
|
39
37
|
}
|
|
@@ -128,7 +126,6 @@ export function useSkipLimitPagination<
|
|
|
128
126
|
startUpdate: getOrCreateCachedStartUpdate(
|
|
129
127
|
environment,
|
|
130
128
|
fragmentReference,
|
|
131
|
-
readerWithRefetchQueries.readerArtifact.kind,
|
|
132
129
|
networkRequestOptions,
|
|
133
130
|
),
|
|
134
131
|
}
|
|
@@ -197,7 +194,7 @@ export function useSkipLimitPagination<
|
|
|
197
194
|
(loadedSoFar: number) =>
|
|
198
195
|
(
|
|
199
196
|
count: number,
|
|
200
|
-
fetchOptions?: FetchOptions<ReadonlyArray<TItem
|
|
197
|
+
fetchOptions?: FetchOptions<ReadonlyArray<TItem>, never>,
|
|
201
198
|
): void => {
|
|
202
199
|
const loadedField = loadableField(
|
|
203
200
|
{
|
|
@@ -249,7 +246,7 @@ export function useSkipLimitPagination<
|
|
|
249
246
|
const mostRecentFragmentReference =
|
|
250
247
|
mostRecentItem?.[0].getItemIfNotDisposed();
|
|
251
248
|
|
|
252
|
-
if (mostRecentItem && mostRecentFragmentReference
|
|
249
|
+
if (mostRecentItem != null && mostRecentFragmentReference == null) {
|
|
253
250
|
throw new Error(
|
|
254
251
|
'FragmentReference is unexpectedly disposed. \
|
|
255
252
|
This is indicative of a bug in Isograph.',
|
|
@@ -257,11 +254,15 @@ export function useSkipLimitPagination<
|
|
|
257
254
|
}
|
|
258
255
|
|
|
259
256
|
const networkRequestStatus =
|
|
260
|
-
mostRecentFragmentReference
|
|
261
|
-
|
|
257
|
+
mostRecentFragmentReference != null
|
|
258
|
+
? {
|
|
259
|
+
mostRecentFragmentReference,
|
|
260
|
+
state: getPromiseState(mostRecentFragmentReference.networkRequest),
|
|
261
|
+
}
|
|
262
|
+
: null;
|
|
262
263
|
|
|
263
264
|
const slicedFragmentReferences =
|
|
264
|
-
networkRequestStatus?.kind === 'Ok'
|
|
265
|
+
networkRequestStatus?.state?.kind === 'Ok'
|
|
265
266
|
? loadedReferences
|
|
266
267
|
: loadedReferences.slice(0, loadedReferences.length - 1);
|
|
267
268
|
|
|
@@ -291,7 +292,7 @@ export function useSkipLimitPagination<
|
|
|
291
292
|
subscribeCompletedFragmentReferences(completedFragmentReferences),
|
|
292
293
|
);
|
|
293
294
|
|
|
294
|
-
if (
|
|
295
|
+
if (networkRequestStatus == null) {
|
|
295
296
|
return {
|
|
296
297
|
kind: 'Complete',
|
|
297
298
|
fetchMore: getFetchMore(initialState?.skip ?? 0),
|
|
@@ -299,7 +300,7 @@ export function useSkipLimitPagination<
|
|
|
299
300
|
};
|
|
300
301
|
}
|
|
301
302
|
|
|
302
|
-
switch (networkRequestStatus.kind) {
|
|
303
|
+
switch (networkRequestStatus.state.kind) {
|
|
303
304
|
case 'Pending': {
|
|
304
305
|
const unsubscribe = subscribeToAnyChange(environment, () => {
|
|
305
306
|
unsubscribe();
|
|
@@ -308,12 +309,12 @@ export function useSkipLimitPagination<
|
|
|
308
309
|
|
|
309
310
|
return {
|
|
310
311
|
kind: 'Pending',
|
|
311
|
-
pendingFragment: mostRecentFragmentReference,
|
|
312
|
+
pendingFragment: networkRequestStatus.mostRecentFragmentReference,
|
|
312
313
|
results: readCompletedFragmentReferences(completedFragmentReferences),
|
|
313
314
|
};
|
|
314
315
|
}
|
|
315
316
|
case 'Err': {
|
|
316
|
-
throw networkRequestStatus.error;
|
|
317
|
+
throw networkRequestStatus.state.error;
|
|
317
318
|
}
|
|
318
319
|
case 'Ok': {
|
|
319
320
|
const results = readCompletedFragmentReferences(
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { NetworkResponseObject } from '../core/cache';
|
|
1
2
|
import {
|
|
2
3
|
type ExtractReadFromStore,
|
|
3
4
|
type IsographEntrypoint,
|
|
@@ -8,7 +9,8 @@ import { useResult } from './useResult';
|
|
|
8
9
|
|
|
9
10
|
export function FragmentReader<
|
|
10
11
|
TResult,
|
|
11
|
-
|
|
12
|
+
TRawResponseType extends NetworkResponseObject,
|
|
13
|
+
TEntrypoint extends IsographEntrypoint<any, TResult, any, TRawResponseType>,
|
|
12
14
|
TChildrenResult,
|
|
13
15
|
>({
|
|
14
16
|
fragmentReference,
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
import { type FragmentReference } from '../core/FragmentReference';
|
|
7
7
|
import { type NetworkRequestReaderOptions } from '../core/read';
|
|
8
8
|
import { useResult } from './useResult';
|
|
9
|
+
import type { NetworkResponseObject } from '../core/cache';
|
|
9
10
|
|
|
10
11
|
export type IsExactlyIntrinsicAttributes<T> = T extends JSX.IntrinsicAttributes
|
|
11
12
|
? JSX.IntrinsicAttributes extends T
|
|
@@ -15,7 +16,13 @@ export type IsExactlyIntrinsicAttributes<T> = T extends JSX.IntrinsicAttributes
|
|
|
15
16
|
|
|
16
17
|
export function FragmentRenderer<
|
|
17
18
|
TProps extends Record<any, any>,
|
|
18
|
-
|
|
19
|
+
TRawResponseType extends NetworkResponseObject,
|
|
20
|
+
TEntrypoint extends IsographEntrypoint<
|
|
21
|
+
any,
|
|
22
|
+
React.FC<TProps>,
|
|
23
|
+
any,
|
|
24
|
+
TRawResponseType
|
|
25
|
+
>,
|
|
19
26
|
>(
|
|
20
27
|
props: IsExactlyIntrinsicAttributes<TProps> extends true
|
|
21
28
|
? {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import type { ReactNode } from 'react';
|
|
3
|
+
import { createContext, useContext } from 'react';
|
|
3
4
|
import { type IsographEnvironment } from '../core/IsographEnvironment';
|
|
4
5
|
|
|
5
6
|
export const IsographEnvironmentContext =
|
|
@@ -1,32 +1,49 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import { type FetchOptions } from '../core/check';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
type UnknownTReadFromStore,
|
|
5
|
-
} from '../core/FragmentReference';
|
|
3
|
+
import type { ExtractParameters } from '../core/FragmentReference';
|
|
4
|
+
import { type UnknownTReadFromStore } from '../core/FragmentReference';
|
|
6
5
|
import { type NetworkRequestReaderOptions } from '../core/read';
|
|
7
6
|
import { type LoadableField } from '../core/reader';
|
|
8
7
|
import { useClientSideDefer } from '../loadable-hooks/useClientSideDefer';
|
|
9
8
|
import { useResult } from './useResult';
|
|
10
9
|
|
|
10
|
+
type ArgsWithoutProvidedArgs<
|
|
11
|
+
TReadFromStore extends UnknownTReadFromStore,
|
|
12
|
+
TProvidedArgs extends object,
|
|
13
|
+
> = Omit<ExtractParameters<TReadFromStore>, keyof TProvidedArgs>;
|
|
14
|
+
|
|
15
|
+
type MaybeRequiredArgs<
|
|
16
|
+
TReadFromStore extends UnknownTReadFromStore,
|
|
17
|
+
TProvidedArgs extends object,
|
|
18
|
+
> =
|
|
19
|
+
{} extends ArgsWithoutProvidedArgs<TReadFromStore, TProvidedArgs>
|
|
20
|
+
? {
|
|
21
|
+
args?: ArgsWithoutProvidedArgs<TReadFromStore, TProvidedArgs>;
|
|
22
|
+
}
|
|
23
|
+
: {
|
|
24
|
+
args: ArgsWithoutProvidedArgs<TReadFromStore, TProvidedArgs>;
|
|
25
|
+
};
|
|
26
|
+
|
|
11
27
|
export function LoadableFieldReader<
|
|
12
28
|
TReadFromStore extends UnknownTReadFromStore,
|
|
13
29
|
TResult,
|
|
14
30
|
TProvidedArgs extends object,
|
|
15
31
|
TChildrenResult,
|
|
16
|
-
>(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
32
|
+
>(
|
|
33
|
+
props: {
|
|
34
|
+
loadableField: LoadableField<
|
|
35
|
+
TReadFromStore,
|
|
36
|
+
TResult,
|
|
37
|
+
Omit<ExtractParameters<TReadFromStore>, keyof TProvidedArgs>
|
|
38
|
+
>;
|
|
39
|
+
fetchOptions?: FetchOptions<TResult, never>;
|
|
40
|
+
networkRequestOptions?: Partial<NetworkRequestReaderOptions>;
|
|
41
|
+
children: (arg: TResult) => TChildrenResult;
|
|
42
|
+
} & MaybeRequiredArgs<TReadFromStore, TProvidedArgs>,
|
|
43
|
+
): TChildrenResult {
|
|
28
44
|
const { fragmentReference } = useClientSideDefer(
|
|
29
45
|
props.loadableField,
|
|
46
|
+
// @ts-expect-error
|
|
30
47
|
props.args,
|
|
31
48
|
props.fetchOptions,
|
|
32
49
|
);
|
|
@@ -38,3 +55,95 @@ export function LoadableFieldReader<
|
|
|
38
55
|
|
|
39
56
|
return props.children(readOutFragmentData);
|
|
40
57
|
}
|
|
58
|
+
|
|
59
|
+
// @ts-ignore
|
|
60
|
+
function tsTests() {
|
|
61
|
+
let neverArgs!: LoadableField<
|
|
62
|
+
{
|
|
63
|
+
parameters: Record<string, never>;
|
|
64
|
+
data: {};
|
|
65
|
+
},
|
|
66
|
+
unknown
|
|
67
|
+
>;
|
|
68
|
+
|
|
69
|
+
let optionalArgs!: LoadableField<
|
|
70
|
+
{
|
|
71
|
+
parameters: {
|
|
72
|
+
foo?: string;
|
|
73
|
+
};
|
|
74
|
+
data: {};
|
|
75
|
+
},
|
|
76
|
+
unknown
|
|
77
|
+
>;
|
|
78
|
+
|
|
79
|
+
let requiredArgs!: LoadableField<
|
|
80
|
+
{
|
|
81
|
+
parameters: {
|
|
82
|
+
foo: string;
|
|
83
|
+
};
|
|
84
|
+
data: {};
|
|
85
|
+
},
|
|
86
|
+
unknown
|
|
87
|
+
>;
|
|
88
|
+
|
|
89
|
+
<LoadableFieldReader loadableField={neverArgs} children={() => {}} />;
|
|
90
|
+
<LoadableFieldReader
|
|
91
|
+
loadableField={neverArgs}
|
|
92
|
+
children={() => {}}
|
|
93
|
+
args={{}}
|
|
94
|
+
/>;
|
|
95
|
+
<LoadableFieldReader
|
|
96
|
+
loadableField={neverArgs}
|
|
97
|
+
children={() => {}}
|
|
98
|
+
args={{
|
|
99
|
+
// @ts-expect-error
|
|
100
|
+
foo: 'bar',
|
|
101
|
+
}}
|
|
102
|
+
/>;
|
|
103
|
+
|
|
104
|
+
<LoadableFieldReader loadableField={optionalArgs} children={() => {}} />;
|
|
105
|
+
<LoadableFieldReader
|
|
106
|
+
loadableField={optionalArgs}
|
|
107
|
+
children={() => {}}
|
|
108
|
+
args={{}}
|
|
109
|
+
/>;
|
|
110
|
+
<LoadableFieldReader
|
|
111
|
+
loadableField={optionalArgs}
|
|
112
|
+
children={() => {}}
|
|
113
|
+
args={{
|
|
114
|
+
foo: 'bar',
|
|
115
|
+
}}
|
|
116
|
+
/>;
|
|
117
|
+
<LoadableFieldReader
|
|
118
|
+
loadableField={optionalArgs}
|
|
119
|
+
children={() => {}}
|
|
120
|
+
args={{
|
|
121
|
+
// @ts-expect-error
|
|
122
|
+
foo: 12,
|
|
123
|
+
}}
|
|
124
|
+
/>;
|
|
125
|
+
|
|
126
|
+
// @ts-expect-error
|
|
127
|
+
<LoadableFieldReader loadableField={requiredArgs} children={() => {}} />;
|
|
128
|
+
<LoadableFieldReader
|
|
129
|
+
loadableField={requiredArgs}
|
|
130
|
+
children={() => {}}
|
|
131
|
+
// @ts-expect-error
|
|
132
|
+
args={{}}
|
|
133
|
+
/>;
|
|
134
|
+
<LoadableFieldReader
|
|
135
|
+
loadableField={requiredArgs}
|
|
136
|
+
children={() => {}}
|
|
137
|
+
args={{
|
|
138
|
+
foo: 'bar',
|
|
139
|
+
}}
|
|
140
|
+
/>;
|
|
141
|
+
<LoadableFieldReader
|
|
142
|
+
loadableField={requiredArgs}
|
|
143
|
+
children={() => {}}
|
|
144
|
+
args={{
|
|
145
|
+
// @ts-expect-error
|
|
146
|
+
foo: 12,
|
|
147
|
+
}}
|
|
148
|
+
/>;
|
|
149
|
+
}
|