@livdot-tech/contracts 1.11.2 → 1.11.4

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 (52) 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 +25 -1
  4. package/dist/booking/index.d.ts +25 -1
  5. package/dist/booking/index.js +1 -1
  6. package/dist/booking/index.mjs +1 -1
  7. package/dist/chunk-35L6V26P.mjs +2 -0
  8. package/dist/chunk-35L6V26P.mjs.map +1 -0
  9. package/dist/{chunk-X6XWQGGL.js → chunk-CMQ2CLPC.js} +2 -2
  10. package/dist/{chunk-X6XWQGGL.js.map → chunk-CMQ2CLPC.js.map} +1 -1
  11. package/dist/{chunk-VJL6Z42G.js → chunk-EHIZAQ4M.js} +2 -2
  12. package/dist/{chunk-VJL6Z42G.js.map → chunk-EHIZAQ4M.js.map} +1 -1
  13. package/dist/{chunk-6SYK27ES.js → chunk-GDWQIVFG.js} +2 -2
  14. package/dist/{chunk-6SYK27ES.js.map → chunk-GDWQIVFG.js.map} +1 -1
  15. package/dist/{chunk-ESK5VMVW.mjs → chunk-IGZZCS72.mjs} +2 -2
  16. package/dist/{chunk-ESK5VMVW.mjs.map → chunk-IGZZCS72.mjs.map} +1 -1
  17. package/dist/{chunk-QG45YPMB.mjs → chunk-INCJR5IC.mjs} +2 -2
  18. package/dist/{chunk-QG45YPMB.mjs.map → chunk-INCJR5IC.mjs.map} +1 -1
  19. package/dist/{chunk-IR4E7GOJ.mjs → chunk-KZ2OWUX4.mjs} +2 -2
  20. package/dist/{chunk-IR4E7GOJ.mjs.map → chunk-KZ2OWUX4.mjs.map} +1 -1
  21. package/dist/chunk-L26MD3EM.mjs +2 -0
  22. package/dist/chunk-L26MD3EM.mjs.map +1 -0
  23. package/dist/chunk-MVQEFN65.js +2 -0
  24. package/dist/chunk-MVQEFN65.js.map +1 -0
  25. package/dist/{chunk-HJIQSHNW.js → chunk-NH4QT6YO.js} +2 -2
  26. package/dist/chunk-NH4QT6YO.js.map +1 -0
  27. package/dist/{chunk-KVUWS2EV.mjs → chunk-O4FQLJ2O.mjs} +2 -2
  28. package/dist/{chunk-KVUWS2EV.mjs.map → chunk-O4FQLJ2O.mjs.map} +1 -1
  29. package/dist/{chunk-UFQCZR62.js → chunk-Q223XBEP.js} +2 -2
  30. package/dist/{chunk-UFQCZR62.js.map → chunk-Q223XBEP.js.map} +1 -1
  31. package/dist/host/index.d.mts +4 -0
  32. package/dist/host/index.d.ts +4 -0
  33. package/dist/host/index.js +1 -1
  34. package/dist/host/index.mjs +1 -1
  35. package/dist/index.d.mts +1 -1
  36. package/dist/index.d.ts +1 -1
  37. package/dist/index.js +1 -1
  38. package/dist/index.mjs +1 -1
  39. package/dist/marketplace/index.js +1 -1
  40. package/dist/marketplace/index.mjs +1 -1
  41. package/dist/notification/index.js +1 -1
  42. package/dist/notification/index.mjs +1 -1
  43. package/dist/user/index.js +1 -1
  44. package/dist/user/index.mjs +1 -1
  45. package/package.json +1 -1
  46. package/dist/chunk-7EYZTPVS.mjs +0 -2
  47. package/dist/chunk-7EYZTPVS.mjs.map +0 -1
  48. package/dist/chunk-CS53SHRW.js +0 -2
  49. package/dist/chunk-CS53SHRW.js.map +0 -1
  50. package/dist/chunk-HJIQSHNW.js.map +0 -1
  51. package/dist/chunk-O563NPZQ.mjs +0 -2
  52. package/dist/chunk-O563NPZQ.mjs.map +0 -1
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkUFQCZR62_js=require('./chunk-UFQCZR62.js'),chunkEITXVMRX_js=require('./chunk-EITXVMRX.js'),zod=require('zod');var u=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),businessName:zod.z.string(),totalEvents:zod.z.number(),totalSpent:zod.z.number(),averageRating:zod.z.number(),defaultCurrency:zod.z.string(),description:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)),logoUrl:zod.z.url().optional(),hasPin:zod.z.boolean(),businessRegNumber:zod.z.string().optional(),taxId:zod.z.string().optional(),settlementBankCode:zod.z.string().optional(),settlementAccountNumber:zod.z.string().optional(),settlementAccountName:zod.z.string().optional(),paystackSubaccountCode:zod.z.string().optional(),createdAt:zod.z.iso.datetime()}),d=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),companyName:zod.z.string(),bio:zod.z.string(),yearsExperience:zod.z.number().optional(),experienceLevel:zod.z.enum(chunkUFQCZR62_js.h),equipmentManifest:zod.z.array(zod.z.record(zod.z.string(),zod.z.any())),serviceCategories:zod.z.array(chunkUFQCZR62_js.n),equipmentItems:zod.z.array(chunkUFQCZR62_js.n),verificationStatus:zod.z.enum(chunkUFQCZR62_js.g),averageRating:zod.z.number().positive().multipleOf(.01),totalReviews:zod.z.number(),completionRate:zod.z.number(),isAvailable:zod.z.boolean(),hasPin:zod.z.boolean(),createdAt:zod.z.iso.datetime()}),N=zod.z.object({id:zod.z.uuid(),email:zod.z.email().toLowerCase(),emailVerified:zod.z.boolean(),emailVerifiedAt:zod.z.iso.datetime().optional(),phoneNumber:zod.z.string().optional(),firstName:zod.z.string().optional(),lastName:zod.z.string().optional(),displayName:zod.z.string().optional(),avatarUrl:zod.z.url().optional(),role:zod.z.number().min(1).max(15),accountStatus:zod.z.enum(chunkUFQCZR62_js.b),kycStatus:zod.z.enum(chunkUFQCZR62_js.c),hostProfile:u.optional(),producerProfile:d.optional(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime(),eventCategory:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).optional()}),R=zod.z.object({firstName:zod.z.string().optional(),lastName:zod.z.string().optional(),displayName:zod.z.string().optional(),avatarUrl:zod.z.url().optional(),phoneNumber:zod.z.string().optional(),eventCategory:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).optional()}),v=zod.z.object({businessName:zod.z.string(),description:zod.z.string().optional(),logoUrl:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).min(1)}),C=zod.z.object({businessName:zod.z.string().min(1).max(120).optional(),description:zod.z.string().max(2e3).optional(),logoUrl:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).min(1).optional(),businessRegNumber:zod.z.string().max(64).optional(),taxId:zod.z.string().max(64).optional()}),P=zod.z.object({companyName:zod.z.string(),bio:zod.z.string(),logoUrl:zod.z.string().optional(),serviceCategoryIds:zod.z.array(zod.z.uuid()).optional(),serviceCategoryCodes:zod.z.array(zod.z.string().min(1).max(64)).optional(),equipmentItemIds:zod.z.array(zod.z.uuid()).optional(),equipmentItemCodes:zod.z.array(zod.z.string().min(1).max(64)).optional(),yearsExperience:zod.z.number(),experienceLevel:zod.z.enum(chunkUFQCZR62_js.h),minFee:zod.z.number(),maxFee:zod.z.number(),isAvailable:zod.z.boolean()}),E=zod.z.object({pin:zod.z.string().trim().regex(/^\d{4,8}$/,"pin must be 4-8 digits"),currentPin:zod.z.string().trim().regex(/^\d{4,8}$/,"currentPin must be 4-8 digits").optional()}),g=new Set(["admin","support","livdot","host","producer","system","null","undefined","me","settings","viewer","auth","events","streaming","producers","marketplace","users"]),b=zod.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(r=>!g.has(r),{message:"This display name is reserved"}),j=zod.z.object({displayName:b}).strict(),A=zod.z.object({preferredCurrency:zod.z.string().trim().toUpperCase().length(3).regex(/^[A-Z]{3}$/)}).strict(),l=zod.z.enum([chunkUFQCZR62_js.f.LIVE_ALERTS,chunkUFQCZR62_js.f.RECOMMENDATIONS,chunkUFQCZR62_js.f.EVENT_REMINDERS]),y=zod.z.object({category:l,enabled:zod.z.boolean()}),U=zod.z.object({preferences:zod.z.array(y).min(1).max(10).refine(r=>new Set(r.map(p=>p.category)).size===r.length,{message:"Duplicate category in preferences"})}).strict(),I=zod.z.object({category:zod.z.enum(chunkUFQCZR62_js.e),message:zod.z.string().trim().min(10).max(2e3)}).strict(),q=zod.z.object({id:zod.z.uuid(),email:zod.z.email(),emailVerified:zod.z.boolean(),displayName:zod.z.string().nullable(),avatarUrl:zod.z.url().nullable(),roles:zod.z.number().int(),preferredCurrency:zod.z.string(),notificationsEnabledCount:zod.z.number().int(),hasPushDevice:zod.z.boolean()}),w=zod.z.object({preferences:zod.z.record(l,zod.z.boolean())}),D=zod.z.object({id:zod.z.uuid()});exports.a=u;exports.b=d;exports.c=N;exports.d=R;exports.e=v;exports.f=C;exports.g=P;exports.h=E;exports.i=g;exports.j=b;exports.k=j;exports.l=A;exports.m=y;exports.n=U;exports.o=I;exports.p=q;exports.q=w;exports.r=D;//# sourceMappingURL=chunk-6SYK27ES.js.map
2
- //# sourceMappingURL=chunk-6SYK27ES.js.map
1
+ 'use strict';var chunkQ223XBEP_js=require('./chunk-Q223XBEP.js'),chunkEITXVMRX_js=require('./chunk-EITXVMRX.js'),zod=require('zod');var u=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),businessName:zod.z.string(),totalEvents:zod.z.number(),totalSpent:zod.z.number(),averageRating:zod.z.number(),defaultCurrency:zod.z.string(),description:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)),logoUrl:zod.z.url().optional(),hasPin:zod.z.boolean(),businessRegNumber:zod.z.string().optional(),taxId:zod.z.string().optional(),settlementBankCode:zod.z.string().optional(),settlementAccountNumber:zod.z.string().optional(),settlementAccountName:zod.z.string().optional(),paystackSubaccountCode:zod.z.string().optional(),createdAt:zod.z.iso.datetime()}),d=zod.z.object({id:zod.z.uuid(),userId:zod.z.uuid(),companyName:zod.z.string(),bio:zod.z.string(),yearsExperience:zod.z.number().optional(),experienceLevel:zod.z.enum(chunkQ223XBEP_js.h),equipmentManifest:zod.z.array(zod.z.record(zod.z.string(),zod.z.any())),serviceCategories:zod.z.array(chunkQ223XBEP_js.n),equipmentItems:zod.z.array(chunkQ223XBEP_js.n),verificationStatus:zod.z.enum(chunkQ223XBEP_js.g),averageRating:zod.z.number().positive().multipleOf(.01),totalReviews:zod.z.number(),completionRate:zod.z.number(),isAvailable:zod.z.boolean(),hasPin:zod.z.boolean(),createdAt:zod.z.iso.datetime()}),N=zod.z.object({id:zod.z.uuid(),email:zod.z.email().toLowerCase(),emailVerified:zod.z.boolean(),emailVerifiedAt:zod.z.iso.datetime().optional(),phoneNumber:zod.z.string().optional(),firstName:zod.z.string().optional(),lastName:zod.z.string().optional(),displayName:zod.z.string().optional(),avatarUrl:zod.z.url().optional(),role:zod.z.number().min(1).max(15),accountStatus:zod.z.enum(chunkQ223XBEP_js.b),kycStatus:zod.z.enum(chunkQ223XBEP_js.c),hostProfile:u.optional(),producerProfile:d.optional(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime(),eventCategory:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).optional()}),R=zod.z.object({firstName:zod.z.string().optional(),lastName:zod.z.string().optional(),displayName:zod.z.string().optional(),avatarUrl:zod.z.url().optional(),phoneNumber:zod.z.string().optional(),eventCategory:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).optional()}),v=zod.z.object({businessName:zod.z.string(),description:zod.z.string().optional(),logoUrl:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).min(1)}),C=zod.z.object({businessName:zod.z.string().min(1).max(120).optional(),description:zod.z.string().max(2e3).optional(),logoUrl:zod.z.string().optional(),category:zod.z.array(zod.z.enum(chunkEITXVMRX_js.g)).min(1).optional(),businessRegNumber:zod.z.string().max(64).optional(),taxId:zod.z.string().max(64).optional()}),P=zod.z.object({companyName:zod.z.string(),bio:zod.z.string(),logoUrl:zod.z.string().optional(),serviceCategoryIds:zod.z.array(zod.z.uuid()).optional(),serviceCategoryCodes:zod.z.array(zod.z.string().min(1).max(64)).optional(),equipmentItemIds:zod.z.array(zod.z.uuid()).optional(),equipmentItemCodes:zod.z.array(zod.z.string().min(1).max(64)).optional(),yearsExperience:zod.z.number(),experienceLevel:zod.z.enum(chunkQ223XBEP_js.h),minFee:zod.z.number(),maxFee:zod.z.number(),isAvailable:zod.z.boolean()}),E=zod.z.object({pin:zod.z.string().trim().regex(/^\d{4,8}$/,"pin must be 4-8 digits"),currentPin:zod.z.string().trim().regex(/^\d{4,8}$/,"currentPin must be 4-8 digits").optional()}),g=new Set(["admin","support","livdot","host","producer","system","null","undefined","me","settings","viewer","auth","events","streaming","producers","marketplace","users"]),b=zod.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(r=>!g.has(r),{message:"This display name is reserved"}),j=zod.z.object({displayName:b}).strict(),A=zod.z.object({preferredCurrency:zod.z.string().trim().toUpperCase().length(3).regex(/^[A-Z]{3}$/)}).strict(),l=zod.z.enum([chunkQ223XBEP_js.f.LIVE_ALERTS,chunkQ223XBEP_js.f.RECOMMENDATIONS,chunkQ223XBEP_js.f.EVENT_REMINDERS]),y=zod.z.object({category:l,enabled:zod.z.boolean()}),U=zod.z.object({preferences:zod.z.array(y).min(1).max(10).refine(r=>new Set(r.map(p=>p.category)).size===r.length,{message:"Duplicate category in preferences"})}).strict(),I=zod.z.object({category:zod.z.enum(chunkQ223XBEP_js.e),message:zod.z.string().trim().min(10).max(2e3)}).strict(),q=zod.z.object({id:zod.z.uuid(),email:zod.z.email(),emailVerified:zod.z.boolean(),displayName:zod.z.string().nullable(),avatarUrl:zod.z.url().nullable(),roles:zod.z.number().int(),preferredCurrency:zod.z.string(),notificationsEnabledCount:zod.z.number().int(),hasPushDevice:zod.z.boolean()}),w=zod.z.object({preferences:zod.z.record(l,zod.z.boolean())}),D=zod.z.object({id:zod.z.uuid()});exports.a=u;exports.b=d;exports.c=N;exports.d=R;exports.e=v;exports.f=C;exports.g=P;exports.h=E;exports.i=g;exports.j=b;exports.k=j;exports.l=A;exports.m=y;exports.n=U;exports.o=I;exports.p=q;exports.q=w;exports.r=D;//# sourceMappingURL=chunk-GDWQIVFG.js.map
2
+ //# sourceMappingURL=chunk-GDWQIVFG.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/user/user.schemas.ts"],"names":["HostProfileResponseSchema","z","EventCategory","ProducerProfileResponseSchema","ProducerExperienceLevel","PublicProducerListCategorySchema","ProducerVerificationStatus","UserResponseSchema","AccountStatus","KycStatus","UpdateUserRequestSchema","CreateHostProfileRequestSchema","UpdateHostProfileRequestSchema","CreateProducerProfileRequestSchema","SetProfilePinSchema","RESERVED_DISPLAY_NAMES","DisplayNameSchema","v","UpdateViewerProfileRequestSchema","UpdateViewerCurrencyRequestSchema","USER_CATEGORY","NotificationCategory","NotificationPreferenceItemSchema","UpdateNotificationPreferencesRequestSchema","items","i","SendFeedbackRequestSchema","FeedbackCategory","ViewerMeResponseSchema","NotificationPreferencesResponseSchema","SendFeedbackResponseSchema"],"mappings":"oIAYO,IAAMA,EAA4BC,KAAAA,CAAE,MAAA,CAAO,CAChD,EAAA,CAAIA,KAAAA,CAAE,MAAK,CACX,MAAA,CAAQA,MAAE,IAAA,EAAK,CACf,aAAcA,KAAAA,CAAE,MAAA,EAAO,CACvB,WAAA,CAAaA,KAAAA,CAAE,MAAA,GACf,UAAA,CAAYA,KAAAA,CAAE,QAAO,CACrB,aAAA,CAAeA,MAAE,MAAA,EAAO,CACxB,gBAAiBA,KAAAA,CAAE,MAAA,GACnB,WAAA,CAAaA,KAAAA,CAAE,QAAO,CAAE,QAAA,GACxB,QAAA,CAAUA,KAAAA,CAAE,KAAA,CAAMA,KAAAA,CAAE,IAAA,CAAKC,kBAAa,CAAC,CAAA,CACvC,OAAA,CAASD,MAAE,GAAA,EAAI,CAAE,UAAS,CAC1B,MAAA,CAAQA,MAAE,OAAA,EAAQ,CAClB,kBAAmBA,KAAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CACvC,MAAOA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC3B,kBAAA,CAAoBA,MAAE,MAAA,EAAO,CAAE,UAAS,CACxC,uBAAA,CAAyBA,MAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC7C,qBAAA,CAAuBA,KAAAA,CAAE,QAAO,CAAE,QAAA,GAClC,sBAAA,CAAwBA,KAAAA,CAAE,QAAO,CAAE,QAAA,EAAS,CAC5C,SAAA,CAAWA,KAAAA,CAAE,GAAA,CAAI,UACnB,CAAC,EAEYE,CAAAA,CAAgCF,KAAAA,CAAE,OAAO,CACpD,EAAA,CAAIA,MAAE,IAAA,EAAK,CACX,OAAQA,KAAAA,CAAE,IAAA,GACV,WAAA,CAAaA,KAAAA,CAAE,QAAO,CACtB,GAAA,CAAKA,KAAAA,CAAE,MAAA,EAAO,CACd,eAAA,CAAiBA,MAAE,MAAA,EAAO,CAAE,UAAS,CACrC,eAAA,CAAiBA,MAAE,IAAA,CAAKG,kBAAuB,EAC/C,iBAAA,CAAmBH,KAAAA,CAAE,MAAMA,KAAAA,CAAE,MAAA,CAAOA,MAAE,MAAA,EAAO,CAAGA,MAAE,GAAA,EAAK,CAAC,CAAA,CACxD,iBAAA,CAAmBA,KAAAA,CAAE,MAAMI,kBAAgC,CAAA,CAC3D,eAAgBJ,KAAAA,CAAE,KAAA,CAAMI,kBAAgC,CAAA,CACxD,kBAAA,CAAoBJ,MAAE,IAAA,CAAKK,kBAA0B,EACrD,aAAA,CAAeL,KAAAA,CAAE,QAAO,CAAE,QAAA,GAAW,UAAA,CAAW,GAAI,CAAA,CACpD,YAAA,CAAcA,KAAAA,CAAE,MAAA,GAChB,cAAA,CAAgBA,KAAAA,CAAE,QAAO,CACzB,WAAA,CAAaA,MAAE,OAAA,EAAQ,CACvB,MAAA,CAAQA,KAAAA,CAAE,OAAA,EAAQ,CAClB,UAAWA,KAAAA,CAAE,GAAA,CAAI,UACnB,CAAC,EAEYM,CAAAA,CAAqBN,KAAAA,CAAE,MAAA,CAAO,CACzC,EAAA,CAAIA,KAAAA,CAAE,MAAK,CACX,KAAA,CAAOA,MAAE,KAAA,EAAM,CAAE,aAAY,CAC7B,aAAA,CAAeA,MAAE,OAAA,EAAQ,CACzB,gBAAiBA,KAAAA,CAAE,GAAA,CAAI,UAAS,CAAE,QAAA,GAClC,WAAA,CAAaA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CACjC,UAAWA,KAAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAC/B,SAAUA,KAAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAC9B,YAAaA,KAAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CACjC,UAAWA,KAAAA,CAAE,GAAA,EAAI,CAAE,QAAA,EAAS,CAC5B,IAAA,CAAMA,MAAE,MAAA,EAAO,CAAE,IAAI,CAAC,CAAA,CAAE,IAAI,EAAE,CAAA,CAC9B,cAAeA,KAAAA,CAAE,IAAA,CAAKO,kBAAa,CAAA,CACnC,SAAA,CAAWP,MAAE,IAAA,CAAKQ,kBAAS,EAC3B,WAAA,CAAaT,CAAAA,CAA0B,QAAA,EAAS,CAChD,eAAA,CAAiBG,CAAAA,CAA8B,UAAS,CACxD,SAAA,CAAWF,MAAE,GAAA,CAAI,QAAA,GACjB,SAAA,CAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,EAAS,CAC1B,aAAA,CAAeA,MAAE,KAAA,CAAMA,KAAAA,CAAE,KAAKC,kBAAa,CAAC,EAAE,QAAA,EAChD,CAAC,CAAA,CAEYQ,CAAAA,CAA0BT,KAAAA,CAAE,OAAO,CAC9C,SAAA,CAAWA,MAAE,MAAA,EAAO,CAAE,UAAS,CAC/B,QAAA,CAAUA,MAAE,MAAA,EAAO,CAAE,UAAS,CAC9B,WAAA,CAAaA,MAAE,MAAA,EAAO,CAAE,UAAS,CACjC,SAAA,CAAWA,KAAAA,CAAE,GAAA,EAAI,CAAE,QAAA,GACnB,WAAA,CAAaA,KAAAA,CAAE,QAAO,CAAE,QAAA,GACxB,aAAA,CAAeA,KAAAA,CAAE,MAAMA,KAAAA,CAAE,IAAA,CAAKC,kBAAa,CAAC,CAAA,CAAE,UAChD,CAAC,EAEYS,CAAAA,CAAiCV,KAAAA,CAAE,MAAA,CAAO,CACrD,YAAA,CAAcA,KAAAA,CAAE,QAAO,CACvB,WAAA,CAAaA,MAAE,MAAA,EAAO,CAAE,UAAS,CACjC,OAAA,CAASA,MAAE,MAAA,EAAO,CAAE,UAAS,CAC7B,QAAA,CAAUA,MAAE,KAAA,CAAMA,KAAAA,CAAE,KAAKC,kBAAa,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,CAChD,CAAC,CAAA,CAEYU,CAAAA,CAAiCX,MAAE,MAAA,CAAO,CACrD,aAAcA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,IAAI,GAAG,CAAA,CAAE,UAAS,CAClD,WAAA,CAAaA,MAAE,MAAA,EAAO,CAAE,GAAA,CAAI,GAAI,CAAA,CAAE,QAAA,GAClC,OAAA,CAASA,KAAAA,CAAE,QAAO,CAAE,QAAA,GACpB,QAAA,CAAUA,KAAAA,CAAE,MAAMA,KAAAA,CAAE,IAAA,CAAKC,kBAAa,CAAC,CAAA,CAAE,IAAI,CAAC,CAAA,CAAE,UAAS,CACzD,iBAAA,CAAmBD,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,EAAE,CAAA,CAAE,QAAA,GACtC,KAAA,CAAOA,KAAAA,CAAE,QAAO,CAAE,GAAA,CAAI,EAAE,CAAA,CAAE,QAAA,EAC5B,CAAC,CAAA,CAEYY,EAAqCZ,KAAAA,CAAE,MAAA,CAAO,CACzD,WAAA,CAAaA,KAAAA,CAAE,MAAA,EAAO,CACtB,GAAA,CAAKA,KAAAA,CAAE,QAAO,CACd,OAAA,CAASA,MAAE,MAAA,EAAO,CAAE,UAAS,CAC7B,kBAAA,CAAoBA,MAAE,KAAA,CAAMA,KAAAA,CAAE,MAAM,CAAA,CAAE,UAAS,CAC/C,oBAAA,CAAsBA,MAAE,KAAA,CAAMA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,CAAC,EAAE,GAAA,CAAI,EAAE,CAAC,CAAA,CAAE,QAAA,GACzD,gBAAA,CAAkBA,KAAAA,CAAE,KAAA,CAAMA,KAAAA,CAAE,IAAA,EAAM,EAAE,QAAA,EAAS,CAC7C,mBAAoBA,KAAAA,CAAE,KAAA,CAAMA,MAAE,MAAA,EAAO,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,EAAE,CAAC,CAAA,CAAE,UAAS,CAChE,eAAA,CAAiBA,MAAE,MAAA,EAAO,CAC1B,gBAAiBA,KAAAA,CAAE,IAAA,CAAKG,kBAAuB,CAAA,CAC/C,MAAA,CAAQH,MAAE,MAAA,EAAO,CACjB,OAAQA,KAAAA,CAAE,MAAA,EAAO,CACjB,WAAA,CAAaA,KAAAA,CAAE,OAAA,EACjB,CAAC,CAAA,CAEYa,EAAsBb,KAAAA,CAAE,MAAA,CAAO,CAC1C,GAAA,CAAKA,KAAAA,CACF,QAAO,CACP,IAAA,GACA,KAAA,CAAM,WAAA,CAAa,wBAAwB,CAAA,CAC9C,UAAA,CAAYA,MACT,MAAA,EAAO,CACP,IAAA,EAAK,CACL,KAAA,CAAM,WAAA,CAAa,+BAA+B,CAAA,CAClD,QAAA,EACL,CAAC,CAAA,CAEYc,EAA8C,IAAI,GAAA,CAAI,CACjE,OAAA,CACA,SAAA,CACA,SACA,MAAA,CACA,UAAA,CACA,SACA,MAAA,CACA,WAAA,CACA,KACA,UAAA,CACA,QAAA,CACA,MAAA,CACA,QAAA,CACA,WAAA,CACA,WAAA,CACA,cACA,OACF,CAAC,EAGYC,CAAAA,CAAoBf,KAAAA,CAC9B,QAAO,CACP,IAAA,EAAK,CACL,WAAA,EAAY,CACZ,GAAA,CAAI,EAAG,4CAA4C,CAAA,CACnD,IAAI,EAAA,CAAI,4CAA4C,EACpD,KAAA,CAAM,cAAA,CAAgB,0EAA0E,CAAA,CAChG,MAAA,CAAQgB,CAAAA,EAAM,CAACF,CAAAA,CAAuB,GAAA,CAAIE,CAAC,CAAA,CAAG,CAC7C,QAAS,+BACX,CAAC,EAEUC,CAAAA,CAAmCjB,KAAAA,CAC7C,OAAO,CACN,WAAA,CAAae,CACf,CAAC,CAAA,CACA,QAAO,CAEGG,CAAAA,CAAoClB,KAAAA,CAC9C,MAAA,CAAO,CACN,iBAAA,CAAmBA,MAChB,MAAA,EAAO,CACP,MAAK,CACL,WAAA,GACA,MAAA,CAAO,CAAC,EACR,KAAA,CAAM,YAAY,CACvB,CAAC,CAAA,CACA,QAAO,CACJmB,CAAAA,CAAgBnB,MAAE,IAAA,CAAK,CAC3BoB,kBAAAA,CAAqB,WAAA,CACrBA,kBAAAA,CAAqB,eAAA,CACrBA,mBAAqB,eACvB,CAAC,EAEYC,CAAAA,CAAmCrB,KAAAA,CAAE,OAAO,CACvD,QAAA,CAAUmB,EACV,OAAA,CAASnB,KAAAA,CAAE,SACb,CAAC,EAEYsB,CAAAA,CAA6CtB,KAAAA,CACvD,OAAO,CACN,WAAA,CAAaA,KAAAA,CACV,KAAA,CAAMqB,CAAgC,CAAA,CACtC,IAAI,CAAC,CAAA,CACL,IAAI,EAAE,CAAA,CACN,OAAQE,CAAAA,EAAU,IAAI,GAAA,CAAIA,CAAAA,CAAM,GAAA,CAAKC,CAAAA,EAAMA,EAAE,QAAQ,CAAC,EAAE,IAAA,GAASD,CAAAA,CAAM,OAAQ,CAC9E,OAAA,CAAS,mCACX,CAAC,CACL,CAAC,EACA,MAAA,EAAO,CAEGE,EAA4BzB,KAAAA,CACtC,MAAA,CAAO,CACN,QAAA,CAAUA,KAAAA,CAAE,KAAK0B,kBAAgB,CAAA,CACjC,QAAS1B,KAAAA,CAAE,MAAA,GAAS,IAAA,EAAK,CAAE,IAAI,EAAE,CAAA,CAAE,GAAA,CAAI,GAAI,CAC7C,CAAC,EACA,MAAA,EAAO,CAEG2B,EAAyB3B,KAAAA,CAAE,MAAA,CAAO,CAC7C,EAAA,CAAIA,KAAAA,CAAE,IAAA,EAAK,CACX,KAAA,CAAOA,KAAAA,CAAE,OAAM,CACf,aAAA,CAAeA,MAAE,OAAA,EAAQ,CACzB,YAAaA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CACjC,SAAA,CAAWA,MAAE,GAAA,EAAI,CAAE,UAAS,CAC5B,KAAA,CAAOA,MAAE,MAAA,EAAO,CAAE,KAAI,CACtB,iBAAA,CAAmBA,MAAE,MAAA,EAAO,CAC5B,0BAA2BA,KAAAA,CAAE,MAAA,GAAS,GAAA,EAAI,CAC1C,aAAA,CAAeA,KAAAA,CAAE,OAAA,EACnB,CAAC,CAAA,CAEY4B,CAAAA,CAAwC5B,MAAE,MAAA,CAAO,CAC5D,YAAaA,KAAAA,CAAE,MAAA,CAAOmB,CAAAA,CAAenB,KAAAA,CAAE,OAAA,EAAS,CAClD,CAAC,CAAA,CAEY6B,EAA6B7B,KAAAA,CAAE,MAAA,CAAO,CACjD,EAAA,CAAIA,KAAAA,CAAE,IAAA,EACR,CAAC","file":"chunk-6SYK27ES.js","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 hasPin: z.boolean(),\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 equipmentItems: 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 hasPin: 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 eventCategory: z.array(z.enum(EventCategory)).optional(),\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});\n\nexport const UpdateHostProfileRequestSchema = z.object({\n businessName: z.string().min(1).max(120).optional(),\n description: z.string().max(2000).optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1).optional(),\n businessRegNumber: z.string().max(64).optional(),\n taxId: z.string().max(64).optional(),\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 equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: 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 isAvailable: z.boolean(),\n});\n\nexport const SetProfilePinSchema = z.object({\n pin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'pin must be 4-8 digits'),\n currentPin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'currentPin must be 4-8 digits')\n .optional(),\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();\nconst USER_CATEGORY = z.enum([\n NotificationCategory.LIVE_ALERTS,\n NotificationCategory.RECOMMENDATIONS,\n NotificationCategory.EVENT_REMINDERS,\n]);\n\nexport const NotificationPreferenceItemSchema = z.object({\n category: USER_CATEGORY,\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 hasPushDevice: z.boolean(),\n});\n\nexport const NotificationPreferencesResponseSchema = z.object({\n preferences: z.record(USER_CATEGORY, z.boolean()),\n});\n\nexport const SendFeedbackResponseSchema = z.object({\n id: z.uuid(),\n});\n"]}
1
+ {"version":3,"sources":["../src/user/user.schemas.ts"],"names":["HostProfileResponseSchema","z","EventCategory","ProducerProfileResponseSchema","ProducerExperienceLevel","PublicProducerListCategorySchema","ProducerVerificationStatus","UserResponseSchema","AccountStatus","KycStatus","UpdateUserRequestSchema","CreateHostProfileRequestSchema","UpdateHostProfileRequestSchema","CreateProducerProfileRequestSchema","SetProfilePinSchema","RESERVED_DISPLAY_NAMES","DisplayNameSchema","v","UpdateViewerProfileRequestSchema","UpdateViewerCurrencyRequestSchema","USER_CATEGORY","NotificationCategory","NotificationPreferenceItemSchema","UpdateNotificationPreferencesRequestSchema","items","i","SendFeedbackRequestSchema","FeedbackCategory","ViewerMeResponseSchema","NotificationPreferencesResponseSchema","SendFeedbackResponseSchema"],"mappings":"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","file":"chunk-GDWQIVFG.js","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 hasPin: z.boolean(),\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 equipmentItems: 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 hasPin: 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 eventCategory: z.array(z.enum(EventCategory)).optional(),\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});\n\nexport const UpdateHostProfileRequestSchema = z.object({\n businessName: z.string().min(1).max(120).optional(),\n description: z.string().max(2000).optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1).optional(),\n businessRegNumber: z.string().max(64).optional(),\n taxId: z.string().max(64).optional(),\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 equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: 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 isAvailable: z.boolean(),\n});\n\nexport const SetProfilePinSchema = z.object({\n pin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'pin must be 4-8 digits'),\n currentPin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'currentPin must be 4-8 digits')\n .optional(),\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();\nconst USER_CATEGORY = z.enum([\n NotificationCategory.LIVE_ALERTS,\n NotificationCategory.RECOMMENDATIONS,\n NotificationCategory.EVENT_REMINDERS,\n]);\n\nexport const NotificationPreferenceItemSchema = z.object({\n category: USER_CATEGORY,\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 hasPushDevice: z.boolean(),\n});\n\nexport const NotificationPreferencesResponseSchema = z.object({\n preferences: z.record(USER_CATEGORY, z.boolean()),\n});\n\nexport const SendFeedbackResponseSchema = z.object({\n id: z.uuid(),\n});\n"]}
@@ -1,2 +1,2 @@
1
- import {g as g$2,n,h,c,b as b$1,f,e}from'./chunk-IR4E7GOJ.mjs';import {g as g$1}from'./chunk-YIHYVYZT.mjs';import {z}from'zod';var u=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(),hasPin:z.boolean(),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()}),d=z.object({id:z.uuid(),userId:z.uuid(),companyName:z.string(),bio:z.string(),yearsExperience:z.number().optional(),experienceLevel:z.enum(h),equipmentManifest:z.array(z.record(z.string(),z.any())),serviceCategories:z.array(n),equipmentItems:z.array(n),verificationStatus:z.enum(g$2),averageRating:z.number().positive().multipleOf(.01),totalReviews:z.number(),completionRate:z.number(),isAvailable:z.boolean(),hasPin:z.boolean(),createdAt:z.iso.datetime()}),N=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:u.optional(),producerProfile:d.optional(),createdAt:z.iso.datetime(),updatedAt:z.iso.datetime(),eventCategory:z.array(z.enum(g$1)).optional()}),R=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()}),v=z.object({businessName:z.string(),description:z.string().optional(),logoUrl:z.string().optional(),category:z.array(z.enum(g$1)).min(1)}),C=z.object({businessName:z.string().min(1).max(120).optional(),description:z.string().max(2e3).optional(),logoUrl:z.string().optional(),category:z.array(z.enum(g$1)).min(1).optional(),businessRegNumber:z.string().max(64).optional(),taxId:z.string().max(64).optional()}),P=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(),equipmentItemIds:z.array(z.uuid()).optional(),equipmentItemCodes:z.array(z.string().min(1).max(64)).optional(),yearsExperience:z.number(),experienceLevel:z.enum(h),minFee:z.number(),maxFee:z.number(),isAvailable:z.boolean()}),E=z.object({pin:z.string().trim().regex(/^\d{4,8}$/,"pin must be 4-8 digits"),currentPin:z.string().trim().regex(/^\d{4,8}$/,"currentPin must be 4-8 digits").optional()}),g=new Set(["admin","support","livdot","host","producer","system","null","undefined","me","settings","viewer","auth","events","streaming","producers","marketplace","users"]),b=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(r=>!g.has(r),{message:"This display name is reserved"}),j=z.object({displayName:b}).strict(),A=z.object({preferredCurrency:z.string().trim().toUpperCase().length(3).regex(/^[A-Z]{3}$/)}).strict(),l=z.enum([f.LIVE_ALERTS,f.RECOMMENDATIONS,f.EVENT_REMINDERS]),y=z.object({category:l,enabled:z.boolean()}),U=z.object({preferences:z.array(y).min(1).max(10).refine(r=>new Set(r.map(p=>p.category)).size===r.length,{message:"Duplicate category in preferences"})}).strict(),I=z.object({category:z.enum(e),message:z.string().trim().min(10).max(2e3)}).strict(),q=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(),hasPushDevice:z.boolean()}),w=z.object({preferences:z.record(l,z.boolean())}),D=z.object({id:z.uuid()});export{u as a,d as b,N as c,R as d,v as e,C as f,P as g,E as h,g as i,b as j,j as k,A as l,y as m,U as n,I as o,q as p,w as q,D as r};//# sourceMappingURL=chunk-ESK5VMVW.mjs.map
2
- //# sourceMappingURL=chunk-ESK5VMVW.mjs.map
1
+ import {g as g$2,n,h,c,b as b$1,f,e}from'./chunk-KZ2OWUX4.mjs';import {g as g$1}from'./chunk-YIHYVYZT.mjs';import {z}from'zod';var u=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(),hasPin:z.boolean(),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()}),d=z.object({id:z.uuid(),userId:z.uuid(),companyName:z.string(),bio:z.string(),yearsExperience:z.number().optional(),experienceLevel:z.enum(h),equipmentManifest:z.array(z.record(z.string(),z.any())),serviceCategories:z.array(n),equipmentItems:z.array(n),verificationStatus:z.enum(g$2),averageRating:z.number().positive().multipleOf(.01),totalReviews:z.number(),completionRate:z.number(),isAvailable:z.boolean(),hasPin:z.boolean(),createdAt:z.iso.datetime()}),N=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:u.optional(),producerProfile:d.optional(),createdAt:z.iso.datetime(),updatedAt:z.iso.datetime(),eventCategory:z.array(z.enum(g$1)).optional()}),R=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()}),v=z.object({businessName:z.string(),description:z.string().optional(),logoUrl:z.string().optional(),category:z.array(z.enum(g$1)).min(1)}),C=z.object({businessName:z.string().min(1).max(120).optional(),description:z.string().max(2e3).optional(),logoUrl:z.string().optional(),category:z.array(z.enum(g$1)).min(1).optional(),businessRegNumber:z.string().max(64).optional(),taxId:z.string().max(64).optional()}),P=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(),equipmentItemIds:z.array(z.uuid()).optional(),equipmentItemCodes:z.array(z.string().min(1).max(64)).optional(),yearsExperience:z.number(),experienceLevel:z.enum(h),minFee:z.number(),maxFee:z.number(),isAvailable:z.boolean()}),E=z.object({pin:z.string().trim().regex(/^\d{4,8}$/,"pin must be 4-8 digits"),currentPin:z.string().trim().regex(/^\d{4,8}$/,"currentPin must be 4-8 digits").optional()}),g=new Set(["admin","support","livdot","host","producer","system","null","undefined","me","settings","viewer","auth","events","streaming","producers","marketplace","users"]),b=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(r=>!g.has(r),{message:"This display name is reserved"}),j=z.object({displayName:b}).strict(),A=z.object({preferredCurrency:z.string().trim().toUpperCase().length(3).regex(/^[A-Z]{3}$/)}).strict(),l=z.enum([f.LIVE_ALERTS,f.RECOMMENDATIONS,f.EVENT_REMINDERS]),y=z.object({category:l,enabled:z.boolean()}),U=z.object({preferences:z.array(y).min(1).max(10).refine(r=>new Set(r.map(p=>p.category)).size===r.length,{message:"Duplicate category in preferences"})}).strict(),I=z.object({category:z.enum(e),message:z.string().trim().min(10).max(2e3)}).strict(),q=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(),hasPushDevice:z.boolean()}),w=z.object({preferences:z.record(l,z.boolean())}),D=z.object({id:z.uuid()});export{u as a,d as b,N as c,R as d,v as e,C as f,P as g,E as h,g as i,b as j,j as k,A as l,y as m,U as n,I as o,q as p,w as q,D as r};//# sourceMappingURL=chunk-IGZZCS72.mjs.map
2
+ //# sourceMappingURL=chunk-IGZZCS72.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/user/user.schemas.ts"],"names":["HostProfileResponseSchema","z","EventCategory","ProducerProfileResponseSchema","ProducerExperienceLevel","PublicProducerListCategorySchema","ProducerVerificationStatus","UserResponseSchema","AccountStatus","KycStatus","UpdateUserRequestSchema","CreateHostProfileRequestSchema","UpdateHostProfileRequestSchema","CreateProducerProfileRequestSchema","SetProfilePinSchema","RESERVED_DISPLAY_NAMES","DisplayNameSchema","v","UpdateViewerProfileRequestSchema","UpdateViewerCurrencyRequestSchema","USER_CATEGORY","NotificationCategory","NotificationPreferenceItemSchema","UpdateNotificationPreferencesRequestSchema","items","i","SendFeedbackRequestSchema","FeedbackCategory","ViewerMeResponseSchema","NotificationPreferencesResponseSchema","SendFeedbackResponseSchema"],"mappings":"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","file":"chunk-ESK5VMVW.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 hasPin: z.boolean(),\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 equipmentItems: 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 hasPin: 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 eventCategory: z.array(z.enum(EventCategory)).optional(),\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});\n\nexport const UpdateHostProfileRequestSchema = z.object({\n businessName: z.string().min(1).max(120).optional(),\n description: z.string().max(2000).optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1).optional(),\n businessRegNumber: z.string().max(64).optional(),\n taxId: z.string().max(64).optional(),\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 equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: 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 isAvailable: z.boolean(),\n});\n\nexport const SetProfilePinSchema = z.object({\n pin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'pin must be 4-8 digits'),\n currentPin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'currentPin must be 4-8 digits')\n .optional(),\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();\nconst USER_CATEGORY = z.enum([\n NotificationCategory.LIVE_ALERTS,\n NotificationCategory.RECOMMENDATIONS,\n NotificationCategory.EVENT_REMINDERS,\n]);\n\nexport const NotificationPreferenceItemSchema = z.object({\n category: USER_CATEGORY,\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 hasPushDevice: z.boolean(),\n});\n\nexport const NotificationPreferencesResponseSchema = z.object({\n preferences: z.record(USER_CATEGORY, z.boolean()),\n});\n\nexport const SendFeedbackResponseSchema = z.object({\n id: z.uuid(),\n});\n"]}
1
+ {"version":3,"sources":["../src/user/user.schemas.ts"],"names":["HostProfileResponseSchema","z","EventCategory","ProducerProfileResponseSchema","ProducerExperienceLevel","PublicProducerListCategorySchema","ProducerVerificationStatus","UserResponseSchema","AccountStatus","KycStatus","UpdateUserRequestSchema","CreateHostProfileRequestSchema","UpdateHostProfileRequestSchema","CreateProducerProfileRequestSchema","SetProfilePinSchema","RESERVED_DISPLAY_NAMES","DisplayNameSchema","v","UpdateViewerProfileRequestSchema","UpdateViewerCurrencyRequestSchema","USER_CATEGORY","NotificationCategory","NotificationPreferenceItemSchema","UpdateNotificationPreferencesRequestSchema","items","i","SendFeedbackRequestSchema","FeedbackCategory","ViewerMeResponseSchema","NotificationPreferencesResponseSchema","SendFeedbackResponseSchema"],"mappings":"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","file":"chunk-IGZZCS72.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 hasPin: z.boolean(),\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 equipmentItems: 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 hasPin: 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 eventCategory: z.array(z.enum(EventCategory)).optional(),\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});\n\nexport const UpdateHostProfileRequestSchema = z.object({\n businessName: z.string().min(1).max(120).optional(),\n description: z.string().max(2000).optional(),\n logoUrl: z.string().optional(),\n category: z.array(z.enum(EventCategory)).min(1).optional(),\n businessRegNumber: z.string().max(64).optional(),\n taxId: z.string().max(64).optional(),\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 equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: 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 isAvailable: z.boolean(),\n});\n\nexport const SetProfilePinSchema = z.object({\n pin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'pin must be 4-8 digits'),\n currentPin: z\n .string()\n .trim()\n .regex(/^\\d{4,8}$/, 'currentPin must be 4-8 digits')\n .optional(),\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();\nconst USER_CATEGORY = z.enum([\n NotificationCategory.LIVE_ALERTS,\n NotificationCategory.RECOMMENDATIONS,\n NotificationCategory.EVENT_REMINDERS,\n]);\n\nexport const NotificationPreferenceItemSchema = z.object({\n category: USER_CATEGORY,\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 hasPushDevice: z.boolean(),\n});\n\nexport const NotificationPreferencesResponseSchema = z.object({\n preferences: z.record(USER_CATEGORY, 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-IR4E7GOJ.mjs';import r,{z}from'zod';var s={GOOGLE:"GOOGLE",APPLE:"APPLE",FACEBOOK:"FACEBOOK",TWITTER:"TWITTER"},i={EMAIL_MATCH:"email_match",EMAIL_MISS:"email_missing"},u={SIGNED_IN:"signed_in",SIGNED_UP:"signed_up",LINK_REQUIRED:"link_required"};var d=new RegExp("^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~]).{8,}$"),c="Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.",n=z.string().min(8,c).regex(d,c),f=z.object({email:z.email().toLowerCase(),password:n,firstName:z.string(),lastName:z.string(),role:z.enum(a$1).optional()}),S=z.object({username:z.string(),reference:z.string(),role:z.enum(a$1).optional()}),b=z.object({email:z.email().toLowerCase(),password:n,role:z.enum(a$1).optional()}),E=z.object({otp:z.string().length(4),reference:z.string(),type:z.enum(["registration","passwordReset"])}),y=z.object({reference:z.string(),type:z.enum(["registration","passwordReset"])}),T=z.object({isValid:z.boolean(),message:z.string(),reference:z.string().optional()}),C=z.object({AccessToken:z.string(),RefreshToken:z.string(),IdToken:z.string(),ExpiresIn:z.number(),TokenType:z.literal("Bearer"),availableRoles:z.array(z.enum(a$1)),lastActiveRole:z.enum(a$1).nullable()}),A=z.object({role:z.enum(a$1)}),k=z.object({lastActiveRole:z.enum(a$1)}),j=z.object({refreshToken:z.string()}),O=z.object({refreshToken:z.string(),accessToken:z.string()}),L=z.object({email:z.email().toLowerCase()}),P=z.object({destination:z.string(),deliveryMedium:z.string(),attributeName:z.string()}),w=z.object({token:z.string(),newPassword:n}),I=z.object({currentPassword:n,newPassword:n}),_=z.object({redirectTo:z.string().min(1).max(2048).optional()}),q=z.object({authorizeUrl:z.url()}),v=z.object({handoff:z.string().min(16).max(128)}),N=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()}),M=z.object({linkHandoff:z.string().min(16).max(128),password:n.optional(),otpReference:z.string().min(1).max(128).optional(),otp:z.string().length(4).optional()}).refine(o=>o.password?true:o.otpReference&&o.otp,"either `password` OR (`otpReference` AND `otp`) must be provided"),D=z.object({linkHandoff:z.string().min(16).max(128)}),F=z.object({kind:z.literal("link_required"),reason:z.enum(i),linkHandoff:z.string(),maskedEmail:z.string(),hasPassword:z.boolean(),provider:z.enum(s)}),B=z.object({otpReference:z.string()}),l=z.object({name:z.enum(s),enabled:z.boolean(),canSignUp:z.boolean()}),U=z.object({providers:z.array(l)}),G=z.object({linkHandoff:z.string().min(16).max(128),email:z.email().max(320)}),V=z.object({password:n}),W=z.object({reauthToken:z.string(),expiresAt:z.iso.datetime()});var p={WITHDRAW:"WITHDRAW",CANCEL_EVENT:"CANCEL_EVENT",END_LIVE:"END_LIVE",DISABLE_MFA:"DISABLE_MFA",UPDATE_SETTLEMENT_ACCOUNT:"UPDATE_SETTLEMENT_ACCOUNT"};var a=r.string().trim().regex(/^\d{6}$/,"totpCode must be 6 digits"),m=r.string().trim().regex(/^[A-Za-z0-9-]{10,12}$/,"recoveryCode is malformed"),Q=r.object({totpCode:a}),Z=r.object({totpCode:a.optional(),recoveryCode:m.optional()}).refine(o=>!!o.totpCode!=!!o.recoveryCode,"Provide exactly one of totpCode or recoveryCode"),X=r.object({action:r.enum(p)}),J=r.object({challengeToken:r.string().min(16,"challengeToken is required"),totpCode:a.optional(),recoveryCode:m.optional()}).refine(o=>!!o.totpCode!=!!o.recoveryCode,"Provide exactly one of totpCode or recoveryCode");export{B as A,l as B,U as C,G as D,V as E,W as F,p as G,a as H,m as I,Q as J,Z as K,X as L,J as M,s as a,i as b,u as c,n as d,f as e,S as f,b as g,E as h,y as i,T as j,C as k,A as l,k as m,j as n,O as o,L as p,P as q,w as r,I as s,_ as t,q as u,v,N as w,M as x,D as y,F as z};//# sourceMappingURL=chunk-QG45YPMB.mjs.map
2
- //# sourceMappingURL=chunk-QG45YPMB.mjs.map
1
+ import {a as a$1}from'./chunk-KZ2OWUX4.mjs';import r,{z}from'zod';var s={GOOGLE:"GOOGLE",APPLE:"APPLE",FACEBOOK:"FACEBOOK",TWITTER:"TWITTER"},i={EMAIL_MATCH:"email_match",EMAIL_MISS:"email_missing"},u={SIGNED_IN:"signed_in",SIGNED_UP:"signed_up",LINK_REQUIRED:"link_required"};var d=new RegExp("^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[ !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~]).{8,}$"),c="Password must be at least 8 characters and include an uppercase letter, a lowercase letter, a number, and a special character.",n=z.string().min(8,c).regex(d,c),f=z.object({email:z.email().toLowerCase(),password:n,firstName:z.string(),lastName:z.string(),role:z.enum(a$1).optional()}),S=z.object({username:z.string(),reference:z.string(),role:z.enum(a$1).optional()}),b=z.object({email:z.email().toLowerCase(),password:n,role:z.enum(a$1).optional()}),E=z.object({otp:z.string().length(4),reference:z.string(),type:z.enum(["registration","passwordReset"])}),y=z.object({reference:z.string(),type:z.enum(["registration","passwordReset"])}),T=z.object({isValid:z.boolean(),message:z.string(),reference:z.string().optional()}),C=z.object({AccessToken:z.string(),RefreshToken:z.string(),IdToken:z.string(),ExpiresIn:z.number(),TokenType:z.literal("Bearer"),availableRoles:z.array(z.enum(a$1)),lastActiveRole:z.enum(a$1).nullable()}),A=z.object({role:z.enum(a$1)}),k=z.object({lastActiveRole:z.enum(a$1)}),j=z.object({refreshToken:z.string()}),O=z.object({refreshToken:z.string(),accessToken:z.string()}),L=z.object({email:z.email().toLowerCase()}),P=z.object({destination:z.string(),deliveryMedium:z.string(),attributeName:z.string()}),w=z.object({token:z.string(),newPassword:n}),I=z.object({currentPassword:n,newPassword:n}),_=z.object({redirectTo:z.string().min(1).max(2048).optional()}),q=z.object({authorizeUrl:z.url()}),v=z.object({handoff:z.string().min(16).max(128)}),N=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()}),M=z.object({linkHandoff:z.string().min(16).max(128),password:n.optional(),otpReference:z.string().min(1).max(128).optional(),otp:z.string().length(4).optional()}).refine(o=>o.password?true:o.otpReference&&o.otp,"either `password` OR (`otpReference` AND `otp`) must be provided"),D=z.object({linkHandoff:z.string().min(16).max(128)}),F=z.object({kind:z.literal("link_required"),reason:z.enum(i),linkHandoff:z.string(),maskedEmail:z.string(),hasPassword:z.boolean(),provider:z.enum(s)}),B=z.object({otpReference:z.string()}),l=z.object({name:z.enum(s),enabled:z.boolean(),canSignUp:z.boolean()}),U=z.object({providers:z.array(l)}),G=z.object({linkHandoff:z.string().min(16).max(128),email:z.email().max(320)}),V=z.object({password:n}),W=z.object({reauthToken:z.string(),expiresAt:z.iso.datetime()});var p={WITHDRAW:"WITHDRAW",CANCEL_EVENT:"CANCEL_EVENT",END_LIVE:"END_LIVE",DISABLE_MFA:"DISABLE_MFA",UPDATE_SETTLEMENT_ACCOUNT:"UPDATE_SETTLEMENT_ACCOUNT"};var a=r.string().trim().regex(/^\d{6}$/,"totpCode must be 6 digits"),m=r.string().trim().regex(/^[A-Za-z0-9-]{10,12}$/,"recoveryCode is malformed"),Q=r.object({totpCode:a}),Z=r.object({totpCode:a.optional(),recoveryCode:m.optional()}).refine(o=>!!o.totpCode!=!!o.recoveryCode,"Provide exactly one of totpCode or recoveryCode"),X=r.object({action:r.enum(p)}),J=r.object({challengeToken:r.string().min(16,"challengeToken is required"),totpCode:a.optional(),recoveryCode:m.optional()}).refine(o=>!!o.totpCode!=!!o.recoveryCode,"Provide exactly one of totpCode or recoveryCode");export{B as A,l as B,U as C,G as D,V as E,W as F,p as G,a as H,m as I,Q as J,Z as K,X as L,J as M,s as a,i as b,u as c,n as d,f as e,S as f,b as g,E as h,y as i,T as j,C as k,A as l,k as m,j as n,O as o,L as p,P as q,w as r,I as s,_ as t,q as u,v,N as w,M as x,D as y,F as z};//# sourceMappingURL=chunk-INCJR5IC.mjs.map
2
+ //# sourceMappingURL=chunk-INCJR5IC.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/auth/auth.enums.ts","../src/auth/auth.schemas.ts","../src/auth/mfa.enums.ts","../src/auth/mfa.schemas.ts"],"names":["IdentityProvider","LinkRequiredReasonEnum","OauthResolveKind","PASSWORD_REGEX","PASSWORD_MESSAGE","PasswordSchema","z","RegisterRequestSchema","UserRole","RegisterResponseSchema","LoginRequestSchema","VerifyOtpRequestSchema","ResendOtpRequestSchema","VerifyOtpResponseSchema","LoginResponseSchema","SwitchProfileRequestSchema","SwitchProfileResponseSchema","RefreshTokenRequestSchema","LogoutRequestSchema","ForgotPasswordRequestSchema","ForgotPasswordResponseSchema","ResetPasswordRequestSchema","ChangePasswordRequestSchema","OauthStartQuerySchema","OauthStartResponseSchema","OauthExchangeRequestSchema","OauthDirectTokenRequestSchema","OauthLinkCompleteRequestSchema","v","OauthLinkSendOtpRequestSchema","LinkRequiredResponseSchema","OauthLinkSendOtpResponseSchema","ProvidersListItemSchema","ProvidersListResponseSchema","OauthLinkCompleteEmailRequestSchema","ConfirmPasswordSchema","ReauthTokenResponseSchema","MFA_ACTIONS","TotpCodeSchema","RecoveryCodeSchema","EnableMfaBodySchema","DisableMfaBodySchema","MfaChallengeBodySchema","MfaVerifyBodySchema"],"mappings":"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","file":"chunk-QG45YPMB.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 /** The user's roles bitmask decomposed into an array of UserRole values. */\n availableRoles: z.array(z.enum(UserRole)),\n /** The role the user was last active as, or null on first login / never-switched. */\n lastActiveRole: z.enum(UserRole).nullable(),\n});\n\n/**\n * Zod schema for switch profile request.\n */\nexport const SwitchProfileRequestSchema = z.object({\n role: z.enum(UserRole),\n});\n\n/**\n * Zod schema for switch profile response.\n */\nexport const SwitchProfileResponseSchema = z.object({\n lastActiveRole: z.enum(UserRole),\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","export const MFA_ACTIONS = {\n WITHDRAW: 'WITHDRAW',\n CANCEL_EVENT: 'CANCEL_EVENT',\n END_LIVE: 'END_LIVE',\n DISABLE_MFA: 'DISABLE_MFA',\n UPDATE_SETTLEMENT_ACCOUNT: 'UPDATE_SETTLEMENT_ACCOUNT',\n} as const;\n\nexport type MfaAction = (typeof MFA_ACTIONS)[keyof typeof MFA_ACTIONS];\n","import z from 'zod';\nimport { MFA_ACTIONS } from './mfa.enums';\n\nexport const TotpCodeSchema = z\n .string()\n .trim()\n .regex(/^\\d{6}$/, 'totpCode must be 6 digits');\n\nexport const RecoveryCodeSchema = z\n .string()\n .trim()\n .regex(/^[A-Za-z0-9-]{10,12}$/, 'recoveryCode is malformed');\n\nexport const EnableMfaBodySchema = z.object({\n totpCode: TotpCodeSchema,\n});\n\nexport const DisableMfaBodySchema = z\n .object({\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n\nexport const MfaChallengeBodySchema = z.object({\n action: z.enum(MFA_ACTIONS),\n});\n\nexport const MfaVerifyBodySchema = z\n .object({\n challengeToken: z.string().min(16, 'challengeToken is required'),\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n"]}
1
+ {"version":3,"sources":["../src/auth/auth.enums.ts","../src/auth/auth.schemas.ts","../src/auth/mfa.enums.ts","../src/auth/mfa.schemas.ts"],"names":["IdentityProvider","LinkRequiredReasonEnum","OauthResolveKind","PASSWORD_REGEX","PASSWORD_MESSAGE","PasswordSchema","z","RegisterRequestSchema","UserRole","RegisterResponseSchema","LoginRequestSchema","VerifyOtpRequestSchema","ResendOtpRequestSchema","VerifyOtpResponseSchema","LoginResponseSchema","SwitchProfileRequestSchema","SwitchProfileResponseSchema","RefreshTokenRequestSchema","LogoutRequestSchema","ForgotPasswordRequestSchema","ForgotPasswordResponseSchema","ResetPasswordRequestSchema","ChangePasswordRequestSchema","OauthStartQuerySchema","OauthStartResponseSchema","OauthExchangeRequestSchema","OauthDirectTokenRequestSchema","OauthLinkCompleteRequestSchema","v","OauthLinkSendOtpRequestSchema","LinkRequiredResponseSchema","OauthLinkSendOtpResponseSchema","ProvidersListItemSchema","ProvidersListResponseSchema","OauthLinkCompleteEmailRequestSchema","ConfirmPasswordSchema","ReauthTokenResponseSchema","MFA_ACTIONS","TotpCodeSchema","RecoveryCodeSchema","EnableMfaBodySchema","DisableMfaBodySchema","MfaChallengeBodySchema","MfaVerifyBodySchema"],"mappings":"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","file":"chunk-INCJR5IC.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 /** The user's roles bitmask decomposed into an array of UserRole values. */\n availableRoles: z.array(z.enum(UserRole)),\n /** The role the user was last active as, or null on first login / never-switched. */\n lastActiveRole: z.enum(UserRole).nullable(),\n});\n\n/**\n * Zod schema for switch profile request.\n */\nexport const SwitchProfileRequestSchema = z.object({\n role: z.enum(UserRole),\n});\n\n/**\n * Zod schema for switch profile response.\n */\nexport const SwitchProfileResponseSchema = z.object({\n lastActiveRole: z.enum(UserRole),\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","export const MFA_ACTIONS = {\n WITHDRAW: 'WITHDRAW',\n CANCEL_EVENT: 'CANCEL_EVENT',\n END_LIVE: 'END_LIVE',\n DISABLE_MFA: 'DISABLE_MFA',\n UPDATE_SETTLEMENT_ACCOUNT: 'UPDATE_SETTLEMENT_ACCOUNT',\n} as const;\n\nexport type MfaAction = (typeof MFA_ACTIONS)[keyof typeof MFA_ACTIONS];\n","import z from 'zod';\nimport { MFA_ACTIONS } from './mfa.enums';\n\nexport const TotpCodeSchema = z\n .string()\n .trim()\n .regex(/^\\d{6}$/, 'totpCode must be 6 digits');\n\nexport const RecoveryCodeSchema = z\n .string()\n .trim()\n .regex(/^[A-Za-z0-9-]{10,12}$/, 'recoveryCode is malformed');\n\nexport const EnableMfaBodySchema = z.object({\n totpCode: TotpCodeSchema,\n});\n\nexport const DisableMfaBodySchema = z\n .object({\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n\nexport const MfaChallengeBodySchema = z.object({\n action: z.enum(MFA_ACTIONS),\n});\n\nexport const MfaVerifyBodySchema = z\n .object({\n challengeToken: z.string().min(16, 'challengeToken is required'),\n totpCode: TotpCodeSchema.optional(),\n recoveryCode: RecoveryCodeSchema.optional(),\n })\n .refine(\n (v) => !!v.totpCode !== !!v.recoveryCode,\n 'Provide exactly one of totpCode or recoveryCode',\n );\n"]}
@@ -1,2 +1,2 @@
1
- import {c as c$1}from'./chunk-O563NPZQ.mjs';import {g}from'./chunk-PAUYI2FU.mjs';import {z as z$1}from'zod';var o={NGN:"NGN"},I={SOUND:"sound",LIGHTING:"lighting",VIDEO:"video",STAGING:"staging",AV:"av",LOGISTICS:"logistics"},i={AUDIO:"audio",VIDEO:"video",LIGHTING:"lighting",STAGING:"staging",POWER:"power",OTHER:"other"};var R=z$1.object({category:z$1.string().optional(),minRate:z$1.coerce.number().int().min(0).optional(),maxRate:z$1.coerce.number().int().min(0).optional(),availabilityDate:z$1.string().optional(),search:z$1.string().trim().min(2).max(100).optional(),...g.shape}),n=z$1.object({id:z$1.uuid(),name:z$1.string(),category:z$1.enum(i),notes:z$1.string().nullable()}),r=z$1.object({id:z$1.uuid(),code:z$1.string(),label:z$1.string()}),A=z$1.object({items:z$1.array(r)}),c=z$1.object({id:z$1.uuid(),title:z$1.string(),description:z$1.string().nullable(),mediaUrl:z$1.url().nullable(),externalUrl:z$1.url().nullable(),createdAt:z$1.iso.datetime()}),s=z$1.object({id:z$1.uuid(),label:z$1.string(),amount:z$1.string(),currency:z$1.enum(o),notes:z$1.string().nullable()}),T=z$1.object({id:z$1.uuid(),userId:z$1.uuid(),displayName:z$1.string(),avatarUrl:z$1.url().nullable(),producerIsVerified:z$1.boolean(),companyName:z$1.string().nullable(),bio:z$1.string().nullable(),yearsExperience:z$1.number().int().nullable(),maxDistanceKm:z$1.number().int().nullable(),isAvailable:z$1.boolean(),averageRating:z$1.string(),totalReviews:z$1.number().int(),completionRate:z$1.string(),equipmentManifest:z$1.array(n),serviceCategories:z$1.array(r),portfolio:z$1.array(c),equipmentItems:z$1.array(r),rateCard:z$1.array(s),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime(),recentReviews:z$1.array(c$1).optional()});var v={HOST:1,PRODUCER:2,VIEWER:4},U={ACTIVE:"ACTIVE",SUSPENDED:"SUSPENDED",BANNED:"BANNED",DELETED:"DELETED"},h={PENDING:"PENDING",SUBMITTED:"SUBMITTED",VERIFIED:"VERIFIED",REJECTED:"REJECTED"},L={TRUST:"TRUST",FINANCIAL:"FINANCIAL",LIVE_OPS:"LIVE_OPS",AUDIT:"AUDIT"},k={BUG:"BUG",IDEA:"IDEA",GENERAL:"GENERAL"},V={EVENT_REMINDERS:"EVENT_REMINDERS",LIVE_ALERTS:"LIVE_ALERTS",RECOMMENDATIONS:"RECOMMENDATIONS",JOB_INVITATIONS:"JOB_INVITATIONS",JOB_CONFIRMATIONS:"JOB_CONFIRMATIONS",MESSAGES:"MESSAGES",TICKET_PURCHASES:"TICKET_PURCHASES",CREW_UPDATES:"CREW_UPDATES"},l={PENDING:"PENDING",APPROVED:"APPROVED",REJECTED:"REJECTED",SUBMITTED:"SUBMITTED",SUSPENDED:"SUSPENDED"},p={BEGINNER:"BEGINNER",INTERMEDIATE:"INTERMEDIATE",EXPERT:"EXPERT"};var d=z$1.object({name:z$1.string().min(1).max(255),category:z$1.enum(i),notes:z$1.string().max(2e3).optional()}),S=z$1.object({title:z$1.string().min(1).max(255),description:z$1.string().max(2e3).optional(),mediaUrl:z$1.url().optional(),externalUrl:z$1.url().optional()}),b=z$1.object({label:z$1.string().min(1).max(255),amount:z$1.number().min(0),currency:z$1.enum(o).default(o.NGN),notes:z$1.string().max(2e3).optional()}),B=z$1.object({id:z$1.uuid(),userId:z$1.uuid(),companyName:z$1.string(),bio:z$1.string(),logoUrl:z$1.url().nullable(),experienceLevel:z$1.enum(p),yearsExperience:z$1.number().int().nullable(),maxDistanceKm:z$1.number().int().nullable(),availabilityCalendar:z$1.record(z$1.string(),z$1.unknown()).nullable(),verificationStatus:z$1.enum(l),verificationReason:z$1.string().nullable(),verifiedAt:z$1.iso.datetime().nullable(),visibleInMarketplace:z$1.boolean(),isAvailable:z$1.boolean(),defaultCurrency:z$1.enum(o),averageRating:z$1.number(),totalReviews:z$1.number().int(),completionRate:z$1.number(),hasPin:z$1.boolean(),equipmentManifest:z$1.array(n),serviceCategories:z$1.array(r),portfolio:z$1.array(c),rateCard:z$1.array(s),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime(),equipmentItems:z$1.array(r)}),_=z$1.object({companyName:z$1.string().min(1).max(120).optional(),bio:z$1.string().min(1).max(2e3).optional(),logoUrl:z$1.url().nullable().optional(),experienceLevel:z$1.enum(p).optional(),yearsExperience:z$1.number().int().min(0).optional(),serviceAreas:z$1.array(z$1.string()).optional(),maxDistanceKm:z$1.number().int().min(0).nullable().optional(),availabilityCalendar:z$1.record(z$1.string(),z$1.unknown()).nullable().optional(),isAvailable:z$1.boolean().optional(),visibleInMarketplace:z$1.boolean().optional(),equipmentManifest:z$1.array(d).optional(),portfolio:z$1.array(S).optional(),rateCard:z$1.array(b).optional(),equipmentItemIds:z$1.array(z$1.uuid()).optional(),equipmentItemCodes:z$1.array(z$1.string().min(1).max(64)).optional(),categoryCodes:z$1.array(z$1.string()).optional()}).refine(y=>Object.keys(y).length>0,{message:"At least one field is required"}),F=z$1.object({verificationStatus:z$1.literal(l.SUBMITTED)}),w=z$1.object({view:z$1.literal("workspace").optional()});var f=z$1.string().trim().min(5,"Reason must be at least 5 characters"),J=z$1.object({notes:z$1.string().max(2e3).optional()}),E=z$1.object({reason:f,notes:z$1.string().max(2e3).optional()}),H=E,z=E;export{E as A,H as B,z as C,v as a,U as b,h as c,L as d,k as e,V as f,l as g,p as h,o as i,I as j,i as k,R as l,n as m,r as n,A as o,c as p,s as q,T as r,d as s,S as t,b as u,B as v,_ as w,F as x,w as y,J as z};//# sourceMappingURL=chunk-IR4E7GOJ.mjs.map
2
- //# sourceMappingURL=chunk-IR4E7GOJ.mjs.map
1
+ import {c as c$1}from'./chunk-L26MD3EM.mjs';import {g}from'./chunk-PAUYI2FU.mjs';import {z as z$1}from'zod';var o={NGN:"NGN"},I={SOUND:"sound",LIGHTING:"lighting",VIDEO:"video",STAGING:"staging",AV:"av",LOGISTICS:"logistics"},i={AUDIO:"audio",VIDEO:"video",LIGHTING:"lighting",STAGING:"staging",POWER:"power",OTHER:"other"};var R=z$1.object({category:z$1.string().optional(),minRate:z$1.coerce.number().int().min(0).optional(),maxRate:z$1.coerce.number().int().min(0).optional(),availabilityDate:z$1.string().optional(),search:z$1.string().trim().min(2).max(100).optional(),...g.shape}),n=z$1.object({id:z$1.uuid(),name:z$1.string(),category:z$1.enum(i),notes:z$1.string().nullable()}),r=z$1.object({id:z$1.uuid(),code:z$1.string(),label:z$1.string()}),A=z$1.object({items:z$1.array(r)}),c=z$1.object({id:z$1.uuid(),title:z$1.string(),description:z$1.string().nullable(),mediaUrl:z$1.url().nullable(),externalUrl:z$1.url().nullable(),createdAt:z$1.iso.datetime()}),s=z$1.object({id:z$1.uuid(),label:z$1.string(),amount:z$1.string(),currency:z$1.enum(o),notes:z$1.string().nullable()}),T=z$1.object({id:z$1.uuid(),userId:z$1.uuid(),displayName:z$1.string(),avatarUrl:z$1.url().nullable(),producerIsVerified:z$1.boolean(),companyName:z$1.string().nullable(),bio:z$1.string().nullable(),yearsExperience:z$1.number().int().nullable(),maxDistanceKm:z$1.number().int().nullable(),isAvailable:z$1.boolean(),averageRating:z$1.string(),totalReviews:z$1.number().int(),completionRate:z$1.string(),equipmentManifest:z$1.array(n),serviceCategories:z$1.array(r),portfolio:z$1.array(c),equipmentItems:z$1.array(r),rateCard:z$1.array(s),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime(),recentReviews:z$1.array(c$1).optional()});var v={HOST:1,PRODUCER:2,VIEWER:4},U={ACTIVE:"ACTIVE",SUSPENDED:"SUSPENDED",BANNED:"BANNED",DELETED:"DELETED"},h={PENDING:"PENDING",SUBMITTED:"SUBMITTED",VERIFIED:"VERIFIED",REJECTED:"REJECTED"},L={TRUST:"TRUST",FINANCIAL:"FINANCIAL",LIVE_OPS:"LIVE_OPS",AUDIT:"AUDIT"},k={BUG:"BUG",IDEA:"IDEA",GENERAL:"GENERAL"},V={EVENT_REMINDERS:"EVENT_REMINDERS",LIVE_ALERTS:"LIVE_ALERTS",RECOMMENDATIONS:"RECOMMENDATIONS",JOB_INVITATIONS:"JOB_INVITATIONS",JOB_CONFIRMATIONS:"JOB_CONFIRMATIONS",MESSAGES:"MESSAGES",TICKET_PURCHASES:"TICKET_PURCHASES",CREW_UPDATES:"CREW_UPDATES"},l={PENDING:"PENDING",APPROVED:"APPROVED",REJECTED:"REJECTED",SUBMITTED:"SUBMITTED",SUSPENDED:"SUSPENDED"},p={BEGINNER:"BEGINNER",INTERMEDIATE:"INTERMEDIATE",EXPERT:"EXPERT"};var d=z$1.object({name:z$1.string().min(1).max(255),category:z$1.enum(i),notes:z$1.string().max(2e3).optional()}),S=z$1.object({title:z$1.string().min(1).max(255),description:z$1.string().max(2e3).optional(),mediaUrl:z$1.url().optional(),externalUrl:z$1.url().optional()}),b=z$1.object({label:z$1.string().min(1).max(255),amount:z$1.number().min(0),currency:z$1.enum(o).default(o.NGN),notes:z$1.string().max(2e3).optional()}),B=z$1.object({id:z$1.uuid(),userId:z$1.uuid(),companyName:z$1.string(),bio:z$1.string(),logoUrl:z$1.url().nullable(),experienceLevel:z$1.enum(p),yearsExperience:z$1.number().int().nullable(),maxDistanceKm:z$1.number().int().nullable(),availabilityCalendar:z$1.record(z$1.string(),z$1.unknown()).nullable(),verificationStatus:z$1.enum(l),verificationReason:z$1.string().nullable(),verifiedAt:z$1.iso.datetime().nullable(),visibleInMarketplace:z$1.boolean(),isAvailable:z$1.boolean(),defaultCurrency:z$1.enum(o),averageRating:z$1.number(),totalReviews:z$1.number().int(),completionRate:z$1.number(),hasPin:z$1.boolean(),equipmentManifest:z$1.array(n),serviceCategories:z$1.array(r),portfolio:z$1.array(c),rateCard:z$1.array(s),createdAt:z$1.iso.datetime(),updatedAt:z$1.iso.datetime(),equipmentItems:z$1.array(r)}),_=z$1.object({companyName:z$1.string().min(1).max(120).optional(),bio:z$1.string().min(1).max(2e3).optional(),logoUrl:z$1.url().nullable().optional(),experienceLevel:z$1.enum(p).optional(),yearsExperience:z$1.number().int().min(0).optional(),serviceAreas:z$1.array(z$1.string()).optional(),maxDistanceKm:z$1.number().int().min(0).nullable().optional(),availabilityCalendar:z$1.record(z$1.string(),z$1.unknown()).nullable().optional(),isAvailable:z$1.boolean().optional(),visibleInMarketplace:z$1.boolean().optional(),equipmentManifest:z$1.array(d).optional(),portfolio:z$1.array(S).optional(),rateCard:z$1.array(b).optional(),equipmentItemIds:z$1.array(z$1.uuid()).optional(),equipmentItemCodes:z$1.array(z$1.string().min(1).max(64)).optional(),categoryCodes:z$1.array(z$1.string()).optional()}).refine(y=>Object.keys(y).length>0,{message:"At least one field is required"}),F=z$1.object({verificationStatus:z$1.literal(l.SUBMITTED)}),w=z$1.object({view:z$1.literal("workspace").optional()});var f=z$1.string().trim().min(5,"Reason must be at least 5 characters"),J=z$1.object({notes:z$1.string().max(2e3).optional()}),E=z$1.object({reason:f,notes:z$1.string().max(2e3).optional()}),H=E,z=E;export{E as A,H as B,z as C,v as a,U as b,h as c,L as d,k as e,V as f,l as g,p as h,o as i,I as j,i as k,R as l,n as m,r as n,A as o,c as p,s as q,T as r,d as s,S as t,b as u,B as v,_ as w,F as x,w as y,J as z};//# sourceMappingURL=chunk-KZ2OWUX4.mjs.map
2
+ //# sourceMappingURL=chunk-KZ2OWUX4.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/marketplace/marketplace.enums.ts","../src/marketplace/marketplace.schemas.ts","../src/user/user.enums.ts","../src/marketplace/workspace.schemas.ts","../src/marketplace/verification.schemas.ts"],"names":["MarketplaceCurrency","ServiceCategoryCode","EquipmentCategory","ListProducersQuerySchema","z","PaginationParamsSchema","PublicProducerListEquipmentItemSchema","PublicProducerListCategorySchema","ServiceCategoryListResponseSchema","PublicProducerListPortfolioItemSchema","PublicProducerListRateCardItemSchema","PublicProducerListItemSchema","ProducerRecentReviewSchema","UserRole","AccountStatus","KycStatus","AdminScopeCode","FeedbackCategory","NotificationCategory","ProducerVerificationStatus","ProducerExperienceLevel","WorkspaceEquipmentItemInputSchema","WorkspacePortfolioItemInputSchema","WorkspaceRateCardItemInputSchema","ProducerProfileWorkspaceSchema","UpsertProducerWorkspaceProfileSchema","data","SubmitProducerForVerificationSchema","GetProducerProfileQuerySchema","verificationReasonSchema","AdminApproveProducerVerificationSchema","AdminProducerVerificationReasonBodySchema","AdminRejectProducerVerificationSchema","AdminSuspendProducerVerificationSchema"],"mappings":"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","file":"chunk-IR4E7GOJ.mjs","sourcesContent":["/** ISO 4217 codes supported on marketplace rate cards. */\nexport const MarketplaceCurrency = {\n NGN: 'NGN',\n} as const;\nexport type MarketplaceCurrency = (typeof MarketplaceCurrency)[keyof typeof MarketplaceCurrency];\n\n/**\n * Known service category codes for producer capability filters.\n * Additional codes may exist in the catalog; listing responses use `z.string()` for `code`.\n */\nexport const ServiceCategoryCode = {\n SOUND: 'sound',\n LIGHTING: 'lighting',\n VIDEO: 'video',\n STAGING: 'staging',\n AV: 'av',\n LOGISTICS: 'logistics',\n} as const;\nexport type ServiceCategoryCode = (typeof ServiceCategoryCode)[keyof typeof ServiceCategoryCode];\n\n/** Equipment manifest categories on public producer listings. */\nexport const EquipmentCategory = {\n AUDIO: 'audio',\n VIDEO: 'video',\n LIGHTING: 'lighting',\n STAGING: 'staging',\n POWER: 'power',\n OTHER: 'other',\n} as const;\nexport type EquipmentCategory = (typeof EquipmentCategory)[keyof typeof EquipmentCategory];\n","import { z } from 'zod';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport { PaginationParamsSchema } from '../common';\nimport { ProducerRecentReviewSchema } from '../booking/review.schemas';\n\nexport const ListProducersQuerySchema = z.object({\n category: z.string().optional(),\n minRate: z.coerce.number().int().min(0).optional(),\n maxRate: z.coerce.number().int().min(0).optional(),\n availabilityDate: z.string().optional(),\n /** Case-insensitive match on name, company, role/skill, or equipment */\n search: z.string().trim().min(2).max(100).optional(),\n ...PaginationParamsSchema.shape,\n});\n\nexport const PublicProducerListEquipmentItemSchema = z.object({\n id: z.uuid(),\n name: z.string(),\n category: z.enum(EquipmentCategory),\n notes: z.string().nullable(),\n});\n\nexport const PublicProducerListCategorySchema = z.object({\n id: z.uuid(),\n code: z.string(),\n label: z.string(),\n});\n\nexport const ServiceCategoryListResponseSchema = z.object({\n items: z.array(PublicProducerListCategorySchema),\n});\n\nexport const PublicProducerListPortfolioItemSchema = z.object({\n id: z.uuid(),\n title: z.string(),\n description: z.string().nullable(),\n mediaUrl: z.url().nullable(),\n externalUrl: z.url().nullable(),\n createdAt: z.iso.datetime(),\n});\n\nexport const PublicProducerListRateCardItemSchema = z.object({\n id: z.uuid(),\n label: z.string(),\n amount: z.string(),\n currency: z.enum(MarketplaceCurrency),\n notes: z.string().nullable(),\n});\n\n/** One element of `ListProducersResponse.producers`. */\nexport const PublicProducerListItemSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n displayName: z.string(),\n avatarUrl: z.url().nullable(),\n producerIsVerified: z.boolean(),\n companyName: z.string().nullable(),\n bio: z.string().nullable(),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n isAvailable: z.boolean(),\n averageRating: z.string(),\n totalReviews: z.number().int(),\n completionRate: z.string(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n recentReviews: z.array(ProducerRecentReviewSchema).optional(),\n});\n","export const UserRole = {\n HOST: 1,\n PRODUCER: 2,\n VIEWER: 4,\n} as const;\nexport type UserRole = (typeof UserRole)[keyof typeof UserRole];\n\nexport const AccountStatus = {\n ACTIVE: 'ACTIVE',\n SUSPENDED: 'SUSPENDED',\n BANNED: 'BANNED',\n DELETED: 'DELETED',\n} as const;\nexport type AccountStatus = (typeof AccountStatus)[keyof typeof AccountStatus];\n\nexport const KycStatus = {\n PENDING: 'PENDING',\n SUBMITTED: 'SUBMITTED',\n VERIFIED: 'VERIFIED',\n REJECTED: 'REJECTED',\n} as const;\nexport type KycStatus = (typeof KycStatus)[keyof typeof KycStatus];\n\n/**\n * Enum for admin scope codes.\n */\nexport const AdminScopeCode = {\n TRUST: 'TRUST',\n FINANCIAL: 'FINANCIAL',\n LIVE_OPS: 'LIVE_OPS',\n AUDIT: 'AUDIT',\n} as const;\nexport type AdminScopeCode = (typeof AdminScopeCode)[keyof typeof AdminScopeCode];\n\nexport const FeedbackCategory = {\n BUG: 'BUG',\n IDEA: 'IDEA',\n GENERAL: 'GENERAL',\n} as const;\nexport type FeedbackCategory = (typeof FeedbackCategory)[keyof typeof FeedbackCategory];\n\nexport const NotificationCategory = {\n EVENT_REMINDERS: 'EVENT_REMINDERS',\n LIVE_ALERTS: 'LIVE_ALERTS',\n RECOMMENDATIONS: 'RECOMMENDATIONS',\n JOB_INVITATIONS: 'JOB_INVITATIONS',\n JOB_CONFIRMATIONS: 'JOB_CONFIRMATIONS',\n MESSAGES: 'MESSAGES',\n TICKET_PURCHASES: 'TICKET_PURCHASES',\n CREW_UPDATES: 'CREW_UPDATES',\n} as const;\nexport type NotificationCategory = (typeof NotificationCategory)[keyof typeof NotificationCategory];\n\nexport const ProducerVerificationStatus = {\n PENDING: 'PENDING',\n APPROVED: 'APPROVED',\n REJECTED: 'REJECTED',\n SUBMITTED: 'SUBMITTED',\n SUSPENDED: 'SUSPENDED',\n} as const;\nexport type ProducerVerificationStatus =\n (typeof ProducerVerificationStatus)[keyof typeof ProducerVerificationStatus];\n\nexport const ProducerExperienceLevel = {\n BEGINNER: 'BEGINNER',\n INTERMEDIATE: 'INTERMEDIATE',\n EXPERT: 'EXPERT',\n} as const;\nexport type ProducerExperienceLevel =\n (typeof ProducerExperienceLevel)[keyof typeof ProducerExperienceLevel];\n","import { z } from 'zod';\nimport { ProducerExperienceLevel, ProducerVerificationStatus } from '../user/user.enums';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport {\n PublicProducerListCategorySchema,\n PublicProducerListEquipmentItemSchema,\n PublicProducerListPortfolioItemSchema,\n PublicProducerListRateCardItemSchema,\n} from './marketplace.schemas';\n\n/** Workspace equipment row (full manifest; public API uses the same shape). */\nexport const WorkspaceEquipmentItemInputSchema = z.object({\n name: z.string().min(1).max(255),\n category: z.enum(EquipmentCategory),\n notes: z.string().max(2000).optional(),\n});\n\nexport const WorkspacePortfolioItemInputSchema = z.object({\n title: z.string().min(1).max(255),\n description: z.string().max(2000).optional(),\n mediaUrl: z.url().optional(),\n externalUrl: z.url().optional(),\n});\n\nexport const WorkspaceRateCardItemInputSchema = z.object({\n label: z.string().min(1).max(255),\n amount: z.number().min(0),\n currency: z.enum(MarketplaceCurrency).default(MarketplaceCurrency.NGN),\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Authenticated producer workspace profile (owner view).\n * Includes verification workflow fields and raw availability; never returned on public routes.\n */\nexport const ProducerProfileWorkspaceSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.url().nullable(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable(),\n verificationStatus: z.enum(ProducerVerificationStatus),\n verificationReason: z.string().nullable(),\n verifiedAt: z.iso.datetime().nullable(),\n visibleInMarketplace: z.boolean(),\n isAvailable: z.boolean(),\n defaultCurrency: z.enum(MarketplaceCurrency),\n averageRating: z.number(),\n totalReviews: z.number().int(),\n completionRate: z.number(),\n hasPin: z.boolean(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n});\n\n/** PATCH body for workspace profile updates (partial). */\nexport const UpsertProducerWorkspaceProfileSchema = z\n .object({\n companyName: z.string().min(1).max(120).optional(),\n bio: z.string().min(1).max(2000).optional(),\n logoUrl: z.url().nullable().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel).optional(),\n yearsExperience: z.number().int().min(0).optional(),\n serviceAreas: z.array(z.string()).optional(),\n maxDistanceKm: z.number().int().min(0).nullable().optional(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable().optional(),\n isAvailable: z.boolean().optional(),\n visibleInMarketplace: z.boolean().optional(),\n equipmentManifest: z.array(WorkspaceEquipmentItemInputSchema).optional(),\n portfolio: z.array(WorkspacePortfolioItemInputSchema).optional(),\n rateCard: z.array(WorkspaceRateCardItemInputSchema).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n categoryCodes: z.array(z.string()).optional(),\n })\n .refine((data) => Object.keys(data).length > 0, {\n message: 'At least one field is required',\n });\n\n/** POST body for submit-for-verification (explicit intent for signing). */\nexport const SubmitProducerForVerificationSchema = z.object({\n verificationStatus: z.literal(ProducerVerificationStatus.SUBMITTED),\n});\n\n/** Query for `GET /users/me/producer-profile` — `view=workspace` returns owner workspace shape. */\nexport const GetProducerProfileQuerySchema = z.object({\n view: z.literal('workspace').optional(),\n});\n","import { z } from 'zod';\n\nconst verificationReasonSchema = z.string().trim().min(5, 'Reason must be at least 5 characters');\n\n/** Admin approves a submitted producer (SUBMITTED → APPROVED) or reinstates (SUSPENDED → APPROVED). */\nexport const AdminApproveProducerVerificationSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Shared body for admin actions that require a decision reason.\n * `reason` → producer-facing verificationReason + audit; `notes` → optional internal admin context.\n */\nexport const AdminProducerVerificationReasonBodySchema = z.object({\n reason: verificationReasonSchema,\n notes: z.string().max(2000).optional(),\n});\n\n/** Admin rejects a submitted producer (SUBMITTED → REJECTED). */\nexport const AdminRejectProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n\n/** Admin suspends an approved producer (APPROVED → SUSPENDED). */\nexport const AdminSuspendProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n"]}
1
+ {"version":3,"sources":["../src/marketplace/marketplace.enums.ts","../src/marketplace/marketplace.schemas.ts","../src/user/user.enums.ts","../src/marketplace/workspace.schemas.ts","../src/marketplace/verification.schemas.ts"],"names":["MarketplaceCurrency","ServiceCategoryCode","EquipmentCategory","ListProducersQuerySchema","z","PaginationParamsSchema","PublicProducerListEquipmentItemSchema","PublicProducerListCategorySchema","ServiceCategoryListResponseSchema","PublicProducerListPortfolioItemSchema","PublicProducerListRateCardItemSchema","PublicProducerListItemSchema","ProducerRecentReviewSchema","UserRole","AccountStatus","KycStatus","AdminScopeCode","FeedbackCategory","NotificationCategory","ProducerVerificationStatus","ProducerExperienceLevel","WorkspaceEquipmentItemInputSchema","WorkspacePortfolioItemInputSchema","WorkspaceRateCardItemInputSchema","ProducerProfileWorkspaceSchema","UpsertProducerWorkspaceProfileSchema","data","SubmitProducerForVerificationSchema","GetProducerProfileQuerySchema","verificationReasonSchema","AdminApproveProducerVerificationSchema","AdminProducerVerificationReasonBodySchema","AdminRejectProducerVerificationSchema","AdminSuspendProducerVerificationSchema"],"mappings":"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","file":"chunk-KZ2OWUX4.mjs","sourcesContent":["/** ISO 4217 codes supported on marketplace rate cards. */\nexport const MarketplaceCurrency = {\n NGN: 'NGN',\n} as const;\nexport type MarketplaceCurrency = (typeof MarketplaceCurrency)[keyof typeof MarketplaceCurrency];\n\n/**\n * Known service category codes for producer capability filters.\n * Additional codes may exist in the catalog; listing responses use `z.string()` for `code`.\n */\nexport const ServiceCategoryCode = {\n SOUND: 'sound',\n LIGHTING: 'lighting',\n VIDEO: 'video',\n STAGING: 'staging',\n AV: 'av',\n LOGISTICS: 'logistics',\n} as const;\nexport type ServiceCategoryCode = (typeof ServiceCategoryCode)[keyof typeof ServiceCategoryCode];\n\n/** Equipment manifest categories on public producer listings. */\nexport const EquipmentCategory = {\n AUDIO: 'audio',\n VIDEO: 'video',\n LIGHTING: 'lighting',\n STAGING: 'staging',\n POWER: 'power',\n OTHER: 'other',\n} as const;\nexport type EquipmentCategory = (typeof EquipmentCategory)[keyof typeof EquipmentCategory];\n","import { z } from 'zod';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport { PaginationParamsSchema } from '../common';\nimport { ProducerRecentReviewSchema } from '../booking/review.schemas';\n\nexport const ListProducersQuerySchema = z.object({\n category: z.string().optional(),\n minRate: z.coerce.number().int().min(0).optional(),\n maxRate: z.coerce.number().int().min(0).optional(),\n availabilityDate: z.string().optional(),\n /** Case-insensitive match on name, company, role/skill, or equipment */\n search: z.string().trim().min(2).max(100).optional(),\n ...PaginationParamsSchema.shape,\n});\n\nexport const PublicProducerListEquipmentItemSchema = z.object({\n id: z.uuid(),\n name: z.string(),\n category: z.enum(EquipmentCategory),\n notes: z.string().nullable(),\n});\n\nexport const PublicProducerListCategorySchema = z.object({\n id: z.uuid(),\n code: z.string(),\n label: z.string(),\n});\n\nexport const ServiceCategoryListResponseSchema = z.object({\n items: z.array(PublicProducerListCategorySchema),\n});\n\nexport const PublicProducerListPortfolioItemSchema = z.object({\n id: z.uuid(),\n title: z.string(),\n description: z.string().nullable(),\n mediaUrl: z.url().nullable(),\n externalUrl: z.url().nullable(),\n createdAt: z.iso.datetime(),\n});\n\nexport const PublicProducerListRateCardItemSchema = z.object({\n id: z.uuid(),\n label: z.string(),\n amount: z.string(),\n currency: z.enum(MarketplaceCurrency),\n notes: z.string().nullable(),\n});\n\n/** One element of `ListProducersResponse.producers`. */\nexport const PublicProducerListItemSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n displayName: z.string(),\n avatarUrl: z.url().nullable(),\n producerIsVerified: z.boolean(),\n companyName: z.string().nullable(),\n bio: z.string().nullable(),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n isAvailable: z.boolean(),\n averageRating: z.string(),\n totalReviews: z.number().int(),\n completionRate: z.string(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n recentReviews: z.array(ProducerRecentReviewSchema).optional(),\n});\n","export const UserRole = {\n HOST: 1,\n PRODUCER: 2,\n VIEWER: 4,\n} as const;\nexport type UserRole = (typeof UserRole)[keyof typeof UserRole];\n\nexport const AccountStatus = {\n ACTIVE: 'ACTIVE',\n SUSPENDED: 'SUSPENDED',\n BANNED: 'BANNED',\n DELETED: 'DELETED',\n} as const;\nexport type AccountStatus = (typeof AccountStatus)[keyof typeof AccountStatus];\n\nexport const KycStatus = {\n PENDING: 'PENDING',\n SUBMITTED: 'SUBMITTED',\n VERIFIED: 'VERIFIED',\n REJECTED: 'REJECTED',\n} as const;\nexport type KycStatus = (typeof KycStatus)[keyof typeof KycStatus];\n\n/**\n * Enum for admin scope codes.\n */\nexport const AdminScopeCode = {\n TRUST: 'TRUST',\n FINANCIAL: 'FINANCIAL',\n LIVE_OPS: 'LIVE_OPS',\n AUDIT: 'AUDIT',\n} as const;\nexport type AdminScopeCode = (typeof AdminScopeCode)[keyof typeof AdminScopeCode];\n\nexport const FeedbackCategory = {\n BUG: 'BUG',\n IDEA: 'IDEA',\n GENERAL: 'GENERAL',\n} as const;\nexport type FeedbackCategory = (typeof FeedbackCategory)[keyof typeof FeedbackCategory];\n\nexport const NotificationCategory = {\n EVENT_REMINDERS: 'EVENT_REMINDERS',\n LIVE_ALERTS: 'LIVE_ALERTS',\n RECOMMENDATIONS: 'RECOMMENDATIONS',\n JOB_INVITATIONS: 'JOB_INVITATIONS',\n JOB_CONFIRMATIONS: 'JOB_CONFIRMATIONS',\n MESSAGES: 'MESSAGES',\n TICKET_PURCHASES: 'TICKET_PURCHASES',\n CREW_UPDATES: 'CREW_UPDATES',\n} as const;\nexport type NotificationCategory = (typeof NotificationCategory)[keyof typeof NotificationCategory];\n\nexport const ProducerVerificationStatus = {\n PENDING: 'PENDING',\n APPROVED: 'APPROVED',\n REJECTED: 'REJECTED',\n SUBMITTED: 'SUBMITTED',\n SUSPENDED: 'SUSPENDED',\n} as const;\nexport type ProducerVerificationStatus =\n (typeof ProducerVerificationStatus)[keyof typeof ProducerVerificationStatus];\n\nexport const ProducerExperienceLevel = {\n BEGINNER: 'BEGINNER',\n INTERMEDIATE: 'INTERMEDIATE',\n EXPERT: 'EXPERT',\n} as const;\nexport type ProducerExperienceLevel =\n (typeof ProducerExperienceLevel)[keyof typeof ProducerExperienceLevel];\n","import { z } from 'zod';\nimport { ProducerExperienceLevel, ProducerVerificationStatus } from '../user/user.enums';\nimport { EquipmentCategory, MarketplaceCurrency } from './marketplace.enums';\nimport {\n PublicProducerListCategorySchema,\n PublicProducerListEquipmentItemSchema,\n PublicProducerListPortfolioItemSchema,\n PublicProducerListRateCardItemSchema,\n} from './marketplace.schemas';\n\n/** Workspace equipment row (full manifest; public API uses the same shape). */\nexport const WorkspaceEquipmentItemInputSchema = z.object({\n name: z.string().min(1).max(255),\n category: z.enum(EquipmentCategory),\n notes: z.string().max(2000).optional(),\n});\n\nexport const WorkspacePortfolioItemInputSchema = z.object({\n title: z.string().min(1).max(255),\n description: z.string().max(2000).optional(),\n mediaUrl: z.url().optional(),\n externalUrl: z.url().optional(),\n});\n\nexport const WorkspaceRateCardItemInputSchema = z.object({\n label: z.string().min(1).max(255),\n amount: z.number().min(0),\n currency: z.enum(MarketplaceCurrency).default(MarketplaceCurrency.NGN),\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Authenticated producer workspace profile (owner view).\n * Includes verification workflow fields and raw availability; never returned on public routes.\n */\nexport const ProducerProfileWorkspaceSchema = z.object({\n id: z.uuid(),\n userId: z.uuid(),\n companyName: z.string(),\n bio: z.string(),\n logoUrl: z.url().nullable(),\n experienceLevel: z.enum(ProducerExperienceLevel),\n yearsExperience: z.number().int().nullable(),\n maxDistanceKm: z.number().int().nullable(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable(),\n verificationStatus: z.enum(ProducerVerificationStatus),\n verificationReason: z.string().nullable(),\n verifiedAt: z.iso.datetime().nullable(),\n visibleInMarketplace: z.boolean(),\n isAvailable: z.boolean(),\n defaultCurrency: z.enum(MarketplaceCurrency),\n averageRating: z.number(),\n totalReviews: z.number().int(),\n completionRate: z.number(),\n hasPin: z.boolean(),\n equipmentManifest: z.array(PublicProducerListEquipmentItemSchema),\n serviceCategories: z.array(PublicProducerListCategorySchema),\n portfolio: z.array(PublicProducerListPortfolioItemSchema),\n rateCard: z.array(PublicProducerListRateCardItemSchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n equipmentItems: z.array(PublicProducerListCategorySchema),\n});\n\n/** PATCH body for workspace profile updates (partial). */\nexport const UpsertProducerWorkspaceProfileSchema = z\n .object({\n companyName: z.string().min(1).max(120).optional(),\n bio: z.string().min(1).max(2000).optional(),\n logoUrl: z.url().nullable().optional(),\n experienceLevel: z.enum(ProducerExperienceLevel).optional(),\n yearsExperience: z.number().int().min(0).optional(),\n serviceAreas: z.array(z.string()).optional(),\n maxDistanceKm: z.number().int().min(0).nullable().optional(),\n availabilityCalendar: z.record(z.string(), z.unknown()).nullable().optional(),\n isAvailable: z.boolean().optional(),\n visibleInMarketplace: z.boolean().optional(),\n equipmentManifest: z.array(WorkspaceEquipmentItemInputSchema).optional(),\n portfolio: z.array(WorkspacePortfolioItemInputSchema).optional(),\n rateCard: z.array(WorkspaceRateCardItemInputSchema).optional(),\n equipmentItemIds: z.array(z.uuid()).optional(),\n equipmentItemCodes: z.array(z.string().min(1).max(64)).optional(),\n categoryCodes: z.array(z.string()).optional(),\n })\n .refine((data) => Object.keys(data).length > 0, {\n message: 'At least one field is required',\n });\n\n/** POST body for submit-for-verification (explicit intent for signing). */\nexport const SubmitProducerForVerificationSchema = z.object({\n verificationStatus: z.literal(ProducerVerificationStatus.SUBMITTED),\n});\n\n/** Query for `GET /users/me/producer-profile` — `view=workspace` returns owner workspace shape. */\nexport const GetProducerProfileQuerySchema = z.object({\n view: z.literal('workspace').optional(),\n});\n","import { z } from 'zod';\n\nconst verificationReasonSchema = z.string().trim().min(5, 'Reason must be at least 5 characters');\n\n/** Admin approves a submitted producer (SUBMITTED → APPROVED) or reinstates (SUSPENDED → APPROVED). */\nexport const AdminApproveProducerVerificationSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/**\n * Shared body for admin actions that require a decision reason.\n * `reason` → producer-facing verificationReason + audit; `notes` → optional internal admin context.\n */\nexport const AdminProducerVerificationReasonBodySchema = z.object({\n reason: verificationReasonSchema,\n notes: z.string().max(2000).optional(),\n});\n\n/** Admin rejects a submitted producer (SUBMITTED → REJECTED). */\nexport const AdminRejectProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n\n/** Admin suspends an approved producer (APPROVED → SUSPENDED). */\nexport const AdminSuspendProducerVerificationSchema = AdminProducerVerificationReasonBodySchema;\n"]}
@@ -0,0 +1,2 @@
1
+ import {k,g}from'./chunk-PAUYI2FU.mjs';import {z}from'zod';var n=z.object({bookingId:z.uuid(),rating:z.coerce.number().int().min(1).max(5),comment:z.string().max(500).optional()}),c=z.object({id:z.uuid(),bookingId:z.uuid(),reviewerId:z.uuid(),revieweeId:z.uuid(),rating:z.number().int().min(1).max(5),comment:z.string().nullable(),helpfulCount:z.number().int().nonnegative(),createdAt:z.iso.datetime(),updatedAt:z.iso.datetime()}),i=z.object({rating:z.number().int().min(1).max(5),comment:z.string().nullable(),createdAt:z.iso.datetime()}),s=g,p=z.object({items:z.array(i),...k.shape});export{n as a,c as b,i as c,s as d,p as e};//# sourceMappingURL=chunk-L26MD3EM.mjs.map
2
+ //# sourceMappingURL=chunk-L26MD3EM.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/booking/review.schemas.ts"],"names":["CreateMarketplaceReviewRequestSchema","z","MarketplaceReviewResponseSchema","ProducerRecentReviewSchema","ListProducerReviewsQuerySchema","PaginationParamsSchema","PagedProducerReviewsResponseSchema","PaginationResponseSchema"],"mappings":"2DAQO,IAAMA,CAAAA,CAAuCC,CAAAA,CAAE,MAAA,CAAO,CAC3D,SAAA,CAAWA,CAAAA,CAAE,IAAA,EAAK,CAClB,OAAQA,CAAAA,CAAE,MAAA,CAAO,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,EAAE,GAAA,CAAI,CAAC,CAAA,CAC5C,OAAA,CAASA,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAC/B,CAAC,CAAA,CAEYC,CAAAA,CAAkCD,CAAAA,CAAE,MAAA,CAAO,CACtD,EAAA,CAAIA,CAAAA,CAAE,IAAA,EAAK,CACX,SAAA,CAAWA,CAAAA,CAAE,IAAA,GACb,UAAA,CAAYA,CAAAA,CAAE,IAAA,EAAK,CACnB,UAAA,CAAYA,CAAAA,CAAE,IAAA,EAAK,CACnB,OAAQA,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,IAAI,CAAC,CAAA,CACrC,OAAA,CAASA,CAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC7B,YAAA,CAAcA,CAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,WAAA,EAAY,CAC3C,UAAWA,CAAAA,CAAE,GAAA,CAAI,QAAA,EAAS,CAC1B,SAAA,CAAWA,CAAAA,CAAE,GAAA,CAAI,QAAA,EACnB,CAAC,CAAA,CAGYE,CAAAA,CAA6BF,CAAAA,CAAE,MAAA,CAAO,CACjD,MAAA,CAAQA,CAAAA,CAAE,QAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,EACrC,OAAA,CAASA,CAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC7B,SAAA,CAAWA,CAAAA,CAAE,IAAI,QAAA,EACnB,CAAC,CAAA,CAOYG,CAAAA,CAAiCC,CAAAA,CAEjCC,CAAAA,CAAqCL,CAAAA,CAAE,OAAO,CACzD,KAAA,CAAOA,CAAAA,CAAE,KAAA,CAAME,CAA0B,CAAA,CACzC,GAAGI,CAAAA,CAAyB,KAC9B,CAAC","file":"chunk-L26MD3EM.mjs","sourcesContent":["import { z } from 'zod';\nimport { PaginationParamsSchema, PaginationResponseSchema } from '../common/common.schemas';\n\n/**\n * `POST /reviews` — host rates producer once service is complete.\n * Reviewable when booking is `SERVICE_COMPLETED` or `CLOSED`.\n * Host review is required before `SERVICE_COMPLETED → CLOSED` (fund release).\n */\nexport const CreateMarketplaceReviewRequestSchema = z.object({\n bookingId: z.uuid(),\n rating: z.coerce.number().int().min(1).max(5),\n comment: z.string().max(500).optional(),\n});\n\nexport const MarketplaceReviewResponseSchema = z.object({\n id: z.uuid(),\n bookingId: z.uuid(),\n reviewerId: z.uuid(),\n revieweeId: z.uuid(),\n rating: z.number().int().min(1).max(5),\n comment: z.string().nullable(),\n helpfulCount: z.number().int().nonnegative(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\n/** Latest review snippet on public producer profile detail. */\nexport const ProducerRecentReviewSchema = z.object({\n rating: z.number().int().min(1).max(5),\n comment: z.string().nullable(),\n createdAt: z.iso.datetime(),\n});\n\n/**\n * `GET /marketplace/producers/:id/reviews` — paginated public reviews\n * for a marketplace-visible producer (privacy-safe snippets).\n * Alias of shared PaginationParamsSchema (pageNumber / pageSize).\n */\nexport const ListProducerReviewsQuerySchema = PaginationParamsSchema;\n\nexport const PagedProducerReviewsResponseSchema = z.object({\n items: z.array(ProducerRecentReviewSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport type CreateMarketplaceReviewRequest = z.infer<typeof CreateMarketplaceReviewRequestSchema>;\nexport type MarketplaceReviewResponse = z.infer<typeof MarketplaceReviewResponseSchema>;\nexport type ProducerRecentReview = z.infer<typeof ProducerRecentReviewSchema>;\nexport type ListProducerReviewsQuery = z.infer<typeof ListProducerReviewsQuerySchema>;\nexport type PagedProducerReviewsResponse = z.infer<typeof PagedProducerReviewsResponseSchema>;\n"]}
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunkORDM2W6R_js=require('./chunk-ORDM2W6R.js'),zod=require('zod');var n=zod.z.object({bookingId:zod.z.uuid(),rating:zod.z.coerce.number().int().min(1).max(5),comment:zod.z.string().max(500).optional()}),c=zod.z.object({id:zod.z.uuid(),bookingId:zod.z.uuid(),reviewerId:zod.z.uuid(),revieweeId:zod.z.uuid(),rating:zod.z.number().int().min(1).max(5),comment:zod.z.string().nullable(),helpfulCount:zod.z.number().int().nonnegative(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime()}),i=zod.z.object({rating:zod.z.number().int().min(1).max(5),comment:zod.z.string().nullable(),createdAt:zod.z.iso.datetime()}),s=chunkORDM2W6R_js.g,p=zod.z.object({items:zod.z.array(i),...chunkORDM2W6R_js.k.shape});exports.a=n;exports.b=c;exports.c=i;exports.d=s;exports.e=p;//# sourceMappingURL=chunk-MVQEFN65.js.map
2
+ //# sourceMappingURL=chunk-MVQEFN65.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/booking/review.schemas.ts"],"names":["CreateMarketplaceReviewRequestSchema","z","MarketplaceReviewResponseSchema","ProducerRecentReviewSchema","ListProducerReviewsQuerySchema","PaginationParamsSchema","PagedProducerReviewsResponseSchema","PaginationResponseSchema"],"mappings":"oFAQO,IAAMA,CAAAA,CAAuCC,KAAAA,CAAE,MAAA,CAAO,CAC3D,SAAA,CAAWA,KAAAA,CAAE,IAAA,EAAK,CAClB,OAAQA,KAAAA,CAAE,MAAA,CAAO,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,EAAE,GAAA,CAAI,CAAC,CAAA,CAC5C,OAAA,CAASA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,CAAI,GAAG,CAAA,CAAE,QAAA,EAC/B,CAAC,CAAA,CAEYC,CAAAA,CAAkCD,KAAAA,CAAE,MAAA,CAAO,CACtD,EAAA,CAAIA,KAAAA,CAAE,IAAA,EAAK,CACX,SAAA,CAAWA,KAAAA,CAAE,IAAA,GACb,UAAA,CAAYA,KAAAA,CAAE,IAAA,EAAK,CACnB,UAAA,CAAYA,KAAAA,CAAE,IAAA,EAAK,CACnB,OAAQA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,IAAI,CAAC,CAAA,CACrC,OAAA,CAASA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC7B,YAAA,CAAcA,KAAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,WAAA,EAAY,CAC3C,UAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,EAAS,CAC1B,SAAA,CAAWA,KAAAA,CAAE,GAAA,CAAI,QAAA,EACnB,CAAC,CAAA,CAGYE,CAAAA,CAA6BF,KAAAA,CAAE,MAAA,CAAO,CACjD,MAAA,CAAQA,KAAAA,CAAE,QAAO,CAAE,GAAA,EAAI,CAAE,GAAA,CAAI,CAAC,CAAA,CAAE,GAAA,CAAI,CAAC,EACrC,OAAA,CAASA,KAAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS,CAC7B,SAAA,CAAWA,KAAAA,CAAE,IAAI,QAAA,EACnB,CAAC,CAAA,CAOYG,CAAAA,CAAiCC,kBAAAA,CAEjCC,CAAAA,CAAqCL,KAAAA,CAAE,OAAO,CACzD,KAAA,CAAOA,KAAAA,CAAE,KAAA,CAAME,CAA0B,CAAA,CACzC,GAAGI,kBAAAA,CAAyB,KAC9B,CAAC","file":"chunk-MVQEFN65.js","sourcesContent":["import { z } from 'zod';\nimport { PaginationParamsSchema, PaginationResponseSchema } from '../common/common.schemas';\n\n/**\n * `POST /reviews` — host rates producer once service is complete.\n * Reviewable when booking is `SERVICE_COMPLETED` or `CLOSED`.\n * Host review is required before `SERVICE_COMPLETED → CLOSED` (fund release).\n */\nexport const CreateMarketplaceReviewRequestSchema = z.object({\n bookingId: z.uuid(),\n rating: z.coerce.number().int().min(1).max(5),\n comment: z.string().max(500).optional(),\n});\n\nexport const MarketplaceReviewResponseSchema = z.object({\n id: z.uuid(),\n bookingId: z.uuid(),\n reviewerId: z.uuid(),\n revieweeId: z.uuid(),\n rating: z.number().int().min(1).max(5),\n comment: z.string().nullable(),\n helpfulCount: z.number().int().nonnegative(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\n/** Latest review snippet on public producer profile detail. */\nexport const ProducerRecentReviewSchema = z.object({\n rating: z.number().int().min(1).max(5),\n comment: z.string().nullable(),\n createdAt: z.iso.datetime(),\n});\n\n/**\n * `GET /marketplace/producers/:id/reviews` — paginated public reviews\n * for a marketplace-visible producer (privacy-safe snippets).\n * Alias of shared PaginationParamsSchema (pageNumber / pageSize).\n */\nexport const ListProducerReviewsQuerySchema = PaginationParamsSchema;\n\nexport const PagedProducerReviewsResponseSchema = z.object({\n items: z.array(ProducerRecentReviewSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport type CreateMarketplaceReviewRequest = z.infer<typeof CreateMarketplaceReviewRequestSchema>;\nexport type MarketplaceReviewResponse = z.infer<typeof MarketplaceReviewResponseSchema>;\nexport type ProducerRecentReview = z.infer<typeof ProducerRecentReviewSchema>;\nexport type ListProducerReviewsQuery = z.infer<typeof ListProducerReviewsQuerySchema>;\nexport type PagedProducerReviewsResponse = z.infer<typeof PagedProducerReviewsResponseSchema>;\n"]}
@@ -1,2 +1,2 @@
1
- 'use strict';var chunk7BWECLAF_js=require('./chunk-7BWECLAF.js'),chunkFG6EV3WQ_js=require('./chunk-FG6EV3WQ.js'),chunkEITXVMRX_js=require('./chunk-EITXVMRX.js'),chunkORDM2W6R_js=require('./chunk-ORDM2W6R.js'),e=require('zod');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var e__default=/*#__PURE__*/_interopDefault(e);var d=["last7d","last30d","last90d"];var re=e__default.default.object({range:e__default.default.enum([...d,"custom"]).optional(),start:e__default.default.iso.datetime().optional(),end:e__default.default.iso.datetime().optional()}),i=e__default.default.enum(["UPCOMING","LIVE","ENDED","DRAFTS"]),se=e__default.default.object({q:e__default.default.string().trim().min(2).max(120),limit:e__default.default.coerce.number().int().min(1).max(10).default(10)}),le=e__default.default.object({title:e__default.default.string().min(1).max(120).optional(),description:e__default.default.string().max(2e3).optional(),coverImageUrl:e__default.default.any().optional(),previewClipUrl:e__default.default.url().nullable().optional(),ticketPrice:e__default.default.string().optional(),category:chunkEITXVMRX_js.xa.optional(),scheduledStart:e__default.default.iso.datetime().optional(),durationMinutes:e__default.default.number().int().positive().optional(),tags:e__default.default.array(e__default.default.string()).optional(),location:e__default.default.string().max(255).optional(),accessModel:e__default.default.enum(["FREE","PAID"]).optional(),currency:chunkEITXVMRX_js.wa.optional(),maxTickets:e__default.default.number().int().positive().nullable().optional(),visibility:chunkEITXVMRX_js.ya.optional(),guestEmails:e__default.default.array(e__default.default.email()).optional(),replayAccess:e__default.default.enum(chunkEITXVMRX_js.a).optional(),replayWindow:e__default.default.number().int().positive().optional(),replayPrice:e__default.default.number().nonnegative().optional(),productionMode:e__default.default.enum(["SELF","HIRE"]).optional(),crewIds:e__default.default.array(e__default.default.uuid()).optional(),productionNotes:e__default.default.string().max(2e3).nullable().optional(),backupStreamEnabled:e__default.default.boolean().optional()}),ce=e__default.default.object({tab:i,...chunkORDM2W6R_js.g.shape}),g=e__default.default.object({eventId:e__default.default.string(),title:e__default.default.string(),date:e__default.default.iso.datetime(),ticketsSold:e__default.default.number(),plannedDurationMinutes:e__default.default.number().nullable(),revenue:e__default.default.object({currency:e__default.default.string(),value:e__default.default.string()}),status:e__default.default.enum(["ACTIVE","PAUSED","LIVE","ENDED","DRAFT","CANCELLED"])}),ue=e__default.default.object({tab:i,rows:e__default.default.array(g),...chunkORDM2W6R_js.k.shape}),me=e__default.default.object({upcoming:e__default.default.number(),live:e__default.default.number(),ended:e__default.default.number(),drafts:e__default.default.number()}),be=e__default.default.object({title:e__default.default.string().min(3).max(120).optional()}),de=e__default.default.object({tab:i,...chunkORDM2W6R_js.g.shape}),pe=e__default.default.object({id:e__default.default.uuid(),state:e__default.default.literal("DRAFT"),wizardStep:e__default.default.number().int().min(1).max(5).nullable()}),ge=e__default.default.object({id:e__default.default.uuid(),wizardStep:e__default.default.number().int().min(1).max(5).nullable(),streamingVerified:e__default.default.boolean().optional(),verificationToken:e__default.default.string().optional(),crewIds:e__default.default.array(e__default.default.uuid()).optional(),crewAssignments:e__default.default.array(e__default.default.object({id:e__default.default.uuid(),producerId:e__default.default.uuid(),role:e__default.default.string(),state:e__default.default.string(),compensation:chunkORDM2W6R_js.h,location:e__default.default.string()})).optional()}),Ee=e__default.default.object({id:e__default.default.uuid(),state:e__default.default.literal("SCHEDULED"),publishedAt:e__default.default.iso.datetime().nullable(),bookingIds:e__default.default.array(e__default.default.uuid())}),Se=e__default.default.object({id:e__default.default.uuid(),state:e__default.default.literal("CANCELLED"),cancelledAt:e__default.default.iso.datetime().nullable()}),h=e__default.default.object({amount:chunkORDM2W6R_js.h,deltaPct:e__default.default.number().nullable()}),y=e__default.default.object({count:e__default.default.number().int(),nextStartsAt:e__default.default.string().nullable()}),R=e__default.default.object({eventCount:e__default.default.number().int(),totalViewers:e__default.default.number().int()}),A=e__default.default.object({value:e__default.default.number().int(),deltaPct:e__default.default.number().nullable()}),x=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),viewers:e__default.default.number().int()}),T=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),scheduledStart:e__default.default.string(),canGoLive:e__default.default.boolean()}),E=e__default.default.object({kind:e__default.default.string(),subjectType:e__default.default.enum(["Event","Booking","PaymentIntent","ReplayPurchase"]),subjectId:e__default.default.string(),occurredAt:e__default.default.number().int(),payload:e__default.default.record(e__default.default.string(),e__default.default.unknown()),dedupeId:e__default.default.string()}),ve=e__default.default.object({range:e__default.default.object({start:e__default.default.string(),end:e__default.default.string(),preset:e__default.default.string().optional()}),kpis:e__default.default.object({totalRevenue:h,upcomingEvents:y,liveNow:R,totalViews:A}),live:e__default.default.array(x),upcoming:e__default.default.array(T),activity:e__default.default.array(E)}),he=e__default.default.object({items:e__default.default.array(E),...chunkORDM2W6R_js.k.shape}),I=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),scheduledStart:e__default.default.string(),state:e__default.default.string()}),ye=e__default.default.object({hits:e__default.default.array(I)}),Re=e__default.default.object({count:e__default.default.number().int()}),Ae=e__default.default.object({tab:i,items:e__default.default.array(g),...chunkORDM2W6R_js.k.shape}),j=e__default.default.object({id:e__default.default.uuid(),hostId:e__default.default.uuid(),title:e__default.default.string(),description:e__default.default.string().nullable(),coverImageUrl:e__default.default.string().nullable(),previewClipUrl:e__default.default.string().nullable(),venueLocation:e__default.default.string().nullable(),scheduledStart:e__default.default.string(),scheduledEnd:e__default.default.string(),timezone:e__default.default.string(),expectedAudience:e__default.default.number().int().nullable(),plannedDurationMinutes:e__default.default.number().int().nullable(),visibility:e__default.default.string(),accessModel:e__default.default.string(),ticketPrice:chunkORDM2W6R_js.h.nullable(),maxTickets:e__default.default.number().int().nullable(),allowlistData:e__default.default.array(e__default.default.string()),replayAccess:e__default.default.enum(chunkEITXVMRX_js.a),replayAccessFee:chunkORDM2W6R_js.h,retentionDays:e__default.default.number().int(),replayAvailableUntil:e__default.default.string().nullable(),shareableUrl:e__default.default.string().nullable(),state:e__default.default.string(),tags:e__default.default.array(e__default.default.string()),isFeatured:e__default.default.boolean(),createdAt:e__default.default.string(),updatedAt:e__default.default.string(),publishedAt:e__default.default.string().nullable(),liveStartedAt:e__default.default.string().nullable(),liveEndedAt:e__default.default.string().nullable(),cancelledAt:e__default.default.string().nullable(),cancelledReason:e__default.default.string().nullable(),category:e__default.default.string(),wizardStep:e__default.default.number().int().nullable(),productionMode:e__default.default.string().nullable(),productionNotes:e__default.default.string().nullable()}),xe=j.extend({crewIds:e__default.default.array(e__default.default.uuid()),crewAssignments:e__default.default.array(e__default.default.object({id:e__default.default.uuid(),producerId:e__default.default.uuid(),role:e__default.default.string(),state:e__default.default.string(),compensation:chunkORDM2W6R_js.h,location:e__default.default.string()})).optional().default([])}),C=e__default.default.enum(["EVENT_DETAILS","PRICING","CREW_ASSIGNED","STREAM_TESTED"]),H=e__default.default.enum(["PASS","WARN","FAIL"]),D=e__default.default.enum(["OPEN_WIZARD_STEP_1","OPEN_WIZARD_STEP_2","OPEN_WIZARD_STEP_3","OPEN_HIRE_CREW","RUN_STREAM_TEST"]),L=e__default.default.enum(["CHECKLIST_INCOMPLETE","BEFORE_WINDOW","AFTER_WINDOW","ALREADY_LIVE","NOT_OWNED"]),N=e__default.default.enum(["NOT_PROVISIONED","READY_FOR_TEST","LIVE","STREAM_TEST_FAILED","STREAM_TEST_SUCCESSFUL"]),p=e__default.default.enum(["SELF","HIRE"]),P=e__default.default.object({id:C,label:e__default.default.string(),state:H,detail:e__default.default.string().optional(),cta:D.optional()}),S=e__default.default.object({progress:e__default.default.number().min(0).max(1),items:e__default.default.array(P),canGoLive:e__default.default.boolean(),blockReason:L.optional()}),Te=e__default.default.object({crewSearch:e__default.default.string().trim().min(2).max(100).optional(),crewState:e__default.default.enum(chunkFG6EV3WQ_js.b).optional()}),v=e__default.default.object({bookingId:e__default.default.string(),producerProfileId:e__default.default.string(),displayName:e__default.default.string(),companyName:e__default.default.string(),producerAvatarUrl:e__default.default.url().nullable(),producerServiceCategoryLabels:e__default.default.array(e__default.default.string()),producerEquipmentLabels:e__default.default.array(e__default.default.string()),producerIsVerified:e__default.default.boolean(),role:e__default.default.string().nullable(),state:e__default.default.enum(chunkFG6EV3WQ_js.b),confirmedAt:e__default.default.iso.datetime().nullable()}),_=e__default.default.enum(["ACTIVE","PAST"]),Ie=e__default.default.object({phase:_.default("ACTIVE"),eventId:e__default.default.uuid().optional(),crewSearch:e__default.default.string().trim().min(2).max(100).optional(),crewState:e__default.default.enum(chunkFG6EV3WQ_js.b).optional(),...chunkORDM2W6R_js.g.shape}),w=v.extend({eventId:e__default.default.uuid(),eventTitle:e__default.default.string()}),k=e__default.default.object({eventId:e__default.default.uuid(),totalViewers:e__default.default.number().int().nonnegative(),uniqueViewers:e__default.default.number().int().nonnegative(),peakConcurrent:e__default.default.number().int().nonnegative(),registeredCount:e__default.default.number().int().nonnegative(),paidCount:e__default.default.number().int().nonnegative(),refundedCount:e__default.default.number().int().nonnegative(),returningViewerCount:e__default.default.number().int().nonnegative().nullable(),highValueBuyerCount:e__default.default.number().int().nonnegative().nullable(),grossRevenue:chunkORDM2W6R_js.h,computedAt:e__default.default.iso.datetime(),byDeviceType:e__default.default.record(e__default.default.string(),e__default.default.number()).nullable()}),O=e__default.default.object({eventId:e__default.default.uuid(),totalReplayViewers:e__default.default.number().int().nonnegative(),completedViews:e__default.default.number().int().nonnegative(),avgWatchProgressPct:e__default.default.number().min(0).max(1).nullable(),totalWatchTimeSec:e__default.default.number().int().nonnegative(),activeReplayPurchases:e__default.default.number().int().nonnegative(),replayRevenue:chunkORDM2W6R_js.h,computedAt:e__default.default.iso.datetime(),points:e__default.default.array(e__default.default.object({date:e__default.default.string(),viewsCount:e__default.default.number().int().nonnegative(),revenue:chunkORDM2W6R_js.h}))}),f=e__default.default.object({audience:k.nullable(),replayPerformance:O.nullable()}),je=e__default.default.object({items:e__default.default.array(w),...chunkORDM2W6R_js.k.shape}),Ce=e__default.default.object({serverNow:e__default.default.iso.datetime(),event:e__default.default.object({id:e__default.default.string(),title:e__default.default.string(),description:e__default.default.string().nullable(),coverImageUrl:e__default.default.string().nullable(),scheduledStart:e__default.default.iso.datetime({local:true}),scheduledEnd:e__default.default.iso.datetime(),timezone:e__default.default.string(),accessModel:e__default.default.string(),ticketPrice:chunkORDM2W6R_js.h.nullable(),shareableUrl:e__default.default.string().nullable(),state:e__default.default.string(),visibility:e__default.default.string(),productionMode:p.nullable(),goLiveEligibleAt:e__default.default.iso.datetime().nullable()}),ticketing:e__default.default.object({totalPayingCapacity:e__default.default.number().int().nullable(),ticketsSold:e__default.default.number().int(),revenue:chunkORDM2W6R_js.h,liveRevenue:chunkORDM2W6R_js.h,ticketRevenue:chunkORDM2W6R_js.h,replayRevenue:chunkORDM2W6R_js.h,hostShare:chunkORDM2W6R_js.h,platformFee:chunkORDM2W6R_js.h}),audience:e__default.default.object({registered:e__default.default.number().int(),watchingNow:e__default.default.number().int().nonnegative(),byCountry:e__default.default.record(e__default.default.string(),e__default.default.number().int()).nullable(),byTrafficSource:e__default.default.record(e__default.default.string(),e__default.default.number().int()).nullable()}),readiness:S,production:e__default.default.object({mode:p,crew:e__default.default.array(v)}),streaming:e__default.default.object({status:N,serverUrl:e__default.default.string().nullable(),streamKey:e__default.default.null(),lastStreamTestAt:e__default.default.iso.datetime().nullable(),testAvailableAt:e__default.default.iso.datetime().nullable(),lastStreamTestFailedAt:e__default.default.iso.datetime().nullable(),lastStreamTestFailureReason:e__default.default.string().nullable()}),share:e__default.default.object({shareableUrl:e__default.default.string(),slug:e__default.default.string()}),postEvent:f.nullable()}),He=S,De=e__default.default.object({shareableUrl:e__default.default.string(),slug:e__default.default.string(),copyText:e__default.default.string(),channelLinks:e__default.default.object({twitter:e__default.default.string(),facebook:e__default.default.string(),email:e__default.default.string(),embed:e__default.default.string()}),qrCodeDataUrl:e__default.default.string()}),M=e__default.default.enum(["PRE_LIVE","LIVE","ENDED"]),U=e__default.default.enum(["PROCESSING","READY","UNAVAILABLE"]),V=e__default.default.enum(["HEALTHY","DEGRADED","INGEST_DOWN"]),F=e__default.default.enum(["HOST_TERMINATED","HOST_TERMINATED_EARLY","AUTO_AFTER_SILENCE","AUTO_AT_SCHEDULED_END","ADMIN_FORCED"]),W=e__default.default.enum(["AUDIO_QUALITY","VIDEO_QUALITY","BITRATE_DROP","INGEST_DISCONNECTED","INGEST_RECONNECTED","RECORDING_FAILED","STREAM_DENIED"]),G=e__default.default.enum(["INFO","WARN","ERROR"]),z=e__default.default.object({id:e__default.default.string(),title:e__default.default.string(),scheduledStart:e__default.default.iso.datetime(),scheduledEnd:e__default.default.iso.datetime(),state:e__default.default.enum(chunkEITXVMRX_js.f),currency:e__default.default.string(),accessModel:e__default.default.string()}),B=e__default.default.object({streamEnabled:e__default.default.boolean(),canGoLive:e__default.default.boolean(),canEndLive:e__default.default.boolean(),requiresReauthToEnd:e__default.default.boolean()}),K=e__default.default.object({viewers:e__default.default.number().int(),peakViewers:e__default.default.number().int(),ticketsSold:e__default.default.number().int(),revenue:e__default.default.object({value:e__default.default.string(),currency:e__default.default.string()}),joinedTotal:e__default.default.number().int()}),Q=e__default.default.object({bitrateKbps:e__default.default.number(),resolution:e__default.default.string(),latencyMs:e__default.default.number().nullable(),ingestHealth:V,lastSampleAt:e__default.default.iso.datetime()}),Y=e__default.default.object({bookingId:e__default.default.string(),producerProfileId:e__default.default.string(),displayName:e__default.default.string(),role:e__default.default.string().nullable(),online:e__default.default.boolean()}),q=e__default.default.object({id:e__default.default.string(),kind:W,severity:G,message:e__default.default.string(),startedAt:e__default.default.iso.datetime(),acknowledgedAt:e__default.default.iso.datetime().nullable()}),Z=e__default.default.object({enabled:e__default.default.boolean(),socketNamespace:e__default.default.string(),backfill:e__default.default.array(chunk7BWECLAF_js.e)}),J=e__default.default.object({endedAt:e__default.default.iso.datetime(),endedEarly:e__default.default.boolean(),endedReason:F,replayState:U,replayAvailableAt:e__default.default.iso.datetime().nullable()}),Le=e__default.default.object({serverNow:e__default.default.iso.datetime(),slice:M,event:z,controls:B,metrics:K,telemetry:Q.nullable(),crew:e__default.default.array(Y),alerts:e__default.default.array(q),activity:e__default.default.array(e__default.default.never()),chat:Z,ended:J.nullable(),livePreview:chunkEITXVMRX_js.Pa.nullable()}),Ne=e__default.default.object({from:e__default.default.iso.datetime().optional(),to:e__default.default.iso.datetime().optional()}),X=e__default.default.object({bucketStart:e__default.default.iso.datetime(),concurrentViewers:e__default.default.number().int().nonnegative(),chatMessages:e__default.default.number().int().nonnegative().nullable(),reactions:e__default.default.number().int().nonnegative().nullable(),bitrateKbps:e__default.default.number().int().nonnegative().nullable(),ingestHealth:e__default.default.enum(["HEALTHY","DEGRADED","INGEST_DOWN"]).nullable(),resolution:e__default.default.string().nullable()}),Pe=e__default.default.object({eventId:e__default.default.uuid(),from:e__default.default.iso.datetime(),to:e__default.default.iso.datetime(),granularity:e__default.default.literal("minute"),buckets:e__default.default.array(X)});exports.$=q;exports.A=N;exports.B=p;exports.C=P;exports.D=S;exports.E=Te;exports.F=v;exports.G=_;exports.H=Ie;exports.I=w;exports.J=k;exports.K=O;exports.L=f;exports.M=je;exports.N=Ce;exports.O=He;exports.P=De;exports.Q=M;exports.R=U;exports.S=V;exports.T=F;exports.U=W;exports.V=G;exports.W=z;exports.X=B;exports.Y=K;exports.Z=Q;exports._=Y;exports.a=d;exports.aa=Z;exports.b=re;exports.ba=J;exports.c=i;exports.ca=Le;exports.d=se;exports.da=Ne;exports.e=le;exports.ea=X;exports.f=ce;exports.fa=Pe;exports.g=g;exports.h=ue;exports.i=me;exports.j=be;exports.k=de;exports.l=pe;exports.m=ge;exports.n=Ee;exports.o=Se;exports.p=ve;exports.q=he;exports.r=I;exports.s=ye;exports.t=Re;exports.u=Ae;exports.v=j;exports.w=xe;exports.x=C;exports.y=H;exports.z=L;//# sourceMappingURL=chunk-HJIQSHNW.js.map
2
- //# sourceMappingURL=chunk-HJIQSHNW.js.map
1
+ 'use strict';var chunkFG6EV3WQ_js=require('./chunk-FG6EV3WQ.js'),chunk7BWECLAF_js=require('./chunk-7BWECLAF.js'),chunkEITXVMRX_js=require('./chunk-EITXVMRX.js'),chunkORDM2W6R_js=require('./chunk-ORDM2W6R.js'),e=require('zod');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var e__default=/*#__PURE__*/_interopDefault(e);var b=["last7d","last30d","last90d"];var re=e__default.default.object({range:e__default.default.enum([...b,"custom"]).optional(),start:e__default.default.iso.datetime().optional(),end:e__default.default.iso.datetime().optional()}),i=e__default.default.enum(["UPCOMING","LIVE","ENDED","DRAFTS"]),se=e__default.default.object({q:e__default.default.string().trim().min(2).max(120),limit:e__default.default.coerce.number().int().min(1).max(10).default(10)}),le=e__default.default.object({title:e__default.default.string().min(1).max(120).optional(),description:e__default.default.string().max(2e3).optional(),coverImageUrl:e__default.default.any().optional(),previewClipUrl:e__default.default.url().nullable().optional(),ticketPrice:e__default.default.string().optional(),category:chunkEITXVMRX_js.xa.optional(),scheduledStart:e__default.default.iso.datetime().optional(),durationMinutes:e__default.default.number().int().positive().optional(),tags:e__default.default.array(e__default.default.string()).optional(),location:e__default.default.string().max(255).optional(),accessModel:e__default.default.enum(["FREE","PAID"]).optional(),currency:chunkEITXVMRX_js.wa.optional(),maxTickets:e__default.default.number().int().positive().nullable().optional(),visibility:chunkEITXVMRX_js.ya.optional(),guestEmails:e__default.default.array(e__default.default.email()).optional(),replayAccess:e__default.default.enum(chunkEITXVMRX_js.a).optional(),replayWindow:e__default.default.number().int().positive().optional(),replayPrice:e__default.default.number().nonnegative().optional(),productionMode:e__default.default.enum(["SELF","HIRE"]).optional(),crewIds:e__default.default.array(e__default.default.uuid()).optional(),productionNotes:e__default.default.string().max(2e3).nullable().optional(),backupStreamEnabled:e__default.default.boolean().optional()}),ce=e__default.default.object({tab:i,...chunkORDM2W6R_js.g.shape}),g=e__default.default.object({eventId:e__default.default.string(),title:e__default.default.string(),date:e__default.default.iso.datetime(),ticketsSold:e__default.default.number(),plannedDurationMinutes:e__default.default.number().nullable(),revenue:e__default.default.object({currency:e__default.default.string(),value:e__default.default.string()}),status:e__default.default.enum(["ACTIVE","PAUSED","LIVE","ENDED","DRAFT","CANCELLED"])}),ue=e__default.default.object({tab:i,rows:e__default.default.array(g),...chunkORDM2W6R_js.k.shape}),me=e__default.default.object({upcoming:e__default.default.number(),live:e__default.default.number(),ended:e__default.default.number(),drafts:e__default.default.number()}),de=e__default.default.object({title:e__default.default.string().min(3).max(120).optional()}),be=e__default.default.object({tab:i,...chunkORDM2W6R_js.g.shape}),pe=e__default.default.object({id:e__default.default.uuid(),state:e__default.default.literal("DRAFT"),wizardStep:e__default.default.number().int().min(1).max(5).nullable()}),ge=e__default.default.object({id:e__default.default.uuid(),wizardStep:e__default.default.number().int().min(1).max(5).nullable(),streamingVerified:e__default.default.boolean().optional(),verificationToken:e__default.default.string().optional(),crewIds:e__default.default.array(e__default.default.uuid()).optional(),crewAssignments:e__default.default.array(e__default.default.object({id:e__default.default.uuid(),producerId:e__default.default.uuid(),role:e__default.default.string(),state:e__default.default.string(),compensation:chunkORDM2W6R_js.h,location:e__default.default.string()})).optional()}),Ee=e__default.default.object({id:e__default.default.uuid(),state:e__default.default.literal("SCHEDULED"),publishedAt:e__default.default.iso.datetime().nullable(),bookingIds:e__default.default.array(e__default.default.uuid())}),Se=e__default.default.object({id:e__default.default.uuid(),state:e__default.default.literal("CANCELLED"),cancelledAt:e__default.default.iso.datetime().nullable()}),h=e__default.default.object({amount:chunkORDM2W6R_js.h,deltaPct:e__default.default.number().nullable()}),y=e__default.default.object({count:e__default.default.number().int(),nextStartsAt:e__default.default.string().nullable()}),R=e__default.default.object({eventCount:e__default.default.number().int(),totalViewers:e__default.default.number().int()}),A=e__default.default.object({value:e__default.default.number().int(),deltaPct:e__default.default.number().nullable()}),x=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),viewers:e__default.default.number().int()}),T=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),scheduledStart:e__default.default.string(),canGoLive:e__default.default.boolean()}),E=e__default.default.object({kind:e__default.default.string(),subjectType:e__default.default.enum(["Event","Booking","PaymentIntent","ReplayPurchase"]),subjectId:e__default.default.string(),occurredAt:e__default.default.number().int(),payload:e__default.default.record(e__default.default.string(),e__default.default.unknown()),dedupeId:e__default.default.string()}),ve=e__default.default.object({range:e__default.default.object({start:e__default.default.string(),end:e__default.default.string(),preset:e__default.default.string().optional()}),kpis:e__default.default.object({totalRevenue:h,upcomingEvents:y,liveNow:R,totalViews:A}),live:e__default.default.array(x),upcoming:e__default.default.array(T),activity:e__default.default.array(E)}),he=e__default.default.object({items:e__default.default.array(E),...chunkORDM2W6R_js.k.shape}),I=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),scheduledStart:e__default.default.string(),state:e__default.default.string()}),ye=e__default.default.object({hits:e__default.default.array(I)}),Re=e__default.default.object({count:e__default.default.number().int()}),Ae=e__default.default.object({tab:i,items:e__default.default.array(g),...chunkORDM2W6R_js.k.shape}),j=e__default.default.object({id:e__default.default.uuid(),hostId:e__default.default.uuid(),title:e__default.default.string(),description:e__default.default.string().nullable(),coverImageUrl:e__default.default.string().nullable(),previewClipUrl:e__default.default.string().nullable(),venueLocation:e__default.default.string().nullable(),scheduledStart:e__default.default.string(),scheduledEnd:e__default.default.string(),timezone:e__default.default.string(),expectedAudience:e__default.default.number().int().nullable(),plannedDurationMinutes:e__default.default.number().int().nullable(),visibility:e__default.default.string(),accessModel:e__default.default.string(),ticketPrice:chunkORDM2W6R_js.h.nullable(),maxTickets:e__default.default.number().int().nullable(),allowlistData:e__default.default.array(e__default.default.string()),replayAccess:e__default.default.enum(chunkEITXVMRX_js.a),replayAccessFee:chunkORDM2W6R_js.h,retentionDays:e__default.default.number().int(),replayAvailableUntil:e__default.default.string().nullable(),shareableUrl:e__default.default.string().nullable(),state:e__default.default.string(),tags:e__default.default.array(e__default.default.string()),isFeatured:e__default.default.boolean(),createdAt:e__default.default.string(),updatedAt:e__default.default.string(),publishedAt:e__default.default.string().nullable(),liveStartedAt:e__default.default.string().nullable(),liveEndedAt:e__default.default.string().nullable(),cancelledAt:e__default.default.string().nullable(),cancelledReason:e__default.default.string().nullable(),category:e__default.default.string(),wizardStep:e__default.default.number().int().nullable(),productionMode:e__default.default.string().nullable(),productionNotes:e__default.default.string().nullable()}),xe=j.extend({crewIds:e__default.default.array(e__default.default.uuid()),crewAssignments:e__default.default.array(e__default.default.object({id:e__default.default.uuid(),producerId:e__default.default.uuid(),role:e__default.default.string(),state:e__default.default.string(),compensation:chunkORDM2W6R_js.h,location:e__default.default.string()})).optional().default([])}),C=e__default.default.enum(["EVENT_DETAILS","PRICING","CREW_ASSIGNED","STREAM_TESTED"]),H=e__default.default.enum(["PASS","WARN","FAIL"]),D=e__default.default.enum(["OPEN_WIZARD_STEP_1","OPEN_WIZARD_STEP_2","OPEN_WIZARD_STEP_3","OPEN_HIRE_CREW","RUN_STREAM_TEST"]),L=e__default.default.enum(["CHECKLIST_INCOMPLETE","BEFORE_WINDOW","AFTER_WINDOW","ALREADY_LIVE","NOT_OWNED"]),N=e__default.default.enum(["NOT_PROVISIONED","READY_FOR_TEST","LIVE","STREAM_TEST_FAILED","STREAM_TEST_SUCCESSFUL"]),p=e__default.default.enum(["SELF","HIRE"]),P=e__default.default.object({id:C,label:e__default.default.string(),state:H,detail:e__default.default.string().optional(),cta:D.optional()}),S=e__default.default.object({progress:e__default.default.number().min(0).max(1),items:e__default.default.array(P),canGoLive:e__default.default.boolean(),blockReason:L.optional()}),Te=e__default.default.object({crewSearch:e__default.default.string().trim().min(2).max(100).optional(),crewState:e__default.default.enum(chunkFG6EV3WQ_js.b).optional()}),v=e__default.default.object({bookingId:e__default.default.string(),producerProfileId:e__default.default.string(),displayName:e__default.default.string(),companyName:e__default.default.string(),producerAvatarUrl:e__default.default.url().nullable(),producerServiceCategoryLabels:e__default.default.array(e__default.default.string()),producerEquipmentLabels:e__default.default.array(e__default.default.string()),producerIsVerified:e__default.default.boolean(),role:e__default.default.string().nullable(),state:e__default.default.enum(chunkFG6EV3WQ_js.b),confirmedAt:e__default.default.iso.datetime().nullable()}),_=e__default.default.enum(["ACTIVE","PAST"]),Ie=e__default.default.object({phase:_.default("ACTIVE"),eventId:e__default.default.uuid().optional(),crewSearch:e__default.default.string().trim().min(2).max(100).optional(),crewState:e__default.default.enum(chunkFG6EV3WQ_js.b).optional(),...chunkORDM2W6R_js.g.shape}),w=v.extend({eventId:e__default.default.uuid(),eventTitle:e__default.default.string()}),k=e__default.default.object({eventId:e__default.default.uuid(),totalViewers:e__default.default.number().int().nonnegative(),uniqueViewers:e__default.default.number().int().nonnegative(),peakConcurrent:e__default.default.number().int().nonnegative(),registeredCount:e__default.default.number().int().nonnegative(),paidCount:e__default.default.number().int().nonnegative(),refundedCount:e__default.default.number().int().nonnegative(),returningViewerCount:e__default.default.number().int().nonnegative().nullable(),highValueBuyerCount:e__default.default.number().int().nonnegative().nullable(),grossRevenue:chunkORDM2W6R_js.h,computedAt:e__default.default.iso.datetime(),byDeviceType:e__default.default.record(e__default.default.string(),e__default.default.number()).nullable()}),O=e__default.default.object({eventId:e__default.default.uuid(),totalReplayViewers:e__default.default.number().int().nonnegative(),completedViews:e__default.default.number().int().nonnegative(),avgWatchProgressPct:e__default.default.number().min(0).max(1).nullable(),totalWatchTimeSec:e__default.default.number().int().nonnegative(),activeReplayPurchases:e__default.default.number().int().nonnegative(),replayRevenue:chunkORDM2W6R_js.h,computedAt:e__default.default.iso.datetime(),points:e__default.default.array(e__default.default.object({date:e__default.default.string(),viewsCount:e__default.default.number().int().nonnegative(),revenue:chunkORDM2W6R_js.h}))}),U=e__default.default.object({audience:k.nullable(),replayPerformance:O.nullable()}),je=e__default.default.object({items:e__default.default.array(w),...chunkORDM2W6R_js.k.shape}),Ce=e__default.default.object({serverNow:e__default.default.iso.datetime(),event:e__default.default.object({id:e__default.default.string(),title:e__default.default.string(),description:e__default.default.string().nullable(),coverImageUrl:e__default.default.string().nullable(),scheduledStart:e__default.default.iso.datetime({local:true}),scheduledEnd:e__default.default.iso.datetime(),timezone:e__default.default.string(),accessModel:e__default.default.string(),ticketPrice:chunkORDM2W6R_js.h.nullable(),shareableUrl:e__default.default.string().nullable(),state:e__default.default.string(),visibility:e__default.default.string(),productionMode:p.nullable(),goLiveEligibleAt:e__default.default.iso.datetime().nullable()}),ticketing:e__default.default.object({totalPayingCapacity:e__default.default.number().int().nullable(),ticketsSold:e__default.default.number().int(),revenue:chunkORDM2W6R_js.h,liveRevenue:chunkORDM2W6R_js.h,ticketRevenue:chunkORDM2W6R_js.h,replayRevenue:chunkORDM2W6R_js.h,hostShare:chunkORDM2W6R_js.h,platformFee:chunkORDM2W6R_js.h}),audience:e__default.default.object({registered:e__default.default.number().int(),watchingNow:e__default.default.number().int().nonnegative(),byCountry:e__default.default.record(e__default.default.string(),e__default.default.number().int()).nullable(),byTrafficSource:e__default.default.record(e__default.default.string(),e__default.default.number().int()).nullable()}),readiness:S,production:e__default.default.object({mode:p,crew:e__default.default.array(v)}),streaming:e__default.default.object({status:N,serverUrl:e__default.default.string().nullable(),streamKey:e__default.default.null(),lastStreamTestAt:e__default.default.iso.datetime().nullable(),testAvailableAt:e__default.default.iso.datetime().nullable(),lastStreamTestFailedAt:e__default.default.iso.datetime().nullable(),lastStreamTestFailureReason:e__default.default.string().nullable()}),share:e__default.default.object({shareableUrl:e__default.default.string(),slug:e__default.default.string()}),postEvent:U.nullable()}),He=S,De=e__default.default.object({shareableUrl:e__default.default.string(),slug:e__default.default.string(),copyText:e__default.default.string(),channelLinks:e__default.default.object({twitter:e__default.default.string(),facebook:e__default.default.string(),email:e__default.default.string(),embed:e__default.default.string()}),qrCodeDataUrl:e__default.default.string()}),f=e__default.default.enum(["PRE_LIVE","LIVE","ENDED"]),M=e__default.default.enum(["PROCESSING","READY","UNAVAILABLE"]),V=e__default.default.enum(["HEALTHY","DEGRADED","INGEST_DOWN"]),F=e__default.default.enum(["HOST_TERMINATED","HOST_TERMINATED_EARLY","AUTO_AFTER_SILENCE","AUTO_AT_SCHEDULED_END","ADMIN_FORCED"]),W=e__default.default.enum(["AUDIO_QUALITY","VIDEO_QUALITY","BITRATE_DROP","INGEST_DISCONNECTED","INGEST_RECONNECTED","RECORDING_FAILED","STREAM_DENIED"]),G=e__default.default.enum(["INFO","WARN","ERROR"]),z=e__default.default.object({id:e__default.default.string(),title:e__default.default.string(),scheduledStartUtc:e__default.default.iso.datetime(),scheduledEndUtc:e__default.default.iso.datetime(),scheduledStart:e__default.default.iso.datetime(),scheduledEnd:e__default.default.iso.datetime(),state:e__default.default.enum(chunkEITXVMRX_js.f),currency:e__default.default.string(),accessModel:e__default.default.string()}),B=e__default.default.object({streamEnabled:e__default.default.boolean(),canGoLive:e__default.default.boolean(),canEndLive:e__default.default.boolean(),requiresReauthToEnd:e__default.default.boolean()}),K=e__default.default.object({viewers:e__default.default.number().int(),peakViewers:e__default.default.number().int(),ticketsSold:e__default.default.number().int(),revenue:e__default.default.object({value:e__default.default.string(),currency:e__default.default.string()}),joinedTotal:e__default.default.number().int()}),Q=e__default.default.object({bitrateKbps:e__default.default.number(),resolution:e__default.default.string(),latencyMs:e__default.default.number().nullable(),ingestHealth:V,lastSampleAt:e__default.default.iso.datetime()}),Y=e__default.default.object({bookingId:e__default.default.string(),producerProfileId:e__default.default.string(),displayName:e__default.default.string(),role:e__default.default.string().nullable(),online:e__default.default.boolean()}),q=e__default.default.object({id:e__default.default.string(),kind:W,severity:G,message:e__default.default.string(),startedAt:e__default.default.iso.datetime(),acknowledgedAt:e__default.default.iso.datetime().nullable()}),Z=e__default.default.object({enabled:e__default.default.boolean(),socketNamespace:e__default.default.string(),backfill:e__default.default.array(chunk7BWECLAF_js.e)}),J=e__default.default.object({endedAt:e__default.default.iso.datetime(),endedEarly:e__default.default.boolean(),endedReason:F,replayState:M,replayAvailableAt:e__default.default.iso.datetime().nullable()}),Le=e__default.default.object({serverNow:e__default.default.iso.datetime(),slice:f,event:z,controls:B,metrics:K,telemetry:Q.nullable(),crew:e__default.default.array(Y),alerts:e__default.default.array(q),activity:e__default.default.array(e__default.default.never()),chat:Z,ended:J.nullable(),livePreview:chunkEITXVMRX_js.Pa.nullable()}),Ne=e__default.default.object({from:e__default.default.iso.datetime().optional(),to:e__default.default.iso.datetime().optional()}),X=e__default.default.object({bucketStart:e__default.default.iso.datetime(),concurrentViewers:e__default.default.number().int().nonnegative(),chatMessages:e__default.default.number().int().nonnegative().nullable(),reactions:e__default.default.number().int().nonnegative().nullable(),bitrateKbps:e__default.default.number().int().nonnegative().nullable(),ingestHealth:e__default.default.enum(["HEALTHY","DEGRADED","INGEST_DOWN"]).nullable(),resolution:e__default.default.string().nullable()}),Pe=e__default.default.object({eventId:e__default.default.uuid(),from:e__default.default.iso.datetime(),to:e__default.default.iso.datetime(),granularity:e__default.default.literal("minute"),buckets:e__default.default.array(X)});exports.$=q;exports.A=N;exports.B=p;exports.C=P;exports.D=S;exports.E=Te;exports.F=v;exports.G=_;exports.H=Ie;exports.I=w;exports.J=k;exports.K=O;exports.L=U;exports.M=je;exports.N=Ce;exports.O=He;exports.P=De;exports.Q=f;exports.R=M;exports.S=V;exports.T=F;exports.U=W;exports.V=G;exports.W=z;exports.X=B;exports.Y=K;exports.Z=Q;exports._=Y;exports.a=b;exports.aa=Z;exports.b=re;exports.ba=J;exports.c=i;exports.ca=Le;exports.d=se;exports.da=Ne;exports.e=le;exports.ea=X;exports.f=ce;exports.fa=Pe;exports.g=g;exports.h=ue;exports.i=me;exports.j=de;exports.k=be;exports.l=pe;exports.m=ge;exports.n=Ee;exports.o=Se;exports.p=ve;exports.q=he;exports.r=I;exports.s=ye;exports.t=Re;exports.u=Ae;exports.v=j;exports.w=xe;exports.x=C;exports.y=H;exports.z=L;//# sourceMappingURL=chunk-NH4QT6YO.js.map
2
+ //# sourceMappingURL=chunk-NH4QT6YO.js.map