From a6a2fbcf8d3f5a4d4b047350271d6192016a956d Mon Sep 17 00:00:00 2001 From: nikhil-narayana-klevu <97588976+nikhil-narayana-klevu@users.noreply.github.com> Date: Tue, 7 May 2024 13:22:46 +0530 Subject: [PATCH] CORE - Fixes issues #622 and #623 (#624) --- packages/klevu-core/src/usersession.ts | 2 +- packages/klevu-core/src/utils/storage.ts | 14 +++++++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/klevu-core/src/usersession.ts b/packages/klevu-core/src/usersession.ts index 737088c8..d3e3c566 100644 --- a/packages/klevu-core/src/usersession.ts +++ b/packages/klevu-core/src/usersession.ts @@ -1,4 +1,4 @@ -import { KlevuConfig } from "." +import { KlevuConfig } from "./index.js" import { post } from "./connection/fetch.js" import { Klaviyo } from "./connectors/klaviyo.js" import { KlevuStorage } from "./utils/index.js" diff --git a/packages/klevu-core/src/utils/storage.ts b/packages/klevu-core/src/utils/storage.ts index 41c2f98f..c3973a35 100644 --- a/packages/klevu-core/src/utils/storage.ts +++ b/packages/klevu-core/src/utils/storage.ts @@ -1,4 +1,4 @@ -import { KlevuConfig } from ".." +import { KlevuConfig } from "../index.js" export enum StorageType { SESSION = "session", @@ -6,11 +6,19 @@ export enum StorageType { } const isSessionStorage = (storageType: StorageType) => { - return storageType === StorageType.SESSION && window.sessionStorage + return ( + storageType === StorageType.SESSION && + typeof window !== "undefined" && + window.sessionStorage + ) } const isLocalStorage = (storageType: StorageType) => { - return storageType === StorageType.LOCAL && window.localStorage + return ( + storageType === StorageType.LOCAL && + typeof window !== "undefined" && + window.localStorage + ) } export class KlevuStorage {