UNPKG

ichigoo

Version:

Static site generator with React and GraphQL

75 lines (66 loc) 1.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _graphqlTools = require("graphql-tools"); var _graphql = require("graphql"); var _getSchemaFromData = _interopRequireDefault(require("./introspection/getSchemaFromData")); var _resolver = _interopRequireDefault(require("./resolver")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } /** * Generates a GraphQL Schema object for your data * * @param {any} data * @returns A GraphQL Schema * * @example * import {graphql} from 'graphql'; * import {jsonSchemaBuilder} from 'json-graphql-server'; * * const data = { * "posts": [ * { * "id": 1, * "title": "Lorem Ipsum", * "views": 254, * "user_id": 123, * }, * { * "id": 2, * "title": "Sic Dolor amet", * "views": 65, * "user_id": 456, * }, * ], * "users": [ * { * "id": 123, * "name": "John Doe" * }, * { * "id": 456, * "name": "Jane Doe" * } * ], * }; * * const schema = jsonSchemaBuilder(data); * const query = `[...]` * graphql(schema, query).then(result => { * console.log(result); * }); * */ var _default = function _default(data) { return (0, _graphqlTools.makeExecutableSchema)({ typeDefs: (0, _graphql.printSchema)((0, _getSchemaFromData["default"])(data)), resolvers: (0, _resolver["default"])(data), logger: { log: function log(e) { return console.log(e); } } // eslint-disable-line no-console }); }; exports["default"] = _default;