react-relay 12.0.0 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +47 -0
  3. package/ReactRelayContainerUtils.js.flow +1 -1
  4. package/ReactRelayContext.js +2 -2
  5. package/ReactRelayContext.js.flow +3 -4
  6. package/ReactRelayFragmentContainer.js.flow +11 -17
  7. package/ReactRelayFragmentMockRenderer.js.flow +2 -2
  8. package/ReactRelayLocalQueryRenderer.js.flow +7 -8
  9. package/ReactRelayPaginationContainer.js.flow +30 -40
  10. package/ReactRelayQueryFetcher.js.flow +10 -11
  11. package/ReactRelayQueryRenderer.js.flow +16 -16
  12. package/ReactRelayQueryRendererContext.js.flow +1 -1
  13. package/ReactRelayRefetchContainer.js.flow +25 -33
  14. package/ReactRelayTestMocker.js.flow +17 -15
  15. package/ReactRelayTypes.js.flow +11 -11
  16. package/RelayContext.js.flow +4 -4
  17. package/__flowtests__/ReactRelayFragmentContainer-flowtest.js.flow +2 -3
  18. package/__flowtests__/ReactRelayPaginationContainer-flowtest.js.flow +2 -3
  19. package/__flowtests__/ReactRelayRefetchContainer-flowtest.js.flow +2 -3
  20. package/__flowtests__/RelayModern-flowtest.js.flow +79 -47
  21. package/__flowtests__/RelayModernFlowtest_badref.graphql.js.flow +6 -5
  22. package/__flowtests__/RelayModernFlowtest_notref.graphql.js.flow +6 -5
  23. package/__flowtests__/RelayModernFlowtest_user.graphql.js.flow +5 -4
  24. package/__flowtests__/RelayModernFlowtest_users.graphql.js.flow +5 -4
  25. package/__flowtests__/__generated__/ReactRelayFragmentContainerFlowtest_viewer.graphql.js.flow +14 -11
  26. package/__flowtests__/__generated__/ReactRelayFragmentContainerFlowtest_viewer2.graphql.js.flow +14 -11
  27. package/__flowtests__/__generated__/ReactRelayPaginationContainerFlowtestQuery.graphql.js.flow +14 -9
  28. package/__flowtests__/__generated__/ReactRelayPaginationContainerFlowtest_viewer.graphql.js.flow +14 -11
  29. package/__flowtests__/__generated__/ReactRelayRefetchContainerFlowtestQuery.graphql.js.flow +14 -9
  30. package/__flowtests__/__generated__/ReactRelayRefetchContainerFlowtest_viewer.graphql.js.flow +14 -11
  31. package/__flowtests__/__generated__/RelayModernFlowtest_badref.graphql.js.flow +16 -13
  32. package/__flowtests__/__generated__/RelayModernFlowtest_notref.graphql.js.flow +16 -13
  33. package/__flowtests__/__generated__/RelayModernFlowtest_user.graphql.js.flow +14 -11
  34. package/__flowtests__/__generated__/RelayModernFlowtest_users.graphql.js.flow +14 -11
  35. package/assertFragmentMap.js.flow +3 -3
  36. package/buildReactRelayContainer.js.flow +12 -11
  37. package/getRootVariablesForFragments.js.flow +3 -5
  38. package/hooks.js +2 -2
  39. package/hooks.js.flow +4 -6
  40. package/index.js +2 -2
  41. package/index.js.flow +5 -7
  42. package/isRelayEnvironment.js.flow +1 -1
  43. package/jest-react/enqueueTask.js.flow +2 -2
  44. package/jest-react/index.js.flow +1 -1
  45. package/jest-react/internalAct.js.flow +2 -4
  46. package/legacy.js +2 -2
  47. package/legacy.js.flow +1 -1
  48. package/lib/ReactRelayContainerUtils.js +1 -1
  49. package/lib/ReactRelayContext.js +1 -1
  50. package/lib/ReactRelayFragmentContainer.js +5 -5
  51. package/lib/ReactRelayFragmentMockRenderer.js +3 -3
  52. package/lib/ReactRelayLocalQueryRenderer.js +8 -9
  53. package/lib/ReactRelayPaginationContainer.js +19 -23
  54. package/lib/ReactRelayQueryFetcher.js +3 -3
  55. package/lib/ReactRelayQueryRenderer.js +5 -5
  56. package/lib/ReactRelayQueryRendererContext.js +1 -1
  57. package/lib/ReactRelayRefetchContainer.js +13 -15
  58. package/lib/ReactRelayTestMocker.js +8 -9
  59. package/lib/ReactRelayTypes.js +1 -1
  60. package/lib/RelayContext.js +4 -3
  61. package/lib/assertFragmentMap.js +3 -2
  62. package/lib/buildReactRelayContainer.js +8 -8
  63. package/lib/getRootVariablesForFragments.js +2 -3
  64. package/lib/hooks.js +6 -6
  65. package/lib/index.js +8 -8
  66. package/lib/isRelayEnvironment.js +1 -1
  67. package/lib/jest-react/enqueueTask.js +1 -1
  68. package/lib/jest-react/internalAct.js +3 -4
  69. package/lib/legacy.js +1 -1
  70. package/lib/multi-actor/ActorChange.js +3 -3
  71. package/lib/multi-actor/index.js +1 -1
  72. package/lib/multi-actor/useRelayActorEnvironment.js +3 -3
  73. package/lib/readContext.js +1 -1
  74. package/lib/relay-hooks/EntryPointContainer.react.js +4 -4
  75. package/lib/relay-hooks/EntryPointTypes.flow.js +1 -1
  76. package/lib/relay-hooks/FragmentResource.js +242 -46
  77. package/lib/relay-hooks/InternalLogger.js +1 -1
  78. package/lib/relay-hooks/LRUCache.js +1 -1
  79. package/lib/relay-hooks/LazyLoadEntryPointContainer_DEPRECATED.react.js +5 -5
  80. package/lib/relay-hooks/MatchContainer.js +2 -2
  81. package/lib/relay-hooks/ProfilerContext.js +1 -1
  82. package/lib/relay-hooks/QueryResource.js +84 -5
  83. package/lib/relay-hooks/RelayEnvironmentProvider.js +1 -1
  84. package/lib/relay-hooks/SuspenseResource.js +130 -0
  85. package/lib/relay-hooks/loadEntryPoint.js +1 -1
  86. package/lib/relay-hooks/loadQuery.js +9 -10
  87. package/lib/relay-hooks/preloadQuery_DEPRECATED.js +25 -11
  88. package/lib/relay-hooks/prepareEntryPoint_DEPRECATED.js +1 -1
  89. package/lib/relay-hooks/useBlockingPaginationFragment.js +3 -3
  90. package/lib/relay-hooks/useEntryPointLoader.js +3 -3
  91. package/lib/relay-hooks/useFetchTrackingRef.js +3 -2
  92. package/lib/relay-hooks/useFragment.js +7 -7
  93. package/lib/relay-hooks/useFragmentNode.js +5 -5
  94. package/lib/relay-hooks/useIsMountedRef.js +1 -1
  95. package/lib/relay-hooks/useIsOperationNodeActive.js +3 -3
  96. package/lib/relay-hooks/useIsParentQueryActive.js +1 -1
  97. package/lib/relay-hooks/useLazyLoadQuery.js +4 -4
  98. package/lib/relay-hooks/useLazyLoadQueryNode.js +5 -5
  99. package/lib/relay-hooks/useLoadMoreFunction.js +8 -10
  100. package/lib/relay-hooks/useMemoOperationDescriptor.js +3 -3
  101. package/lib/relay-hooks/useMemoVariables.js +3 -3
  102. package/lib/relay-hooks/useMutation.js +18 -7
  103. package/lib/relay-hooks/usePaginationFragment.js +1 -1
  104. package/lib/relay-hooks/usePreloadedQuery.js +6 -6
  105. package/lib/relay-hooks/useQueryLoader.js +5 -5
  106. package/lib/relay-hooks/useRefetchableFragment.js +1 -1
  107. package/lib/relay-hooks/useRefetchableFragmentNode.js +11 -13
  108. package/lib/relay-hooks/useRelayEnvironment.js +3 -3
  109. package/lib/relay-hooks/useStaticFragmentNodeWarning.js +3 -3
  110. package/lib/relay-hooks/useSubscribeToInvalidationState.js +3 -2
  111. package/lib/relay-hooks/useSubscription.js +1 -1
  112. package/multi-actor/ActorChange.js.flow +4 -5
  113. package/multi-actor/index.js.flow +1 -1
  114. package/multi-actor/useRelayActorEnvironment.js.flow +6 -8
  115. package/package.json +3 -3
  116. package/react-relay-hooks.js +2 -2
  117. package/react-relay-hooks.min.js +3 -3
  118. package/react-relay-legacy.js +2 -2
  119. package/react-relay-legacy.min.js +3 -3
  120. package/react-relay.js +2 -2
  121. package/react-relay.min.js +3 -3
  122. package/readContext.js.flow +1 -1
  123. package/relay-hooks/EntryPointContainer.react.js.flow +9 -16
  124. package/relay-hooks/EntryPointTypes.flow.js.flow +19 -25
  125. package/relay-hooks/FragmentResource.js.flow +221 -35
  126. package/relay-hooks/InternalLogger.js.flow +1 -1
  127. package/relay-hooks/LRUCache.js.flow +1 -1
  128. package/relay-hooks/LazyLoadEntryPointContainer_DEPRECATED.react.js.flow +33 -47
  129. package/relay-hooks/MatchContainer.js.flow +4 -3
  130. package/relay-hooks/ProfilerContext.js.flow +1 -1
  131. package/relay-hooks/QueryResource.js.flow +120 -18
  132. package/relay-hooks/RelayEnvironmentProvider.js.flow +10 -10
  133. package/relay-hooks/SuspenseResource.js.flow +115 -0
  134. package/relay-hooks/__flowtests__/EntryPointTypes/EntryPointElementConfig-flowtest.js.flow +5 -4
  135. package/relay-hooks/__flowtests__/EntryPointTypes/NestedEntrypoints-flowtest.js.flow +2 -2
  136. package/relay-hooks/__flowtests__/__generated__/useFragmentFlowtest_user.graphql.js.flow +59 -0
  137. package/relay-hooks/__flowtests__/__generated__/useFragmentFlowtest_users.graphql.js.flow +61 -0
  138. package/relay-hooks/__flowtests__/useBlockingPaginationFragment-flowtest.js.flow +11 -10
  139. package/relay-hooks/__flowtests__/useFragment-flowtest.js.flow +55 -32
  140. package/relay-hooks/__flowtests__/usePaginationFragment-flowtest.js.flow +11 -10
  141. package/relay-hooks/__flowtests__/useRefetchableFragment-flowtest.js.flow +11 -10
  142. package/relay-hooks/__flowtests__/utils.js.flow +21 -32
  143. package/relay-hooks/loadEntryPoint.js.flow +7 -13
  144. package/relay-hooks/loadQuery.js.flow +23 -24
  145. package/relay-hooks/preloadQuery_DEPRECATED.js.flow +30 -14
  146. package/relay-hooks/prepareEntryPoint_DEPRECATED.js.flow +7 -13
  147. package/relay-hooks/useBlockingPaginationFragment.js.flow +13 -14
  148. package/relay-hooks/useEntryPointLoader.js.flow +8 -11
  149. package/relay-hooks/useFetchTrackingRef.js.flow +3 -3
  150. package/relay-hooks/useFragment.js.flow +31 -62
  151. package/relay-hooks/useFragmentNode.js.flow +6 -8
  152. package/relay-hooks/useIsMountedRef.js.flow +1 -1
  153. package/relay-hooks/useIsOperationNodeActive.js.flow +4 -6
  154. package/relay-hooks/useIsParentQueryActive.js.flow +4 -5
  155. package/relay-hooks/useLazyLoadQuery.js.flow +14 -16
  156. package/relay-hooks/useLazyLoadQueryNode.js.flow +12 -14
  157. package/relay-hooks/useLoadMoreFunction.js.flow +20 -28
  158. package/relay-hooks/useMemoOperationDescriptor.js.flow +6 -8
  159. package/relay-hooks/useMemoVariables.js.flow +7 -7
  160. package/relay-hooks/useMutation.js.flow +27 -27
  161. package/relay-hooks/usePaginationFragment.js.flow +38 -47
  162. package/relay-hooks/usePreloadedQuery.js.flow +14 -20
  163. package/relay-hooks/useQueryLoader.js.flow +14 -17
  164. package/relay-hooks/useRefetchableFragment.js.flow +8 -9
  165. package/relay-hooks/useRefetchableFragmentNode.js.flow +23 -31
  166. package/relay-hooks/useRelayEnvironment.js.flow +3 -5
  167. package/relay-hooks/useStaticFragmentNodeWarning.js.flow +3 -4
  168. package/relay-hooks/useSubscribeToInvalidationState.js.flow +4 -7
  169. package/relay-hooks/useSubscription.js.flow +7 -8
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -12,11 +12,11 @@
12
12
 
