foobot-graphql
Version:
GraphQL server for Foobot device data.
73 lines (53 loc) • 2.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ONE_DAY = exports.ONE_HOUR = exports.ONE_MINUTE = exports.ONE_SECOND = undefined;
var _promise = require('babel-runtime/core-js/promise');
var _promise2 = _interopRequireDefault(_promise);
var _extends2 = require('babel-runtime/helpers/extends');
var _extends3 = _interopRequireDefault(_extends2);
exports.prettyPrint = prettyPrint;
exports.logObject = logObject;
exports.logError = logError;
exports.safeExit = safeExit;
exports.wait = wait;
var _util = require('util');
var _util2 = _interopRequireDefault(_util);
var _chalk = require('chalk');
var _chalk2 = _interopRequireDefault(_chalk);
var _supportsColor = require('supports-color');
var _supportsColor2 = _interopRequireDefault(_supportsColor);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var ONE_SECOND = exports.ONE_SECOND = 1000;
var ONE_MINUTE = exports.ONE_MINUTE = 60 * ONE_SECOND;
var ONE_HOUR = exports.ONE_HOUR = 60 * ONE_MINUTE;
var ONE_DAY = exports.ONE_DAY = 24 * ONE_HOUR;
function prettyPrint(obj) {
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
return _util2.default.inspect(obj, (0, _extends3.default)({ colors: _supportsColor2.default, depth: 3 }, options));
}
function logObject(obj) {
console.log(prettyPrint(obj, { breakLength: 120 }));
}
function logError(err) {
console.error(_chalk2.default.red(err.toString()));
if (err.response && err.response.headers) {
console.error(prettyPrint(err.response.headers));
}
if (err.response && err.response.data) {
console.error(prettyPrint(err.response.data));
} else if (err.response && err.response.body) {
console.error(prettyPrint(err.response.body));
}
}
function safeExit(code) {
process.on('exit', function () {
process.exit(code);
});
}
function wait(milliseconds) {
return new _promise2.default(function (resolve) {
return setTimeout(resolve, milliseconds);
});
}