UNPKG

@graphql-markdown/docusaurus

Version:

Docusaurus plugin for generating Markdown documentation from a GraphQL schema.

49 lines (48 loc) 2.06 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createMDXFormatter = void 0; 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"; /** * Docusaurus plugin wrapper that wires GraphQL-Markdown into the build, * optionally running the CLI during `docusaurus build` and registering * the `graphql-to-doc` command on the local CLI. * * @param _ - Load context (unused). * @param options - GraphQL-Markdown CLI options plus Docusaurus plugin options. * @returns A configured Docusaurus plugin instance. */ async function pluginGraphQLDocGenerator(_, options) { await (0, logger_1.default)(LOGGER_MODULE); return { name: NAME, /** * 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, ...options.docOptions, }, }, LOGGER_MODULE, options.formatter ?? options.mdxParser ?? MDX_PACKAGE)); }, }; } var mdx_1 = require("./mdx"); Object.defineProperty(exports, "createMDXFormatter", { enumerable: true, get: function () { return mdx_1.createMDXFormatter; } });