13
13
  'use strict';
14
14
 
15
- const invariant = require('invariant');
16
- const isRelayEnvironment = require('./isRelayEnvironment');
17
-
18
15
  import type {RelayContext} from 'relay-runtime';
19
16
 
17
+ const isRelayEnvironment = require('./isRelayEnvironment');
18
+ const invariant = require('invariant');
19
+
20
20
  /**
21
21
  * Asserts that the input is a matches the `RelayContext` type defined in
22
22
  * `RelayEnvironmentTypes` and returns it as that type.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -12,11 +12,10 @@
12
12
 
13
13
  'use strict';
14
14
 
15
- const React = require('react');
16
-
17
15
  const {
18
16
  createContainer: createFragmentContainer,
19
17
  } = require('../ReactRelayFragmentContainer');
18
+ const React = require('react');
20
19
  const {graphql} = require('relay-runtime');
21
20
 
22
21
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -12,11 +12,10 @@
12
12
 
13
13
  'use strict';
14
14
 
15
- const React = require('react');
16
-
17
15
  const {
18
16
  createContainer: createPaginationContainer,
19
17
  } = require('../ReactRelayPaginationContainer');
18
+ const React = require('react');
20
19
  const {graphql} = require('relay-runtime');
21
20
 
22
21
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -12,11 +12,10 @@
12
12
 
13
13
  'use strict';
14
14
 
15
- const React = require('react');
16
-
17
15
  const {
18
16
  createContainer: createRefetchContainer,
19
17
  } = require('../ReactRelayRefetchContainer');
18
+ const React = require('react');
20
19
  const {graphql} = require('relay-runtime');
21
20
 
22
21
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -12,15 +12,6 @@
12
12
 
13
13
  'use strict';
14
14
 
15
- const React = require('react');
16
-
17
- declare function nullthrows<T>(x: ?T): T;
18
-
19
- const {
20
- createContainer: createFragmentContainer,
21
- } = require('../ReactRelayFragmentContainer');
22
- const {graphql} = require('relay-runtime');
23
-
24
15
  import type {$FragmentRef} from '../ReactRelayTypes';
25
16
  import type {RelayModernFlowtest_badref} from './RelayModernFlowtest_badref.graphql';
26
17
  import type {RelayModernFlowtest_notref} from './RelayModernFlowtest_notref.graphql';
@@ -33,6 +24,14 @@ import type {
33
24
  RelayModernFlowtest_users$ref,
34
25
  } from './RelayModernFlowtest_users.graphql';
35
26
 
27
+ const {
28
+ createContainer: createFragmentContainer,
29
+ } = require('../ReactRelayFragmentContainer');
30
+ const React = require('react');
31
+ const {graphql} = require('relay-runtime');
32
+
33
+ declare function nullthrows<T>(x: ?T): T;
34
+
36
35
  class NotReferencedTest_ extends React.Component<{
37
36
  notref: RelayModernFlowtest_notref,
38
37
  ...
@@ -97,7 +96,7 @@ class SingularTest extends React.Component<{
97
96
  return null;
98
97
  }
99
98
  }
100
- SingularTest = createFragmentContainer(SingularTest, {
99
+ const SingularTestFragment = createFragmentContainer(SingularTest, {
101
100
  user: graphql`
102
101
  fragment RelayModernFlowtest_user on User {
103
102
  name
@@ -120,7 +119,7 @@ class PluralTest extends React.Component<{
120
119
  return null;
121
120
  }
122
121
  }
123
- PluralTest = createFragmentContainer(PluralTest, {
122
+ const PluralTestFragment = createFragmentContainer(PluralTest, {
124
123
  users: graphql`
125
124
  fragment RelayModernFlowtest_users on User @relay(plural: true) {
126
125
  name
@@ -129,46 +128,71 @@ PluralTest = createFragmentContainer(PluralTest, {
129
128
  });
130
129
 
131
130
  declare var aUserRef: {
132
- +$fragmentRefs: RelayModernFlowtest_user$ref,
131
+ +$fragmentSpreads: RelayModernFlowtest_user$ref,
133
132
  ...
134
133
  };
135
134
 
136
135
  declare var oneOfUsersRef: {
137
- +$fragmentRefs: RelayModernFlowtest_users$ref,
136
+ +$fragmentSpreads: RelayModernFlowtest_users$ref,
138
137
  ...
139
138
  };
140
139
 
141
140
  declare var usersRef: $ReadOnlyArray<{
142
- +$fragmentRefs: RelayModernFlowtest_users$ref,
141
+ +$fragmentSpreads: RelayModernFlowtest_users$ref,
143
142
  ...
144
143
  }>;
145
144
 
146
145
  declare var nonUserRef: {
147
- +$fragmentRefs: {thing: true, ...},
146
+ +$fragmentSpreads: {thing: true, ...},
148
147
  ...
149
148
  };
150
149
 
151
150
  function cb(): void {}
152
151
 
153
- // $FlowExpectedError - can't pass null for user
154
- <SingularTest onClick={cb} string="x" user={null} nullableUser={null} />;
152
+ <SingularTestFragment
153
+ onClick={cb}
154
+ string="x"
155
+ // $FlowExpectedError - can't pass null for user
156
+ user={null}
157
+ nullableUser={null}
158
+ />;
155
159
  // $FlowExpectedError - user is required
156
- <SingularTest onClick={cb} string="x" nullableUser={null} />;
157
- // $FlowExpectedError - can't pass non-user ref for user
158
- <SingularTest onClick={cb} string="x" user={nonUserRef} nullableUser={null} />;
159
- // $FlowExpectedError - `cb` prop is not a function
160
- <SingularTest onClick="cb" string="x" user={aUserRef} nullableUser={null} />;
161
- // $FlowExpectedError - `string` prop is not a string
162
- <SingularTest onClick={cb} string={1} user={aUserRef} nullableUser={null} />;
163
-
164
- <SingularTest onClick={cb} string="x" user={aUserRef} nullableUser={null} />;
165
- <SingularTest
160
+ <SingularTestFragment onClick={cb} string="x" nullableUser={null} />;
161
+ <SingularTestFragment
162
+ onClick={cb}
163
+ string="x"
164
+ // $FlowExpectedError - can't pass non-user ref for user
165
+ user={nonUserRef}
166
+ nullableUser={null}
167
+ />;
168
+ <SingularTestFragment
169
+ // $FlowExpectedError - `cb` prop is not a function
170
+ onClick="cb"
171
+ string="x"
172
+ user={aUserRef}
173
+ nullableUser={null}
174
+ />;
175
+ <SingularTestFragment
176
+ onClick={cb}
177
+ // $FlowExpectedError - `string` prop is not a string
178
+ string={1}
179
+ user={aUserRef}
180
+ nullableUser={null}
181
+ />;
182
+
183
+ <SingularTestFragment
184
+ onClick={cb}
185
+ string="x"
186
+ user={aUserRef}
187
+ nullableUser={null}
188
+ />;
189
+ <SingularTestFragment
166
190
  onClick={cb}
167
191
  string="x"
168
192
  user={aUserRef}
169
193
  nullableUser={aUserRef}
170
194
  />;
171
- <SingularTest
195
+ <SingularTestFragment
172
196
  onClick={cb}
173
197
  string="x"
174
198
  user={aUserRef}
@@ -177,7 +201,7 @@ function cb(): void {}
177
201
  />;
178
202
 
179
203
  // $FlowExpectedError - onClick is required
180
- <SingularTest
204
+ <SingularTestFragment
181
205
  string="x"
182
206
  user={aUserRef}
183
207
  nullableUser={null}
@@ -186,13 +210,13 @@ function cb(): void {}
186
210
  />;
187
211
 
188
212
  declare var aComplexUserRef: {
189
- +$fragmentRefs: {thing1: true, ...} & RelayModernFlowtest_user$ref & {
213
+ +$fragmentSpreads: {thing1: true, ...} & RelayModernFlowtest_user$ref & {
190
214
  thing2: true,
191
215
  ...
192
216
  },
193
217
  ...
194
218
  };
195
- <SingularTest
219
+ <SingularTestFragment
196
220
  string="x"
197
221
  onClick={cb}
198
222
  user={aComplexUserRef}
@@ -201,34 +225,42 @@ declare var aComplexUserRef: {
201
225
  />;
202
226
 
203
227
  // $FlowExpectedError - can't pass null for user
204
- <PluralTest users={null} nullableUsers={null} />;
228
+ <PluralTestFragment users={null} nullableUsers={null} />;
205
229
  // $FlowExpectedError - users is required
206
- <PluralTest nullableUsers={null} />;
230
+ <PluralTestFragment nullableUsers={null} />;
207
231
  // $FlowExpectedError - can't pass non-user refs for user
208
- <PluralTest users={[nonUserRef]} nullableUsers={null} />;
232
+ <PluralTestFragment users={[nonUserRef]} nullableUsers={null} />;
209
233
 
210
- <PluralTest users={usersRef} nullableUsers={null} />;
234
+ <PluralTestFragment users={usersRef} nullableUsers={null} />;
211
235
 
212
- <PluralTest
236
+ <PluralTestFragment
213
237
  users={([oneOfUsersRef]: Array<typeof oneOfUsersRef>)}
214
238
  nullableUsers={null}
215
239
  />;
216
- <PluralTest users={[oneOfUsersRef]} nullableUsers={null} />;
240
+ <PluralTestFragment users={[oneOfUsersRef]} nullableUsers={null} />;
217
241
 
218
- <PluralTest users={usersRef} nullableUsers={[oneOfUsersRef]} />;
219
- <PluralTest users={usersRef} nullableUsers={null} optionalUsers={usersRef} />;
220
- // $FlowExpectedError - optional, not nullable!
221
- <PluralTest users={usersRef} nullableUsers={null} optionalUsers={null} />;
242
+ <PluralTestFragment users={usersRef} nullableUsers={[oneOfUsersRef]} />;
243
+ <PluralTestFragment
244
+ users={usersRef}
245
+ nullableUsers={null}
246
+ optionalUsers={usersRef}
247
+ />;
248
+ <PluralTestFragment
249
+ users={usersRef}
250
+ nullableUsers={null}
251
+ // $FlowExpectedError - optional, not nullable!
252
+ optionalUsers={null}
253
+ />;
222
254
 
223
255
  class AnyTest extends React.Component<{|
224
256
  anything: any,
225
257
  |}> {}
226
258
  const AnyTestContainer = createFragmentContainer(AnyTest, {});
227
259
 
228
- <AnyTest anything={42} />;
229
- <AnyTest anything={null} />;
230
- <AnyTest anything={() => {}} />;
260
+ <AnyTestContainer anything={42} />;
261
+ <AnyTestContainer anything={null} />;
262
+ <AnyTestContainer anything={() => {}} />;
231
263
  // $FlowExpectedError - any other prop can not be passed
232
- <AnyTest anything={null} anythingElse={42} />;
264
+ <AnyTestContainer anything={null} anythingElse={42} />;
233
265
  // $FlowExpectedError - anything has to be passed
234
- <AnyTest />;
266
+ <AnyTestContainer />;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -13,10 +13,11 @@
13
13
  'use strict';
14
14
 
15
15
  import type {RelayModernFlowtest_user$ref} from './RelayModernFlowtest_user.graphql';
16
- import type {FragmentReference} from 'relay-runtime';
17
- declare export opaque type RelayModernFlowtest_badref$ref: FragmentReference;
16
+ import type {FragmentType} from 'relay-runtime';
17
+
18
+ declare export opaque type RelayModernFlowtest_badref$ref: FragmentType;
18
19
  export type RelayModernFlowtest_badref = {|
19
20
  +id: string,
20
- +$fragmentRefs: RelayModernFlowtest_user$ref,
21
- +$refType: RelayModernFlowtest_badref$ref,
21
+ +$fragmentSpreads: RelayModernFlowtest_user$ref,
22
+ +$fragmentType: RelayModernFlowtest_badref$ref,
22
23
  |};
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -13,10 +13,11 @@
13
13
  'use strict';
14
14
 
15
15
  import type {RelayModernFlowtest_user$ref} from './RelayModernFlowtest_user.graphql';
16
- import type {FragmentReference} from 'relay-runtime';
17
- declare export opaque type RelayModernFlowtest_notref$ref: FragmentReference;
16
+ import type {FragmentType} from 'relay-runtime';
17
+
18
+ declare export opaque type RelayModernFlowtest_notref$ref: FragmentType;
18
19
  export type RelayModernFlowtest_notref = {|
19
20
  +id: string,
20
- +$fragmentRefs: RelayModernFlowtest_user$ref,
21
- +$refType: RelayModernFlowtest_notref$ref,
21
+ +$fragmentSpreads: RelayModernFlowtest_user$ref,
22
+ +$fragmentType: RelayModernFlowtest_notref$ref,
22
23
  |};
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -12,9 +12,10 @@
12
12
 
13
13
  'use strict';
14
14
 
15
- import type {FragmentReference} from 'relay-runtime';
16
- declare export opaque type RelayModernFlowtest_user$ref: FragmentReference;
15
+ import type {FragmentType} from 'relay-runtime';
16
+
17
+ declare export opaque type RelayModernFlowtest_user$ref: FragmentType;
17
18
  export type RelayModernFlowtest_user = {|
18
19
  +name: ?string,
19
- +$refType: RelayModernFlowtest_user$ref,
20
+ +$fragmentType: RelayModernFlowtest_user$ref,
20
21
  |};
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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.
@@ -12,9 +12,10 @@
12
12
 
13
13
  'use strict';
14
14
 
15
- import type {FragmentReference} from 'relay-runtime';
16
- declare export opaque type RelayModernFlowtest_users$ref: FragmentReference;
15
+ import type {FragmentType} from 'relay-runtime';
16
+
17
+ declare export opaque type RelayModernFlowtest_users$ref: FragmentType;
17
18
  export type RelayModernFlowtest_users = $ReadOnlyArray<{|
18
19
  +name: ?string,
19
- +$refType: RelayModernFlowtest_users$ref,
20
+ +$fragmentType: RelayModernFlowtest_users$ref,
20
21
  |}>;
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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<<1ce2f82c0db506fc16437a01f7031493>>
7
+ * @generated SignedSource<<6668406e80ad7dc93e7c813889280f83>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -15,20 +15,20 @@
15
15
  'use strict';
16
16
 
17
17
  /*::
18
- import type { ReaderFragment } from 'relay-runtime';
19
- import type { FragmentReference } from "relay-runtime";
20
- declare export opaque type ReactRelayFragmentContainerFlowtest_viewer$ref: FragmentReference;
21
- declare export opaque type ReactRelayFragmentContainerFlowtest_viewer$fragmentType: ReactRelayFragmentContainerFlowtest_viewer$ref;
22
- export type ReactRelayFragmentContainerFlowtest_viewer = {|
18
+ import type { Fragment, ReaderFragment } from 'relay-runtime';
19
+ import type { FragmentType } from "relay-runtime";
20
+ declare export opaque type ReactRelayFragmentContainerFlowtest_viewer$fragmentType: FragmentType;
21
+ export type ReactRelayFragmentContainerFlowtest_viewer$ref = ReactRelayFragmentContainerFlowtest_viewer$fragmentType;
22
+ export type ReactRelayFragmentContainerFlowtest_viewer$data = {|
23
23
  +actor: ?{|
24
24
  +id: string,
25
25
  |},
26
- +$refType: ReactRelayFragmentContainerFlowtest_viewer$ref,
26
+ +$fragmentType: ReactRelayFragmentContainerFlowtest_viewer$fragmentType,
27
27
  |};
28
- export type ReactRelayFragmentContainerFlowtest_viewer$data = ReactRelayFragmentContainerFlowtest_viewer;
28
+ export type ReactRelayFragmentContainerFlowtest_viewer = ReactRelayFragmentContainerFlowtest_viewer$data;
29
29
  export type ReactRelayFragmentContainerFlowtest_viewer$key = {
30
30
  +$data?: ReactRelayFragmentContainerFlowtest_viewer$data,
31
- +$fragmentRefs: ReactRelayFragmentContainerFlowtest_viewer$ref,
31
+ +$fragmentSpreads: ReactRelayFragmentContainerFlowtest_viewer$fragmentType,
32
32
  ...
33
33
  };
34
34
  */
