You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					50 lines
				
				1.5 KiB
			
		
		
			
		
	
	
					50 lines
				
				1.5 KiB
			| 
											3 years ago
										 | "use strict"; | ||
|  | Object.defineProperty(exports, "__esModule", { value: true }); | ||
|  | exports.boolOrEmptySchema = exports.topBoolOrEmptySchema = void 0; | ||
|  | const errors_1 = require("../errors"); | ||
|  | const codegen_1 = require("../codegen"); | ||
|  | const names_1 = require("../names"); | ||
|  | const boolError = { | ||
|  |     message: "boolean schema is false", | ||
|  | }; | ||
|  | function topBoolOrEmptySchema(it) { | ||
|  |     const { gen, schema, validateName } = it; | ||
|  |     if (schema === false) { | ||
|  |         falseSchemaError(it, false); | ||
|  |     } | ||
|  |     else if (typeof schema == "object" && schema.$async === true) { | ||
|  |         gen.return(names_1.default.data); | ||
|  |     } | ||
|  |     else { | ||
|  |         gen.assign((0, codegen_1._) `${validateName}.errors`, null); | ||
|  |         gen.return(true); | ||
|  |     } | ||
|  | } | ||
|  | exports.topBoolOrEmptySchema = topBoolOrEmptySchema; | ||
|  | function boolOrEmptySchema(it, valid) { | ||
|  |     const { gen, schema } = it; | ||
|  |     if (schema === false) { | ||
|  |         gen.var(valid, false); // TODO var
 | ||
|  |         falseSchemaError(it); | ||
|  |     } | ||
|  |     else { | ||
|  |         gen.var(valid, true); // TODO var
 | ||
|  |     } | ||
|  | } | ||
|  | exports.boolOrEmptySchema = boolOrEmptySchema; | ||
|  | function falseSchemaError(it, overrideAllErrors) { | ||
|  |     const { gen, data } = it; | ||
|  |     // TODO maybe some other interface should be used for non-keyword validation errors...
 | ||
|  |     const cxt = { | ||
|  |         gen, | ||
|  |         keyword: "false schema", | ||
|  |         data, | ||
|  |         schema: false, | ||
|  |         schemaCode: false, | ||
|  |         schemaValue: false, | ||
|  |         params: {}, | ||
|  |         it, | ||
|  |     }; | ||
|  |     (0, errors_1.reportError)(cxt, boolError, undefined, overrideAllErrors); | ||
|  | } | ||
|  | //# sourceMappingURL=boolSchema.js.map
 |