26 lines
		
	
	
		
			1020 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			26 lines
		
	
	
		
			1020 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | import { ZodFirstPartyTypeKind } from 'zod'; | ||
|  | import { setResponseValueAndErrors } from "../errorMessages.mjs"; | ||
|  | import { parseDef } from "../parseDef.mjs"; | ||
|  | export function parseArrayDef(def, refs) { | ||
|  |     const res = { | ||
|  |         type: 'array', | ||
|  |     }; | ||
|  |     if (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; | ||
|  | } | ||
|  | //# sourceMappingURL=array.mjs.map
 |