@langchain/langgraph 1.0.0-alpha.0 → 1.0.0-alpha.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.
- package/CHANGELOG.md +38 -0
- package/dist/channels/any_value.cjs +46 -0
- package/dist/channels/any_value.cjs.map +1 -0
- package/dist/channels/any_value.d.cts +0 -2
- package/dist/channels/any_value.d.cts.map +1 -1
- package/dist/channels/any_value.d.ts +0 -2
- package/dist/channels/any_value.d.ts.map +1 -1
- package/dist/channels/any_value.js +46 -0
- package/dist/channels/any_value.js.map +1 -0
- package/dist/channels/base.cjs +3 -7
- package/dist/channels/base.cjs.map +1 -1
- package/dist/channels/base.d.cts +8 -2
- package/dist/channels/base.d.cts.map +1 -1
- package/dist/channels/base.d.ts +7 -2
- package/dist/channels/base.d.ts.map +1 -1
- package/dist/channels/base.js +3 -7
- package/dist/channels/base.js.map +1 -1
- package/dist/channels/dynamic_barrier_value.cjs +76 -0
- package/dist/channels/dynamic_barrier_value.cjs.map +1 -0
- package/dist/channels/dynamic_barrier_value.d.cts +0 -1
- package/dist/channels/dynamic_barrier_value.d.cts.map +1 -1
- package/dist/channels/dynamic_barrier_value.d.ts +0 -1
- package/dist/channels/dynamic_barrier_value.d.ts.map +1 -1
- package/dist/channels/dynamic_barrier_value.js +76 -0
- package/dist/channels/dynamic_barrier_value.js.map +1 -0
- package/dist/channels/ephemeral_value.cjs +0 -2
- package/dist/channels/ephemeral_value.cjs.map +1 -1
- package/dist/channels/ephemeral_value.d.cts +0 -1
- package/dist/channels/ephemeral_value.d.cts.map +1 -1
- package/dist/channels/ephemeral_value.d.ts +0 -1
- package/dist/channels/ephemeral_value.d.ts.map +1 -1
- package/dist/channels/ephemeral_value.js +0 -2
- package/dist/channels/ephemeral_value.js.map +1 -1
- package/dist/channels/index.cjs +19 -0
- package/dist/channels/index.d.cts +9 -0
- package/dist/channels/index.d.ts +9 -0
- package/dist/channels/index.js +7 -1
- package/dist/channels/last_value.cjs +0 -1
- package/dist/channels/last_value.cjs.map +1 -1
- package/dist/channels/last_value.d.cts +14 -2
- package/dist/channels/last_value.d.cts.map +1 -1
- package/dist/channels/last_value.d.ts +14 -2
- package/dist/channels/last_value.d.ts.map +1 -1
- package/dist/channels/last_value.js +0 -1
- package/dist/channels/last_value.js.map +1 -1
- package/dist/channels/named_barrier_value.cjs +1 -1
- package/dist/channels/named_barrier_value.cjs.map +1 -1
- package/dist/channels/named_barrier_value.d.cts +15 -2
- package/dist/channels/named_barrier_value.d.cts.map +1 -1
- package/dist/channels/named_barrier_value.d.ts +15 -2
- package/dist/channels/named_barrier_value.d.ts.map +1 -1
- package/dist/channels/named_barrier_value.js +1 -2
- package/dist/channels/named_barrier_value.js.map +1 -1
- package/dist/channels/topic.cjs +1 -1
- package/dist/channels/topic.cjs.map +1 -1
- package/dist/channels/topic.d.cts +7 -1
- package/dist/channels/topic.d.cts.map +1 -1
- package/dist/channels/topic.d.ts +7 -1
- package/dist/channels/topic.d.ts.map +1 -1
- package/dist/channels/topic.js +1 -1
- package/dist/channels/topic.js.map +1 -1
- package/dist/constants.cjs +4 -1
- package/dist/constants.cjs.map +1 -1
- package/dist/constants.d.cts +5 -4
- package/dist/constants.d.cts.map +1 -1
- package/dist/constants.d.ts +5 -4
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +4 -1
- package/dist/constants.js.map +1 -1
- package/dist/errors.cjs +2 -1
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.cts +2 -1
- package/dist/errors.d.cts.map +1 -1
- package/dist/errors.d.ts +2 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +2 -1
- package/dist/errors.js.map +1 -1
- package/dist/func/index.cjs +3 -0
- package/dist/func/index.cjs.map +1 -1
- package/dist/func/index.d.cts +5 -1
- package/dist/func/index.d.cts.map +1 -1
- package/dist/func/index.d.ts +5 -1
- package/dist/func/index.d.ts.map +1 -1
- package/dist/func/index.js +3 -0
- package/dist/func/index.js.map +1 -1
- package/dist/graph/annotation.d.cts +1 -1
- package/dist/graph/annotation.d.ts +1 -1
- package/dist/graph/graph.cjs +5 -5
- package/dist/graph/graph.cjs.map +1 -1
- package/dist/graph/graph.d.cts +4 -2
- package/dist/graph/graph.d.cts.map +1 -1
- package/dist/graph/graph.d.ts +4 -2
- package/dist/graph/graph.d.ts.map +1 -1
- package/dist/graph/graph.js +1 -1
- package/dist/graph/graph.js.map +1 -1
- package/dist/graph/index.js +2 -2
- package/dist/graph/message.cjs +36 -0
- package/dist/graph/message.cjs.map +1 -1
- package/dist/graph/message.d.cts +21 -1
- package/dist/graph/message.d.cts.map +1 -1
- package/dist/graph/message.d.ts +21 -1
- package/dist/graph/message.d.ts.map +1 -1
- package/dist/graph/message.js +36 -1
- package/dist/graph/message.js.map +1 -1
- package/dist/graph/messages_annotation.d.cts +1 -1
- package/dist/graph/messages_annotation.d.ts +1 -1
- package/dist/graph/state.cjs +15 -18
- package/dist/graph/state.cjs.map +1 -1
- package/dist/graph/state.d.cts +48 -25
- package/dist/graph/state.d.cts.map +1 -1
- package/dist/graph/state.d.ts +47 -24
- package/dist/graph/state.d.ts.map +1 -1
- package/dist/graph/state.js +17 -19
- package/dist/graph/state.js.map +1 -1
- package/dist/graph/zod/plugin.cjs +1 -1
- package/dist/graph/zod/plugin.js +3 -3
- package/dist/graph/zod/plugin.js.map +1 -1
- package/dist/graph/zod/zod-registry.d.cts.map +1 -1
- package/dist/index.cjs +4 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -10
- package/dist/index.d.ts +11 -10
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/dist/interrupt.cjs +1 -1
- package/dist/interrupt.cjs.map +1 -1
- package/dist/interrupt.js +1 -1
- package/dist/interrupt.js.map +1 -1
- package/dist/prebuilt/agent_executor.d.cts +1 -1
- package/dist/prebuilt/agent_executor.d.cts.map +1 -1
- package/dist/prebuilt/agent_executor.d.ts +1 -1
- package/dist/prebuilt/agent_executor.d.ts.map +1 -1
- package/dist/prebuilt/react_agent_executor.cjs +1 -1
- package/dist/prebuilt/react_agent_executor.cjs.map +1 -1
- package/dist/prebuilt/react_agent_executor.d.cts +5 -5
- package/dist/prebuilt/react_agent_executor.d.cts.map +1 -1
- package/dist/prebuilt/react_agent_executor.d.ts +4 -4
- package/dist/prebuilt/react_agent_executor.d.ts.map +1 -1
- package/dist/prebuilt/react_agent_executor.js +1 -1
- package/dist/prebuilt/react_agent_executor.js.map +1 -1
- package/dist/pregel/algo.cjs +36 -6
- package/dist/pregel/algo.cjs.map +1 -1
- package/dist/pregel/algo.d.cts +1 -1
- package/dist/pregel/algo.d.cts.map +1 -1
- package/dist/pregel/algo.d.ts +1 -1
- package/dist/pregel/algo.d.ts.map +1 -1
- package/dist/pregel/algo.js +37 -7
- package/dist/pregel/algo.js.map +1 -1
- package/dist/pregel/index.cjs +8 -4
- package/dist/pregel/index.cjs.map +1 -1
- package/dist/pregel/index.d.cts +8 -6
- package/dist/pregel/index.d.cts.map +1 -1
- package/dist/pregel/index.d.ts +8 -6
- package/dist/pregel/index.d.ts.map +1 -1
- package/dist/pregel/index.js +8 -4
- package/dist/pregel/index.js.map +1 -1
- package/dist/pregel/loop.cjs +7 -4
- package/dist/pregel/loop.cjs.map +1 -1
- package/dist/pregel/loop.js +7 -4
- package/dist/pregel/loop.js.map +1 -1
- package/dist/pregel/remote.d.cts +2 -2
- package/dist/pregel/remote.d.cts.map +1 -1
- package/dist/pregel/remote.d.ts +2 -2
- package/dist/pregel/remote.d.ts.map +1 -1
- package/dist/pregel/runnable_types.d.cts +34 -10
- package/dist/pregel/runnable_types.d.cts.map +1 -1
- package/dist/pregel/runnable_types.d.ts +34 -10
- package/dist/pregel/runnable_types.d.ts.map +1 -1
- package/dist/pregel/stream.cjs +3 -3
- package/dist/pregel/stream.cjs.map +1 -1
- package/dist/pregel/stream.js +3 -3
- package/dist/pregel/stream.js.map +1 -1
- package/dist/pregel/types.cjs.map +1 -1
- package/dist/pregel/types.d.cts +10 -7
- package/dist/pregel/types.d.cts.map +1 -1
- package/dist/pregel/types.d.ts +10 -7
- package/dist/pregel/types.d.ts.map +1 -1
- package/dist/pregel/types.js.map +1 -1
- package/dist/pregel/utils/config.cjs +1 -0
- package/dist/pregel/utils/config.cjs.map +1 -1
- package/dist/pregel/utils/config.js +1 -0
- package/dist/pregel/utils/config.js.map +1 -1
- package/dist/ui/stream.cjs.map +1 -1
- package/dist/ui/stream.js.map +1 -1
- package/dist/web.cjs +4 -5
- package/dist/web.d.cts +8 -8
- package/dist/web.d.ts +8 -8
- package/dist/web.js +3 -3
- package/dist/writer.cjs +15 -0
- package/dist/writer.cjs.map +1 -0
- package/dist/writer.d.cts +5 -0
- package/dist/writer.d.cts.map +1 -0
- package/dist/writer.d.ts +5 -0
- package/dist/writer.d.ts.map +1 -0
- package/dist/writer.js +14 -0
- package/dist/writer.js.map +1 -0
- package/package.json +18 -8
package/dist/ui/stream.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.cjs","names":["result: Record<string, unknown>","cloneTask: Record<string, unknown>","rootRunId: string | undefined","data: unknown"],"sources":["../../src/ui/stream.ts"],"sourcesContent":["import type { RunnableConfig } from \"@langchain/core/runnables\";\nimport type { StreamEvent } from \"@langchain/core/tracers/log_stream\";\nimport type { StreamMode, StreamOutputMap } from \"../pregel/types.js\";\nimport type {\n AnyPregelLike,\n ExtraTypeBag,\n InferLangGraphEventStream,\n} from \"./types.infer.js\";\n\ntype StreamCheckpointsOutput<StreamValues> = StreamOutputMap<\n \"checkpoints\",\n false,\n StreamValues,\n unknown,\n string,\n unknown\n>;\n\nconst serialiseAsDict = <T>(obj: T): T => {\n return JSON.parse(\n JSON.stringify(obj, function (key: string | number, value: unknown) {\n const rawValue = this[key];\n if (\n rawValue != null &&\n typeof rawValue === \"object\" &&\n \"toDict\" in rawValue &&\n typeof rawValue.toDict === \"function\"\n ) {\n const { type, data } = rawValue.toDict();\n return { ...data, type };\n }\n\n return value;\n })\n );\n};\n\nconst serializeError = (error: unknown) => {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return { error: error.name, message: error.message };\n }\n return { error: \"Error\", message: JSON.stringify(error) };\n};\n\nconst isRunnableConfig = (\n config: unknown\n): config is RunnableConfig & { configurable: Record<string, unknown> } => {\n if (typeof config !== \"object\" || config == null) return false;\n return (\n \"configurable\" in config &&\n typeof config.configurable === \"object\" &&\n config.configurable != null\n );\n};\n\nconst extractCheckpointFromConfig = (\n config: RunnableConfig | null | undefined\n) => {\n if (!isRunnableConfig(config) || !config.configurable.thread_id) {\n return null;\n }\n\n return {\n thread_id: config.configurable.thread_id,\n checkpoint_ns: config.configurable.checkpoint_ns || \"\",\n checkpoint_id: config.configurable.checkpoint_id || null,\n checkpoint_map: config.configurable.checkpoint_map || null,\n };\n};\n\nconst serializeConfig = (config: unknown) => {\n if (isRunnableConfig(config)) {\n const configurable = Object.fromEntries(\n Object.entries(config.configurable).filter(\n ([key]) => !key.startsWith(\"__\")\n )\n );\n\n const newConfig = { ...config, configurable };\n delete newConfig.callbacks;\n return newConfig;\n }\n\n return config;\n};\n\nfunction serializeCheckpoint(payload: StreamCheckpointsOutput<unknown>) {\n const result: Record<string, unknown> = {\n ...payload,\n checkpoint: extractCheckpointFromConfig(payload.config),\n parent_checkpoint: extractCheckpointFromConfig(payload.parentConfig),\n\n config: serializeConfig(payload.config),\n parent_config: serializeConfig(payload.parentConfig),\n\n tasks: payload.tasks.map((task) => {\n if (isRunnableConfig(task.state)) {\n const checkpoint = extractCheckpointFromConfig(task.state);\n if (checkpoint != null) {\n const cloneTask: Record<string, unknown> = { ...task, checkpoint };\n delete cloneTask.state;\n return cloneTask;\n }\n }\n\n return task;\n }),\n };\n\n delete result.parentConfig;\n return result;\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible event stream.\n * @experimental Does not follow semver.\n *\n * @param events\n */\nexport async function* toLangGraphEventStream<\n TGraph extends AnyPregelLike,\n TExtra extends ExtraTypeBag = ExtraTypeBag\n>(\n events: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>\n): AsyncGenerator<InferLangGraphEventStream<TGraph, TExtra>> {\n let rootRunId: string | undefined;\n\n try {\n for await (const event of await events) {\n if (event.event === \"on_chain_start\" && rootRunId == null) {\n rootRunId = event.run_id;\n }\n if (event.tags?.includes(\"langsmith:hidden\")) continue;\n if (event.event === \"on_chain_stream\" && event.run_id === rootRunId) {\n if (!Array.isArray(event.data.chunk)) {\n continue;\n }\n\n type AnyStreamOutput = StreamOutputMap<\n StreamMode[],\n true,\n unknown,\n unknown,\n string,\n unknown\n >;\n\n const [ns, mode, chunk] = (\n event.data.chunk.length === 3\n ? event.data.chunk\n : [null, ...event.data.chunk]\n ) as AnyStreamOutput;\n\n // Listen for debug events and capture checkpoint\n let data: unknown = chunk;\n if (mode === \"debug\") {\n const debugChunk = chunk;\n\n if (debugChunk.type === \"checkpoint\") {\n data = {\n ...debugChunk,\n payload: serializeCheckpoint(debugChunk.payload),\n };\n }\n }\n\n if (mode === \"checkpoints\") {\n data = serializeCheckpoint(chunk);\n }\n\n // This needs to be done for LC.js V0 messages, since they\n // by default serialize using the verbose Serializable protocol.\n data = serialiseAsDict(data);\n\n yield {\n event: ns?.length ? `${mode}|${ns.join(\"|\")}` : mode,\n data,\n } as InferLangGraphEventStream<TGraph, TExtra>;\n }\n }\n } catch (error) {\n yield { event: \"error\", data: serializeError(error) };\n }\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible Web Response.\n * @experimental Does not follow semver.\n */\nexport function toLangGraphEventStreamResponse(options: {\n status?: number;\n statusText?: string;\n headers?: Headers | Record<string, string>;\n stream: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>;\n}) {\n const headers = new Headers({\n \"Content-Type\": \"text/event-stream\",\n \"Cache-Control\": \"no-cache\",\n Connection: \"keep-alive\",\n });\n\n if (options.headers) {\n if (\n \"forEach\" in options.headers &&\n typeof options.headers.forEach === \"function\"\n ) {\n options.headers.forEach((v, k) => headers.set(k, v));\n } else {\n Object.entries(options.headers).map(([k, v]) => headers.set(k, v));\n }\n }\n\n return new Response(\n new ReadableStream({\n async start(controller) {\n try {\n for await (const { event, data } of toLangGraphEventStream(\n options.stream\n )) {\n controller.enqueue(`event: ${event}\\n`);\n controller.enqueue(`data: ${JSON.stringify(data)}\\n\\n`);\n }\n } finally {\n controller.close();\n }\n },\n }),\n { headers, status: options.status, statusText: options.statusText }\n );\n}\n"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"stream.cjs","names":["result: Record<string, unknown>","cloneTask: Record<string, unknown>","rootRunId: string | undefined","data: unknown"],"sources":["../../src/ui/stream.ts"],"sourcesContent":["import type { RunnableConfig } from \"@langchain/core/runnables\";\nimport type { StreamEvent } from \"@langchain/core/tracers/log_stream\";\nimport type { StreamMode, StreamOutputMap } from \"../pregel/types.js\";\nimport type {\n AnyPregelLike,\n ExtraTypeBag,\n InferLangGraphEventStream,\n} from \"./types.infer.js\";\n\ntype StreamCheckpointsOutput<StreamValues> = StreamOutputMap<\n \"checkpoints\",\n false,\n StreamValues,\n unknown,\n string,\n unknown,\n unknown\n>;\n\nconst serialiseAsDict = <T>(obj: T): T => {\n return JSON.parse(\n JSON.stringify(obj, function (key: string | number, value: unknown) {\n const rawValue = this[key];\n if (\n rawValue != null &&\n typeof rawValue === \"object\" &&\n \"toDict\" in rawValue &&\n typeof rawValue.toDict === \"function\"\n ) {\n const { type, data } = rawValue.toDict();\n return { ...data, type };\n }\n\n return value;\n })\n );\n};\n\nconst serializeError = (error: unknown) => {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return { error: error.name, message: error.message };\n }\n return { error: \"Error\", message: JSON.stringify(error) };\n};\n\nconst isRunnableConfig = (\n config: unknown\n): config is RunnableConfig & { configurable: Record<string, unknown> } => {\n if (typeof config !== \"object\" || config == null) return false;\n return (\n \"configurable\" in config &&\n typeof config.configurable === \"object\" &&\n config.configurable != null\n );\n};\n\nconst extractCheckpointFromConfig = (\n config: RunnableConfig | null | undefined\n) => {\n if (!isRunnableConfig(config) || !config.configurable.thread_id) {\n return null;\n }\n\n return {\n thread_id: config.configurable.thread_id,\n checkpoint_ns: config.configurable.checkpoint_ns || \"\",\n checkpoint_id: config.configurable.checkpoint_id || null,\n checkpoint_map: config.configurable.checkpoint_map || null,\n };\n};\n\nconst serializeConfig = (config: unknown) => {\n if (isRunnableConfig(config)) {\n const configurable = Object.fromEntries(\n Object.entries(config.configurable).filter(\n ([key]) => !key.startsWith(\"__\")\n )\n );\n\n const newConfig = { ...config, configurable };\n delete newConfig.callbacks;\n return newConfig;\n }\n\n return config;\n};\n\nfunction serializeCheckpoint(payload: StreamCheckpointsOutput<unknown>) {\n const result: Record<string, unknown> = {\n ...payload,\n checkpoint: extractCheckpointFromConfig(payload.config),\n parent_checkpoint: extractCheckpointFromConfig(payload.parentConfig),\n\n config: serializeConfig(payload.config),\n parent_config: serializeConfig(payload.parentConfig),\n\n tasks: payload.tasks.map((task) => {\n if (isRunnableConfig(task.state)) {\n const checkpoint = extractCheckpointFromConfig(task.state);\n if (checkpoint != null) {\n const cloneTask: Record<string, unknown> = { ...task, checkpoint };\n delete cloneTask.state;\n return cloneTask;\n }\n }\n\n return task;\n }),\n };\n\n delete result.parentConfig;\n return result;\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible event stream.\n * @experimental Does not follow semver.\n *\n * @param events\n */\nexport async function* toLangGraphEventStream<\n TGraph extends AnyPregelLike,\n TExtra extends ExtraTypeBag = ExtraTypeBag\n>(\n events: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>\n): AsyncGenerator<InferLangGraphEventStream<TGraph, TExtra>> {\n let rootRunId: string | undefined;\n\n try {\n for await (const event of await events) {\n if (event.event === \"on_chain_start\" && rootRunId == null) {\n rootRunId = event.run_id;\n }\n if (event.tags?.includes(\"langsmith:hidden\")) continue;\n if (event.event === \"on_chain_stream\" && event.run_id === rootRunId) {\n if (!Array.isArray(event.data.chunk)) {\n continue;\n }\n\n type AnyStreamOutput = StreamOutputMap<\n StreamMode[],\n true,\n unknown,\n unknown,\n string,\n unknown,\n unknown\n >;\n\n const [ns, mode, chunk] = (\n event.data.chunk.length === 3\n ? event.data.chunk\n : [null, ...event.data.chunk]\n ) as AnyStreamOutput;\n\n // Listen for debug events and capture checkpoint\n let data: unknown = chunk;\n if (mode === \"debug\") {\n const debugChunk = chunk;\n\n if (debugChunk.type === \"checkpoint\") {\n data = {\n ...debugChunk,\n payload: serializeCheckpoint(debugChunk.payload),\n };\n }\n }\n\n if (mode === \"checkpoints\") {\n data = serializeCheckpoint(chunk);\n }\n\n // This needs to be done for LC.js V0 messages, since they\n // by default serialize using the verbose Serializable protocol.\n data = serialiseAsDict(data);\n\n yield {\n event: ns?.length ? `${mode}|${ns.join(\"|\")}` : mode,\n data,\n } as InferLangGraphEventStream<TGraph, TExtra>;\n }\n }\n } catch (error) {\n yield { event: \"error\", data: serializeError(error) };\n }\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible Web Response.\n * @experimental Does not follow semver.\n */\nexport function toLangGraphEventStreamResponse(options: {\n status?: number;\n statusText?: string;\n headers?: Headers | Record<string, string>;\n stream: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>;\n}) {\n const headers = new Headers({\n \"Content-Type\": \"text/event-stream\",\n \"Cache-Control\": \"no-cache\",\n Connection: \"keep-alive\",\n });\n\n if (options.headers) {\n if (\n \"forEach\" in options.headers &&\n typeof options.headers.forEach === \"function\"\n ) {\n options.headers.forEach((v, k) => headers.set(k, v));\n } else {\n Object.entries(options.headers).map(([k, v]) => headers.set(k, v));\n }\n }\n\n return new Response(\n new ReadableStream({\n async start(controller) {\n try {\n for await (const { event, data } of toLangGraphEventStream(\n options.stream\n )) {\n controller.enqueue(`event: ${event}\\n`);\n controller.enqueue(`data: ${JSON.stringify(data)}\\n\\n`);\n }\n } finally {\n controller.close();\n }\n },\n }),\n { headers, status: options.status, statusText: options.statusText }\n );\n}\n"],"mappings":"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"}
|
package/dist/ui/stream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.js","names":["result: Record<string, unknown>","cloneTask: Record<string, unknown>","rootRunId: string | undefined","data: unknown"],"sources":["../../src/ui/stream.ts"],"sourcesContent":["import type { RunnableConfig } from \"@langchain/core/runnables\";\nimport type { StreamEvent } from \"@langchain/core/tracers/log_stream\";\nimport type { StreamMode, StreamOutputMap } from \"../pregel/types.js\";\nimport type {\n AnyPregelLike,\n ExtraTypeBag,\n InferLangGraphEventStream,\n} from \"./types.infer.js\";\n\ntype StreamCheckpointsOutput<StreamValues> = StreamOutputMap<\n \"checkpoints\",\n false,\n StreamValues,\n unknown,\n string,\n unknown\n>;\n\nconst serialiseAsDict = <T>(obj: T): T => {\n return JSON.parse(\n JSON.stringify(obj, function (key: string | number, value: unknown) {\n const rawValue = this[key];\n if (\n rawValue != null &&\n typeof rawValue === \"object\" &&\n \"toDict\" in rawValue &&\n typeof rawValue.toDict === \"function\"\n ) {\n const { type, data } = rawValue.toDict();\n return { ...data, type };\n }\n\n return value;\n })\n );\n};\n\nconst serializeError = (error: unknown) => {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return { error: error.name, message: error.message };\n }\n return { error: \"Error\", message: JSON.stringify(error) };\n};\n\nconst isRunnableConfig = (\n config: unknown\n): config is RunnableConfig & { configurable: Record<string, unknown> } => {\n if (typeof config !== \"object\" || config == null) return false;\n return (\n \"configurable\" in config &&\n typeof config.configurable === \"object\" &&\n config.configurable != null\n );\n};\n\nconst extractCheckpointFromConfig = (\n config: RunnableConfig | null | undefined\n) => {\n if (!isRunnableConfig(config) || !config.configurable.thread_id) {\n return null;\n }\n\n return {\n thread_id: config.configurable.thread_id,\n checkpoint_ns: config.configurable.checkpoint_ns || \"\",\n checkpoint_id: config.configurable.checkpoint_id || null,\n checkpoint_map: config.configurable.checkpoint_map || null,\n };\n};\n\nconst serializeConfig = (config: unknown) => {\n if (isRunnableConfig(config)) {\n const configurable = Object.fromEntries(\n Object.entries(config.configurable).filter(\n ([key]) => !key.startsWith(\"__\")\n )\n );\n\n const newConfig = { ...config, configurable };\n delete newConfig.callbacks;\n return newConfig;\n }\n\n return config;\n};\n\nfunction serializeCheckpoint(payload: StreamCheckpointsOutput<unknown>) {\n const result: Record<string, unknown> = {\n ...payload,\n checkpoint: extractCheckpointFromConfig(payload.config),\n parent_checkpoint: extractCheckpointFromConfig(payload.parentConfig),\n\n config: serializeConfig(payload.config),\n parent_config: serializeConfig(payload.parentConfig),\n\n tasks: payload.tasks.map((task) => {\n if (isRunnableConfig(task.state)) {\n const checkpoint = extractCheckpointFromConfig(task.state);\n if (checkpoint != null) {\n const cloneTask: Record<string, unknown> = { ...task, checkpoint };\n delete cloneTask.state;\n return cloneTask;\n }\n }\n\n return task;\n }),\n };\n\n delete result.parentConfig;\n return result;\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible event stream.\n * @experimental Does not follow semver.\n *\n * @param events\n */\nexport async function* toLangGraphEventStream<\n TGraph extends AnyPregelLike,\n TExtra extends ExtraTypeBag = ExtraTypeBag\n>(\n events: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>\n): AsyncGenerator<InferLangGraphEventStream<TGraph, TExtra>> {\n let rootRunId: string | undefined;\n\n try {\n for await (const event of await events) {\n if (event.event === \"on_chain_start\" && rootRunId == null) {\n rootRunId = event.run_id;\n }\n if (event.tags?.includes(\"langsmith:hidden\")) continue;\n if (event.event === \"on_chain_stream\" && event.run_id === rootRunId) {\n if (!Array.isArray(event.data.chunk)) {\n continue;\n }\n\n type AnyStreamOutput = StreamOutputMap<\n StreamMode[],\n true,\n unknown,\n unknown,\n string,\n unknown\n >;\n\n const [ns, mode, chunk] = (\n event.data.chunk.length === 3\n ? event.data.chunk\n : [null, ...event.data.chunk]\n ) as AnyStreamOutput;\n\n // Listen for debug events and capture checkpoint\n let data: unknown = chunk;\n if (mode === \"debug\") {\n const debugChunk = chunk;\n\n if (debugChunk.type === \"checkpoint\") {\n data = {\n ...debugChunk,\n payload: serializeCheckpoint(debugChunk.payload),\n };\n }\n }\n\n if (mode === \"checkpoints\") {\n data = serializeCheckpoint(chunk);\n }\n\n // This needs to be done for LC.js V0 messages, since they\n // by default serialize using the verbose Serializable protocol.\n data = serialiseAsDict(data);\n\n yield {\n event: ns?.length ? `${mode}|${ns.join(\"|\")}` : mode,\n data,\n } as InferLangGraphEventStream<TGraph, TExtra>;\n }\n }\n } catch (error) {\n yield { event: \"error\", data: serializeError(error) };\n }\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible Web Response.\n * @experimental Does not follow semver.\n */\nexport function toLangGraphEventStreamResponse(options: {\n status?: number;\n statusText?: string;\n headers?: Headers | Record<string, string>;\n stream: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>;\n}) {\n const headers = new Headers({\n \"Content-Type\": \"text/event-stream\",\n \"Cache-Control\": \"no-cache\",\n Connection: \"keep-alive\",\n });\n\n if (options.headers) {\n if (\n \"forEach\" in options.headers &&\n typeof options.headers.forEach === \"function\"\n ) {\n options.headers.forEach((v, k) => headers.set(k, v));\n } else {\n Object.entries(options.headers).map(([k, v]) => headers.set(k, v));\n }\n }\n\n return new Response(\n new ReadableStream({\n async start(controller) {\n try {\n for await (const { event, data } of toLangGraphEventStream(\n options.stream\n )) {\n controller.enqueue(`event: ${event}\\n`);\n controller.enqueue(`data: ${JSON.stringify(data)}\\n\\n`);\n }\n } finally {\n controller.close();\n }\n },\n }),\n { headers, status: options.status, statusText: options.statusText }\n );\n}\n"],"mappings":";
|
|
1
|
+
{"version":3,"file":"stream.js","names":["result: Record<string, unknown>","cloneTask: Record<string, unknown>","rootRunId: string | undefined","data: unknown"],"sources":["../../src/ui/stream.ts"],"sourcesContent":["import type { RunnableConfig } from \"@langchain/core/runnables\";\nimport type { StreamEvent } from \"@langchain/core/tracers/log_stream\";\nimport type { StreamMode, StreamOutputMap } from \"../pregel/types.js\";\nimport type {\n AnyPregelLike,\n ExtraTypeBag,\n InferLangGraphEventStream,\n} from \"./types.infer.js\";\n\ntype StreamCheckpointsOutput<StreamValues> = StreamOutputMap<\n \"checkpoints\",\n false,\n StreamValues,\n unknown,\n string,\n unknown,\n unknown\n>;\n\nconst serialiseAsDict = <T>(obj: T): T => {\n return JSON.parse(\n JSON.stringify(obj, function (key: string | number, value: unknown) {\n const rawValue = this[key];\n if (\n rawValue != null &&\n typeof rawValue === \"object\" &&\n \"toDict\" in rawValue &&\n typeof rawValue.toDict === \"function\"\n ) {\n const { type, data } = rawValue.toDict();\n return { ...data, type };\n }\n\n return value;\n })\n );\n};\n\nconst serializeError = (error: unknown) => {\n // eslint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return { error: error.name, message: error.message };\n }\n return { error: \"Error\", message: JSON.stringify(error) };\n};\n\nconst isRunnableConfig = (\n config: unknown\n): config is RunnableConfig & { configurable: Record<string, unknown> } => {\n if (typeof config !== \"object\" || config == null) return false;\n return (\n \"configurable\" in config &&\n typeof config.configurable === \"object\" &&\n config.configurable != null\n );\n};\n\nconst extractCheckpointFromConfig = (\n config: RunnableConfig | null | undefined\n) => {\n if (!isRunnableConfig(config) || !config.configurable.thread_id) {\n return null;\n }\n\n return {\n thread_id: config.configurable.thread_id,\n checkpoint_ns: config.configurable.checkpoint_ns || \"\",\n checkpoint_id: config.configurable.checkpoint_id || null,\n checkpoint_map: config.configurable.checkpoint_map || null,\n };\n};\n\nconst serializeConfig = (config: unknown) => {\n if (isRunnableConfig(config)) {\n const configurable = Object.fromEntries(\n Object.entries(config.configurable).filter(\n ([key]) => !key.startsWith(\"__\")\n )\n );\n\n const newConfig = { ...config, configurable };\n delete newConfig.callbacks;\n return newConfig;\n }\n\n return config;\n};\n\nfunction serializeCheckpoint(payload: StreamCheckpointsOutput<unknown>) {\n const result: Record<string, unknown> = {\n ...payload,\n checkpoint: extractCheckpointFromConfig(payload.config),\n parent_checkpoint: extractCheckpointFromConfig(payload.parentConfig),\n\n config: serializeConfig(payload.config),\n parent_config: serializeConfig(payload.parentConfig),\n\n tasks: payload.tasks.map((task) => {\n if (isRunnableConfig(task.state)) {\n const checkpoint = extractCheckpointFromConfig(task.state);\n if (checkpoint != null) {\n const cloneTask: Record<string, unknown> = { ...task, checkpoint };\n delete cloneTask.state;\n return cloneTask;\n }\n }\n\n return task;\n }),\n };\n\n delete result.parentConfig;\n return result;\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible event stream.\n * @experimental Does not follow semver.\n *\n * @param events\n */\nexport async function* toLangGraphEventStream<\n TGraph extends AnyPregelLike,\n TExtra extends ExtraTypeBag = ExtraTypeBag\n>(\n events: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>\n): AsyncGenerator<InferLangGraphEventStream<TGraph, TExtra>> {\n let rootRunId: string | undefined;\n\n try {\n for await (const event of await events) {\n if (event.event === \"on_chain_start\" && rootRunId == null) {\n rootRunId = event.run_id;\n }\n if (event.tags?.includes(\"langsmith:hidden\")) continue;\n if (event.event === \"on_chain_stream\" && event.run_id === rootRunId) {\n if (!Array.isArray(event.data.chunk)) {\n continue;\n }\n\n type AnyStreamOutput = StreamOutputMap<\n StreamMode[],\n true,\n unknown,\n unknown,\n string,\n unknown,\n unknown\n >;\n\n const [ns, mode, chunk] = (\n event.data.chunk.length === 3\n ? event.data.chunk\n : [null, ...event.data.chunk]\n ) as AnyStreamOutput;\n\n // Listen for debug events and capture checkpoint\n let data: unknown = chunk;\n if (mode === \"debug\") {\n const debugChunk = chunk;\n\n if (debugChunk.type === \"checkpoint\") {\n data = {\n ...debugChunk,\n payload: serializeCheckpoint(debugChunk.payload),\n };\n }\n }\n\n if (mode === \"checkpoints\") {\n data = serializeCheckpoint(chunk);\n }\n\n // This needs to be done for LC.js V0 messages, since they\n // by default serialize using the verbose Serializable protocol.\n data = serialiseAsDict(data);\n\n yield {\n event: ns?.length ? `${mode}|${ns.join(\"|\")}` : mode,\n data,\n } as InferLangGraphEventStream<TGraph, TExtra>;\n }\n }\n } catch (error) {\n yield { event: \"error\", data: serializeError(error) };\n }\n}\n\n/**\n * Converts a `graph.streamEvents()` output into a LangGraph Platform compatible Web Response.\n * @experimental Does not follow semver.\n */\nexport function toLangGraphEventStreamResponse(options: {\n status?: number;\n statusText?: string;\n headers?: Headers | Record<string, string>;\n stream: AsyncIterable<StreamEvent> | Promise<AsyncIterable<StreamEvent>>;\n}) {\n const headers = new Headers({\n \"Content-Type\": \"text/event-stream\",\n \"Cache-Control\": \"no-cache\",\n Connection: \"keep-alive\",\n });\n\n if (options.headers) {\n if (\n \"forEach\" in options.headers &&\n typeof options.headers.forEach === \"function\"\n ) {\n options.headers.forEach((v, k) => headers.set(k, v));\n } else {\n Object.entries(options.headers).map(([k, v]) => headers.set(k, v));\n }\n }\n\n return new Response(\n new ReadableStream({\n async start(controller) {\n try {\n for await (const { event, data } of toLangGraphEventStream(\n options.stream\n )) {\n controller.enqueue(`event: ${event}\\n`);\n controller.enqueue(`data: ${JSON.stringify(data)}\\n\\n`);\n }\n } finally {\n controller.close();\n }\n },\n }),\n { headers, status: options.status, statusText: options.statusText }\n );\n}\n"],"mappings":"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"}
|
package/dist/web.cjs
CHANGED
|
@@ -4,12 +4,12 @@ const require_base = require('./channels/base.cjs');
|
|
|
4
4
|
const require_binop = require('./channels/binop.cjs');
|
|
5
5
|
const require_annotation = require('./graph/annotation.cjs');
|
|
6
6
|
const require_constants = require('./constants.cjs');
|
|
7
|
-
require('./channels/index.cjs');
|
|
8
7
|
const require_graph = require('./graph/graph.cjs');
|
|
9
8
|
const require_state = require('./graph/state.cjs');
|
|
10
9
|
const require_message = require('./graph/message.cjs');
|
|
11
10
|
require('./graph/index.cjs');
|
|
12
|
-
|
|
11
|
+
require('./channels/index.cjs');
|
|
12
|
+
const require_index$1 = require('./func/index.cjs');
|
|
13
13
|
const require_messages_annotation = require('./graph/messages_annotation.cjs');
|
|
14
14
|
const __langchain_langgraph_checkpoint = require_rolldown_runtime.__toESM(require("@langchain/langgraph-checkpoint"));
|
|
15
15
|
|
|
@@ -85,7 +85,7 @@ Object.defineProperty(exports, 'emptyCheckpoint', {
|
|
|
85
85
|
return __langchain_langgraph_checkpoint.emptyCheckpoint;
|
|
86
86
|
}
|
|
87
87
|
});
|
|
88
|
-
exports.entrypoint = require_index$
|
|
88
|
+
exports.entrypoint = require_index$1.entrypoint;
|
|
89
89
|
exports.getSubgraphsSeenSet = require_errors.getSubgraphsSeenSet;
|
|
90
90
|
exports.isCommand = require_constants.isCommand;
|
|
91
91
|
exports.isGraphBubbleUp = require_errors.isGraphBubbleUp;
|
|
@@ -93,5 +93,4 @@ exports.isGraphInterrupt = require_errors.isGraphInterrupt;
|
|
|
93
93
|
exports.isInterrupted = require_constants.isInterrupted;
|
|
94
94
|
exports.isParentCommand = require_errors.isParentCommand;
|
|
95
95
|
exports.messagesStateReducer = require_message.messagesStateReducer;
|
|
96
|
-
exports.task = require_index$
|
|
97
|
-
exports.typedNode = require_state.typedNode;
|
|
96
|
+
exports.task = require_index$1.task;
|
package/dist/web.d.cts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { BaseChannel } from "./channels/base.cjs";
|
|
2
|
-
import { LangGraphRunnableConfig, Runtime } from "./pregel/runnable_types.cjs";
|
|
3
2
|
import { BinaryOperator, BinaryOperatorAggregate } from "./channels/binop.cjs";
|
|
3
|
+
import { AnyValue } from "./channels/any_value.cjs";
|
|
4
4
|
import { LastValue } from "./channels/last_value.cjs";
|
|
5
|
+
import { DynamicBarrierValue, WaitForNames } from "./channels/dynamic_barrier_value.cjs";
|
|
6
|
+
import { EphemeralValue } from "./channels/ephemeral_value.cjs";
|
|
7
|
+
import { NamedBarrierValue } from "./channels/named_barrier_value.cjs";
|
|
8
|
+
import { Topic } from "./channels/topic.cjs";
|
|
9
|
+
import { LangGraphRunnableConfig, Runtime } from "./pregel/runnable_types.cjs";
|
|
5
10
|
import { Annotation, AnnotationRoot, NodeType, SingleReducer, StateDefinition, StateType, UpdateType } from "./graph/annotation.cjs";
|
|
6
11
|
import { RetryPolicy } from "./pregel/utils/index.cjs";
|
|
7
12
|
import { PregelNode } from "./pregel/read.cjs";
|
|
@@ -9,15 +14,10 @@ import { Command, CommandParams, END, INTERRUPT, Interrupt, START, Send, isComma
|
|
|
9
14
|
import { GetStateOptions, MultipleChannelSubscriptionOptions, PregelOptions, PregelParams, SingleChannelSubscriptionOptions, StateSnapshot, StreamMode, StreamOutputMap } from "./pregel/types.cjs";
|
|
10
15
|
import { Pregel } from "./pregel/index.cjs";
|
|
11
16
|
import { CompiledGraph, Graph } from "./graph/graph.cjs";
|
|
12
|
-
import { CompiledStateGraph, StateGraph, StateGraphArgs
|
|
17
|
+
import { CompiledStateGraph, StateGraph, StateGraphArgs } from "./graph/state.cjs";
|
|
13
18
|
import { MessageGraph, Messages, REMOVE_ALL_MESSAGES, messagesStateReducer } from "./graph/message.cjs";
|
|
14
19
|
import { BaseLangGraphError, BaseLangGraphErrorFields, EmptyChannelError, EmptyInputError, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, InvalidUpdateError, MultipleSubgraphsError, NodeInterrupt, ParentCommand, RemoteException, UnreachableNodeError, getSubgraphsSeenSet, isGraphBubbleUp, isGraphInterrupt, isParentCommand } from "./errors.cjs";
|
|
15
|
-
import { AnyValue } from "./channels/any_value.cjs";
|
|
16
|
-
import { DynamicBarrierValue, WaitForNames } from "./channels/dynamic_barrier_value.cjs";
|
|
17
|
-
import { NamedBarrierValue } from "./channels/named_barrier_value.cjs";
|
|
18
|
-
import { Topic } from "./channels/topic.cjs";
|
|
19
|
-
import { EphemeralValue } from "./channels/ephemeral_value.cjs";
|
|
20
20
|
import { EntrypointOptions, TaskOptions, entrypoint, task } from "./func/index.cjs";
|
|
21
21
|
import { MessagesAnnotation, MessagesZodMeta, MessagesZodState } from "./graph/messages_annotation.cjs";
|
|
22
22
|
import { AsyncBatchedStore, BaseCheckpointSaver, BaseStore, Checkpoint, CheckpointMetadata, CheckpointTuple, GetOperation, InMemoryStore, Item, ListNamespacesOperation, MatchCondition, MemorySaver, NameSpacePath, NamespaceMatchType, Operation, OperationResults, PutOperation, SearchOperation, copyCheckpoint, emptyCheckpoint } from "@langchain/langgraph-checkpoint";
|
|
23
|
-
export { Annotation, type AnnotationRoot, type AnyValue, AsyncBatchedStore, BaseChannel, BaseCheckpointSaver, BaseLangGraphError, BaseLangGraphErrorFields, BaseStore, type BinaryOperator, BinaryOperatorAggregate, type Checkpoint, type CheckpointMetadata, type CheckpointTuple, Command, type CommandParams, type CompiledGraph, CompiledStateGraph, type DynamicBarrierValue, END, EmptyChannelError, EmptyInputError, type EntrypointOptions, type EphemeralValue, type GetOperation, type GetStateOptions, Graph, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, INTERRUPT, InMemoryStore, type Interrupt, InvalidUpdateError, type Item, type LangGraphRunnableConfig, type LastValue, type ListNamespacesOperation, type MatchCondition, MemorySaver, MessageGraph, type Messages, MessagesAnnotation, MessagesZodMeta, MessagesZodState, type MultipleChannelSubscriptionOptions, MultipleSubgraphsError, type NameSpacePath, type NamedBarrierValue, type NamespaceMatchType, NodeInterrupt, type NodeType, type Operation, type OperationResults, ParentCommand, type Pregel, type PregelNode, type PregelOptions, type PregelParams, type PutOperation, REMOVE_ALL_MESSAGES, RemoteException, type RetryPolicy, type Runtime, START, type SearchOperation, Send, type SingleChannelSubscriptionOptions, type SingleReducer, type StateDefinition, StateGraph, type StateGraphArgs, type StateSnapshot, type StateType, type StreamMode, type StreamOutputMap, type TaskOptions, type Topic, UnreachableNodeError, type UpdateType, type WaitForNames, messagesStateReducer as addMessages, copyCheckpoint, emptyCheckpoint, entrypoint, getSubgraphsSeenSet, isCommand, isGraphBubbleUp, isGraphInterrupt, isInterrupted, isParentCommand, messagesStateReducer, task
|
|
23
|
+
export { Annotation, type AnnotationRoot, type AnyValue, AsyncBatchedStore, BaseChannel, BaseCheckpointSaver, BaseLangGraphError, BaseLangGraphErrorFields, BaseStore, type BinaryOperator, BinaryOperatorAggregate, type Checkpoint, type CheckpointMetadata, type CheckpointTuple, Command, type CommandParams, type CompiledGraph, CompiledStateGraph, type DynamicBarrierValue, END, EmptyChannelError, EmptyInputError, type EntrypointOptions, type EphemeralValue, type GetOperation, type GetStateOptions, Graph, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, INTERRUPT, InMemoryStore, type Interrupt, InvalidUpdateError, type Item, type LangGraphRunnableConfig, type LastValue, type ListNamespacesOperation, type MatchCondition, MemorySaver, MessageGraph, type Messages, MessagesAnnotation, MessagesZodMeta, MessagesZodState, type MultipleChannelSubscriptionOptions, MultipleSubgraphsError, type NameSpacePath, type NamedBarrierValue, type NamespaceMatchType, NodeInterrupt, type NodeType, type Operation, type OperationResults, ParentCommand, type Pregel, type PregelNode, type PregelOptions, type PregelParams, type PutOperation, REMOVE_ALL_MESSAGES, RemoteException, type RetryPolicy, type Runtime, START, type SearchOperation, Send, type SingleChannelSubscriptionOptions, type SingleReducer, type StateDefinition, StateGraph, type StateGraphArgs, type StateSnapshot, type StateType, type StreamMode, type StreamOutputMap, type TaskOptions, type Topic, UnreachableNodeError, type UpdateType, type WaitForNames, messagesStateReducer as addMessages, copyCheckpoint, emptyCheckpoint, entrypoint, getSubgraphsSeenSet, isCommand, isGraphBubbleUp, isGraphInterrupt, isInterrupted, isParentCommand, messagesStateReducer, task };
|
package/dist/web.d.ts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { BaseChannel } from "./channels/base.js";
|
|
2
|
-
import { LangGraphRunnableConfig, Runtime } from "./pregel/runnable_types.js";
|
|
3
2
|
import { BinaryOperator, BinaryOperatorAggregate } from "./channels/binop.js";
|
|
3
|
+
import { AnyValue } from "./channels/any_value.js";
|
|
4
4
|
import { LastValue } from "./channels/last_value.js";
|
|
5
|
+
import { DynamicBarrierValue, WaitForNames } from "./channels/dynamic_barrier_value.js";
|
|
6
|
+
import { EphemeralValue } from "./channels/ephemeral_value.js";
|
|
7
|
+
import { NamedBarrierValue } from "./channels/named_barrier_value.js";
|
|
8
|
+
import { Topic } from "./channels/topic.js";
|
|
9
|
+
import { LangGraphRunnableConfig, Runtime } from "./pregel/runnable_types.js";
|
|
5
10
|
import { Annotation, AnnotationRoot, NodeType, SingleReducer, StateDefinition, StateType, UpdateType } from "./graph/annotation.js";
|
|
6
11
|
import { RetryPolicy } from "./pregel/utils/index.js";
|
|
7
12
|
import { PregelNode } from "./pregel/read.js";
|
|
@@ -9,15 +14,10 @@ import { Command, CommandParams, END, INTERRUPT, Interrupt, START, Send, isComma
|
|
|
9
14
|
import { GetStateOptions, MultipleChannelSubscriptionOptions, PregelOptions, PregelParams, SingleChannelSubscriptionOptions, StateSnapshot, StreamMode, StreamOutputMap } from "./pregel/types.js";
|
|
10
15
|
import { Pregel } from "./pregel/index.js";
|
|
11
16
|
import { CompiledGraph, Graph } from "./graph/graph.js";
|
|
12
|
-
import { CompiledStateGraph, StateGraph, StateGraphArgs
|
|
17
|
+
import { CompiledStateGraph, StateGraph, StateGraphArgs } from "./graph/state.js";
|
|
13
18
|
import { MessageGraph, Messages, REMOVE_ALL_MESSAGES, messagesStateReducer } from "./graph/message.js";
|
|
14
19
|
import { BaseLangGraphError, BaseLangGraphErrorFields, EmptyChannelError, EmptyInputError, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, InvalidUpdateError, MultipleSubgraphsError, NodeInterrupt, ParentCommand, RemoteException, UnreachableNodeError, getSubgraphsSeenSet, isGraphBubbleUp, isGraphInterrupt, isParentCommand } from "./errors.js";
|
|
15
|
-
import { AnyValue } from "./channels/any_value.js";
|
|
16
|
-
import { DynamicBarrierValue, WaitForNames } from "./channels/dynamic_barrier_value.js";
|
|
17
|
-
import { NamedBarrierValue } from "./channels/named_barrier_value.js";
|
|
18
|
-
import { Topic } from "./channels/topic.js";
|
|
19
|
-
import { EphemeralValue } from "./channels/ephemeral_value.js";
|
|
20
20
|
import { EntrypointOptions, TaskOptions, entrypoint, task } from "./func/index.js";
|
|
21
21
|
import { MessagesAnnotation, MessagesZodMeta, MessagesZodState } from "./graph/messages_annotation.js";
|
|
22
22
|
import { AsyncBatchedStore, BaseCheckpointSaver, BaseStore, Checkpoint, CheckpointMetadata, CheckpointTuple, GetOperation, InMemoryStore, Item, ListNamespacesOperation, MatchCondition, MemorySaver, NameSpacePath, NamespaceMatchType, Operation, OperationResults, PutOperation, SearchOperation, copyCheckpoint, emptyCheckpoint } from "@langchain/langgraph-checkpoint";
|
|
23
|
-
export { Annotation, type AnnotationRoot, type AnyValue, AsyncBatchedStore, BaseChannel, BaseCheckpointSaver, BaseLangGraphError, BaseLangGraphErrorFields, BaseStore, type BinaryOperator, BinaryOperatorAggregate, type Checkpoint, type CheckpointMetadata, type CheckpointTuple, Command, type CommandParams, type CompiledGraph, CompiledStateGraph, type DynamicBarrierValue, END, EmptyChannelError, EmptyInputError, type EntrypointOptions, type EphemeralValue, type GetOperation, type GetStateOptions, Graph, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, INTERRUPT, InMemoryStore, type Interrupt, InvalidUpdateError, type Item, type LangGraphRunnableConfig, type LastValue, type ListNamespacesOperation, type MatchCondition, MemorySaver, MessageGraph, type Messages, MessagesAnnotation, MessagesZodMeta, MessagesZodState, type MultipleChannelSubscriptionOptions, MultipleSubgraphsError, type NameSpacePath, type NamedBarrierValue, type NamespaceMatchType, NodeInterrupt, type NodeType, type Operation, type OperationResults, ParentCommand, type Pregel, type PregelNode, type PregelOptions, type PregelParams, type PutOperation, REMOVE_ALL_MESSAGES, RemoteException, type RetryPolicy, type Runtime, START, type SearchOperation, Send, type SingleChannelSubscriptionOptions, type SingleReducer, type StateDefinition, StateGraph, type StateGraphArgs, type StateSnapshot, type StateType, type StreamMode, type StreamOutputMap, type TaskOptions, type Topic, UnreachableNodeError, type UpdateType, type WaitForNames, messagesStateReducer as addMessages, copyCheckpoint, emptyCheckpoint, entrypoint, getSubgraphsSeenSet, isCommand, isGraphBubbleUp, isGraphInterrupt, isInterrupted, isParentCommand, messagesStateReducer, task
|
|
23
|
+
export { Annotation, type AnnotationRoot, type AnyValue, AsyncBatchedStore, BaseChannel, BaseCheckpointSaver, BaseLangGraphError, BaseLangGraphErrorFields, BaseStore, type BinaryOperator, BinaryOperatorAggregate, type Checkpoint, type CheckpointMetadata, type CheckpointTuple, Command, type CommandParams, type CompiledGraph, CompiledStateGraph, type DynamicBarrierValue, END, EmptyChannelError, EmptyInputError, type EntrypointOptions, type EphemeralValue, type GetOperation, type GetStateOptions, Graph, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, INTERRUPT, InMemoryStore, type Interrupt, InvalidUpdateError, type Item, type LangGraphRunnableConfig, type LastValue, type ListNamespacesOperation, type MatchCondition, MemorySaver, MessageGraph, type Messages, MessagesAnnotation, MessagesZodMeta, MessagesZodState, type MultipleChannelSubscriptionOptions, MultipleSubgraphsError, type NameSpacePath, type NamedBarrierValue, type NamespaceMatchType, NodeInterrupt, type NodeType, type Operation, type OperationResults, ParentCommand, type Pregel, type PregelNode, type PregelOptions, type PregelParams, type PutOperation, REMOVE_ALL_MESSAGES, RemoteException, type RetryPolicy, type Runtime, START, type SearchOperation, Send, type SingleChannelSubscriptionOptions, type SingleReducer, type StateDefinition, StateGraph, type StateGraphArgs, type StateSnapshot, type StateType, type StreamMode, type StreamOutputMap, type TaskOptions, type Topic, UnreachableNodeError, type UpdateType, type WaitForNames, messagesStateReducer as addMessages, copyCheckpoint, emptyCheckpoint, entrypoint, getSubgraphsSeenSet, isCommand, isGraphBubbleUp, isGraphInterrupt, isInterrupted, isParentCommand, messagesStateReducer, task };
|
package/dist/web.js
CHANGED
|
@@ -3,13 +3,13 @@ import { BaseChannel } from "./channels/base.js";
|
|
|
3
3
|
import { BinaryOperatorAggregate } from "./channels/binop.js";
|
|
4
4
|
import { Annotation } from "./graph/annotation.js";
|
|
5
5
|
import { Command, END, INTERRUPT, START, Send, isCommand, isInterrupted } from "./constants.js";
|
|
6
|
-
import "./channels/index.js";
|
|
7
6
|
import { Graph } from "./graph/graph.js";
|
|
8
|
-
import { CompiledStateGraph, StateGraph
|
|
7
|
+
import { CompiledStateGraph, StateGraph } from "./graph/state.js";
|
|
9
8
|
import { MessageGraph, REMOVE_ALL_MESSAGES, messagesStateReducer } from "./graph/message.js";
|
|
10
9
|
import "./graph/index.js";
|
|
10
|
+
import "./channels/index.js";
|
|
11
11
|
import { entrypoint, task } from "./func/index.js";
|
|
12
12
|
import { MessagesAnnotation, MessagesZodMeta, MessagesZodState } from "./graph/messages_annotation.js";
|
|
13
13
|
import { AsyncBatchedStore, BaseCheckpointSaver, BaseStore, InMemoryStore, MemorySaver, copyCheckpoint, emptyCheckpoint } from "@langchain/langgraph-checkpoint";
|
|
14
14
|
|
|
15
|
-
export { Annotation, AsyncBatchedStore, BaseChannel, BaseCheckpointSaver, BaseLangGraphError, BaseStore, BinaryOperatorAggregate, Command, CompiledStateGraph, END, EmptyChannelError, EmptyInputError, Graph, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, INTERRUPT, InMemoryStore, InvalidUpdateError, MemorySaver, MessageGraph, MessagesAnnotation, MessagesZodMeta, MessagesZodState, MultipleSubgraphsError, NodeInterrupt, ParentCommand, REMOVE_ALL_MESSAGES, RemoteException, START, Send, StateGraph, UnreachableNodeError, messagesStateReducer as addMessages, copyCheckpoint, emptyCheckpoint, entrypoint, getSubgraphsSeenSet, isCommand, isGraphBubbleUp, isGraphInterrupt, isInterrupted, isParentCommand, messagesStateReducer, task
|
|
15
|
+
export { Annotation, AsyncBatchedStore, BaseChannel, BaseCheckpointSaver, BaseLangGraphError, BaseStore, BinaryOperatorAggregate, Command, CompiledStateGraph, END, EmptyChannelError, EmptyInputError, Graph, GraphBubbleUp, GraphInterrupt, GraphRecursionError, GraphValueError, INTERRUPT, InMemoryStore, InvalidUpdateError, MemorySaver, MessageGraph, MessagesAnnotation, MessagesZodMeta, MessagesZodState, MultipleSubgraphsError, NodeInterrupt, ParentCommand, REMOVE_ALL_MESSAGES, RemoteException, START, Send, StateGraph, UnreachableNodeError, messagesStateReducer as addMessages, copyCheckpoint, emptyCheckpoint, entrypoint, getSubgraphsSeenSet, isCommand, isGraphBubbleUp, isGraphInterrupt, isInterrupted, isParentCommand, messagesStateReducer, task };
|
package/dist/writer.cjs
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const require_rolldown_runtime = require('./_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const __langchain_core_singletons = require_rolldown_runtime.__toESM(require("@langchain/core/singletons"));
|
|
3
|
+
|
|
4
|
+
//#region src/writer.ts
|
|
5
|
+
function writer(chunk) {
|
|
6
|
+
const config = __langchain_core_singletons.AsyncLocalStorageProviderSingleton.getRunnableConfig();
|
|
7
|
+
if (!config) throw new Error("Called interrupt() outside the context of a graph.");
|
|
8
|
+
const conf = config.configurable;
|
|
9
|
+
if (!conf) throw new Error("No configurable found in config");
|
|
10
|
+
return conf.writer?.(chunk);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
//#endregion
|
|
14
|
+
exports.writer = writer;
|
|
15
|
+
//# sourceMappingURL=writer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writer.cjs","names":["config: LangGraphRunnableConfig | undefined","AsyncLocalStorageProviderSingleton"],"sources":["../src/writer.ts"],"sourcesContent":["import { AsyncLocalStorageProviderSingleton } from \"@langchain/core/singletons\";\nimport { LangGraphRunnableConfig } from \"./pregel/runnable_types.js\";\n\nexport function writer<T>(chunk: T): void {\n const config: LangGraphRunnableConfig | undefined =\n AsyncLocalStorageProviderSingleton.getRunnableConfig();\n if (!config) {\n throw new Error(\"Called interrupt() outside the context of a graph.\");\n }\n\n const conf = config.configurable;\n if (!conf) {\n throw new Error(\"No configurable found in config\");\n }\n\n return conf.writer?.(chunk);\n}\n"],"mappings":";;;;AAGA,SAAgB,OAAU,OAAgB;CACxC,MAAMA,SACJC,+DAAmC;AACrC,KAAI,CAAC,OACH,OAAM,IAAI,MAAM;CAGlB,MAAM,OAAO,OAAO;AACpB,KAAI,CAAC,KACH,OAAM,IAAI,MAAM;AAGlB,QAAO,KAAK,SAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writer.d.cts","names":["writer","T"],"sources":["../src/writer.d.ts"],"sourcesContent":["export declare function writer<T>(chunk: T): void;\n"],"mappings":";iBAAwBA,iBAAiBC"}
|
package/dist/writer.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writer.d.ts","names":["writer","T"],"sources":["../src/writer.d.ts"],"sourcesContent":["export declare function writer<T>(chunk: T): void;\n"],"mappings":";iBAAwBA,iBAAiBC"}
|
package/dist/writer.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { AsyncLocalStorageProviderSingleton } from "@langchain/core/singletons";
|
|
2
|
+
|
|
3
|
+
//#region src/writer.ts
|
|
4
|
+
function writer(chunk) {
|
|
5
|
+
const config = AsyncLocalStorageProviderSingleton.getRunnableConfig();
|
|
6
|
+
if (!config) throw new Error("Called interrupt() outside the context of a graph.");
|
|
7
|
+
const conf = config.configurable;
|
|
8
|
+
if (!conf) throw new Error("No configurable found in config");
|
|
9
|
+
return conf.writer?.(chunk);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
//#endregion
|
|
13
|
+
export { writer };
|
|
14
|
+
//# sourceMappingURL=writer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writer.js","names":["config: LangGraphRunnableConfig | undefined"],"sources":["../src/writer.ts"],"sourcesContent":["import { AsyncLocalStorageProviderSingleton } from \"@langchain/core/singletons\";\nimport { LangGraphRunnableConfig } from \"./pregel/runnable_types.js\";\n\nexport function writer<T>(chunk: T): void {\n const config: LangGraphRunnableConfig | undefined =\n AsyncLocalStorageProviderSingleton.getRunnableConfig();\n if (!config) {\n throw new Error(\"Called interrupt() outside the context of a graph.\");\n }\n\n const conf = config.configurable;\n if (!conf) {\n throw new Error(\"No configurable found in config\");\n }\n\n return conf.writer?.(chunk);\n}\n"],"mappings":";;;AAGA,SAAgB,OAAU,OAAgB;CACxC,MAAMA,SACJ,mCAAmC;AACrC,KAAI,CAAC,OACH,OAAM,IAAI,MAAM;CAGlB,MAAM,OAAO,OAAO;AACpB,KAAI,CAAC,KACH,OAAM,IAAI,MAAM;AAGlB,QAAO,KAAK,SAAS"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@langchain/langgraph",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.2",
|
|
4
4
|
"description": "LangGraph",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
"author": "LangChain",
|
|
33
33
|
"license": "MIT",
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@langchain/langgraph-checkpoint": "^0.1.
|
|
36
|
-
"@langchain/langgraph-sdk": "~0.
|
|
35
|
+
"@langchain/langgraph-checkpoint": "^0.1.1",
|
|
36
|
+
"@langchain/langgraph-sdk": "~0.1.1",
|
|
37
37
|
"uuid": "^10.0.0"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
@@ -50,10 +50,10 @@
|
|
|
50
50
|
"@langchain/anthropic": "^0.3.12",
|
|
51
51
|
"@langchain/community": "^0.3.27",
|
|
52
52
|
"@langchain/core": "^1.0.0-alpha",
|
|
53
|
-
"@langchain/langgraph-checkpoint": "0.1.
|
|
54
|
-
"@langchain/langgraph-checkpoint-postgres": "0.1.
|
|
55
|
-
"@langchain/langgraph-checkpoint-sqlite": "0.2.
|
|
56
|
-
"@langchain/langgraph-sdk": "0.
|
|
53
|
+
"@langchain/langgraph-checkpoint": "0.1.1",
|
|
54
|
+
"@langchain/langgraph-checkpoint-postgres": "0.1.2",
|
|
55
|
+
"@langchain/langgraph-checkpoint-sqlite": "0.2.1",
|
|
56
|
+
"@langchain/langgraph-sdk": "0.1.1",
|
|
57
57
|
"@langchain/openai": "^0.4.0",
|
|
58
58
|
"@langchain/scripts": ">=0.1.3 <0.2.0",
|
|
59
59
|
"@swc/core": "^1.3.90",
|
|
@@ -78,7 +78,6 @@
|
|
|
78
78
|
"pg": "^8.13.0",
|
|
79
79
|
"playwright": "^1.51.0",
|
|
80
80
|
"prettier": "^2.8.3",
|
|
81
|
-
"release-it": "^19.0.2",
|
|
82
81
|
"rollup": "^4.37.0",
|
|
83
82
|
"tsx": "^4.19.3",
|
|
84
83
|
"typescript": "^4.9.5 || ^5.4.5",
|
|
@@ -113,6 +112,17 @@
|
|
|
113
112
|
},
|
|
114
113
|
"input": "./src/web.ts"
|
|
115
114
|
},
|
|
115
|
+
"./channels": {
|
|
116
|
+
"import": {
|
|
117
|
+
"types": "./dist/channels/index.d.ts",
|
|
118
|
+
"default": "./dist/channels/index.js"
|
|
119
|
+
},
|
|
120
|
+
"require": {
|
|
121
|
+
"types": "./dist/channels/index.d.cts",
|
|
122
|
+
"default": "./dist/channels/index.cjs"
|
|
123
|
+
},
|
|
124
|
+
"input": "./src/channels/index.ts"
|
|
125
|
+
},
|
|
116
126
|
"./pregel": {
|
|
117
127
|
"import": {
|
|
118
128
|
"types": "./dist/pregel/index.d.ts",
|