@jaicome/contracts 0.0.75 → 0.0.76
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.
- package/dist/fulfillment-states.d.mts +43 -2
- package/dist/fulfillment-states.mjs +67 -2
- package/dist/index.d.mts +1244 -449
- package/dist/index.mjs +179 -52
- package/dist/{orders-Dr9SO3_e.d.mts → orders-CHXvc7L7.d.mts} +809 -254
- package/dist/payments-Qea5Yb_X.d.mts +387 -0
- package/dist/schema/index.d.mts +890 -638
- package/dist/schema/index.mjs +2 -2
- package/dist/utils/payment-resolver.d.mts +87 -0
- package/dist/utils/payment-resolver.mjs +118 -0
- package/dist/{schema-BtaubbtD.mjs → zatca-CEInGWOH.mjs} +549 -238
- package/package.json +7 -2
|
@@ -159,7 +159,7 @@ const translationFieldSchema = z.record(z.string(), z.string());
|
|
|
159
159
|
|
|
160
160
|
//#endregion
|
|
161
161
|
//#region src/schema/catalog.ts
|
|
162
|
-
const catalogAmountSchema = z.bigint();
|
|
162
|
+
const catalogAmountSchema = z.coerce.bigint();
|
|
163
163
|
const catalogAvailabilityValues = [
|
|
164
164
|
"AVAILABLE",
|
|
165
165
|
"SOLDOUT",
|
|
@@ -246,7 +246,10 @@ const catalogItemDetailSchema = z.object({
|
|
|
246
246
|
id: z.string(),
|
|
247
247
|
name: translationFieldSchema,
|
|
248
248
|
description: translationFieldSchema.nullish(),
|
|
249
|
-
|
|
249
|
+
images: z.array(z.object({
|
|
250
|
+
id: z.string(),
|
|
251
|
+
url: z.string()
|
|
252
|
+
})),
|
|
250
253
|
foodAndBeverageDetails: z.object({
|
|
251
254
|
calorie: z.number(),
|
|
252
255
|
ingredients: z.array(z.enum(catalogFoodIngredientValues)),
|
|
@@ -402,7 +405,8 @@ const updateItemInputSchema = z.object({
|
|
|
402
405
|
update: z.object({
|
|
403
406
|
name: z.record(z.string(), z.string()).nullish(),
|
|
404
407
|
description: z.record(z.string(), z.string()).nullish(),
|
|
405
|
-
availability: z.enum(catalogAvailabilityValues).nullish()
|
|
408
|
+
availability: z.enum(catalogAvailabilityValues).nullish(),
|
|
409
|
+
ordinal: z.number().int().nonnegative().nullish()
|
|
406
410
|
})
|
|
407
411
|
});
|
|
408
412
|
const updateItemOutputSchema = z.object({
|
|
@@ -546,7 +550,7 @@ const catalogModifierListDetailSchema = z.object({
|
|
|
546
550
|
const getModifierListOutputSchema = catalogModifierListDetailSchema;
|
|
547
551
|
const updateModifierInputSchema = z.object({
|
|
548
552
|
modifierId: z.string(),
|
|
549
|
-
name: z.string(),
|
|
553
|
+
name: z.record(z.string(), z.string()),
|
|
550
554
|
priceAmount: catalogAmountSchema,
|
|
551
555
|
onByDefault: z.boolean(),
|
|
552
556
|
ordinal: z.number().int().nonnegative().nullish(),
|
|
@@ -555,7 +559,7 @@ const updateModifierInputSchema = z.object({
|
|
|
555
559
|
const updateModifierOutputSchema = mutationIdOutputSchema;
|
|
556
560
|
const updateModifierListInputSchema = z.object({
|
|
557
561
|
modifierListId: z.string(),
|
|
558
|
-
name: z.string(),
|
|
562
|
+
name: z.record(z.string(), z.string()),
|
|
559
563
|
selectionType: z.enum(catalogSelectionTypeValues),
|
|
560
564
|
ordinal: z.number().int().nonnegative().nullish(),
|
|
561
565
|
merchantId: z.string().optional()
|
|
@@ -801,7 +805,7 @@ const discountBaseSchema = z.object({
|
|
|
801
805
|
itemIds: z.array(z.string().uuid()).default([]),
|
|
802
806
|
categoryIds: z.array(z.string().uuid()).default([])
|
|
803
807
|
});
|
|
804
|
-
const ensureTargets = (data, ctx) => {
|
|
808
|
+
const ensureTargets$2 = (data, ctx) => {
|
|
805
809
|
if (data.autoApplyScope === "SELECTED_ITEMS" && (!data.itemIds || data.itemIds.length === 0)) ctx.addIssue({
|
|
806
810
|
code: z.ZodIssueCode.custom,
|
|
807
811
|
path: ["itemIds"],
|
|
@@ -828,7 +832,7 @@ const discountCoreSchema = z.object({
|
|
|
828
832
|
categoryIds: z.array(z.string().uuid()).nullish()
|
|
829
833
|
});
|
|
830
834
|
const createDiscountInputSchema = discountCoreSchema.superRefine((data, ctx) => {
|
|
831
|
-
ensureTargets(data, ctx);
|
|
835
|
+
ensureTargets$2(data, ctx);
|
|
832
836
|
if (data.discountType === "PERCENTAGE" && data.value > 100) ctx.addIssue({
|
|
833
837
|
code: z.ZodIssueCode.custom,
|
|
834
838
|
path: ["value"],
|
|
@@ -836,7 +840,7 @@ const createDiscountInputSchema = discountCoreSchema.superRefine((data, ctx) =>
|
|
|
836
840
|
});
|
|
837
841
|
});
|
|
838
842
|
const updateDiscountPatchSchema = discountCoreSchema.partial().superRefine((data, ctx) => {
|
|
839
|
-
ensureTargets(data, ctx);
|
|
843
|
+
ensureTargets$2(data, ctx);
|
|
840
844
|
if ((data.discountType === "PERCENTAGE" || !data.discountType) && typeof data.value === "number" && data.value > 100) ctx.addIssue({
|
|
841
845
|
code: z.ZodIssueCode.custom,
|
|
842
846
|
path: ["value"],
|
|
@@ -1028,13 +1032,13 @@ const merchantBaseSchema = z.object({
|
|
|
1028
1032
|
id: z.uuid(),
|
|
1029
1033
|
name: translationFieldSchema,
|
|
1030
1034
|
description: translationFieldSchema,
|
|
1031
|
-
slug: z.string(),
|
|
1035
|
+
slug: z.string().nullable(),
|
|
1032
1036
|
ownerId: z.string(),
|
|
1033
1037
|
country: z.string(),
|
|
1034
|
-
businessEmail: z.string(),
|
|
1035
|
-
phoneNumber: z.string(),
|
|
1036
|
-
logoUrl: z.string(),
|
|
1037
|
-
bannerUrl: z.string(),
|
|
1038
|
+
businessEmail: z.string().nullable(),
|
|
1039
|
+
phoneNumber: z.string().nullable(),
|
|
1040
|
+
logoUrl: z.string().nullable(),
|
|
1041
|
+
bannerUrl: z.string().nullable(),
|
|
1038
1042
|
createdAt: z.date(),
|
|
1039
1043
|
updatedAt: z.date()
|
|
1040
1044
|
});
|
|
@@ -1055,15 +1059,11 @@ const merchantIntegrationSchema = z.object({
|
|
|
1055
1059
|
updatedAt: z.date()
|
|
1056
1060
|
});
|
|
1057
1061
|
const merchantLegalDetailsSchema = z.object({
|
|
1058
|
-
id: z.uuid(),
|
|
1059
|
-
merchantId: z.uuid(),
|
|
1060
1062
|
CRNNumber: z.string(),
|
|
1061
1063
|
VATName: z.string().nullable(),
|
|
1062
1064
|
VATNumber: z.string().nullable(),
|
|
1063
1065
|
crnDocUrl: z.string().nullable(),
|
|
1064
|
-
vatDocUrl: z.string().nullable()
|
|
1065
|
-
createdAt: z.date(),
|
|
1066
|
-
updatedAt: z.date()
|
|
1066
|
+
vatDocUrl: z.string().nullable()
|
|
1067
1067
|
});
|
|
1068
1068
|
const merchantFullDetailsSchema = z.object({
|
|
1069
1069
|
id: z.uuid(),
|
|
@@ -1115,32 +1115,16 @@ const merchantListItemSchema = z.object({
|
|
|
1115
1115
|
name: translationFieldSchema,
|
|
1116
1116
|
businessEmail: z.string().nullable(),
|
|
1117
1117
|
phoneNumber: z.string().nullable(),
|
|
1118
|
+
logoUrl: z.string().nullable(),
|
|
1118
1119
|
country: z.string(),
|
|
1119
1120
|
createdAt: z.date()
|
|
1120
1121
|
});
|
|
1121
1122
|
const listMerchantsOutputSchema = baseListOutputSchema(merchantListItemSchema);
|
|
1122
|
-
const
|
|
1123
|
-
merchantId: z.uuid(),
|
|
1124
|
-
CRNNumber: z.string().min(1),
|
|
1125
|
-
VATName: z.string().optional(),
|
|
1126
|
-
VATNumber: z.string().optional(),
|
|
1127
|
-
crnDoc: z.instanceof(File).optional(),
|
|
1128
|
-
vatDoc: z.instanceof(File).optional()
|
|
1129
|
-
});
|
|
1130
|
-
const updateMerchantLegalDetailsInputSchema = z.object({
|
|
1131
|
-
merchantId: z.uuid(),
|
|
1132
|
-
legalDetailsId: z.uuid(),
|
|
1133
|
-
CRNNumber: z.string().min(1).optional(),
|
|
1134
|
-
VATName: z.string().optional(),
|
|
1135
|
-
VATNumber: z.string().optional(),
|
|
1136
|
-
crnDoc: z.instanceof(File).nullable().optional(),
|
|
1137
|
-
vatDoc: z.instanceof(File).nullable().optional()
|
|
1138
|
-
});
|
|
1139
|
-
const uploadCrnDocumentInputSchema = z.object({
|
|
1123
|
+
const uploadMerchantCrnDocInputSchema = z.object({
|
|
1140
1124
|
merchantId: z.uuid(),
|
|
1141
1125
|
crnDoc: z.instanceof(File)
|
|
1142
1126
|
});
|
|
1143
|
-
const
|
|
1127
|
+
const uploadMerchantVatDocInputSchema = z.object({
|
|
1144
1128
|
merchantId: z.uuid(),
|
|
1145
1129
|
vatDoc: z.instanceof(File)
|
|
1146
1130
|
});
|
|
@@ -1151,7 +1135,21 @@ const updateMerchantInputSchema = z.object({
|
|
|
1151
1135
|
businessEmail: z.string().email().optional(),
|
|
1152
1136
|
phoneNumber: z.string().optional(),
|
|
1153
1137
|
logo: z.instanceof(File).nullable().optional(),
|
|
1154
|
-
banner: z.instanceof(File).nullable().optional()
|
|
1138
|
+
banner: z.instanceof(File).nullable().optional(),
|
|
1139
|
+
legalDetails: z.object({
|
|
1140
|
+
CRNNumber: z.string().min(1).optional(),
|
|
1141
|
+
VATName: z.string().nullable().optional(),
|
|
1142
|
+
VATNumber: z.string().nullable().optional()
|
|
1143
|
+
}).nullable().optional()
|
|
1144
|
+
});
|
|
1145
|
+
const deleteMerchantAccountInputSchema = z.object({
|
|
1146
|
+
password: z.string().min(1),
|
|
1147
|
+
confirmSoftDelete: z.literal(true)
|
|
1148
|
+
});
|
|
1149
|
+
const deleteMerchantAccountOutputSchema = z.object({
|
|
1150
|
+
success: z.literal(true),
|
|
1151
|
+
merchantId: z.uuid(),
|
|
1152
|
+
deletedAt: z.date()
|
|
1155
1153
|
});
|
|
1156
1154
|
|
|
1157
1155
|
//#endregion
|
|
@@ -1202,9 +1200,155 @@ const acceptedPaymentIds = ["COD", "ONLINE"];
|
|
|
1202
1200
|
*/
|
|
1203
1201
|
const paymentGatewayIds = ["MOYASAR"];
|
|
1204
1202
|
|
|
1203
|
+
//#endregion
|
|
1204
|
+
//#region src/schema/payments.ts
|
|
1205
|
+
const gatewayIds = paymentGatewayIds;
|
|
1206
|
+
const paymentStatuses = [
|
|
1207
|
+
"INITIATED",
|
|
1208
|
+
"PAID",
|
|
1209
|
+
"AUTHORIZED",
|
|
1210
|
+
"FAILED",
|
|
1211
|
+
"REFUNDED",
|
|
1212
|
+
"CAPTURED",
|
|
1213
|
+
"VOIDED",
|
|
1214
|
+
"VERIFIED"
|
|
1215
|
+
];
|
|
1216
|
+
const initiatePaymentInputSchema = z.object({
|
|
1217
|
+
entities: z.object({
|
|
1218
|
+
merchantId: z.string(),
|
|
1219
|
+
customerId: z.string()
|
|
1220
|
+
}),
|
|
1221
|
+
payment: z.object({
|
|
1222
|
+
method: z.enum(paymentMethodIds),
|
|
1223
|
+
orderId: z.string(),
|
|
1224
|
+
amount: z.number(),
|
|
1225
|
+
currency: z.string(),
|
|
1226
|
+
description: z.string(),
|
|
1227
|
+
language: z.string(),
|
|
1228
|
+
metadata: z.record(z.string(), z.unknown()),
|
|
1229
|
+
success_url: z.string()
|
|
1230
|
+
}),
|
|
1231
|
+
metadata: z.record(z.string(), z.unknown()).nullish()
|
|
1232
|
+
});
|
|
1233
|
+
const initiatePaymentOutputSchema = z.object({ url: z.string() });
|
|
1234
|
+
const paymentSourceSchema = z.object({
|
|
1235
|
+
type: z.string().optional(),
|
|
1236
|
+
company: z.string().optional(),
|
|
1237
|
+
entryMethod: z.string().optional(),
|
|
1238
|
+
card: z.object({
|
|
1239
|
+
bin: z.string().optional(),
|
|
1240
|
+
expMonth: z.number().optional(),
|
|
1241
|
+
expYear: z.number().optional(),
|
|
1242
|
+
fingerprint: z.string().optional(),
|
|
1243
|
+
last4: z.string().optional()
|
|
1244
|
+
}).optional(),
|
|
1245
|
+
digitalWalletDetails: z.object({
|
|
1246
|
+
type: z.string().optional(),
|
|
1247
|
+
brand: z.string().optional(),
|
|
1248
|
+
applicationDetails: z.unknown().optional()
|
|
1249
|
+
}).optional(),
|
|
1250
|
+
receivedMoney: z.unknown().optional(),
|
|
1251
|
+
changeMoney: z.unknown().optional()
|
|
1252
|
+
});
|
|
1253
|
+
const recordPaymentInputSchema = z.object({
|
|
1254
|
+
merchantId: z.string(),
|
|
1255
|
+
orderId: z.string(),
|
|
1256
|
+
payment: z.object({
|
|
1257
|
+
paymentId: z.string(),
|
|
1258
|
+
amount: z.number(),
|
|
1259
|
+
currency: z.string(),
|
|
1260
|
+
fee: z.number(),
|
|
1261
|
+
status: z.enum(paymentStatuses),
|
|
1262
|
+
gateway: z.enum(gatewayIds).nullable(),
|
|
1263
|
+
source: paymentSourceSchema,
|
|
1264
|
+
metadata: z.unknown(),
|
|
1265
|
+
ip: z.string().optional()
|
|
1266
|
+
})
|
|
1267
|
+
});
|
|
1268
|
+
const refundPaymentInputSchema = z.object({
|
|
1269
|
+
paymentId: z.string(),
|
|
1270
|
+
amount: z.number()
|
|
1271
|
+
});
|
|
1272
|
+
const paymentOutputSchema = z.object({
|
|
1273
|
+
id: z.string(),
|
|
1274
|
+
amount: z.number(),
|
|
1275
|
+
currency: z.string(),
|
|
1276
|
+
fee: z.number(),
|
|
1277
|
+
status: z.enum(paymentStatuses),
|
|
1278
|
+
gateway: z.enum(gatewayIds).nullable(),
|
|
1279
|
+
source: paymentSourceSchema,
|
|
1280
|
+
metadata: z.record(z.string(), z.unknown()).nullish(),
|
|
1281
|
+
ip: z.string().nullish(),
|
|
1282
|
+
orderId: z.string().uuid().nullish(),
|
|
1283
|
+
createdAt: z.date(),
|
|
1284
|
+
updatedAt: z.date()
|
|
1285
|
+
});
|
|
1286
|
+
const paymentListItemSchema = z.object({
|
|
1287
|
+
id: z.string(),
|
|
1288
|
+
amount: z.number(),
|
|
1289
|
+
currency: z.string(),
|
|
1290
|
+
fee: z.number(),
|
|
1291
|
+
status: z.enum(paymentStatuses),
|
|
1292
|
+
gateway: z.enum(gatewayIds).nullable(),
|
|
1293
|
+
source: paymentSourceSchema,
|
|
1294
|
+
orderId: z.string().uuid().nullish(),
|
|
1295
|
+
createdAt: z.date()
|
|
1296
|
+
});
|
|
1297
|
+
const paymentFilterSchema = z.object({
|
|
1298
|
+
merchantId: z.uuid().nullish(),
|
|
1299
|
+
locationId: z.uuid().nullish(),
|
|
1300
|
+
orderId: z.uuid().nullish(),
|
|
1301
|
+
status: z.enum(paymentStatuses).nullish(),
|
|
1302
|
+
gateway: z.enum(gatewayIds).nullable().nullish(),
|
|
1303
|
+
startTime: z.coerce.date().nullish(),
|
|
1304
|
+
endTime: z.coerce.date().nullish()
|
|
1305
|
+
});
|
|
1306
|
+
const listPaymentsInputSchema = z.object({
|
|
1307
|
+
pagination: z.object({
|
|
1308
|
+
page: z.number().min(1).default(1),
|
|
1309
|
+
pageSize: z.number().min(1).max(100).default(20)
|
|
1310
|
+
}).optional().default({
|
|
1311
|
+
page: 1,
|
|
1312
|
+
pageSize: 20
|
|
1313
|
+
}),
|
|
1314
|
+
filter: paymentFilterSchema.optional(),
|
|
1315
|
+
sort: z.record(z.string(), z.enum(["asc", "desc"])).optional()
|
|
1316
|
+
});
|
|
1317
|
+
const listPaymentsOutputSchema = z.object({
|
|
1318
|
+
items: z.array(paymentListItemSchema),
|
|
1319
|
+
pagination: z.object({
|
|
1320
|
+
page: z.number(),
|
|
1321
|
+
pageSize: z.number(),
|
|
1322
|
+
totalItems: z.number(),
|
|
1323
|
+
totalPages: z.number()
|
|
1324
|
+
})
|
|
1325
|
+
});
|
|
1326
|
+
const getPaymentInputSchema = z.object({ paymentId: z.uuid() });
|
|
1327
|
+
const refundOrderInputSchema = z.object({
|
|
1328
|
+
orderId: z.uuid(),
|
|
1329
|
+
amount: z.number().optional()
|
|
1330
|
+
});
|
|
1331
|
+
const refundOrderOutputSchema = z.object({
|
|
1332
|
+
orderId: z.string(),
|
|
1333
|
+
refundInitiated: z.boolean(),
|
|
1334
|
+
paymentIds: z.array(z.string()),
|
|
1335
|
+
message: z.string()
|
|
1336
|
+
});
|
|
1337
|
+
/** Payment types for COD (Cash on Delivery) orders. */
|
|
1338
|
+
const codPaymentTypeIds = ["CASH", "ONLINE"];
|
|
1339
|
+
/** Mark a COD payment as paid. */
|
|
1340
|
+
const setPaidInputSchema = z.object({
|
|
1341
|
+
paymentId: z.uuid(),
|
|
1342
|
+
type: z.enum(codPaymentTypeIds).optional()
|
|
1343
|
+
});
|
|
1344
|
+
const setPaidOutputSchema = z.object({
|
|
1345
|
+
success: z.boolean(),
|
|
1346
|
+
payment: paymentOutputSchema
|
|
1347
|
+
});
|
|
1348
|
+
|
|
1205
1349
|
//#endregion
|
|
1206
1350
|
//#region src/schema/promocodes.ts
|
|
1207
|
-
const promoCodeAmountSchema = z.bigint();
|
|
1351
|
+
const promoCodeAmountSchema = z.coerce.bigint();
|
|
1208
1352
|
const promoCodeScopes = ["APP", "LOCATION"];
|
|
1209
1353
|
const promoCodeDiscountTypes = ["PERCENTAGE", "FIXED_AMOUNT"];
|
|
1210
1354
|
const promoCodeApplicationTargets = [
|
|
@@ -1218,7 +1362,7 @@ const promoCodeConfigurationSchema = z.object({
|
|
|
1218
1362
|
usageLimit: z.number().int().positive().nullish(),
|
|
1219
1363
|
applyOn: z.array(z.enum(promoCodeApplicationTargets)).nullish(),
|
|
1220
1364
|
minOrderAmount: promoCodeAmountSchema.nullish(),
|
|
1221
|
-
maxDiscountAmount: z.number().int().positive().
|
|
1365
|
+
maxDiscountAmount: z.number().int().positive().nullish()
|
|
1222
1366
|
}).partial();
|
|
1223
1367
|
const promoCodeBaseSchema = z.object({
|
|
1224
1368
|
id: z.uuid(),
|
|
@@ -1257,15 +1401,10 @@ const createPromoCodeInputSchema = promoCodeCoreSchema.superRefine((data, ctx) =
|
|
|
1257
1401
|
path: ["locationId"],
|
|
1258
1402
|
message: "locationId is required for location scoped promo codes"
|
|
1259
1403
|
});
|
|
1260
|
-
if (data.discountType === "PERCENTAGE" && data.value >
|
|
1261
|
-
code: z.ZodIssueCode.custom,
|
|
1262
|
-
path: ["value"],
|
|
1263
|
-
message: "Percentage discounts cannot exceed 25%"
|
|
1264
|
-
});
|
|
1265
|
-
if (data.discountType === "FIXED_AMOUNT" && data.value > 25) ctx.addIssue({
|
|
1404
|
+
if (data.discountType === "PERCENTAGE" && data.value > 100) ctx.addIssue({
|
|
1266
1405
|
code: z.ZodIssueCode.custom,
|
|
1267
1406
|
path: ["value"],
|
|
1268
|
-
message: "
|
|
1407
|
+
message: "Percentage discounts cannot exceed 100%"
|
|
1269
1408
|
});
|
|
1270
1409
|
if (data.startsAt && data.expiresAt && data.expiresAt < data.startsAt) ctx.addIssue({
|
|
1271
1410
|
code: z.ZodIssueCode.custom,
|
|
@@ -1279,15 +1418,10 @@ const updatePromoCodePatchSchema = promoCodeCoreSchema.partial().superRefine((da
|
|
|
1279
1418
|
path: ["locationId"],
|
|
1280
1419
|
message: "locationId must be provided when changing scope to LOCATION"
|
|
1281
1420
|
});
|
|
1282
|
-
if ((data.discountType === "PERCENTAGE" || !data.discountType) && typeof data.value === "number" && data.value >
|
|
1283
|
-
code: z.ZodIssueCode.custom,
|
|
1284
|
-
path: ["value"],
|
|
1285
|
-
message: "Percentage discounts cannot exceed 25%"
|
|
1286
|
-
});
|
|
1287
|
-
if ((data.discountType === "FIXED_AMOUNT" || !data.discountType) && typeof data.value === "number" && data.value > 25) ctx.addIssue({
|
|
1421
|
+
if ((data.discountType === "PERCENTAGE" || !data.discountType) && typeof data.value === "number" && data.value > 100) ctx.addIssue({
|
|
1288
1422
|
code: z.ZodIssueCode.custom,
|
|
1289
1423
|
path: ["value"],
|
|
1290
|
-
message: "
|
|
1424
|
+
message: "Percentage discounts cannot exceed 100%"
|
|
1291
1425
|
});
|
|
1292
1426
|
if (data.startsAt && data.expiresAt && data.expiresAt < data.startsAt) ctx.addIssue({
|
|
1293
1427
|
code: z.ZodIssueCode.custom,
|
|
@@ -1329,7 +1463,7 @@ const defaultPromoCodeSort = defaultTimeSort;
|
|
|
1329
1463
|
|
|
1330
1464
|
//#endregion
|
|
1331
1465
|
//#region src/schema/orders.ts
|
|
1332
|
-
const orderAmountSchema = z.bigint();
|
|
1466
|
+
const orderAmountSchema = z.coerce.bigint();
|
|
1333
1467
|
const orderFulfillmentStateValues = [
|
|
1334
1468
|
"NEW",
|
|
1335
1469
|
"AWAITING_DELIVERY",
|
|
@@ -1412,6 +1546,14 @@ const orderFulfillmentSchema = z.discriminatedUnion("type", [
|
|
|
1412
1546
|
tableNumber: z.string()
|
|
1413
1547
|
})
|
|
1414
1548
|
]);
|
|
1549
|
+
const orderFulfillmentHistorySchema = z.object({
|
|
1550
|
+
id: z.string(),
|
|
1551
|
+
fulfillmentId: z.string(),
|
|
1552
|
+
oldState: z.enum(orderFulfillmentStateValues).nullish(),
|
|
1553
|
+
newState: z.enum(orderFulfillmentStateValues),
|
|
1554
|
+
version: z.number(),
|
|
1555
|
+
createdAt: z.coerce.date()
|
|
1556
|
+
});
|
|
1415
1557
|
const orderFulfillmentOutputSchema = z.discriminatedUnion("type", [
|
|
1416
1558
|
z.object({
|
|
1417
1559
|
type: z.literal("DELIVERY"),
|
|
@@ -1422,32 +1564,28 @@ const orderFulfillmentOutputSchema = z.discriminatedUnion("type", [
|
|
|
1422
1564
|
}),
|
|
1423
1565
|
customerAddress: z.string(),
|
|
1424
1566
|
duration: z.number(),
|
|
1425
|
-
distance: z.number()
|
|
1567
|
+
distance: z.number(),
|
|
1568
|
+
history: z.array(orderFulfillmentHistorySchema).default([])
|
|
1426
1569
|
}),
|
|
1427
1570
|
z.object({
|
|
1428
1571
|
type: z.literal("PICKUP"),
|
|
1429
|
-
state: z.enum(orderFulfillmentStateValues)
|
|
1572
|
+
state: z.enum(orderFulfillmentStateValues),
|
|
1573
|
+
history: z.array(orderFulfillmentHistorySchema).default([])
|
|
1430
1574
|
}),
|
|
1431
1575
|
z.object({
|
|
1432
1576
|
type: z.literal("CURBSIDE"),
|
|
1433
1577
|
state: z.enum(orderFulfillmentStateValues),
|
|
1434
1578
|
carPlateNumber: z.string(),
|
|
1435
|
-
parkingNumber: z.string().nullish()
|
|
1579
|
+
parkingNumber: z.string().nullish(),
|
|
1580
|
+
history: z.array(orderFulfillmentHistorySchema).default([])
|
|
1436
1581
|
}),
|
|
1437
1582
|
z.object({
|
|
1438
1583
|
type: z.literal("DINEIN"),
|
|
1439
1584
|
state: z.enum(orderFulfillmentStateValues),
|
|
1440
|
-
tableNumber: z.string()
|
|
1585
|
+
tableNumber: z.string(),
|
|
1586
|
+
history: z.array(orderFulfillmentHistorySchema).default([])
|
|
1441
1587
|
})
|
|
1442
1588
|
]);
|
|
1443
|
-
const orderFulfillmentHistorySchema = z.object({
|
|
1444
|
-
id: z.string(),
|
|
1445
|
-
fulfillmentId: z.string(),
|
|
1446
|
-
oldState: z.enum(orderFulfillmentStateValues).nullish(),
|
|
1447
|
-
newState: z.enum(orderFulfillmentStateValues),
|
|
1448
|
-
version: z.number(),
|
|
1449
|
-
createdAt: z.date()
|
|
1450
|
-
});
|
|
1451
1589
|
const orderModifierSchema = z.object({
|
|
1452
1590
|
id: z.string(),
|
|
1453
1591
|
quantity: z.number()
|
|
@@ -1478,7 +1616,10 @@ const orderLineItemSchema = z.object({
|
|
|
1478
1616
|
quantity: z.number()
|
|
1479
1617
|
}).array().nullish(),
|
|
1480
1618
|
totalAmount: orderAmountSchema,
|
|
1481
|
-
note: z.string().nullish()
|
|
1619
|
+
note: z.string().nullish(),
|
|
1620
|
+
categoryIds: z.array(z.string()).nullish(),
|
|
1621
|
+
itemId: z.string().nullish(),
|
|
1622
|
+
variationId: z.string().nullish()
|
|
1482
1623
|
});
|
|
1483
1624
|
const orderPromocodeSummarySchema = z.object({
|
|
1484
1625
|
valid: z.boolean(),
|
|
@@ -1509,7 +1650,9 @@ const orderSchema = z.object({
|
|
|
1509
1650
|
customer: orderCustomerSchema.nullish(),
|
|
1510
1651
|
lineItems: orderLineItemSchema.array(),
|
|
1511
1652
|
fulfillments: orderFulfillmentOutputSchema.array(),
|
|
1512
|
-
|
|
1653
|
+
paymentSource: paymentSourceSchema.nullish(),
|
|
1654
|
+
paymentStatus: z.enum(paymentStatuses).nullish(),
|
|
1655
|
+
paymentMethod: z.enum(paymentMethodIds).nullish(),
|
|
1513
1656
|
taxes: z.object({
|
|
1514
1657
|
id: z.string().nullish(),
|
|
1515
1658
|
catalogObjectId: z.string().nullish(),
|
|
@@ -1529,8 +1672,8 @@ const orderSchema = z.object({
|
|
|
1529
1672
|
type: z.string().nullish(),
|
|
1530
1673
|
scope: z.string().nullish()
|
|
1531
1674
|
}).array().nullish(),
|
|
1532
|
-
createdAt: z.date(),
|
|
1533
|
-
updatedAt: z.date(),
|
|
1675
|
+
createdAt: z.coerce.date(),
|
|
1676
|
+
updatedAt: z.coerce.date(),
|
|
1534
1677
|
discountAmount: orderAmountSchema.default(0n),
|
|
1535
1678
|
subtotalAmount: orderAmountSchema.default(0n),
|
|
1536
1679
|
taxAmount: orderAmountSchema.default(0n),
|
|
@@ -1563,8 +1706,7 @@ const orderSchema = z.object({
|
|
|
1563
1706
|
metadata: z.record(z.string(), z.any()).nullish(),
|
|
1564
1707
|
promocode: orderPromocodeSummarySchema.nullish(),
|
|
1565
1708
|
paymentIds: z.array(z.uuid()),
|
|
1566
|
-
source: orderSourceSchema.nullish()
|
|
1567
|
-
fulfillmentHistory: orderFulfillmentHistorySchema.array().default([])
|
|
1709
|
+
source: orderSourceSchema.nullish()
|
|
1568
1710
|
});
|
|
1569
1711
|
const orderEntitiesSchema = z.object({ merchantId: z.string() });
|
|
1570
1712
|
const orderConfigSchema = z.object({
|
|
@@ -1590,7 +1732,8 @@ const createOrderInputSchema = z.object({
|
|
|
1590
1732
|
lineItems: z.array(orderLineItemInputSchema),
|
|
1591
1733
|
note: z.string().nullish(),
|
|
1592
1734
|
fulfillment: orderFulfillmentSchema,
|
|
1593
|
-
|
|
1735
|
+
paymentSource: paymentSourceSchema.nullish(),
|
|
1736
|
+
paymentMethod: z.enum(paymentMethodIds).nullish(),
|
|
1594
1737
|
metadata: z.record(z.string(), z.any()).nullish(),
|
|
1595
1738
|
successUrl: z.string(),
|
|
1596
1739
|
promocode: orderPromocodeInputSchema.nullish()
|
|
@@ -1628,7 +1771,7 @@ const orderFilterSchema = baseFilterSchema.extend({
|
|
|
1628
1771
|
customerId: z.uuid().nullish(),
|
|
1629
1772
|
fulfillmentState: z.enum(orderFulfillmentStateValues).nullish(),
|
|
1630
1773
|
fulfillmentType: z.enum(orderFulfillmentTypes).nullish(),
|
|
1631
|
-
|
|
1774
|
+
paymentStatus: z.enum(paymentStatuses).nullish(),
|
|
1632
1775
|
coordinates: z.object({
|
|
1633
1776
|
latitude: z.number(),
|
|
1634
1777
|
longitude: z.number()
|
|
@@ -1642,7 +1785,9 @@ const orderSummarySchema = z.object({
|
|
|
1642
1785
|
locationId: z.string(),
|
|
1643
1786
|
customerId: z.string().nullish(),
|
|
1644
1787
|
customerName: z.string().nullish(),
|
|
1645
|
-
|
|
1788
|
+
paymentSource: paymentSourceSchema.nullish(),
|
|
1789
|
+
paymentStatus: z.enum(paymentStatuses).nullish(),
|
|
1790
|
+
paymentMethod: z.enum(paymentMethodIds).nullish(),
|
|
1646
1791
|
paymentIds: z.array(z.uuid()),
|
|
1647
1792
|
currency: z.string(),
|
|
1648
1793
|
totalAmount: orderAmountSchema,
|
|
@@ -1652,8 +1797,8 @@ const orderSummarySchema = z.object({
|
|
|
1652
1797
|
serviceChargeAmount: orderAmountSchema.nullish(),
|
|
1653
1798
|
tipAmount: orderAmountSchema.nullish(),
|
|
1654
1799
|
amountDue: orderAmountSchema.nullish(),
|
|
1655
|
-
createdAt: z.date(),
|
|
1656
|
-
updatedAt: z.date(),
|
|
1800
|
+
createdAt: z.coerce.date(),
|
|
1801
|
+
updatedAt: z.coerce.date(),
|
|
1657
1802
|
fulfillmentState: z.enum(orderFulfillmentStateValues).nullish(),
|
|
1658
1803
|
fulfillmentType: z.enum(orderFulfillmentTypes).nullish(),
|
|
1659
1804
|
source: orderSourceSchema.nullish()
|
|
@@ -1775,7 +1920,7 @@ const createDeliveryConfigInputSchema = z$1.object({
|
|
|
1775
1920
|
providers: z$1.array(providerPricingConfigSchema).min(1),
|
|
1776
1921
|
windows: z$1.array(createDeliveryWindowInputSchema).default([]),
|
|
1777
1922
|
minDeliveryAmount: amountSchema.nullish(),
|
|
1778
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
1923
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1).default(["COD", "ONLINE"])
|
|
1779
1924
|
});
|
|
1780
1925
|
const deliveryConfigSchema = z$1.object({
|
|
1781
1926
|
isEnabled: z$1.boolean(),
|
|
@@ -1794,7 +1939,7 @@ const deliveryConfigSchema = z$1.object({
|
|
|
1794
1939
|
endTime: z$1.string().regex(/^\d{2}:\d{2}$/)
|
|
1795
1940
|
})),
|
|
1796
1941
|
minDeliveryAmount: amountSchema.nullish(),
|
|
1797
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
1942
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1)
|
|
1798
1943
|
});
|
|
1799
1944
|
const addProviderInputSchema = z$1.object({
|
|
1800
1945
|
locationId: z$1.uuid(),
|
|
@@ -1840,12 +1985,12 @@ const themeSchema = z$1.object({
|
|
|
1840
1985
|
const pickupConfigSchema = z$1.object({
|
|
1841
1986
|
isEnabled: z$1.boolean(),
|
|
1842
1987
|
preparationTimeMinutes: z$1.number().int().min(0),
|
|
1843
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
1988
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1)
|
|
1844
1989
|
});
|
|
1845
1990
|
const dineInConfigSchema = z$1.object({
|
|
1846
1991
|
isEnabled: z$1.boolean(),
|
|
1847
1992
|
numberOfTables: z$1.number().int().min(0),
|
|
1848
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
1993
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1)
|
|
1849
1994
|
});
|
|
1850
1995
|
const curbsideSpotSchema = z$1.object({
|
|
1851
1996
|
id: z$1.string(),
|
|
@@ -1857,7 +2002,7 @@ const curbsideConfigSchema = z$1.object({
|
|
|
1857
2002
|
isEnabled: z$1.boolean(),
|
|
1858
2003
|
hasParkingSpots: z$1.boolean(),
|
|
1859
2004
|
spots: z$1.array(curbsideSpotSchema).optional(),
|
|
1860
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
2005
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1)
|
|
1861
2006
|
});
|
|
1862
2007
|
const temporaryClosureInputSchema = z$1.object({
|
|
1863
2008
|
duration: z$1.number().int().min(1).optional(),
|
|
@@ -1899,7 +2044,7 @@ const locationSchema = z$1.object({
|
|
|
1899
2044
|
logoUrl: z$1.string().nullish(),
|
|
1900
2045
|
backgroundUrl: z$1.string().nullish(),
|
|
1901
2046
|
mcc: z$1.string().nullish(),
|
|
1902
|
-
paymentTypes: z$1.enum(["COD", "
|
|
2047
|
+
paymentTypes: z$1.enum(["COD", "ONLINE"]).array(),
|
|
1903
2048
|
theme: themeSchema.nullish(),
|
|
1904
2049
|
timezone: z$1.string(),
|
|
1905
2050
|
type: z$1.string(),
|
|
@@ -1939,7 +2084,7 @@ const locationSummarySchema = z$1.object({
|
|
|
1939
2084
|
bannerUrl: z$1.string().nullish(),
|
|
1940
2085
|
mcc: z$1.string().nullish(),
|
|
1941
2086
|
numberOfTables: z$1.number().default(0),
|
|
1942
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
2087
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array(),
|
|
1943
2088
|
theme: themeSchema.nullish(),
|
|
1944
2089
|
type: z$1.string(),
|
|
1945
2090
|
meatSources: z$1.array(locationMeatSourceSchema).nullish(),
|
|
@@ -1979,7 +2124,7 @@ const upsertDineInInputSchema = z$1.object({
|
|
|
1979
2124
|
locationId: z$1.uuid(),
|
|
1980
2125
|
dinein: dineInConfigSchema.partial().extend({
|
|
1981
2126
|
windows: z$1.array(businessHoursPeriodSchema).optional(),
|
|
1982
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
2127
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1).optional()
|
|
1983
2128
|
})
|
|
1984
2129
|
});
|
|
1985
2130
|
const upsertDeliveryInputSchema = z$1.object({
|
|
@@ -1996,7 +2141,7 @@ const upsertPickupInputSchema = z$1.object({
|
|
|
1996
2141
|
locationId: z$1.uuid(),
|
|
1997
2142
|
pickup: pickupConfigSchema.partial().extend({
|
|
1998
2143
|
windows: z$1.array(businessHoursPeriodSchema).optional(),
|
|
1999
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
2144
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1).optional()
|
|
2000
2145
|
})
|
|
2001
2146
|
});
|
|
2002
2147
|
const upsertCurbsideInputSchema = z$1.object({
|
|
@@ -2006,7 +2151,7 @@ const upsertCurbsideInputSchema = z$1.object({
|
|
|
2006
2151
|
hasParkingSpots: true
|
|
2007
2152
|
}).partial().extend({
|
|
2008
2153
|
windows: z$1.array(businessHoursPeriodSchema).optional(),
|
|
2009
|
-
acceptedPayments: z$1.enum(["COD", "
|
|
2154
|
+
acceptedPayments: z$1.enum(["COD", "ONLINE"]).array().min(1).optional()
|
|
2010
2155
|
})
|
|
2011
2156
|
});
|
|
2012
2157
|
const addCurbsideSpotInputSchema = z$1.object({
|
|
@@ -2060,7 +2205,8 @@ const createWhatsAppGroupInputSchema = z$1.object({
|
|
|
2060
2205
|
const createWhatsAppGroupOutputSchema = z$1.object({
|
|
2061
2206
|
id: z$1.string().uuid(),
|
|
2062
2207
|
groupJid: z$1.string(),
|
|
2063
|
-
groupName: z$1.string()
|
|
2208
|
+
groupName: z$1.string(),
|
|
2209
|
+
inviteLink: z$1.string().url().optional()
|
|
2064
2210
|
});
|
|
2065
2211
|
/**
|
|
2066
2212
|
* Link an existing WhatsApp group to a location
|
|
@@ -2122,6 +2268,12 @@ const upsertLocationBusinessHoursInputSchema = z$1.object({
|
|
|
2122
2268
|
* Delete business hours for a location (fulfillmentType = GENERAL)
|
|
2123
2269
|
*/
|
|
2124
2270
|
const deleteLocationBusinessHoursInputSchema = z$1.object({ locationId: z$1.uuid() });
|
|
2271
|
+
const deleteLocationInputSchema = z$1.object({ locationId: z$1.uuid() });
|
|
2272
|
+
const deleteLocationOutputSchema = z$1.object({
|
|
2273
|
+
success: z$1.literal(true),
|
|
2274
|
+
locationId: z$1.uuid(),
|
|
2275
|
+
deletedAt: z$1.date()
|
|
2276
|
+
});
|
|
2125
2277
|
|
|
2126
2278
|
//#endregion
|
|
2127
2279
|
//#region src/schema/merchant-integrations.ts
|
|
@@ -2546,152 +2698,6 @@ const sendDirectMessageOutputSchema = z.object({
|
|
|
2546
2698
|
failedCount: z.number()
|
|
2547
2699
|
});
|
|
2548
2700
|
|
|
2549
|
-
//#endregion
|
|
2550
|
-
//#region src/schema/payments.ts
|
|
2551
|
-
const gatewayIds = paymentGatewayIds;
|
|
2552
|
-
const paymentStatuses = [
|
|
2553
|
-
"INITIATED",
|
|
2554
|
-
"PAID",
|
|
2555
|
-
"AUTHORIZED",
|
|
2556
|
-
"FAILED",
|
|
2557
|
-
"REFUNDED",
|
|
2558
|
-
"CAPTURED",
|
|
2559
|
-
"VOIDED",
|
|
2560
|
-
"VERIFIED"
|
|
2561
|
-
];
|
|
2562
|
-
const initiatePaymentInputSchema = z.object({
|
|
2563
|
-
entities: z.object({
|
|
2564
|
-
merchantId: z.string(),
|
|
2565
|
-
customerId: z.string()
|
|
2566
|
-
}),
|
|
2567
|
-
payment: z.object({
|
|
2568
|
-
method: z.enum(paymentMethodIds),
|
|
2569
|
-
orderId: z.string(),
|
|
2570
|
-
amount: z.number(),
|
|
2571
|
-
currency: z.string(),
|
|
2572
|
-
description: z.string(),
|
|
2573
|
-
language: z.string(),
|
|
2574
|
-
metadata: z.record(z.string(), z.unknown()),
|
|
2575
|
-
success_url: z.string()
|
|
2576
|
-
}),
|
|
2577
|
-
metadata: z.record(z.string(), z.unknown()).nullish()
|
|
2578
|
-
});
|
|
2579
|
-
const initiatePaymentOutputSchema = z.object({ url: z.string() });
|
|
2580
|
-
const paymentSourceSchema = z.object({
|
|
2581
|
-
type: z.string().optional(),
|
|
2582
|
-
company: z.string().optional(),
|
|
2583
|
-
entryMethod: z.string().optional(),
|
|
2584
|
-
card: z.object({
|
|
2585
|
-
bin: z.string().optional(),
|
|
2586
|
-
expMonth: z.number().optional(),
|
|
2587
|
-
expYear: z.number().optional(),
|
|
2588
|
-
fingerprint: z.string().optional(),
|
|
2589
|
-
last4: z.string().optional()
|
|
2590
|
-
}).optional(),
|
|
2591
|
-
digitalWalletDetails: z.object({
|
|
2592
|
-
type: z.string().optional(),
|
|
2593
|
-
brand: z.string().optional(),
|
|
2594
|
-
applicationDetails: z.unknown().optional()
|
|
2595
|
-
}).optional(),
|
|
2596
|
-
receivedMoney: z.unknown().optional(),
|
|
2597
|
-
changeMoney: z.unknown().optional()
|
|
2598
|
-
});
|
|
2599
|
-
const recordPaymentInputSchema = z.object({
|
|
2600
|
-
merchantId: z.string(),
|
|
2601
|
-
orderId: z.string(),
|
|
2602
|
-
payment: z.object({
|
|
2603
|
-
paymentId: z.string(),
|
|
2604
|
-
amount: z.number(),
|
|
2605
|
-
currency: z.string(),
|
|
2606
|
-
fee: z.number(),
|
|
2607
|
-
status: z.enum(paymentStatuses),
|
|
2608
|
-
gateway: z.enum(gatewayIds).nullable(),
|
|
2609
|
-
source: paymentSourceSchema,
|
|
2610
|
-
metadata: z.unknown(),
|
|
2611
|
-
ip: z.string().optional()
|
|
2612
|
-
})
|
|
2613
|
-
});
|
|
2614
|
-
const refundPaymentInputSchema = z.object({
|
|
2615
|
-
paymentId: z.string(),
|
|
2616
|
-
amount: z.number()
|
|
2617
|
-
});
|
|
2618
|
-
const paymentOutputSchema = z.object({
|
|
2619
|
-
id: z.string(),
|
|
2620
|
-
amount: z.number(),
|
|
2621
|
-
currency: z.string(),
|
|
2622
|
-
fee: z.number(),
|
|
2623
|
-
status: z.enum(paymentStatuses),
|
|
2624
|
-
gateway: z.enum(gatewayIds).nullable(),
|
|
2625
|
-
source: paymentSourceSchema,
|
|
2626
|
-
metadata: z.record(z.string(), z.unknown()).nullish(),
|
|
2627
|
-
ip: z.string().nullish(),
|
|
2628
|
-
orderId: z.string().uuid().nullish(),
|
|
2629
|
-
createdAt: z.date(),
|
|
2630
|
-
updatedAt: z.date()
|
|
2631
|
-
});
|
|
2632
|
-
const paymentListItemSchema = z.object({
|
|
2633
|
-
id: z.string(),
|
|
2634
|
-
amount: z.number(),
|
|
2635
|
-
currency: z.string(),
|
|
2636
|
-
fee: z.number(),
|
|
2637
|
-
status: z.enum(paymentStatuses),
|
|
2638
|
-
gateway: z.enum(gatewayIds).nullable(),
|
|
2639
|
-
source: paymentSourceSchema,
|
|
2640
|
-
orderId: z.string().uuid().nullish(),
|
|
2641
|
-
createdAt: z.date()
|
|
2642
|
-
});
|
|
2643
|
-
const paymentFilterSchema = z.object({
|
|
2644
|
-
merchantId: z.uuid().nullish(),
|
|
2645
|
-
locationId: z.uuid().nullish(),
|
|
2646
|
-
orderId: z.uuid().nullish(),
|
|
2647
|
-
status: z.enum(paymentStatuses).nullish(),
|
|
2648
|
-
gateway: z.enum(gatewayIds).nullable().nullish(),
|
|
2649
|
-
startTime: z.coerce.date().nullish(),
|
|
2650
|
-
endTime: z.coerce.date().nullish()
|
|
2651
|
-
});
|
|
2652
|
-
const listPaymentsInputSchema = z.object({
|
|
2653
|
-
pagination: z.object({
|
|
2654
|
-
page: z.number().min(1).default(1),
|
|
2655
|
-
pageSize: z.number().min(1).max(100).default(20)
|
|
2656
|
-
}).optional().default({
|
|
2657
|
-
page: 1,
|
|
2658
|
-
pageSize: 20
|
|
2659
|
-
}),
|
|
2660
|
-
filter: paymentFilterSchema.optional(),
|
|
2661
|
-
sort: z.record(z.string(), z.enum(["asc", "desc"])).optional()
|
|
2662
|
-
});
|
|
2663
|
-
const listPaymentsOutputSchema = z.object({
|
|
2664
|
-
items: z.array(paymentListItemSchema),
|
|
2665
|
-
pagination: z.object({
|
|
2666
|
-
page: z.number(),
|
|
2667
|
-
pageSize: z.number(),
|
|
2668
|
-
totalItems: z.number(),
|
|
2669
|
-
totalPages: z.number()
|
|
2670
|
-
})
|
|
2671
|
-
});
|
|
2672
|
-
const getPaymentInputSchema = z.object({ paymentId: z.uuid() });
|
|
2673
|
-
const refundOrderInputSchema = z.object({
|
|
2674
|
-
orderId: z.uuid(),
|
|
2675
|
-
amount: z.number().optional()
|
|
2676
|
-
});
|
|
2677
|
-
const refundOrderOutputSchema = z.object({
|
|
2678
|
-
orderId: z.string(),
|
|
2679
|
-
refundInitiated: z.boolean(),
|
|
2680
|
-
paymentIds: z.array(z.string()),
|
|
2681
|
-
message: z.string()
|
|
2682
|
-
});
|
|
2683
|
-
/** Payment types for COD (Cash on Delivery) orders. */
|
|
2684
|
-
const codPaymentTypeIds = ["CASH", "CARD"];
|
|
2685
|
-
/** Mark a COD payment as paid. */
|
|
2686
|
-
const setPaidInputSchema = z.object({
|
|
2687
|
-
paymentId: z.uuid(),
|
|
2688
|
-
type: z.enum(codPaymentTypeIds).optional()
|
|
2689
|
-
});
|
|
2690
|
-
const setPaidOutputSchema = z.object({
|
|
2691
|
-
success: z.boolean(),
|
|
2692
|
-
payment: paymentOutputSchema
|
|
2693
|
-
});
|
|
2694
|
-
|
|
2695
2701
|
//#endregion
|
|
2696
2702
|
//#region src/schema/payouts.ts
|
|
2697
2703
|
const payoutStatusSchema = z.enum([
|
|
@@ -2918,6 +2924,7 @@ const payoutReportOrderSchema = z.object({
|
|
|
2918
2924
|
platformFee: z.bigint(),
|
|
2919
2925
|
paymentFee: z.bigint(),
|
|
2920
2926
|
netPayout: z.bigint(),
|
|
2927
|
+
platformFeeDiscount: z.bigint(),
|
|
2921
2928
|
payments: z.array(payoutReportPaymentSchema)
|
|
2922
2929
|
});
|
|
2923
2930
|
/**
|
|
@@ -2925,12 +2932,24 @@ const payoutReportOrderSchema = z.object({
|
|
|
2925
2932
|
*/
|
|
2926
2933
|
const payoutReportOverallSchema = z.object({
|
|
2927
2934
|
totalRevenue: z.bigint(),
|
|
2935
|
+
totalHeldAmount: z.bigint(),
|
|
2928
2936
|
totalPlatformFee: z.bigint(),
|
|
2937
|
+
totalCancelledPlatformFee: z.bigint(),
|
|
2929
2938
|
totalPaymentFee: z.bigint(),
|
|
2930
2939
|
totalNetPayout: z.bigint(),
|
|
2940
|
+
totalPayoutAmount: z.bigint(),
|
|
2941
|
+
totalDueAmount: z.bigint(),
|
|
2931
2942
|
orderCount: z.number().int(),
|
|
2932
2943
|
onlinePaymentCount: z.number().int(),
|
|
2933
|
-
cashPaymentCount: z.number().int()
|
|
2944
|
+
cashPaymentCount: z.number().int(),
|
|
2945
|
+
totalDineInPlatformFeeDiscount: z.bigint(),
|
|
2946
|
+
dineInOrderCount: z.number().int(),
|
|
2947
|
+
completedRevenueMinor: z.bigint(),
|
|
2948
|
+
cancelledRevenueMinor: z.bigint(),
|
|
2949
|
+
failedRevenueMinor: z.bigint(),
|
|
2950
|
+
missingRevenueMinor: z.bigint(),
|
|
2951
|
+
dineInRevenueMinor: z.bigint(),
|
|
2952
|
+
dineInGatewayFeeMinor: z.bigint()
|
|
2934
2953
|
});
|
|
2935
2954
|
/**
|
|
2936
2955
|
* Summary KPIs schema
|
|
@@ -2945,7 +2964,9 @@ const payoutReportSummarySchema = z.object({
|
|
|
2945
2964
|
completedCount: z.number().int(),
|
|
2946
2965
|
canceledCount: z.number().int(),
|
|
2947
2966
|
refundedCount: z.number().int(),
|
|
2948
|
-
otherCount: z.number().int()
|
|
2967
|
+
otherCount: z.number().int(),
|
|
2968
|
+
newCount: z.number().int(),
|
|
2969
|
+
failedCount: z.number().int()
|
|
2949
2970
|
}),
|
|
2950
2971
|
byPaymentMethod: z.array(z.object({
|
|
2951
2972
|
method: z.enum(paymentMethodIds),
|
|
@@ -2960,6 +2981,7 @@ const payoutReportSummarySchema = z.object({
|
|
|
2960
2981
|
netPayout: z.bigint()
|
|
2961
2982
|
})),
|
|
2962
2983
|
averageOrderValue: z.bigint(),
|
|
2984
|
+
completionRate: z.number(),
|
|
2963
2985
|
topItems: z.array(z.object({
|
|
2964
2986
|
itemId: z.string().uuid(),
|
|
2965
2987
|
name: z.string(),
|
|
@@ -2977,4 +2999,293 @@ const payoutReportOutputSchema = z.object({
|
|
|
2977
2999
|
});
|
|
2978
3000
|
|
|
2979
3001
|
//#endregion
|
|
2980
|
-
export { getSmsBalanceInputSchema as $, catalogModifierLocationOverrideSchema as $a, bulkCustomerExportInputSchema as $i, updateWhatsAppGroupInputSchema as $n, modifierOverrideTypeValues as $o, promoCodeIdInputSchema as $r, qmileConfigSchema as $t, unsettledBalanceSchema as A, listMerchantCustomersOutputSchema as Aa, uploadVatDocumentInputSchema as Ai, listLocationsOutputSchema as An, getCatalogItemOutputSchema as Ao, orderGatewayIds as Ar, bannerIdInputSchema as As, connectIntegrationOutputSchema as At, paymentFilterSchema as B, catalogCategorySchema as Ba, anbSinglePaymentResponseSchema as Bi, pickupConfigSchema as Bn, linkOperationOutputSchema as Bo, scheduleTypeEnum as Br, baseListInputSchema as Bs, integrateLocationInputSchema as Bt, listPayoutsInputSchema as C, deleteCustomerInputSchema as Ca, merchantLegalDetailsSchema as Ci, linkWhatsAppGroupInputSchema as Cn, deleteModifierListOutputSchema as Co, orderEntitiesSchema as Cr, upsertVariationLocationOverrideInputSchema as Cs, createSubscriptionPlanInputSchema as Ct, payoutSchema as D, listCustomersInputSchema as Da, updateMerchantInputSchema as Di, listLocationWhatsAppGroupsInputSchema as Dn, deleteVariationInputSchema as Do, orderFulfillmentSchema as Dr, activeBannerListOutputSchema as Ds, subscriptionPlanSchema as Dt, payoutProviderSchema as E, listCustomerAddressesOutputSchema as Ea, merchantSyncEventSchema as Ei, listAvailableWhatsAppGroupsOutputSchema as En, deleteModifierOverrideOutputSchema as Eo, orderFulfillmentOutputSchema as Er, businessHoursSchema as Es, sendMerchantInvoiceInputSchema as Et, getPaymentInputSchema as F, upsertCustomerInputSchema as Fa, updateSocialInputSchema as Fi, locationMeatSourceSchema as Fn, getModifierListOutputSchema as Fo, orderPromocodeInputSchema as Fr, listActiveBannersInputSchema as Fs, deliveryProviderSchema as Ft, recordPaymentInputSchema as G, catalogItemSummarySchema as Ga, discountBaseSchema as Gi, removeLocationThemeInputSchema as Gn, listCatalogItemsInputSchema as Go, defaultPromoCodeSort as Gr, paginationSchema as Gs, leajlakConfigSchema as Gt, paymentOutputSchema as H, catalogFoodIngredientValues as Ha, mapAnbStatusToPayoutStatus as Hi, providerStrategyEnum as Hn, listCatalogCategoriesOutputSchema as Ho, upsertOrderConfigInputSchema as Hr, defaultTimeSort as Hs, integrationProviderSchema as Ht, initiatePaymentInputSchema as I, catalogAmountSchema as Ia, anbPaymentStatusResponseSchema as Ii, locationMutationOutputSchema as In, getModifierOutputSchema as Io, orderPromocodeSummarySchema as Ir, listBannersInputSchema as Is, deliveryStatusSchema as It, refundPaymentInputSchema as J, catalogModifierFilterSchema as Ja, discountOutputSchema as Ji, temporaryClosureOutputSchema as Jn, listCatalogModifierListsOutputSchema as Jo, promoCodeApplicationTargets as Jr, localConfigSchema as Jt, refundOrderInputSchema as K, catalogModifierBaseSchema as Ka, discountIdInputSchema as Ki, removeProviderInputSchema as Kn, listCatalogItemsOutputSchema as Ko, listPromoCodesInputSchema as Kr, listIntegrationsInputSchema as Kt, initiatePaymentOutputSchema as L, catalogAvailabilityValues as La, anbPaymentStatusSchema as Li, locationSchema as Ln, linkItemWithCategoryInputSchema as Lo, orderSchema as Lr, placementSchema as Ls, disconnectIntegrationInputSchema as Lt, upsertBankAccountInputSchema as M, merchantCustomerByIdInputSchema as Ma, socialBaseSchema as Mi, locationFilterSchema as Mn, getCategoryOutputSchema as Mo, orderLineItemSchema as Mr, bannerOutputSchema as Ms, createIntegrationOutputSchema as Mt, codPaymentTypeIds as N, merchantCustomerFilterSchema as Na, socialIdInputSchema as Ni, locationIdInputSchema as Nn, getModifierInputSchema as No, orderModifierSchema as Nr, bannerStatusSchema as Ns, deleteIntegrationInputSchema as Nt, payoutStatusSchema as O, listCustomersOutputSchema as Oa, updateMerchantLegalDetailsInputSchema as Oi, listLocationWhatsAppGroupsOutputSchema as On, deleteVariationOutputSchema as Oo, orderFulfillmentStateValues as Or, activeBannerOutputSchema as Os, updateSubscriptionPlanInputSchema as Ot, gatewayIds as P, merchantCustomerOutputSchema as Pa, socialPlatformsEnum as Pi, locationListSchema as Pn, getModifierListInputSchema as Po, orderOutputSchema as Pr, createBannerInputSchema as Ps, deliveryBaseSchema as Pt, calculateSmsCostOutputSchema as Q, catalogModifierListFilterSchema as Qa, updateDiscountInputSchema as Qi, updateProviderInputSchema as Qn, listCatalogVariationsOutputSchema as Qo, promoCodeFilterSchema as Qr, providerConfigSchema as Qt, listPaymentsInputSchema as R, catalogCategoryBaseSchema as Ra, anbSinglePaymentInitiationResponseSchema as Ri, locationStatusFilterSchema as Rn, linkItemWithImageInputSchema as Ro, orderSourceSchema as Rr, updateBannerInputSchema as Rs, getIntegrationInputSchema as Rt, listCompanyPayoutAccountsInputSchema as S, defaultMerchantCustomerSort as Sa, merchantIntegrationSchema as Si, fulfillmentTypeEnum as Sn, deleteModifierListInputSchema as So, orderCustomerSchema as Sr, upsertModifierOverrideOutputSchema as Ss, createMerchantInvoiceInputSchema as St, locationBalanceSchema as T, listCustomerAddressesInputSchema as Ta, merchantSummarySchema as Ti, listAvailableWhatsAppGroupsInputSchema as Tn, deleteModifierOverrideInputSchema as To, orderFulfillmentHistorySchema as Tr, businessHoursPeriodSchema as Ts, merchantSubscriptionSchema as Tt, paymentSourceSchema as U, catalogItemDetailSchema as Ua, createDiscountInputSchema as Ui, removeCurbsideSpotInputSchema as Un, listCatalogCategoriesWithItemsInputSchema as Uo, validatePromoCodeForOrderResultSchema as Ur, sortDirectionSchema as Us, integrationStatusSchema as Ut, paymentListItemSchema as V, catalogDietaryPreferenceValues as Va, anbWebhookPayloadSchema as Vi, providerPricingConfigSchema as Vn, listCatalogCategoriesInputSchema as Vo, updateFulfillmentInputSchema as Vr, baseListOutputSchema as Vs, integrateLocationOutputSchema as Vt, paymentStatuses as W, catalogItemFilterSchema as Wa, discountAutoApplyScopes as Wi, removeDeliveryInputSchema as Wn, listCatalogCategoriesWithItemsOutputSchema as Wo, createPromoCodeInputSchema as Wr, sortSchema as Ws, integrationTypeSchema as Wt, setPaidOutputSchema as X, catalogModifierListBaseSchema as Xa, discountTypes as Xi, updateDeliveryConfigInputSchema as Xn, listCatalogModifiersOutputSchema as Xo, promoCodeConfigurationSchema as Xr, parcelConfigSchema as Xt, setPaidInputSchema as Y, catalogModifierItemOverrideSchema as Ya, discountScopes as Yi, themeSchema as Yn, listCatalogModifiersInputSchema as Yo, promoCodeBaseSchema as Yr, merchantIntegrationBaseSchema as Yt, calculateSmsCostInputSchema as Z, catalogModifierListDetailSchema as Za, listDiscountsInputSchema as Zi, updateLocationInputSchema as Zn, listCatalogVariationsInputSchema as Zo, promoCodeDiscountTypes as Zr, posProviderSchema as Zt, getEffectiveBankAccountInputSchema as _, customerByIdInputSchema as _a, listMerchantsOutputSchema as _i, deleteLocationBusinessHoursInputSchema as _n, deleteCategoryInputSchema as _o, listOrdersInputSchema as _r, upsertItemModifierOverrideInputSchema as _s, messageTemplateProviderEnum as _t, payoutReportOverallSchema as a, bulkCustomerImportRowClientSchema as aa, updatePromoCodeInputSchema as ai, createAddressForLocationInputSchema as an, createCategoryInputSchema as ao, upsertDeliveryInputSchema as ar, updateCategoryOutputSchema as as, sendMessageInputSchema as at, getLocationBalanceOutputSchema as b, defaultCustomerAddressSort as ba, merchantFullDetailsSchema as bi, dineInConfigSchema as bn, deleteItemOutputSchema as bo, orderByIdOutputSchema as br, upsertModifierLocationOverrideInputSchema as bs, templateVariableSchema as bt, bankAccountSchema as c, createCustomerManualInputSchema as ca, paymentMethodIds as ci, createDeliveryConfigInputSchema as cn, createImageOutputSchema as co, upsertLocationBusinessHoursInputSchema as cr, updateModifierInputSchema as cs, availableTemplateResourcesSchema as ct, createCompanyPayoutAccountInputSchema as d, createMerchantCustomerManualOutputSchema as da, preferredContactTimeSchema as di, createWhatsAppGroupInputSchema as dn, createModifierInputSchema as do, checkoutResultSchema as dr, updateModifierOutputSchema as ds, listMessageTemplatesInputSchema as dt, bulkCustomerExportResultSchema as ea, promoCodeListOutputSchema as ei, setIntegrationStatusInputSchema as en, catalogPriceRangeSchema as eo, uploadLocationBannerInputSchema as er, mutationIdOutputSchema as es, getSmsBalanceOutputSchema as et, createPayoutInputSchema as f, customerAddressBaseSchema as fa, createMerchantInputSchema as fi, createWhatsAppGroupOutputSchema as fn, createModifierListInputSchema as fo, createOrderInputSchema as fr, updateVariationInputSchema as fs, listMessageTemplatesOutputSchema as ft, getCompanyPayoutAccountInputSchema as g, customerBaseSchema as ga, listMerchantsInputSchema as gi, deleteFulfillmentBusinessHoursInputSchema as gn, createVariationOutputSchema as go, getOrderConfigInputSchema as gr, upsertItemLocationOverrideInputSchema as gs, messageTemplateOutputSchema as gt, getBankAccountOutputSchema as h, customerAddressOutputSchema as ha, getMerchantInputSchema as hi, defaultLocationSort as hn, createVariationInputSchema as ho, getOrderByIdInputSchema as hr, uploadCatalogItemPhotoOutputSchema as hs, messageTemplateFilterSchema as ht, payoutReportOutputSchema as i, bulkCustomerImportResultSchema as ia, promoCodeValidationResultSchema as ii, availableWhatsAppGroupSchema as in, catalogVariationWithDefaultSchema as io, upsertCurbsideInputSchema as ir, updateCategoryInputSchema as is, sendDirectMessageOutputSchema as it, updateCompanyPayoutAccountInputSchema as j, merchantCustomerBaseSchema as ja, createSocialInputSchema as ji, locationAddressSchema as jn, getCategoryInputSchema as jo, orderLineItemInputSchema as jr, bannerListOutputSchema as js, createIntegrationInputSchema as jt, unsettledBalanceItemSchema as k, listMerchantCustomersInputSchema as ka, uploadCrnDocumentInputSchema as ki, listLocationsInputSchema as kn, getCatalogItemInputSchema as ko, orderFulfillmentTypes as kr, approveBannerInputSchema as ks, connectIntegrationInputSchema as kt, calculatePayoutOutputSchema as l, createCustomerManualOutputSchema as la, createLeadInputSchema as li, createDeliveryWindowInputSchema as ln, createItemInputSchema as lo, upsertLocationThemeInputSchema as lr, updateModifierListInputSchema as ls, createMessageTemplateInputSchema as lt, getBankAccountInputSchema as m, customerAddressFilterSchema as ma, createMerchantOutputSchema as mi, curbsideSpotSchema as mn, createModifierOutputSchema as mo, fetchOrderByIdOutputSchema as mr, uploadCatalogItemPhotoInputSchema as ms, messageTemplateByIdInputSchema as mt, payoutReportInputSchema as n, bulkCustomerImportErrorSchema as na, promoCodeScopes as ni, addCurbsideSpotInputSchema as nn, catalogVariationBaseSchema as no, uploadLocationPhotoInputSchema as nr, unlinkItemWithImageInputSchema as ns, messageScopeEnum as nt, payoutReportPaymentSchema as o, bulkCustomerImportRowSchema as oa, acceptedPaymentIds as oi, createAddressInputSchema as on, createCategoryOutputSchema as oo, upsertDineInInputSchema as or, updateItemInputSchema as os, sendMessageOutputSchema as ot, deleteCompanyPayoutAccountInputSchema as p, customerAddressByIdInputSchema as pa, createMerchantLegalDetailsInputSchema as pi, curbsideConfigSchema as pn, createModifierListOutputSchema as po, defaultOrderSort as pr, updateVariationOutputSchema as ps, messageTemplateBaseSchema as pt, refundOrderOutputSchema as q, catalogModifierDefaultLocationOverrideSchema as qa, discountListOutputSchema as qi, temporaryClosureInputSchema as qn, listCatalogModifierListsInputSchema as qo, promoCodeAmountSchema as qr, listIntegrationsOutputSchema as qt, payoutReportOrderSchema as r, bulkCustomerImportInputSchema as ra, promoCodeValidationInputSchema as ri, addProviderInputSchema as rn, catalogVariationFilterSchema as ro, uploadLocationPhotoOutputSchema as rr, unlinkItemWithModifierListInputSchema as rs, sendDirectMessageInputSchema as rt, payoutReportSummarySchema as s, createCustomerAddressInputSchema as sa, paymentGatewayIds as si, createDeliveryConfigForLocationInputSchema as sn, createImageInputSchema as so, upsertFulfillmentBusinessHoursInputSchema as sr, updateItemOutputSchema as ss, smsProviderEnum as st, payoutReportFulfillmentSchema as t, bulkCustomerExportRowSchema as ta, promoCodeOutputSchema as ti, setIntegrationStatusOutputSchema as tn, catalogSelectionTypeValues as to, uploadLocationBannerOutputSchema as tr, unlinkItemWithCategoryInputSchema as ts, messageProviderEnum as tt, companyPayoutAccountSchema as u, createMerchantCustomerManualInputSchema as ua, createLeadOutputSchema as ui, createLocationInputSchema as un, createItemOutputSchema as uo, upsertPickupInputSchema as ur, updateModifierListOutputSchema as us, defaultMessageTemplateSort as ut, getEffectiveBankAccountOutputSchema as v, customerFilterSchema as va, merchantBaseSchema as vi, deleteWhatsAppGroupInputSchema as vn, deleteCategoryOutputSchema as vo, listOrdersOutputSchema as vr, upsertModifierDefaultLocationOverrideInputSchema as vs, templateHelperSchema as vt, listPayoutsOutputSchema as w, deleteMerchantCustomerInputSchema as wa, merchantListItemSchema as wi, linkWhatsAppGroupOutputSchema as wn, deleteModifierOutputSchema as wo, orderFilterSchema as wr, translationFieldSchema as ws, merchantInvoiceSchema as wt, getPayoutInputSchema as x, defaultCustomerSort as xa, merchantIdInputSchema as xi, fulfillmentBusinessHoursOutputSchema as xn, deleteModifierInputSchema as xo, orderConfigSchema as xr, upsertModifierOverrideInputSchema as xs, updateMessageTemplateInputSchema as xt, getLocationBalanceInputSchema as y, customerOutputSchema as ya, merchantFilterSchema as yi, deliveryConfigSchema as yn, deleteItemInputSchema as yo, orderAmountSchema as yr, upsertModifierInputSchema as ys, templateVariableCategorySchema as yt, listPaymentsOutputSchema as z, catalogCategoryFilterSchema as za, anbSinglePaymentRequestSchema as zi, locationWhatsAppGroupSchema as zn, linkItemWithModifierListInputSchema as zo, orderSummarySchema as zr, baseFilterSchema as zs, getIntegrationOutputSchema as zt };
|
|
3002
|
+
//#region src/schema/service-charges.ts
|
|
3003
|
+
const chargeScopes = ["ORDER", "LINE_ITEM"];
|
|
3004
|
+
const chargeTypes = ["PERCENTAGE", "FIXED_AMOUNT"];
|
|
3005
|
+
const chargeAutoApplyScopes = [
|
|
3006
|
+
"ALL_ITEMS",
|
|
3007
|
+
"CATEGORY",
|
|
3008
|
+
"SELECTED_ITEMS"
|
|
3009
|
+
];
|
|
3010
|
+
const chargeValueSchema = z.number().int().positive({ message: "Value must be greater than zero" }).max(1e6, { message: "Value is too large" });
|
|
3011
|
+
const serviceChargeBaseSchema = z.object({
|
|
3012
|
+
id: z.string().uuid(),
|
|
3013
|
+
merchantId: z.string().uuid(),
|
|
3014
|
+
locationId: z.string().uuid(),
|
|
3015
|
+
name: z.string(),
|
|
3016
|
+
scope: z.enum(chargeScopes),
|
|
3017
|
+
chargeType: z.enum(chargeTypes),
|
|
3018
|
+
value: z.number(),
|
|
3019
|
+
autoApplyScope: z.enum(chargeAutoApplyScopes),
|
|
3020
|
+
isActive: z.boolean(),
|
|
3021
|
+
taxable: z.boolean(),
|
|
3022
|
+
startsAt: z.date().nullish(),
|
|
3023
|
+
endsAt: z.date().nullish(),
|
|
3024
|
+
createdAt: z.date(),
|
|
3025
|
+
updatedAt: z.date(),
|
|
3026
|
+
itemIds: z.array(z.string().uuid()).default([]),
|
|
3027
|
+
categoryIds: z.array(z.string().uuid()).default([])
|
|
3028
|
+
});
|
|
3029
|
+
const ensureTargets$1 = (data, ctx) => {
|
|
3030
|
+
if (data.autoApplyScope === "SELECTED_ITEMS" && (!data.itemIds || data.itemIds.length === 0)) ctx.addIssue({
|
|
3031
|
+
code: z.ZodIssueCode.custom,
|
|
3032
|
+
path: ["itemIds"],
|
|
3033
|
+
message: "itemIds are required when autoApplyScope is SELECTED_ITEMS"
|
|
3034
|
+
});
|
|
3035
|
+
if (data.autoApplyScope === "CATEGORY" && (!data.categoryIds || data.categoryIds.length === 0)) ctx.addIssue({
|
|
3036
|
+
code: z.ZodIssueCode.custom,
|
|
3037
|
+
path: ["categoryIds"],
|
|
3038
|
+
message: "categoryIds are required when autoApplyScope is CATEGORY"
|
|
3039
|
+
});
|
|
3040
|
+
};
|
|
3041
|
+
const serviceChargeCoreSchema = z.object({
|
|
3042
|
+
merchantId: z.string().uuid(),
|
|
3043
|
+
locationId: z.string().uuid(),
|
|
3044
|
+
name: z.string().min(1),
|
|
3045
|
+
scope: z.enum(chargeScopes),
|
|
3046
|
+
chargeType: z.enum(chargeTypes),
|
|
3047
|
+
value: chargeValueSchema,
|
|
3048
|
+
autoApplyScope: z.enum(chargeAutoApplyScopes).default("ALL_ITEMS"),
|
|
3049
|
+
isActive: z.boolean().default(true),
|
|
3050
|
+
taxable: z.boolean().default(true),
|
|
3051
|
+
startsAt: z.date().nullish(),
|
|
3052
|
+
endsAt: z.date().nullish(),
|
|
3053
|
+
itemIds: z.array(z.string().uuid()).nullish(),
|
|
3054
|
+
categoryIds: z.array(z.string().uuid()).nullish()
|
|
3055
|
+
});
|
|
3056
|
+
const createServiceChargeInputSchema = serviceChargeCoreSchema.superRefine((data, ctx) => {
|
|
3057
|
+
ensureTargets$1(data, ctx);
|
|
3058
|
+
if (data.chargeType === "PERCENTAGE" && data.value > 100) ctx.addIssue({
|
|
3059
|
+
code: z.ZodIssueCode.custom,
|
|
3060
|
+
path: ["value"],
|
|
3061
|
+
message: "Percentage charges cannot exceed 100%"
|
|
3062
|
+
});
|
|
3063
|
+
});
|
|
3064
|
+
const updateServiceChargePatchSchema = serviceChargeCoreSchema.partial().superRefine((data, ctx) => {
|
|
3065
|
+
ensureTargets$1(data, ctx);
|
|
3066
|
+
if ((data.chargeType === "PERCENTAGE" || !data.chargeType) && typeof data.value === "number" && data.value > 100) ctx.addIssue({
|
|
3067
|
+
code: z.ZodIssueCode.custom,
|
|
3068
|
+
path: ["value"],
|
|
3069
|
+
message: "Percentage charges cannot exceed 100%"
|
|
3070
|
+
});
|
|
3071
|
+
}).refine((value) => Object.keys(value).length > 0, { message: "At least one field must be provided" });
|
|
3072
|
+
const updateServiceChargeInputSchema = z.object({
|
|
3073
|
+
serviceChargeId: z.string().uuid(),
|
|
3074
|
+
update: updateServiceChargePatchSchema
|
|
3075
|
+
});
|
|
3076
|
+
const listServiceChargesInputSchema = z.object({
|
|
3077
|
+
merchantId: z.string().uuid().nullish(),
|
|
3078
|
+
locationId: z.string().uuid().nullish(),
|
|
3079
|
+
isActive: z.boolean().nullish()
|
|
3080
|
+
});
|
|
3081
|
+
const serviceChargeIdInputSchema = z.object({ serviceChargeId: z.string().uuid() });
|
|
3082
|
+
const serviceChargeListOutputSchema = z.object({ serviceCharges: serviceChargeBaseSchema.array() });
|
|
3083
|
+
const serviceChargeOutputSchema = serviceChargeBaseSchema;
|
|
3084
|
+
|
|
3085
|
+
//#endregion
|
|
3086
|
+
//#region src/schema/taxes.ts
|
|
3087
|
+
const taxScopes = ["ORDER", "LINE_ITEM"];
|
|
3088
|
+
const taxTypes = ["ADDITIVE", "INCLUSIVE"];
|
|
3089
|
+
const taxAutoApplyScopes = [
|
|
3090
|
+
"ALL_ITEMS",
|
|
3091
|
+
"CATEGORY",
|
|
3092
|
+
"SELECTED_ITEMS"
|
|
3093
|
+
];
|
|
3094
|
+
const taxValueSchema = z.number().int().positive({ message: "Value must be greater than zero" }).max(1e6, { message: "Value is too large" });
|
|
3095
|
+
const taxBaseSchema = z.object({
|
|
3096
|
+
id: z.string().uuid(),
|
|
3097
|
+
merchantId: z.string().uuid(),
|
|
3098
|
+
locationId: z.string().uuid(),
|
|
3099
|
+
name: z.string(),
|
|
3100
|
+
scope: z.enum(taxScopes),
|
|
3101
|
+
taxType: z.enum(taxTypes),
|
|
3102
|
+
value: z.number(),
|
|
3103
|
+
autoApplyScope: z.enum(taxAutoApplyScopes),
|
|
3104
|
+
isActive: z.boolean(),
|
|
3105
|
+
taxable: z.boolean(),
|
|
3106
|
+
startsAt: z.date().nullish(),
|
|
3107
|
+
endsAt: z.date().nullish(),
|
|
3108
|
+
createdAt: z.date(),
|
|
3109
|
+
updatedAt: z.date(),
|
|
3110
|
+
itemIds: z.array(z.string().uuid()).default([]),
|
|
3111
|
+
categoryIds: z.array(z.string().uuid()).default([])
|
|
3112
|
+
});
|
|
3113
|
+
const ensureTargets = (data, ctx) => {
|
|
3114
|
+
if (data.autoApplyScope === "SELECTED_ITEMS" && (!data.itemIds || data.itemIds.length === 0)) ctx.addIssue({
|
|
3115
|
+
code: z.ZodIssueCode.custom,
|
|
3116
|
+
path: ["itemIds"],
|
|
3117
|
+
message: "itemIds are required when autoApplyScope is SELECTED_ITEMS"
|
|
3118
|
+
});
|
|
3119
|
+
if (data.autoApplyScope === "CATEGORY" && (!data.categoryIds || data.categoryIds.length === 0)) ctx.addIssue({
|
|
3120
|
+
code: z.ZodIssueCode.custom,
|
|
3121
|
+
path: ["categoryIds"],
|
|
3122
|
+
message: "categoryIds are required when autoApplyScope is CATEGORY"
|
|
3123
|
+
});
|
|
3124
|
+
};
|
|
3125
|
+
const taxCoreSchema = z.object({
|
|
3126
|
+
merchantId: z.string().uuid(),
|
|
3127
|
+
locationId: z.string().uuid(),
|
|
3128
|
+
name: z.string().min(1),
|
|
3129
|
+
scope: z.enum(taxScopes),
|
|
3130
|
+
taxType: z.enum(taxTypes),
|
|
3131
|
+
value: taxValueSchema,
|
|
3132
|
+
autoApplyScope: z.enum(taxAutoApplyScopes).default("ALL_ITEMS"),
|
|
3133
|
+
isActive: z.boolean().default(true),
|
|
3134
|
+
taxable: z.boolean().default(true),
|
|
3135
|
+
startsAt: z.date().nullish(),
|
|
3136
|
+
endsAt: z.date().nullish(),
|
|
3137
|
+
itemIds: z.array(z.string().uuid()).nullish(),
|
|
3138
|
+
categoryIds: z.array(z.string().uuid()).nullish()
|
|
3139
|
+
});
|
|
3140
|
+
const createTaxInputSchema = taxCoreSchema.superRefine((data, ctx) => {
|
|
3141
|
+
ensureTargets(data, ctx);
|
|
3142
|
+
});
|
|
3143
|
+
const updateTaxPatchSchema = taxCoreSchema.partial().superRefine((data, ctx) => {
|
|
3144
|
+
ensureTargets(data, ctx);
|
|
3145
|
+
}).refine((value) => Object.keys(value).length > 0, { message: "At least one field must be provided" });
|
|
3146
|
+
const updateTaxInputSchema = z.object({
|
|
3147
|
+
taxId: z.string().uuid(),
|
|
3148
|
+
update: updateTaxPatchSchema
|
|
3149
|
+
});
|
|
3150
|
+
const listTaxesInputSchema = z.object({
|
|
3151
|
+
merchantId: z.string().uuid().nullish(),
|
|
3152
|
+
locationId: z.string().uuid().nullish(),
|
|
3153
|
+
isActive: z.boolean().nullish()
|
|
3154
|
+
});
|
|
3155
|
+
const taxIdInputSchema = z.object({ taxId: z.string().uuid() });
|
|
3156
|
+
const taxListOutputSchema = z.object({ taxes: taxBaseSchema.array() });
|
|
3157
|
+
const taxOutputSchema = taxBaseSchema;
|
|
3158
|
+
|
|
3159
|
+
//#endregion
|
|
3160
|
+
//#region src/schema/zatca.ts
|
|
3161
|
+
const egsLocationSchema = z.object({
|
|
3162
|
+
city: z.string().min(1),
|
|
3163
|
+
district: z.string().min(1),
|
|
3164
|
+
street: z.string().min(1),
|
|
3165
|
+
building: z.string().min(1),
|
|
3166
|
+
postalCode: z.string().min(1),
|
|
3167
|
+
additionalNumber: z.string().optional()
|
|
3168
|
+
});
|
|
3169
|
+
const egsInfoSchema = z.object({
|
|
3170
|
+
id: z.uuid(),
|
|
3171
|
+
name: z.string().min(1),
|
|
3172
|
+
model: z.string().min(1),
|
|
3173
|
+
branchName: z.string().min(1),
|
|
3174
|
+
branchIndustry: z.string().min(1),
|
|
3175
|
+
vatName: z.string().min(1),
|
|
3176
|
+
vatNumber: z.string().regex(/^3\d{13}3$/, "VAT number must be 15 digits starting and ending with 3"),
|
|
3177
|
+
location: egsLocationSchema.optional()
|
|
3178
|
+
});
|
|
3179
|
+
const onboardEgsInputSchema = z.object({
|
|
3180
|
+
locationId: z.uuid(),
|
|
3181
|
+
otp: z.string().length(6, "OTP must be exactly 6 digits").regex(/^\d{6}$/, "OTP must be numeric")
|
|
3182
|
+
});
|
|
3183
|
+
const onboardEgsOutputSchema = z.object({
|
|
3184
|
+
egsId: z.uuid(),
|
|
3185
|
+
lastInvoiceHash: z.string(),
|
|
3186
|
+
nextInvoiceCounter: z.number().int()
|
|
3187
|
+
});
|
|
3188
|
+
const zatcaLineItemSchema = z.object({
|
|
3189
|
+
id: z.string(),
|
|
3190
|
+
name: z.string(),
|
|
3191
|
+
quantity: z.number(),
|
|
3192
|
+
taxExclusivePrice: z.number(),
|
|
3193
|
+
vatPercent: z.number(),
|
|
3194
|
+
discounts: z.array(z.object({
|
|
3195
|
+
amount: z.number(),
|
|
3196
|
+
reason: z.string().optional()
|
|
3197
|
+
})).optional(),
|
|
3198
|
+
vatCategory: z.string().optional()
|
|
3199
|
+
});
|
|
3200
|
+
const zatcaInvoicePropsSchema = z.object({
|
|
3201
|
+
invoiceCode: z.string(),
|
|
3202
|
+
invoiceType: z.string(),
|
|
3203
|
+
crnNumber: z.string(),
|
|
3204
|
+
invoiceCounterNumber: z.number().int(),
|
|
3205
|
+
invoiceSerialNumber: z.string(),
|
|
3206
|
+
issueDate: z.date(),
|
|
3207
|
+
previousInvoiceHash: z.string(),
|
|
3208
|
+
lineItems: z.array(zatcaLineItemSchema),
|
|
3209
|
+
customerInfo: z.object({
|
|
3210
|
+
vatName: z.string().optional(),
|
|
3211
|
+
vatNumber: z.string().optional()
|
|
3212
|
+
}).optional()
|
|
3213
|
+
});
|
|
3214
|
+
const reportInvoiceInputSchema = z.object({
|
|
3215
|
+
egsId: z.uuid(),
|
|
3216
|
+
invoiceProps: zatcaInvoicePropsSchema,
|
|
3217
|
+
invoiceHash: z.string()
|
|
3218
|
+
});
|
|
3219
|
+
const reportInvoiceOutputSchema = z.object({
|
|
3220
|
+
success: z.boolean(),
|
|
3221
|
+
invoiceHash: z.string(),
|
|
3222
|
+
reportingStatus: z.string()
|
|
3223
|
+
});
|
|
3224
|
+
const batchReportInputSchema = z.object({
|
|
3225
|
+
egsId: z.uuid(),
|
|
3226
|
+
invoices: z.array(zatcaInvoicePropsSchema)
|
|
3227
|
+
});
|
|
3228
|
+
const batchReportOutputSchema = z.object({
|
|
3229
|
+
results: z.array(reportInvoiceOutputSchema),
|
|
3230
|
+
total: z.number().int(),
|
|
3231
|
+
succeeded: z.number().int(),
|
|
3232
|
+
failed: z.number().int()
|
|
3233
|
+
});
|
|
3234
|
+
const zatcaInvoiceLocalSchema = z.object({
|
|
3235
|
+
id: z.uuid(),
|
|
3236
|
+
orderId: z.string().optional(),
|
|
3237
|
+
egsId: z.string(),
|
|
3238
|
+
invoiceHash: z.string().nullable().optional(),
|
|
3239
|
+
signedInvoiceB64: z.string().nullable().optional(),
|
|
3240
|
+
invoiceQrData: z.string(),
|
|
3241
|
+
invoiceCounterNumber: z.number().int(),
|
|
3242
|
+
invoiceSerialNumber: z.string(),
|
|
3243
|
+
issueDate: z.date(),
|
|
3244
|
+
previousInvoiceHash: z.string(),
|
|
3245
|
+
locationId: z.string(),
|
|
3246
|
+
lineItems: z.array(zatcaLineItemSchema),
|
|
3247
|
+
customer: z.object({
|
|
3248
|
+
vatName: z.string().optional(),
|
|
3249
|
+
vatNumber: z.string().optional()
|
|
3250
|
+
}).optional().nullable(),
|
|
3251
|
+
cancelation: z.unknown().nullable(),
|
|
3252
|
+
syncStatus: z.enum([
|
|
3253
|
+
"draft",
|
|
3254
|
+
"pending",
|
|
3255
|
+
"synced",
|
|
3256
|
+
"failed"
|
|
3257
|
+
]),
|
|
3258
|
+
syncedAt: z.date().nullable().optional(),
|
|
3259
|
+
serverInvoiceId: z.string().nullable().optional(),
|
|
3260
|
+
paymentId: z.string().optional(),
|
|
3261
|
+
createdAt: z.date()
|
|
3262
|
+
});
|
|
3263
|
+
const syncInvoicesInputSchema = z.object({
|
|
3264
|
+
egsId: z.uuid(),
|
|
3265
|
+
invoices: z.array(zatcaInvoiceLocalSchema)
|
|
3266
|
+
});
|
|
3267
|
+
const egsStatusOutputSchema = z.object({
|
|
3268
|
+
egsId: z.uuid(),
|
|
3269
|
+
deviceId: z.string(),
|
|
3270
|
+
isOnboarded: z.boolean(),
|
|
3271
|
+
lastInvoiceHash: z.string().nullable(),
|
|
3272
|
+
nextInvoiceCounter: z.number().int().nullable()
|
|
3273
|
+
});
|
|
3274
|
+
const onboardingDataOutputSchema = z.object({
|
|
3275
|
+
vatName: z.string().nullable(),
|
|
3276
|
+
vatNumber: z.string().nullable(),
|
|
3277
|
+
locationName: z.string().nullable(),
|
|
3278
|
+
locationAddress: egsLocationSchema.nullable()
|
|
3279
|
+
});
|
|
3280
|
+
const invoiceByPaymentOutputSchema = z.object({
|
|
3281
|
+
invoiceHash: z.string(),
|
|
3282
|
+
invoiceQrData: z.string(),
|
|
3283
|
+
invoiceSerialNumber: z.string(),
|
|
3284
|
+
invoiceCounterNumber: z.number().int(),
|
|
3285
|
+
issueDate: z.date(),
|
|
3286
|
+
syncStatus: z.string(),
|
|
3287
|
+
reportedAt: z.date().nullable()
|
|
3288
|
+
}).nullable();
|
|
3289
|
+
|
|
3290
|
+
//#endregion
|
|
3291
|
+
export { getEffectiveBankAccountOutputSchema as $, customerBaseSchema as $a, getMerchantInputSchema as $i, locationListSchema as $n, createVariationInputSchema as $o, orderOutputSchema as $r, uploadCatalogItemPhotoOutputSchema as $s, deliveryStatusSchema as $t, listServiceChargesInputSchema as A, discountListOutputSchema as Aa, listPaymentsInputSchema as Ai, curbsideConfigSchema as An, catalogModifierDefaultLocationOverrideSchema as Ao, checkoutResultSchema as Ar, listCatalogItemsOutputSchema as As, messageTemplateBaseSchema as At, payoutReportOverallSchema as B, bulkCustomerImportInputSchema as Ba, refundPaymentInputSchema as Bi, fulfillmentBusinessHoursOutputSchema as Bn, catalogVariationBaseSchema as Bo, orderConfigSchema as Br, unlinkItemWithImageInputSchema as Bs, createSubscriptionPlanInputSchema as Bt, taxScopes as C, anbSinglePaymentResponseSchema as Ca, baseFilterSchema as Cc, promoCodeValidationResultSchema as Ci, createAddressInputSchema as Cn, catalogCategorySchema as Co, upsertCurbsideInputSchema as Cr, linkItemWithModifierListInputSchema as Cs, sendMessageOutputSchema as Ct, chargeScopes as D, discountAutoApplyScopes as Da, sortDirectionSchema as Dc, getPaymentInputSchema as Di, createLocationInputSchema as Dn, catalogItemFilterSchema as Do, upsertLocationBusinessHoursInputSchema as Dr, listCatalogCategoriesWithItemsInputSchema as Ds, defaultMessageTemplateSort as Dt, chargeAutoApplyScopes as E, createDiscountInputSchema as Ea, defaultTimeSort as Ec, gatewayIds as Ei, createDeliveryWindowInputSchema as En, catalogItemDetailSchema as Eo, upsertFulfillmentBusinessHoursInputSchema as Er, listCatalogCategoriesOutputSchema as Es, createMessageTemplateInputSchema as Et, updateServiceChargeInputSchema as F, updateDiscountInputSchema as Fa, paymentSourceSchema as Fi, deleteLocationInputSchema as Fn, catalogModifierListFilterSchema as Fo, getOrderConfigInputSchema as Fr, listCatalogVariationsInputSchema as Fs, templateHelperSchema as Ft, companyPayoutAccountSchema as G, createCustomerManualInputSchema as Ga, paymentMethodIds as Gi, listAvailableWhatsAppGroupsOutputSchema as Gn, createImageInputSchema as Go, orderFulfillmentOutputSchema as Gr, updateItemOutputSchema as Gs, updateSubscriptionPlanInputSchema as Gt, payoutReportSummarySchema as H, bulkCustomerImportRowClientSchema as Ha, setPaidOutputSchema as Hi, linkWhatsAppGroupInputSchema as Hn, catalogVariationWithDefaultSchema as Ho, orderEntitiesSchema as Hr, updateCategoryInputSchema as Hs, merchantSubscriptionSchema as Ht, payoutReportFulfillmentSchema as I, bulkCustomerExportInputSchema as Ia, paymentStatuses as Ii, deleteLocationOutputSchema as In, catalogModifierListSummarySchema as Io, listOrdersInputSchema as Ir, listCatalogVariationsOutputSchema as Is, templateVariableCategorySchema as It, deleteCompanyPayoutAccountInputSchema as J, createMerchantCustomerManualOutputSchema as Ja, preferredContactTimeSchema as Ji, listLocationsInputSchema as Jn, createItemOutputSchema as Jo, orderFulfillmentTypes as Jr, updateModifierListOutputSchema as Js, createIntegrationInputSchema as Jt, createCompanyPayoutAccountInputSchema as K, createCustomerManualOutputSchema as Ka, createLeadInputSchema as Ki, listLocationWhatsAppGroupsInputSchema as Kn, createImageOutputSchema as Ko, orderFulfillmentSchema as Kr, updateModifierInputSchema as Ks, connectIntegrationInputSchema as Kt, payoutReportInputSchema as L, bulkCustomerExportResultSchema as La, recordPaymentInputSchema as Li, deleteWhatsAppGroupInputSchema as Ln, catalogModifierLocationOverrideSchema as Lo, listOrdersOutputSchema as Lr, modifierOverrideTypeValues as Ls, templateVariableSchema as Lt, serviceChargeIdInputSchema as M, discountScopes as Ma, paymentFilterSchema as Mi, defaultLocationSort as Mn, catalogModifierItemOverrideSchema as Mo, defaultOrderSort as Mr, listCatalogModifierListsOutputSchema as Ms, messageTemplateFilterSchema as Mt, serviceChargeListOutputSchema as N, discountTypes as Na, paymentListItemSchema as Ni, deleteFulfillmentBusinessHoursInputSchema as Nn, catalogModifierListBaseSchema as No, fetchOrderByIdOutputSchema as Nr, listCatalogModifiersInputSchema as Ns, messageTemplateOutputSchema as Nt, chargeTypes as O, discountBaseSchema as Oa, sortSchema as Oc, initiatePaymentInputSchema as Oi, createWhatsAppGroupInputSchema as On, catalogItemSummarySchema as Oo, upsertLocationThemeInputSchema as Or, listCatalogCategoriesWithItemsOutputSchema as Os, listMessageTemplatesInputSchema as Ot, serviceChargeOutputSchema as P, listDiscountsInputSchema as Pa, paymentOutputSchema as Pi, deleteLocationBusinessHoursInputSchema as Pn, catalogModifierListDetailSchema as Po, getOrderByIdInputSchema as Pr, listCatalogModifiersOutputSchema as Ps, messageTemplateProviderEnum as Pt, getEffectiveBankAccountInputSchema as Q, customerAddressOutputSchema as Qa, deleteMerchantAccountOutputSchema as Qi, locationIdInputSchema as Qn, createModifierOutputSchema as Qo, orderModifierSchema as Qr, uploadCatalogItemPhotoInputSchema as Qs, deliveryProviderSchema as Qt, payoutReportOrderSchema as R, bulkCustomerExportRowSchema as Ra, refundOrderInputSchema as Ri, deliveryConfigSchema as Rn, catalogPriceRangeSchema as Ro, orderAmountSchema as Rr, mutationIdOutputSchema as Rs, updateMessageTemplateInputSchema as Rt, taxOutputSchema as S, anbSinglePaymentRequestSchema as Sa, updateBannerInputSchema as Sc, promoCodeValidationInputSchema as Si, createAddressForLocationInputSchema as Sn, catalogCategoryFilterSchema as So, uploadLocationPhotoOutputSchema as Sr, linkItemWithImageInputSchema as Ss, sendMessageInputSchema as St, updateTaxInputSchema as T, mapAnbStatusToPayoutStatus as Ta, baseListOutputSchema as Tc, codPaymentTypeIds as Ti, createDeliveryConfigInputSchema as Tn, catalogFoodIngredientValues as To, upsertDineInInputSchema as Tr, listCatalogCategoriesInputSchema as Ts, availableTemplateResourcesSchema as Tt, bankAccountSchema as U, bulkCustomerImportRowSchema as Ua, acceptedPaymentIds as Ui, linkWhatsAppGroupOutputSchema as Un, createCategoryInputSchema as Uo, orderFilterSchema as Ur, updateCategoryOutputSchema as Us, sendMerchantInvoiceInputSchema as Ut, payoutReportPaymentSchema as V, bulkCustomerImportResultSchema as Va, setPaidInputSchema as Vi, fulfillmentTypeEnum as Vn, catalogVariationFilterSchema as Vo, orderCustomerSchema as Vr, unlinkItemWithModifierListInputSchema as Vs, merchantInvoiceSchema as Vt, calculatePayoutOutputSchema as W, createCustomerAddressInputSchema as Wa, paymentGatewayIds as Wi, listAvailableWhatsAppGroupsInputSchema as Wn, createCategoryOutputSchema as Wo, orderFulfillmentHistorySchema as Wr, updateItemInputSchema as Ws, subscriptionPlanSchema as Wt, getBankAccountOutputSchema as X, customerAddressByIdInputSchema as Xa, createMerchantOutputSchema as Xi, locationAddressSchema as Xn, createModifierListInputSchema as Xo, orderLineItemInputSchema as Xr, updateVariationInputSchema as Xs, deleteIntegrationInputSchema as Xt, getBankAccountInputSchema as Y, customerAddressBaseSchema as Ya, createMerchantInputSchema as Yi, listLocationsOutputSchema as Yn, createModifierInputSchema as Yo, orderGatewayIds as Yr, updateModifierOutputSchema as Ys, createIntegrationOutputSchema as Yt, getCompanyPayoutAccountInputSchema as Z, customerAddressFilterSchema as Za, deleteMerchantAccountInputSchema as Zi, locationFilterSchema as Zn, createModifierListOutputSchema as Zo, orderLineItemSchema as Zr, updateVariationOutputSchema as Zs, deliveryBaseSchema as Zt, listTaxesInputSchema as _, socialPlatformsEnum as _a, bannerStatusSchema as _c, promoCodeFilterSchema as _i, setIntegrationStatusInputSchema as _n, merchantCustomerOutputSchema as _o, updateProviderInputSchema as _r, getModifierInputSchema as _s, getSmsBalanceOutputSchema as _t, egsStatusOutputSchema as a, merchantIdInputSchema as aa, upsertModifierOverrideInputSchema as ac, scheduleTypeEnum as ai, integrationProviderSchema as an, defaultMerchantCustomerSort as ao, pickupConfigSchema as ar, deleteModifierInputSchema as as, listPayoutsOutputSchema as at, taxIdInputSchema as b, anbPaymentStatusSchema as ba, listBannersInputSchema as bc, promoCodeOutputSchema as bi, addProviderInputSchema as bn, catalogAvailabilityValues as bo, uploadLocationBannerOutputSchema as br, getModifierOutputSchema as bs, sendDirectMessageInputSchema as bt, onboardEgsOutputSchema as c, merchantListItemSchema as ca, translationFieldSchema as cc, validatePromoCodeForOrderResultSchema as ci, leajlakConfigSchema as cn, listCustomerAddressesInputSchema as co, removeCurbsideSpotInputSchema as cr, deleteModifierOutputSchema as cs, payoutSchema as ct, reportInvoiceOutputSchema as d, updateMerchantInputSchema as da, activeBannerListOutputSchema as dc, listPromoCodesInputSchema as di, localConfigSchema as dn, listCustomersOutputSchema as do, removeProviderInputSchema as dr, deleteVariationInputSchema as ds, unsettledBalanceSchema as dt, listMerchantsInputSchema as ea, upsertItemLocationOverrideInputSchema as ec, orderPromocodeInputSchema as ei, disconnectIntegrationInputSchema as en, customerByIdInputSchema as eo, locationMeatSourceSchema as er, createVariationOutputSchema as es, getLocationBalanceInputSchema as et, syncInvoicesInputSchema as f, uploadMerchantCrnDocInputSchema as fa, activeBannerOutputSchema as fc, promoCodeAmountSchema as fi, merchantIntegrationBaseSchema as fn, listMerchantCustomersInputSchema as fo, temporaryClosureInputSchema as fr, deleteVariationOutputSchema as fs, updateCompanyPayoutAccountInputSchema as ft, createTaxInputSchema as g, socialIdInputSchema as ga, bannerOutputSchema as gc, promoCodeDiscountTypes as gi, qmileConfigSchema as gn, merchantCustomerFilterSchema as go, updateLocationInputSchema as gr, getCategoryOutputSchema as gs, getSmsBalanceInputSchema as gt, zatcaLineItemSchema as h, socialBaseSchema as ha, bannerListOutputSchema as hc, promoCodeConfigurationSchema as hi, providerConfigSchema as hn, merchantCustomerByIdInputSchema as ho, updateDeliveryConfigInputSchema as hr, getCategoryInputSchema as hs, calculateSmsCostOutputSchema as ht, egsLocationSchema as i, merchantFullDetailsSchema as ia, upsertModifierLocationOverrideInputSchema as ic, orderSummarySchema as ii, integrateLocationOutputSchema as in, defaultCustomerSort as io, locationWhatsAppGroupSchema as ir, deleteItemOutputSchema as is, listPayoutsInputSchema as it, serviceChargeBaseSchema as j, discountOutputSchema as ja, listPaymentsOutputSchema as ji, curbsideSpotSchema as jn, catalogModifierFilterSchema as jo, createOrderInputSchema as jr, listCatalogModifierListsInputSchema as js, messageTemplateByIdInputSchema as jt, createServiceChargeInputSchema as k, discountIdInputSchema as ka, paginationSchema as kc, initiatePaymentOutputSchema as ki, createWhatsAppGroupOutputSchema as kn, catalogModifierBaseSchema as ko, upsertPickupInputSchema as kr, listCatalogItemsInputSchema as ks, listMessageTemplatesOutputSchema as kt, onboardingDataOutputSchema as l, merchantSummarySchema as la, businessHoursPeriodSchema as lc, createPromoCodeInputSchema as li, listIntegrationsInputSchema as ln, listCustomerAddressesOutputSchema as lo, removeDeliveryInputSchema as lr, deleteModifierOverrideInputSchema as ls, payoutStatusSchema as lt, zatcaInvoicePropsSchema as m, createSocialInputSchema as ma, bannerIdInputSchema as mc, promoCodeBaseSchema as mi, posProviderSchema as mn, merchantCustomerBaseSchema as mo, themeSchema as mr, getCatalogItemOutputSchema as ms, calculateSmsCostInputSchema as mt, batchReportOutputSchema as n, merchantBaseSchema as na, upsertModifierDefaultLocationOverrideInputSchema as nc, orderSchema as ni, getIntegrationOutputSchema as nn, customerOutputSchema as no, locationSchema as nr, deleteCategoryOutputSchema as ns, getPayoutInputSchema as nt, invoiceByPaymentOutputSchema as o, merchantIntegrationSchema as oa, upsertModifierOverrideOutputSchema as oc, updateFulfillmentInputSchema as oi, integrationStatusSchema as on, deleteCustomerInputSchema as oo, providerPricingConfigSchema as or, deleteModifierListInputSchema as os, locationBalanceSchema as ot, zatcaInvoiceLocalSchema as p, uploadMerchantVatDocInputSchema as pa, approveBannerInputSchema as pc, promoCodeApplicationTargets as pi, parcelConfigSchema as pn, listMerchantCustomersOutputSchema as po, temporaryClosureOutputSchema as pr, getCatalogItemInputSchema as ps, upsertBankAccountInputSchema as pt, createPayoutInputSchema as q, createMerchantCustomerManualInputSchema as qa, createLeadOutputSchema as qi, listLocationWhatsAppGroupsOutputSchema as qn, createItemInputSchema as qo, orderFulfillmentStateValues as qr, updateModifierListInputSchema as qs, connectIntegrationOutputSchema as qt, egsInfoSchema as r, merchantFilterSchema as ra, upsertModifierInputSchema as rc, orderSourceSchema as ri, integrateLocationInputSchema as rn, defaultCustomerAddressSort as ro, locationStatusFilterSchema as rr, deleteItemInputSchema as rs, listCompanyPayoutAccountsInputSchema as rt, onboardEgsInputSchema as s, merchantLegalDetailsSchema as sa, upsertVariationLocationOverrideInputSchema as sc, upsertOrderConfigInputSchema as si, integrationTypeSchema as sn, deleteMerchantCustomerInputSchema as so, providerStrategyEnum as sr, deleteModifierListOutputSchema as ss, payoutProviderSchema as st, batchReportInputSchema as t, listMerchantsOutputSchema as ta, upsertItemModifierOverrideInputSchema as tc, orderPromocodeSummarySchema as ti, getIntegrationInputSchema as tn, customerFilterSchema as to, locationMutationOutputSchema as tr, deleteCategoryInputSchema as ts, getLocationBalanceOutputSchema as tt, reportInvoiceInputSchema as u, merchantSyncEventSchema as ua, businessHoursSchema as uc, defaultPromoCodeSort as ui, listIntegrationsOutputSchema as un, listCustomersInputSchema as uo, removeLocationThemeInputSchema as ur, deleteModifierOverrideOutputSchema as us, unsettledBalanceItemSchema as ut, taxAutoApplyScopes as v, updateSocialInputSchema as va, createBannerInputSchema as vc, promoCodeIdInputSchema as vi, setIntegrationStatusOutputSchema as vn, upsertCustomerInputSchema as vo, updateWhatsAppGroupInputSchema as vr, getModifierListInputSchema as vs, messageProviderEnum as vt, taxTypes as w, anbWebhookPayloadSchema as wa, baseListInputSchema as wc, updatePromoCodeInputSchema as wi, createDeliveryConfigForLocationInputSchema as wn, catalogDietaryPreferenceValues as wo, upsertDeliveryInputSchema as wr, linkOperationOutputSchema as ws, smsProviderEnum as wt, taxListOutputSchema as x, anbSinglePaymentInitiationResponseSchema as xa, placementSchema as xc, promoCodeScopes as xi, availableWhatsAppGroupSchema as xn, catalogCategoryBaseSchema as xo, uploadLocationPhotoInputSchema as xr, linkItemWithCategoryInputSchema as xs, sendDirectMessageOutputSchema as xt, taxBaseSchema as y, anbPaymentStatusResponseSchema as ya, listActiveBannersInputSchema as yc, promoCodeListOutputSchema as yi, addCurbsideSpotInputSchema as yn, catalogAmountSchema as yo, uploadLocationBannerInputSchema as yr, getModifierListOutputSchema as ys, messageScopeEnum as yt, payoutReportOutputSchema as z, bulkCustomerImportErrorSchema as za, refundOrderOutputSchema as zi, dineInConfigSchema as zn, catalogSelectionTypeValues as zo, orderByIdOutputSchema as zr, unlinkItemWithCategoryInputSchema as zs, createMerchantInvoiceInputSchema as zt };
|