{
  "version": 3,
  "sources": ["../../../../parser/dist/chunks/mermaid-parser.core/chunk-U6XO7XAA.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-KEIR6QF5.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"]
}
