@sundaeswap/wallet-lite 0.0.83 → 0.0.85
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/cjs/@types/events.js.map +1 -1
- package/dist/cjs/classes/WalletObserver.class.js +36 -31
- package/dist/cjs/classes/WalletObserver.class.js.map +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/WalletObserverProvider.js +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/WalletObserverProvider.js.map +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useProviderWalletObserverRef.js +30 -32
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useProviderWalletObserverRef.js.map +1 -1
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +126 -109
- package/dist/cjs/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/cjs/react-components/contexts/observer/types.js.map +1 -1
- package/dist/esm/@types/events.js.map +1 -1
- package/dist/esm/classes/WalletObserver.class.js +18 -12
- package/dist/esm/classes/WalletObserver.class.js.map +1 -1
- package/dist/esm/react-components/WalletObserverProvider/WalletObserverProvider.js +1 -1
- package/dist/esm/react-components/WalletObserverProvider/WalletObserverProvider.js.map +1 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/useProviderWalletObserverRef.js +23 -13
- package/dist/esm/react-components/WalletObserverProvider/hooks/useProviderWalletObserverRef.js.map +1 -1
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js +7 -6
- package/dist/esm/react-components/WalletObserverProvider/hooks/useWalletObserverState.js.map +1 -1
- package/dist/esm/react-components/contexts/observer/types.js.map +1 -1
- package/dist/types/@types/events.d.ts +6 -2
- package/dist/types/@types/events.d.ts.map +1 -1
- package/dist/types/classes/WalletObserver.class.d.ts +2 -2
- package/dist/types/classes/WalletObserver.class.d.ts.map +1 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/useProviderWalletObserverRef.d.ts +2 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/useProviderWalletObserverRef.d.ts.map +1 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts +2 -1
- package/dist/types/react-components/WalletObserverProvider/hooks/useWalletObserverState.d.ts.map +1 -1
- package/dist/types/react-components/contexts/observer/types.d.ts +6 -2
- package/dist/types/react-components/contexts/observer/types.d.ts.map +1 -1
- package/dist/types/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/@types/events.ts +2 -2
- package/src/classes/WalletObserver.class.ts +23 -14
- package/src/classes/__tests__/WalletObserver.test.ts +4 -0
- package/src/react-components/WalletObserverProvider/WalletObserverProvider.tsx +1 -1
- package/src/react-components/WalletObserverProvider/hooks/useProviderWalletObserverRef.ts +36 -14
- package/src/react-components/WalletObserverProvider/hooks/useWalletObserverState.ts +107 -102
- package/src/react-components/contexts/observer/types.ts +2 -2
package/package.json
CHANGED
package/src/@types/events.ts
CHANGED
|
@@ -25,11 +25,11 @@ export interface IWalletObserverEventValues<
|
|
|
25
25
|
[EWalletObserverEvents.SYNCING_WALLET_START]: undefined;
|
|
26
26
|
[EWalletObserverEvents.SYNCING_WALLET_END]:
|
|
27
27
|
| undefined
|
|
28
|
-
| IWalletObserverSync<T
|
|
28
|
+
| (IWalletObserverSync<T> & { activeWallet: string });
|
|
29
29
|
[EWalletObserverEvents.CONNECT_WALLET_START]: undefined;
|
|
30
30
|
[EWalletObserverEvents.CONNECT_WALLET_END]:
|
|
31
31
|
| undefined
|
|
32
|
-
| IWalletObserverSync<T
|
|
32
|
+
| (IWalletObserverSync<T> & { activeWallet: string });
|
|
33
33
|
[EWalletObserverEvents.GET_BALANCE_MAP_START]: undefined;
|
|
34
34
|
[EWalletObserverEvents.GET_BALANCE_MAP_END]: {
|
|
35
35
|
balanceMap: WalletBalanceMap<T>;
|
|
@@ -136,7 +136,6 @@ export class WalletObserver<
|
|
|
136
136
|
|
|
137
137
|
if (newNetwork instanceof Error) {
|
|
138
138
|
this.dispatch(EWalletObserverEvents.SYNCING_WALLET_END);
|
|
139
|
-
this.dispatch(EWalletObserverEvents.CONNECT_WALLET_END);
|
|
140
139
|
this._performingSync = false;
|
|
141
140
|
throw newNetwork;
|
|
142
141
|
}
|
|
@@ -173,14 +172,15 @@ export class WalletObserver<
|
|
|
173
172
|
console.log(`sync: ${end - start}ms`);
|
|
174
173
|
}
|
|
175
174
|
|
|
176
|
-
this.dispatch(EWalletObserverEvents.SYNCING_WALLET_END,
|
|
177
|
-
|
|
175
|
+
this.dispatch(EWalletObserverEvents.SYNCING_WALLET_END, {
|
|
176
|
+
...result,
|
|
177
|
+
activeWallet: this.activeWallet!,
|
|
178
|
+
});
|
|
178
179
|
this._performingSync = false;
|
|
179
180
|
return result;
|
|
180
181
|
} catch (e) {
|
|
181
182
|
this._performingSync = false;
|
|
182
183
|
this.dispatch(EWalletObserverEvents.SYNCING_WALLET_END);
|
|
183
|
-
this.dispatch(EWalletObserverEvents.CONNECT_WALLET_END);
|
|
184
184
|
throw e;
|
|
185
185
|
}
|
|
186
186
|
};
|
|
@@ -279,9 +279,11 @@ export class WalletObserver<
|
|
|
279
279
|
* 10 seconds before throw an error.
|
|
280
280
|
*
|
|
281
281
|
* @param {string} extension The name of the extension to enable.
|
|
282
|
-
* @return {Promise<
|
|
282
|
+
* @return {Promise<IWalletObserverSync<AssetMetadata> | Error>}
|
|
283
283
|
*/
|
|
284
|
-
connectWallet = async (
|
|
284
|
+
connectWallet = async (
|
|
285
|
+
extension: string,
|
|
286
|
+
): Promise<IWalletObserverSync<AssetMetadata> | Error> => {
|
|
285
287
|
const start = performance.now();
|
|
286
288
|
this.dispatch(EWalletObserverEvents.CONNECT_WALLET_START);
|
|
287
289
|
|
|
@@ -306,23 +308,24 @@ export class WalletObserver<
|
|
|
306
308
|
}
|
|
307
309
|
|
|
308
310
|
if (!extensionObject) {
|
|
311
|
+
this.dispatch(EWalletObserverEvents.CONNECT_WALLET_END);
|
|
309
312
|
throw new Error("Wallet extension not found in the global context.");
|
|
310
313
|
}
|
|
311
314
|
|
|
312
|
-
const api = await this.syncApi(extension);
|
|
313
|
-
|
|
314
315
|
this.activeWallet = extension;
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
316
|
+
await this.syncApi(extension);
|
|
317
|
+
const data = await this.sync();
|
|
318
|
+
|
|
319
|
+
if (this._options.persistence) {
|
|
320
|
+
if (data.usedAddresses instanceof Error) {
|
|
321
|
+
data.usedAddresses.cause =
|
|
319
322
|
"Could not get a list of used addresses from the wallet when trying to save the connection.";
|
|
320
|
-
throw
|
|
323
|
+
throw data.usedAddresses;
|
|
321
324
|
}
|
|
322
325
|
|
|
323
326
|
const seed: IWalletObserverSeed = {
|
|
324
327
|
activeWallet: extension,
|
|
325
|
-
mainAddress:
|
|
328
|
+
mainAddress: data.usedAddresses[0],
|
|
326
329
|
};
|
|
327
330
|
|
|
328
331
|
window.localStorage.setItem(
|
|
@@ -331,10 +334,16 @@ export class WalletObserver<
|
|
|
331
334
|
);
|
|
332
335
|
}
|
|
333
336
|
|
|
337
|
+
this.dispatch(EWalletObserverEvents.CONNECT_WALLET_END, {
|
|
338
|
+
...data,
|
|
339
|
+
activeWallet: extension,
|
|
340
|
+
});
|
|
334
341
|
const end = performance.now();
|
|
335
342
|
if (this._options.debug) {
|
|
336
343
|
console.log(`connectWallet: ${end - start}ms`);
|
|
337
344
|
}
|
|
345
|
+
|
|
346
|
+
return data;
|
|
338
347
|
};
|
|
339
348
|
|
|
340
349
|
getCip45Instance = async () => {
|
|
@@ -241,6 +241,10 @@ describe("WalletObserver", async () => {
|
|
|
241
241
|
).toBeNull();
|
|
242
242
|
expect(spiedDispatch).toHaveBeenNthCalledWith(
|
|
243
243
|
7,
|
|
244
|
+
EWalletObserverEvents.SYNCING_WALLET_START,
|
|
245
|
+
);
|
|
246
|
+
expect(spiedDispatch).toHaveBeenNthCalledWith(
|
|
247
|
+
11,
|
|
244
248
|
EWalletObserverEvents.DISCONNECT,
|
|
245
249
|
);
|
|
246
250
|
expect(spiedOnGetPeerConnect).not.toHaveBeenCalled();
|
|
@@ -27,7 +27,7 @@ const WalletObserverProvider: FC<
|
|
|
27
27
|
syncingWallet,
|
|
28
28
|
ready,
|
|
29
29
|
eventListenersAttached,
|
|
30
|
-
} = useProviderWalletObserverRef(options?.observerOptions);
|
|
30
|
+
} = useProviderWalletObserverRef(options?.observerOptions, options?.hooks);
|
|
31
31
|
const state = useWalletObserverState(observerRef.current);
|
|
32
32
|
|
|
33
33
|
useProviderRefreshInterval(
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { MutableRefObject, useEffect, useMemo, useRef, useState } from "react";
|
|
2
2
|
|
|
3
|
+
import { IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
3
4
|
import { EWalletObserverEvents } from "../../../@types/events.js";
|
|
4
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
IWalletObserverSync,
|
|
7
|
+
TWalletObserverOptions,
|
|
8
|
+
} from "../../../@types/observer.js";
|
|
5
9
|
import { WalletObserver } from "../../../classes/WalletObserver.class.js";
|
|
6
10
|
import { TWalletProviderHooks } from "../../contexts/observer/index.js";
|
|
7
11
|
|
|
@@ -45,24 +49,42 @@ export const useProviderWalletObserverRef = (
|
|
|
45
49
|
return;
|
|
46
50
|
}
|
|
47
51
|
|
|
48
|
-
const setConnectingStart =
|
|
49
|
-
|
|
50
|
-
|
|
52
|
+
const setConnectingStart = () => {
|
|
53
|
+
(async () => {
|
|
54
|
+
setConnecting(() => true);
|
|
55
|
+
await hooks?.onConnectWalletStart?.();
|
|
56
|
+
})().catch(console.error);
|
|
51
57
|
};
|
|
52
|
-
const setConnectingEnd =
|
|
53
|
-
|
|
54
|
-
|
|
58
|
+
const setConnectingEnd = (
|
|
59
|
+
data?: IWalletObserverSync<IAssetAmountMetadata> & {
|
|
60
|
+
activeWallet: string;
|
|
61
|
+
},
|
|
62
|
+
) => {
|
|
63
|
+
(async () => {
|
|
64
|
+
setConnecting(() => false);
|
|
65
|
+
await hooks?.onConnectWalletEnd?.(data);
|
|
66
|
+
})().catch(console.error);
|
|
55
67
|
};
|
|
56
|
-
const setSyncingStart =
|
|
57
|
-
|
|
58
|
-
|
|
68
|
+
const setSyncingStart = () => {
|
|
69
|
+
(async () => {
|
|
70
|
+
setSyncing(() => true);
|
|
71
|
+
await hooks?.onSyncWalletStart?.();
|
|
72
|
+
})().catch(console.error);
|
|
59
73
|
};
|
|
60
|
-
const setSyncingEnd =
|
|
61
|
-
|
|
62
|
-
|
|
74
|
+
const setSyncingEnd = (
|
|
75
|
+
data?: IWalletObserverSync<IAssetAmountMetadata> & {
|
|
76
|
+
activeWallet: string;
|
|
77
|
+
},
|
|
78
|
+
) => {
|
|
79
|
+
(async () => {
|
|
80
|
+
await hooks?.onSyncWalletEnd?.(data);
|
|
81
|
+
setSyncing(() => false);
|
|
82
|
+
})().catch(console.error);
|
|
63
83
|
};
|
|
64
84
|
const onDisconnect = () => {
|
|
65
|
-
|
|
85
|
+
(async () => {
|
|
86
|
+
hooks?.onDisconnectWallet?.();
|
|
87
|
+
})().catch(console.error);
|
|
66
88
|
};
|
|
67
89
|
|
|
68
90
|
observerRef.current.addEventListener(
|
|
@@ -2,6 +2,7 @@ import type { TransactionUnspentOutput } from "@cardano-sdk/core/dist/cjs/Serial
|
|
|
2
2
|
import { AssetAmount, IAssetAmountMetadata } from "@sundaeswap/asset";
|
|
3
3
|
import { useCallback, useEffect, useState, useTransition } from "react";
|
|
4
4
|
|
|
5
|
+
import { IWalletObserverSync } from "src/@types/observer.js";
|
|
5
6
|
import { WalletBalanceMap } from "../../../classes/WalletBalanceMap.class.js";
|
|
6
7
|
import { WalletObserver } from "../../../classes/WalletObserver.class.js";
|
|
7
8
|
import { ADA_ASSET_ID } from "../../../constants.js";
|
|
@@ -66,127 +67,131 @@ export const useWalletObserverState = <
|
|
|
66
67
|
setSwitching(() => true);
|
|
67
68
|
}
|
|
68
69
|
|
|
69
|
-
await observer.connectWallet(wallet);
|
|
70
|
-
await syncWallet();
|
|
70
|
+
const data = await observer.connectWallet(wallet);
|
|
71
|
+
await syncWallet(data instanceof Error ? undefined : data);
|
|
71
72
|
setSwitching(() => false);
|
|
72
73
|
return observer.api;
|
|
73
74
|
},
|
|
74
75
|
[observer, setSwitching],
|
|
75
76
|
);
|
|
76
77
|
|
|
77
|
-
const syncWallet = useCallback(
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
prevBalance
|
|
103
|
-
|
|
104
|
-
|
|
78
|
+
const syncWallet = useCallback(
|
|
79
|
+
async (importedData?: IWalletObserverSync<AssetMetadata> | undefined) => {
|
|
80
|
+
if (observer.isSyncing() || !observer.hasActiveConnection()) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
const newWallet = observer.activeWallet;
|
|
85
|
+
if (!newWallet) {
|
|
86
|
+
disconnect();
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
setIsCip45(newWallet.includes("p2p"));
|
|
91
|
+
setActiveWallet((prevWallet) =>
|
|
92
|
+
newWallet === prevWallet ? prevWallet : newWallet,
|
|
93
|
+
);
|
|
94
|
+
|
|
95
|
+
try {
|
|
96
|
+
const freshData = importedData || (await observer.sync());
|
|
97
|
+
|
|
98
|
+
startTransition(() => {
|
|
99
|
+
const newBalanceMap = freshData.balanceMap;
|
|
100
|
+
if (newBalanceMap instanceof WalletBalanceMap) {
|
|
101
|
+
const newAdaBalance = newBalanceMap.get(ADA_ASSET_ID);
|
|
102
|
+
if (newAdaBalance) {
|
|
103
|
+
setAdaBalance((prevBalance) =>
|
|
104
|
+
prevBalance.amount === newAdaBalance.amount
|
|
105
|
+
? prevBalance
|
|
106
|
+
: newAdaBalance,
|
|
107
|
+
);
|
|
108
|
+
|
|
109
|
+
setBalance((prevBalance) =>
|
|
110
|
+
areAssetMapsEqual(prevBalance, newBalanceMap)
|
|
111
|
+
? prevBalance
|
|
112
|
+
: newBalanceMap,
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
const newUsedAddresses = freshData.usedAddresses;
|
|
118
|
+
if (newUsedAddresses instanceof Array) {
|
|
119
|
+
setUsedAddresses((prevValue) => {
|
|
120
|
+
return JSON.stringify(prevValue) ===
|
|
121
|
+
JSON.stringify(newUsedAddresses)
|
|
122
|
+
? prevValue
|
|
123
|
+
: newUsedAddresses;
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
const newUnusedAddresses = freshData.unusedAddresses;
|
|
128
|
+
if (newUnusedAddresses instanceof Array) {
|
|
129
|
+
setUnusedAddresses((prevValue) =>
|
|
130
|
+
JSON.stringify(prevValue) === JSON.stringify(newUnusedAddresses)
|
|
131
|
+
? prevValue
|
|
132
|
+
: newUnusedAddresses,
|
|
105
133
|
);
|
|
134
|
+
}
|
|
106
135
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
136
|
+
const newNetwork = freshData.network;
|
|
137
|
+
if (typeof newNetwork === "number") {
|
|
138
|
+
setNetwork((prevValue) =>
|
|
139
|
+
prevValue === newNetwork ? prevValue : newNetwork,
|
|
111
140
|
);
|
|
112
141
|
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
const newUsedAddresses = freshData.usedAddresses;
|
|
116
|
-
if (newUsedAddresses instanceof Array) {
|
|
117
|
-
setUsedAddresses((prevValue) => {
|
|
118
|
-
return JSON.stringify(prevValue) ===
|
|
119
|
-
JSON.stringify(newUsedAddresses)
|
|
120
|
-
? prevValue
|
|
121
|
-
: newUsedAddresses;
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
const newUnusedAddresses = freshData.unusedAddresses;
|
|
126
|
-
if (newUnusedAddresses instanceof Array) {
|
|
127
|
-
setUnusedAddresses((prevValue) =>
|
|
128
|
-
JSON.stringify(prevValue) === JSON.stringify(newUnusedAddresses)
|
|
129
|
-
? prevValue
|
|
130
|
-
: newUnusedAddresses,
|
|
131
|
-
);
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
const newNetwork = freshData.network;
|
|
135
|
-
if (typeof newNetwork === "number") {
|
|
136
|
-
setNetwork((prevValue) =>
|
|
137
|
-
prevValue === newNetwork ? prevValue : newNetwork,
|
|
138
|
-
);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
const newUtxos = freshData.utxos;
|
|
142
|
-
if (newUtxos instanceof Array) {
|
|
143
|
-
setUtxos((prevValue) => {
|
|
144
|
-
const prevValueRep = prevValue?.map((v) => v.toCbor());
|
|
145
|
-
const newValueRep = newUtxos?.map((v) => v.toCbor());
|
|
146
|
-
if (prevValueRep !== newValueRep) {
|
|
147
|
-
return newUtxos;
|
|
148
|
-
}
|
|
149
142
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
143
|
+
const newUtxos = freshData.utxos;
|
|
144
|
+
if (newUtxos instanceof Array) {
|
|
145
|
+
setUtxos((prevValue) => {
|
|
146
|
+
const prevValueRep = prevValue?.map((v) => v.toCbor());
|
|
147
|
+
const newValueRep = newUtxos?.map((v) => v.toCbor());
|
|
148
|
+
if (prevValueRep !== newValueRep) {
|
|
149
|
+
return newUtxos;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
return prevValue;
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
const newCollateral = freshData.collateral;
|
|
157
|
+
if (newCollateral instanceof Array) {
|
|
158
|
+
setCollateral((prevValue) => {
|
|
159
|
+
const prevValueRep = prevValue?.map((v) => v.toCbor());
|
|
160
|
+
const newValueRep = newCollateral?.map((v) => v.toCbor());
|
|
161
|
+
if (prevValueRep !== newValueRep) {
|
|
162
|
+
return newCollateral;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
return prevValue;
|
|
166
|
+
});
|
|
167
|
+
}
|
|
162
168
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
}
|
|
180
|
-
}, [observer, disconnect]);
|
|
169
|
+
const newFeeAddress = freshData.feeAddress;
|
|
170
|
+
if (typeof newFeeAddress === "string") {
|
|
171
|
+
setFeeAddress((prevValue) =>
|
|
172
|
+
prevValue === newFeeAddress ? prevValue : newFeeAddress,
|
|
173
|
+
);
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
} catch (e) {
|
|
177
|
+
setErrorSyncing(true);
|
|
178
|
+
(e as Error).cause =
|
|
179
|
+
"The wallet threw an error while the app was trying to sync with it. Please try again or contact your wallet provider.";
|
|
180
|
+
throw e;
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
[observer, disconnect],
|
|
184
|
+
);
|
|
181
185
|
|
|
182
186
|
/**
|
|
183
187
|
* Ensure the wallet syncs on connect and disconnect.
|
|
184
188
|
*/
|
|
185
189
|
useEffect(() => {
|
|
186
|
-
|
|
190
|
+
const func = () => syncWallet();
|
|
191
|
+
window.addEventListener("focus", func);
|
|
187
192
|
|
|
188
193
|
return () => {
|
|
189
|
-
window.addEventListener("focus",
|
|
194
|
+
window.addEventListener("focus", func);
|
|
190
195
|
};
|
|
191
196
|
}, [syncWallet]);
|
|
192
197
|
|
|
@@ -18,11 +18,11 @@ export type TWalletProviderHooks<
|
|
|
18
18
|
> = {
|
|
19
19
|
onSyncWalletStart?: () => Promise<void>;
|
|
20
20
|
onSyncWalletEnd?: (
|
|
21
|
-
data?: IWalletObserverSync<AssetMetadata
|
|
21
|
+
data?: IWalletObserverSync<AssetMetadata> & { activeWallet: string },
|
|
22
22
|
) => Promise<void>;
|
|
23
23
|
onConnectWalletStart?: () => Promise<void>;
|
|
24
24
|
onConnectWalletEnd?: (
|
|
25
|
-
data?: IWalletObserverSync<AssetMetadata
|
|
25
|
+
data?: IWalletObserverSync<AssetMetadata> & { activeWallet: string },
|
|
26
26
|
) => Promise<void>;
|
|
27
27
|
onDisconnectWallet?: () => Promise<void>;
|
|
28
28
|
};
|