@livdot-tech/contracts 1.10.4 → 1.10.6

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 (94) hide show
  1. package/dist/auth/index.js +1 -1
  2. package/dist/auth/index.mjs +1 -1
  3. package/dist/booking/index.js +1 -1
  4. package/dist/booking/index.mjs +1 -1
  5. package/dist/chat/index.js +1 -1
  6. package/dist/chat/index.mjs +1 -1
  7. package/dist/{chunk-DE5YOU4E.mjs → chunk-3SHK4ITU.mjs} +2 -2
  8. package/dist/{chunk-DE5YOU4E.mjs.map → chunk-3SHK4ITU.mjs.map} +1 -1
  9. package/dist/chunk-3WTCAK7N.mjs +2 -0
  10. package/dist/chunk-3WTCAK7N.mjs.map +1 -0
  11. package/dist/{chunk-UTRS2VQ2.mjs → chunk-77LGN2JF.mjs} +2 -2
  12. package/dist/{chunk-UTRS2VQ2.mjs.map → chunk-77LGN2JF.mjs.map} +1 -1
  13. package/dist/{chunk-KATK7GAZ.mjs → chunk-7RT42BX4.mjs} +2 -2
  14. package/dist/{chunk-KATK7GAZ.mjs.map → chunk-7RT42BX4.mjs.map} +1 -1
  15. package/dist/{chunk-7L65KZUM.js → chunk-7YS6PWN2.js} +2 -2
  16. package/dist/{chunk-7L65KZUM.js.map → chunk-7YS6PWN2.js.map} +1 -1
  17. package/dist/{chunk-AB423ZP4.js → chunk-CIEAWO4Z.js} +2 -2
  18. package/dist/{chunk-AB423ZP4.js.map → chunk-CIEAWO4Z.js.map} +1 -1
  19. package/dist/chunk-CXAGRSLF.js +2 -0
  20. package/dist/chunk-CXAGRSLF.js.map +1 -0
  21. package/dist/{chunk-YCHOYNMM.js → chunk-ETFQEH55.js} +2 -2
  22. package/dist/{chunk-YCHOYNMM.js.map → chunk-ETFQEH55.js.map} +1 -1
  23. package/dist/chunk-G5GZSJ2W.js +2 -0
  24. package/dist/chunk-G5GZSJ2W.js.map +1 -0
  25. package/dist/chunk-HV4RKWLR.mjs +2 -0
  26. package/dist/chunk-HV4RKWLR.mjs.map +1 -0
  27. package/dist/chunk-JSRHSYSZ.js +2 -0
  28. package/dist/chunk-JSRHSYSZ.js.map +1 -0
  29. package/dist/{chunk-3K52TZLX.js → chunk-KPZJSJXV.js} +2 -2
  30. package/dist/{chunk-3K52TZLX.js.map → chunk-KPZJSJXV.js.map} +1 -1
  31. package/dist/chunk-OMZGPS3Z.mjs +2 -0
  32. package/dist/{chunk-GLC4IFD3.mjs.map → chunk-OMZGPS3Z.mjs.map} +1 -1
  33. package/dist/chunk-OZH3L7VZ.mjs +2 -0
  34. package/dist/chunk-OZH3L7VZ.mjs.map +1 -0
  35. package/dist/chunk-QBFGU5IU.js +2 -0
  36. package/dist/chunk-QBFGU5IU.js.map +1 -0
  37. package/dist/chunk-RGF7ST6H.mjs +2 -0
  38. package/dist/chunk-RGF7ST6H.mjs.map +1 -0
  39. package/dist/{chunk-NS2BEIGW.mjs → chunk-SXTCI5FT.mjs} +2 -2
  40. package/dist/{chunk-NS2BEIGW.mjs.map → chunk-SXTCI5FT.mjs.map} +1 -1
  41. package/dist/{chunk-5IA4SH4O.mjs → chunk-TYWI6DUG.mjs} +2 -2
  42. package/dist/{chunk-5IA4SH4O.mjs.map → chunk-TYWI6DUG.mjs.map} +1 -1
  43. package/dist/{chunk-W6XZS6LZ.js → chunk-UI6KNLNA.js} +2 -2
  44. package/dist/{chunk-W6XZS6LZ.js.map → chunk-UI6KNLNA.js.map} +1 -1
  45. package/dist/{chunk-YC6IPGNY.js → chunk-WL5TJRQ5.js} +2 -2
  46. package/dist/{chunk-YC6IPGNY.js.map → chunk-WL5TJRQ5.js.map} +1 -1
  47. package/dist/{chunk-R55PDQYI.mjs → chunk-ZKOJLASP.mjs} +2 -2
  48. package/dist/{chunk-R55PDQYI.mjs.map → chunk-ZKOJLASP.mjs.map} +1 -1
  49. package/dist/{chunk-725D6CRY.js → chunk-ZTFSP2ZQ.js} +2 -2
  50. package/dist/{chunk-725D6CRY.js.map → chunk-ZTFSP2ZQ.js.map} +1 -1
  51. package/dist/common/index.d.mts +235 -24
  52. package/dist/common/index.d.ts +235 -24
  53. package/dist/common/index.js +1 -1
  54. package/dist/common/index.mjs +1 -1
  55. package/dist/dispute/index.js +1 -1
  56. package/dist/dispute/index.mjs +1 -1
  57. package/dist/event/index.d.mts +2 -8
  58. package/dist/event/index.d.ts +2 -8
  59. package/dist/event/index.js +1 -1
  60. package/dist/event/index.mjs +1 -1
  61. package/dist/host/index.d.mts +2 -2
  62. package/dist/host/index.d.ts +2 -2
  63. package/dist/host/index.js +1 -1
  64. package/dist/host/index.mjs +1 -1
  65. package/dist/index.d.mts +2 -2
  66. package/dist/index.d.ts +2 -2
  67. package/dist/index.js +1 -1
  68. package/dist/index.mjs +1 -1
  69. package/dist/marketplace/index.js +1 -1
  70. package/dist/marketplace/index.mjs +1 -1
  71. package/dist/notification/index.js +1 -1
  72. package/dist/notification/index.mjs +1 -1
  73. package/dist/payment/index.js +1 -1
  74. package/dist/payment/index.mjs +1 -1
  75. package/dist/user/index.js +1 -1
  76. package/dist/user/index.mjs +1 -1
  77. package/package.json +1 -1
  78. package/dist/chunk-244RJ2YJ.js +0 -2
  79. package/dist/chunk-244RJ2YJ.js.map +0 -1
  80. package/dist/chunk-5HZC3KL7.js +0 -2
  81. package/dist/chunk-5HZC3KL7.js.map +0 -1
  82. package/dist/chunk-73FCZRSF.mjs +0 -2
  83. package/dist/chunk-73FCZRSF.mjs.map +0 -1
  84. package/dist/chunk-DQG37GYU.js +0 -2
  85. package/dist/chunk-DQG37GYU.js.map +0 -1
  86. package/dist/chunk-GLC4IFD3.mjs +0 -2
  87. package/dist/chunk-KPEKHJVS.mjs +0 -2
  88. package/dist/chunk-KPEKHJVS.mjs.map +0 -1
  89. package/dist/chunk-O2PHSU4I.mjs +0 -2
  90. package/dist/chunk-O2PHSU4I.mjs.map +0 -1
  91. package/dist/chunk-TZ7OL7SF.mjs +0 -2
  92. package/dist/chunk-TZ7OL7SF.mjs.map +0 -1
  93. package/dist/chunk-UQVQE4W4.js +0 -2
  94. package/dist/chunk-UQVQE4W4.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/dispute/dispute.enums.ts","../src/dispute/dispute.schemas.ts"],"names":["DisputeType","DisputeStatus","DisputeResponseSchema","z","DISPUTE_DETAIL_MAX_LENGTH","DisputeReasonSchema","DisputeStateSchema","DisputeOutcomeSchema","EntitlementKindSchema","EntitlementKind","OpenDisputeRequestSchema","AdminDisputeResponseSchema","MyDisputesQuerySchema","AdminDisputesQuerySchema","ResolveDisputeRequestSchema","PagedDisputesResponseSchema","PaginationResponseSchema","AdminRevokeViewerPlaybackSchema","AdminRevokedViewersResponseSchema"],"mappings":"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","file":"chunk-KATK7GAZ.mjs","sourcesContent":["export const DisputeType = {\n SERVICE_NOT_DELIVERED: 'SERVICE_NOT_DELIVERED',\n QUALITY_ISSUE: 'QUALITY_ISSUE',\n PAYMENT_DISPUTE: 'PAYMENT_DISPUTE',\n CANCELLATION_DISPUTE: 'CANCELLATION_DISPUTE',\n OTHER: 'OTHER',\n} as const;\nexport type DisputeType = (typeof DisputeType)[keyof typeof DisputeType];\n\nexport const DisputeStatus = {\n OPEN: 'OPEN',\n UNDER_REVIEW: 'UNDER_REVIEW',\n RESOLVED: 'RESOLVED',\n CLOSED: 'CLOSED',\n} as const;\nexport type DisputeStatus = (typeof DisputeStatus)[keyof typeof DisputeStatus];\n","import { z } from 'zod';\nimport { DisputeType, DisputeStatus } from './dispute.enums';\nimport { EntitlementKind } from '../event';\nimport { PaginationResponseSchema } from '../common';\n\nexport const DisputeResponseSchema = z.object({\n id: z.uuid(),\n transactionId: z.uuid(),\n eventId: z.uuid().optional(),\n bookingId: z.uuid().optional(),\n userId: z.uuid(),\n disputeType: z.enum(DisputeType),\n reason: z.string(),\n amountInDispute: z.number(),\n disputeStatus: z.enum(DisputeStatus),\n resolution: z.string().optional(),\n reportedAt: z.iso.datetime(),\n slaDeadline: z.iso.datetime(),\n resolvedAt: z.iso.datetime().optional(),\n createdAt: z.iso.datetime(),\n});\n\nexport const DISPUTE_DETAIL_MAX_LENGTH = 500;\n\nexport const DisputeReasonSchema = z.enum([\n 'EVENT_DID_NOT_RUN',\n 'POOR_QUALITY',\n 'ACCESS_ISSUE',\n 'OTHER',\n]);\n\n// Mirrors Prisma `DisputeState` enum.\nexport const DisputeStateSchema = z.enum(['OPEN', 'RESOLVED_CUSTOMER', 'RESOLVED_HOST', 'EXPIRED']);\n\n// Mirrors Prisma `DisputeOutcome` enum.\nexport const DisputeOutcomeSchema = z.enum(['REFUNDED', 'DENIED', 'PARTIAL_REFUND']);\n\nconst EntitlementKindSchema = z.enum(EntitlementKind);\n\nexport const OpenDisputeRequestSchema = z\n .object({\n entitlementKind: EntitlementKindSchema,\n reason: DisputeReasonSchema,\n detail: z.string().trim().min(1).max(DISPUTE_DETAIL_MAX_LENGTH).optional(),\n })\n .strict();\n\nexport const AdminDisputeResponseSchema = z\n .object({\n id: z.uuid(),\n entitlementId: z.string(),\n eventId: z.uuid(),\n userId: z.uuid(),\n reason: DisputeReasonSchema,\n detail: z.string().nullable(),\n state: DisputeStateSchema,\n resolvedAt: z.iso.datetime().nullable(),\n resolutionOutcome: DisputeOutcomeSchema.nullable(),\n correlationId: z.string(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n })\n .strict();\n\nexport const MyDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const AdminDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n eventId: z.uuid().optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const ResolveDisputeRequestSchema = z\n .object({\n outcome: DisputeOutcomeSchema,\n refundId: z.string().min(1).max(100).optional(),\n resolutionNote: z.string().trim().max(500).optional(),\n })\n .strict();\n\nexport const PagedDisputesResponseSchema = z\n .object({\n items: z.array(AdminDisputeResponseSchema),\n ...PaginationResponseSchema.shape,\n })\n .strict();\n\nexport const AdminRevokeViewerPlaybackSchema = z.object({\n viewerId: z.uuid(),\n reason: z.string().min(1).max(500).optional(),\n});\n\nexport const AdminRevokedViewersResponseSchema = z.object({\n eventId: z.uuid(),\n viewerIds: z.array(z.uuid()),\n});\n"]}
