Comparing version 2.2.12 to 2.2.13
@@ -17,2 +17,7 @@ # Changelog | ||
# 2.2.13 | ||
- **Bug Fix** | ||
- improve internal `mergeAll` function, closes #532 (@gcanti) | ||
# 2.2.12 | ||
@@ -19,0 +24,0 @@ |
@@ -997,5 +997,9 @@ var __extends = (this && this.__extends) || (function () { | ||
export { IntersectionType }; | ||
var mergeAll = function (base, us) { | ||
/** | ||
* @internal | ||
*/ | ||
export var mergeAll = function (base, us) { | ||
var equal = true; | ||
var primitive = true; | ||
var baseIsNotADictionary = !UnknownRecord.is(base); | ||
for (var _i = 0, us_1 = us; _i < us_1.length; _i++) { | ||
@@ -1020,3 +1024,3 @@ var u = us_1[_i]; | ||
for (var k in u) { | ||
if (u[k] !== base[k] || !r.hasOwnProperty(k)) { | ||
if (!r.hasOwnProperty(k) || baseIsNotADictionary || u[k] !== base[k]) { | ||
r[k] = u[k]; | ||
@@ -1023,0 +1027,0 @@ } |
@@ -34,3 +34,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.getIndex = exports.getTags = exports.emptyTags = exports.alias = exports.clean = exports.StrictType = exports.dictionary = exports.Integer = exports.refinement = exports.object = exports.ObjectType = exports.Dictionary = exports.any = exports.AnyType = exports.never = exports.NeverType = exports.getDefaultContext = exports.getValidationError = exports.void = exports.interface = exports.Array = exports.undefined = exports.null = exports.exact = exports.ExactType = exports.taggedUnion = exports.TaggedUnionType = exports.strict = exports.readonlyArray = exports.ReadonlyArrayType = exports.readonly = exports.ReadonlyType = exports.tuple = exports.TupleType = exports.intersection = exports.IntersectionType = exports.union = exports.UnionType = exports.record = exports.getDomainKeys = exports.DictionaryType = exports.partial = exports.PartialType = exports.type = exports.InterfaceType = exports.array = exports.ArrayType = exports.recursion = exports.RecursiveType = exports.keyof = exports.KeyofType = exports.literal = exports.LiteralType = exports.Int = exports.brand = exports.RefinementType = exports.Function = exports.FunctionType = exports.UnknownRecord = exports.AnyDictionaryType = exports.UnknownArray = exports.AnyArrayType = exports.boolean = exports.BooleanType = exports.bigint = exports.BigIntType = exports.number = exports.NumberType = exports.string = exports.StringType = exports.unknown = exports.UnknownType = exports.voidType = exports.VoidType = exports.UndefinedType = exports.nullType = exports.NullType = exports.success = exports.failure = exports.failures = exports.appendContext = exports.getContextEntry = exports.getFunctionName = exports.identity = exports.Type = void 0; | ||
exports.getIndex = exports.getTags = exports.emptyTags = exports.alias = exports.clean = exports.StrictType = exports.dictionary = exports.Integer = exports.refinement = exports.object = exports.ObjectType = exports.Dictionary = exports.any = exports.AnyType = exports.never = exports.NeverType = exports.getDefaultContext = exports.getValidationError = exports.void = exports.interface = exports.Array = exports.undefined = exports.null = exports.exact = exports.ExactType = exports.taggedUnion = exports.TaggedUnionType = exports.strict = exports.readonlyArray = exports.ReadonlyArrayType = exports.readonly = exports.ReadonlyType = exports.tuple = exports.TupleType = exports.intersection = exports.mergeAll = exports.IntersectionType = exports.union = exports.UnionType = exports.record = exports.getDomainKeys = exports.DictionaryType = exports.partial = exports.PartialType = exports.type = exports.InterfaceType = exports.array = exports.ArrayType = exports.recursion = exports.RecursiveType = exports.keyof = exports.KeyofType = exports.literal = exports.LiteralType = exports.Int = exports.brand = exports.RefinementType = exports.Function = exports.FunctionType = exports.UnknownRecord = exports.AnyDictionaryType = exports.UnknownArray = exports.AnyArrayType = exports.boolean = exports.BooleanType = exports.bigint = exports.BigIntType = exports.number = exports.NumberType = exports.string = exports.StringType = exports.unknown = exports.UnknownType = exports.voidType = exports.VoidType = exports.UndefinedType = exports.nullType = exports.NullType = exports.success = exports.failure = exports.failures = exports.appendContext = exports.getContextEntry = exports.getFunctionName = exports.identity = exports.Type = void 0; | ||
/** | ||
@@ -1008,5 +1008,9 @@ * @since 1.0.0 | ||
exports.IntersectionType = IntersectionType; | ||
var mergeAll = function (base, us) { | ||
/** | ||
* @internal | ||
*/ | ||
exports.mergeAll = function (base, us) { | ||
var equal = true; | ||
var primitive = true; | ||
var baseIsNotADictionary = !exports.UnknownRecord.is(base); | ||
for (var _i = 0, us_1 = us; _i < us_1.length; _i++) { | ||
@@ -1031,3 +1035,3 @@ var u = us_1[_i]; | ||
for (var k in u) { | ||
if (u[k] !== base[k] || !r.hasOwnProperty(k)) { | ||
if (!r.hasOwnProperty(k) || baseIsNotADictionary || u[k] !== base[k]) { | ||
r[k] = u[k]; | ||
@@ -1057,7 +1061,7 @@ } | ||
} | ||
return errors.length > 0 ? exports.failures(errors) : exports.success(mergeAll(u, us)); | ||
return errors.length > 0 ? exports.failures(errors) : exports.success(exports.mergeAll(u, us)); | ||
}, codecs.length === 0 | ||
? exports.identity | ||
: function (a) { | ||
return mergeAll(a, codecs.map(function (codec) { return codec.encode(a); })); | ||
return exports.mergeAll(a, codecs.map(function (codec) { return codec.encode(a); })); | ||
}, codecs); | ||
@@ -1064,0 +1068,0 @@ } |
{ | ||
"name": "io-ts", | ||
"version": "2.2.12", | ||
"version": "2.2.13", | ||
"description": "TypeScript runtime type system for IO decoding/encoding", | ||
@@ -5,0 +5,0 @@ "main": "lib/index.js", |
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
439312
15635