react-relay 13.0.0 → 13.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (26) hide show
  1. package/README.md +3 -5
  2. package/ReactRelayContext.js +1 -1
  3. package/__flowtests__/__generated__/ReactRelayFragmentContainerFlowtest_viewer.graphql.js.flow +1 -3
  4. package/__flowtests__/__generated__/ReactRelayFragmentContainerFlowtest_viewer2.graphql.js.flow +1 -3
  5. package/__flowtests__/__generated__/ReactRelayPaginationContainerFlowtestQuery.graphql.js.flow +2 -4
  6. package/__flowtests__/__generated__/ReactRelayPaginationContainerFlowtest_viewer.graphql.js.flow +1 -3
  7. package/__flowtests__/__generated__/ReactRelayRefetchContainerFlowtestQuery.graphql.js.flow +2 -4
  8. package/__flowtests__/__generated__/ReactRelayRefetchContainerFlowtest_viewer.graphql.js.flow +1 -3
  9. package/__flowtests__/__generated__/RelayModernFlowtest_badref.graphql.js.flow +1 -3
  10. package/__flowtests__/__generated__/RelayModernFlowtest_notref.graphql.js.flow +1 -3
  11. package/__flowtests__/__generated__/RelayModernFlowtest_user.graphql.js.flow +1 -3
  12. package/__flowtests__/__generated__/RelayModernFlowtest_users.graphql.js.flow +1 -3
  13. package/hooks.js +1 -1
  14. package/index.js +1 -1
  15. package/legacy.js +1 -1
  16. package/lib/relay-hooks/loadEntryPoint.js +9 -3
  17. package/package.json +7 -3
  18. package/react-relay-hooks.js +2 -2
  19. package/react-relay-hooks.min.js +2 -2
  20. package/react-relay-legacy.js +1 -1
  21. package/react-relay-legacy.min.js +1 -1
  22. package/react-relay.js +2 -2
  23. package/react-relay.min.js +2 -2
  24. package/relay-hooks/__flowtests__/__generated__/useFragmentFlowtest_user.graphql.js.flow +1 -3
  25. package/relay-hooks/__flowtests__/__generated__/useFragmentFlowtest_users.graphql.js.flow +1 -3
  26. package/relay-hooks/loadEntryPoint.js.flow +12 -2
package/README.md CHANGED
@@ -1,12 +1,11 @@
1
- React APIs for Relay
2
- ---
1
+ ## React APIs for Relay
3
2
 
4
- This package contains a collection of React APIs: Hooks and Components that are integrated with Relay runtime.
3
+ This package contains a collection of React APIs: Hooks and Components that are
4
+ integrated with Relay runtime.
5
5
 
6
6
  Example:
7
7
 
8
8
  ```js
9
-
10
9
  // @flow
11
10
 
12
11
  import type {UserComponent_user$key} from 'UserComponent_user.graphql';
@@ -41,7 +40,6 @@ function UserComponent(props: Props) {
41
40
  </>
42
41
  );
43
42
  }
44
-
45
43
  ```
46
44
 
47
45
  For complete API reference, visit https://relay.dev/.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Relay v13.0.0
2
+ * Relay v13.1.0
3
3
  *
4
4
  * Copyright (c) Meta Platforms, Inc. and affiliates.
5
5
  *
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<6668406e80ad7dc93e7c813889280f83>>
7
+ * @generated SignedSource<<56e1daf6db87bf9886b3627a3e0d76f9>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -18,14 +18,12 @@
18
18
  import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  import type { FragmentType } from "relay-runtime";
20
20
  declare export opaque type ReactRelayFragmentContainerFlowtest_viewer$fragmentType: FragmentType;
21
- export type ReactRelayFragmentContainerFlowtest_viewer$ref = ReactRelayFragmentContainerFlowtest_viewer$fragmentType;
22
21
  export type ReactRelayFragmentContainerFlowtest_viewer$data = {|
23
22
  +actor: ?{|
24
23
  +id: string,
25
24
  |},
26
25
  +$fragmentType: ReactRelayFragmentContainerFlowtest_viewer$fragmentType,
27
26
  |};
