summaryrefslogtreecommitdiff
path: root/packages/server/src/utils/schemaValidator.ts
diff options
context:
space:
mode:
authorTommaso Sciortino <[email protected]>2025-05-30 18:25:47 -0700
committerGitHub <[email protected]>2025-05-30 18:25:47 -0700
commit21fba832d1b4ea7af43fb887d9b2b38fcf8210d0 (patch)
tree7200d2fac3a55c385e0a2dac34b5282c942364bc /packages/server/src/utils/schemaValidator.ts
parentc81148a0cc8489f657901c2cc7247c0834075e1a (diff)
Rename server->core (#638)
Diffstat (limited to 'packages/server/src/utils/schemaValidator.ts')
-rw-r--r--packages/server/src/utils/schemaValidator.ts58
1 files changed, 0 insertions, 58 deletions
diff --git a/packages/server/src/utils/schemaValidator.ts b/packages/server/src/utils/schemaValidator.ts
deleted file mode 100644
index 34ed5843..00000000
--- a/packages/server/src/utils/schemaValidator.ts
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * @license
- * Copyright 2025 Google LLC
- * SPDX-License-Identifier: Apache-2.0
- */
-
-/**
- * Simple utility to validate objects against JSON Schemas
- */
-export class SchemaValidator {
- /**
- * Validates data against a JSON schema
- * @param schema JSON Schema to validate against
- * @param data Data to validate
- * @returns True if valid, false otherwise
- */
- static validate(schema: Record<string, unknown>, data: unknown): boolean {
- // This is a simplified implementation
- // In a real application, you would use a library like Ajv for proper validation
-
- // Check for required fields
- if (schema.required && Array.isArray(schema.required)) {
- const required = schema.required as string[];
- const dataObj = data as Record<string, unknown>;
-
- for (const field of required) {
- if (dataObj[field] === undefined) {
- console.error(`Missing required field: ${field}`);
- return false;
- }
- }
- }
-
- // Check property types if properties are defined
- if (schema.properties && typeof schema.properties === 'object') {
- const properties = schema.properties as Record<string, { type?: string }>;
- const dataObj = data as Record<string, unknown>;
-
- for (const [key, prop] of Object.entries(properties)) {
- if (dataObj[key] !== undefined && prop.type) {
- const expectedType = prop.type;
- const actualType = Array.isArray(dataObj[key])
- ? 'array'
- : typeof dataObj[key];
-
- if (expectedType !== actualType) {
- console.error(
- `Type mismatch for property "${key}": expected ${expectedType}, got ${actualType}`,
- );
- return false;
- }
- }
- }
- }
-
- return true;
- }
-}