@kimdaegyu/babmukdang-shared 1.1.11 → 2.0.3

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 (100) hide show
  1. package/dist/chunk-3TY6OPD3.js +91 -0
  2. package/dist/{chunk-W4C7XHTX.js → chunk-6O2YTBVC.js} +3 -3
  3. package/dist/{chunk-GTVEQYJW.js → chunk-7JYVBXKQ.js} +1 -1
  4. package/dist/chunk-7UZD4LBQ.js +459 -0
  5. package/dist/chunk-BSJC7OVV.js +10 -0
  6. package/dist/chunk-C63TN7L3.js +148 -0
  7. package/dist/chunk-CGFW5LYV.js +143 -0
  8. package/dist/chunk-GOOH2LGN.js +829 -0
  9. package/dist/chunk-LEH6UFL7.js +314 -0
  10. package/dist/{chunk-K3CZKI2F.js → chunk-NENVUHL5.js} +11 -8
  11. package/dist/chunk-OPMBGBYS.js +632 -0
  12. package/dist/{chunk-OJVXYCSH.js → chunk-QFPVAJ2U.js} +1 -1
  13. package/dist/{chunk-AI2YMBJX.js → chunk-RZPNVRRS.js} +5 -5
  14. package/dist/{chunk-4E5E3PFW.js → chunk-VD3VGLBQ.js} +13 -5
  15. package/dist/chunk-WYBFBLQC.js +111 -0
  16. package/dist/{chunk-H77ISYYC.js → chunk-XMRYAG3V.js} +20 -8
  17. package/dist/domain/article/index.cjs +71 -7
  18. package/dist/domain/article/index.d.cts +79 -796
  19. package/dist/domain/article/index.d.ts +79 -796
  20. package/dist/domain/article/index.js +4 -4
  21. package/dist/domain/auth/index.cjs +68 -6
  22. package/dist/domain/auth/index.d.cts +6 -46
  23. package/dist/domain/auth/index.d.ts +6 -46
  24. package/dist/domain/auth/index.js +3 -3
  25. package/dist/domain/common/index.cjs +1438 -330
  26. package/dist/domain/common/index.d.cts +212 -3037
  27. package/dist/domain/common/index.d.ts +212 -3037
  28. package/dist/domain/common/index.js +65 -30
  29. package/dist/domain/food/index.cjs +225 -0
  30. package/dist/domain/food/index.d.cts +321 -0
  31. package/dist/domain/food/index.d.ts +321 -0
  32. package/dist/domain/food/index.js +46 -0
  33. package/dist/domain/friend/index.cjs +78 -7
  34. package/dist/domain/friend/index.d.cts +39 -98
  35. package/dist/domain/friend/index.d.ts +39 -98
  36. package/dist/domain/friend/index.js +5 -3
  37. package/dist/domain/index.cjs +1930 -456
  38. package/dist/domain/index.d.cts +382 -123
  39. package/dist/domain/index.d.ts +382 -123
  40. package/dist/domain/index.js +429 -140
  41. package/dist/domain/live-activity/index.cjs +1112 -0
  42. package/dist/domain/live-activity/index.d.cts +177 -0
  43. package/dist/domain/live-activity/index.d.ts +177 -0
  44. package/dist/domain/live-activity/index.js +28 -0
  45. package/dist/domain/meal/index.cjs +68 -6
  46. package/dist/domain/meal/index.d.cts +21 -40
  47. package/dist/domain/meal/index.d.ts +21 -40
  48. package/dist/domain/meal/index.js +4 -4
  49. package/dist/domain/meal-plan/index.cjs +1540 -0
  50. package/dist/domain/meal-plan/index.d.cts +4523 -0
  51. package/dist/domain/meal-plan/index.d.ts +4523 -0
  52. package/dist/domain/meal-plan/index.js +255 -0
  53. package/dist/domain/member/index.cjs +94 -6
  54. package/dist/domain/member/index.d.cts +263 -273
  55. package/dist/domain/member/index.d.ts +263 -273
  56. package/dist/domain/member/index.js +26 -2
  57. package/dist/domain/promotion/index.cjs +10 -4
  58. package/dist/domain/promotion/index.d.cts +35 -112
  59. package/dist/domain/promotion/index.d.ts +35 -112
  60. package/dist/domain/promotion/index.js +2 -2
  61. package/dist/domain/push/index.cjs +1055 -0
  62. package/dist/domain/push/index.d.cts +169 -0
  63. package/dist/domain/push/index.d.ts +169 -0
  64. package/dist/domain/push/index.js +36 -0
  65. package/dist/domain/restaurant/index.cjs +10 -4
  66. package/dist/domain/restaurant/index.d.cts +27 -1
  67. package/dist/domain/restaurant/index.d.ts +27 -1
  68. package/dist/domain/restaurant/index.js +2 -2
  69. package/dist/index.cjs +1731 -399
  70. package/dist/index.d.cts +5 -7
  71. package/dist/index.d.ts +5 -7
  72. package/dist/index.js +17 -15
  73. package/package.json +52 -55
  74. package/dist/chunk-PFSZSKD5.js +0 -0
  75. package/dist/chunk-PQMEXOPZ.js +0 -232
  76. package/dist/chunk-W4TUW2GY.js +0 -40
  77. package/dist/chunk-WNYCCQM4.js +0 -342
  78. package/dist/chunk-YGFAVC5N.js +0 -34
  79. package/dist/chunk-YM7YU7IR.js +0 -319
  80. package/dist/chunk-ZH7D7B2Y.js +0 -78
  81. package/dist/domain/invitation/index.cjs +0 -82
  82. package/dist/domain/invitation/index.d.cts +0 -64
  83. package/dist/domain/invitation/index.d.ts +0 -64
  84. package/dist/domain/invitation/index.js +0 -13
  85. package/dist/domain/plan/index.cjs +0 -327
  86. package/dist/domain/plan/index.d.cts +0 -178
  87. package/dist/domain/plan/index.d.ts +0 -178
  88. package/dist/domain/plan/index.js +0 -18
  89. package/dist/domain/recruit/index.cjs +0 -189
  90. package/dist/domain/recruit/index.d.cts +0 -214
  91. package/dist/domain/recruit/index.d.ts +0 -214
  92. package/dist/domain/recruit/index.js +0 -30
  93. package/dist/domain/room/index.cjs +0 -401
  94. package/dist/domain/room/index.d.cts +0 -2643
  95. package/dist/domain/room/index.d.ts +0 -2643
  96. package/dist/domain/room/index.js +0 -82
  97. package/dist/id-dAYxfjZn.d.cts +0 -64
  98. package/dist/id-dAYxfjZn.d.ts +0 -64
  99. package/dist/restaurant.schema-CuEcX3S3.d.cts +0 -78
  100. package/dist/restaurant.schema-CuEcX3S3.d.ts +0 -78
