Files
playzer/packages/api-contract/src/index.ts
Jose Selesan 260d79fc99 feat: implement public booking cancellation feature
- Added cancelPublicBooking handler to manage booking cancellations.
- Updated public booking service to include cancellation logic.
- Created cancelPublicBooking schema for input validation.
- Modified public booking confirmation page to allow users to cancel their bookings.
- Enhanced email service to send cancellation confirmation emails.
- Made customerEmail field required in booking schemas and updated related components.
- Updated API client to support cancellation requests.
- Added migration to enforce non-nullable customer_email fields in the database.
2026-06-05 11:24:02 -03:00

132 lines
3.0 KiB
TypeScript

export {
planFeatureFlagsSchema,
planRulesSchema,
planRulesV1Schema,
planSchema,
planSummarySchema,
planWithFeaturesSchema,
planLimitsSchema,
} from './plan'
export type {
Plan,
PlanFeatureFlags,
PlanRules,
PlanRulesV1,
PlanSummary,
PlanWithFeatures,
PlanLimits,
} from './plan'
export {
acceptComplexInvitationsSchema,
complexInvitationSchema,
complexInvitationStatusSchema,
complexMemberSchema,
complexUsersOverviewSchema,
complexSchema,
complexUserRoleSchema,
complexWithRoleSchema,
createComplexSchema,
inviteComplexUserSchema,
revokeComplexUserSchema,
selectComplexSchema,
updateComplexSchema,
} from './complex'
export type {
AcceptComplexInvitationsInput,
AcceptComplexInvitationsResponse,
CancelComplexInvitationResponse,
Complex,
ComplexInvitation,
ComplexInvitationStatus,
ComplexMember,
ComplexUserRole,
ComplexWithRole,
CreateComplexInput,
CreateComplexPayload,
CreateComplexResponse,
ComplexUsersOverview,
SelectComplexInput,
InviteComplexUserInput,
InviteComplexUserResponse,
UpdateComplexInput,
UpdateComplexPayload,
UpdateComplexResponse,
RevokeComplexUserInput,
} from './complex'
export {
dayOfWeekSchema,
courtAvailabilityInputSchema,
courtAvailabilitySchema,
courtPriceRuleSchema,
courtSchema,
createCourtSchema,
updateCourtSchema,
} from './court'
export type {
DayOfWeek,
Court,
CourtAvailability,
CourtAvailabilityInput,
CourtPriceRule,
CreateCourtInput,
UpdateCourtInput,
} from './court'
export {
adminBookingSchema,
adminBookingSportSchema,
bookingStatusSchema,
createAdminBookingSchema,
listAdminBookingsQuerySchema,
listAdminBookingsResponseSchema,
updateAdminBookingStatusSchema,
} from './admin-booking'
export type {
AdminBooking,
AdminBookingSport,
BookingStatus,
CreateAdminBookingInput,
ListAdminBookingsQuery,
ListAdminBookingsResponse,
UpdateAdminBookingStatusInput,
} from './admin-booking'
export {
createPublicBookingSchema,
publicAvailabilityCourtSchema,
publicAvailabilityQuerySchema,
publicAvailabilityResponseSchema,
publicBookingConfirmationSchema,
publicBookingSchema,
publicBookingSlotSchema,
publicBookingSportSchema,
cancelPublicBookingSchema,
} from './public-booking'
export type {
CreatePublicBookingInput,
CancelPublicBookingInput,
PublicAvailabilityCourt,
PublicAvailabilityQuery,
PublicAvailabilityResponse,
PublicBooking,
PublicBookingConfirmation,
PublicBookingSlot,
PublicBookingSport,
} from './public-booking'
export { sportSchema, createSportSchema, updateSportSchema } from './sport'
export type { Sport, CreateSportInput, UpdateSportInput } from './sport'
export {
userProfileSchema,
passwordResetStartSchema,
passwordResetVerifySchema,
passwordResetResendSchema,
} from './user'
export type {
UserProfile,
UserProfileResponse,
PasswordResetStartInput,
PasswordResetVerifyInput,
PasswordResetResendInput,
PasswordResetStartResponse,
PasswordResetVerifyResponse,
PasswordResetResendResponse,
} from './user'