UNPKG

@smooai/utils

Version:

A collection of shared utilities and tools used across SmooAI projects. This package provides common functionality to standardize and simplify development across all SmooAI repositories.

67 lines (66 loc) 2.61 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/validation/standardSchema.ts var standardSchema_exports = {}; __export(standardSchema_exports, { HumanReadableSchemaError: () => HumanReadableSchemaError, formatStandardSchemaErrorToHumanReadable: () => formatStandardSchemaErrorToHumanReadable, handleSchemaValidation: () => handleSchemaValidation }); module.exports = __toCommonJS(standardSchema_exports); var import_utils = require("@standard-schema/utils"); var HumanReadableSchemaError = class extends Error { constructor(schemaError) { super(formatStandardSchemaErrorToHumanReadable(schemaError.issues)); this.schemaError = schemaError; this.name = "HumanReadableSchemaError"; } }; function formatStandardSchemaErrorToHumanReadable(issues) { if (issues.length === 0) { return "No validation errors"; } if (issues.length === 1) { const issue = issues[0]; const dotPath = (0, import_utils.getDotPath)(issue); const pathString = dotPath ? ` at "${dotPath}"` : ""; return `${issue.message}${pathString}`; } return issues.map((issue, index) => { const dotPath = (0, import_utils.getDotPath)(issue); const pathString = dotPath ? ` at "${dotPath}"` : ""; return `${index + 1}. ${issue.message}${pathString}`; }).join("\n"); } async function handleSchemaValidation(schema, input) { let result = schema["~standard"].validate(input); if (result instanceof Promise) result = await result; if (result.issues) { const schemaError = new import_utils.SchemaError(result.issues); throw new HumanReadableSchemaError(schemaError); } return result.value; } // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { HumanReadableSchemaError, formatStandardSchemaErrorToHumanReadable, handleSchemaValidation }); //# sourceMappingURL=standardSchema.js.map