@owney/sdk 0.6.6-beta.4 → 0.6.6-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -550,36 +550,52 @@ var isJwtExpired = (token) => {
550
550
  return false;
551
551
  }
552
552
  };
553
+ var memorySessions = /* @__PURE__ */ new Map();
554
+ var isFreshSession = (session) => !!session && !!session.token && !isJwtExpired(session.token);
553
555
  var readSession = (address, chainId) => {
556
+ if (typeof window === "undefined") return null;
557
+ const key = buildKey(address, chainId);
554
558
  const store = storage();
555
- if (!store) return null;
556
- const raw = store.getItem(buildKey(address, chainId));
557
- if (!raw) return null;
559
+ let raw = null;
558
560
  try {
559
- const parsed = JSON.parse(raw);
560
- if (!parsed.token || isJwtExpired(parsed.token)) {
561
- store.removeItem(buildKey(address, chainId));
562
- return null;
563
- }
564
- return parsed;
561
+ raw = store?.getItem(key) ?? null;
565
562
  } catch {
566
- store.removeItem(buildKey(address, chainId));
563
+ raw = null;
564
+ }
565
+ if (raw) {
566
+ try {
567
+ const parsed = JSON.parse(raw);
568
+ if (isFreshSession(parsed)) return parsed;
569
+ } catch {
570
+ }
571
+ memorySessions.delete(key);
572
+ try {
573
+ store?.removeItem(key);
574
+ } catch {
575
+ }
567
576
  return null;
568
577
  }
578
+ const cached = memorySessions.get(key);
579
+ if (isFreshSession(cached)) return cached;
580
+ if (cached) memorySessions.delete(key);
581
+ return null;
569
582
  };
570
583
  var writeSession = (address, chainId, session) => {
584
+ if (typeof window === "undefined") return;
585
+ const key = buildKey(address, chainId);
586
+ memorySessions.set(key, session);
571
587
  const store = storage();
572
- if (!store) return;
573
588
  try {
574
- store.setItem(buildKey(address, chainId), JSON.stringify(session));
589
+ store?.setItem(key, JSON.stringify(session));
575
590
  } catch {
576
591
  }
577
592
  };
578
593
  var clearSession = (address, chainId) => {
594
+ const key = buildKey(address, chainId);
595
+ memorySessions.delete(key);
579
596
  const store = storage();
580
- if (!store) return;
581
597
  try {
582
- store.removeItem(buildKey(address, chainId));
598
+ store?.removeItem(key);
583
599
  } catch {
584
600
  }
585
601
  };
@@ -2702,31 +2718,47 @@ var storage2 = () => {
2702
2718
  }
2703
2719
  };
2704
2720
  var buildKey2 = (address, chainId) => `${KEY_PREFIX2}:${address.toLowerCase()}:${chainId}`;
2721
+ var memorySiwxSessions = /* @__PURE__ */ new Map();
2705
2722
  var readSiwxSession = (address, chainId) => {
2723
+ if (typeof window === "undefined") return null;
2724
+ const key = buildKey2(address, chainId);
2706
2725
  const store = storage2();
2707
- if (!store) return null;
2708
- const raw = store.getItem(buildKey2(address, chainId));
2709
- if (!raw) return null;
2726
+ let raw = null;
2710
2727
  try {
2711
- return JSON.parse(raw);
2728
+ raw = store?.getItem(key) ?? null;
2712
2729
  } catch {
2713
- store.removeItem(buildKey2(address, chainId));
2714
- return null;
2730
+ raw = null;
2715
2731
  }
2732
+ if (raw) {
2733
+ try {
2734
+ return JSON.parse(raw);
2735
+ } catch {
2736
+ memorySiwxSessions.delete(key);
2737
+ try {
2738
+ store?.removeItem(key);
2739
+ } catch {
2740
+ }
2741
+ return null;
2742
+ }
2743
+ }
2744
+ return memorySiwxSessions.get(key) ?? null;
2716
2745
  };
2717
2746
  var writeSiwxSession = (address, chainId, session) => {
2747
+ if (typeof window === "undefined") return;
2748
+ const key = buildKey2(address, chainId);
2749
+ memorySiwxSessions.set(key, session);
2718
2750
  const store = storage2();
2719
- if (!store) return;
2720
2751
  try {
2721
- store.setItem(buildKey2(address, chainId), JSON.stringify(session));
2752
+ store?.setItem(key, JSON.stringify(session));
2722
2753
  } catch {
2723
2754
  }
2724
2755
  };
2725
2756
  var clearSiwxSession = (address, chainId) => {
2757
+ const key = buildKey2(address, chainId);
2758
+ memorySiwxSessions.delete(key);
2726
2759
  const store = storage2();
2727
- if (!store) return;
2728
2760
  try {
2729
- store.removeItem(buildKey2(address, chainId));
2761
+ store?.removeItem(key);
2730
2762
  } catch {
2731
2763
  }
2732
2764
  };
