@langchain/langgraph 0.3.0 → 0.3.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.
Files changed (41) hide show
  1. package/dist/func/index.cjs +10 -5
  2. package/dist/func/index.d.ts +3 -3
  3. package/dist/func/index.js +10 -5
  4. package/dist/func/index.js.map +1 -1
  5. package/dist/graph/messages_annotation.cjs +2 -2
  6. package/dist/graph/messages_annotation.d.ts +2 -2
  7. package/dist/graph/messages_annotation.js +1 -1
  8. package/dist/graph/messages_annotation.js.map +1 -1
  9. package/dist/graph/state.cjs +46 -21
  10. package/dist/graph/state.d.ts +22 -15
  11. package/dist/graph/state.js +46 -21
  12. package/dist/graph/state.js.map +1 -1
  13. package/dist/graph/zod/index.cjs +5 -3
  14. package/dist/graph/zod/index.d.ts +2 -1
  15. package/dist/graph/zod/index.js +2 -1
  16. package/dist/graph/zod/index.js.map +1 -1
  17. package/dist/graph/zod/meta.cjs +180 -0
  18. package/dist/graph/zod/meta.d.ts +110 -0
  19. package/dist/graph/zod/meta.js +175 -0
  20. package/dist/graph/zod/meta.js.map +1 -0
  21. package/dist/graph/zod/plugin.cjs +30 -27
  22. package/dist/graph/zod/plugin.d.ts +16 -3
  23. package/dist/graph/zod/plugin.js +31 -28
  24. package/dist/graph/zod/plugin.js.map +1 -1
  25. package/dist/graph/zod/schema.cjs +45 -19
  26. package/dist/graph/zod/schema.d.ts +7 -8
  27. package/dist/graph/zod/schema.js +45 -19
  28. package/dist/graph/zod/schema.js.map +1 -1
  29. package/dist/graph/zod/zod-registry.cjs +49 -0
  30. package/dist/graph/zod/zod-registry.d.ts +24 -0
  31. package/dist/graph/zod/zod-registry.js +45 -0
  32. package/dist/graph/zod/zod-registry.js.map +1 -0
  33. package/dist/prebuilt/react_agent_executor.d.ts +3 -3
  34. package/dist/pregel/types.d.ts +1 -1
  35. package/dist/web.d.ts +1 -1
  36. package/dist/web.js.map +1 -1
  37. package/package.json +7 -7
  38. package/dist/graph/zod/state.cjs +0 -135
  39. package/dist/graph/zod/state.d.ts +0 -39
  40. package/dist/graph/zod/state.js +0 -125
  41. package/dist/graph/zod/state.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/graph/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/graph/state.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.withLangGraph = void 0;
3
+ exports.registry = exports.withLangGraph = void 0;
4
4
  /* __LC_ALLOW_ENTRYPOINT_SIDE_EFFECTS__ */
5
5
  require("./plugin.cjs");
6
- var state_js_1 = require("./state.cjs");
7
- Object.defineProperty(exports, "withLangGraph", { enumerable: true, get: function () { return state_js_1.withLangGraph; } });
6
+ var meta_js_1 = require("./meta.cjs");
7
+ Object.defineProperty(exports, "withLangGraph", { enumerable: true, get: function () { return meta_js_1.withLangGraph; } });
8
+ var zod_registry_js_1 = require("./zod-registry.cjs");
9
+ Object.defineProperty(exports, "registry", { enumerable: true, get: function () { return zod_registry_js_1.registry; } });
8
10
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,3 @@
1
1
  import "./plugin.js";
2
- export { withLangGraph } from "./state.js";
2
+ export { withLangGraph } from "./meta.js";
3
+ export { registry } from "./zod-registry.js";
@@ -1,4 +1,5 @@
1
1
  /* __LC_ALLOW_ENTRYPOINT_SIDE_EFFECTS__ */
2
2
  import "./plugin.js";
