@terabits/grapi
Version:
Grapi Schema Generator For GraphQL Server
30 lines (29 loc) • 1.01 kB
JavaScript
;
exports.__esModule = true;
var utils_1 = require("./utils");
var BaseTypePlugin = (function () {
function BaseTypePlugin() {
}
BaseTypePlugin.prototype.visitModel = function (model, context) {
var root = context.root;
var modelTypename = this.getTypename(model);
var fields = (0, utils_1.recursiveCreateType)(model.getFields(), context);
root.addObjectType("type ".concat(modelTypename, " { ").concat(fields.join(' '), " }"));
};
BaseTypePlugin.prototype.resolveInRoot = function (_a) {
var _b;
var model = _a.model;
var modelTypename = this.getTypename(model);
var resolver = model.getResolver();
if (resolver) {
return _b = {},
_b[modelTypename] = resolver,
_b;
}
};
BaseTypePlugin.prototype.getTypename = function (model) {
return model.getTypename();
};
return BaseTypePlugin;
}());
exports["default"] = BaseTypePlugin;