react-relay 12.0.0 → 13.0.0-rc.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (133) hide show
  1. package/ReactRelayContext.js +1 -1
  2. package/ReactRelayContext.js.flow +2 -3
  3. package/ReactRelayFragmentContainer.js.flow +10 -16
  4. package/ReactRelayFragmentMockRenderer.js.flow +1 -1
  5. package/ReactRelayLocalQueryRenderer.js.flow +6 -7
  6. package/ReactRelayPaginationContainer.js.flow +29 -39
  7. package/ReactRelayQueryFetcher.js.flow +9 -10
  8. package/ReactRelayQueryRenderer.js.flow +15 -15
  9. package/ReactRelayRefetchContainer.js.flow +24 -32
  10. package/ReactRelayTestMocker.js.flow +16 -14
  11. package/ReactRelayTypes.js.flow +10 -10
  12. package/RelayContext.js.flow +3 -3
  13. package/__flowtests__/ReactRelayFragmentContainer-flowtest.js.flow +1 -2
  14. package/__flowtests__/ReactRelayPaginationContainer-flowtest.js.flow +1 -2
  15. package/__flowtests__/ReactRelayRefetchContainer-flowtest.js.flow +1 -2
  16. package/__flowtests__/RelayModern-flowtest.js.flow +78 -46
  17. package/__flowtests__/RelayModernFlowtest_badref.graphql.js.flow +5 -4
  18. package/__flowtests__/RelayModernFlowtest_notref.graphql.js.flow +5 -4
  19. package/__flowtests__/RelayModernFlowtest_user.graphql.js.flow +4 -3
  20. package/__flowtests__/RelayModernFlowtest_users.graphql.js.flow +4 -3
  21. package/__flowtests__/__generated__/ReactRelayFragmentContainerFlowtest_viewer.graphql.js.flow +13 -10
  22. package/__flowtests__/__generated__/ReactRelayFragmentContainerFlowtest_viewer2.graphql.js.flow +13 -10
  23. package/__flowtests__/__generated__/ReactRelayPaginationContainerFlowtestQuery.graphql.js.flow +13 -8
  24. package/__flowtests__/__generated__/ReactRelayPaginationContainerFlowtest_viewer.graphql.js.flow +13 -10
  25. package/__flowtests__/__generated__/ReactRelayRefetchContainerFlowtestQuery.graphql.js.flow +13 -8
  26. package/__flowtests__/__generated__/ReactRelayRefetchContainerFlowtest_viewer.graphql.js.flow +13 -10
  27. package/__flowtests__/__generated__/RelayModernFlowtest_badref.graphql.js.flow +15 -12
  28. package/__flowtests__/__generated__/RelayModernFlowtest_notref.graphql.js.flow +15 -12
  29. package/__flowtests__/__generated__/RelayModernFlowtest_user.graphql.js.flow +13 -10
  30. package/__flowtests__/__generated__/RelayModernFlowtest_users.graphql.js.flow +13 -10
  31. package/assertFragmentMap.js.flow +2 -2
  32. package/buildReactRelayContainer.js.flow +11 -10
  33. package/getRootVariablesForFragments.js.flow +2 -4
  34. package/hooks.js +1 -1
  35. package/hooks.js.flow +3 -5
  36. package/index.js +1 -1
  37. package/index.js.flow +4 -6
  38. package/jest-react/enqueueTask.js.flow +1 -1
  39. package/jest-react/internalAct.js.flow +1 -2
  40. package/legacy.js +1 -1
  41. package/lib/ReactRelayFragmentContainer.js +4 -4
  42. package/lib/ReactRelayFragmentMockRenderer.js +2 -2
  43. package/lib/ReactRelayLocalQueryRenderer.js +7 -8
  44. package/lib/ReactRelayPaginationContainer.js +18 -22
  45. package/lib/ReactRelayQueryFetcher.js +2 -2
  46. package/lib/ReactRelayQueryRenderer.js +4 -4
  47. package/lib/ReactRelayRefetchContainer.js +12 -14
  48. package/lib/ReactRelayTestMocker.js +7 -8
  49. package/lib/RelayContext.js +3 -2
  50. package/lib/assertFragmentMap.js +2 -1
  51. package/lib/buildReactRelayContainer.js +7 -7
  52. package/lib/getRootVariablesForFragments.js +1 -2
  53. package/lib/hooks.js +5 -5
  54. package/lib/index.js +7 -7
  55. package/lib/jest-react/internalAct.js +2 -2
  56. package/lib/multi-actor/ActorChange.js +2 -2
  57. package/lib/multi-actor/useRelayActorEnvironment.js +2 -2
  58. package/lib/relay-hooks/EntryPointContainer.react.js +3 -3
  59. package/lib/relay-hooks/FragmentResource.js +241 -45
  60. package/lib/relay-hooks/LazyLoadEntryPointContainer_DEPRECATED.react.js +4 -4
  61. package/lib/relay-hooks/MatchContainer.js +1 -1
  62. package/lib/relay-hooks/QueryResource.js +83 -4
  63. package/lib/relay-hooks/SuspenseResource.js +130 -0
  64. package/lib/relay-hooks/loadQuery.js +8 -9
  65. package/lib/relay-hooks/preloadQuery_DEPRECATED.js +24 -10
  66. package/lib/relay-hooks/useBlockingPaginationFragment.js +2 -2
  67. package/lib/relay-hooks/useEntryPointLoader.js +2 -2
  68. package/lib/relay-hooks/useFetchTrackingRef.js +2 -1
  69. package/lib/relay-hooks/useFragment.js +8 -7
  70. package/lib/relay-hooks/useFragmentNode.js +4 -4
  71. package/lib/relay-hooks/useIsOperationNodeActive.js +2 -2
  72. package/lib/relay-hooks/useLazyLoadQuery.js +3 -3
  73. package/lib/relay-hooks/useLazyLoadQueryNode.js +4 -4
  74. package/lib/relay-hooks/useLoadMoreFunction.js +7 -9
  75. package/lib/relay-hooks/useMemoOperationDescriptor.js +2 -2
  76. package/lib/relay-hooks/useMemoVariables.js +2 -2
  77. package/lib/relay-hooks/useMutation.js +17 -6
  78. package/lib/relay-hooks/usePreloadedQuery.js +5 -5
  79. package/lib/relay-hooks/useQueryLoader.js +4 -4
  80. package/lib/relay-hooks/useRefetchableFragmentNode.js +10 -12
  81. package/lib/relay-hooks/useRelayEnvironment.js +2 -2
  82. package/lib/relay-hooks/useStaticFragmentNodeWarning.js +2 -2
  83. package/lib/relay-hooks/useSubscribeToInvalidationState.js +2 -1
  84. package/multi-actor/ActorChange.js.flow +3 -4
  85. package/multi-actor/useRelayActorEnvironment.js.flow +5 -7
  86. package/package.json +2 -2
  87. package/react-relay-hooks.js +2 -2
  88. package/react-relay-hooks.min.js +2 -2
  89. package/react-relay-legacy.js +2 -2
  90. package/react-relay-legacy.min.js +2 -2
  91. package/react-relay.js +2 -2
  92. package/react-relay.min.js +2 -2
  93. package/relay-hooks/EntryPointContainer.react.js.flow +8 -15
  94. package/relay-hooks/EntryPointTypes.flow.js.flow +18 -24
  95. package/relay-hooks/FragmentResource.js.flow +220 -34
  96. package/relay-hooks/LazyLoadEntryPointContainer_DEPRECATED.react.js.flow +32 -46
  97. package/relay-hooks/MatchContainer.js.flow +3 -2
  98. package/relay-hooks/QueryResource.js.flow +119 -17
  99. package/relay-hooks/RelayEnvironmentProvider.js.flow +9 -9
  100. package/relay-hooks/SuspenseResource.js.flow +115 -0
  101. package/relay-hooks/__flowtests__/EntryPointTypes/EntryPointElementConfig-flowtest.js.flow +4 -3
  102. package/relay-hooks/__flowtests__/EntryPointTypes/NestedEntrypoints-flowtest.js.flow +1 -1
  103. package/relay-hooks/__flowtests__/useBlockingPaginationFragment-flowtest.js.flow +10 -9
  104. package/relay-hooks/__flowtests__/useFragment-flowtest.js.flow +8 -7
  105. package/relay-hooks/__flowtests__/usePaginationFragment-flowtest.js.flow +10 -9
  106. package/relay-hooks/__flowtests__/useRefetchableFragment-flowtest.js.flow +10 -9
  107. package/relay-hooks/__flowtests__/utils.js.flow +8 -12
  108. package/relay-hooks/loadEntryPoint.js.flow +6 -12
  109. package/relay-hooks/loadQuery.js.flow +22 -23
  110. package/relay-hooks/preloadQuery_DEPRECATED.js.flow +29 -13
  111. package/relay-hooks/prepareEntryPoint_DEPRECATED.js.flow +6 -12
  112. package/relay-hooks/useBlockingPaginationFragment.js.flow +12 -13
  113. package/relay-hooks/useEntryPointLoader.js.flow +7 -10
  114. package/relay-hooks/useFetchTrackingRef.js.flow +2 -2
  115. package/relay-hooks/useFragment.js.flow +26 -46
  116. package/relay-hooks/useFragmentNode.js.flow +5 -7
  117. package/relay-hooks/useIsOperationNodeActive.js.flow +3 -5
  118. package/relay-hooks/useIsParentQueryActive.js.flow +3 -4
  119. package/relay-hooks/useLazyLoadQuery.js.flow +9 -10
  120. package/relay-hooks/useLazyLoadQueryNode.js.flow +11 -13
  121. package/relay-hooks/useLoadMoreFunction.js.flow +19 -27
  122. package/relay-hooks/useMemoOperationDescriptor.js.flow +5 -7
  123. package/relay-hooks/useMemoVariables.js.flow +6 -6
  124. package/relay-hooks/useMutation.js.flow +26 -26
  125. package/relay-hooks/usePaginationFragment.js.flow +37 -46
  126. package/relay-hooks/usePreloadedQuery.js.flow +13 -19
  127. package/relay-hooks/useQueryLoader.js.flow +13 -16
  128. package/relay-hooks/useRefetchableFragment.js.flow +7 -8
  129. package/relay-hooks/useRefetchableFragmentNode.js.flow +22 -30
  130. package/relay-hooks/useRelayEnvironment.js.flow +2 -4
  131. package/relay-hooks/useStaticFragmentNodeWarning.js.flow +2 -3
  132. package/relay-hooks/useSubscribeToInvalidationState.js.flow +3 -6
  133. package/relay-hooks/useSubscription.js.flow +6 -7
@@ -15,14 +15,14 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
15
15
 
16
16
  var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
17
17
 
18
- var useIsMountedRef = require('./useIsMountedRef');
19
-
20
- var useRelayEnvironment = require('./useRelayEnvironment');
21
-
22
18
  var _require = require('./loadQuery'),
23
19
  loadQuery = _require.loadQuery,
24
20
  useTrackLoadQueryInRender = _require.useTrackLoadQueryInRender;
25
21
 
22
+ var useIsMountedRef = require('./useIsMountedRef');
23
+
24
+ var useRelayEnvironment = require('./useRelayEnvironment');
25
+
26
26
  var _require2 = require('react'),
27
27
  useCallback = _require2.useCallback,
28
28
  useEffect = _require2.useEffect,
@@ -15,9 +15,13 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
15
15
 
16
16
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
17
17
 
18
+ var _require = require('./FragmentResource'),
19
+ getFragmentResourceForEnvironment = _require.getFragmentResourceForEnvironment;
20
+
18
21
  var ProfilerContext = require('./ProfilerContext');
19
22
 
20
- var invariant = require('invariant');
23
+ var _require2 = require('./QueryResource'),
24
+ getQueryResourceForEnvironment = _require2.getQueryResourceForEnvironment;
21
25
 
22
26
  var useFragmentNode = require('./useFragmentNode');
23
27
 
@@ -27,13 +31,7 @@ var useQueryLoader = require('./useQueryLoader');
27
31
 
28
32
  var useRelayEnvironment = require('./useRelayEnvironment');
29
33
 
30
- var warning = require("fbjs/lib/warning");
31
-
32
- var _require = require('./FragmentResource'),
33
- getFragmentResourceForEnvironment = _require.getFragmentResourceForEnvironment;
34
-
35
- var _require2 = require('./QueryResource'),
36
- getQueryResourceForEnvironment = _require2.getQueryResourceForEnvironment;
34
+ var invariant = require('invariant');
37
35
 
38
36
  var _require3 = require('react'),
39
37
  useCallback = _require3.useCallback,
@@ -48,6 +46,8 @@ var _require4 = require('relay-runtime'),
48
46
  getSelector = _require4.getSelector,
49
47
  getValueAtPath = _require4.getValueAtPath;
50
48
 
49
+ var warning = require("fbjs/lib/warning");
50
+
51
51
  function reducer(state, action) {
52
52
  switch (action.type) {
53
53
  case 'refetch':
@@ -260,7 +260,6 @@ function useRefetchFunction(componentDisplayName, dispatch, disposeQuery, fragme
260
260
  // all variables required by the fragment when calling `refetch()`.
261
261
  // We fill in any variables not passed by the call to `refetch()` with the
262
262
  // variables from the original parent fragment owner.
263
- // $FlowFixMe[cannot-spread-interface]
264
263
 
265
264
 
266
265
  var refetchVariables = (0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, parentVariables), fragmentVariables), providedRefetchVariables); // If the query needs an identifier value ('id' or similar) and one
@@ -310,7 +309,7 @@ function useRefetchFunction(componentDisplayName, dispatch, disposeQuery, fragme
310
309
  // - fragmentNode and parentFragmentRef are also captured by including
311
310
  // fragmentIdentifier
312
311
  // eslint-disable-next-line react-hooks/exhaustive-deps
313
- [fragmentIdentifier, dispatch, disposeQuery, identifierValue]);
312
+ [fragmentIdentifier, dispatch, disposeQuery, identifierValue, loadQuery]);
314
313
  }
315
314
 
316
315
  var debugFunctions;
