@sinclair/typebox
Advanced tools
Comparing version 0.32.7 to 0.32.8
@@ -60,3 +60,3 @@ "use strict"; | ||
if ('default' in union) { | ||
return union.default; | ||
return typeof value === 'function' ? union.default : (0, index_6.Clone)(union.default); | ||
} | ||
@@ -63,0 +63,0 @@ else { |
@@ -7,12 +7,13 @@ "use strict"; | ||
const index_2 = require("../check/index"); | ||
const index_3 = require("../deref/index"); | ||
const index_4 = require("../../type/template-literal/index"); | ||
const index_5 = require("../../type/patterns/index"); | ||
const index_6 = require("../../type/registry/index"); | ||
const index_7 = require("../../type/symbols/index"); | ||
const index_8 = require("../../type/error/index"); | ||
const index_3 = require("../clone/index"); | ||
const index_4 = require("../deref/index"); | ||
const index_5 = require("../../type/template-literal/index"); | ||
const index_6 = require("../../type/patterns/index"); | ||
const index_7 = require("../../type/registry/index"); | ||
const index_8 = require("../../type/symbols/index"); | ||
const index_9 = require("../../type/error/index"); | ||
// ------------------------------------------------------------------ | ||
// Errors | ||
// ------------------------------------------------------------------ | ||
class ValueCreateError extends index_8.TypeBoxError { | ||
class ValueCreateError extends index_9.TypeBoxError { | ||
constructor(schema, message) { | ||
@@ -25,2 +26,8 @@ super(message); | ||
// ------------------------------------------------------------------ | ||
// Default | ||
// ------------------------------------------------------------------ | ||
function FromDefault(value) { | ||
return typeof value === 'function' ? value : (0, index_3.Clone)(value); | ||
} | ||
// ------------------------------------------------------------------ | ||
// Create | ||
@@ -30,3 +37,3 @@ // ------------------------------------------------------------------ | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -45,3 +52,3 @@ else { | ||
else if ('default' in schema) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -59,3 +66,3 @@ else if (schema.minItems !== undefined) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -68,3 +75,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -77,3 +84,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -86,3 +93,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -109,3 +116,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -121,3 +128,3 @@ else if (schema.minimumTimestamp !== undefined) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -130,3 +137,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -142,3 +149,3 @@ else if (schema.minimum !== undefined) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -164,3 +171,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -173,3 +180,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -182,3 +189,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -191,3 +198,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -200,3 +207,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -209,3 +216,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -221,7 +228,7 @@ else if (schema.minimum !== undefined) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
else { | ||
const required = new Set(schema.required); | ||
return (schema.default || | ||
return (FromDefault(schema.default) || | ||
Object.entries(schema.properties).reduce((acc, [key, schema]) => { | ||
@@ -234,3 +241,3 @@ return required.has(key) ? { ...acc, [key]: Visit(schema, references) } : { ...acc }; | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -244,5 +251,5 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
else if (!(keyPattern === index_5.PatternStringExact || keyPattern === index_5.PatternNumberExact)) { | ||
else if (!(keyPattern === index_6.PatternStringExact || keyPattern === index_6.PatternNumberExact)) { | ||
const propertyKeys = keyPattern.slice(1, keyPattern.length - 1).split('|'); | ||
@@ -259,6 +266,6 @@ return propertyKeys.reduce((acc, key) => { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
else { | ||
return Visit((0, index_3.Deref)(schema, references), references); | ||
return Visit((0, index_4.Deref)(schema, references), references); | ||
} | ||
@@ -268,3 +275,3 @@ } | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -281,3 +288,3 @@ else { | ||
else { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -290,3 +297,3 @@ } | ||
else { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -296,3 +303,3 @@ } | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -310,3 +317,3 @@ else if (schema.minLength !== undefined) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -322,7 +329,7 @@ else if ('value' in schema) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
if (!(0, index_4.IsTemplateLiteralFinite)(schema)) | ||
if (!(0, index_5.IsTemplateLiteralFinite)(schema)) | ||
throw new ValueCreateError(schema, 'Can only create template literals that produce a finite variants. Consider using a default value.'); | ||
const generated = (0, index_4.TemplateLiteralGenerate)(schema); | ||
const generated = (0, index_5.TemplateLiteralGenerate)(schema); | ||
return generated[0]; | ||
@@ -334,6 +341,6 @@ } | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
else { | ||
return Visit((0, index_3.Deref)(schema, references), references); | ||
return Visit((0, index_4.Deref)(schema, references), references); | ||
} | ||
@@ -343,3 +350,3 @@ } | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -355,3 +362,3 @@ if (schema.items === undefined) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -364,3 +371,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -376,3 +383,3 @@ else if (schema.anyOf.length === 0) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -388,3 +395,3 @@ else if (schema.minByteLength !== undefined) { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -397,3 +404,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -406,3 +413,3 @@ else { | ||
if ((0, index_1.HasPropertyKey)(schema, 'default')) { | ||
return schema.default; | ||
return FromDefault(schema.default); | ||
} | ||
@@ -416,3 +423,3 @@ else { | ||
const schema_ = schema; | ||
switch (schema_[index_7.Kind]) { | ||
switch (schema_[index_8.Kind]) { | ||
case 'Any': | ||
@@ -481,3 +488,3 @@ return FromAny(schema_, references_); | ||
default: | ||
if (!index_6.TypeRegistry.Has(schema_[index_7.Kind])) | ||
if (!index_7.TypeRegistry.Has(schema_[index_8.Kind])) | ||
throw new ValueCreateError(schema_, 'Unknown type'); | ||
@@ -484,0 +491,0 @@ return FromKind(schema_, references_); |
{ | ||
"name": "@sinclair/typebox", | ||
"version": "0.32.7", | ||
"version": "0.32.8", | ||
"description": "Json Schema Type Builder with Static Type Resolution for TypeScript", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
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
1351862
22366