agsamantha/node_modules/zod-to-json-schema/dist/esm/parsers/set.js

21 lines
650 B
JavaScript
Raw Permalink Normal View History

2024-10-02 20:15:21 +00:00
import { setResponseValueAndErrors } from "../errorMessages.js";
import { parseDef } from "../parseDef.js";
export function parseSetDef(def, refs) {
const items = parseDef(def.valueType._def, {
...refs,
currentPath: [...refs.currentPath, "items"],
});
const schema = {
type: "array",
uniqueItems: true,
items,
};
if (def.minSize) {
setResponseValueAndErrors(schema, "minItems", def.minSize.value, def.minSize.message, refs);
}
if (def.maxSize) {
setResponseValueAndErrors(schema, "maxItems", def.maxSize.value, def.maxSize.message, refs);
}
return schema;
}