@@ -319,8 +318,7 @@ if (process.env.NODE_ENV !== "production") {
319
318
  debugFunctions = {
320
319
  getInitialIDAndType: function getInitialIDAndType(memoRefetchVariables, fragmentRefPathInResponse, environment) {
321
320
  var _require5 = require('relay-runtime'),
322
- Record = _require5.Record; // $FlowFixMe[prop-missing]
323
-
321
+ Record = _require5.Record;
324
322
 
325
323
  var id = memoRefetchVariables === null || memoRefetchVariables === void 0 ? void 0 : memoRefetchVariables.id;
326
324
 
@@ -11,13 +11,13 @@
11
11
  // flowlint ambiguous-object-type:error
12
12
  'use strict';
13
13
 
14
- var ReactRelayContext = require('react-relay/ReactRelayContext');
15
-
16
14
  var invariant = require('invariant');
17
15
 
18
16
  var _require = require('react'),
19
17
  useContext = _require.useContext;
20
18
 
19
+ var ReactRelayContext = require('react-relay/ReactRelayContext');
20
+
21
21
  function useRelayEnvironment() {
22
22
  var context = useContext(ReactRelayContext);
23
23
  !(context != null) ? process.env.NODE_ENV !== "production" ? invariant(false, 'useRelayEnvironment: Expected to have found a Relay environment provided by ' + 'a `RelayEnvironmentProvider` component. ' + 'This usually means that useRelayEnvironment was used in a ' + 'component that is not a descendant of a `RelayEnvironmentProvider`. ' + 'Please make sure a `RelayEnvironmentProvider` has been rendered somewhere ' + 'as a parent or ancestor of your component.') : invariant(false) : void 0;
@@ -11,11 +11,11 @@
11
11
  // flowlint ambiguous-object-type:error
12
12
  'use strict';
13
13
 
14
- var warning = require("fbjs/lib/warning");
15
-
16
14
  var _require = require('react'),
17
15
  useRef = _require.useRef;
18
16
 
17
+ var warning = require("fbjs/lib/warning");
18
+
19
19
  function useStaticFragmentNodeWarning(fragmentNode, warningContext) {
20
20
  if (process.env.NODE_ENV !== "production") {
21
21
  // This is calling `useRef` conditionally, but based on the environment
@@ -16,7 +16,6 @@ var useRelayEnvironment = require('./useRelayEnvironment');
16
16
  var _require = require('react'),
17
17
  useEffect = _require.useEffect,
18
18
  useRef = _require.useRef;
19
-
20
19
  /**
21
20
  * This hook subscribes a callback to the invalidation state of the given data
22
21
  * ids.
@@ -26,6 +25,8 @@ var _require = require('react'),
26
25
  * re-established and the previous one will be disposed.
27
26
  * The subscription will automatically be disposed on unmount
28
27
  */
28
+
29
+
29
30
  function useSubscribeToInvalidationState(dataIDs, callback) {
30
31
  var environment = useRelayEnvironment();
31
32
  var disposableRef = useRef(null);
@@ -11,12 +11,11 @@
11
11
 
12
12
  'use strict';
13
13
 
14
- const React = require('react');
15
- const RelayEnvironmentProvider = require('../relay-hooks/RelayEnvironmentProvider');
14
+ import type {ActorIdentifier} from 'relay-runtime/multi-actor-environment';
16
15
 
16
+ const RelayEnvironmentProvider = require('../relay-hooks/RelayEnvironmentProvider');
17
17
  const useRelayActorEnvironment = require('./useRelayActorEnvironment');
18
-
19
- import type {ActorIdentifier} from 'relay-runtime/multi-actor-environment';
18
+ const React = require('react');
20
19
 
21
20
  export opaque type ActorChangePoint<TFragmentRef> = $ReadOnly<{
22
21
  __fragmentRef: TFragmentRef,
@@ -13,17 +13,15 @@
13
13
 
14
14
  'use strict';
15
15
 
16
- const ReactRelayContext = require('react-relay/ReactRelayContext');
17
-
18
- const invariant = require('invariant');
19
-
20
- const {useContext} = require('react');
21
-
22
16
  import type {
23
- IActorEnvironment,
24
17
  ActorIdentifier,
18
+ IActorEnvironment,
25
19
  } from 'relay-runtime/multi-actor-environment';
26
20
 
21
+ const invariant = require('invariant');
22
+ const {useContext} = require('react');
23
+ const ReactRelayContext = require('react-relay/ReactRelayContext');
24
+
27
25
  function useRelayActorEnvironment(
28
26
  actorIdentifier: ActorIdentifier,
29
27
  ): IActorEnvironment {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-relay",
3
3
  "description": "A framework for building GraphQL-driven React applications.",
4
- "version": "12.0.0",
4
+ "version": "13.0.0-rc.0",
5
5
  "keywords": [
6
6
  "graphql",
7
7
  "relay",
@@ -16,7 +16,7 @@
16
16
  "fbjs": "^3.0.0",
17
17
  "invariant": "^2.2.4",
18
18
  "nullthrows": "^1.1.1",
19
- "relay-runtime": "12.0.0"
19
+ "relay-runtime": "13.0.0-rc.0"
20
20
  },
21
21
  "peerDependencies": {
22
22
  "react": "^16.9.0 || ^17"
@@ -1,4 +1,4 @@
1
1
  /**
2
- * Relay v12.0.0
2
+ * Relay v13.0.0-rc.0
3
3
  */
4
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("relay-runtime"),require("invariant"),require("@babel/runtime/helpers/interopRequireDefault"),require("fbjs/lib/warning"),require("@babel/runtime/helpers/objectSpread2"),require("react-relay/ReactRelayContext"),require("@babel/runtime/helpers/createForOfIteratorHelper"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("fbjs/lib/areEqual")):"function"==typeof define&&define.amd?define(["react","relay-runtime","invariant","@babel/runtime/helpers/interopRequireDefault","fbjs/lib/warning","@babel/runtime/helpers/objectSpread2","react-relay/ReactRelayContext","@babel/runtime/helpers/createForOfIteratorHelper","@babel/runtime/helpers/toConsumableArray","@babel/runtime/helpers/defineProperty","fbjs/lib/areEqual"],t):"object"==typeof exports?exports.ReactRelayHooks=t(require("react"),require("relay-runtime"),require("invariant"),require("@babel/runtime/helpers/interopRequireDefault"),require("fbjs/lib/warning"),require("@babel/runtime/helpers/objectSpread2"),require("react-relay/ReactRelayContext"),require("@babel/runtime/helpers/createForOfIteratorHelper"),require("@babel/runtime/helpers/toConsumableArray"),require("@babel/runtime/helpers/defineProperty"),require("fbjs/lib/areEqual")):e.ReactRelayHooks=t(e.react,e["relay-runtime"],e.invariant,e["@babel/runtime/helpers/interopRequireDefault"],e["fbjs/lib/warning"],e["@babel/runtime/helpers/objectSpread2"],e["react-relay/ReactRelayContext"],e["@babel/runtime/helpers/createForOfIteratorHelper"],e["@babel/runtime/helpers/toConsumableArray"],e["@babel/runtime/helpers/defineProperty"],e["fbjs/lib/areEqual"])}(window,(function(e,t,r,n,a,i,o,u,s,c,l){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var a=t[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,r),a.l=!0,a.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)r.d(n,a,function(t){return e[t]}.bind(null,a));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=23)}([function(t,r){t.exports=e},function(e,r){e.exports=t},function(e,t,r){"use strict";var n=r(12),a=r(3),i=r(0).useContext;e.exports=function(){var e=i(n);return null==e&&a(!1,"useRelayEnvironment: Expected to have found a Relay environment provided by a `RelayEnvironmentProvider` component. This usually means that useRelayEnvironment was used in a component that is not a descendant of a `RelayEnvironmentProvider`. Please make sure a `RelayEnvironmentProvider` has been rendered somewhere as a parent or ancestor of your component."),e.environment}},function(e,t){e.exports=r},function(e,t){e.exports=n},function(e,t){e.exports=a},function(e,t,r){"use strict";var n=r(4)(r(7)),a=r(0),i=r(3),o=r(5),u=r(1),s=u.PreloadableQueryRegistry,c=u.ReplaySubject,l=u.createOperationDescriptor,f=u.getRequest,d=u.getRequestIdentifier,p=u.Observable,h=u.RelayFeatureFlags,m=u.__internal.fetchQueryDeduped,v=null,y=100001;e.exports={loadQuery:function(e,t,r,u,g){var b,R,_,P,E=null===(b=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)||void 0===b||null===(R=b.ReactCurrentDispatcher)||void 0===R?void 0:R.current;o(null==v||E!==v,"Relay: `%s` should not be called inside a React render function.",null!==(_=null==u?void 0:u.__nameForWarning)&&void 0!==_?_:"loadQuery"),y++;var k,x,S,q,w,C,I=null!==(P=null==u?void 0:u.fetchPolicy)&&void 0!==P?P:"store-or-network",F=(0,n.default)((0,n.default)({},null==u?void 0:u.networkCacheConfig),{},{force:!0}),D=!1,A=function(t,r){return D=!0,e.executeWithSource({operation:t,source:r})},N=new c,Q=p.create((function(e){return N.subscribe(e)})),O=null,M=!1,T=function(t){var n;M=!0;var a=new c;if(!0===h.ENABLE_LOAD_QUERY_REQUEST_DEDUPING){var i="raw-network-request-"+d(t,r);n=m(e,i,(function(){return e.getNetwork().execute(t,r,F)}))}else{n=e.getNetwork().execute(t,r,F)}var o=n.subscribe({error:function(e){O=e,a.error(e)},next:function(e){a.next(e)},complete:function(){a.complete()}}).unsubscribe;return x=o,p.create((function(e){var t=a.subscribe(e);return function(){t.unsubscribe(),x()}}))},U=function(t,r){!0===h.ENABLE_LOAD_QUERY_REQUEST_DEDUPING&&(M=!0);var n=m(e,t.request.identifier,r).subscribe({error:function(e){N.error(e)},next:function(e){N.next(e)},complete:function(){N.complete()}});S=n.unsubscribe},L=function(t){var n=l(t,r,F);(k=e.retain(n),"store-only"!==I)&&(("store-or-network"!==I||"available"!==e.check(n).status)&&U(n,(function(){var e=T(t.params);return A(n,e)})))};if("PreloadableConcreteRequest"===t.kind){null===(C=(q=t.params).id)&&i(!1,"Relay: `loadQuery` requires that preloadable query `%s` has a persisted query id",q.name);var j=s.get(C);if(null!=j)L(j);else{var W="store-only"===I?null:T(q),K=s.onLoad(C,(function(t){w();var n=l(t,r,F);k=e.retain(n),null!=W&&U(n,(function(){return A(n,W)}))}));w=K.dispose}}else{var V=f(t);C=null!=(q=V.params).cacheID?q.cacheID:q.id,L(V)}var B=!1,H=!1,z=!1,Y=function(){H||(k&&k.dispose(),H=!0)},G=function(){z||(D?S&&S():x&&x(),w&&w(),z=!0)};return{kind:"PreloadedQuery",environment:e,environmentProviderOptions:g,dispose:function(){B||(Y(),G(),B=!0)},releaseQuery:Y,cancelNetworkRequest:G,fetchKey:y,id:C,get isDisposed(){return B||H},get networkError(){return O},name:q.name,networkCacheConfig:F,fetchPolicy:I,source:M?Q:void 0,variables:r}},useTrackLoadQueryInRender:function(){var e,t;null===v&&(v=null===(e=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)||void 0===e||null===(t=e.ReactCurrentDispatcher)||void 0===t?void 0:t.current)}}},function(e,t){e.exports=i},function(e,t,r){"use strict";var n=r(0),a=n.useEffect,i=n.useRef;e.exports=function(){var e=i(!0);return a((function(){return e.current=!0,function(){e.current=!1}}),[]),e}},function(e,t,r){"use strict";var n=r(0).createContext({wrapPrepareQueryResource:function(e){return e()}});e.exports=n},function(e,t,r){"use strict";var n=r(2),a=r(5),i=r(15).getFragmentResourceForEnvironment,o=r(0),u=o.useEffect,s=o.useRef,c=o.useState,l=r(1).getFragmentIdentifier;e.exports=function(e,t,r){var o=n(),f=i(o),d=s(!1),p=c(0)[1],h=l(e,t),m=f.readWithIdentifier(e,t,h,r),v=s(!0);function y(){!1!==d.current&&!1!==v.current&&p((function(e){return e+1}))}return u((function(){d.current=!0;var e=f.subscribe(m,y);return function(){d.current=!1,e.dispose()}}),[o,h]),null!=t&&(void 0===m.data||Array.isArray(m.data)&&m.data.length>0&&m.data.every((function(e){return void 0===e})))&&a(!1,"Relay: Expected to have been able to read non-null data for fragment `%s` declared in `%s`, since fragment reference was non-null. Make sure that that `%s`'s parent isn't holding on to and/or passing a fragment reference for data that has been deleted.",e.name,r,r),{data:m.data,disableStoreUpdates:function(){v.current=!1},enableStoreUpdates:function(){v.current=!0,f.checkMissedUpdates(m)[0]&&y()}}}},function(e,t,r){"use strict";var n=r(5),a=r(0).useRef;e.exports=function(e,t){var r=a(e.name);n(r.current===e.name,"Relay: The %s has to remain the same over the lifetime of a component. Changing it is not supported and will result in unexpected behavior.",t)}},function(e,t){e.exports=o},function(e,t,r){"use strict";var n=r(6).loadQuery;e.exports=function e(t,r,a){var i=null;null==r.root.getModuleIfRequired()&&(i=r.root.load());var o=r.getPreloadProps(a),u=o.queries,s=o.entryPoints,c=o.extraProps,l={},f={};null!=u&&Object.keys(u).forEach((function(e){var r=u[e],a=r.environmentProviderOptions,i=r.options,o=r.parameters,s=r.variables,c=t.getEnvironment(a);l[e]=n(c,o,s,{fetchPolicy:null==i?void 0:i.fetchPolicy,networkCacheConfig:null==i?void 0:i.networkCacheConfig,__nameForWarning:"loadEntryPoint"},a)})),null!=s&&Object.keys(s).forEach((function(r){var n=s[r];if(null!=n){var a=n.entryPoint,i=n.entryPointParams;f[r]=e(t,a,i)}}));var d=!1;return{dispose:function(){d||(null!=l&&Object.values(l).forEach((function(e){(0,e.dispose)()})),null!=f&&Object.values(f).forEach((function(e){(0,e.dispose)()})),d=!0)},entryPoints:f,extraProps:null!=c?c:null,getComponent:function(){var e,t=r.root.getModuleIfRequired();if(null==t)throw i=null!==(e=i)&&void 0!==e?e:r.root.load();return t},get isDisposed(){return d},queries:l,rootModuleID:r.root.getModuleId()}}},function(e,t){e.exports=u},function(e,t,r){"use strict";var n=r(4),a=n(r(7)),i=n(r(28)),o=r(16),u=r(3),s=r(1),c=s.getFragmentIdentifier,l=s.getPendingOperationsForFragment,f=s.getSelector,d=s.isPromise,p=s.recycleNodesInto,h=s.reportMissingRequiredFields,m="function"==typeof WeakMap,v=Object.freeze([]);function y(e){return Array.isArray(e)?e.some((function(e){return e.isMissingData})):e.isMissingData}function g(e,t,r){return Array.isArray(t)?{cacheKey:e,snapshot:t,data:t.map((function(e){return e.data})),isMissingData:y(t),storeEpoch:r}:{cacheKey:e,snapshot:t,data:t.data,isMissingData:y(t),storeEpoch:r}}var b=function(){function e(e){this._environment=e,this._cache=o.create(1e6)}var t=e.prototype;return t.read=function(e,t,r,n){return this.readWithIdentifier(e,t,c(e,t),r,n)},t.readWithIdentifier=function(e,t,r,n,a){var i,o=this._environment;if(null==t)return{cacheKey:r,data:null,isMissingData:!1,snapshot:null,storeEpoch:0};var s=o.getStore().getEpoch();if(!0===(null==e||null===(i=e.metadata)||void 0===i?void 0:i.plural)&&(Array.isArray(t)||u(!1,"Relay: Expected fragment pointer%s for fragment `%s` to be an array, instead got `%s`. Remove `@relay(plural: true)` from fragment `%s` to allow the prop to be an object.",null!=a?" for key `".concat(a,"`"):"",e.name,typeof t,e.name),0===t.length))return{cacheKey:r,data:v,isMissingData:!1,snapshot:v,storeEpoch:s};var c=this._cache.get(r);if(null!=c){if("pending"===c.kind&&d(c.promise))throw o.__log({name:"suspense.fragment",data:c.result.data,fragment:e,isRelayHooks:!0,isMissingData:c.result.isMissingData,isPromiseCached:!0,pendingOperations:c.pendingOperations}),c.promise;if("done"===c.kind&&c.result.snapshot)return this._reportMissingRequiredFieldsInSnapshot(c.result.snapshot),c.result}var l=f(e,t);null==l&&u(!1,"Relay: Expected to receive an object where `...%s` was spread, but the fragment reference was not found`. This is most likely the result of:\n- Forgetting to spread `%s` in `%s`'s parent's fragment.\n- Conditionally fetching `%s` but unconditionally passing %s prop to `%s`. If the parent fragment only fetches the fragment conditionally - with e.g. `@include`, `@skip`, or inside a `... on SomeType { }` spread - then the fragment reference will not exist. In this case, pass `null` if the conditions for evaluating the fragment are not met (e.g. if the `@include(if)` value is false.)",e.name,e.name,n,e.name,null==a?"a fragment reference":"the `".concat(a,"`"),n);var p="PluralReaderSelector"===l.kind?l.selectors.map((function(e){return o.lookup(e)})):o.lookup(l),h=g(r,p,s);if(!h.isMissingData)return this._reportMissingRequiredFieldsInSnapshot(p),this._cache.set(r,{kind:"done",result:h}),h;var m="PluralReaderSelector"===l.kind?l.selectors[0].owner:l.owner,y=this._getAndSavePromiseForFragmentRequestInFlight(r,e,m,h);if(null!=y&&d(y.promise))throw o.__log({name:"suspense.fragment",data:h.data,fragment:e,isRelayHooks:!0,isPromiseCached:!1,isMissingData:h.isMissingData,pendingOperations:y.pendingOperations}),y.promise;return this._reportMissingRequiredFieldsInSnapshot(p),g(r,p,s)},t._reportMissingRequiredFieldsInSnapshot=function(e){var t=this;Array.isArray(e)?e.forEach((function(e){null!=e.missingRequiredFields&&h(t._environment,e.missingRequiredFields)})):null!=e.missingRequiredFields&&h(this._environment,e.missingRequiredFields)},t.readSpec=function(e,t,r){var n={};for(var a in e)n[a]=this.read(e[a],t[a],r,a);return n},t.subscribe=function(e,t){var r=this,n=this._environment,a=e.cacheKey,i=e.snapshot;if(!i)return{dispose:function(){}};var o=this.checkMissedUpdates(e),s=o[0],c=o[1];s&&t();var l=[];return Array.isArray(i)?(Array.isArray(c)||u(!1,"Relay: Expected snapshots to be plural. If you're seeing this, this is likely a bug in Relay."),c.forEach((function(e,i){l.push(n.subscribe(e,(function(e){var o=n.getStore().getEpoch();r._updatePluralSnapshot(a,c,e,i,o),t()})))}))):((null==c||Array.isArray(c))&&u(!1,"Relay: Expected snapshot to be singular. If you're seeing this, this is likely a bug in Relay."),l.push(n.subscribe(c,(function(e){var i=n.getStore().getEpoch();r._cache.set(a,{kind:"done",result:g(a,e,i)}),t()})))),{dispose:function(){l.map((function(e){return e.dispose()})),r._cache.delete(a)}}},t.subscribeSpec=function(e,t){var r=this,n=Object.keys(e).map((function(n){return r.subscribe(e[n],t)}));return{dispose:function(){n.forEach((function(e){e.dispose()}))}}},t.checkMissedUpdates=function(e){var t=this._environment,r=e.snapshot;if(!r)return[!1,null];var n;if(n=t.getStore().getEpoch(),e.storeEpoch===n)return[!1,e.snapshot];var i=e.cacheKey;if(Array.isArray(r)){var o=!1,u=[];return r.forEach((function(e,r){var n=t.lookup(e.selector),i=e.data,s=n.data,c=p(i,s);c!==i&&(n=(0,a.default)((0,a.default)({},n),{},{data:c}),o=!0),u[r]=n})),o&&this._cache.set(i,{kind:"done",result:g(i,u,n)}),[o,u]}var s=t.lookup(r.selector),c=r.data,l=s.data,f=p(c,l),d={data:f,isMissingData:s.isMissingData,seenRecords:s.seenRecords,selector:s.selector,missingRequiredFields:s.missingRequiredFields};return f!==c&&this._cache.set(i,{kind:"done",result:g(i,d,n)}),[f!==c,d]},t.checkMissedUpdatesSpec=function(e){var t=this;return Object.keys(e).some((function(r){return t.checkMissedUpdates(e[r])[0]}))},t._getAndSavePromiseForFragmentRequestInFlight=function(e,t,r,n){var a=this,i=l(this._environment,t,r);if(null==i)return null;var o=i.promise,u=i.pendingOperations,s=o.then((function(){a._cache.delete(e)})).catch((function(t){a._cache.delete(e)}));return s.displayName=o.displayName,this._cache.set(e,{kind:"pending",pendingOperations:u,promise:s,result:n}),{promise:s,pendingOperations:u}},t._updatePluralSnapshot=function(e,t,r,n,a){var o,u=this._cache.get(e);if(d(u))R(r.selector.node.name);else{var s=null==u||null===(o=u.result)||void 0===o?void 0:o.snapshot;if(!s||Array.isArray(s)){var c=s?(0,i.default)(s):(0,i.default)(t);c[n]=r,this._cache.set(e,{kind:"done",result:g(e,c,a)})}else R(r.selector.node.name)}},e}();function R(e){u(!1,"Relay: Expected to find cached data for plural fragment `%s` when receiving a subscription. If you're seeing this, this is likely a bug in Relay.",e)}function _(e){return new b(e)}var P=m?new WeakMap:new Map;e.exports={createFragmentResource:_,getFragmentResourceForEnvironment:function(e){var t=P.get(e);if(t)return t;var r=_(e);return P.set(e,r),r}}},function(e,t,r){"use strict";var n=r(3),a=function(){function e(e){this._capacity=e,this._capacity>0||n(!1,"LRUCache: Unable to create instance of cache with zero or negative capacity."),this._map=new Map}var t=e.prototype;return t.set=function(e,t){if(this._map.delete(e),this._map.set(e,t),this._map.size>this._capacity){var r=this._map.keys().next();r.done||this._map.delete(r.value)}},t.get=function(e){var t=this._map.get(e);return null!=t&&(this._map.delete(e),this._map.set(e,t)),t},t.has=function(e){return this._map.has(e)},t.delete=function(e){this._map.delete(e)},t.size=function(){return this._map.size},t.capacity=function(){return this._capacity-this._map.size},t.clear=function(){this._map.clear()},e}();e.exports={create:function(e){return new a(e)}}},function(e,t,r){"use strict";var n=r(9),a=r(0),i=r(18),o=r(10),u=r(2),s=r(19),c=s.getQueryResourceForEnvironment,l=s.getQueryCacheIdentifier,f=a.useContext,d=a.useEffect,p=a.useState,h=a.useRef;e.exports=function(e){var t=e.query,r=e.componentDisplayName,a=e.fetchObservable,s=e.fetchPolicy,m=e.fetchKey,v=e.renderPolicy,y=u(),g=f(n),b=c(y),R=p(0),_=R[0],P=R[1],E=i(),k=E.startFetch,x=E.completeFetch,S="".concat(_,"-").concat(null!=m?m:""),q=l(y,t,s,v,S),w=g.wrapPrepareQueryResource((function(){return b.prepareWithIdentifier(q,t,a,s,v,{start:k,complete:x,error:x},g)})),C=h(!1);d((function(){return function(){C.current=!0}}),[]),d((function(){if(!0===C.current)return C.current=!1,void P((function(e){return e+1}));var e=b.retain(w,g);return function(){e.dispose()}}),[y,q]),d((function(){b.releaseTemporaryRetain(w)}));var I=w.fragmentNode,F=w.fragmentRef;return o(I,F,r).data}},function(e,t,r){"use strict";var n=r(0),a=n.useCallback,i=n.useEffect,o=n.useRef;e.exports=function(){var e=o(null),t=o(!1),r=a((function(){null!=e.current&&(e.current.unsubscribe(),e.current=null),t.current=!1}),[]),n=a((function(r){e.current=r,t.current=!0}),[]),u=a((function(){e.current=null,t.current=!1}),[]);return i((function(){return r}),[r]),{isFetchingRef:t,startFetch:n,disposeFetch:r,completeFetch:u}}},function(e,t,r){"use strict";var n=r(4),a=n(r(7)),i=n(r(30)),o=r(16),u=r(3),s=r(5),c=r(1).isPromise,l="function"==typeof WeakMap;function f(e){return void 0!==e.request.node.params.metadata.live}function d(e,t,r,n,a){var i=null!=r?r:"store-or-network",o=null!=n?n:e.UNSTABLE_getDefaultRenderPolicy(),u="".concat(i,"-").concat(o,"-").concat(t.request.identifier);return null!=a?"".concat(u,"-").concat(a):u}function p(e,t){var r={__id:e.fragment.dataID,__fragments:(0,i.default)({},e.fragment.node.name,e.request.variables),__fragmentOwner:e.request};return{cacheIdentifier:t,fragmentNode:e.request.node.fragment,fragmentRef:r,operation:e}}var h=2e5;function m(e,t,r,n,a,i){var o=f(t),s=n,c=0,l=null,d=null,p=a,m=function(e){return 1===++c&&(l=e.retain(t)),{dispose:function(){0===(c=Math.max(0,c-1))&&(null==l&&u(!1,"Relay: Expected disposable to release query to be defined.If you're seeing this, this is likely a bug in Relay."),l.dispose(),l=null),i(v)}}},v={cacheIdentifier:e,id:h++,processedPayloadsCount:0,operationAvailability:r,getValue:function(){return s},setValue:function(e){s=e},getRetainCount:function(){return c},getNetworkSubscription:function(){return p},setNetworkSubscription:function(e){o&&null!=p&&p.unsubscribe(),p=e},temporaryRetain:function(e){if(e.isServer())return{dispose:function(){}};var t=m(e),r=null,n=function(){clearTimeout(r),r=null,d=null,t.dispose(),o&&c<=0&&null!=p&&p.unsubscribe()};return r=setTimeout(n,3e5),null!=d&&d(),d=n,{dispose:function(){d&&d()}}},permanentRetain:function(e){var t=m(e);return null!=d&&(d(),d=null),{dispose:function(){t.dispose(),o&&c<=0&&null!=p&&p.unsubscribe()}}},releaseTemporaryRetain:function(){null!=d&&(d(),d=null)}};return v}var v=function(){function e(e){var t=this;(0,i.default)(this,"_clearCacheEntry",(function(e){e.getRetainCount()<=0&&t._cache.delete(e.cacheIdentifier)})),this._environment=e,this._cache=o.create(1e3)}var t=e.prototype;return t.prepare=function(e,t,r,n,a,i,o){var u=d(this._environment,e,r,n,i);return this.prepareWithIdentifier(u,e,t,r,n,a,o)},t.prepareWithIdentifier=function(e,t,r,n,i,o,u){var s=this._environment,l=null!=n?n:"store-or-network",f=null!=i?i:s.UNSTABLE_getDefaultRenderPolicy(),d=this._cache.get(e),p=null,h=null!=d;null==d&&(d=this._fetchAndSaveQuery(e,t,r,l,f,u,(0,a.default)((0,a.default)({},o),{},{unsubscribe:function(e){null!=p&&p.dispose();var t=null==o?void 0:o.unsubscribe;t&&t(e)}}))),p=d.temporaryRetain(s);var m=d.getValue();if(c(m))throw s.__log({name:"suspense.query",fetchPolicy:l,isPromiseCached:h,operation:t,queryAvailability:d.operationAvailability,renderPolicy:f}),m;if(m instanceof Error)throw m;return m},t.retain=function(e,t){var r=this._environment,n=e.cacheIdentifier,a=e.operation,i=this._getOrCreateCacheEntry(n,a,null,e,null),o=i.permanentRetain(r);return r.__log({name:"queryresource.retain",profilerContext:t,resourceID:i.id}),{dispose:function(){o.dispose()}}},t.releaseTemporaryRetain=function(e){var t=this._cache.get(e.cacheIdentifier);null!=t&&t.releaseTemporaryRetain()},t.TESTS_ONLY__getCacheEntry=function(e,t,r,n){var a=d(this._environment,e,t,r,n);return this._cache.get(a)},t._getOrCreateCacheEntry=function(e,t,r,n,a){var i=this._cache.get(e);return null==i&&(i=m(e,t,r,n,a,this._clearCacheEntry),this._cache.set(e,i)),i},t._fetchAndSaveQuery=function(e,t,r,n,i,o,c){var l,d,h=this,v=this._environment,y=v.check(t),g=y.status,b="available"===g,R=b||"partial"===i&&"stale"!==g,_=function(){};switch(n){case"store-only":l=!1,d=!0;break;case"store-or-network":l=!b,d=R;break;case"store-and-network":l=!0,d=R;break;case"network-only":default:l=!0,d=!1}if(d){var P=p(t,e),E=m(e,t,y,P,null,this._clearCacheEntry);this._cache.set(e,E)}if(l){var k,x=p(t,e);r.subscribe({start:function(r){k=r;var n=h._cache.get(e);n&&n.setNetworkSubscription(k);var i=null==c?void 0:c.start;i&&i((0,a.default)((0,a.default)({},r),{},{unsubscribe:function(){f(t)&&r.unsubscribe()}}))},next:function(){var r=h._getOrCreateCacheEntry(e,t,y,x,k);r.processedPayloadsCount+=1,r.setValue(x),_();var n=null==c?void 0:c.next;null!=n&&n(v.lookup(t.fragment))},error:function(r){var n=h._getOrCreateCacheEntry(e,t,y,r,k);0===n.processedPayloadsCount?n.setValue(r):s(!1,"QueryResource: An incremental payload for query `%` returned an error: `%`:`%`.",t.fragment.node.name,r.message,r.stack),_(),k=null,n.setNetworkSubscription(null);var a=null==c?void 0:c.error;a&&a(r)},complete:function(){_(),k=null;var t=h._cache.get(e);t&&t.setNetworkSubscription(null);var r=null==c?void 0:c.complete;r&&r()},unsubscribe:null==c?void 0:c.unsubscribe});var S=this._cache.get(e);if(!S){var q=new Promise((function(e){_=e}));q.displayName="Relay("+t.fragment.node.name+")",S=m(e,t,y,q,k,this._clearCacheEntry),this._cache.set(e,S)}}else{var w=null==c?void 0:c.complete;w&&w()}var C=this._cache.get(e);return null==C&&u(!1,"Relay: Expected to have cached a result when attempting to fetch query.If you're seeing this, this is likely a bug in Relay."),v.__log({name:"queryresource.fetch",resourceID:C.id,operation:t,profilerContext:o,fetchPolicy:n,renderPolicy:i,queryAvailability:y,shouldFetch:l}),C},e}();function y(e){return new v(e)}var g=l?new WeakMap:new Map;e.exports={createQueryResource:y,getQueryResourceForEnvironment:function(e){var t=g.get(e);if(t)return t;var r=y(e);return g.set(e,r),r},getQueryCacheIdentifier:d}},function(e,t,r){"use strict";var n=r(0),a=r(31),i=r(1),o=i.createOperationDescriptor,u=i.getRequest,s=n.useMemo;e.exports=function(e,t,r){var n=a(t)[0],i=a(r||{})[0];return s((function(){return o(u(e),n,i)}),[e,n,i])}},function(e,t,r){"use strict";var n,a=r(4)(r(7)),i=r(9),o=r(3),u=r(10),s=r(8),c=r(22),l=r(2),f=r(5),d=r(15).getFragmentResourceForEnvironment,p=r(19).getQueryResourceForEnvironment,h=r(0),m=h.useCallback,v=h.useContext,y=h.useReducer,g=r(1),b=g.__internal.fetchQuery,R=g.createOperationDescriptor,_=g.getFragmentIdentifier,P=g.getRefetchMetadata,E=g.getSelector,k=g.getValueAtPath;function x(e,t){switch(t.type){case"refetch":var r;return(0,a.default)((0,a.default)({},e),{},{fetchPolicy:t.fetchPolicy,mirroredEnvironment:null!==(r=t.refetchEnvironment)&&void 0!==r?r:e.mirroredEnvironment,onComplete:t.onComplete,refetchEnvironment:t.refetchEnvironment,refetchQuery:t.refetchQuery,renderPolicy:t.renderPolicy});case"reset":return{fetchPolicy:void 0,mirroredEnvironment:t.environment,mirroredFragmentIdentifier:t.fragmentIdentifier,onComplete:void 0,refetchQuery:null,renderPolicy:void 0};default:throw t.type,new Error("useRefetchableFragmentNode: Unexpected action type")}}n={getInitialIDAndType:function(e,t,n){var a=r(1).Record,i=null==e?void 0:e.id;if(1!==t.length||"node"!==t[0]||null==i)return null;var o=n.getStore().getSource().get(i),u=o&&a.getType(o);return null==u?null:{id:i,typename:u}},checkSameTypeAfterRefetch:function(e,t,n,a){var i=r(1).Record;if(e){var o=t.getStore().getSource().get(e.id),u=o&&i.getType(o);u!==e.typename&&f(!1,"Relay: Call to `refetch` returned data with a different __typename: was `%s`, now `%s`, on `%s` in `%s`. Please make sure the server correctly implementsunique id requirement.",e.typename,u,n.name,a)}},checkSameIDAfterRefetch:function(e,t,n,a){if(null!=e){var i=t[r(1).ID_KEY];null!=i&&i!==e.id&&f(!1,"Relay: Call to `refetch` returned a different id, expected `%s`, got `%s`, on `%s` in `%s`. Please make sure the server correctly implements unique id requirement.",i,e.id,n.name,a)}}},e.exports=function(e,t,r){var h=l(),g=P(e,r),S=g.refetchableRequest,q=g.fragmentRefPathInResponse,w=g.identifierField,C=_(e,t),I=y(x,{fetchPolicy:void 0,mirroredEnvironment:h,mirroredFragmentIdentifier:C,onComplete:void 0,refetchEnvironment:null,refetchQuery:null,renderPolicy:void 0}),F=I[0],D=I[1],A=F.fetchPolicy,N=F.mirroredEnvironment,Q=F.mirroredFragmentIdentifier,O=F.onComplete,M=F.refetchEnvironment,T=F.refetchQuery,U=F.renderPolicy,L=null!=M?M:h,j=p(L),W=d(L),K=v(i),V=L!==N||C!==Q,B=c(S),H=B[0],z=B[1],Y=B[2],G=t;if(V)D({type:"reset",environment:L,fragmentIdentifier:C}),Y();else if(null!=T&&null!=H){var X;X=n.getInitialIDAndType(T.request.variables,q,L);var J=function(e){O&&O(null!=e?e:null)},Z=null!=H.source?H.source:b(L,T),$=K.wrapPrepareQueryResource((function(){return j.prepare(T,Z,A,U,{error:J,complete:function(){n.checkSameTypeAfterRefetch(X,L,e,r),J()}},H.fetchKey,K)})),ee=W.read($.fragmentNode,$.fragmentRef,r).data;null==ee&&o(!1,"Relay: Expected to be able to read refetch query response. If you're seeing this, this is likely a bug in Relay."),G=k(ee,q),n.checkSameIDAfterRefetch(X,G,e,r)}var te=u(e,G,r),re=te.data,ne=te.disableStoreUpdates,ae=te.enableStoreUpdates;return{fragmentData:re,fragmentRef:G,refetch:function(e,t,r,n,i,o,u,c,l,d,p){var h=s(),v=null!=c&&null!=n&&"object"==typeof n?n[c]:null;return m((function(n,i){if(!0!==h.current)return f(!1,"Relay: Unexpected call to `refetch` on unmounted component for fragment `%s` in `%s`. It looks like some instances of your component are still trying to fetch data but they already unmounted. Please make sure you clear all timers, intervals, async calls, etc that may trigger a fetch.",o.name,e),{dispose:function(){}};null==d&&f(!1,"Relay: Unexpected call to `refetch` while using a null fragment ref for fragment `%s` in `%s`. When calling `refetch`, we expect initial fragment data to be non-null. Please make sure you're passing a valid fragment ref to `%s` before calling `refetch`, or make sure you pass all required variables to `refetch`.",o.name,e,e);var u,s,m=null==i?void 0:i.__environment,y=null==i?void 0:i.fetchPolicy,g=null==i?void 0:i.UNSTABLE_renderPolicy,b=null==i?void 0:i.onComplete,_=E(o,d);if(null==_)u={},s={};else if("PluralReaderSelector"===_.kind){var P,k,x,S;u=null!==(P=null===(k=_.selectors[0])||void 0===k?void 0:k.owner.variables)&&void 0!==P?P:{},s=null!==(x=null===(S=_.selectors[0])||void 0===S?void 0:S.variables)&&void 0!==x?x:{}}else u=_.owner.variables,s=_.variables;var q=(0,a.default)((0,a.default)((0,a.default)({},u),s),n);null==c||n.hasOwnProperty("id")||("string"!=typeof v&&f(!1,"Relay: Expected result to have a string `%s` in order to refetch, got `%s`.",c,v),q.id=v);var w=R(p,q,{force:!0});return l(w.request.variables,{fetchPolicy:y,__environment:m,__nameForWarning:"refetch"}),t({type:"refetch",fetchPolicy:y,onComplete:b,refetchEnvironment:m,refetchQuery:w,renderPolicy:g}),{dispose:r}}),[i,t,r,v])}(r,D,Y,re,C,e,0,w,z,t,S),disableStoreUpdates:ne,enableStoreUpdates:ae}}},function(e,t,r){"use strict";var n=r(4)(r(14)),a=r(8),i=r(2),o=r(6),u=o.loadQuery,s=o.useTrackLoadQueryInRender,c=r(0),l=c.useCallback,f=c.useEffect,d=c.useRef,p=c.useState,h=r(1).getRequest,m={kind:"NullQueryReference"};function v(e){return"PreloadableConcreteRequest"===e.kind?void 0!==e.params.metadata.live:void 0!==h(e).params.metadata.live}e.exports=function(e,t){var r=null!=t?t:m,o=i();s();var c=a(),h=d(new Set([r])),y=p((function(){return r})),g=y[0],b=y[1],R=p((function(){return r})),_=R[0],P=R[1];r!==_&&(h.current.add(r),P(r),b(r));var E=l((function(){c.current&&(h.current.add(m),b(m))}),[c]),k=l((function(t,r){var n=null!=r&&r.hasOwnProperty("__environment")?{fetchPolicy:r.fetchPolicy,networkCacheConfig:r.networkCacheConfig,__nameForWarning:r.__nameForWarning}:r;if(c.current){var a,i=u(null!==(a=null==r?void 0:r.__environment)&&void 0!==a?a:o,e,t,n);h.current.add(i),b(i)}}),[o,e,b,c]),x=d(!1);return f((function(){return function(){x.current=!0}}),[]),f((function(){if(!0===x.current)return x.current=!1,void("NullQueryReference"!==g.kind&&k(g.variables,{fetchPolicy:g.fetchPolicy,networkCacheConfig:g.networkCacheConfig}));var t=h.current;if(c.current){var r,a=(0,n.default)(t);try{for(a.s();!(r=a.n()).done;){var i=r.value;if(i===g)break;t.delete(i),"NullQueryReference"!==i.kind&&(v(e)?i.dispose&&i.dispose():i.releaseQuery&&i.releaseQuery())}}catch(e){a.e(e)}finally{a.f()}}}),[g,c,k,e]),f((function(){return function(){var t,r=(0,n.default)(h.current);try{for(r.s();!(t=r.n()).done;){var a=t.value;"NullQueryReference"!==a.kind&&(v(e)?a.dispose&&a.dispose():a.releaseQuery&&a.releaseQuery())}}catch(e){r.e(e)}finally{r.f()}}}),[e]),["NullQueryReference"===g.kind?null:g,k,E]}},function(e,t,r){"use strict";var n=r(24),a=r(25),i=r(1),o=r(13),u=r(26),s=r(27),c=r(29),l=r(33),f=r(34),d=r(37),p=r(22),h=r(38),m=r(2),v=r(39),y=r(40),g=r(6).loadQuery;e.exports={ConnectionHandler:i.ConnectionHandler,applyOptimisticMutation:i.applyOptimisticMutation,commitLocalUpdate:i.commitLocalUpdate,commitMutation:i.commitMutation,graphql:i.graphql,readInlineData:i.readInlineData,requestSubscription:i.requestSubscription,EntryPointContainer:n,RelayEnvironmentProvider:a,fetchQuery:i.fetchQuery,loadQuery:g,loadEntryPoint:o,useFragment:s,useLazyLoadQuery:c,useEntryPointLoader:u,useQueryLoader:p,useMutation:l,usePaginationFragment:f,usePreloadedQuery:d,useRefetchableFragment:h,useRelayEnvironment:m,useSubscribeToInvalidationState:v,useSubscription:y}},function(e,t,r){"use strict";var n=r(9),a=r(0),i=r(2),o=r(5),u=r(0),s=u.useContext,c=u.useEffect;e.exports=function(e){var t=e.entryPointReference,r=e.props;o(!1===t.isDisposed,"<EntryPointContainer>: Expected entryPointReference to not be disposed yet. This is because disposing the entrypoint marks it for future garbage collection, and as such may no longer be present in the Relay store. In the future, this will become a hard error.");var u=t.getComponent,l=t.queries,f=t.entryPoints,d=t.extraProps,p=t.rootModuleID,h=u(),m=s(n),v=i();return c((function(){v.__log({name:"entrypoint.root.consume",profilerContext:m,rootModuleID:p})}),[v,m,p]),a.createElement(h,{entryPoints:f,extraProps:d,props:r,queries:l})}},function(e,t,r){"use strict";var n=r(0),a=r(12),i=n.useMemo;e.exports=function(e){var t=e.children,r=e.environment,o=e.getEnvironmentForActor,u=i((function(){return{environment:r,getEnvironmentForActor:o}}),[r,o]);return n.createElement(a.Provider,{value:u},t)}},function(e,t,r){"use strict";var n=r(4)(r(14)),a=r(13),i=r(8),o=r(6).useTrackLoadQueryInRender,u=r(0),s=u.useCallback,c=u.useEffect,l=u.useRef,f=u.useState,d={kind:"NullEntryPointReference"};e.exports=function(e,t,r){var u,p,h,m;o();var v=null!==(u=null==r||null===(p=r.TEST_ONLY__initialEntryPointData)||void 0===p?void 0:p.entryPointReference)&&void 0!==u?u:d,y=null!==(h=null==r||null===(m=r.TEST_ONLY__initialEntryPointData)||void 0===m?void 0:m.entryPointParams)&&void 0!==h?h:null,g=i(),b=l(new Set([v])),R=f(v),_=R[0],P=R[1],E=f(y),k=E[0],x=E[1],S=s((function(){if(g.current){var e={kind:"NullEntryPointReference"};b.current.add(e),P(e)}}),[P,g]),q=s((function(r){if(g.current){var n=a(e,t,r);b.current.add(n),P(n),x(r)}}),[e,t,P,g]),w=l(!1);return c((function(){return function(){w.current=!0}}),[]),c((function(){if(!0===w.current)return w.current=!1,void("NullEntryPointReference"!==_.kind&&null!=k&&q(k));var e=b.current;if(g.current){var t,r=(0,n.default)(e);try{for(r.s();!(t=r.n()).done;){var a=t.value;if(a===_)break;e.delete(a),"NullEntryPointReference"!==a.kind&&a.dispose()}}catch(e){r.e(e)}finally{r.f()}}}),[_,k,q,g]),c((function(){return function(){var e,t=(0,n.default)(b.current);try{for(t.s();!(e=t.n()).done;){var r=e.value;"NullEntryPointReference"!==r.kind&&r.dispose()}}catch(e){t.e(e)}finally{t.f()}}}),[]),["NullEntryPointReference"===_.kind?null:_,q,S]}},function(e,t,r){"use strict";var n=r(10),a=r(11),i=r(6).useTrackLoadQueryInRender,o=r(0).useDebugValue,u=r(1).getFragment;e.exports=function(e,t){i();var r=u(e);a(r,"first argument of useFragment()");var s=n(r,t,"useFragment()").data;return o({fragment:r.name,data:s}),s}},function(e,t){e.exports=s},function(e,t,r){"use strict";var n=r(17),a=r(20),i=r(2),o=r(6).useTrackLoadQueryInRender,u=r(1).__internal.fetchQuery;e.exports=function(e,t,r){o();var s=i(),c=a(e,t,r&&r.networkCacheConfig?r.networkCacheConfig:{force:!0});return n({componentDisplayName:"useLazyLoadQuery()",fetchKey:null==r?void 0:r.fetchKey,fetchObservable:u(s,c),fetchPolicy:null==r?void 0:r.fetchPolicy,query:c,renderPolicy:null==r?void 0:r.UNSTABLE_renderPolicy})}},function(e,t){e.exports=c},function(e,t,r){"use strict";var n=r(0),a=r(32),i=n.useMemo,o=n.useRef,u=n.useState;e.exports=function(e){var t,r,n=o(0),s=u(e),c=s[0],l=s[1];return a(e,c)||(n.current=(null!==(r=n.current)&&void 0!==r?r:0)+1,l(e)),[i((function(){return e}),[n.current]),null!==(t=n.current)&&void 0!==t?t:0]}},function(e,t){e.exports=l},function(e,t,r){"use strict";var n=r(4)(r(7)),a=r(0),i=r(2),o=r(1).commitMutation,u=a.useState,s=a.useEffect,c=a.useRef,l=a.useCallback,f=r(8);e.exports=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o,r=i(),a=f(),d=c(r),p=c(e),h=c(new Set),m=u(!1),v=m[0],y=m[1],g=l((function(t){d.current===r&&p.current===e&&(h.current.delete(t),a.current&&y(h.current.size>0))}),[r,a,e]);s((function(){d.current===r&&p.current===e||(h.current=new Set,a.current&&y(!1),d.current=r,p.current=e)}),[r,a,e]);var b=l((function(i){var o=t(r,(0,n.default)((0,n.default)({},i),{},{mutation:e,onCompleted:function(e,t){g(o),i.onCompleted&&i.onCompleted(e,t)},onError:function(e){g(o),i.onError&&i.onError(e)},onUnsubscribe:function(){g(o),i.onUnsubscribe&&i.onUnsubscribe()}}));return h.current.add(o),a.current&&y(!0),o}),[g,t,r,a,e]);return[b,v]}},function(e,t,r){"use strict";var n=r(4)(r(7)),a=r(35),i=r(21),o=r(11),u=r(0),s=u.useCallback,c=u.useDebugValue,l=u.useState,f=r(1),d=f.getFragment,p=f.getFragmentIdentifier,h=f.getPaginationMetadata;function m(e){var t=l(!1),r=t[0],i=t[1],o={start:function(){return i(!0)},complete:function(){return i(!1)},error:function(){return i(!1)}},u=a((0,n.default)((0,n.default)({},e),{},{observer:o,onReset:function(){return i(!1)}}));return[u[0],u[1],r,u[2]]}e.exports=function(e,t){var r=d(e);o(r,"first argument of usePaginationFragment()");var a=h(r,"usePaginationFragment()"),u=a.connectionPathInFragmentData,l=a.paginationRequest,f=a.paginationMetadata,v=a.identifierField,y=i(r,t,"usePaginationFragment()"),g=y.fragmentData,b=y.fragmentRef,R=y.refetch,_=p(r,b),P=m({componentDisplayName:"usePaginationFragment()",connectionPathInFragmentData:u,direction:"backward",fragmentData:g,fragmentIdentifier:_,fragmentNode:r,fragmentRef:b,identifierField:v,paginationMetadata:f,paginationRequest:l}),E=P[0],k=P[1],x=P[2],S=P[3],q=m({componentDisplayName:"usePaginationFragment()",connectionPathInFragmentData:u,direction:"forward",fragmentData:g,fragmentIdentifier:_,fragmentNode:r,fragmentRef:b,identifierField:v,paginationMetadata:f,paginationRequest:l}),w=q[0],C=q[1],I=q[2],F=q[3],D=s((function(e,t){return F(),S(),R(e,(0,n.default)((0,n.default)({},t),{},{__environment:void 0}))}),[F,S,R]);return c({fragment:r.name,data:g,hasNext:C,isLoadingNext:I,hasPrevious:k,isLoadingPrevious:x}),{data:g,loadNext:w,loadPrevious:E,hasNext:C,hasPrevious:k,isLoadingNext:I,isLoadingPrevious:x,refetch:D}}},function(e,t,r){"use strict";var n=r(4)(r(7)),a=r(3),i=r(18),o=r(8),u=r(36),s=r(2),c=r(5),l=r(0),f=l.useCallback,d=l.useEffect,p=l.useState,h=r(1),m=h.ConnectionInterface,v=h.__internal.fetchQuery,y=h.createOperationDescriptor,g=h.getPaginationVariables,b=h.getValueAtPath,R=h.getSelector;e.exports=function(e){var t=e.direction,r=e.fragmentNode,l=e.fragmentRef,h=e.fragmentIdentifier,_=e.fragmentData,P=e.connectionPathInFragmentData,E=e.paginationRequest,k=e.paginationMetadata,x=e.componentDisplayName,S=e.observer,q=e.onReset,w=e.identifierField,C=s(),I=i(),F=I.isFetchingRef,D=I.startFetch,A=I.disposeFetch,N=I.completeFetch,Q=null!=w&&null!=_&&"object"==typeof _?_[w]:null,O=o(),M=p(C),T=M[0],U=M[1],L=p(h),j=L[0],W=L[1],K=u(r,l);(C!==T||h!==j)&&(A(),q(),U(C),W(h));var V=function(e,t,r,n){var i,o,u=m.get(),s=u.EDGES,c=u.PAGE_INFO,l=u.HAS_NEXT_PAGE,f=u.HAS_PREV_PAGE,d=u.END_CURSOR,p=u.START_CURSOR,h=b(r,n);if(null==h)return{cursor:null,hasMore:!1};"object"!=typeof h&&a(!1,"Relay: Expected connection in fragment `%s` to have been `null`, or a plain object with %s and %s properties. Instead got `%s`.",t.name,s,c,h);var v=h[s],y=h[c];if(null==v||null==y)return{cursor:null,hasMore:!1};Array.isArray(v)||a(!1,"Relay: Expected connection in fragment `%s` to have a plural `%s` field. Instead got `%s`.",t.name,s,v),"object"!=typeof y&&a(!1,"Relay: Expected connection in fragment `%s` to have a `%s` field. Instead got `%s`.",t.name,c,y);var g,R="forward"===e?null!==(i=y[d])&&void 0!==i?i:null:null!==(o=y[p])&&void 0!==o?o:null;null!==R&&"string"!=typeof R&&a(!1,"Relay: Expected page info for connection in fragment `%s` to have a valid `%s`. Instead got `%s`.",t.name,p,R),g="forward"===e?null!=R&&!0===y[l]:null!=R&&!0===y[f];return{cursor:R,hasMore:g}}(t,r,_,P),B=V.cursor,H=V.hasMore;return d((function(){return function(){A()}}),[A]),[f((function(e,i){var o=null==i?void 0:i.onComplete;if(!0!==O.current)return c(!1,"Relay: Unexpected fetch on unmounted component for fragment `%s` in `%s`. It looks like some instances of your component are still trying to fetch data but they already unmounted. Please make sure you clear all timers, intervals, async calls, etc that may trigger a fetch.",r.name,x),{dispose:function(){}};var u=R(r,l);if(!0===F.current||null==_||K)return null==u&&c(!1,"Relay: Unexpected fetch while using a null fragment ref for fragment `%s` in `%s`. When fetching more items, we expect initial fragment data to be non-null. Please make sure you're passing a valid fragment ref to `%s` before paginating.",r.name,x,x),o&&o(null),{dispose:function(){}};(null==u||"PluralReaderSelector"===u.kind)&&a(!1,"Relay: Expected to be able to find a non-plural fragment owner for fragment `%s` when using `%s`. If you're seeing this, this is likely a bug in Relay.",r.name,x);var s=u.owner.variables,f=u.variables,d=null==i?void 0:i.UNSTABLE_extraVariables,p=(0,n.default)((0,n.default)({},s),f),h=g(t,e,B,p,(0,n.default)({},d),k);null!=w&&("string"!=typeof Q&&c(!1,"Relay: Expected result to have a string `%s` in order to refetch, got `%s`.",w,Q),h.id=Q);var m=y(E,h,{force:!0});return v(C,m).subscribe((0,n.default)((0,n.default)({},S),{},{start:function(e){D(e),S.start&&S.start(e)},complete:function(){N(),S.complete&&S.complete(),o&&o(null)},error:function(e){N(),S.error&&S.error(e),o&&o(e)}})),{dispose:A}}),[C,Q,t,B,D,A,N,F,K,_,r.name,l,x]),H,A]}},function(e,t,r){"use strict";var n=r(0),a=r(3),i=r(2),o=r(1),u=o.__internal.getObservableForActiveRequest,s=o.getSelector,c=n.useEffect,l=n.useState,f=n.useMemo;e.exports=function(e,t){var r=i(),n=f((function(){var n=s(e,t);return null==n?null:("SingularReaderSelector"!==n.kind&&a(!1,"useIsOperationNodeActive: Plural fragments are not supported."),u(r,n.owner))}),[r,e,t]),o=l(null!=n),d=o[0],p=o[1];return c((function(){var e;if(p(null!=n),null!=n){var t=function(){p(!1)};e=n.subscribe({complete:t,error:t})}return function(){e&&e.unsubscribe()}}),[n]),d}},function(e,t,r){"use strict";var n=r(3),a=r(17),i=r(20),o=r(2),u=r(5),s=r(6).useTrackLoadQueryInRender,c=r(0).useDebugValue,l=r(1).__internal,f=l.fetchQueryDeduped,d=l.fetchQuery;e.exports=function(e,t,r){s();var l,p=o(),h=t.fetchKey,m=t.fetchPolicy,v=t.source,y=t.variables,g=t.networkCacheConfig,b=i(e,y,g);if("PreloadedQuery_DEPRECATED"===t.kind)b.request.node.params.name!==t.name&&n(!1,"usePreloadedQuery(): Expected data to be prefetched for query `%s`, got prefetch results for query `%s`.",b.request.node.params.name,t.name),l={componentDisplayName:"usePreloadedQuery()",fetchKey:h,fetchObservable:f(p,b.request.identifier,(function(){return p===t.environment&&null!=v?p.executeWithSource({operation:b,source:v}):p.execute({operation:b})})),fetchPolicy:m,query:b,renderPolicy:null==r?void 0:r.UNSTABLE_renderPolicy};else{u(!1===t.isDisposed,"usePreloadedQuery(): Expected preloadedQuery to not be disposed yet. This is because disposing the query marks it for future garbage collection, and as such query results may no longer be present in the Relay store. In the future, this will become a hard error.");var R,_=d(p,b);null!=v&&p===t.environment?R=v.ifEmpty(_):p!==t.environment?(u(!1,"usePreloadedQuery(): usePreloadedQuery was passed a preloaded query that was created with a different environment than the one that is currently in context. In the future, this will become a hard error."),R=_):R=_,l={componentDisplayName:"usePreloadedQuery()",fetchObservable:R,fetchKey:h,fetchPolicy:m,query:b,renderPolicy:null==r?void 0:r.UNSTABLE_renderPolicy}}var P=a(l);return c({query:t.name,variables:t.variables,data:P,fetchKey:h,fetchPolicy:m,renderPolicy:null==r?void 0:r.UNSTABLE_renderPolicy}),P}},function(e,t,r){"use strict";var n=r(21),a=r(11),i=r(0).useDebugValue,o=r(1).getFragment;e.exports=function(e,t){var r=o(e);a(r,"first argument of useRefetchableFragment()");var u=n(r,t,"useRefetchableFragment()"),s=u.fragmentData,c=u.refetch;return i({fragment:r.name,data:s}),[s,c]}},function(e,t,r){"use strict";var n=r(2),a=r(0),i=a.useEffect,o=a.useRef;e.exports=function(e,t){var r=n(),a=o(null),u=Array.from(e).sort().join("");return i((function(){var n=r.getStore(),i=n.lookupInvalidationState(e),o=n.subscribeToInvalidationState(i,t);return a.current=o,function(){return o.dispose()}}),[u,t,r]),{dispose:function(){null!=a.current&&a.current.dispose()}}}},function(e,t,r){"use strict";var n=r(2),a=r(0).useEffect,i=r(1).requestSubscription;e.exports=function(e,t){var r=null!=t?t:i,o=n();a((function(){return r(o,e).dispose}),[o,e,r])}}])}));
4
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("relay-runtime"),require("invariant"),require("@babel/runtime/helpers/interopRequireDefault"),require("fbjs/lib/warning"),require("@babel/runtime/helpers/objectSpread2"),require("@babel/runtime/helpers/defineProperty"),require("react-relay/ReactRelayContext"),require("@babel/runtime/helpers/createForOfIteratorHelper"),require("@babel/runtime/helpers/toConsumableArray"),require("fbjs/lib/areEqual")):"function"==typeof define&&define.amd?define(["react","relay-runtime","invariant","@babel/runtime/helpers/interopRequireDefault","fbjs/lib/warning","@babel/runtime/helpers/objectSpread2","@babel/runtime/helpers/defineProperty","react-relay/ReactRelayContext","@babel/runtime/helpers/createForOfIteratorHelper","@babel/runtime/helpers/toConsumableArray","fbjs/lib/areEqual"],t):"object"==typeof exports?exports.ReactRelayHooks=t(require("react"),require("relay-runtime"),require("invariant"),require("@babel/runtime/helpers/interopRequireDefault"),require("fbjs/lib/warning"),require("@babel/runtime/helpers/objectSpread2"),require("@babel/runtime/helpers/defineProperty"),require("react-relay/ReactRelayContext"),require("@babel/runtime/helpers/createForOfIteratorHelper"),require("@babel/runtime/helpers/toConsumableArray"),require("fbjs/lib/areEqual")):e.ReactRelayHooks=t(e.react,e["relay-runtime"],e.invariant,e["@babel/runtime/helpers/interopRequireDefault"],e["fbjs/lib/warning"],e["@babel/runtime/helpers/objectSpread2"],e["@babel/runtime/helpers/defineProperty"],e["react-relay/ReactRelayContext"],e["@babel/runtime/helpers/createForOfIteratorHelper"],e["@babel/runtime/helpers/toConsumableArray"],e["fbjs/lib/areEqual"])}(window,(function(e,t,n,r,i,a,o,u,s,l,c){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=25)}([function(t,n){t.exports=e},function(e,n){e.exports=t},function(e,t,n){"use strict";var r=n(3),i=n(0).useContext,a=n(14);e.exports=function(){var e=i(a);return null==e&&r(!1,"useRelayEnvironment: Expected to have found a Relay environment provided by a `RelayEnvironmentProvider` component. This usually means that useRelayEnvironment was used in a component that is not a descendant of a `RelayEnvironmentProvider`. Please make sure a `RelayEnvironmentProvider` has been rendered somewhere as a parent or ancestor of your component."),e.environment}},function(e,t){e.exports=n},function(e,t){e.exports=r},function(e,t){e.exports=i},function(e,t,n){"use strict";var r=n(4)(n(7)),i=n(3),a=n(0),o=n(1),u=o.Observable,s=o.PreloadableQueryRegistry,l=o.RelayFeatureFlags,c=o.ReplaySubject,f=o.__internal.fetchQueryDeduped,d=o.createOperationDescriptor,p=o.getRequest,h=o.getRequestIdentifier,v=n(5),m=null,y=100001;e.exports={loadQuery:function(e,t,n,o,g){var b,_,R,E,P=null===(b=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)||void 0===b||null===(_=b.ReactCurrentDispatcher)||void 0===_?void 0:_.current;v(null==m||P!==m,"Relay: `%s` should not be called inside a React render function.",null!==(R=null==o?void 0:o.__nameForWarning)&&void 0!==R?R:"loadQuery"),y++;var C,k,S,x,q,w,I=null!==(E=null==o?void 0:o.fetchPolicy)&&void 0!==E?E:"store-or-network",F=(0,r.default)((0,r.default)({},null==o?void 0:o.networkCacheConfig),{},{force:!0}),D=!1,N=function(t,n){return D=!0,e.executeWithSource({operation:t,source:n})},A=new c,Q=u.create((function(e){return A.subscribe(e)})),T=null,O=!1,M=function(t){var r;O=!0;var i=new c;if(!0===l.ENABLE_LOAD_QUERY_REQUEST_DEDUPING){var a="raw-network-request-"+h(t,n);r=f(e,a,(function(){return e.getNetwork().execute(t,n,F)}))}else{r=e.getNetwork().execute(t,n,F)}var o=r.subscribe({error:function(e){T=e,i.error(e)},next:function(e){i.next(e)},complete:function(){i.complete()}}).unsubscribe;return k=o,u.create((function(e){var t=i.subscribe(e);return function(){t.unsubscribe(),k()}}))},L=function(t,n){!0===l.ENABLE_LOAD_QUERY_REQUEST_DEDUPING&&(O=!0);var r=f(e,t.request.identifier,n).subscribe({error:function(e){A.error(e)},next:function(e){A.next(e)},complete:function(){A.complete()}});S=r.unsubscribe},U=function(t){var r=d(t,n,F);(C=e.retain(r),"store-only"!==I)&&(("store-or-network"!==I||"available"!==e.check(r).status)&&L(r,(function(){var e=M(t.params);return N(r,e)})))};if("PreloadableConcreteRequest"===t.kind){null===(w=(x=t.params).id)&&i(!1,"Relay: `loadQuery` requires that preloadable query `%s` has a persisted query id",x.name);var j=s.get(w);if(null!=j)U(j);else{var W="store-only"===I?null:M(x),B=s.onLoad(w,(function(t){q();var r=d(t,n,F);C=e.retain(r),null!=W&&L(r,(function(){return N(r,W)}))}));q=B.dispose}}else{var V=p(t);w=null!=(x=V.params).cacheID?x.cacheID:x.id,U(V)}var K=!1,H=!1,G=!1,z=function(){H||(C&&C.dispose(),H=!0)},Y=function(){G||(D?S&&S():k&&k(),q&&q(),G=!0)};return{kind:"PreloadedQuery",environment:e,environmentProviderOptions:g,dispose:function(){K||(z(),Y(),K=!0)},releaseQuery:z,cancelNetworkRequest:Y,fetchKey:y,id:w,get isDisposed(){return K||H},get networkError(){return T},name:x.name,networkCacheConfig:F,fetchPolicy:I,source:O?Q:void 0,variables:n}},useTrackLoadQueryInRender:function(){var e,t;null===m&&(m=null===(e=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED)||void 0===e||null===(t=e.ReactCurrentDispatcher)||void 0===t?void 0:t.current)}}},function(e,t){e.exports=a},function(e,t,n){"use strict";var r=n(0),i=r.useEffect,a=r.useRef;e.exports=function(){var e=a(!0);return i((function(){return e.current=!0,function(){e.current=!1}}),[]),e}},function(e,t,n){"use strict";var r=n(0).createContext({wrapPrepareQueryResource:function(e){return e()}});e.exports=r},function(e,t,n){"use strict";var r=n(17).getFragmentResourceForEnvironment,i=n(2),a=n(0),o=a.useEffect,u=a.useRef,s=a.useState,l=n(1).getFragmentIdentifier,c=n(5);e.exports=function(e,t,n){var a=i(),f=r(a),d=u(!1),p=s(0)[1],h=l(e,t),v=f.readWithIdentifier(e,t,h,n),m=u(!0);function y(){!1!==d.current&&!1!==m.current&&p((function(e){return e+1}))}return o((function(){d.current=!0;var e=f.subscribe(v,y);return function(){d.current=!1,e.dispose()}}),[a,h]),null!=t&&(void 0===v.data||Array.isArray(v.data)&&v.data.length>0&&v.data.every((function(e){return void 0===e})))&&c(!1,"Relay: Expected to have been able to read non-null data for fragment `%s` declared in `%s`, since fragment reference was non-null. Make sure that that `%s`'s parent isn't holding on to and/or passing a fragment reference for data that has been deleted.",e.name,n,n),{data:v.data,disableStoreUpdates:function(){m.current=!1},enableStoreUpdates:function(){m.current=!0,f.checkMissedUpdates(v)[0]&&y()}}}},function(e,t){e.exports=o},function(e,t,n){"use strict";var r=n(4),i=r(n(7)),a=r(n(11)),o=n(18),u=n(19),s=n(3),l=n(1),c=l.RelayFeatureFlags,f=l.isPromise,d=n(5),p="function"==typeof WeakMap;function h(e){return void 0!==e.request.node.params.metadata.live}function v(e,t,n,r,i){var a=null!=n?n:"store-or-network",o=null!=r?r:e.UNSTABLE_getDefaultRenderPolicy(),u="".concat(a,"-").concat(o,"-").concat(t.request.identifier);return null!=i?"".concat(u,"-").concat(i):u}function m(e,t){var n={__id:e.fragment.dataID,__fragments:(0,a.default)({},e.fragment.node.name,e.request.variables),__fragmentOwner:e.request};return{cacheIdentifier:t,fragmentNode:e.request.node.fragment,fragmentRef:n,operation:e}}var y=2e5;function g(e,t,n,r,i,a){return c.REFACTOR_SUSPENSE_RESOURCE?function(e,t,n,r,i,a){var o=h(t),s=r,l=i,c=new u((function(e){var n=e.retain(t);return{dispose:function(){o&&null!=l&&l.unsubscribe(),n.dispose(),a(f)}}})),f={cacheIdentifier:e,id:y++,processedPayloadsCount:0,operationAvailability:n,getValue:function(){return s},setValue:function(e){s=e},getRetainCount:function(){return c.getRetainCount()},getNetworkSubscription:function(){return l},setNetworkSubscription:function(e){o&&null!=l&&l.unsubscribe(),l=e},temporaryRetain:function(e){return c.temporaryRetain(e)},permanentRetain:function(e){return c.permanentRetain(e)},releaseTemporaryRetain:function(){c.releaseTemporaryRetain()}};return f}(e,t,n,r,i,a):function(e,t,n,r,i,a){var o=h(t),u=r,l=0,c=null,f=null,d=i,p=function(e){return 1===++l&&(c=e.retain(t)),{dispose:function(){0===(l=Math.max(0,l-1))&&(null==c&&s(!1,"Relay: Expected disposable to release query to be defined.If you're seeing this, this is likely a bug in Relay."),c.dispose(),c=null),a(v)}}},v={cacheIdentifier:e,id:y++,processedPayloadsCount:0,operationAvailability:n,getValue:function(){return u},setValue:function(e){u=e},getRetainCount:function(){return l},getNetworkSubscription:function(){return d},setNetworkSubscription:function(e){o&&null!=d&&d.unsubscribe(),d=e},temporaryRetain:function(e){if(e.isServer())return{dispose:function(){}};var t=p(e),n=null,r=function(){clearTimeout(n),n=null,f=null,t.dispose(),o&&l<=0&&null!=d&&d.unsubscribe()};return n=setTimeout(r,3e5),null!=f&&f(),f=r,{dispose:function(){f&&f()}}},permanentRetain:function(e){var t=p(e);return null!=f&&(f(),f=null),{dispose:function(){t.dispose(),o&&l<=0&&null!=d&&d.unsubscribe()}}},releaseTemporaryRetain:function(){null!=f&&(f(),f=null)}};return v}(e,t,n,r,i,a)}var b=function(){function e(e){var t=this;(0,a.default)(this,"_clearCacheEntry",(function(e){(c.REFACTOR_SUSPENSE_RESOURCE||e.getRetainCount()<=0)&&t._cache.delete(e.cacheIdentifier)})),this._environment=e,this._cache=o.create(1e3)}var t=e.prototype;return t.prepare=function(e,t,n,r,i,a,o){var u=v(this._environment,e,n,r,a);return this.prepareWithIdentifier(u,e,t,n,r,i,o)},t.prepareWithIdentifier=function(e,t,n,r,a,o,u){var s=this._environment,l=null!=r?r:"store-or-network",c=null!=a?a:s.UNSTABLE_getDefaultRenderPolicy(),d=this._cache.get(e),p=null,h=null!=d;null==d&&(d=this._fetchAndSaveQuery(e,t,n,l,c,u,(0,i.default)((0,i.default)({},o),{},{unsubscribe:function(e){null!=p&&p.dispose();var t=null==o?void 0:o.unsubscribe;t&&t(e)}}))),p=d.temporaryRetain(s);var v=d.getValue();if(f(v))throw s.__log({name:"suspense.query",fetchPolicy:l,isPromiseCached:h,operation:t,queryAvailability:d.operationAvailability,renderPolicy:c}),v;if(v instanceof Error)throw v;return v},t.retain=function(e,t){var n=this._environment,r=e.cacheIdentifier,i=e.operation,a=this._getOrCreateCacheEntry(r,i,null,e,null),o=a.permanentRetain(n);return n.__log({name:"queryresource.retain",profilerContext:t,resourceID:a.id}),{dispose:function(){o.dispose()}}},t.releaseTemporaryRetain=function(e){var t=this._cache.get(e.cacheIdentifier);null!=t&&t.releaseTemporaryRetain()},t.TESTS_ONLY__getCacheEntry=function(e,t,n,r){var i=v(this._environment,e,t,n,r);return this._cache.get(i)},t._getOrCreateCacheEntry=function(e,t,n,r,i){var a=this._cache.get(e);return null==a&&(a=g(e,t,n,r,i,this._clearCacheEntry),this._cache.set(e,a)),a},t._fetchAndSaveQuery=function(e,t,n,r,a,o,u){var l,c,f=this,p=this._environment,v=p.check(t),y=v.status,b="available"===y,_=b||"partial"===a&&"stale"!==y,R=function(){};switch(r){case"store-only":l=!1,c=!0;break;case"store-or-network":l=!b,c=_;break;case"store-and-network":l=!0,c=_;break;case"network-only":default:l=!0,c=!1}if(c){var E=m(t,e),P=g(e,t,v,E,null,this._clearCacheEntry);this._cache.set(e,P)}if(l){var C,k=m(t,e);n.subscribe({start:function(n){C=n;var r=f._cache.get(e);r&&r.setNetworkSubscription(C);var a=null==u?void 0:u.start;a&&a((0,i.default)((0,i.default)({},n),{},{unsubscribe:function(){h(t)&&n.unsubscribe()}}))},next:function(){var n=f._getOrCreateCacheEntry(e,t,v,k,C);n.processedPayloadsCount+=1,n.setValue(k),R();var r=null==u?void 0:u.next;null!=r&&r(p.lookup(t.fragment))},error:function(n){var r=f._getOrCreateCacheEntry(e,t,v,n,C);0===r.processedPayloadsCount?r.setValue(n):d(!1,"QueryResource: An incremental payload for query `%` returned an error: `%`:`%`.",t.fragment.node.name,n.message,n.stack),R(),C=null,r.setNetworkSubscription(null);var i=null==u?void 0:u.error;i&&i(n)},complete:function(){R(),C=null;var t=f._cache.get(e);t&&t.setNetworkSubscription(null);var n=null==u?void 0:u.complete;n&&n()},unsubscribe:null==u?void 0:u.unsubscribe});var S=this._cache.get(e);if(!S){var x=new Promise((function(e){R=e}));x.displayName="Relay("+t.fragment.node.name+")",S=g(e,t,v,x,C,this._clearCacheEntry),this._cache.set(e,S)}}else{var q=null==u?void 0:u.complete;q&&q()}var w=this._cache.get(e);return null==w&&s(!1,"Relay: Expected to have cached a result when attempting to fetch query.If you're seeing this, this is likely a bug in Relay."),p.__log({name:"queryresource.fetch",resourceID:w.id,operation:t,profilerContext:o,fetchPolicy:r,renderPolicy:a,queryAvailability:v,shouldFetch:l}),w},e}();function _(e){return new b(e)}var R=p?new WeakMap:new Map;e.exports={createQueryResource:_,getQueryResourceForEnvironment:function(e){var t=R.get(e);if(t)return t;var n=_(e);return R.set(e,n),n},getQueryCacheIdentifier:v}},function(e,t,n){"use strict";var r=n(0).useRef,i=n(5);e.exports=function(e,t){var n=r(e.name);i(n.current===e.name,"Relay: The %s has to remain the same over the lifetime of a component. Changing it is not supported and will result in unexpected behavior.",t)}},function(e,t){e.exports=u},function(e,t,n){"use strict";var r=n(6).loadQuery;e.exports=function e(t,n,i){var a=null;null==n.root.getModuleIfRequired()&&(a=n.root.load());var o=n.getPreloadProps(i),u=o.queries,s=o.entryPoints,l=o.extraProps,c={},f={};null!=u&&Object.keys(u).forEach((function(e){var n=u[e],i=n.environmentProviderOptions,a=n.options,o=n.parameters,s=n.variables,l=t.getEnvironment(i);c[e]=r(l,o,s,{fetchPolicy:null==a?void 0:a.fetchPolicy,networkCacheConfig:null==a?void 0:a.networkCacheConfig,__nameForWarning:"loadEntryPoint"},i)})),null!=s&&Object.keys(s).forEach((function(n){var r=s[n];if(null!=r){var i=r.entryPoint,a=r.entryPointParams;f[n]=e(t,i,a)}}));var d=!1;return{dispose:function(){d||(null!=c&&Object.values(c).forEach((function(e){(0,e.dispose)()})),null!=f&&Object.values(f).forEach((function(e){(0,e.dispose)()})),d=!0)},entryPoints:f,extraProps:null!=l?l:null,getComponent:function(){var e,t=n.root.getModuleIfRequired();if(null==t)throw a=null!==(e=a)&&void 0!==e?e:n.root.load();return t},get isDisposed(){return d},queries:c,rootModuleID:n.root.getModuleId()}}},function(e,t){e.exports=s},function(e,t,n){"use strict";var r=n(4),i=r(n(7)),a=r(n(11)),o=r(n(30)),u=n(18),s=n(12).getQueryResourceForEnvironment,l=n(19),c=n(3),f=n(1),d=f.RelayFeatureFlags,p=f.__internal,h=p.fetchQuery,v=p.getPromiseForActiveRequest,m=f.createOperationDescriptor,y=f.getFragmentIdentifier,g=f.getPendingOperationsForFragment,b=f.getSelector,_=f.getVariablesFromFragment,R=f.isPromise,E=f.recycleNodesInto,P=f.reportMissingRequiredFields,C="function"==typeof WeakMap,k=Object.freeze([]);function S(e){return Array.isArray(e)?e.some((function(e){return e.isMissingData})):e.isMissingData}function x(e,t,n){return Array.isArray(t)?{cacheKey:e,snapshot:t,data:t.map((function(e){return e.data})),isMissingData:S(t),storeEpoch:n}:{cacheKey:e,snapshot:t,data:t.data,isMissingData:S(t),storeEpoch:n}}var q=function(){function e(e){(0,a.default)(this,"_cache",new Map),(0,a.default)(this,"_retainCounts",new Map),this._environment=e}var t=e.prototype;return t.get=function(e){var t,n;return null!==(t=null===(n=this._cache.get(e))||void 0===n?void 0:n[0])&&void 0!==t?t:void 0},t.recordQueryResults=function(e,t){var n=this,r=this._cache.get(e);if(r){var i=r[0],a=r[1];t.forEach((function(e){i.push(e)})),a.temporaryRetain(this._environment)}else{var o=new l((function(){return n._retain(e)}));this._cache.set(e,[t,o]),o.temporaryRetain(this._environment)}},t._retain=function(e){var t,n=this,r=(null!==(t=this._retainCounts.get(e))&&void 0!==t?t:0)+1;return this._retainCounts.set(e,r),{dispose:function(){var t,r=(null!==(t=n._retainCounts.get(e))&&void 0!==t?t:0)-1;r>0?n._retainCounts.set(e,r):(n._retainCounts.delete(e),n._cache.delete(e))}}},e}(),w=function(){function e(e){this._environment=e,this._cache=u.create(1e6),d.ENABLE_CLIENT_EDGES&&(this._clientEdgeQueryResultsCache=new q(e))}var t=e.prototype;return t.read=function(e,t,n,r){return this.readWithIdentifier(e,t,y(e,t),n,r)},t.readWithIdentifier=function(e,t,n,r,i){var a,u,l=this,f=this._environment;if(null==t)return{cacheKey:n,data:null,isMissingData:!1,snapshot:null,storeEpoch:0};var p=f.getStore().getEpoch();if(!0===(null==e||null===(a=e.metadata)||void 0===a?void 0:a.plural)&&(Array.isArray(t)||c(!1,"Relay: Expected fragment pointer%s for fragment `%s` to be an array, instead got `%s`. Remove `@relay(plural: true)` from fragment `%s` to allow the prop to be an object.",null!=i?" for key `".concat(i,"`"):"",e.name,typeof t,e.name),0===t.length))return{cacheKey:n,data:k,isMissingData:!1,snapshot:k,storeEpoch:p};var h=this._cache.get(n);if(null!=h){if("pending"===h.kind&&R(h.promise))throw f.__log({name:"suspense.fragment",data:h.result.data,fragment:e,isRelayHooks:!0,isMissingData:h.result.isMissingData,isPromiseCached:!0,pendingOperations:h.pendingOperations}),h.promise;if("done"===h.kind&&h.result.snapshot)return this._reportMissingRequiredFieldsInSnapshot(h.result.snapshot),h.result}var m=b(e,t);null==m&&c(!1,"Relay: Expected to receive an object where `...%s` was spread, but the fragment reference was not found`. This is most likely the result of:\n- Forgetting to spread `%s` in `%s`'s parent's fragment.\n- Conditionally fetching `%s` but unconditionally passing %s prop to `%s`. If the parent fragment only fetches the fragment conditionally - with e.g. `@include`, `@skip`, or inside a `... on SomeType { }` spread - then the fragment reference will not exist. In this case, pass `null` if the conditions for evaluating the fragment are not met (e.g. if the `@include(if)` value is false.)",e.name,e.name,r,e.name,null==i?"a fragment reference":"the `".concat(i,"`"),r);var y="PluralReaderSelector"===m.kind?m.selectors.map((function(e){return f.lookup(e)})):f.lookup(m),g=x(n,y,p);if(!g.isMissingData)return this._reportMissingRequiredFieldsInSnapshot(y),this._cache.set(n,{kind:"done",result:g}),g;var _=null;if(d.ENABLE_CLIENT_EDGES&&function(e){var t,n;return Array.isArray(e)?e.some((function(e){var t,n;return(null!==(t=null===(n=e.missingClientEdges)||void 0===n?void 0:n.length)&&void 0!==t?t:0)>0})):(null!==(t=null===(n=e.missingClientEdges)||void 0===n?void 0:n.length)&&void 0!==t?t:0)>0}(y)){_=[];var E=s(this._environment),P=[];!function(e,t){Array.isArray(e)?e.forEach(t):t(e)}(y,(function(n){var r;null===(r=n.missingClientEdges)||void 0===r||r.forEach((function(n){var r,i=n.request,a=n.clientEdgeDestinationID,o=l._performClientEdgeQuery(E,e,t,i,a),u=o.queryResult,s=o.requestDescriptor;P.push(u),null===(r=_)||void 0===r||r.push(s)}))})),null==this._clientEdgeQueryResultsCache&&c(!1,"Client edge query result cache should exist when ENABLE_CLIENT_EDGES is on."),this._clientEdgeQueryResultsCache.recordQueryResults(n,P)}var C=null;d.ENABLE_CLIENT_EDGES&&_&&(C=_.map((function(e){return v(l._environment,e)})).filter((function(e){return null!=e})));var S,q,w,I="PluralReaderSelector"===m.kind?m.selectors[0].owner:m.owner,F=this._getAndSavePromiseForFragmentRequestInFlight(n,e,I,g),D=null==F?void 0:F.promise;if((null===(u=C)||void 0===u?void 0:u.length)||R(D))throw f.__log({name:"suspense.fragment",data:g.data,fragment:e,isRelayHooks:!0,isPromiseCached:!1,isMissingData:g.isMissingData,pendingOperations:[].concat((0,o.default)(null!==(S=null==F?void 0:F.pendingOperations)&&void 0!==S?S:[]),(0,o.default)(null!==(q=_)&&void 0!==q?q:[]))}),(null===(w=C)||void 0===w?void 0:w.length)?Promise.all([D].concat((0,o.default)(C))):D;return this._reportMissingRequiredFieldsInSnapshot(y),x(n,y,p)},t._performClientEdgeQuery=function(e,t,n,r,a){var o=_(t,n),u=(0,i.default)((0,i.default)({},o),{},{id:a}),s=m(r,u,{}),l=h(this._environment,s),c=e.prepare(s,l);return{requestDescriptor:s.request,queryResult:c}},t._reportMissingRequiredFieldsInSnapshot=function(e){var t=this;Array.isArray(e)?e.forEach((function(e){null!=e.missingRequiredFields&&P(t._environment,e.missingRequiredFields)})):null!=e.missingRequiredFields&&P(this._environment,e.missingRequiredFields)},t.readSpec=function(e,t,n){var r={};for(var i in e)r[i]=this.read(e[i],t[i],n,i);return r},t.subscribe=function(e,t){var n=this,r=this._environment,i=e.cacheKey,a=e.snapshot;if(!a)return{dispose:function(){}};var o=this.checkMissedUpdates(e),u=o[0],l=o[1];u&&t();var f=[];if(Array.isArray(a)?(Array.isArray(l)||c(!1,"Relay: Expected snapshots to be plural. If you're seeing this, this is likely a bug in Relay."),l.forEach((function(e,a){f.push(r.subscribe(e,(function(e){var o=r.getStore().getEpoch();n._updatePluralSnapshot(i,l,e,a,o),t()})))}))):((null==l||Array.isArray(l))&&c(!1,"Relay: Expected snapshot to be singular. If you're seeing this, this is likely a bug in Relay."),f.push(r.subscribe(l,(function(e){var a=r.getStore().getEpoch();n._cache.set(i,{kind:"done",result:x(i,e,a)}),t()})))),d.ENABLE_CLIENT_EDGES){var p,h,v=null!==(p=null===(h=this._clientEdgeQueryResultsCache)||void 0===h?void 0:h.get(i))&&void 0!==p?p:void 0;if(null==v?void 0:v.length){var m=s(this._environment);v.forEach((function(e){f.push(m.retain(e))}))}}return{dispose:function(){f.forEach((function(e){return e.dispose()})),n._cache.delete(i)}}},t.subscribeSpec=function(e,t){var n=this,r=Object.keys(e).map((function(r){return n.subscribe(e[r],t)}));return{dispose:function(){r.forEach((function(e){e.dispose()}))}}},t.checkMissedUpdates=function(e){var t=this._environment,n=e.snapshot;if(!n)return[!1,null];var r;if(r=t.getStore().getEpoch(),e.storeEpoch===r)return[!1,e.snapshot];var a=e.cacheKey;if(Array.isArray(n)){var o=!1,u=[];return n.forEach((function(e,n){var r=t.lookup(e.selector),a=e.data,s=r.data,l=E(a,s);l!==a&&(r=(0,i.default)((0,i.default)({},r),{},{data:l}),o=!0),u[n]=r})),o&&this._cache.set(a,{kind:"done",result:x(a,u,r)}),[o,u]}var s=t.lookup(n.selector),l=n.data,c=s.data,f=E(l,c),d={data:f,isMissingData:s.isMissingData,missingClientEdges:s.missingClientEdges,seenRecords:s.seenRecords,selector:s.selector,missingRequiredFields:s.missingRequiredFields};return f!==l&&this._cache.set(a,{kind:"done",result:x(a,d,r)}),[f!==l,d]},t.checkMissedUpdatesSpec=function(e){var t=this;return Object.keys(e).some((function(n){return t.checkMissedUpdates(e[n])[0]}))},t._getAndSavePromiseForFragmentRequestInFlight=function(e,t,n,r){var i=this,a=g(this._environment,t,n);if(null==a)return null;var o=a.promise,u=a.pendingOperations,s=o.then((function(){i._cache.delete(e)})).catch((function(t){i._cache.delete(e)}));return s.displayName=o.displayName,this._cache.set(e,{kind:"pending",pendingOperations:u,promise:s,result:r}),{promise:s,pendingOperations:u}},t._updatePluralSnapshot=function(e,t,n,r,i){var a,u=this._cache.get(e);if(R(u))I(n.selector.node.name);else{var s=null==u||null===(a=u.result)||void 0===a?void 0:a.snapshot;if(!s||Array.isArray(s)){var l=s?(0,o.default)(s):(0,o.default)(t);l[r]=n,this._cache.set(e,{kind:"done",result:x(e,l,i)})}else I(n.selector.node.name)}},e}();function I(e){c(!1,"Relay: Expected to find cached data for plural fragment `%s` when receiving a subscription. If you're seeing this, this is likely a bug in Relay.",e)}function F(e){return new w(e)}var D=C?new WeakMap:new Map;e.exports={createFragmentResource:F,getFragmentResourceForEnvironment:function(e){var t=D.get(e);if(t)return t;var n=F(e);return D.set(e,n),n}}},function(e,t,n){"use strict";var r=n(3),i=function(){function e(e){this._capacity=e,this._capacity>0||r(!1,"LRUCache: Unable to create instance of cache with zero or negative capacity."),this._map=new Map}var t=e.prototype;return t.set=function(e,t){if(this._map.delete(e),this._map.set(e,t),this._map.size>this._capacity){var n=this._map.keys().next();n.done||this._map.delete(n.value)}},t.get=function(e){var t=this._map.get(e);return null!=t&&(this._map.delete(e),this._map.set(e,t)),t},t.has=function(e){return this._map.has(e)},t.delete=function(e){this._map.delete(e)},t.size=function(){return this._map.size},t.capacity=function(){return this._capacity-this._map.size},t.clear=function(){this._map.clear()},e}();e.exports={create:function(e){return new i(e)}}},function(e,t,n){"use strict";var r=n(4)(n(11)),i=n(3),a=function(){function e(e){var t=this;(0,r.default)(this,"_retainCount",0),(0,r.default)(this,"_retainDisposable",null),(0,r.default)(this,"_releaseTemporaryRetain",null),this._retain=function(n){return t._retainCount++,1===t._retainCount&&(t._retainDisposable=e(n)),{dispose:function(){t._retainCount=Math.max(0,t._retainCount-1),0===t._retainCount&&(null==t._retainDisposable&&i(!1,"Relay: Expected disposable to release query to be defined.If you're seeing this, this is likely a bug in Relay."),t._retainDisposable.dispose(),t._retainDisposable=null)}}}}var t=e.prototype;return t.temporaryRetain=function(e){var t,n=this;if(e.isServer())return{dispose:function(){}};var r=this._retain(e),i=null,a=function(){clearTimeout(i),i=null,n._releaseTemporaryRetain=null,r.dispose()};return i=setTimeout(a,3e5),null===(t=this._releaseTemporaryRetain)||void 0===t||t.call(this),this._releaseTemporaryRetain=a,{dispose:function(){var e;null===(e=n._releaseTemporaryRetain)||void 0===e||e.call(n)}}},t.permanentRetain=function(e){var t=this._retain(e);return this.releaseTemporaryRetain(),t},t.releaseTemporaryRetain=function(){var e;null===(e=this._releaseTemporaryRetain)||void 0===e||e.call(this),this._releaseTemporaryRetain=null},t.getRetainCount=function(){return this._retainCount},e}();e.exports=a},function(e,t,n){"use strict";var r=n(9),i=n(12),a=i.getQueryCacheIdentifier,o=i.getQueryResourceForEnvironment,u=n(21),s=n(10),l=n(2),c=n(0),f=c.useContext,d=c.useEffect,p=c.useState,h=c.useRef;e.exports=function(e){var t=e.query,n=e.componentDisplayName,i=e.fetchObservable,c=e.fetchPolicy,v=e.fetchKey,m=e.renderPolicy,y=l(),g=f(r),b=o(y),_=p(0),R=_[0],E=_[1],P=u(),C=P.startFetch,k=P.completeFetch,S="".concat(R,"-").concat(null!=v?v:""),x=a(y,t,c,m,S),q=g.wrapPrepareQueryResource((function(){return b.prepareWithIdentifier(x,t,i,c,m,{start:C,complete:k,error:k},g)})),w=h(!1);d((function(){return function(){w.current=!0}}),[]),d((function(){if(!0===w.current)return w.current=!1,void E((function(e){return e+1}));var e=b.retain(q,g);return function(){e.dispose()}}),[y,x]),d((function(){b.releaseTemporaryRetain(q)}));var I=q.fragmentNode,F=q.fragmentRef;return s(I,F,n).data}},function(e,t,n){"use strict";var r=n(0),i=r.useCallback,a=r.useEffect,o=r.useRef;e.exports=function(){var e=o(null),t=o(!1),n=i((function(){null!=e.current&&(e.current.unsubscribe(),e.current=null),t.current=!1}),[]),r=i((function(n){e.current=n,t.current=!0}),[]),u=i((function(){e.current=null,t.current=!1}),[]);return a((function(){return n}),[n]),{isFetchingRef:t,startFetch:r,disposeFetch:n,completeFetch:u}}},function(e,t,n){"use strict";var r=n(32),i=n(0),a=n(1),o=a.createOperationDescriptor,u=a.getRequest,s=i.useMemo;e.exports=function(e,t,n){var i=r(t)[0],a=r(n||{})[0];return s((function(){return o(u(e),i,a)}),[e,i,a])}},function(e,t,n){"use strict";var r,i=n(4)(n(7)),a=n(17).getFragmentResourceForEnvironment,o=n(9),u=n(12).getQueryResourceForEnvironment,s=n(10),l=n(8),c=n(24),f=n(2),d=n(3),p=n(0),h=p.useCallback,v=p.useContext,m=p.useReducer,y=n(1),g=y.__internal.fetchQuery,b=y.createOperationDescriptor,_=y.getFragmentIdentifier,R=y.getRefetchMetadata,E=y.getSelector,P=y.getValueAtPath,C=n(5);function k(e,t){switch(t.type){case"refetch":var n;return(0,i.default)((0,i.default)({},e),{},{fetchPolicy:t.fetchPolicy,mirroredEnvironment:null!==(n=t.refetchEnvironment)&&void 0!==n?n:e.mirroredEnvironment,onComplete:t.onComplete,refetchEnvironment:t.refetchEnvironment,refetchQuery:t.refetchQuery,renderPolicy:t.renderPolicy});case"reset":return{fetchPolicy:void 0,mirroredEnvironment:t.environment,mirroredFragmentIdentifier:t.fragmentIdentifier,onComplete:void 0,refetchQuery:null,renderPolicy:void 0};default:throw t.type,new Error("useRefetchableFragmentNode: Unexpected action type")}}r={getInitialIDAndType:function(e,t,r){var i=n(1).Record,a=null==e?void 0:e.id;if(1!==t.length||"node"!==t[0]||null==a)return null;var o=r.getStore().getSource().get(a),u=o&&i.getType(o);return null==u?null:{id:a,typename:u}},checkSameTypeAfterRefetch:function(e,t,r,i){var a=n(1).Record;if(e){var o=t.getStore().getSource().get(e.id),u=o&&a.getType(o);u!==e.typename&&C(!1,"Relay: Call to `refetch` returned data with a different __typename: was `%s`, now `%s`, on `%s` in `%s`. Please make sure the server correctly implementsunique id requirement.",e.typename,u,r.name,i)}},checkSameIDAfterRefetch:function(e,t,r,i){if(null!=e){var a=t[n(1).ID_KEY];null!=a&&a!==e.id&&C(!1,"Relay: Call to `refetch` returned a different id, expected `%s`, got `%s`, on `%s` in `%s`. Please make sure the server correctly implements unique id requirement.",a,e.id,r.name,i)}}},e.exports=function(e,t,n){var p=f(),y=R(e,n),S=y.refetchableRequest,x=y.fragmentRefPathInResponse,q=y.identifierField,w=_(e,t),I=m(k,{fetchPolicy:void 0,mirroredEnvironment:p,mirroredFragmentIdentifier:w,onComplete:void 0,refetchEnvironment:null,refetchQuery:null,renderPolicy:void 0}),F=I[0],D=I[1],N=F.fetchPolicy,A=F.mirroredEnvironment,Q=F.mirroredFragmentIdentifier,T=F.onComplete,O=F.refetchEnvironment,M=F.refetchQuery,L=F.renderPolicy,U=null!=O?O:p,j=u(U),W=a(U),B=v(o),V=U!==A||w!==Q,K=c(S),H=K[0],G=K[1],z=K[2],Y=t;if(V)D({type:"reset",environment:U,fragmentIdentifier:w}),z();else if(null!=M&&null!=H){var X;X=r.getInitialIDAndType(M.request.variables,x,U);var J=function(e){T&&T(null!=e?e:null)},Z=null!=H.source?H.source:g(U,M),$=B.wrapPrepareQueryResource((function(){return j.prepare(M,Z,N,L,{error:J,complete:function(){r.checkSameTypeAfterRefetch(X,U,e,n),J()}},H.fetchKey,B)})),ee=W.read($.fragmentNode,$.fragmentRef,n).data;null==ee&&d(!1,"Relay: Expected to be able to read refetch query response. If you're seeing this, this is likely a bug in Relay."),Y=P(ee,x),r.checkSameIDAfterRefetch(X,Y,e,n)}var te=s(e,Y,n),ne=te.data,re=te.disableStoreUpdates,ie=te.enableStoreUpdates;return{fragmentData:ne,fragmentRef:Y,refetch:function(e,t,n,r,a,o,u,s,c,f,d){var p=l(),v=null!=s&&null!=r&&"object"==typeof r?r[s]:null;return h((function(r,a){if(!0!==p.current)return C(!1,"Relay: Unexpected call to `refetch` on unmounted component for fragment `%s` in `%s`. It looks like some instances of your component are still trying to fetch data but they already unmounted. Please make sure you clear all timers, intervals, async calls, etc that may trigger a fetch.",o.name,e),{dispose:function(){}};null==f&&C(!1,"Relay: Unexpected call to `refetch` while using a null fragment ref for fragment `%s` in `%s`. When calling `refetch`, we expect initial fragment data to be non-null. Please make sure you're passing a valid fragment ref to `%s` before calling `refetch`, or make sure you pass all required variables to `refetch`.",o.name,e,e);var u,l,h=null==a?void 0:a.__environment,m=null==a?void 0:a.fetchPolicy,y=null==a?void 0:a.UNSTABLE_renderPolicy,g=null==a?void 0:a.onComplete,_=E(o,f);if(null==_)u={},l={};else if("PluralReaderSelector"===_.kind){var R,P,k,S;u=null!==(R=null===(P=_.selectors[0])||void 0===P?void 0:P.owner.variables)&&void 0!==R?R:{},l=null!==(k=null===(S=_.selectors[0])||void 0===S?void 0:S.variables)&&void 0!==k?k:{}}else u=_.owner.variables,l=_.variables;var x=(0,i.default)((0,i.default)((0,i.default)({},u),l),r);null==s||r.hasOwnProperty("id")||("string"!=typeof v&&C(!1,"Relay: Expected result to have a string `%s` in order to refetch, got `%s`.",s,v),x.id=v);var q=b(d,x,{force:!0});return c(q.request.variables,{fetchPolicy:m,__environment:h,__nameForWarning:"refetch"}),t({type:"refetch",fetchPolicy:m,onComplete:g,refetchEnvironment:h,refetchQuery:q,renderPolicy:y}),{dispose:n}}),[a,t,n,v,c])}(n,D,z,ne,w,e,0,q,G,t,S),disableStoreUpdates:re,enableStoreUpdates:ie}}},function(e,t,n){"use strict";var r=n(4)(n(16)),i=n(6),a=i.loadQuery,o=i.useTrackLoadQueryInRender,u=n(8),s=n(2),l=n(0),c=l.useCallback,f=l.useEffect,d=l.useRef,p=l.useState,h=n(1).getRequest,v={kind:"NullQueryReference"};function m(e){return"PreloadableConcreteRequest"===e.kind?void 0!==e.params.metadata.live:void 0!==h(e).params.metadata.live}e.exports=function(e,t){var n=null!=t?t:v,i=s();o();var l=u(),h=d(new Set([n])),y=p((function(){return n})),g=y[0],b=y[1],_=p((function(){return n})),R=_[0],E=_[1];n!==R&&(h.current.add(n),E(n),b(n));var P=c((function(){l.current&&(h.current.add(v),b(v))}),[l]),C=c((function(t,n){var r=null!=n&&n.hasOwnProperty("__environment")?{fetchPolicy:n.fetchPolicy,networkCacheConfig:n.networkCacheConfig,__nameForWarning:n.__nameForWarning}:n;if(l.current){var o,u=a(null!==(o=null==n?void 0:n.__environment)&&void 0!==o?o:i,e,t,r);h.current.add(u),b(u)}}),[i,e,b,l]),k=d(!1);return f((function(){return function(){k.current=!0}}),[]),f((function(){if(!0===k.current)return k.current=!1,void("NullQueryReference"!==g.kind&&C(g.variables,{fetchPolicy:g.fetchPolicy,networkCacheConfig:g.networkCacheConfig}));var t=h.current;if(l.current){var n,i=(0,r.default)(t);try{for(i.s();!(n=i.n()).done;){var a=n.value;if(a===g)break;t.delete(a),"NullQueryReference"!==a.kind&&(m(e)?a.dispose&&a.dispose():a.releaseQuery&&a.releaseQuery())}}catch(e){i.e(e)}finally{i.f()}}}),[g,l,C,e]),f((function(){return function(){var t,n=(0,r.default)(h.current);try{for(n.s();!(t=n.n()).done;){var i=t.value;"NullQueryReference"!==i.kind&&(m(e)?i.dispose&&i.dispose():i.releaseQuery&&i.releaseQuery())}}catch(e){n.e(e)}finally{n.f()}}}),[e]),["NullQueryReference"===g.kind?null:g,C,P]}},function(e,t,n){"use strict";var r=n(26),i=n(15),a=n(6).loadQuery,o=n(27),u=n(28),s=n(29),l=n(31),c=n(34),f=n(35),d=n(38),p=n(24),h=n(39),v=n(2),m=n(40),y=n(41),g=n(1);e.exports={ConnectionHandler:g.ConnectionHandler,applyOptimisticMutation:g.applyOptimisticMutation,commitLocalUpdate:g.commitLocalUpdate,commitMutation:g.commitMutation,graphql:g.graphql,readInlineData:g.readInlineData,requestSubscription:g.requestSubscription,EntryPointContainer:r,RelayEnvironmentProvider:o,fetchQuery:g.fetchQuery,loadQuery:a,loadEntryPoint:i,useFragment:s,useLazyLoadQuery:l,useEntryPointLoader:u,useQueryLoader:p,useMutation:c,usePaginationFragment:f,usePreloadedQuery:d,useRefetchableFragment:h,useRelayEnvironment:v,useSubscribeToInvalidationState:m,useSubscription:y}},function(e,t,n){"use strict";var r=n(9),i=n(2),a=n(0),o=n(0),u=o.useContext,s=o.useEffect,l=n(5);e.exports=function(e){var t=e.entryPointReference,n=e.props;l(!1===t.isDisposed,"<EntryPointContainer>: Expected entryPointReference to not be disposed yet. This is because disposing the entrypoint marks it for future garbage collection, and as such may no longer be present in the Relay store. In the future, this will become a hard error.");var o=t.getComponent,c=t.queries,f=t.entryPoints,d=t.extraProps,p=t.rootModuleID,h=o(),v=u(r),m=i();return s((function(){m.__log({name:"entrypoint.root.consume",profilerContext:v,rootModuleID:p})}),[m,v,p]),a.createElement(h,{entryPoints:f,extraProps:d,props:n,queries:c})}},function(e,t,n){"use strict";var r=n(0),i=n(14),a=r.useMemo;e.exports=function(e){var t=e.children,n=e.environment,o=e.getEnvironmentForActor,u=a((function(){return{environment:n,getEnvironmentForActor:o}}),[n,o]);return r.createElement(i.Provider,{value:u},t)}},function(e,t,n){"use strict";var r=n(4)(n(16)),i=n(15),a=n(6).useTrackLoadQueryInRender,o=n(8),u=n(0),s=u.useCallback,l=u.useEffect,c=u.useRef,f=u.useState,d={kind:"NullEntryPointReference"};e.exports=function(e,t,n){var u,p,h,v;a();var m=null!==(u=null==n||null===(p=n.TEST_ONLY__initialEntryPointData)||void 0===p?void 0:p.entryPointReference)&&void 0!==u?u:d,y=null!==(h=null==n||null===(v=n.TEST_ONLY__initialEntryPointData)||void 0===v?void 0:v.entryPointParams)&&void 0!==h?h:null,g=o(),b=c(new Set([m])),_=f(m),R=_[0],E=_[1],P=f(y),C=P[0],k=P[1],S=s((function(){if(g.current){var e={kind:"NullEntryPointReference"};b.current.add(e),E(e)}}),[E,g]),x=s((function(n){if(g.current){var r=i(e,t,n);b.current.add(r),E(r),k(n)}}),[e,t,E,g]),q=c(!1);return l((function(){return function(){q.current=!0}}),[]),l((function(){if(!0===q.current)return q.current=!1,void("NullEntryPointReference"!==R.kind&&null!=C&&x(C));var e=b.current;if(g.current){var t,n=(0,r.default)(e);try{for(n.s();!(t=n.n()).done;){var i=t.value;if(i===R)break;e.delete(i),"NullEntryPointReference"!==i.kind&&i.dispose()}}catch(e){n.e(e)}finally{n.f()}}}),[R,C,x,g]),l((function(){return function(){var e,t=(0,r.default)(b.current);try{for(t.s();!(e=t.n()).done;){var n=e.value;"NullEntryPointReference"!==n.kind&&n.dispose()}}catch(e){t.e(e)}finally{t.f()}}}),[]),["NullEntryPointReference"===R.kind?null:R,x,S]}},function(e,t,n){"use strict";var r=n(6).useTrackLoadQueryInRender,i=n(10),a=n(13),o=n(0).useDebugValue,u=n(1).getFragment;e.exports=function(e,t){r();var n=u(e);a(n,"first argument of useFragment()");var s=i(n,t,"useFragment()").data;return o({fragment:n.name,data:s}),s}},function(e,t){e.exports=l},function(e,t,n){"use strict";var r=n(6).useTrackLoadQueryInRender,i=n(20),a=n(22),o=n(2),u=n(1).__internal.fetchQuery;e.exports=function(e,t,n){r();var s=o(),l=a(e,t,n&&n.networkCacheConfig?n.networkCacheConfig:{force:!0});return i({componentDisplayName:"useLazyLoadQuery()",fetchKey:null==n?void 0:n.fetchKey,fetchObservable:u(s,l),fetchPolicy:null==n?void 0:n.fetchPolicy,query:l,renderPolicy:null==n?void 0:n.UNSTABLE_renderPolicy})}},function(e,t,n){"use strict";var r=n(33),i=n(0),a=i.useMemo,o=i.useRef,u=i.useState;e.exports=function(e){var t,n,i=o(0),s=u(e),l=s[0],c=s[1];return r(e,l)||(i.current=(null!==(n=i.current)&&void 0!==n?n:0)+1,c(e)),[a((function(){return e}),[i.current]),null!==(t=i.current)&&void 0!==t?t:0]}},function(e,t){e.exports=c},function(e,t,n){"use strict";var r=n(4)(n(7)),i=n(8),a=n(2),o=n(0),u=n(1).commitMutation,s=o.useState,l=o.useEffect,c=o.useRef,f=o.useCallback;e.exports=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u,n=a(),o=i(),d=c(n),p=c(e),h=c(new Set),v=s(!1),m=v[0],y=v[1],g=f((function(t){d.current===n&&p.current===e&&(h.current.delete(t),o.current&&y(h.current.size>0))}),[n,o,e]);l((function(){d.current===n&&p.current===e||(h.current=new Set,o.current&&y(!1),d.current=n,p.current=e)}),[n,o,e]);var b=f((function(i){var a=t(n,(0,r.default)((0,r.default)({},i),{},{mutation:e,onCompleted:function(e,t){var n;g(a),null===(n=i.onCompleted)||void 0===n||n.call(i,e,t)},onError:function(e){var t;g(a),null===(t=i.onError)||void 0===t||t.call(i,e)},onUnsubscribe:function(){var e;g(a),null===(e=i.onUnsubscribe)||void 0===e||e.call(i)},onNext:function(){var e;null===(e=i.onNext)||void 0===e||e.call(i)}}));return h.current.add(a),o.current&&y(!0),a}),[g,t,n,o,e]);return[b,m]}},function(e,t,n){"use strict";var r=n(4)(n(7)),i=n(36),a=n(23),o=n(13),u=n(0),s=u.useCallback,l=u.useDebugValue,c=u.useState,f=n(1),d=f.getFragment,p=f.getFragmentIdentifier,h=f.getPaginationMetadata;function v(e){var t=c(!1),n=t[0],a=t[1],o={start:function(){return a(!0)},complete:function(){return a(!1)},error:function(){return a(!1)}},u=i((0,r.default)((0,r.default)({},e),{},{observer:o,onReset:function(){return a(!1)}}));return[u[0],u[1],n,u[2]]}e.exports=function(e,t){var n=d(e);o(n,"first argument of usePaginationFragment()");var i=h(n,"usePaginationFragment()"),u=i.connectionPathInFragmentData,c=i.paginationRequest,f=i.paginationMetadata,m=i.identifierField,y=a(n,t,"usePaginationFragment()"),g=y.fragmentData,b=y.fragmentRef,_=y.refetch,R=p(n,b),E=v({componentDisplayName:"usePaginationFragment()",connectionPathInFragmentData:u,direction:"backward",fragmentData:g,fragmentIdentifier:R,fragmentNode:n,fragmentRef:b,identifierField:m,paginationMetadata:f,paginationRequest:c}),P=E[0],C=E[1],k=E[2],S=E[3],x=v({componentDisplayName:"usePaginationFragment()",connectionPathInFragmentData:u,direction:"forward",fragmentData:g,fragmentIdentifier:R,fragmentNode:n,fragmentRef:b,identifierField:m,paginationMetadata:f,paginationRequest:c}),q=x[0],w=x[1],I=x[2],F=x[3],D=s((function(e,t){return F(),S(),_(e,(0,r.default)((0,r.default)({},t),{},{__environment:void 0}))}),[F,S,_]);return l({fragment:n.name,data:g,hasNext:w,isLoadingNext:I,hasPrevious:C,isLoadingPrevious:k}),{data:g,loadNext:q,loadPrevious:P,hasNext:w,hasPrevious:C,isLoadingNext:I,isLoadingPrevious:k,refetch:D}}},function(e,t,n){"use strict";var r=n(4)(n(7)),i=n(21),a=n(8),o=n(37),u=n(2),s=n(3),l=n(0),c=l.useCallback,f=l.useEffect,d=l.useState,p=n(1),h=p.ConnectionInterface,v=p.__internal.fetchQuery,m=p.createOperationDescriptor,y=p.getPaginationVariables,g=p.getSelector,b=p.getValueAtPath,_=n(5);e.exports=function(e){var t=e.direction,n=e.fragmentNode,l=e.fragmentRef,p=e.fragmentIdentifier,R=e.fragmentData,E=e.connectionPathInFragmentData,P=e.paginationRequest,C=e.paginationMetadata,k=e.componentDisplayName,S=e.observer,x=e.onReset,q=e.identifierField,w=u(),I=i(),F=I.isFetchingRef,D=I.startFetch,N=I.disposeFetch,A=I.completeFetch,Q=null!=q&&null!=R&&"object"==typeof R?R[q]:null,T=a(),O=d(w),M=O[0],L=O[1],U=d(p),j=U[0],W=U[1],B=o(n,l);(w!==M||p!==j)&&(N(),x(),L(w),W(p));var V=function(e,t,n,r){var i,a,o=h.get(),u=o.EDGES,l=o.PAGE_INFO,c=o.HAS_NEXT_PAGE,f=o.HAS_PREV_PAGE,d=o.END_CURSOR,p=o.START_CURSOR,v=b(n,r);if(null==v)return{cursor:null,hasMore:!1};"object"!=typeof v&&s(!1,"Relay: Expected connection in fragment `%s` to have been `null`, or a plain object with %s and %s properties. Instead got `%s`.",t.name,u,l,v);var m=v[u],y=v[l];if(null==m||null==y)return{cursor:null,hasMore:!1};Array.isArray(m)||s(!1,"Relay: Expected connection in fragment `%s` to have a plural `%s` field. Instead got `%s`.",t.name,u,m),"object"!=typeof y&&s(!1,"Relay: Expected connection in fragment `%s` to have a `%s` field. Instead got `%s`.",t.name,l,y);var g,_="forward"===e?null!==(i=y[d])&&void 0!==i?i:null:null!==(a=y[p])&&void 0!==a?a:null;null!==_&&"string"!=typeof _&&s(!1,"Relay: Expected page info for connection in fragment `%s` to have a valid `%s`. Instead got `%s`.",t.name,p,_),g="forward"===e?null!=_&&!0===y[c]:null!=_&&!0===y[f];return{cursor:_,hasMore:g}}(t,n,R,E),K=V.cursor,H=V.hasMore;return f((function(){return function(){N()}}),[N]),[c((function(e,i){var a=null==i?void 0:i.onComplete;if(!0!==T.current)return _(!1,"Relay: Unexpected fetch on unmounted component for fragment `%s` in `%s`. It looks like some instances of your component are still trying to fetch data but they already unmounted. Please make sure you clear all timers, intervals, async calls, etc that may trigger a fetch.",n.name,k),{dispose:function(){}};var o=g(n,l);if(!0===F.current||null==R||B)return null==o&&_(!1,"Relay: Unexpected fetch while using a null fragment ref for fragment `%s` in `%s`. When fetching more items, we expect initial fragment data to be non-null. Please make sure you're passing a valid fragment ref to `%s` before paginating.",n.name,k,k),a&&a(null),{dispose:function(){}};(null==o||"PluralReaderSelector"===o.kind)&&s(!1,"Relay: Expected to be able to find a non-plural fragment owner for fragment `%s` when using `%s`. If you're seeing this, this is likely a bug in Relay.",n.name,k);var u=o.owner.variables,c=o.variables,f=null==i?void 0:i.UNSTABLE_extraVariables,d=(0,r.default)((0,r.default)({},u),c),p=y(t,e,K,d,(0,r.default)({},f),C);null!=q&&("string"!=typeof Q&&_(!1,"Relay: Expected result to have a string `%s` in order to refetch, got `%s`.",q,Q),p.id=Q);var h=m(P,p,{force:!0});return v(w,h).subscribe((0,r.default)((0,r.default)({},S),{},{start:function(e){D(e),S.start&&S.start(e)},complete:function(){A(),S.complete&&S.complete(),a&&a(null)},error:function(e){A(),S.error&&S.error(e),a&&a(e)}})),{dispose:N}}),[w,Q,t,K,D,N,A,F,B,R,n.name,l,k]),H,N]}},function(e,t,n){"use strict";var r=n(2),i=n(3),a=n(0),o=n(1),u=o.__internal.getObservableForActiveRequest,s=o.getSelector,l=a.useEffect,c=a.useState,f=a.useMemo;e.exports=function(e,t){var n=r(),a=f((function(){var r=s(e,t);return null==r?null:("SingularReaderSelector"!==r.kind&&i(!1,"useIsOperationNodeActive: Plural fragments are not supported."),u(n,r.owner))}),[n,e,t]),o=c(null!=a),d=o[0],p=o[1];return l((function(){var e;if(p(null!=a),null!=a){var t=function(){p(!1)};e=a.subscribe({complete:t,error:t})}return function(){e&&e.unsubscribe()}}),[a]),d}},function(e,t,n){"use strict";var r=n(6).useTrackLoadQueryInRender,i=n(20),a=n(22),o=n(2),u=n(3),s=n(0).useDebugValue,l=n(1).__internal,c=l.fetchQueryDeduped,f=l.fetchQuery,d=n(5);e.exports=function(e,t,n){r();var l,p=o(),h=t.fetchKey,v=t.fetchPolicy,m=t.source,y=t.variables,g=t.networkCacheConfig,b=a(e,y,g);if("PreloadedQuery_DEPRECATED"===t.kind)b.request.node.params.name!==t.name&&u(!1,"usePreloadedQuery(): Expected data to be prefetched for query `%s`, got prefetch results for query `%s`.",b.request.node.params.name,t.name),l={componentDisplayName:"usePreloadedQuery()",fetchKey:h,fetchObservable:c(p,b.request.identifier,(function(){return p===t.environment&&null!=m?p.executeWithSource({operation:b,source:m}):p.execute({operation:b})})),fetchPolicy:v,query:b,renderPolicy:null==n?void 0:n.UNSTABLE_renderPolicy};else{d(!1===t.isDisposed,"usePreloadedQuery(): Expected preloadedQuery to not be disposed yet. This is because disposing the query marks it for future garbage collection, and as such query results may no longer be present in the Relay store. In the future, this will become a hard error.");var _,R=f(p,b);null!=m&&p===t.environment?_=m.ifEmpty(R):p!==t.environment?(d(!1,"usePreloadedQuery(): usePreloadedQuery was passed a preloaded query that was created with a different environment than the one that is currently in context. In the future, this will become a hard error."),_=R):_=R,l={componentDisplayName:"usePreloadedQuery()",fetchObservable:_,fetchKey:h,fetchPolicy:v,query:b,renderPolicy:null==n?void 0:n.UNSTABLE_renderPolicy}}var E=i(l);return s({query:t.name,variables:t.variables,data:E,fetchKey:h,fetchPolicy:v,renderPolicy:null==n?void 0:n.UNSTABLE_renderPolicy}),E}},function(e,t,n){"use strict";var r=n(23),i=n(13),a=n(0).useDebugValue,o=n(1).getFragment;e.exports=function(e,t){var n=o(e);i(n,"first argument of useRefetchableFragment()");var u=r(n,t,"useRefetchableFragment()"),s=u.fragmentData,l=u.refetch;return a({fragment:n.name,data:s}),[s,l]}},function(e,t,n){"use strict";var r=n(2),i=n(0),a=i.useEffect,o=i.useRef;e.exports=function(e,t){var n=r(),i=o(null),u=Array.from(e).sort().join("");return a((function(){var r=n.getStore(),a=r.lookupInvalidationState(e),o=r.subscribeToInvalidationState(a,t);return i.current=o,function(){return o.dispose()}}),[u,t,n]),{dispose:function(){null!=i.current&&i.current.dispose()}}}},function(e,t,n){"use strict";var r=n(2),i=n(0).useEffect,a=n(1).requestSubscription;e.exports=function(e,t){var n=null!=t?t:a,o=r();i((function(){return n(o,e).dispose}),[o,e,n])}}])}));