@@ -66,4 +66,7 @@ if (__DEV__) {
66
66
  (node/*: any*/).hash = "75147ebd599fe1c406f2dfc7abb164f8";
67
67
  }
68
68
 
69
- module.exports = node;
69
+ module.exports = ((node/*: any*/)/*: Fragment<
70
+ ReactRelayFragmentContainerFlowtest_viewer$fragmentType,
71
+ ReactRelayFragmentContainerFlowtest_viewer$data,
72
+ >*/);
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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<<129c19d6ef39ce94d34b7ea90fa96f32>>
7
+ * @generated SignedSource<<480a62dc560b619c9f4e6cf75d80f890>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -15,20 +15,20 @@
15
15
  'use strict';
16
16
 
17
17
  /*::
18
- import type { ReaderFragment } from 'relay-runtime';
19
- import type { FragmentReference } from "relay-runtime";
20
- declare export opaque type ReactRelayFragmentContainerFlowtest_viewer2$ref: FragmentReference;
21
- declare export opaque type ReactRelayFragmentContainerFlowtest_viewer2$fragmentType: ReactRelayFragmentContainerFlowtest_viewer2$ref;
22
- export type ReactRelayFragmentContainerFlowtest_viewer2 = {|
18
+ import type { Fragment, ReaderFragment } from 'relay-runtime';
19
+ import type { FragmentType } from "relay-runtime";
20
+ declare export opaque type ReactRelayFragmentContainerFlowtest_viewer2$fragmentType: FragmentType;
21
+ export type ReactRelayFragmentContainerFlowtest_viewer2$ref = ReactRelayFragmentContainerFlowtest_viewer2$fragmentType;
22
+ export type ReactRelayFragmentContainerFlowtest_viewer2$data = {|
23
23
  +actor: ?{|
24
24
  +id: string,
25
25
  |},
26
- +$refType: ReactRelayFragmentContainerFlowtest_viewer2$ref,
26
+ +$fragmentType: ReactRelayFragmentContainerFlowtest_viewer2$fragmentType,
27
27
  |};
28
- export type ReactRelayFragmentContainerFlowtest_viewer2$data = ReactRelayFragmentContainerFlowtest_viewer2;
28
+ export type ReactRelayFragmentContainerFlowtest_viewer2 = ReactRelayFragmentContainerFlowtest_viewer2$data;
29
29
  export type ReactRelayFragmentContainerFlowtest_viewer2$key = {
30
30
  +$data?: ReactRelayFragmentContainerFlowtest_viewer2$data,
31
- +$fragmentRefs: ReactRelayFragmentContainerFlowtest_viewer2$ref,
31
+ +$fragmentSpreads: ReactRelayFragmentContainerFlowtest_viewer2$fragmentType,
32
32
  ...
33
33
  };
34
34
  */
