Files
n8n_Demo/n8n-n8n-1.109.2/packages/@n8n/nodes-langchain/utils/output_parsers/N8nOutputParser.ts

30 lines
964 B
TypeScript
Raw Normal View History

2025-09-08 04:48:28 +08:00
import type { IExecuteFunctions, ISupplyDataFunctions } from 'n8n-workflow';
import { NodeConnectionTypes } from 'n8n-workflow';
import { N8nItemListOutputParser } from './N8nItemListOutputParser';
import { N8nOutputFixingParser } from './N8nOutputFixingParser';
import { N8nStructuredOutputParser } from './N8nStructuredOutputParser';
export type N8nOutputParser =
| N8nOutputFixingParser
| N8nStructuredOutputParser
| N8nItemListOutputParser;
export { N8nOutputFixingParser, N8nItemListOutputParser, N8nStructuredOutputParser };
export async function getOptionalOutputParser(
ctx: IExecuteFunctions | ISupplyDataFunctions,
index: number = 0,
): Promise<N8nOutputParser | undefined> {
let outputParser: N8nOutputParser | undefined;
if (ctx.getNodeParameter('hasOutputParser', 0, true) === true) {
outputParser = (await ctx.getInputConnectionData(
NodeConnectionTypes.AiOutputParser,
index,
)) as N8nOutputParser;
}
return outputParser;
}