{"version":3,"file":"retriever.cjs","names":["formatDocumentsAsString","z","DynamicStructuredTool"],"sources":["../../src/tools/retriever.ts"],"sourcesContent":["import type { BaseRetrieverInterface } from \"@langchain/core/retrievers\";\nimport { z } from \"zod/v3\";\nimport { CallbackManagerForToolRun } from \"@langchain/core/callbacks/manager\";\nimport {\n  DynamicStructuredTool,\n  type DynamicStructuredToolInput,\n} from \"@langchain/core/tools\";\nimport { formatDocumentsAsString } from \"../util/document.js\";\n\nexport function createRetrieverTool(\n  retriever: BaseRetrieverInterface,\n  input: Omit<DynamicStructuredToolInput, \"func\" | \"schema\">\n) {\n  const func = async (\n    { query }: { query: string },\n    runManager?: CallbackManagerForToolRun\n  ) => {\n    const docs = await retriever.invoke(\n      query,\n      runManager?.getChild(\"retriever\")\n    );\n    return formatDocumentsAsString(docs);\n  };\n  const schema = z.object({\n    query: z.string().describe(\"query to look up in retriever\"),\n  });\n  return new DynamicStructuredTool({ ...input, func, schema });\n}\n"],"mappings":";;;;;;;AASA,SAAgB,oBACd,WACA,OACA;CACA,MAAM,OAAO,OACX,EAAE,SACF,eACG;AAKH,SAAOA,sBAAAA,wBAJM,MAAM,UAAU,OAC3B,OACA,YAAY,SAAS,YAAY,CAClC,CACmC;;CAEtC,MAAM,SAASC,OAAAA,EAAE,OAAO,EACtB,OAAOA,OAAAA,EAAE,QAAQ,CAAC,SAAS,gCAAgC,EAC5D,CAAC;AACF,QAAO,IAAIC,sBAAAA,sBAAsB;EAAE,GAAG;EAAO;EAAM;EAAQ,CAAC"}