@@ -66,4 +66,7 @@ if (__DEV__) {
66
66
  (node/*: any*/).hash = "0f55965b7c9aca0d661ebdd96c70e384";
67
67
  }
68
68
 
69
- module.exports = node;
69
+ module.exports = ((node/*: any*/)/*: Fragment<
70
+ ReactRelayFragmentContainerFlowtest_viewer2$fragmentType,
71
+ ReactRelayFragmentContainerFlowtest_viewer2$data,
72
+ >*/);
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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<<b883787a099f210ddaff6d03072fe216>>
7
+ * @generated SignedSource<<b7185da5f330a37a0add055f5262b2bb>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -15,20 +15,22 @@
15
15
  'use strict';
16
16
 
17
17
  /*::
18
- import type { ConcreteRequest } from 'relay-runtime';
19
- type ReactRelayPaginationContainerFlowtest_viewer$ref = any;
20
- export type ReactRelayPaginationContainerFlowtestQueryVariables = {|
18
+ import type { ConcreteRequest, Query } from 'relay-runtime';
19
+ type ReactRelayPaginationContainerFlowtest_viewer$fragmentType = any;
20
+ export type ReactRelayPaginationContainerFlowtestQuery$variables = {|
21
21
  count: number,
22
22
  cursor?: ?string,
23
23
  |};
24
- export type ReactRelayPaginationContainerFlowtestQueryResponse = {|
24
+ export type ReactRelayPaginationContainerFlowtestQueryVariables = ReactRelayPaginationContainerFlowtestQuery$variables;
25
+ export type ReactRelayPaginationContainerFlowtestQuery$data = {|
25
26
  +viewer: ?{|
26
- +$fragmentRefs: ReactRelayPaginationContainerFlowtest_viewer$ref,
27
+ +$fragmentSpreads: ReactRelayPaginationContainerFlowtest_viewer$fragmentType,
27
28
  |},
28
29
  |};
30
+ export type ReactRelayPaginationContainerFlowtestQueryResponse = ReactRelayPaginationContainerFlowtestQuery$data;
29
31
  export type ReactRelayPaginationContainerFlowtestQuery = {|
30
32
  variables: ReactRelayPaginationContainerFlowtestQueryVariables,
31
- response: ReactRelayPaginationContainerFlowtestQueryResponse,
33
+ response: ReactRelayPaginationContainerFlowtestQuery$data,
32
34
  |};
33
35
  */
