UNPKG

@fugitivesclub/nft-cli

Version:
40 lines (39 loc) 1.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.formatValidationErrors = exports.instanceOfValidationError = exports.instanceOfValidationErrors = void 0; const class_validator_1 = require("class-validator"); const instanceOfValidationErrors = ( // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types array) => { return (array === null || array === void 0 ? void 0 : array[0]) && (0, exports.instanceOfValidationError)(array[0]); }; exports.instanceOfValidationErrors = instanceOfValidationErrors; const instanceOfValidationError = ( // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types object) => { return object instanceof class_validator_1.ValidationError; }; exports.instanceOfValidationError = instanceOfValidationError; const formatValidationErrors = (validationErrors) => { const messages = []; const suggestions = []; for (const error of validationErrors) { if (error.children && error.children.length > 0) { const res = (0, exports.formatValidationErrors)(error.children); messages.push(res.message); suggestions.push(...res.suggestions); } else { messages.push(`\`${error.property}\` contain errors.`); for (const constraint in error.constraints) { // eslint-disable-next-line no-prototype-builtins if (!error.constraints.hasOwnProperty(constraint)) { continue; } suggestions.push(error.constraints[constraint]); } } } return { message: messages.join('\n'), suggestions }; }; exports.formatValidationErrors = formatValidationErrors;