Feature/wrap logging * feat: change all logging to go through our own logger function so that we can control log levels * move packages/trpc to using our own logger * merge Approved-by: Linus Flood
49 lines
1.1 KiB
TypeScript
49 lines
1.1 KiB
TypeScript
import "client-only"
|
|
|
|
import { logger } from "@scandic-hotels/common/logger"
|
|
|
|
export const glaStorageName = "gla-storage"
|
|
|
|
type GlaSessionData = {
|
|
lateArrivalGuarantee: string
|
|
hotelId: string
|
|
paymentMethod?: string
|
|
isSavedCreditCard?: boolean
|
|
}
|
|
|
|
export function readGlaFromSessionStorage(): GlaSessionData | null {
|
|
try {
|
|
const glaSessionData = sessionStorage.getItem(glaStorageName)
|
|
if (!glaSessionData) return null
|
|
return JSON.parse(glaSessionData)
|
|
} catch (error) {
|
|
logger.error("Error reading from session storage:", error)
|
|
return null
|
|
}
|
|
}
|
|
|
|
export function writeGlaToSessionStorage(
|
|
lateArrivalGuarantee: string,
|
|
hotelId: string,
|
|
paymentMethod: string,
|
|
isSavedCreditCard: boolean
|
|
) {
|
|
try {
|
|
sessionStorage.setItem(
|
|
glaStorageName,
|
|
JSON.stringify({
|
|
lateArrivalGuarantee,
|
|
hotelId,
|
|
paymentMethod,
|
|
isSavedCreditCard,
|
|
})
|
|
)
|
|
} catch (error) {
|
|
logger.error("Error writing to session storage:", error)
|
|
}
|
|
}
|
|
|
|
export function clearGlaSessionStorage() {
|
|
sessionStorage.removeItem(glaStorageName)
|
|
}
|