graphql 14.1.1 → 14.3.1

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 (377) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1 -1
  3. package/error/GraphQLError.js +12 -10
  4. package/error/GraphQLError.js.flow +11 -6
  5. package/error/GraphQLError.mjs +20 -3
  6. package/error/formatError.js +2 -2
  7. package/error/formatError.js.flow +3 -3
  8. package/error/formatError.mjs +2 -2
  9. package/error/index.js +1 -1
  10. package/error/index.js.flow +5 -2
  11. package/error/index.mjs +2 -2
  12. package/error/locatedError.js +2 -2
  13. package/error/locatedError.js.flow +2 -2
  14. package/error/locatedError.mjs +2 -2
  15. package/error/printError.js +2 -2
  16. package/error/printError.js.flow +4 -5
  17. package/error/printError.mjs +2 -2
  18. package/error/syntaxError.js +2 -2
  19. package/error/syntaxError.js.flow +2 -2
  20. package/error/syntaxError.mjs +2 -2
  21. package/execution/execute.js +52 -37
  22. package/execution/execute.js.flow +66 -51
  23. package/execution/execute.mjs +50 -38
  24. package/execution/index.js +7 -1
  25. package/execution/index.js.flow +9 -4
  26. package/execution/index.mjs +3 -3
  27. package/execution/values.js +11 -11
  28. package/execution/values.js.flow +23 -19
  29. package/execution/values.mjs +11 -11
  30. package/graphql.js +13 -9
  31. package/graphql.js.flow +28 -10
  32. package/graphql.mjs +10 -9
  33. package/index.js +83 -53
  34. package/index.js.flow +60 -47
  35. package/index.mjs +26 -23
  36. package/jsutils/ObjMap.js +1 -1
  37. package/jsutils/ObjMap.js.flow +1 -1
  38. package/jsutils/ObjMap.mjs +1 -0
  39. package/jsutils/PromiseOrValue.js +1 -0
  40. package/jsutils/{MaybePromise.js.flow → PromiseOrValue.js.flow} +2 -2
  41. package/jsutils/PromiseOrValue.mjs +1 -0
  42. package/jsutils/dedent.js +2 -2
  43. package/jsutils/dedent.js.flow +1 -1
  44. package/jsutils/dedent.mjs +2 -2
  45. package/jsutils/defineToJSON.js +2 -2
  46. package/jsutils/defineToJSON.js.flow +1 -1
  47. package/jsutils/defineToJSON.mjs +2 -2
  48. package/jsutils/defineToStringTag.js +2 -2
  49. package/jsutils/defineToStringTag.js.flow +1 -1
  50. package/jsutils/defineToStringTag.mjs +2 -2
  51. package/jsutils/inspect.js +94 -19
  52. package/jsutils/inspect.js.flow +98 -20
  53. package/jsutils/inspect.mjs +94 -20
  54. package/jsutils/instanceOf.js +2 -2
  55. package/jsutils/instanceOf.js.flow +1 -1
  56. package/jsutils/instanceOf.mjs +2 -2
  57. package/jsutils/invariant.js +5 -3
  58. package/jsutils/invariant.js.flow +3 -2
  59. package/jsutils/invariant.mjs +5 -3
  60. package/jsutils/isInvalid.js +2 -2
  61. package/jsutils/isInvalid.js.flow +1 -1
  62. package/jsutils/isInvalid.mjs +2 -2
  63. package/jsutils/isNullish.js +2 -2
  64. package/jsutils/isNullish.js.flow +1 -1
  65. package/jsutils/isNullish.mjs +2 -2
  66. package/jsutils/isPromise.js +2 -2
  67. package/jsutils/isPromise.js.flow +1 -1
  68. package/jsutils/isPromise.mjs +2 -2
  69. package/jsutils/keyMap.js +4 -3
  70. package/jsutils/keyMap.js.flow +6 -6
  71. package/jsutils/keyMap.mjs +4 -3
  72. package/jsutils/keyValMap.js +4 -3
  73. package/jsutils/keyValMap.js.flow +6 -6
  74. package/jsutils/keyValMap.mjs +4 -3
  75. package/jsutils/mapValue.js +2 -2
  76. package/jsutils/mapValue.js.flow +2 -2
  77. package/jsutils/mapValue.mjs +2 -2
  78. package/jsutils/memoize3.js +3 -3
  79. package/jsutils/memoize3.js.flow +2 -2
  80. package/jsutils/memoize3.mjs +3 -3
  81. package/jsutils/nodejsCustomInspectSymbol.js +2 -2
  82. package/jsutils/nodejsCustomInspectSymbol.js.flow +1 -1
  83. package/jsutils/nodejsCustomInspectSymbol.mjs +2 -2
  84. package/jsutils/orList.js +2 -2
  85. package/jsutils/orList.js.flow +1 -1
  86. package/jsutils/orList.mjs +2 -2
  87. package/jsutils/promiseForObject.js +2 -2
  88. package/jsutils/promiseForObject.js.flow +2 -2
  89. package/jsutils/promiseForObject.mjs +2 -2
  90. package/jsutils/promiseReduce.js +2 -2
  91. package/jsutils/promiseReduce.js.flow +5 -5
  92. package/jsutils/promiseReduce.mjs +2 -2
  93. package/jsutils/quotedOrList.js +2 -2
  94. package/jsutils/quotedOrList.js.flow +1 -1
  95. package/jsutils/quotedOrList.mjs +2 -2
  96. package/jsutils/suggestionList.js +2 -2
  97. package/jsutils/suggestionList.js.flow +1 -1
  98. package/jsutils/suggestionList.mjs +2 -2
  99. package/language/ast.js +1 -1
  100. package/language/ast.js.flow +3 -3
  101. package/language/ast.mjs +1 -0
  102. package/language/blockString.js +114 -0
  103. package/language/blockString.js.flow +102 -0
  104. package/language/blockString.mjs +104 -0
  105. package/language/directiveLocation.js +2 -2
  106. package/language/directiveLocation.js.flow +1 -1
  107. package/language/directiveLocation.mjs +2 -2
  108. package/language/index.js +9 -9
  109. package/language/index.js.flow +10 -5
  110. package/language/index.mjs +3 -3
  111. package/language/kinds.js +2 -2
  112. package/language/kinds.js.flow +1 -1
  113. package/language/kinds.mjs +2 -2
  114. package/language/lexer.js +52 -44
  115. package/language/lexer.js.flow +65 -54
  116. package/language/lexer.mjs +49 -43
  117. package/language/location.js +2 -2
  118. package/language/location.js.flow +2 -2
  119. package/language/location.mjs +2 -2
  120. package/language/parser.js +75 -67
  121. package/language/parser.js.flow +138 -127
  122. package/language/parser.mjs +76 -68
  123. package/language/predicates.js +2 -2
  124. package/language/predicates.js.flow +2 -2
  125. package/language/predicates.mjs +2 -2
  126. package/language/printer.js +6 -14
  127. package/language/printer.js.flow +8 -17
  128. package/language/printer.mjs +5 -14
  129. package/language/source.js +2 -2
  130. package/language/source.js.flow +1 -1
  131. package/language/source.mjs +2 -2
  132. package/language/visitor.js +4 -6
  133. package/language/visitor.js.flow +3 -3
  134. package/language/visitor.mjs +4 -6
  135. package/package.json +1 -1
  136. package/polyfills/find.js +2 -2
  137. package/polyfills/find.js.flow +1 -1
  138. package/polyfills/find.mjs +2 -2
  139. package/polyfills/flatMap.js +38 -0
  140. package/polyfills/flatMap.js.flow +34 -0
  141. package/polyfills/flatMap.mjs +30 -0
  142. package/polyfills/isFinite.js +2 -2
  143. package/polyfills/isFinite.js.flow +1 -1
  144. package/polyfills/isFinite.mjs +2 -2
  145. package/polyfills/isInteger.js +2 -2
  146. package/polyfills/isInteger.js.flow +1 -1
  147. package/polyfills/isInteger.mjs +2 -2
  148. package/polyfills/objectEntries.js +2 -2
  149. package/polyfills/objectEntries.js.flow +2 -2
  150. package/polyfills/objectEntries.mjs +2 -2
  151. package/polyfills/objectValues.js +2 -2
  152. package/polyfills/objectValues.js.flow +2 -2
  153. package/polyfills/objectValues.mjs +2 -2
  154. package/subscription/asyncIteratorReject.js +1 -1
  155. package/subscription/asyncIteratorReject.js.flow +1 -1
  156. package/subscription/asyncIteratorReject.mjs +2 -2
  157. package/subscription/index.js +1 -1
  158. package/subscription/index.js.flow +1 -1
  159. package/subscription/index.mjs +2 -2
  160. package/subscription/mapAsyncIterator.js +1 -1
  161. package/subscription/mapAsyncIterator.js.flow +5 -5
  162. package/subscription/mapAsyncIterator.mjs +2 -2
  163. package/subscription/subscribe.js +2 -2
  164. package/subscription/subscribe.js.flow +6 -6
  165. package/subscription/subscribe.mjs +2 -2
  166. package/type/definition.js +138 -22
  167. package/type/definition.js.flow +184 -36
  168. package/type/definition.mjs +136 -23
  169. package/type/directives.js +14 -3
  170. package/type/directives.js.flow +24 -11
  171. package/type/directives.mjs +16 -5
  172. package/type/index.js +7 -7
  173. package/type/index.js.flow +8 -4
  174. package/type/index.mjs +10 -6
  175. package/type/introspection.js +14 -9
  176. package/type/introspection.js.flow +12 -18
  177. package/type/introspection.mjs +14 -9
  178. package/type/scalars.js +5 -4
  179. package/type/scalars.js.flow +4 -10
  180. package/type/scalars.mjs +7 -6
  181. package/type/schema.js +55 -3
  182. package/type/schema.js.flow +73 -17
  183. package/type/schema.mjs +56 -4
  184. package/type/validate.js +19 -47
  185. package/type/validate.js.flow +17 -29
  186. package/type/validate.mjs +18 -47
  187. package/utilities/TypeInfo.js +93 -73
  188. package/utilities/TypeInfo.js.flow +30 -23
  189. package/utilities/TypeInfo.mjs +93 -73
  190. package/utilities/assertValidName.js +2 -2
  191. package/utilities/assertValidName.js.flow +2 -2
  192. package/utilities/assertValidName.mjs +2 -2
  193. package/utilities/astFromValue.js +5 -4
  194. package/utilities/astFromValue.js.flow +8 -7
  195. package/utilities/astFromValue.mjs +7 -6
  196. package/utilities/buildASTSchema.js +63 -62
  197. package/utilities/buildASTSchema.js.flow +92 -108
  198. package/utilities/buildASTSchema.mjs +61 -62
  199. package/utilities/buildClientSchema.js +38 -45
  200. package/utilities/buildClientSchema.js.flow +66 -79
  201. package/utilities/buildClientSchema.mjs +37 -44
  202. package/utilities/coerceValue.js +6 -7
  203. package/utilities/coerceValue.js.flow +5 -4
  204. package/utilities/coerceValue.mjs +7 -8
  205. package/utilities/concatAST.js +9 -13
  206. package/utilities/concatAST.js.flow +4 -10
  207. package/utilities/concatAST.mjs +6 -13
  208. package/utilities/extendSchema.js +219 -511
  209. package/utilities/extendSchema.js.flow +195 -304
  210. package/utilities/extendSchema.mjs +218 -512
  211. package/utilities/findBreakingChanges.js +54 -95
  212. package/utilities/findBreakingChanges.js.flow +49 -47
  213. package/utilities/findBreakingChanges.mjs +80 -95
  214. package/utilities/findDeprecatedUsages.js +4 -4
  215. package/utilities/findDeprecatedUsages.js.flow +5 -5
  216. package/utilities/findDeprecatedUsages.mjs +4 -4
  217. package/utilities/getOperationAST.js +2 -2
  218. package/utilities/getOperationAST.js.flow +5 -2
  219. package/utilities/getOperationAST.mjs +2 -2
  220. package/utilities/getOperationRootType.js +24 -24
  221. package/utilities/getOperationRootType.js.flow +40 -35
  222. package/utilities/getOperationRootType.mjs +24 -24
  223. package/utilities/index.js +9 -1
  224. package/utilities/index.js.flow +13 -6
  225. package/utilities/index.mjs +13 -8
  226. package/utilities/introspectionFromSchema.js +6 -4
  227. package/utilities/introspectionFromSchema.js.flow +8 -7
  228. package/utilities/introspectionFromSchema.mjs +6 -5
  229. package/utilities/introspectionQuery.js +2 -2
  230. package/utilities/introspectionQuery.js.flow +2 -2
  231. package/utilities/introspectionQuery.mjs +2 -2
  232. package/utilities/isValidJSValue.js +4 -2
  233. package/utilities/isValidJSValue.js.flow +3 -2
  234. package/utilities/isValidJSValue.mjs +4 -2
  235. package/utilities/isValidLiteralValue.js +2 -2
  236. package/utilities/isValidLiteralValue.js.flow +4 -4
  237. package/utilities/isValidLiteralValue.mjs +2 -2
  238. package/utilities/lexicographicSortSchema.js +84 -123
  239. package/utilities/lexicographicSortSchema.js.flow +68 -96
  240. package/utilities/lexicographicSortSchema.mjs +84 -123
  241. package/utilities/schemaPrinter.js +47 -73
  242. package/utilities/schemaPrinter.js.flow +69 -120
  243. package/utilities/schemaPrinter.mjs +45 -72
  244. package/utilities/separateOperations.js +8 -12
  245. package/utilities/separateOperations.js.flow +6 -3
  246. package/utilities/separateOperations.mjs +8 -12
  247. package/utilities/stripIgnoredCharacters.js +140 -0
  248. package/utilities/stripIgnoredCharacters.js.flow +129 -0
  249. package/utilities/stripIgnoredCharacters.mjs +127 -0
  250. package/utilities/typeComparators.js +2 -2
  251. package/utilities/typeComparators.js.flow +4 -3
  252. package/utilities/typeComparators.mjs +2 -2
  253. package/utilities/typeFromAST.js +9 -4
  254. package/utilities/typeFromAST.js.flow +15 -9
  255. package/utilities/typeFromAST.mjs +6 -4
  256. package/utilities/valueFromAST.js +7 -4
  257. package/utilities/valueFromAST.js.flow +7 -5
  258. package/utilities/valueFromAST.mjs +6 -4
  259. package/utilities/valueFromASTUntyped.js +11 -6
  260. package/utilities/valueFromASTUntyped.js.flow +9 -5
  261. package/utilities/valueFromASTUntyped.mjs +10 -6
  262. package/validation/ValidationContext.js +1 -1
  263. package/validation/ValidationContext.js.flow +19 -20
  264. package/validation/ValidationContext.mjs +2 -2
  265. package/validation/index.js +1 -1
  266. package/validation/index.js.flow +2 -1
  267. package/validation/index.mjs +3 -2
  268. package/validation/rules/ExecutableDefinitions.js +3 -3
  269. package/validation/rules/ExecutableDefinitions.js.flow +4 -4
  270. package/validation/rules/ExecutableDefinitions.mjs +3 -3
  271. package/validation/rules/FieldsOnCorrectType.js +3 -3
  272. package/validation/rules/FieldsOnCorrectType.js.flow +7 -7
  273. package/validation/rules/FieldsOnCorrectType.mjs +3 -3
  274. package/validation/rules/FragmentsOnCompositeTypes.js +4 -4
  275. package/validation/rules/FragmentsOnCompositeTypes.js.flow +5 -5
  276. package/validation/rules/FragmentsOnCompositeTypes.mjs +4 -4
  277. package/validation/rules/KnownArgumentNames.js +1 -1
  278. package/validation/rules/KnownArgumentNames.js.flow +5 -5
  279. package/validation/rules/KnownArgumentNames.mjs +2 -2
  280. package/validation/rules/KnownDirectives.js +8 -6
  281. package/validation/rules/KnownDirectives.js.flow +11 -9
  282. package/validation/rules/KnownDirectives.mjs +8 -6
  283. package/validation/rules/KnownFragmentNames.js +3 -3
  284. package/validation/rules/KnownFragmentNames.js.flow +4 -4
  285. package/validation/rules/KnownFragmentNames.mjs +3 -3
  286. package/validation/rules/KnownTypeNames.js +2 -2
  287. package/validation/rules/KnownTypeNames.js.flow +6 -6
  288. package/validation/rules/KnownTypeNames.mjs +2 -2
  289. package/validation/rules/LoneAnonymousOperation.js +3 -3
  290. package/validation/rules/LoneAnonymousOperation.js.flow +4 -4
  291. package/validation/rules/LoneAnonymousOperation.mjs +3 -3
  292. package/validation/rules/LoneSchemaDefinition.js +2 -2
  293. package/validation/rules/LoneSchemaDefinition.js.flow +3 -3
  294. package/validation/rules/LoneSchemaDefinition.mjs +2 -2
  295. package/validation/rules/NoFragmentCycles.js +2 -2
  296. package/validation/rules/NoFragmentCycles.js.flow +4 -4
  297. package/validation/rules/NoFragmentCycles.mjs +2 -2
  298. package/validation/rules/NoUndefinedVariables.js +2 -2
  299. package/validation/rules/NoUndefinedVariables.js.flow +3 -3
  300. package/validation/rules/NoUndefinedVariables.mjs +2 -2
  301. package/validation/rules/NoUnusedFragments.js +7 -7
  302. package/validation/rules/NoUnusedFragments.js.flow +4 -4
  303. package/validation/rules/NoUnusedFragments.mjs +7 -7
  304. package/validation/rules/NoUnusedVariables.js +5 -5
  305. package/validation/rules/NoUnusedVariables.js.flow +6 -5
  306. package/validation/rules/NoUnusedVariables.mjs +5 -5
  307. package/validation/rules/OverlappingFieldsCanBeMerged.js +26 -23
  308. package/validation/rules/OverlappingFieldsCanBeMerged.js.flow +17 -17
  309. package/validation/rules/OverlappingFieldsCanBeMerged.mjs +26 -23
  310. package/validation/rules/PossibleFragmentSpreads.js +4 -4
  311. package/validation/rules/PossibleFragmentSpreads.js.flow +5 -5
  312. package/validation/rules/PossibleFragmentSpreads.mjs +4 -4
  313. package/validation/rules/PossibleTypeExtensions.js +3 -3
  314. package/validation/rules/PossibleTypeExtensions.js.flow +5 -5
  315. package/validation/rules/PossibleTypeExtensions.mjs +4 -4
  316. package/validation/rules/ProvidedRequiredArguments.js +6 -8
  317. package/validation/rules/ProvidedRequiredArguments.js.flow +8 -8
  318. package/validation/rules/ProvidedRequiredArguments.mjs +7 -9
  319. package/validation/rules/ScalarLeafs.js +4 -4
  320. package/validation/rules/ScalarLeafs.js.flow +6 -6
  321. package/validation/rules/ScalarLeafs.mjs +4 -4
  322. package/validation/rules/SingleFieldSubscriptions.js +2 -2
  323. package/validation/rules/SingleFieldSubscriptions.js.flow +4 -4
  324. package/validation/rules/SingleFieldSubscriptions.mjs +2 -2
  325. package/validation/rules/UniqueArgumentNames.js +2 -2
  326. package/validation/rules/UniqueArgumentNames.js.flow +3 -3
  327. package/validation/rules/UniqueArgumentNames.mjs +2 -2
  328. package/validation/rules/UniqueDirectiveNames.js +2 -2
  329. package/validation/rules/UniqueDirectiveNames.js.flow +3 -3
  330. package/validation/rules/UniqueDirectiveNames.mjs +2 -2
  331. package/validation/rules/UniqueDirectivesPerLocation.js +3 -2
  332. package/validation/rules/UniqueDirectivesPerLocation.js.flow +4 -4
  333. package/validation/rules/UniqueDirectivesPerLocation.mjs +3 -2
  334. package/validation/rules/UniqueEnumValueNames.js +4 -8
  335. package/validation/rules/UniqueEnumValueNames.js.flow +6 -8
  336. package/validation/rules/UniqueEnumValueNames.mjs +4 -8
  337. package/validation/rules/UniqueFieldDefinitionNames.js +4 -8
  338. package/validation/rules/UniqueFieldDefinitionNames.js.flow +6 -8
  339. package/validation/rules/UniqueFieldDefinitionNames.mjs +4 -8
  340. package/validation/rules/UniqueFragmentNames.js +2 -2
  341. package/validation/rules/UniqueFragmentNames.js.flow +3 -3
  342. package/validation/rules/UniqueFragmentNames.mjs +2 -2
  343. package/validation/rules/UniqueInputFieldNames.js +2 -4
  344. package/validation/rules/UniqueInputFieldNames.js.flow +3 -4
  345. package/validation/rules/UniqueInputFieldNames.mjs +2 -4
  346. package/validation/rules/UniqueOperationNames.js +2 -2
  347. package/validation/rules/UniqueOperationNames.js.flow +3 -3
  348. package/validation/rules/UniqueOperationNames.mjs +2 -2
  349. package/validation/rules/UniqueOperationTypes.js +2 -2
  350. package/validation/rules/UniqueOperationTypes.js.flow +3 -3
  351. package/validation/rules/UniqueOperationTypes.mjs +2 -2
  352. package/validation/rules/UniqueTypeNames.js +2 -2
  353. package/validation/rules/UniqueTypeNames.js.flow +4 -4
  354. package/validation/rules/UniqueTypeNames.mjs +2 -2
  355. package/validation/rules/UniqueVariableNames.js +2 -2
  356. package/validation/rules/UniqueVariableNames.js.flow +4 -4
  357. package/validation/rules/UniqueVariableNames.mjs +2 -2
  358. package/validation/rules/ValuesOfCorrectType.js +2 -2
  359. package/validation/rules/ValuesOfCorrectType.js.flow +5 -5
  360. package/validation/rules/ValuesOfCorrectType.mjs +2 -2
  361. package/validation/rules/VariablesAreInputTypes.js +3 -3
  362. package/validation/rules/VariablesAreInputTypes.js.flow +5 -5
  363. package/validation/rules/VariablesAreInputTypes.mjs +3 -3
  364. package/validation/rules/VariablesInAllowedPosition.js +3 -3
  365. package/validation/rules/VariablesInAllowedPosition.js.flow +7 -8
  366. package/validation/rules/VariablesInAllowedPosition.mjs +3 -3
  367. package/validation/specifiedRules.js +2 -2
  368. package/validation/specifiedRules.js.flow +13 -6
  369. package/validation/specifiedRules.mjs +7 -7
  370. package/validation/validate.js +2 -2
  371. package/validation/validate.js.flow +10 -6
  372. package/validation/validate.mjs +2 -2
  373. package/jsutils/MaybePromise.js +0 -1
  374. package/jsutils/MaybePromise.mjs +0 -0
  375. package/language/blockStringValue.js +0 -73
  376. package/language/blockStringValue.js.flow +0 -64
  377. package/language/blockStringValue.mjs +0 -66
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2015-present, Facebook, Inc.
2
+ * Copyright (c) Facebook, Inc. and its 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.
@@ -22,7 +22,9 @@ export var TypeInfo =
22
22
  function () {
23
23
  function TypeInfo(schema, // NOTE: this experimental optional second parameter is only needed in order
24
24
  // to support non-spec-compliant codebases. You should never need to use it.
25
+ // It may disappear in the future.
25
26
  getFieldDefFn, // Initial type may be provided in rare cases to facilitate traversals
27
+ // beginning somewhere other than documents.
26
28
  initialType) {
27
29
  this._schema = schema;
28
30
  this._typeStack = [];
@@ -108,128 +110,146 @@ function () {
108
110
 
109
111
  switch (node.kind) {
110
112
  case Kind.SELECTION_SET:
111
- var namedType = getNamedType(this.getType());
113
+ {
114
+ var namedType = getNamedType(this.getType());
112
115
 
113
- this._parentTypeStack.push(isCompositeType(namedType) ? namedType : undefined);
116
+ this._parentTypeStack.push(isCompositeType(namedType) ? namedType : undefined);
114
117
 
115
- break;
118
+ break;
119
+ }
116
120
 
117
121
  case Kind.FIELD:
118
- var parentType = this.getParentType();
119
- var fieldDef;
120
- var fieldType;
122
+ {
123
+ var parentType = this.getParentType();
124
+ var fieldDef;
125
+ var fieldType;
121
126
 
122
- if (parentType) {
123
- fieldDef = this._getFieldDef(schema, parentType, node);
127
+ if (parentType) {
128
+ fieldDef = this._getFieldDef(schema, parentType, node);
124
129
 
125
- if (fieldDef) {
126
- fieldType = fieldDef.type;
130
+ if (fieldDef) {
131
+ fieldType = fieldDef.type;
132
+ }
127
133
  }
128
- }
129
134
 
130
- this._fieldDefStack.push(fieldDef);
135
+ this._fieldDefStack.push(fieldDef);
131
136
 
132
- this._typeStack.push(isOutputType(fieldType) ? fieldType : undefined);
137
+ this._typeStack.push(isOutputType(fieldType) ? fieldType : undefined);
133
138
 
134
- break;
139
+ break;
140
+ }
135
141
 
136
142
  case Kind.DIRECTIVE:
137
143
  this._directive = schema.getDirective(node.name.value);
138
144
  break;
139
145
 
140
146
  case Kind.OPERATION_DEFINITION:
141
- var type;
142
-
143
- if (node.operation === 'query') {
144
- type = schema.getQueryType();
145
- } else if (node.operation === 'mutation') {
146
- type = schema.getMutationType();
147
- } else if (node.operation === 'subscription') {
148
- type = schema.getSubscriptionType();
149
- }
147
+ {
148
+ var type;
149
+
150
+ if (node.operation === 'query') {
151
+ type = schema.getQueryType();
152
+ } else if (node.operation === 'mutation') {
153
+ type = schema.getMutationType();
154
+ } else if (node.operation === 'subscription') {
155
+ type = schema.getSubscriptionType();
156
+ }
150
157
 
151
- this._typeStack.push(isObjectType(type) ? type : undefined);
158
+ this._typeStack.push(isObjectType(type) ? type : undefined);
152
159
 
153
- break;
160
+ break;
161
+ }
154
162
 
155
163
  case Kind.INLINE_FRAGMENT:
156
164
  case Kind.FRAGMENT_DEFINITION:
157
- var typeConditionAST = node.typeCondition;
158
- var outputType = typeConditionAST ? typeFromAST(schema, typeConditionAST) : getNamedType(this.getType());
165
+ {
166
+ var typeConditionAST = node.typeCondition;
167
+ var outputType = typeConditionAST ? typeFromAST(schema, typeConditionAST) : getNamedType(this.getType());
159
168
 
160
- this._typeStack.push(isOutputType(outputType) ? outputType : undefined);
169
+ this._typeStack.push(isOutputType(outputType) ? outputType : undefined);
161
170
 
162
- break;
171
+ break;
172
+ }
163
173
 
164
174
  case Kind.VARIABLE_DEFINITION:
165
- var inputType = typeFromAST(schema, node.type);
175
+ {
176
+ var inputType = typeFromAST(schema, node.type);
166
177
 
167
- this._inputTypeStack.push(isInputType(inputType) ? inputType : undefined);
178
+ this._inputTypeStack.push(isInputType(inputType) ? inputType : undefined);
168
179
 
169
- break;
180
+ break;
181
+ }
170
182
 
171
183
  case Kind.ARGUMENT:
172
- var argDef;
173
- var argType;
174
- var fieldOrDirective = this.getDirective() || this.getFieldDef();
175
-
176
- if (fieldOrDirective) {
177
- argDef = find(fieldOrDirective.args, function (arg) {
178
- return arg.name === node.name.value;
179
- });
180
-
181
- if (argDef) {
182
- argType = argDef.type;
184
+ {
185
+ var argDef;
186
+ var argType;
187
+ var fieldOrDirective = this.getDirective() || this.getFieldDef();
188
+
189
+ if (fieldOrDirective) {
190
+ argDef = find(fieldOrDirective.args, function (arg) {
191
+ return arg.name === node.name.value;
192
+ });
193
+
194
+ if (argDef) {
195
+ argType = argDef.type;
196
+ }
183
197
  }
184
- }
185
198
 
186
- this._argument = argDef;
199
+ this._argument = argDef;
187
200
 
188
- this._defaultValueStack.push(argDef ? argDef.defaultValue : undefined);
201
+ this._defaultValueStack.push(argDef ? argDef.defaultValue : undefined);
189
202
 
190
- this._inputTypeStack.push(isInputType(argType) ? argType : undefined);
203
+ this._inputTypeStack.push(isInputType(argType) ? argType : undefined);
191
204
 
192
- break;
205
+ break;
206
+ }
193
207
 
194
208
  case Kind.LIST:
195
- var listType = getNullableType(this.getInputType());
196
- var itemType = isListType(listType) ? listType.ofType : listType; // List positions never have a default value.
209
+ {
210
+ var listType = getNullableType(this.getInputType());
211
+ var itemType = isListType(listType) ? listType.ofType : listType; // List positions never have a default value.
197
212
 
198
- this._defaultValueStack.push(undefined);
213
+ this._defaultValueStack.push(undefined);
199
214
 
200
- this._inputTypeStack.push(isInputType(itemType) ? itemType : undefined);
215
+ this._inputTypeStack.push(isInputType(itemType) ? itemType : undefined);
201
216
 
202
- break;
217
+ break;
218
+ }
203
219
 
204
220
  case Kind.OBJECT_FIELD:
205
- var objectType = getNamedType(this.getInputType());
206
- var inputFieldType;
207
- var inputField;
221
+ {
222
+ var objectType = getNamedType(this.getInputType());
223
+ var inputFieldType;
224
+ var inputField;
208
225
 
209
- if (isInputObjectType(objectType)) {
210
- inputField = objectType.getFields()[node.name.value];
226
+ if (isInputObjectType(objectType)) {
227
+ inputField = objectType.getFields()[node.name.value];
211
228
 
212
- if (inputField) {
213
- inputFieldType = inputField.type;
229
+ if (inputField) {
230
+ inputFieldType = inputField.type;
231
+ }
214
232
  }
215
- }
216
233
 
217
- this._defaultValueStack.push(inputField ? inputField.defaultValue : undefined);
234
+ this._defaultValueStack.push(inputField ? inputField.defaultValue : undefined);
218
235
 
219
- this._inputTypeStack.push(isInputType(inputFieldType) ? inputFieldType : undefined);
236
+ this._inputTypeStack.push(isInputType(inputFieldType) ? inputFieldType : undefined);
220
237
 
221
- break;
238
+ break;
239
+ }
222
240
 
223
241
  case Kind.ENUM:
224
- var enumType = getNamedType(this.getInputType());
225
- var enumValue;
242
+ {
243
+ var enumType = getNamedType(this.getInputType());
244
+ var enumValue;
226
245
 
227
- if (isEnumType(enumType)) {
228
- enumValue = enumType.getValue(node.value);
229
- }
246
+ if (isEnumType(enumType)) {
247
+ enumValue = enumType.getValue(node.value);
248
+ }
230
249
 
231
- this._enumValue = enumValue;
232
- break;
250
+ this._enumValue = enumValue;
251
+ break;
252
+ }
233
253
  }
234
254
  };
235
255
 
@@ -312,4 +332,4 @@ function getFieldDef(schema, parentType, fieldNode) {
312
332
  if (isObjectType(parentType) || isInterfaceType(parentType)) {
313
333
  return parentType.getFields()[name];
314
334
  }
315
- }
335
+ }
@@ -13,7 +13,7 @@ var _invariant = _interopRequireDefault(require("../jsutils/invariant"));
13
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
14
 
15
15
  /**
16
- * Copyright (c) 2015-present, Facebook, Inc.
16
+ * Copyright (c) Facebook, Inc. and its affiliates.
17
17
  *
18
18
  * This source code is licensed under the MIT license found in the
19
19
  * LICENSE file in the root directory of this source tree.
@@ -49,4 +49,4 @@ function isValidNameError(name, node) {
49
49
  if (!NAME_RX.test(name)) {
50
50
  return new _GraphQLError.GraphQLError("Names must match /^[_a-zA-Z][_a-zA-Z0-9]*$/ but \"".concat(name, "\" does not."), node);
51
51
  }
52
- }
52
+ }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2015-present, Facebook, Inc.
2
+ * Copyright (c) Facebook, Inc. and its 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.
@@ -8,7 +8,7 @@
8
8
  */
9
9
 
10
10
  import { GraphQLError } from '../error/GraphQLError';
11
- import type { ASTNode } from '../language/ast';
11
+ import { type ASTNode } from '../language/ast';
12
12
  import invariant from '../jsutils/invariant';
13
13
 
14
14
  const NAME_RX = /^[_a-zA-Z][_a-zA-Z0-9]*$/;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2015-present, Facebook, Inc.
2
+ * Copyright (c) Facebook, Inc. and its 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.
@@ -36,4 +36,4 @@ export function isValidNameError(name, node) {
36
36
  if (!NAME_RX.test(name)) {
37
37
  return new GraphQLError("Names must match /^[_a-zA-Z][_a-zA-Z0-9]*$/ but \"".concat(name, "\" does not."), node);
38
38
  }
39
- }
39
+ }
@@ -138,7 +138,7 @@ function astFromValue(value, type) {
138
138
  };
139
139
  }
140
140
 
141
- if ((0, _definition.isScalarType)(type) || (0, _definition.isEnumType)(type)) {
141
+ if ((0, _definition.isLeafType)(type)) {
142
142
  // Since value is an internally represented value, it must be serialized
143
143
  // to an externally represented value before converting into an AST.
144
144
  var serialized = type.serialize(value);
@@ -191,11 +191,12 @@ function astFromValue(value, type) {
191
191
  }
192
192
 
193
193
  throw new TypeError("Cannot convert value to AST: ".concat((0, _inspect.default)(serialized)));
194
- }
194
+ } // Not reachable. All possible input types have been considered.
195
+
195
196
  /* istanbul ignore next */
196
197
 
197
198
 
198
- throw new Error("Unknown type: ".concat(type, "."));
199
+ throw new Error("Unexpected input type: \"".concat((0, _inspect.default)(type), "\"."));
199
200
  }
200
201
  /**
201
202
  * IntValue:
@@ -204,4 +205,4 @@ function astFromValue(value, type) {
204
205
  */
205
206
 
206
207
 
207
- var integerStringRegExp = /^-?(0|[1-9][0-9]*)$/;
208
+ var integerStringRegExp = /^-?(?:0|[1-9][0-9]*)$/;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2015-present, Facebook, Inc.
2
+ * Copyright (c) Facebook, Inc. and its 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,11 +13,11 @@ import objectValues from '../polyfills/objectValues';
13
13
  import inspect from '../jsutils/inspect';
14
14
  import isNullish from '../jsutils/isNullish';
15
15
  import isInvalid from '../jsutils/isInvalid';
16
- import type { ValueNode } from '../language/ast';
16
+ import { type ValueNode } from '../language/ast';
17
17
  import { Kind } from '../language/kinds';
18
- import type { GraphQLInputType } from '../type/definition';
19
18
  import {
20
- isScalarType,
19
+ type GraphQLInputType,
20
+ isLeafType,
21
21
  isEnumType,
22
22
  isInputObjectType,
23
23
  isListType,
@@ -99,7 +99,7 @@ export function astFromValue(value: mixed, type: GraphQLInputType): ?ValueNode {
99
99
  return { kind: Kind.OBJECT, fields: fieldNodes };
100
100
  }
101
101
 
102
- if (isScalarType(type) || isEnumType(type)) {
102
+ if (isLeafType(type)) {
103
103
  // Since value is an internally represented value, it must be serialized
104
104
  // to an externally represented value before converting into an AST.
105
105
  const serialized = type.serialize(value);
@@ -140,8 +140,9 @@ export function astFromValue(value: mixed, type: GraphQLInputType): ?ValueNode {
140
140
  throw new TypeError(`Cannot convert value to AST: ${inspect(serialized)}`);
141
141
  }
142
142
 
143
+ // Not reachable. All possible input types have been considered.
143
144
  /* istanbul ignore next */
144
- throw new Error(`Unknown type: ${(type: empty)}.`);
145
+ throw new Error(`Unexpected input type: "${inspect((type: empty))}".`);
145
146
  }
146
147
 
147
148
  /**
@@ -149,4 +150,4 @@ export function astFromValue(value: mixed, type: GraphQLInputType): ?ValueNode {
149
150
  * - NegativeSign? 0
150
151
  * - NegativeSign? NonZeroDigit ( Digit+ )?
151
152
  */
152
- const integerStringRegExp = /^-?(0|[1-9][0-9]*)$/;
153
+ const integerStringRegExp = /^-?(?:0|[1-9][0-9]*)$/;
@@ -1,7 +1,7 @@
1
1
  function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
2
2
 
3
3
  /**
4
- * Copyright (c) 2015-present, Facebook, Inc.
4
+ * Copyright (c) Facebook, Inc. and its affiliates.
5
5
  *
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
@@ -14,7 +14,7 @@ import inspect from '../jsutils/inspect';
14
14
  import isNullish from '../jsutils/isNullish';
15
15
  import isInvalid from '../jsutils/isInvalid';
16
16
  import { Kind } from '../language/kinds';
17
- import { isScalarType, isEnumType, isInputObjectType, isListType, isNonNullType } from '../type/definition';
17
+ import { isLeafType, isEnumType, isInputObjectType, isListType, isNonNullType } from '../type/definition';
18
18
  import { GraphQLID } from '../type/scalars';
19
19
  /**
20
20
  * Produces a GraphQL Value AST given a JavaScript value.
@@ -130,7 +130,7 @@ export function astFromValue(value, type) {
130
130
  };
131
131
  }
132
132
 
133
- if (isScalarType(type) || isEnumType(type)) {
133
+ if (isLeafType(type)) {
134
134
  // Since value is an internally represented value, it must be serialized
135
135
  // to an externally represented value before converting into an AST.
136
136
  var serialized = type.serialize(value);
@@ -183,11 +183,12 @@ export function astFromValue(value, type) {
183
183
  }
184
184
 
185
185
  throw new TypeError("Cannot convert value to AST: ".concat(inspect(serialized)));
186
- }
186
+ } // Not reachable. All possible input types have been considered.
187
+
187
188
  /* istanbul ignore next */
188
189
 
189
190
 
190
- throw new Error("Unknown type: ".concat(type, "."));
191
+ throw new Error("Unexpected input type: \"".concat(inspect(type), "\"."));
191
192
  }
192
193
  /**
193
194
  * IntValue:
@@ -195,4 +196,4 @@ export function astFromValue(value, type) {
195
196
  * - NegativeSign? NonZeroDigit ( Digit+ )?
196
197
  */
197
198
 
198
- var integerStringRegExp = /^-?(0|[1-9][0-9]*)$/;
199
+ var integerStringRegExp = /^-?(?:0|[1-9][0-9]*)$/;