feat(SW-1710): add access checks to my stay page for viewing booking

This commit is contained in:
Christian Andolf
2025-03-05 13:46:09 +01:00
parent 1009ea87c9
commit b0df70e552
21 changed files with 515 additions and 133 deletions

View File

@@ -1,6 +1,13 @@
import { defineMessage } from "react-intl"
import { z } from "zod"
export {
type AdditionalInfoFormSchema,
additionalInfoFormSchema,
type FindMyBookingFormSchema,
findMyBookingFormSchema,
}
defineMessage({
id: "Invalid booking number",
})
@@ -17,8 +24,15 @@ defineMessage({
id: "Email address is required",
})
export const findMyBookingFormSchema = z.object({
bookingNumber: z
const additionalInfoFormSchema = z.object({
firstName: z.string().trim().max(250).min(1, {
message: "First name is required",
}),
email: z.string().max(250).email({ message: "Email address is required" }),
})
const findMyBookingFormSchema = additionalInfoFormSchema.extend({
confirmationNumber: z
.string()
.trim()
.regex(/^[0-9]+(-[0-9])?$/, {
@@ -27,14 +41,11 @@ export const findMyBookingFormSchema = z.object({
.min(1, {
message: "Booking number is required",
}),
firstName: z.string().trim().max(250).min(1, {
message: "First name is required",
}),
lastName: z.string().trim().max(250).min(1, {
message: "Last name is required",
}),
email: z.string().max(250).email({ message: "Email address is required" }),
})
export interface FindMyBookingFormSchema
extends z.output<typeof findMyBookingFormSchema> {}
type AdditionalInfoFormSchema = z.output<typeof additionalInfoFormSchema>
type FindMyBookingFormSchema = z.output<typeof findMyBookingFormSchema>