UNPKG

foobot-graphql

Version:

GraphQL server for Foobot device data.

80 lines (56 loc) 2.24 kB
#!/usr/bin/env node 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties'); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _express = require('express'); var _express2 = _interopRequireDefault(_express); var _expressGraphql = require('express-graphql'); var _expressGraphql2 = _interopRequireDefault(_expressGraphql); var _compression = require('compression'); var _compression2 = _interopRequireDefault(_compression); var _client = require('./client'); var _client2 = _interopRequireDefault(_client); var _schema = require('./schema'); var _schema2 = _interopRequireDefault(_schema); var _loaders = require('./loaders'); var _loaders2 = _interopRequireDefault(_loaders); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var formatError = function formatError(err) { return { message: err.message, locations: err.locations, stack: err.stack }; }; var middleware = function middleware() { var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref$client = _ref.client, client = _ref$client === undefined ? new _client2.default() : _ref$client, options = (0, _objectWithoutProperties3.default)(_ref, ['client']); var DEV = process.env.NODE_ENV !== 'production'; return (0, _expressGraphql2.default)((0, _extends3.default)({ schema: _schema2.default, context: { client: client, loaders: (0, _loaders2.default)(client) }, pretty: DEV, graphiql: DEV, formatError: DEV ? formatError : undefined }, options)); }; exports.default = middleware; if (require.main === module) { (function () { require('dotenv').config(); var app = (0, _express2.default)(); var port = process.env.PORT || process.env.npm_package_config_port || 3000; app.use((0, _compression2.default)()); app.use('/', middleware()); app.listen(port, function () { console.log('Listening on port ' + port + '.'); }); })(); }