mermaid
Version:
Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.
8 lines (7 loc) • 5.15 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../../parser/dist/chunks/mermaid-parser.core/chunk-2ZTRR5NV.mjs"],
"sourcesContent": ["import {\n AbstractMermaidTokenBuilder,\n AbstractMermaidValueConverter,\n EmptyFileSystem,\n MermaidGeneratedSharedModule,\n RailroadEbnfGrammarGeneratedModule,\n __name,\n createDefaultCoreModule,\n createDefaultSharedCoreModule,\n inject,\n lib_exports\n} from \"./chunk-FOHPRMQF.mjs\";\n\n// src/language/railroad-ebnf/tokenBuilder.ts\nvar RailroadEbnfTokenBuilder = class extends AbstractMermaidTokenBuilder {\n static {\n __name(this, \"RailroadEbnfTokenBuilder\");\n }\n constructor() {\n super([\"railroad-ebnf-beta\"]);\n }\n};\n\n// src/language/railroad-ebnf/valueConverter.ts\nvar decodeEscapedString = /* @__PURE__ */ __name((input) => {\n const content = input.slice(1, -1);\n let value = \"\";\n for (let index = 0; index < content.length; index++) {\n const character = content[index];\n if (character === \"\\\\\" && index + 1 < content.length) {\n index++;\n const escaped = content[index];\n switch (escaped) {\n case \"n\":\n value += \"\\n\";\n break;\n case \"r\":\n value += \"\\r\";\n break;\n case \"t\":\n value += \"\t\";\n break;\n default:\n value += escaped;\n }\n continue;\n }\n value += character;\n }\n return value;\n}, \"decodeEscapedString\");\nvar RailroadEbnfValueConverter = class extends AbstractMermaidValueConverter {\n static {\n __name(this, \"RailroadEbnfValueConverter\");\n }\n runConverter(rule, input, cstNode) {\n const value = super.runConverter(rule, input, cstNode);\n if (rule.name === \"TITLE\" && typeof value === \"string\") {\n const trimmedValue = value.trim();\n if (trimmedValue.startsWith('\"') && trimmedValue.endsWith('\"') || trimmedValue.startsWith(\"'\") && trimmedValue.endsWith(\"'\")) {\n return decodeEscapedString(trimmedValue);\n }\n }\n return value;\n }\n runCustomConverter(rule, input, _cstNode) {\n if (rule.name === \"EBNF_STRING\") {\n return decodeEscapedString(input);\n }\n if (rule.name === \"EBNF_SPECIAL_SEQUENCE\") {\n return input.slice(1, -1).trim();\n }\n return void 0;\n }\n};\n\n// src/language/railroad-ebnf/module.ts\nvar RailroadEbnfModule = {\n parser: {\n TokenBuilder: /* @__PURE__ */ __name(() => new RailroadEbnfTokenBuilder(), \"TokenBuilder\"),\n ValueConverter: /* @__PURE__ */ __name(() => new RailroadEbnfValueConverter(), \"ValueConverter\")\n }\n};\nfunction createRailroadEbnfServices(context = EmptyFileSystem) {\n const shared = inject(\n createDefaultSharedCoreModule(context),\n MermaidGeneratedSharedModule\n );\n const RailroadEbnf = inject(\n createDefaultCoreModule({ shared }),\n RailroadEbnfGrammarGeneratedModule,\n RailroadEbnfModule\n );\n shared.ServiceRegistry.register(RailroadEbnf);\n return { shared, RailroadEbnf };\n}\n__name(createRailroadEbnfServices, \"createRailroadEbnfServices\");\n\nexport {\n RailroadEbnfModule,\n createRailroadEbnfServices\n};\n"],
"mappings": "0IAcA,IAAIA,EAA2B,cAAcC,CAA4B,CAdzE,MAcyE,CAAAC,EAAA,iCACvE,MAAO,CACLA,EAAO,KAAM,0BAA0B,CACzC,CACA,aAAc,CACZ,MAAM,CAAC,oBAAoB,CAAC,CAC9B,CACF,EAGIC,EAAsCD,EAAQE,GAAU,CAC1D,IAAMC,EAAUD,EAAM,MAAM,EAAG,EAAE,EAC7BE,EAAQ,GACZ,QAASC,EAAQ,EAAGA,EAAQF,EAAQ,OAAQE,IAAS,CACnD,IAAMC,EAAYH,EAAQE,CAAK,EAC/B,GAAIC,IAAc,MAAQD,EAAQ,EAAIF,EAAQ,OAAQ,CACpDE,IACA,IAAME,EAAUJ,EAAQE,CAAK,EAC7B,OAAQE,EAAS,CACf,IAAK,IACHH,GAAS;AAAA,EACT,MACF,IAAK,IACHA,GAAS,KACT,MACF,IAAK,IACHA,GAAS,IACT,MACF,QACEA,GAASG,CACb,CACA,QACF,CACAH,GAASE,CACX,CACA,OAAOF,CACT,EAAG,qBAAqB,EACpBI,EAA6B,cAAcC,CAA8B,CAnD7E,MAmD6E,CAAAT,EAAA,mCAC3E,MAAO,CACLA,EAAO,KAAM,4BAA4B,CAC3C,CACA,aAAaU,EAAMR,EAAOS,EAAS,CACjC,IAAMP,EAAQ,MAAM,aAAaM,EAAMR,EAAOS,CAAO,EACrD,GAAID,EAAK,OAAS,SAAW,OAAON,GAAU,SAAU,CACtD,IAAMQ,EAAeR,EAAM,KAAK,EAChC,GAAIQ,EAAa,WAAW,GAAG,GAAKA,EAAa,SAAS,GAAG,GAAKA,EAAa,WAAW,GAAG,GAAKA,EAAa,SAAS,GAAG,EACzH,OAAOX,EAAoBW,CAAY,CAE3C,CACA,OAAOR,CACT,CACA,mBAAmBM,EAAMR,EAAOW,EAAU,CACxC,GAAIH,EAAK,OAAS,cAChB,OAAOT,EAAoBC,CAAK,EAElC,GAAIQ,EAAK,OAAS,wBAChB,OAAOR,EAAM,MAAM,EAAG,EAAE,EAAE,KAAK,CAGnC,CACF,EAGIY,EAAqB,CACvB,OAAQ,CACN,aAA8Bd,EAAO,IAAM,IAAIF,EAA4B,cAAc,EACzF,eAAgCE,EAAO,IAAM,IAAIQ,EAA8B,gBAAgB,CACjG,CACF,EACA,SAASO,EAA2BC,EAAUC,EAAiB,CAC7D,IAAMC,EAASC,EACbC,EAA8BJ,CAAO,EACrCK,CACF,EACMC,EAAeH,EACnBI,EAAwB,CAAE,OAAAL,CAAO,CAAC,EAClCM,EACAV,CACF,EACA,OAAAI,EAAO,gBAAgB,SAASI,CAAY,EACrC,CAAE,OAAAJ,EAAQ,aAAAI,CAAa,CAChC,CAZStB,EAAAe,EAAA,8BAaTf,EAAOe,EAA4B,4BAA4B",
"names": ["RailroadEbnfTokenBuilder", "AbstractMermaidTokenBuilder", "__name", "decodeEscapedString", "input", "content", "value", "index", "character", "escaped", "RailroadEbnfValueConverter", "AbstractMermaidValueConverter", "rule", "cstNode", "trimmedValue", "_cstNode", "RailroadEbnfModule", "createRailroadEbnfServices", "context", "EmptyFileSystem", "shared", "inject", "createDefaultSharedCoreModule", "MermaidGeneratedSharedModule", "RailroadEbnf", "createDefaultCoreModule", "RailroadEbnfGrammarGeneratedModule"]
}