Files
web/apps/scandic-web/utils/tracking/base.ts
Anton Gunnarsson 1bd8fe6821 Merged in feat/sw-2879-booking-widget-to-booking-flow-package (pull request #2532)
feat(SW-2879): Move BookingWidget to booking-flow package

* Fix lockfile

* Fix styling

* a tiny little booking widget test

* Tiny fixes

* Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package

* Remove unused scripts

* lint:fix

* Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package

* Tiny lint fixes

* update test

* Update Input in booking-flow

* Clean up comments etc

* Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package

* Setup tracking context for booking-flow

* Add missing use client

* Fix temp tracking function

* Pass booking to booking-widget

* Remove comment

* Add use client to booking widget tracking provider

* Add use client to tracking functions

* Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package

* Move debug page

* Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package

* Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package

* Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package


Approved-by: Bianca Widstam
2025-08-05 09:20:20 +00:00

43 lines
846 B
TypeScript

"use client"
import { logger } from "@scandic-hotels/common/logger"
import { SESSION_ID_KEY_NAME } from "@/hooks/useSessionId"
export function trackEvent(data: any) {
if (
typeof window !== "undefined" &&
window.adobeDataLayer &&
window.dataLayer
) {
let sessionId = ""
try {
sessionId = sessionStorage.getItem(SESSION_ID_KEY_NAME) ?? ""
} catch (e) {
logger.error("Error getting sessionId from sessionStorage", e)
}
data = {
...data,
pageInfo: { ...data?.pageInfo, siteVersion: "new-web", sessionId },
}
window.adobeDataLayer.push(data)
window.dataLayer.push(data)
}
}
export function trackClick(
name: string,
additionalParams?: Record<string, string>
) {
trackEvent({
event: "linkClick",
cta: {
...additionalParams,
name,
},
})
}