From 528903882f266836bbb427fa487980a837524e6f Mon Sep 17 00:00:00 2001 From: sinclairzx81 Date: Thu, 23 Mar 2023 04:05:18 +0900 Subject: [PATCH] Remove Unused Object Array Check (#348) --- package.json | 2 +- src/compiler/compiler.ts | 1 - src/value/check.ts | 4 ++-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 8043b31b7..079fe206a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sinclair/typebox", - "version": "0.26.0", + "version": "0.26.1", "description": "JSONSchema Type Builder with Static Type Resolution for TypeScript", "keywords": [ "typescript", diff --git a/src/compiler/compiler.ts b/src/compiler/compiler.ts index f773b012c..30a15e5f0 100644 --- a/src/compiler/compiler.ts +++ b/src/compiler/compiler.ts @@ -253,7 +253,6 @@ export namespace TypeCompiler { function* Object(schema: Types.TObject, references: Types.TSchema[], value: string): IterableIterator { yield IsObjectCheck(value) - if (!TypeSystem.AllowArrayObjects) yield `!Array.isArray(${value})` if (IsNumber(schema.minProperties)) yield `Object.getOwnPropertyNames(${value}).length >= ${schema.minProperties}` if (IsNumber(schema.maxProperties)) yield `Object.getOwnPropertyNames(${value}).length <= ${schema.maxProperties}` const schemaKeys = globalThis.Object.getOwnPropertyNames(schema.properties) diff --git a/src/value/check.ts b/src/value/check.ts index 15c06bbe8..59db8e22d 100644 --- a/src/value/check.ts +++ b/src/value/check.ts @@ -220,10 +220,10 @@ export namespace ValueCheck { if (!IsObject(value)) { return false } - if (IsNumber(schema.minProperties) && !(globalThis.Object.getOwnPropertyNames(value).length >= schema.minProperties)) { + if (IsDefined(schema.minProperties) && !(globalThis.Object.getOwnPropertyNames(value).length >= schema.minProperties)) { return false } - if (IsNumber(schema.maxProperties) && !(globalThis.Object.getOwnPropertyNames(value).length <= schema.maxProperties)) { + if (IsDefined(schema.maxProperties) && !(globalThis.Object.getOwnPropertyNames(value).length <= schema.maxProperties)) { return false } const knownKeys = globalThis.Object.getOwnPropertyNames(schema.properties)