@langchain/core
Version:
Core LangChain.js abstractions and schemas
1 lines • 1.72 kB
Source Map (JSON)
{"version":3,"file":"set.cjs","names":["def: ZodSetDef","refs: Refs","parseDef","schema: JsonSchema7SetType","setResponseValueAndErrors"],"sources":["../../../../src/utils/zod-to-json-schema/parsers/set.ts"],"sourcesContent":["import { ZodSetDef } from \"zod/v3\";\nimport { ErrorMessages, setResponseValueAndErrors } from \"../errorMessages.js\";\nimport { parseDef } from \"../parseDef.js\";\nimport { JsonSchema7Type } from \"../parseTypes.js\";\nimport { Refs } from \"../Refs.js\";\n\nexport type JsonSchema7SetType = {\n type: \"array\";\n uniqueItems: true;\n items?: JsonSchema7Type;\n minItems?: number;\n maxItems?: number;\n errorMessage?: ErrorMessages<JsonSchema7SetType>;\n};\n\nexport function parseSetDef(def: ZodSetDef, refs: Refs): JsonSchema7SetType {\n const items = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\"],\n });\n\n const schema: JsonSchema7SetType = {\n type: \"array\",\n uniqueItems: true,\n items,\n };\n\n if (def.minSize) {\n setResponseValueAndErrors(\n schema,\n \"minItems\",\n def.minSize.value,\n def.minSize.message,\n refs\n );\n }\n\n if (def.maxSize) {\n setResponseValueAndErrors(\n schema,\n \"maxItems\",\n def.maxSize.value,\n def.maxSize.message,\n refs\n );\n }\n\n return schema;\n}\n"],"mappings":";;;;AAeA,SAAgB,YAAYA,KAAgBC,MAAgC;CAC1E,MAAM,QAAQC,0BAAS,IAAI,UAAU,MAAM;EACzC,GAAG;EACH,aAAa,CAAC,GAAG,KAAK,aAAa,OAAQ;CAC5C,EAAC;CAEF,MAAMC,SAA6B;EACjC,MAAM;EACN,aAAa;EACb;CACD;AAED,KAAI,IAAI,SACNC,gDACE,QACA,YACA,IAAI,QAAQ,OACZ,IAAI,QAAQ,SACZ,KACD;AAGH,KAAI,IAAI,SACNA,gDACE,QACA,YACA,IAAI,QAAQ,OACZ,IAAI,QAAQ,SACZ,KACD;AAGH,QAAO;AACR"}