reliant-type 1.0.0 → 2.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +113 -688
- package/dist/cjs/core/schema/extensions/mods/typescript-generator.js +45 -16
- package/dist/cjs/core/schema/extensions/mods/typescript-generator.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/Interface.js +0 -12
- package/dist/cjs/core/schema/mode/interfaces/Interface.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/InterfaceSchema.js +34 -3
- package/dist/cjs/core/schema/mode/interfaces/InterfaceSchema.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/errors/SchemaValidationError.js +16 -0
- package/dist/cjs/core/schema/mode/interfaces/errors/SchemaValidationError.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +119 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js +49 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/typescript/TypeInference.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/ConstraintParser.js +6 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/ConstraintParser.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeGuards.js +7 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeGuards.js.map +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/securityValidator.js +1 -1
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/securityValidator.js.map +1 -1
- package/dist/cjs/core/utils/Mod.js +33 -4
- package/dist/cjs/core/utils/Mod.js.map +1 -1
- package/dist/cjs/index.js +74 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/core/schema/extensions/mods/typescript-generator.js +45 -16
- package/dist/esm/core/schema/extensions/mods/typescript-generator.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/Interface.js +1 -12
- package/dist/esm/core/schema/mode/interfaces/Interface.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/InterfaceSchema.js +32 -1
- package/dist/esm/core/schema/mode/interfaces/InterfaceSchema.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/errors/SchemaValidationError.js +14 -0
- package/dist/esm/core/schema/mode/interfaces/errors/SchemaValidationError.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +119 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js +49 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/typescript/TypeInference.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/ConstraintParser.js +6 -0
- package/dist/esm/core/schema/mode/interfaces/validators/ConstraintParser.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/TypeGuards.js +7 -0
- package/dist/esm/core/schema/mode/interfaces/validators/TypeGuards.js.map +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/mods/securityValidator.js +1 -1
- package/dist/esm/core/schema/mode/interfaces/validators/mods/securityValidator.js.map +1 -1
- package/dist/esm/core/utils/Mod.js +33 -4
- package/dist/esm/core/utils/Mod.js.map +1 -1
- package/dist/esm/index.js +78 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/schema.d.ts +44 -3
- package/docs/FUNCTION-TYPES.md +120 -0
- package/docs/GETTING-STARTED.md +56 -53
- package/docs/VSCODE-EXTENSION.md +58 -47
- package/package.json +4 -4
- package/src/core/schema/extensions/components/AutoDocumentation/Docs.ts +1 -1
- package/src/core/schema/extensions/mods/typescript-generator.ts +342 -295
- package/src/core/schema/mode/interfaces/Interface.ts +1 -13
- package/src/core/schema/mode/interfaces/InterfaceSchema.ts +41 -1
- package/src/core/schema/mode/interfaces/errors/SchemaValidationError.ts +13 -0
- package/src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts +146 -0
- package/src/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.ts +79 -0
- package/src/core/schema/mode/interfaces/typescript/TypeInference.ts +67 -16
- package/src/core/schema/mode/interfaces/validators/ConstraintParser.ts +8 -0
- package/src/core/schema/mode/interfaces/validators/TypeGuards.ts +19 -5
- package/src/core/schema/mode/interfaces/validators/mods/securityValidator.ts +1 -1
- package/src/core/types/SchemaValidator.type.ts +4 -0
- package/src/core/utils/Mod.ts +35 -4
- package/src/index.ts +9 -0
|
@@ -253,17 +253,6 @@ const QuickSchemas = {
|
|
|
253
253
|
website: "url?",
|
|
254
254
|
}),
|
|
255
255
|
};
|
|
256
|
-
/**
|
|
257
|
-
* Custom error class for schema validation
|
|
258
|
-
*/
|
|
259
|
-
class SchemaValidationError extends Error {
|
|
260
|
-
constructor(message, errors, warnings) {
|
|
261
|
-
super(message);
|
|
262
|
-
this.errors = errors;
|
|
263
|
-
this.warnings = warnings;
|
|
264
|
-
this.name = "SchemaValidationError";
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
256
|
|
|
268
|
-
export { FieldTypes, Interface, InterfaceSchema, QuickSchemas
|
|
257
|
+
export { FieldTypes, Interface, InterfaceSchema, QuickSchemas };
|
|
269
258
|
//# sourceMappingURL=Interface.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Interface.js","sources":["../../../../../../src/core/schema/mode/interfaces/Interface.ts"],"sourcesContent":[null],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Interface.js","sources":["../../../../../../src/core/schema/mode/interfaces/Interface.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import { ObjectValidationCache } from '../../optimization/ObjectValidationCache.
|
|
|
10
10
|
import { PerformanceMonitor } from '../../optimization/PerformanceMonitor.js';
|
|
11
11
|
import { OptimizationLevel, SchemaPrecompiler } from './precompilation/SchemaPrecompiler.js';
|
|
12
12
|
import { MAX_OBJECT_DEPTH } from '../../../../constants/VALIDATION_CONSTANTS.js';
|
|
13
|
-
import { SchemaValidationError } from './
|
|
13
|
+
import { SchemaValidationError } from './errors/SchemaValidationError.js';
|
|
14
14
|
import { ErrorCode } from './errors/types/errors.type.js';
|
|
15
15
|
|
|
16
16
|
/**
|
|
@@ -23,6 +23,37 @@ import { ErrorCode } from './errors/types/errors.type.js';
|
|
|
23
23
|
* Interface Schema class for TypeScript-like schema definitions
|
|
24
24
|
*/
|
|
25
25
|
class InterfaceSchema {
|
|
26
|
+
/**
|
|
27
|
+
* Get the TypeScript type definition for this schema.
|
|
28
|
+
* At runtime, this returns the TypeScript interface/type as a string.
|
|
29
|
+
* For TypeScript, this property has the inferred type T.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const UserSchema = Interface({ name: "string" });
|
|
34
|
+
* type User = typeof UserSchema.types;
|
|
35
|
+
* console.log(UserSchema.types); // Outputs the TS interface string
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
get types() {
|
|
39
|
+
if (InterfaceSchema.tsGenerator) {
|
|
40
|
+
return InterfaceSchema.tsGenerator(this.definition, this.options);
|
|
41
|
+
}
|
|
42
|
+
// Fallback: Generate a simple representation if generator not registered
|
|
43
|
+
let output = `export interface ${this.options.name || 'Schema'} {\n`;
|
|
44
|
+
for (const [key, value] of Object.entries(this.definition)) {
|
|
45
|
+
const isOptional = typeof value === 'string' && value.endsWith('?');
|
|
46
|
+
output += ` ${key}${isOptional ? '?' : ''}: any;\n`;
|
|
47
|
+
}
|
|
48
|
+
output += "}\n";
|
|
49
|
+
return output;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Alias for types property to support different coding styles
|
|
53
|
+
*/
|
|
54
|
+
getTypes() {
|
|
55
|
+
return this.types;
|
|
56
|
+
}
|
|
26
57
|
constructor(definition, options = {}) {
|
|
27
58
|
this.definition = definition;
|
|
28
59
|
this.options = options;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InterfaceSchema.js","sources":["../../../../../../src/core/schema/mode/interfaces/InterfaceSchema.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InterfaceSchema.js","sources":["../../../../../../src/core/schema/mode/interfaces/InterfaceSchema.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom error class for schema validation
|
|
3
|
+
*/
|
|
4
|
+
class SchemaValidationError extends Error {
|
|
5
|
+
constructor(message, errors, warnings = []) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.errors = errors;
|
|
8
|
+
this.warnings = warnings;
|
|
9
|
+
this.name = "SchemaValidationError";
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export { SchemaValidationError };
|
|
14
|
+
//# sourceMappingURL=SchemaValidationError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaValidationError.js","sources":["../../../../../../../src/core/schema/mode/interfaces/errors/SchemaValidationError.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;AAEG;AACG,MAAO,qBAAsB,SAAQ,KAAK,CAAA;AAC9C,IAAA,WAAA,CACE,OAAe,EACR,MAAgB,EAChB,WAAqB,EAAE,EAAA;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,IAAM,CAAA,MAAA,GAAN,MAAM,CAAU;QAChB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAe;AAG9B,QAAA,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;KACrC;AACF;;;;"}
|
|
@@ -575,6 +575,120 @@ class FieldPrecompilers {
|
|
|
575
575
|
validator._isCompiled = true;
|
|
576
576
|
return validator;
|
|
577
577
|
}
|
|
578
|
+
/**
|
|
579
|
+
* Precompile function field types (fn(() => void), etc.)
|
|
580
|
+
* ENHANCED: Implements function wrapping to validate arguments and return values at runtime.
|
|
581
|
+
*/
|
|
582
|
+
static precompileFunction(functionType) {
|
|
583
|
+
const validator = (value) => {
|
|
584
|
+
if (typeof value !== "function") {
|
|
585
|
+
return {
|
|
586
|
+
success: false,
|
|
587
|
+
errors: [ErrorHandler.createTypeError([], "function", value)],
|
|
588
|
+
warnings: [],
|
|
589
|
+
data: undefined,
|
|
590
|
+
};
|
|
591
|
+
}
|
|
592
|
+
// Extract signature: fn((args) => returnType)
|
|
593
|
+
const type = functionType.endsWith("?")
|
|
594
|
+
? functionType.slice(0, -1)
|
|
595
|
+
: functionType;
|
|
596
|
+
const signature = type.slice(3, -1); // remove fn( and )
|
|
597
|
+
const arrowIndex = signature.lastIndexOf("=>");
|
|
598
|
+
if (arrowIndex === -1) {
|
|
599
|
+
return { success: true, errors: [], warnings: [], data: value };
|
|
600
|
+
}
|
|
601
|
+
const argsPart = signature.slice(0, arrowIndex).trim();
|
|
602
|
+
const returnPart = signature.slice(arrowIndex + 2).trim();
|
|
603
|
+
// Clean argsPart: remove outer parentheses if present
|
|
604
|
+
const cleanArgsPart = argsPart.startsWith("(") && argsPart.endsWith(")")
|
|
605
|
+
? argsPart.slice(1, -1)
|
|
606
|
+
: argsPart;
|
|
607
|
+
// Create a wrapped function that validates on call
|
|
608
|
+
const ReliantFunction = (...args) => {
|
|
609
|
+
// 1. Validate Arguments
|
|
610
|
+
if (cleanArgsPart && cleanArgsPart !== "()") {
|
|
611
|
+
const argDefs = cleanArgsPart.split(",").map((s) => s.trim());
|
|
612
|
+
for (let i = 0; i < argDefs.length; i++) {
|
|
613
|
+
const def = argDefs[i];
|
|
614
|
+
// Parse definition: name?: type or ...name: type
|
|
615
|
+
const parts = def.split(":");
|
|
616
|
+
const namePart = parts[0].trim();
|
|
617
|
+
let typePart = parts.slice(1).join(":").trim() || "any";
|
|
618
|
+
// Handle TYPE placeholder as any
|
|
619
|
+
if (typePart === "TYPE")
|
|
620
|
+
typePart = "any";
|
|
621
|
+
const isRest = namePart.startsWith("...");
|
|
622
|
+
const isOptional = namePart.endsWith("?") || typePart.endsWith("?");
|
|
623
|
+
// Check for missing required arguments
|
|
624
|
+
// We check if the index exists in args. explicitly passing undefined is allowed if the type allows it,
|
|
625
|
+
// but not passing it at all is a missing argument error for required params.
|
|
626
|
+
if (!isRest && !isOptional && i >= args.length) {
|
|
627
|
+
throw new Error(`[ReliantType] Missing required argument at index ${i} ('${namePart}'). Expected ${typePart}.`);
|
|
628
|
+
}
|
|
629
|
+
if (isRest) {
|
|
630
|
+
const restType = typePart.endsWith("[]")
|
|
631
|
+
? typePart.slice(0, -2)
|
|
632
|
+
: typePart;
|
|
633
|
+
const restArgs = args.slice(i);
|
|
634
|
+
const restValidator = FieldPrecompilers.parseAndCompile(restType);
|
|
635
|
+
for (const restArg of restArgs) {
|
|
636
|
+
const res = restValidator(restArg);
|
|
637
|
+
if (!res.success) {
|
|
638
|
+
throw new Error(`[ReliantType] Argument validation failed for rest parameter at index ${i}: ${res.errors[0].message}`);
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
break; // Rest is always last
|
|
642
|
+
}
|
|
643
|
+
else {
|
|
644
|
+
// If argument is provided (or undefined but present), validate it
|
|
645
|
+
if (i < args.length) {
|
|
646
|
+
const argValidator = FieldPrecompilers.parseAndCompile(typePart);
|
|
647
|
+
const res = argValidator(args[i]);
|
|
648
|
+
if (!res.success) {
|
|
649
|
+
throw new Error(`[ReliantType] Argument validation failed for argument at index ${i} ('${namePart}'): ${res.errors[0].message}`);
|
|
650
|
+
}
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
// 2. Execute original function
|
|
656
|
+
const result = value(...args);
|
|
657
|
+
// 3. Validate Return Value
|
|
658
|
+
if (returnPart && returnPart !== "void") {
|
|
659
|
+
// Handle TYPE placeholder as any
|
|
660
|
+
const returnType = returnPart === "TYPE" ? "any" : returnPart;
|
|
661
|
+
if (returnType !== "any") {
|
|
662
|
+
const returnValidator = FieldPrecompilers.parseAndCompile(returnType);
|
|
663
|
+
const res = returnValidator(result);
|
|
664
|
+
if (!res.success) {
|
|
665
|
+
throw new Error(`[ReliantType] Return value validation failed for ${functionType}. Expected ${returnType}, got ${typeof result}: ${res.errors[0].message}`);
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
}
|
|
669
|
+
return result;
|
|
670
|
+
};
|
|
671
|
+
// Force function name for better debugging
|
|
672
|
+
try {
|
|
673
|
+
Object.defineProperty(ReliantFunction, "name", {
|
|
674
|
+
value: `ReliantFunction_${functionType.replace(/[^a-zA-Z0-9]/g, "_")}`,
|
|
675
|
+
configurable: true,
|
|
676
|
+
});
|
|
677
|
+
}
|
|
678
|
+
catch (e) {
|
|
679
|
+
/* ignore */
|
|
680
|
+
}
|
|
681
|
+
return {
|
|
682
|
+
success: true,
|
|
683
|
+
errors: [],
|
|
684
|
+
warnings: [],
|
|
685
|
+
data: ReliantFunction,
|
|
686
|
+
};
|
|
687
|
+
};
|
|
688
|
+
validator._fieldType = functionType;
|
|
689
|
+
validator._isCompiled = true;
|
|
690
|
+
return validator;
|
|
691
|
+
}
|
|
578
692
|
/**
|
|
579
693
|
* Precompile special field types (email, url, json, etc.)
|
|
580
694
|
*/
|
|
@@ -620,6 +734,11 @@ class FieldPrecompilers {
|
|
|
620
734
|
const validator = this.precompileRecord(baseType);
|
|
621
735
|
return isOptional ? this.precompileOptional(validator) : validator;
|
|
622
736
|
}
|
|
737
|
+
// Handle function types (fn(() => void), etc.)
|
|
738
|
+
if (baseType.startsWith("fn(") && baseType.endsWith(")")) {
|
|
739
|
+
const validator = this.precompileFunction(baseType);
|
|
740
|
+
return isOptional ? this.precompileOptional(validator) : validator;
|
|
741
|
+
}
|
|
623
742
|
// Handle basic types with constraints (including URL args like url.https)
|
|
624
743
|
const constraintMatch = baseType.match(/^([\w.]+)(?:\(([^)]*)\))?$/);
|
|
625
744
|
if (constraintMatch) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldPrecompilers.js","sources":["../../../../../../../src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FieldPrecompilers.js","sources":["../../../../../../../src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { MAX_COMPILATION_DEPTH } from '../../../../../constants/VALIDATION_CONST
|
|
|
3
3
|
import { ErrorHandler } from '../errors/ErrorHandler.js';
|
|
4
4
|
import { ErrorCode } from '../errors/types/errors.type.js';
|
|
5
5
|
import { SUPPORTED_VALIDATOR_TYPES } from '../../../../types/ValidatorTypes.js';
|
|
6
|
+
import { TypeGuards } from '../validators/TypeGuards.js';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* ULTRA-PERFORMANCE Schema Precompilation Module
|
|
@@ -113,6 +114,16 @@ class SchemaPrecompiler {
|
|
|
113
114
|
// OPTIMIZED: Process simple fields first (fastest path)
|
|
114
115
|
for (const field of simpleFields) {
|
|
115
116
|
const value = data[field.fieldName];
|
|
117
|
+
// Handle optional fields
|
|
118
|
+
if (value === undefined) {
|
|
119
|
+
if (!field.isOptional) {
|
|
120
|
+
errors.push(ErrorHandler.createMissingFieldError([field.fieldName], field.fieldName));
|
|
121
|
+
}
|
|
122
|
+
else if (field.hasDefault) {
|
|
123
|
+
validatedData[field.fieldName] = field.defaultValue;
|
|
124
|
+
}
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
116
127
|
const result = field.validator(value);
|
|
117
128
|
if (!result.success) {
|
|
118
129
|
// Add field path to errors
|
|
@@ -132,6 +143,16 @@ class SchemaPrecompiler {
|
|
|
132
143
|
// OPTIMIZED: Process union fields with precompiled validators
|
|
133
144
|
for (const field of unionFields) {
|
|
134
145
|
const value = data[field.fieldName];
|
|
146
|
+
// Handle optional fields
|
|
147
|
+
if (value === undefined) {
|
|
148
|
+
if (!field.isOptional) {
|
|
149
|
+
errors.push(ErrorHandler.createMissingFieldError([field.fieldName], field.fieldName));
|
|
150
|
+
}
|
|
151
|
+
else if (field.hasDefault) {
|
|
152
|
+
validatedData[field.fieldName] = field.defaultValue;
|
|
153
|
+
}
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
135
156
|
const result = field.validator(value);
|
|
136
157
|
if (!result.success) {
|
|
137
158
|
// Add field path to errors
|
|
@@ -151,6 +172,16 @@ class SchemaPrecompiler {
|
|
|
151
172
|
// OPTIMIZED: Process array fields
|
|
152
173
|
for (const field of arrayFields) {
|
|
153
174
|
const value = data[field.fieldName];
|
|
175
|
+
// Handle optional fields
|
|
176
|
+
if (value === undefined) {
|
|
177
|
+
if (!field.isOptional) {
|
|
178
|
+
errors.push(ErrorHandler.createMissingFieldError([field.fieldName], field.fieldName));
|
|
179
|
+
}
|
|
180
|
+
else if (field.hasDefault) {
|
|
181
|
+
validatedData[field.fieldName] = field.defaultValue;
|
|
182
|
+
}
|
|
183
|
+
continue;
|
|
184
|
+
}
|
|
154
185
|
const result = field.validator(value);
|
|
155
186
|
if (!result.success) {
|
|
156
187
|
// Add field path to errors
|
|
@@ -170,6 +201,16 @@ class SchemaPrecompiler {
|
|
|
170
201
|
// OPTIMIZED: Process nested fields last
|
|
171
202
|
for (const field of nestedFields) {
|
|
172
203
|
const value = data[field.fieldName];
|
|
204
|
+
// Handle optional fields
|
|
205
|
+
if (value === undefined) {
|
|
206
|
+
if (!field.isOptional) {
|
|
207
|
+
errors.push(ErrorHandler.createMissingFieldError([field.fieldName], field.fieldName));
|
|
208
|
+
}
|
|
209
|
+
else if (field.hasDefault) {
|
|
210
|
+
validatedData[field.fieldName] = field.defaultValue;
|
|
211
|
+
}
|
|
212
|
+
continue;
|
|
213
|
+
}
|
|
173
214
|
const result = field.validator(value);
|
|
174
215
|
if (!result.success) {
|
|
175
216
|
// Add field path to errors
|
|
@@ -277,6 +318,14 @@ class SchemaPrecompiler {
|
|
|
277
318
|
* Compile a single field with maximum optimization
|
|
278
319
|
*/
|
|
279
320
|
static compileField(fieldName, fieldType, options, depth = 0) {
|
|
321
|
+
// Handle OptionalSchemaInterface wrapper (used by Mod.deepPartial and Mod.makeOptional)
|
|
322
|
+
if (TypeGuards.isOptionalSchemaInterface(fieldType)) {
|
|
323
|
+
const compilation = this.compileField(fieldName, fieldType.schema, options, depth);
|
|
324
|
+
return {
|
|
325
|
+
...compilation,
|
|
326
|
+
isOptional: true,
|
|
327
|
+
};
|
|
328
|
+
}
|
|
280
329
|
// Handle nested objects properly
|
|
281
330
|
if (typeof fieldType === "object" &&
|
|
282
331
|
fieldType !== null &&
|