relay-runtime 0.0.0-main-1decb243 → 0.0.0-main-c52ed92a
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
|
@@ -1,28 +1,28 @@
|
|
|
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
5
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
|
-
var _require = require(
|
|
6
|
+
var _require = require('../../multi-actor-environment/ActorIdentifier'),
|
|
7
7
|
INTERNAL_ACTOR_IDENTIFIER_DO_NOT_USE = _require.INTERNAL_ACTOR_IDENTIFIER_DO_NOT_USE,
|
|
8
8
|
assertInternalActorIdentifier = _require.assertInternalActorIdentifier;
|
|
9
|
-
var deepFreeze = require(
|
|
10
|
-
var resolveImmediate = require(
|
|
11
|
-
var DataChecker = require(
|
|
12
|
-
var defaultGetDataID = require(
|
|
13
|
-
var RelayModernRecord = require(
|
|
14
|
-
var RelayOptimisticRecordSource = require(
|
|
15
|
-
var RelayReader = require(
|
|
16
|
-
var RelayReferenceMarker = require(
|
|
17
|
-
var RelayStoreSubscriptions = require(
|
|
18
|
-
var RelayStoreUtils = require(
|
|
19
|
-
var _require2 = require(
|
|
9
|
+
var deepFreeze = require('../../util/deepFreeze');
|
|
10
|
+
var resolveImmediate = require('../../util/resolveImmediate');
|
|
11
|
+
var DataChecker = require('../DataChecker');
|
|
12
|
+
var defaultGetDataID = require('../defaultGetDataID');
|
|
13
|
+
var RelayModernRecord = require('../RelayModernRecord');
|
|
14
|
+
var RelayOptimisticRecordSource = require('../RelayOptimisticRecordSource');
|
|
15
|
+
var RelayReader = require('../RelayReader');
|
|
16
|
+
var RelayReferenceMarker = require('../RelayReferenceMarker');
|
|
17
|
+
var RelayStoreSubscriptions = require('../RelayStoreSubscriptions');
|
|
18
|
+
var RelayStoreUtils = require('../RelayStoreUtils');
|
|
19
|
+
var _require2 = require('../RelayStoreUtils'),
|
|
20
20
|
ROOT_ID = _require2.ROOT_ID,
|
|
21
21
|
ROOT_TYPE = _require2.ROOT_TYPE;
|
|
22
|
-
var _require3 = require(
|
|
22
|
+
var _require3 = require('./LiveResolverCache'),
|
|
23
23
|
LiveResolverCache = _require3.LiveResolverCache,
|
|
24
24
|
getUpdatedDataIDs = _require3.getUpdatedDataIDs;
|
|
25
|
-
var invariant = require(
|
|
25
|
+
var invariant = require('invariant');
|
|
26
26
|
var DEFAULT_RELEASE_BUFFER_SIZE = 10;
|
|
27
27
|
var LiveResolverStore = /*#__PURE__*/function () {
|
|
28
28
|
function LiveResolverStore(source, options) {
|
|
@@ -88,7 +88,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
88
88
|
_proto.batchLiveStateUpdates = function batchLiveStateUpdates(callback) {
|
|
89
89
|
if (this.__log != null) {
|
|
90
90
|
this.__log({
|
|
91
|
-
name:
|
|
91
|
+
name: 'liveresolver.batch.start'
|
|
92
92
|
});
|
|
93
93
|
}
|
|
94
94
|
try {
|
|
@@ -96,7 +96,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
96
96
|
} finally {
|
|
97
97
|
if (this.__log != null) {
|
|
98
98
|
this.__log({
|
|
99
|
-
name:
|
|
99
|
+
name: 'liveresolver.batch.end'
|
|
100
100
|
});
|
|
101
101
|
}
|
|
102
102
|
}
|
|
@@ -111,7 +111,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
111
111
|
if (globalInvalidationEpoch != null) {
|
|
112
112
|
if (operationLastWrittenAt == null || operationLastWrittenAt <= globalInvalidationEpoch) {
|
|
113
113
|
return {
|
|
114
|
-
status:
|
|
114
|
+
status: 'stale'
|
|
115
115
|
};
|
|
116
116
|
}
|
|
117
117
|
}
|
|
@@ -190,7 +190,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
190
190
|
var log = this.__log;
|
|
191
191
|
if (log != null) {
|
|
192
192
|
log({
|
|
193
|
-
name:
|
|
193
|
+
name: 'store.notify.start',
|
|
194
194
|
sourceOperation: sourceOperation
|
|
195
195
|
});
|
|
196
196
|
}
|
|
@@ -207,7 +207,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
207
207
|
});
|
|
208
208
|
if (log != null) {
|
|
209
209
|
log({
|
|
210
|
-
name:
|
|
210
|
+
name: 'store.notify.complete',
|
|
211
211
|
sourceOperation: sourceOperation,
|
|
212
212
|
updatedRecordIDs: this._updatedRecordIDs,
|
|
213
213
|
invalidatedRecordIDs: this._invalidatedRecordIDs
|
|
@@ -221,7 +221,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
221
221
|
if (rootEntry != null) {
|
|
222
222
|
rootEntry.epoch = this._currentWriteEpoch;
|
|
223
223
|
rootEntry.fetchTime = Date.now();
|
|
224
|
-
} else if (sourceOperation.request.node.params.operationKind ===
|
|
224
|
+
} else if (sourceOperation.request.node.params.operationKind === 'query' && this._gcReleaseBufferSize > 0 && this._releaseBuffer.length < this._gcReleaseBufferSize) {
|
|
225
225
|
var temporaryRootEntry = {
|
|
226
226
|
operation: sourceOperation,
|
|
227
227
|
refCount: 0,
|
|
@@ -240,7 +240,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
240
240
|
var log = this.__log;
|
|
241
241
|
if (log != null) {
|
|
242
242
|
log({
|
|
243
|
-
name:
|
|
243
|
+
name: 'store.publish',
|
|
244
244
|
source: source,
|
|
245
245
|
optimistic: target === this._optimisticSource
|
|
246
246
|
});
|
|
@@ -270,7 +270,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
270
270
|
};
|
|
271
271
|
};
|
|
272
272
|
_proto.toJSON = function toJSON() {
|
|
273
|
-
return
|
|
273
|
+
return 'LiveResolverStore()';
|
|
274
274
|
};
|
|
275
275
|
_proto.getEpoch = function getEpoch() {
|
|
276
276
|
return this._currentWriteEpoch;
|
|
@@ -286,7 +286,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
286
286
|
var record = _this5.getSource().get(dataID);
|
|
287
287
|
invalidations.set(dataID, (_RelayModernRecord$ge = RelayModernRecord.getInvalidationEpoch(record)) !== null && _RelayModernRecord$ge !== void 0 ? _RelayModernRecord$ge : null);
|
|
288
288
|
});
|
|
289
|
-
invalidations.set(
|
|
289
|
+
invalidations.set('global', this._globalInvalidationEpoch);
|
|
290
290
|
var invalidationState = {
|
|
291
291
|
dataIDs: dataIDs,
|
|
292
292
|
invalidations: invalidations
|
|
@@ -297,7 +297,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
297
297
|
var latestInvalidationState = this.lookupInvalidationState(prevInvalidationState.dataIDs);
|
|
298
298
|
var currentInvalidations = latestInvalidationState.invalidations;
|
|
299
299
|
var prevInvalidations = prevInvalidationState.invalidations;
|
|
300
|
-
if (currentInvalidations.get(
|
|
300
|
+
if (currentInvalidations.get('global') !== prevInvalidations.get('global')) {
|
|
301
301
|
return true;
|
|
302
302
|
}
|
|
303
303
|
var _iterator = (0, _createForOfIteratorHelper2["default"])(prevInvalidationState.dataIDs),
|
|
@@ -344,11 +344,11 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
344
344
|
callback();
|
|
345
345
|
};
|
|
346
346
|
_proto.snapshot = function snapshot() {
|
|
347
|
-
!(this._optimisticSource == null) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
347
|
+
!(this._optimisticSource == null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'LiveResolverStore: Unexpected call to snapshot() while a previous ' + 'snapshot exists.') : invariant(false) : void 0;
|
|
348
348
|
var log = this.__log;
|
|
349
349
|
if (log != null) {
|
|
350
350
|
log({
|
|
351
|
-
name:
|
|
351
|
+
name: 'store.snapshot'
|
|
352
352
|
});
|
|
353
353
|
}
|
|
354
354
|
this._storeSubscriptions.snapshotSubscriptions(this.getSource());
|
|
@@ -360,11 +360,11 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
360
360
|
};
|
|
361
361
|
_proto.restore = function restore() {
|
|
362
362
|
var optimisticSource = this._optimisticSource;
|
|
363
|
-
!optimisticSource ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
363
|
+
!optimisticSource ? process.env.NODE_ENV !== "production" ? invariant(false, 'LiveResolverStore: Unexpected call to restore(), expected a snapshot ' + 'to exist (make sure to call snapshot()).') : invariant(false) : void 0;
|
|
364
364
|
var log = this.__log;
|
|
365
365
|
if (log != null) {
|
|
366
366
|
log({
|
|
367
|
-
name:
|
|
367
|
+
name: 'store.restore'
|
|
368
368
|
});
|
|
369
369
|
}
|
|
370
370
|
var optimisticIDs = RelayOptimisticRecordSource.getOptimisticRecordIDs(optimisticSource);
|
|
@@ -418,7 +418,7 @@ var LiveResolverStore = /*#__PURE__*/function () {
|
|
|
418
418
|
var log = this.__log;
|
|
419
419
|
if (log != null) {
|
|
420
420
|
log({
|
|
421
|
-
name:
|
|
421
|
+
name: 'store.gc',
|
|
422
422
|
references: references
|
|
423
423
|
});
|
|
424
424
|
}
|
|
@@ -515,28 +515,28 @@ function updateTargetFromSource(target, source, currentWriteEpoch, idsMarkedForI
|
|
|
515
515
|
function getAvailabilityStatus(operationAvailability, operationLastWrittenAt, operationFetchTime, queryCacheExpirationTime) {
|
|
516
516
|
var mostRecentlyInvalidatedAt = operationAvailability.mostRecentlyInvalidatedAt,
|
|
517
517
|
status = operationAvailability.status;
|
|
518
|
-
if (typeof mostRecentlyInvalidatedAt ===
|
|
518
|
+
if (typeof mostRecentlyInvalidatedAt === 'number') {
|
|
519
519
|
if (operationLastWrittenAt == null || mostRecentlyInvalidatedAt > operationLastWrittenAt) {
|
|
520
520
|
return {
|
|
521
|
-
status:
|
|
521
|
+
status: 'stale'
|
|
522
522
|
};
|
|
523
523
|
}
|
|
524
524
|
}
|
|
525
|
-
if (status ===
|
|
525
|
+
if (status === 'missing') {
|
|
526
526
|
return {
|
|
527
|
-
status:
|
|
527
|
+
status: 'missing'
|
|
528
528
|
};
|
|
529
529
|
}
|
|
530
530
|
if (operationFetchTime != null && queryCacheExpirationTime != null) {
|
|
531
531
|
var isStale = operationFetchTime <= Date.now() - queryCacheExpirationTime;
|
|
532
532
|
if (isStale) {
|
|
533
533
|
return {
|
|
534
|
-
status:
|
|
534
|
+
status: 'stale'
|
|
535
535
|
};
|
|
536
536
|
}
|
|
537
537
|
}
|
|
538
538
|
return {
|
|
539
|
-
status:
|
|
539
|
+
status: 'available',
|
|
540
540
|
fetchTime: operationFetchTime !== null && operationFetchTime !== void 0 ? operationFetchTime : null
|
|
541
541
|
};
|
|
542
542
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
|
-
var RelayModernRecord = require(
|
|
4
|
-
var _require = require(
|
|
3
|
+
var RelayModernRecord = require('../RelayModernRecord');
|
|
4
|
+
var _require = require('../RelayStoreUtils'),
|
|
5
5
|
RELAY_RESOLVER_OUTPUT_TYPE_RECORD_IDS = _require.RELAY_RESOLVER_OUTPUT_TYPE_RECORD_IDS;
|
|
6
|
-
var invariant = require(
|
|
6
|
+
var invariant = require('invariant');
|
|
7
7
|
function getOutputTypeRecordIDs(record) {
|
|
8
8
|
var maybeOutputTypeRecordIDs = RelayModernRecord.getValue(record, RELAY_RESOLVER_OUTPUT_TYPE_RECORD_IDS);
|
|
9
9
|
if (maybeOutputTypeRecordIDs == null) {
|
|
10
10
|
return null;
|
|
11
11
|
}
|
|
12
|
-
!(maybeOutputTypeRecordIDs instanceof Set) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
12
|
+
!(maybeOutputTypeRecordIDs instanceof Set) ? process.env.NODE_ENV !== "production" ? invariant(false, 'getOutputTypeRecordIDs: Expected the `%s` field on record `%s` to be of type Set. Instead, it is a %s.', RELAY_RESOLVER_OUTPUT_TYPE_RECORD_IDS, typeof maybeOutputTypeRecordIDs) : invariant(false) : void 0;
|
|
13
13
|
return maybeOutputTypeRecordIDs;
|
|
14
14
|
}
|
|
15
15
|
module.exports = getOutputTypeRecordIDs;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
3
|
module.exports = function isLiveStateValue(v) {
|
|
4
|
-
return v != null && typeof v ===
|
|
4
|
+
return v != null && typeof v === 'object' && typeof v.read === 'function' && typeof v.subscribe === 'function';
|
|
5
5
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
|
-
var _require = require(
|
|
3
|
+
var _require = require('../ResolverFragments'),
|
|
4
4
|
readFragment = _require.readFragment;
|
|
5
|
-
var invariant = require(
|
|
5
|
+
var invariant = require('invariant');
|
|
6
6
|
function resolverDataInjector(fragment, _resolverFn, fieldName, isRequiredField) {
|
|
7
7
|
var resolverFn = _resolverFn;
|
|
8
8
|
return function (fragmentKey, args) {
|
|
@@ -10,18 +10,18 @@ function resolverDataInjector(fragment, _resolverFn, fieldName, isRequiredField)
|
|
|
10
10
|
if (fieldName != null) {
|
|
11
11
|
if (data == null) {
|
|
12
12
|
if (isRequiredField === true) {
|
|
13
|
-
!false ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
13
|
+
!false ? process.env.NODE_ENV !== "production" ? invariant(false, 'Expected required resolver field `%s` in fragment `%s` to be present. But resolvers fragment data is null/undefined.', fieldName, fragment.name) : invariant(false) : void 0;
|
|
14
14
|
} else {
|
|
15
15
|
return resolverFn(null, args);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
if (fieldName in data) {
|
|
19
19
|
if (isRequiredField === true) {
|
|
20
|
-
!(data[fieldName] != null) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
20
|
+
!(data[fieldName] != null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'Expected required resolver field `%s` in fragment `%s` to be non-null.', fieldName, fragment.name) : invariant(false) : void 0;
|
|
21
21
|
}
|
|
22
22
|
return resolverFn(data[fieldName], args);
|
|
23
23
|
} else {
|
|
24
|
-
!false ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
24
|
+
!false ? process.env.NODE_ENV !== "production" ? invariant(false, 'Missing field `%s` in fragment `%s` in resolver response.', fieldName, fragment.name) : invariant(false) : void 0;
|
|
25
25
|
}
|
|
26
26
|
} else {
|
|
27
27
|
return resolverFn(data, args);
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
5
5
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
6
|
-
var isLiveStateValue = require(
|
|
7
|
-
var _require = require(
|
|
6
|
+
var isLiveStateValue = require('./isLiveStateValue');
|
|
7
|
+
var _require = require('./LiveResolverSuspenseSentinel'),
|
|
8
8
|
isSuspenseSentinel = _require.isSuspenseSentinel;
|
|
9
|
-
var invariant = require(
|
|
9
|
+
var invariant = require('invariant');
|
|
10
10
|
function weakObjectWrapperLive(resolverFn, key, isPlural) {
|
|
11
11
|
return function () {
|
|
12
12
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
13
13
|
args[_key] = arguments[_key];
|
|
14
14
|
}
|
|
15
15
|
var liveState = resolverFn.apply(null, args);
|
|
16
|
-
!isLiveStateValue(liveState) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
16
|
+
!isLiveStateValue(liveState) ? process.env.NODE_ENV !== "production" ? invariant(false, 'Resolver is expected to return a LiveState value.') : invariant(false) : void 0;
|
|
17
17
|
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, liveState), {}, {
|
|
18
18
|
read: weakObjectWrapper(function () {
|
|
19
19
|
return liveState.read();
|
|
@@ -31,7 +31,7 @@ function weakObjectWrapper(resolverFn, key, isPlural) {
|
|
|
31
31
|
return data;
|
|
32
32
|
}
|
|
33
33
|
if (isPlural) {
|
|
34
|
-
!Array.isArray(data) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
34
|
+
!Array.isArray(data) ? process.env.NODE_ENV !== "production" ? invariant(false, 'Resolver is expected to return a plural value.') : invariant(false) : void 0;
|
|
35
35
|
return data.map(function (item) {
|
|
36
36
|
return (0, _defineProperty2["default"])({}, key, item);
|
|
37
37
|
});
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
|
-
var _require = require(
|
|
3
|
+
var _require = require('./RelayStoreUtils'),
|
|
4
4
|
ROOT_ID = _require.ROOT_ID;
|
|
5
|
-
var _require2 = require(
|
|
5
|
+
var _require2 = require('./ViewerPattern'),
|
|
6
6
|
VIEWER_ID = _require2.VIEWER_ID;
|
|
7
7
|
var ITERATOR_KEY = Symbol.iterator;
|
|
8
8
|
function hasSignificantOverlappingIDs(seenRecords, updatedRecordIDs) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
3
|
function isRelayModernEnvironment(environment) {
|
|
4
|
-
return Boolean(environment && environment[
|
|
4
|
+
return Boolean(environment && environment['@@RelayModernEnvironment']);
|
|
5
5
|
}
|
|
6
6
|
module.exports = isRelayModernEnvironment;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
|
-
var _require = require(
|
|
3
|
+
var _require = require('../query/GraphQLTag'),
|
|
4
4
|
getInlineDataFragment = _require.getInlineDataFragment;
|
|
5
|
-
var _require2 = require(
|
|
5
|
+
var _require2 = require('./RelayStoreUtils'),
|
|
6
6
|
FRAGMENTS_KEY = _require2.FRAGMENTS_KEY;
|
|
7
|
-
var invariant = require(
|
|
7
|
+
var invariant = require('invariant');
|
|
8
8
|
function readInlineData(fragment, fragmentRef) {
|
|
9
9
|
var _fragmentRef$FRAGMENT;
|
|
10
10
|
var inlineDataFragment = getInlineDataFragment(fragment);
|
|
11
11
|
if (fragmentRef == null) {
|
|
12
12
|
return fragmentRef;
|
|
13
13
|
}
|
|
14
|
-
!(typeof fragmentRef ===
|
|
14
|
+
!(typeof fragmentRef === 'object') ? process.env.NODE_ENV !== "production" ? invariant(false, 'readInlineData(): Expected an object, got `%s`.', typeof fragmentRef) : invariant(false) : void 0;
|
|
15
15
|
var inlineData = (_fragmentRef$FRAGMENT = fragmentRef[FRAGMENTS_KEY]) === null || _fragmentRef$FRAGMENT === void 0 ? void 0 : _fragmentRef$FRAGMENT[inlineDataFragment.name];
|
|
16
|
-
!(inlineData != null) ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
16
|
+
!(inlineData != null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'readInlineData(): Expected fragment `%s` to be spread in the parent ' + 'fragment.', inlineDataFragment.name) : invariant(false) : void 0;
|
|
17
17
|
return inlineData;
|
|
18
18
|
}
|
|
19
19
|
module.exports = readInlineData;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
|
-
var RelayDeclarativeMutationConfig = require(
|
|
4
|
-
var _require = require(
|
|
3
|
+
var RelayDeclarativeMutationConfig = require('../mutations/RelayDeclarativeMutationConfig');
|
|
4
|
+
var _require = require('../query/GraphQLTag'),
|
|
5
5
|
getRequest = _require.getRequest;
|
|
6
|
-
var _require2 = require(
|
|
6
|
+
var _require2 = require('../store/RelayModernOperationDescriptor'),
|
|
7
7
|
createOperationDescriptor = _require2.createOperationDescriptor;
|
|
8
|
-
var _require3 = require(
|
|
8
|
+
var _require3 = require('../store/RelayModernSelector'),
|
|
9
9
|
createReaderSelector = _require3.createReaderSelector;
|
|
10
10
|
var warning = require("fbjs/lib/warning");
|
|
11
11
|
function requestSubscription(environment, config) {
|
|
12
12
|
var subscription = getRequest(config.subscription);
|
|
13
|
-
if (subscription.params.operationKind !==
|
|
14
|
-
throw new Error(
|
|
13
|
+
if (subscription.params.operationKind !== 'subscription') {
|
|
14
|
+
throw new Error('requestSubscription: Must use Subscription operation');
|
|
15
15
|
}
|
|
16
16
|
var configs = config.configs,
|
|
17
17
|
onCompleted = config.onCompleted,
|
|
@@ -20,7 +20,7 @@ function requestSubscription(environment, config) {
|
|
|
20
20
|
variables = config.variables,
|
|
21
21
|
cacheConfig = config.cacheConfig;
|
|
22
22
|
var operation = createOperationDescriptor(subscription, variables, cacheConfig);
|
|
23
|
-
process.env.NODE_ENV !== "production" ? warning(!(config.updater && configs),
|
|
23
|
+
process.env.NODE_ENV !== "production" ? warning(!(config.updater && configs), 'requestSubscription: Expected only one of `updater` and `configs` to be provided') : void 0;
|
|
24
24
|
var _ref = configs ? RelayDeclarativeMutationConfig.convert(configs, subscription, null, config.updater) : config,
|
|
25
25
|
updater = _ref.updater;
|
|
26
26
|
var sub = environment.executeSubscription({
|
|
@@ -38,7 +38,7 @@ function requestSubscription(environment, config) {
|
|
|
38
38
|
var _responses$extensions;
|
|
39
39
|
nextID = (_responses$extensions = responses.extensions) === null || _responses$extensions === void 0 ? void 0 : _responses$extensions.__relay_subscription_root_id;
|
|
40
40
|
}
|
|
41
|
-
if (typeof nextID ===
|
|
41
|
+
if (typeof nextID === 'string') {
|
|
42
42
|
selector = createReaderSelector(selector.node, nextID, selector.variables, selector.owner);
|
|
43
43
|
}
|
|
44
44
|
var data = environment.lookup(selector).data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
package/lib/util/ReaderNode.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
3
|
var RelayConcreteNode = {
|
|
4
|
-
ACTOR_CHANGE:
|
|
5
|
-
CONDITION:
|
|
6
|
-
CLIENT_COMPONENT:
|
|
7
|
-
CLIENT_EDGE_TO_SERVER_OBJECT:
|
|
8
|
-
CLIENT_EDGE_TO_CLIENT_OBJECT:
|
|
9
|
-
CLIENT_EXTENSION:
|
|
10
|
-
DEFER:
|
|
11
|
-
CONNECTION:
|
|
12
|
-
FRAGMENT:
|
|
13
|
-
FRAGMENT_SPREAD:
|
|
14
|
-
INLINE_DATA_FRAGMENT_SPREAD:
|
|
15
|
-
INLINE_DATA_FRAGMENT:
|
|
16
|
-
INLINE_FRAGMENT:
|
|
17
|
-
LINKED_FIELD:
|
|
18
|
-
LINKED_HANDLE:
|
|
19
|
-
LITERAL:
|
|
20
|
-
LIST_VALUE:
|
|
21
|
-
LOCAL_ARGUMENT:
|
|
22
|
-
MODULE_IMPORT:
|
|
23
|
-
ALIASED_FRAGMENT_SPREAD:
|
|
24
|
-
ALIASED_INLINE_FRAGMENT_SPREAD:
|
|
25
|
-
RELAY_RESOLVER:
|
|
26
|
-
RELAY_LIVE_RESOLVER:
|
|
27
|
-
REQUIRED_FIELD:
|
|
28
|
-
OBJECT_VALUE:
|
|
29
|
-
OPERATION:
|
|
30
|
-
REQUEST:
|
|
31
|
-
ROOT_ARGUMENT:
|
|
32
|
-
SCALAR_FIELD:
|
|
33
|
-
SCALAR_HANDLE:
|
|
34
|
-
SPLIT_OPERATION:
|
|
35
|
-
STREAM:
|
|
36
|
-
TYPE_DISCRIMINATOR:
|
|
37
|
-
UPDATABLE_QUERY:
|
|
38
|
-
VARIABLE:
|
|
4
|
+
ACTOR_CHANGE: 'ActorChange',
|
|
5
|
+
CONDITION: 'Condition',
|
|
6
|
+
CLIENT_COMPONENT: 'ClientComponent',
|
|
7
|
+
CLIENT_EDGE_TO_SERVER_OBJECT: 'ClientEdgeToServerObject',
|
|
8
|
+
CLIENT_EDGE_TO_CLIENT_OBJECT: 'ClientEdgeToClientObject',
|
|
9
|
+
CLIENT_EXTENSION: 'ClientExtension',
|
|
10
|
+
DEFER: 'Defer',
|
|
11
|
+
CONNECTION: 'Connection',
|
|
12
|
+
FRAGMENT: 'Fragment',
|
|
13
|
+
FRAGMENT_SPREAD: 'FragmentSpread',
|
|
14
|
+
INLINE_DATA_FRAGMENT_SPREAD: 'InlineDataFragmentSpread',
|
|
15
|
+
INLINE_DATA_FRAGMENT: 'InlineDataFragment',
|
|
16
|
+
INLINE_FRAGMENT: 'InlineFragment',
|
|
17
|
+
LINKED_FIELD: 'LinkedField',
|
|
18
|
+
LINKED_HANDLE: 'LinkedHandle',
|
|
19
|
+
LITERAL: 'Literal',
|
|
20
|
+
LIST_VALUE: 'ListValue',
|
|
21
|
+
LOCAL_ARGUMENT: 'LocalArgument',
|
|
22
|
+
MODULE_IMPORT: 'ModuleImport',
|
|
23
|
+
ALIASED_FRAGMENT_SPREAD: 'AliasedFragmentSpread',
|
|
24
|
+
ALIASED_INLINE_FRAGMENT_SPREAD: 'AliasedInlineFragmentSpread',
|
|
25
|
+
RELAY_RESOLVER: 'RelayResolver',
|
|
26
|
+
RELAY_LIVE_RESOLVER: 'RelayLiveResolver',
|
|
27
|
+
REQUIRED_FIELD: 'RequiredField',
|
|
28
|
+
OBJECT_VALUE: 'ObjectValue',
|
|
29
|
+
OPERATION: 'Operation',
|
|
30
|
+
REQUEST: 'Request',
|
|
31
|
+
ROOT_ARGUMENT: 'RootArgument',
|
|
32
|
+
SCALAR_FIELD: 'ScalarField',
|
|
33
|
+
SCALAR_HANDLE: 'ScalarHandle',
|
|
34
|
+
SPLIT_OPERATION: 'SplitOperation',
|
|
35
|
+
STREAM: 'Stream',
|
|
36
|
+
TYPE_DISCRIMINATOR: 'TypeDiscriminator',
|
|
37
|
+
UPDATABLE_QUERY: 'UpdatableQuery',
|
|
38
|
+
VARIABLE: 'Variable'
|
|
39
39
|
};
|
|
40
40
|
module.exports = RelayConcreteNode;
|
package/lib/util/RelayError.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
3
|
function createError(type, name, messageFormat) {
|
|
4
4
|
for (var _len = arguments.length, messageParams = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {
|
|
@@ -28,12 +28,12 @@ module.exports = {
|
|
|
28
28
|
for (var _len2 = arguments.length, messageParams = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
|
|
29
29
|
messageParams[_key2 - 2] = arguments[_key2];
|
|
30
30
|
}
|
|
31
|
-
return createError.apply(void 0, [
|
|
31
|
+
return createError.apply(void 0, ['error', name, messageFormat].concat(messageParams));
|
|
32
32
|
},
|
|
33
33
|
createWarning: function createWarning(name, messageFormat) {
|
|
34
34
|
for (var _len3 = arguments.length, messageParams = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {
|
|
35
35
|
messageParams[_key3 - 2] = arguments[_key3];
|
|
36
36
|
}
|
|
37
|
-
return createError.apply(void 0, [
|
|
37
|
+
return createError.apply(void 0, ['warn', name, messageFormat].concat(messageParams));
|
|
38
38
|
}
|
|
39
39
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
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
5
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
|
-
var RelayObservable = require(
|
|
7
|
-
var invariant = require(
|
|
6
|
+
var RelayObservable = require('../network/RelayObservable');
|
|
7
|
+
var invariant = require('invariant');
|
|
8
8
|
var RelayReplaySubject = /*#__PURE__*/function () {
|
|
9
9
|
function RelayReplaySubject() {
|
|
10
10
|
var _this = this;
|
|
@@ -21,18 +21,18 @@ var RelayReplaySubject = /*#__PURE__*/function () {
|
|
|
21
21
|
}
|
|
22
22
|
var event = events[i];
|
|
23
23
|
switch (event.kind) {
|
|
24
|
-
case
|
|
24
|
+
case 'complete':
|
|
25
25
|
sink.complete();
|
|
26
26
|
break;
|
|
27
|
-
case
|
|
27
|
+
case 'error':
|
|
28
28
|
sink.error(event.error);
|
|
29
29
|
break;
|
|
30
|
-
case
|
|
30
|
+
case 'next':
|
|
31
31
|
sink.next(event.data);
|
|
32
32
|
break;
|
|
33
33
|
default:
|
|
34
34
|
event.kind;
|
|
35
|
-
!false ? process.env.NODE_ENV !== "production" ? invariant(false,
|
|
35
|
+
!false ? process.env.NODE_ENV !== "production" ? invariant(false, 'RelayReplaySubject: Unknown event kind `%s`.', event.kind) : invariant(false) : void 0;
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
return function () {
|
|
@@ -47,7 +47,7 @@ var RelayReplaySubject = /*#__PURE__*/function () {
|
|
|
47
47
|
}
|
|
48
48
|
this._complete = true;
|
|
49
49
|
this._events.push({
|
|
50
|
-
kind:
|
|
50
|
+
kind: 'complete'
|
|
51
51
|
});
|
|
52
52
|
this._sinks.forEach(function (sink) {
|
|
53
53
|
return sink.complete();
|
|
@@ -59,7 +59,7 @@ var RelayReplaySubject = /*#__PURE__*/function () {
|
|
|
59
59
|
}
|
|
60
60
|
this._complete = true;
|
|
61
61
|
this._events.push({
|
|
62
|
-
kind:
|
|
62
|
+
kind: 'error',
|
|
63
63
|
error: _error
|
|
64
64
|
});
|
|
65
65
|
this._sinks.forEach(function (sink) {
|
|
@@ -71,7 +71,7 @@ var RelayReplaySubject = /*#__PURE__*/function () {
|
|
|
71
71
|
return;
|
|
72
72
|
}
|
|
73
73
|
this._events.push({
|
|
74
|
-
kind:
|
|
74
|
+
kind: 'next',
|
|
75
75
|
data: data
|
|
76
76
|
});
|
|
77
77
|
this._sinks.forEach(function (sink) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|