@cravery/core 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/dist/config/collections.d.ts +8 -0
  2. package/dist/config/collections.d.ts.map +1 -0
  3. package/dist/config/collections.js +11 -0
  4. package/dist/config/collections.js.map +1 -0
  5. package/dist/config/common.d.ts +2 -0
  6. package/dist/config/common.d.ts.map +1 -0
  7. package/dist/config/common.js +5 -0
  8. package/dist/config/common.js.map +1 -0
  9. package/dist/config/credits.d.ts +2 -0
  10. package/dist/config/credits.d.ts.map +1 -0
  11. package/dist/config/credits.js +5 -0
  12. package/dist/config/credits.js.map +1 -0
  13. package/dist/config/index.d.ts +3 -0
  14. package/dist/config/index.d.ts.map +1 -0
  15. package/dist/config/index.js +19 -0
  16. package/dist/config/index.js.map +1 -0
  17. package/dist/enums/allergen.d.ts +19 -0
  18. package/dist/enums/allergen.d.ts.map +1 -0
  19. package/dist/enums/allergen.js +21 -0
  20. package/dist/enums/allergen.js.map +1 -0
  21. package/dist/enums/cuisine.d.ts +39 -0
  22. package/dist/enums/cuisine.d.ts.map +1 -0
  23. package/dist/enums/cuisine.js +41 -0
  24. package/dist/enums/cuisine.js.map +1 -0
  25. package/dist/enums/dietary_tag.d.ts +21 -0
  26. package/dist/enums/dietary_tag.d.ts.map +1 -0
  27. package/dist/enums/dietary_tag.js +23 -0
  28. package/dist/enums/dietary_tag.js.map +1 -0
  29. package/dist/enums/difficulty.d.ts +10 -0
  30. package/dist/enums/difficulty.d.ts.map +1 -0
  31. package/dist/enums/difficulty.js +12 -0
  32. package/dist/enums/difficulty.js.map +1 -0
  33. package/dist/enums/image_type.d.ts +8 -0
  34. package/dist/enums/image_type.d.ts.map +1 -0
  35. package/dist/enums/image_type.js +7 -0
  36. package/dist/enums/image_type.js.map +1 -0
  37. package/dist/enums/index.d.ts +22 -0
  38. package/dist/enums/index.d.ts.map +1 -0
  39. package/dist/enums/index.js +38 -0
  40. package/dist/enums/index.js.map +1 -0
  41. package/dist/enums/locale.d.ts +11 -0
  42. package/dist/enums/locale.d.ts.map +1 -0
  43. package/dist/enums/locale.js +7 -0
  44. package/dist/enums/locale.js.map +1 -0
  45. package/dist/enums/meal_type.d.ts +14 -0
  46. package/dist/enums/meal_type.d.ts.map +1 -0
  47. package/dist/enums/meal_type.js +16 -0
  48. package/dist/enums/meal_type.js.map +1 -0
  49. package/dist/enums/moderation_status.d.ts +9 -0
  50. package/dist/enums/moderation_status.d.ts.map +1 -0
  51. package/dist/enums/moderation_status.js +11 -0
  52. package/dist/enums/moderation_status.js.map +1 -0
  53. package/dist/enums/priority.d.ts +9 -0
  54. package/dist/enums/priority.d.ts.map +1 -0
  55. package/dist/enums/priority.js +7 -0
  56. package/dist/enums/priority.js.map +1 -0
  57. package/dist/enums/profile_status.d.ts +10 -0
  58. package/dist/enums/profile_status.d.ts.map +1 -0
  59. package/dist/enums/profile_status.js +12 -0
  60. package/dist/enums/profile_status.js.map +1 -0
  61. package/dist/enums/recipe_source.d.ts +10 -0
  62. package/dist/enums/recipe_source.d.ts.map +1 -0
  63. package/dist/enums/recipe_source.js +7 -0
  64. package/dist/enums/recipe_source.js.map +1 -0
  65. package/dist/enums/recipe_status.d.ts +10 -0
  66. package/dist/enums/recipe_status.d.ts.map +1 -0
  67. package/dist/enums/recipe_status.js +12 -0
  68. package/dist/enums/recipe_status.js.map +1 -0
  69. package/dist/enums/role.d.ts +11 -0
  70. package/dist/enums/role.d.ts.map +1 -0
  71. package/dist/enums/role.js +13 -0
  72. package/dist/enums/role.js.map +1 -0
  73. package/dist/enums/severity.d.ts +9 -0
  74. package/dist/enums/severity.d.ts.map +1 -0
  75. package/dist/enums/severity.js +7 -0
  76. package/dist/enums/severity.js.map +1 -0
  77. package/dist/enums/spiciness.d.ts +10 -0
  78. package/dist/enums/spiciness.d.ts.map +1 -0
  79. package/dist/enums/spiciness.js +7 -0
  80. package/dist/enums/spiciness.js.map +1 -0
  81. package/dist/enums/status.d.ts +11 -0
  82. package/dist/enums/status.d.ts.map +1 -0
  83. package/dist/enums/status.js +13 -0
  84. package/dist/enums/status.js.map +1 -0
  85. package/dist/enums/subscription_tier.d.ts +8 -0
  86. package/dist/enums/subscription_tier.d.ts.map +1 -0
  87. package/dist/enums/subscription_tier.js +6 -0
  88. package/dist/enums/subscription_tier.js.map +1 -0
  89. package/dist/enums/suggestion_category.d.ts +11 -0
  90. package/dist/enums/suggestion_category.d.ts.map +1 -0
  91. package/dist/enums/suggestion_category.js +13 -0
  92. package/dist/enums/suggestion_category.js.map +1 -0
  93. package/dist/enums/temperature_unit.d.ts +8 -0
  94. package/dist/enums/temperature_unit.d.ts.map +1 -0
  95. package/dist/enums/temperature_unit.js +7 -0
  96. package/dist/enums/temperature_unit.js.map +1 -0
  97. package/dist/enums/unit.d.ts +43 -0
  98. package/dist/enums/unit.d.ts.map +1 -0
  99. package/dist/enums/unit.js +53 -0
  100. package/dist/enums/unit.js.map +1 -0
  101. package/dist/enums/url_type.d.ts +13 -0
  102. package/dist/enums/url_type.d.ts.map +1 -0
  103. package/dist/enums/url_type.js +15 -0
  104. package/dist/enums/url_type.js.map +1 -0
  105. package/dist/enums/user_status.d.ts +10 -0
  106. package/dist/enums/user_status.d.ts.map +1 -0
  107. package/dist/enums/user_status.js +12 -0
  108. package/dist/enums/user_status.js.map +1 -0
  109. package/dist/index.d.ts +4 -1
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +18 -0
  112. package/dist/index.js.map +1 -1
  113. package/dist/lib/index.d.ts +2 -0
  114. package/dist/lib/index.d.ts.map +1 -0
  115. package/dist/lib/index.js +3 -0
  116. package/dist/lib/index.js.map +1 -0
  117. package/dist/types/ai/config.d.ts +20 -0
  118. package/dist/types/ai/config.d.ts.map +1 -0
  119. package/dist/types/ai/config.js +3 -0
  120. package/dist/types/ai/config.js.map +1 -0
  121. package/dist/types/ai/filters.d.ts +82 -0
  122. package/dist/types/ai/filters.d.ts.map +1 -0
  123. package/dist/types/ai/filters.js +16 -0
  124. package/dist/types/ai/filters.js.map +1 -0
  125. package/dist/types/ai/index.d.ts +5 -0
  126. package/dist/types/ai/index.d.ts.map +1 -0
  127. package/dist/types/ai/index.js +21 -0
  128. package/dist/types/ai/index.js.map +1 -0
  129. package/dist/types/ai/recipe.d.ts +179 -0
  130. package/dist/types/ai/recipe.d.ts.map +1 -0
  131. package/dist/types/ai/recipe.js +28 -0
  132. package/dist/types/ai/recipe.js.map +1 -0
  133. package/dist/types/ai/translation.d.ts +26 -0
  134. package/dist/types/ai/translation.d.ts.map +1 -0
  135. package/dist/types/ai/translation.js +16 -0
  136. package/dist/types/ai/translation.js.map +1 -0
  137. package/dist/types/equipment.d.ts +20 -0
  138. package/dist/types/equipment.d.ts.map +1 -0
  139. package/dist/types/equipment.js +16 -0
  140. package/dist/types/equipment.js.map +1 -0
  141. package/dist/types/index.d.ts +12 -0
  142. package/dist/types/index.d.ts.map +1 -0
  143. package/dist/types/index.js +28 -0
  144. package/dist/types/index.js.map +1 -0
  145. package/dist/types/ingredient.d.ts +209 -0
  146. package/dist/types/ingredient.d.ts.map +1 -0
  147. package/dist/types/ingredient.js +33 -0
  148. package/dist/types/ingredient.js.map +1 -0
  149. package/dist/types/instruction.d.ts +32 -0
  150. package/dist/types/instruction.d.ts.map +1 -0
  151. package/dist/types/instruction.js +16 -0
  152. package/dist/types/instruction.js.map +1 -0
  153. package/dist/types/moderation.d.ts +87 -0
  154. package/dist/types/moderation.d.ts.map +1 -0
  155. package/dist/types/moderation.js +38 -0
  156. package/dist/types/moderation.js.map +1 -0
  157. package/dist/types/nutrition.d.ts +18 -0
  158. package/dist/types/nutrition.d.ts.map +1 -0
  159. package/dist/types/nutrition.js +20 -0
  160. package/dist/types/nutrition.js.map +1 -0
  161. package/dist/types/profile.d.ts +30 -0
  162. package/dist/types/profile.d.ts.map +1 -0
  163. package/dist/types/profile.js +26 -0
  164. package/dist/types/profile.js.map +1 -0
  165. package/dist/types/recipe.d.ts +448 -0
  166. package/dist/types/recipe.d.ts.map +1 -0
  167. package/dist/types/recipe.js +82 -0
  168. package/dist/types/recipe.js.map +1 -0
  169. package/dist/types/subscription.d.ts +16 -0
  170. package/dist/types/subscription.d.ts.map +1 -0
  171. package/dist/types/subscription.js +14 -0
  172. package/dist/types/subscription.js.map +1 -0
  173. package/dist/types/temperature.d.ts +10 -0
  174. package/dist/types/temperature.d.ts.map +1 -0
  175. package/dist/types/temperature.js +10 -0
  176. package/dist/types/temperature.js.map +1 -0
  177. package/dist/types/user.d.ts +26 -0
  178. package/dist/types/user.d.ts.map +1 -0
  179. package/dist/types/user.js +17 -0
  180. package/dist/types/user.js.map +1 -0
  181. package/package.json +3 -1
  182. package/src/config/collections.ts +7 -0
  183. package/src/config/common.ts +1 -0
  184. package/src/config/index.ts +2 -0
  185. package/src/enums/allergen.ts +19 -0
  186. package/src/enums/cuisine.ts +39 -0
  187. package/src/enums/dietary_tag.ts +21 -0
  188. package/src/enums/difficulty.ts +10 -0
  189. package/src/enums/image_type.ts +5 -0
  190. package/src/enums/index.ts +21 -0
  191. package/src/enums/locale.ts +5 -0
  192. package/src/enums/meal_type.ts +14 -0
  193. package/src/enums/moderation_status.ts +9 -0
  194. package/src/enums/priority.ts +5 -0
  195. package/src/enums/profile_status.ts +10 -0
  196. package/src/enums/recipe_source.ts +5 -0
  197. package/src/enums/recipe_status.ts +10 -0
  198. package/src/enums/role.ts +11 -0
  199. package/src/enums/severity.ts +5 -0
  200. package/src/enums/spiciness.ts +5 -0
  201. package/src/enums/status.ts +11 -0
  202. package/src/enums/subscription_tier.ts +4 -0
  203. package/src/enums/suggestion_category.ts +11 -0
  204. package/src/enums/temperature_unit.ts +5 -0
  205. package/src/enums/unit.ts +51 -0
  206. package/src/enums/url_type.ts +13 -0
  207. package/src/enums/user_status.ts +10 -0
  208. package/src/index.ts +4 -0
  209. package/src/lib/index.ts +0 -0
  210. package/src/types/ai/config.ts +26 -0
  211. package/src/types/ai/filters.ts +20 -0
  212. package/src/types/ai/index.ts +4 -0
  213. package/src/types/ai/recipe.ts +33 -0
  214. package/src/types/ai/translation.ts +14 -0
  215. package/src/types/equipment.ts +21 -0
  216. package/src/types/index.ts +11 -0
  217. package/src/types/ingredient.ts +46 -0
  218. package/src/types/instruction.ts +21 -0
  219. package/src/types/moderation.ts +48 -0
  220. package/src/types/nutrition.ts +18 -0
  221. package/src/types/profile.ts +27 -0
  222. package/src/types/recipe.ts +109 -0
  223. package/src/types/subscription.ts +13 -0
  224. package/src/types/temperature.ts +8 -0
  225. package/src/types/user.ts +16 -0
