{"version":3,"sources":["../src/errors/error-codes.ts"],"names":["ApiErrorCode"],"mappings":"AAIO,IAAMA,CAAAA,CAAe,CAE1B,mBAAA,CAAqB,0BAAA,CACrB,cAAe,oBAAA,CACf,aAAA,CAAe,oBAAA,CACf,aAAA,CAAe,qBACf,YAAA,CAAc,mBAAA,CACd,SAAA,CAAW,gBAAA,CACX,mBAAoB,yBAAA,CACpB,oBAAA,CAAsB,2BAAA,CACtB,aAAA,CAAe,qBAGf,cAAA,CAAgB,qBAAA,CAChB,sBAAA,CAAwB,6BAAA,CACxB,4BAA6B,kCAAA,CAC7B,wBAAA,CAA0B,+BAAA,CAC1B,6BAAA,CAA+B,qCAC/B,mBAAA,CAAqB,0BAAA,CACrB,wBAAA,CAA0B,sCAAA,CAC1B,gBAAiB,6BAAA,CACjB,iBAAA,CAAmB,wBAAA,CACnB,YAAA,CAAc,mBAAA,CAGd,eAAA,CAAiB,uBAAA,CACjB,mBAAA,CAAqB,4BACrB,kBAAA,CAAoB,0BAAA,CACpB,eAAA,CAAiB,uBAAA,CACjB,YAAa,mBAAA,CACb,8BAAA,CAAgC,gCAAA,CAChC,sBAAA,CAAwB,yBACxB,yBAAA,CAA2B,2BAAA,CAC3B,oBAAA,CAAsB,sBAAA,CACtB,qBAAsB,sBAAA,CACtB,uBAAA,CAAyB,yBAAA,CACzB,cAAA,CAAgB,iBAChB,2BAAA,CAA6B,6BAAA,CAC7B,wBAAA,CAA0B,0BAAA,CAG1B,kBAAmB,2BAAA,CACnB,gCAAA,CAAkC,kCAAA,CAClC,kBAAA,CAAoB,6BACpB,qBAAA,CAAuB,+BAAA,CACvB,sBAAA,CAAwB,gCAAA,CACxB,qBAAA,CAAuB,+BAAA,CACvB,kBAAA,CAAoB,4BAAA,CACpB,iCAAkC,uBAAA,CAClC,gCAAA,CAAkC,uBAAA,CAClC,uBAAA,CAAyB,kCACzB,uBAAA,CAAyB,iCAAA,CACzB,qBAAA,CAAuB,+BAAA,CACvB,uBAAwB,wBAAA,CACxB,sCAAA,CAAwC,wCAAA,CACxC,yBAAA,CAA2B,oCAC3B,6BAAA,CAA+B,uCAAA,CAC/B,8BAAA,CAAgC,wCAAA,CAChC,+BAAgC,wCAAA,CAGhC,iBAAA,CAAmB,0BAAA,CACnB,qBAAA,CAAuB,+BACvB,mBAAA,CAAqB,4BAAA,CACrB,mBAAA,CAAqB,4BAAA,CACrB,+BAAgC,gCAAA,CAChC,kBAAA,CAAoB,2BAAA,CAUpB,kBAAA,CAAoB,qBACpB,SAAA,CAAW,kBAAA,CAGX,iBAAA,CAAmB,2BAAA,CACnB,0BAA2B,2BAAA,CAC3B,cAAA,CAAgB,wBAAA,CAChB,mBAAA,CAAqB,8BACrB,aAAA,CAAe,uBAAA,CACf,cAAA,CAAgB,wBAAA,CAChB,eAAgB,wBAAA,CAGhB,iBAAA,CAAmB,2BAAA,CACnB,sBAAA,CAAwB,iCACxB,yBAAA,CAA2B,2BAAA,CAG3B,6BAAA,CAA+B,+BAAA,CAG/B,iBAAkB,0BAAA,CAClB,kBAAA,CAAoB,4BAAA,CACpB,QAAA,CAAU,mBACV,YAAA,CAAc,sBAAA,CACd,qBAAA,CAAuB,+BAAA,CACvB,oBAAqB,6BACvB","file":"chunk-L56RT4N7.mjs","sourcesContent":["/**\n * Canonical machine-readable error codes for the LivDot platform.\n * These codes are mapped to string slugs used in ApiError.type URLs.\n */\nexport const ApiErrorCode = {\n  // AUTH errors\n  INVALID_CREDENTIALS: 'auth/invalid-credentials',\n  TOKEN_EXPIRED: 'auth/token-expired',\n  TOKEN_INVALID: 'auth/token-invalid',\n  TOKEN_MISSING: 'auth/token-missing',\n  UNAUTHORIZED: 'auth/unauthorized',\n  FORBIDDEN: 'auth/forbidden',\n  EMAIL_NOT_VERIFIED: 'auth/email-not-verified',\n  EMAIL_ALREADY_EXISTS: 'auth/email-already-exists',\n  COGNITO_ERROR: 'auth/cognito-error',\n\n  // USER errors\n  USER_NOT_FOUND: 'user/user-not-found',\n  HOST_PROFILE_NOT_FOUND: 'user/host-profile-not-found',\n  HOST_PROFILE_ALREADY_EXISTS: 'user/host-profile-already-exists',\n  VENDOR_PROFILE_NOT_FOUND: 'user/vendor-profile-not-found',\n  VENDOR_PROFILE_ALREADY_EXISTS: 'user/vendor-profile-already-exists',\n  VENDOR_NOT_VERIFIED: 'user/vendor-not-verified',\n  INVALID_STATE_TRANSITION: 'marketplace/invalid-state-transition',\n  REASON_REQUIRED: 'marketplace/reason-required',\n  ACCOUNT_SUSPENDED: 'user/account-suspended',\n  KYC_REQUIRED: 'user/kyc-required',\n\n  // EVENT errors\n  EVENT_NOT_FOUND: 'event/event-not-found',\n  EVENT_NOT_PUBLISHED: 'event/event-not-published',\n  EVENT_ALREADY_LIVE: 'event/event-already-live',\n  EVENT_CANCELLED: 'event/event-cancelled',\n  EVENT_ENDED: 'event/event-ended',\n  EVENT_STATE_TRANSITION_INVALID: 'event/state-transition-invalid',\n  EVENT_PREFLIGHT_FAILED: 'event/preflight-failed',\n  EVENT_MAX_TICKETS_REACHED: 'event/max-tickets-reached',\n  EVENT_GEO_RESTRICTED: 'event/geo-restricted',\n  EVENT_NOT_ACCESSIBLE: 'event/not-accessible',\n  EVENT_FEEDBACK_NOT_OPEN: 'event/feedback-not-open',\n  EVENT_NOT_LIVE: 'event/not-live',\n  EVENT_EXTENSION_CAP_REACHED: 'event/extension-cap-reached',\n  EVENT_EXTENSION_CONFLICT: 'event/extension-conflict',\n\n  // BOOKING errors\n  BOOKING_NOT_FOUND: 'booking/booking-not-found',\n  BOOKING_STATE_TRANSITION_INVALID: 'booking/state-transition-invalid',\n  VENDOR_UNAVAILABLE: 'booking/vendor-unavailable',\n  ESCROW_FUNDING_FAILED: 'booking/escrow-funding-failed',\n  BOOKING_ALREADY_EXISTS: 'booking/booking-already-exists',\n  JOB_LISTING_NOT_FOUND: 'booking/job-listing-not-found',\n  JOB_LISTING_CLOSED: 'booking/job-listing-closed',\n  INDICATION_OF_INTEREST_DUPLICATE: 'booking/ioi-duplicate',\n  INDICATION_OF_INTEREST_NOT_FOUND: 'booking/ioi-not-found',\n  HIRING_THREAD_NOT_FOUND: 'booking/hiring-thread-not-found',\n  HIRING_THREAD_FORBIDDEN: 'booking/hiring-thread-forbidden',\n  REVIEW_ALREADY_EXISTS: 'booking/review-already-exists',\n  BOOKING_NOT_REVIEWABLE: 'booking/not-reviewable',\n  BOOKING_REVIEW_REQUIRED_BEFORE_RELEASE: 'booking/review-required-before-release',\n  CREW_ASSIGNMENT_NOT_FOUND: 'booking/crew-assignment-not-found',\n  CREW_ASSIGNMENT_INVALID_STATE: 'booking/crew-assignment-invalid-state',\n  CREW_ASSIGNMENT_ALREADY_EXISTS: 'booking/crew-assignment-already-exists',\n  CREW_ASSIGNMENT_BOOKING_EXISTS: 'booking/crew-assignment-booking-exists',\n\n  // STREAM errors\n  STREAM_NOT_ACTIVE: 'stream/stream-not-active',\n  ENTITLEMENT_NOT_FOUND: 'stream/entitlement-not-found',\n  ENTITLEMENT_EXPIRED: 'stream/entitlement-expired',\n  ENTITLEMENT_REVOKED: 'stream/entitlement-revoked',\n  STREAM_CREDENTIALS_UNAVAILABLE: 'stream/credentials-unavailable',\n  HOST_NOT_STREAMING: 'stream/host-not-streaming',\n  /**\n   * The host's ingest gate is explicitly closed (`Event.streamEnabled =\n   * false`) — they paused the broadcast, or have not opened it yet.\n   *\n   * Distinct from `HOST_NOT_STREAMING`, which means the gate is *open*\n   * and nothing is arriving. The difference matters to a viewer: one is\n   * a deliberate act the host will undo, the other is a technical\n   * condition that may resolve on its own. Both are 409.\n   */\n  HOST_STREAM_PAUSED: 'stream/host-paused',\n  IVS_ERROR: 'stream/ivs-error',\n\n  // PAYMENT errors\n  PAYMENT_NOT_FOUND: 'payment/payment-not-found',\n  PAYMENT_ALREADY_PROCESSED: 'payment/already-processed',\n  PAYMENT_FAILED: 'payment/payment-failed',\n  REFUND_NOT_ELIGIBLE: 'payment/refund-not-eligible',\n  PAYOUT_FAILED: 'payment/payout-failed',\n  INVALID_AMOUNT: 'payment/invalid-amount',\n  PROVIDER_ERROR: 'payment/provider-error',\n\n  // DISPUTE errors\n  DISPUTE_NOT_FOUND: 'dispute/dispute-not-found',\n  DISPUTE_ALREADY_EXISTS: 'dispute/dispute-already-exists',\n  DISPUTE_DEADLINE_EXCEEDED: 'dispute/deadline-exceeded',\n\n  // WAITLIST errors\n  WAITLIST_ENTRY_ALREADY_EXISTS: 'waitlist/entry-already-exists',\n\n  // GENERAL errors\n  VALIDATION_ERROR: 'general/validation-error',\n  RESOURCE_NOT_FOUND: 'general/resource-not-found',\n  CONFLICT: 'general/conflict',\n  RATE_LIMITED: 'general/rate-limited',\n  INTERNAL_SERVER_ERROR: 'general/internal-server-error',\n  SERVICE_UNAVAILABLE: 'general/service-unavailable',\n} as const;\n\nexport type ApiErrorCode = (typeof ApiErrorCode)[keyof typeof ApiErrorCode];\n"]}