package/dist/index.js CHANGED
@@ -518,36 +518,52 @@ var isJwtExpired = (token) => {
518
518
  return false;
519
519
  }
520
520
  };
521
+ var memorySessions = /* @__PURE__ */ new Map();
522
+ var isFreshSession = (session) => !!session && !!session.token && !isJwtExpired(session.token);
521
523
  var readSession = (address, chainId) => {
524
+ if (typeof window === "undefined") return null;
525
+ const key = buildKey(address, chainId);
522
526
  const store = storage();
523
- if (!store) return null;
524
- const raw = store.getItem(buildKey(address, chainId));
525
- if (!raw) return null;
527
+ let raw = null;
526
528
  try {
527
- const parsed = JSON.parse(raw);
528
- if (!parsed.token || isJwtExpired(parsed.token)) {
529
- store.removeItem(buildKey(address, chainId));
530
- return null;
531
- }
532
- return parsed;
529
+ raw = store?.getItem(key) ?? null;
533
530
  } catch {
534
- store.removeItem(buildKey(address, chainId));
531
+ raw = null;
532
+ }
533
+ if (raw) {
534
+ try {
535
+ const parsed = JSON.parse(raw);
536
+ if (isFreshSession(parsed)) return parsed;
537
+ } catch {
538
+ }
539
+ memorySessions.delete(key);
540
+ try {
541
+ store?.removeItem(key);
542
+ } catch {
543
+ }
535
544
  return null;
536
545
  }
546
+ const cached = memorySessions.get(key);
547
+ if (isFreshSession(cached)) return cached;
548
+ if (cached) memorySessions.delete(key);
549
+ return null;
537
550
  };
538
551
  var writeSession = (address, chainId, session) => {
552
+ if (typeof window === "undefined") return;
553
+ const key = buildKey(address, chainId);
554
+ memorySessions.set(key, session);
539
555
  const store = storage();
540
- if (!store) return;
541
556
  try {
542
- store.setItem(buildKey(address, chainId), JSON.stringify(session));
557
+ store?.setItem(key, JSON.stringify(session));
543
558
  } catch {
544
559
  }
545
560
  };
546
561
  var clearSession = (address, chainId) => {
562
+ const key = buildKey(address, chainId);
563
+ memorySessions.delete(key);
547
564
  const store = storage();
548
- if (!store) return;
549
565
  try {
550
- store.removeItem(buildKey(address, chainId));
566
+ store?.removeItem(key);
551
567
  } catch {
552
568
  }
553
569
  };
@@ -2674,31 +2690,47 @@ var storage2 = () => {
2674
2690
  }
2675
2691
  };
2676
2692
  var buildKey2 = (address, chainId) => `${KEY_PREFIX2}:${address.toLowerCase()}:${chainId}`;
2693
+ var memorySiwxSessions = /* @__PURE__ */ new Map();
2677
2694
  var readSiwxSession = (address, chainId) => {
2695
+ if (typeof window === "undefined") return null;
2696
+ const key = buildKey2(address, chainId);
2678
2697
  const store = storage2();
2679
- if (!store) return null;
2680
- const raw = store.getItem(buildKey2(address, chainId));
2681
- if (!raw) return null;
2698
+ let raw = null;
2682
2699
  try {
2683
- return JSON.parse(raw);
2700
+ raw = store?.getItem(key) ?? null;
2684
2701
  } catch {
2685
- store.removeItem(buildKey2(address, chainId));
2686
- return null;
2702
+ raw = null;
2687
2703
  }
2704
+ if (raw) {
2705
+ try {
2706
+ return JSON.parse(raw);
2707
+ } catch {
2708
+ memorySiwxSessions.delete(key);
2709
+ try {
2710
+ store?.removeItem(key);
2711
+ } catch {
2712
+ }
2713
+ return null;
2714
+ }
2715
+ }
2716
+ return memorySiwxSessions.get(key) ?? null;
2688
2717
  };
2689
2718
  var writeSiwxSession = (address, chainId, session) => {
2719
+ if (typeof window === "undefined") return;
2720
+ const key = buildKey2(address, chainId);
2721
+ memorySiwxSessions.set(key, session);
2690
2722
  const store = storage2();
2691
- if (!store) return;
2692
2723
  try {
2693
- store.setItem(buildKey2(address, chainId), JSON.stringify(session));
2724
+ store?.setItem(key, JSON.stringify(session));
2694
2725
  } catch {
2695
2726
  }
2696
2727
  };
2697
2728
  var clearSiwxSession = (address, chainId) => {
2729
+ const key = buildKey2(address, chainId);
2730
+ memorySiwxSessions.delete(key);
2698
2731
  const store = storage2();
2699
- if (!store) return;
2700
2732
  try {
2701
- store.removeItem(buildKey2(address, chainId));
2733
+ store?.removeItem(key);
2702
2734
  } catch {
2703
2735
  }
2704
2736
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owney/sdk",
3
- "version": "0.6.6-beta.4",
3
+ "version": "0.6.6-beta.5",
4
4
  "type": "module",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.js",