relay-runtime 0.0.0-main-e946bb41 → 0.0.0-main-29b7a1e0
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/store/RelayModernStore.js +30 -5
- package/package.json +1 -1
- package/relay-runtime-experimental.js +1 -1
- package/relay-runtime-experimental.min.js +1 -1
- package/relay-runtime.js +2 -2
- package/relay-runtime.min.js +2 -2
- package/store/RelayModernStore.js.flow +49 -4
package/experimental.js
CHANGED
package/index.js
CHANGED
|
@@ -28,7 +28,7 @@ var DEFAULT_RELEASE_BUFFER_SIZE = 10;
|
|
|
28
28
|
var RelayModernStore = /*#__PURE__*/function () {
|
|
29
29
|
function RelayModernStore(source, options) {
|
|
30
30
|
var _this = this;
|
|
31
|
-
var _options$gcReleaseBuf, _options$gcScheduler, _options$getDataID, _options$log, _options$operationLoa, _options$shouldProces, _options$treatMissing;
|
|
31
|
+
var _options$gcReleaseBuf, _options$shouldRetain, _options$gcScheduler, _options$getDataID, _options$log, _options$operationLoa, _options$shouldProces, _options$treatMissing;
|
|
32
32
|
(0, _defineProperty2["default"])(this, "_gcStep", function () {
|
|
33
33
|
if (_this._gcRun) {
|
|
34
34
|
if (_this._gcRun.next().done) {
|
|
@@ -50,6 +50,7 @@ var RelayModernStore = /*#__PURE__*/function () {
|
|
|
50
50
|
this._currentWriteEpoch = 0;
|
|
51
51
|
this._gcHoldCounter = 0;
|
|
52
52
|
this._gcReleaseBufferSize = (_options$gcReleaseBuf = options === null || options === void 0 ? void 0 : options.gcReleaseBufferSize) !== null && _options$gcReleaseBuf !== void 0 ? _options$gcReleaseBuf : DEFAULT_RELEASE_BUFFER_SIZE;
|
|
53
|
+
this._shouldRetainWithinTTL_EXPERIMENTAL = (_options$shouldRetain = options === null || options === void 0 ? void 0 : options.shouldRetainWithinTTL_EXPERIMENTAL) !== null && _options$shouldRetain !== void 0 ? _options$shouldRetain : false;
|
|
53
54
|
this._gcRun = null;
|
|
54
55
|
this._gcScheduler = (_options$gcScheduler = options === null || options === void 0 ? void 0 : options.gcScheduler) !== null && _options$gcScheduler !== void 0 ? _options$gcScheduler : resolveImmediate;
|
|
55
56
|
this._getDataID = (_options$getDataID = options === null || options === void 0 ? void 0 : options.getDataID) !== null && _options$getDataID !== void 0 ? _options$getDataID : defaultGetDataID;
|
|
@@ -150,13 +151,17 @@ var RelayModernStore = /*#__PURE__*/function () {
|
|
|
150
151
|
var _queryCacheExpirationTime = _this2._queryCacheExpirationTime;
|
|
151
152
|
var rootEntryIsStale = rootEntry.fetchTime != null && _queryCacheExpirationTime != null && rootEntry.fetchTime <= Date.now() - _queryCacheExpirationTime;
|
|
152
153
|
if (rootEntryIsStale) {
|
|
153
|
-
_this2.
|
|
154
|
+
if (!_this2._shouldRetainWithinTTL_EXPERIMENTAL) {
|
|
155
|
+
_this2._roots["delete"](id);
|
|
156
|
+
}
|
|
154
157
|
_this2.scheduleGC();
|
|
155
158
|
} else {
|
|
156
159
|
_this2._releaseBuffer.push(id);
|
|
157
160
|
if (_this2._releaseBuffer.length > _this2._gcReleaseBufferSize) {
|
|
158
161
|
var _id = _this2._releaseBuffer.shift();
|
|
159
|
-
_this2.
|
|
162
|
+
if (!_this2._shouldRetainWithinTTL_EXPERIMENTAL) {
|
|
163
|
+
_this2._roots["delete"](id);
|
|
164
|
+
}
|
|
160
165
|
_this2.scheduleGC();
|
|
161
166
|
}
|
|
162
167
|
}
|
|
@@ -414,6 +419,9 @@ var RelayModernStore = /*#__PURE__*/function () {
|
|
|
414
419
|
while (!gcRun.next().done) {}
|
|
415
420
|
};
|
|
416
421
|
_proto._collect = function* _collect() {
|
|
422
|
+
if (this._shouldRetainWithinTTL_EXPERIMENTAL && this._queryCacheExpirationTime == null) {
|
|
423
|
+
return;
|
|
424
|
+
}
|
|
417
425
|
var log = this.__log;
|
|
418
426
|
top: while (true) {
|
|
419
427
|
if (log != null) {
|
|
@@ -423,11 +431,25 @@ var RelayModernStore = /*#__PURE__*/function () {
|
|
|
423
431
|
}
|
|
424
432
|
var startEpoch = this._currentWriteEpoch;
|
|
425
433
|
var references = new Set();
|
|
426
|
-
var _iterator2 = (0, _createForOfIteratorHelper2["default"])(this._roots.
|
|
434
|
+
var _iterator2 = (0, _createForOfIteratorHelper2["default"])(this._roots.entries()),
|
|
427
435
|
_step2;
|
|
428
436
|
try {
|
|
429
437
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
430
|
-
var
|
|
438
|
+
var _step2$value = _step2.value,
|
|
439
|
+
_dataID = _step2$value[0],
|
|
440
|
+
_step2$value$ = _step2$value[1],
|
|
441
|
+
operation = _step2$value$.operation,
|
|
442
|
+
refCount = _step2$value$.refCount,
|
|
443
|
+
fetchTime = _step2$value$.fetchTime;
|
|
444
|
+
if (this._shouldRetainWithinTTL_EXPERIMENTAL) {
|
|
445
|
+
var _queryCacheExpirationTime = this._queryCacheExpirationTime;
|
|
446
|
+
!(_queryCacheExpirationTime != null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'Query cache expiration time should be non-null if executing GC') : invariant(false) : void 0;
|
|
447
|
+
var recordHasExpired = fetchTime == null || fetchTime <= Date.now() - _queryCacheExpirationTime;
|
|
448
|
+
var recordShouldBeCollected = recordHasExpired && refCount === 0 && !this._releaseBuffer.includes(_dataID);
|
|
449
|
+
if (recordShouldBeCollected) {
|
|
450
|
+
continue;
|
|
451
|
+
}
|
|
452
|
+
}
|
|
431
453
|
var selector = operation.root;
|
|
432
454
|
RelayReferenceMarker.mark(this._recordSource, selector, references, this._operationLoader, this._shouldProcessClientComponents);
|
|
433
455
|
yield;
|
|
@@ -460,6 +482,9 @@ var RelayModernStore = /*#__PURE__*/function () {
|
|
|
460
482
|
}
|
|
461
483
|
}
|
|
462
484
|
this._recordSource.remove(dataID);
|
|
485
|
+
if (this._shouldRetainWithinTTL_EXPERIMENTAL) {
|
|
486
|
+
this._roots["delete"](dataID);
|
|
487
|
+
}
|
|
463
488
|
}
|
|
464
489
|
}
|
|
465
490
|
}
|
package/package.json
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Relay v0.0.0-main-
|
|
2
|
+
* Relay v0.0.0-main-29b7a1e0
|
|
3
3
|
*/
|
|
4
4
|
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r(require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/helpers/createForOfIteratorHelper"),require("@babel/runtime/helpers/defineProperty"),require("@babel/runtime/helpers/interopRequireDefault"),require("@babel/runtime/helpers/objectSpread2"),require("@babel/runtime/helpers/toConsumableArray"),require("fbjs/lib/areEqual"),require("fbjs/lib/warning"),require("invariant")):"function"==typeof define&&define.amd?define(["@babel/runtime/helpers/asyncToGenerator","@babel/runtime/helpers/createForOfIteratorHelper","@babel/runtime/helpers/defineProperty","@babel/runtime/helpers/interopRequireDefault","@babel/runtime/helpers/objectSpread2","@babel/runtime/helpers/toConsumableArray","fbjs/lib/areEqual","fbjs/lib/warning","invariant"],r):"object"==typeof exports?exports.ReactRelayExperimental=r(require("@babel/runtime/helpers/asyncToGenerator"),require("@babel/runtime/helpers/createForOfIteratorHelper"),require("@babel/runtime/helpers/defineProperty"),require("@babel/runtime/helpers/interopRequireDefault"),require("@babel/runtime/helpers/objectSpread2"),require("@babel/runtime/helpers/toConsumableArray"),require("fbjs/lib/areEqual"),require("fbjs/lib/warning"),require("invariant")):e.ReactRelayExperimental=r(e["@babel/runtime/helpers/asyncToGenerator"],e["@babel/runtime/helpers/createForOfIteratorHelper"],e["@babel/runtime/helpers/defineProperty"],e["@babel/runtime/helpers/interopRequireDefault"],e["@babel/runtime/helpers/objectSpread2"],e["@babel/runtime/helpers/toConsumableArray"],e["fbjs/lib/areEqual"],e["fbjs/lib/warning"],e.invariant)}(self,((e,r,t,n,a,o,i,u,l)=>(()=>{"use strict";var s={649:(e,r,t)=>{var n=t(662),a=t(696).observeFragment,o=t(461).waitForFragmentData;e.exports={resolverDataInjector:n,isValueResult:function(e){return!0===e.ok},isErrorResult:function(e){return!1===e.ok},observeFragment:a,waitForFragmentData:o}},60:(e,r,t)=>{var n=t(571),a=function(e,r){},o=function(){function e(e){if(!e||"function"!=typeof e)throw new Error("Source must be a Function: "+String(e));this._source=e}e.create=function(r){return new e(r)},e.onUnhandledError=function(e){a=e},e.from=function(e){return function(e){return"object"==typeof e&&null!==e&&"function"==typeof e.subscribe}(e)?i(e):n(e)?u(e):l(e)};var r=e.prototype;return r.catch=function(r){var t=this;return e.create((function(e){var n;return t.subscribe({start:function(e){n=e},next:e.next,complete:e.complete,error:function(t){try{r(t).subscribe({start:function(e){n=e},next:e.next,complete:e.complete,error:e.error})}catch(r){e.error(r,!0)}}}),function(){return n.unsubscribe()}}))},r.concat=function(r){var t=this;return e.create((function(e){var n;return t.subscribe({start:function(e){n=e},next:e.next,error:e.error,complete:function(){n=r.subscribe(e)}}),function(){n&&n.unsubscribe()}}))},r.do=function(r){var t=this;return e.create((function(e){var n=function(t){return function(){try{r[t]&&r[t].apply(r,arguments)}catch(e){a(e,!0)}e[t]&&e[t].apply(e,arguments)}};return t.subscribe({start:n("start"),next:n("next"),error:n("error"),complete:n("complete"),unsubscribe:n("unsubscribe")})}))},r.finally=function(r){var t=this;return e.create((function(e){var n=t.subscribe(e);return function(){n.unsubscribe(),r()}}))},r.ifEmpty=function(r){var t=this;return e.create((function(e){var n,a=!1;return n=t.subscribe({next:function(r){a=!0,e.next(r)},error:e.error,complete:function(){a?e.complete():n=r.subscribe(e)}}),function(){n&&n.unsubscribe()}}))},r.subscribe=function(e){if(!e||"object"!=typeof e)throw new Error("Observer must be an Object with callbacks: "+String(e));return function(e,r){var t,n=!1,o=function(e){return Object.defineProperty(e,"closed",{get:function(){return n}})};function i(){if(t){if(t.unsubscribe)t.unsubscribe();else try{t()}catch(e){a(e,!0)}t=void 0}}var u=o({unsubscribe:function(){if(!n){n=!0;try{r.unsubscribe&&r.unsubscribe(u)}catch(e){a(e,!0)}finally{i()}}}});try{r.start&&r.start(u)}catch(e){a(e,!0)}if(n)return u;var l=o({next:function(e){if(!n&&r.next)try{r.next(e)}catch(e){a(e,!0)}},error:function(e,t){if(n||!r.error)n=!0,a(e,t||!1),i();else{n=!0;try{r.error(e)}catch(e){a(e,!0)}finally{i()}}},complete:function(){if(!n){n=!0;try{r.complete&&r.complete()}catch(e){a(e,!0)}finally{i()}}}});try{t=e(l)}catch(e){l.error(e,!0)}if(void 0!==t&&"function"!=typeof t&&(!t||"function"!=typeof t.unsubscribe))throw new Error("Returned cleanup function which cannot be called: "+String(t));return n&&i(),u}(this._source,e)},r.map=function(r){var t=this;return e.create((function(e){var n=t.subscribe({complete:e.complete,error:e.error,next:function(t){try{var n=r(t);e.next(n)}catch(r){e.error(r,!0)}}});return function(){n.unsubscribe()}}))},r.mergeMap=function(r){var t=this;return e.create((function(n){var a=[];function o(e){this._sub=e,a.push(e)}function i(){a.splice(a.indexOf(this._sub),1),0===a.length&&n.complete()}return t.subscribe({start:o,next:function(t){try{n.closed||e.from(r(t)).subscribe({start:o,next:n.next,error:n.error,complete:i})}catch(e){n.error(e,!0)}},error:n.error,complete:i}),function(){a.forEach((function(e){return e.unsubscribe()})),a.length=0}}))},r.poll=function(r){var t=this;if("number"!=typeof r||r<=0)throw new Error("RelayObservable: Expected pollInterval to be positive, got: "+r);return e.create((function(e){var n,a;return function o(){n=t.subscribe({next:e.next,error:e.error,complete:function(){a=setTimeout(o,r)}})}(),function(){clearTimeout(a),n.unsubscribe()}}))},r.toPromise=function(){var e=this;return new Promise((function(r,t){var n=!1;e.subscribe({next:function(e){n||(n=!0,r(e))},error:t,complete:r})}))},e}();function i(e){return e instanceof o?e:o.create((function(r){return e.subscribe(r)}))}function u(e){return o.create((function(r){e.then((function(e){r.next(e),r.complete()}),r.error)}))}function l(e){return o.create((function(r){r.next(e),r.complete()}))}o.onUnhandledError((function(e,r){"function"==typeof fail?fail(String(e)):r?setTimeout((function(){throw e})):"undefined"!=typeof console&&console.error("RelayObservable: Unhandled Error",e)})),e.exports=o},634:(e,r,t)=>{var n=t(775),a=t(56),o=t(446);function i(e){var r=e;return"function"==typeof r?(r=r(),o(!1,"RelayGraphQLTag: node `%s` unexpectedly wrapped in a function.","Fragment"===r.kind?r.name:r.operation.name)):r.default&&(r=r.default),r}function u(e){var r=i(e);return"object"==typeof r&&null!==r&&r.kind===n.FRAGMENT}function l(e){var r=i(e);return"object"==typeof r&&null!==r&&r.kind===n.REQUEST}function s(e){var r=i(e);return"object"==typeof r&&null!==r&&r.kind===n.UPDATABLE_QUERY}function c(e){var r=i(e);return"object"==typeof r&&null!==r&&r.kind===n.INLINE_DATA_FRAGMENT}function f(e){var r=i(e);return u(r)||a(!1,"GraphQLTag: Expected a fragment, got `%s`.",JSON.stringify(r)),r}e.exports={getFragment:f,getNode:i,getPaginationFragment:function(e){var r,t=f(e),n=null===(r=t.metadata)||void 0===r?void 0:r.refetch,a=null==n?void 0:n.connection;return null===n||"object"!=typeof n||null===a||"object"!=typeof a?null:t},getRefetchableFragment:function(e){var r,t=f(e),n=null===(r=t.metadata)||void 0===r?void 0:r.refetch;return null===n||"object"!=typeof n?null:t},getRequest:function(e){var r=i(e);return l(r)||a(!1,"GraphQLTag: Expected a request, got `%s`.",JSON.stringify(r)),r},getUpdatableQuery:function(e){var r=i(e);return s(r)||a(!1,"GraphQLTag: Expected a request, got `%s`.",JSON.stringify(r)),r},getInlineDataFragment:function(e){var r=i(e);return c(r)||a(!1,"GraphQLTag: Expected an inline data fragment, got `%s`.",JSON.stringify(r)),r},graphql:function(e){a(!1,"graphql: Unexpected invocation at runtime. Either the Babel transform was not set up, or it failed to identify this call site. Make sure it is being used verbatim as `graphql`. Note also that there cannot be a space between graphql and the backtick that follows.")},isFragment:u,isRequest:l,isUpdatableQuery:s,isInlineDataFragment:c}},367:(e,r,t)=>{var n=t(60),a=t(153),o=t(56),i="function"==typeof WeakMap?new WeakMap:new Map;function u(e,r,t){return n.create((function(i){var u=s(e),l=u.get(r);return l||t().finally((function(){return u.delete(r)})).subscribe({start:function(e){l={identifier:r,subject:new a,subjectForInFlightStatus:new a,subscription:e,promise:null},u.set(r,l)},next:function(e){var t=c(u,r);t.subject.next(e),t.subjectForInFlightStatus.next(e)},error:function(e){var t=c(u,r);t.subject.error(e),t.subjectForInFlightStatus.error(e)},complete:function(){var e=c(u,r);e.subject.complete(),e.subjectForInFlightStatus.complete()},unsubscribe:function(e){var t=c(u,r);t.subject.unsubscribe(),t.subjectForInFlightStatus.unsubscribe()}}),null==l&&o(!1,"[fetchQueryInternal] fetchQueryDeduped: Expected `start` to be called synchronously"),function(e,r){return n.create((function(t){var n=r.subject.subscribe(t);return function(){n.unsubscribe();var t=e.get(r.identifier);if(t){var a=t.subscription;null!=a&&0===t.subject.getObserverCount()&&(a.unsubscribe(),e.delete(r.identifier))}}}))}(u,l).subscribe(i)}))}function l(e,r,t){return n.create((function(r){var n=t.subjectForInFlightStatus.subscribe({error:r.error,next:function(n){e.isRequestActive(t.identifier)?r.next():r.complete()},complete:r.complete,unsubscribe:r.complete});return function(){n.unsubscribe()}}))}function s(e){var r=i.get(e);if(null!=r)return r;var t=new Map;return i.set(e,t),t}function c(e,r){var t=e.get(r);return null==t&&o(!1,"[fetchQueryInternal] getCachedRequest: Expected request to be cached"),t}e.exports={fetchQuery:function(e,r){return u(e,r.request.identifier,(function(){return e.execute({operation:r})}))},fetchQueryDeduped:u,getPromiseForActiveRequest:function(e,r){var t=s(e).get(r.identifier);return t&&e.isRequestActive(t.identifier)?new Promise((function(r,n){var a=!1;l(e,0,t).subscribe({complete:r,error:n,next:function(e){a&&r(e)}}),a=!0})):null},getObservableForActiveRequest:function(e,r){var t=s(e).get(r.identifier);return t&&e.isRequestActive(t.identifier)?l(e,0,t):null}}},129:(e,r,t)=>{var n=(0,t(275).default)(t(175)),a=t(165).getArgumentValues,o=t(56);e.exports={getLocalVariables:function(e,r,t){if(null==r)return e;var o=(0,n.default)({},e),i=t?a(t,e):{};return r.forEach((function(e){var r,t=null!==(r=i[e.name])&&void 0!==r?r:e.defaultValue;o[e.name]=t})),o},getFragmentVariables:function(e,r,t){return null==e.argumentDefinitions?t:(e.argumentDefinitions.forEach((function(i){if(!t.hasOwnProperty(i.name))switch(a=a||(0,n.default)({},t),i.kind){case"LocalArgument":a[i.name]=i.defaultValue;break;case"RootArgument":if(!r.hasOwnProperty(i.name)){a[i.name]=void 0;break}a[i.name]=r[i.name];break;default:o(!1,"RelayConcreteVariables: Unexpected node kind `%s` in fragment `%s`.",i.kind,e.name)}})),a||t);var a},getOperationVariables:function(e,r,t){var n={};return e.argumentDefinitions.forEach((function(e){var r=e.defaultValue;null!=t[e.name]&&(r=t[e.name]),n[e.name]=r})),null!=r&&Object.keys(r).forEach((function(e){n[e]=r[e].get()})),n}}},256:(e,r,t)=>{var n=t(129).getFragmentVariables,a=t(165),o=a.CLIENT_EDGE_TRAVERSAL_PATH,i=a.FRAGMENT_OWNER_KEY,u=a.FRAGMENT_POINTER_IS_WITHIN_UNMATCHED_TYPE_REFINEMENT,l=a.FRAGMENTS_KEY,s=a.ID_KEY,c=t(125),f=t(56),d=t(446);function p(e,r){("object"!=typeof r||null===r||Array.isArray(r))&&f(!1,"RelayModernSelector: Expected value for fragment `%s` to be an object, got `%s`.",e.name,JSON.stringify(r));var t=r[s],a=r[l],c=r[i],p=r[o];if("string"==typeof t&&"object"==typeof a&&null!==a&&"object"==typeof a[e.name]&&null!==a[e.name]&&"object"==typeof c&&null!==c&&(null==p||Array.isArray(p))){var b=c,m=p,g=a[e.name];return R(e,t,n(e,b.variables,g),b,!0===g[u],m)}var v=JSON.stringify(r);return v.length>499&&(v=v.substr(0,498)+"…"),d(!1,"RelayModernSelector: Expected object to contain data for fragment `%s`, got `%s`. Make sure that the parent operation/fragment included fragment `...%s` without `@relay(mask: false)`.",e.name,v,e.name),null}function b(e,r){var t=null;return r.forEach((function(r,n){var a=null!=r?p(e,r):null;null!=a&&(t=t||[]).push(a)})),null==t?null:{kind:"PluralReaderSelector",selectors:t}}function m(e,r){return null==r?r:e.metadata&&!0===e.metadata.plural?(Array.isArray(r)||f(!1,"RelayModernSelector: Expected value for fragment `%s` to be an array, got `%s`. Remove `@relay(plural: true)` from fragment `%s` to allow the prop to be an object.",e.name,JSON.stringify(r),e.name),b(e,r)):(Array.isArray(r)&&f(!1,"RelayModernSelector: Expected value for fragment `%s` to be an object, got `%s`. Add `@relay(plural: true)` to fragment `%s` to allow the prop to be an array of items.",e.name,JSON.stringify(r),e.name),p(e,r))}function g(e,r){return null==r?r:e.metadata&&!0===e.metadata.plural?(Array.isArray(r)||f(!1,"RelayModernSelector: Expected value for fragment `%s` to be an array, got `%s`. Remove `@relay(plural: true)` from fragment `%s` to allow the prop to be an object.",e.name,JSON.stringify(r),e.name),function(e,r){var t=null;return r.forEach((function(r){var n=null!=r?v(e,r):null;null!=n&&(t=t||[]).push(n)})),t}(e,r)):(Array.isArray(r)&&f(!1,"RelayModernFragmentSpecResolver: Expected value for fragment `%s` to be an object, got `%s`. Add `@relay(plural: true)` to fragment `%s` to allow the prop to be an array of items.",e.name,JSON.stringify(r),e.name),v(e,r))}function v(e,r){("object"!=typeof r||null===r||Array.isArray(r))&&f(!1,"RelayModernSelector: Expected value for fragment `%s` to be an object, got `%s`.",e.name,JSON.stringify(r));var t=r[s];return"string"==typeof t?t:(d(!1,"RelayModernSelector: Expected object to contain data for fragment `%s`, got `%s`. Make sure that the parent operation/fragment included fragment `...%s` without `@relay(mask: false)`, or `null` is passed as the fragment reference for `%s` if it's conditonally included and the condition isn't met.",e.name,JSON.stringify(r),e.name,e.name),null)}function h(e,r){var t;return null==r?{}:!0===(null===(t=e.metadata)||void 0===t?void 0:t.plural)?(Array.isArray(r)||f(!1,"RelayModernSelector: Expected value for fragment `%s` to be an array, got `%s`. Remove `@relay(plural: true)` from fragment `%s` to allow the prop to be an object.",e.name,JSON.stringify(r),e.name),y(e,r)):(Array.isArray(r)&&f(!1,"RelayModernFragmentSpecResolver: Expected value for fragment `%s` to be an object, got `%s`. Add `@relay(plural: true)` to fragment `%s` to allow the prop to be an array of items.",e.name,JSON.stringify(r),e.name),E(e,r)||{})}function E(e,r){var t=p(e,r);return t?t.variables:null}function y(e,r){var t={};return r.forEach((function(r,n){if(null!=r){var a=E(e,r);null!=a&&Object.assign(t,a)}})),t}function _(e,r){return e.dataID===r.dataID&&e.node===r.node&&c(e.variables,r.variables)&&((t=e.owner)===(n=r.owner)||t.identifier===n.identifier&&c(t.cacheConfig,n.cacheConfig))&&e.isWithinUnmatchedTypeRefinement===r.isWithinUnmatchedTypeRefinement&&function(e,r){if(e===r)return!0;if(null==e||null==r||e.length!==r.length)return!1;for(var t=e.length;t--;){var n=e[t],a=r[t];if(n!==a&&(null==n||null==a||n.clientEdgeDestinationID!==a.clientEdgeDestinationID||n.readerClientEdge!==a.readerClientEdge))return!1}return!0}(e.clientEdgeTraversalPath,r.clientEdgeTraversalPath);var t,n}function R(e,r,t,n){var a=arguments.length>5?arguments[5]:void 0;return{kind:"SingularReaderSelector",dataID:r,isWithinUnmatchedTypeRefinement:arguments.length>4&&void 0!==arguments[4]&&arguments[4],clientEdgeTraversalPath:null!=a?a:null,node:e,variables:t,owner:n}}e.exports={areEqualSelectors:function(e,r){return e===r||(null==e?null==r:null==r?null==e:"SingularReaderSelector"===e.kind&&"SingularReaderSelector"===r.kind?_(e,r):"PluralReaderSelector"===e.kind&&"PluralReaderSelector"===r.kind&&e.selectors.length===r.selectors.length&&e.selectors.every((function(e,t){return _(e,r.selectors[t])})))},createReaderSelector:R,createNormalizationSelector:function(e,r,t){return{dataID:r,node:e,variables:t}},getDataIDsFromFragment:g,getDataIDsFromObject:function(e,r){var t={};for(var n in e)if(e.hasOwnProperty(n)){var a=e[n],o=r[n];t[n]=g(a,o)}return t},getSingularSelector:p,getPluralSelector:b,getSelector:m,getSelectorsFromObject:function(e,r){var t={};for(var n in e)if(e.hasOwnProperty(n)){var a=e[n],o=r[n];t[n]=m(a,o)}return t},getVariablesFromSingularFragment:E,getVariablesFromPluralFragment:y,getVariablesFromFragment:h,getVariablesFromObject:function(e,r){var t={};for(var n in e)if(e.hasOwnProperty(n)){var a=h(e[n],r[n]);Object.assign(t,a)}return t}}},165:(e,r,t)=>{var n=(0,t(275).default)(t(642)),a=t(330),o=t(775),i=t(94).stableCopy,u=t(56),l=o.VARIABLE,s=o.LITERAL,c=o.OBJECT_VALUE,f=o.LIST_VALUE;function d(e,r){if(e.kind===l)return function(e,r){return r.hasOwnProperty(e)||u(!1,"getVariableValue(): Undefined variable `%s`.",e),i(r[e])}(e.variableName,r);if(e.kind===s)return e.value;if(e.kind===c){var t={};return e.fields.forEach((function(e){t[e.name]=d(e,r)})),t}if(e.kind===f){var n=[];return e.items.forEach((function(e){null!=e&&n.push(d(e,r))})),n}}function p(e,r,t){var n={};return t&&(n[m.FRAGMENT_POINTER_IS_WITHIN_UNMATCHED_TYPE_REFINEMENT]=!0),e&&e.forEach((function(e){n[e.name]=d(e,r)})),n}function b(e,r){if(!r)return e;var t=[];for(var n in r)if(r.hasOwnProperty(n)){var a,o=r[n];null!=o&&t.push(n+":"+(null!==(a=JSON.stringify(o))&&void 0!==a?a:"undefined"))}return 0===t.length?e:e+"(".concat(t.join(","),")")}var m={ACTOR_IDENTIFIER_KEY:"__actorIdentifier",CLIENT_EDGE_TRAVERSAL_PATH:"__clientEdgeTraversalPath",FRAGMENTS_KEY:"__fragments",FRAGMENT_OWNER_KEY:"__fragmentOwner",FRAGMENT_POINTER_IS_WITHIN_UNMATCHED_TYPE_REFINEMENT:"$isWithinUnmatchedTypeRefinement",FRAGMENT_PROP_NAME_KEY:"__fragmentPropName",MODULE_COMPONENT_KEY:"__module_component",ERRORS_KEY:"__errors",ID_KEY:"__id",REF_KEY:"__ref",REFS_KEY:"__refs",ROOT_ID:"client:root",ROOT_TYPE:"__Root",TYPENAME_KEY:"__typename",INVALIDATED_AT_KEY:"__invalidated_at",RELAY_RESOLVER_VALUE_KEY:"__resolverValue",RELAY_RESOLVER_INVALIDATION_KEY:"__resolverValueMayBeInvalid",RELAY_RESOLVER_SNAPSHOT_KEY:"__resolverSnapshot",RELAY_RESOLVER_ERROR_KEY:"__resolverError",RELAY_RESOLVER_OUTPUT_TYPE_RECORD_IDS:"__resolverOutputTypeRecordIDs",formatStorageKey:b,getArgumentValue:d,getArgumentValues:p,getHandleStorageKey:function(e,r){var t=e.dynamicKey,o=e.handle,i=e.key,u=e.name,l=e.args,s=e.filters,c=a(o,i,u),f=null;return l&&s&&0!==l.length&&0!==s.length&&(f=l.filter((function(e){return s.indexOf(e.name)>-1}))),t&&(f=null!=f?[t].concat((0,n.default)(f)):[t]),null===f?c:b(c,p(f,r))},getStorageKey:function(e,r){if(e.storageKey)return e.storageKey;var t=function(e){var r,t;return"RelayResolver"===e.kind||"RelayLiveResolver"===e.kind?null==e.args?null===(t=e.fragment)||void 0===t?void 0:t.args:null==(null===(r=e.fragment)||void 0===r?void 0:r.args)?e.args:e.args.concat(e.fragment.args):void 0===e.args?void 0:e.args}(e),n=e.name;return t&&0!==t.length?b(n,p(t,r)):n},getStableStorageKey:function(e,r){return b(e,i(r))},getModuleComponentKey:function(e){return"".concat("__module_component_").concat(e)},getModuleOperationKey:function(e){return"".concat("__module_operation_").concat(e)}};e.exports=m},890:(e,r,t)=>{var n=t(634).getFragment,a=t(222).eventShouldThrow,o=t(256).getSelector,i=t(56),u=[],l={};e.exports={readFragment:function(e,r){if(!u.length)throw new Error("readFragment should be called only from within a Relay Resolver function.");var t=u[u.length-1],s=n(e),c=o(s,r);null==c&&i(!1,"Expected a selector for the fragment of the resolver ".concat(s.name,", but got null.")),"SingularReaderSelector"!==c.kind&&i(!1,"Expected a singular reader selector for the fragment of the resolver ".concat(s.name,", but it was plural."));var f=t.getDataForResolverFragment(c,r),d=f.data,p=f.isMissingData,b=f.errorResponseFields;if(p||null!=b&&b.some(a))throw l;return d},withResolverContext:function(e,r){u.push(e);try{return r()}finally{u.pop()}},RESOLVER_FRAGMENT_ERRORED_SENTINEL:l}},662:(e,r,t)=>{var n=t(890).readFragment,a=t(56);e.exports=function(e,r,t,o){var i=r;return function(r,u){var l=n(e,r);if(null==t)return i(l,u);if(null==l){if(!0!==o)return i(null,u);a(!1,"Expected required resolver field `%s` in fragment `%s` to be present. But resolvers fragment data is null/undefined.",t,e.name)}if(t in l)return!0===o&&null==l[t]&&a(!1,"Expected required resolver field `%s` in fragment `%s` to be non-null.",t,e.name),i(l[t],u);a(!1,"Missing field `%s` in fragment `%s` in resolver response.",t,e.name)}}},696:(e,r,t)=>{var n=t(314).default,a=t(60),o=t(634).getFragment,i=t(250),u=t(222).handlePotentialSnapshotErrors,l=t(256).getSelector,s=t(56);function c(){return(c=n((function*(e,r,t){var n;try{var a,o=yield new Promise((function(a,o){n=f(e,r,t).subscribe({next:function(e){"ok"===e.state?a(e.value):"error"===e.state&&o(e.error)}})}));return null===(a=n)||void 0===a||a.unsubscribe(),o}catch(e){var i;throw null===(i=n)||void 0===i||i.unsubscribe(),e}}))).apply(this,arguments)}function f(e,r,t){var n,i=o(r),u=l(i,t);switch(null!=(null===(n=i.metadata)||void 0===n?void 0:n.hasClientEdges)&&s(!1,"Client edges aren't supported yet."),null==u&&s(!1,"Expected a selector, got null."),u.kind){case"SingularReaderSelector":return function(e,r,t){var n=e.lookup(t);return a.create((function(a){a.next(d(e,r,t.owner,n));var o=e.subscribe(n,(function(n){a.next(d(e,r,t.owner,n))}));return function(){return o.dispose()}}))}(e,r,u);case"PluralReaderSelector":s(!1,"Plural fragments are not supported")}s(!1,"Unsupported fragment selector kind")}function d(e,r,t,n){var a=null!=n.missingLiveResolverFields&&n.missingLiveResolverFields.length>0,o=null!=n.missingClientEdges&&n.missingClientEdges.length>0;if(a||o)return{state:"loading"};if(n.isMissingData&&null!=i(e,r,t))return{state:"loading"};try{u(e,n.errorResponseFields)}catch(e){return{error:e,state:"error"}}return null==n.data&&s(!1,"Expected data to be non-null."),{state:"ok",value:n.data}}e.exports={observeFragment:f,waitForFragmentData:function(e,r,t){return c.apply(this,arguments)}}},461:(e,r,t)=>{var n=t(314).default,a=t(696).observeFragment;function o(){return(o=n((function*(e,r,t){var n;try{var o,i=yield new Promise((function(o,i){n=a(e,r,t).subscribe({next:function(e){"ok"===e.state?o(e.value):"error"===e.state&&i(e.error)}})}));return null===(o=n)||void 0===o||o.unsubscribe(),i}catch(e){var u;throw null===(u=n)||void 0===u||u.unsubscribe(),e}}))).apply(this,arguments)}e.exports={waitForFragmentData:function(e,r,t){return o.apply(this,arguments)}}},775:e=>{e.exports={ACTOR_CHANGE:"ActorChange",CATCH_FIELD:"CatchField",CONDITION:"Condition",CLIENT_COMPONENT:"ClientComponent",CLIENT_EDGE_TO_SERVER_OBJECT:"ClientEdgeToServerObject",CLIENT_EDGE_TO_CLIENT_OBJECT:"ClientEdgeToClientObject",CLIENT_EXTENSION:"ClientExtension",DEFER:"Defer",CONNECTION:"Connection",FRAGMENT:"Fragment",FRAGMENT_SPREAD:"FragmentSpread",INLINE_DATA_FRAGMENT_SPREAD:"InlineDataFragmentSpread",INLINE_DATA_FRAGMENT:"InlineDataFragment",INLINE_FRAGMENT:"InlineFragment",LINKED_FIELD:"LinkedField",LINKED_HANDLE:"LinkedHandle",LITERAL:"Literal",LIST_VALUE:"ListValue",LOCAL_ARGUMENT:"LocalArgument",MODULE_IMPORT:"ModuleImport",ALIASED_FRAGMENT_SPREAD:"AliasedFragmentSpread",ALIASED_INLINE_FRAGMENT_SPREAD:"AliasedInlineFragmentSpread",RELAY_RESOLVER:"RelayResolver",RELAY_LIVE_RESOLVER:"RelayLiveResolver",REQUIRED_FIELD:"RequiredField",OBJECT_VALUE:"ObjectValue",OPERATION:"Operation",REQUEST:"Request",ROOT_ARGUMENT:"RootArgument",SCALAR_FIELD:"ScalarField",SCALAR_HANDLE:"ScalarHandle",SPLIT_OPERATION:"SplitOperation",STREAM:"Stream",TYPE_DISCRIMINATOR:"TypeDiscriminator",UPDATABLE_QUERY:"UpdatableQuery",VARIABLE:"Variable"}},204:e=>{e.exports={DEFAULT_HANDLE_KEY:""}},153:(e,r,t)=>{var n=t(275).default,a=n(t(765)),o=n(t(311)),i=t(60),u=t(56),l=function(){function e(){var e=this;(0,o.default)(this,"_complete",!1),(0,o.default)(this,"_events",[]),(0,o.default)(this,"_sinks",new Set),(0,o.default)(this,"_subscription",[]),this._observable=i.create((function(r){e._sinks.add(r);for(var t=e._events,n=0;n<t.length&&!r.closed;n++){var a=t[n];switch(a.kind){case"complete":r.complete();break;case"error":r.error(a.error);break;case"next":r.next(a.data);break;default:a.kind,u(!1,"RelayReplaySubject: Unknown event kind `%s`.",a.kind)}}return function(){e._sinks.delete(r)}}))}var r=e.prototype;return r.complete=function(){!0!==this._complete&&(this._complete=!0,this._events.push({kind:"complete"}),this._sinks.forEach((function(e){return e.complete()})))},r.error=function(e){!0!==this._complete&&(this._complete=!0,this._events.push({kind:"error",error:e}),this._sinks.forEach((function(r){return r.error(e)})))},r.next=function(e){!0!==this._complete&&(this._events.push({kind:"next",data:e}),this._sinks.forEach((function(r){return r.next(e)})))},r.subscribe=function(e){var r=this._observable.subscribe(e);return this._subscription.push(r),r},r.unsubscribe=function(){var e,r=(0,a.default)(this._subscription);try{for(r.s();!(e=r.n()).done;)e.value.unsubscribe()}catch(e){r.e(e)}finally{r.f()}this._subscription=[]},r.getObserverCount=function(){return this._sinks.size},e}();e.exports=l},250:(e,r,t)=>{var n=t(367).getPromiseForActiveRequest;e.exports=function(e,r,t){var a,o,i=[],u=n(e,t);if(null!=u)i=[t];else{var l,s,c=e.getOperationTracker().getPendingOperationsAffectingOwner(t);i=null!==(l=null==c?void 0:c.pendingOperations)&&void 0!==l?l:[],u=null!==(s=null==c?void 0:c.promise)&&void 0!==s?s:null}if(!u)return null;var f=null!==(a=null===(o=i)||void 0===o?void 0:o.map((function(e){return e.node.params.name})).join(","))&&void 0!==a?a:null;null!=f&&0!==f.length||(f="Unknown pending operation");var d=r.name,p=f===d?"Relay(".concat(f,")"):"Relay(".concat(f,":").concat(d,")");return u.displayName=p,e.__log({name:"pendingoperation.found",fragment:r,fragmentOwner:t,pendingOperations:i}),{promise:u,pendingOperations:i}}},330:(e,r,t)=>{var n=t(204).DEFAULT_HANDLE_KEY,a=t(56);e.exports=function(e,r,t){return r&&r!==n?"__".concat(r,"_").concat(e):(null==t&&a(!1,"getRelayHandleKey: Expected either `fieldName` or `key` in `handle` to be provided"),"__".concat(t,"_").concat(e))}},222:(e,r,t)=>{var n=(0,t(275).default)(t(765)),a=t(56);function o(e){switch(e.kind){case"relay_resolver.error":case"relay_field_payload.error":return e.shouldThrow&&!e.handled;case"missing_expected_data.throw":case"missing_required_field.throw":return!e.handled;case"missing_required_field.log":case"missing_expected_data.log":return!1;default:throw e.kind,new Error("Relay: Unexpected event kind")}}e.exports={handlePotentialSnapshotErrors:function(e,r){null!=r&&function(e,r){var t,i=(0,n.default)(r);try{for(i.s();!(t=i.n()).done;){var u=t.value;e.relayFieldLogger(u)}}catch(e){i.e(e)}finally{i.f()}var l,s=(0,n.default)(r);try{for(s.s();!(l=s.n()).done;){var c=l.value;if(o(c))switch(c.kind){case"relay_resolver.error":throw new Error("Relay: Resolver error at path '".concat(c.fieldPath,"' in '").concat(c.owner,"'."));case"relay_field_payload.error":throw new Error("Relay: Unexpected response payload - check server logs for details.");case"missing_expected_data.throw":throw new Error("Relay: Missing expected data at path '".concat(c.fieldPath,"' in '").concat(c.owner,"'."));case"missing_required_field.throw":throw new Error("Relay: Missing @required value at path '".concat(c.fieldPath,"' in '").concat(c.owner,"'."));case"missing_required_field.log":case"missing_expected_data.log":break;default:c.kind,a(!1,"Relay: Unexpected event kind: %s",c.kind)}}}catch(e){s.e(e)}finally{s.f()}}(e,r)},eventShouldThrow:o}},571:e=>{e.exports=function(e){return null!=e&&"object"==typeof e&&"function"==typeof e.then}},94:e=>{e.exports={stableCopy:function e(r){if(!r||"object"!=typeof r)return r;if(Array.isArray(r))return r.map(e);for(var t=Object.keys(r).sort(),n={},a=0;a<t.length;a++)n[t[a]]=e(r[t[a]]);return n},hasCycle:function e(r){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set;if(!r||"object"!=typeof r)return!1;if(t.has(r))return!0;var n=new Set(t);return n.add(r),(Array.isArray(r)?r:Object.values(r)).some((function(r){return e(r,n)}))}}},314:r=>{r.exports=e},765:e=>{e.exports=r},311:e=>{e.exports=t},275:e=>{e.exports=n},175:e=>{e.exports=a},642:e=>{e.exports=o},125:e=>{e.exports=i},446:e=>{e.exports=u},56:e=>{e.exports=l}},c={};return function e(r){var t=c[r];if(void 0!==t)return t.exports;var n=c[r]={exports:{}};return s[r](n,n.exports,e),n.exports}(649)})()));
|