@livdot-tech/contracts 1.6.5 → 1.6.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/dist/auth/index.js +1 -1
  2. package/dist/auth/index.mjs +1 -1
  3. package/dist/booking/index.d.mts +55 -1
  4. package/dist/booking/index.d.ts +55 -1
  5. package/dist/booking/index.js +1 -1
  6. package/dist/booking/index.mjs +1 -1
  7. package/dist/chunk-C2UM2XK7.mjs +2 -0
  8. package/dist/chunk-C2UM2XK7.mjs.map +1 -0
  9. package/dist/{chunk-4WFVAXHI.mjs → chunk-CMEKX44M.mjs} +2 -2
  10. package/dist/{chunk-4WFVAXHI.mjs.map → chunk-CMEKX44M.mjs.map} +1 -1
  11. package/dist/chunk-DFUVVL4N.mjs +2 -0
  12. package/dist/chunk-DFUVVL4N.mjs.map +1 -0
  13. package/dist/chunk-JH2L3JHP.js +2 -0
  14. package/dist/chunk-JH2L3JHP.js.map +1 -0
  15. package/dist/chunk-K3Q4GN6Y.js +2 -0
  16. package/dist/chunk-K3Q4GN6Y.js.map +1 -0
  17. package/dist/chunk-KLXQP7YG.js +2 -0
  18. package/dist/chunk-KLXQP7YG.js.map +1 -0
  19. package/dist/{chunk-TASMVAYG.mjs → chunk-MME6Q6BF.mjs} +2 -2
  20. package/dist/chunk-MME6Q6BF.mjs.map +1 -0
  21. package/dist/{chunk-XSBPWLFH.js → chunk-PGF5G662.js} +2 -2
  22. package/dist/chunk-PGF5G662.js.map +1 -0
  23. package/dist/chunk-PLBAQBIM.mjs +2 -0
  24. package/dist/chunk-PLBAQBIM.mjs.map +1 -0
  25. package/dist/chunk-PLCR4DRE.mjs +2 -0
  26. package/dist/chunk-PLCR4DRE.mjs.map +1 -0
  27. package/dist/chunk-QNAYXLYH.js +2 -0
  28. package/dist/chunk-QNAYXLYH.js.map +1 -0
  29. package/dist/{chunk-JXZNFGAC.js → chunk-VF2E3A6G.js} +2 -2
  30. package/dist/{chunk-JXZNFGAC.js.map → chunk-VF2E3A6G.js.map} +1 -1
  31. package/dist/event/index.d.mts +5 -8
  32. package/dist/event/index.d.ts +5 -8
  33. package/dist/event/index.js +1 -1
  34. package/dist/event/index.mjs +1 -1
  35. package/dist/index.d.mts +205 -5
  36. package/dist/index.d.ts +205 -5
  37. package/dist/index.js +1 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/index.mjs +1 -1
  40. package/dist/index.mjs.map +1 -1
  41. package/dist/marketplace/index.d.mts +15 -14
  42. package/dist/marketplace/index.d.ts +15 -14
  43. package/dist/marketplace/index.js +1 -1
  44. package/dist/marketplace/index.mjs +1 -1
  45. package/dist/notification/index.d.mts +17 -1
  46. package/dist/notification/index.d.ts +17 -1
  47. package/dist/notification/index.js +1 -1
  48. package/dist/notification/index.mjs +1 -1
  49. package/dist/user/index.d.mts +12 -3
  50. package/dist/user/index.d.ts +12 -3
  51. package/dist/user/index.js +1 -1
  52. package/dist/user/index.mjs +1 -1
  53. package/package.json +1 -1
  54. package/dist/chunk-22MTWH56.js +0 -2
  55. package/dist/chunk-22MTWH56.js.map +0 -1
  56. package/dist/chunk-2SBD35GV.js +0 -2
  57. package/dist/chunk-2SBD35GV.js.map +0 -1
  58. package/dist/chunk-BUNVUKD6.mjs +0 -2
  59. package/dist/chunk-BUNVUKD6.mjs.map +0 -1
  60. package/dist/chunk-EQVYSKSG.mjs +0 -2
  61. package/dist/chunk-EQVYSKSG.mjs.map +0 -1
  62. package/dist/chunk-IEPZ7KSZ.mjs +0 -2
  63. package/dist/chunk-IEPZ7KSZ.mjs.map +0 -1
  64. package/dist/chunk-KB2APMLU.mjs +0 -2
  65. package/dist/chunk-KB2APMLU.mjs.map +0 -1
  66. package/dist/chunk-MF4EHXLU.js +0 -2
  67. package/dist/chunk-MF4EHXLU.js.map +0 -1
  68. package/dist/chunk-TASMVAYG.mjs.map +0 -1
  69. package/dist/chunk-VURYMVM5.js +0 -2
  70. package/dist/chunk-VURYMVM5.js.map +0 -1
  71. package/dist/chunk-W2AXUTIW.js +0 -2
  72. package/dist/chunk-W2AXUTIW.js.map +0 -1
  73. package/dist/chunk-WQRHUUGO.mjs +0 -2
  74. package/dist/chunk-WQRHUUGO.mjs.map +0 -1
  75. package/dist/chunk-XSBPWLFH.js.map +0 -1
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkJXZNFGAC_js=require('../chunk-JXZNFGAC.js');require('../chunk-VURYMVM5.js'),require('../chunk-W2AXUTIW.js'),require('../chunk-XSBPWLFH.js'),require('../chunk-QGEYDED6.js');Object.defineProperty(exports,"ChangePasswordRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.q}});Object.defineProperty(exports,"ConfirmPasswordSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.C}});Object.defineProperty(exports,"ForgotPasswordRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.n}});Object.defineProperty(exports,"ForgotPasswordResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.o}});Object.defineProperty(exports,"IdentityProvider",{enumerable:true,get:function(){return chunkJXZNFGAC_js.a}});Object.defineProperty(exports,"LinkRequiredReasonEnum",{enumerable:true,get:function(){return chunkJXZNFGAC_js.b}});Object.defineProperty(exports,"LinkRequiredResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.x}});Object.defineProperty(exports,"LoginRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.g}});Object.defineProperty(exports,"LoginResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.k}});Object.defineProperty(exports,"LogoutRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.m}});Object.defineProperty(exports,"OauthDirectTokenRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.u}});Object.defineProperty(exports,"OauthExchangeRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.t}});Object.defineProperty(exports,"OauthLinkCompleteEmailRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.B}});Object.defineProperty(exports,"OauthLinkCompleteRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.v}});Object.defineProperty(exports,"OauthLinkSendOtpRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.w}});Object.defineProperty(exports,"OauthLinkSendOtpResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.y}});Object.defineProperty(exports,"OauthResolveKind",{enumerable:true,get:function(){return chunkJXZNFGAC_js.c}});Object.defineProperty(exports,"OauthStartQuerySchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.r}});Object.defineProperty(exports,"OauthStartResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.s}});Object.defineProperty(exports,"PasswordSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.d}});Object.defineProperty(exports,"ProvidersListItemSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.z}});Object.defineProperty(exports,"ProvidersListResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.A}});Object.defineProperty(exports,"ReauthTokenResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.D}});Object.defineProperty(exports,"RefreshTokenRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.l}});Object.defineProperty(exports,"RegisterRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.e}});Object.defineProperty(exports,"RegisterResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.f}});Object.defineProperty(exports,"ResendOtpRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.i}});Object.defineProperty(exports,"ResetPasswordRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.p}});Object.defineProperty(exports,"VerifyOtpRequestSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.h}});Object.defineProperty(exports,"VerifyOtpResponseSchema",{enumerable:true,get:function(){return chunkJXZNFGAC_js.j}});//# sourceMappingURL=index.js.map
1
+ 'use strict';var chunkVF2E3A6G_js=require('../chunk-VF2E3A6G.js');require('../chunk-K3Q4GN6Y.js'),require('../chunk-KLXQP7YG.js'),require('../chunk-PGF5G662.js'),require('../chunk-QGEYDED6.js');Object.defineProperty(exports,"ChangePasswordRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.q}});Object.defineProperty(exports,"ConfirmPasswordSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.C}});Object.defineProperty(exports,"ForgotPasswordRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.n}});Object.defineProperty(exports,"ForgotPasswordResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.o}});Object.defineProperty(exports,"IdentityProvider",{enumerable:true,get:function(){return chunkVF2E3A6G_js.a}});Object.defineProperty(exports,"LinkRequiredReasonEnum",{enumerable:true,get:function(){return chunkVF2E3A6G_js.b}});Object.defineProperty(exports,"LinkRequiredResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.x}});Object.defineProperty(exports,"LoginRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.g}});Object.defineProperty(exports,"LoginResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.k}});Object.defineProperty(exports,"LogoutRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.m}});Object.defineProperty(exports,"OauthDirectTokenRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.u}});Object.defineProperty(exports,"OauthExchangeRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.t}});Object.defineProperty(exports,"OauthLinkCompleteEmailRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.B}});Object.defineProperty(exports,"OauthLinkCompleteRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.v}});Object.defineProperty(exports,"OauthLinkSendOtpRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.w}});Object.defineProperty(exports,"OauthLinkSendOtpResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.y}});Object.defineProperty(exports,"OauthResolveKind",{enumerable:true,get:function(){return chunkVF2E3A6G_js.c}});Object.defineProperty(exports,"OauthStartQuerySchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.r}});Object.defineProperty(exports,"OauthStartResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.s}});Object.defineProperty(exports,"PasswordSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.d}});Object.defineProperty(exports,"ProvidersListItemSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.z}});Object.defineProperty(exports,"ProvidersListResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.A}});Object.defineProperty(exports,"ReauthTokenResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.D}});Object.defineProperty(exports,"RefreshTokenRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.l}});Object.defineProperty(exports,"RegisterRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.e}});Object.defineProperty(exports,"RegisterResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.f}});Object.defineProperty(exports,"ResendOtpRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.i}});Object.defineProperty(exports,"ResetPasswordRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.p}});Object.defineProperty(exports,"VerifyOtpRequestSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.h}});Object.defineProperty(exports,"VerifyOtpResponseSchema",{enumerable:true,get:function(){return chunkVF2E3A6G_js.j}});//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- export{q as ChangePasswordRequestSchema,C as ConfirmPasswordSchema,n as ForgotPasswordRequestSchema,o as ForgotPasswordResponseSchema,a as IdentityProvider,b as LinkRequiredReasonEnum,x as LinkRequiredResponseSchema,g as LoginRequestSchema,k as LoginResponseSchema,m as LogoutRequestSchema,u as OauthDirectTokenRequestSchema,t as OauthExchangeRequestSchema,B as OauthLinkCompleteEmailRequestSchema,v as OauthLinkCompleteRequestSchema,w as OauthLinkSendOtpRequestSchema,y as OauthLinkSendOtpResponseSchema,c as OauthResolveKind,r as OauthStartQuerySchema,s as OauthStartResponseSchema,d as PasswordSchema,z as ProvidersListItemSchema,A as ProvidersListResponseSchema,D as ReauthTokenResponseSchema,l as RefreshTokenRequestSchema,e as RegisterRequestSchema,f as RegisterResponseSchema,i as ResendOtpRequestSchema,p as ResetPasswordRequestSchema,h as VerifyOtpRequestSchema,j as VerifyOtpResponseSchema}from'../chunk-4WFVAXHI.mjs';import'../chunk-KB2APMLU.mjs';import'../chunk-EQVYSKSG.mjs';import'../chunk-TASMVAYG.mjs';import'../chunk-X7OLLQRF.mjs';//# sourceMappingURL=index.mjs.map
1
+ export{q as ChangePasswordRequestSchema,C as ConfirmPasswordSchema,n as ForgotPasswordRequestSchema,o as ForgotPasswordResponseSchema,a as IdentityProvider,b as LinkRequiredReasonEnum,x as LinkRequiredResponseSchema,g as LoginRequestSchema,k as LoginResponseSchema,m as LogoutRequestSchema,u as OauthDirectTokenRequestSchema,t as OauthExchangeRequestSchema,B as OauthLinkCompleteEmailRequestSchema,v as OauthLinkCompleteRequestSchema,w as OauthLinkSendOtpRequestSchema,y as OauthLinkSendOtpResponseSchema,c as OauthResolveKind,r as OauthStartQuerySchema,s as OauthStartResponseSchema,d as PasswordSchema,z as ProvidersListItemSchema,A as ProvidersListResponseSchema,D as ReauthTokenResponseSchema,l as RefreshTokenRequestSchema,e as RegisterRequestSchema,f as RegisterResponseSchema,i as ResendOtpRequestSchema,p as ResetPasswordRequestSchema,h as VerifyOtpRequestSchema,j as VerifyOtpResponseSchema}from'../chunk-CMEKX44M.mjs';import'../chunk-C2UM2XK7.mjs';import'../chunk-PLCR4DRE.mjs';import'../chunk-MME6Q6BF.mjs';import'../chunk-X7OLLQRF.mjs';//# sourceMappingURL=index.mjs.map
2
2
  //# sourceMappingURL=index.mjs.map
@@ -201,12 +201,14 @@ declare const CreateMarketplaceBookingRequestSchema: z.ZodObject<{
201
201
  }>;
202
202
  eventId: z.ZodOptional<z.ZodUUID>;
203
203
  jobListingId: z.ZodOptional<z.ZodUUID>;
204
+ sourceIoiId: z.ZodOptional<z.ZodUUID>;
204
205
  agreedAmount: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
205
206
  scopeOfWork: z.ZodOptional<z.ZodString>;
206
207
  }, z.core.$strip>;
