@voyantjs/notifications 0.3.0 → 0.4.0
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/README.md +22 -0
- package/dist/index.d.ts +8 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/provider-resolution.d.ts +5 -0
- package/dist/provider-resolution.d.ts.map +1 -1
- package/dist/provider-resolution.js +22 -0
- package/dist/providers/resend.d.ts.map +1 -1
- package/dist/providers/resend.js +8 -0
- package/dist/providers/twilio.d.ts +24 -0
- package/dist/providers/twilio.d.ts.map +1 -0
- package/dist/providers/twilio.js +48 -0
- package/dist/routes.d.ts +128 -10
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +42 -1
- package/dist/schema.d.ts +6 -6
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +1 -0
- package/dist/service-booking-documents.d.ts +119 -0
- package/dist/service-booking-documents.d.ts.map +1 -0
- package/dist/service-booking-documents.js +261 -0
- package/dist/service-deliveries.d.ts +5 -5
- package/dist/service-deliveries.d.ts.map +1 -1
- package/dist/service-deliveries.js +25 -2
- package/dist/service-reminders.d.ts.map +1 -1
- package/dist/service-reminders.js +187 -19
- package/dist/service-shared.d.ts +11 -2
- package/dist/service-shared.d.ts.map +1 -1
- package/dist/service-shared.js +12 -0
- package/dist/service-templates.d.ts +5 -5
- package/dist/service.d.ts +111 -1
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +6 -1
- package/dist/types.d.ts +22 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/validation.d.ts +178 -6
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +64 -1
- package/package.json +7 -6
package/dist/validation.d.ts
CHANGED
|
@@ -20,9 +20,9 @@ export declare const notificationTargetTypeSchema: z.ZodEnum<{
|
|
|
20
20
|
invoice: "invoice";
|
|
21
21
|
booking_payment_schedule: "booking_payment_schedule";
|
|
22
22
|
booking_guarantee: "booking_guarantee";
|
|
23
|
-
payment_session: "payment_session";
|
|
24
|
-
person: "person";
|
|
25
23
|
organization: "organization";
|
|
24
|
+
person: "person";
|
|
25
|
+
payment_session: "payment_session";
|
|
26
26
|
}>;
|
|
27
27
|
export declare const notificationReminderStatusSchema: z.ZodEnum<{
|
|
28
28
|
draft: "draft";
|
|
@@ -30,6 +30,7 @@ export declare const notificationReminderStatusSchema: z.ZodEnum<{
|
|
|
30
30
|
archived: "archived";
|
|
31
31
|
}>;
|
|
32
32
|
export declare const notificationReminderTargetTypeSchema: z.ZodEnum<{
|
|
33
|
+
invoice: "invoice";
|
|
33
34
|
booking_payment_schedule: "booking_payment_schedule";
|
|
34
35
|
}>;
|
|
35
36
|
export declare const notificationReminderRunStatusSchema: z.ZodEnum<{
|
|
@@ -38,6 +39,26 @@ export declare const notificationReminderRunStatusSchema: z.ZodEnum<{
|
|
|
38
39
|
processing: "processing";
|
|
39
40
|
skipped: "skipped";
|
|
40
41
|
}>;
|
|
42
|
+
export declare const notificationDocumentTypeSchema: z.ZodEnum<{
|
|
43
|
+
invoice: "invoice";
|
|
44
|
+
proforma: "proforma";
|
|
45
|
+
contract: "contract";
|
|
46
|
+
}>;
|
|
47
|
+
export declare const notificationDocumentSourceSchema: z.ZodEnum<{
|
|
48
|
+
finance: "finance";
|
|
49
|
+
legal: "legal";
|
|
50
|
+
}>;
|
|
51
|
+
export declare const notificationAttachmentSchema: z.ZodObject<{
|
|
52
|
+
filename: z.ZodString;
|
|
53
|
+
contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
54
|
+
path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
55
|
+
contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
56
|
+
disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
57
|
+
attachment: "attachment";
|
|
58
|
+
inline: "inline";
|
|
59
|
+
}>>>;
|
|
60
|
+
contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
61
|
+
}, z.core.$strip>;
|
|
41
62
|
export declare const insertNotificationTemplateSchema: z.ZodObject<{
|
|
42
63
|
slug: z.ZodString;
|
|
43
64
|
name: z.ZodString;
|
|
@@ -114,9 +135,9 @@ export declare const notificationDeliveryListQuerySchema: z.ZodObject<{
|
|
|
114
135
|
invoice: "invoice";
|
|
115
136
|
booking_payment_schedule: "booking_payment_schedule";
|
|
116
137
|
booking_guarantee: "booking_guarantee";
|
|
117
|
-
payment_session: "payment_session";
|
|
118
|
-
person: "person";
|
|
119
138
|
organization: "organization";
|
|
139
|
+
person: "person";
|
|
140
|
+
payment_session: "payment_session";
|
|
120
141
|
}>>;
|
|
121
142
|
targetId: z.ZodOptional<z.ZodString>;
|
|
122
143
|
bookingId: z.ZodOptional<z.ZodString>;
|
|
@@ -134,6 +155,7 @@ export declare const insertNotificationReminderRuleSchema: z.ZodObject<{
|
|
|
134
155
|
archived: "archived";
|
|
135
156
|
}>>;
|
|
136
157
|
targetType: z.ZodEnum<{
|
|
158
|
+
invoice: "invoice";
|
|
137
159
|
booking_payment_schedule: "booking_payment_schedule";
|
|
138
160
|
}>;
|
|
139
161
|
channel: z.ZodEnum<{
|
|
@@ -156,6 +178,7 @@ export declare const updateNotificationReminderRuleSchema: z.ZodObject<{
|
|
|
156
178
|
archived: "archived";
|
|
157
179
|
}>>>;
|
|
158
180
|
targetType: z.ZodOptional<z.ZodEnum<{
|
|
181
|
+
invoice: "invoice";
|
|
159
182
|
booking_payment_schedule: "booking_payment_schedule";
|
|
160
183
|
}>>;
|
|
161
184
|
channel: z.ZodOptional<z.ZodEnum<{
|
|
@@ -178,6 +201,7 @@ export declare const notificationReminderRuleListQuerySchema: z.ZodObject<{
|
|
|
178
201
|
archived: "archived";
|
|
179
202
|
}>>;
|
|
180
203
|
targetType: z.ZodOptional<z.ZodEnum<{
|
|
204
|
+
invoice: "invoice";
|
|
181
205
|
booking_payment_schedule: "booking_payment_schedule";
|
|
182
206
|
}>>;
|
|
183
207
|
channel: z.ZodOptional<z.ZodEnum<{
|
|
@@ -191,6 +215,7 @@ export declare const notificationReminderRunListQuerySchema: z.ZodObject<{
|
|
|
191
215
|
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
192
216
|
reminderRuleId: z.ZodOptional<z.ZodString>;
|
|
193
217
|
targetType: z.ZodOptional<z.ZodEnum<{
|
|
218
|
+
invoice: "invoice";
|
|
194
219
|
booking_payment_schedule: "booking_payment_schedule";
|
|
195
220
|
}>>;
|
|
196
221
|
targetId: z.ZodOptional<z.ZodString>;
|
|
@@ -218,6 +243,17 @@ export declare const sendPaymentSessionNotificationSchema: z.ZodObject<{
|
|
|
218
243
|
subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
219
244
|
html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
220
245
|
text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
246
|
+
attachments: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
247
|
+
filename: z.ZodString;
|
|
248
|
+
contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
249
|
+
path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
250
|
+
contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
251
|
+
disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
252
|
+
attachment: "attachment";
|
|
253
|
+
inline: "inline";
|
|
254
|
+
}>>>;
|
|
255
|
+
contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
256
|
+
}, z.core.$strip>>>>;
|
|
221
257
|
data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
222
258
|
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
223
259
|
scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -235,6 +271,17 @@ export declare const sendInvoiceNotificationSchema: z.ZodObject<{
|
|
|
235
271
|
subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
236
272
|
html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
237
273
|
text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
274
|
+
attachments: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
275
|
+
filename: z.ZodString;
|
|
276
|
+
contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
277
|
+
path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
278
|
+
contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
279
|
+
disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
280
|
+
attachment: "attachment";
|
|
281
|
+
inline: "inline";
|
|
282
|
+
}>>>;
|
|
283
|
+
contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
284
|
+
}, z.core.$strip>>>>;
|
|
238
285
|
data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
239
286
|
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
240
287
|
scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -252,6 +299,17 @@ export declare const sendNotificationSchema: z.ZodObject<{
|
|
|
252
299
|
subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
253
300
|
html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
254
301
|
text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
302
|
+
attachments: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
303
|
+
filename: z.ZodString;
|
|
304
|
+
contentBase64: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
305
|
+
path: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
306
|
+
contentType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
307
|
+
disposition: z.ZodNullable<z.ZodOptional<z.ZodEnum<{
|
|
308
|
+
attachment: "attachment";
|
|
309
|
+
inline: "inline";
|
|
310
|
+
}>>>;
|
|
311
|
+
contentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
312
|
+
}, z.core.$strip>>>>;
|
|
255
313
|
data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
256
314
|
targetType: z.ZodDefault<z.ZodEnum<{
|
|
257
315
|
other: "other";
|
|
@@ -259,9 +317,9 @@ export declare const sendNotificationSchema: z.ZodObject<{
|
|
|
259
317
|
invoice: "invoice";
|
|
260
318
|
booking_payment_schedule: "booking_payment_schedule";
|
|
261
319
|
booking_guarantee: "booking_guarantee";
|
|
262
|
-
payment_session: "payment_session";
|
|
263
|
-
person: "person";
|
|
264
320
|
organization: "organization";
|
|
321
|
+
person: "person";
|
|
322
|
+
payment_session: "payment_session";
|
|
265
323
|
}>>;
|
|
266
324
|
targetId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
267
325
|
bookingId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
@@ -272,4 +330,118 @@ export declare const sendNotificationSchema: z.ZodObject<{
|
|
|
272
330
|
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
273
331
|
scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
274
332
|
}, z.core.$strip>;
|
|
333
|
+
export declare const bookingDocumentBundleItemSchema: z.ZodObject<{
|
|
334
|
+
key: z.ZodString;
|
|
335
|
+
source: z.ZodEnum<{
|
|
336
|
+
finance: "finance";
|
|
337
|
+
legal: "legal";
|
|
338
|
+
}>;
|
|
339
|
+
documentType: z.ZodEnum<{
|
|
340
|
+
invoice: "invoice";
|
|
341
|
+
proforma: "proforma";
|
|
342
|
+
contract: "contract";
|
|
343
|
+
}>;
|
|
344
|
+
bookingId: z.ZodString;
|
|
345
|
+
contractId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
346
|
+
invoiceId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
347
|
+
attachmentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
348
|
+
renditionId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
349
|
+
contractStatus: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
350
|
+
invoiceStatus: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
351
|
+
name: z.ZodString;
|
|
352
|
+
format: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
353
|
+
mimeType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
354
|
+
storageKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
355
|
+
downloadUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
356
|
+
language: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
357
|
+
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
358
|
+
createdAt: z.ZodString;
|
|
359
|
+
}, z.core.$strip>;
|
|
360
|
+
export declare const bookingDocumentBundleSchema: z.ZodObject<{
|
|
361
|
+
bookingId: z.ZodString;
|
|
362
|
+
documents: z.ZodArray<z.ZodObject<{
|
|
363
|
+
key: z.ZodString;
|
|
364
|
+
source: z.ZodEnum<{
|
|
365
|
+
finance: "finance";
|
|
366
|
+
legal: "legal";
|
|
367
|
+
}>;
|
|
368
|
+
documentType: z.ZodEnum<{
|
|
369
|
+
invoice: "invoice";
|
|
370
|
+
proforma: "proforma";
|
|
371
|
+
contract: "contract";
|
|
372
|
+
}>;
|
|
373
|
+
bookingId: z.ZodString;
|
|
374
|
+
contractId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
375
|
+
invoiceId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
376
|
+
attachmentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
377
|
+
renditionId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
378
|
+
contractStatus: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
379
|
+
invoiceStatus: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
380
|
+
name: z.ZodString;
|
|
381
|
+
format: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
382
|
+
mimeType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
383
|
+
storageKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
384
|
+
downloadUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
385
|
+
language: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
386
|
+
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
387
|
+
createdAt: z.ZodString;
|
|
388
|
+
}, z.core.$strip>>;
|
|
389
|
+
}, z.core.$strip>;
|
|
390
|
+
export declare const sendBookingDocumentsNotificationSchema: z.ZodObject<{
|
|
391
|
+
templateId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
392
|
+
templateSlug: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
393
|
+
provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
394
|
+
to: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
395
|
+
from: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
396
|
+
subject: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
397
|
+
html: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
398
|
+
text: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
399
|
+
data: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
400
|
+
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
401
|
+
scheduledFor: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
402
|
+
documentTypes: z.ZodNullable<z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
403
|
+
invoice: "invoice";
|
|
404
|
+
proforma: "proforma";
|
|
405
|
+
contract: "contract";
|
|
406
|
+
}>>>>;
|
|
407
|
+
}, z.core.$strip>;
|
|
408
|
+
export declare const sendBookingDocumentsNotificationResultSchema: z.ZodObject<{
|
|
409
|
+
bookingId: z.ZodString;
|
|
410
|
+
recipient: z.ZodString;
|
|
411
|
+
documents: z.ZodArray<z.ZodObject<{
|
|
412
|
+
key: z.ZodString;
|
|
413
|
+
source: z.ZodEnum<{
|
|
414
|
+
finance: "finance";
|
|
415
|
+
legal: "legal";
|
|
416
|
+
}>;
|
|
417
|
+
documentType: z.ZodEnum<{
|
|
418
|
+
invoice: "invoice";
|
|
419
|
+
proforma: "proforma";
|
|
420
|
+
contract: "contract";
|
|
421
|
+
}>;
|
|
422
|
+
bookingId: z.ZodString;
|
|
423
|
+
contractId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
424
|
+
invoiceId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
425
|
+
attachmentId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
426
|
+
renditionId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
427
|
+
contractStatus: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
428
|
+
invoiceStatus: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
429
|
+
name: z.ZodString;
|
|
430
|
+
format: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
431
|
+
mimeType: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
432
|
+
storageKey: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
433
|
+
downloadUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
434
|
+
language: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
435
|
+
metadata: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
436
|
+
createdAt: z.ZodString;
|
|
437
|
+
}, z.core.$strip>>;
|
|
438
|
+
deliveryId: z.ZodString;
|
|
439
|
+
provider: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
440
|
+
status: z.ZodEnum<{
|
|
441
|
+
cancelled: "cancelled";
|
|
442
|
+
pending: "pending";
|
|
443
|
+
failed: "failed";
|
|
444
|
+
sent: "sent";
|
|
445
|
+
}>;
|
|
446
|
+
}, z.core.$strip>;
|
|
275
447
|
//# sourceMappingURL=validation.d.ts.map
|
package/dist/validation.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,yBAAyB;;;EAA2B,CAAA;AACjE,eAAO,MAAM,gCAAgC;;;;EAA0C,CAAA;AACvF,eAAO,MAAM,gCAAgC;;;;;EAAqD,CAAA;AAClG,eAAO,MAAM,4BAA4B;;;;;;;;;EASvC,CAAA;AACF,eAAO,MAAM,gCAAgC;;;;EAA0C,CAAA;AACvF,eAAO,MAAM,oCAAoC
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,yBAAyB;;;EAA2B,CAAA;AACjE,eAAO,MAAM,gCAAgC;;;;EAA0C,CAAA;AACvF,eAAO,MAAM,gCAAgC;;;;;EAAqD,CAAA;AAClG,eAAO,MAAM,4BAA4B;;;;;;;;;EASvC,CAAA;AACF,eAAO,MAAM,gCAAgC;;;;EAA0C,CAAA;AACvF,eAAO,MAAM,oCAAoC;;;EAAkD,CAAA;AACnG,eAAO,MAAM,mCAAmC;;;;;EAK9C,CAAA;AACF,eAAO,MAAM,8BAA8B;;;;EAA8C,CAAA;AACzF,eAAO,MAAM,gCAAgC;;;EAA+B,CAAA;AAC5E,eAAO,MAAM,4BAA4B;;;;;;;;;;iBAYrC,CAAA;AAqBJ,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;iBAAiC,CAAA;AAC9E,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;iBAA2C,CAAA;AAExF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;iBAK9C,CAAA;AAEF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAY9C,CAAA;AAgBF,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;iBAMhD,CAAA;AAED,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;iBAI7C,CAAA;AAEJ,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;iBAKlD,CAAA;AAEF,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;iBAMjD,CAAA;AAEF,eAAO,MAAM,qBAAqB;;iBAEhC,CAAA;AAkBF,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMhD,CAAA;AAED,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMzC,CAAA;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BhC,CAAA;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmB1C,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGtC,CAAA;AAEF,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;iBAajD,CAAA;AAEF,eAAO,MAAM,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOvD,CAAA"}
|
package/dist/validation.js
CHANGED
|
@@ -13,13 +13,28 @@ export const notificationTargetTypeSchema = z.enum([
|
|
|
13
13
|
"other",
|
|
14
14
|
]);
|
|
15
15
|
export const notificationReminderStatusSchema = z.enum(["draft", "active", "archived"]);
|
|
16
|
-
export const notificationReminderTargetTypeSchema = z.enum(["booking_payment_schedule"]);
|
|
16
|
+
export const notificationReminderTargetTypeSchema = z.enum(["booking_payment_schedule", "invoice"]);
|
|
17
17
|
export const notificationReminderRunStatusSchema = z.enum([
|
|
18
18
|
"processing",
|
|
19
19
|
"sent",
|
|
20
20
|
"skipped",
|
|
21
21
|
"failed",
|
|
22
22
|
]);
|
|
23
|
+
export const notificationDocumentTypeSchema = z.enum(["contract", "invoice", "proforma"]);
|
|
24
|
+
export const notificationDocumentSourceSchema = z.enum(["legal", "finance"]);
|
|
25
|
+
export const notificationAttachmentSchema = z
|
|
26
|
+
.object({
|
|
27
|
+
filename: z.string().min(1).max(500),
|
|
28
|
+
contentBase64: z.string().min(1).optional().nullable(),
|
|
29
|
+
path: z.string().min(1).max(4000).optional().nullable(),
|
|
30
|
+
contentType: z.string().max(255).optional().nullable(),
|
|
31
|
+
disposition: z.enum(["attachment", "inline"]).optional().nullable(),
|
|
32
|
+
contentId: z.string().max(255).optional().nullable(),
|
|
33
|
+
})
|
|
34
|
+
.refine((value) => Boolean(value.contentBase64 || value.path), {
|
|
35
|
+
message: "contentBase64 or path is required",
|
|
36
|
+
path: ["contentBase64"],
|
|
37
|
+
});
|
|
23
38
|
const paginationSchema = z.object({
|
|
24
39
|
limit: z.coerce.number().int().min(1).max(100).default(20),
|
|
25
40
|
offset: z.coerce.number().int().min(0).default(0),
|
|
@@ -106,6 +121,7 @@ const transportNotificationCoreSchema = z.object({
|
|
|
106
121
|
subject: z.string().max(2000).optional().nullable(),
|
|
107
122
|
html: z.string().optional().nullable(),
|
|
108
123
|
text: z.string().optional().nullable(),
|
|
124
|
+
attachments: z.array(notificationAttachmentSchema).optional().nullable(),
|
|
109
125
|
data: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
110
126
|
metadata: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
111
127
|
scheduledFor: z.string().optional().nullable(),
|
|
@@ -127,6 +143,7 @@ export const sendNotificationSchema = z
|
|
|
127
143
|
subject: z.string().max(2000).optional().nullable(),
|
|
128
144
|
html: z.string().optional().nullable(),
|
|
129
145
|
text: z.string().optional().nullable(),
|
|
146
|
+
attachments: z.array(notificationAttachmentSchema).optional().nullable(),
|
|
130
147
|
data: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
131
148
|
targetType: notificationTargetTypeSchema.default("other"),
|
|
132
149
|
targetId: z.string().optional().nullable(),
|
|
@@ -141,3 +158,49 @@ export const sendNotificationSchema = z
|
|
|
141
158
|
.refine((value) => Boolean(value.templateId || value.templateSlug || value.subject || value.html || value.text), {
|
|
142
159
|
message: "templateId, templateSlug, or direct content is required",
|
|
143
160
|
});
|
|
161
|
+
export const bookingDocumentBundleItemSchema = z.object({
|
|
162
|
+
key: z.string().min(1),
|
|
163
|
+
source: notificationDocumentSourceSchema,
|
|
164
|
+
documentType: notificationDocumentTypeSchema,
|
|
165
|
+
bookingId: z.string().min(1),
|
|
166
|
+
contractId: z.string().optional().nullable(),
|
|
167
|
+
invoiceId: z.string().optional().nullable(),
|
|
168
|
+
attachmentId: z.string().optional().nullable(),
|
|
169
|
+
renditionId: z.string().optional().nullable(),
|
|
170
|
+
contractStatus: z.string().optional().nullable(),
|
|
171
|
+
invoiceStatus: z.string().optional().nullable(),
|
|
172
|
+
name: z.string().min(1),
|
|
173
|
+
format: z.string().optional().nullable(),
|
|
174
|
+
mimeType: z.string().optional().nullable(),
|
|
175
|
+
storageKey: z.string().optional().nullable(),
|
|
176
|
+
downloadUrl: z.string().url().optional().nullable(),
|
|
177
|
+
language: z.string().optional().nullable(),
|
|
178
|
+
metadata: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
179
|
+
createdAt: z.string().datetime(),
|
|
180
|
+
});
|
|
181
|
+
export const bookingDocumentBundleSchema = z.object({
|
|
182
|
+
bookingId: z.string().min(1),
|
|
183
|
+
documents: z.array(bookingDocumentBundleItemSchema),
|
|
184
|
+
});
|
|
185
|
+
export const sendBookingDocumentsNotificationSchema = z.object({
|
|
186
|
+
templateId: z.string().optional().nullable(),
|
|
187
|
+
templateSlug: z.string().optional().nullable(),
|
|
188
|
+
provider: z.string().optional().nullable(),
|
|
189
|
+
to: z.string().min(1).optional().nullable(),
|
|
190
|
+
from: z.string().max(500).optional().nullable(),
|
|
191
|
+
subject: z.string().max(2000).optional().nullable(),
|
|
192
|
+
html: z.string().optional().nullable(),
|
|
193
|
+
text: z.string().optional().nullable(),
|
|
194
|
+
data: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
195
|
+
metadata: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
196
|
+
scheduledFor: z.string().optional().nullable(),
|
|
197
|
+
documentTypes: z.array(notificationDocumentTypeSchema).optional().nullable(),
|
|
198
|
+
});
|
|
199
|
+
export const sendBookingDocumentsNotificationResultSchema = z.object({
|
|
200
|
+
bookingId: z.string().min(1),
|
|
201
|
+
recipient: z.string().min(1),
|
|
202
|
+
documents: z.array(bookingDocumentBundleItemSchema),
|
|
203
|
+
deliveryId: z.string().min(1),
|
|
204
|
+
provider: z.string().optional().nullable(),
|
|
205
|
+
status: notificationDeliveryStatusSchema,
|
|
206
|
+
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@voyantjs/notifications",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"license": "FSL-1.1-Apache-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -49,11 +49,12 @@
|
|
|
49
49
|
"drizzle-orm": "^0.45.2",
|
|
50
50
|
"hono": "^4.12.10",
|
|
51
51
|
"zod": "^4.3.6",
|
|
52
|
-
"@voyantjs/bookings": "0.
|
|
53
|
-
"@voyantjs/core": "0.
|
|
54
|
-
"@voyantjs/db": "0.
|
|
55
|
-
"@voyantjs/finance": "0.
|
|
56
|
-
"@voyantjs/hono": "0.
|
|
52
|
+
"@voyantjs/bookings": "0.4.0",
|
|
53
|
+
"@voyantjs/core": "0.4.0",
|
|
54
|
+
"@voyantjs/db": "0.4.0",
|
|
55
|
+
"@voyantjs/finance": "0.4.0",
|
|
56
|
+
"@voyantjs/hono": "0.4.0",
|
|
57
|
+
"@voyantjs/legal": "0.4.0"
|
|
57
58
|
},
|
|
58
59
|
"devDependencies": {
|
|
59
60
|
"typescript": "^6.0.2",
|