| 
									
										
										
										
											2021-12-05 11:55:46 -09:00
										 |  |  | import { BaseCRUDAPI } from "~/api/_base"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | const prefix = "/api"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | const routes = { | 
					
						
							|  |  |  |   shareToken: `${prefix}/shared/recipes`, | 
					
						
							|  |  |  |   shareTokenId: (id: string) => `${prefix}/shared/recipes/${id}`, | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export interface RecipeShareTokenCreate { | 
					
						
							| 
									
										
										
										
											2022-02-13 12:23:42 -09:00
										 |  |  |   recipeId: string; | 
					
						
							| 
									
										
										
										
											2021-12-05 11:55:46 -09:00
										 |  |  |   expiresAt?: Date; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export interface RecipeShareToken { | 
					
						
							| 
									
										
										
										
											2022-02-13 12:23:42 -09:00
										 |  |  |   recipeId: string; | 
					
						
							| 
									
										
										
										
											2021-12-05 11:55:46 -09:00
										 |  |  |   id: string; | 
					
						
							|  |  |  |   groupId: number; | 
					
						
							|  |  |  |   expiresAt: string; | 
					
						
							|  |  |  |   createdAt: string; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export class RecipeShareApi extends BaseCRUDAPI<RecipeShareToken, RecipeShareTokenCreate> { | 
					
						
							|  |  |  |   baseRoute: string = routes.shareToken; | 
					
						
							|  |  |  |   itemRoute = routes.shareTokenId; | 
					
						
							|  |  |  | } |