@@ -0,0 +1,448 @@
1
+ import { z } from "zod";
2
+ import { Timestamp } from "firebase-admin/firestore";
3
+ export declare const RecipeMetaSchema: z.ZodObject<{
4
+ allergens: z.ZodArray<z.ZodEnum<{
5
+ celery: "celery";
6
+ dairy: "dairy";
7
+ eggs: "eggs";
8
+ fish: "fish";
9
+ gluten: "gluten";
10
+ lupin: "lupin";
11
+ mustard: "mustard";
12
+ nuts: "nuts";
13
+ peanuts: "peanuts";
14
+ sesame: "sesame";
15
+ shellfish: "shellfish";
16
+ soy: "soy";
17
+ sulfites: "sulfites";
18
+ }>>;
19
+ confidence: z.ZodNumber;
20
+ createdAt: z.ZodCustom<Timestamp, Timestamp>;
21
+ createdBy: z.ZodString;
22
+ cuisine: z.ZodEnum<{
23
+ other: "other";
24
+ african: "african";
25
+ american: "american";
26
+ brazilian: "brazilian";
27
+ british: "british";
28
+ caribbean: "caribbean";
29
+ chinese: "chinese";
30
+ egyptian: "egyptian";
31
+ emirati: "emirati";
32
+ ethiopian: "ethiopian";
33
+ filipino: "filipino";
34
+ french: "french";
35
+ fusion: "fusion";
36
+ german: "german";
37
+ greek: "greek";
38
+ indian: "indian";
39
+ indonesian: "indonesian";
40
+ italian: "italian";
41
+ japanese: "japanese";
42
+ korean: "korean";
43
+ lebanese: "lebanese";
44
+ malaysian: "malaysian";
45
+ mexican: "mexican";
46
+ moroccan: "moroccan";
47
+ pakistani: "pakistani";
48
+ persian: "persian";
49
+ russian: "russian";
50
+ saudi: "saudi";
51
+ spanish: "spanish";
52
+ sudanese: "sudanese";
53
+ thai: "thai";
54
+ turkish: "turkish";
55
+ vietnamese: "vietnamese";
56
+ }>;
57
+ deletedAt: z.ZodOptional<z.ZodCustom<Timestamp, Timestamp>>;
58
+ dietaryTags: z.ZodArray<z.ZodEnum<{
59
+ dairy_free: "dairy_free";
60
+ egg_free: "egg_free";
61
+ gluten_free: "gluten_free";
62
+ halal: "halal";
63
+ high_protein: "high_protein";
64
+ keto: "keto";
65
+ low_carb: "low_carb";
66
+ low_fat: "low_fat";
67
+ low_sodium: "low_sodium";
68
+ low_sugar: "low_sugar";
69
+ nut_free: "nut_free";
70
+ pescatarian: "pescatarian";
71
+ soy_free: "soy_free";
72
+ vegan: "vegan";
73
+ vegetarian: "vegetarian";
74
+ }>>;
75
+ difficulty: z.ZodEnum<{
76
+ advanced: "advanced";
77
+ beginner: "beginner";
78
+ intermediate: "intermediate";
79
+ expert: "expert";
80
+ }>;
81
+ equipment: z.ZodOptional<z.ZodArray<z.ZodObject<{
82
+ optional: z.ZodOptional<z.ZodBoolean>;
83
+ slug: z.ZodString;
84
+ }, z.core.$strip>>>;
85
+ id: z.ZodString;
86
+ imageUrl: z.ZodOptional<z.ZodString>;
87
+ ingredientSections: z.ZodArray<z.ZodObject<{
88
+ ingredients: z.ZodArray<z.ZodObject<{
89
+ optional: z.ZodOptional<z.ZodBoolean>;
90
+ quantity: z.ZodOptional<z.ZodNumber>;
91
+ slug: z.ZodString;
92
+ unit: z.ZodOptional<z.ZodEnum<{
93
+ slice: "slice";
94
+ head: "head";
95
+ g: "g";
96
+ drop: "drop";
97
+ quarter: "quarter";
98
+ ml: "ml";
99
+ l: "l";
100
+ tsp: "tsp";
101
+ tbsp: "tbsp";
102
+ fl_oz: "fl_oz";
103
+ cup: "cup";
104
+ pint: "pint";
105
+ quart: "quart";
106
+ gallon: "gallon";
107
+ mg: "mg";
108
+ kg: "kg";
109
+ oz: "oz";
110
+ lb: "lb";
111
+ piece: "piece";
112
+ whole: "whole";
113
+ half: "half";
114
+ serving: "serving";
115
+ clove: "clove";
116
+ stalk: "stalk";
117
+ sprig: "sprig";
118
+ leaf: "leaf";
119
+ bunch: "bunch";
120
+ fillet: "fillet";
121
+ stick: "stick";
122
+ sheet: "sheet";
123
+ can: "can";
124
+ package: "package";
125
+ bottle: "bottle";
126
+ jar: "jar";
127
+ handful: "handful";
128
+ pinch: "pinch";
129
+ dash: "dash";
130
+ }>>;
131
+ }, z.core.$strip>>;
132
+ slug: z.ZodString;
133
+ }, z.core.$strip>>;
134
+ instructions: z.ZodArray<z.ZodObject<{
135
+ duration: z.ZodOptional<z.ZodNumber>;
136
+ step: z.ZodNumber;
137
+ temperature: z.ZodOptional<z.ZodObject<{
138
+ unit: z.ZodEnum<{
139
+ celsius: "celsius";
140
+ fahrenheit: "fahrenheit";
141
+ }>;
142
+ value: z.ZodNumber;
143
+ }, z.core.$strip>>;
144
+ }, z.core.$strip>>;
145
+ mealTypes: z.ZodArray<z.ZodEnum<{
146
+ appetizer: "appetizer";
147
+ breakfast: "breakfast";
148
+ brunch: "brunch";
149
+ dessert: "dessert";
150
+ dinner: "dinner";
151
+ drink: "drink";
152
+ lunch: "lunch";
153
+ snack: "snack";
154
+ }>>;
155
+ nutrition: z.ZodOptional<z.ZodObject<{
156
+ calories: z.ZodNumber;
157
+ carbs: z.ZodOptional<z.ZodNumber>;
158
+ cholesterol: z.ZodOptional<z.ZodNumber>;
159
+ fat: z.ZodOptional<z.ZodNumber>;
160
+ fiber: z.ZodOptional<z.ZodNumber>;
161
+ protein: z.ZodOptional<z.ZodNumber>;
162
+ saturatedFat: z.ZodOptional<z.ZodNumber>;
163
+ sodium: z.ZodOptional<z.ZodNumber>;
164
+ sugar: z.ZodOptional<z.ZodNumber>;
165
+ }, z.core.$strip>>;
166
+ originalLocale: z.ZodEnum<{
167
+ en: "en";
168
+ ar: "ar";
169
+ es: "es";
170
+ fr: "fr";
171
+ ru: "ru";
172
+ }>;
173
+ servings: z.ZodNumber;
174
+ source: z.ZodEnum<{
175
+ url: "url";
176
+ video: "video";
177
+ image: "image";
178
+ text: "text";
179
+ }>;
180
+ sourceUrl: z.ZodOptional<z.ZodString>;
181
+ spiciness: z.ZodEnum<{
182
+ none: "none";
183
+ medium: "medium";
184
+ mild: "mild";
185
+ hot: "hot";
186
+ }>;
187
+ status: z.ZodEnum<{
188
+ deleted: "deleted";
189
+ active: "active";
190
+ pending: "pending";
191
+ archived: "archived";
192
+ }>;
193
+ time: z.ZodNumber;
194
+ updatedAt: z.ZodCustom<Timestamp, Timestamp>;
195
+ }, z.core.$strip>;
196
+ export type RecipeMeta = z.infer<typeof RecipeMetaSchema>;
197
+ export declare const RecipeContentSchema: z.ZodObject<{
198
+ description: z.ZodString;
199
+ equipment: z.ZodOptional<z.ZodArray<z.ZodObject<{
200
+ name: z.ZodString;
201
+ notes: z.ZodOptional<z.ZodString>;
202
+ slug: z.ZodString;
203
+ }, z.core.$strip>>>;
204
+ ingredientSections: z.ZodArray<z.ZodObject<{
205
+ ingredients: z.ZodArray<z.ZodObject<{
206
+ name: z.ZodString;
207
+ notes: z.ZodOptional<z.ZodString>;
208
+ slug: z.ZodString;
209
+ }, z.core.$strip>>;
210
+ slug: z.ZodString;
211
+ title: z.ZodOptional<z.ZodString>;
212
+ }, z.core.$strip>>;
213
+ instructions: z.ZodArray<z.ZodObject<{
214
+ step: z.ZodNumber;
215
+ text: z.ZodString;
216
+ }, z.core.$strip>>;
217
+ locale: z.ZodEnum<{
218
+ en: "en";
219
+ ar: "ar";
220
+ es: "es";
221
+ fr: "fr";
222
+ ru: "ru";
223
+ }>;
224
+ tips: z.ZodOptional<z.ZodArray<z.ZodString>>;
225
+ title: z.ZodString;
226
+ }, z.core.$strip>;
227
+ export type RecipeContent = z.infer<typeof RecipeContentSchema>;
228
+ export declare const RecipeSchema: z.ZodObject<{
229
+ allergens: z.ZodArray<z.ZodEnum<{
230
+ celery: "celery";
231
+ dairy: "dairy";
232
+ eggs: "eggs";
233
+ fish: "fish";
234
+ gluten: "gluten";
235
+ lupin: "lupin";
236
+ mustard: "mustard";
237
+ nuts: "nuts";
238
+ peanuts: "peanuts";
239
+ sesame: "sesame";
240
+ shellfish: "shellfish";
241
+ soy: "soy";
242
+ sulfites: "sulfites";
243
+ }>>;
244
+ confidence: z.ZodNumber;
245
+ createdAt: z.ZodCustom<Timestamp, Timestamp>;
246
+ createdBy: z.ZodString;
247
+ cuisine: z.ZodEnum<{
248
+ other: "other";
249
+ african: "african";
250
+ american: "american";
251
+ brazilian: "brazilian";
252
+ british: "british";
253
+ caribbean: "caribbean";
254
+ chinese: "chinese";
255
+ egyptian: "egyptian";
256
+ emirati: "emirati";
257
+ ethiopian: "ethiopian";
258
+ filipino: "filipino";
259
+ french: "french";
260
+ fusion: "fusion";
261
+ german: "german";
262
+ greek: "greek";
263
+ indian: "indian";
264
+ indonesian: "indonesian";
265
+ italian: "italian";
266
+ japanese: "japanese";
267
+ korean: "korean";
268
+ lebanese: "lebanese";
269
+ malaysian: "malaysian";
270
+ mexican: "mexican";
271
+ moroccan: "moroccan";
272
+ pakistani: "pakistani";
273
+ persian: "persian";
274
+ russian: "russian";
275
+ saudi: "saudi";
276
+ spanish: "spanish";
277
+ sudanese: "sudanese";
278
+ thai: "thai";
279
+ turkish: "turkish";
280
+ vietnamese: "vietnamese";
281
+ }>;
282
+ deletedAt: z.ZodOptional<z.ZodCustom<Timestamp, Timestamp>>;
283
+ description: z.ZodString;
284
+ dietaryTags: z.ZodArray<z.ZodEnum<{
285
+ dairy_free: "dairy_free";
286
+ egg_free: "egg_free";
287
+ gluten_free: "gluten_free";
288
+ halal: "halal";
289
+ high_protein: "high_protein";
290
+ keto: "keto";
291
+ low_carb: "low_carb";
292
+ low_fat: "low_fat";
293
+ low_sodium: "low_sodium";
294
+ low_sugar: "low_sugar";
295
+ nut_free: "nut_free";
296
+ pescatarian: "pescatarian";
297
+ soy_free: "soy_free";
298
+ vegan: "vegan";
299
+ vegetarian: "vegetarian";
300
+ }>>;
301
+ difficulty: z.ZodEnum<{
302
+ advanced: "advanced";
303
+ beginner: "beginner";
304
+ intermediate: "intermediate";
305
+ expert: "expert";
306
+ }>;
307
+ equipment: z.ZodOptional<z.ZodArray<z.ZodObject<{
308
+ name: z.ZodString;
309
+ notes: z.ZodOptional<z.ZodString>;
310
+ slug: z.ZodString;
311
+ optional: z.ZodOptional<z.ZodBoolean>;
312
+ }, z.core.$strip>>>;
313
+ id: z.ZodString;
314
+ imageUrl: z.ZodOptional<z.ZodString>;
315
+ ingredientSections: z.ZodArray<z.ZodObject<{
316
+ ingredients: z.ZodArray<z.ZodObject<{
317
+ name: z.ZodString;
318
+ notes: z.ZodOptional<z.ZodString>;
319
+ slug: z.ZodString;
320
+ optional: z.ZodOptional<z.ZodBoolean>;
321
+ quantity: z.ZodOptional<z.ZodNumber>;
322
+ unit: z.ZodOptional<z.ZodEnum<{
323
+ slice: "slice";
324
+ head: "head";
325
+ g: "g";
326
+ drop: "drop";
327
+ quarter: "quarter";
328
+ ml: "ml";
329
+ l: "l";
330
+ tsp: "tsp";
331
+ tbsp: "tbsp";
332
+ fl_oz: "fl_oz";
333
+ cup: "cup";
334
+ pint: "pint";
335
+ quart: "quart";
336
+ gallon: "gallon";
337
+ mg: "mg";
338
+ kg: "kg";
339
+ oz: "oz";
340
+ lb: "lb";
341
+ piece: "piece";
342
+ whole: "whole";
343
+ half: "half";
344
+ serving: "serving";
345
+ clove: "clove";
346
+ stalk: "stalk";
347
+ sprig: "sprig";
348
+ leaf: "leaf";
349
+ bunch: "bunch";
350
+ fillet: "fillet";
351
+ stick: "stick";
352
+ sheet: "sheet";
353
+ can: "can";
354
+ package: "package";
355
+ bottle: "bottle";
356
+ jar: "jar";
357
+ handful: "handful";
358
+ pinch: "pinch";
359
+ dash: "dash";
360
+ }>>;
361
+ }, z.core.$strip>>;
362
+ slug: z.ZodString;
363
+ title: z.ZodOptional<z.ZodString>;
364
+ }, z.core.$strip>>;
365
+ instructions: z.ZodArray<z.ZodObject<{
366
+ step: z.ZodNumber;
367
+ text: z.ZodString;
368
+ duration: z.ZodOptional<z.ZodNumber>;
369
+ temperature: z.ZodOptional<z.ZodObject<{
370
+ unit: z.ZodEnum<{
371
+ celsius: "celsius";
372
+ fahrenheit: "fahrenheit";
373
+ }>;
374
+ value: z.ZodNumber;
375
+ }, z.core.$strip>>;
376
+ }, z.core.$strip>>;
377
+ locale: z.ZodEnum<{
378
+ en: "en";
379
+ ar: "ar";
380
+ es: "es";
381
+ fr: "fr";
382
+ ru: "ru";
383
+ }>;
384
+ mealTypes: z.ZodArray<z.ZodEnum<{
385
+ appetizer: "appetizer";
386
+ breakfast: "breakfast";
387
+ brunch: "brunch";
388
+ dessert: "dessert";
389
+ dinner: "dinner";
390
+ drink: "drink";
391
+ lunch: "lunch";
392
+ snack: "snack";
393
+ }>>;
394
+ nutrition: z.ZodOptional<z.ZodObject<{
395
+ calories: z.ZodNumber;
396
+ carbs: z.ZodOptional<z.ZodNumber>;
397
+ cholesterol: z.ZodOptional<z.ZodNumber>;
398
+ fat: z.ZodOptional<z.ZodNumber>;
399
+ fiber: z.ZodOptional<z.ZodNumber>;
400
+ protein: z.ZodOptional<z.ZodNumber>;
401
+ saturatedFat: z.ZodOptional<z.ZodNumber>;
402
+ sodium: z.ZodOptional<z.ZodNumber>;
403
+ sugar: z.ZodOptional<z.ZodNumber>;
404
+ }, z.core.$strip>>;
405
+ originalLocale: z.ZodEnum<{
406
+ en: "en";
407
+ ar: "ar";
408
+ es: "es";
409
+ fr: "fr";
410
+ ru: "ru";
411
+ }>;
412
+ servings: z.ZodNumber;
413
+ source: z.ZodEnum<{
414
+ url: "url";
415
+ video: "video";
416
+ image: "image";
417
+ text: "text";
418
+ }>;
419
+ sourceUrl: z.ZodOptional<z.ZodString>;
420
+ spiciness: z.ZodEnum<{
421
+ none: "none";
422
+ medium: "medium";
423
+ mild: "mild";
424
+ hot: "hot";
425
+ }>;
426
+ status: z.ZodEnum<{
427
+ deleted: "deleted";
428
+ active: "active";
429
+ pending: "pending";
430
+ archived: "archived";
431
+ }>;
432
+ time: z.ZodNumber;
433
+ tips: z.ZodOptional<z.ZodArray<z.ZodString>>;
434
+ title: z.ZodString;
435
+ updatedAt: z.ZodCustom<Timestamp, Timestamp>;
436
+ }, z.core.$strip>;
437
+ export type Recipe = z.infer<typeof RecipeSchema>;
438
+ export declare const RecipeStatsSchema: z.ZodObject<{
439
+ comments: z.ZodNumber;
440
+ likes: z.ZodNumber;
441
+ rating: z.ZodNumber;
442
+ ratingCount: z.ZodNumber;
443
+ saves: z.ZodNumber;
444
+ updatedAt: z.ZodNumber;
445
+ views: z.ZodNumber;
446
+ }, z.core.$strip>;
447
+ export type RecipeStats = z.infer<typeof RecipeStatsSchema>;
448
+ //# sourceMappingURL=recipe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipe.d.ts","sourceRoot":"","sources":["../../src/types/recipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AA6BrD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwB3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQ9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA4BvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD,eAAO,MAAM,iBAAiB;;;;;;;;iBAQ5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecipeStatsSchema = exports.RecipeSchema = exports.RecipeContentSchema = exports.RecipeMetaSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const enums_1 = require("../enums");
6
+ const equipment_1 = require("./equipment");
7
+ const ingredient_1 = require("./ingredient");
8
+ const instruction_1 = require("./instruction");
9
+ const nutrition_1 = require("./nutrition");
10
+ exports.RecipeMetaSchema = zod_1.z.object({
11
+ allergens: zod_1.z.array(enums_1.AllergenSchema),
12
+ confidence: zod_1.z.number().min(0).max(1),
13
+ createdAt: zod_1.z.custom(),
14
+ createdBy: zod_1.z.string(),
15
+ cuisine: enums_1.CuisineSchema,
16
+ deletedAt: zod_1.z.custom().optional(),
17
+ dietaryTags: zod_1.z.array(enums_1.DietaryTagSchema),
18
+ difficulty: enums_1.DifficultySchema,
19
+ equipment: zod_1.z.array(equipment_1.EquipmentMetaSchema).optional(),
20
+ id: zod_1.z.string(),
21
+ imageUrl: zod_1.z.string().optional(),
22
+ ingredientSections: zod_1.z.array(ingredient_1.IngredientSectionMetaSchema).min(1),
23
+ instructions: zod_1.z.array(instruction_1.InstructionMetaSchema).min(1),
24
+ mealTypes: zod_1.z.array(enums_1.MealTypeSchema).min(1),
25
+ nutrition: nutrition_1.NutritionSchema.optional(),
26
+ originalLocale: enums_1.LocaleSchema,
27
+ servings: zod_1.z.number().int().min(1).max(100),
28
+ source: enums_1.RecipeSourceSchema,
29
+ sourceUrl: zod_1.z.string().optional(),
30
+ spiciness: enums_1.SpicinessSchema,
31
+ status: enums_1.RecipeStatusSchema,
32
+ time: zod_1.z.number().int().min(1).max(1440),
33
+ updatedAt: zod_1.z.custom(),
34
+ });
35
+ exports.RecipeContentSchema = zod_1.z.object({
36
+ description: zod_1.z.string().min(10).max(2000),
37
+ equipment: zod_1.z.array(equipment_1.EquipmentContentSchema).optional(),
38
+ ingredientSections: zod_1.z.array(ingredient_1.IngredientSectionContentSchema).min(1),
39
+ instructions: zod_1.z.array(instruction_1.InstructionContentSchema).min(1),
40
+ locale: enums_1.LocaleSchema,
41
+ tips: zod_1.z.array(zod_1.z.string().max(500)).optional(),
42
+ title: zod_1.z.string().min(3).max(200),
43
+ });
44
+ exports.RecipeSchema = zod_1.z.object({
45
+ allergens: zod_1.z.array(enums_1.AllergenSchema),
46
+ confidence: zod_1.z.number().min(0).max(1),
47
+ createdAt: zod_1.z.custom(),
48
+ createdBy: zod_1.z.string(),
49
+ cuisine: enums_1.CuisineSchema,
50
+ deletedAt: zod_1.z.custom().optional(),
51
+ description: zod_1.z.string().min(10).max(2000),
52
+ dietaryTags: zod_1.z.array(enums_1.DietaryTagSchema),
53
+ difficulty: enums_1.DifficultySchema,
54
+ equipment: zod_1.z.array(equipment_1.EquipmentSchema).optional(),
55
+ id: zod_1.z.string(),
56
+ imageUrl: zod_1.z.string().optional(),
57
+ ingredientSections: zod_1.z.array(ingredient_1.IngredientSectionSchema).min(1),
58
+ instructions: zod_1.z.array(instruction_1.InstructionSchema).min(1),
59
+ locale: enums_1.LocaleSchema,
60
+ mealTypes: zod_1.z.array(enums_1.MealTypeSchema).min(1),
61
+ nutrition: nutrition_1.NutritionSchema.optional(),
62
+ originalLocale: enums_1.LocaleSchema,
63
+ servings: zod_1.z.number().int().min(1).max(100),
64
+ source: enums_1.RecipeSourceSchema,
65
+ sourceUrl: zod_1.z.string().optional(),
66
+ spiciness: enums_1.SpicinessSchema,
67
+ status: enums_1.RecipeStatusSchema,
68
+ time: zod_1.z.number().int().min(1).max(1440),
69
+ tips: zod_1.z.array(zod_1.z.string().max(500)).optional(),
70
+ title: zod_1.z.string().min(3).max(200),
71
+ updatedAt: zod_1.z.custom(),
72
+ });
73
+ exports.RecipeStatsSchema = zod_1.z.object({
74
+ comments: zod_1.z.number().int().nonnegative(),
75
+ likes: zod_1.z.number().int().nonnegative(),
76
+ rating: zod_1.z.number().min(0).max(5),
77
+ ratingCount: zod_1.z.number().int().nonnegative(),
78
+ saves: zod_1.z.number().int().nonnegative(),
79
+ updatedAt: zod_1.z.number().int(),
80
+ views: zod_1.z.number().int().nonnegative(),
81
+ });
82
+ //# sourceMappingURL=recipe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipe.js","sourceRoot":"","sources":["../../src/types/recipe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ import { Timestamp } from "firebase-admin/firestore";
3
+ export declare const SubscriptionSchema: z.ZodObject<{
4
+ expiresAt: z.ZodCustom<Timestamp, Timestamp>;
5
+ familyMembers: z.ZodOptional<z.ZodArray<z.ZodString>>;
6
+ id: z.ZodString;
7
+ revenuecatId: z.ZodString;
8
+ tier: z.ZodEnum<{
9
+ family: "family";
10
+ free: "free";
11
+ pro: "pro";
12
+ }>;
13
+ updatedAt: z.ZodCustom<Timestamp, Timestamp>;
14
+ }, z.core.$strip>;
15
+ export type Subscription = z.infer<typeof SubscriptionSchema>;
16
+ //# sourceMappingURL=subscription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscription.d.ts","sourceRoot":"","sources":["../../src/types/subscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,eAAO,MAAM,kBAAkB;;;;;;;;;;;iBAO7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SubscriptionSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const enums_1 = require("../enums");
6
+ exports.SubscriptionSchema = zod_1.z.object({
7
+ expiresAt: zod_1.z.custom(),
8
+ familyMembers: zod_1.z.array(zod_1.z.string()).max(3).optional(),
9
+ id: zod_1.z.string(),
10
+ revenuecatId: zod_1.z.string(),
11
+ tier: enums_1.SubscriptionTierSchema,
12
+ updatedAt: zod_1.z.custom(),
13
+ });
14
+ //# sourceMappingURL=subscription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscription.js","sourceRoot":"","sources":["../../src/types/subscription.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,oCAAkD;AAErC,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAa;IAChC,aAAa,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpD,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;IACxB,IAAI,EAAE,8BAAsB;IAC5B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAa;CACjC,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { z } from "zod";
2
+ export declare const TemperatureSchema: z.ZodObject<{
3
+ unit: z.ZodEnum<{
4
+ celsius: "celsius";
5
+ fahrenheit: "fahrenheit";
6
+ }>;
7
+ value: z.ZodNumber;
8
+ }, z.core.$strip>;
9
+ export type Temperature = z.infer<typeof TemperatureSchema>;
10
+ //# sourceMappingURL=temperature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temperature.d.ts","sourceRoot":"","sources":["../../src/types/temperature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,iBAAiB;;;;;;iBAG5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TemperatureSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const enums_1 = require("../enums");
6
+ exports.TemperatureSchema = zod_1.z.object({
7
+ unit: enums_1.TemperatureUnitSchema,
8
+ value: zod_1.z.number().min(-50).max(500),
9
+ });
10
+ //# sourceMappingURL=temperature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temperature.js","sourceRoot":"","sources":["../../src/types/temperature.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,oCAAiD;AAEpC,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,6BAAqB;IAC3B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;CACpC,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { z } from "zod";
2
+ import { Timestamp } from "firebase-admin/firestore";
3
+ export declare const UserSchema: z.ZodObject<{
4
+ createdAt: z.ZodCustom<Timestamp, Timestamp>;
5
+ deletedAt: z.ZodOptional<z.ZodCustom<Timestamp, Timestamp>>;
6
+ email: z.ZodEmail;
7
+ id: z.ZodString;
8
+ name: z.ZodString;
9
+ role: z.ZodEnum<{
10
+ user: "user";
11
+ admin: "admin";
12
+ moderator: "moderator";
13
+ translator: "translator";
14
+ guest: "guest";
15
+ }>;
16
+ status: z.ZodEnum<{
17
+ deleted: "deleted";
18
+ active: "active";
19
+ suspended: "suspended";
20
+ pending: "pending";
21
+ }>;
22
+ subscriptionId: z.ZodOptional<z.ZodString>;
23
+ updatedAt: z.ZodCustom<Timestamp, Timestamp>;
24
+ }, z.core.$strip>;
25
+ export type User = z.infer<typeof UserSchema>;
26
+ //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/types/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;iBAUrB,CAAC;AACH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const enums_1 = require("../enums");
6
+ exports.UserSchema = zod_1.z.object({
7
+ createdAt: zod_1.z.custom(),
8
+ deletedAt: zod_1.z.custom().optional(),
9
+ email: zod_1.z.email(),
10
+ id: zod_1.z.string(),
11
+ name: zod_1.z.string().min(1).max(50),
12
+ role: enums_1.RoleSchema,
13
+ status: enums_1.UserStatusSchema,
14
+ subscriptionId: zod_1.z.string().optional(),
15
+ updatedAt: zod_1.z.custom(),
16
+ });
17
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/types/user.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,oCAAwD;AAE3C,QAAA,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAa;IAChC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAa,CAAC,QAAQ,EAAE;IAC3C,KAAK,EAAE,OAAC,CAAC,KAAK,EAAE;IAChB,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC/B,IAAI,EAAE,kBAAU;IAChB,MAAM,EAAE,wBAAgB;IACxB,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAa;CACjC,CAAC,CAAC"}