Merged in feat/SW-1810-prevent-starting-link-flow-when-linked (pull request #1469)

Prevent SAS link flow when already linked

* Implement check for checking sas_eb membership when starting link flow


Approved-by: Joakim Jäderberg
This commit is contained in:
Anton Gunnarsson
2025-03-05 08:17:02 +00:00
parent 81f1470405
commit 43d3713f59
8 changed files with 33 additions and 23 deletions

View File

@@ -2,7 +2,7 @@ import { z } from "zod"
import { countriesMap } from "@/constants/countries"
import { getMembership, scandicMemberships } from "@/utils/user"
import { getFriendsMembership, scandicMemberships } from "@/utils/user"
import { imageSchema } from "../hotels/schemas/image"
@@ -18,11 +18,10 @@ const commonMembershipSchema = z.object({
tierExpirationDate: z.string().optional(),
})
const toLowerCaseString = z.string().transform((s) => s.toLowerCase())
const membershipType = (membershipType: scandicMemberships) =>
z
.string()
toLowerCaseString
// The memberships enum is in lower case so this makes sure it will match regardless of casing in the API response.
.transform((s) => s.toLowerCase())
.pipe(z.literal(membershipType))
const friendsMembershipSchema = z
@@ -35,7 +34,7 @@ const friendsMembershipSchema = z
const otherMembershipSchema = z
.object({
membershipType: z.string(),
membershipType: toLowerCaseString,
membershipNumber: z.string().optional(),
memberSince: z.string().optional(),
})
@@ -75,7 +74,7 @@ export const getUserSchema = z
.transform((apiResponse) => {
return {
...apiResponse.data.attributes,
membership: getMembership(apiResponse.data.attributes.memberships),
membership: getFriendsMembership(apiResponse.data.attributes.memberships),
name: `${apiResponse.data.attributes.firstName} ${apiResponse.data.attributes.lastName}`,
}
})