UNPKG

@sprucelabs/schema

Version:

Static and dynamic binding plus runtime validation and transformation to ensure your app is sound. 🤓

21 lines (20 loc) • 866 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = validateSchemaValues; const just_safe_set_1 = __importDefault(require("just-safe-set")); const __1 = require(".."); const SchemaEntityFactory_1 = __importDefault(require("../factories/SchemaEntityFactory")); function validateSchemaValues(schema, values, options) { const { ...opts } = options ?? {}; (0, __1.validateSchema)(schema); const mapped = Object.keys(values).reduce((mapped, key) => { //@ts-ignore (0, just_safe_set_1.default)(mapped, key, values[key]); return mapped; }, {}); const instance = SchemaEntityFactory_1.default.Entity(schema, mapped); instance.validate(opts); }