34
36
 
@@ -219,4 +221,7 @@ if (__DEV__) {
219
221
  (node/*: any*/).hash = "712afeafa1f51bfe391719629a0fcea0";
220
222
  }
221
223
 
222
- module.exports = node;
224
+ module.exports = ((node/*: any*/)/*: Query<
225
+ ReactRelayPaginationContainerFlowtestQuery$variables,
226
+ ReactRelayPaginationContainerFlowtestQuery$data,
227
+ >*/);
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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<<327dc7ccd50822a21f8284e9c50b2bbc>>
7
+ * @generated SignedSource<<0c271737f13fd548bcf58e0e3ec9d4ad>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -15,11 +15,11 @@
15
15
  'use strict';
16
16
 
17
17
  /*::
18
- import type { ReaderFragment } from 'relay-runtime';
19
- import type { FragmentReference } from "relay-runtime";
20
- declare export opaque type ReactRelayPaginationContainerFlowtest_viewer$ref: FragmentReference;
21
- declare export opaque type ReactRelayPaginationContainerFlowtest_viewer$fragmentType: ReactRelayPaginationContainerFlowtest_viewer$ref;
22
- export type ReactRelayPaginationContainerFlowtest_viewer = {|
18
+ import type { Fragment, ReaderFragment } from 'relay-runtime';
19
+ import type { FragmentType } from "relay-runtime";
20
+ declare export opaque type ReactRelayPaginationContainerFlowtest_viewer$fragmentType: FragmentType;
21
+ export type ReactRelayPaginationContainerFlowtest_viewer$ref = ReactRelayPaginationContainerFlowtest_viewer$fragmentType;
22
+ export type ReactRelayPaginationContainerFlowtest_viewer$data = {|
23
23
  +account_user: ?{|
24
24
  +friends: ?{|
25
25
  +edges: ?$ReadOnlyArray<?{|
@@ -29,12 +29,12 @@ export type ReactRelayPaginationContainerFlowtest_viewer = {|
29
29
  |}>,
30
30
  |},
31
31
  |},
32
- +$refType: ReactRelayPaginationContainerFlowtest_viewer$ref,
32
+ +$fragmentType: ReactRelayPaginationContainerFlowtest_viewer$fragmentType,
33
33
  |};
34
- export type ReactRelayPaginationContainerFlowtest_viewer$data = ReactRelayPaginationContainerFlowtest_viewer;
34
+ export type ReactRelayPaginationContainerFlowtest_viewer = ReactRelayPaginationContainerFlowtest_viewer$data;
35
35
  export type ReactRelayPaginationContainerFlowtest_viewer$key = {
36
36
  +$data?: ReactRelayPaginationContainerFlowtest_viewer$data,
37
- +$fragmentRefs: ReactRelayPaginationContainerFlowtest_viewer$ref,
37
+ +$fragmentSpreads: ReactRelayPaginationContainerFlowtest_viewer$fragmentType,
38
38
  ...
39
39
  };
40
40
  */
