relay-runtime 0.0.0-main-1decb243 → 0.0.0-main-556d696f
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/experimental.js +1 -1
- package/index.js +1 -1
- package/lib/experimental.js +3 -3
- package/lib/handlers/RelayDefaultHandlerProvider.js +12 -12
- package/lib/handlers/connection/ConnectionHandler.js +17 -17
- package/lib/handlers/connection/ConnectionInterface.js +10 -10
- package/lib/handlers/connection/MutationHandlers.js +16 -16
- package/lib/index.js +61 -61
- package/lib/multi-actor-environment/ActorIdentifier.js +5 -5
- package/lib/multi-actor-environment/ActorSpecificEnvironment.js +8 -8
- package/lib/multi-actor-environment/ActorUtils.js +4 -4
- package/lib/multi-actor-environment/MultiActorEnvironment.js +12 -12
- package/lib/multi-actor-environment/MultiActorEnvironmentTypes.js +1 -1
- package/lib/multi-actor-environment/index.js +3 -3
- package/lib/mutations/RelayDeclarativeMutationConfig.js +26 -26
- package/lib/mutations/RelayRecordProxy.js +9 -9
- package/lib/mutations/RelayRecordSourceMutator.js +7 -7
- package/lib/mutations/RelayRecordSourceProxy.js +12 -12
- package/lib/mutations/RelayRecordSourceSelectorProxy.js +9 -9
- package/lib/mutations/applyOptimisticMutation.js +9 -9
- package/lib/mutations/commitLocalUpdate.js +1 -1
- package/lib/mutations/commitMutation.js +15 -15
- package/lib/mutations/createUpdatableProxy.js +13 -13
- package/lib/mutations/readUpdatableFragment.js +6 -6
- package/lib/mutations/readUpdatableQuery.js +3 -3
- package/lib/mutations/validateMutation.js +9 -7
- package/lib/network/ConvertToExecuteFunction.js +2 -2
- package/lib/network/RelayNetwork.js +8 -8
- package/lib/network/RelayNetworkTypes.js +1 -1
- package/lib/network/RelayObservable.js +23 -22
- package/lib/network/RelayQueryResponseCache.js +5 -5
- package/lib/network/wrapNetworkWithLogObserver.js +8 -8
- package/lib/query/GraphQLTag.js +16 -16
- package/lib/query/PreloadableQueryRegistry.js +1 -1
- package/lib/query/fetchQuery.js +13 -13
- package/lib/query/fetchQueryInternal.js +8 -8
- package/lib/query/fetchQuery_DEPRECATED.js +5 -5
- package/lib/store/ClientID.js +7 -7
- package/lib/store/DataChecker.js +29 -25
- package/lib/store/OperationExecutor.js +87 -87
- package/lib/store/RelayConcreteVariables.js +6 -6
- package/lib/store/RelayExperimentalGraphResponseHandler.js +12 -12
- package/lib/store/RelayExperimentalGraphResponseTransform.js +16 -16
- package/lib/store/RelayModernEnvironment.js +21 -21
- package/lib/store/RelayModernFragmentSpecResolver.js +16 -16
- package/lib/store/RelayModernOperationDescriptor.js +6 -6
- package/lib/store/RelayModernRecord.js +23 -23
- package/lib/store/RelayModernSelector.js +23 -23
- package/lib/store/RelayModernStore.js +35 -35
- package/lib/store/RelayOperationTracker.js +3 -3
- package/lib/store/RelayOptimisticRecordSource.js +8 -8
- package/lib/store/RelayPublishQueue.js +22 -22
- package/lib/store/RelayReader.js +48 -50
- package/lib/store/RelayRecordSource.js +3 -3
- package/lib/store/RelayRecordState.js +4 -4
- package/lib/store/RelayReferenceMarker.js +18 -14
- package/lib/store/RelayResponseNormalizer.js +40 -36
- package/lib/store/RelayStoreSubscriptions.js +8 -8
- package/lib/store/RelayStoreTypes.js +1 -1
- package/lib/store/RelayStoreUtils.js +40 -35
- package/lib/store/ResolverCache.js +16 -16
- package/lib/store/ResolverFragments.js +6 -6
- package/lib/store/StoreInspector.js +16 -16
- package/lib/store/TypeID.js +3 -3
- package/lib/store/ViewerPattern.js +5 -5
- package/lib/store/cloneRelayHandleSourceField.js +6 -6
- package/lib/store/cloneRelayScalarHandleSourceField.js +6 -6
- package/lib/store/createFragmentSpecResolver.js +3 -3
- package/lib/store/createRelayContext.js +4 -4
- package/lib/store/defaultGetDataID.js +2 -2
- package/lib/store/defaultRequiredFieldLogger.js +3 -3
- package/lib/store/experimental-live-resolvers/LiveResolverCache.js +33 -33
- package/lib/store/experimental-live-resolvers/LiveResolverStore.js +36 -36
- package/lib/store/experimental-live-resolvers/LiveResolverSuspenseSentinel.js +1 -1
- package/lib/store/experimental-live-resolvers/getOutputTypeRecordIDs.js +5 -5
- package/lib/store/experimental-live-resolvers/isLiveStateValue.js +2 -2
- package/lib/store/experimental-live-resolvers/resolverDataInjector.js +6 -6
- package/lib/store/experimental-live-resolvers/weakObjectWrapper.js +6 -6
- package/lib/store/hasOverlappingIDs.js +1 -1
- package/lib/store/hasSignificantOverlappingIDs.js +3 -3
- package/lib/store/isRelayModernEnvironment.js +2 -2
- package/lib/store/normalizeResponse.js +1 -1
- package/lib/store/readInlineData.js +6 -6
- package/lib/subscription/requestSubscription.js +9 -9
- package/lib/util/JSResourceTypes.flow.js +1 -1
- package/lib/util/NormalizationNode.js +1 -1
- package/lib/util/ReaderNode.js +1 -1
- package/lib/util/RelayConcreteNode.js +36 -36
- package/lib/util/RelayDefaultHandleKey.js +2 -2
- package/lib/util/RelayError.js +3 -3
- package/lib/util/RelayFeatureFlags.js +1 -1
- package/lib/util/RelayProfiler.js +1 -1
- package/lib/util/RelayReplaySubject.js +10 -10
- package/lib/util/RelayRuntimeTypes.js +1 -1
- package/lib/util/StringInterner.js +3 -3
- package/lib/util/createPayloadFor3DField.js +2 -2
- package/lib/util/deepFreeze.js +3 -3
- package/lib/util/generateID.js +1 -1
- package/lib/util/getFragmentIdentifier.js +12 -12
- package/lib/util/getOperation.js +2 -2
- package/lib/util/getPaginationMetadata.js +6 -6
- package/lib/util/getPaginationVariables.js +9 -9
- package/lib/util/getPendingOperationsForFragment.js +5 -5
- package/lib/util/getRefetchMetadata.js +7 -7
- package/lib/util/getRelayHandleKey.js +4 -4
- package/lib/util/getRequestIdentifier.js +4 -4
- package/lib/util/getValueAtPath.js +5 -5
- package/lib/util/handlePotentialSnapshotErrors.js +6 -6
- package/lib/util/isEmptyObject.js +1 -1
- package/lib/util/isPromise.js +2 -2
- package/lib/util/isScalarAndEqual.js +2 -2
- package/lib/util/recycleNodesInto.js +6 -20
- package/lib/util/registerEnvironmentWithDevTools.js +2 -2
- package/lib/util/resolveImmediate.js +1 -1
- package/lib/util/stableCopy.js +2 -2
- package/lib/util/withDuration.js +2 -2
- package/lib/util/withProvidedVariables.js +3 -3
- package/mutations/validateMutation.js.flow +2 -0
- package/network/RelayObservable.js.flow +3 -2
- package/package.json +1 -1
- package/relay-runtime-experimental.js +2 -2
- package/relay-runtime-experimental.min.js +2 -2
- package/relay-runtime.js +2 -2
- package/relay-runtime.min.js +2 -2
- package/store/DataChecker.js.flow +9 -1
- package/store/RelayModernSelector.js.flow +6 -3
- package/store/RelayReader.js.flow +7 -7
- package/store/RelayReferenceMarker.js.flow +6 -1
- package/store/RelayResponseNormalizer.js.flow +6 -1
- package/store/RelayStoreTypes.js.flow +7 -1
- package/store/RelayStoreUtils.js.flow +22 -7
- package/store/experimental-live-resolvers/resolverDataInjector.js.flow +1 -0
- package/store/experimental-live-resolvers/weakObjectWrapper.js.flow +1 -0
- package/util/NormalizationNode.js.flow +15 -2
- package/util/ReaderNode.js.flow +1 -1
- package/util/createPayloadFor3DField.js.flow +1 -0
- package/util/recycleNodesInto.js.flow +8 -30
package/lib/store/DataChecker.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
|
|
5
|
-
var RelayRecordSourceMutator = require(
|
|
6
|
-
var RelayRecordSourceProxy = require(
|
|
7
|
-
var getOperation = require(
|
|
8
|
-
var RelayConcreteNode = require(
|
|
9
|
-
var _require = require(
|
|
5
|
+
var RelayRecordSourceMutator = require('../mutations/RelayRecordSourceMutator');
|
|
6
|
+
var RelayRecordSourceProxy = require('../mutations/RelayRecordSourceProxy');
|
|
7
|
+
var getOperation = require('../util/getOperation');
|
|
8
|
+
var RelayConcreteNode = require('../util/RelayConcreteNode');
|
|
9
|
+
var _require = require('./ClientID'),
|
|
10
10
|
isClientID = _require.isClientID;
|
|
11
|
-
var cloneRelayHandleSourceField = require(
|
|
12
|
-
var cloneRelayScalarHandleSourceField = require(
|
|
13
|
-
var _require2 = require(
|
|
11
|
+
var cloneRelayHandleSourceField = require('./cloneRelayHandleSourceField');
|
|
12
|
+
var cloneRelayScalarHandleSourceField = require('./cloneRelayScalarHandleSourceField');
|
|
13
|
+
var _require2 = require('./RelayConcreteVariables'),
|
|
14
14
|
getLocalVariables = _require2.getLocalVariables;
|
|
15
|
-
var RelayModernRecord = require(
|
|
16
|
-
var _require3 = require(
|
|
15
|
+
var RelayModernRecord = require('./RelayModernRecord');
|
|
16
|
+
var _require3 = require('./RelayRecordState'),
|
|
17
17
|
EXISTENT = _require3.EXISTENT,
|
|
18
18
|
UNKNOWN = _require3.UNKNOWN;
|
|
19
|
-
var RelayStoreUtils = require(
|
|
20
|
-
var _require4 = require(
|
|
19
|
+
var RelayStoreUtils = require('./RelayStoreUtils');
|
|
20
|
+
var _require4 = require('./TypeID'),
|
|
21
21
|
TYPE_SCHEMA_TYPE = _require4.TYPE_SCHEMA_TYPE,
|
|
22
22
|
generateTypeID = _require4.generateTypeID;
|
|
23
|
-
var invariant = require(
|
|
23
|
+
var invariant = require('invariant');
|
|
24
24
|
var ACTOR_CHANGE = RelayConcreteNode.ACTOR_CHANGE,
|
|
25
25
|
CONDITION = RelayConcreteNode.CONDITION,
|
|
26
26
|
CLIENT_COMPONENT = RelayConcreteNode.CLIENT_COMPONENT,
|
|
@@ -33,6 +33,7 @@ var ACTOR_CHANGE = RelayConcreteNode.ACTOR_CHANGE,
|
|
|
33
33
|
LINKED_HANDLE = RelayConcreteNode.LINKED_HANDLE,
|
|
34
34
|
MODULE_IMPORT = RelayConcreteNode.MODULE_IMPORT,
|
|
35
35
|
RELAY_RESOLVER = RelayConcreteNode.RELAY_RESOLVER,
|
|
36
|
+
RELAY_LIVE_RESOLVER = RelayConcreteNode.RELAY_LIVE_RESOLVER,
|
|
36
37
|
SCALAR_FIELD = RelayConcreteNode.SCALAR_FIELD,
|
|
37
38
|
SCALAR_HANDLE = RelayConcreteNode.SCALAR_HANDLE,
|
|
38
39
|
STREAM = RelayConcreteNode.STREAM,
|
|
@@ -82,22 +83,22 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
82
83
|
this._assignClientAbstractTypes(node);
|
|
83
84
|
this._traverse(node, dataID);
|
|
84
85
|
return this._recordWasMissing === true ? {
|
|
85
|
-
status:
|
|
86
|
+
status: 'missing',
|
|
86
87
|
mostRecentlyInvalidatedAt: this._mostRecentlyInvalidatedAt
|
|
87
88
|
} : {
|
|
88
|
-
status:
|
|
89
|
+
status: 'available',
|
|
89
90
|
mostRecentlyInvalidatedAt: this._mostRecentlyInvalidatedAt
|
|
90
91
|
};
|
|
91
92
|
};
|
|
92
93
|
_proto._getVariableValue = function _getVariableValue(name) {
|
|
93
|
-
!this._variables.hasOwnProperty(name) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
94
|
+
!this._variables.hasOwnProperty(name) ? process.env.NODE_ENV !== "production" ? invariant(false, 'RelayAsyncLoader(): Undefined variable `%s`.', name) : invariant(false) : void 0;
|
|
94
95
|
return this._variables[name];
|
|
95
96
|
};
|
|
96
97
|
_proto._handleMissing = function _handleMissing() {
|
|
97
98
|
this._recordWasMissing = true;
|
|
98
99
|
};
|
|
99
100
|
_proto._handleMissingScalarField = function _handleMissingScalarField(field, dataID) {
|
|
100
|
-
if (field.name ===
|
|
101
|
+
if (field.name === 'id' && field.alias == null && isClientID(dataID)) {
|
|
101
102
|
return undefined;
|
|
102
103
|
}
|
|
103
104
|
var args = field.args != undefined ? getArgumentValues(field.args, this._variables) : {};
|
|
@@ -106,7 +107,7 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
106
107
|
try {
|
|
107
108
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
108
109
|
var handler = _step.value;
|
|
109
|
-
if (handler.kind ===
|
|
110
|
+
if (handler.kind === 'scalar') {
|
|
110
111
|
var newValue = handler.handle(field, this._recordSourceProxy.get(dataID), args, this._recordSourceProxy);
|
|
111
112
|
if (newValue !== undefined) {
|
|
112
113
|
return newValue;
|
|
@@ -127,7 +128,7 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
127
128
|
try {
|
|
128
129
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
129
130
|
var handler = _step2.value;
|
|
130
|
-
if (handler.kind ===
|
|
131
|
+
if (handler.kind === 'linked') {
|
|
131
132
|
var newValue = handler.handle(field, this._recordSourceProxy.get(dataID), args, this._recordSourceProxy);
|
|
132
133
|
if (newValue !== undefined && (newValue === null || this._mutator.getStatus(newValue) === EXISTENT)) {
|
|
133
134
|
return newValue;
|
|
@@ -149,7 +150,7 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
149
150
|
try {
|
|
150
151
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
151
152
|
var handler = _step3.value;
|
|
152
|
-
if (handler.kind ===
|
|
153
|
+
if (handler.kind === 'pluralLinked') {
|
|
153
154
|
var newValue = handler.handle(field, this._recordSourceProxy.get(dataID), args, this._recordSourceProxy);
|
|
154
155
|
if (newValue != null) {
|
|
155
156
|
var allItemsKnown = newValue.every(function (linkedID) {
|
|
@@ -217,7 +218,7 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
217
218
|
}
|
|
218
219
|
} else {
|
|
219
220
|
var _recordType = _this2._mutator.getType(dataID);
|
|
220
|
-
!(_recordType != null) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
221
|
+
!(_recordType != null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'DataChecker: Expected record `%s` to have a known type', dataID) : invariant(false) : void 0;
|
|
221
222
|
var _typeID = generateTypeID(_recordType);
|
|
222
223
|
var _implementsInterface = _this2._mutator.getValue(_typeID, _abstractKey);
|
|
223
224
|
if (_implementsInterface === true) {
|
|
@@ -265,7 +266,7 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
265
266
|
case TYPE_DISCRIMINATOR:
|
|
266
267
|
var abstractKey = selection.abstractKey;
|
|
267
268
|
var recordType = _this2._mutator.getType(dataID);
|
|
268
|
-
!(recordType != null) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
269
|
+
!(recordType != null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'DataChecker: Expected record `%s` to have a known type', dataID) : invariant(false) : void 0;
|
|
269
270
|
var typeID = generateTypeID(recordType);
|
|
270
271
|
var implementsInterface = _this2._mutator.getValue(typeID, abstractKey);
|
|
271
272
|
if (implementsInterface == null) {
|
|
@@ -281,12 +282,15 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
281
282
|
case RELAY_RESOLVER:
|
|
282
283
|
_this2._checkResolver(selection, dataID);
|
|
283
284
|
break;
|
|
285
|
+
case RELAY_LIVE_RESOLVER:
|
|
286
|
+
_this2._checkResolver(selection, dataID);
|
|
287
|
+
break;
|
|
284
288
|
case CLIENT_EDGE_TO_CLIENT_OBJECT:
|
|
285
289
|
_this2._checkResolver(selection.backingField, dataID);
|
|
286
290
|
break;
|
|
287
291
|
default:
|
|
288
292
|
selection;
|
|
289
|
-
!false ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
293
|
+
!false ? process.env.NODE_ENV !== "production" ? invariant(false, 'RelayAsyncLoader(): Unexpected ast kind `%s`.', selection.kind) : invariant(false) : void 0;
|
|
290
294
|
}
|
|
291
295
|
});
|
|
292
296
|
};
|
|
@@ -297,7 +301,7 @@ var DataChecker = /*#__PURE__*/function () {
|
|
|
297
301
|
};
|
|
298
302
|
_proto._checkModuleImport = function _checkModuleImport(moduleImport, dataID) {
|
|
299
303
|
var operationLoader = this._operationLoader;
|
|
300
|
-
!(operationLoader !== null) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
304
|
+
!(operationLoader !== null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'DataChecker: Expected an operationLoader to be configured when using `@module`.') : invariant(false) : void 0;
|
|
301
305
|
var operationKey = getModuleOperationKey(moduleImport.documentName);
|
|
302
306
|
var operationReference = this._mutator.getValue(dataID, operationKey);
|
|
303
307
|
if (operationReference == null) {
|