{
  "version": 3,
  "sources": ["../../../src/language/treeView/valueConverter.ts", "../../../src/language/treeView/tokenBuilder.ts", "../../../src/language/treeView/module.ts"],
  "sourcesContent": ["import type { CstNode, GrammarAST, ValueType } from 'langium';\nimport { AbstractMermaidValueConverter } from '../common/index.js';\n\nexport class TreeViewValueConverter extends AbstractMermaidValueConverter {\n  protected runCustomConverter(\n    rule: GrammarAST.AbstractRule,\n    input: string,\n    _cstNode: CstNode\n  ): ValueType | undefined {\n    if (rule.name === 'INDENTATION') {\n      return input?.length || 0;\n    } else if (rule.name === 'STRING2') {\n      // Remove quotes\n      return input.substring(1, input.length - 1);\n    }\n    return undefined;\n  }\n}\n", "import { AbstractMermaidTokenBuilder } from '../common/index.js';\n\nexport class TreeViewTokenBuilder extends AbstractMermaidTokenBuilder {\n  public constructor() {\n    super(['treeView-beta']);\n  }\n}\n", "import type {\n  DefaultSharedCoreModuleContext,\n  LangiumCoreServices,\n  LangiumSharedCoreServices,\n  Module,\n  PartialLangiumCoreServices,\n} from 'langium';\nimport {\n  EmptyFileSystem,\n  createDefaultCoreModule,\n  createDefaultSharedCoreModule,\n  inject,\n} from 'langium';\n\nimport { TreeViewValueConverter } from './valueConverter.js';\nimport {\n  MermaidGeneratedSharedModule,\n  TreeViewGrammarGeneratedModule as TreeViewGeneratedModule,\n} from '../generated/module.js';\nimport { TreeViewTokenBuilder } from './tokenBuilder.js';\n\n/**\n * Declaration of `TreeView` services.\n */\ninterface TreeViewAddedServices {\n  parser: {\n    TokenBuilder: TreeViewTokenBuilder;\n    ValueConverter: TreeViewValueConverter;\n  };\n}\n\n/**\n * Union of Langium default services and `TreeView` services.\n */\nexport type TreeViewServices = LangiumCoreServices & TreeViewAddedServices;\n\n/**\n * Dependency injection module that overrides Langium default services and\n * contributes the declared `TreeView` services.\n */\nexport const TreeViewModule: Module<\n  TreeViewServices,\n  PartialLangiumCoreServices & TreeViewAddedServices\n> = {\n  parser: {\n    TokenBuilder: () => new TreeViewTokenBuilder(),\n    ValueConverter: () => new TreeViewValueConverter(),\n  },\n};\n\n/**\n * Create the full set of services required by Langium.\n *\n * First inject the shared services by merging two modules:\n *  - Langium default shared services\n *  - Services generated by langium-cli\n *\n * Then inject the language-specific services by merging three modules:\n *  - Langium default language-specific services\n *  - Services generated by langium-cli\n *  - Services specified in this file\n * @param context - Optional module context with the LSP connection\n * @returns An object wrapping the shared services and the language-specific services\n */\nexport function createTreeViewServices(context: DefaultSharedCoreModuleContext = EmptyFileSystem): {\n  shared: LangiumSharedCoreServices;\n  TreeView: TreeViewServices;\n} {\n  const shared: LangiumSharedCoreServices = inject(\n    createDefaultSharedCoreModule(context),\n    MermaidGeneratedSharedModule\n  );\n  const TreeView: TreeViewServices = inject(\n    createDefaultCoreModule({ shared }),\n    TreeViewGeneratedModule,\n    TreeViewModule\n  );\n  shared.ServiceRegistry.register(TreeView);\n  return { shared, TreeView };\n}\n"],
  "mappings": "mGAGO,IAAMA,EAAN,cAAqCC,CAA8B,CAH1E,MAG0E,CAAAC,EAAA,+BAC9D,mBACRC,EACAC,EACAC,EACuB,CACvB,GAAIF,EAAK,OAAS,cAChB,OAAOC,GAAO,QAAU,EACnB,GAAID,EAAK,OAAS,UAEvB,OAAOC,EAAM,UAAU,EAAGA,EAAM,OAAS,CAAC,CAG9C,CACF,ECfO,IAAME,EAAN,cAAmCC,CAA4B,CAFtE,MAEsE,CAAAC,EAAA,6BAC7D,aAAc,CACnB,MAAM,CAAC,eAAe,CAAC,CACzB,CACF,ECkCO,IAAMC,EAGT,CACF,OAAQ,CACN,aAAcC,EAAA,IAAM,IAAIC,EAAV,gBACd,eAAgBD,EAAA,IAAM,IAAIE,EAAV,iBAClB,CACF,EAgBO,SAASC,EAAuBC,EAA0CC,EAG/E,CACA,IAAMC,EAAoCC,EACxCC,EAA8BJ,CAAO,EACrCK,CACF,EACMC,EAA6BH,EACjCI,EAAwB,CAAE,OAAAL,CAAO,CAAC,EAClCM,EACAb,CACF,EACA,OAAAO,EAAO,gBAAgB,SAASI,CAAQ,EACjC,CAAE,OAAAJ,EAAQ,SAAAI,CAAS,CAC5B,CAfgBV,EAAAG,EAAA",
  "names": ["TreeViewValueConverter", "AbstractMermaidValueConverter", "__name", "rule", "input", "_cstNode", "TreeViewTokenBuilder", "AbstractMermaidTokenBuilder", "__name", "TreeViewModule", "__name", "TreeViewTokenBuilder", "TreeViewValueConverter", "createTreeViewServices", "context", "EmptyFileSystem", "shared", "inject", "createDefaultSharedCoreModule", "MermaidGeneratedSharedModule", "TreeView", "createDefaultCoreModule", "TreeViewGrammarGeneratedModule"]
}
