relay-runtime 8.0.0 → 10.0.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/handlers/RelayDefaultHandlerProvider.js.flow +41 -0
- package/handlers/connection/ConnectionHandler.js.flow +549 -0
- package/handlers/connection/ConnectionInterface.js.flow +92 -0
- package/handlers/connection/MutationHandlers.js.flow +88 -0
- package/index.js +1 -1
- package/index.js.flow +320 -0
- package/lib/handlers/RelayDefaultHandlerProvider.js +13 -2
- package/lib/handlers/connection/{RelayConnectionHandler.js → ConnectionHandler.js} +33 -35
- package/lib/handlers/connection/{RelayConnectionInterface.js → ConnectionInterface.js} +2 -2
- package/lib/handlers/connection/MutationHandlers.js +86 -0
- package/lib/index.js +15 -19
- package/lib/mutations/RelayDeclarativeMutationConfig.js +29 -52
- package/lib/mutations/RelayRecordProxy.js +1 -3
- package/lib/mutations/RelayRecordSourceMutator.js +2 -9
- package/lib/mutations/RelayRecordSourceProxy.js +2 -4
- package/lib/mutations/RelayRecordSourceSelectorProxy.js +1 -13
- package/lib/mutations/commitMutation.js +13 -3
- package/lib/mutations/validateMutation.js +16 -9
- package/lib/network/RelayObservable.js +9 -9
- package/lib/network/RelayQueryResponseCache.js +8 -6
- package/lib/query/PreloadableQueryRegistry.js +70 -0
- package/lib/query/fetchQueryInternal.js +31 -23
- package/lib/store/DataChecker.js +122 -110
- package/lib/store/RelayConcreteVariables.js +6 -2
- package/lib/store/RelayModernEnvironment.js +121 -67
- package/lib/store/RelayModernFragmentSpecResolver.js +12 -16
- package/lib/store/RelayModernQueryExecutor.js +389 -314
- package/lib/store/RelayModernRecord.js +14 -9
- package/lib/store/RelayModernSelector.js +7 -3
- package/lib/store/RelayModernStore.js +289 -484
- package/lib/store/RelayOperationTracker.js +35 -78
- package/lib/store/RelayOptimisticRecordSource.js +7 -5
- package/lib/store/RelayPublishQueue.js +6 -33
- package/lib/store/RelayReader.js +113 -45
- package/lib/store/RelayRecordSource.js +2 -9
- package/lib/store/RelayRecordSourceMapImpl.js +13 -18
- package/lib/store/RelayReferenceMarker.js +40 -60
- package/lib/store/RelayResponseNormalizer.js +158 -193
- package/lib/store/RelayStoreUtils.js +1 -0
- package/lib/store/StoreInspector.js +8 -8
- package/lib/store/TypeID.js +28 -0
- package/lib/store/cloneRelayScalarHandleSourceField.js +44 -0
- package/lib/store/normalizeRelayPayload.js +6 -2
- package/lib/store/readInlineData.js +1 -1
- package/lib/subscription/requestSubscription.js +5 -3
- package/lib/util/RelayConcreteNode.js +9 -6
- package/lib/util/RelayError.js +39 -9
- package/lib/util/RelayFeatureFlags.js +2 -5
- package/lib/util/RelayReplaySubject.js +3 -3
- package/lib/util/createPayloadFor3DField.js +7 -2
- package/lib/util/getRequestIdentifier.js +2 -2
- package/lib/util/recycleNodesInto.js +2 -6
- package/mutations/RelayDeclarativeMutationConfig.js.flow +380 -0
- package/mutations/RelayRecordProxy.js.flow +165 -0
- package/mutations/RelayRecordSourceMutator.js.flow +238 -0
- package/mutations/RelayRecordSourceProxy.js.flow +164 -0
- package/mutations/RelayRecordSourceSelectorProxy.js.flow +119 -0
- package/mutations/applyOptimisticMutation.js.flow +76 -0
- package/mutations/commitLocalUpdate.js.flow +24 -0
- package/mutations/commitMutation.js.flow +182 -0
- package/mutations/validateMutation.js.flow +213 -0
- package/network/ConvertToExecuteFunction.js.flow +49 -0
- package/network/RelayNetwork.js.flow +84 -0
- package/network/RelayNetworkTypes.js.flow +123 -0
- package/network/RelayObservable.js.flow +634 -0
- package/network/RelayQueryResponseCache.js.flow +111 -0
- package/package.json +1 -1
- package/query/GraphQLTag.js.flow +166 -0
- package/query/PreloadableQueryRegistry.js.flow +65 -0
- package/query/fetchQuery.js.flow +47 -0
- package/query/fetchQueryInternal.js.flow +348 -0
- package/relay-runtime.js +2 -2
- package/relay-runtime.min.js +2 -2
- package/store/ClientID.js.flow +43 -0
- package/store/DataChecker.js.flow +502 -0
- package/store/RelayConcreteVariables.js.flow +96 -0
- package/store/RelayModernEnvironment.js.flow +551 -0
- package/store/RelayModernFragmentSpecResolver.js.flow +426 -0
- package/store/RelayModernOperationDescriptor.js.flow +88 -0
- package/store/RelayModernQueryExecutor.js.flow +1321 -0
- package/store/RelayModernRecord.js.flow +403 -0
- package/store/RelayModernSelector.js.flow +455 -0
- package/store/RelayModernStore.js.flow +842 -0
- package/store/RelayOperationTracker.js.flow +164 -0
- package/store/RelayOptimisticRecordSource.js.flow +119 -0
- package/store/RelayPublishQueue.js.flow +401 -0
- package/store/RelayReader.js.flow +473 -0
- package/store/RelayRecordSource.js.flow +29 -0
- package/store/RelayRecordSourceMapImpl.js.flow +87 -0
- package/store/RelayRecordState.js.flow +37 -0
- package/store/RelayReferenceMarker.js.flow +257 -0
- package/store/RelayResponseNormalizer.js.flow +680 -0
- package/store/RelayStoreTypes.js.flow +899 -0
- package/store/RelayStoreUtils.js.flow +219 -0
- package/store/StoreInspector.js.flow +171 -0
- package/store/TypeID.js.flow +28 -0
- package/store/ViewerPattern.js.flow +26 -0
- package/store/cloneRelayHandleSourceField.js.flow +66 -0
- package/store/cloneRelayScalarHandleSourceField.js.flow +62 -0
- package/store/createFragmentSpecResolver.js.flow +55 -0
- package/store/createRelayContext.js.flow +44 -0
- package/store/defaultGetDataID.js.flow +27 -0
- package/store/hasOverlappingIDs.js.flow +34 -0
- package/store/isRelayModernEnvironment.js.flow +27 -0
- package/store/normalizeRelayPayload.js.flow +51 -0
- package/store/readInlineData.js.flow +75 -0
- package/subscription/requestSubscription.js.flow +100 -0
- package/util/JSResourceTypes.flow.js.flow +20 -0
- package/util/NormalizationNode.js.flow +198 -0
- package/util/ReaderNode.js.flow +208 -0
- package/util/RelayConcreteNode.js.flow +93 -0
- package/util/RelayDefaultHandleKey.js.flow +17 -0
- package/util/RelayError.js.flow +62 -0
- package/util/RelayFeatureFlags.js.flow +30 -0
- package/util/RelayProfiler.js.flow +284 -0
- package/util/RelayReplaySubject.js.flow +135 -0
- package/util/RelayRuntimeTypes.js.flow +72 -0
- package/util/createPayloadFor3DField.js.flow +43 -0
- package/util/deepFreeze.js.flow +36 -0
- package/util/generateID.js.flow +21 -0
- package/util/getFragmentIdentifier.js.flow +52 -0
- package/util/getRelayHandleKey.js.flow +41 -0
- package/util/getRequestIdentifier.js.flow +42 -0
- package/util/isPromise.js.flow +21 -0
- package/util/isScalarAndEqual.js.flow +26 -0
- package/util/recycleNodesInto.js.flow +76 -0
- package/util/resolveImmediate.js.flow +30 -0
- package/util/stableCopy.js.flow +35 -0
- package/lib/handlers/RelayDefaultMissingFieldHandlers.js +0 -26
- package/lib/handlers/getRelayDefaultMissingFieldHandlers.js +0 -36
- package/lib/query/RelayModernGraphQLTag.js +0 -104
- package/lib/store/RelayConnection.js +0 -37
- package/lib/store/RelayConnectionResolver.js +0 -178
- package/lib/store/RelayRecordSourceObjectImpl.js +0 -79
- package/lib/util/getFragmentSpecIdentifier.js +0 -27
|
@@ -11,6 +11,14 @@
|
|
|
11
11
|
// flowlint ambiguous-object-type:error
|
|
12
12
|
'use strict';
|
|
13
13
|
|
|
14
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
15
|
+
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
+
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
21
|
+
|
|
14
22
|
var RelayDefaultHandlerProvider = require('../handlers/RelayDefaultHandlerProvider');
|
|
15
23
|
|
|
16
24
|
var RelayFeatureFlags = require('../util/RelayFeatureFlags');
|
|
@@ -29,20 +37,17 @@ var defaultGetDataID = require('./defaultGetDataID');
|
|
|
29
37
|
|
|
30
38
|
var generateID = require('../util/generateID');
|
|
31
39
|
|
|
32
|
-
var getRelayDefaultMissingFieldHandlers = require('../handlers/getRelayDefaultMissingFieldHandlers');
|
|
33
|
-
|
|
34
40
|
var invariant = require("fbjs/lib/invariant");
|
|
35
41
|
|
|
36
|
-
var RelayModernEnvironment =
|
|
37
|
-
/*#__PURE__*/
|
|
38
|
-
function () {
|
|
42
|
+
var RelayModernEnvironment = /*#__PURE__*/function () {
|
|
39
43
|
function RelayModernEnvironment(config) {
|
|
40
44
|
var _this = this;
|
|
41
45
|
|
|
42
|
-
var _config$log, _config$UNSTABLE_defa, _config$UNSTABLE_DO_N, _config$scheduler, _config$
|
|
46
|
+
var _config$log, _config$UNSTABLE_defa, _config$UNSTABLE_DO_N, _config$scheduler, _config$isServer, _config$operationTrac;
|
|
43
47
|
|
|
44
48
|
this.configName = config.configName;
|
|
45
49
|
var handlerProvider = config.handlerProvider ? config.handlerProvider : RelayDefaultHandlerProvider;
|
|
50
|
+
this._treatMissingFieldsAsNull = config.treatMissingFieldsAsNull === true;
|
|
46
51
|
var operationLoader = config.operationLoader;
|
|
47
52
|
|
|
48
53
|
if (process.env.NODE_ENV !== "production") {
|
|
@@ -54,12 +59,14 @@ function () {
|
|
|
54
59
|
this.__log = (_config$log = config.log) !== null && _config$log !== void 0 ? _config$log : emptyFunction;
|
|
55
60
|
this._defaultRenderPolicy = ((_config$UNSTABLE_defa = config.UNSTABLE_defaultRenderPolicy) !== null && _config$UNSTABLE_defa !== void 0 ? _config$UNSTABLE_defa : RelayFeatureFlags.ENABLE_PARTIAL_RENDERING_DEFAULT === true) ? 'partial' : 'full';
|
|
56
61
|
this._operationLoader = operationLoader;
|
|
62
|
+
this._operationExecutions = new Map();
|
|
57
63
|
this._network = config.network;
|
|
58
64
|
this._getDataID = (_config$UNSTABLE_DO_N = config.UNSTABLE_DO_NOT_USE_getDataID) !== null && _config$UNSTABLE_DO_N !== void 0 ? _config$UNSTABLE_DO_N : defaultGetDataID;
|
|
59
65
|
this._publishQueue = new RelayPublishQueue(config.store, handlerProvider, this._getDataID);
|
|
60
66
|
this._scheduler = (_config$scheduler = config.scheduler) !== null && _config$scheduler !== void 0 ? _config$scheduler : null;
|
|
61
67
|
this._store = config.store;
|
|
62
68
|
this.options = config.options;
|
|
69
|
+
this._isServer = (_config$isServer = config.isServer) !== null && _config$isServer !== void 0 ? _config$isServer : false;
|
|
63
70
|
|
|
64
71
|
this.__setNet = function (newNet) {
|
|
65
72
|
return _this._network = newNet;
|
|
@@ -84,7 +91,7 @@ function () {
|
|
|
84
91
|
devToolsHook.registerEnvironment(this);
|
|
85
92
|
}
|
|
86
93
|
|
|
87
|
-
this._missingFieldHandlers =
|
|
94
|
+
this._missingFieldHandlers = config.missingFieldHandlers;
|
|
88
95
|
this._operationTracker = (_config$operationTrac = config.operationTracker) !== null && _config$operationTrac !== void 0 ? _config$operationTrac : new RelayOperationTracker();
|
|
89
96
|
}
|
|
90
97
|
|
|
@@ -102,6 +109,12 @@ function () {
|
|
|
102
109
|
return this._operationTracker;
|
|
103
110
|
};
|
|
104
111
|
|
|
112
|
+
_proto.isRequestActive = function isRequestActive(requestIdentifier) {
|
|
113
|
+
var activeState = this._operationExecutions.get(requestIdentifier);
|
|
114
|
+
|
|
115
|
+
return activeState === 'active';
|
|
116
|
+
};
|
|
117
|
+
|
|
105
118
|
_proto.UNSTABLE_getDefaultRenderPolicy = function UNSTABLE_getDefaultRenderPolicy() {
|
|
106
119
|
return this._defaultRenderPolicy;
|
|
107
120
|
};
|
|
@@ -110,14 +123,18 @@ function () {
|
|
|
110
123
|
var _this2 = this;
|
|
111
124
|
|
|
112
125
|
var dispose = function dispose() {
|
|
113
|
-
_this2.
|
|
126
|
+
_this2._scheduleUpdates(function () {
|
|
127
|
+
_this2._publishQueue.revertUpdate(optimisticUpdate);
|
|
114
128
|
|
|
115
|
-
|
|
129
|
+
_this2._publishQueue.run();
|
|
130
|
+
});
|
|
116
131
|
};
|
|
117
132
|
|
|
118
|
-
this.
|
|
133
|
+
this._scheduleUpdates(function () {
|
|
134
|
+
_this2._publishQueue.applyUpdate(optimisticUpdate);
|
|
119
135
|
|
|
120
|
-
|
|
136
|
+
_this2._publishQueue.run();
|
|
137
|
+
});
|
|
121
138
|
|
|
122
139
|
return {
|
|
123
140
|
dispose: dispose
|
|
@@ -125,36 +142,46 @@ function () {
|
|
|
125
142
|
};
|
|
126
143
|
|
|
127
144
|
_proto.revertUpdate = function revertUpdate(update) {
|
|
128
|
-
this
|
|
145
|
+
var _this3 = this;
|
|
146
|
+
|
|
147
|
+
this._scheduleUpdates(function () {
|
|
148
|
+
_this3._publishQueue.revertUpdate(update);
|
|
129
149
|
|
|
130
|
-
|
|
150
|
+
_this3._publishQueue.run();
|
|
151
|
+
});
|
|
131
152
|
};
|
|
132
153
|
|
|
133
154
|
_proto.replaceUpdate = function replaceUpdate(update, newUpdate) {
|
|
134
|
-
this
|
|
155
|
+
var _this4 = this;
|
|
156
|
+
|
|
157
|
+
this._scheduleUpdates(function () {
|
|
158
|
+
_this4._publishQueue.revertUpdate(update);
|
|
135
159
|
|
|
136
|
-
|
|
160
|
+
_this4._publishQueue.applyUpdate(newUpdate);
|
|
137
161
|
|
|
138
|
-
|
|
162
|
+
_this4._publishQueue.run();
|
|
163
|
+
});
|
|
139
164
|
};
|
|
140
165
|
|
|
141
166
|
_proto.applyMutation = function applyMutation(optimisticConfig) {
|
|
142
|
-
var
|
|
167
|
+
var _this5 = this;
|
|
143
168
|
|
|
144
169
|
var subscription = RelayObservable.create(function (sink) {
|
|
145
170
|
var source = RelayObservable.create(function (_sink) {});
|
|
146
171
|
var executor = RelayModernQueryExecutor.execute({
|
|
147
172
|
operation: optimisticConfig.operation,
|
|
148
|
-
|
|
173
|
+
operationExecutions: _this5._operationExecutions,
|
|
174
|
+
operationLoader: _this5._operationLoader,
|
|
149
175
|
optimisticConfig: optimisticConfig,
|
|
150
|
-
publishQueue:
|
|
151
|
-
scheduler:
|
|
176
|
+
publishQueue: _this5._publishQueue,
|
|
177
|
+
scheduler: _this5._scheduler,
|
|
152
178
|
sink: sink,
|
|
153
179
|
source: source,
|
|
154
|
-
store:
|
|
180
|
+
store: _this5._store,
|
|
155
181
|
updater: null,
|
|
156
|
-
operationTracker:
|
|
157
|
-
getDataID:
|
|
182
|
+
operationTracker: _this5._operationTracker,
|
|
183
|
+
getDataID: _this5._getDataID,
|
|
184
|
+
treatMissingFieldsAsNull: _this5._treatMissingFieldsAsNull
|
|
158
185
|
});
|
|
159
186
|
return function () {
|
|
160
187
|
return executor.cancel();
|
|
@@ -176,28 +203,26 @@ function () {
|
|
|
176
203
|
};
|
|
177
204
|
|
|
178
205
|
_proto.commitPayload = function commitPayload(operation, payload) {
|
|
179
|
-
var
|
|
206
|
+
var _this6 = this;
|
|
180
207
|
|
|
181
208
|
RelayObservable.create(function (sink) {
|
|
182
209
|
var executor = RelayModernQueryExecutor.execute({
|
|
183
210
|
operation: operation,
|
|
184
|
-
|
|
211
|
+
operationExecutions: _this6._operationExecutions,
|
|
212
|
+
operationLoader: _this6._operationLoader,
|
|
185
213
|
optimisticConfig: null,
|
|
186
|
-
publishQueue:
|
|
187
|
-
scheduler:
|
|
188
|
-
// make sure the first payload is sync
|
|
214
|
+
publishQueue: _this6._publishQueue,
|
|
215
|
+
scheduler: _this6._scheduler,
|
|
189
216
|
sink: sink,
|
|
190
217
|
source: RelayObservable.from({
|
|
191
|
-
data: payload
|
|
192
|
-
extensions: {
|
|
193
|
-
is_final: true
|
|
194
|
-
}
|
|
218
|
+
data: payload
|
|
195
219
|
}),
|
|
196
|
-
store:
|
|
220
|
+
store: _this6._store,
|
|
197
221
|
updater: null,
|
|
198
|
-
operationTracker:
|
|
199
|
-
getDataID:
|
|
200
|
-
isClientPayload: true
|
|
222
|
+
operationTracker: _this6._operationTracker,
|
|
223
|
+
getDataID: _this6._getDataID,
|
|
224
|
+
isClientPayload: true,
|
|
225
|
+
treatMissingFieldsAsNull: _this6._treatMissingFieldsAsNull
|
|
201
226
|
});
|
|
202
227
|
return function () {
|
|
203
228
|
return executor.cancel();
|
|
@@ -206,9 +231,13 @@ function () {
|
|
|
206
231
|
};
|
|
207
232
|
|
|
208
233
|
_proto.commitUpdate = function commitUpdate(updater) {
|
|
209
|
-
this
|
|
234
|
+
var _this7 = this;
|
|
210
235
|
|
|
211
|
-
this.
|
|
236
|
+
this._scheduleUpdates(function () {
|
|
237
|
+
_this7._publishQueue.commitUpdate(updater);
|
|
238
|
+
|
|
239
|
+
_this7._publishQueue.run();
|
|
240
|
+
});
|
|
212
241
|
};
|
|
213
242
|
|
|
214
243
|
_proto.lookup = function lookup(readSelector) {
|
|
@@ -223,7 +252,13 @@ function () {
|
|
|
223
252
|
return this._store.retain(operation);
|
|
224
253
|
};
|
|
225
254
|
|
|
255
|
+
_proto.isServer = function isServer() {
|
|
256
|
+
return this._isServer;
|
|
257
|
+
};
|
|
258
|
+
|
|
226
259
|
_proto._checkSelectorAndHandleMissingFields = function _checkSelectorAndHandleMissingFields(operation, handlers) {
|
|
260
|
+
var _this8 = this;
|
|
261
|
+
|
|
227
262
|
var target = RelayRecordSource.create();
|
|
228
263
|
|
|
229
264
|
var result = this._store.check(operation, {
|
|
@@ -232,12 +267,24 @@ function () {
|
|
|
232
267
|
});
|
|
233
268
|
|
|
234
269
|
if (target.size() > 0) {
|
|
235
|
-
this.
|
|
270
|
+
this._scheduleUpdates(function () {
|
|
271
|
+
_this8._publishQueue.commitSource(target);
|
|
236
272
|
|
|
237
|
-
|
|
273
|
+
_this8._publishQueue.run();
|
|
274
|
+
});
|
|
238
275
|
}
|
|
239
276
|
|
|
240
277
|
return result;
|
|
278
|
+
};
|
|
279
|
+
|
|
280
|
+
_proto._scheduleUpdates = function _scheduleUpdates(task) {
|
|
281
|
+
var scheduler = this._scheduler;
|
|
282
|
+
|
|
283
|
+
if (scheduler != null) {
|
|
284
|
+
scheduler.schedule(task);
|
|
285
|
+
} else {
|
|
286
|
+
task();
|
|
287
|
+
}
|
|
241
288
|
}
|
|
242
289
|
/**
|
|
243
290
|
* Returns an Observable of GraphQLResponse resulting from executing the
|
|
@@ -250,7 +297,7 @@ function () {
|
|
|
250
297
|
;
|
|
251
298
|
|
|
252
299
|
_proto.execute = function execute(_ref) {
|
|
253
|
-
var
|
|
300
|
+
var _this9 = this;
|
|
254
301
|
|
|
255
302
|
var operation = _ref.operation,
|
|
256
303
|
cacheConfig = _ref.cacheConfig,
|
|
@@ -261,25 +308,27 @@ function () {
|
|
|
261
308
|
logRequestInfo = _this$__createLogObse[1];
|
|
262
309
|
|
|
263
310
|
return RelayObservable.create(function (sink) {
|
|
264
|
-
var source =
|
|
311
|
+
var source = _this9._network.execute(operation.request.node.params, operation.request.variables, cacheConfig || {}, null, logRequestInfo)["do"](logObserver);
|
|
265
312
|
|
|
266
313
|
var executor = RelayModernQueryExecutor.execute({
|
|
267
314
|
operation: operation,
|
|
268
|
-
|
|
315
|
+
operationExecutions: _this9._operationExecutions,
|
|
316
|
+
operationLoader: _this9._operationLoader,
|
|
269
317
|
optimisticConfig: null,
|
|
270
|
-
publishQueue:
|
|
271
|
-
scheduler:
|
|
318
|
+
publishQueue: _this9._publishQueue,
|
|
319
|
+
scheduler: _this9._scheduler,
|
|
272
320
|
sink: sink,
|
|
273
321
|
source: source,
|
|
274
|
-
store:
|
|
322
|
+
store: _this9._store,
|
|
275
323
|
updater: updater,
|
|
276
|
-
operationTracker:
|
|
277
|
-
getDataID:
|
|
324
|
+
operationTracker: _this9._operationTracker,
|
|
325
|
+
getDataID: _this9._getDataID,
|
|
326
|
+
treatMissingFieldsAsNull: _this9._treatMissingFieldsAsNull
|
|
278
327
|
});
|
|
279
328
|
return function () {
|
|
280
329
|
return executor.cancel();
|
|
281
330
|
};
|
|
282
|
-
})
|
|
331
|
+
});
|
|
283
332
|
}
|
|
284
333
|
/**
|
|
285
334
|
* Returns an Observable of GraphQLResponse resulting from executing the
|
|
@@ -294,9 +343,10 @@ function () {
|
|
|
294
343
|
;
|
|
295
344
|
|
|
296
345
|
_proto.executeMutation = function executeMutation(_ref2) {
|
|
297
|
-
var
|
|
346
|
+
var _this10 = this;
|
|
298
347
|
|
|
299
|
-
var
|
|
348
|
+
var cacheConfig = _ref2.cacheConfig,
|
|
349
|
+
operation = _ref2.operation,
|
|
300
350
|
optimisticResponse = _ref2.optimisticResponse,
|
|
301
351
|
optimisticUpdater = _ref2.optimisticUpdater,
|
|
302
352
|
updater = _ref2.updater,
|
|
@@ -317,27 +367,29 @@ function () {
|
|
|
317
367
|
};
|
|
318
368
|
}
|
|
319
369
|
|
|
320
|
-
var source =
|
|
370
|
+
var source = _this10._network.execute(operation.request.node.params, operation.request.variables, _objectSpread({}, cacheConfig, {
|
|
321
371
|
force: true
|
|
322
|
-
}, uploadables, logRequestInfo);
|
|
372
|
+
}), uploadables, logRequestInfo)["do"](logObserver);
|
|
323
373
|
|
|
324
374
|
var executor = RelayModernQueryExecutor.execute({
|
|
325
375
|
operation: operation,
|
|
326
|
-
|
|
376
|
+
operationExecutions: _this10._operationExecutions,
|
|
377
|
+
operationLoader: _this10._operationLoader,
|
|
327
378
|
optimisticConfig: optimisticConfig,
|
|
328
|
-
publishQueue:
|
|
329
|
-
scheduler:
|
|
379
|
+
publishQueue: _this10._publishQueue,
|
|
380
|
+
scheduler: _this10._scheduler,
|
|
330
381
|
sink: sink,
|
|
331
382
|
source: source,
|
|
332
|
-
store:
|
|
383
|
+
store: _this10._store,
|
|
333
384
|
updater: updater,
|
|
334
|
-
operationTracker:
|
|
335
|
-
getDataID:
|
|
385
|
+
operationTracker: _this10._operationTracker,
|
|
386
|
+
getDataID: _this10._getDataID,
|
|
387
|
+
treatMissingFieldsAsNull: _this10._treatMissingFieldsAsNull
|
|
336
388
|
});
|
|
337
389
|
return function () {
|
|
338
390
|
return executor.cancel();
|
|
339
391
|
};
|
|
340
|
-
})
|
|
392
|
+
});
|
|
341
393
|
}
|
|
342
394
|
/**
|
|
343
395
|
* Returns an Observable of GraphQLResponse resulting from executing the
|
|
@@ -351,22 +403,24 @@ function () {
|
|
|
351
403
|
;
|
|
352
404
|
|
|
353
405
|
_proto.executeWithSource = function executeWithSource(_ref3) {
|
|
354
|
-
var
|
|
406
|
+
var _this11 = this;
|
|
355
407
|
|
|
356
408
|
var operation = _ref3.operation,
|
|
357
409
|
source = _ref3.source;
|
|
358
410
|
return RelayObservable.create(function (sink) {
|
|
359
411
|
var executor = RelayModernQueryExecutor.execute({
|
|
360
412
|
operation: operation,
|
|
361
|
-
|
|
362
|
-
|
|
413
|
+
operationExecutions: _this11._operationExecutions,
|
|
414
|
+
operationLoader: _this11._operationLoader,
|
|
415
|
+
operationTracker: _this11._operationTracker,
|
|
363
416
|
optimisticConfig: null,
|
|
364
|
-
publishQueue:
|
|
365
|
-
scheduler:
|
|
417
|
+
publishQueue: _this11._publishQueue,
|
|
418
|
+
scheduler: _this11._scheduler,
|
|
366
419
|
sink: sink,
|
|
367
420
|
source: source,
|
|
368
|
-
store:
|
|
369
|
-
getDataID:
|
|
421
|
+
store: _this11._store,
|
|
422
|
+
getDataID: _this11._getDataID,
|
|
423
|
+
treatMissingFieldsAsNull: _this11._treatMissingFieldsAsNull
|
|
370
424
|
});
|
|
371
425
|
return function () {
|
|
372
426
|
return executor.cancel();
|
|
@@ -12,10 +12,12 @@
|
|
|
12
12
|
|
|
13
13
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
14
14
|
|
|
15
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread"));
|
|
16
|
-
|
|
17
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
18
16
|
|
|
17
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
18
|
+
|
|
19
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
20
|
+
|
|
19
21
|
var RelayFeatureFlags = require('../util/RelayFeatureFlags');
|
|
20
22
|
|
|
21
23
|
var areEqual = require("fbjs/lib/areEqual");
|
|
@@ -27,7 +29,7 @@ var isScalarAndEqual = require('../util/isScalarAndEqual');
|
|
|
27
29
|
var warning = require("fbjs/lib/warning");
|
|
28
30
|
|
|
29
31
|
var _require = require('../query/fetchQueryInternal'),
|
|
30
|
-
|
|
32
|
+
getPromiseForActiveRequest = _require.getPromiseForActiveRequest;
|
|
31
33
|
|
|
32
34
|
var _require2 = require('./RelayModernOperationDescriptor'),
|
|
33
35
|
createRequestDescriptor = _require2.createRequestDescriptor;
|
|
@@ -56,9 +58,7 @@ var _require3 = require('./RelayModernSelector'),
|
|
|
56
58
|
* the resolver as stale and notify the caller, and the actual results are
|
|
57
59
|
* recomputed the first time `resolve()` is called.
|
|
58
60
|
*/
|
|
59
|
-
var RelayModernFragmentSpecResolver =
|
|
60
|
-
/*#__PURE__*/
|
|
61
|
-
function () {
|
|
61
|
+
var RelayModernFragmentSpecResolver = /*#__PURE__*/function () {
|
|
62
62
|
function RelayModernFragmentSpecResolver(context, fragments, props, callback) {
|
|
63
63
|
var _this = this;
|
|
64
64
|
|
|
@@ -105,7 +105,7 @@ function () {
|
|
|
105
105
|
var nextItem = resolver.resolve();
|
|
106
106
|
|
|
107
107
|
if (nextData || nextItem !== prevItem) {
|
|
108
|
-
nextData = nextData || (
|
|
108
|
+
nextData = nextData || _objectSpread({}, prevData);
|
|
109
109
|
nextData[_key2] = nextItem;
|
|
110
110
|
}
|
|
111
111
|
} else {
|
|
@@ -114,7 +114,7 @@ function () {
|
|
|
114
114
|
var _nextItem = prop !== undefined ? prop : null;
|
|
115
115
|
|
|
116
116
|
if (nextData || !isScalarAndEqual(_nextItem, prevItem)) {
|
|
117
|
-
nextData = nextData || (
|
|
117
|
+
nextData = nextData || _objectSpread({}, prevData);
|
|
118
118
|
nextData[_key2] = _nextItem;
|
|
119
119
|
}
|
|
120
120
|
}
|
|
@@ -192,9 +192,7 @@ function () {
|
|
|
192
192
|
*/
|
|
193
193
|
|
|
194
194
|
|
|
195
|
-
var SelectorResolver =
|
|
196
|
-
/*#__PURE__*/
|
|
197
|
-
function () {
|
|
195
|
+
var SelectorResolver = /*#__PURE__*/function () {
|
|
198
196
|
function SelectorResolver(environment, selector, callback) {
|
|
199
197
|
var _this2 = this;
|
|
200
198
|
|
|
@@ -227,7 +225,7 @@ function () {
|
|
|
227
225
|
|
|
228
226
|
_proto2.resolve = function resolve() {
|
|
229
227
|
if (RelayFeatureFlags.ENABLE_RELAY_CONTAINERS_SUSPENSE === true && this._isMissingData === true) {
|
|
230
|
-
var
|
|
228
|
+
var _getPromiseForActiveR;
|
|
231
229
|
|
|
232
230
|
// NOTE: This branch exists to handle the case in which:
|
|
233
231
|
// - A RelayModern container is rendered as a descendant of a Relay Hook
|
|
@@ -250,7 +248,7 @@ function () {
|
|
|
250
248
|
// This should eventually go away with something like @optional, where we only
|
|
251
249
|
// suspend at specific boundaries depending on whether the boundary
|
|
252
250
|
// can be fulfilled or not.
|
|
253
|
-
var promise = (
|
|
251
|
+
var promise = (_getPromiseForActiveR = getPromiseForActiveRequest(this._environment, this._selector.owner)) !== null && _getPromiseForActiveR !== void 0 ? _getPromiseForActiveR : this._environment.getOperationTracker().getPromiseForPendingOperationsAffectingOwner(this._selector.owner);
|
|
254
252
|
|
|
255
253
|
if (promise != null) {
|
|
256
254
|
process.env.NODE_ENV !== "production" ? warning(false, 'Relay: Relay Container for fragment `%s` suspended. When using ' + 'features such as @defer or @module, use `useFragment` instead ' + 'of a Relay Container.', this._selector.node.name) : void 0;
|
|
@@ -307,9 +305,7 @@ function () {
|
|
|
307
305
|
*/
|
|
308
306
|
|
|
309
307
|
|
|
310
|
-
var SelectorListResolver =
|
|
311
|
-
/*#__PURE__*/
|
|
312
|
-
function () {
|
|
308
|
+
var SelectorListResolver = /*#__PURE__*/function () {
|
|
313
309
|
function SelectorListResolver(environment, selector, callback) {
|
|
314
310
|
var _this3 = this;
|
|
315
311
|
|