1 | "use strict";
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.typeFromAST = typeFromAST;
|
7 |
|
8 | var _inspect = _interopRequireDefault(require("../jsutils/inspect.js"));
|
9 |
|
10 | var _invariant = _interopRequireDefault(require("../jsutils/invariant.js"));
|
11 |
|
12 | var _kinds = require("../language/kinds.js");
|
13 |
|
14 | var _definition = require("../type/definition.js");
|
15 |
|
16 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
17 |
|
18 | function typeFromAST(schema, typeNode) {
|
19 |
|
20 | var innerType;
|
21 |
|
22 | if (typeNode.kind === _kinds.Kind.LIST_TYPE) {
|
23 | innerType = typeFromAST(schema, typeNode.type);
|
24 | return innerType && new _definition.GraphQLList(innerType);
|
25 | }
|
26 |
|
27 | if (typeNode.kind === _kinds.Kind.NON_NULL_TYPE) {
|
28 | innerType = typeFromAST(schema, typeNode.type);
|
29 | return innerType && new _definition.GraphQLNonNull(innerType);
|
30 | }
|
31 |
|
32 |
|
33 | if (typeNode.kind === _kinds.Kind.NAMED_TYPE) {
|
34 | return schema.getType(typeNode.name.value);
|
35 | }
|
36 |
|
37 |
|
38 | false || (0, _invariant.default)(0, 'Unexpected type node: ' + (0, _inspect.default)(typeNode));
|
39 | }
|