1
+ {"version":3,"sources":["../src/dispute/dispute.enums.ts","../src/dispute/dispute.schemas.ts"],"names":["DisputeType","DisputeStatus","DisputeResponseSchema","z","DISPUTE_DETAIL_MAX_LENGTH","DisputeReasonSchema","DisputeStateSchema","DisputeOutcomeSchema","EntitlementKindSchema","EntitlementKind","OpenDisputeRequestSchema","AdminDisputeResponseSchema","MyDisputesQuerySchema","AdminDisputesQuerySchema","ResolveDisputeRequestSchema","PagedDisputesResponseSchema","PaginationResponseSchema","AdminRevokeViewerPlaybackSchema","AdminRevokedViewersResponseSchema"],"mappings":"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","file":"chunk-7RT42BX4.mjs","sourcesContent":["export const DisputeType = {\n SERVICE_NOT_DELIVERED: 'SERVICE_NOT_DELIVERED',\n QUALITY_ISSUE: 'QUALITY_ISSUE',\n PAYMENT_DISPUTE: 'PAYMENT_DISPUTE',\n CANCELLATION_DISPUTE: 'CANCELLATION_DISPUTE',\n OTHER: 'OTHER',\n} as const;\nexport type DisputeType = (typeof DisputeType)[keyof typeof DisputeType];\n\nexport const DisputeStatus = {\n OPEN: 'OPEN',\n UNDER_REVIEW: 'UNDER_REVIEW',\n RESOLVED: 'RESOLVED',\n CLOSED: 'CLOSED',\n} as const;\nexport type DisputeStatus = (typeof DisputeStatus)[keyof typeof DisputeStatus];\n","import { z } from 'zod';\nimport { DisputeType, DisputeStatus } from './dispute.enums';\nimport { EntitlementKind } from '../event';\nimport { PaginationResponseSchema } from '../common';\n\nexport const DisputeResponseSchema = z.object({\n id: z.uuid(),\n transactionId: z.uuid(),\n eventId: z.uuid().optional(),\n bookingId: z.uuid().optional(),\n userId: z.uuid(),\n disputeType: z.enum(DisputeType),\n reason: z.string(),\n amountInDispute: z.number(),\n disputeStatus: z.enum(DisputeStatus),\n resolution: z.string().optional(),\n reportedAt: z.iso.datetime(),\n slaDeadline: z.iso.datetime(),\n resolvedAt: z.iso.datetime().optional(),\n createdAt: z.iso.datetime(),\n});\n\nexport const DISPUTE_DETAIL_MAX_LENGTH = 500;\n\nexport const DisputeReasonSchema = z.enum([\n 'EVENT_DID_NOT_RUN',\n 'POOR_QUALITY',\n 'ACCESS_ISSUE',\n 'OTHER',\n]);\n\n// Mirrors Prisma `DisputeState` enum.\nexport const DisputeStateSchema = z.enum(['OPEN', 'RESOLVED_CUSTOMER', 'RESOLVED_HOST', 'EXPIRED']);\n\n// Mirrors Prisma `DisputeOutcome` enum.\nexport const DisputeOutcomeSchema = z.enum(['REFUNDED', 'DENIED', 'PARTIAL_REFUND']);\n\nconst EntitlementKindSchema = z.enum(EntitlementKind);\n\nexport const OpenDisputeRequestSchema = z\n .object({\n entitlementKind: EntitlementKindSchema,\n reason: DisputeReasonSchema,\n detail: z.string().trim().min(1).max(DISPUTE_DETAIL_MAX_LENGTH).optional(),\n })\n .strict();\n\nexport const AdminDisputeResponseSchema = z\n .object({\n id: z.uuid(),\n entitlementId: z.string(),\n eventId: z.uuid(),\n userId: z.uuid(),\n reason: DisputeReasonSchema,\n detail: z.string().nullable(),\n state: DisputeStateSchema,\n resolvedAt: z.iso.datetime().nullable(),\n resolutionOutcome: DisputeOutcomeSchema.nullable(),\n correlationId: z.string(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n })\n .strict();\n\nexport const MyDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const AdminDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n eventId: z.uuid().optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const ResolveDisputeRequestSchema = z\n .object({\n outcome: DisputeOutcomeSchema,\n refundId: z.string().min(1).max(100).optional(),\n resolutionNote: z.string().trim().max(500).optional(),\n })\n .strict();\n\nexport const PagedDisputesResponseSchema = z\n .object({\n items: z.array(AdminDisputeResponseSchema),\n ...PaginationResponseSchema.shape,\n })\n .strict();\n\nexport const AdminRevokeViewerPlaybackSchema = z.object({\n viewerId: z.uuid(),\n reason: z.string().min(1).max(500).optional(),\n});\n\nexport const AdminRevokedViewersResponseSchema = z.object({\n eventId: z.uuid(),\n viewerIds: z.array(z.uuid()),\n});\n"]}
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkUQVQE4W4_js=require('./chunk-UQVQE4W4.js'),chunkDQG37GYU_js=require('./chunk-DQG37GYU.js'),zod=require('zod');var n={SERVICE_NOT_DELIVERED:"SERVICE_NOT_DELIVERED",QUALITY_ISSUE:"QUALITY_ISSUE",PAYMENT_DISPUTE:"PAYMENT_DISPUTE",CANCELLATION_DISPUTE:"CANCELLATION_DISPUTE",OTHER:"OTHER"},s={OPEN:"OPEN",UNDER_REVIEW:"UNDER_REVIEW",RESOLVED:"RESOLVED",CLOSED:"CLOSED"};var l=zod.z.object({id:zod.z.uuid(),transactionId:zod.z.uuid(),eventId:zod.z.uuid().optional(),bookingId:zod.z.uuid().optional(),userId:zod.z.uuid(),disputeType:zod.z.enum(n),reason:zod.z.string(),amountInDispute:zod.z.number(),disputeStatus:zod.z.enum(s),resolution:zod.z.string().optional(),reportedAt:zod.z.iso.datetime(),slaDeadline:zod.z.iso.datetime(),resolvedAt:zod.z.iso.datetime().optional(),createdAt:zod.z.iso.datetime()}),p=500,r=zod.z.enum(["EVENT_DID_NOT_RUN","POOR_QUALITY","ACCESS_ISSUE","OTHER"]),t=zod.z.enum(["OPEN","RESOLVED_CUSTOMER","RESOLVED_HOST","EXPIRED"]),a=zod.z.enum(["REFUNDED","DENIED","PARTIAL_REFUND"]),u=zod.z.enum(chunkUQVQE4W4_js.n),I=zod.z.object({entitlementKind:u,reason:r,detail:zod.z.string().trim().min(1).max(p).optional()}).strict(),m=zod.z.object({id:zod.z.uuid(),entitlementId:zod.z.string(),eventId:zod.z.uuid(),userId:zod.z.uuid(),reason:r,detail:zod.z.string().nullable(),state:t,resolvedAt:zod.z.iso.datetime().nullable(),resolutionOutcome:a.nullable(),correlationId:zod.z.string(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime()}).strict(),R=zod.z.object({state:t.optional(),pageNumber:zod.z.coerce.number().int().min(1).optional(),pageSize:zod.z.coerce.number().int().min(1).max(100).optional()}).strict(),T=zod.z.object({state:t.optional(),eventId:zod.z.uuid().optional(),pageNumber:zod.z.coerce.number().int().min(1).optional(),pageSize:zod.z.coerce.number().int().min(1).max(100).optional()}).strict(),x=zod.z.object({outcome:a,refundId:zod.z.string().min(1).max(100).optional(),resolutionNote:zod.z.string().trim().max(500).optional()}).strict(),A=zod.z.object({items:zod.z.array(m),...chunkDQG37GYU_js.e.shape}).strict(),O=zod.z.object({viewerId:zod.z.uuid(),reason:zod.z.string().min(1).max(500).optional()}),N=zod.z.object({eventId:zod.z.uuid(),viewerIds:zod.z.array(zod.z.uuid())});exports.a=n;exports.b=s;exports.c=l;exports.d=p;exports.e=r;exports.f=t;exports.g=a;exports.h=I;exports.i=m;exports.j=R;exports.k=T;exports.l=x;exports.m=A;exports.n=O;exports.o=N;//# sourceMappingURL=chunk-7L65KZUM.js.map
2
- //# sourceMappingURL=chunk-7L65KZUM.js.map
1
+ 'use strict';var chunkJSRHSYSZ_js=require('./chunk-JSRHSYSZ.js'),chunkG5GZSJ2W_js=require('./chunk-G5GZSJ2W.js'),zod=require('zod');var n={SERVICE_NOT_DELIVERED:"SERVICE_NOT_DELIVERED",QUALITY_ISSUE:"QUALITY_ISSUE",PAYMENT_DISPUTE:"PAYMENT_DISPUTE",CANCELLATION_DISPUTE:"CANCELLATION_DISPUTE",OTHER:"OTHER"},s={OPEN:"OPEN",UNDER_REVIEW:"UNDER_REVIEW",RESOLVED:"RESOLVED",CLOSED:"CLOSED"};var l=zod.z.object({id:zod.z.uuid(),transactionId:zod.z.uuid(),eventId:zod.z.uuid().optional(),bookingId:zod.z.uuid().optional(),userId:zod.z.uuid(),disputeType:zod.z.enum(n),reason:zod.z.string(),amountInDispute:zod.z.number(),disputeStatus:zod.z.enum(s),resolution:zod.z.string().optional(),reportedAt:zod.z.iso.datetime(),slaDeadline:zod.z.iso.datetime(),resolvedAt:zod.z.iso.datetime().optional(),createdAt:zod.z.iso.datetime()}),p=500,r=zod.z.enum(["EVENT_DID_NOT_RUN","POOR_QUALITY","ACCESS_ISSUE","OTHER"]),t=zod.z.enum(["OPEN","RESOLVED_CUSTOMER","RESOLVED_HOST","EXPIRED"]),a=zod.z.enum(["REFUNDED","DENIED","PARTIAL_REFUND"]),u=zod.z.enum(chunkJSRHSYSZ_js.m),I=zod.z.object({entitlementKind:u,reason:r,detail:zod.z.string().trim().min(1).max(p).optional()}).strict(),m=zod.z.object({id:zod.z.uuid(),entitlementId:zod.z.string(),eventId:zod.z.uuid(),userId:zod.z.uuid(),reason:r,detail:zod.z.string().nullable(),state:t,resolvedAt:zod.z.iso.datetime().nullable(),resolutionOutcome:a.nullable(),correlationId:zod.z.string(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime()}).strict(),R=zod.z.object({state:t.optional(),pageNumber:zod.z.coerce.number().int().min(1).optional(),pageSize:zod.z.coerce.number().int().min(1).max(100).optional()}).strict(),T=zod.z.object({state:t.optional(),eventId:zod.z.uuid().optional(),pageNumber:zod.z.coerce.number().int().min(1).optional(),pageSize:zod.z.coerce.number().int().min(1).max(100).optional()}).strict(),x=zod.z.object({outcome:a,refundId:zod.z.string().min(1).max(100).optional(),resolutionNote:zod.z.string().trim().max(500).optional()}).strict(),A=zod.z.object({items:zod.z.array(m),...chunkG5GZSJ2W_js.f.shape}).strict(),O=zod.z.object({viewerId:zod.z.uuid(),reason:zod.z.string().min(1).max(500).optional()}),N=zod.z.object({eventId:zod.z.uuid(),viewerIds:zod.z.array(zod.z.uuid())});exports.a=n;exports.b=s;exports.c=l;exports.d=p;exports.e=r;exports.f=t;exports.g=a;exports.h=I;exports.i=m;exports.j=R;exports.k=T;exports.l=x;exports.m=A;exports.n=O;exports.o=N;//# sourceMappingURL=chunk-7YS6PWN2.js.map
2
+ //# sourceMappingURL=chunk-7YS6PWN2.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/dispute/dispute.enums.ts","../src/dispute/dispute.schemas.ts"],"names":["DisputeType","DisputeStatus","DisputeResponseSchema","z","DISPUTE_DETAIL_MAX_LENGTH","DisputeReasonSchema","DisputeStateSchema","DisputeOutcomeSchema","EntitlementKindSchema","EntitlementKind","OpenDisputeRequestSchema","AdminDisputeResponseSchema","MyDisputesQuerySchema","AdminDisputesQuerySchema","ResolveDisputeRequestSchema","PagedDisputesResponseSchema","PaginationResponseSchema","AdminRevokeViewerPlaybackSchema","AdminRevokedViewersResponseSchema"],"mappings":"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","file":"chunk-7L65KZUM.js","sourcesContent":["export const DisputeType = {\n SERVICE_NOT_DELIVERED: 'SERVICE_NOT_DELIVERED',\n QUALITY_ISSUE: 'QUALITY_ISSUE',\n PAYMENT_DISPUTE: 'PAYMENT_DISPUTE',\n CANCELLATION_DISPUTE: 'CANCELLATION_DISPUTE',\n OTHER: 'OTHER',\n} as const;\nexport type DisputeType = (typeof DisputeType)[keyof typeof DisputeType];\n\nexport const DisputeStatus = {\n OPEN: 'OPEN',\n UNDER_REVIEW: 'UNDER_REVIEW',\n RESOLVED: 'RESOLVED',\n CLOSED: 'CLOSED',\n} as const;\nexport type DisputeStatus = (typeof DisputeStatus)[keyof typeof DisputeStatus];\n","import { z } from 'zod';\nimport { DisputeType, DisputeStatus } from './dispute.enums';\nimport { EntitlementKind } from '../event';\nimport { PaginationResponseSchema } from '../common';\n\nexport const DisputeResponseSchema = z.object({\n id: z.uuid(),\n transactionId: z.uuid(),\n eventId: z.uuid().optional(),\n bookingId: z.uuid().optional(),\n userId: z.uuid(),\n disputeType: z.enum(DisputeType),\n reason: z.string(),\n amountInDispute: z.number(),\n disputeStatus: z.enum(DisputeStatus),\n resolution: z.string().optional(),\n reportedAt: z.iso.datetime(),\n slaDeadline: z.iso.datetime(),\n resolvedAt: z.iso.datetime().optional(),\n createdAt: z.iso.datetime(),\n});\n\nexport const DISPUTE_DETAIL_MAX_LENGTH = 500;\n\nexport const DisputeReasonSchema = z.enum([\n 'EVENT_DID_NOT_RUN',\n 'POOR_QUALITY',\n 'ACCESS_ISSUE',\n 'OTHER',\n]);\n\n// Mirrors Prisma `DisputeState` enum.\nexport const DisputeStateSchema = z.enum(['OPEN', 'RESOLVED_CUSTOMER', 'RESOLVED_HOST', 'EXPIRED']);\n\n// Mirrors Prisma `DisputeOutcome` enum.\nexport const DisputeOutcomeSchema = z.enum(['REFUNDED', 'DENIED', 'PARTIAL_REFUND']);\n\nconst EntitlementKindSchema = z.enum(EntitlementKind);\n\nexport const OpenDisputeRequestSchema = z\n .object({\n entitlementKind: EntitlementKindSchema,\n reason: DisputeReasonSchema,\n detail: z.string().trim().min(1).max(DISPUTE_DETAIL_MAX_LENGTH).optional(),\n })\n .strict();\n\nexport const AdminDisputeResponseSchema = z\n .object({\n id: z.uuid(),\n entitlementId: z.string(),\n eventId: z.uuid(),\n userId: z.uuid(),\n reason: DisputeReasonSchema,\n detail: z.string().nullable(),\n state: DisputeStateSchema,\n resolvedAt: z.iso.datetime().nullable(),\n resolutionOutcome: DisputeOutcomeSchema.nullable(),\n correlationId: z.string(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n })\n .strict();\n\nexport const MyDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const AdminDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n eventId: z.uuid().optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const ResolveDisputeRequestSchema = z\n .object({\n outcome: DisputeOutcomeSchema,\n refundId: z.string().min(1).max(100).optional(),\n resolutionNote: z.string().trim().max(500).optional(),\n })\n .strict();\n\nexport const PagedDisputesResponseSchema = z\n .object({\n items: z.array(AdminDisputeResponseSchema),\n ...PaginationResponseSchema.shape,\n })\n .strict();\n\nexport const AdminRevokeViewerPlaybackSchema = z.object({\n viewerId: z.uuid(),\n reason: z.string().min(1).max(500).optional(),\n});\n\nexport const AdminRevokedViewersResponseSchema = z.object({\n eventId: z.uuid(),\n viewerIds: z.array(z.uuid()),\n});\n"]}
1
+ {"version":3,"sources":["../src/dispute/dispute.enums.ts","../src/dispute/dispute.schemas.ts"],"names":["DisputeType","DisputeStatus","DisputeResponseSchema","z","DISPUTE_DETAIL_MAX_LENGTH","DisputeReasonSchema","DisputeStateSchema","DisputeOutcomeSchema","EntitlementKindSchema","EntitlementKind","OpenDisputeRequestSchema","AdminDisputeResponseSchema","MyDisputesQuerySchema","AdminDisputesQuerySchema","ResolveDisputeRequestSchema","PagedDisputesResponseSchema","PaginationResponseSchema","AdminRevokeViewerPlaybackSchema","AdminRevokedViewersResponseSchema"],"mappings":"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","file":"chunk-7YS6PWN2.js","sourcesContent":["export const DisputeType = {\n SERVICE_NOT_DELIVERED: 'SERVICE_NOT_DELIVERED',\n QUALITY_ISSUE: 'QUALITY_ISSUE',\n PAYMENT_DISPUTE: 'PAYMENT_DISPUTE',\n CANCELLATION_DISPUTE: 'CANCELLATION_DISPUTE',\n OTHER: 'OTHER',\n} as const;\nexport type DisputeType = (typeof DisputeType)[keyof typeof DisputeType];\n\nexport const DisputeStatus = {\n OPEN: 'OPEN',\n UNDER_REVIEW: 'UNDER_REVIEW',\n RESOLVED: 'RESOLVED',\n CLOSED: 'CLOSED',\n} as const;\nexport type DisputeStatus = (typeof DisputeStatus)[keyof typeof DisputeStatus];\n","import { z } from 'zod';\nimport { DisputeType, DisputeStatus } from './dispute.enums';\nimport { EntitlementKind } from '../event';\nimport { PaginationResponseSchema } from '../common';\n\nexport const DisputeResponseSchema = z.object({\n id: z.uuid(),\n transactionId: z.uuid(),\n eventId: z.uuid().optional(),\n bookingId: z.uuid().optional(),\n userId: z.uuid(),\n disputeType: z.enum(DisputeType),\n reason: z.string(),\n amountInDispute: z.number(),\n disputeStatus: z.enum(DisputeStatus),\n resolution: z.string().optional(),\n reportedAt: z.iso.datetime(),\n slaDeadline: z.iso.datetime(),\n resolvedAt: z.iso.datetime().optional(),\n createdAt: z.iso.datetime(),\n});\n\nexport const DISPUTE_DETAIL_MAX_LENGTH = 500;\n\nexport const DisputeReasonSchema = z.enum([\n 'EVENT_DID_NOT_RUN',\n 'POOR_QUALITY',\n 'ACCESS_ISSUE',\n 'OTHER',\n]);\n\n// Mirrors Prisma `DisputeState` enum.\nexport const DisputeStateSchema = z.enum(['OPEN', 'RESOLVED_CUSTOMER', 'RESOLVED_HOST', 'EXPIRED']);\n\n// Mirrors Prisma `DisputeOutcome` enum.\nexport const DisputeOutcomeSchema = z.enum(['REFUNDED', 'DENIED', 'PARTIAL_REFUND']);\n\nconst EntitlementKindSchema = z.enum(EntitlementKind);\n\nexport const OpenDisputeRequestSchema = z\n .object({\n entitlementKind: EntitlementKindSchema,\n reason: DisputeReasonSchema,\n detail: z.string().trim().min(1).max(DISPUTE_DETAIL_MAX_LENGTH).optional(),\n })\n .strict();\n\nexport const AdminDisputeResponseSchema = z\n .object({\n id: z.uuid(),\n entitlementId: z.string(),\n eventId: z.uuid(),\n userId: z.uuid(),\n reason: DisputeReasonSchema,\n detail: z.string().nullable(),\n state: DisputeStateSchema,\n resolvedAt: z.iso.datetime().nullable(),\n resolutionOutcome: DisputeOutcomeSchema.nullable(),\n correlationId: z.string(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n })\n .strict();\n\nexport const MyDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const AdminDisputesQuerySchema = z\n .object({\n state: DisputeStateSchema.optional(),\n eventId: z.uuid().optional(),\n pageNumber: z.coerce.number().int().min(1).optional(),\n pageSize: z.coerce.number().int().min(1).max(100).optional(),\n })\n .strict();\n\nexport const ResolveDisputeRequestSchema = z\n .object({\n outcome: DisputeOutcomeSchema,\n refundId: z.string().min(1).max(100).optional(),\n resolutionNote: z.string().trim().max(500).optional(),\n })\n .strict();\n\nexport const PagedDisputesResponseSchema = z\n .object({\n items: z.array(AdminDisputeResponseSchema),\n ...PaginationResponseSchema.shape,\n })\n .strict();\n\nexport const AdminRevokeViewerPlaybackSchema = z.object({\n viewerId: z.uuid(),\n reason: z.string().min(1).max(500).optional(),\n});\n\nexport const AdminRevokedViewersResponseSchema = z.object({\n eventId: z.uuid(),\n viewerIds: z.array(z.uuid()),\n});\n"]}
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkLA63VYRR_js=require('./chunk-LA63VYRR.js'),chunkEAKBQ5VD_js=require('./chunk-EAKBQ5VD.js'),chunk244RJ2YJ_js=require('./chunk-244RJ2YJ.js'),chunkDQG37GYU_js=require('./chunk-DQG37GYU.js'),zod=require('zod');var P=[chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED,chunkLA63VYRR_js.b.CLOSED],O=[...P,chunkLA63VYRR_js.b.IN_DISPUTE],B={[chunkLA63VYRR_js.b.REQUESTED]:[chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE]:[chunkLA63VYRR_js.b.IN_NEGOTIATION,chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.IN_NEGOTIATION]:[chunkLA63VYRR_js.b.ACCEPTED,chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.ACCEPTED]:[chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING]:[chunkLA63VYRR_js.b.CONFIRMED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.CONFIRMED]:[chunkLA63VYRR_js.b.IN_PROGRESS,chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM],[chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM]:[chunkLA63VYRR_js.b.CONFIRMED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.IN_PROGRESS]:[chunkLA63VYRR_js.b.SERVICE_COMPLETED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.SERVICE_COMPLETED]:[chunkLA63VYRR_js.b.CLOSED],[chunkLA63VYRR_js.b.IN_DISPUTE]:[chunkLA63VYRR_js.b.CLOSED],[chunkLA63VYRR_js.b.REJECTED]:[],[chunkLA63VYRR_js.b.CANCELLED]:[],[chunkLA63VYRR_js.b.CLOSED]:[]},y={[`${chunkLA63VYRR_js.b.REQUESTED}->${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.SYSTEM],[`${chunkLA63VYRR_js.b.REQUESTED}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}->${chunkLA63VYRR_js.b.IN_NEGOTIATION}`]:[chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}->${chunkLA63VYRR_js.b.REJECTED}`]:[chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.IN_NEGOTIATION}->${chunkLA63VYRR_js.b.ACCEPTED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.IN_NEGOTIATION}->${chunkLA63VYRR_js.b.REJECTED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.IN_NEGOTIATION}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.ACCEPTED}->${chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.SYSTEM],[`${chunkLA63VYRR_js.b.ACCEPTED}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING}->${chunkLA63VYRR_js.b.CONFIRMED}`]:[chunkLA63VYRR_js.f.SYSTEM,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.CONFIRMED}->${chunkLA63VYRR_js.b.IN_PROGRESS}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.CONFIRMED}->${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.SYSTEM,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM}->${chunkLA63VYRR_js.b.CONFIRMED}`]:[chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.IN_PROGRESS}->${chunkLA63VYRR_js.b.SERVICE_COMPLETED}`]:[chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.SYSTEM,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.IN_PROGRESS}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.SERVICE_COMPLETED}->${chunkLA63VYRR_js.b.CLOSED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.ADMIN,chunkLA63VYRR_js.f.SYSTEM],[`${chunkLA63VYRR_js.b.IN_DISPUTE}->${chunkLA63VYRR_js.b.CLOSED}`]:[chunkLA63VYRR_js.f.ADMIN,chunkLA63VYRR_js.f.HOST]},v=[chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED,chunkLA63VYRR_js.b.IN_DISPUTE];function j(r,a){return `${r}->${a}`}function G(r){let a=B[r]??[];return O.includes(r)?a:[...a,chunkLA63VYRR_js.b.IN_DISPUTE]}function oe(r,a){return G(r).includes(a)}function U(r,a){return a===chunkLA63VYRR_js.b.IN_DISPUTE&&!O.includes(r)?[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER]:y[j(r,a)]??[]}function ne(r,a,l){return U(r,a).includes(l)}function ie(r,a){return v.includes(a)}var ce=zod.z.object({origin:zod.z.enum(chunkLA63VYRR_js.a),eventId:zod.z.uuid().optional(),producerId:zod.z.uuid(),agreedAmount:zod.z.number().min(0)}),ue=zod.z.object({escrowReference:zod.z.string()}),le=zod.z.object({id:zod.z.uuid(),eventId:zod.z.uuid().optional(),hostId:zod.z.uuid(),producerId:zod.z.uuid(),quotedPrice:zod.z.number(),currency:zod.z.string(),scopeOfWork:zod.z.record(zod.z.string(),zod.z.any()).optional(),requiredStartAt:zod.z.iso.datetime(),requiredEndAt:zod.z.iso.datetime(),bookingState:zod.z.enum(chunkLA63VYRR_js.b),paymentStatus:zod.z.enum(chunkLA63VYRR_js.e),escrowReference:zod.z.string().optional(),completedAt:zod.z.iso.datetime().optional(),hostRating:zod.z.number().optional(),hostReview:zod.z.string().optional(),producerRating:zod.z.number().optional(),producerReview:zod.z.string().optional(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime()}),de=zod.z.object({title:zod.z.string().max(255),description:zod.z.string(),requiredDate:zod.z.iso.datetime(),estimatedDurationMinutes:zod.z.number().int().positive().optional(),location:zod.z.string(),budgetRangeMin:zod.z.number().optional(),budgetRangeMax:zod.z.number().optional()}),me=zod.z.object({id:zod.z.uuid(),hostProfileId:zod.z.uuid(),eventId:zod.z.uuid().optional(),title:zod.z.string(),description:zod.z.string(),requiredDate:zod.z.iso.datetime(),estimatedDurationMinutes:zod.z.number().int().nullable().optional(),location:zod.z.string(),budgetRangeMin:zod.z.number().optional(),budgetRangeMax:zod.z.number().optional(),state:zod.z.enum(chunkLA63VYRR_js.c),proposalCount:zod.z.number(),createdAt:zod.z.iso.datetime()}),pe=zod.z.object({coverMessage:zod.z.string().optional(),proposedAmount:zod.z.number().min(0).optional(),availabilityNotes:zod.z.string().optional()}),ge=zod.z.object({id:zod.z.uuid(),jobListingId:zod.z.uuid(),producerProfileId:zod.z.uuid(),coverMessage:zod.z.string().optional(),proposedAmount:zod.z.number().optional(),state:zod.z.enum(chunkLA63VYRR_js.d),createdAt:zod.z.iso.datetime()});var E={ONSITE:"ONSITE",REMOTE:"REMOTE"},h={LOW:"LOW",MID:"MID",HIGH:"HIGH"};var x=zod.z.record(zod.z.string(),zod.z.unknown()),Ce=zod.z.object({producerId:zod.z.uuid(),origin:zod.z.enum(chunkLA63VYRR_js.a),eventId:zod.z.uuid().optional(),jobListingId:zod.z.uuid().optional(),sourceIoiId:zod.z.uuid().optional(),agreedAmount:zod.z.coerce.number().nonnegative().optional(),scopeOfWork:zod.z.string().max(5e3).optional()}).superRefine((r,a)=>{r.origin===chunkLA63VYRR_js.a.EVENT_DIRECT&&!r.eventId&&a.addIssue({code:"custom",message:"eventId is required when origin is EVENT_DIRECT",path:["eventId"]}),r.origin===chunkLA63VYRR_js.a.MARKETPLACE_DIRECT&&(r.eventId&&a.addIssue({code:"custom",message:"eventId must not be set when origin is MARKETPLACE_DIRECT",path:["eventId"]}),r.sourceIoiId&&a.addIssue({code:"custom",message:"sourceIoiId must not be set when origin is MARKETPLACE_DIRECT",path:["sourceIoiId"]})),r.origin===chunkLA63VYRR_js.a.JOB_LISTING&&(r.sourceIoiId||a.addIssue({code:"custom",message:"sourceIoiId is required when origin is JOB_LISTING",path:["sourceIoiId"]}),r.eventId&&a.addIssue({code:"custom",message:"eventId must not be set when origin is JOB_LISTING",path:["eventId"]})),r.sourceIoiId&&r.origin!==chunkLA63VYRR_js.a.JOB_LISTING&&a.addIssue({code:"custom",message:"sourceIoiId is only allowed when origin is JOB_LISTING",path:["sourceIoiId"]});}),S=zod.z.object({id:zod.z.uuid(),eventId:zod.z.uuid().nullable(),eventLinked:zod.z.boolean(),hostProfileId:zod.z.uuid(),producerProfileId:zod.z.uuid(),origin:zod.z.enum(chunkLA63VYRR_js.a),jobListingId:zod.z.uuid().nullable(),sourceIoiId:zod.z.uuid().nullable(),state:zod.z.enum(chunkLA63VYRR_js.b),agreedAmount:zod.z.number().nullable(),scopeOfWork:zod.z.string().nullable(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),De=zod.z.object({bookingId:zod.z.uuid(),booking:S}),$=zod.z.string().trim().min(5).max(500),Ne=zod.z.object({targetState:zod.z.enum(chunkLA63VYRR_js.b),reason:$.optional()}).superRefine((r,a)=>{(r.targetState===chunkLA63VYRR_js.b.REJECTED||r.targetState===chunkLA63VYRR_js.b.CANCELLED||r.targetState===chunkLA63VYRR_js.b.IN_DISPUTE)&&r.reason===void 0&&a.addIssue({code:"custom",message:"reason is required for this transition",path:["reason"]});}),Oe=zod.z.object({booking:S}),he=zod.z.object({notes:zod.z.string().max(2e3).optional()}),ke=zod.z.object({notes:zod.z.string().max(2e3).optional()}),Le=zod.z.object({booking:S,hostAcked:zod.z.boolean(),producerAcked:zod.z.boolean(),completed:zod.z.boolean(),forced:zod.z.boolean().optional()}),J=(r,a)=>{if(r.eventId)return;r.eventTitle?.trim()||r.title?.trim()||a.addIssue({code:"custom",message:"eventTitle is required when eventId is not provided",path:["eventTitle"]});},b=zod.z.object({eventTitle:zod.z.string().min(1).max(200).optional(),title:zod.z.string().min(1).max(200).optional(),description:zod.z.string().min(1).max(5e3),responsibilities:zod.z.string().min(1),requirements:zod.z.string().min(1),role:zod.z.string().min(1).max(120),requiredCount:zod.z.coerce.number().int().min(1),requiredDate:zod.z.iso.datetime().optional(),estimatedDurationMinutes:zod.z.coerce.number().int().positive().optional(),location:zod.z.enum(E),notes:zod.z.string().max(2e3).optional(),compensation:zod.z.coerce.number().nonnegative().optional(),attachments:x.optional(),eventId:zod.z.uuid().optional()}),q=b.superRefine(J),H=zod.z.object({eventTitle:zod.z.string().min(1).max(200).optional(),title:zod.z.string().min(1).max(200).optional(),description:zod.z.string().min(1).max(5e3),responsibilities:zod.z.string().min(1),requirements:zod.z.string().min(1),role:zod.z.string().min(1).max(120),requiredCount:zod.z.coerce.number().int().min(1),location:zod.z.enum(E),eventId:zod.z.uuid().optional()}),W=H,xe=b.partial().extend({saveAsDraft:zod.z.boolean().optional().default(false)}).superRefine((r,a)=>{if(r.saveAsDraft)return;let l=q.safeParse(r);l.success||a.addIssue({code:"custom",message:l.error.issues.map(_=>_.message).join("; ")});}),Me=b.partial(),fe=zod.z.object({...chunkDQG37GYU_js.d.shape,location:zod.z.enum(E).optional(),search:zod.z.string().trim().min(2).max(100).optional(),roles:zod.z.string().trim().min(1).max(500).optional(),requiredDateFrom:zod.z.string().optional(),requiredDateTo:zod.z.string().optional(),minCompensation:zod.z.coerce.number().int().min(0).optional(),maxCompensation:zod.z.coerce.number().int().min(0).optional(),compensationTier:zod.z.enum(h).optional(),matchMyAvailability:zod.z.enum(["true","false"]).optional().transform(r=>r==="true")}),_e=zod.z.object({...chunkDQG37GYU_js.d.shape,state:zod.z.enum(chunkLA63VYRR_js.c).optional(),search:zod.z.string().trim().min(2).max(100).optional()}),Pe=W.superRefine((r,a)=>{if(r.eventId)return;r.eventTitle?.trim()||r.title?.trim()||a.addIssue({code:"custom",message:"eventTitle is required for standalone job listings",path:["eventTitle"]});}),Be=zod.z.object({id:zod.z.uuid(),state:zod.z.literal("OPEN")}),ye=zod.z.object({id:zod.z.uuid(),hostProfileId:zod.z.uuid(),eventId:zod.z.uuid().nullable(),title:zod.z.string(),eventTitle:zod.z.string().nullable(),notes:zod.z.string().nullable(),description:zod.z.string(),responsibilities:zod.z.string(),requirements:zod.z.string(),role:zod.z.string(),requiredCount:zod.z.number().int().min(1),requiredDate:zod.z.string().nullable(),estimatedDurationMinutes:zod.z.number().int().nullable(),location:zod.z.enum(E),compensation:zod.z.number().nullable(),attachments:zod.z.unknown().nullable(),state:zod.z.enum(chunkLA63VYRR_js.c),proposalCount:zod.z.number().int(),cancelledAt:zod.z.string().nullable(),cancelledReason:zod.z.string().nullable(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),ve=zod.z.object({reason:zod.z.string().trim().min(5).max(500).optional()}),je=zod.z.object({id:zod.z.uuid(),state:zod.z.literal("CANCELLED"),cancelledAt:zod.z.iso.datetime().nullable()}),Ge=zod.z.object({coverMessage:zod.z.string().min(1).max(2e3).optional(),proposedAmount:zod.z.coerce.number().nonnegative().optional(),availabilityNotes:zod.z.string().max(2e3).optional(),attachments:x.optional()}),F=zod.z.object({id:zod.z.uuid(),jobListingId:zod.z.uuid(),producerProfileId:zod.z.uuid(),coverMessage:zod.z.string().nullable(),proposedAmount:zod.z.number().nullable(),availabilityNotes:zod.z.string().nullable(),state:zod.z.enum(chunkEAKBQ5VD_js.a),resultingBookingId:zod.z.uuid().nullable(),withdrawnAt:zod.z.string().nullable(),selectedAt:zod.z.string().nullable(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),w=F.extend({producerCompanyName:zod.z.string().nullable()}),k={CREATED_AT:"createdAt",UPDATED_AT:"updatedAt",PROPOSED_AMOUNT:"proposedAmount"},L={ASC:"asc",DESC:"desc"},Ue=zod.z.object({...chunkDQG37GYU_js.d.shape,jobListingId:zod.z.uuid().optional(),state:zod.z.enum(chunkEAKBQ5VD_js.a).optional(),search:zod.z.string().trim().min(2).max(100).optional(),sortBy:zod.z.enum(k).default(k.CREATED_AT),sortOrder:zod.z.enum(L).default(L.DESC)}),$e=w.extend({producerDisplayName:zod.z.string(),producerAvatarUrl:zod.z.url().nullable(),producerServiceCategoryLabels:zod.z.array(zod.z.string()),producerEquipmentLabels:zod.z.array(zod.z.string()),producerIsVerified:zod.z.boolean(),jobListingTitle:zod.z.string(),jobListingRole:zod.z.string(),jobListingState:zod.z.enum(chunkLA63VYRR_js.c),jobListingLocation:zod.z.enum(E),jobListingEventId:zod.z.uuid().nullable(),jobListingEventTitle:zod.z.string().nullable()});var M={SENT:"SENT",DELIVERED:"DELIVERED",READ:"READ"};var K=zod.z.object({id:zod.z.uuid(),bookingId:zod.z.uuid(),hostProfileId:zod.z.uuid(),producerProfileId:zod.z.uuid(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),V=zod.z.object({id:zod.z.uuid(),url:zod.z.string(),mimeType:zod.z.string(),sizeBytes:zod.z.number().int(),createdAt:zod.z.string()}),R=zod.z.object({id:zod.z.uuid(),threadId:zod.z.uuid(),senderUserId:zod.z.uuid(),body:zod.z.string(),sentAt:zod.z.string(),deliveryStatus:zod.z.enum(M),readAt:zod.z.string().nullable(),attachments:zod.z.array(V)}),Ke=chunkDQG37GYU_js.d,Ve=zod.z.object({messages:zod.z.array(R),...chunkDQG37GYU_js.e.shape}),ze=zod.z.object({thread:K,messages:zod.z.array(R),...chunkDQG37GYU_js.e.shape}),Qe=zod.z.object({body:zod.z.string().trim().min(1).max(5e3),attachments:zod.z.array(zod.z.object({url:zod.z.string().url(),mimeType:zod.z.string().min(1).max(120),sizeBytes:zod.z.number().int().positive()})).max(10).optional()}),Ye=zod.z.object({message:R}),Xe=zod.z.object({upToMessageId:zod.z.uuid().optional()}),Ze=zod.z.object({markedCount:zod.z.number().int().nonnegative()}),z=zod.z.object({threadId:zod.z.uuid(),bookingId:zod.z.uuid(),title:zod.z.string(),lastMessagePreview:zod.z.string().nullable(),lastMessageAt:zod.z.string().nullable(),lastSenderUserId:zod.z.uuid().nullable(),lastSenderDisplayName:zod.z.string().nullable(),unreadCount:zod.z.number().int().nonnegative(),bookingState:zod.z.enum(chunkLA63VYRR_js.b)}),et=zod.z.object({items:zod.z.array(z),...chunkDQG37GYU_js.e.shape});var Q=zod.z.object({id:zod.z.string(),role:chunk244RJ2YJ_js.b}),A=zod.z.object({reason:zod.z.string().optional(),ipAddress:zod.z.string().optional(),userAgent:zod.z.string().optional(),traceId:zod.z.string().optional()}),f=zod.z.record(zod.z.string(),zod.z.unknown()),Y=A.extend({beforeState:f.optional(),afterState:f.optional()}),X=A.extend({messageId:zod.z.string(),bodyPreview:zod.z.string(),attachmentCount:zod.z.number().int().nonnegative().optional()}),Z=A.extend({messageId:zod.z.string(),attachmentId:zod.z.string(),url:zod.z.string(),mimeType:zod.z.string(),sizeBytes:zod.z.number().int().nonnegative()}),T={timestamp:zod.z.string().datetime(),actor:Q};function d(r){return zod.z.object({...T,action:zod.z.literal(r),details:Y})}var ee=zod.z.discriminatedUnion("action",[d(chunkLA63VYRR_js.g.STATE_CHANGED),d(chunkLA63VYRR_js.g.TERMS_MODIFIED),d(chunkLA63VYRR_js.g.BOOKING_CREATED),d(chunkLA63VYRR_js.g.BOOKING_COMPLETED),d(chunkLA63VYRR_js.g.BOOKING_CANCELLED),d(chunkLA63VYRR_js.g.BOOKING_ACCEPTED),d(chunkLA63VYRR_js.g.BOOKING_REJECTED),zod.z.object({...T,action:zod.z.literal(chunkLA63VYRR_js.g.MESSAGE_SENT),details:X}),zod.z.object({...T,action:zod.z.literal(chunkLA63VYRR_js.g.ATTACHMENT_ADDED),details:Z})]),at=zod.z.object({items:zod.z.array(ee),...chunkDQG37GYU_js.e.shape});exports.$=Ze;exports.A=Le;exports.B=xe;exports.C=Me;exports.D=fe;exports.E=_e;exports.F=Pe;exports.G=Be;exports.H=ye;exports.I=ve;exports.J=je;exports.K=Ge;exports.L=F;exports.M=w;exports.N=k;exports.O=L;exports.P=Ue;exports.Q=$e;exports.R=M;exports.S=K;exports.T=V;exports.U=R;exports.V=Ke;exports.W=Ve;exports.X=ze;exports.Y=Qe;exports.Z=Ye;exports._=Xe;exports.a=P;exports.aa=z;exports.b=B;exports.ba=et;exports.c=y;exports.ca=Q;exports.d=v;exports.da=A;exports.e=j;exports.ea=f;exports.f=G;exports.fa=Y;exports.g=oe;exports.ga=X;exports.h=U;exports.ha=Z;exports.i=ne;exports.ia=ee;exports.j=ie;exports.ja=at;exports.k=ce;exports.l=ue;exports.m=le;exports.n=de;exports.o=me;exports.p=pe;exports.q=ge;exports.r=E;exports.s=h;exports.t=Ce;exports.u=S;exports.v=De;exports.w=Ne;exports.x=Oe;exports.y=he;exports.z=ke;//# sourceMappingURL=chunk-AB423ZP4.js.map
2
- //# sourceMappingURL=chunk-AB423ZP4.js.map
1
+ 'use strict';var chunkLA63VYRR_js=require('./chunk-LA63VYRR.js'),chunkEAKBQ5VD_js=require('./chunk-EAKBQ5VD.js'),chunkQBFGU5IU_js=require('./chunk-QBFGU5IU.js'),chunkG5GZSJ2W_js=require('./chunk-G5GZSJ2W.js'),zod=require('zod');var P=[chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED,chunkLA63VYRR_js.b.CLOSED],O=[...P,chunkLA63VYRR_js.b.IN_DISPUTE],B={[chunkLA63VYRR_js.b.REQUESTED]:[chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE]:[chunkLA63VYRR_js.b.IN_NEGOTIATION,chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.IN_NEGOTIATION]:[chunkLA63VYRR_js.b.ACCEPTED,chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.ACCEPTED]:[chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING]:[chunkLA63VYRR_js.b.CONFIRMED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.CONFIRMED]:[chunkLA63VYRR_js.b.IN_PROGRESS,chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM],[chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM]:[chunkLA63VYRR_js.b.CONFIRMED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.IN_PROGRESS]:[chunkLA63VYRR_js.b.SERVICE_COMPLETED,chunkLA63VYRR_js.b.CANCELLED],[chunkLA63VYRR_js.b.SERVICE_COMPLETED]:[chunkLA63VYRR_js.b.CLOSED],[chunkLA63VYRR_js.b.IN_DISPUTE]:[chunkLA63VYRR_js.b.CLOSED],[chunkLA63VYRR_js.b.REJECTED]:[],[chunkLA63VYRR_js.b.CANCELLED]:[],[chunkLA63VYRR_js.b.CLOSED]:[]},y={[`${chunkLA63VYRR_js.b.REQUESTED}->${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.SYSTEM],[`${chunkLA63VYRR_js.b.REQUESTED}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}->${chunkLA63VYRR_js.b.IN_NEGOTIATION}`]:[chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}->${chunkLA63VYRR_js.b.REJECTED}`]:[chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RESPONSE}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.IN_NEGOTIATION}->${chunkLA63VYRR_js.b.ACCEPTED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.IN_NEGOTIATION}->${chunkLA63VYRR_js.b.REJECTED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.IN_NEGOTIATION}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.ACCEPTED}->${chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.SYSTEM],[`${chunkLA63VYRR_js.b.ACCEPTED}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER],[`${chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING}->${chunkLA63VYRR_js.b.CONFIRMED}`]:[chunkLA63VYRR_js.f.SYSTEM,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.AWAITING_ESCROW_FUNDING}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.CONFIRMED}->${chunkLA63VYRR_js.b.IN_PROGRESS}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.CONFIRMED}->${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.SYSTEM,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM}->${chunkLA63VYRR_js.b.CONFIRMED}`]:[chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.AWAITING_PRODUCER_RECONFIRM}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.IN_PROGRESS}->${chunkLA63VYRR_js.b.SERVICE_COMPLETED}`]:[chunkLA63VYRR_js.f.PRODUCER,chunkLA63VYRR_js.f.SYSTEM,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.IN_PROGRESS}->${chunkLA63VYRR_js.b.CANCELLED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.ADMIN],[`${chunkLA63VYRR_js.b.SERVICE_COMPLETED}->${chunkLA63VYRR_js.b.CLOSED}`]:[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.ADMIN,chunkLA63VYRR_js.f.SYSTEM],[`${chunkLA63VYRR_js.b.IN_DISPUTE}->${chunkLA63VYRR_js.b.CLOSED}`]:[chunkLA63VYRR_js.f.ADMIN,chunkLA63VYRR_js.f.HOST]},v=[chunkLA63VYRR_js.b.REJECTED,chunkLA63VYRR_js.b.CANCELLED,chunkLA63VYRR_js.b.IN_DISPUTE];function j(r,a){return `${r}->${a}`}function G(r){let a=B[r]??[];return O.includes(r)?a:[...a,chunkLA63VYRR_js.b.IN_DISPUTE]}function oe(r,a){return G(r).includes(a)}function U(r,a){return a===chunkLA63VYRR_js.b.IN_DISPUTE&&!O.includes(r)?[chunkLA63VYRR_js.f.HOST,chunkLA63VYRR_js.f.PRODUCER]:y[j(r,a)]??[]}function ne(r,a,l){return U(r,a).includes(l)}function ie(r,a){return v.includes(a)}var ce=zod.z.object({origin:zod.z.enum(chunkLA63VYRR_js.a),eventId:zod.z.uuid().optional(),producerId:zod.z.uuid(),agreedAmount:zod.z.number().min(0)}),ue=zod.z.object({escrowReference:zod.z.string()}),le=zod.z.object({id:zod.z.uuid(),eventId:zod.z.uuid().optional(),hostId:zod.z.uuid(),producerId:zod.z.uuid(),quotedPrice:zod.z.number(),currency:zod.z.string(),scopeOfWork:zod.z.record(zod.z.string(),zod.z.any()).optional(),requiredStartAt:zod.z.iso.datetime(),requiredEndAt:zod.z.iso.datetime(),bookingState:zod.z.enum(chunkLA63VYRR_js.b),paymentStatus:zod.z.enum(chunkLA63VYRR_js.e),escrowReference:zod.z.string().optional(),completedAt:zod.z.iso.datetime().optional(),hostRating:zod.z.number().optional(),hostReview:zod.z.string().optional(),producerRating:zod.z.number().optional(),producerReview:zod.z.string().optional(),createdAt:zod.z.iso.datetime(),updatedAt:zod.z.iso.datetime()}),de=zod.z.object({title:zod.z.string().max(255),description:zod.z.string(),requiredDate:zod.z.iso.datetime(),estimatedDurationMinutes:zod.z.number().int().positive().optional(),location:zod.z.string(),budgetRangeMin:zod.z.number().optional(),budgetRangeMax:zod.z.number().optional()}),me=zod.z.object({id:zod.z.uuid(),hostProfileId:zod.z.uuid(),eventId:zod.z.uuid().optional(),title:zod.z.string(),description:zod.z.string(),requiredDate:zod.z.iso.datetime(),estimatedDurationMinutes:zod.z.number().int().nullable().optional(),location:zod.z.string(),budgetRangeMin:zod.z.number().optional(),budgetRangeMax:zod.z.number().optional(),state:zod.z.enum(chunkLA63VYRR_js.c),proposalCount:zod.z.number(),createdAt:zod.z.iso.datetime()}),pe=zod.z.object({coverMessage:zod.z.string().optional(),proposedAmount:zod.z.number().min(0).optional(),availabilityNotes:zod.z.string().optional()}),ge=zod.z.object({id:zod.z.uuid(),jobListingId:zod.z.uuid(),producerProfileId:zod.z.uuid(),coverMessage:zod.z.string().optional(),proposedAmount:zod.z.number().optional(),state:zod.z.enum(chunkLA63VYRR_js.d),createdAt:zod.z.iso.datetime()});var E={ONSITE:"ONSITE",REMOTE:"REMOTE"},h={LOW:"LOW",MID:"MID",HIGH:"HIGH"};var x=zod.z.record(zod.z.string(),zod.z.unknown()),Ce=zod.z.object({producerId:zod.z.uuid(),origin:zod.z.enum(chunkLA63VYRR_js.a),eventId:zod.z.uuid().optional(),jobListingId:zod.z.uuid().optional(),sourceIoiId:zod.z.uuid().optional(),agreedAmount:zod.z.coerce.number().nonnegative().optional(),scopeOfWork:zod.z.string().max(5e3).optional()}).superRefine((r,a)=>{r.origin===chunkLA63VYRR_js.a.EVENT_DIRECT&&!r.eventId&&a.addIssue({code:"custom",message:"eventId is required when origin is EVENT_DIRECT",path:["eventId"]}),r.origin===chunkLA63VYRR_js.a.MARKETPLACE_DIRECT&&(r.eventId&&a.addIssue({code:"custom",message:"eventId must not be set when origin is MARKETPLACE_DIRECT",path:["eventId"]}),r.sourceIoiId&&a.addIssue({code:"custom",message:"sourceIoiId must not be set when origin is MARKETPLACE_DIRECT",path:["sourceIoiId"]})),r.origin===chunkLA63VYRR_js.a.JOB_LISTING&&(r.sourceIoiId||a.addIssue({code:"custom",message:"sourceIoiId is required when origin is JOB_LISTING",path:["sourceIoiId"]}),r.eventId&&a.addIssue({code:"custom",message:"eventId must not be set when origin is JOB_LISTING",path:["eventId"]})),r.sourceIoiId&&r.origin!==chunkLA63VYRR_js.a.JOB_LISTING&&a.addIssue({code:"custom",message:"sourceIoiId is only allowed when origin is JOB_LISTING",path:["sourceIoiId"]});}),S=zod.z.object({id:zod.z.uuid(),eventId:zod.z.uuid().nullable(),eventLinked:zod.z.boolean(),hostProfileId:zod.z.uuid(),producerProfileId:zod.z.uuid(),origin:zod.z.enum(chunkLA63VYRR_js.a),jobListingId:zod.z.uuid().nullable(),sourceIoiId:zod.z.uuid().nullable(),state:zod.z.enum(chunkLA63VYRR_js.b),agreedAmount:zod.z.number().nullable(),scopeOfWork:zod.z.string().nullable(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),De=zod.z.object({bookingId:zod.z.uuid(),booking:S}),$=zod.z.string().trim().min(5).max(500),Ne=zod.z.object({targetState:zod.z.enum(chunkLA63VYRR_js.b),reason:$.optional()}).superRefine((r,a)=>{(r.targetState===chunkLA63VYRR_js.b.REJECTED||r.targetState===chunkLA63VYRR_js.b.CANCELLED||r.targetState===chunkLA63VYRR_js.b.IN_DISPUTE)&&r.reason===void 0&&a.addIssue({code:"custom",message:"reason is required for this transition",path:["reason"]});}),Oe=zod.z.object({booking:S}),he=zod.z.object({notes:zod.z.string().max(2e3).optional()}),ke=zod.z.object({notes:zod.z.string().max(2e3).optional()}),Le=zod.z.object({booking:S,hostAcked:zod.z.boolean(),producerAcked:zod.z.boolean(),completed:zod.z.boolean(),forced:zod.z.boolean().optional()}),J=(r,a)=>{if(r.eventId)return;r.eventTitle?.trim()||r.title?.trim()||a.addIssue({code:"custom",message:"eventTitle is required when eventId is not provided",path:["eventTitle"]});},b=zod.z.object({eventTitle:zod.z.string().min(1).max(200).optional(),title:zod.z.string().min(1).max(200).optional(),description:zod.z.string().min(1).max(5e3),responsibilities:zod.z.string().min(1),requirements:zod.z.string().min(1),role:zod.z.string().min(1).max(120),requiredCount:zod.z.coerce.number().int().min(1),requiredDate:zod.z.iso.datetime().optional(),estimatedDurationMinutes:zod.z.coerce.number().int().positive().optional(),location:zod.z.enum(E),notes:zod.z.string().max(2e3).optional(),compensation:zod.z.coerce.number().nonnegative().optional(),attachments:x.optional(),eventId:zod.z.uuid().optional()}),q=b.superRefine(J),H=zod.z.object({eventTitle:zod.z.string().min(1).max(200).optional(),title:zod.z.string().min(1).max(200).optional(),description:zod.z.string().min(1).max(5e3),responsibilities:zod.z.string().min(1),requirements:zod.z.string().min(1),role:zod.z.string().min(1).max(120),requiredCount:zod.z.coerce.number().int().min(1),location:zod.z.enum(E),eventId:zod.z.uuid().optional()}),W=H,xe=b.partial().extend({saveAsDraft:zod.z.boolean().optional().default(false)}).superRefine((r,a)=>{if(r.saveAsDraft)return;let l=q.safeParse(r);l.success||a.addIssue({code:"custom",message:l.error.issues.map(_=>_.message).join("; ")});}),Me=b.partial(),fe=zod.z.object({...chunkG5GZSJ2W_js.e.shape,location:zod.z.enum(E).optional(),search:zod.z.string().trim().min(2).max(100).optional(),roles:zod.z.string().trim().min(1).max(500).optional(),requiredDateFrom:zod.z.string().optional(),requiredDateTo:zod.z.string().optional(),minCompensation:zod.z.coerce.number().int().min(0).optional(),maxCompensation:zod.z.coerce.number().int().min(0).optional(),compensationTier:zod.z.enum(h).optional(),matchMyAvailability:zod.z.enum(["true","false"]).optional().transform(r=>r==="true")}),_e=zod.z.object({...chunkG5GZSJ2W_js.e.shape,state:zod.z.enum(chunkLA63VYRR_js.c).optional(),search:zod.z.string().trim().min(2).max(100).optional()}),Pe=W.superRefine((r,a)=>{if(r.eventId)return;r.eventTitle?.trim()||r.title?.trim()||a.addIssue({code:"custom",message:"eventTitle is required for standalone job listings",path:["eventTitle"]});}),Be=zod.z.object({id:zod.z.uuid(),state:zod.z.literal("OPEN")}),ye=zod.z.object({id:zod.z.uuid(),hostProfileId:zod.z.uuid(),eventId:zod.z.uuid().nullable(),title:zod.z.string(),eventTitle:zod.z.string().nullable(),notes:zod.z.string().nullable(),description:zod.z.string(),responsibilities:zod.z.string(),requirements:zod.z.string(),role:zod.z.string(),requiredCount:zod.z.number().int().min(1),requiredDate:zod.z.string().nullable(),estimatedDurationMinutes:zod.z.number().int().nullable(),location:zod.z.enum(E),compensation:zod.z.number().nullable(),attachments:zod.z.unknown().nullable(),state:zod.z.enum(chunkLA63VYRR_js.c),proposalCount:zod.z.number().int(),cancelledAt:zod.z.string().nullable(),cancelledReason:zod.z.string().nullable(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),ve=zod.z.object({reason:zod.z.string().trim().min(5).max(500).optional()}),je=zod.z.object({id:zod.z.uuid(),state:zod.z.literal("CANCELLED"),cancelledAt:zod.z.iso.datetime().nullable()}),Ge=zod.z.object({coverMessage:zod.z.string().min(1).max(2e3).optional(),proposedAmount:zod.z.coerce.number().nonnegative().optional(),availabilityNotes:zod.z.string().max(2e3).optional(),attachments:x.optional()}),F=zod.z.object({id:zod.z.uuid(),jobListingId:zod.z.uuid(),producerProfileId:zod.z.uuid(),coverMessage:zod.z.string().nullable(),proposedAmount:zod.z.number().nullable(),availabilityNotes:zod.z.string().nullable(),state:zod.z.enum(chunkEAKBQ5VD_js.a),resultingBookingId:zod.z.uuid().nullable(),withdrawnAt:zod.z.string().nullable(),selectedAt:zod.z.string().nullable(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),w=F.extend({producerCompanyName:zod.z.string().nullable()}),k={CREATED_AT:"createdAt",UPDATED_AT:"updatedAt",PROPOSED_AMOUNT:"proposedAmount"},L={ASC:"asc",DESC:"desc"},Ue=zod.z.object({...chunkG5GZSJ2W_js.e.shape,jobListingId:zod.z.uuid().optional(),state:zod.z.enum(chunkEAKBQ5VD_js.a).optional(),search:zod.z.string().trim().min(2).max(100).optional(),sortBy:zod.z.enum(k).default(k.CREATED_AT),sortOrder:zod.z.enum(L).default(L.DESC)}),$e=w.extend({producerDisplayName:zod.z.string(),producerAvatarUrl:zod.z.url().nullable(),producerServiceCategoryLabels:zod.z.array(zod.z.string()),producerEquipmentLabels:zod.z.array(zod.z.string()),producerIsVerified:zod.z.boolean(),jobListingTitle:zod.z.string(),jobListingRole:zod.z.string(),jobListingState:zod.z.enum(chunkLA63VYRR_js.c),jobListingLocation:zod.z.enum(E),jobListingEventId:zod.z.uuid().nullable(),jobListingEventTitle:zod.z.string().nullable()});var M={SENT:"SENT",DELIVERED:"DELIVERED",READ:"READ"};var K=zod.z.object({id:zod.z.uuid(),bookingId:zod.z.uuid(),hostProfileId:zod.z.uuid(),producerProfileId:zod.z.uuid(),createdAt:zod.z.string(),updatedAt:zod.z.string()}),V=zod.z.object({id:zod.z.uuid(),url:zod.z.string(),mimeType:zod.z.string(),sizeBytes:zod.z.number().int(),createdAt:zod.z.string()}),R=zod.z.object({id:zod.z.uuid(),threadId:zod.z.uuid(),senderUserId:zod.z.uuid(),body:zod.z.string(),sentAt:zod.z.string(),deliveryStatus:zod.z.enum(M),readAt:zod.z.string().nullable(),attachments:zod.z.array(V)}),Ke=chunkG5GZSJ2W_js.e,Ve=zod.z.object({messages:zod.z.array(R),...chunkG5GZSJ2W_js.f.shape}),ze=zod.z.object({thread:K,messages:zod.z.array(R),...chunkG5GZSJ2W_js.f.shape}),Qe=zod.z.object({body:zod.z.string().trim().min(1).max(5e3),attachments:zod.z.array(zod.z.object({url:zod.z.string().url(),mimeType:zod.z.string().min(1).max(120),sizeBytes:zod.z.number().int().positive()})).max(10).optional()}),Ye=zod.z.object({message:R}),Xe=zod.z.object({upToMessageId:zod.z.uuid().optional()}),Ze=zod.z.object({markedCount:zod.z.number().int().nonnegative()}),z=zod.z.object({threadId:zod.z.uuid(),bookingId:zod.z.uuid(),title:zod.z.string(),lastMessagePreview:zod.z.string().nullable(),lastMessageAt:zod.z.string().nullable(),lastSenderUserId:zod.z.uuid().nullable(),lastSenderDisplayName:zod.z.string().nullable(),unreadCount:zod.z.number().int().nonnegative(),bookingState:zod.z.enum(chunkLA63VYRR_js.b)}),et=zod.z.object({items:zod.z.array(z),...chunkG5GZSJ2W_js.f.shape});var Q=zod.z.object({id:zod.z.string(),role:chunkQBFGU5IU_js.b}),A=zod.z.object({reason:zod.z.string().optional(),ipAddress:zod.z.string().optional(),userAgent:zod.z.string().optional(),traceId:zod.z.string().optional()}),f=zod.z.record(zod.z.string(),zod.z.unknown()),Y=A.extend({beforeState:f.optional(),afterState:f.optional()}),X=A.extend({messageId:zod.z.string(),bodyPreview:zod.z.string(),attachmentCount:zod.z.number().int().nonnegative().optional()}),Z=A.extend({messageId:zod.z.string(),attachmentId:zod.z.string(),url:zod.z.string(),mimeType:zod.z.string(),sizeBytes:zod.z.number().int().nonnegative()}),T={timestamp:zod.z.string().datetime(),actor:Q};function d(r){return zod.z.object({...T,action:zod.z.literal(r),details:Y})}var ee=zod.z.discriminatedUnion("action",[d(chunkLA63VYRR_js.g.STATE_CHANGED),d(chunkLA63VYRR_js.g.TERMS_MODIFIED),d(chunkLA63VYRR_js.g.BOOKING_CREATED),d(chunkLA63VYRR_js.g.BOOKING_COMPLETED),d(chunkLA63VYRR_js.g.BOOKING_CANCELLED),d(chunkLA63VYRR_js.g.BOOKING_ACCEPTED),d(chunkLA63VYRR_js.g.BOOKING_REJECTED),zod.z.object({...T,action:zod.z.literal(chunkLA63VYRR_js.g.MESSAGE_SENT),details:X}),zod.z.object({...T,action:zod.z.literal(chunkLA63VYRR_js.g.ATTACHMENT_ADDED),details:Z})]),at=zod.z.object({items:zod.z.array(ee),...chunkG5GZSJ2W_js.f.shape});exports.$=Ze;exports.A=Le;exports.B=xe;exports.C=Me;exports.D=fe;exports.E=_e;exports.F=Pe;exports.G=Be;exports.H=ye;exports.I=ve;exports.J=je;exports.K=Ge;exports.L=F;exports.M=w;exports.N=k;exports.O=L;exports.P=Ue;exports.Q=$e;exports.R=M;exports.S=K;exports.T=V;exports.U=R;exports.V=Ke;exports.W=Ve;exports.X=ze;exports.Y=Qe;exports.Z=Ye;exports._=Xe;exports.a=P;exports.aa=z;exports.b=B;exports.ba=et;exports.c=y;exports.ca=Q;exports.d=v;exports.da=A;exports.e=j;exports.ea=f;exports.f=G;exports.fa=Y;exports.g=oe;exports.ga=X;exports.h=U;exports.ha=Z;exports.i=ne;exports.ia=ee;exports.j=ie;exports.ja=at;exports.k=ce;exports.l=ue;exports.m=le;exports.n=de;exports.o=me;exports.p=pe;exports.q=ge;exports.r=E;exports.s=h;exports.t=Ce;exports.u=S;exports.v=De;exports.w=Ne;exports.x=Oe;exports.y=he;exports.z=ke;//# sourceMappingURL=chunk-CIEAWO4Z.js.map
2
+ //# sourceMappingURL=chunk-CIEAWO4Z.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/booking/booking-state-machine.ts","../src/booking/booking.schemas.ts","../src/booking/hiring.enums.ts","../src/booking/hiring.schemas.ts","../src/booking/thread.enums.ts","../src/booking/thread.schemas.ts","../src/booking/booking-audit.schemas.ts"],"names":["BOOKING_TERMINAL_STATES","BookingState","DISPUTE_EXCLUDED_FROM","VALID_BOOKING_TRANSITIONS","BOOKING_TRANSITION_ACTORS","BookingTransitionActor","BOOKING_TRANSITION_TARGETS_REQUIRING_REASON","bookingTransitionKey","from","to","getAllowedBookingTargetStates","base","isValidBookingTransition","getBookingTransitionActors","canActorPerformBookingTransition","actor","bookingTransitionRequiresReason","_from","CreateBookingRequestSchema","z","BookingOrigin","ConfirmBookingRequestSchema","BookingResponseSchema","BookingPaymentStatus","CreateJobListingRequestSchema","JobListingResponseSchema","JobListingState","SubmitIndicationOfInterestRequestSchema","IndicationOfInterestResponseSchema","IoiState","JobLocation","JobListingCompensationTier","jsonRecordSchema","CreateMarketplaceBookingRequestSchema","data","ctx","MarketplaceBookingResponseSchema","CreateMarketplaceBookingResponseSchema","bookingTransitionReasonSchema","TransitionMarketplaceBookingRequestSchema","TransitionMarketplaceBookingResponseSchema","CompleteMarketplaceBookingRequestSchema","ForceCompleteMarketplaceBookingRequestSchema","CompleteMarketplaceBookingResponseSchema","jobListingEventTitleRefine","MarketplaceJobListingBodyFieldsSchema","MarketplaceJobListingBodySchema","PublishableJobListingBodyFieldsSchema","PublishableJobListingBodySchema","CreateMarketplaceJobListingRequestSchema","result","issue","UpdateMarketplaceJobListingRequestSchema","ListMarketplaceJobListingsQuerySchema","PaginationParamsSchema","value","ListHostMarketplaceJobListingsQuerySchema","PublishReadyJobListingSchema","PublishMarketplaceJobListingResponseSchema","MarketplaceJobListingResponseSchema","CancelMarketplaceJobListingRequestSchema","CancelMarketplaceJobListingResponseSchema","SubmitMarketplaceIndicationOfInterestRequestSchema","MarketplaceIndicationOfInterestResponseSchema","JobInterestState","MarketplaceIndicationOfInterestHostItemSchema","HostIndicationOfInterestSortBy","SortOrder","ListHostMarketplaceIndicationsQuerySchema","MarketplaceHostIndicationOfInterestInboxItemSchema","MessageDeliveryStatus","MarketplaceHiringThreadSchema","MarketplaceHiringMessageAttachmentSchema","MarketplaceHiringMessageSchema","ListMarketplaceHiringThreadMessagesQuerySchema","ListMarketplaceHiringThreadMessagesResponseSchema","PaginationResponseSchema","GetMarketplaceHiringThreadResponseSchema","PostMarketplaceHiringThreadMessageRequestSchema","PostMarketplaceHiringThreadMessageResponseSchema","MarkMarketplaceHiringThreadReadRequestSchema","MarkMarketplaceHiringThreadReadResponseSchema","MarketplaceHiringThreadInboxItemSchema","ListMarketplaceHiringThreadsResponseSchema","BookingAuditActorSchema","AuditActorRoleSchema","BookingAuditRequestMetadataSchema","BookingAuditSnapshotSchema","BookingAuditStateTransitionDetailsSchema","BookingAuditMessageSentDetailsSchema","BookingAuditAttachmentAddedDetailsSchema","auditEntryBase","stateTransitionAuditEntry","action","AdminBookingAuditEntrySchema","BookingAuditAction","AdminBookingAuditResponseSchema"],"mappings":"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","file":"chunk-AB423ZP4.js","sourcesContent":["import { BookingState, BookingTransitionActor } from './booking.enums';\n\nexport type BookingTransitionKey = `${BookingState}->${BookingState}`;\n\nexport const BOOKING_TERMINAL_STATES: readonly BookingState[] = [\n BookingState.REJECTED,\n BookingState.CANCELLED,\n BookingState.CLOSED,\n];\n\nconst DISPUTE_EXCLUDED_FROM: readonly BookingState[] = [\n ...BOOKING_TERMINAL_STATES,\n BookingState.IN_DISPUTE,\n];\n\n/** Valid target states per source (excludes dispute shortcut — see `getAllowedBookingTargetStates`). */\nexport const VALID_BOOKING_TRANSITIONS: Record<BookingState, readonly BookingState[]> = {\n [BookingState.REQUESTED]: [BookingState.AWAITING_PRODUCER_RESPONSE, BookingState.CANCELLED],\n [BookingState.AWAITING_PRODUCER_RESPONSE]: [\n BookingState.IN_NEGOTIATION,\n BookingState.REJECTED,\n BookingState.CANCELLED,\n ],\n [BookingState.IN_NEGOTIATION]: [\n BookingState.ACCEPTED,\n BookingState.REJECTED,\n BookingState.CANCELLED,\n ],\n [BookingState.ACCEPTED]: [BookingState.AWAITING_ESCROW_FUNDING, BookingState.CANCELLED],\n [BookingState.AWAITING_ESCROW_FUNDING]: [BookingState.CONFIRMED, BookingState.CANCELLED],\n [BookingState.CONFIRMED]: [BookingState.IN_PROGRESS, BookingState.AWAITING_PRODUCER_RECONFIRM],\n [BookingState.AWAITING_PRODUCER_RECONFIRM]: [BookingState.CONFIRMED, BookingState.CANCELLED],\n [BookingState.IN_PROGRESS]: [BookingState.SERVICE_COMPLETED, BookingState.CANCELLED],\n [BookingState.SERVICE_COMPLETED]: [BookingState.CLOSED],\n [BookingState.IN_DISPUTE]: [BookingState.CLOSED],\n [BookingState.REJECTED]: [],\n [BookingState.CANCELLED]: [],\n [BookingState.CLOSED]: [],\n};\n\n/** RBAC: which actor may perform each transition (dispute edges merged at runtime). */\nexport const BOOKING_TRANSITION_ACTORS: Partial<\n Record<BookingTransitionKey, readonly BookingTransitionActor[]>\n> = {\n [`${BookingState.REQUESTED}->${BookingState.AWAITING_PRODUCER_RESPONSE}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.REQUESTED}->${BookingState.CANCELLED}`]: [BookingTransitionActor.HOST],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.IN_NEGOTIATION}`]: [\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.REJECTED}`]: [\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.ACCEPTED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.REJECTED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.ACCEPTED}->${BookingState.AWAITING_ESCROW_FUNDING}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.ACCEPTED}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_ESCROW_FUNDING}->${BookingState.CONFIRMED}`]: [\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.AWAITING_ESCROW_FUNDING}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.CONFIRMED}->${BookingState.IN_PROGRESS}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.CONFIRMED}->${BookingState.AWAITING_PRODUCER_RECONFIRM}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.AWAITING_PRODUCER_RECONFIRM}->${BookingState.CONFIRMED}`]: [\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.AWAITING_PRODUCER_RECONFIRM}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.IN_PROGRESS}->${BookingState.SERVICE_COMPLETED}`]: [\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.IN_PROGRESS}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.SERVICE_COMPLETED}->${BookingState.CLOSED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.IN_DISPUTE}->${BookingState.CLOSED}`]: [\n BookingTransitionActor.ADMIN,\n BookingTransitionActor.HOST,\n ],\n};\n\n/** Target states that require a `reason` on the transition request. */\nexport const BOOKING_TRANSITION_TARGETS_REQUIRING_REASON: readonly BookingState[] = [\n BookingState.REJECTED,\n BookingState.CANCELLED,\n BookingState.IN_DISPUTE,\n];\n\nexport function bookingTransitionKey(from: BookingState, to: BookingState): BookingTransitionKey {\n return `${from}->${to}`;\n}\n\nexport function getAllowedBookingTargetStates(from: BookingState): readonly BookingState[] {\n const base = VALID_BOOKING_TRANSITIONS[from] ?? [];\n if (!DISPUTE_EXCLUDED_FROM.includes(from)) {\n return [...base, BookingState.IN_DISPUTE];\n }\n return base;\n}\n\nexport function isValidBookingTransition(from: BookingState, to: BookingState): boolean {\n return getAllowedBookingTargetStates(from).includes(to);\n}\n\nexport function getBookingTransitionActors(\n from: BookingState,\n to: BookingState,\n): readonly BookingTransitionActor[] {\n if (to === BookingState.IN_DISPUTE && !DISPUTE_EXCLUDED_FROM.includes(from)) {\n return [BookingTransitionActor.HOST, BookingTransitionActor.PRODUCER];\n }\n return BOOKING_TRANSITION_ACTORS[bookingTransitionKey(from, to)] ?? [];\n}\n\nexport function canActorPerformBookingTransition(\n from: BookingState,\n to: BookingState,\n actor: BookingTransitionActor,\n): boolean {\n return getBookingTransitionActors(from, to).includes(actor);\n}\n\nexport function bookingTransitionRequiresReason(_from: BookingState, to: BookingState): boolean {\n return BOOKING_TRANSITION_TARGETS_REQUIRING_REASON.includes(to);\n}\n","import { z } from 'zod';\nimport {\n BookingOrigin,\n BookingState,\n JobListingState,\n IoiState,\n BookingPaymentStatus,\n} from './booking.enums';\n\nexport const CreateBookingRequestSchema = z.object({\n origin: z.enum(BookingOrigin),\n eventId: z.uuid().optional(),\n producerId: z.uuid(),\n agreedAmount: z.number().min(0),\n});\n\nexport const ConfirmBookingRequestSchema = z.object({\n escrowReference: z.string(),\n});\n\nexport const BookingResponseSchema = z.object({\n id: z.uuid(),\n eventId: z.uuid().optional(),\n hostId: z.uuid(),\n producerId: z.uuid(),\n quotedPrice: z.number(),\n currency: z.string(),\n scopeOfWork: z.record(z.string(), z.any()).optional(),\n requiredStartAt: z.iso.datetime(),\n requiredEndAt: z.iso.datetime(),\n bookingState: z.enum(BookingState),\n paymentStatus: z.enum(BookingPaymentStatus),\n escrowReference: z.string().optional(),\n completedAt: z.iso.datetime().optional(),\n hostRating: z.number().optional(),\n hostReview: z.string().optional(),\n producerRating: z.number().optional(),\n producerReview: z.string().optional(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const CreateJobListingRequestSchema = z.object({\n title: z.string().max(255),\n description: z.string(),\n requiredDate: z.iso.datetime(),\n estimatedDurationMinutes: z.number().int().positive().optional(),\n location: z.string(),\n budgetRangeMin: z.number().optional(),\n budgetRangeMax: z.number().optional(),\n});\n\nexport const JobListingResponseSchema = z.object({\n id: z.uuid(),\n hostProfileId: z.uuid(),\n eventId: z.uuid().optional(),\n title: z.string(),\n description: z.string(),\n requiredDate: z.iso.datetime(),\n estimatedDurationMinutes: z.number().int().nullable().optional(),\n location: z.string(),\n budgetRangeMin: z.number().optional(),\n budgetRangeMax: z.number().optional(),\n state: z.enum(JobListingState),\n proposalCount: z.number(),\n createdAt: z.iso.datetime(),\n});\n\nexport const SubmitIndicationOfInterestRequestSchema = z.object({\n coverMessage: z.string().optional(),\n proposedAmount: z.number().min(0).optional(),\n availabilityNotes: z.string().optional(),\n});\n\nexport const IndicationOfInterestResponseSchema = z.object({\n id: z.uuid(),\n jobListingId: z.uuid(),\n producerProfileId: z.uuid(),\n coverMessage: z.string().optional(),\n proposedAmount: z.number().optional(),\n state: z.enum(IoiState),\n createdAt: z.iso.datetime(),\n});\n","export const JobLocation = {\n ONSITE: 'ONSITE',\n REMOTE: 'REMOTE',\n} as const;\nexport type JobLocation = (typeof JobLocation)[keyof typeof JobLocation];\n\n/** Discover-jobs compensation bracket filter (NGN). */\nexport const JobListingCompensationTier = {\n LOW: 'LOW',\n MID: 'MID',\n HIGH: 'HIGH',\n} as const;\nexport type JobListingCompensationTier =\n (typeof JobListingCompensationTier)[keyof typeof JobListingCompensationTier];\n","import { z } from 'zod';\nimport { JobInterestState } from '../joblisting/listing.enum';\nimport { BookingOrigin, BookingState, JobListingState } from './booking.enums';\nimport { JobListingCompensationTier, JobLocation } from './hiring.enums';\nimport { PaginationParamsSchema } from '../common';\n\nconst jsonRecordSchema = z.record(z.string(), z.unknown());\n\n/** `POST /marketplace/bookings` */\nexport const CreateMarketplaceBookingRequestSchema = z\n .object({\n producerId: z.uuid(),\n origin: z.enum(BookingOrigin),\n eventId: z.uuid().optional(),\n jobListingId: z.uuid().optional(),\n sourceIoiId: z.uuid().optional(),\n agreedAmount: z.coerce.number().nonnegative().optional(),\n scopeOfWork: z.string().max(5000).optional(),\n })\n .superRefine((data, ctx) => {\n if (data.origin === BookingOrigin.EVENT_DIRECT && !data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId is required when origin is EVENT_DIRECT',\n path: ['eventId'],\n });\n }\n if (data.origin === BookingOrigin.MARKETPLACE_DIRECT) {\n if (data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId must not be set when origin is MARKETPLACE_DIRECT',\n path: ['eventId'],\n });\n }\n if (data.sourceIoiId) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId must not be set when origin is MARKETPLACE_DIRECT',\n path: ['sourceIoiId'],\n });\n }\n }\n if (data.origin === BookingOrigin.JOB_LISTING) {\n if (!data.sourceIoiId) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId is required when origin is JOB_LISTING',\n path: ['sourceIoiId'],\n });\n }\n if (data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId must not be set when origin is JOB_LISTING',\n path: ['eventId'],\n });\n }\n }\n if (data.sourceIoiId && data.origin !== BookingOrigin.JOB_LISTING) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId is only allowed when origin is JOB_LISTING',\n path: ['sourceIoiId'],\n });\n }\n });\n\nexport const MarketplaceBookingResponseSchema = z.object({\n id: z.uuid(),\n eventId: z.uuid().nullable(),\n eventLinked: z.boolean(),\n hostProfileId: z.uuid(),\n producerProfileId: z.uuid(),\n origin: z.enum(BookingOrigin),\n jobListingId: z.uuid().nullable(),\n sourceIoiId: z.uuid().nullable(),\n state: z.enum(BookingState),\n agreedAmount: z.number().nullable(),\n scopeOfWork: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** `POST /marketplace/bookings` — create acknowledgement */\nexport const CreateMarketplaceBookingResponseSchema = z.object({\n bookingId: z.uuid(),\n booking: MarketplaceBookingResponseSchema,\n});\n\nconst bookingTransitionReasonSchema = z.string().trim().min(5).max(500);\n\n/** `POST /marketplace/bookings/:id/transition` (host, producer, admin) */\nexport const TransitionMarketplaceBookingRequestSchema = z\n .object({\n targetState: z.enum(BookingState),\n reason: bookingTransitionReasonSchema.optional(),\n })\n .superRefine((data, ctx) => {\n const requiresReason =\n data.targetState === BookingState.REJECTED ||\n data.targetState === BookingState.CANCELLED ||\n data.targetState === BookingState.IN_DISPUTE;\n if (requiresReason && data.reason === undefined) {\n ctx.addIssue({\n code: 'custom',\n message: 'reason is required for this transition',\n path: ['reason'],\n });\n }\n });\n\nexport const TransitionMarketplaceBookingResponseSchema = z.object({\n booking: MarketplaceBookingResponseSchema,\n});\n\n/** `POST /marketplace/bookings/:id/complete` — dual-ack manual completion */\nexport const CompleteMarketplaceBookingRequestSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/** `POST /marketplace/bookings/:id/admin-force-complete` — TRUST admin override */\nexport const ForceCompleteMarketplaceBookingRequestSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\nexport const CompleteMarketplaceBookingResponseSchema = z.object({\n booking: MarketplaceBookingResponseSchema,\n hostAcked: z.boolean(),\n producerAcked: z.boolean(),\n completed: z.boolean(),\n forced: z.boolean().optional(),\n});\n\nconst jobListingEventTitleRefine = (\n data: {\n eventId?: string | undefined;\n eventTitle?: string | undefined;\n title?: string | undefined;\n },\n ctx: z.RefinementCtx,\n) => {\n if (data.eventId) {\n return;\n }\n const standaloneTitle = data.eventTitle?.trim() || data.title?.trim();\n if (!standaloneTitle) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventTitle is required when eventId is not provided',\n path: ['eventTitle'],\n });\n }\n};\n\nconst MarketplaceJobListingBodyFieldsSchema = z.object({\n /** Standalone event title — required when `eventId` is absent. Ignored when linked. */\n eventTitle: z.string().min(1).max(200).optional(),\n /** @deprecated Use `eventTitle`. Kept for backward compatibility. */\n title: z.string().min(1).max(200).optional(),\n description: z.string().min(1).max(5000),\n responsibilities: z.string().min(1),\n requirements: z.string().min(1),\n role: z.string().min(1).max(120),\n requiredCount: z.coerce.number().int().min(1),\n requiredDate: z.iso.datetime().optional(),\n estimatedDurationMinutes: z.coerce.number().int().positive().optional(),\n location: z.enum(JobLocation),\n notes: z.string().max(2000).optional(),\n compensation: z.coerce.number().nonnegative().optional(),\n attachments: jsonRecordSchema.optional(),\n eventId: z.uuid().optional(),\n});\n\nconst MarketplaceJobListingBodySchema = MarketplaceJobListingBodyFieldsSchema.superRefine(\n jobListingEventTitleRefine,\n);\n\n/** Publish/create body without event-title guard (linked listings resolve title at read time). */\nconst PublishableJobListingBodyFieldsSchema = z.object({\n eventTitle: z.string().min(1).max(200).optional(),\n title: z.string().min(1).max(200).optional(),\n description: z.string().min(1).max(5000),\n responsibilities: z.string().min(1),\n requirements: z.string().min(1),\n role: z.string().min(1).max(120),\n requiredCount: z.coerce.number().int().min(1),\n location: z.enum(JobLocation),\n eventId: z.uuid().optional(),\n});\n\nconst PublishableJobListingBodySchema = PublishableJobListingBodyFieldsSchema;\n\n/** `POST /marketplace/job-listings` — publish immediately unless `saveAsDraft` */\nexport const CreateMarketplaceJobListingRequestSchema =\n MarketplaceJobListingBodyFieldsSchema.partial()\n .extend({\n saveAsDraft: z.boolean().optional().default(false),\n })\n .superRefine((data, ctx) => {\n if (data.saveAsDraft) {\n return;\n }\n const result = MarketplaceJobListingBodySchema.safeParse(data);\n if (!result.success) {\n ctx.addIssue({\n code: 'custom',\n message: result.error.issues.map((issue) => issue.message).join('; '),\n });\n }\n });\n\nexport const UpdateMarketplaceJobListingRequestSchema =\n MarketplaceJobListingBodyFieldsSchema.partial();\n\nexport const ListMarketplaceJobListingsQuerySchema = z.object({\n ...PaginationParamsSchema.shape,\n location: z.enum(JobLocation).optional(),\n /** Case-insensitive match on listing title, role, linked event title, or host business name */\n search: z.string().trim().min(2).max(100).optional(),\n /** Comma-separated role slugs, e.g. `camera-operator,sound-engineer` */\n roles: z.string().trim().min(1).max(500).optional(),\n requiredDateFrom: z.string().optional(),\n requiredDateTo: z.string().optional(),\n minCompensation: z.coerce.number().int().min(0).optional(),\n maxCompensation: z.coerce.number().int().min(0).optional(),\n compensationTier: z.enum(JobListingCompensationTier).optional(),\n /** When true, only listings whose requiredDate falls on a day the authenticated producer marked available */\n matchMyAvailability: z\n .enum(['true', 'false'])\n .optional()\n .transform((value) => value === 'true'),\n});\n\n/** `GET /marketplace/job-listings/mine` (host) */\nexport const ListHostMarketplaceJobListingsQuerySchema = z.object({\n ...PaginationParamsSchema.shape,\n state: z.enum(JobListingState).optional(),\n /** Case-insensitive match on listing title, role, or linked event title */\n search: z.string().trim().min(2).max(100).optional(),\n});\n\n/** Required persisted fields before a DRAFT job listing can be published */\nexport const PublishReadyJobListingSchema = PublishableJobListingBodySchema.superRefine(\n (data, ctx) => {\n if (data.eventId) {\n return;\n }\n const standaloneTitle = data.eventTitle?.trim() || data.title?.trim();\n if (!standaloneTitle) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventTitle is required for standalone job listings',\n path: ['eventTitle'],\n });\n }\n },\n);\n\n/** `POST /marketplace/job-listings/:id/publish` (host owner) */\nexport const PublishMarketplaceJobListingResponseSchema = z.object({\n id: z.uuid(),\n state: z.literal('OPEN'),\n});\n\nexport const MarketplaceJobListingResponseSchema = z.object({\n id: z.uuid(),\n hostProfileId: z.uuid(),\n eventId: z.uuid().nullable(),\n /** Resolved display title — linked events use the current Event title. */\n title: z.string(),\n eventTitle: z.string().nullable(),\n notes: z.string().nullable(),\n description: z.string(),\n responsibilities: z.string(),\n requirements: z.string(),\n role: z.string(),\n requiredCount: z.number().int().min(1),\n requiredDate: z.string().nullable(),\n estimatedDurationMinutes: z.number().int().nullable(),\n location: z.enum(JobLocation),\n compensation: z.number().nullable(),\n attachments: z.unknown().nullable(),\n state: z.enum(JobListingState),\n proposalCount: z.number().int(),\n cancelledAt: z.string().nullable(),\n cancelledReason: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** `POST /marketplace/job-listings/:id/cancel` (host owner) — mirrors HostEventCancelResponseSchema shape */\nexport const CancelMarketplaceJobListingRequestSchema = z.object({\n reason: z.string().trim().min(5).max(500).optional(),\n});\n\nexport const CancelMarketplaceJobListingResponseSchema = z.object({\n id: z.uuid(),\n state: z.literal('CANCELLED'),\n cancelledAt: z.iso.datetime().nullable(),\n});\n\n/** `POST .../indications-of-interest` */\nexport const SubmitMarketplaceIndicationOfInterestRequestSchema = z.object({\n coverMessage: z.string().min(1).max(2000).optional(),\n proposedAmount: z.coerce.number().nonnegative().optional(),\n availabilityNotes: z.string().max(2000).optional(),\n attachments: jsonRecordSchema.optional(),\n});\n\nexport const MarketplaceIndicationOfInterestResponseSchema = z.object({\n id: z.uuid(),\n jobListingId: z.uuid(),\n producerProfileId: z.uuid(),\n coverMessage: z.string().nullable(),\n proposedAmount: z.number().nullable(),\n availabilityNotes: z.string().nullable(),\n state: z.enum(JobInterestState),\n resultingBookingId: z.uuid().nullable(),\n withdrawnAt: z.string().nullable(),\n selectedAt: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** Host review row — IoI plus producer display label */\nexport const MarketplaceIndicationOfInterestHostItemSchema =\n MarketplaceIndicationOfInterestResponseSchema.extend({\n producerCompanyName: z.string().nullable(),\n });\n\nexport const HostIndicationOfInterestSortBy = {\n CREATED_AT: 'createdAt',\n UPDATED_AT: 'updatedAt',\n PROPOSED_AMOUNT: 'proposedAmount',\n} as const;\n\nexport const SortOrder = {\n ASC: 'asc',\n DESC: 'desc',\n} as const;\n\n/** `GET /marketplace/job-listings/indications-of-interest/mine` (host inbox) */\nexport const ListHostMarketplaceIndicationsQuerySchema = z.object({\n ...PaginationParamsSchema.shape,\n jobListingId: z.uuid().optional(),\n state: z.enum(JobInterestState).optional(),\n /** Case-insensitive match on job listing title or linked event title */\n search: z.string().trim().min(2).max(100).optional(),\n sortBy: z.enum(HostIndicationOfInterestSortBy).default(HostIndicationOfInterestSortBy.CREATED_AT),\n sortOrder: z.enum(SortOrder).default(SortOrder.DESC),\n});\n\n/** Host inbox row — IoI with applicant + parent job listing summary */\nexport const MarketplaceHostIndicationOfInterestInboxItemSchema =\n MarketplaceIndicationOfInterestHostItemSchema.extend({\n producerDisplayName: z.string(),\n producerAvatarUrl: z.url().nullable(),\n producerServiceCategoryLabels: z.array(z.string()),\n producerEquipmentLabels: z.array(z.string()),\n producerIsVerified: z.boolean(),\n jobListingTitle: z.string(),\n jobListingRole: z.string(),\n jobListingState: z.enum(JobListingState),\n jobListingLocation: z.enum(JobLocation),\n jobListingEventId: z.uuid().nullable(),\n jobListingEventTitle: z.string().nullable(),\n });\n","export const MessageDeliveryStatus = {\n SENT: 'SENT',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n} as const;\nexport type MessageDeliveryStatus =\n (typeof MessageDeliveryStatus)[keyof typeof MessageDeliveryStatus];\n","import { z } from 'zod';\nimport { BookingState } from './booking.enums';\nimport { MessageDeliveryStatus } from './thread.enums';\nimport { PaginationParamsSchema, PaginationResponseSchema } from '../common/common.schemas';\n\nexport const MarketplaceHiringThreadSchema = z.object({\n id: z.uuid(),\n bookingId: z.uuid(),\n hostProfileId: z.uuid(),\n producerProfileId: z.uuid(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\nexport const MarketplaceHiringMessageAttachmentSchema = z.object({\n id: z.uuid(),\n url: z.string(),\n mimeType: z.string(),\n sizeBytes: z.number().int(),\n createdAt: z.string(),\n});\n\nexport const MarketplaceHiringMessageSchema = z.object({\n id: z.uuid(),\n threadId: z.uuid(),\n senderUserId: z.uuid(),\n body: z.string(),\n sentAt: z.string(),\n deliveryStatus: z.enum(MessageDeliveryStatus),\n readAt: z.string().nullable(),\n attachments: z.array(MarketplaceHiringMessageAttachmentSchema),\n});\n\nexport const ListMarketplaceHiringThreadMessagesQuerySchema = PaginationParamsSchema;\n\nexport const ListMarketplaceHiringThreadMessagesResponseSchema = z.object({\n messages: z.array(MarketplaceHiringMessageSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport const GetMarketplaceHiringThreadResponseSchema = z.object({\n thread: MarketplaceHiringThreadSchema,\n messages: z.array(MarketplaceHiringMessageSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport const PostMarketplaceHiringThreadMessageRequestSchema = z.object({\n body: z.string().trim().min(1).max(5000),\n attachments: z\n .array(\n z.object({\n url: z.string().url(),\n mimeType: z.string().min(1).max(120),\n sizeBytes: z.number().int().positive(),\n }),\n )\n .max(10)\n .optional(),\n});\n\nexport const PostMarketplaceHiringThreadMessageResponseSchema = z.object({\n message: MarketplaceHiringMessageSchema,\n});\n\nexport const MarkMarketplaceHiringThreadReadRequestSchema = z.object({\n upToMessageId: z.uuid().optional(),\n});\n\nexport const MarkMarketplaceHiringThreadReadResponseSchema = z.object({\n markedCount: z.number().int().nonnegative(),\n});\n\n/** Inbox row for host/producer — one conversation per booking thread. */\nexport const MarketplaceHiringThreadInboxItemSchema = z.object({\n threadId: z.uuid(),\n bookingId: z.uuid(),\n title: z.string(),\n lastMessagePreview: z.string().nullable(),\n lastMessageAt: z.string().nullable(),\n lastSenderUserId: z.uuid().nullable(),\n lastSenderDisplayName: z.string().nullable(),\n unreadCount: z.number().int().nonnegative(),\n bookingState: z.enum(BookingState),\n});\n\nexport const ListMarketplaceHiringThreadsResponseSchema = z.object({\n items: z.array(MarketplaceHiringThreadInboxItemSchema),\n ...PaginationResponseSchema.shape,\n});\n","import { z } from 'zod';\nimport { AuditActorRoleSchema } from '../common/audit.enums';\nimport { PaginationResponseSchema } from '../common/common.schemas';\nimport { BookingAuditAction } from './booking.enums';\n\nexport const BookingAuditActorSchema = z.object({\n id: z.string(),\n role: AuditActorRoleSchema,\n});\n\n/** Optional request metadata copied into admin `details` when present. */\nexport const BookingAuditRequestMetadataSchema = z.object({\n reason: z.string().optional(),\n ipAddress: z.string().optional(),\n userAgent: z.string().optional(),\n traceId: z.string().optional(),\n});\n\n/** Snapshot blob stored in audit `before` / `after` JSON columns. */\nexport const BookingAuditSnapshotSchema = z.record(z.string(), z.unknown());\n\n/**\n * STATE_CHANGED, TERMS_MODIFIED, and booking lifecycle actions surface\n * `beforeState` / `afterState` via admin formatters.\n */\nexport const BookingAuditStateTransitionDetailsSchema = BookingAuditRequestMetadataSchema.extend({\n beforeState: BookingAuditSnapshotSchema.optional(),\n afterState: BookingAuditSnapshotSchema.optional(),\n});\n\nexport const BookingAuditMessageSentDetailsSchema = BookingAuditRequestMetadataSchema.extend({\n messageId: z.string(),\n bodyPreview: z.string(),\n attachmentCount: z.number().int().nonnegative().optional(),\n});\n\nexport const BookingAuditAttachmentAddedDetailsSchema = BookingAuditRequestMetadataSchema.extend({\n messageId: z.string(),\n attachmentId: z.string(),\n url: z.string(),\n mimeType: z.string(),\n sizeBytes: z.number().int().nonnegative(),\n});\n\nconst auditEntryBase = {\n timestamp: z.string().datetime(),\n actor: BookingAuditActorSchema,\n};\n\nfunction stateTransitionAuditEntry<\n A extends (typeof BookingAuditAction)[keyof typeof BookingAuditAction],\n>(action: A) {\n return z.object({\n ...auditEntryBase,\n action: z.literal(action),\n details: BookingAuditStateTransitionDetailsSchema,\n });\n}\n\n/** One audit row in `GET /admin/bookings/:id/audit` — discriminated by `action`. */\nexport const AdminBookingAuditEntrySchema = z.discriminatedUnion('action', [\n stateTransitionAuditEntry(BookingAuditAction.STATE_CHANGED),\n stateTransitionAuditEntry(BookingAuditAction.TERMS_MODIFIED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_CREATED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_COMPLETED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_CANCELLED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_ACCEPTED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_REJECTED),\n z.object({\n ...auditEntryBase,\n action: z.literal(BookingAuditAction.MESSAGE_SENT),\n details: BookingAuditMessageSentDetailsSchema,\n }),\n z.object({\n ...auditEntryBase,\n action: z.literal(BookingAuditAction.ATTACHMENT_ADDED),\n details: BookingAuditAttachmentAddedDetailsSchema,\n }),\n]);\n\nexport const AdminBookingAuditResponseSchema = z.object({\n items: z.array(AdminBookingAuditEntrySchema),\n ...PaginationResponseSchema.shape,\n});\n"]}
1
+ {"version":3,"sources":["../src/booking/booking-state-machine.ts","../src/booking/booking.schemas.ts","../src/booking/hiring.enums.ts","../src/booking/hiring.schemas.ts","../src/booking/thread.enums.ts","../src/booking/thread.schemas.ts","../src/booking/booking-audit.schemas.ts"],"names":["BOOKING_TERMINAL_STATES","BookingState","DISPUTE_EXCLUDED_FROM","VALID_BOOKING_TRANSITIONS","BOOKING_TRANSITION_ACTORS","BookingTransitionActor","BOOKING_TRANSITION_TARGETS_REQUIRING_REASON","bookingTransitionKey","from","to","getAllowedBookingTargetStates","base","isValidBookingTransition","getBookingTransitionActors","canActorPerformBookingTransition","actor","bookingTransitionRequiresReason","_from","CreateBookingRequestSchema","z","BookingOrigin","ConfirmBookingRequestSchema","BookingResponseSchema","BookingPaymentStatus","CreateJobListingRequestSchema","JobListingResponseSchema","JobListingState","SubmitIndicationOfInterestRequestSchema","IndicationOfInterestResponseSchema","IoiState","JobLocation","JobListingCompensationTier","jsonRecordSchema","CreateMarketplaceBookingRequestSchema","data","ctx","MarketplaceBookingResponseSchema","CreateMarketplaceBookingResponseSchema","bookingTransitionReasonSchema","TransitionMarketplaceBookingRequestSchema","TransitionMarketplaceBookingResponseSchema","CompleteMarketplaceBookingRequestSchema","ForceCompleteMarketplaceBookingRequestSchema","CompleteMarketplaceBookingResponseSchema","jobListingEventTitleRefine","MarketplaceJobListingBodyFieldsSchema","MarketplaceJobListingBodySchema","PublishableJobListingBodyFieldsSchema","PublishableJobListingBodySchema","CreateMarketplaceJobListingRequestSchema","result","issue","UpdateMarketplaceJobListingRequestSchema","ListMarketplaceJobListingsQuerySchema","PaginationParamsSchema","value","ListHostMarketplaceJobListingsQuerySchema","PublishReadyJobListingSchema","PublishMarketplaceJobListingResponseSchema","MarketplaceJobListingResponseSchema","CancelMarketplaceJobListingRequestSchema","CancelMarketplaceJobListingResponseSchema","SubmitMarketplaceIndicationOfInterestRequestSchema","MarketplaceIndicationOfInterestResponseSchema","JobInterestState","MarketplaceIndicationOfInterestHostItemSchema","HostIndicationOfInterestSortBy","SortOrder","ListHostMarketplaceIndicationsQuerySchema","MarketplaceHostIndicationOfInterestInboxItemSchema","MessageDeliveryStatus","MarketplaceHiringThreadSchema","MarketplaceHiringMessageAttachmentSchema","MarketplaceHiringMessageSchema","ListMarketplaceHiringThreadMessagesQuerySchema","ListMarketplaceHiringThreadMessagesResponseSchema","PaginationResponseSchema","GetMarketplaceHiringThreadResponseSchema","PostMarketplaceHiringThreadMessageRequestSchema","PostMarketplaceHiringThreadMessageResponseSchema","MarkMarketplaceHiringThreadReadRequestSchema","MarkMarketplaceHiringThreadReadResponseSchema","MarketplaceHiringThreadInboxItemSchema","ListMarketplaceHiringThreadsResponseSchema","BookingAuditActorSchema","AuditActorRoleSchema","BookingAuditRequestMetadataSchema","BookingAuditSnapshotSchema","BookingAuditStateTransitionDetailsSchema","BookingAuditMessageSentDetailsSchema","BookingAuditAttachmentAddedDetailsSchema","auditEntryBase","stateTransitionAuditEntry","action","AdminBookingAuditEntrySchema","BookingAuditAction","AdminBookingAuditResponseSchema"],"mappings":"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","file":"chunk-CIEAWO4Z.js","sourcesContent":["import { BookingState, BookingTransitionActor } from './booking.enums';\n\nexport type BookingTransitionKey = `${BookingState}->${BookingState}`;\n\nexport const BOOKING_TERMINAL_STATES: readonly BookingState[] = [\n BookingState.REJECTED,\n BookingState.CANCELLED,\n BookingState.CLOSED,\n];\n\nconst DISPUTE_EXCLUDED_FROM: readonly BookingState[] = [\n ...BOOKING_TERMINAL_STATES,\n BookingState.IN_DISPUTE,\n];\n\n/** Valid target states per source (excludes dispute shortcut — see `getAllowedBookingTargetStates`). */\nexport const VALID_BOOKING_TRANSITIONS: Record<BookingState, readonly BookingState[]> = {\n [BookingState.REQUESTED]: [BookingState.AWAITING_PRODUCER_RESPONSE, BookingState.CANCELLED],\n [BookingState.AWAITING_PRODUCER_RESPONSE]: [\n BookingState.IN_NEGOTIATION,\n BookingState.REJECTED,\n BookingState.CANCELLED,\n ],\n [BookingState.IN_NEGOTIATION]: [\n BookingState.ACCEPTED,\n BookingState.REJECTED,\n BookingState.CANCELLED,\n ],\n [BookingState.ACCEPTED]: [BookingState.AWAITING_ESCROW_FUNDING, BookingState.CANCELLED],\n [BookingState.AWAITING_ESCROW_FUNDING]: [BookingState.CONFIRMED, BookingState.CANCELLED],\n [BookingState.CONFIRMED]: [BookingState.IN_PROGRESS, BookingState.AWAITING_PRODUCER_RECONFIRM],\n [BookingState.AWAITING_PRODUCER_RECONFIRM]: [BookingState.CONFIRMED, BookingState.CANCELLED],\n [BookingState.IN_PROGRESS]: [BookingState.SERVICE_COMPLETED, BookingState.CANCELLED],\n [BookingState.SERVICE_COMPLETED]: [BookingState.CLOSED],\n [BookingState.IN_DISPUTE]: [BookingState.CLOSED],\n [BookingState.REJECTED]: [],\n [BookingState.CANCELLED]: [],\n [BookingState.CLOSED]: [],\n};\n\n/** RBAC: which actor may perform each transition (dispute edges merged at runtime). */\nexport const BOOKING_TRANSITION_ACTORS: Partial<\n Record<BookingTransitionKey, readonly BookingTransitionActor[]>\n> = {\n [`${BookingState.REQUESTED}->${BookingState.AWAITING_PRODUCER_RESPONSE}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.REQUESTED}->${BookingState.CANCELLED}`]: [BookingTransitionActor.HOST],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.IN_NEGOTIATION}`]: [\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.REJECTED}`]: [\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_PRODUCER_RESPONSE}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.ACCEPTED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.REJECTED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.IN_NEGOTIATION}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.ACCEPTED}->${BookingState.AWAITING_ESCROW_FUNDING}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.ACCEPTED}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n ],\n [`${BookingState.AWAITING_ESCROW_FUNDING}->${BookingState.CONFIRMED}`]: [\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.AWAITING_ESCROW_FUNDING}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.CONFIRMED}->${BookingState.IN_PROGRESS}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.CONFIRMED}->${BookingState.AWAITING_PRODUCER_RECONFIRM}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.AWAITING_PRODUCER_RECONFIRM}->${BookingState.CONFIRMED}`]: [\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.AWAITING_PRODUCER_RECONFIRM}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.IN_PROGRESS}->${BookingState.SERVICE_COMPLETED}`]: [\n BookingTransitionActor.PRODUCER,\n BookingTransitionActor.SYSTEM,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.IN_PROGRESS}->${BookingState.CANCELLED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n ],\n [`${BookingState.SERVICE_COMPLETED}->${BookingState.CLOSED}`]: [\n BookingTransitionActor.HOST,\n BookingTransitionActor.ADMIN,\n BookingTransitionActor.SYSTEM,\n ],\n [`${BookingState.IN_DISPUTE}->${BookingState.CLOSED}`]: [\n BookingTransitionActor.ADMIN,\n BookingTransitionActor.HOST,\n ],\n};\n\n/** Target states that require a `reason` on the transition request. */\nexport const BOOKING_TRANSITION_TARGETS_REQUIRING_REASON: readonly BookingState[] = [\n BookingState.REJECTED,\n BookingState.CANCELLED,\n BookingState.IN_DISPUTE,\n];\n\nexport function bookingTransitionKey(from: BookingState, to: BookingState): BookingTransitionKey {\n return `${from}->${to}`;\n}\n\nexport function getAllowedBookingTargetStates(from: BookingState): readonly BookingState[] {\n const base = VALID_BOOKING_TRANSITIONS[from] ?? [];\n if (!DISPUTE_EXCLUDED_FROM.includes(from)) {\n return [...base, BookingState.IN_DISPUTE];\n }\n return base;\n}\n\nexport function isValidBookingTransition(from: BookingState, to: BookingState): boolean {\n return getAllowedBookingTargetStates(from).includes(to);\n}\n\nexport function getBookingTransitionActors(\n from: BookingState,\n to: BookingState,\n): readonly BookingTransitionActor[] {\n if (to === BookingState.IN_DISPUTE && !DISPUTE_EXCLUDED_FROM.includes(from)) {\n return [BookingTransitionActor.HOST, BookingTransitionActor.PRODUCER];\n }\n return BOOKING_TRANSITION_ACTORS[bookingTransitionKey(from, to)] ?? [];\n}\n\nexport function canActorPerformBookingTransition(\n from: BookingState,\n to: BookingState,\n actor: BookingTransitionActor,\n): boolean {\n return getBookingTransitionActors(from, to).includes(actor);\n}\n\nexport function bookingTransitionRequiresReason(_from: BookingState, to: BookingState): boolean {\n return BOOKING_TRANSITION_TARGETS_REQUIRING_REASON.includes(to);\n}\n","import { z } from 'zod';\nimport {\n BookingOrigin,\n BookingState,\n JobListingState,\n IoiState,\n BookingPaymentStatus,\n} from './booking.enums';\n\nexport const CreateBookingRequestSchema = z.object({\n origin: z.enum(BookingOrigin),\n eventId: z.uuid().optional(),\n producerId: z.uuid(),\n agreedAmount: z.number().min(0),\n});\n\nexport const ConfirmBookingRequestSchema = z.object({\n escrowReference: z.string(),\n});\n\nexport const BookingResponseSchema = z.object({\n id: z.uuid(),\n eventId: z.uuid().optional(),\n hostId: z.uuid(),\n producerId: z.uuid(),\n quotedPrice: z.number(),\n currency: z.string(),\n scopeOfWork: z.record(z.string(), z.any()).optional(),\n requiredStartAt: z.iso.datetime(),\n requiredEndAt: z.iso.datetime(),\n bookingState: z.enum(BookingState),\n paymentStatus: z.enum(BookingPaymentStatus),\n escrowReference: z.string().optional(),\n completedAt: z.iso.datetime().optional(),\n hostRating: z.number().optional(),\n hostReview: z.string().optional(),\n producerRating: z.number().optional(),\n producerReview: z.string().optional(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const CreateJobListingRequestSchema = z.object({\n title: z.string().max(255),\n description: z.string(),\n requiredDate: z.iso.datetime(),\n estimatedDurationMinutes: z.number().int().positive().optional(),\n location: z.string(),\n budgetRangeMin: z.number().optional(),\n budgetRangeMax: z.number().optional(),\n});\n\nexport const JobListingResponseSchema = z.object({\n id: z.uuid(),\n hostProfileId: z.uuid(),\n eventId: z.uuid().optional(),\n title: z.string(),\n description: z.string(),\n requiredDate: z.iso.datetime(),\n estimatedDurationMinutes: z.number().int().nullable().optional(),\n location: z.string(),\n budgetRangeMin: z.number().optional(),\n budgetRangeMax: z.number().optional(),\n state: z.enum(JobListingState),\n proposalCount: z.number(),\n createdAt: z.iso.datetime(),\n});\n\nexport const SubmitIndicationOfInterestRequestSchema = z.object({\n coverMessage: z.string().optional(),\n proposedAmount: z.number().min(0).optional(),\n availabilityNotes: z.string().optional(),\n});\n\nexport const IndicationOfInterestResponseSchema = z.object({\n id: z.uuid(),\n jobListingId: z.uuid(),\n producerProfileId: z.uuid(),\n coverMessage: z.string().optional(),\n proposedAmount: z.number().optional(),\n state: z.enum(IoiState),\n createdAt: z.iso.datetime(),\n});\n","export const JobLocation = {\n ONSITE: 'ONSITE',\n REMOTE: 'REMOTE',\n} as const;\nexport type JobLocation = (typeof JobLocation)[keyof typeof JobLocation];\n\n/** Discover-jobs compensation bracket filter (NGN). */\nexport const JobListingCompensationTier = {\n LOW: 'LOW',\n MID: 'MID',\n HIGH: 'HIGH',\n} as const;\nexport type JobListingCompensationTier =\n (typeof JobListingCompensationTier)[keyof typeof JobListingCompensationTier];\n","import { z } from 'zod';\nimport { JobInterestState } from '../joblisting/listing.enum';\nimport { BookingOrigin, BookingState, JobListingState } from './booking.enums';\nimport { JobListingCompensationTier, JobLocation } from './hiring.enums';\nimport { PaginationParamsSchema } from '../common';\n\nconst jsonRecordSchema = z.record(z.string(), z.unknown());\n\n/** `POST /marketplace/bookings` */\nexport const CreateMarketplaceBookingRequestSchema = z\n .object({\n producerId: z.uuid(),\n origin: z.enum(BookingOrigin),\n eventId: z.uuid().optional(),\n jobListingId: z.uuid().optional(),\n sourceIoiId: z.uuid().optional(),\n agreedAmount: z.coerce.number().nonnegative().optional(),\n scopeOfWork: z.string().max(5000).optional(),\n })\n .superRefine((data, ctx) => {\n if (data.origin === BookingOrigin.EVENT_DIRECT && !data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId is required when origin is EVENT_DIRECT',\n path: ['eventId'],\n });\n }\n if (data.origin === BookingOrigin.MARKETPLACE_DIRECT) {\n if (data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId must not be set when origin is MARKETPLACE_DIRECT',\n path: ['eventId'],\n });\n }\n if (data.sourceIoiId) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId must not be set when origin is MARKETPLACE_DIRECT',\n path: ['sourceIoiId'],\n });\n }\n }\n if (data.origin === BookingOrigin.JOB_LISTING) {\n if (!data.sourceIoiId) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId is required when origin is JOB_LISTING',\n path: ['sourceIoiId'],\n });\n }\n if (data.eventId) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventId must not be set when origin is JOB_LISTING',\n path: ['eventId'],\n });\n }\n }\n if (data.sourceIoiId && data.origin !== BookingOrigin.JOB_LISTING) {\n ctx.addIssue({\n code: 'custom',\n message: 'sourceIoiId is only allowed when origin is JOB_LISTING',\n path: ['sourceIoiId'],\n });\n }\n });\n\nexport const MarketplaceBookingResponseSchema = z.object({\n id: z.uuid(),\n eventId: z.uuid().nullable(),\n eventLinked: z.boolean(),\n hostProfileId: z.uuid(),\n producerProfileId: z.uuid(),\n origin: z.enum(BookingOrigin),\n jobListingId: z.uuid().nullable(),\n sourceIoiId: z.uuid().nullable(),\n state: z.enum(BookingState),\n agreedAmount: z.number().nullable(),\n scopeOfWork: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** `POST /marketplace/bookings` — create acknowledgement */\nexport const CreateMarketplaceBookingResponseSchema = z.object({\n bookingId: z.uuid(),\n booking: MarketplaceBookingResponseSchema,\n});\n\nconst bookingTransitionReasonSchema = z.string().trim().min(5).max(500);\n\n/** `POST /marketplace/bookings/:id/transition` (host, producer, admin) */\nexport const TransitionMarketplaceBookingRequestSchema = z\n .object({\n targetState: z.enum(BookingState),\n reason: bookingTransitionReasonSchema.optional(),\n })\n .superRefine((data, ctx) => {\n const requiresReason =\n data.targetState === BookingState.REJECTED ||\n data.targetState === BookingState.CANCELLED ||\n data.targetState === BookingState.IN_DISPUTE;\n if (requiresReason && data.reason === undefined) {\n ctx.addIssue({\n code: 'custom',\n message: 'reason is required for this transition',\n path: ['reason'],\n });\n }\n });\n\nexport const TransitionMarketplaceBookingResponseSchema = z.object({\n booking: MarketplaceBookingResponseSchema,\n});\n\n/** `POST /marketplace/bookings/:id/complete` — dual-ack manual completion */\nexport const CompleteMarketplaceBookingRequestSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\n/** `POST /marketplace/bookings/:id/admin-force-complete` — TRUST admin override */\nexport const ForceCompleteMarketplaceBookingRequestSchema = z.object({\n notes: z.string().max(2000).optional(),\n});\n\nexport const CompleteMarketplaceBookingResponseSchema = z.object({\n booking: MarketplaceBookingResponseSchema,\n hostAcked: z.boolean(),\n producerAcked: z.boolean(),\n completed: z.boolean(),\n forced: z.boolean().optional(),\n});\n\nconst jobListingEventTitleRefine = (\n data: {\n eventId?: string | undefined;\n eventTitle?: string | undefined;\n title?: string | undefined;\n },\n ctx: z.RefinementCtx,\n) => {\n if (data.eventId) {\n return;\n }\n const standaloneTitle = data.eventTitle?.trim() || data.title?.trim();\n if (!standaloneTitle) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventTitle is required when eventId is not provided',\n path: ['eventTitle'],\n });\n }\n};\n\nconst MarketplaceJobListingBodyFieldsSchema = z.object({\n /** Standalone event title — required when `eventId` is absent. Ignored when linked. */\n eventTitle: z.string().min(1).max(200).optional(),\n /** @deprecated Use `eventTitle`. Kept for backward compatibility. */\n title: z.string().min(1).max(200).optional(),\n description: z.string().min(1).max(5000),\n responsibilities: z.string().min(1),\n requirements: z.string().min(1),\n role: z.string().min(1).max(120),\n requiredCount: z.coerce.number().int().min(1),\n requiredDate: z.iso.datetime().optional(),\n estimatedDurationMinutes: z.coerce.number().int().positive().optional(),\n location: z.enum(JobLocation),\n notes: z.string().max(2000).optional(),\n compensation: z.coerce.number().nonnegative().optional(),\n attachments: jsonRecordSchema.optional(),\n eventId: z.uuid().optional(),\n});\n\nconst MarketplaceJobListingBodySchema = MarketplaceJobListingBodyFieldsSchema.superRefine(\n jobListingEventTitleRefine,\n);\n\n/** Publish/create body without event-title guard (linked listings resolve title at read time). */\nconst PublishableJobListingBodyFieldsSchema = z.object({\n eventTitle: z.string().min(1).max(200).optional(),\n title: z.string().min(1).max(200).optional(),\n description: z.string().min(1).max(5000),\n responsibilities: z.string().min(1),\n requirements: z.string().min(1),\n role: z.string().min(1).max(120),\n requiredCount: z.coerce.number().int().min(1),\n location: z.enum(JobLocation),\n eventId: z.uuid().optional(),\n});\n\nconst PublishableJobListingBodySchema = PublishableJobListingBodyFieldsSchema;\n\n/** `POST /marketplace/job-listings` — publish immediately unless `saveAsDraft` */\nexport const CreateMarketplaceJobListingRequestSchema =\n MarketplaceJobListingBodyFieldsSchema.partial()\n .extend({\n saveAsDraft: z.boolean().optional().default(false),\n })\n .superRefine((data, ctx) => {\n if (data.saveAsDraft) {\n return;\n }\n const result = MarketplaceJobListingBodySchema.safeParse(data);\n if (!result.success) {\n ctx.addIssue({\n code: 'custom',\n message: result.error.issues.map((issue) => issue.message).join('; '),\n });\n }\n });\n\nexport const UpdateMarketplaceJobListingRequestSchema =\n MarketplaceJobListingBodyFieldsSchema.partial();\n\nexport const ListMarketplaceJobListingsQuerySchema = z.object({\n ...PaginationParamsSchema.shape,\n location: z.enum(JobLocation).optional(),\n /** Case-insensitive match on listing title, role, linked event title, or host business name */\n search: z.string().trim().min(2).max(100).optional(),\n /** Comma-separated role slugs, e.g. `camera-operator,sound-engineer` */\n roles: z.string().trim().min(1).max(500).optional(),\n requiredDateFrom: z.string().optional(),\n requiredDateTo: z.string().optional(),\n minCompensation: z.coerce.number().int().min(0).optional(),\n maxCompensation: z.coerce.number().int().min(0).optional(),\n compensationTier: z.enum(JobListingCompensationTier).optional(),\n /** When true, only listings whose requiredDate falls on a day the authenticated producer marked available */\n matchMyAvailability: z\n .enum(['true', 'false'])\n .optional()\n .transform((value) => value === 'true'),\n});\n\n/** `GET /marketplace/job-listings/mine` (host) */\nexport const ListHostMarketplaceJobListingsQuerySchema = z.object({\n ...PaginationParamsSchema.shape,\n state: z.enum(JobListingState).optional(),\n /** Case-insensitive match on listing title, role, or linked event title */\n search: z.string().trim().min(2).max(100).optional(),\n});\n\n/** Required persisted fields before a DRAFT job listing can be published */\nexport const PublishReadyJobListingSchema = PublishableJobListingBodySchema.superRefine(\n (data, ctx) => {\n if (data.eventId) {\n return;\n }\n const standaloneTitle = data.eventTitle?.trim() || data.title?.trim();\n if (!standaloneTitle) {\n ctx.addIssue({\n code: 'custom',\n message: 'eventTitle is required for standalone job listings',\n path: ['eventTitle'],\n });\n }\n },\n);\n\n/** `POST /marketplace/job-listings/:id/publish` (host owner) */\nexport const PublishMarketplaceJobListingResponseSchema = z.object({\n id: z.uuid(),\n state: z.literal('OPEN'),\n});\n\nexport const MarketplaceJobListingResponseSchema = z.object({\n id: z.uuid(),\n hostProfileId: z.uuid(),\n eventId: z.uuid().nullable(),\n /** Resolved display title — linked events use the current Event title. */\n title: z.string(),\n eventTitle: z.string().nullable(),\n notes: z.string().nullable(),\n description: z.string(),\n responsibilities: z.string(),\n requirements: z.string(),\n role: z.string(),\n requiredCount: z.number().int().min(1),\n requiredDate: z.string().nullable(),\n estimatedDurationMinutes: z.number().int().nullable(),\n location: z.enum(JobLocation),\n compensation: z.number().nullable(),\n attachments: z.unknown().nullable(),\n state: z.enum(JobListingState),\n proposalCount: z.number().int(),\n cancelledAt: z.string().nullable(),\n cancelledReason: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** `POST /marketplace/job-listings/:id/cancel` (host owner) — mirrors HostEventCancelResponseSchema shape */\nexport const CancelMarketplaceJobListingRequestSchema = z.object({\n reason: z.string().trim().min(5).max(500).optional(),\n});\n\nexport const CancelMarketplaceJobListingResponseSchema = z.object({\n id: z.uuid(),\n state: z.literal('CANCELLED'),\n cancelledAt: z.iso.datetime().nullable(),\n});\n\n/** `POST .../indications-of-interest` */\nexport const SubmitMarketplaceIndicationOfInterestRequestSchema = z.object({\n coverMessage: z.string().min(1).max(2000).optional(),\n proposedAmount: z.coerce.number().nonnegative().optional(),\n availabilityNotes: z.string().max(2000).optional(),\n attachments: jsonRecordSchema.optional(),\n});\n\nexport const MarketplaceIndicationOfInterestResponseSchema = z.object({\n id: z.uuid(),\n jobListingId: z.uuid(),\n producerProfileId: z.uuid(),\n coverMessage: z.string().nullable(),\n proposedAmount: z.number().nullable(),\n availabilityNotes: z.string().nullable(),\n state: z.enum(JobInterestState),\n resultingBookingId: z.uuid().nullable(),\n withdrawnAt: z.string().nullable(),\n selectedAt: z.string().nullable(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\n/** Host review row — IoI plus producer display label */\nexport const MarketplaceIndicationOfInterestHostItemSchema =\n MarketplaceIndicationOfInterestResponseSchema.extend({\n producerCompanyName: z.string().nullable(),\n });\n\nexport const HostIndicationOfInterestSortBy = {\n CREATED_AT: 'createdAt',\n UPDATED_AT: 'updatedAt',\n PROPOSED_AMOUNT: 'proposedAmount',\n} as const;\n\nexport const SortOrder = {\n ASC: 'asc',\n DESC: 'desc',\n} as const;\n\n/** `GET /marketplace/job-listings/indications-of-interest/mine` (host inbox) */\nexport const ListHostMarketplaceIndicationsQuerySchema = z.object({\n ...PaginationParamsSchema.shape,\n jobListingId: z.uuid().optional(),\n state: z.enum(JobInterestState).optional(),\n /** Case-insensitive match on job listing title or linked event title */\n search: z.string().trim().min(2).max(100).optional(),\n sortBy: z.enum(HostIndicationOfInterestSortBy).default(HostIndicationOfInterestSortBy.CREATED_AT),\n sortOrder: z.enum(SortOrder).default(SortOrder.DESC),\n});\n\n/** Host inbox row — IoI with applicant + parent job listing summary */\nexport const MarketplaceHostIndicationOfInterestInboxItemSchema =\n MarketplaceIndicationOfInterestHostItemSchema.extend({\n producerDisplayName: z.string(),\n producerAvatarUrl: z.url().nullable(),\n producerServiceCategoryLabels: z.array(z.string()),\n producerEquipmentLabels: z.array(z.string()),\n producerIsVerified: z.boolean(),\n jobListingTitle: z.string(),\n jobListingRole: z.string(),\n jobListingState: z.enum(JobListingState),\n jobListingLocation: z.enum(JobLocation),\n jobListingEventId: z.uuid().nullable(),\n jobListingEventTitle: z.string().nullable(),\n });\n","export const MessageDeliveryStatus = {\n SENT: 'SENT',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n} as const;\nexport type MessageDeliveryStatus =\n (typeof MessageDeliveryStatus)[keyof typeof MessageDeliveryStatus];\n","import { z } from 'zod';\nimport { BookingState } from './booking.enums';\nimport { MessageDeliveryStatus } from './thread.enums';\nimport { PaginationParamsSchema, PaginationResponseSchema } from '../common/common.schemas';\n\nexport const MarketplaceHiringThreadSchema = z.object({\n id: z.uuid(),\n bookingId: z.uuid(),\n hostProfileId: z.uuid(),\n producerProfileId: z.uuid(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\nexport const MarketplaceHiringMessageAttachmentSchema = z.object({\n id: z.uuid(),\n url: z.string(),\n mimeType: z.string(),\n sizeBytes: z.number().int(),\n createdAt: z.string(),\n});\n\nexport const MarketplaceHiringMessageSchema = z.object({\n id: z.uuid(),\n threadId: z.uuid(),\n senderUserId: z.uuid(),\n body: z.string(),\n sentAt: z.string(),\n deliveryStatus: z.enum(MessageDeliveryStatus),\n readAt: z.string().nullable(),\n attachments: z.array(MarketplaceHiringMessageAttachmentSchema),\n});\n\nexport const ListMarketplaceHiringThreadMessagesQuerySchema = PaginationParamsSchema;\n\nexport const ListMarketplaceHiringThreadMessagesResponseSchema = z.object({\n messages: z.array(MarketplaceHiringMessageSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport const GetMarketplaceHiringThreadResponseSchema = z.object({\n thread: MarketplaceHiringThreadSchema,\n messages: z.array(MarketplaceHiringMessageSchema),\n ...PaginationResponseSchema.shape,\n});\n\nexport const PostMarketplaceHiringThreadMessageRequestSchema = z.object({\n body: z.string().trim().min(1).max(5000),\n attachments: z\n .array(\n z.object({\n url: z.string().url(),\n mimeType: z.string().min(1).max(120),\n sizeBytes: z.number().int().positive(),\n }),\n )\n .max(10)\n .optional(),\n});\n\nexport const PostMarketplaceHiringThreadMessageResponseSchema = z.object({\n message: MarketplaceHiringMessageSchema,\n});\n\nexport const MarkMarketplaceHiringThreadReadRequestSchema = z.object({\n upToMessageId: z.uuid().optional(),\n});\n\nexport const MarkMarketplaceHiringThreadReadResponseSchema = z.object({\n markedCount: z.number().int().nonnegative(),\n});\n\n/** Inbox row for host/producer — one conversation per booking thread. */\nexport const MarketplaceHiringThreadInboxItemSchema = z.object({\n threadId: z.uuid(),\n bookingId: z.uuid(),\n title: z.string(),\n lastMessagePreview: z.string().nullable(),\n lastMessageAt: z.string().nullable(),\n lastSenderUserId: z.uuid().nullable(),\n lastSenderDisplayName: z.string().nullable(),\n unreadCount: z.number().int().nonnegative(),\n bookingState: z.enum(BookingState),\n});\n\nexport const ListMarketplaceHiringThreadsResponseSchema = z.object({\n items: z.array(MarketplaceHiringThreadInboxItemSchema),\n ...PaginationResponseSchema.shape,\n});\n","import { z } from 'zod';\nimport { AuditActorRoleSchema } from '../common/audit.enums';\nimport { PaginationResponseSchema } from '../common/common.schemas';\nimport { BookingAuditAction } from './booking.enums';\n\nexport const BookingAuditActorSchema = z.object({\n id: z.string(),\n role: AuditActorRoleSchema,\n});\n\n/** Optional request metadata copied into admin `details` when present. */\nexport const BookingAuditRequestMetadataSchema = z.object({\n reason: z.string().optional(),\n ipAddress: z.string().optional(),\n userAgent: z.string().optional(),\n traceId: z.string().optional(),\n});\n\n/** Snapshot blob stored in audit `before` / `after` JSON columns. */\nexport const BookingAuditSnapshotSchema = z.record(z.string(), z.unknown());\n\n/**\n * STATE_CHANGED, TERMS_MODIFIED, and booking lifecycle actions surface\n * `beforeState` / `afterState` via admin formatters.\n */\nexport const BookingAuditStateTransitionDetailsSchema = BookingAuditRequestMetadataSchema.extend({\n beforeState: BookingAuditSnapshotSchema.optional(),\n afterState: BookingAuditSnapshotSchema.optional(),\n});\n\nexport const BookingAuditMessageSentDetailsSchema = BookingAuditRequestMetadataSchema.extend({\n messageId: z.string(),\n bodyPreview: z.string(),\n attachmentCount: z.number().int().nonnegative().optional(),\n});\n\nexport const BookingAuditAttachmentAddedDetailsSchema = BookingAuditRequestMetadataSchema.extend({\n messageId: z.string(),\n attachmentId: z.string(),\n url: z.string(),\n mimeType: z.string(),\n sizeBytes: z.number().int().nonnegative(),\n});\n\nconst auditEntryBase = {\n timestamp: z.string().datetime(),\n actor: BookingAuditActorSchema,\n};\n\nfunction stateTransitionAuditEntry<\n A extends (typeof BookingAuditAction)[keyof typeof BookingAuditAction],\n>(action: A) {\n return z.object({\n ...auditEntryBase,\n action: z.literal(action),\n details: BookingAuditStateTransitionDetailsSchema,\n });\n}\n\n/** One audit row in `GET /admin/bookings/:id/audit` — discriminated by `action`. */\nexport const AdminBookingAuditEntrySchema = z.discriminatedUnion('action', [\n stateTransitionAuditEntry(BookingAuditAction.STATE_CHANGED),\n stateTransitionAuditEntry(BookingAuditAction.TERMS_MODIFIED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_CREATED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_COMPLETED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_CANCELLED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_ACCEPTED),\n stateTransitionAuditEntry(BookingAuditAction.BOOKING_REJECTED),\n z.object({\n ...auditEntryBase,\n action: z.literal(BookingAuditAction.MESSAGE_SENT),\n details: BookingAuditMessageSentDetailsSchema,\n }),\n z.object({\n ...auditEntryBase,\n action: z.literal(BookingAuditAction.ATTACHMENT_ADDED),\n details: BookingAuditAttachmentAddedDetailsSchema,\n }),\n]);\n\nexport const AdminBookingAuditResponseSchema = z.object({\n items: z.array(AdminBookingAuditEntrySchema),\n ...PaginationResponseSchema.shape,\n});\n"]}
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunkETFQEH55_js=require('./chunk-ETFQEH55.js'),chunkLA63VYRR_js=require('./chunk-LA63VYRR.js'),chunkJSRHSYSZ_js=require('./chunk-JSRHSYSZ.js'),chunkG5GZSJ2W_js=require('./chunk-G5GZSJ2W.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"]),ae=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)}),se=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:chunkJSRHSYSZ_js.na.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:chunkJSRHSYSZ_js.ma.optional(),maxTickets:e__default.default.number().int().positive().nullable().optional(),visibility:chunkJSRHSYSZ_js.oa.optional(),guestEmails:e__default.default.array(e__default.default.email()).optional(),replayAccess:e__default.default.enum(chunkJSRHSYSZ_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()}),le=e__default.default.object({tab:i,...chunkG5GZSJ2W_js.e.shape}),p=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"])}),ce=e__default.default.object({tab:i,rows:e__default.default.array(p),...chunkG5GZSJ2W_js.f.shape}),ue=e__default.default.object({upcoming:e__default.default.number(),live:e__default.default.number(),ended:e__default.default.number(),drafts:e__default.default.number()}),me=e__default.default.object({title:e__default.default.string().min(3).max(120).optional()}),be=e__default.default.object({tab:i,...chunkG5GZSJ2W_js.e.shape}),de=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()}),pe=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()}),ge=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())}),Ee=e__default.default.object({id:e__default.default.uuid(),state:e__default.default.literal("CANCELLED"),cancelledAt:e__default.default.iso.datetime().nullable()}),v=e__default.default.object({currency:e__default.default.literal("NGN"),value:e__default.default.string(),deltaPct:e__default.default.number().nullable()}),h=e__default.default.object({count:e__default.default.number().int(),nextStartsAt:e__default.default.string().nullable()}),y=e__default.default.object({eventCount:e__default.default.number().int(),totalViewers:e__default.default.number().int()}),R=e__default.default.object({value:e__default.default.number().int(),deltaPct:e__default.default.number().nullable()}),A=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),viewers:e__default.default.number().int()}),x=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),scheduledStart:e__default.default.string(),canGoLive:e__default.default.boolean()}),g=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()}),Se=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:v,upcomingEvents:h,liveNow:y,totalViews:R}),live:e__default.default.array(A),upcoming:e__default.default.array(x),activity:e__default.default.array(g)}),ve=e__default.default.object({items:e__default.default.array(g),...chunkG5GZSJ2W_js.f.shape}),T=e__default.default.object({eventId:e__default.default.uuid(),title:e__default.default.string(),scheduledStart:e__default.default.string(),state:e__default.default.string()}),he=e__default.default.object({hits:e__default.default.array(T)}),ye=e__default.default.object({count:e__default.default.number().int()}),Re=e__default.default.object({tab:i,items:e__default.default.array(p),...chunkG5GZSJ2W_js.f.shape}),I=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:e__default.default.string().nullable(),currency:e__default.default.string(),maxTickets:e__default.default.number().int().nullable(),allowlistData:e__default.default.array(e__default.default.string()),replayAccess:e__default.default.enum(chunkJSRHSYSZ_js.a),replayAccessFee:e__default.default.string(),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()}),Ae=I.extend({crewIds:e__default.default.array(e__default.default.uuid())}),C=e__default.default.enum(["EVENT_DETAILS","PRICING","CREW_ASSIGNED","STREAM_TESTED"]),H=e__default.default.enum(["PASS","WARN","FAIL"]),j=e__default.default.enum(["OPEN_WIZARD_STEP_1","OPEN_WIZARD_STEP_2","OPEN_WIZARD_STEP_3","OPEN_HIRE_CREW","RUN_STREAM_TEST"]),D=e__default.default.enum(["CHECKLIST_INCOMPLETE","BEFORE_WINDOW","AFTER_WINDOW","ALREADY_LIVE","NOT_OWNED"]),L=e__default.default.enum(["NOT_PROVISIONED","READY_FOR_TEST","LIVE","STREAM_TEST_FAILED","STREAM_TEST_SUCCESSFUL"]),d=e__default.default.enum(["SELF","HIRE"]),N=e__default.default.object({id:C,label:e__default.default.string(),state:H,detail:e__default.default.string().optional(),cta:j.optional()}),E=e__default.default.object({progress:e__default.default.number().min(0).max(1),items:e__default.default.array(N),canGoLive:e__default.default.boolean(),blockReason:D.optional()}),xe=e__default.default.object({crewSearch:e__default.default.string().trim().min(2).max(100).optional(),crewState:e__default.default.enum(chunkLA63VYRR_js.b).optional()}),S=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(chunkLA63VYRR_js.b),confirmedAt:e__default.default.iso.datetime().nullable()}),P=e__default.default.enum(["ACTIVE","PAST"]),Te=e__default.default.object({phase:P.default("ACTIVE"),eventId:e__default.default.uuid().optional(),crewSearch:e__default.default.string().trim().min(2).max(100).optional(),crewState:e__default.default.enum(chunkLA63VYRR_js.b).optional(),...chunkG5GZSJ2W_js.e.shape}),_=S.extend({eventId:e__default.default.uuid(),eventTitle:e__default.default.string()}),w=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(),grossRevenueMinor:e__default.default.string(),currency:e__default.default.string(),computedAt:e__default.default.iso.datetime(),byDeviceType:e__default.default.record(e__default.default.string(),e__default.default.number()).nullable()}),M=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(),replayRevenueMinor:e__default.default.string(),currency:e__default.default.string(),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(),revenueMinor:e__default.default.string()}))}),k=e__default.default.object({audience:w.nullable(),replayPerformance:M.nullable()}),Ie=e__default.default.object({items:e__default.default.array(_),...chunkG5GZSJ2W_js.f.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:e__default.default.string().nullable(),currency:e__default.default.string(),shareableUrl:e__default.default.string().nullable(),state:e__default.default.string(),visibility:e__default.default.string(),productionMode:d.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:e__default.default.string(),currency:e__default.default.string(),liveRevenueMinor:e__default.default.string(),ticketRevenueMinor:e__default.default.string(),replayRevenueMinor:e__default.default.string(),hostShareMinor:e__default.default.string(),platformFeeMinor:e__default.default.string()}),audience:e__default.default.object({registered:e__default.default.number().int(),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:E,production:e__default.default.object({mode:d,crew:e__default.default.array(S)}),streaming:e__default.default.object({status:L,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:k.nullable()}),He=E,je=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()}),O=e__default.default.enum(["PRE_LIVE","LIVE","ENDED"]),f=e__default.default.enum(["PROCESSING","READY","UNAVAILABLE"]),U=e__default.default.enum(["HEALTHY","DEGRADED","INGEST_DOWN"]),V=e__default.default.enum(["HOST_TERMINATED","HOST_TERMINATED_EARLY","AUTO_AFTER_SILENCE","AUTO_AT_SCHEDULED_END","ADMIN_FORCED"]),F=e__default.default.enum(["AUDIO_QUALITY","VIDEO_QUALITY","BITRATE_DROP","INGEST_DISCONNECTED","INGEST_RECONNECTED","RECORDING_FAILED","STREAM_DENIED"]),W=e__default.default.enum(["INFO","WARN","ERROR"]),G=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(chunkJSRHSYSZ_js.f),currency:e__default.default.string(),accessModel:e__default.default.string()}),z=e__default.default.object({streamEnabled:e__default.default.boolean(),canGoLive:e__default.default.boolean(),canEndLive:e__default.default.boolean(),requiresReauthToEnd:e__default.default.boolean()}),B=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()}),K=e__default.default.object({bitrateKbps:e__default.default.number(),resolution:e__default.default.string(),latencyMs:e__default.default.number().nullable(),ingestHealth:U,lastSampleAt:e__default.default.iso.datetime()}),Q=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()}),Y=e__default.default.object({id:e__default.default.string(),kind:F,severity:W,message:e__default.default.string(),startedAt:e__default.default.iso.datetime(),acknowledgedAt:e__default.default.iso.datetime().nullable()}),q=e__default.default.object({enabled:e__default.default.boolean(),socketNamespace:e__default.default.string(),backfill:e__default.default.array(chunkETFQEH55_js.e)}),Z=e__default.default.object({endedAt:e__default.default.iso.datetime(),endedEarly:e__default.default.boolean(),endedReason:V,replayState:f,replayAvailableAt:e__default.default.iso.datetime().nullable()}),De=e__default.default.object({serverNow:e__default.default.iso.datetime(),slice:O,event:G,controls:z,metrics:B,telemetry:K.nullable(),crew:e__default.default.array(Q),alerts:e__default.default.array(Y),activity:e__default.default.array(e__default.default.never()),chat:q,ended:Z.nullable(),livePreview:chunkJSRHSYSZ_js.Ea.nullable()}),Le=e__default.default.object({from:e__default.default.iso.datetime().optional(),to:e__default.default.iso.datetime().optional()}),J=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()}),Ne=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(J)});exports.$=Y;exports.A=L;exports.B=d;exports.C=N;exports.D=E;exports.E=xe;exports.F=S;exports.G=P;exports.H=Te;exports.I=_;exports.J=w;exports.K=M;exports.L=k;exports.M=Ie;exports.N=Ce;exports.O=He;exports.P=je;exports.Q=O;exports.R=f;exports.S=U;exports.T=V;exports.U=F;exports.V=W;exports.W=G;exports.X=z;exports.Y=B;exports.Z=K;exports._=Q;exports.a=b;exports.aa=q;exports.b=re;exports.ba=Z;exports.c=i;exports.ca=De;exports.d=ae;exports.da=Le;exports.e=se;exports.ea=J;exports.f=le;exports.fa=Ne;exports.g=p;exports.h=ce;exports.i=ue;exports.j=me;exports.k=be;exports.l=de;exports.m=pe;exports.n=ge;exports.o=Ee;exports.p=Se;exports.q=ve;exports.r=T;exports.s=he;exports.t=ye;exports.u=Re;exports.v=I;exports.w=Ae;exports.x=C;exports.y=H;exports.z=D;//# sourceMappingURL=chunk-CXAGRSLF.js.map
2
+ //# sourceMappingURL=chunk-CXAGRSLF.js.map