UNPKG

@langchain/core

Version:
23 lines (21 loc) 1.01 kB
import { setResponseValueAndErrors } from "../errorMessages.js"; import { parseDef } from "../parseDef.js"; import { ZodFirstPartyTypeKind } from "zod/v3"; //#region src/utils/zod-to-json-schema/parsers/array.ts function parseArrayDef(def, refs) { const res = { type: "array" }; if (def.type?._def && def.type?._def?.typeName !== ZodFirstPartyTypeKind.ZodAny) res.items = parseDef(def.type._def, { ...refs, currentPath: [...refs.currentPath, "items"] }); if (def.minLength) setResponseValueAndErrors(res, "minItems", def.minLength.value, def.minLength.message, refs); if (def.maxLength) setResponseValueAndErrors(res, "maxItems", def.maxLength.value, def.maxLength.message, refs); if (def.exactLength) { setResponseValueAndErrors(res, "minItems", def.exactLength.value, def.exactLength.message, refs); setResponseValueAndErrors(res, "maxItems", def.exactLength.value, def.exactLength.message, refs); } return res; } //#endregion export { parseArrayDef }; //# sourceMappingURL=array.js.map