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.2 KiB
						
					
					
				
			
		
		
	
	
							50 lines
						
					
					
						
							1.2 KiB
						
					
					
				| import type {ErrorObject, Vocabulary} from "../../types"
 | |
| import limitNumber, {LimitNumberError} from "./limitNumber"
 | |
| import multipleOf, {MultipleOfError} from "./multipleOf"
 | |
| import limitLength from "./limitLength"
 | |
| import pattern, {PatternError} from "./pattern"
 | |
| import limitProperties from "./limitProperties"
 | |
| import required, {RequiredError} from "./required"
 | |
| import limitItems from "./limitItems"
 | |
| import uniqueItems, {UniqueItemsError} from "./uniqueItems"
 | |
| import constKeyword, {ConstError} from "./const"
 | |
| import enumKeyword, {EnumError} from "./enum"
 | |
| 
 | |
| const validation: Vocabulary = [
 | |
|   // number
 | |
|   limitNumber,
 | |
|   multipleOf,
 | |
|   // string
 | |
|   limitLength,
 | |
|   pattern,
 | |
|   // object
 | |
|   limitProperties,
 | |
|   required,
 | |
|   // array
 | |
|   limitItems,
 | |
|   uniqueItems,
 | |
|   // any
 | |
|   {keyword: "type", schemaType: ["string", "array"]},
 | |
|   {keyword: "nullable", schemaType: "boolean"},
 | |
|   constKeyword,
 | |
|   enumKeyword,
 | |
| ]
 | |
| 
 | |
| export default validation
 | |
| 
 | |
| type LimitError = ErrorObject<
 | |
|   "maxItems" | "minItems" | "minProperties" | "maxProperties" | "minLength" | "maxLength",
 | |
|   {limit: number},
 | |
|   number | {$data: string}
 | |
| >
 | |
| 
 | |
| export type ValidationKeywordError =
 | |
|   | LimitError
 | |
|   | LimitNumberError
 | |
|   | MultipleOfError
 | |
|   | PatternError
 | |
|   | RequiredError
 | |
|   | UniqueItemsError
 | |
|   | ConstError
 | |
|   | EnumError
 |