UNPKG

@graphql-markdown/docusaurus

Version:

Docusaurus plugin for generating Markdown documentation from a GraphQL schema.

48 lines (47 loc) 1.66 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = pluginGraphQLDocGenerator; const utils_1 = require("@docusaurus/utils"); const cli_1 = require("@graphql-markdown/cli"); const logger_1 = __importDefault(require("@graphql-markdown/logger")); const NAME = "docusaurus-graphql-doc-generator"; const LOGGER_MODULE = "@docusaurus/logger"; const MDX_PACKAGE = "@graphql-markdown/docusaurus/mdx"; /** * */ async function pluginGraphQLDocGenerator(_, options) { await (0, logger_1.default)(LOGGER_MODULE); return { name: NAME, /** * @experimental */ async loadContent() { if (options.runOnBuild !== true) { return; } await (0, cli_1.runGraphQLMarkdown)(options, {}, LOGGER_MODULE); }, /** * Extends Docusaurus CLI with GraphQL Documentation generator command. * This method adds a custom command to generate GraphQL documentation * using the configured options. * * @param cli - The Docusaurus CLI instance to extend * @returns void */ extendCli(cli) { cli.addCommand((0, cli_1.getGraphQLMarkdownCli)({ ...options, docOptions: { generatorFrameworkName: "docusaurus", generatorFrameworkVersion: utils_1.DOCUSAURUS_VERSION, }, }, LOGGER_MODULE, MDX_PACKAGE)); }, }; }