I am trying to integrate near/wallet-selector https://github.com/near/wallet-selector in my Nextjs app but it fails with error window not defined.
ReferenceError: window is not defined
Uncaught     at new PersistentStorage (file://D:\swap\node_modules\@near-wallet-selector\core\index.umd.js:2444:50)
    at <unknown> (file://D:\swap\node_modules\@near-wallet-selector\core\index.umd.js:2507:18)
    at <unknown> (file://D:\swap\node_modules\@near-wallet-selector\core\index.umd.js:2:65)
    at Object.<anonymous> (file://D:\swap\node_modules\@near-wallet-selector\core\index.umd.js:5:3)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
What I tried so far
- tried to import NearWalletSelector dynamically
 
const NearWalletSelector = dynamic(
  () => import('@near-wallet-selector/core/'),
  {
    ssr: false,
  }
);
- tried using
 
useEffect(() => {
 if (typeof window !== "undefined") {
   const selector = await NearWalletSelector.init({config...}).then((instance) => {
        return instance.getAccounts().then(async (newAccounts) => {
          syncAccountState(localStorage.getItem('accountId'), newAccounts);
         
          window.selector = instance;
          setSelector(instance);
        });
      })
      .catch((err) => {
        console.error(err);
        alert('Failed to initialise wallet selector');
      });
},[]}
}
Can someone help me with resolving this issue?
Thanks