@vela-ventures/aosync-sdk-react 1.0.22 → 1.0.24

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/types.d.ts CHANGED
@@ -2,6 +2,7 @@ import { DataItem } from "arconnect";
2
2
  import Transaction from "arweave/web/lib/transaction";
3
3
  export interface AOSyncSDKContext {
4
4
  isConnected: boolean;
5
+ isSessionActive: boolean;
5
6
  connect: () => Promise<void>;
6
7
  disconnect: () => Promise<void>;
7
8
  getAllAddresses: () => Promise<string[]>;
@@ -16,6 +16,13 @@ export function AOSyncProvider({ gatewayConfig = { host: "arweave.net", port: 44
16
16
  var _a;
17
17
  const walletRef = useRef(new WalletClient());
18
18
  const [isConnected, setIsConnected] = useState(!!((_a = walletRef === null || walletRef === void 0 ? void 0 : walletRef.current) === null || _a === void 0 ? void 0 : _a.uid));
19
+ const [isSessionActive, setIsSessionActive] = useState(() => {
20
+ if (typeof window !== "undefined") {
21
+ const sessionValue = sessionStorage.getItem("aosync-session-active");
22
+ return sessionValue ? JSON.parse(sessionValue) : false;
23
+ }
24
+ return false;
25
+ });
19
26
  useEffect(() => {
20
27
  const wallet = walletRef.current;
21
28
  wallet.reconnect();
@@ -28,6 +35,18 @@ export function AOSyncProvider({ gatewayConfig = { host: "arweave.net", port: 44
28
35
  wallet.off("connected", handleConnect);
29
36
  };
30
37
  }, []);
38
+ useEffect(() => {
39
+ const handleStorageChange = (event) => {
40
+ if (event.key === "aosync-session-active" && event.storageArea === sessionStorage) {
41
+ const newValue = event.newValue ? JSON.parse(event.newValue) : false;
42
+ setIsSessionActive(newValue);
43
+ }
44
+ };
45
+ window.addEventListener("storage", handleStorageChange);
46
+ return () => {
47
+ window.removeEventListener("storage", handleStorageChange);
48
+ };
49
+ }, []);
31
50
  const connect = () => __awaiter(this, void 0, void 0, function* () {
32
51
  try {
33
52
  yield walletRef.current.connect({
@@ -128,6 +147,7 @@ export function AOSyncProvider({ gatewayConfig = { host: "arweave.net", port: 44
128
147
  });
129
148
  return (React.createElement(AOSyncContext.Provider, { value: {
130
149
  isConnected,
150
+ isSessionActive,
131
151
  connect,
132
152
  disconnect,
133
153
  getAddress,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vela-ventures/aosync-sdk-react",
3
- "version": "1.0.22",
3
+ "version": "1.0.24",
4
4
  "main": "dist/index.js",
5
5
  "files": [
6
6
  "dist"
@@ -65,6 +65,6 @@
65
65
  "react": "^17.0.0 || ^18.0.0 || ^19.0.0"
66
66
  },
67
67
  "dependencies": {
68
- "@vela-ventures/ao-sync-sdk": "^1.1.22"
68
+ "@vela-ventures/ao-sync-sdk": "^1.1.24"
69
69
  }
70
70
  }