@langchain/core
Version:
Core LangChain.js abstractions and schemas
1 lines • 1.3 kB
Source Map (JSON)
{"version":3,"file":"optional.cjs","names":["parseDef","parseAnyDef"],"sources":["../../../../src/utils/zod-to-json-schema/parsers/optional.ts"],"sourcesContent":["import { ZodOptionalDef } from \"zod/v3\";\nimport { parseDef } from \"../parseDef.js\";\nimport { JsonSchema7Type } from \"../parseTypes.js\";\nimport { Refs } from \"../Refs.js\";\nimport { parseAnyDef } from \"./any.js\";\n\nexport const parseOptionalDef = (\n def: ZodOptionalDef,\n refs: Refs\n): JsonSchema7Type | undefined => {\n if (refs.currentPath.toString() === refs.propertyPath?.toString()) {\n return parseDef(def.innerType._def, refs);\n }\n\n const innerSchema = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", \"1\"],\n });\n\n return innerSchema\n ? {\n anyOf: [\n {\n not: parseAnyDef(refs),\n },\n innerSchema,\n ],\n }\n : parseAnyDef(refs);\n};\n"],"mappings":";;;AAMA,MAAa,oBACX,KACA,SACgC;CAChC,IAAI,KAAK,YAAY,SAAS,MAAM,KAAK,cAAc,SAAS,GAC9D,OAAOA,iBAAAA,SAAS,IAAI,UAAU,MAAM,IAAI;CAG1C,MAAM,cAAcA,iBAAAA,SAAS,IAAI,UAAU,MAAM;EAC/C,GAAG;EACH,aAAa;GAAC,GAAG,KAAK;GAAa;GAAS;EAAG;CACjD,CAAC;CAED,OAAO,cACH,EACE,OAAO,CACL,EACE,KAAKC,YAAAA,YAAY,IAAI,EACvB,GACA,WACF,EACF,IACAA,YAAAA,YAAY,IAAI;AACtB"}