zod-error
Version:
Utilities to format and customize Zod error messages
22 lines (21 loc) • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.generateErrorMessage = void 0;
const utils_1 = require("../../utils");
/**
* Generates an error message from Zod issues.
* @export
* @param {z.ZodIssue[]} issues
* @param {ErrorMessageOptions} [options]
* @return {*} {string}
*/
function generateErrorMessage(issues, options) {
var _a, _b, _c;
const errorDelimiter = (0, utils_1.getErrorDelimiter)((_a = options === null || options === void 0 ? void 0 : options.delimiter) === null || _a === void 0 ? void 0 : _a.error);
const errorMessage = issues
.slice(0, options === null || options === void 0 ? void 0 : options.maxErrors)
.map((issue, index) => (0, utils_1.getErrorMessage)(issue, index, options))
.join(errorDelimiter);
return `${(_b = options === null || options === void 0 ? void 0 : options.prefix) !== null && _b !== void 0 ? _b : ''}${errorMessage}${(_c = options === null || options === void 0 ? void 0 : options.suffix) !== null && _c !== void 0 ? _c : ''}`;
}
exports.generateErrorMessage = generateErrorMessage;