UNPKG

unstructured-client

Version:

<h3 align="center"> <img src="https://raw.githubusercontent.com/Unstructured-IO/unstructured/main/img/unstructured_logo.png" height="200" > </h3>

77 lines 2.74 kB
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod"; export class SDKValidationError extends Error { constructor(message, cause, rawValue) { super(`${message}: ${cause}`); this.name = "SDKValidationError"; this.cause = cause; this.rawValue = rawValue; this.rawMessage = message; } /** * Return a pretty-formatted error message if the underlying validation error * is a ZodError or some other recognized error type, otherwise return the * default error message. */ pretty() { if (this.cause instanceof z.ZodError) { return `${this.rawMessage}\n${formatZodError(this.cause)}`; } else { return this.toString(); } } } export function formatZodError(err, level = 0) { let pre = " ".repeat(level); pre = level > 0 ? `│${pre}` : pre; pre += " ".repeat(level); let message = ""; const append = (str) => (message += `\n${pre}${str}`); const len = err.issues.length; const headline = len === 1 ? `${len} issue found` : `${len} issues found`; if (len) { append(`┌ ${headline}:`); } for (const issue of err.issues) { let path = issue.path.join("."); path = path ? `<root>.${path}` : "<root>"; append(`│ • [${path}]: ${issue.message} (${issue.code})`); switch (issue.code) { case "invalid_literal": case "invalid_type": { append(`│ Want: ${issue.expected}`); append(`│ Got: ${issue.received}`); break; } case "unrecognized_keys": { append(`│ Keys: ${issue.keys.join(", ")}`); break; } case "invalid_enum_value": { append(`│ Allowed: ${issue.options.join(", ")}`); append(`│ Got: ${issue.received}`); break; } case "invalid_union_discriminator": { append(`│ Allowed: ${issue.options.join(", ")}`); break; } case "invalid_union": { const len = issue.unionErrors.length; append(`│ ✖︎ Attemped to deserialize into one of ${len} union members:`); issue.unionErrors.forEach((err, i) => { append(`│ ✖︎ Member ${i + 1} of ${len}`); append(`${formatZodError(err, level + 1)}`); }); } } } if (err.issues.length) { append(`└─*`); } return message.slice(1); } //# sourceMappingURL=sdkvalidationerror.js.map