207
208
  declare const MarketplaceBookingResponseSchema: z.ZodObject<{
208
209
  id: z.ZodUUID;
209
210
  eventId: z.ZodNullable<z.ZodUUID>;
211
+ eventLinked: z.ZodBoolean;
210
212
  hostProfileId: z.ZodUUID;
211
213
  producerProfileId: z.ZodUUID;
212
214
  origin: z.ZodEnum<{
@@ -230,6 +232,8 @@ declare const MarketplaceBookingResponseSchema: z.ZodObject<{
230
232
  readonly IN_DISPUTE: "IN_DISPUTE";
231
233
  readonly CLOSED: "CLOSED";
232
234
  }>;
235
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
236
+ scopeOfWork: z.ZodNullable<z.ZodString>;
233
237
  createdAt: z.ZodString;
234
238
  updatedAt: z.ZodString;
235
239
  }, z.core.$strip>;
@@ -239,6 +243,7 @@ declare const CreateMarketplaceBookingResponseSchema: z.ZodObject<{
239
243
  booking: z.ZodObject<{
240
244
  id: z.ZodUUID;
241
245
  eventId: z.ZodNullable<z.ZodUUID>;
246
+ eventLinked: z.ZodBoolean;
242
247
  hostProfileId: z.ZodUUID;
243
248
  producerProfileId: z.ZodUUID;
244
249
  origin: z.ZodEnum<{
@@ -262,6 +267,8 @@ declare const CreateMarketplaceBookingResponseSchema: z.ZodObject<{
262
267
  readonly IN_DISPUTE: "IN_DISPUTE";
263
268
  readonly CLOSED: "CLOSED";
264
269
  }>;
270
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
271
+ scopeOfWork: z.ZodNullable<z.ZodString>;
265
272
  createdAt: z.ZodString;
266
273
  updatedAt: z.ZodString;
267
274
  }, z.core.$strip>;
@@ -288,6 +295,7 @@ declare const TransitionMarketplaceBookingResponseSchema: z.ZodObject<{
288
295
  booking: z.ZodObject<{
289
296
  id: z.ZodUUID;
290
297
  eventId: z.ZodNullable<z.ZodUUID>;
298
+ eventLinked: z.ZodBoolean;
291
299
  hostProfileId: z.ZodUUID;
292
300
  producerProfileId: z.ZodUUID;
293
301
  origin: z.ZodEnum<{
@@ -311,10 +319,54 @@ declare const TransitionMarketplaceBookingResponseSchema: z.ZodObject<{
311
319
  readonly IN_DISPUTE: "IN_DISPUTE";
312
320
  readonly CLOSED: "CLOSED";
313
321
  }>;
322
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
323
+ scopeOfWork: z.ZodNullable<z.ZodString>;
314
324
  createdAt: z.ZodString;
315
325
  updatedAt: z.ZodString;
316
326
  }, z.core.$strip>;
317
327
  }, z.core.$strip>;
328
+ /** `POST /marketplace/bookings/:id/complete` — dual-ack manual completion */
329
+ declare const CompleteMarketplaceBookingRequestSchema: z.ZodObject<{
330
+ notes: z.ZodOptional<z.ZodString>;
331
+ force: z.ZodOptional<z.ZodBoolean>;
332
+ }, z.core.$strip>;
333
+ declare const CompleteMarketplaceBookingResponseSchema: z.ZodObject<{
334
+ booking: z.ZodObject<{
335
+ id: z.ZodUUID;
336
+ eventId: z.ZodNullable<z.ZodUUID>;
337
+ eventLinked: z.ZodBoolean;
338
+ hostProfileId: z.ZodUUID;
339
+ producerProfileId: z.ZodUUID;
340
+ origin: z.ZodEnum<{
341
+ readonly EVENT_DIRECT: "EVENT_DIRECT";
342
+ readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT";
343
+ readonly JOB_LISTING: "JOB_LISTING";
344
+ }>;
345
+ jobListingId: z.ZodNullable<z.ZodUUID>;
346
+ sourceIoiId: z.ZodNullable<z.ZodUUID>;
347
+ state: z.ZodEnum<{
348
+ readonly REQUESTED: "REQUESTED";
349
+ readonly AWAITING_PRODUCER_RESPONSE: "AWAITING_PRODUCER_RESPONSE";
350
+ readonly IN_NEGOTIATION: "IN_NEGOTIATION";
351
+ readonly ACCEPTED: "ACCEPTED";
352
+ readonly REJECTED: "REJECTED";
353
+ readonly CANCELLED: "CANCELLED";
354
+ readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING";
355
+ readonly CONFIRMED: "CONFIRMED";
356
+ readonly IN_PROGRESS: "IN_PROGRESS";
357
+ readonly SERVICE_COMPLETED: "SERVICE_COMPLETED";
358
+ readonly IN_DISPUTE: "IN_DISPUTE";
359
+ readonly CLOSED: "CLOSED";
360
+ }>;
361
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
362
+ scopeOfWork: z.ZodNullable<z.ZodString>;
363
+ createdAt: z.ZodString;
364
+ updatedAt: z.ZodString;
365
+ }, z.core.$strip>;
366
+ hostAcked: z.ZodBoolean;
367
+ producerAcked: z.ZodBoolean;
368
+ completed: z.ZodBoolean;
369
+ }, z.core.$strip>;
318
370
  /** `POST /marketplace/job-listings` */
319
371
  declare const CreateMarketplaceJobListingRequestSchema: z.ZodObject<{
320
372
  title: z.ZodString;
@@ -447,6 +499,8 @@ type CreateMarketplaceBookingResponse = z.infer<typeof CreateMarketplaceBookingR
447
499
  type MarketplaceIndicationOfInterestHostItem = z.infer<typeof MarketplaceIndicationOfInterestHostItemSchema>;
448
500
  type TransitionMarketplaceBookingRequest = z.infer<typeof TransitionMarketplaceBookingRequestSchema>;
449
501
  type TransitionMarketplaceBookingResponse = z.infer<typeof TransitionMarketplaceBookingResponseSchema>;
502
+ type CompleteMarketplaceBookingRequest = z.infer<typeof CompleteMarketplaceBookingRequestSchema>;
503
+ type CompleteMarketplaceBookingResponse = z.infer<typeof CompleteMarketplaceBookingResponseSchema>;
450
504
 
451
505
  declare const MessageDeliveryStatus: {
452
506
  readonly SENT: "SENT";
@@ -605,4 +659,4 @@ type PostMarketplaceHiringThreadMessageResponse = z.infer<typeof PostMarketplace
605
659
  type MarkMarketplaceHiringThreadReadRequest = z.infer<typeof MarkMarketplaceHiringThreadReadRequestSchema>;
606
660
  type MarkMarketplaceHiringThreadReadResponse = z.infer<typeof MarkMarketplaceHiringThreadReadResponseSchema>;
607
661
 
608
- export { BOOKING_TERMINAL_STATES, BOOKING_TRANSITION_ACTORS, BOOKING_TRANSITION_TARGETS_REQUIRING_REASON, BookingOrigin, BookingPaymentStatus, type BookingResponse, BookingResponseSchema, BookingState, BookingTransitionActor, type BookingTransitionKey, type ConfirmBookingRequest, ConfirmBookingRequestSchema, type CreateBookingRequest, CreateBookingRequestSchema, type CreateJobListingRequest, CreateJobListingRequestSchema, type CreateMarketplaceBookingRequest, CreateMarketplaceBookingRequestSchema, type CreateMarketplaceBookingResponse, CreateMarketplaceBookingResponseSchema, type CreateMarketplaceJobListingRequest, CreateMarketplaceJobListingRequestSchema, type GetMarketplaceHiringThreadResponse, GetMarketplaceHiringThreadResponseSchema, type IndicationOfInterestResponse, IndicationOfInterestResponseSchema, IoiState, type JobListingResponse, JobListingResponseSchema, JobListingState, JobLocation, type ListMarketplaceHiringThreadMessagesQuery, ListMarketplaceHiringThreadMessagesQuerySchema, type ListMarketplaceHiringThreadMessagesResponse, ListMarketplaceHiringThreadMessagesResponseSchema, type ListMarketplaceJobListingsQuery, ListMarketplaceJobListingsQuerySchema, type MarkMarketplaceHiringThreadReadRequest, MarkMarketplaceHiringThreadReadRequestSchema, type MarkMarketplaceHiringThreadReadResponse, MarkMarketplaceHiringThreadReadResponseSchema, type MarketplaceBookingResponse, MarketplaceBookingResponseSchema, type MarketplaceHiringMessage, MarketplaceHiringMessageAttachmentSchema, MarketplaceHiringMessageSchema, type MarketplaceHiringThread, MarketplaceHiringThreadSchema, type MarketplaceIndicationOfInterestHostItem, MarketplaceIndicationOfInterestHostItemSchema, type MarketplaceIndicationOfInterestResponse, MarketplaceIndicationOfInterestResponseSchema, type MarketplaceJobListingResponse, MarketplaceJobListingResponseSchema, MessageDeliveryStatus, type PostMarketplaceHiringThreadMessageRequest, PostMarketplaceHiringThreadMessageRequestSchema, type PostMarketplaceHiringThreadMessageResponse, PostMarketplaceHiringThreadMessageResponseSchema, type SubmitIndicationOfInterestRequest, SubmitIndicationOfInterestRequestSchema, type SubmitMarketplaceIndicationOfInterestRequest, SubmitMarketplaceIndicationOfInterestRequestSchema, type TransitionMarketplaceBookingRequest, TransitionMarketplaceBookingRequestSchema, type TransitionMarketplaceBookingResponse, TransitionMarketplaceBookingResponseSchema, type UpdateMarketplaceJobListingRequest, UpdateMarketplaceJobListingRequestSchema, VALID_BOOKING_TRANSITIONS, bookingTransitionKey, bookingTransitionRequiresReason, canActorPerformBookingTransition, getAllowedBookingTargetStates, getBookingTransitionActors, isValidBookingTransition };
662
+ export { BOOKING_TERMINAL_STATES, BOOKING_TRANSITION_ACTORS, BOOKING_TRANSITION_TARGETS_REQUIRING_REASON, BookingOrigin, BookingPaymentStatus, type BookingResponse, BookingResponseSchema, BookingState, BookingTransitionActor, type BookingTransitionKey, type CompleteMarketplaceBookingRequest, CompleteMarketplaceBookingRequestSchema, type CompleteMarketplaceBookingResponse, CompleteMarketplaceBookingResponseSchema, type ConfirmBookingRequest, ConfirmBookingRequestSchema, type CreateBookingRequest, CreateBookingRequestSchema, type CreateJobListingRequest, CreateJobListingRequestSchema, type CreateMarketplaceBookingRequest, CreateMarketplaceBookingRequestSchema, type CreateMarketplaceBookingResponse, CreateMarketplaceBookingResponseSchema, type CreateMarketplaceJobListingRequest, CreateMarketplaceJobListingRequestSchema, type GetMarketplaceHiringThreadResponse, GetMarketplaceHiringThreadResponseSchema, type IndicationOfInterestResponse, IndicationOfInterestResponseSchema, IoiState, type JobListingResponse, JobListingResponseSchema, JobListingState, JobLocation, type ListMarketplaceHiringThreadMessagesQuery, ListMarketplaceHiringThreadMessagesQuerySchema, type ListMarketplaceHiringThreadMessagesResponse, ListMarketplaceHiringThreadMessagesResponseSchema, type ListMarketplaceJobListingsQuery, ListMarketplaceJobListingsQuerySchema, type MarkMarketplaceHiringThreadReadRequest, MarkMarketplaceHiringThreadReadRequestSchema, type MarkMarketplaceHiringThreadReadResponse, MarkMarketplaceHiringThreadReadResponseSchema, type MarketplaceBookingResponse, MarketplaceBookingResponseSchema, type MarketplaceHiringMessage, MarketplaceHiringMessageAttachmentSchema, MarketplaceHiringMessageSchema, type MarketplaceHiringThread, MarketplaceHiringThreadSchema, type MarketplaceIndicationOfInterestHostItem, MarketplaceIndicationOfInterestHostItemSchema, type MarketplaceIndicationOfInterestResponse, MarketplaceIndicationOfInterestResponseSchema, type MarketplaceJobListingResponse, MarketplaceJobListingResponseSchema, MessageDeliveryStatus, type PostMarketplaceHiringThreadMessageRequest, PostMarketplaceHiringThreadMessageRequestSchema, type PostMarketplaceHiringThreadMessageResponse, PostMarketplaceHiringThreadMessageResponseSchema, type SubmitIndicationOfInterestRequest, SubmitIndicationOfInterestRequestSchema, type SubmitMarketplaceIndicationOfInterestRequest, SubmitMarketplaceIndicationOfInterestRequestSchema, type TransitionMarketplaceBookingRequest, TransitionMarketplaceBookingRequestSchema, type TransitionMarketplaceBookingResponse, TransitionMarketplaceBookingResponseSchema, type UpdateMarketplaceJobListingRequest, UpdateMarketplaceJobListingRequestSchema, VALID_BOOKING_TRANSITIONS, bookingTransitionKey, bookingTransitionRequiresReason, canActorPerformBookingTransition, getAllowedBookingTargetStates, getBookingTransitionActors, isValidBookingTransition };
@@ -201,12 +201,14 @@ declare const CreateMarketplaceBookingRequestSchema: z.ZodObject<{
201
201
  }>;
202
202
  eventId: z.ZodOptional<z.ZodUUID>;
203
203
  jobListingId: z.ZodOptional<z.ZodUUID>;
204
+ sourceIoiId: z.ZodOptional<z.ZodUUID>;
204
205
  agreedAmount: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
205
206
  scopeOfWork: z.ZodOptional<z.ZodString>;
206
207
  }, z.core.$strip>;
207
208
  declare const MarketplaceBookingResponseSchema: z.ZodObject<{
208
209
  id: z.ZodUUID;
209
210
  eventId: z.ZodNullable<z.ZodUUID>;
211
+ eventLinked: z.ZodBoolean;
210
212
  hostProfileId: z.ZodUUID;
211
213
  producerProfileId: z.ZodUUID;
212
214
  origin: z.ZodEnum<{
@@ -230,6 +232,8 @@ declare const MarketplaceBookingResponseSchema: z.ZodObject<{
230
232
  readonly IN_DISPUTE: "IN_DISPUTE";
231
233
  readonly CLOSED: "CLOSED";
232
234
  }>;
235
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
236
+ scopeOfWork: z.ZodNullable<z.ZodString>;
233
237
  createdAt: z.ZodString;
234
238
  updatedAt: z.ZodString;
235
239
  }, z.core.$strip>;
@@ -239,6 +243,7 @@ declare const CreateMarketplaceBookingResponseSchema: z.ZodObject<{
239
243
  booking: z.ZodObject<{
240
244
  id: z.ZodUUID;
241
245
  eventId: z.ZodNullable<z.ZodUUID>;
246
+ eventLinked: z.ZodBoolean;
242
247
  hostProfileId: z.ZodUUID;
243
248
  producerProfileId: z.ZodUUID;
244
249
  origin: z.ZodEnum<{
@@ -262,6 +267,8 @@ declare const CreateMarketplaceBookingResponseSchema: z.ZodObject<{
262
267
  readonly IN_DISPUTE: "IN_DISPUTE";
263
268
  readonly CLOSED: "CLOSED";
264
269
  }>;
270
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
271
+ scopeOfWork: z.ZodNullable<z.ZodString>;
265
272
  createdAt: z.ZodString;
266
273
  updatedAt: z.ZodString;
267
274
  }, z.core.$strip>;
@@ -288,6 +295,7 @@ declare const TransitionMarketplaceBookingResponseSchema: z.ZodObject<{
288
295
  booking: z.ZodObject<{
289
296
  id: z.ZodUUID;
290
297
  eventId: z.ZodNullable<z.ZodUUID>;
298
+ eventLinked: z.ZodBoolean;
291
299
  hostProfileId: z.ZodUUID;
292
300
  producerProfileId: z.ZodUUID;
293
301
  origin: z.ZodEnum<{
@@ -311,10 +319,54 @@ declare const TransitionMarketplaceBookingResponseSchema: z.ZodObject<{
311
319
  readonly IN_DISPUTE: "IN_DISPUTE";
312
320
  readonly CLOSED: "CLOSED";
313
321
  }>;
322
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
323
+ scopeOfWork: z.ZodNullable<z.ZodString>;
314
324
  createdAt: z.ZodString;
315
325
  updatedAt: z.ZodString;
316
326
  }, z.core.$strip>;
317
327
  }, z.core.$strip>;
328
+ /** `POST /marketplace/bookings/:id/complete` — dual-ack manual completion */
329
+ declare const CompleteMarketplaceBookingRequestSchema: z.ZodObject<{
330
+ notes: z.ZodOptional<z.ZodString>;
331
+ force: z.ZodOptional<z.ZodBoolean>;
332
+ }, z.core.$strip>;
333
+ declare const CompleteMarketplaceBookingResponseSchema: z.ZodObject<{
334
+ booking: z.ZodObject<{
335
+ id: z.ZodUUID;
336
+ eventId: z.ZodNullable<z.ZodUUID>;
337
+ eventLinked: z.ZodBoolean;
338
+ hostProfileId: z.ZodUUID;
339
+ producerProfileId: z.ZodUUID;
340
+ origin: z.ZodEnum<{
341
+ readonly EVENT_DIRECT: "EVENT_DIRECT";
342
+ readonly MARKETPLACE_DIRECT: "MARKETPLACE_DIRECT";
343
+ readonly JOB_LISTING: "JOB_LISTING";
344
+ }>;
345
+ jobListingId: z.ZodNullable<z.ZodUUID>;
346
+ sourceIoiId: z.ZodNullable<z.ZodUUID>;
347
+ state: z.ZodEnum<{
348
+ readonly REQUESTED: "REQUESTED";
349
+ readonly AWAITING_PRODUCER_RESPONSE: "AWAITING_PRODUCER_RESPONSE";
350
+ readonly IN_NEGOTIATION: "IN_NEGOTIATION";
351
+ readonly ACCEPTED: "ACCEPTED";
352
+ readonly REJECTED: "REJECTED";
353
+ readonly CANCELLED: "CANCELLED";
354
+ readonly AWAITING_ESCROW_FUNDING: "AWAITING_ESCROW_FUNDING";
355
+ readonly CONFIRMED: "CONFIRMED";
356
+ readonly IN_PROGRESS: "IN_PROGRESS";
357
+ readonly SERVICE_COMPLETED: "SERVICE_COMPLETED";
358
+ readonly IN_DISPUTE: "IN_DISPUTE";
359
+ readonly CLOSED: "CLOSED";
360
+ }>;
361
+ agreedAmount: z.ZodNullable<z.ZodNumber>;
362
+ scopeOfWork: z.ZodNullable<z.ZodString>;
363
+ createdAt: z.ZodString;
364
+ updatedAt: z.ZodString;
365
+ }, z.core.$strip>;
366
+ hostAcked: z.ZodBoolean;
367
+ producerAcked: z.ZodBoolean;
368
+ completed: z.ZodBoolean;
369
+ }, z.core.$strip>;
318
370
  /** `POST /marketplace/job-listings` */
319
371
  declare const CreateMarketplaceJobListingRequestSchema: z.ZodObject<{
320
372
  title: z.ZodString;
@@ -447,6 +499,8 @@ type CreateMarketplaceBookingResponse = z.infer<typeof CreateMarketplaceBookingR
447
499
  type MarketplaceIndicationOfInterestHostItem = z.infer<typeof MarketplaceIndicationOfInterestHostItemSchema>;
448
500
  type TransitionMarketplaceBookingRequest = z.infer<typeof TransitionMarketplaceBookingRequestSchema>;
449
501
  type TransitionMarketplaceBookingResponse = z.infer<typeof TransitionMarketplaceBookingResponseSchema>;
502
+ type CompleteMarketplaceBookingRequest = z.infer<typeof CompleteMarketplaceBookingRequestSchema>;
503
+ type CompleteMarketplaceBookingResponse = z.infer<typeof CompleteMarketplaceBookingResponseSchema>;
450
504
 
451
505
  declare const MessageDeliveryStatus: {
452
506
  readonly SENT: "SENT";
@@ -605,4 +659,4 @@ type PostMarketplaceHiringThreadMessageResponse = z.infer<typeof PostMarketplace
605
659
  type MarkMarketplaceHiringThreadReadRequest = z.infer<typeof MarkMarketplaceHiringThreadReadRequestSchema>;
606
660
  type MarkMarketplaceHiringThreadReadResponse = z.infer<typeof MarkMarketplaceHiringThreadReadResponseSchema>;
607
661
 
608
- export { BOOKING_TERMINAL_STATES, BOOKING_TRANSITION_ACTORS, BOOKING_TRANSITION_TARGETS_REQUIRING_REASON, BookingOrigin, BookingPaymentStatus, type BookingResponse, BookingResponseSchema, BookingState, BookingTransitionActor, type BookingTransitionKey, type ConfirmBookingRequest, ConfirmBookingRequestSchema, type CreateBookingRequest, CreateBookingRequestSchema, type CreateJobListingRequest, CreateJobListingRequestSchema, type CreateMarketplaceBookingRequest, CreateMarketplaceBookingRequestSchema, type CreateMarketplaceBookingResponse, CreateMarketplaceBookingResponseSchema, type CreateMarketplaceJobListingRequest, CreateMarketplaceJobListingRequestSchema, type GetMarketplaceHiringThreadResponse, GetMarketplaceHiringThreadResponseSchema, type IndicationOfInterestResponse, IndicationOfInterestResponseSchema, IoiState, type JobListingResponse, JobListingResponseSchema, JobListingState, JobLocation, type ListMarketplaceHiringThreadMessagesQuery, ListMarketplaceHiringThreadMessagesQuerySchema, type ListMarketplaceHiringThreadMessagesResponse, ListMarketplaceHiringThreadMessagesResponseSchema, type ListMarketplaceJobListingsQuery, ListMarketplaceJobListingsQuerySchema, type MarkMarketplaceHiringThreadReadRequest, MarkMarketplaceHiringThreadReadRequestSchema, type MarkMarketplaceHiringThreadReadResponse, MarkMarketplaceHiringThreadReadResponseSchema, type MarketplaceBookingResponse, MarketplaceBookingResponseSchema, type MarketplaceHiringMessage, MarketplaceHiringMessageAttachmentSchema, MarketplaceHiringMessageSchema, type MarketplaceHiringThread, MarketplaceHiringThreadSchema, type MarketplaceIndicationOfInterestHostItem, MarketplaceIndicationOfInterestHostItemSchema, type MarketplaceIndicationOfInterestResponse, MarketplaceIndicationOfInterestResponseSchema, type MarketplaceJobListingResponse, MarketplaceJobListingResponseSchema, MessageDeliveryStatus, type PostMarketplaceHiringThreadMessageRequest, PostMarketplaceHiringThreadMessageRequestSchema, type PostMarketplaceHiringThreadMessageResponse, PostMarketplaceHiringThreadMessageResponseSchema, type SubmitIndicationOfInterestRequest, SubmitIndicationOfInterestRequestSchema, type SubmitMarketplaceIndicationOfInterestRequest, SubmitMarketplaceIndicationOfInterestRequestSchema, type TransitionMarketplaceBookingRequest, TransitionMarketplaceBookingRequestSchema, type TransitionMarketplaceBookingResponse, TransitionMarketplaceBookingResponseSchema, type UpdateMarketplaceJobListingRequest, UpdateMarketplaceJobListingRequestSchema, VALID_BOOKING_TRANSITIONS, bookingTransitionKey, bookingTransitionRequiresReason, canActorPerformBookingTransition, getAllowedBookingTargetStates, getBookingTransitionActors, isValidBookingTransition };
662
+ export { BOOKING_TERMINAL_STATES, BOOKING_TRANSITION_ACTORS, BOOKING_TRANSITION_TARGETS_REQUIRING_REASON, BookingOrigin, BookingPaymentStatus, type BookingResponse, BookingResponseSchema, BookingState, BookingTransitionActor, type BookingTransitionKey, type CompleteMarketplaceBookingRequest, CompleteMarketplaceBookingRequestSchema, type CompleteMarketplaceBookingResponse, CompleteMarketplaceBookingResponseSchema, type ConfirmBookingRequest, ConfirmBookingRequestSchema, type CreateBookingRequest, CreateBookingRequestSchema, type CreateJobListingRequest, CreateJobListingRequestSchema, type CreateMarketplaceBookingRequest, CreateMarketplaceBookingRequestSchema, type CreateMarketplaceBookingResponse, CreateMarketplaceBookingResponseSchema, type CreateMarketplaceJobListingRequest, CreateMarketplaceJobListingRequestSchema, type GetMarketplaceHiringThreadResponse, GetMarketplaceHiringThreadResponseSchema, type IndicationOfInterestResponse, IndicationOfInterestResponseSchema, IoiState, type JobListingResponse, JobListingResponseSchema, JobListingState, JobLocation, type ListMarketplaceHiringThreadMessagesQuery, ListMarketplaceHiringThreadMessagesQuerySchema, type ListMarketplaceHiringThreadMessagesResponse, ListMarketplaceHiringThreadMessagesResponseSchema, type ListMarketplaceJobListingsQuery, ListMarketplaceJobListingsQuerySchema, type MarkMarketplaceHiringThreadReadRequest, MarkMarketplaceHiringThreadReadRequestSchema, type MarkMarketplaceHiringThreadReadResponse, MarkMarketplaceHiringThreadReadResponseSchema, type MarketplaceBookingResponse, MarketplaceBookingResponseSchema, type MarketplaceHiringMessage, MarketplaceHiringMessageAttachmentSchema, MarketplaceHiringMessageSchema, type MarketplaceHiringThread, MarketplaceHiringThreadSchema, type MarketplaceIndicationOfInterestHostItem, MarketplaceIndicationOfInterestHostItemSchema, type MarketplaceIndicationOfInterestResponse, MarketplaceIndicationOfInterestResponseSchema, type MarketplaceJobListingResponse, MarketplaceJobListingResponseSchema, MessageDeliveryStatus, type PostMarketplaceHiringThreadMessageRequest, PostMarketplaceHiringThreadMessageRequestSchema, type PostMarketplaceHiringThreadMessageResponse, PostMarketplaceHiringThreadMessageResponseSchema, type SubmitIndicationOfInterestRequest, SubmitIndicationOfInterestRequestSchema, type SubmitMarketplaceIndicationOfInterestRequest, SubmitMarketplaceIndicationOfInterestRequestSchema, type TransitionMarketplaceBookingRequest, TransitionMarketplaceBookingRequestSchema, type TransitionMarketplaceBookingResponse, TransitionMarketplaceBookingResponseSchema, type UpdateMarketplaceJobListingRequest, UpdateMarketplaceJobListingRequestSchema, VALID_BOOKING_TRANSITIONS, bookingTransitionKey, bookingTransitionRequiresReason, canActorPerformBookingTransition, getAllowedBookingTargetStates, getBookingTransitionActors, isValidBookingTransition };
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkMF4EHXLU_js=require('../chunk-MF4EHXLU.js');require('../chunk-QGEYDED6.js'),require('../chunk-L72M5DCH.js');Object.defineProperty(exports,"BOOKING_TERMINAL_STATES",{enumerable:true,get:function(){return chunkMF4EHXLU_js.g}});Object.defineProperty(exports,"BOOKING_TRANSITION_ACTORS",{enumerable:true,get:function(){return chunkMF4EHXLU_js.i}});Object.defineProperty(exports,"BOOKING_TRANSITION_TARGETS_REQUIRING_REASON",{enumerable:true,get:function(){return chunkMF4EHXLU_js.j}});Object.defineProperty(exports,"BookingOrigin",{enumerable:true,get:function(){return chunkMF4EHXLU_js.a}});Object.defineProperty(exports,"BookingPaymentStatus",{enumerable:true,get:function(){return chunkMF4EHXLU_js.e}});Object.defineProperty(exports,"BookingResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.s}});Object.defineProperty(exports,"BookingState",{enumerable:true,get:function(){return chunkMF4EHXLU_js.b}});Object.defineProperty(exports,"BookingTransitionActor",{enumerable:true,get:function(){return chunkMF4EHXLU_js.f}});Object.defineProperty(exports,"ConfirmBookingRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.r}});Object.defineProperty(exports,"CreateBookingRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.q}});Object.defineProperty(exports,"CreateJobListingRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.t}});Object.defineProperty(exports,"CreateMarketplaceBookingRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.y}});Object.defineProperty(exports,"CreateMarketplaceBookingResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.A}});Object.defineProperty(exports,"CreateMarketplaceJobListingRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.D}});Object.defineProperty(exports,"GetMarketplaceHiringThreadResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.Q}});Object.defineProperty(exports,"IndicationOfInterestResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.w}});Object.defineProperty(exports,"IoiState",{enumerable:true,get:function(){return chunkMF4EHXLU_js.d}});Object.defineProperty(exports,"JobListingResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.u}});Object.defineProperty(exports,"JobListingState",{enumerable:true,get:function(){return chunkMF4EHXLU_js.c}});Object.defineProperty(exports,"JobLocation",{enumerable:true,get:function(){return chunkMF4EHXLU_js.x}});Object.defineProperty(exports,"ListMarketplaceHiringThreadMessagesQuerySchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.O}});Object.defineProperty(exports,"ListMarketplaceHiringThreadMessagesResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.P}});Object.defineProperty(exports,"ListMarketplaceJobListingsQuerySchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.F}});Object.defineProperty(exports,"MarkMarketplaceHiringThreadReadRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.T}});Object.defineProperty(exports,"MarkMarketplaceHiringThreadReadResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.U}});Object.defineProperty(exports,"MarketplaceBookingResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.z}});Object.defineProperty(exports,"MarketplaceHiringMessageAttachmentSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.M}});Object.defineProperty(exports,"MarketplaceHiringMessageSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.N}});Object.defineProperty(exports,"MarketplaceHiringThreadSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.L}});Object.defineProperty(exports,"MarketplaceIndicationOfInterestHostItemSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.J}});Object.defineProperty(exports,"MarketplaceIndicationOfInterestResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.I}});Object.defineProperty(exports,"MarketplaceJobListingResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.G}});Object.defineProperty(exports,"MessageDeliveryStatus",{enumerable:true,get:function(){return chunkMF4EHXLU_js.K}});Object.defineProperty(exports,"PostMarketplaceHiringThreadMessageRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.R}});Object.defineProperty(exports,"PostMarketplaceHiringThreadMessageResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.S}});Object.defineProperty(exports,"SubmitIndicationOfInterestRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.v}});Object.defineProperty(exports,"SubmitMarketplaceIndicationOfInterestRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.H}});Object.defineProperty(exports,"TransitionMarketplaceBookingRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.B}});Object.defineProperty(exports,"TransitionMarketplaceBookingResponseSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.C}});Object.defineProperty(exports,"UpdateMarketplaceJobListingRequestSchema",{enumerable:true,get:function(){return chunkMF4EHXLU_js.E}});Object.defineProperty(exports,"VALID_BOOKING_TRANSITIONS",{enumerable:true,get:function(){return chunkMF4EHXLU_js.h}});Object.defineProperty(exports,"bookingTransitionKey",{enumerable:true,get:function(){return chunkMF4EHXLU_js.k}});Object.defineProperty(exports,"bookingTransitionRequiresReason",{enumerable:true,get:function(){return chunkMF4EHXLU_js.p}});Object.defineProperty(exports,"canActorPerformBookingTransition",{enumerable:true,get:function(){return chunkMF4EHXLU_js.o}});Object.defineProperty(exports,"getAllowedBookingTargetStates",{enumerable:true,get:function(){return chunkMF4EHXLU_js.l}});Object.defineProperty(exports,"getBookingTransitionActors",{enumerable:true,get:function(){return chunkMF4EHXLU_js.n}});Object.defineProperty(exports,"isValidBookingTransition",{enumerable:true,get:function(){return chunkMF4EHXLU_js.m}});//# sourceMappingURL=index.js.map
1
+ 'use strict';var chunkQNAYXLYH_js=require('../chunk-QNAYXLYH.js');require('../chunk-QGEYDED6.js'),require('../chunk-L72M5DCH.js');Object.defineProperty(exports,"BOOKING_TERMINAL_STATES",{enumerable:true,get:function(){return chunkQNAYXLYH_js.g}});Object.defineProperty(exports,"BOOKING_TRANSITION_ACTORS",{enumerable:true,get:function(){return chunkQNAYXLYH_js.i}});Object.defineProperty(exports,"BOOKING_TRANSITION_TARGETS_REQUIRING_REASON",{enumerable:true,get:function(){return chunkQNAYXLYH_js.j}});Object.defineProperty(exports,"BookingOrigin",{enumerable:true,get:function(){return chunkQNAYXLYH_js.a}});Object.defineProperty(exports,"BookingPaymentStatus",{enumerable:true,get:function(){return chunkQNAYXLYH_js.e}});Object.defineProperty(exports,"BookingResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.s}});Object.defineProperty(exports,"BookingState",{enumerable:true,get:function(){return chunkQNAYXLYH_js.b}});Object.defineProperty(exports,"BookingTransitionActor",{enumerable:true,get:function(){return chunkQNAYXLYH_js.f}});Object.defineProperty(exports,"CompleteMarketplaceBookingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.D}});Object.defineProperty(exports,"CompleteMarketplaceBookingResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.E}});Object.defineProperty(exports,"ConfirmBookingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.r}});Object.defineProperty(exports,"CreateBookingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.q}});Object.defineProperty(exports,"CreateJobListingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.t}});Object.defineProperty(exports,"CreateMarketplaceBookingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.y}});Object.defineProperty(exports,"CreateMarketplaceBookingResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.A}});Object.defineProperty(exports,"CreateMarketplaceJobListingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.F}});Object.defineProperty(exports,"GetMarketplaceHiringThreadResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.S}});Object.defineProperty(exports,"IndicationOfInterestResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.w}});Object.defineProperty(exports,"IoiState",{enumerable:true,get:function(){return chunkQNAYXLYH_js.d}});Object.defineProperty(exports,"JobListingResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.u}});Object.defineProperty(exports,"JobListingState",{enumerable:true,get:function(){return chunkQNAYXLYH_js.c}});Object.defineProperty(exports,"JobLocation",{enumerable:true,get:function(){return chunkQNAYXLYH_js.x}});Object.defineProperty(exports,"ListMarketplaceHiringThreadMessagesQuerySchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.Q}});Object.defineProperty(exports,"ListMarketplaceHiringThreadMessagesResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.R}});Object.defineProperty(exports,"ListMarketplaceJobListingsQuerySchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.H}});Object.defineProperty(exports,"MarkMarketplaceHiringThreadReadRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.V}});Object.defineProperty(exports,"MarkMarketplaceHiringThreadReadResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.W}});Object.defineProperty(exports,"MarketplaceBookingResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.z}});Object.defineProperty(exports,"MarketplaceHiringMessageAttachmentSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.O}});Object.defineProperty(exports,"MarketplaceHiringMessageSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.P}});Object.defineProperty(exports,"MarketplaceHiringThreadSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.N}});Object.defineProperty(exports,"MarketplaceIndicationOfInterestHostItemSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.L}});Object.defineProperty(exports,"MarketplaceIndicationOfInterestResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.K}});Object.defineProperty(exports,"MarketplaceJobListingResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.I}});Object.defineProperty(exports,"MessageDeliveryStatus",{enumerable:true,get:function(){return chunkQNAYXLYH_js.M}});Object.defineProperty(exports,"PostMarketplaceHiringThreadMessageRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.T}});Object.defineProperty(exports,"PostMarketplaceHiringThreadMessageResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.U}});Object.defineProperty(exports,"SubmitIndicationOfInterestRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.v}});Object.defineProperty(exports,"SubmitMarketplaceIndicationOfInterestRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.J}});Object.defineProperty(exports,"TransitionMarketplaceBookingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.B}});Object.defineProperty(exports,"TransitionMarketplaceBookingResponseSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.C}});Object.defineProperty(exports,"UpdateMarketplaceJobListingRequestSchema",{enumerable:true,get:function(){return chunkQNAYXLYH_js.G}});Object.defineProperty(exports,"VALID_BOOKING_TRANSITIONS",{enumerable:true,get:function(){return chunkQNAYXLYH_js.h}});Object.defineProperty(exports,"bookingTransitionKey",{enumerable:true,get:function(){return chunkQNAYXLYH_js.k}});Object.defineProperty(exports,"bookingTransitionRequiresReason",{enumerable:true,get:function(){return chunkQNAYXLYH_js.p}});Object.defineProperty(exports,"canActorPerformBookingTransition",{enumerable:true,get:function(){return chunkQNAYXLYH_js.o}});Object.defineProperty(exports,"getAllowedBookingTargetStates",{enumerable:true,get:function(){return chunkQNAYXLYH_js.l}});Object.defineProperty(exports,"getBookingTransitionActors",{enumerable:true,get:function(){return chunkQNAYXLYH_js.n}});Object.defineProperty(exports,"isValidBookingTransition",{enumerable:true,get:function(){return chunkQNAYXLYH_js.m}});//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- export{g as BOOKING_TERMINAL_STATES,i as BOOKING_TRANSITION_ACTORS,j as BOOKING_TRANSITION_TARGETS_REQUIRING_REASON,a as BookingOrigin,e as BookingPaymentStatus,s as BookingResponseSchema,b as BookingState,f as BookingTransitionActor,r as ConfirmBookingRequestSchema,q as CreateBookingRequestSchema,t as CreateJobListingRequestSchema,y as CreateMarketplaceBookingRequestSchema,A as CreateMarketplaceBookingResponseSchema,D as CreateMarketplaceJobListingRequestSchema,Q as GetMarketplaceHiringThreadResponseSchema,w as IndicationOfInterestResponseSchema,d as IoiState,u as JobListingResponseSchema,c as JobListingState,x as JobLocation,O as ListMarketplaceHiringThreadMessagesQuerySchema,P as ListMarketplaceHiringThreadMessagesResponseSchema,F as ListMarketplaceJobListingsQuerySchema,T as MarkMarketplaceHiringThreadReadRequestSchema,U as MarkMarketplaceHiringThreadReadResponseSchema,z as MarketplaceBookingResponseSchema,M as MarketplaceHiringMessageAttachmentSchema,N as MarketplaceHiringMessageSchema,L as MarketplaceHiringThreadSchema,J as MarketplaceIndicationOfInterestHostItemSchema,I as MarketplaceIndicationOfInterestResponseSchema,G as MarketplaceJobListingResponseSchema,K as MessageDeliveryStatus,R as PostMarketplaceHiringThreadMessageRequestSchema,S as PostMarketplaceHiringThreadMessageResponseSchema,v as SubmitIndicationOfInterestRequestSchema,H as SubmitMarketplaceIndicationOfInterestRequestSchema,B as TransitionMarketplaceBookingRequestSchema,C as TransitionMarketplaceBookingResponseSchema,E as UpdateMarketplaceJobListingRequestSchema,h as VALID_BOOKING_TRANSITIONS,k as bookingTransitionKey,p as bookingTransitionRequiresReason,o as canActorPerformBookingTransition,l as getAllowedBookingTargetStates,n as getBookingTransitionActors,m as isValidBookingTransition}from'../chunk-IEPZ7KSZ.mjs';import'../chunk-X7OLLQRF.mjs';import'../chunk-GAZT5E62.mjs';//# sourceMappingURL=index.mjs.map
1
+ export{g as BOOKING_TERMINAL_STATES,i as BOOKING_TRANSITION_ACTORS,j as BOOKING_TRANSITION_TARGETS_REQUIRING_REASON,a as BookingOrigin,e as BookingPaymentStatus,s as BookingResponseSchema,b as BookingState,f as BookingTransitionActor,D as CompleteMarketplaceBookingRequestSchema,E as CompleteMarketplaceBookingResponseSchema,r as ConfirmBookingRequestSchema,q as CreateBookingRequestSchema,t as CreateJobListingRequestSchema,y as CreateMarketplaceBookingRequestSchema,A as CreateMarketplaceBookingResponseSchema,F as CreateMarketplaceJobListingRequestSchema,S as GetMarketplaceHiringThreadResponseSchema,w as IndicationOfInterestResponseSchema,d as IoiState,u as JobListingResponseSchema,c as JobListingState,x as JobLocation,Q as ListMarketplaceHiringThreadMessagesQuerySchema,R as ListMarketplaceHiringThreadMessagesResponseSchema,H as ListMarketplaceJobListingsQuerySchema,V as MarkMarketplaceHiringThreadReadRequestSchema,W as MarkMarketplaceHiringThreadReadResponseSchema,z as MarketplaceBookingResponseSchema,O as MarketplaceHiringMessageAttachmentSchema,P as MarketplaceHiringMessageSchema,N as MarketplaceHiringThreadSchema,L as MarketplaceIndicationOfInterestHostItemSchema,K as MarketplaceIndicationOfInterestResponseSchema,I as MarketplaceJobListingResponseSchema,M as MessageDeliveryStatus,T as PostMarketplaceHiringThreadMessageRequestSchema,U as PostMarketplaceHiringThreadMessageResponseSchema,v as SubmitIndicationOfInterestRequestSchema,J as SubmitMarketplaceIndicationOfInterestRequestSchema,B as TransitionMarketplaceBookingRequestSchema,C as TransitionMarketplaceBookingResponseSchema,G as UpdateMarketplaceJobListingRequestSchema,h as VALID_BOOKING_TRANSITIONS,k as bookingTransitionKey,p as bookingTransitionRequiresReason,o as canActorPerformBookingTransition,l as getAllowedBookingTargetStates,n as getBookingTransitionActors,m as isValidBookingTransition}from'../chunk-DFUVVL4N.mjs';import'../chunk-X7OLLQRF.mjs';import'../chunk-GAZT5E62.mjs';//# sourceMappingURL=index.mjs.map
2
2
  //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,2 @@