@@ -0,0 +1,314 @@
1
+ import {
2
+ MEAL_PLAN_NOTIFICATION_PRIORITY_POLICIES,
3
+ MealPlanDecisionStageIdSchema,
4
+ MealPlanJoinRequestSummarySchema,
5
+ MealPlanNotificationSchema,
6
+ MealPlanResponseSchema,
7
+ MyMealPlanListItemSchema
8
+ } from "./chunk-GOOH2LGN.js";
9
+ import {
10
+ RestaurantSchema
11
+ } from "./chunk-7JYVBXKQ.js";
12
+ import {
13
+ MemberCoreSchema
14
+ } from "./chunk-C63TN7L3.js";
15
+ import {
16
+ ISODateTimeStringSchema
17
+ } from "./chunk-HRM3FQPL.js";
18
+ import {
19
+ ArticleIdSchema,
20
+ MealGroupIdSchema,
21
+ MealPlanIdSchema,
22
+ MealPlanShareLinkIdSchema,
23
+ MealPlanShareLinkTokenSchema,
24
+ MemberIdSchema
25
+ } from "./chunk-XMRYAG3V.js";
26
+
27
+ // src/domain/meal-plan/meal-plan-share-link.schema.ts
28
+ import { z } from "zod";
29
+ var CreateMealPlanShareLinkRequestSchema = z.object({
30
+ expiresAt: ISODateTimeStringSchema.optional(),
31
+ guestJoinEnabled: z.boolean().default(true)
32
+ });
33
+ var MealPlanShareLinkSummarySchema = z.object({
34
+ shareLinkId: MealPlanShareLinkIdSchema,
35
+ mealPlanId: MealPlanIdSchema,
36
+ token: MealPlanShareLinkTokenSchema,
37
+ url: z.string().url(),
38
+ expiresAt: ISODateTimeStringSchema,
39
+ guestJoinEnabled: z.boolean(),
40
+ createdAt: ISODateTimeStringSchema
41
+ });
42
+ var MealPlanSharePreviewResponseSchema = z.object({
43
+ mealPlanId: MealPlanIdSchema,
44
+ token: MealPlanShareLinkTokenSchema,
45
+ title: z.string(),
46
+ ownerName: z.string(),
47
+ participantCount: z.number().int().min(1),
48
+ expiresAt: ISODateTimeStringSchema,
49
+ guestJoinEnabled: z.boolean()
50
+ });
51
+ var JoinMealPlanGuestRequestSchema = z.object({
52
+ nickname: z.string().min(1).max(50),
53
+ password: z.string().min(1).max(100).optional()
54
+ });
55
+ var JoinMealPlanGuestResponseSchema = z.object({
56
+ mealPlanId: MealPlanIdSchema,
57
+ guestId: z.string().min(1),
58
+ sessionToken: z.string().min(1)
59
+ });
60
+ var MealPlanGuestSessionQuerySchema = z.object({
61
+ sessionToken: z.string().min(1)
62
+ });
63
+ var MealPlanGuestSessionResponseSchema = z.object({
64
+ mealPlan: MealPlanResponseSchema,
65
+ token: MealPlanShareLinkTokenSchema,
66
+ guestId: z.string().min(1),
67
+ nickname: z.string().min(1).max(50),
68
+ sessionToken: z.string().min(1)
69
+ });
70
+
71
+ // src/domain/meal-plan/meal-group.schema.ts
72
+ import { z as z2 } from "zod";
73
+ var MealGroupMemberRoleSchema = z2.enum([
74
+ "OWNER",
75
+ "MEMBER"
76
+ ]);
77
+ var MealGroupMemberSchema = z2.object({
78
+ member: MemberCoreSchema,
79
+ role: MealGroupMemberRoleSchema,
80
+ joinedAt: ISODateTimeStringSchema
81
+ });
82
+ var MealGroupResponseSchema = z2.object({
83
+ mealGroupId: MealGroupIdSchema,
84
+ name: z2.string().min(1).max(50),
85
+ owner: MemberCoreSchema,
86
+ profileImageUrl: z2.string().url().nullable(),
87
+ members: z2.array(MealGroupMemberSchema),
88
+ recentMealPlanIds: z2.array(MealPlanIdSchema),
89
+ createdAt: ISODateTimeStringSchema,
90
+ updatedAt: ISODateTimeStringSchema
91
+ });
92
+ var CreateMealGroupRequestSchema = z2.object({
93
+ name: z2.string().min(1).max(50),
94
+ memberIds: z2.array(z2.number().int().positive()).min(1),
95
+ profileImageUrl: z2.string().url().nullable().optional(),
96
+ sourceMealPlanId: MealPlanIdSchema.optional()
97
+ });
98
+ var StartMealPlanFromGroupRequestSchema = z2.object({
99
+ title: z2.string().min(1).max(100).optional()
100
+ });
101
+ var AddMealGroupMemberRequestSchema = z2.object({
102
+ memberId: z2.number().int().positive(),
103
+ role: MealGroupMemberRoleSchema.default("MEMBER")
104
+ });
105
+ var UpdateMealGroupMemberRoleRequestSchema = z2.object({
106
+ role: MealGroupMemberRoleSchema
107
+ });
108
+ var MealGroupHistoryItemSchema = MyMealPlanListItemSchema.extend({});
109
+ var MealGroupPreferenceSummarySchema = z2.object({
110
+ mealGroupId: MealGroupIdSchema,
111
+ frequentMenuCategories: z2.array(z2.object({ label: z2.string(), count: z2.number().int().min(0) })),
112
+ frequentRestaurants: z2.array(z2.object({ restaurantName: z2.string(), count: z2.number().int().min(0) })),
113
+ recentMenuCategories: z2.array(z2.string()),
114
+ recommendationContext: z2.object({
115
+ preferredMenuCategories: z2.array(z2.string()),
116
+ excludedMenuCategories: z2.array(z2.string()),
117
+ candidateMenuCategories: z2.array(z2.string())
118
+ })
119
+ });
120
+ var MealGroupHistoryResponseSchema = z2.array(MealGroupHistoryItemSchema);
121
+
122
+ // src/domain/meal-plan/meal-plan-home-map.schema.ts
123
+ import { z as z3 } from "zod";
124
+ var HomeMealPlanActionKindSchema = z3.enum([
125
+ "CONTINUE_DECISION",
126
+ "TODAY_UPCOMING",
127
+ "RECORD_NEEDED",
128
+ "RESPOND_JOIN_REQUEST",
129
+ "NOTIFICATION_FOLLOW_UP"
130
+ ]);
131
+ var HomeMealPlanActionCardSchema = z3.object({
132
+ actionId: z3.string().min(1),
133
+ kind: HomeMealPlanActionKindSchema,
134
+ priority: z3.number().int().min(0),
135
+ title: z3.string().min(1),
136
+ description: z3.string().min(1),
137
+ primaryAction: z3.object({
138
+ label: z3.string().min(1),
139
+ href: z3.string().min(1)
140
+ }),
141
+ mealPlan: MyMealPlanListItemSchema.nullable(),
142
+ joinRequest: MealPlanJoinRequestSummarySchema.nullable(),
143
+ notification: MealPlanNotificationSchema.nullable().default(null)
144
+ });
145
+ var HomeMealPlanDashboardResponseSchema = z3.object({
146
+ generatedAt: ISODateTimeStringSchema,
147
+ inProgress: z3.array(MyMealPlanListItemSchema),
148
+ today: z3.array(MyMealPlanListItemSchema),
149
+ recordNeeded: z3.array(MyMealPlanListItemSchema),
150
+ pendingJoinRequests: z3.array(MealPlanJoinRequestSummarySchema),
151
+ unreadNotifications: z3.array(MealPlanNotificationSchema).default([]),
152
+ nextActions: z3.array(HomeMealPlanActionCardSchema)
153
+ });
154
+ var MealMapLayerSchema = z3.enum([
155
+ "MY_MEAL_PLAN_PLACE",
156
+ "NEARBY_FRIEND_MEAL_PLAN",
157
+ "FRIEND_RECORD_LOCATION",
158
+ "RESTAURANT_CANDIDATE"
159
+ ]);
160
+ var MealMapMarkerBaseSchema = z3.object({
161
+ markerId: z3.string().min(1),
162
+ lat: z3.number().min(-90).max(90),
163
+ lng: z3.number().min(-180).max(180),
164
+ title: z3.string().min(1),
165
+ subtitle: z3.string().nullable(),
166
+ href: z3.string().min(1).nullable(),
167
+ mealPlanId: MealPlanIdSchema.nullable(),
168
+ articleId: ArticleIdSchema.nullable(),
169
+ restaurant: RestaurantSchema.nullable(),
170
+ distanceMeters: z3.number().int().min(0).nullable(),
171
+ updatedAt: ISODateTimeStringSchema
172
+ });
173
+ var MealMapMyMealPlanPlaceMetadataSchema = z3.object({
174
+ ownerId: MemberIdSchema.nullable().default(null),
175
+ status: z3.string().min(1),
176
+ participantCount: z3.number().int().min(1),
177
+ source: z3.string().min(1)
178
+ });
179
+ var MealMapNearbyFriendMealPlanMetadataSchema = z3.object({
180
+ ownerId: MemberIdSchema.nullable().default(null),
181
+ ownerName: z3.string().min(1),
182
+ participantCount: z3.number().int().min(1),
183
+ expiresAt: ISODateTimeStringSchema.nullable(),
184
+ source: z3.string().min(1)
185
+ });
186
+ var MealMapFriendRecordLocationMetadataSchema = z3.object({
187
+ authorId: MemberIdSchema.nullable().default(null),
188
+ authorName: z3.string().min(1),
189
+ imageUrl: z3.string().nullable().default(null),
190
+ mealDate: z3.string().min(1)
191
+ });
192
+ var MealMapRestaurantCandidateCompletionBlockedReasonSchema = z3.enum([
193
+ "OWNER_ONLY",
194
+ "STAGE_ALREADY_COMPLETED",
195
+ "MEAL_PLAN_NOT_MUTABLE"
196
+ ]);
197
+ var MealMapRestaurantCandidateMetadataSchema = z3.object({
198
+ stageId: MealPlanDecisionStageIdSchema,
199
+ ownerId: MemberIdSchema.nullable().default(null),
200
+ status: z3.string().min(1),
201
+ source: z3.enum(["search", "fallback", "manual"]).default("search"),
202
+ stageStatus: z3.enum(["OPEN", "COMPLETED", "REOPENED"]).default("OPEN"),
203
+ canVote: z3.boolean().default(false),
204
+ canCompleteStage: z3.boolean().default(false),
205
+ completionBlockedReason: MealMapRestaurantCandidateCompletionBlockedReasonSchema.nullable().default(null)
206
+ });
207
+ var MealMapMarkerSchema = z3.discriminatedUnion("layer", [
208
+ MealMapMarkerBaseSchema.extend({
209
+ layer: z3.literal("MY_MEAL_PLAN_PLACE"),
210
+ metadata: MealMapMyMealPlanPlaceMetadataSchema
211
+ }),
212
+ MealMapMarkerBaseSchema.extend({
213
+ layer: z3.literal("NEARBY_FRIEND_MEAL_PLAN"),
214
+ metadata: MealMapNearbyFriendMealPlanMetadataSchema
215
+ }),
216
+ MealMapMarkerBaseSchema.extend({
217
+ layer: z3.literal("FRIEND_RECORD_LOCATION"),
218
+ metadata: MealMapFriendRecordLocationMetadataSchema
219
+ }),
220
+ MealMapMarkerBaseSchema.extend({
221
+ layer: z3.literal("RESTAURANT_CANDIDATE"),
222
+ metadata: MealMapRestaurantCandidateMetadataSchema
223
+ })
224
+ ]);
225
+ var MealMapQuerySchema = z3.object({
226
+ friendRecordDays: z3.coerce.number().int().min(1).max(90).optional().default(7)
227
+ });
228
+ var MealMapResponseSchema = z3.object({
229
+ generatedAt: ISODateTimeStringSchema,
230
+ center: z3.object({
231
+ lat: z3.number().min(-90).max(90),
232
+ lng: z3.number().min(-180).max(180),
233
+ source: z3.enum(["LAST_KNOWN_LOCATION", "MY_MEAL_PLAN", "DEFAULT"])
234
+ }),
235
+ layers: z3.object({
236
+ myMealPlanPlaces: z3.array(MealMapMarkerSchema),
237
+ nearbyFriendMealPlans: z3.array(MealMapMarkerSchema),
238
+ friendRecordLocations: z3.array(MealMapMarkerSchema),
239
+ restaurantCandidates: z3.array(MealMapMarkerSchema)
240
+ })
241
+ });
242
+
243
+ // src/domain/meal-plan/meal-plan-notification-priority.ts
244
+ var DEFAULT_POLICY = MEAL_PLAN_NOTIFICATION_PRIORITY_POLICIES.MEAL_PLAN_PARTICIPANT_JOINED;
245
+ function getMealPlanNotificationPriorityPolicy(kind) {
246
+ return MEAL_PLAN_NOTIFICATION_PRIORITY_POLICIES[kind] ?? DEFAULT_POLICY;
247
+ }
248
+ function getMealPlanNotificationPriority(kind, channel = "HOME") {
249
+ const policy = getMealPlanNotificationPriorityPolicy(kind);
250
+ switch (channel) {
251
+ case "HOME":
252
+ return policy.homePriority;
253
+ case "NOTIFICATION_INBOX":
254
+ return policy.inboxPriority;
255
+ case "FCM_PUSH":
256
+ return policy.fcmPriority;
257
+ case "LIVE_ACTIVITY":
258
+ return policy.liveActivityPriority;
259
+ default:
260
+ return policy.priority;
261
+ }
262
+ }
263
+ function getMealPlanLiveActivityBehavior(kind) {
264
+ return getMealPlanNotificationPriorityPolicy(kind).liveActivityBehavior;
265
+ }
266
+ function shouldShowForegroundToast(kind) {
267
+ return getMealPlanNotificationPriorityPolicy(kind).foregroundToast;
268
+ }
269
+ function compareMealPlanNotificationsByPriority(channel) {
270
+ return (a, b) => {
271
+ const unreadDelta = Number(Boolean(a.readAt)) - Number(Boolean(b.readAt));
272
+ if (unreadDelta !== 0) return unreadDelta;
273
+ const priorityDelta = getMealPlanNotificationPriority(a.kind, channel) - getMealPlanNotificationPriority(b.kind, channel);
274
+ if (priorityDelta !== 0) return priorityDelta;
275
+ return new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime();
276
+ };
277
+ }
278
+
279
+ export {
280
+ CreateMealPlanShareLinkRequestSchema,
281
+ MealPlanShareLinkSummarySchema,
282
+ MealPlanSharePreviewResponseSchema,
283
+ JoinMealPlanGuestRequestSchema,
284
+ JoinMealPlanGuestResponseSchema,
285
+ MealPlanGuestSessionQuerySchema,
286
+ MealPlanGuestSessionResponseSchema,
287
+ MealGroupMemberRoleSchema,
288
+ MealGroupMemberSchema,
289
+ MealGroupResponseSchema,
290
+ CreateMealGroupRequestSchema,
291
+ StartMealPlanFromGroupRequestSchema,
292
+ AddMealGroupMemberRequestSchema,
293
+ UpdateMealGroupMemberRoleRequestSchema,
294
+ MealGroupHistoryItemSchema,
295
+ MealGroupPreferenceSummarySchema,
296
+ MealGroupHistoryResponseSchema,
297
+ HomeMealPlanActionKindSchema,
298
+ HomeMealPlanActionCardSchema,
299
+ HomeMealPlanDashboardResponseSchema,
300
+ MealMapLayerSchema,
301
+ MealMapMyMealPlanPlaceMetadataSchema,
302
+ MealMapNearbyFriendMealPlanMetadataSchema,
303
+ MealMapFriendRecordLocationMetadataSchema,
304
+ MealMapRestaurantCandidateCompletionBlockedReasonSchema,
305
+ MealMapRestaurantCandidateMetadataSchema,
306
+ MealMapMarkerSchema,
307
+ MealMapQuerySchema,
308
+ MealMapResponseSchema,
309
+ getMealPlanNotificationPriorityPolicy,
310
+ getMealPlanNotificationPriority,
311
+ getMealPlanLiveActivityBehavior,
312
+ shouldShowForegroundToast,
313
+ compareMealPlanNotificationsByPriority
314
+ };
@@ -1,21 +1,22 @@
1
1
  import {
2
2
  RestaurantSchema
3
- } from "./chunk-GTVEQYJW.js";
4
- import {
5
- ISODateStringSchema,
6
- ISODateTimeStringSchema
7
- } from "./chunk-HRM3FQPL.js";
3
+ } from "./chunk-7JYVBXKQ.js";
8
4
  import {
9
5
  MemberCoreSchema,
10
6
  UploadPresignImageRequestSchema,
11
7
  UploadPresignImageResponseSchema
12
- } from "./chunk-ZH7D7B2Y.js";
8
+ } from "./chunk-C63TN7L3.js";
9
+ import {
10
+ ISODateStringSchema,
11
+ ISODateTimeStringSchema
12
+ } from "./chunk-HRM3FQPL.js";
13
13
  import {
14
14
  ArticleIdSchema,
15
15
  CommentIdSchema,
16
16
  FoodSchema,
17
+ MealPlanIdSchema,
17
18
  MemberIdSchema
18
- } from "./chunk-H77ISYYC.js";
19
+ } from "./chunk-XMRYAG3V.js";
19
20
 
20
21
  // src/domain/article/article.schema.ts
21
22
  import { z as z2 } from "zod";
@@ -57,7 +58,8 @@ var CreateArticleRequestSchema = z2.object({
57
58
  mealDate: ISODateStringSchema,
58
59
  restaurant: RestaurantSchema,
59
60
  taggedMemberIds: z2.array(MemberIdSchema).default([]),
60
- foodAnalysis: FoodAnalysisResultSchema.optional()
61
+ foodAnalysis: FoodAnalysisResultSchema.optional(),
62
+ mealPlanId: MealPlanIdSchema.optional()
61
63
  });
62
64
  var CreateCommentRequestSchema = z2.object({
63
65
  content: z2.string().min(1).max(500),
@@ -77,6 +79,7 @@ var ArticleCoreSchema = z2.object({
77
79
  imageUrl: z2.string().url(),
78
80
  mealDate: ISODateStringSchema,
79
81
  restaurant: RestaurantSchema,
82
+ mealPlanId: MealPlanIdSchema.nullable(),
80
83
  createdAt: ISODateTimeStringSchema,
81
84
  updatedAt: ISODateTimeStringSchema,
82
85
  expiresAt: ISODateTimeStringSchema,