| 
									
										
										
										
											2022-05-06 11:18:06 -08:00
										 |  |  | import { BaseAPI } from "../_base"; | 
					
						
							| 
									
										
										
										
											2022-05-21 21:22:02 +02:00
										 |  |  | import { ValidationResponse } from "~/types/api-types/response"; | 
					
						
							| 
									
										
										
										
											2022-05-06 11:18:06 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | const prefix = "/api"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | const routes = { | 
					
						
							|  |  |  |   group: (name: string) => `${prefix}/validators/group?name=${name}`, | 
					
						
							|  |  |  |   user: (name: string) => `${prefix}/validators/user/name?name=${name}`, | 
					
						
							|  |  |  |   email: (name: string) => `${prefix}/validators/user/email?email=${name}`, | 
					
						
							|  |  |  |   recipe: (groupId: string, name: string) => `${prefix}/validators/group/recipe?group_id=${groupId}?name=${name}`, | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export class ValidatorsApi extends BaseAPI { | 
					
						
							|  |  |  |   async group(name: string) { | 
					
						
							| 
									
										
										
										
											2022-05-21 21:22:02 +02:00
										 |  |  |     return await this.requests.get<ValidationResponse>(routes.group(name)); | 
					
						
							| 
									
										
										
										
											2022-05-06 11:18:06 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   async username(name: string) { | 
					
						
							| 
									
										
										
										
											2022-05-21 21:22:02 +02:00
										 |  |  |     return await this.requests.get<ValidationResponse>(routes.user(name)); | 
					
						
							| 
									
										
										
										
											2022-05-06 11:18:06 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   async email(email: string) { | 
					
						
							| 
									
										
										
										
											2022-05-21 21:22:02 +02:00
										 |  |  |     return await this.requests.get<ValidationResponse>(routes.email(email)); | 
					
						
							| 
									
										
										
										
											2022-05-06 11:18:06 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   async recipe(groupId: string, name: string) { | 
					
						
							| 
									
										
										
										
											2022-05-21 21:22:02 +02:00
										 |  |  |     return await this.requests.get<ValidationResponse>(routes.recipe(groupId, name)); | 
					
						
							| 
									
										
										
										
											2022-05-06 11:18:06 -08:00
										 |  |  |   } | 
					
						
							|  |  |  | } |