3
- export { withLangGraph } from "./state.js";
3
+ export { withLangGraph } from "./meta.js";
4
+ export { registry } from "./zod-registry.js";
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graph/zod/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graph/zod/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.schemaMetaRegistry = exports.SchemaMetaRegistry = exports.META_EXTRAS_DESCRIPTION_PREFIX = void 0;
4
+ exports.withLangGraph = withLangGraph;
5
+ const types_1 = require("@langchain/core/utils/types");
6
+ const binop_js_1 = require("../../channels/binop.cjs");
7
+ const last_value_js_1 = require("../../channels/last_value.cjs");
8
+ exports.META_EXTRAS_DESCRIPTION_PREFIX = "lg:";
9
+ /**
10
+ * A registry for storing and managing metadata associated with schemas.
11
+ * This class provides methods to get, extend, remove, and check metadata for a given schema.
12
+ */
13
+ class SchemaMetaRegistry {
14
+ constructor() {
15
+ /**
16
+ * Internal map storing schema metadata.
17
+ * @internal
18
+ */
19
+ Object.defineProperty(this, "_map", {
20
+ enumerable: true,
21
+ configurable: true,
22
+ writable: true,
23
+ value: new WeakMap()
24
+ });
25
+ /**
26
+ * Cache for extended schfemas.
27
+ * @internal
28
+ */
29
+ Object.defineProperty(this, "_extensionCache", {
30
+ enumerable: true,
31
+ configurable: true,
32
+ writable: true,
33
+ value: new Map()
34
+ });
35
+ }
36
+ /**
37
+ * Retrieves the metadata associated with a given schema.
38
+ * @template TValue The value type of the schema.
39
+ * @template TUpdate The update type of the schema (defaults to TValue).
40
+ * @param schema The schema to retrieve metadata for.
41
+ * @returns The associated SchemaMeta, or undefined if not present.
42
+ */
43
+ get(schema) {
44
+ return this._map.get(schema);
45
+ }
46
+ /**
47
+ * Extends or sets the metadata for a given schema.
48
+ * @template TValue The value type of the schema.
49
+ * @template TUpdate The update type of the schema (defaults to TValue).
50
+ * @param schema The schema to extend metadata for.
51
+ * @param predicate A function that receives the existing metadata (or undefined) and returns the new metadata.
52
+ */
53
+ extend(schema, predicate) {
54
+ const existingMeta = this.get(schema);
55
+ this._map.set(schema, predicate(existingMeta));
56
+ }
57
+ /**
58
+ * Removes the metadata associated with a given schema.
59
+ * @param schema The schema to remove metadata for.
60
+ * @returns The SchemaMetaRegistry instance (for chaining).
61
+ */
62
+ remove(schema) {
63
+ this._map.delete(schema);
64
+ return this;
65
+ }
66
+ /**
67
+ * Checks if metadata exists for a given schema.
68
+ * @param schema The schema to check.
69
+ * @returns True if metadata exists, false otherwise.
70
+ */
71
+ has(schema) {
72
+ return this._map.has(schema);
73
+ }
74
+ /**
75
+ * Returns a mapping of channel instances for each property in the schema
76
+ * using the associated metadata in the registry.
77
+ *
78
+ * This is used to create the `channels` object that's passed to the `Graph` constructor.
79
+ *
80
+ * @template T The shape of the schema.
81
+ * @param schema The schema to extract channels from.
82
+ * @returns A mapping from property names to channel instances.
83
+ */
84
+ getChannelsForSchema(schema) {
85
+ const channels = {};
86
+ const shape = (0, types_1.getInteropZodObjectShape)(schema);
87
+ for (const [key, channelSchema] of Object.entries(shape)) {
88
+ const meta = this.get(channelSchema);
89
+ if (meta?.reducer) {
90
+ channels[key] = new binop_js_1.BinaryOperatorAggregate(meta.reducer.fn, meta.default);
91
+ }
92
+ else {
93
+ channels[key] = new last_value_js_1.LastValue();
94
+ }
95
+ }
96
+ return channels;
97
+ }
98
+ /**
99
+ * Returns a modified schema that introspectively looks at all keys of the provided
100
+ * object schema, and applies the augmentations based on meta provided with those keys
101
+ * in the registry and the selectors provided in the `effects` parameter.
102
+ *
103
+ * This assumes that the passed in schema is the "root" schema object for a graph where
104
+ * the keys of the schema are the channels of the graph. Because we need to represent
105
+ * the input of a graph in a couple of different ways, the `effects` parameter allows
106
+ * us to apply those augmentations based on pre determined conditions.
107
+ *
108
+ * @param schema The root schema object to extend.
109
+ * @param effects The effects that are being applied.
110
+ * @returns The extended schema.
111
+ */
112
+ getExtendedChannelSchemas(schema, effects) {
113
+ // If no effects are being applied, return the schema unchanged
114
+ if (Object.keys(effects).length === 0) {
115
+ return schema;
116
+ }
117
+ // Cache key is determined by looking at the effects that are being applied
118
+ const cacheKey = Object.entries(effects)
119
+ .filter(([, v]) => v === true)
120
+ .sort(([a], [b]) => a.localeCompare(b))
121
+ .map(([k, v]) => `${k}:${v}`)
122
+ .join("|");
123
+ const cache = this._extensionCache.get(cacheKey) ?? new WeakMap();
124
+ if (cache.has(schema))
125
+ return cache.get(schema);
126
+ let modifiedSchema = schema;
127
+ if (effects.withReducerSchema ||
128
+ effects.withJsonSchemaExtrasAsDescription) {
129
+ const newShapeEntries = Object.entries((0, types_1.getInteropZodObjectShape)(schema)).map(([key, schema]) => {
130
+ const meta = this.get(schema);
131
+ let outputSchema = effects.withReducerSchema
132
+ ? meta?.reducer?.schema ?? schema
133
+ : schema;
134
+ if (effects.withJsonSchemaExtrasAsDescription &&
135
+ meta?.jsonSchemaExtra) {
136
+ const description = (0, types_1.getSchemaDescription)(outputSchema) ?? (0, types_1.getSchemaDescription)(schema);
137
+ const strExtras = JSON.stringify({
138
+ ...meta.jsonSchemaExtra,
139
+ description,
140
+ });
141
+ outputSchema = outputSchema.describe(`${exports.META_EXTRAS_DESCRIPTION_PREFIX}${strExtras}`);
142
+ }
143
+ return [key, outputSchema];
144
+ });
145
+ modifiedSchema = (0, types_1.extendInteropZodObject)(schema, Object.fromEntries(newShapeEntries));
146
+ if ((0, types_1.isZodSchemaV3)(modifiedSchema)) {
147
+ modifiedSchema._def.unknownKeys = "strip";
148
+ }
149
+ }
150
+ if (effects.asPartial) {
151
+ modifiedSchema = (0, types_1.interopZodObjectPartial)(modifiedSchema);
152
+ }
153
+ cache.set(schema, modifiedSchema);
154
+ this._extensionCache.set(cacheKey, cache);
155
+ return modifiedSchema;
156
+ }
157
+ }
158
+ exports.SchemaMetaRegistry = SchemaMetaRegistry;
159
+ exports.schemaMetaRegistry = new SchemaMetaRegistry();
160
+ function withLangGraph(schema, meta) {
161
+ if (meta.reducer && !meta.default) {
162
+ const defaultValueGetter = (0, types_1.getInteropZodDefaultGetter)(schema);
163
+ if (defaultValueGetter != null) {
164
+ // eslint-disable-next-line no-param-reassign
165
+ meta.default = defaultValueGetter;
166
+ }
167
+ }
168
+ if (meta.reducer) {
169
+ const schemaWithReducer = Object.assign(schema, {
170
+ lg_reducer_schema: meta.reducer?.schema ?? schema,
171
+ });
172
+ exports.schemaMetaRegistry.extend(schemaWithReducer, () => meta);
173
+ return schemaWithReducer;
174
+ }
175
+ else {
176
+ exports.schemaMetaRegistry.extend(schema, () => meta);
177
+ return schema;
178
+ }
179
+ }
180
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1,110 @@
1
+ import { InteropZodObject, InteropZodType, InteropZodObjectShape } from "@langchain/core/utils/types";
2
+ import { BaseChannel } from "../../channels/base.js";
3
+ export declare const META_EXTRAS_DESCRIPTION_PREFIX = "lg:";
4
+ export type ReducedZodChannel<T extends InteropZodType, TReducerSchema extends InteropZodType> = T & {
5
+ lg_reducer_schema: TReducerSchema;
6
+ };
7
+ export type InteropZodToStateDefinition<T extends InteropZodObject, TShape = InteropZodObjectShape<T>> = {
8
+ [key in keyof TShape]: TShape[key] extends ReducedZodChannel<infer Schema, infer ReducerSchema> ? Schema extends InteropZodType<infer V> ? ReducerSchema extends InteropZodType<infer U> ? BaseChannel<V, U> : never : never : TShape[key] extends InteropZodType<infer V, infer U> ? BaseChannel<V, U> : never;
9
+ };
10
+ export interface SchemaMeta<TValue = any, TUpdate = TValue> {
11
+ jsonSchemaExtra?: {
12
+ langgraph_nodes?: string[];
13
+ langgraph_type?: "prompt" | "messages";
14
+ [key: string]: unknown;
15
+ };
16
+ reducer?: {
17
+ schema?: InteropZodType<TUpdate>;
18
+ fn: (a: TValue, b: TUpdate) => TValue;
19
+ };
20
+ default?: () => TValue;
21
+ [key: string]: unknown;
22
+ }
23
+ /**
24
+ * A registry for storing and managing metadata associated with schemas.
25
+ * This class provides methods to get, extend, remove, and check metadata for a given schema.
26
+ */
27
+ export declare class SchemaMetaRegistry {
28
+ /**
29
+ * Internal map storing schema metadata.
30
+ * @internal
31
+ */
32
+ _map: WeakMap<InteropZodType, SchemaMeta<any, any>>;
33
+ /**
34
+ * Cache for extended schfemas.
35
+ * @internal
36
+ */
37
+ _extensionCache: Map<string, WeakMap<InteropZodType, InteropZodType>>;
38
+ /**
39
+ * Retrieves the metadata associated with a given schema.
40
+ * @template TValue The value type of the schema.
41
+ * @template TUpdate The update type of the schema (defaults to TValue).
42
+ * @param schema The schema to retrieve metadata for.
43
+ * @returns The associated SchemaMeta, or undefined if not present.
44
+ */
45
+ get<TValue, TUpdate = TValue>(schema: InteropZodType<TValue>): SchemaMeta<TValue, TUpdate> | undefined;
46
+ /**
47
+ * Extends or sets the metadata for a given schema.
48
+ * @template TValue The value type of the schema.
49
+ * @template TUpdate The update type of the schema (defaults to TValue).
50
+ * @param schema The schema to extend metadata for.
51
+ * @param predicate A function that receives the existing metadata (or undefined) and returns the new metadata.
52
+ */
53
+ extend<TValue, TUpdate>(schema: InteropZodType<TValue>, predicate: (meta: SchemaMeta<TValue, TUpdate> | undefined) => SchemaMeta<TValue, TUpdate>): void;
54
+ /**
55
+ * Removes the metadata associated with a given schema.
56
+ * @param schema The schema to remove metadata for.
57
+ * @returns The SchemaMetaRegistry instance (for chaining).
58
+ */
59
+ remove(schema: InteropZodType): this;
60
+ /**
61
+ * Checks if metadata exists for a given schema.
62
+ * @param schema The schema to check.
63
+ * @returns True if metadata exists, false otherwise.
64
+ */
65
+ has(schema: InteropZodType): boolean;
66
+ /**
67
+ * Returns a mapping of channel instances for each property in the schema
68
+ * using the associated metadata in the registry.
69
+ *
70
+ * This is used to create the `channels` object that's passed to the `Graph` constructor.
71
+ *
72
+ * @template T The shape of the schema.
73
+ * @param schema The schema to extract channels from.
74
+ * @returns A mapping from property names to channel instances.
75
+ */
76
+ getChannelsForSchema<T extends InteropZodObject>(schema: T): InteropZodToStateDefinition<T>;
77
+ /**
78
+ * Returns a modified schema that introspectively looks at all keys of the provided
79
+ * object schema, and applies the augmentations based on meta provided with those keys
80
+ * in the registry and the selectors provided in the `effects` parameter.
81
+ *
82
+ * This assumes that the passed in schema is the "root" schema object for a graph where
83
+ * the keys of the schema are the channels of the graph. Because we need to represent
84
+ * the input of a graph in a couple of different ways, the `effects` parameter allows
85
+ * us to apply those augmentations based on pre determined conditions.
86
+ *
87
+ * @param schema The root schema object to extend.
88
+ * @param effects The effects that are being applied.
89
+ * @returns The extended schema.
90
+ */
91
+ getExtendedChannelSchemas<T extends InteropZodObject>(schema: T, effects: {
92
+ /**
93
+ * Augments the shape by using the reducer's schema if it exists
94
+ */
95
+ withReducerSchema?: boolean;
96
+ /**
97
+ * Applies the stringified jsonSchemaExtra as a description to the schema.
98
+ */
99
+ withJsonSchemaExtrasAsDescription?: boolean;
100
+ /**
101
+ * Applies the `.partial()` modifier to the schema.
102
+ */
103
+ asPartial?: boolean;
104
+ }): InteropZodObject;
105
+ }
106
+ export declare const schemaMetaRegistry: SchemaMetaRegistry;
107
+ export declare function withLangGraph<TValue, TUpdate, TSchema extends InteropZodType<TValue>>(schema: TSchema, meta: SchemaMeta<TValue, TUpdate> & {
108
+ reducer?: undefined;
109
+ }): TSchema;
110
+ export declare function withLangGraph<TValue, TUpdate, TSchema extends InteropZodType<TValue>>(schema: TSchema, meta: SchemaMeta<TValue, TUpdate>): ReducedZodChannel<TSchema, InteropZodType<TUpdate>>;
@@ -0,0 +1,175 @@
1
+ import { getInteropZodObjectShape, extendInteropZodObject, getInteropZodDefaultGetter, interopZodObjectPartial, isZodSchemaV3, getSchemaDescription, } from "@langchain/core/utils/types";
2
+ import { BinaryOperatorAggregate } from "../../channels/binop.js";
3
+ import { LastValue } from "../../channels/last_value.js";
4
+ export const META_EXTRAS_DESCRIPTION_PREFIX = "lg:";
5
+ /**
6
+ * A registry for storing and managing metadata associated with schemas.
7
+ * This class provides methods to get, extend, remove, and check metadata for a given schema.
8
+ */
9
+ export class SchemaMetaRegistry {
10
+ constructor() {
11
+ /**
12
+ * Internal map storing schema metadata.
13
+ * @internal
14
+ */
15
+ Object.defineProperty(this, "_map", {
16
+ enumerable: true,
17
+ configurable: true,
18
+ writable: true,
19
+ value: new WeakMap()
20
+ });
21
+ /**
22
+ * Cache for extended schfemas.
23
+ * @internal
24
+ */
25
+ Object.defineProperty(this, "_extensionCache", {
26
+ enumerable: true,
27
+ configurable: true,
28
+ writable: true,
29
+ value: new Map()
30
+ });
31
+ }
32
+ /**
33
+ * Retrieves the metadata associated with a given schema.
34
+ * @template TValue The value type of the schema.
35
+ * @template TUpdate The update type of the schema (defaults to TValue).
36
+ * @param schema The schema to retrieve metadata for.
37
+ * @returns The associated SchemaMeta, or undefined if not present.
38
+ */
39
+ get(schema) {
40
+ return this._map.get(schema);
41
+ }
42
+ /**
43
+ * Extends or sets the metadata for a given schema.
44
+ * @template TValue The value type of the schema.
45
+ * @template TUpdate The update type of the schema (defaults to TValue).
46
+ * @param schema The schema to extend metadata for.
47
+ * @param predicate A function that receives the existing metadata (or undefined) and returns the new metadata.
48
+ */
49
+ extend(schema, predicate) {
50
+ const existingMeta = this.get(schema);
51
+ this._map.set(schema, predicate(existingMeta));
52
+ }
53
+ /**
54
+ * Removes the metadata associated with a given schema.
55
+ * @param schema The schema to remove metadata for.
56
+ * @returns The SchemaMetaRegistry instance (for chaining).
57
+ */
58
+ remove(schema) {
59
+ this._map.delete(schema);
60
+ return this;
61
+ }
62
+ /**
63
+ * Checks if metadata exists for a given schema.
64
+ * @param schema The schema to check.
65
+ * @returns True if metadata exists, false otherwise.
66
+ */
67
+ has(schema) {
68
+ return this._map.has(schema);
69
+ }
70
+ /**
71
+ * Returns a mapping of channel instances for each property in the schema
72
+ * using the associated metadata in the registry.
73
+ *
74
+ * This is used to create the `channels` object that's passed to the `Graph` constructor.
75
+ *
76
+ * @template T The shape of the schema.
77
+ * @param schema The schema to extract channels from.
78
+ * @returns A mapping from property names to channel instances.
79
+ */
80
+ getChannelsForSchema(schema) {
81
+ const channels = {};
82
+ const shape = getInteropZodObjectShape(schema);
83
+ for (const [key, channelSchema] of Object.entries(shape)) {
84
+ const meta = this.get(channelSchema);
85
+ if (meta?.reducer) {
86
+ channels[key] = new BinaryOperatorAggregate(meta.reducer.fn, meta.default);
87
+ }
88
+ else {
89
+ channels[key] = new LastValue();
90
+ }
91
+ }
92
+ return channels;
93
+ }
94
+ /**
95
+ * Returns a modified schema that introspectively looks at all keys of the provided
96
+ * object schema, and applies the augmentations based on meta provided with those keys
97
+ * in the registry and the selectors provided in the `effects` parameter.
98
+ *
99
+ * This assumes that the passed in schema is the "root" schema object for a graph where
100
+ * the keys of the schema are the channels of the graph. Because we need to represent
101
+ * the input of a graph in a couple of different ways, the `effects` parameter allows
102
+ * us to apply those augmentations based on pre determined conditions.
103
+ *
104
+ * @param schema The root schema object to extend.
105
+ * @param effects The effects that are being applied.
106
+ * @returns The extended schema.
107
+ */
108
+ getExtendedChannelSchemas(schema, effects) {
109
+ // If no effects are being applied, return the schema unchanged
110
+ if (Object.keys(effects).length === 0) {
111
+ return schema;
112
+ }
113
+ // Cache key is determined by looking at the effects that are being applied
114
+ const cacheKey = Object.entries(effects)
115
+ .filter(([, v]) => v === true)
116
+ .sort(([a], [b]) => a.localeCompare(b))
117
+ .map(([k, v]) => `${k}:${v}`)
118
+ .join("|");
119
+ const cache = this._extensionCache.get(cacheKey) ?? new WeakMap();
120
+ if (cache.has(schema))
121
+ return cache.get(schema);
122
+ let modifiedSchema = schema;
123
+ if (effects.withReducerSchema ||
124
+ effects.withJsonSchemaExtrasAsDescription) {
125
+ const newShapeEntries = Object.entries(getInteropZodObjectShape(schema)).map(([key, schema]) => {
126
+ const meta = this.get(schema);
127
+ let outputSchema = effects.withReducerSchema
128
+ ? meta?.reducer?.schema ?? schema
129
+ : schema;
130
+ if (effects.withJsonSchemaExtrasAsDescription &&
131
+ meta?.jsonSchemaExtra) {
132
+ const description = getSchemaDescription(outputSchema) ?? getSchemaDescription(schema);
133
+ const strExtras = JSON.stringify({
134
+ ...meta.jsonSchemaExtra,
135
+ description,
136
+ });
137
+ outputSchema = outputSchema.describe(`${META_EXTRAS_DESCRIPTION_PREFIX}${strExtras}`);
138
+ }
139
+ return [key, outputSchema];
140
+ });
141
+ modifiedSchema = extendInteropZodObject(schema, Object.fromEntries(newShapeEntries));
142
+ if (isZodSchemaV3(modifiedSchema)) {
143
+ modifiedSchema._def.unknownKeys = "strip";
144
+ }
145
+ }
146
+ if (effects.asPartial) {
147
+ modifiedSchema = interopZodObjectPartial(modifiedSchema);
148
+ }
149
+ cache.set(schema, modifiedSchema);
150
+ this._extensionCache.set(cacheKey, cache);
151
+ return modifiedSchema;
152
+ }
153
+ }
154
+ export const schemaMetaRegistry = new SchemaMetaRegistry();
155
+ export function withLangGraph(schema, meta) {
156
+ if (meta.reducer && !meta.default) {
157
+ const defaultValueGetter = getInteropZodDefaultGetter(schema);
158
+ if (defaultValueGetter != null) {
159
+ // eslint-disable-next-line no-param-reassign
160
+ meta.default = defaultValueGetter;
161
+ }
162
+ }
163
+ if (meta.reducer) {
164
+ const schemaWithReducer = Object.assign(schema, {
165
+ lg_reducer_schema: meta.reducer?.schema ?? schema,
166
+ });
167
+ schemaMetaRegistry.extend(schemaWithReducer, () => meta);
168
+ return schemaWithReducer;
169
+ }
170
+ else {
171
+ schemaMetaRegistry.extend(schema, () => meta);
172
+ return schema;
173
+ }
174
+ }
175
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/graph/zod/meta.ts"],"names":[],"mappings":"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"}