@reef-knot/web3-react 1.0.5 → 1.0.6
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web3.d.ts","sourceRoot":"","sources":["../../src/context/web3.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAO7D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAK7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,KAAK,CAAC;AAGvC,OAA2B,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,WAAW,iBAAkB,SAAQ,sBAAsB;IAC/D,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;;
|
|
1
|
+
{"version":3,"file":"web3.d.ts","sourceRoot":"","sources":["../../src/context/web3.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAO7D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAK7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,KAAK,CAAC;AAGvC,OAA2B,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,WAAW,iBAAkB,SAAQ,sBAAsB;IAC/D,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;;AAkFD,wBAAyD"}
|
package/dist/context/web3.js
CHANGED
|
@@ -39,7 +39,7 @@ var ProviderSDK = props => {
|
|
|
39
39
|
library,
|
|
40
40
|
account
|
|
41
41
|
} = useWeb3();
|
|
42
|
-
var [providerWeb3, setProviderWeb3] = useState(
|
|
42
|
+
var [providerWeb3, setProviderWeb3] = useState();
|
|
43
43
|
// attempt to get providerWeb3 from wagmi
|
|
44
44
|
var {
|
|
45
45
|
connector: connectorWagmi,
|
|
@@ -48,11 +48,16 @@ var ProviderSDK = props => {
|
|
|
48
48
|
useEffect(() => {
|
|
49
49
|
(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
50
|
if (isConnected && !providerWeb3 && connectorWagmi) {
|
|
51
|
+
// Set wagmi provider
|
|
51
52
|
var p = yield connectorWagmi.getProvider();
|
|
52
53
|
setProviderWeb3(getLibrary(p));
|
|
54
|
+
} else if (!providerWeb3) {
|
|
55
|
+
// Set web3-react provider
|
|
56
|
+
// Passing `library` as init value for useState does not work, but works like this:
|
|
57
|
+
setProviderWeb3(library);
|
|
53
58
|
}
|
|
54
59
|
}))();
|
|
55
|
-
}, [connectorWagmi, isConnected, providerWeb3]);
|
|
60
|
+
}, [connectorWagmi, isConnected, library, providerWeb3]);
|
|
56
61
|
invariant(rpc[chainId], "RPC url for chain ".concat(chainId, " is not provided"));
|
|
57
62
|
invariant(rpc[CHAINS.Mainnet], 'RPC url for mainnet is not provided');
|
|
58
63
|
var providerRpc = getStaticRpcBatchProvider(chainId, rpc[chainId], 0, pollingInterval);
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
2
|
import { getNetwork } from '@ethersproject/providers';
|
|
3
3
|
import { useNetwork } from 'wagmi';
|
|
4
|
-
import {
|
|
5
|
-
import { UnsupportedChainIdError } from '@web3-react/core';
|
|
4
|
+
import { useWeb3React, UnsupportedChainIdError } from '@web3-react/core';
|
|
6
5
|
|
|
7
6
|
var STABLE_ARRAY = [];
|
|
8
7
|
var useSupportedChains = () => {
|
|
@@ -12,7 +11,7 @@ var useSupportedChains = () => {
|
|
|
12
11
|
var {
|
|
13
12
|
error,
|
|
14
13
|
connector
|
|
15
|
-
} =
|
|
14
|
+
} = useWeb3React();
|
|
16
15
|
// wagmi data
|
|
17
16
|
var {
|
|
18
17
|
chain,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWeb3.d.ts","sourceRoot":"","sources":["../../src/hooks/useWeb3.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"useWeb3.d.ts","sourceRoot":"","sources":["../../src/hooks/useWeb3.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAIxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAG3D,wBAAgB,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC,CAAC,CAAC,CAkD3E"}
|
package/dist/hooks/useWeb3.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { useWeb3React } from '@web3-react/core';
|
|
2
2
|
export { UnsupportedChainIdError } from '@web3-react/core';
|
|
3
3
|
import { useAccount, useNetwork, useConnect } from 'wagmi';
|
|
4
|
+
import { useSupportedChains } from './useSupportedChains.js';
|
|
4
5
|
|
|
5
6
|
// Shimming useWeb3React hook to also use data returned from wagmi
|
|
6
7
|
function useWeb3(key) {
|
|
@@ -12,8 +13,25 @@ function useWeb3(key) {
|
|
|
12
13
|
error: wagmiError
|
|
13
14
|
} = useConnect();
|
|
14
15
|
var account = web3ReactData.account || (wagmiAccount === null || wagmiAccount === void 0 ? void 0 : wagmiAccount.address);
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
// web3-react and wagmi have different logic around unsupported chains.
|
|
17
|
+
// If a chain is not supported:
|
|
18
|
+
// web3-react sets:
|
|
19
|
+
// `chainId` === undefined
|
|
20
|
+
// `error` === UnsupportedChainIdError
|
|
21
|
+
// `active` === false
|
|
22
|
+
// wagmi sets:
|
|
23
|
+
// `chain.id` === actual value from wallet
|
|
24
|
+
// `chain.unsupported` === true
|
|
25
|
+
// `error` === null
|
|
26
|
+
// `isConnected` === true (connects via default chain)
|
|
27
|
+
// These differences break our widgets, because the widgets don't expect
|
|
28
|
+
// chainId to be unsupported, they expect chainId === undefined in that case.
|
|
29
|
+
// Making wagmi's logic to be the same as web3-react here, except setting an error:
|
|
30
|
+
var {
|
|
31
|
+
isUnsupported
|
|
32
|
+
} = useSupportedChains();
|
|
33
|
+
var chainId = isUnsupported ? undefined : web3ReactData.chainId || ((_a = wagmiNetwork === null || wagmiNetwork === void 0 ? void 0 : wagmiNetwork.chain) === null || _a === void 0 ? void 0 : _a.id);
|
|
34
|
+
var active = isUnsupported ? false : web3ReactData.active || (wagmiAccount === null || wagmiAccount === void 0 ? void 0 : wagmiAccount.isConnected);
|
|
17
35
|
// wagmi and web3-react use the same Error type
|
|
18
36
|
// wagmi is first here because it can be null, but we need Error | undefined
|
|
19
37
|
var error = wagmiError || web3ReactData.error;
|