28
- export type ReactRelayFragmentContainerFlowtest_viewer = ReactRelayFragmentContainerFlowtest_viewer$data;
29
27
  export type ReactRelayFragmentContainerFlowtest_viewer$key = {
30
28
  +$data?: ReactRelayFragmentContainerFlowtest_viewer$data,
31
29
  +$fragmentSpreads: ReactRelayFragmentContainerFlowtest_viewer$fragmentType,
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<480a62dc560b619c9f4e6cf75d80f890>>
7
+ * @generated SignedSource<<c4fb5411e941bc7c5102499b684cf810>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -18,14 +18,12 @@
18
18
  import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  import type { FragmentType } from "relay-runtime";
20
20
  declare export opaque type ReactRelayFragmentContainerFlowtest_viewer2$fragmentType: FragmentType;
21
- export type ReactRelayFragmentContainerFlowtest_viewer2$ref = ReactRelayFragmentContainerFlowtest_viewer2$fragmentType;
22
21
  export type ReactRelayFragmentContainerFlowtest_viewer2$data = {|
23
22
  +actor: ?{|
24
23
  +id: string,
25
24
  |},
26
25
  +$fragmentType: ReactRelayFragmentContainerFlowtest_viewer2$fragmentType,
27
26
  |};
28
- export type ReactRelayFragmentContainerFlowtest_viewer2 = ReactRelayFragmentContainerFlowtest_viewer2$data;
29
27
  export type ReactRelayFragmentContainerFlowtest_viewer2$key = {
30
28
  +$data?: ReactRelayFragmentContainerFlowtest_viewer2$data,
31
29
  +$fragmentSpreads: ReactRelayFragmentContainerFlowtest_viewer2$fragmentType,
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<b7185da5f330a37a0add055f5262b2bb>>
7
+ * @generated SignedSource<<059d6a6d94da6f9b3cf43a0418ecc7b8>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -21,15 +21,13 @@ export type ReactRelayPaginationContainerFlowtestQuery$variables = {|
21
21
  count: number,
22
22
  cursor?: ?string,
23
23
  |};
24
- export type ReactRelayPaginationContainerFlowtestQueryVariables = ReactRelayPaginationContainerFlowtestQuery$variables;
25
24
  export type ReactRelayPaginationContainerFlowtestQuery$data = {|
26
25
  +viewer: ?{|
27
26
  +$fragmentSpreads: ReactRelayPaginationContainerFlowtest_viewer$fragmentType,
28
27
  |},
29
28
  |};
30
- export type ReactRelayPaginationContainerFlowtestQueryResponse = ReactRelayPaginationContainerFlowtestQuery$data;
31
29
  export type ReactRelayPaginationContainerFlowtestQuery = {|
32
- variables: ReactRelayPaginationContainerFlowtestQueryVariables,
30
+ variables: ReactRelayPaginationContainerFlowtestQuery$variables,
33
31
  response: ReactRelayPaginationContainerFlowtestQuery$data,
34
32
  |};
35
33
  */
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<0c271737f13fd548bcf58e0e3ec9d4ad>>
7
+ * @generated SignedSource<<86f990ee88078c49934d0f28c6c31da4>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -18,7 +18,6 @@
18
18
  import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  import type { FragmentType } from "relay-runtime";
20
20
  declare export opaque type ReactRelayPaginationContainerFlowtest_viewer$fragmentType: FragmentType;
21
- export type ReactRelayPaginationContainerFlowtest_viewer$ref = ReactRelayPaginationContainerFlowtest_viewer$fragmentType;
22
21
  export type ReactRelayPaginationContainerFlowtest_viewer$data = {|
23
22
  +account_user: ?{|
24
23
  +friends: ?{|
@@ -31,7 +30,6 @@ export type ReactRelayPaginationContainerFlowtest_viewer$data = {|
31
30
  |},
32
31
  +$fragmentType: ReactRelayPaginationContainerFlowtest_viewer$fragmentType,
33
32
  |};
34
- export type ReactRelayPaginationContainerFlowtest_viewer = ReactRelayPaginationContainerFlowtest_viewer$data;
35
33
  export type ReactRelayPaginationContainerFlowtest_viewer$key = {
36
34
  +$data?: ReactRelayPaginationContainerFlowtest_viewer$data,
37
35
  +$fragmentSpreads: ReactRelayPaginationContainerFlowtest_viewer$fragmentType,
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<4966fff79753003b0e22a540764f020d>>
7
+ * @generated SignedSource<<a07bf128347274d353ab379de5eaef1f>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -21,15 +21,13 @@ export type ReactRelayRefetchContainerFlowtestQuery$variables = {|
21
21
  count: number,
22
22
  cursor?: ?string,
23
23
  |};
24
- export type ReactRelayRefetchContainerFlowtestQueryVariables = ReactRelayRefetchContainerFlowtestQuery$variables;
25
24
  export type ReactRelayRefetchContainerFlowtestQuery$data = {|
26
25
  +viewer: ?{|
27
26
  +$fragmentSpreads: ReactRelayRefetchContainerFlowtest_viewer$fragmentType,
28
27
  |},
29
28
  |};
30
- export type ReactRelayRefetchContainerFlowtestQueryResponse = ReactRelayRefetchContainerFlowtestQuery$data;
31
29
  export type ReactRelayRefetchContainerFlowtestQuery = {|
32
- variables: ReactRelayRefetchContainerFlowtestQueryVariables,
30
+ variables: ReactRelayRefetchContainerFlowtestQuery$variables,
33
31
  response: ReactRelayRefetchContainerFlowtestQuery$data,
34
32
  |};
35
33
  */
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<8a7c1dee99527959e2031640c3ee39e7>>
7
+ * @generated SignedSource<<6d9922010e1474b1214c383c394daa24>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -18,7 +18,6 @@
18
18
  import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  import type { FragmentType } from "relay-runtime";
20
20
  declare export opaque type ReactRelayRefetchContainerFlowtest_viewer$fragmentType: FragmentType;
21
- export type ReactRelayRefetchContainerFlowtest_viewer$ref = ReactRelayRefetchContainerFlowtest_viewer$fragmentType;
22
21
  export type ReactRelayRefetchContainerFlowtest_viewer$data = {|
23
22
  +account_user: ?{|
24
23
  +friends: ?{|
@@ -31,7 +30,6 @@ export type ReactRelayRefetchContainerFlowtest_viewer$data = {|
31
30
  |},
32
31
  +$fragmentType: ReactRelayRefetchContainerFlowtest_viewer$fragmentType,
33
32
  |};
34
- export type ReactRelayRefetchContainerFlowtest_viewer = ReactRelayRefetchContainerFlowtest_viewer$data;
35
33
  export type ReactRelayRefetchContainerFlowtest_viewer$key = {
36
34
  +$data?: ReactRelayRefetchContainerFlowtest_viewer$data,
37
35
  +$fragmentSpreads: ReactRelayRefetchContainerFlowtest_viewer$fragmentType,
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<da21127f700568aaf02b9cfa2a6d86f8>>
7
+ * @generated SignedSource<<050146f21476e7ed6edd2243d4c6b65d>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -19,13 +19,11 @@ import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  type RelayModernFlowtest_user$fragmentType = any;
20
20
  import type { FragmentType } from "relay-runtime";
21
21
  declare export opaque type RelayModernFlowtest_badref$fragmentType: FragmentType;
22
- export type RelayModernFlowtest_badref$ref = RelayModernFlowtest_badref$fragmentType;
23
22
  export type RelayModernFlowtest_badref$data = {|
24
23
  +id: string,
25
24
  +$fragmentSpreads: RelayModernFlowtest_user$fragmentType,
26
25
  +$fragmentType: RelayModernFlowtest_badref$fragmentType,
27
26
  |};
28
- export type RelayModernFlowtest_badref = RelayModernFlowtest_badref$data;
29
27
  export type RelayModernFlowtest_badref$key = {
30
28
  +$data?: RelayModernFlowtest_badref$data,
31
29
  +$fragmentSpreads: RelayModernFlowtest_badref$fragmentType,
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<5af505c845bc81cfc4ab5316649a2329>>
7
+ * @generated SignedSource<<d8eae7df6faa43d95f6140dc3c9ad3ba>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -19,13 +19,11 @@ import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  type RelayModernFlowtest_user$fragmentType = any;
20
20
  import type { FragmentType } from "relay-runtime";
21
21
  declare export opaque type RelayModernFlowtest_notref$fragmentType: FragmentType;
22
- export type RelayModernFlowtest_notref$ref = RelayModernFlowtest_notref$fragmentType;
23
22
  export type RelayModernFlowtest_notref$data = {|
24
23
  +id: string,
25
24
  +$fragmentSpreads: RelayModernFlowtest_user$fragmentType,
26
25
  +$fragmentType: RelayModernFlowtest_notref$fragmentType,
27
26
  |};
28
- export type RelayModernFlowtest_notref = RelayModernFlowtest_notref$data;
29
27
  export type RelayModernFlowtest_notref$key = {
30
28
  +$data?: RelayModernFlowtest_notref$data,
31
29
  +$fragmentSpreads: RelayModernFlowtest_notref$fragmentType,
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<59c4945eff10b906fbac41d74da830e3>>
7
+ * @generated SignedSource<<a7ba31d9d2381b0c8b700175be271b75>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -18,12 +18,10 @@
18
18
  import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  import type { FragmentType } from "relay-runtime";
20
20
  declare export opaque type RelayModernFlowtest_user$fragmentType: FragmentType;
21
- export type RelayModernFlowtest_user$ref = RelayModernFlowtest_user$fragmentType;
22
21
  export type RelayModernFlowtest_user$data = {|
23
22
  +name: ?string,
24
23
  +$fragmentType: RelayModernFlowtest_user$fragmentType,
25
24
  |};
26
- export type RelayModernFlowtest_user = RelayModernFlowtest_user$data;
27
25
  export type RelayModernFlowtest_user$key = {
28
26
  +$data?: RelayModernFlowtest_user$data,
29
27
  +$fragmentSpreads: RelayModernFlowtest_user$fragmentType,
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @generated SignedSource<<0f29cb3f58c5e6863095be5bb78fa2ba>>
7
+ * @generated SignedSource<<d032f6e721c9c9cdd034cdd93dfcbad6>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -18,12 +18,10 @@
18
18
  import type { Fragment, ReaderFragment } from 'relay-runtime';
19
19
  import type { FragmentType } from "relay-runtime";
20
20
  declare export opaque type RelayModernFlowtest_users$fragmentType: FragmentType;
21
- export type RelayModernFlowtest_users$ref = RelayModernFlowtest_users$fragmentType;
22
21
  export type RelayModernFlowtest_users$data = $ReadOnlyArray<{|
23
22
  +name: ?string,
24
23
  +$fragmentType: RelayModernFlowtest_users$fragmentType,
25
24
  |}>;
26
- export type RelayModernFlowtest_users = RelayModernFlowtest_users$data;
27
25
  export type RelayModernFlowtest_users$key = $ReadOnlyArray<{
28
26
  +$data?: RelayModernFlowtest_users$data,
29
27
  +$fragmentSpreads: RelayModernFlowtest_users$fragmentType,
package/hooks.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Relay v13.0.0
2
+ * Relay v13.1.0
3
3
  *
4
4
  * Copyright (c) Meta Platforms, Inc. and affiliates.
5
5
  *
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Relay v13.0.0
2
+ * Relay v13.1.0
3
3
  *
4
4
  * Copyright (c) Meta Platforms, Inc. and affiliates.
5
5
  *
package/legacy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Relay v13.0.0
2
+ * Relay v13.1.0
3
3
  *
4
4
  * Copyright (c) Meta Platforms, Inc. and affiliates.
5
5
  *
@@ -86,16 +86,22 @@ function loadEntryPoint(environmentProvider, entryPoint, entryPointParams) {
86
86
  entryPoints: preloadedEntryPoints,
87
87
  extraProps: extraProps !== null && extraProps !== void 0 ? extraProps : null,
88
88
  getComponent: function getComponent() {
89
- var component = entryPoint.root.getModuleIfRequired();
89
+ var componentModule = entryPoint.root.getModuleIfRequired();
90
90
 
91
- if (component == null) {
91
+ if (componentModule == null) {
92
92
  var _loadingPromise;
93
93
 
94
94
  loadingPromise = (_loadingPromise = loadingPromise) !== null && _loadingPromise !== void 0 ? _loadingPromise : entryPoint.root.load();
95
95
  throw loadingPromise;
96
- } // $FlowFixMe[incompatible-cast] - trust me Flow, its entryPoint component
96
+ } // On certain platforms, getting an es6 module with a default export from a JSResource will return an object like
97
+ // {default: module}, so let's assume that if the "component" has a static property named "default"
98
+ // that it's actually an es6 module wrapper, so unwrap it. This won't work for React classes with a static property named "default", but
99
+ // that's probably a worthwhile trade-off.
97
100
 
98
101
 
102
+ var component = // $FlowIgnore[prop-missing]
103
+ componentModule["default"] != null ? componentModule["default"] : componentModule; // $FlowFixMe[incompatible-cast] - trust me Flow, its entryPoint component
104
+
99
105
  return component;
100
106
  },
101
107
 
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": "13.0.0",
4
+ "version": "13.1.0",
5
5
  "keywords": [
6
6
  "graphql",
7
7
  "relay",
@@ -10,13 +10,17 @@
10
10
  "license": "MIT",
11
11
  "homepage": "https://relay.dev",
12
12
  "bugs": "https://github.com/facebook/relay/issues",
13
- "repository": "facebook/relay",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "https://github.com/facebook/relay.git",
16
+ "directory": "packages/react-relay"
17
+ },
14
18
  "dependencies": {
15
19
  "@babel/runtime": "^7.0.0",
16
20
  "fbjs": "^3.0.2",
17
21
  "invariant": "^2.2.4",
18
22
  "nullthrows": "^1.1.1",
19
- "relay-runtime": "13.0.0"
23
+ "relay-runtime": "13.1.0"
20
24
  },
21
25
  "peerDependencies": {
22
26
  "react": "^16.9.0 || ^17"
@@ -1,4 +1,4 @@
1
1
  /**
2
- * Relay v13.0.0
2
+ * Relay v13.1.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("@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])}}])}));
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 null!=t.default?t.default: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])}}])}));