UNPKG

@grapi/server

Version:

Grapi Schema Generator For GraphQL Server

30 lines (29 loc) 939 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const rootNode_1 = __importDefault(require("./rootNode")); class Generator { plugins; context; constructor({ plugins, rootNode, }) { this.plugins = plugins; this.context = { root: rootNode || new rootNode_1.default(), }; } generate(models) { this.plugins.forEach(plugin => { if (plugin.setPlugins) { plugin.setPlugins(this.plugins); } if (plugin.init) { plugin.init(this.context); } }); models.forEach(model => this.plugins.forEach(plugin => plugin.visitModel(model, this.context))); return this.context.root.print(); } } exports.default = Generator;