Service for editing/creating recipe
[recipes.git] / common / src / ron_api.rs
1 use ron::de::from_reader;
2 use serde::{Deserialize, Serialize};
3
4 #[derive(Serialize, Deserialize, Clone)]
5 pub struct SetRecipeTitle {
6 pub recipe_id: i64,
7 pub title: String,
8 }
9
10 #[derive(Serialize, Deserialize, Clone)]
11 pub struct SetRecipeDescription {
12 pub recipe_id: i64,
13 pub description: String,
14 }
15
16 #[derive(Serialize, Deserialize, Clone)]
17 pub struct AddRecipeImage {
18 pub recipe_id: i64,
19 pub image: Vec<u8>,
20 }
21
22 #[derive(Serialize, Deserialize, Clone)]
23 pub struct AddRecipeImageReply {
24 pub image_id: i64,
25 }
26
27 #[derive(Serialize, Deserialize, Clone)]
28 pub struct RemoveRecipeImage {
29 pub image_id: i64,
30 }
31
32 #[derive(Serialize, Deserialize, Clone)]
33 pub struct AddRecipeIngredient {
34 pub group_id: i64,
35 pub name: String,
36 pub quantity_value: Option<f64>,
37 pub quantity_unit: String,
38 }
39
40 #[derive(Serialize, Deserialize, Clone)]
41 pub struct AddRecipeIngredientReply {
42 pub ingredient_id: i64,
43 }
44
45 #[derive(Serialize, Deserialize, Clone)]
46 pub struct RemoveRecipeIngredient {
47 pub group_id: i64,
48 }
49
50 #[derive(Serialize, Deserialize, Clone)]
51 pub struct SetRecipeIngredientsOrder {
52 pub group_id: i64,
53 pub ingredient_ids: Vec<i64>,
54 }
55
56 #[derive(Serialize, Deserialize, Clone)]
57 pub struct AddRecipeGroup {
58 pub recipe_id: i64,
59 pub name: String,
60 pub quantity_value: Option<f64>,
61 pub quantity_unit: String,
62 }
63
64 #[derive(Serialize, Deserialize, Clone)]
65 pub struct AddRecipeGroupReply {
66 pub group_id: i64,
67 }
68
69 #[derive(Serialize, Deserialize, Clone)]
70 pub struct RemoveRecipeGroupReply {
71 pub group_id: i64,
72 }
73
74 #[derive(Serialize, Deserialize, Clone)]
75 pub struct SetRecipeGroupsOrder {
76 pub recipe_id: i64,
77 pub group_ids: Vec<i64>,
78 }
79
80 #[derive(Serialize, Deserialize, Clone)]
81 pub struct AddRecipeStep {
82 pub group_id: i64,
83 pub name: String,
84 }
85
86 #[derive(Serialize, Deserialize, Clone)]
87 pub struct AddRecipeStepReply {
88 pub step_id: i64,
89 }
90
91 #[derive(Serialize, Deserialize, Clone)]
92 pub struct RemoveRecipeStep {
93 pub step_id: i64,
94 }