@langgraph-js/sdk 3.8.1 → 3.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -80,6 +80,7 @@ export declare class MessageProcessor {
80
80
  messages: RenderMessage[];
81
81
  }>;
82
82
  }, messagesMetadata?: Record<string, any>): RenderMessage[];
83
+ private beforeFold;
83
84
  /**
84
85
  * @zh 统一的消息处理入口,按顺序执行所有处理步骤
85
86
  * @en Unified message processing entry point, executing all processing steps in order
@@ -264,21 +264,25 @@ export class MessageProcessor {
264
264
  if (rootMessage.type === "tool" && childrenMap.has(rootMessage.tool_call_id)) {
265
265
  rootMessage.sub_messages.unshift(...childrenMap.get(rootMessage.tool_call_id));
266
266
  // 根据 id 去重
267
- rootMessage.sub_messages = rootMessage.sub_messages.filter((i, index, self) => self.findIndex((t) => t.id === i.id) === index);
267
+ const sub_messages = rootMessage.sub_messages.filter((i, index, self) => self.findIndex((t) => t.id === i.id) === index);
268
+ rootMessage.sub_messages = this.beforeFold(sub_messages);
268
269
  }
269
270
  }
270
271
  return rootMessages;
271
272
  }
273
+ beforeFold(messages) {
274
+ // 1. 组合工具消息
275
+ const composedMessages = this.composeToolMessages(messages);
276
+ // 2. 附加信息
277
+ const messagesWithInfo = this.attachInfoForMessage(composedMessages);
278
+ return messagesWithInfo;
279
+ }
272
280
  /**
273
281
  * @zh 统一的消息处理入口,按顺序执行所有处理步骤
274
282
  * @en Unified message processing entry point, executing all processing steps in order
275
283
  */
276
284
  processMessages(messages, graphState, messagesMetadata) {
277
- // 1. 组合工具消息
278
- const composedMessages = this.composeToolMessages(messages);
279
- // 2. 附加信息
280
- const messagesWithInfo = this.attachInfoForMessage(composedMessages);
281
285
  // 3. 折叠树状消息(如果提供了 messagesMetadata)
282
- return this.foldTreeMessages(messagesWithInfo, graphState, messagesMetadata);
286
+ return this.foldTreeMessages(this.beforeFold(messages), graphState, messagesMetadata);
283
287
  }
284
288
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@langgraph-js/sdk",
3
- "version": "3.8.1",
3
+ "version": "3.8.2",
4
4
  "description": "The UI SDK for LangGraph - seamlessly integrate your AI agents with frontend interfaces",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -307,23 +307,26 @@ export class MessageProcessor {
307
307
  if (rootMessage.type === "tool" && childrenMap.has(rootMessage.tool_call_id)) {
308
308
  rootMessage.sub_messages.unshift(...childrenMap.get(rootMessage.tool_call_id)!);
309
309
  // 根据 id 去重
310
- rootMessage.sub_messages = rootMessage.sub_messages.filter((i, index, self) => self.findIndex((t) => t.id === i.id) === index);
310
+ const sub_messages = rootMessage.sub_messages.filter((i, index, self) => self.findIndex((t) => t.id === i.id) === index);
311
+ rootMessage.sub_messages = this.beforeFold(sub_messages);
311
312
  }
312
313
  }
313
314
  return rootMessages;
314
315
  }
315
- /**
316
- * @zh 统一的消息处理入口,按顺序执行所有处理步骤
317
- * @en Unified message processing entry point, executing all processing steps in order
318
- */
319
- processMessages(messages: RenderMessage[], graphState?: any, messagesMetadata?: Record<string, any>): RenderMessage[] {
316
+ private beforeFold(messages: RenderMessage[]) {
320
317
  // 1. 组合工具消息
321
318
  const composedMessages = this.composeToolMessages(messages);
322
319
 
323
320
  // 2. 附加信息
324
321
  const messagesWithInfo = this.attachInfoForMessage(composedMessages);
325
-
322
+ return messagesWithInfo;
323
+ }
324
+ /**
325
+ * @zh 统一的消息处理入口,按顺序执行所有处理步骤
326
+ * @en Unified message processing entry point, executing all processing steps in order
327
+ */
328
+ processMessages(messages: RenderMessage[], graphState?: any, messagesMetadata?: Record<string, any>): RenderMessage[] {
326
329
  // 3. 折叠树状消息(如果提供了 messagesMetadata)
327
- return this.foldTreeMessages(messagesWithInfo, graphState, messagesMetadata);
330
+ return this.foldTreeMessages(this.beforeFold(messages), graphState, messagesMetadata);
328
331
  }
329
332
  }