@@ -158,4 +158,7 @@ if (__DEV__) {
158
158
  (node/*: any*/).hash = "0db8995009ebfee6165f6bbaa465d13f";
159
159
  }
160
160
 
161
- module.exports = node;
161
+ module.exports = ((node/*: any*/)/*: Fragment<
162
+ ReactRelayPaginationContainerFlowtest_viewer$fragmentType,
163
+ ReactRelayPaginationContainerFlowtest_viewer$data,
164
+ >*/);
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
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<<d4fde01bab30ce67e65854fef556d10e>>
7
+ * @generated SignedSource<<4966fff79753003b0e22a540764f020d>>
8
8
  * @flow
9
9
  * @lightSyntaxTransform
10
10
  * @nogrep
@@ -15,20 +15,22 @@
15
15
  'use strict';
16
16
 
17
17
  /*::
18
- import type { ConcreteRequest } from 'relay-runtime';
19
- type ReactRelayRefetchContainerFlowtest_viewer$ref = any;
20
- export type ReactRelayRefetchContainerFlowtestQueryVariables = {|
18
+ import type { ConcreteRequest, Query } from 'relay-runtime';
19
+ type ReactRelayRefetchContainerFlowtest_viewer$fragmentType = any;
20
+ export type ReactRelayRefetchContainerFlowtestQuery$variables = {|
21
21
  count: number,
22
22
  cursor?: ?string,
23
23
  |};
24
- export type ReactRelayRefetchContainerFlowtestQueryResponse = {|
24
+ export type ReactRelayRefetchContainerFlowtestQueryVariables = ReactRelayRefetchContainerFlowtestQuery$variables;
25
+ export type ReactRelayRefetchContainerFlowtestQuery$data = {|
25
26
  +viewer: ?{|
26
- +$fragmentRefs: ReactRelayRefetchContainerFlowtest_viewer$ref,
27
+ +$fragmentSpreads: ReactRelayRefetchContainerFlowtest_viewer$fragmentType,
27
28
  |},
28
29
  |};
30
+ export type ReactRelayRefetchContainerFlowtestQueryResponse = ReactRelayRefetchContainerFlowtestQuery$data;
29
31
  export type ReactRelayRefetchContainerFlowtestQuery = {|
30
32
  variables: ReactRelayRefetchContainerFlowtestQueryVariables,
31
- response: ReactRelayRefetchContainerFlowtestQueryResponse,
33
+ response: ReactRelayRefetchContainerFlowtestQuery$data,
32
34
  |};
33
35
  */
34
36
 
@@ -219,4 +221,7 @@ if (__DEV__) {
219
221
  (node/*: any*/).hash = "ce05ae9de6327d14ff0f3813ec77e594";
220
222
  }
221
223
 
222
- module.exports = node;
224
+ module.exports = ((node/*: any*/)/*: Query<
225
+ ReactRelayRefetchContainerFlowtestQuery$variables,
226
+ ReactRelayRefetchContainerFlowtestQuery$data,
227
+ >*/);