{"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;EACH,MAAM,OAAO,MAAM,UAAU,OAC3B,OACA,YAAY,SAAS,WAAW,CAClC;EACA,OAAOA,sBAAAA,wBAAwB,IAAI;CACrC;CACA,MAAM,SAASC,OAAAA,EAAE,OAAO,EACtB,OAAOA,OAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,EAC5D,CAAC;CACD,OAAO,IAAIC,sBAAAA,sBAAsB;EAAE,GAAG;EAAO;EAAM;CAAO,CAAC;AAC7D"}