reliant-type 1.0.0
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/LICENSE +21 -0
- package/README.md +1305 -0
- package/dist/cjs/constants/SECURITY_CONSTANTS.js +49 -0
- package/dist/cjs/constants/SECURITY_CONSTANTS.js.map +1 -0
- package/dist/cjs/constants/VALIDATION_CONSTANTS.js +103 -0
- package/dist/cjs/constants/VALIDATION_CONSTANTS.js.map +1 -0
- package/dist/cjs/core/schema/extensions/SmartInference.js +200 -0
- package/dist/cjs/core/schema/extensions/SmartInference.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/Docs.js +100 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/Docs.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/DocumentationGenerator.js +192 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/DocumentationGenerator.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/InteractiveDocumentationGenerator.js +174 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/InteractiveDocumentationGenerator.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/SchemaAnalyzer.js +54 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/SchemaAnalyzer.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/TypeScriptGenerator.js +50 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/TypeScriptGenerator.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/index.js +15 -0
- package/dist/cjs/core/schema/extensions/components/AutoDocumentation/index.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/ConditionalBuilder.js +70 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/ConditionalBuilder.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/ConditionalElse.js +40 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/ConditionalElse.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/ConditionalThen.js +19 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/ConditionalThen.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/MultiConditionalBuilder.js +20 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/MultiConditionalBuilder.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/MultiConditionalThen.js +49 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/MultiConditionalThen.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/index.js +98 -0
- package/dist/cjs/core/schema/extensions/components/ConditionalValidation/index.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/FormValidator.js +85 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/FormValidator.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/LiveValidator.js +133 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/LiveValidator.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/StreamValidator.js +351 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/StreamValidator.js.map +1 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/index.js +109 -0
- package/dist/cjs/core/schema/extensions/components/RealtimeValidation/index.js.map +1 -0
- package/dist/cjs/core/schema/extensions/index.js +61 -0
- package/dist/cjs/core/schema/extensions/index.js.map +1 -0
- package/dist/cjs/core/schema/extensions/mods/index.js +51 -0
- package/dist/cjs/core/schema/extensions/mods/index.js.map +1 -0
- package/dist/cjs/core/schema/extensions/mods/openapi-converter.js +227 -0
- package/dist/cjs/core/schema/extensions/mods/openapi-converter.js.map +1 -0
- package/dist/cjs/core/schema/extensions/mods/typescript-generator.js +287 -0
- package/dist/cjs/core/schema/extensions/mods/typescript-generator.js.map +1 -0
- package/dist/cjs/core/schema/extensions/mods/validation-engine.js +224 -0
- package/dist/cjs/core/schema/extensions/mods/validation-engine.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/Interface.js +277 -0
- package/dist/cjs/core/schema/mode/interfaces/Interface.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/InterfaceSchema.js +1431 -0
- package/dist/cjs/core/schema/mode/interfaces/InterfaceSchema.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/evaluator/ConditionalEvaluator.js +520 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/evaluator/ConditionalEvaluator.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/parser/ConditionalAST.js +624 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/parser/ConditionalAST.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/parser/ConditionalLexer.js +811 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/parser/ConditionalLexer.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/parser/ConditionalParser.js +599 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/parser/ConditionalParser.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/types/ConditionalTypes.js +89 -0
- package/dist/cjs/core/schema/mode/interfaces/conditional/types/ConditionalTypes.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/errors/ErrorHandler.js +356 -0
- package/dist/cjs/core/schema/mode/interfaces/errors/ErrorHandler.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/errors/types/errors.type.js +80 -0
- package/dist/cjs/core/schema/mode/interfaces/errors/types/errors.type.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +778 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js +523 -0
- package/dist/cjs/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/ConditionalTypes.js +681 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/ConditionalTypes.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/IDESupport.js +430 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/IDESupport.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/TypeInference.js +225 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/TypeInference.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/index.js +44 -0
- package/dist/cjs/core/schema/mode/interfaces/typescript/index.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/ConstraintParser.js +1134 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/ConstraintParser.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeGuards.js +256 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeGuards.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeValidators.js +429 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/TypeValidators.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/UnionCache.js +404 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/UnionCache.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/ValidationHelpers.js +851 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/ValidationHelpers.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/passValidator.js +262 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/passValidator.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/securityValidator.js +887 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/securityValidator.js.map +1 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/urlValidation.js +191 -0
- package/dist/cjs/core/schema/mode/interfaces/validators/mods/urlValidation.js.map +1 -0
- package/dist/cjs/core/schema/optimization/ObjectValidationCache.js +462 -0
- package/dist/cjs/core/schema/optimization/ObjectValidationCache.js.map +1 -0
- package/dist/cjs/core/schema/optimization/PerformanceMonitor.js +773 -0
- package/dist/cjs/core/schema/optimization/PerformanceMonitor.js.map +1 -0
- package/dist/cjs/core/schema/optimization/SchemaCompiler.js +600 -0
- package/dist/cjs/core/schema/optimization/SchemaCompiler.js.map +1 -0
- package/dist/cjs/core/types/ValidatorTypes.js +70 -0
- package/dist/cjs/core/types/ValidatorTypes.js.map +1 -0
- package/dist/cjs/core/types/parser.type.js +12 -0
- package/dist/cjs/core/types/parser.type.js.map +1 -0
- package/dist/cjs/core/utils/Make.js +61 -0
- package/dist/cjs/core/utils/Make.js.map +1 -0
- package/dist/cjs/core/utils/Mod.js +1033 -0
- package/dist/cjs/core/utils/Mod.js.map +1 -0
- package/dist/cjs/core/utils/UrlArgs.js +102 -0
- package/dist/cjs/core/utils/UrlArgs.js.map +1 -0
- package/dist/cjs/core/utils/arrayToEnum.js +18 -0
- package/dist/cjs/core/utils/arrayToEnum.js.map +1 -0
- package/dist/cjs/core/utils/createUrlArgsEnumFArray.js +13 -0
- package/dist/cjs/core/utils/createUrlArgsEnumFArray.js.map +1 -0
- package/dist/cjs/core/utils/securityHelpers.js +215 -0
- package/dist/cjs/core/utils/securityHelpers.js.map +1 -0
- package/dist/cjs/core/utils/securityValidatorHelpers.js +65 -0
- package/dist/cjs/core/utils/securityValidatorHelpers.js.map +1 -0
- package/dist/cjs/index.js +31 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/esm/constants/SECURITY_CONSTANTS.js +47 -0
- package/dist/esm/constants/SECURITY_CONSTANTS.js.map +1 -0
- package/dist/esm/constants/VALIDATION_CONSTANTS.js +98 -0
- package/dist/esm/constants/VALIDATION_CONSTANTS.js.map +1 -0
- package/dist/esm/core/schema/extensions/SmartInference.js +197 -0
- package/dist/esm/core/schema/extensions/SmartInference.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/Docs.js +98 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/Docs.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/DocumentationGenerator.js +190 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/DocumentationGenerator.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/InteractiveDocumentationGenerator.js +172 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/InteractiveDocumentationGenerator.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/SchemaAnalyzer.js +52 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/SchemaAnalyzer.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/TypeScriptGenerator.js +48 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/TypeScriptGenerator.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/index.js +12 -0
- package/dist/esm/core/schema/extensions/components/AutoDocumentation/index.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/ConditionalBuilder.js +68 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/ConditionalBuilder.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/ConditionalElse.js +38 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/ConditionalElse.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/ConditionalThen.js +17 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/ConditionalThen.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/MultiConditionalBuilder.js +18 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/MultiConditionalBuilder.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/MultiConditionalThen.js +45 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/MultiConditionalThen.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/index.js +92 -0
- package/dist/esm/core/schema/extensions/components/ConditionalValidation/index.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/FormValidator.js +83 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/FormValidator.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/LiveValidator.js +131 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/LiveValidator.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/StreamValidator.js +349 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/StreamValidator.js.map +1 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/index.js +103 -0
- package/dist/esm/core/schema/extensions/components/RealtimeValidation/index.js.map +1 -0
- package/dist/esm/core/schema/extensions/index.js +53 -0
- package/dist/esm/core/schema/extensions/index.js.map +1 -0
- package/dist/esm/core/schema/extensions/mods/index.js +47 -0
- package/dist/esm/core/schema/extensions/mods/index.js.map +1 -0
- package/dist/esm/core/schema/extensions/mods/openapi-converter.js +225 -0
- package/dist/esm/core/schema/extensions/mods/openapi-converter.js.map +1 -0
- package/dist/esm/core/schema/extensions/mods/typescript-generator.js +284 -0
- package/dist/esm/core/schema/extensions/mods/typescript-generator.js.map +1 -0
- package/dist/esm/core/schema/extensions/mods/validation-engine.js +222 -0
- package/dist/esm/core/schema/extensions/mods/validation-engine.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/Interface.js +269 -0
- package/dist/esm/core/schema/mode/interfaces/Interface.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/InterfaceSchema.js +1429 -0
- package/dist/esm/core/schema/mode/interfaces/InterfaceSchema.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/evaluator/ConditionalEvaluator.js +518 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/evaluator/ConditionalEvaluator.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/parser/ConditionalAST.js +620 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/parser/ConditionalAST.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/parser/ConditionalLexer.js +809 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/parser/ConditionalLexer.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/parser/ConditionalParser.js +597 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/parser/ConditionalParser.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/types/ConditionalTypes.js +89 -0
- package/dist/esm/core/schema/mode/interfaces/conditional/types/ConditionalTypes.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/errors/ErrorHandler.js +354 -0
- package/dist/esm/core/schema/mode/interfaces/errors/ErrorHandler.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/errors/types/errors.type.js +80 -0
- package/dist/esm/core/schema/mode/interfaces/errors/types/errors.type.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js +776 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/FieldPrecompilers.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js +521 -0
- package/dist/esm/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/ConditionalTypes.js +681 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/ConditionalTypes.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/IDESupport.js +428 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/IDESupport.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/TypeInference.js +223 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/TypeInference.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/index.js +35 -0
- package/dist/esm/core/schema/mode/interfaces/typescript/index.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/ConstraintParser.js +1132 -0
- package/dist/esm/core/schema/mode/interfaces/validators/ConstraintParser.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/TypeGuards.js +254 -0
- package/dist/esm/core/schema/mode/interfaces/validators/TypeGuards.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/TypeValidators.js +427 -0
- package/dist/esm/core/schema/mode/interfaces/validators/TypeValidators.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/UnionCache.js +400 -0
- package/dist/esm/core/schema/mode/interfaces/validators/UnionCache.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/ValidationHelpers.js +849 -0
- package/dist/esm/core/schema/mode/interfaces/validators/ValidationHelpers.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/mods/passValidator.js +260 -0
- package/dist/esm/core/schema/mode/interfaces/validators/mods/passValidator.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/mods/securityValidator.js +881 -0
- package/dist/esm/core/schema/mode/interfaces/validators/mods/securityValidator.js.map +1 -0
- package/dist/esm/core/schema/mode/interfaces/validators/mods/urlValidation.js +189 -0
- package/dist/esm/core/schema/mode/interfaces/validators/mods/urlValidation.js.map +1 -0
- package/dist/esm/core/schema/optimization/ObjectValidationCache.js +460 -0
- package/dist/esm/core/schema/optimization/ObjectValidationCache.js.map +1 -0
- package/dist/esm/core/schema/optimization/PerformanceMonitor.js +771 -0
- package/dist/esm/core/schema/optimization/PerformanceMonitor.js.map +1 -0
- package/dist/esm/core/schema/optimization/SchemaCompiler.js +598 -0
- package/dist/esm/core/schema/optimization/SchemaCompiler.js.map +1 -0
- package/dist/esm/core/types/ValidatorTypes.js +65 -0
- package/dist/esm/core/types/ValidatorTypes.js.map +1 -0
- package/dist/esm/core/types/parser.type.js +12 -0
- package/dist/esm/core/types/parser.type.js.map +1 -0
- package/dist/esm/core/utils/Make.js +59 -0
- package/dist/esm/core/utils/Make.js.map +1 -0
- package/dist/esm/core/utils/Mod.js +1031 -0
- package/dist/esm/core/utils/Mod.js.map +1 -0
- package/dist/esm/core/utils/UrlArgs.js +98 -0
- package/dist/esm/core/utils/UrlArgs.js.map +1 -0
- package/dist/esm/core/utils/arrayToEnum.js +16 -0
- package/dist/esm/core/utils/arrayToEnum.js.map +1 -0
- package/dist/esm/core/utils/createUrlArgsEnumFArray.js +11 -0
- package/dist/esm/core/utils/createUrlArgsEnumFArray.js.map +1 -0
- package/dist/esm/core/utils/securityHelpers.js +207 -0
- package/dist/esm/core/utils/securityHelpers.js.map +1 -0
- package/dist/esm/core/utils/securityValidatorHelpers.js +62 -0
- package/dist/esm/core/utils/securityValidatorHelpers.js.map +1 -0
- package/dist/esm/index.js +12 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/schema.d.ts +2595 -0
- package/docs/ALL_TYPES.md +120 -0
- package/docs/API-STABILITY.md +336 -0
- package/docs/CONDITIONAL-VALIDATION.md +637 -0
- package/docs/EXAMPLES.md +876 -0
- package/docs/FIELD-TYPES.md +829 -0
- package/docs/GETTING-STARTED.md +394 -0
- package/docs/LIVE-UTILITY.md +1137 -0
- package/docs/QUICK-REFERENCE.md +346 -0
- package/docs/README.md +205 -0
- package/docs/VSCODE-EXTENSION.md +458 -0
- package/package.json +219 -0
- package/src/bench/BENCHMARK-RESULTS.md +211 -0
- package/src/bench/benchmark-results.json +148 -0
- package/src/bench/performance-comparison.ts +218 -0
- package/src/bench/precompilation-benchmark.ts +218 -0
- package/src/constants/SECURITY_CONSTANTS.ts +44 -0
- package/src/constants/VALIDATION_CONSTANTS.ts +176 -0
- package/src/core/README.md +395 -0
- package/src/core/compiler/SchemaTransformer.ts +279 -0
- package/src/core/compiler/TypeAnalyzer.ts +378 -0
- package/src/core/compiler/TypeScriptCompilerIntegration.ts +220 -0
- package/src/core/compiler/TypeToSchemaConverter.ts +288 -0
- package/src/core/index.ts +70 -0
- package/src/core/schema/extensions/AutoDocumentation.ts +572 -0
- package/src/core/schema/extensions/ConditionalValidation.ts +330 -0
- package/src/core/schema/extensions/README.md +171 -0
- package/src/core/schema/extensions/RealtimeValidation.ts +656 -0
- package/src/core/schema/extensions/SmartInference.ts +224 -0
- package/src/core/schema/extensions/components/AutoDocumentation/Docs.ts +98 -0
- package/src/core/schema/extensions/components/AutoDocumentation/DocumentationGenerator.ts +201 -0
- package/src/core/schema/extensions/components/AutoDocumentation/InteractiveDocumentationGenerator.ts +176 -0
- package/src/core/schema/extensions/components/AutoDocumentation/OpenAPIGenerator.ts +175 -0
- package/src/core/schema/extensions/components/AutoDocumentation/SchemaAnalyzer.ts +49 -0
- package/src/core/schema/extensions/components/AutoDocumentation/TypeScriptGenerator.ts +54 -0
- package/src/core/schema/extensions/components/AutoDocumentation/index.ts +17 -0
- package/src/core/schema/extensions/components/ConditionalValidation/ConditionalBuilder.ts +101 -0
- package/src/core/schema/extensions/components/ConditionalValidation/ConditionalElse.ts +65 -0
- package/src/core/schema/extensions/components/ConditionalValidation/ConditionalThen.ts +33 -0
- package/src/core/schema/extensions/components/ConditionalValidation/Extend.ts +75 -0
- package/src/core/schema/extensions/components/ConditionalValidation/MultiConditionalBuilder.ts +16 -0
- package/src/core/schema/extensions/components/ConditionalValidation/MultiConditionalThen.ts +50 -0
- package/src/core/schema/extensions/components/ConditionalValidation/index.ts +104 -0
- package/src/core/schema/extensions/components/RealtimeValidation/FormValidator.ts +88 -0
- package/src/core/schema/extensions/components/RealtimeValidation/LiveValidator.ts +171 -0
- package/src/core/schema/extensions/components/RealtimeValidation/StreamValidator.ts +397 -0
- package/src/core/schema/extensions/components/RealtimeValidation/index.ts +114 -0
- package/src/core/schema/extensions/index.ts +76 -0
- package/src/core/schema/extensions/mods/index.ts +131 -0
- package/src/core/schema/extensions/mods/openapi-converter.ts +338 -0
- package/src/core/schema/extensions/mods/typescript-generator.ts +379 -0
- package/src/core/schema/extensions/mods/validation-engine.ts +295 -0
- package/src/core/schema/mode/interfaces/Interface.ts +364 -0
- package/src/core/schema/mode/interfaces/InterfaceSchema.ts +1838 -0
- package/src/core/schema/mode/interfaces/README.md +278 -0
- package/src/core/schema/mode/interfaces/conditional/evaluator/ConditionalEvaluator.ts +657 -0
- package/src/core/schema/mode/interfaces/conditional/parser/ConditionalAST.ts +826 -0
- package/src/core/schema/mode/interfaces/conditional/parser/ConditionalLexer.ts +992 -0
- package/src/core/schema/mode/interfaces/conditional/parser/ConditionalParser.ts +803 -0
- package/src/core/schema/mode/interfaces/conditional/parser/readme.md +406 -0
- package/src/core/schema/mode/interfaces/conditional/types/ConditionalTypes.ts +273 -0
- package/src/core/schema/mode/interfaces/errors/ErrorHandler.ts +624 -0
- package/src/core/schema/mode/interfaces/errors/types/errors.type.ts +102 -0
- package/src/core/schema/mode/interfaces/precompilation/FieldPrecompilers.ts +962 -0
- package/src/core/schema/mode/interfaces/precompilation/SchemaPrecompiler.ts +667 -0
- package/src/core/schema/mode/interfaces/typescript/ConditionalTypes.ts +1534 -0
- package/src/core/schema/mode/interfaces/typescript/IDESupport.ts +534 -0
- package/src/core/schema/mode/interfaces/typescript/TypeInference.ts +737 -0
- package/src/core/schema/mode/interfaces/typescript/index.ts +92 -0
- package/src/core/schema/mode/interfaces/validators/ConstraintParser.ts +1438 -0
- package/src/core/schema/mode/interfaces/validators/EnhancedErrorReporting.ts +227 -0
- package/src/core/schema/mode/interfaces/validators/TypeGuards.ts +288 -0
- package/src/core/schema/mode/interfaces/validators/TypeValidators.ts +660 -0
- package/src/core/schema/mode/interfaces/validators/UnionCache.ts +508 -0
- package/src/core/schema/mode/interfaces/validators/ValidationHelpers.ts +1257 -0
- package/src/core/schema/mode/interfaces/validators/index.ts +21 -0
- package/src/core/schema/mode/interfaces/validators/mods/passValidator.ts +424 -0
- package/src/core/schema/mode/interfaces/validators/mods/securityValidator.ts +1634 -0
- package/src/core/schema/mode/interfaces/validators/mods/urlValidation.ts +333 -0
- package/src/core/schema/optimization/ObjectValidationCache.ts +560 -0
- package/src/core/schema/optimization/PerformanceInitializer.ts +188 -0
- package/src/core/schema/optimization/PerformanceMonitor.ts +898 -0
- package/src/core/schema/optimization/SchemaCompiler.ts +730 -0
- package/src/core/testing/TestDataGenerator.ts +590 -0
- package/src/core/types/SchemaValidator.type.ts +210 -0
- package/src/core/types/ValidatorTypes.ts +93 -0
- package/src/core/types/extension.type.ts +109 -0
- package/src/core/types/objValidationCache.ts +17 -0
- package/src/core/types/parser.type.ts +15 -0
- package/src/core/types/perfoMonitor.ts +37 -0
- package/src/core/types/scompiler.ts +22 -0
- package/src/core/types/securityValidator.type.ts +10 -0
- package/src/core/types/types.ts +154 -0
- package/src/core/utils/Make.ts +97 -0
- package/src/core/utils/Mod.ts +1168 -0
- package/src/core/utils/UrlArgs.ts +124 -0
- package/src/core/utils/arrayToEnum.ts +89 -0
- package/src/core/utils/createUrlArgsEnumFArray.ts +11 -0
- package/src/core/utils/securityHelpers.ts +341 -0
- package/src/core/utils/securityValidatorHelpers.ts +76 -0
- package/src/index.ts +124 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConditionalParser.js","sources":["../../../../../../../../src/core/schema/mode/interfaces/conditional/parser/ConditionalParser.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for enhanced conditional validation system
|
|
3
|
+
*/
|
|
4
|
+
// Token types for lexical analysis
|
|
5
|
+
var TokenType;
|
|
6
|
+
(function (TokenType) {
|
|
7
|
+
// Keywords
|
|
8
|
+
TokenType["WHEN"] = "WHEN";
|
|
9
|
+
// Operators
|
|
10
|
+
TokenType["EQUALS"] = "EQUALS";
|
|
11
|
+
TokenType["NOT_EQUALS"] = "NOT_EQUALS";
|
|
12
|
+
TokenType["GREATER_THAN"] = "GREATER_THAN";
|
|
13
|
+
TokenType["GREATER_EQUAL"] = "GREATER_EQUAL";
|
|
14
|
+
TokenType["LESS_THAN"] = "LESS_THAN";
|
|
15
|
+
TokenType["LESS_EQUAL"] = "LESS_EQUAL";
|
|
16
|
+
TokenType["MATCHES"] = "MATCHES";
|
|
17
|
+
TokenType["NOT_MATCHES"] = "NOT_MATCHES";
|
|
18
|
+
// Logical operators
|
|
19
|
+
TokenType["AND"] = "AND";
|
|
20
|
+
TokenType["OR"] = "OR";
|
|
21
|
+
TokenType["NOT"] = "NOT";
|
|
22
|
+
// State operators
|
|
23
|
+
TokenType["NOT_EXISTS"] = "NOT_EXISTS";
|
|
24
|
+
TokenType["NOT_EMPTY"] = "NOT_EMPTY";
|
|
25
|
+
TokenType["NOT_NULL"] = "NOT_NULL";
|
|
26
|
+
// Method operators
|
|
27
|
+
TokenType["IN"] = "IN";
|
|
28
|
+
TokenType["NOT_IN"] = "NOT_IN";
|
|
29
|
+
TokenType["EXISTS"] = "EXISTS";
|
|
30
|
+
TokenType["EMPTY"] = "EMPTY";
|
|
31
|
+
TokenType["NULL"] = "NULL";
|
|
32
|
+
TokenType["CONTAINS"] = "CONTAINS";
|
|
33
|
+
TokenType["NOT_CONTAINS"] = "NOT_CONTAINS";
|
|
34
|
+
TokenType["STARTS_WITH"] = "STARTS_WITH";
|
|
35
|
+
TokenType["ENDS_WITH"] = "ENDS_WITH";
|
|
36
|
+
TokenType["BETWEEN"] = "BETWEEN";
|
|
37
|
+
// Conditional syntax
|
|
38
|
+
TokenType["CONDITIONAL_THEN"] = "CONDITIONAL_THEN";
|
|
39
|
+
TokenType["COLON"] = "COLON";
|
|
40
|
+
// Grouping
|
|
41
|
+
TokenType["LPAREN"] = "LPAREN";
|
|
42
|
+
TokenType["RPAREN"] = "RPAREN";
|
|
43
|
+
TokenType["LBRACKET"] = "LBRACKET";
|
|
44
|
+
TokenType["RBRACKET"] = "RBRACKET";
|
|
45
|
+
TokenType["LBRACE"] = "LBRACE";
|
|
46
|
+
TokenType["RBRACE"] = "RBRACE";
|
|
47
|
+
// Values
|
|
48
|
+
TokenType["IDENTIFIER"] = "IDENTIFIER";
|
|
49
|
+
TokenType["STRING"] = "STRING";
|
|
50
|
+
TokenType["NUMBER"] = "NUMBER";
|
|
51
|
+
TokenType["BOOLEAN"] = "BOOLEAN";
|
|
52
|
+
TokenType["CONSTANT"] = "CONSTANT";
|
|
53
|
+
// Separators
|
|
54
|
+
TokenType["COMMA"] = "COMMA";
|
|
55
|
+
TokenType["DOT"] = "DOT";
|
|
56
|
+
TokenType["PIPE"] = "PIPE";
|
|
57
|
+
TokenType["CARET"] = "CARET";
|
|
58
|
+
TokenType["DOLLAR"] = "DOLLAR";
|
|
59
|
+
TokenType["AT"] = "AT";
|
|
60
|
+
// Special
|
|
61
|
+
TokenType["EOF"] = "EOF";
|
|
62
|
+
TokenType["WHITESPACE"] = "WHITESPACE";
|
|
63
|
+
TokenType["UNKNOWN"] = "UNKNOWN";
|
|
64
|
+
TokenType["REGEX_PATTERN"] = "REGEX_PATTERN";
|
|
65
|
+
})(TokenType || (TokenType = {}));
|
|
66
|
+
// AST Node types
|
|
67
|
+
var ASTNodeType;
|
|
68
|
+
(function (ASTNodeType) {
|
|
69
|
+
ASTNodeType["CONDITIONAL"] = "CONDITIONAL";
|
|
70
|
+
ASTNodeType["CONDITION"] = "CONDITION";
|
|
71
|
+
ASTNodeType["LOGICAL_EXPRESSION"] = "LOGICAL_EXPRESSION";
|
|
72
|
+
ASTNodeType["COMPARISON"] = "COMPARISON";
|
|
73
|
+
ASTNodeType["METHOD_CALL"] = "METHOD_CALL";
|
|
74
|
+
ASTNodeType["FIELD_ACCESS"] = "FIELD_ACCESS";
|
|
75
|
+
ASTNodeType["LITERAL"] = "LITERAL";
|
|
76
|
+
ASTNodeType["CONSTANT"] = "CONSTANT";
|
|
77
|
+
ASTNodeType["ARRAY"] = "ARRAY";
|
|
78
|
+
})(ASTNodeType || (ASTNodeType = {}));
|
|
79
|
+
// Error types
|
|
80
|
+
var ErrorType;
|
|
81
|
+
(function (ErrorType) {
|
|
82
|
+
ErrorType["SYNTAX_ERROR"] = "SYNTAX_ERROR";
|
|
83
|
+
ErrorType["SEMANTIC_ERROR"] = "SEMANTIC_ERROR";
|
|
84
|
+
ErrorType["EVALUATION_ERROR"] = "EVALUATION_ERROR";
|
|
85
|
+
ErrorType["TYPE_ERROR"] = "TYPE_ERROR";
|
|
86
|
+
})(ErrorType || (ErrorType = {}));
|
|
87
|
+
|
|
88
|
+
export { ASTNodeType, ErrorType, TokenType };
|
|
89
|
+
//# sourceMappingURL=ConditionalTypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConditionalTypes.js","sources":["../../../../../../../../src/core/schema/mode/interfaces/conditional/types/ConditionalTypes.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
import { ErrorCode } from './types/errors.type.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Centralized Error Handler Module
|
|
5
|
+
*
|
|
6
|
+
* Provides a unified system for creating, formatting, and managing validation errors.
|
|
7
|
+
* This makes error handling consistent across the codebase and easier to modify in the future.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Centralized error handler class with enhanced functionality
|
|
11
|
+
*/
|
|
12
|
+
class ErrorHandler {
|
|
13
|
+
/**
|
|
14
|
+
* Normalize and validate path input
|
|
15
|
+
*/
|
|
16
|
+
static normalizePath(path) {
|
|
17
|
+
if (typeof path === "string") {
|
|
18
|
+
return path
|
|
19
|
+
.split(".")
|
|
20
|
+
.filter((segment) => segment.length > 0)
|
|
21
|
+
.slice(0, this.DEFAULT_CONFIG.maxPathDepth);
|
|
22
|
+
}
|
|
23
|
+
if (Array.isArray(path)) {
|
|
24
|
+
return path
|
|
25
|
+
.filter((segment) => typeof segment === "string" && segment.length > 0)
|
|
26
|
+
.slice(0, this.DEFAULT_CONFIG.maxPathDepth);
|
|
27
|
+
}
|
|
28
|
+
return [];
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Sanitize and truncate message content
|
|
32
|
+
*/
|
|
33
|
+
static sanitizeMessage(message) {
|
|
34
|
+
if (typeof message !== "string") {
|
|
35
|
+
message = String(message);
|
|
36
|
+
}
|
|
37
|
+
// Remove potentially harmful characters and excessive whitespace
|
|
38
|
+
const sanitized = message
|
|
39
|
+
.replace(/[\x00-\x1F\x7F]/g, "") // Remove control characters
|
|
40
|
+
.replace(/\s+/g, " ") // Normalize whitespace
|
|
41
|
+
.trim();
|
|
42
|
+
// Truncate if too long
|
|
43
|
+
return sanitized.length > this.DEFAULT_CONFIG.maxMessageLength
|
|
44
|
+
? sanitized.substring(0, this.DEFAULT_CONFIG.maxMessageLength - 3) + "..."
|
|
45
|
+
: sanitized;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Enhanced value type detection with better precision
|
|
49
|
+
*/
|
|
50
|
+
static detectValueType(value) {
|
|
51
|
+
// Handle primitive null/undefined first
|
|
52
|
+
if (value === null)
|
|
53
|
+
return "null";
|
|
54
|
+
if (value === undefined)
|
|
55
|
+
return "undefined";
|
|
56
|
+
// Handle built-in objects with instanceof checks
|
|
57
|
+
const builtInChecks = [
|
|
58
|
+
[Array, "array"],
|
|
59
|
+
[Date, "date"],
|
|
60
|
+
[RegExp, "regexp"],
|
|
61
|
+
[Error, "error"],
|
|
62
|
+
[Map, "map"],
|
|
63
|
+
[Set, "set"],
|
|
64
|
+
[WeakMap, "weakmap"],
|
|
65
|
+
[WeakSet, "weakset"],
|
|
66
|
+
[Promise, "promise"],
|
|
67
|
+
];
|
|
68
|
+
for (const [constructor, typeName] of builtInChecks) {
|
|
69
|
+
if (value instanceof constructor) {
|
|
70
|
+
return typeName;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// Handle primitives and functions
|
|
74
|
+
const primitiveType = typeof value;
|
|
75
|
+
return this.TYPE_MAPPING.get(primitiveType) || primitiveType;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Create a validation error object with standardized format
|
|
79
|
+
*/
|
|
80
|
+
static createError(path, message, code, expected, received, context) {
|
|
81
|
+
const normalizedPath = this.normalizePath(path);
|
|
82
|
+
const sanitizedMessage = this.sanitizeMessage(message);
|
|
83
|
+
const detectedType = this.detectValueType(received);
|
|
84
|
+
return {
|
|
85
|
+
path: normalizedPath,
|
|
86
|
+
message: sanitizedMessage,
|
|
87
|
+
code: code,
|
|
88
|
+
expected: typeof expected === "string" ? expected.trim() : "unknown",
|
|
89
|
+
received,
|
|
90
|
+
receivedType: detectedType,
|
|
91
|
+
context: context ? { ...context } : undefined, // Shallow clone for safety
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Create a type error (when value is of wrong type)
|
|
96
|
+
*/
|
|
97
|
+
static createTypeError(path, expected, received) {
|
|
98
|
+
const receivedType = this.detectValueType(received);
|
|
99
|
+
const sanitizedValue = this.sanitizeReceivedValue(received);
|
|
100
|
+
// Create a user-friendly message that includes the actual value
|
|
101
|
+
const message = expected === "phone"
|
|
102
|
+
? `Invalid phone number format: received "${sanitizedValue}" instead of valid phone number`
|
|
103
|
+
: `Expected ${this.capitalizeFirstLetter(expected)}, but received ${this.capitalizeFirstLetter(receivedType)}: "${sanitizedValue}"`;
|
|
104
|
+
return this.createError(path, message, ErrorCode.TYPE_ERROR, expected, received);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Create a string validation error
|
|
108
|
+
*/
|
|
109
|
+
static createStringError(path, constraint, received, code = ErrorCode.INVALID_STRING_FORMAT) {
|
|
110
|
+
const sanitizedConstraint = typeof constraint === "string" ? constraint.trim() : "validation failed";
|
|
111
|
+
return this.createError(path, `String ${sanitizedConstraint}`, code, `string ${sanitizedConstraint}`, received);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Create a number validation error
|
|
115
|
+
*/
|
|
116
|
+
static createNumberError(path, constraint, received, code = ErrorCode.INVALID_TYPE) {
|
|
117
|
+
const sanitizedConstraint = typeof constraint === "string" ? constraint.trim() : "validation failed";
|
|
118
|
+
return this.createError(path, `Number ${sanitizedConstraint}`, code, `number ${sanitizedConstraint}`, received);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Create an array validation error
|
|
122
|
+
*/
|
|
123
|
+
static createArrayError(path, constraint, received, code = ErrorCode.INVALID_TYPE) {
|
|
124
|
+
const sanitizedConstraint = typeof constraint === "string" ? constraint.trim() : "validation failed";
|
|
125
|
+
return this.createError(path, `Array ${sanitizedConstraint}`, code, `array ${sanitizedConstraint}`, received);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Create a URL validation error
|
|
129
|
+
*/
|
|
130
|
+
static createUrlError(path, received, urlType) {
|
|
131
|
+
const sanitizedUrlType = urlType?.trim();
|
|
132
|
+
const expected = sanitizedUrlType ? `url.${sanitizedUrlType}` : "url";
|
|
133
|
+
const message = sanitizedUrlType
|
|
134
|
+
? `Invalid URL format for ${sanitizedUrlType}`
|
|
135
|
+
: "Invalid URL format";
|
|
136
|
+
return this.createError(path, message, ErrorCode.INVALID_URL, expected, received);
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Create an email validation error
|
|
140
|
+
*/
|
|
141
|
+
static createEmailError(path, received, details) {
|
|
142
|
+
const sanitizedDetails = details?.trim();
|
|
143
|
+
const message = sanitizedDetails
|
|
144
|
+
? `Invalid email format: ${sanitizedDetails}`
|
|
145
|
+
: "Invalid email format";
|
|
146
|
+
return this.createError(path, message, ErrorCode.INVALID_EMAIL, "email", received);
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Create a union validation error
|
|
150
|
+
*/
|
|
151
|
+
static createUnionError(path, allowedValues, received) {
|
|
152
|
+
const safeAllowedValues = Array.isArray(allowedValues) ? allowedValues : [];
|
|
153
|
+
const expected = safeAllowedValues
|
|
154
|
+
.map((val) => (typeof val === "string" ? val : String(val)))
|
|
155
|
+
.join(" | ");
|
|
156
|
+
return this.createError(path, `Expected one of: ${expected}`, ErrorCode.INVALID_UNION, expected, received, { allowedValues: safeAllowedValues });
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Get detailed type information for values (legacy method name for compatibility)
|
|
160
|
+
*/
|
|
161
|
+
static getValueType(value) {
|
|
162
|
+
return this.detectValueType(value);
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Convert string errors to ValidationError objects
|
|
166
|
+
* (for backward compatibility)
|
|
167
|
+
*/
|
|
168
|
+
static convertStringToError(error, code) {
|
|
169
|
+
// If it's already a ValidationError object, return as is
|
|
170
|
+
if (this.isValidationError(error)) {
|
|
171
|
+
return error;
|
|
172
|
+
}
|
|
173
|
+
// console.log("converting string to error. Code: ", code);
|
|
174
|
+
// Handle ValidationError-like objects
|
|
175
|
+
if (error &&
|
|
176
|
+
typeof error === "object" &&
|
|
177
|
+
typeof error.message === "string") {
|
|
178
|
+
return this.createError(error.path || [], error.message, code || ErrorCode.VALIDATION_ERROR, error.expected || "unknown", error.received);
|
|
179
|
+
}
|
|
180
|
+
// Convert to string safely
|
|
181
|
+
const errorString = this.extractErrorMessage(error);
|
|
182
|
+
// Extract path if it exists (format: "path: message")
|
|
183
|
+
const pathMatch = errorString.match(/^([^:]+):\s*(.+)$/);
|
|
184
|
+
if (pathMatch) {
|
|
185
|
+
const [, path, message] = pathMatch;
|
|
186
|
+
return this.createError(path.trim(), message.trim(), code, "unknown", undefined);
|
|
187
|
+
}
|
|
188
|
+
// No path found, use generic error
|
|
189
|
+
return this.createError([], errorString, code, "unknown", undefined);
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Check if an object is a valid ValidationError
|
|
193
|
+
*/
|
|
194
|
+
static isValidationError(obj) {
|
|
195
|
+
return (obj &&
|
|
196
|
+
typeof obj === "object" &&
|
|
197
|
+
Array.isArray(obj.path) &&
|
|
198
|
+
typeof obj.message === "string" &&
|
|
199
|
+
typeof obj.code === "string");
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Safely extract error message from various error types
|
|
203
|
+
*/
|
|
204
|
+
static extractErrorMessage(error) {
|
|
205
|
+
if (typeof error === "string") {
|
|
206
|
+
return error;
|
|
207
|
+
}
|
|
208
|
+
if (error && typeof error === "object") {
|
|
209
|
+
if (error.message) {
|
|
210
|
+
return String(error.message);
|
|
211
|
+
}
|
|
212
|
+
if (error.toString && error.toString !== Object.prototype.toString) {
|
|
213
|
+
return error.toString();
|
|
214
|
+
}
|
|
215
|
+
try {
|
|
216
|
+
return JSON.stringify(error);
|
|
217
|
+
}
|
|
218
|
+
catch {
|
|
219
|
+
return "[Object]";
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
return String(error);
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Convert string array to ValidationError array
|
|
226
|
+
* (for backward compatibility)
|
|
227
|
+
*/
|
|
228
|
+
static convertStringArrayToErrors(errors, code) {
|
|
229
|
+
if (!Array.isArray(errors)) {
|
|
230
|
+
return [];
|
|
231
|
+
}
|
|
232
|
+
return errors.map((error) => this.convertStringToError(error, code));
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Create a simple validation error with minimal information
|
|
236
|
+
*/
|
|
237
|
+
static createSimpleError(message, path = [], code = ErrorCode.VALIDATION_ERROR) {
|
|
238
|
+
return this.createError(path, message, code, "valid value", undefined);
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* Create an error for missing required fields
|
|
242
|
+
*/
|
|
243
|
+
static createMissingFieldError(path, fieldName) {
|
|
244
|
+
const sanitizedFieldName = typeof fieldName === "string" ? fieldName.trim() : "unknown";
|
|
245
|
+
return this.createError(path, `Missing required field: ${sanitizedFieldName}`, ErrorCode.MISSING_REQUIRED_FIELD, `required field: ${sanitizedFieldName}`, undefined);
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* create constant error
|
|
249
|
+
*/
|
|
250
|
+
static createConstantError(path, expected, received, constantValue) {
|
|
251
|
+
const safeConstantValue = constantValue !== null && constantValue !== undefined
|
|
252
|
+
? String(constantValue)
|
|
253
|
+
: "null";
|
|
254
|
+
return this.createError(path, `Expected constant value: ${safeConstantValue}, received ${String(received)}`, ErrorCode.CONSTANT_ERROR, `constant: ${safeConstantValue}`, received);
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Create an error for unknown fields
|
|
258
|
+
*/
|
|
259
|
+
static createUnknownFieldError(path, fieldName) {
|
|
260
|
+
const sanitizedFieldName = typeof fieldName === "string" ? fieldName.trim() : "unknown";
|
|
261
|
+
return this.createError(path, `Unknown field: ${sanitizedFieldName}`, ErrorCode.UNKNOWN_FIELD, "known field", fieldName);
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Create an error for invalid fields
|
|
265
|
+
*/
|
|
266
|
+
static createInvalidFieldError(path, fieldName, expected, received) {
|
|
267
|
+
const sanitizedFieldName = typeof fieldName === "string" ? fieldName.trim() : "unknown";
|
|
268
|
+
return this.createError(path, `Invalid field: ${sanitizedFieldName}`, ErrorCode.INVALID_FIELD, expected, received);
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* conditional error
|
|
272
|
+
*/
|
|
273
|
+
static createConditionalError(path, message, received) {
|
|
274
|
+
return this.createError(path, message, ErrorCode.CONDITION_ERROR, "condition met", received);
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Create a syntax error
|
|
278
|
+
*/
|
|
279
|
+
static createSyntaxError(path, message, received) {
|
|
280
|
+
return this.createError(path, message, ErrorCode.SYNTAX_ERROR, "valid syntax", received);
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* password error
|
|
284
|
+
*/
|
|
285
|
+
static createPasswordError(path, message, received) {
|
|
286
|
+
return this.createError(path, message, ErrorCode.INVALID_PASSWORD, "strong password", received);
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* createDateError
|
|
290
|
+
*/
|
|
291
|
+
static createDateError(path, received) {
|
|
292
|
+
return this.createError(path, "Invalid date format", ErrorCode.INVALID_DATE, "valid date format", received);
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* Validation error
|
|
296
|
+
*/
|
|
297
|
+
static createValidationError(path, message, received) {
|
|
298
|
+
// console.log("createValidationError", message);
|
|
299
|
+
return this.createError(path, `Validation failed: ${message}`, ErrorCode.VALIDATION_ERROR, "valid value", received);
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Url components validation error
|
|
303
|
+
*/
|
|
304
|
+
static createUrlCValidationErr(path, message, received) {
|
|
305
|
+
return this.createError(path, message, ErrorCode.INVALID_URL_ARGS, "valid url components", received);
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Safely capitalize first letter of a string
|
|
309
|
+
*/
|
|
310
|
+
static capitalizeFirstLetter(str) {
|
|
311
|
+
if (typeof str !== "string" || str.length === 0) {
|
|
312
|
+
return str;
|
|
313
|
+
}
|
|
314
|
+
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Sanitize received value for safe display in error messages
|
|
318
|
+
*/
|
|
319
|
+
static sanitizeReceivedValue(value) {
|
|
320
|
+
if (value === null)
|
|
321
|
+
return "null";
|
|
322
|
+
if (value === undefined)
|
|
323
|
+
return "undefined";
|
|
324
|
+
if (typeof value === "string") {
|
|
325
|
+
return value.length > 50
|
|
326
|
+
? `"${value.substring(0, 47)}..."`
|
|
327
|
+
: `"${value}"`;
|
|
328
|
+
}
|
|
329
|
+
if (typeof value === "object") {
|
|
330
|
+
return `[${this.detectValueType(value)}]`;
|
|
331
|
+
}
|
|
332
|
+
return String(value);
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
ErrorHandler.DEFAULT_CONFIG = {
|
|
336
|
+
includeReceivedValue: true,
|
|
337
|
+
maxPathDepth: 10,
|
|
338
|
+
maxMessageLength: 500,
|
|
339
|
+
};
|
|
340
|
+
ErrorHandler.TYPE_MAPPING = new Map([
|
|
341
|
+
["object", "Object"],
|
|
342
|
+
["array", "Array"],
|
|
343
|
+
["string", "String"],
|
|
344
|
+
["number", "Number"],
|
|
345
|
+
["boolean", "Boolean"],
|
|
346
|
+
["function", "Function"],
|
|
347
|
+
["symbol", "Symbol"],
|
|
348
|
+
["bigint", "BigInt"],
|
|
349
|
+
["null", "null"],
|
|
350
|
+
["undefined", "undefined"],
|
|
351
|
+
]);
|
|
352
|
+
|
|
353
|
+
export { ErrorHandler };
|
|
354
|
+
//# sourceMappingURL=ErrorHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorHandler.js","sources":["../../../../../../../src/core/schema/mode/interfaces/errors/ErrorHandler.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error codes for different validation scenarios
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Error codes for different validation scenarios
|
|
6
|
+
*/
|
|
7
|
+
var ErrorCode;
|
|
8
|
+
(function (ErrorCode) {
|
|
9
|
+
// Type validation errors
|
|
10
|
+
ErrorCode["TYPE_ERROR"] = "ETYPE";
|
|
11
|
+
ErrorCode["TYPE_MISMATCH"] = "ETYPEMISMATCH";
|
|
12
|
+
ErrorCode["INVALID_TYPE"] = "EINVALIDTYPE";
|
|
13
|
+
// String validation errors
|
|
14
|
+
ErrorCode["STRING_TOO_SHORT"] = "ESTRINGSHORT";
|
|
15
|
+
ErrorCode["STRING_TOO_LONG"] = "ESTRINGLONG";
|
|
16
|
+
ErrorCode["INVALID_STRING_FORMAT"] = "ESTRINGFORMAT";
|
|
17
|
+
ErrorCode["PATTERN_MISMATCH"] = "EPATTERNMISMATCH";
|
|
18
|
+
// Number validation errors
|
|
19
|
+
ErrorCode["NUMBER_TOO_SMALL"] = "ENUMSMALL";
|
|
20
|
+
ErrorCode["NUMBER_TOO_LARGE"] = "ENUMLARGE";
|
|
21
|
+
ErrorCode["NOT_INTEGER"] = "ENOTINTEGER";
|
|
22
|
+
ErrorCode["NOT_POSITIVE"] = "ENOTPOSITIVE";
|
|
23
|
+
ErrorCode["NOT_NEGATIVE"] = "ENOTNEGATIVE";
|
|
24
|
+
// Array validation errors
|
|
25
|
+
ErrorCode["ARRAY_TOO_SHORT"] = "EARRAYSHORT";
|
|
26
|
+
ErrorCode["ARRAY_TOO_LONG"] = "EARRAYLONG";
|
|
27
|
+
ErrorCode["INVALID_ARRAY_ITEM"] = "EARRAYITEM";
|
|
28
|
+
ErrorCode["INVALID_ARRAY_LENGTH"] = "EARRAYLENGTH";
|
|
29
|
+
ErrorCode["DUPLICATE_ARRAY_ITEM"] = "EARRDUPLICATE";
|
|
30
|
+
ErrorCode["ARRAY_VALUES_NOT_UNIQUE"] = "EARRAYNOTUNIQUE";
|
|
31
|
+
// Object validation errors
|
|
32
|
+
ErrorCode["MISSING_REQUIRED_FIELD"] = "EMISSINGFIELD";
|
|
33
|
+
ErrorCode["INVALID_FIELD"] = "EINVALIDFIELD";
|
|
34
|
+
ErrorCode["UNKNOWN_FIELD"] = "EUNKNOWNFIELD";
|
|
35
|
+
// Conditional validation errors
|
|
36
|
+
ErrorCode["CONDITION_ERROR"] = "ECONDITION";
|
|
37
|
+
ErrorCode["SYNTAX_ERROR"] = "ESYNTAX";
|
|
38
|
+
// URL validation errors
|
|
39
|
+
ErrorCode["INVALID_URL"] = "EINVALIDURL";
|
|
40
|
+
ErrorCode["INVALID_URL_ARGUMENT"] = "EINVALIDURLARG";
|
|
41
|
+
// Email validation errors
|
|
42
|
+
ErrorCode["INVALID_EMAIL"] = "EINVALIDEMAIL";
|
|
43
|
+
// Date validation errors
|
|
44
|
+
ErrorCode["INVALID_DATE"] = "EINVALIDDATE";
|
|
45
|
+
ErrorCode["DATE_TOO_EARLY"] = "EDATEEARLY";
|
|
46
|
+
ErrorCode["DATE_TOO_LATE"] = "EDATELATE";
|
|
47
|
+
// Union validation errors
|
|
48
|
+
ErrorCode["INVALID_UNION"] = "EINVALIDUNION";
|
|
49
|
+
// Constant validation errors
|
|
50
|
+
ErrorCode["CONSTANT_ERROR"] = "ECONSTANT";
|
|
51
|
+
// Password validation errors
|
|
52
|
+
ErrorCode["INVALID_PASSWORD"] = "EPWDVIOLATION";
|
|
53
|
+
// JSON validation errors
|
|
54
|
+
ErrorCode["INVALID_JSON"] = "EINVALIDJSON";
|
|
55
|
+
// Security errors
|
|
56
|
+
ErrorCode["SECURITY_VIOLATION"] = "ESECVIOLATION";
|
|
57
|
+
// URL components validation errors
|
|
58
|
+
ErrorCode["INVALID_URL_ARGS"] = "EINVALIDURLARGS";
|
|
59
|
+
// Network and connection errors
|
|
60
|
+
ErrorCode["CONNECTION_REFUSED"] = "ECONNREFUSED";
|
|
61
|
+
ErrorCode["CONNECTION_TIMEOUT"] = "ECONNECTIONTIMEOUT";
|
|
62
|
+
ErrorCode["CONNECTION_RESET"] = "ECONNRESET";
|
|
63
|
+
ErrorCode["NETWORK_UNREACHABLE"] = "ENETUNREACH";
|
|
64
|
+
ErrorCode["HOST_UNREACHABLE"] = "EHOSTUNREACH";
|
|
65
|
+
ErrorCode["ADDRESS_NOT_AVAILABLE"] = "EADDRNOTAVAIL";
|
|
66
|
+
// HTTP errors
|
|
67
|
+
ErrorCode["HTTP_ERROR"] = "EHTTPERROR";
|
|
68
|
+
ErrorCode["REQUEST_TIMEOUT"] = "EREQUESTTIMEOUT";
|
|
69
|
+
ErrorCode["BAD_REQUEST"] = "EBADREQUEST";
|
|
70
|
+
ErrorCode["UNAUTHORIZED"] = "EUNAUTHORIZED";
|
|
71
|
+
ErrorCode["FORBIDDEN"] = "EFORBIDDEN";
|
|
72
|
+
ErrorCode["NOT_FOUND"] = "ENOTFOUND";
|
|
73
|
+
ErrorCode["INTERNAL_SERVER_ERROR"] = "ESERVERERROR";
|
|
74
|
+
// Generic errors
|
|
75
|
+
ErrorCode["VALIDATION_ERROR"] = "EVALIDATION";
|
|
76
|
+
ErrorCode["UNKNOWN_ERROR"] = "EUNKNOWN";
|
|
77
|
+
})(ErrorCode || (ErrorCode = {}));
|
|
78
|
+
|
|
79
|
+
export { ErrorCode };
|
|
80
|
+
//# sourceMappingURL=errors.type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.type.js","sources":["../../../../../../../../src/core/schema/mode/interfaces/errors/types/errors.type.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|