1
+ import {g as g$2,n,h as h$1,c,b as b$1,f,e}from'./chunk-PLCR4DRE.mjs';import {g as g$1}from'./chunk-MME6Q6BF.mjs';import {z}from'zod';var p=z.object({id:z.uuid(),userId:z.uuid(),businessName:z.string(),totalEvents:z.number(),totalSpent:z.number(),averageRating:z.number(),defaultCurrency:z.string(),description:z.string().optional(),category:z.array(z.enum(g$1)),logoUrl:z.url().optional(),businessRegNumber:z.string().optional(),taxId:z.string().optional(),settlementBankCode:z.string().optional(),settlementAccountNumber:z.string().optional(),settlementAccountName:z.string().optional(),paystackSubaccountCode:z.string().optional(),createdAt:z.iso.datetime()}),u=z.object({id:z.uuid(),userId:z.uuid(),companyName:z.string(),bio:z.string(),yearsExperience:z.number().optional(),experienceLevel:z.enum(h$1),equipmentManifest:z.array(z.record(z.string(),z.any())),serviceCategories:z.array(n),verificationStatus:z.enum(g$2),averageRating:z.number().positive().multipleOf(.01),totalReviews:z.number(),completionRate:z.number(),isAvailable:z.boolean(),createdAt:z.iso.datetime()}),h=z.object({id:z.uuid(),email:z.email().toLowerCase(),emailVerified:z.boolean(),emailVerifiedAt:z.iso.datetime().optional(),phoneNumber:z.string().optional(),firstName:z.string().optional(),lastName:z.string().optional(),displayName:z.string().optional(),avatarUrl:z.url().optional(),role:z.number().min(1).max(15),accountStatus:z.enum(b$1),kycStatus:z.enum(c),hostProfile:p.optional(),producerProfile:u.optional(),createdAt:z.iso.datetime(),updatedAt:z.iso.datetime()}),v=z.object({firstName:z.string().optional(),lastName:z.string().optional(),displayName:z.string().optional(),avatarUrl:z.url().optional(),phoneNumber:z.string().optional(),eventCategory:z.array(z.enum(g$1)).optional()}),N=z.object({businessName:z.string(),description:z.string().optional(),logoUrl:z.string().optional(),category:z.array(z.enum(g$1)).min(1),pin:z.string().length(5)}),C=z.object({companyName:z.string(),bio:z.string(),logoUrl:z.string().optional(),serviceCategoryIds:z.array(z.uuid()).optional(),serviceCategoryCodes:z.array(z.string().min(1).max(64)).optional(),yearsExperience:z.number(),experienceLevel:z.enum(h$1),minFee:z.number(),maxFee:z.number(),pin:z.string().length(5),isAvailable:z.boolean()}),d=new Set(["admin","support","livdot","host","producer","system","null","undefined","me","settings","viewer","auth","events","streaming","producers","marketplace","users"]),g=z.string().trim().toLowerCase().min(3,"Display name must be at least 3 characters").max(30,"Display name must be at most 30 characters").regex(/^[a-z0-9_]+$/,"Display name may only contain lowercase letters, digits, and underscores").refine(t=>!d.has(t),{message:"This display name is reserved"}),R=z.object({displayName:g}).strict(),P=z.object({preferredCurrency:z.string().trim().toUpperCase().length(3).regex(/^[A-Z]{3}$/)}).strict(),b=z.object({category:z.enum(f),enabled:z.boolean()}),j=z.object({preferences:z.array(b).min(1).max(10).refine(t=>new Set(t.map(l=>l.category)).size===t.length,{message:"Duplicate category in preferences"})}).strict(),A=z.object({category:z.enum(e),message:z.string().trim().min(10).max(2e3)}).strict(),U=z.object({id:z.uuid(),email:z.email(),emailVerified:z.boolean(),displayName:z.string().nullable(),avatarUrl:z.url().nullable(),roles:z.number().int(),preferredCurrency:z.string(),notificationsEnabledCount:z.number().int()}),w=z.object({preferences:z.record(z.enum(f),z.boolean())}),E=z.object({id:z.uuid()});export{p as a,u as b,h as c,v as d,N as e,C as f,d as g,g as h,R as i,P as j,b as k,j as l,A as m,U as n,w as o,E as p};//# sourceMappingURL=chunk-C2UM2XK7.mjs.map
2
+ //# sourceMappingURL=chunk-C2UM2XK7.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/user/user.schemas.ts"],"names":["HostProfileResponseSchema","z","EventCategory","ProducerProfileResponseSchema","ProducerExperienceLevel","PublicProducerListCategorySchema","ProducerVerificationStatus","UserResponseSchema","AccountStatus","KycStatus","UpdateUserRequestSchema","CreateHostProfileRequestSchema","CreateProducerProfileRequestSchema","RESERVED_DISPLAY_NAMES","DisplayNameSchema","v","UpdateViewerProfileRequestSchema","UpdateViewerCurrencyRequestSchema","NotificationPreferenceItemSchema","NotificationCategory","UpdateNotificationPreferencesRequestSchema","items","i","SendFeedbackRequestSchema","FeedbackCategory","ViewerMeResponseSchema","NotificationPreferencesResponseSchema","SendFeedbackResponseSchema"],"mappings":"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","file":"chunk-C2UM2XK7.mjs","sourcesContent":["import { z } from 'zod';\nimport {\n AccountStatus,\n FeedbackCategory,\n KycStatus,\n NotificationCategory,\n ProducerExperienceLevel,\n ProducerVerificationStatus,\n} from './user.enums';\nimport { EventCategory } from '../event';\nimport { PublicProducerListCategorySchema } from '../marketplace';\n\nexport const HostProfileResponseSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n businessName: z.string(),\n totalEvents: z.number(),\n totalSpent: z.number(),\n averageRating: z.number(),\n defaultCurrency: z.string(),\n description: z.string().optional(),\n category: z.array(z.enum(EventCategory)),\n logoUrl: z.url().optional(),\n businessRegNumber: z.string().optional(),\n taxId: z.string().optional(),\n settlementBankCode: z.string().optional(),\n settlementAccountNumber: z.string().optional(),\n settlementAccountName: z.string().optional(),\n paystackSubaccountCode: z.string().optional(),\n createdAt: z.iso.datetime(),\n});\n\nexport const ProducerProfileResponseSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n yearsExperience: z.number().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n equipmentManifest: z.array(z.record(z.string(), z.any())),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n verificationStatus: z.enum(ProducerVerificationStatus),\n averageRating: z.number().positive().multipleOf(0.01),\n totalReviews: z.number(),\n completionRate: z.number(),\n isAvailable: z.boolean(),\n createdAt: z.iso.datetime(),\n});\n\nexport const UserResponseSchema = z.object({\n id: z.uuid(),\n email: z.email().toLowerCase(),\n emailVerified: z.boolean(),\n emailVerifiedAt: z.iso.datetime().optional(),\n phoneNumber: z.string().optional(),\n firstName: z.string().optional(),\n lastName: z.string().optional(),\n displayName: z.string().optional(),\n avatarUrl: z.url().optional(),\n role: z.number().min(1).max(15),\n accountStatus: z.enum(AccountStatus),\n kycStatus: z.enum(KycStatus),\n hostProfile: HostProfileResponseSchema.optional(),\n producerProfile: ProducerProfileResponseSchema.optional(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const UpdateUserRequestSchema = z.object({\n firstName: z.string().optional(),\n lastName: z.string().optional(),\n displayName: z.string().optional(),\n avatarUrl: z.url().optional(),\n phoneNumber: z.string().optional(),\n eventCategory: z.array(z.enum(EventCategory)).optional(),\n});\n\nexport const CreateHostProfileRequestSchema = z.object({\n businessName: z.string(),\n description: z.string().optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1),\n pin: z.string().length(5),\n});\n\nexport const CreateProducerProfileRequestSchema = z.object({\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.string().optional(),\n serviceCategoryIds: z.array(z.uuid()).optional(),\n serviceCategoryCodes: z.array(z.string().min(1).max(64)).optional(),\n yearsExperience: z.number(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n minFee: z.number(),\n maxFee: z.number(),\n pin: z.string().length(5),\n isAvailable: z.boolean(),\n});\n\nexport const RESERVED_DISPLAY_NAMES: ReadonlySet<string> = new Set([\n 'admin',\n 'support',\n 'livdot',\n 'host',\n 'producer',\n 'system',\n 'null',\n 'undefined',\n 'me',\n 'settings',\n 'viewer',\n 'auth',\n 'events',\n 'streaming',\n 'producers',\n 'marketplace',\n 'users',\n]);\n\n/** Handle constraints — see viewer-settings.md §3.1. */\nexport const DisplayNameSchema = z\n .string()\n .trim()\n .toLowerCase()\n .min(3, 'Display name must be at least 3 characters')\n .max(30, 'Display name must be at most 30 characters')\n .regex(/^[a-z0-9_]+$/, 'Display name may only contain lowercase letters, digits, and underscores')\n .refine((v) => !RESERVED_DISPLAY_NAMES.has(v), {\n message: 'This display name is reserved',\n });\n\nexport const UpdateViewerProfileRequestSchema = z\n .object({\n displayName: DisplayNameSchema,\n })\n .strict();\n\nexport const UpdateViewerCurrencyRequestSchema = z\n .object({\n preferredCurrency: z\n .string()\n .trim()\n .toUpperCase()\n .length(3)\n .regex(/^[A-Z]{3}$/),\n })\n .strict();\n\nexport const NotificationPreferenceItemSchema = z.object({\n category: z.enum(NotificationCategory),\n enabled: z.boolean(),\n});\n\nexport const UpdateNotificationPreferencesRequestSchema = z\n .object({\n preferences: z\n .array(NotificationPreferenceItemSchema)\n .min(1)\n .max(10)\n .refine((items) => new Set(items.map((i) => i.category)).size === items.length, {\n message: 'Duplicate category in preferences',\n }),\n })\n .strict();\n\nexport const SendFeedbackRequestSchema = z\n .object({\n category: z.enum(FeedbackCategory),\n message: z.string().trim().min(10).max(2000),\n })\n .strict();\n\nexport const ViewerMeResponseSchema = z.object({\n id: z.uuid(),\n email: z.email(),\n emailVerified: z.boolean(),\n displayName: z.string().nullable(),\n avatarUrl: z.url().nullable(),\n roles: z.number().int(),\n preferredCurrency: z.string(),\n notificationsEnabledCount: z.number().int(),\n});\n\nexport const NotificationPreferencesResponseSchema = z.object({\n preferences: z.record(z.enum(NotificationCategory), z.boolean()),\n});\n\nexport const SendFeedbackResponseSchema = z.object({\n id: z.uuid(),\n});\n"]}
@@ -1,2 +1,2 @@
1
- import {a as a$1}from'./chunk-EQVYSKSG.mjs';import {z}from'zod';var r={GOOGLE:"GOOGLE",APPLE:"APPLE",FACEBOOK:"FACEBOOK",TWITTER:"TWITTER"},s={EMAIL_MATCH:"email_match",EMAIL_MISS:"email_missing"},p={SIGNED_IN:"signed_in",SIGNED_UP:"signed_up",LINK_REQUIRED:"link_required"};var i=new RegExp("^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~]).{8,}$"),a="Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.",t=z.string().min(8,a).regex(i,a),R=z.object({email:z.email().toLowerCase(),password:t,firstName:z.string(),lastName:z.string(),role:z.enum(a$1).optional()}),h=z.object({username:z.string(),reference:z.string(),role:z.enum(a$1).optional()}),g=z.object({email:z.email().toLowerCase(),password:t,role:z.enum(a$1).optional()}),x=z.object({otp:z.string().length(4),reference:z.string(),type:z.enum(["registration","passwordReset"])}),f=z.object({reference:z.string(),type:z.enum(["registration","passwordReset"])}),S=z.object({isValid:z.boolean(),message:z.string(),reference:z.string().optional()}),b=z.object({AccessToken:z.string(),RefreshToken:z.string(),IdToken:z.string(),ExpiresIn:z.number(),TokenType:z.literal("Bearer")}),k=z.object({refreshToken:z.string()}),j=z.object({refreshToken:z.string(),accessToken:z.string()}),E=z.object({email:z.email().toLowerCase()}),O=z.object({destination:z.string(),deliveryMedium:z.string(),attributeName:z.string()}),w=z.object({token:z.string(),newPassword:t}),y=z.object({currentPassword:t,newPassword:t}),L=z.object({redirectTo:z.string().min(1).max(2048).optional()}),P=z.object({authorizeUrl:z.url()}),q=z.object({handoff:z.string().min(16).max(128)}),T=z.object({idToken:z.string().min(1).max(8192),nonce:z.string().min(8).max(256),authorizationCode:z.string().min(1).max(1024).optional(),user:z.object({name:z.object({firstName:z.string().max(128).nullable().optional(),lastName:z.string().max(128).nullable().optional()}).optional()}).optional()}),I=z.object({linkHandoff:z.string().min(16).max(128),password:t.optional(),otpReference:z.string().min(1).max(128).optional(),otp:z.string().length(4).optional()}).refine(n=>n.password?true:n.otpReference&&n.otp,"either `password` OR (`otpReference` AND `otp`) must be provided"),A=z.object({linkHandoff:z.string().min(16).max(128)}),_=z.object({kind:z.literal("link_required"),reason:z.enum(s),linkHandoff:z.string(),maskedEmail:z.string(),hasPassword:z.boolean(),provider:z.enum(r)}),v=z.object({otpReference:z.string()}),c=z.object({name:z.enum(r),enabled:z.boolean(),canSignUp:z.boolean()}),C=z.object({providers:z.array(c)}),N=z.object({linkHandoff:z.string().min(16).max(128),email:z.email().max(320)}),G=z.object({password:t}),D=z.object({reauthToken:z.string(),expiresAt:z.iso.datetime()});export{C as A,N as B,G as C,D,r as a,s as b,p as c,t as d,R as e,h as f,g,x as h,f as i,S as j,b as k,k as l,j as m,E as n,O as o,w as p,y as q,L as r,P as s,q as t,T as u,I as v,A as w,_ as x,v as y,c as z};//# sourceMappingURL=chunk-4WFVAXHI.mjs.map
2
- //# sourceMappingURL=chunk-4WFVAXHI.mjs.map
1
+ import {a as a$1}from'./chunk-PLCR4DRE.mjs';import {z}from'zod';var r={GOOGLE:"GOOGLE",APPLE:"APPLE",FACEBOOK:"FACEBOOK",TWITTER:"TWITTER"},s={EMAIL_MATCH:"email_match",EMAIL_MISS:"email_missing"},p={SIGNED_IN:"signed_in",SIGNED_UP:"signed_up",LINK_REQUIRED:"link_required"};var i=new RegExp("^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~]).{8,}$"),a="Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.",t=z.string().min(8,a).regex(i,a),R=z.object({email:z.email().toLowerCase(),password:t,firstName:z.string(),lastName:z.string(),role:z.enum(a$1).optional()}),h=z.object({username:z.string(),reference:z.string(),role:z.enum(a$1).optional()}),g=z.object({email:z.email().toLowerCase(),password:t,role:z.enum(a$1).optional()}),x=z.object({otp:z.string().length(4),reference:z.string(),type:z.enum(["registration","passwordReset"])}),f=z.object({reference:z.string(),type:z.enum(["registration","passwordReset"])}),S=z.object({isValid:z.boolean(),message:z.string(),reference:z.string().optional()}),b=z.object({AccessToken:z.string(),RefreshToken:z.string(),IdToken:z.string(),ExpiresIn:z.number(),TokenType:z.literal("Bearer")}),k=z.object({refreshToken:z.string()}),j=z.object({refreshToken:z.string(),accessToken:z.string()}),E=z.object({email:z.email().toLowerCase()}),O=z.object({destination:z.string(),deliveryMedium:z.string(),attributeName:z.string()}),w=z.object({token:z.string(),newPassword:t}),y=z.object({currentPassword:t,newPassword:t}),L=z.object({redirectTo:z.string().min(1).max(2048).optional()}),P=z.object({authorizeUrl:z.url()}),q=z.object({handoff:z.string().min(16).max(128)}),T=z.object({idToken:z.string().min(1).max(8192),nonce:z.string().min(8).max(256),authorizationCode:z.string().min(1).max(1024).optional(),user:z.object({name:z.object({firstName:z.string().max(128).nullable().optional(),lastName:z.string().max(128).nullable().optional()}).optional()}).optional()}),I=z.object({linkHandoff:z.string().min(16).max(128),password:t.optional(),otpReference:z.string().min(1).max(128).optional(),otp:z.string().length(4).optional()}).refine(n=>n.password?true:n.otpReference&&n.otp,"either `password` OR (`otpReference` AND `otp`) must be provided"),A=z.object({linkHandoff:z.string().min(16).max(128)}),_=z.object({kind:z.literal("link_required"),reason:z.enum(s),linkHandoff:z.string(),maskedEmail:z.string(),hasPassword:z.boolean(),provider:z.enum(r)}),v=z.object({otpReference:z.string()}),c=z.object({name:z.enum(r),enabled:z.boolean(),canSignUp:z.boolean()}),C=z.object({providers:z.array(c)}),N=z.object({linkHandoff:z.string().min(16).max(128),email:z.email().max(320)}),G=z.object({password:t}),D=z.object({reauthToken:z.string(),expiresAt:z.iso.datetime()});export{C as A,N as B,G as C,D,r as a,s as b,p as c,t as d,R as e,h as f,g,x as h,f as i,S as j,b as k,k as l,j as m,E as n,O as o,w as p,y as q,L as r,P as s,q as t,T as u,I as v,A as w,_ as x,v as y,c as z};//# sourceMappingURL=chunk-CMEKX44M.mjs.map
2
+ //# sourceMappingURL=chunk-CMEKX44M.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/auth/auth.enums.ts","../src/auth/auth.schemas.ts"],"names":["IdentityProvider","LinkRequiredReasonEnum","OauthResolveKind","PASSWORD_REGEX","PASSWORD_MESSAGE","PasswordSchema","z","RegisterRequestSchema","UserRole","RegisterResponseSchema","LoginRequestSchema","VerifyOtpRequestSchema","ResendOtpRequestSchema","VerifyOtpResponseSchema","LoginResponseSchema","RefreshTokenRequestSchema","LogoutRequestSchema","ForgotPasswordRequestSchema","ForgotPasswordResponseSchema","ResetPasswordRequestSchema","ChangePasswordRequestSchema","OauthStartQuerySchema","OauthStartResponseSchema","OauthExchangeRequestSchema","OauthDirectTokenRequestSchema","OauthLinkCompleteRequestSchema","v","OauthLinkSendOtpRequestSchema","LinkRequiredResponseSchema","OauthLinkSendOtpResponseSchema","ProvidersListItemSchema","ProvidersListResponseSchema","OauthLinkCompleteEmailRequestSchema","ConfirmPasswordSchema","ReauthTokenResponseSchema"],"mappings":"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","file":"chunk-4WFVAXHI.mjs","sourcesContent":["export const IdentityProvider = {\n GOOGLE: 'GOOGLE',\n APPLE: 'APPLE',\n FACEBOOK: 'FACEBOOK',\n TWITTER: 'TWITTER',\n} as const;\nexport type IdentityProvider = (typeof IdentityProvider)[keyof typeof IdentityProvider];\nexport const LinkRequiredReasonEnum = {\n EMAIL_MATCH: 'email_match',\n EMAIL_MISS: 'email_missing',\n} as const;\nexport type LinkRequiredReasonEnum =\n (typeof LinkRequiredReasonEnum)[keyof typeof LinkRequiredReasonEnum];\nexport const OauthResolveKind = {\n SIGNED_IN: 'signed_in',\n SIGNED_UP: 'signed_up',\n LINK_REQUIRED: 'link_required',\n} as const;\nexport type OauthResolveKind = (typeof OauthResolveKind)[keyof typeof OauthResolveKind];\n","import { z } from 'zod';\nimport { UserRole } from '../user';\nimport { IdentityProvider, LinkRequiredReasonEnum } from './auth.enums';\n\nconst PASSWORD_REGEX = new RegExp(\n '^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&\\'()*+,-./:;<=>?@[\\\\]^_`{|}~]).{8,}$',\n);\n\nconst PASSWORD_MESSAGE =\n 'Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.';\n\nexport const PasswordSchema = z\n .string()\n .min(8, PASSWORD_MESSAGE)\n .regex(PASSWORD_REGEX, PASSWORD_MESSAGE);\n\n/**\n * Zod schema for registration request.\n */\nexport const RegisterRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n firstName: z.string(),\n lastName: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for registration response.\n */\nexport const RegisterResponseSchema = z.object({\n username: z.string(),\n reference: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for login request.\n */\nexport const LoginRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n role: z.enum(UserRole).optional(),\n});\n\nexport const VerifyOtpRequestSchema = z.object({\n otp: z.string().length(4),\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const ResendOtpRequestSchema = z.object({\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const VerifyOtpResponseSchema = z.object({\n isValid: z.boolean(),\n message: z.string(),\n reference: z.string().optional(),\n});\n\n/**\n * Zod schema for login response.\n */\nexport const LoginResponseSchema = z.object({\n AccessToken: z.string(),\n RefreshToken: z.string(),\n IdToken: z.string(),\n ExpiresIn: z.number(),\n TokenType: z.literal('Bearer'),\n});\n\n/**\n * Zod schema for refresh token request.\n */\nexport const RefreshTokenRequestSchema = z.object({\n refreshToken: z.string(),\n});\n\nexport const LogoutRequestSchema = z.object({\n refreshToken: z.string(),\n accessToken: z.string(),\n});\n\n/**\n * Zod schema for forgot password request.\n */\nexport const ForgotPasswordRequestSchema = z.object({\n email: z.email().toLowerCase(),\n});\n\nexport const ForgotPasswordResponseSchema = z.object({\n destination: z.string(),\n deliveryMedium: z.string(),\n attributeName: z.string(),\n});\n\n/**\n * Zod schema for reset password request.\n */\nexport const ResetPasswordRequestSchema = z.object({\n token: z.string(),\n newPassword: PasswordSchema,\n});\n\n/**\n * Zod schema for change password request.\n */\nexport const ChangePasswordRequestSchema = z.object({\n currentPassword: PasswordSchema,\n newPassword: PasswordSchema,\n});\n\nexport const OauthStartQuerySchema = z.object({\n redirectTo: z.string().min(1).max(2048).optional(),\n});\n\nexport const OauthStartResponseSchema = z.object({\n authorizeUrl: z.url(),\n});\n\nexport const OauthExchangeRequestSchema = z.object({\n handoff: z.string().min(16).max(128),\n});\n\nexport const OauthDirectTokenRequestSchema = z.object({\n idToken: z.string().min(1).max(8192),\n nonce: z.string().min(8).max(256),\n authorizationCode: z.string().min(1).max(1024).optional(),\n user: z\n .object({\n name: z\n .object({\n firstName: z.string().max(128).nullable().optional(),\n lastName: z.string().max(128).nullable().optional(),\n })\n .optional(),\n })\n .optional(),\n});\n\nexport const OauthLinkCompleteRequestSchema = z\n .object({\n linkHandoff: z.string().min(16).max(128),\n password: PasswordSchema.optional(),\n otpReference: z.string().min(1).max(128).optional(),\n otp: z.string().length(4).optional(),\n })\n .refine(\n (v) => (v.password ? true : v.otpReference && v.otp),\n 'either `password` OR (`otpReference` AND `otp`) must be provided',\n );\n\nexport const OauthLinkSendOtpRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n});\n\nexport const LinkRequiredResponseSchema = z.object({\n kind: z.literal('link_required'),\n reason: z.enum(LinkRequiredReasonEnum),\n linkHandoff: z.string(),\n maskedEmail: z.string(),\n hasPassword: z.boolean(),\n provider: z.enum(IdentityProvider),\n});\n\nexport const OauthLinkSendOtpResponseSchema = z.object({\n otpReference: z.string(),\n});\n\nexport const ProvidersListItemSchema = z.object({\n name: z.enum(IdentityProvider),\n enabled: z.boolean(),\n canSignUp: z.boolean(),\n});\n\nexport const ProvidersListResponseSchema = z.object({\n providers: z.array(ProvidersListItemSchema),\n});\n\nexport const OauthLinkCompleteEmailRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n email: z.email().max(320),\n});\n\nexport const ConfirmPasswordSchema = z.object({\n password: PasswordSchema,\n});\n\nexport const ReauthTokenResponseSchema = z.object({\n reauthToken: z.string(),\n expiresAt: z.iso.datetime(), // ISO date string ;\n});\n"]}
1
+ {"version":3,"sources":["../src/auth/auth.enums.ts","../src/auth/auth.schemas.ts"],"names":["IdentityProvider","LinkRequiredReasonEnum","OauthResolveKind","PASSWORD_REGEX","PASSWORD_MESSAGE","PasswordSchema","z","RegisterRequestSchema","UserRole","RegisterResponseSchema","LoginRequestSchema","VerifyOtpRequestSchema","ResendOtpRequestSchema","VerifyOtpResponseSchema","LoginResponseSchema","RefreshTokenRequestSchema","LogoutRequestSchema","ForgotPasswordRequestSchema","ForgotPasswordResponseSchema","ResetPasswordRequestSchema","ChangePasswordRequestSchema","OauthStartQuerySchema","OauthStartResponseSchema","OauthExchangeRequestSchema","OauthDirectTokenRequestSchema","OauthLinkCompleteRequestSchema","v","OauthLinkSendOtpRequestSchema","LinkRequiredResponseSchema","OauthLinkSendOtpResponseSchema","ProvidersListItemSchema","ProvidersListResponseSchema","OauthLinkCompleteEmailRequestSchema","ConfirmPasswordSchema","ReauthTokenResponseSchema"],"mappings":"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","file":"chunk-CMEKX44M.mjs","sourcesContent":["export const IdentityProvider = {\n GOOGLE: 'GOOGLE',\n APPLE: 'APPLE',\n FACEBOOK: 'FACEBOOK',\n TWITTER: 'TWITTER',\n} as const;\nexport type IdentityProvider = (typeof IdentityProvider)[keyof typeof IdentityProvider];\nexport const LinkRequiredReasonEnum = {\n EMAIL_MATCH: 'email_match',\n EMAIL_MISS: 'email_missing',\n} as const;\nexport type LinkRequiredReasonEnum =\n (typeof LinkRequiredReasonEnum)[keyof typeof LinkRequiredReasonEnum];\nexport const OauthResolveKind = {\n SIGNED_IN: 'signed_in',\n SIGNED_UP: 'signed_up',\n LINK_REQUIRED: 'link_required',\n} as const;\nexport type OauthResolveKind = (typeof OauthResolveKind)[keyof typeof OauthResolveKind];\n","import { z } from 'zod';\nimport { UserRole } from '../user';\nimport { IdentityProvider, LinkRequiredReasonEnum } from './auth.enums';\n\nconst PASSWORD_REGEX = new RegExp(\n '^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&\\'()*+,-./:;<=>?@[\\\\]^_`{|}~]).{8,}$',\n);\n\nconst PASSWORD_MESSAGE =\n 'Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.';\n\nexport const PasswordSchema = z\n .string()\n .min(8, PASSWORD_MESSAGE)\n .regex(PASSWORD_REGEX, PASSWORD_MESSAGE);\n\n/**\n * Zod schema for registration request.\n */\nexport const RegisterRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n firstName: z.string(),\n lastName: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for registration response.\n */\nexport const RegisterResponseSchema = z.object({\n username: z.string(),\n reference: z.string(),\n role: z.enum(UserRole).optional(),\n});\n\n/**\n * Zod schema for login request.\n */\nexport const LoginRequestSchema = z.object({\n email: z.email().toLowerCase(),\n password: PasswordSchema,\n role: z.enum(UserRole).optional(),\n});\n\nexport const VerifyOtpRequestSchema = z.object({\n otp: z.string().length(4),\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const ResendOtpRequestSchema = z.object({\n reference: z.string(),\n type: z.enum(['registration', 'passwordReset']),\n});\n\nexport const VerifyOtpResponseSchema = z.object({\n isValid: z.boolean(),\n message: z.string(),\n reference: z.string().optional(),\n});\n\n/**\n * Zod schema for login response.\n */\nexport const LoginResponseSchema = z.object({\n AccessToken: z.string(),\n RefreshToken: z.string(),\n IdToken: z.string(),\n ExpiresIn: z.number(),\n TokenType: z.literal('Bearer'),\n});\n\n/**\n * Zod schema for refresh token request.\n */\nexport const RefreshTokenRequestSchema = z.object({\n refreshToken: z.string(),\n});\n\nexport const LogoutRequestSchema = z.object({\n refreshToken: z.string(),\n accessToken: z.string(),\n});\n\n/**\n * Zod schema for forgot password request.\n */\nexport const ForgotPasswordRequestSchema = z.object({\n email: z.email().toLowerCase(),\n});\n\nexport const ForgotPasswordResponseSchema = z.object({\n destination: z.string(),\n deliveryMedium: z.string(),\n attributeName: z.string(),\n});\n\n/**\n * Zod schema for reset password request.\n */\nexport const ResetPasswordRequestSchema = z.object({\n token: z.string(),\n newPassword: PasswordSchema,\n});\n\n/**\n * Zod schema for change password request.\n */\nexport const ChangePasswordRequestSchema = z.object({\n currentPassword: PasswordSchema,\n newPassword: PasswordSchema,\n});\n\nexport const OauthStartQuerySchema = z.object({\n redirectTo: z.string().min(1).max(2048).optional(),\n});\n\nexport const OauthStartResponseSchema = z.object({\n authorizeUrl: z.url(),\n});\n\nexport const OauthExchangeRequestSchema = z.object({\n handoff: z.string().min(16).max(128),\n});\n\nexport const OauthDirectTokenRequestSchema = z.object({\n idToken: z.string().min(1).max(8192),\n nonce: z.string().min(8).max(256),\n authorizationCode: z.string().min(1).max(1024).optional(),\n user: z\n .object({\n name: z\n .object({\n firstName: z.string().max(128).nullable().optional(),\n lastName: z.string().max(128).nullable().optional(),\n })\n .optional(),\n })\n .optional(),\n});\n\nexport const OauthLinkCompleteRequestSchema = z\n .object({\n linkHandoff: z.string().min(16).max(128),\n password: PasswordSchema.optional(),\n otpReference: z.string().min(1).max(128).optional(),\n otp: z.string().length(4).optional(),\n })\n .refine(\n (v) => (v.password ? true : v.otpReference && v.otp),\n 'either `password` OR (`otpReference` AND `otp`) must be provided',\n );\n\nexport const OauthLinkSendOtpRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n});\n\nexport const LinkRequiredResponseSchema = z.object({\n kind: z.literal('link_required'),\n reason: z.enum(LinkRequiredReasonEnum),\n linkHandoff: z.string(),\n maskedEmail: z.string(),\n hasPassword: z.boolean(),\n provider: z.enum(IdentityProvider),\n});\n\nexport const OauthLinkSendOtpResponseSchema = z.object({\n otpReference: z.string(),\n});\n\nexport const ProvidersListItemSchema = z.object({\n name: z.enum(IdentityProvider),\n enabled: z.boolean(),\n canSignUp: z.boolean(),\n});\n\nexport const ProvidersListResponseSchema = z.object({\n providers: z.array(ProvidersListItemSchema),\n});\n\nexport const OauthLinkCompleteEmailRequestSchema = z.object({\n linkHandoff: z.string().min(16).max(128),\n email: z.email().max(320),\n});\n\nexport const ConfirmPasswordSchema = z.object({\n password: PasswordSchema,\n});\n\nexport const ReauthTokenResponseSchema = z.object({\n reauthToken: z.string(),\n expiresAt: z.iso.datetime(), // ISO date string ;\n});\n"]}
@@ -0,0 +1,2 @@
1
+ import {d as d$1,e}from'./chunk-X7OLLQRF.mjs';import {a}from'./chunk-GAZT5E62.mjs';import {z}from'zod';var s={EVENT_DIRECT:"EVENT_DIRECT",MARKETPLACE_DIRECT:"MARKETPLACE_DIRECT",JOB_LISTING:"JOB_LISTING"},t={REQUESTED:"REQUESTED",AWAITING_PRODUCER_RESPONSE:"AWAITING_PRODUCER_RESPONSE",IN_NEGOTIATION:"IN_NEGOTIATION",ACCEPTED:"ACCEPTED",REJECTED:"REJECTED",CANCELLED:"CANCELLED",AWAITING_ESCROW_FUNDING:"AWAITING_ESCROW_FUNDING",CONFIRMED:"CONFIRMED",IN_PROGRESS:"IN_PROGRESS",SERVICE_COMPLETED:"SERVICE_COMPLETED",IN_DISPUTE:"IN_DISPUTE",CLOSED:"CLOSED"},u={OPEN:"OPEN",CLOSED:"CLOSED",SUSPENDED:"SUSPENDED"},m={OPEN:"OPEN",WITHDRAWN:"WITHDRAWN",SELECTED:"SELECTED",REJECTED:"REJECTED"},l={PENDING:"PENDING",ESCROW_FUNDED:"ESCROW_FUNDED",RELEASED:"RELEASED",REFUNDED:"REFUNDED",FAILED:"FAILED"},i={HOST:"HOST",PRODUCER:"PRODUCER",ADMIN:"ADMIN",SYSTEM:"SYSTEM"};var C=[t.REJECTED,t.CANCELLED,t.CLOSED],R=[...C,t.IN_DISPUTE],O={[t.REQUESTED]:[t.AWAITING_PRODUCER_RESPONSE,t.CANCELLED],[t.AWAITING_PRODUCER_RESPONSE]:[t.IN_NEGOTIATION,t.REJECTED,t.CANCELLED],[t.IN_NEGOTIATION]:[t.ACCEPTED,t.REJECTED,t.CANCELLED],[t.ACCEPTED]:[t.AWAITING_ESCROW_FUNDING,t.CANCELLED],[t.AWAITING_ESCROW_FUNDING]:[t.CONFIRMED,t.CANCELLED],[t.CONFIRMED]:[t.IN_PROGRESS],[t.IN_PROGRESS]:[t.SERVICE_COMPLETED,t.CANCELLED],[t.SERVICE_COMPLETED]:[t.CLOSED],[t.IN_DISPUTE]:[t.CLOSED],[t.REJECTED]:[],[t.CANCELLED]:[],[t.CLOSED]:[]},A={[`${t.REQUESTED}->${t.AWAITING_PRODUCER_RESPONSE}`]:[i.HOST,i.SYSTEM],[`${t.REQUESTED}->${t.CANCELLED}`]:[i.HOST],[`${t.AWAITING_PRODUCER_RESPONSE}->${t.IN_NEGOTIATION}`]:[i.PRODUCER],[`${t.AWAITING_PRODUCER_RESPONSE}->${t.REJECTED}`]:[i.PRODUCER],[`${t.AWAITING_PRODUCER_RESPONSE}->${t.CANCELLED}`]:[i.HOST,i.PRODUCER],[`${t.IN_NEGOTIATION}->${t.ACCEPTED}`]:[i.HOST,i.PRODUCER],[`${t.IN_NEGOTIATION}->${t.REJECTED}`]:[i.HOST,i.PRODUCER],[`${t.IN_NEGOTIATION}->${t.CANCELLED}`]:[i.HOST,i.PRODUCER],[`${t.ACCEPTED}->${t.AWAITING_ESCROW_FUNDING}`]:[i.HOST,i.SYSTEM],[`${t.ACCEPTED}->${t.CANCELLED}`]:[i.HOST,i.PRODUCER],[`${t.AWAITING_ESCROW_FUNDING}->${t.CONFIRMED}`]:[i.SYSTEM,i.ADMIN],[`${t.AWAITING_ESCROW_FUNDING}->${t.CANCELLED}`]:[i.HOST,i.ADMIN],[`${t.CONFIRMED}->${t.IN_PROGRESS}`]:[i.HOST,i.PRODUCER,i.ADMIN],[`${t.IN_PROGRESS}->${t.SERVICE_COMPLETED}`]:[i.PRODUCER,i.SYSTEM,i.ADMIN],[`${t.IN_PROGRESS}->${t.CANCELLED}`]:[i.HOST,i.ADMIN],[`${t.SERVICE_COMPLETED}->${t.CLOSED}`]:[i.HOST,i.ADMIN,i.SYSTEM],[`${t.IN_DISPUTE}->${t.CLOSED}`]:[i.ADMIN,i.HOST]},b=[t.REJECTED,t.CANCELLED,t.IN_DISPUTE];function k(r,a){return `${r}->${a}`}function L(r){let a=O[r]??[];return R.includes(r)?a:[...a,t.IN_DISPUTE]}function B(r,a){return L(r).includes(a)}function P(r,a){return a===t.IN_DISPUTE&&!R.includes(r)?[i.HOST,i.PRODUCER]:A[k(r,a)]??[]}function G(r,a,g){return P(r,a).includes(g)}function U(r,a){return b.includes(a)}var j=z.object({origin:z.enum(s),eventId:z.uuid().optional(),producerId:z.uuid(),agreedAmount:z.number().min(0),serviceDetails:z.object({requiredDate:z.iso.datetime(),location:z.string(),eventType:z.string(),estimatedDurationHrs:z.number(),notes:z.string().optional()}).optional()}),H=z.object({escrowReference:z.string()}),W=z.object({id:z.uuid(),eventId:z.uuid().optional(),hostId:z.uuid(),producerId:z.uuid(),quotedPrice:z.number(),currency:z.string(),scopeOfWork:z.record(z.string(),z.any()).optional(),requiredStartAt:z.iso.datetime(),requiredEndAt:z.iso.datetime(),bookingState:z.enum(t),paymentStatus:z.enum(l),escrowReference:z.string().optional(),completedAt:z.iso.datetime().optional(),hostRating:z.number().optional(),hostReview:z.string().optional(),producerRating:z.number().optional(),producerReview:z.string().optional(),createdAt:z.iso.datetime(),updatedAt:z.iso.datetime()}),q=z.object({title:z.string().max(255),description:z.string(),requiredDate:z.iso.datetime(),estimatedDurationHrs:z.number().optional(),location:z.string(),budgetRangeMin:z.number().optional(),budgetRangeMax:z.number().optional()}),F=z.object({id:z.uuid(),hostProfileId:z.uuid(),eventId:z.uuid().optional(),title:z.string(),description:z.string(),requiredDate:z.iso.datetime(),estimatedDurationHrs:z.number().optional(),location:z.string(),budgetRangeMin:z.number().optional(),budgetRangeMax:z.number().optional(),state:z.enum(u),proposalCount:z.number(),createdAt:z.iso.datetime()}),w=z.object({coverMessage:z.string().optional(),proposedAmount:z.number().min(0).optional(),availabilityNotes:z.string().optional()}),V=z.object({id:z.uuid(),jobListingId:z.uuid(),producerProfileId:z.uuid(),coverMessage:z.string().optional(),proposedAmount:z.number().optional(),state:z.enum(m),createdAt:z.iso.datetime()});var c={ONSITE:"ONSITE",REMOTE:"REMOTE"};var T=z.record(z.string(),z.unknown()),te=z.object({producerId:z.uuid(),origin:z.enum(s),eventId:z.uuid().optional(),jobListingId:z.uuid().optional(),sourceIoiId:z.uuid().optional(),agreedAmount:z.coerce.number().nonnegative().optional(),scopeOfWork:z.string().max(5e3).optional()}).superRefine((r,a)=>{r.origin===s.EVENT_DIRECT&&!r.eventId&&a.addIssue({code:"custom",message:"eventId is required when origin is EVENT_DIRECT",path:["eventId"]}),r.origin===s.MARKETPLACE_DIRECT&&(r.eventId&&a.addIssue({code:"custom",message:"eventId must not be set when origin is MARKETPLACE_DIRECT",path:["eventId"]}),r.sourceIoiId&&a.addIssue({code:"custom",message:"sourceIoiId must not be set when origin is MARKETPLACE_DIRECT",path:["sourceIoiId"]})),r.origin===s.JOB_LISTING&&(r.sourceIoiId||a.addIssue({code:"custom",message:"sourceIoiId is required when origin is JOB_LISTING",path:["sourceIoiId"]}),r.eventId&&a.addIssue({code:"custom",message:"eventId must not be set when origin is JOB_LISTING",path:["eventId"]})),r.sourceIoiId&&r.origin!==s.JOB_LISTING&&a.addIssue({code:"custom",message:"sourceIoiId is only allowed when origin is JOB_LISTING",path:["sourceIoiId"]});}),I=z.object({id:z.uuid(),eventId:z.uuid().nullable(),eventLinked:z.boolean(),hostProfileId:z.uuid(),producerProfileId:z.uuid(),origin:z.enum(s),jobListingId:z.uuid().nullable(),sourceIoiId:z.uuid().nullable(),state:z.enum(t),agreedAmount:z.number().nullable(),scopeOfWork:z.string().nullable(),createdAt:z.string(),updatedAt:z.string()}),oe=z.object({bookingId:z.uuid(),booking:I}),_=z.string().trim().min(5).max(500),ne=z.object({targetState:z.enum(t),reason:_.optional()}).superRefine((r,a)=>{(r.targetState===t.REJECTED||r.targetState===t.CANCELLED||r.targetState===t.IN_DISPUTE)&&r.reason===void 0&&a.addIssue({code:"custom",message:"reason is required for this transition",path:["reason"]});}),ie=z.object({booking:I}),re=z.object({notes:z.string().max(2e3).optional(),force:z.boolean().optional()}),ae=z.object({booking:I,hostAcked:z.boolean(),producerAcked:z.boolean(),completed:z.boolean()}),D=z.object({title:z.string().min(1).max(200),description:z.string().min(1).max(5e3),responsibilities:z.string().min(1),requirements:z.string().min(1),role:z.string().min(1).max(120),requiredDate:z.iso.datetime().optional(),estimatedDurationHours:z.coerce.number().int().positive().optional(),location:z.enum(c),notes:z.string().max(2e3).optional(),compensation:z.coerce.number().nonnegative().optional(),attachments:T.optional(),eventId:z.uuid().optional()}),se=D,Ee=D.partial(),ue=z.object({...d$1.shape,location:z.enum(c).optional()}),ce=z.object({id:z.uuid(),hostProfileId:z.uuid(),eventId:z.uuid().nullable(),title:z.string(),notes:z.string().nullable(),description:z.string(),responsibilities:z.string(),requirements:z.string(),role:z.string(),requiredDate:z.string().nullable(),estimatedDurationHours:z.number().int().nullable(),location:z.enum(c),compensation:z.number().nullable(),attachments:z.unknown().nullable(),state:z.enum(u),proposalCount:z.number().int(),createdAt:z.string(),updatedAt:z.string()}),pe=z.object({coverMessage:z.string().min(1).max(2e3).optional(),proposedAmount:z.coerce.number().nonnegative().optional(),availabilityNotes:z.string().max(2e3).optional(),attachments:T.optional()}),f=z.object({id:z.uuid(),jobListingId:z.uuid(),producerProfileId:z.uuid(),coverMessage:z.string().nullable(),proposedAmount:z.number().nullable(),availabilityNotes:z.string().nullable(),state:z.enum(a),resultingBookingId:z.uuid().nullable(),withdrawnAt:z.string().nullable(),selectedAt:z.string().nullable(),createdAt:z.string(),updatedAt:z.string()}),Ie=f.extend({producerCompanyName:z.string().nullable()});var N={SENT:"SENT",DELIVERED:"DELIVERED",READ:"READ"};var M=z.object({id:z.uuid(),bookingId:z.uuid(),hostProfileId:z.uuid(),producerProfileId:z.uuid(),createdAt:z.string(),updatedAt:z.string()}),h=z.object({id:z.uuid(),url:z.string(),mimeType:z.string(),sizeBytes:z.number().int(),createdAt:z.string()}),d=z.object({id:z.uuid(),threadId:z.uuid(),senderUserId:z.uuid(),body:z.string(),sentAt:z.string(),deliveryStatus:z.enum(N),readAt:z.string().nullable(),attachments:z.array(h)}),Re=d$1,Te=z.object({messages:z.array(d),...e.shape}),De=z.object({thread:M,messages:z.array(d),...e.shape}),Ne=z.object({body:z.string().trim().min(1).max(5e3),attachments:z.array(z.object({url:z.string().url(),mimeType:z.string().min(1).max(120),sizeBytes:z.number().int().positive()})).max(10).optional()}),Ce=z.object({message:d}),Oe=z.object({upToMessageId:z.uuid().optional()}),Ae=z.object({markedCount:z.number().int().nonnegative()});export{oe as A,ne as B,ie as C,re as D,ae as E,se as F,Ee as G,ue as H,ce as I,pe as J,f as K,Ie as L,N as M,M as N,h as O,d as P,Re as Q,Te as R,De as S,Ne as T,Ce as U,Oe as V,Ae as W,s as a,t as b,u as c,m as d,l as e,i as f,C as g,O as h,A as i,b as j,k,L as l,B as m,P as n,G as o,U as p,j as q,H as r,W as s,q as t,F as u,w as v,V as w,c as x,te as y,I as z};//# sourceMappingURL=chunk-DFUVVL4N.mjs.map
2
+ //# sourceMappingURL=chunk-DFUVVL4N.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/booking/booking.enums.ts","../src/booking/booking-state-machine.ts","../src/booking/booking.schemas.ts","../src/booking/hiring.enums.ts","../src/booking/hiring.schemas.ts","../src/booking/thread.enums.ts","../src/booking/thread.schemas.ts"],"names":["BookingOrigin","BookingState","JobListingState","IoiState","BookingPaymentStatus","BookingTransitionActor","BOOKING_TERMINAL_STATES","DISPUTE_EXCLUDED_FROM","VALID_BOOKING_TRANSITIONS","BOOKING_TRANSITION_ACTORS","BOOKING_TRANSITION_TARGETS_REQUIRING_REASON","bookingTransitionKey","from","to","getAllowedBookingTargetStates","base","isValidBookingTransition","getBookingTransitionActors","canActorPerformBookingTransition","actor","bookingTransitionRequiresReason","_from","CreateBookingRequestSchema","z","ConfirmBookingRequestSchema","BookingResponseSchema","CreateJobListingRequestSchema","JobListingResponseSchema","SubmitIndicationOfInterestRequestSchema","IndicationOfInterestResponseSchema","JobLocation","jsonRecordSchema","CreateMarketplaceBookingRequestSchema","data","ctx","MarketplaceBookingResponseSchema","CreateMarketplaceBookingResponseSchema","bookingTransitionReasonSchema","TransitionMarketplaceBookingRequestSchema","TransitionMarketplaceBookingResponseSchema","CompleteMarketplaceBookingRequestSchema","CompleteMarketplaceBookingResponseSchema","MarketplaceJobListingBodySchema","CreateMarketplaceJobListingRequestSchema","UpdateMarketplaceJobListingRequestSchema","ListMarketplaceJobListingsQuerySchema","PaginationParamsSchema","MarketplaceJobListingResponseSchema","SubmitMarketplaceIndicationOfInterestRequestSchema","MarketplaceIndicationOfInterestResponseSchema","JobInterestState","MarketplaceIndicationOfInterestHostItemSchema","MessageDeliveryStatus","MarketplaceHiringThreadSchema","MarketplaceHiringMessageAttachmentSchema","MarketplaceHiringMessageSchema","ListMarketplaceHiringThreadMessagesQuerySchema","ListMarketplaceHiringThreadMessagesResponseSchema","PaginationResponseSchema","GetMarketplaceHiringThreadResponseSchema","PostMarketplaceHiringThreadMessageRequestSchema","PostMarketplaceHiringThreadMessageResponseSchema","MarkMarketplaceHiringThreadReadRequestSchema","MarkMarketplaceHiringThreadReadResponseSchema"],"mappings":"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","file":"chunk-DFUVVL4N.mjs","sourcesContent":["export const BookingOrigin = {\n EVENT_DIRECT: 'EVENT_DIRECT',\n MARKETPLACE_DIRECT: 'MARKETPLACE_DIRECT',\n JOB_LISTING: 'JOB_LISTING',\n} as const;\nexport type BookingOrigin = (typeof BookingOrigin)[keyof typeof BookingOrigin];\n\nexport const BookingState = {\n REQUESTED: 'REQUESTED',\n AWAITING_PRODUCER_RESPONSE: 'AWAITING_PRODUCER_RESPONSE',\n IN_NEGOTIATION: 'IN_NEGOTIATION',\n ACCEPTED: 'ACCEPTED',\n REJECTED: 'REJECTED',\n CANCELLED: 'CANCELLED',\n AWAITING_ESCROW_FUNDING: 'AWAITING_ESCROW_FUNDING',\n CONFIRMED: 'CONFIRMED',\n IN_PROGRESS: 'IN_PROGRESS',\n SERVICE_COMPLETED: 'SERVICE_COMPLETED',\n IN_DISPUTE: 'IN_DISPUTE',\n CLOSED: 'CLOSED',\n} as const;\nexport type BookingState = (typeof BookingState)[keyof typeof BookingState];\n\nexport const JobListingState = {\n OPEN: 'OPEN',\n CLOSED: 'CLOSED',\n SUSPENDED: 'SUSPENDED',\n} as const;\nexport type JobListingState = (typeof JobListingState)[keyof typeof JobListingState];\n\nexport const IoiState = {\n OPEN: 'OPEN',\n WITHDRAWN: 'WITHDRAWN',\n SELECTED: 'SELECTED',\n REJECTED: 'REJECTED',\n} as const;\nexport type IoiState = (typeof IoiState)[keyof typeof IoiState];\n\n/**\n * Enum for booking payment status.\n */\nexport const BookingPaymentStatus = {\n PENDING: 'PENDING',\n ESCROW_FUNDED: 'ESCROW_FUNDED',\n RELEASED: 'RELEASED',\n REFUNDED: 'REFUNDED',\n FAILED: 'FAILED',\n} as const;\nexport type BookingPaymentStatus = (typeof BookingPaymentStatus)[keyof typeof BookingPaymentStatus];\n\n/** Actor that may trigger a booking state transition (RBAC). */\nexport const BookingTransitionActor = {\n HOST: 'HOST',\n PRODUCER: 'PRODUCER',\n ADMIN: 'ADMIN',\n SYSTEM: 'SYSTEM',\n} as const;\nexport type BookingTransitionActor =\n (typeof BookingTransitionActor)[keyof typeof BookingTransitionActor];\n","import { BookingState, BookingTransitionActor } from './booking.enums';\n\nexport type BookingTransitionKey = `${BookingState}->${BookingState}`;\n\nexport const BOOKING_TERMINAL_STATES: readonly BookingState[] = [\n BookingState.REJECTED,\n BookingState.CANCELLED,\n BookingState.CLOSED,\n];\n\nconst DISPUTE_EXCLUDED_FROM: readonly BookingState[] = [\n ...BOOKING_TERMINAL_STATES,\n BookingState.IN_DISPUTE,\n];\n\n/** Valid target states per source (excludes dispute shortcut — see `getAllowedBookingTargetStates`). */\nexport const VALID_BOOKING_TRANSITIONS: Record<BookingState, readonly BookingState[]> = {\n [BookingState.REQUESTED]: [BookingState.AWAITING_PRODUCER_RESPONSE, BookingState.CANCELLED],\n [BookingState.AWAITING_PRODUCER_RESPONSE]: [\n BookingState.IN_NEGOTIATION,\n BookingState.REJECTED,\n BookingState.CANCELLED,\n ],\n [BookingState.IN_NEGOTIATION]: [\n BookingState.ACCEPTED,\n BookingState.REJECTED,\n BookingState.CANCELLED,\n ],\n [BookingState.ACCEPTED]: [BookingState.AWAITING_ESCROW_FUNDING, BookingState.CANCELLED],\n [BookingState.AWAITING_ESCROW_FUNDING]: [BookingState.CONFIRMED, BookingState.CANCELLED],\n [BookingState.CONFIRMED]: [BookingState.IN_PROGRESS],\n [BookingState.IN_PROGRESS]: [BookingState.SERVICE_COMPLETED, BookingState.CANCELLED],\n [BookingState.SERVICE_COMPLETED]: [BookingState.CLOSED],\n [BookingState.IN_DISPUTE]: [BookingState.CLOSED],\n [BookingState.REJECTED]: [],\n [BookingState.CANCELLED]: [],\n [BookingState.CLOSED]: [],\n};\n\n/** RBAC: which actor may perform each transition (dispute edges merged at runtime). */\nexport const BOOKING_TRANSITION_ACTORS: Partial<\n Record<BookingTransitionKey, readonly BookingTransitionActor[]>\n> = {\n [`${BookingState.REQUESTED}->${BookingState.AWAITING_PRODUCER_RESPONSE}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.REQUESTED}->${BookingState.CANCELLED}`]: [BookingTransitionActor.HOST],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.IN_NEGOTIATION}`]: [\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.REJECTED}`]: [\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.ACCEPTED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.REJECTED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.ACCEPTED}->${BookingState.AWAITING_ESCROW_FUNDING}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.ACCEPTED}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_ESCROW_FUNDING}->${BookingState.CONFIRMED}`]: [\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.AWAITING_ESCROW_FUNDING}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.CONFIRMED}->${BookingState.IN_PROGRESS}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.IN_PROGRESS}->${BookingState.SERVICE_COMPLETED}`]: [\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.IN_PROGRESS}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.SERVICE_COMPLETED}->${BookingState.CLOSED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.IN_DISPUTE}->${BookingState.CLOSED}`]: [\n BookingTransitionActor.ADMIN,\n BookingTransitionActor.HOST,\n ],\n};\n\n/** Target states that require a `reason` on the transition request. */\nexport const BOOKING_TRANSITION_TARGETS_REQUIRING_REASON: readonly BookingState[] = [\n BookingState.REJECTED,\n BookingState.CANCELLED,\n BookingState.IN_DISPUTE,\n];\n\nexport function bookingTransitionKey(from: BookingState, to: BookingState): BookingTransitionKey {\n return `${from}->${to}`;\n}\n\nexport function getAllowedBookingTargetStates(from: BookingState): readonly BookingState[] {\n const base = VALID_BOOKING_TRANSITIONS[from] ?? [];\n if (!DISPUTE_EXCLUDED_FROM.includes(from)) {\n return [...base, BookingState.IN_DISPUTE];\n }\n return base;\n}\n\nexport function isValidBookingTransition(from: BookingState, to: BookingState): boolean {\n return getAllowedBookingTargetStates(from).includes(to);\n}\n\nexport function getBookingTransitionActors(\n from: BookingState,\n to: BookingState,\n): readonly BookingTransitionActor[] {\n if (to === BookingState.IN_DISPUTE && !DISPUTE_EXCLUDED_FROM.includes(from)) {\n return [BookingTransitionActor.HOST, BookingTransitionActor.PRODUCER];\n }\n return BOOKING_TRANSITION_ACTORS[bookingTransitionKey(from, to)] ?? [];\n}\n\nexport function canActorPerformBookingTransition(\n from: BookingState,\n to: BookingState,\n actor: BookingTransitionActor,\n): boolean {\n return getBookingTransitionActors(from, to).includes(actor);\n}\n\nexport function bookingTransitionRequiresReason(_from: BookingState, to: BookingState): boolean {\n return BOOKING_TRANSITION_TARGETS_REQUIRING_REASON.includes(to);\n}\n","import { z } from 'zod';\nimport {\n BookingOrigin,\n BookingState,\n JobListingState,\n IoiState,\n BookingPaymentStatus,\n} from './booking.enums';\n\nexport const CreateBookingRequestSchema = z.object({\n origin: z.enum(BookingOrigin),\n eventId: z.uuid().optional(),\n producerId: z.uuid(),\n agreedAmount: z.number().min(0),\n serviceDetails: z\n .object({\n requiredDate: z.iso.datetime(),\n location: z.string(),\n eventType: z.string(),\n estimatedDurationHrs: z.number(),\n notes: z.string().optional(),\n })\n .optional(),\n});\n\nexport const ConfirmBookingRequestSchema = z.object({\n escrowReference: z.string(),\n});\n\nexport const BookingResponseSchema = z.object({\n id: z.uuid(),\n eventId: z.uuid().optional(),\n hostId: z.uuid(),\n producerId: z.uuid(),\n quotedPrice: z.number(),\n currency: z.string(),\n scopeOfWork: z.record(z.string(), z.any()).optional(),\n requiredStartAt: z.iso.datetime(),\n requiredEndAt: z.iso.datetime(),\n bookingState: z.enum(BookingState),\n paymentStatus: z.enum(BookingPaymentStatus),\n escrowReference: z.string().optional(),\n completedAt: z.iso.datetime().optional(),\n hostRating: z.number().optional(),\n hostReview: z.string().optional(),\n producerRating: z.number().optional(),\n producerReview: z.string().optional(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const CreateJobListingRequestSchema = z.object({\n title: z.string().max(255),\n description: z.string(),\n requiredDate: z.iso.datetime(),\n estimatedDurationHrs: z.number().optional(),\n location: z.string(),\n budgetRangeMin: z.number().optional(),\n budgetRangeMax: z.number().optional(),\n});\n\nexport const JobListingResponseSchema = z.object({\n id: z.uuid(),\n hostProfileId: z.uuid(),\n eventId: z.uuid().optional(),\n title: z.string(),\n description: z.string(),\n requiredDate: z.iso.datetime(),\n estimatedDurationHrs: z.number().optional(),\n location: z.string(),\n budgetRangeMin: z.number().optional(),\n budgetRangeMax: z.number().optional(),\n state: z.enum(JobListingState),\n proposalCount: z.number(),\n createdAt: z.iso.datetime(),\n});\n\nexport const SubmitIndicationOfInterestRequestSchema = z.object({\n coverMessage: z.string().optional(),\n proposedAmount: z.number().min(0).optional(),\n availabilityNotes: z.string().optional(),\n});\n\nexport const IndicationOfInterestResponseSchema = z.object({\n id: z.uuid(),\n jobListingId: z.uuid(),\n producerProfileId: z.uuid(),\n coverMessage: z.string().optional(),\n proposedAmount: z.number().optional(),\n state: z.enum(IoiState),\n createdAt: z.iso.datetime(),\n});\n","export const JobLocation = {\n ONSITE: 'ONSITE',\n REMOTE: 'REMOTE',\n} as const;\nexport type JobLocation = (typeof JobLocation)[keyof typeof JobLocation];\n","import { z } from 'zod';\nimport { JobInterestState } from '../joblisting/listing.enum';\nimport { BookingOrigin, BookingState, JobListingState } from './booking.enums';\nimport { JobLocation } from './hiring.enums';\nimport { PaginationParamsSchema } from '../common';\n\nconst jsonRecordSchema = z.record(z.string(), z.unknown());\n\n/** `POST /marketplace/bookings` */\nexport const CreateMarketplaceBookingRequestSchema = z\n .object({\n producerId: z.uuid(),\n origin: z.enum(BookingOrigin),\n eventId: z.uuid().optional(),\n jobListingId: z.uuid().optional(),\n sourceIoiId: z.uuid().optional(),\n agreedAmount: z.coerce.number().nonnegative().optional(),\n scopeOfWork: z.string().max(5000).optional(),\n })\n .superRefine((data, ctx) => {\n if (data.origin === BookingOrigin.EVENT_DIRECT && !data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId is required when origin is EVENT_DIRECT',\n path: ['eventId'],\n });\n }\n if (data.origin === BookingOrigin.MARKETPLACE_DIRECT) {\n if (data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId must not be set when origin is MARKETPLACE_DIRECT',\n path: ['eventId'],\n });\n }\n if (data.sourceIoiId) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId must not be set when origin is MARKETPLACE_DIRECT',\n path: ['sourceIoiId'],\n });\n }\n }\n if (data.origin === BookingOrigin.JOB_LISTING) {\n if (!data.sourceIoiId) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId is required when origin is JOB_LISTING',\n path: ['sourceIoiId'],\n });\n }\n if (data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId must not be set when origin is JOB_LISTING',\n path: ['eventId'],\n });\n }\n }\n if (data.sourceIoiId && data.origin !== BookingOrigin.JOB_LISTING) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId is only allowed when origin is JOB_LISTING',\n path: ['sourceIoiId'],\n });\n }\n });\n\nexport const MarketplaceBookingResponseSchema = z.object({\n id: z.uuid(),\n eventId: z.uuid().nullable(),\n eventLinked: z.boolean(),\n hostProfileId: z.uuid(),\n producerProfileId: z.uuid(),\n origin: z.enum(BookingOrigin),\n jobListingId: z.uuid().nullable(),\n sourceIoiId: z.uuid().nullable(),\n state: z.enum(BookingState),\n agreedAmount: z.number().nullable(),\n scopeOfWork: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** `POST /marketplace/bookings` — create acknowledgement */\nexport const CreateMarketplaceBookingResponseSchema = z.object({\n bookingId: z.uuid(),\n booking: MarketplaceBookingResponseSchema,\n});\n\nconst bookingTransitionReasonSchema = z.string().trim().min(5).max(500);\n\n/** `POST /marketplace/bookings/:id/transition` (host, producer, admin) */\nexport const TransitionMarketplaceBookingRequestSchema = z\n .object({\n targetState: z.enum(BookingState),\n reason: bookingTransitionReasonSchema.optional(),\n })\n .superRefine((data, ctx) => {\n const requiresReason =\n data.targetState === BookingState.REJECTED ||\n data.targetState === BookingState.CANCELLED ||\n data.targetState === BookingState.IN_DISPUTE;\n if (requiresReason && data.reason === undefined) {\n ctx.addIssue({\n code: 'custom',\n message: 'reason is required for this transition',\n path: ['reason'],\n });\n }\n });\n\nexport const TransitionMarketplaceBookingResponseSchema = z.object({\n booking: MarketplaceBookingResponseSchema,\n});\n\n/** `POST /marketplace/bookings/:id/complete` — dual-ack manual completion */\nexport const CompleteMarketplaceBookingRequestSchema = z.object({\n notes: z.string().max(2000).optional(),\n force: z.boolean().optional(),\n});\n\nexport const CompleteMarketplaceBookingResponseSchema = z.object({\n booking: MarketplaceBookingResponseSchema,\n hostAcked: z.boolean(),\n producerAcked: z.boolean(),\n completed: z.boolean(),\n});\n\nconst MarketplaceJobListingBodySchema = z.object({\n title: z.string().min(1).max(200),\n description: z.string().min(1).max(5000),\n responsibilities: z.string().min(1),\n requirements: z.string().min(1),\n role: z.string().min(1).max(120),\n requiredDate: z.iso.datetime().optional(),\n estimatedDurationHours: z.coerce.number().int().positive().optional(),\n location: z.enum(JobLocation),\n notes: z.string().max(2000).optional(),\n compensation: z.coerce.number().nonnegative().optional(),\n attachments: jsonRecordSchema.optional(),\n eventId: z.uuid().optional(),\n});\n\n/** `POST /marketplace/job-listings` */\nexport const CreateMarketplaceJobListingRequestSchema = MarketplaceJobListingBodySchema;\n\nexport const UpdateMarketplaceJobListingRequestSchema = MarketplaceJobListingBodySchema.partial();\n\nexport const ListMarketplaceJobListingsQuerySchema = z.object({\n ...PaginationParamsSchema.shape,\n location: z.enum(JobLocation).optional(),\n});\n\nexport const MarketplaceJobListingResponseSchema = z.object({\n id: z.uuid(),\n hostProfileId: z.uuid(),\n eventId: z.uuid().nullable(),\n title: z.string(),\n notes: z.string().nullable(),\n description: z.string(),\n responsibilities: z.string(),\n requirements: z.string(),\n role: z.string(),\n requiredDate: z.string().nullable(),\n estimatedDurationHours: z.number().int().nullable(),\n location: z.enum(JobLocation),\n compensation: z.number().nullable(),\n attachments: z.unknown().nullable(),\n state: z.enum(JobListingState),\n proposalCount: z.number().int(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** `POST .../indications-of-interest` */\nexport const SubmitMarketplaceIndicationOfInterestRequestSchema = z.object({\n coverMessage: z.string().min(1).max(2000).optional(),\n proposedAmount: z.coerce.number().nonnegative().optional(),\n availabilityNotes: z.string().max(2000).optional(),\n attachments: jsonRecordSchema.optional(),\n});\n\nexport const MarketplaceIndicationOfInterestResponseSchema = z.object({\n id: z.uuid(),\n jobListingId: z.uuid(),\n producerProfileId: z.uuid(),\n coverMessage: z.string().nullable(),\n proposedAmount: z.number().nullable(),\n availabilityNotes: z.string().nullable(),\n state: z.enum(JobInterestState),\n resultingBookingId: z.uuid().nullable(),\n withdrawnAt: z.string().nullable(),\n selectedAt: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** Host review row — IoI plus producer display label */\nexport const MarketplaceIndicationOfInterestHostItemSchema =\n MarketplaceIndicationOfInterestResponseSchema.extend({\n producerCompanyName: z.string().nullable(),\n });\n","export const MessageDeliveryStatus = {\n SENT: 'SENT',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n} as const;\nexport type MessageDeliveryStatus =\n (typeof MessageDeliveryStatus)[keyof typeof MessageDeliveryStatus];\n","import { z } from 'zod';\nimport { MessageDeliveryStatus } from './thread.enums';\nimport { PaginationParamsSchema, PaginationResponseSchema } from '../common/common.schemas';\n\nexport const MarketplaceHiringThreadSchema = z.object({\n id: z.uuid(),\n bookingId: z.uuid(),\n hostProfileId: z.uuid(),\n producerProfileId: z.uuid(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\nexport const MarketplaceHiringMessageAttachmentSchema = z.object({\n id: z.uuid(),\n url: z.string(),\n mimeType: z.string(),\n sizeBytes: z.number().int(),\n createdAt: z.string(),\n});\n\nexport const MarketplaceHiringMessageSchema = z.object({\n id: z.uuid(),\n threadId: z.uuid(),\n senderUserId: z.uuid(),\n body: z.string(),\n sentAt: z.string(),\n deliveryStatus: z.enum(MessageDeliveryStatus),\n readAt: z.string().nullable(),\n attachments: z.array(MarketplaceHiringMessageAttachmentSchema),\n});\n\nexport const ListMarketplaceHiringThreadMessagesQuerySchema = PaginationParamsSchema;\n\nexport const ListMarketplaceHiringThreadMessagesResponseSchema = z.object({\n messages: z.array(MarketplaceHiringMessageSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport const GetMarketplaceHiringThreadResponseSchema = z.object({\n thread: MarketplaceHiringThreadSchema,\n messages: z.array(MarketplaceHiringMessageSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport const PostMarketplaceHiringThreadMessageRequestSchema = z.object({\n body: z.string().trim().min(1).max(5000),\n attachments: z\n .array(\n z.object({\n url: z.string().url(),\n mimeType: z.string().min(1).max(120),\n sizeBytes: z.number().int().positive(),\n }),\n )\n .max(10)\n .optional(),\n});\n\nexport const PostMarketplaceHiringThreadMessageResponseSchema = z.object({\n message: MarketplaceHiringMessageSchema,\n});\n\nexport const MarkMarketplaceHiringThreadReadRequestSchema = z.object({\n upToMessageId: z.uuid().optional(),\n});\n\nexport const MarkMarketplaceHiringThreadReadResponseSchema = z.object({\n markedCount: z.number().int().nonnegative(),\n});\n"]}
@@ -0,0 +1,2 @@
1
+ 'use strict';var zod=require('zod');var o={LOW:"LOW",NORMAL:"NORMAL",HIGH:"HIGH",URGENT:"URGENT"},i={IN_APP:"IN_APP",EMAIL:"EMAIL",SMS:"SMS",PUSH:"PUSH"},E={BOOKING_REQUESTED:"BOOKING_REQUESTED",BOOKING_ACCEPTED:"BOOKING_ACCEPTED",BOOKING_REJECTED:"BOOKING_REJECTED",BOOKING_CONFIRMED:"BOOKING_CONFIRMED",BOOKING_CANCELLED:"BOOKING_CANCELLED",BOOKING_COMPLETED:"BOOKING_COMPLETED",PAYMENT_RECEIVED:"PAYMENT_RECEIVED",PAYOUT_PROCESSED:"PAYOUT_PROCESSED",EVENT_GOING_LIVE:"EVENT_GOING_LIVE",EVENT_CANCELLED:"EVENT_CANCELLED",DISPUTE_OPENED:"DISPUTE_OPENED",DISPUTE_RESOLVED:"DISPUTE_RESOLVED",KYC_APPROVED:"KYC_APPROVED",KYC_REJECTED:"KYC_REJECTED",PRODUCER_VERIFIED:"PRODUCER_VERIFIED",JOB_LISTING_NEW_INTEREST:"JOB_LISTING_NEW_INTEREST",HIRING_THREAD_NEW_MESSAGE:"HIRING_THREAD_NEW_MESSAGE"};var r=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),type:zod.z.enum(E),title:zod.z.string(),body:zod.z.string(),actionUrl:zod.z.url().optional(),actionType:zod.z.string().optional(),channels:zod.z.array(zod.z.enum(i)),isRead:zod.z.boolean(),readAt:zod.z.iso.datetime().optional(),deliveredAt:zod.z.iso.datetime().optional(),priority:zod.z.enum(o),metadata:zod.z.record(zod.z.string(),zod.z.any()).optional(),createdAt:zod.z.iso.datetime()}),e=/^ExponentPushToken\[[A-Za-z0-9_-]{18,32}\]$/,O=zod.z.object({expoPushToken:zod.z.string().regex(e),platform:zod.z.enum(["IOS","ANDROID","UNKNOWN"]),appVersion:zod.z.string().max(24).optional(),deviceLabel:zod.z.string().max(80).optional()}),_=zod.z.object({deviceId:zod.z.string(),registeredAt:zod.z.iso.datetime()});exports.a=o;exports.b=i;exports.c=E;exports.d=r;exports.e=O;exports.f=_;//# sourceMappingURL=chunk-JH2L3JHP.js.map
2
+ //# sourceMappingURL=chunk-JH2L3JHP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/notification/notification.enums.ts","../src/notification/notification.schemas.ts"],"names":["NotificationPriority","NotificationChannel","NotificationType","NotificationResponseSchema","z","EXPO_TOKEN_REGEX","RegisterPushDeviceRequestSchema","RegisterPushDeviceResponseSchema"],"mappings":"oCAAO,IAAMA,CAAAA,CAAuB,CAClC,GAAA,CAAK,KAAA,CACL,OAAQ,QAAA,CACR,IAAA,CAAM,MAAA,CACN,MAAA,CAAQ,QACV,CAAA,CAGaC,EAAsB,CACjC,MAAA,CAAQ,SACR,KAAA,CAAO,OAAA,CACP,IAAK,KAAA,CACL,IAAA,CAAM,MACR,CAAA,CAGaC,CAAAA,CAAmB,CAC9B,kBAAmB,mBAAA,CACnB,gBAAA,CAAkB,mBAClB,gBAAA,CAAkB,kBAAA,CAClB,kBAAmB,mBAAA,CACnB,iBAAA,CAAmB,mBAAA,CACnB,iBAAA,CAAmB,mBAAA,CACnB,gBAAA,CAAkB,mBAClB,gBAAA,CAAkB,kBAAA,CAClB,iBAAkB,kBAAA,CAClB,eAAA,CAAiB,kBACjB,cAAA,CAAgB,gBAAA,CAChB,gBAAA,CAAkB,kBAAA,CAClB,YAAA,CAAc,cAAA,CACd,aAAc,cAAA,CACd,iBAAA,CAAmB,oBACnB,wBAAA,CAA0B,0BAAA,CAC1B,0BAA2B,2BAC7B,MC/BaC,CAAAA,CAA6BC,KAAAA,CAAE,OAAO,CACjD,EAAA,CAAIA,MAAE,IAAA,EAAK,CACX,MAAA,CAAQA,KAAAA,CAAE,IAAA,EAAK,CACf,KAAMA,KAAAA,CAAE,IAAA,CAAKF,CAAgB,CAAA,CAC7B,KAAA,CAAOE,MAAE,MAAA,EAAO,CAChB,IAAA,CAAMA,KAAAA,CAAE,MAAA,EAAO,CACf,UAAWA,KAAAA,CAAE,GAAA,EAAI,CAAE,QAAA,EAAS,CAC5B,UAAA,CAAYA,MAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAChC,QAAA,CAAUA,KAAAA,CAAE,MAAMA,KAAAA,CAAE,IAAA,CAAKH,CAAmB,CAAC,CAAA,CAC7C,OAAQG,KAAAA,CAAE,OAAA,EAAQ,CAClB,MAAA,CAAQA,KAAAA,CAAE,GAAA,CAAI,UAAS,CAAE,QAAA,GACzB,WAAA,CAAaA,KAAAA,CAAE,IAAI,QAAA,EAAS,CAAE,QAAA,EAAS,CACvC,QAAA,CAAUA,KAAAA,CAAE,KAAKJ,CAAoB,CAAA,CACrC,SAAUI,KAAAA,CAAE,MAAA,CAAOA,MAAE,MAAA,EAAO,CAAGA,KAAAA,CAAE,GAAA,EAAK,CAAA,CAAE,UAAS,CACjD,SAAA,CAAWA,MAAE,GAAA,CAAI,QAAA,EACnB,CAAC,CAAA,CAEKC,CAAAA,CAAmB,6CAAA,CAEZC,CAAAA,CAAkCF,KAAAA,CAAE,OAAO,CACtD,aAAA,CAAeA,MAAE,MAAA,EAAO,CAAE,MAAMC,CAAgB,CAAA,CAChD,QAAA,CAAUD,KAAAA,CAAE,IAAA,CAAK,CAAC,MAAO,SAAA,CAAW,SAAS,CAAC,CAAA,CAC9C,UAAA,CAAYA,MAAE,MAAA,EAAO,CAAE,GAAA,CAAI,EAAE,CAAA,CAAE,QAAA,GAC/B,WAAA,CAAaA,KAAAA,CAAE,QAAO,CAAE,GAAA,CAAI,EAAE,CAAA,CAAE,QAAA,EAClC,CAAC,CAAA,CAEYG,CAAAA,CAAmCH,MAAE,MAAA,CAAO,CACvD,QAAA,CAAUA,KAAAA,CAAE,MAAA,EAAO,CACnB,aAAcA,KAAAA,CAAE,GAAA,CAAI,QAAA,EACtB,CAAC","file":"chunk-JH2L3JHP.js","sourcesContent":["export const NotificationPriority = {\n LOW: 'LOW',\n NORMAL: 'NORMAL',\n HIGH: 'HIGH',\n URGENT: 'URGENT',\n} as const;\nexport type NotificationPriority = (typeof NotificationPriority)[keyof typeof NotificationPriority];\n\nexport const NotificationChannel = {\n IN_APP: 'IN_APP',\n EMAIL: 'EMAIL',\n SMS: 'SMS',\n PUSH: 'PUSH',\n} as const;\nexport type NotificationChannel = (typeof NotificationChannel)[keyof typeof NotificationChannel];\n\nexport const NotificationType = {\n BOOKING_REQUESTED: 'BOOKING_REQUESTED',\n BOOKING_ACCEPTED: 'BOOKING_ACCEPTED',\n BOOKING_REJECTED: 'BOOKING_REJECTED',\n BOOKING_CONFIRMED: 'BOOKING_CONFIRMED',\n BOOKING_CANCELLED: 'BOOKING_CANCELLED',\n BOOKING_COMPLETED: 'BOOKING_COMPLETED',\n PAYMENT_RECEIVED: 'PAYMENT_RECEIVED',\n PAYOUT_PROCESSED: 'PAYOUT_PROCESSED',\n EVENT_GOING_LIVE: 'EVENT_GOING_LIVE',\n EVENT_CANCELLED: 'EVENT_CANCELLED',\n DISPUTE_OPENED: 'DISPUTE_OPENED',\n DISPUTE_RESOLVED: 'DISPUTE_RESOLVED',\n KYC_APPROVED: 'KYC_APPROVED',\n KYC_REJECTED: 'KYC_REJECTED',\n PRODUCER_VERIFIED: 'PRODUCER_VERIFIED',\n JOB_LISTING_NEW_INTEREST: 'JOB_LISTING_NEW_INTEREST',\n HIRING_THREAD_NEW_MESSAGE: 'HIRING_THREAD_NEW_MESSAGE',\n} as const;\nexport type NotificationType = (typeof NotificationType)[keyof typeof NotificationType];\n","import { z } from 'zod';\nimport { NotificationType, NotificationPriority, NotificationChannel } from './notification.enums';\n\nexport const NotificationResponseSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n type: z.enum(NotificationType),\n title: z.string(),\n body: z.string(),\n actionUrl: z.url().optional(),\n actionType: z.string().optional(),\n channels: z.array(z.enum(NotificationChannel)),\n isRead: z.boolean(),\n readAt: z.iso.datetime().optional(),\n deliveredAt: z.iso.datetime().optional(),\n priority: z.enum(NotificationPriority),\n metadata: z.record(z.string(), z.any()).optional(),\n createdAt: z.iso.datetime(),\n});\n\nconst EXPO_TOKEN_REGEX = /^ExponentPushToken\\[[A-Za-z0-9_-]{18,32}\\]$/;\n\nexport const RegisterPushDeviceRequestSchema = z.object({\n expoPushToken: z.string().regex(EXPO_TOKEN_REGEX),\n platform: z.enum(['IOS', 'ANDROID', 'UNKNOWN']),\n appVersion: z.string().max(24).optional(),\n deviceLabel: z.string().max(80).optional(),\n});\n\nexport const RegisterPushDeviceResponseSchema = z.object({\n deviceId: z.string(),\n registeredAt: z.iso.datetime(),\n});\n"]}