import { __name as __name2 } from "./chunk-NW2N4LI3.mjs"; import { __name } from "./chunk-PTVI3W5X.mjs"; // ../parser/dist/mermaid-parser.core.mjs var parsers = {}; var initializers = { info: /* @__PURE__ */ __name2(async () => { const { createInfoServices: createInfoServices2 } = await import("./info-J43DQDTF-ZY6QRYG4.mjs"); const parser = createInfoServices2().Info.parser.LangiumParser; parsers.info = parser; }, "info"), packet: /* @__PURE__ */ __name2(async () => { const { createPacketServices: createPacketServices2 } = await import("./packet-YPE3B663-JK7CTFV3.mjs"); const parser = createPacketServices2().Packet.parser.LangiumParser; parsers.packet = parser; }, "packet"), pie: /* @__PURE__ */ __name2(async () => { const { createPieServices: createPieServices2 } = await import("./pie-LRSECV5Y-YQIUPWZK.mjs"); const parser = createPieServices2().Pie.parser.LangiumParser; parsers.pie = parser; }, "pie"), treeView: /* @__PURE__ */ __name2(async () => { const { createTreeViewServices: createTreeViewServices2 } = await import("./treeView-BLDUP644-Z5PZNN5R.mjs"); const parser = createTreeViewServices2().TreeView.parser.LangiumParser; parsers.treeView = parser; }, "treeView"), architecture: /* @__PURE__ */ __name2(async () => { const { createArchitectureServices: createArchitectureServices2 } = await import("./architecture-7EHR7CIX-OP562TCL.mjs"); const parser = createArchitectureServices2().Architecture.parser.LangiumParser; parsers.architecture = parser; }, "architecture"), gitGraph: /* @__PURE__ */ __name2(async () => { const { createGitGraphServices: createGitGraphServices2 } = await import("./gitGraph-WXDBUCRP-EUW4T63J.mjs"); const parser = createGitGraphServices2().GitGraph.parser.LangiumParser; parsers.gitGraph = parser; }, "gitGraph"), eventmodeling: /* @__PURE__ */ __name2(async () => { const { createEventModelingServices: createEventModelingServices2 } = await import("./eventmodeling-FCH6USID-KPOGAU7Q.mjs"); const parser = createEventModelingServices2().EventModel.parser.LangiumParser; parsers.eventmodeling = parser; }, "eventmodeling"), radar: /* @__PURE__ */ __name2(async () => { const { createRadarServices: createRadarServices2 } = await import("./radar-GUYGQ44K-S4BGN5FN.mjs"); const parser = createRadarServices2().Radar.parser.LangiumParser; parsers.radar = parser; }, "radar"), treemap: /* @__PURE__ */ __name2(async () => { const { createTreemapServices: createTreemapServices2 } = await import("./treemap-LRROVOQU-URWGPAEI.mjs"); const parser = createTreemapServices2().Treemap.parser.LangiumParser; parsers.treemap = parser; }, "treemap"), wardley: /* @__PURE__ */ __name2(async () => { const { createWardleyServices: createWardleyServices2 } = await import("./wardley-L42UT6IY-YAZPMKU5.mjs"); 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"); __name2(parse, "parse"); var MermaidParseError = class extends Error { static { __name(this, "MermaidParseError"); } 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; } static { __name2(this, "MermaidParseError"); } }; export { parse };