@apollo/client 3.6.0-beta.3 → 3.6.0-beta.4
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/apollo-client.cjs +233 -196
- package/apollo-client.cjs.map +1 -1
- package/apollo-client.min.cjs +1 -1
- package/core/ObservableQuery.d.ts.map +1 -1
- package/core/ObservableQuery.js +6 -3
- package/core/ObservableQuery.js.map +1 -1
- package/core/core.cjs +7 -4
- package/core/core.cjs.map +1 -1
- package/invariantErrorCodes.js +3 -3
- package/link/batch/batch.cjs +47 -37
- package/link/batch/batch.cjs.map +1 -1
- package/link/batch/batching.d.ts +2 -6
- package/link/batch/batching.d.ts.map +1 -1
- package/link/batch/batching.js +47 -37
- package/link/batch/batching.js.map +1 -1
- package/link/subscriptions/index.d.ts +9 -0
- package/link/subscriptions/index.d.ts.map +1 -0
- package/link/subscriptions/index.js +39 -0
- package/link/subscriptions/index.js.map +1 -0
- package/link/subscriptions/package.json +8 -0
- package/link/subscriptions/subscriptions.cjs +45 -0
- package/link/subscriptions/subscriptions.cjs.map +1 -0
- package/package.json +20 -19
- package/react/hooks/hooks.cjs +225 -191
- package/react/hooks/hooks.cjs.map +1 -1
- package/react/hooks/useApolloClient.js +2 -2
- package/react/hooks/useApolloClient.js.map +1 -1
- package/react/hooks/useLazyQuery.d.ts.map +1 -1
- package/react/hooks/useLazyQuery.js +20 -27
- package/react/hooks/useLazyQuery.js.map +1 -1
- package/react/hooks/useMutation.d.ts.map +1 -1
- package/react/hooks/useMutation.js +59 -68
- package/react/hooks/useMutation.js.map +1 -1
- package/react/hooks/useQuery.d.ts.map +1 -1
- package/react/hooks/useQuery.js +137 -88
- package/react/hooks/useQuery.js.map +1 -1
- package/react/hooks/useSubscription.d.ts.map +1 -1
- package/react/hooks/useSubscription.js +10 -8
- package/react/hooks/useSubscription.js.map +1 -1
- package/react/ssr/RenderPromises.d.ts +2 -2
- package/react/ssr/RenderPromises.d.ts.map +1 -1
- package/react/ssr/RenderPromises.js +7 -5
- package/react/ssr/RenderPromises.js.map +1 -1
- package/react/ssr/ssr.cjs +7 -5
- package/react/ssr/ssr.cjs.map +1 -1
- package/react/types/types.d.ts +1 -1
- package/react/types/types.d.ts.map +1 -1
- package/react/types/types.js.map +1 -1
- package/utilities/globals/global.d.ts.map +1 -1
- package/utilities/globals/global.js +1 -1
- package/utilities/globals/global.js.map +1 -1
- package/utilities/globals/globals.cjs +1 -1
- package/utilities/globals/globals.cjs.map +1 -1
- package/version.js +1 -1
package/apollo-client.cjs
CHANGED
|
@@ -13,7 +13,6 @@ var context = require('@wry/context');
|
|
|
13
13
|
var trie = require('@wry/trie');
|
|
14
14
|
var graphqlTag = require('graphql-tag');
|
|
15
15
|
var React = require('react');
|
|
16
|
-
var shim = require('use-sync-external-store/shim');
|
|
17
16
|
|
|
18
17
|
function _interopNamespace(e) {
|
|
19
18
|
if (e && e.__esModule) return e;
|
|
@@ -1292,7 +1291,7 @@ var concat = ApolloLink.concat;
|
|
|
1292
1291
|
|
|
1293
1292
|
var execute = ApolloLink.execute;
|
|
1294
1293
|
|
|
1295
|
-
var version = '3.6.0-beta.
|
|
1294
|
+
var version = '3.6.0-beta.4';
|
|
1296
1295
|
|
|
1297
1296
|
var hasOwnProperty$2 = Object.prototype.hasOwnProperty;
|
|
1298
1297
|
function parseAndCheckHttpResponse(operations) {
|
|
@@ -4052,7 +4051,7 @@ var ObservableQuery = (function (_super) {
|
|
|
4052
4051
|
pollInterval: 0,
|
|
4053
4052
|
};
|
|
4054
4053
|
var fetchPolicy = this.options.fetchPolicy;
|
|
4055
|
-
if (fetchPolicy === '
|
|
4054
|
+
if (fetchPolicy === 'cache-and-network') {
|
|
4056
4055
|
reobserveOptions.fetchPolicy = fetchPolicy;
|
|
4057
4056
|
}
|
|
4058
4057
|
else if (fetchPolicy === 'no-cache') {
|
|
@@ -4292,8 +4291,11 @@ var ObservableQuery = (function (_super) {
|
|
|
4292
4291
|
this.reportResult(this.getCurrentResult(false), this.variables);
|
|
4293
4292
|
};
|
|
4294
4293
|
ObservableQuery.prototype.reportResult = function (result, variables) {
|
|
4295
|
-
|
|
4296
|
-
|
|
4294
|
+
var lastError = this.getLastError();
|
|
4295
|
+
if (lastError || this.isDifferentFromLastResult(result)) {
|
|
4296
|
+
if (lastError || !result.partial || this.options.returnPartialData) {
|
|
4297
|
+
this.updateLastResult(result, variables);
|
|
4298
|
+
}
|
|
4297
4299
|
iterateObserversSafely(this.observers, 'next', result);
|
|
4298
4300
|
}
|
|
4299
4301
|
};
|
|
@@ -5967,8 +5969,8 @@ function useApolloClient(override) {
|
|
|
5967
5969
|
var context = React.useContext(getApolloContext());
|
|
5968
5970
|
var client = override || context.client;
|
|
5969
5971
|
__DEV__ ? tsInvariant.invariant(!!client, 'Could not find "client" in the context or passed in as an option. ' +
|
|
5970
|
-
'Wrap the root component in an <ApolloProvider>, or pass an ApolloClient' +
|
|
5971
|
-
'
|
|
5972
|
+
'Wrap the root component in an <ApolloProvider>, or pass an ApolloClient ' +
|
|
5973
|
+
'instance in via options.') : tsInvariant.invariant(!!client, 29);
|
|
5972
5974
|
return client;
|
|
5973
5975
|
}
|
|
5974
5976
|
|
|
@@ -6055,15 +6057,10 @@ function useQuery(query, options) {
|
|
|
6055
6057
|
var _a;
|
|
6056
6058
|
var context = React.useContext(getApolloContext());
|
|
6057
6059
|
var client = useApolloClient(options === null || options === void 0 ? void 0 : options.client);
|
|
6060
|
+
var defaultWatchQueryOptions = client.defaultOptions.watchQuery;
|
|
6058
6061
|
verifyDocumentType(query, exports.DocumentType.Query);
|
|
6059
|
-
var ref = React.useRef({
|
|
6060
|
-
client: client,
|
|
6061
|
-
query: query,
|
|
6062
|
-
options: options,
|
|
6063
|
-
watchQueryOptions: createWatchQueryOptions(query, options),
|
|
6064
|
-
});
|
|
6065
6062
|
var _b = React.useState(function () {
|
|
6066
|
-
var watchQueryOptions = createWatchQueryOptions(query, options);
|
|
6063
|
+
var watchQueryOptions = createWatchQueryOptions(query, options, defaultWatchQueryOptions);
|
|
6067
6064
|
var obsQuery = null;
|
|
6068
6065
|
if (context.renderPromises) {
|
|
6069
6066
|
obsQuery = context.renderPromises.getSSRObservable(watchQueryOptions);
|
|
@@ -6079,7 +6076,7 @@ function useQuery(query, options) {
|
|
|
6079
6076
|
!(options === null || options === void 0 ? void 0 : options.skip) &&
|
|
6080
6077
|
obsQuery.getCurrentResult().loading) {
|
|
6081
6078
|
context.renderPromises.addQueryPromise({
|
|
6082
|
-
getOptions: function () { return createWatchQueryOptions(query, options); },
|
|
6079
|
+
getOptions: function () { return createWatchQueryOptions(query, options, defaultWatchQueryOptions); },
|
|
6083
6080
|
fetchData: function () { return new Promise(function (resolve) {
|
|
6084
6081
|
var sub = obsQuery.subscribe({
|
|
6085
6082
|
next: function (result) {
|
|
@@ -6101,96 +6098,112 @@ function useQuery(query, options) {
|
|
|
6101
6098
|
}
|
|
6102
6099
|
return obsQuery;
|
|
6103
6100
|
}), obsQuery = _b[0], setObsQuery = _b[1];
|
|
6101
|
+
var _c = React.useState(function () {
|
|
6102
|
+
var _a, _b;
|
|
6103
|
+
var result = obsQuery.getCurrentResult();
|
|
6104
|
+
if (!result.loading && options) {
|
|
6105
|
+
if (result.error) {
|
|
6106
|
+
(_a = options.onError) === null || _a === void 0 ? void 0 : _a.call(options, result.error);
|
|
6107
|
+
}
|
|
6108
|
+
else if (result.data) {
|
|
6109
|
+
(_b = options.onCompleted) === null || _b === void 0 ? void 0 : _b.call(options, result.data);
|
|
6110
|
+
}
|
|
6111
|
+
}
|
|
6112
|
+
return result;
|
|
6113
|
+
}), result = _c[0], setResult = _c[1];
|
|
6114
|
+
var ref = React.useRef({
|
|
6115
|
+
client: client,
|
|
6116
|
+
query: query,
|
|
6117
|
+
options: options,
|
|
6118
|
+
result: result,
|
|
6119
|
+
previousData: void 0,
|
|
6120
|
+
watchQueryOptions: createWatchQueryOptions(query, options, defaultWatchQueryOptions),
|
|
6121
|
+
});
|
|
6104
6122
|
React.useEffect(function () {
|
|
6105
|
-
var
|
|
6123
|
+
var _a, _b;
|
|
6124
|
+
var watchQueryOptions = createWatchQueryOptions(query, options, defaultWatchQueryOptions);
|
|
6125
|
+
var nextResult;
|
|
6106
6126
|
if (ref.current.client !== client || !equality.equal(ref.current.query, query)) {
|
|
6107
6127
|
var obsQuery_1 = client.watchQuery(watchQueryOptions);
|
|
6108
6128
|
setObsQuery(obsQuery_1);
|
|
6129
|
+
nextResult = obsQuery_1.getCurrentResult();
|
|
6109
6130
|
}
|
|
6110
6131
|
else if (!equality.equal(ref.current.watchQueryOptions, watchQueryOptions)) {
|
|
6111
|
-
obsQuery.setOptions(watchQueryOptions);
|
|
6112
|
-
|
|
6113
|
-
|
|
6114
|
-
|
|
6115
|
-
|
|
6116
|
-
|
|
6117
|
-
|
|
6118
|
-
|
|
6119
|
-
|
|
6120
|
-
|
|
6121
|
-
|
|
6122
|
-
|
|
6123
|
-
|
|
6124
|
-
var subscription = obsQuery.subscribe(forceUpdate, onError);
|
|
6125
|
-
function onError(error) {
|
|
6126
|
-
forceUpdate();
|
|
6127
|
-
subscription.unsubscribe();
|
|
6128
|
-
var last = obsQuery["last"];
|
|
6129
|
-
obsQuery.resetLastResults();
|
|
6130
|
-
obsQuery.subscribe(forceUpdate, onError);
|
|
6131
|
-
obsQuery["last"] = last;
|
|
6132
|
-
if (!error.hasOwnProperty('graphQLErrors')) {
|
|
6133
|
-
throw error;
|
|
6132
|
+
obsQuery.setOptions(watchQueryOptions).catch(function () { });
|
|
6133
|
+
nextResult = obsQuery.getCurrentResult();
|
|
6134
|
+
ref.current.watchQueryOptions = watchQueryOptions;
|
|
6135
|
+
}
|
|
6136
|
+
if (nextResult) {
|
|
6137
|
+
var previousResult = ref.current.result;
|
|
6138
|
+
if (previousResult.data) {
|
|
6139
|
+
ref.current.previousData = previousResult.data;
|
|
6140
|
+
}
|
|
6141
|
+
setResult(ref.current.result = nextResult);
|
|
6142
|
+
if (!nextResult.loading && options) {
|
|
6143
|
+
if (nextResult.error) {
|
|
6144
|
+
(_a = options.onError) === null || _a === void 0 ? void 0 : _a.call(options, nextResult.error);
|
|
6134
6145
|
}
|
|
6135
|
-
|
|
6136
|
-
|
|
6137
|
-
subscription.unsubscribe();
|
|
6138
|
-
};
|
|
6139
|
-
};
|
|
6140
|
-
var getSnapshot = function () {
|
|
6141
|
-
var result = obsQuery.getCurrentResult();
|
|
6142
|
-
if (result.errors && result.errors.length) {
|
|
6143
|
-
result = tslib.__assign(tslib.__assign({}, result), { error: result.error || new ApolloError({ graphQLErrors: result.errors }) });
|
|
6144
|
-
}
|
|
6145
|
-
if (!previousResult ||
|
|
6146
|
-
previousResult.loading !== result.loading ||
|
|
6147
|
-
previousResult.networkStatus !== result.networkStatus ||
|
|
6148
|
-
!equality.equal(previousResult.data, result.data) ||
|
|
6149
|
-
!equality.equal(previousResult.error, result.error)) {
|
|
6150
|
-
if (previousResult) {
|
|
6151
|
-
result = tslib.__assign(tslib.__assign({}, result), { previousData: previousResult.data || previousResult.previousData });
|
|
6146
|
+
else if (nextResult.data) {
|
|
6147
|
+
(_b = options.onCompleted) === null || _b === void 0 ? void 0 : _b.call(options, nextResult.data);
|
|
6152
6148
|
}
|
|
6153
|
-
previousResult = result;
|
|
6154
6149
|
}
|
|
6155
|
-
|
|
6156
|
-
};
|
|
6157
|
-
|
|
6158
|
-
}, [obsQuery]), subscribe = _c[0], getSnapshot = _c[1];
|
|
6159
|
-
var obsQueryMethods = React.useMemo(function () { return ({
|
|
6160
|
-
refetch: obsQuery.refetch.bind(obsQuery),
|
|
6161
|
-
fetchMore: obsQuery.fetchMore.bind(obsQuery),
|
|
6162
|
-
updateQuery: obsQuery.updateQuery.bind(obsQuery),
|
|
6163
|
-
startPolling: obsQuery.startPolling.bind(obsQuery),
|
|
6164
|
-
stopPolling: obsQuery.stopPolling.bind(obsQuery),
|
|
6165
|
-
subscribeToMore: obsQuery.subscribeToMore.bind(obsQuery),
|
|
6166
|
-
}); }, [obsQuery]);
|
|
6167
|
-
var result = shim.useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
6150
|
+
}
|
|
6151
|
+
Object.assign(ref.current, { client: client, query: query });
|
|
6152
|
+
}, [obsQuery, client, query, options]);
|
|
6168
6153
|
React.useEffect(function () {
|
|
6169
|
-
|
|
6170
|
-
if (((_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.skip) ||
|
|
6171
|
-
((_b = ref.current.options) === null || _b === void 0 ? void 0 : _b.fetchPolicy) === 'standby') {
|
|
6154
|
+
if (context.renderPromises) {
|
|
6172
6155
|
return;
|
|
6173
6156
|
}
|
|
6174
|
-
|
|
6175
|
-
|
|
6176
|
-
|
|
6157
|
+
var subscription = obsQuery.subscribe(onNext, onError);
|
|
6158
|
+
function onNext() {
|
|
6159
|
+
var _a, _b;
|
|
6160
|
+
var previousResult = ref.current.result;
|
|
6161
|
+
var result = obsQuery.getCurrentResult();
|
|
6162
|
+
if (previousResult &&
|
|
6163
|
+
previousResult.loading === result.loading &&
|
|
6164
|
+
previousResult.networkStatus === result.networkStatus &&
|
|
6165
|
+
equality.equal(previousResult.data, result.data)) {
|
|
6166
|
+
return;
|
|
6177
6167
|
}
|
|
6178
|
-
|
|
6179
|
-
|
|
6168
|
+
if (previousResult.data) {
|
|
6169
|
+
ref.current.previousData = previousResult.data;
|
|
6170
|
+
}
|
|
6171
|
+
setResult(ref.current.result = result);
|
|
6172
|
+
if (!result.loading) {
|
|
6173
|
+
(_b = (_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, result.data);
|
|
6174
|
+
}
|
|
6175
|
+
}
|
|
6176
|
+
function onError(error) {
|
|
6177
|
+
var _a, _b;
|
|
6178
|
+
var last = obsQuery["last"];
|
|
6179
|
+
subscription.unsubscribe();
|
|
6180
|
+
try {
|
|
6181
|
+
obsQuery.resetLastResults();
|
|
6182
|
+
subscription = obsQuery.subscribe(onNext, onError);
|
|
6183
|
+
}
|
|
6184
|
+
finally {
|
|
6185
|
+
obsQuery["last"] = last;
|
|
6186
|
+
}
|
|
6187
|
+
if (!error.hasOwnProperty('graphQLErrors')) {
|
|
6188
|
+
throw error;
|
|
6189
|
+
}
|
|
6190
|
+
var previousResult = ref.current.result;
|
|
6191
|
+
if ((previousResult && previousResult.loading) ||
|
|
6192
|
+
!equality.equal(error, previousResult.error)) {
|
|
6193
|
+
setResult(ref.current.result = {
|
|
6194
|
+
data: previousResult.data,
|
|
6195
|
+
error: error,
|
|
6196
|
+
loading: false,
|
|
6197
|
+
networkStatus: exports.NetworkStatus.error,
|
|
6198
|
+
});
|
|
6199
|
+
(_b = (_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onError) === null || _b === void 0 ? void 0 : _b.call(_a, error);
|
|
6180
6200
|
}
|
|
6181
6201
|
}
|
|
6182
|
-
|
|
6202
|
+
return function () { return subscription.unsubscribe(); };
|
|
6203
|
+
}, [obsQuery, context.renderPromises, client.disableNetworkFetches]);
|
|
6183
6204
|
var partial;
|
|
6184
6205
|
(_a = result, partial = _a.partial, result = tslib.__rest(_a, ["partial"]));
|
|
6185
|
-
|
|
6186
|
-
result = {
|
|
6187
|
-
loading: false,
|
|
6188
|
-
data: void 0,
|
|
6189
|
-
error: void 0,
|
|
6190
|
-
networkStatus: exports.NetworkStatus.ready,
|
|
6191
|
-
};
|
|
6192
|
-
}
|
|
6193
|
-
else {
|
|
6206
|
+
{
|
|
6194
6207
|
if (partial &&
|
|
6195
6208
|
(options === null || options === void 0 ? void 0 : options.partialRefetch) &&
|
|
6196
6209
|
!result.loading &&
|
|
@@ -6199,17 +6212,52 @@ function useQuery(query, options) {
|
|
|
6199
6212
|
result = tslib.__assign(tslib.__assign({}, result), { loading: true, networkStatus: exports.NetworkStatus.refetch });
|
|
6200
6213
|
obsQuery.refetch();
|
|
6201
6214
|
}
|
|
6202
|
-
if (context.renderPromises &&
|
|
6203
|
-
|
|
6204
|
-
|
|
6215
|
+
if (context.renderPromises &&
|
|
6216
|
+
(options === null || options === void 0 ? void 0 : options.ssr) !== false &&
|
|
6217
|
+
!(options === null || options === void 0 ? void 0 : options.skip) &&
|
|
6218
|
+
result.loading) {
|
|
6219
|
+
obsQuery.setOptions(createWatchQueryOptions(query, options, defaultWatchQueryOptions)).catch(function () { });
|
|
6205
6220
|
}
|
|
6221
|
+
Object.assign(ref.current, { options: options });
|
|
6222
|
+
}
|
|
6223
|
+
if ((context.renderPromises || client.disableNetworkFetches) &&
|
|
6224
|
+
(options === null || options === void 0 ? void 0 : options.ssr) === false) {
|
|
6225
|
+
result = ref.current.result = {
|
|
6226
|
+
loading: true,
|
|
6227
|
+
data: void 0,
|
|
6228
|
+
error: void 0,
|
|
6229
|
+
networkStatus: exports.NetworkStatus.loading,
|
|
6230
|
+
};
|
|
6231
|
+
}
|
|
6232
|
+
else if ((options === null || options === void 0 ? void 0 : options.skip) || (options === null || options === void 0 ? void 0 : options.fetchPolicy) === 'standby') {
|
|
6233
|
+
result = {
|
|
6234
|
+
loading: false,
|
|
6235
|
+
data: void 0,
|
|
6236
|
+
error: void 0,
|
|
6237
|
+
networkStatus: exports.NetworkStatus.ready,
|
|
6238
|
+
};
|
|
6239
|
+
}
|
|
6240
|
+
if (result.errors && result.errors.length) {
|
|
6241
|
+
result = tslib.__assign(tslib.__assign({}, result), { error: result.error || new ApolloError({ graphQLErrors: result.errors }) });
|
|
6206
6242
|
}
|
|
6207
|
-
|
|
6243
|
+
var obsQueryFields = React.useMemo(function () { return ({
|
|
6244
|
+
refetch: obsQuery.refetch.bind(obsQuery),
|
|
6245
|
+
fetchMore: obsQuery.fetchMore.bind(obsQuery),
|
|
6246
|
+
updateQuery: obsQuery.updateQuery.bind(obsQuery),
|
|
6247
|
+
startPolling: obsQuery.startPolling.bind(obsQuery),
|
|
6248
|
+
stopPolling: obsQuery.stopPolling.bind(obsQuery),
|
|
6249
|
+
subscribeToMore: obsQuery.subscribeToMore.bind(obsQuery),
|
|
6250
|
+
}); }, [obsQuery]);
|
|
6251
|
+
return tslib.__assign(tslib.__assign(tslib.__assign({}, obsQueryFields), { variables: createWatchQueryOptions(query, options, defaultWatchQueryOptions).variables, client: client, called: true, previousData: ref.current.previousData }), result);
|
|
6208
6252
|
}
|
|
6209
|
-
function createWatchQueryOptions(query, options) {
|
|
6253
|
+
function createWatchQueryOptions(query, options, defaultOptions) {
|
|
6210
6254
|
var _a;
|
|
6211
6255
|
if (options === void 0) { options = {}; }
|
|
6212
|
-
var skip = options.skip; options.ssr; options.onCompleted; options.onError; options.displayName; var
|
|
6256
|
+
var skip = options.skip; options.ssr; options.onCompleted; options.onError; options.displayName; var otherOptions = tslib.__rest(options, ["skip", "ssr", "onCompleted", "onError", "displayName"]);
|
|
6257
|
+
var watchQueryOptions = tslib.__assign({ query: query }, otherOptions);
|
|
6258
|
+
if (defaultOptions) {
|
|
6259
|
+
watchQueryOptions = mergeOptions(defaultOptions, watchQueryOptions);
|
|
6260
|
+
}
|
|
6213
6261
|
if (skip) {
|
|
6214
6262
|
watchQueryOptions.fetchPolicy = 'standby';
|
|
6215
6263
|
}
|
|
@@ -6221,7 +6269,10 @@ function createWatchQueryOptions(query, options) {
|
|
|
6221
6269
|
else if (!watchQueryOptions.fetchPolicy) {
|
|
6222
6270
|
watchQueryOptions.fetchPolicy = 'cache-first';
|
|
6223
6271
|
}
|
|
6224
|
-
|
|
6272
|
+
if (!watchQueryOptions.variables) {
|
|
6273
|
+
watchQueryOptions.variables = {};
|
|
6274
|
+
}
|
|
6275
|
+
return watchQueryOptions;
|
|
6225
6276
|
}
|
|
6226
6277
|
|
|
6227
6278
|
var EAGER_METHODS = [
|
|
@@ -6234,36 +6285,16 @@ var EAGER_METHODS = [
|
|
|
6234
6285
|
function useLazyQuery(query, options) {
|
|
6235
6286
|
var _a = React.useState({
|
|
6236
6287
|
called: false,
|
|
6237
|
-
resolves: [],
|
|
6238
6288
|
}), execution = _a[0], setExecution = _a[1];
|
|
6239
|
-
var execute = React.useCallback(function (executeOptions) {
|
|
6240
|
-
var resolve;
|
|
6241
|
-
var promise = new Promise(function (resolve1) { return (resolve = resolve1); });
|
|
6242
|
-
setExecution(function (execution) {
|
|
6243
|
-
if (execution.called) {
|
|
6244
|
-
result && result.refetch(executeOptions === null || executeOptions === void 0 ? void 0 : executeOptions.variables);
|
|
6245
|
-
}
|
|
6246
|
-
return {
|
|
6247
|
-
called: true,
|
|
6248
|
-
resolves: tslib.__spreadArray(tslib.__spreadArray([], execution.resolves, true), [resolve], false),
|
|
6249
|
-
options: executeOptions,
|
|
6250
|
-
};
|
|
6251
|
-
});
|
|
6252
|
-
return promise;
|
|
6253
|
-
}, []);
|
|
6254
6289
|
var result = useQuery(query, tslib.__assign(tslib.__assign(tslib.__assign({}, options), execution.options), { fetchPolicy: execution.called ? options === null || options === void 0 ? void 0 : options.fetchPolicy : 'standby', skip: undefined }));
|
|
6255
|
-
React.useEffect(function () {
|
|
6256
|
-
var resolves = execution.resolves;
|
|
6257
|
-
if (!result.loading && resolves.length) {
|
|
6258
|
-
setExecution(function (execution) { return (tslib.__assign(tslib.__assign({}, execution), { resolves: [] })); });
|
|
6259
|
-
resolves.forEach(function (resolve) { return resolve(result); });
|
|
6260
|
-
}
|
|
6261
|
-
}, [result, execution]);
|
|
6262
6290
|
if (!execution.called) {
|
|
6263
6291
|
result = tslib.__assign(tslib.__assign({}, result), { loading: false, data: void 0, error: void 0, called: false });
|
|
6292
|
+
}
|
|
6293
|
+
var eagerMethods = React.useMemo(function () {
|
|
6294
|
+
var eagerMethods = {};
|
|
6264
6295
|
var _loop_1 = function (key) {
|
|
6265
6296
|
var method = result[key];
|
|
6266
|
-
|
|
6297
|
+
eagerMethods[key] = function () {
|
|
6267
6298
|
var args = [];
|
|
6268
6299
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
6269
6300
|
args[_i] = arguments[_i];
|
|
@@ -6276,7 +6307,20 @@ function useLazyQuery(query, options) {
|
|
|
6276
6307
|
var key = EAGER_METHODS_1[_i];
|
|
6277
6308
|
_loop_1(key);
|
|
6278
6309
|
}
|
|
6279
|
-
|
|
6310
|
+
return eagerMethods;
|
|
6311
|
+
}, []);
|
|
6312
|
+
result.error = result.error || void 0;
|
|
6313
|
+
Object.assign(result, eagerMethods);
|
|
6314
|
+
var execute = React.useCallback(function (executeOptions) {
|
|
6315
|
+
setExecution({ called: true, options: executeOptions });
|
|
6316
|
+
var promise = result.refetch(executeOptions === null || executeOptions === void 0 ? void 0 : executeOptions.variables).then(function (result1) {
|
|
6317
|
+
var result2 = tslib.__assign(tslib.__assign({}, result), { data: result1.data, error: result1.error, called: true, loading: false });
|
|
6318
|
+
Object.assign(result2, eagerMethods);
|
|
6319
|
+
return result2;
|
|
6320
|
+
});
|
|
6321
|
+
promise.catch(function () { });
|
|
6322
|
+
return promise;
|
|
6323
|
+
}, []);
|
|
6280
6324
|
return [execute, result];
|
|
6281
6325
|
}
|
|
6282
6326
|
|
|
@@ -6292,82 +6336,73 @@ function useMutation(mutation, options) {
|
|
|
6292
6336
|
result: result,
|
|
6293
6337
|
mutationId: 0,
|
|
6294
6338
|
isMounted: true,
|
|
6295
|
-
execute: null,
|
|
6296
6339
|
client: client,
|
|
6297
6340
|
mutation: mutation,
|
|
6298
6341
|
options: options,
|
|
6299
6342
|
});
|
|
6300
|
-
|
|
6301
|
-
|
|
6302
|
-
|
|
6303
|
-
|
|
6304
|
-
|
|
6305
|
-
|
|
6306
|
-
}
|
|
6307
|
-
ref.current.
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
|
|
6311
|
-
|
|
6312
|
-
|
|
6313
|
-
|
|
6314
|
-
|
|
6315
|
-
|
|
6316
|
-
|
|
6317
|
-
|
|
6343
|
+
{
|
|
6344
|
+
Object.assign(ref.current, { client: client, options: options, mutation: mutation });
|
|
6345
|
+
}
|
|
6346
|
+
var execute = React.useCallback(function (executeOptions) {
|
|
6347
|
+
if (executeOptions === void 0) { executeOptions = {}; }
|
|
6348
|
+
var _a = ref.current, client = _a.client, options = _a.options, mutation = _a.mutation;
|
|
6349
|
+
var baseOptions = tslib.__assign(tslib.__assign({}, options), { mutation: mutation });
|
|
6350
|
+
if (!ref.current.result.loading && !baseOptions.ignoreResults) {
|
|
6351
|
+
setResult(ref.current.result = {
|
|
6352
|
+
loading: true,
|
|
6353
|
+
error: void 0,
|
|
6354
|
+
data: void 0,
|
|
6355
|
+
called: true,
|
|
6356
|
+
client: client,
|
|
6357
|
+
});
|
|
6358
|
+
}
|
|
6359
|
+
var mutationId = ++ref.current.mutationId;
|
|
6360
|
+
var clientOptions = mergeOptions(baseOptions, executeOptions);
|
|
6361
|
+
return client.mutate(clientOptions).then(function (response) {
|
|
6362
|
+
var _a, _b;
|
|
6363
|
+
var data = response.data, errors = response.errors;
|
|
6364
|
+
var error = errors && errors.length > 0
|
|
6365
|
+
? new ApolloError({ graphQLErrors: errors })
|
|
6366
|
+
: void 0;
|
|
6367
|
+
if (mutationId === ref.current.mutationId &&
|
|
6368
|
+
!clientOptions.ignoreResults) {
|
|
6369
|
+
var result_1 = {
|
|
6318
6370
|
called: true,
|
|
6371
|
+
loading: false,
|
|
6372
|
+
data: data,
|
|
6373
|
+
error: error,
|
|
6319
6374
|
client: client,
|
|
6320
|
-
}
|
|
6321
|
-
|
|
6322
|
-
|
|
6323
|
-
var clientOptions = mergeOptions(baseOptions, executeOptions);
|
|
6324
|
-
return client.mutate(clientOptions).then(function (response) {
|
|
6325
|
-
var _a, _b;
|
|
6326
|
-
var data = response.data, errors = response.errors;
|
|
6327
|
-
var error = errors && errors.length > 0
|
|
6328
|
-
? new ApolloError({ graphQLErrors: errors })
|
|
6329
|
-
: void 0;
|
|
6330
|
-
if (mutationId === ref.current.mutationId &&
|
|
6331
|
-
!clientOptions.ignoreResults) {
|
|
6332
|
-
var result_1 = {
|
|
6333
|
-
called: true,
|
|
6334
|
-
loading: false,
|
|
6335
|
-
data: data,
|
|
6336
|
-
error: error,
|
|
6337
|
-
client: client,
|
|
6338
|
-
};
|
|
6339
|
-
if (ref.current.isMounted && !equality.equal(ref.current.result, result_1)) {
|
|
6340
|
-
setResult(ref.current.result = result_1);
|
|
6341
|
-
}
|
|
6342
|
-
}
|
|
6343
|
-
(_a = baseOptions.onCompleted) === null || _a === void 0 ? void 0 : _a.call(baseOptions, response.data);
|
|
6344
|
-
(_b = executeOptions.onCompleted) === null || _b === void 0 ? void 0 : _b.call(executeOptions, response.data);
|
|
6345
|
-
return response;
|
|
6346
|
-
}).catch(function (error) {
|
|
6347
|
-
var _a, _b;
|
|
6348
|
-
if (mutationId === ref.current.mutationId &&
|
|
6349
|
-
ref.current.isMounted) {
|
|
6350
|
-
var result_2 = {
|
|
6351
|
-
loading: false,
|
|
6352
|
-
error: error,
|
|
6353
|
-
data: void 0,
|
|
6354
|
-
called: true,
|
|
6355
|
-
client: client,
|
|
6356
|
-
};
|
|
6357
|
-
if (!equality.equal(ref.current.result, result_2)) {
|
|
6358
|
-
setResult(ref.current.result = result_2);
|
|
6359
|
-
}
|
|
6375
|
+
};
|
|
6376
|
+
if (ref.current.isMounted && !equality.equal(ref.current.result, result_1)) {
|
|
6377
|
+
setResult(ref.current.result = result_1);
|
|
6360
6378
|
}
|
|
6361
|
-
|
|
6362
|
-
|
|
6363
|
-
|
|
6364
|
-
|
|
6379
|
+
}
|
|
6380
|
+
(_a = baseOptions.onCompleted) === null || _a === void 0 ? void 0 : _a.call(baseOptions, response.data);
|
|
6381
|
+
(_b = executeOptions.onCompleted) === null || _b === void 0 ? void 0 : _b.call(executeOptions, response.data);
|
|
6382
|
+
return response;
|
|
6383
|
+
}).catch(function (error) {
|
|
6384
|
+
var _a, _b;
|
|
6385
|
+
if (mutationId === ref.current.mutationId &&
|
|
6386
|
+
ref.current.isMounted) {
|
|
6387
|
+
var result_2 = {
|
|
6388
|
+
loading: false,
|
|
6389
|
+
error: error,
|
|
6390
|
+
data: void 0,
|
|
6391
|
+
called: true,
|
|
6392
|
+
client: client,
|
|
6393
|
+
};
|
|
6394
|
+
if (!equality.equal(ref.current.result, result_2)) {
|
|
6395
|
+
setResult(ref.current.result = result_2);
|
|
6365
6396
|
}
|
|
6366
|
-
|
|
6367
|
-
|
|
6368
|
-
|
|
6369
|
-
|
|
6370
|
-
|
|
6397
|
+
}
|
|
6398
|
+
if (baseOptions.onError || clientOptions.onError) {
|
|
6399
|
+
(_a = baseOptions.onError) === null || _a === void 0 ? void 0 : _a.call(baseOptions, error);
|
|
6400
|
+
(_b = executeOptions.onError) === null || _b === void 0 ? void 0 : _b.call(executeOptions, error);
|
|
6401
|
+
return { data: void 0, errors: error };
|
|
6402
|
+
}
|
|
6403
|
+
throw error;
|
|
6404
|
+
});
|
|
6405
|
+
}, []);
|
|
6371
6406
|
var reset = React.useCallback(function () {
|
|
6372
6407
|
setResult({ called: false, loading: false, client: client });
|
|
6373
6408
|
}, []);
|
|
@@ -6404,14 +6439,16 @@ function useSubscription(subscription, options) {
|
|
|
6404
6439
|
if (typeof shouldResubscribe === 'function') {
|
|
6405
6440
|
shouldResubscribe = !!shouldResubscribe(options);
|
|
6406
6441
|
}
|
|
6407
|
-
if (
|
|
6408
|
-
|
|
6409
|
-
|
|
6410
|
-
|
|
6411
|
-
|
|
6412
|
-
|
|
6413
|
-
|
|
6414
|
-
|
|
6442
|
+
if (options === null || options === void 0 ? void 0 : options.skip) {
|
|
6443
|
+
if (!(options === null || options === void 0 ? void 0 : options.skip) !== !((_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.skip)) {
|
|
6444
|
+
setResult({
|
|
6445
|
+
loading: false,
|
|
6446
|
+
data: void 0,
|
|
6447
|
+
error: void 0,
|
|
6448
|
+
variables: options === null || options === void 0 ? void 0 : options.variables,
|
|
6449
|
+
});
|
|
6450
|
+
setObservable(null);
|
|
6451
|
+
}
|
|
6415
6452
|
}
|
|
6416
6453
|
else if (shouldResubscribe !== false && (client !== ref.current.client ||
|
|
6417
6454
|
subscription !== ref.current.subscription ||
|