import { __name } from "./chunk-S4AGLBPD.js"; // node_modules/@mermaid-js/parser/dist/mermaid-parser.core.mjs var parsers = {}; var initializers = { info: __name(async () => { const { createInfoServices: createInfoServices2 } = await import("./info-OMHHGYJF-FWJRZDVY.js"); const parser = createInfoServices2().Info.parser.LangiumParser; parsers.info = parser; }, "info"), packet: __name(async () => { const { createPacketServices: createPacketServices2 } = await import("./packet-4T2RLAQJ-2LQDH5JO.js"); const parser = createPacketServices2().Packet.parser.LangiumParser; parsers.packet = parser; }, "packet"), pie: __name(async () => { const { createPieServices: createPieServices2 } = await import("./pie-ZZUOXDRM-KQGNYE5Y.js"); const parser = createPieServices2().Pie.parser.LangiumParser; parsers.pie = parser; }, "pie"), treeView: __name(async () => { const { createTreeViewServices: createTreeViewServices2 } = await import("./treeView-SZITEDCU-TBMOS4J3.js"); const parser = createTreeViewServices2().TreeView.parser.LangiumParser; parsers.treeView = parser; }, "treeView"), architecture: __name(async () => { const { createArchitectureServices: createArchitectureServices2 } = await import("./architecture-YZFGNWBL-NAU23UHH.js"); const parser = createArchitectureServices2().Architecture.parser.LangiumParser; parsers.architecture = parser; }, "architecture"), gitGraph: __name(async () => { const { createGitGraphServices: createGitGraphServices2 } = await import("./gitGraph-7Q5UKJZL-ODOWYJI5.js"); const parser = createGitGraphServices2().GitGraph.parser.LangiumParser; parsers.gitGraph = parser; }, "gitGraph"), radar: __name(async () => { const { createRadarServices: createRadarServices2 } = await import("./radar-PYXPWWZC-PFNTPJ6C.js"); const parser = createRadarServices2().Radar.parser.LangiumParser; parsers.radar = parser; }, "radar"), treemap: __name(async () => { const { createTreemapServices: createTreemapServices2 } = await import("./treemap-W4RFUUIX-JB5N3RDV.js"); const parser = createTreemapServices2().Treemap.parser.LangiumParser; parsers.treemap = parser; }, "treemap"), wardley: __name(async () => { const { createWardleyServices: createWardleyServices2 } = await import("./wardley-RL74JXVD-Y6MKPAVO.js"); const parser = createWardleyServices2().Wardley.parser.LangiumParser; parsers.wardley = parser; }, "wardley") }; async function parse(diagramType, text) { const initializer = initializers[diagramType]; if (!initializer) { throw new Error(`Unknown diagram type: ${diagramType}`); } if (!parsers[diagramType]) { await initializer(); } const parser = parsers[diagramType]; const result = parser.parse(text); if (result.lexerErrors.length > 0 || result.parserErrors.length > 0) { throw new MermaidParseError(result); } return result.value; } __name(parse, "parse"); var _a; var MermaidParseError = (_a = class extends Error { constructor(result) { const lexerErrors = result.lexerErrors.map((err) => { const line = err.line !== void 0 && !isNaN(err.line) ? err.line : "?"; const column = err.column !== void 0 && !isNaN(err.column) ? err.column : "?"; return `Lexer error on line ${line}, column ${column}: ${err.message}`; }).join("\n"); const parserErrors = result.parserErrors.map((err) => { const line = err.token.startLine !== void 0 && !isNaN(err.token.startLine) ? err.token.startLine : "?"; const column = err.token.startColumn !== void 0 && !isNaN(err.token.startColumn) ? err.token.startColumn : "?"; return `Parse error on line ${line}, column ${column}: ${err.message}`; }).join("\n"); super(`Parsing failed: ${lexerErrors} ${parserErrors}`); this.result = result; } }, __name(_a, "MermaidParseError"), _a); export { parse }; //# sourceMappingURL=chunk-R5NQBCLB.js.map