@zssz-soft/firebase-functions-shared 1.3.0 → 1.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/lib/config/app.config.d.ts +6 -0
- package/lib/config/app.config.d.ts.map +1 -1
- package/lib/config/app.config.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/modules/booking/booking-email.templates.d.ts +52 -0
- package/lib/modules/booking/booking-email.templates.d.ts.map +1 -1
- package/lib/modules/booking/booking-email.templates.js +768 -0
- package/lib/modules/booking/booking-email.templates.js.map +1 -1
- package/lib/modules/booking/booking-email.triggers.d.ts.map +1 -1
- package/lib/modules/booking/booking-email.triggers.js.map +1 -1
- package/lib/modules/events/booking-event.handlers.d.ts +44 -0
- package/lib/modules/events/booking-event.handlers.d.ts.map +1 -0
- package/lib/modules/events/booking-event.handlers.js +274 -0
- package/lib/modules/events/booking-event.handlers.js.map +1 -0
- package/lib/modules/events/booking-event.models.d.ts +109 -0
- package/lib/modules/events/booking-event.models.d.ts.map +1 -0
- package/lib/modules/events/booking-event.models.js +110 -0
- package/lib/modules/events/booking-event.models.js.map +1 -0
- package/lib/modules/events/booking-event.triggers.d.ts +46 -0
- package/lib/modules/events/booking-event.triggers.d.ts.map +1 -0
- package/lib/modules/events/booking-event.triggers.js +178 -0
- package/lib/modules/events/booking-event.triggers.js.map +1 -0
- package/lib/modules/events/event.models.d.ts +53 -0
- package/lib/modules/events/event.models.d.ts.map +1 -0
- package/lib/modules/events/event.models.js +18 -0
- package/lib/modules/events/event.models.js.map +1 -0
- package/lib/modules/events/index.d.ts +29 -0
- package/lib/modules/events/index.d.ts.map +1 -0
- package/lib/modules/events/index.js +49 -0
- package/lib/modules/events/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"booking-email.templates.js","sourceRoot":"","sources":["../../../src/modules/booking/booking-email.templates.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"booking-email.templates.js","sourceRoot":"","sources":["../../../src/modules/booking/booking-email.templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"booking-email.triggers.d.ts","sourceRoot":"","sources":["../../../src/modules/booking/booking-email.triggers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAEL,kBAAkB,EAEnB,MAAM,wBAAwB,CAAC;AAqDhC;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,GAAE,OAAO,CAAC,kBAAkB,CAAM;IAK/E;;;OAGG;;;;
|
|
1
|
+
{"version":3,"file":"booking-email.triggers.d.ts","sourceRoot":"","sources":["../../../src/modules/booking/booking-email.triggers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAEL,kBAAkB,EAEnB,MAAM,wBAAwB,CAAC;AAqDhC;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,GAAE,OAAO,CAAC,kBAAkB,CAAM;IAK/E;;;OAGG;;;;EAgHN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"booking-email.triggers.js","sourceRoot":"","sources":["../../../src/modules/booking/booking-email.triggers.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAsEH,
|
|
1
|
+
{"version":3,"file":"booking-email.triggers.js","sourceRoot":"","sources":["../../../src/modules/booking/booking-email.triggers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Booking Event Handlers (Eventarc Subscribers)
|
|
3
|
+
*
|
|
4
|
+
* Subscribes to booking events published by booking-event.triggers.ts
|
|
5
|
+
* and handles email notifications based on the event type.
|
|
6
|
+
*
|
|
7
|
+
* Architecture:
|
|
8
|
+
* - Single handler subscribes to all booking events (wildcard pattern)
|
|
9
|
+
* - NotificationMatrix determines what emails to send for each event
|
|
10
|
+
* - Template generators produce bilingual email content
|
|
11
|
+
*/
|
|
12
|
+
import { BookingEventConfig } from './booking-event.models';
|
|
13
|
+
/**
|
|
14
|
+
* Create booking email event handlers
|
|
15
|
+
*
|
|
16
|
+
* @param config - Configuration options
|
|
17
|
+
* @returns Object containing event handler functions
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const handlers = createBookingEmailHandlers({ region: 'europe-west1' });
|
|
22
|
+
* export const onBookingEmailHandler = handlers.onBookingEvent;
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare function createBookingEmailHandlers(config?: Partial<BookingEventConfig>): {
|
|
26
|
+
/**
|
|
27
|
+
* Universal handler for all booking events
|
|
28
|
+
*
|
|
29
|
+
* Subscribes to com.lodgeflow.booking.* events and routes to appropriate
|
|
30
|
+
* email templates based on the event type.
|
|
31
|
+
*/
|
|
32
|
+
onBookingEvent: import("firebase-functions").CloudFunction<import("firebase-functions").CloudEvent<any>>;
|
|
33
|
+
/**
|
|
34
|
+
* Individual handlers for specific event types (alternative approach)
|
|
35
|
+
* Use these if you need different scaling/configuration per event type
|
|
36
|
+
*/
|
|
37
|
+
onBookingSubmitted: import("firebase-functions").CloudFunction<import("firebase-functions").CloudEvent<any>>;
|
|
38
|
+
onBookingApproved: import("firebase-functions").CloudFunction<import("firebase-functions").CloudEvent<any>>;
|
|
39
|
+
onBookingReady: import("firebase-functions").CloudFunction<import("firebase-functions").CloudEvent<any>>;
|
|
40
|
+
onBookingRejected: import("firebase-functions").CloudFunction<import("firebase-functions").CloudEvent<any>>;
|
|
41
|
+
onBookingCompleted: import("firebase-functions").CloudFunction<import("firebase-functions").CloudEvent<any>>;
|
|
42
|
+
onBookingCancelled: import("firebase-functions").CloudFunction<import("firebase-functions").CloudEvent<any>>;
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=booking-event.handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"booking-event.handlers.d.ts","sourceRoot":"","sources":["../../../src/modules/events/booking-event.handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAmBH,OAAO,EACL,kBAAkB,EAKnB,MAAM,wBAAwB,CAAC;AAwGhC;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,GAAE,OAAO,CAAC,kBAAkB,CAAM;IAwH/E;;;;;OAKG;;IAqBH;;;OAGG;;;;;;;EAmEN"}
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Booking Event Handlers (Eventarc Subscribers)
|
|
4
|
+
*
|
|
5
|
+
* Subscribes to booking events published by booking-event.triggers.ts
|
|
6
|
+
* and handles email notifications based on the event type.
|
|
7
|
+
*
|
|
8
|
+
* Architecture:
|
|
9
|
+
* - Single handler subscribes to all booking events (wildcard pattern)
|
|
10
|
+
* - NotificationMatrix determines what emails to send for each event
|
|
11
|
+
* - Template generators produce bilingual email content
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.createBookingEmailHandlers = createBookingEmailHandlers;
|
|
15
|
+
const firebase_functions_1 = require("firebase-functions");
|
|
16
|
+
const eventarc_1 = require("firebase-functions/v2/eventarc");
|
|
17
|
+
const email_service_1 = require("../email/email.service");
|
|
18
|
+
const email_validator_1 = require("../email/email.validator");
|
|
19
|
+
const error_reporting_1 = require("../error-reporting");
|
|
20
|
+
const booking_email_templates_1 = require("../booking/booking-email.templates");
|
|
21
|
+
const booking_event_models_1 = require("./booking-event.models");
|
|
22
|
+
/**
|
|
23
|
+
* Notification matrix - maps event types to notification configuration
|
|
24
|
+
*/
|
|
25
|
+
const NotificationMatrix = {
|
|
26
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_SUBMITTED]: {
|
|
27
|
+
sendToGuest: true,
|
|
28
|
+
sendToAdmin: true,
|
|
29
|
+
guestTemplate: booking_email_templates_1.generateGuestConfirmationEmail,
|
|
30
|
+
adminTemplate: booking_email_templates_1.generateAdminNotificationEmail,
|
|
31
|
+
},
|
|
32
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_APPROVED]: {
|
|
33
|
+
sendToGuest: true,
|
|
34
|
+
sendToAdmin: false,
|
|
35
|
+
guestTemplate: booking_email_templates_1.generateBookingApprovedEmail,
|
|
36
|
+
},
|
|
37
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_READY]: {
|
|
38
|
+
sendToGuest: true,
|
|
39
|
+
sendToAdmin: false,
|
|
40
|
+
guestTemplate: booking_email_templates_1.generateBookingReadyEmail,
|
|
41
|
+
},
|
|
42
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_REJECTED]: {
|
|
43
|
+
sendToGuest: true,
|
|
44
|
+
sendToAdmin: false,
|
|
45
|
+
guestTemplate: booking_email_templates_1.generateBookingRejectedEmail,
|
|
46
|
+
},
|
|
47
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_COMPLETED]: {
|
|
48
|
+
sendToGuest: true,
|
|
49
|
+
sendToAdmin: false,
|
|
50
|
+
guestTemplate: booking_email_templates_1.generateBookingCompletedEmail,
|
|
51
|
+
},
|
|
52
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_CANCELLED]: {
|
|
53
|
+
sendToGuest: true,
|
|
54
|
+
sendToAdmin: true,
|
|
55
|
+
guestTemplate: booking_email_templates_1.generateBookingCancelledEmail,
|
|
56
|
+
adminTemplate: booking_email_templates_1.generateBookingCancelledEmail, // Same template, different recipient
|
|
57
|
+
},
|
|
58
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_USER_CANCELLED]: {
|
|
59
|
+
sendToGuest: true,
|
|
60
|
+
sendToAdmin: true,
|
|
61
|
+
guestTemplate: booking_email_templates_1.generateBookingCancelledEmail,
|
|
62
|
+
adminTemplate: booking_email_templates_1.generateBookingCancelledEmail,
|
|
63
|
+
},
|
|
64
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_INSTANT_CONFIRMED]: {
|
|
65
|
+
sendToGuest: true,
|
|
66
|
+
sendToAdmin: true,
|
|
67
|
+
guestTemplate: booking_email_templates_1.generateVipConfirmationEmail,
|
|
68
|
+
adminTemplate: booking_email_templates_1.generateVipStaffNotificationEmail,
|
|
69
|
+
},
|
|
70
|
+
[booking_event_models_1.BookingEventTypes.BOOKING_VIP_CANCELLED]: {
|
|
71
|
+
sendToGuest: true,
|
|
72
|
+
sendToAdmin: true,
|
|
73
|
+
guestTemplate: booking_email_templates_1.generateBookingCancelledEmail,
|
|
74
|
+
adminTemplate: booking_email_templates_1.generateBookingCancelledEmail,
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Get admin/owner email from booking data or config fallback
|
|
79
|
+
*/
|
|
80
|
+
function getAdminEmail(booking, cfg) {
|
|
81
|
+
var _a, _b;
|
|
82
|
+
// Try accommodation contact email first
|
|
83
|
+
const contactEmail = (_b = (_a = booking.accommodation) === null || _a === void 0 ? void 0 : _a.contact) === null || _b === void 0 ? void 0 : _b.email;
|
|
84
|
+
if (contactEmail && (0, email_validator_1.validateEmail)(contactEmail)) {
|
|
85
|
+
return contactEmail;
|
|
86
|
+
}
|
|
87
|
+
// Fallback to configured admin email
|
|
88
|
+
if (cfg.fallbackAdminEmail && (0, email_validator_1.validateEmail)(cfg.fallbackAdminEmail)) {
|
|
89
|
+
return cfg.fallbackAdminEmail;
|
|
90
|
+
}
|
|
91
|
+
// Try environment variable as last resort
|
|
92
|
+
const envAdminEmail = process.env.ADMIN_NOTIFICATION_EMAIL;
|
|
93
|
+
if (envAdminEmail && (0, email_validator_1.validateEmail)(envAdminEmail)) {
|
|
94
|
+
return envAdminEmail;
|
|
95
|
+
}
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Create booking email event handlers
|
|
100
|
+
*
|
|
101
|
+
* @param config - Configuration options
|
|
102
|
+
* @returns Object containing event handler functions
|
|
103
|
+
*
|
|
104
|
+
* @example
|
|
105
|
+
* ```typescript
|
|
106
|
+
* const handlers = createBookingEmailHandlers({ region: 'europe-west1' });
|
|
107
|
+
* export const onBookingEmailHandler = handlers.onBookingEvent;
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
110
|
+
function createBookingEmailHandlers(config = {}) {
|
|
111
|
+
const cfg = Object.assign(Object.assign({}, booking_event_models_1.DEFAULT_BOOKING_EVENT_CONFIG), config);
|
|
112
|
+
const errorReporter = (0, error_reporting_1.createErrorReporter)('BookingEmailHandler');
|
|
113
|
+
/**
|
|
114
|
+
* Send email using the email service
|
|
115
|
+
*/
|
|
116
|
+
async function sendEmail(to, template, booking, context) {
|
|
117
|
+
try {
|
|
118
|
+
const email = template(booking, context);
|
|
119
|
+
const result = await email_service_1.emailService.sendEmail({
|
|
120
|
+
to,
|
|
121
|
+
subject: email.subject,
|
|
122
|
+
html: email.html,
|
|
123
|
+
text: email.text,
|
|
124
|
+
});
|
|
125
|
+
return result.success;
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
firebase_functions_1.logger.error(`[EmailHandler] Failed to send email to ${to}`, error);
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Handle a booking event and send appropriate notifications
|
|
134
|
+
*/
|
|
135
|
+
async function handleBookingEvent(eventType, payload) {
|
|
136
|
+
var _a, _b;
|
|
137
|
+
const notificationConfig = NotificationMatrix[eventType];
|
|
138
|
+
if (!notificationConfig) {
|
|
139
|
+
firebase_functions_1.logger.info(`[EmailHandler] No notification config for event: ${eventType}`);
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
const { booking, bookingId, context } = payload;
|
|
143
|
+
firebase_functions_1.logger.info(`[EmailHandler] Processing ${eventType} for booking ${bookingId}`, {
|
|
144
|
+
guestEmail: (_a = booking.guest) === null || _a === void 0 ? void 0 : _a.email,
|
|
145
|
+
sendToGuest: notificationConfig.sendToGuest,
|
|
146
|
+
sendToAdmin: notificationConfig.sendToAdmin,
|
|
147
|
+
});
|
|
148
|
+
// Send guest email
|
|
149
|
+
if (notificationConfig.sendToGuest && notificationConfig.guestTemplate) {
|
|
150
|
+
const guestEmail = (_b = booking.guest) === null || _b === void 0 ? void 0 : _b.email;
|
|
151
|
+
if (guestEmail && (0, email_validator_1.validateEmail)(guestEmail)) {
|
|
152
|
+
try {
|
|
153
|
+
const success = await sendEmail(guestEmail, notificationConfig.guestTemplate, booking, context);
|
|
154
|
+
if (success) {
|
|
155
|
+
firebase_functions_1.logger.info(`[EmailHandler] Guest email sent for ${eventType}: ${bookingId}`);
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
errorReporter.warn(new Error('Guest email send returned false'), {
|
|
159
|
+
requestId: bookingId,
|
|
160
|
+
metadata: { type: 'guest_email_failed', eventType, email: guestEmail },
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
catch (error) {
|
|
165
|
+
errorReporter.report(error, {
|
|
166
|
+
requestId: bookingId,
|
|
167
|
+
metadata: { type: 'guest_email_error', eventType, email: guestEmail },
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
firebase_functions_1.logger.warn(`[EmailHandler] Invalid or missing guest email for booking ${bookingId}`);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
// Send admin email
|
|
176
|
+
if (cfg.adminNotificationEnabled &&
|
|
177
|
+
notificationConfig.sendToAdmin &&
|
|
178
|
+
notificationConfig.adminTemplate) {
|
|
179
|
+
const adminEmail = getAdminEmail(booking, cfg);
|
|
180
|
+
if (adminEmail) {
|
|
181
|
+
try {
|
|
182
|
+
const success = await sendEmail(adminEmail, notificationConfig.adminTemplate, booking, context);
|
|
183
|
+
if (success) {
|
|
184
|
+
firebase_functions_1.logger.info(`[EmailHandler] Admin email sent for ${eventType}: ${bookingId}`);
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
errorReporter.warn(new Error('Admin email send returned false'), {
|
|
188
|
+
requestId: bookingId,
|
|
189
|
+
metadata: { type: 'admin_email_failed', eventType, email: adminEmail },
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
errorReporter.report(error, {
|
|
195
|
+
requestId: bookingId,
|
|
196
|
+
metadata: { type: 'admin_email_error', eventType, email: adminEmail },
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
firebase_functions_1.logger.warn(`[EmailHandler] No admin email available for booking ${bookingId}`);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
return {
|
|
206
|
+
/**
|
|
207
|
+
* Universal handler for all booking events
|
|
208
|
+
*
|
|
209
|
+
* Subscribes to com.lodgeflow.booking.* events and routes to appropriate
|
|
210
|
+
* email templates based on the event type.
|
|
211
|
+
*/
|
|
212
|
+
onBookingEvent: (0, eventarc_1.onCustomEventPublished)({
|
|
213
|
+
eventType: 'com.lodgeflow.booking.*',
|
|
214
|
+
channel: cfg.eventChannel,
|
|
215
|
+
region: cfg.region,
|
|
216
|
+
maxInstances: cfg.maxInstances,
|
|
217
|
+
}, async (event) => {
|
|
218
|
+
const eventType = event.type;
|
|
219
|
+
const payload = event.data;
|
|
220
|
+
if (!payload || !payload.booking || !payload.bookingId) {
|
|
221
|
+
firebase_functions_1.logger.warn(`[EmailHandler] Invalid event payload for ${eventType}`);
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
await handleBookingEvent(eventType, payload);
|
|
225
|
+
}),
|
|
226
|
+
/**
|
|
227
|
+
* Individual handlers for specific event types (alternative approach)
|
|
228
|
+
* Use these if you need different scaling/configuration per event type
|
|
229
|
+
*/
|
|
230
|
+
onBookingSubmitted: (0, eventarc_1.onCustomEventPublished)({
|
|
231
|
+
eventType: booking_event_models_1.BookingEventTypes.BOOKING_SUBMITTED,
|
|
232
|
+
channel: cfg.eventChannel,
|
|
233
|
+
region: cfg.region,
|
|
234
|
+
}, async (event) => {
|
|
235
|
+
await handleBookingEvent(event.type, event.data);
|
|
236
|
+
}),
|
|
237
|
+
onBookingApproved: (0, eventarc_1.onCustomEventPublished)({
|
|
238
|
+
eventType: booking_event_models_1.BookingEventTypes.BOOKING_APPROVED,
|
|
239
|
+
channel: cfg.eventChannel,
|
|
240
|
+
region: cfg.region,
|
|
241
|
+
}, async (event) => {
|
|
242
|
+
await handleBookingEvent(event.type, event.data);
|
|
243
|
+
}),
|
|
244
|
+
onBookingReady: (0, eventarc_1.onCustomEventPublished)({
|
|
245
|
+
eventType: booking_event_models_1.BookingEventTypes.BOOKING_READY,
|
|
246
|
+
channel: cfg.eventChannel,
|
|
247
|
+
region: cfg.region,
|
|
248
|
+
}, async (event) => {
|
|
249
|
+
await handleBookingEvent(event.type, event.data);
|
|
250
|
+
}),
|
|
251
|
+
onBookingRejected: (0, eventarc_1.onCustomEventPublished)({
|
|
252
|
+
eventType: booking_event_models_1.BookingEventTypes.BOOKING_REJECTED,
|
|
253
|
+
channel: cfg.eventChannel,
|
|
254
|
+
region: cfg.region,
|
|
255
|
+
}, async (event) => {
|
|
256
|
+
await handleBookingEvent(event.type, event.data);
|
|
257
|
+
}),
|
|
258
|
+
onBookingCompleted: (0, eventarc_1.onCustomEventPublished)({
|
|
259
|
+
eventType: booking_event_models_1.BookingEventTypes.BOOKING_COMPLETED,
|
|
260
|
+
channel: cfg.eventChannel,
|
|
261
|
+
region: cfg.region,
|
|
262
|
+
}, async (event) => {
|
|
263
|
+
await handleBookingEvent(event.type, event.data);
|
|
264
|
+
}),
|
|
265
|
+
onBookingCancelled: (0, eventarc_1.onCustomEventPublished)({
|
|
266
|
+
eventType: booking_event_models_1.BookingEventTypes.BOOKING_CANCELLED,
|
|
267
|
+
channel: cfg.eventChannel,
|
|
268
|
+
region: cfg.region,
|
|
269
|
+
}, async (event) => {
|
|
270
|
+
await handleBookingEvent(event.type, event.data);
|
|
271
|
+
}),
|
|
272
|
+
};
|
|
273
|
+
}
|
|
274
|
+
//# sourceMappingURL=booking-event.handlers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"booking-event.handlers.js","sourceRoot":"","sources":["../../../src/modules/events/booking-event.handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Booking Event Models
|
|
3
|
+
*
|
|
4
|
+
* Event types and payloads for booking workflow transitions.
|
|
5
|
+
* Used by Eventarc publishers and subscribers.
|
|
6
|
+
*/
|
|
7
|
+
import { BookingEmailData, BookingEmailConfig } from '../booking/booking-email.models';
|
|
8
|
+
/**
|
|
9
|
+
* All booking workflow transition event types
|
|
10
|
+
*
|
|
11
|
+
* Naming convention: com.lodgeflow.booking.{action}
|
|
12
|
+
*/
|
|
13
|
+
export declare const BookingEventTypes: {
|
|
14
|
+
/** draft → pending_approval: New booking submitted for approval */
|
|
15
|
+
readonly BOOKING_SUBMITTED: "com.lodgeflow.booking.submitted";
|
|
16
|
+
/** pending_approval → confirmed: Admin approved the booking */
|
|
17
|
+
readonly BOOKING_APPROVED: "com.lodgeflow.booking.approved";
|
|
18
|
+
/** confirmed → ready: All conditions met for check-in */
|
|
19
|
+
readonly BOOKING_READY: "com.lodgeflow.booking.ready";
|
|
20
|
+
/** pending_approval → cancelled: Admin rejected the booking */
|
|
21
|
+
readonly BOOKING_REJECTED: "com.lodgeflow.booking.rejected";
|
|
22
|
+
/** ready → completed: Guest checked out */
|
|
23
|
+
readonly BOOKING_COMPLETED: "com.lodgeflow.booking.completed";
|
|
24
|
+
/** confirmed/ready → cancelled: Admin cancelled the booking */
|
|
25
|
+
readonly BOOKING_CANCELLED: "com.lodgeflow.booking.cancelled";
|
|
26
|
+
/** pending_approval/confirmed → cancelled: User cancelled their booking */
|
|
27
|
+
readonly BOOKING_USER_CANCELLED: "com.lodgeflow.booking.user_cancelled";
|
|
28
|
+
/** draft → confirmed: Instant VIP confirmation */
|
|
29
|
+
readonly BOOKING_INSTANT_CONFIRMED: "com.lodgeflow.booking.instant_confirmed";
|
|
30
|
+
/** VIP booking cancelled */
|
|
31
|
+
readonly BOOKING_VIP_CANCELLED: "com.lodgeflow.booking.vip_cancelled";
|
|
32
|
+
};
|
|
33
|
+
export type BookingEventType = (typeof BookingEventTypes)[keyof typeof BookingEventTypes];
|
|
34
|
+
/**
|
|
35
|
+
* Transition context for workflow events
|
|
36
|
+
*/
|
|
37
|
+
export interface TransitionInfo {
|
|
38
|
+
/** Workflow transition identifier */
|
|
39
|
+
transitionId: string;
|
|
40
|
+
/** Previous workflow state */
|
|
41
|
+
from: string;
|
|
42
|
+
/** New workflow state */
|
|
43
|
+
to: string;
|
|
44
|
+
/** User ID who triggered the transition */
|
|
45
|
+
triggeredBy: string;
|
|
46
|
+
/** ISO timestamp when transition occurred */
|
|
47
|
+
triggeredAt: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Additional context for specific event types
|
|
51
|
+
*/
|
|
52
|
+
export interface BookingEventContext {
|
|
53
|
+
/** Reason for rejection or cancellation */
|
|
54
|
+
reason?: string;
|
|
55
|
+
/** Refund amount for cancellations */
|
|
56
|
+
refundAmount?: number;
|
|
57
|
+
/** Whether this is a VIP booking */
|
|
58
|
+
isVip?: boolean;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Payload for booking workflow events
|
|
62
|
+
*/
|
|
63
|
+
export interface BookingEventPayload {
|
|
64
|
+
/** Booking document ID */
|
|
65
|
+
bookingId: string;
|
|
66
|
+
/** Full booking data */
|
|
67
|
+
booking: BookingEmailData;
|
|
68
|
+
/** Workflow transition details */
|
|
69
|
+
transition: TransitionInfo;
|
|
70
|
+
/** Additional context (rejection reason, refund, etc.) */
|
|
71
|
+
context?: BookingEventContext;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Mapping from workflow transition IDs to event types
|
|
75
|
+
*
|
|
76
|
+
* Used to determine which event to publish based on the transition
|
|
77
|
+
*/
|
|
78
|
+
export declare const TransitionToEventMap: Record<string, BookingEventType>;
|
|
79
|
+
/**
|
|
80
|
+
* Reverse mapping: state transitions to transition IDs
|
|
81
|
+
* Used when we only have before/after states
|
|
82
|
+
*/
|
|
83
|
+
export declare const StateChangeToTransitionMap: Record<string, Record<string, string>>;
|
|
84
|
+
/**
|
|
85
|
+
* Configuration for booking event triggers
|
|
86
|
+
* Extends BookingEmailConfig with event-specific options
|
|
87
|
+
*/
|
|
88
|
+
export interface BookingEventConfig extends BookingEmailConfig {
|
|
89
|
+
/** Eventarc channel name (default: 'firebase') */
|
|
90
|
+
eventChannel: string;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Default configuration for booking events
|
|
94
|
+
*/
|
|
95
|
+
export declare const DEFAULT_BOOKING_EVENT_CONFIG: BookingEventConfig;
|
|
96
|
+
/**
|
|
97
|
+
* Transitions that should NOT trigger email notifications
|
|
98
|
+
*/
|
|
99
|
+
export declare const SILENT_TRANSITIONS: Set<string>;
|
|
100
|
+
/**
|
|
101
|
+
* Check if a transition should trigger notifications
|
|
102
|
+
*/
|
|
103
|
+
export declare function shouldNotify(transitionId: string): boolean;
|
|
104
|
+
/**
|
|
105
|
+
* Infer transition ID from state change
|
|
106
|
+
* Falls back to generic transition if exact match not found
|
|
107
|
+
*/
|
|
108
|
+
export declare function inferTransitionId(fromState: string, toState: string): string | null;
|
|
109
|
+
//# sourceMappingURL=booking-event.models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"booking-event.models.d.ts","sourceRoot":"","sources":["../../../src/modules/events/booking-event.models.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAEnB,MAAM,iCAAiC,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;IAE5B,mEAAmE;;IAGnE,+DAA+D;;IAG/D,yDAAyD;;IAGzD,+DAA+D;;IAG/D,2CAA2C;;IAG3C,+DAA+D;;IAG/D,2EAA2E;;IAI3E,kDAAkD;;IAGlD,4BAA4B;;CAEpB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAE1F;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IAErB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IAEb,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IAEX,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IAEpB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,sCAAsC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAElB,wBAAwB;IACxB,OAAO,EAAE,gBAAgB,CAAC;IAE1B,kCAAkC;IAClC,UAAU,EAAE,cAAc,CAAC;IAE3B,0DAA0D;IAC1D,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAkBjE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkB7E,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC5D,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,kBAG1C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,aAA4B,CAAC;AAE5D;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMnF"}
|