@sinclair/typebox
Advanced tools
Comparing version 0.31.25 to 0.31.26
@@ -65,7 +65,7 @@ "use strict"; | ||
throw new transform_1.TransformDecodeCheckError(this.schema, value, this.Errors(value).First()); | ||
return this.hasTransform ? transform_1.DecodeTransform.Decode(this.schema, this.references, value, (_, __, value) => this.Check(value)) : value; | ||
return this.hasTransform ? transform_1.DecodeTransform.Decode(this.schema, this.references, value) : value; | ||
} | ||
/** Encodes a value or throws if error */ | ||
Encode(value) { | ||
const encoded = this.hasTransform ? transform_1.EncodeTransform.Encode(this.schema, this.references, value, (_, __, value) => this.Check(value)) : value; | ||
const encoded = this.hasTransform ? transform_1.EncodeTransform.Encode(this.schema, this.references, value) : value; | ||
if (!this.checkFunc(encoded)) | ||
@@ -72,0 +72,0 @@ throw new transform_1.TransformEncodeCheckError(this.schema, value, this.Errors(value).First()); |
{ | ||
"name": "@sinclair/typebox", | ||
"version": "0.31.25", | ||
"version": "0.31.26", | ||
"description": "JSONSchema Type Builder with Static Type Resolution for TypeScript", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
@@ -107,6 +107,5 @@ export declare const Transform: unique symbol; | ||
} | ||
export type TAsyncIteratorResolve<T extends TSchema, P extends unknown[]> = AsyncIterableIterator<Ensure<Static<T, P>>>; | ||
export interface TAsyncIterator<T extends TSchema = TSchema> extends TSchema { | ||
[Kind]: 'AsyncIterator'; | ||
static: TAsyncIteratorResolve<T, this['params']>; | ||
static: AsyncIterableIterator<Static<T, this['params']>>; | ||
type: 'AsyncIterator'; | ||
@@ -228,6 +227,5 @@ items: T; | ||
} | ||
export type TIteratorResolve<T extends TSchema, P extends unknown[]> = IterableIterator<Ensure<Static<T, P>>>; | ||
export interface TIterator<T extends TSchema = TSchema> extends TSchema { | ||
[Kind]: 'Iterator'; | ||
static: TIteratorResolve<T, this['params']>; | ||
static: IterableIterator<Static<T, this['params']>>; | ||
type: 'Iterator'; | ||
@@ -234,0 +232,0 @@ items: T; |
@@ -37,7 +37,7 @@ import { ValueError } from '../errors/errors'; | ||
export declare namespace DecodeTransform { | ||
function Decode(schema: Types.TSchema, references: Types.TSchema[], value: unknown, check: CheckFunction): unknown; | ||
function Decode(schema: Types.TSchema, references: Types.TSchema[], value: unknown): unknown; | ||
} | ||
/** Encodes a value using transform encoders if available. Does not ensure correct results. */ | ||
export declare namespace EncodeTransform { | ||
function Encode(schema: Types.TSchema, references: Types.TSchema[], value: unknown, check: CheckFunction): unknown; | ||
function Encode(schema: Types.TSchema, references: Types.TSchema[], value: unknown): unknown; | ||
} |
@@ -33,2 +33,3 @@ "use strict"; | ||
const deref_1 = require("./deref"); | ||
const check_1 = require("./check"); | ||
const Types = require("../typebox"); | ||
@@ -129,3 +130,3 @@ // ------------------------------------------------------------------------- | ||
function TTuple(schema, references) { | ||
return Types.TypeGuard.TTransform(schema) || (Types.TypeGuard.TSchema(schema.items) && schema.items.some((schema) => Visit(schema, references))); | ||
return Types.TypeGuard.TTransform(schema) || (!(0, guard_1.IsUndefined)(schema.items) && schema.items.some((schema) => Visit(schema, references))); | ||
} | ||
@@ -292,3 +293,3 @@ function TUnion(schema, references) { | ||
for (const subschema of schema.anyOf) { | ||
if (!checkFunction(subschema, references, value1)) | ||
if (!(0, check_1.Check)(subschema, references, value1)) | ||
continue; | ||
@@ -356,5 +357,3 @@ return Visit(subschema, references, value1); | ||
} | ||
let checkFunction = () => false; | ||
function Decode(schema, references, value, check) { | ||
checkFunction = check; | ||
function Decode(schema, references, value) { | ||
return Visit(schema, references, value); | ||
@@ -448,3 +447,3 @@ } | ||
for (const subschema of schema.anyOf) { | ||
if (!checkFunction(subschema, references, value)) | ||
if (!(0, check_1.Check)(subschema, references, value)) | ||
continue; | ||
@@ -457,3 +456,3 @@ const value1 = Visit(subschema, references, value); | ||
const value1 = Visit(subschema, references, value); | ||
if (!checkFunction(schema, references, value1)) | ||
if (!(0, check_1.Check)(schema, references, value1)) | ||
continue; | ||
@@ -520,5 +519,3 @@ return Default(schema, value1); | ||
} | ||
let checkFunction = () => false; | ||
function Encode(schema, references, value, check) { | ||
checkFunction = check; | ||
function Encode(schema, references, value) { | ||
return Visit(schema, references, value); | ||
@@ -525,0 +522,0 @@ } |
@@ -26,9 +26,9 @@ import * as ValueErrors from '../errors/index'; | ||
/** Decodes a value or throws if error */ | ||
function Decode<T extends Types.TSchema, D = Types.StaticDecode<T>>(schema: T, references: Types.TSchema[], value: unknown): D; | ||
function Decode<T extends Types.TSchema, R = Types.StaticDecode<T>>(schema: T, references: Types.TSchema[], value: unknown): R; | ||
/** Decodes a value or throws if error */ | ||
function Decode<T extends Types.TSchema, D = Types.StaticDecode<T>>(schema: T, value: unknown): D; | ||
function Decode<T extends Types.TSchema, R = Types.StaticDecode<T>>(schema: T, value: unknown): R; | ||
/** Encodes a value or throws if error */ | ||
function Encode<T extends Types.TSchema, E = Types.StaticEncode<T>>(schema: T, references: Types.TSchema[], value: unknown): E; | ||
function Encode<T extends Types.TSchema, R = Types.StaticEncode<T>>(schema: T, references: Types.TSchema[], value: unknown): R; | ||
/** Encodes a value or throws if error */ | ||
function Encode<T extends Types.TSchema, E = Types.StaticEncode<T>>(schema: T, value: unknown): E; | ||
function Encode<T extends Types.TSchema, R = Types.StaticEncode<T>>(schema: T, value: unknown): R; | ||
/** Returns an iterator for each error in this value. */ | ||
@@ -35,0 +35,0 @@ function Errors<T extends Types.TSchema>(schema: T, references: Types.TSchema[], value: unknown): ValueErrors.ValueErrorIterator; |
@@ -75,3 +75,3 @@ "use strict"; | ||
throw new ValueTransform.TransformDecodeCheckError(schema, value, Errors(schema, references, value).First()); | ||
return ValueTransform.DecodeTransform.Decode(schema, references, value, ValueCheck.Check); | ||
return ValueTransform.DecodeTransform.Decode(schema, references, value); | ||
} | ||
@@ -82,3 +82,3 @@ Value.Decode = Decode; | ||
const [schema, references, value] = args.length === 3 ? [args[0], args[1], args[2]] : [args[0], [], args[1]]; | ||
const encoded = ValueTransform.EncodeTransform.Encode(schema, references, value, ValueCheck.Check); | ||
const encoded = ValueTransform.EncodeTransform.Encode(schema, references, value); | ||
if (!Check(schema, references, encoded)) | ||
@@ -85,0 +85,0 @@ throw new ValueTransform.TransformEncodeCheckError(schema, value, Errors(schema, references, value).First()); |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
537338
8546