fix: track user on page load

This commit is contained in:
Christel Westerberg
2024-07-15 09:13:20 +02:00
parent edb6005a72
commit c96008fb78
18 changed files with 247 additions and 122 deletions

View File

@@ -1,3 +1,5 @@
import { MembershipLevel } from "@/constants/membershipLevels"
import type { Lang } from "@/constants/languages"
export enum TrackingChannelEnum {
@@ -14,8 +16,25 @@ export type TrackingSDKPageData = {
channel: TrackingChannel
}
export enum LoginTypeEnum {
Email = "email",
MembershipNumber = "membership number",
MagicLink = "magic link",
}
export type LoginType = keyof typeof LoginTypeEnum
export type TrackingSDKUserData = {
loginStatus: boolean
loginType?: LoginType
memberId?: string
memberLevel?: MembershipLevel
noOfNightsStayed?: number
totalPointsAvailableToSpend?: number
}
export type TrackingSDKProps = {
pageData: TrackingSDKPageData
userData: TrackingSDKUserData
}
export type TrackingSDKData = {
@@ -56,22 +75,6 @@ export type SiteSectionObject = {
sitesection6: string
}
export enum TrackableClickIdEnum {
LoginStartTopMenu = "LoginStartTopMenu",
LoginStartHamburgerMenu = "LoginStartHamburgerMenu",
LoginStartJoinScandicFriends = "LoginStartJoinScandicFriends",
LoginFail = "LoginFail",
HamburgerLink = "HamburgerLink",
ProfilePictureLink = "ProfilePictureLink",
}
type TrackableClickId = keyof typeof TrackableClickIdEnum
export type TrackableLoginId = Exclude<
TrackableClickId,
"HamburgerLink" | "ProfilePictureLink" | "LoginFail"
>
export type TrackingPosition =
| "top menu"
| "hamburger menu"