wagmi 0.0.17 ā 0.1.3
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/README.md +16 -0
- package/connectors/injected/dist/wagmi-connectors-injected.cjs.d.ts +1 -0
- package/connectors/injected/dist/wagmi-connectors-injected.cjs.dev.js +12 -0
- package/connectors/injected/dist/wagmi-connectors-injected.cjs.js +7 -0
- package/connectors/injected/dist/wagmi-connectors-injected.cjs.prod.js +12 -0
- package/connectors/injected/dist/wagmi-connectors-injected.esm.js +1 -0
- package/connectors/injected/package.json +4 -0
- package/connectors/walletConnect/dist/wagmi-connectors-walletConnect.cjs.d.ts +1 -0
- package/connectors/walletConnect/dist/wagmi-connectors-walletConnect.cjs.dev.js +12 -0
- package/connectors/walletConnect/dist/wagmi-connectors-walletConnect.cjs.js +7 -0
- package/connectors/walletConnect/dist/wagmi-connectors-walletConnect.cjs.prod.js +12 -0
- package/connectors/walletConnect/dist/wagmi-connectors-walletConnect.esm.js +1 -0
- package/connectors/walletConnect/package.json +4 -0
- package/connectors/walletLink/dist/wagmi-connectors-walletLink.cjs.d.ts +1 -0
- package/connectors/walletLink/dist/wagmi-connectors-walletLink.cjs.dev.js +12 -0
- package/connectors/walletLink/dist/wagmi-connectors-walletLink.cjs.js +7 -0
- package/connectors/walletLink/dist/wagmi-connectors-walletLink.cjs.prod.js +12 -0
- package/connectors/walletLink/dist/wagmi-connectors-walletLink.esm.js +1 -0
- package/connectors/walletLink/package.json +4 -0
- package/dist/declarations/src/connectors/injected.d.ts +1 -0
- package/dist/declarations/src/connectors/walletConnect.d.ts +1 -0
- package/dist/declarations/src/connectors/walletLink.d.ts +1 -0
- package/dist/declarations/src/context.d.ts +1 -1
- package/dist/declarations/src/hooks/accounts/useNetwork.d.ts +1 -1
- package/dist/declarations/src/index.d.ts +1 -1
- package/dist/wagmi.cjs.dev.js +16 -30
- package/dist/wagmi.cjs.prod.js +16 -30
- package/dist/wagmi.esm.js +17 -23
- package/package.json +22 -6
package/README.md
CHANGED
|
@@ -11,6 +11,12 @@
|
|
|
11
11
|
src="https://img.shields.io/npm/l/wagmi.svg?style=for-the-badge&labelColor=161c22"
|
|
12
12
|
/>
|
|
13
13
|
</a>
|
|
14
|
+
<a aria-label="Sponsors" href="https://github.com/sponsors/tmm">
|
|
15
|
+
<img
|
|
16
|
+
alt=""
|
|
17
|
+
src="https://img.shields.io/github/sponsors/tmm.svg?style=for-the-badge&labelColor=161c22"
|
|
18
|
+
/>
|
|
19
|
+
</a>
|
|
14
20
|
</p>
|
|
15
21
|
|
|
16
22
|
# wagmi
|
|
@@ -73,6 +79,16 @@ Every component inside the `Provider` is set up with the default `InjectedConnec
|
|
|
73
79
|
|
|
74
80
|
Want to learn more? Check out the [guides](https://wagmi-xyz.vercel.app/guides/connect-wallet) or browse the [API docs](https://wagmi-xyz.vercel.app/docs/provider).
|
|
75
81
|
|
|
82
|
+
## Community
|
|
83
|
+
|
|
84
|
+
Feel free to join the [discussions on GitHub](https://github.com/tmm/wagmi/discussions) or reach out [on Twitter](https://twitter.com/awkweb)!
|
|
85
|
+
|
|
86
|
+
## Support
|
|
87
|
+
|
|
88
|
+
- awkweb.eth
|
|
89
|
+
- [GitHub Sponsors](https://github.com/sponsors/tmm)
|
|
90
|
+
- Sign the [guestbook](https://github.com/tmm/wagmi/discussions/2)
|
|
91
|
+
|
|
76
92
|
## Thanks
|
|
77
93
|
|
|
78
94
|
- [ricmoo.eth](https://twitter.com/ricmoo) for creating and continued work on [ethers.js](https://github.com/ethers-io/ethers.js)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../../dist/declarations/src/connectors/injected";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var wagmiPrivate = require('wagmi-private');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'InjectedConnector', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return wagmiPrivate.InjectedConnector; }
|
|
12
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var wagmiPrivate = require('wagmi-private');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'InjectedConnector', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return wagmiPrivate.InjectedConnector; }
|
|
12
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { InjectedConnector } from 'wagmi-private';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../../dist/declarations/src/connectors/walletConnect";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var walletConnect = require('wagmi-private/connectors/walletConnect');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'WalletConnectConnector', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return walletConnect.WalletConnectConnector; }
|
|
12
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var walletConnect = require('wagmi-private/connectors/walletConnect');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'WalletConnectConnector', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return walletConnect.WalletConnectConnector; }
|
|
12
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { WalletConnectConnector } from 'wagmi-private/connectors/walletConnect';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../../dist/declarations/src/connectors/walletLink";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var walletLink = require('wagmi-private/connectors/walletLink');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'WalletLinkConnector', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return walletLink.WalletLinkConnector; }
|
|
12
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var walletLink = require('wagmi-private/connectors/walletLink');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Object.defineProperty(exports, 'WalletLinkConnector', {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return walletLink.WalletLinkConnector; }
|
|
12
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { WalletLinkConnector } from 'wagmi-private/connectors/walletLink';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { InjectedConnector } from 'wagmi-private';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { WalletConnectConnector } from 'wagmi-private/connectors/walletConnect';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { WalletLinkConnector } from 'wagmi-private/connectors/walletLink';
|
|
@@ -53,7 +53,7 @@ export declare type Props = {
|
|
|
53
53
|
webSocketProvider?: WebSocketProvider | ((config: {
|
|
54
54
|
chainId?: number;
|
|
55
55
|
connector?: Connector;
|
|
56
|
-
}) => WebSocketProvider);
|
|
56
|
+
}) => WebSocketProvider | undefined);
|
|
57
57
|
};
|
|
58
58
|
export declare const Provider: ({ autoConnect, children, connectors: connectors_, connectorStorageKey, provider: provider_, webSocketProvider: webSocketProvider_, }: React.PropsWithChildren<Props>) => React.FunctionComponentElement<React.ProviderProps<ContextValue | null>>;
|
|
59
59
|
export declare const useContext: () => ContextValue;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { Provider, useContext } from './context';
|
|
2
2
|
export type { Props as ProviderProps } from './context';
|
|
3
3
|
export { useAccount, useBalance, useBlockNumber, useConnect, useContract, useContractEvent, useContractRead, useContractWrite, useEnsAvatar, useEnsLookup, useEnsResolver, useFeeData, useNetwork, useProvider, useSignMessage, useToken, useTransaction, useWaitForTransaction, useWebSocketProvider, } from './hooks';
|
|
4
|
-
export { Connector, InjectedConnector,
|
|
4
|
+
export { Connector, InjectedConnector, chain, defaultChains, defaultL2Chains, developmentChains, erc1155ABI, erc20ABI, erc721ABI, normalizeChainId, } from 'wagmi-private';
|
|
5
5
|
export type { Chain, Data } from 'wagmi-private';
|
package/dist/wagmi.cjs.dev.js
CHANGED
|
@@ -773,7 +773,7 @@ var initialState$6 = {
|
|
|
773
773
|
loading: false
|
|
774
774
|
};
|
|
775
775
|
var useNetwork = () => {
|
|
776
|
-
var _connector$chains;
|
|
776
|
+
var _data$chain, _data$chain2, _connector$chains;
|
|
777
777
|
|
|
778
778
|
var {
|
|
779
779
|
state: {
|
|
@@ -782,10 +782,10 @@ var useNetwork = () => {
|
|
|
782
782
|
}
|
|
783
783
|
} = useContext();
|
|
784
784
|
var [state, setState] = React__namespace.useState(initialState$6);
|
|
785
|
-
var chainId = data === null || data === void 0 ? void 0 : data.
|
|
785
|
+
var chainId = data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id;
|
|
786
|
+
var unsupported = data === null || data === void 0 ? void 0 : (_data$chain2 = data.chain) === null || _data$chain2 === void 0 ? void 0 : _data$chain2.unsupported;
|
|
786
787
|
var activeChains = (_connector$chains = connector === null || connector === void 0 ? void 0 : connector.chains) !== null && _connector$chains !== void 0 ? _connector$chains : [];
|
|
787
788
|
var activeChain = [...activeChains, ...wagmiPrivate.defaultChains, ...wagmiPrivate.defaultL2Chains].find(x => x.id === chainId);
|
|
788
|
-
var supported = activeChains.some(x => x.id === chainId);
|
|
789
789
|
var switchNetwork = React__namespace.useCallback( /*#__PURE__*/function () {
|
|
790
790
|
var _ref = _asyncToGenerator(function* (chainId) {
|
|
791
791
|
if (!(connector !== null && connector !== void 0 && connector.switchChain)) return false;
|
|
@@ -824,7 +824,7 @@ var useNetwork = () => {
|
|
|
824
824
|
data: {
|
|
825
825
|
chain: chainId ? _objectSpread2(_objectSpread2({}, activeChain), {}, {
|
|
826
826
|
id: chainId,
|
|
827
|
-
unsupported
|
|
827
|
+
unsupported
|
|
828
828
|
}) : undefined,
|
|
829
829
|
chains: activeChains
|
|
830
830
|
},
|
|
@@ -908,19 +908,13 @@ var useContract = _ref2 => {
|
|
|
908
908
|
contractInterface,
|
|
909
909
|
signerOrProvider
|
|
910
910
|
} = _ref2;
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
contractInterface,
|
|
914
|
-
signerOrProvider
|
|
915
|
-
}));
|
|
916
|
-
React__namespace.useEffect(() => {
|
|
917
|
-
contractRef.current = getContract({
|
|
911
|
+
return React__namespace.useMemo(() => {
|
|
912
|
+
return getContract({
|
|
918
913
|
addressOrName,
|
|
919
914
|
contractInterface,
|
|
920
915
|
signerOrProvider
|
|
921
916
|
});
|
|
922
917
|
}, [addressOrName, contractInterface, signerOrProvider]);
|
|
923
|
-
return contractRef.current;
|
|
924
918
|
};
|
|
925
919
|
|
|
926
920
|
var useContractEvent = function useContractEvent(contractConfig, eventName, listener) {
|
|
@@ -1364,7 +1358,7 @@ var useWaitForTransaction = function useWaitForTransaction() {
|
|
|
1364
1358
|
|
|
1365
1359
|
var Context = /*#__PURE__*/React__namespace.createContext(null);
|
|
1366
1360
|
var Provider = _ref => {
|
|
1367
|
-
var _state$data2, _state$data4, _state$data6;
|
|
1361
|
+
var _state$data2, _state$data2$chain, _state$data4, _state$data4$chain, _state$data6, _state$data6$chain;
|
|
1368
1362
|
|
|
1369
1363
|
var {
|
|
1370
1364
|
autoConnect,
|
|
@@ -1379,32 +1373,32 @@ var Provider = _ref => {
|
|
|
1379
1373
|
cacheBuster: 1
|
|
1380
1374
|
});
|
|
1381
1375
|
var connectors = React__namespace.useMemo(() => {
|
|
1382
|
-
var _state$data;
|
|
1376
|
+
var _state$data, _state$data$chain;
|
|
1383
1377
|
|
|
1384
1378
|
if (typeof connectors_ !== 'function') return connectors_;
|
|
1385
1379
|
return connectors_({
|
|
1386
|
-
chainId: (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.
|
|
1380
|
+
chainId: (_state$data = state.data) === null || _state$data === void 0 ? void 0 : (_state$data$chain = _state$data.chain) === null || _state$data$chain === void 0 ? void 0 : _state$data$chain.id
|
|
1387
1381
|
});
|
|
1388
|
-
}, [connectors_, (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.
|
|
1382
|
+
}, [connectors_, (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : (_state$data2$chain = _state$data2.chain) === null || _state$data2$chain === void 0 ? void 0 : _state$data2$chain.id]);
|
|
1389
1383
|
var provider = React__namespace.useMemo(() => {
|
|
1390
|
-
var _state$data3;
|
|
1384
|
+
var _state$data3, _state$data3$chain;
|
|
1391
1385
|
|
|
1392
1386
|
if (typeof provider_ !== 'function') return provider_;
|
|
1393
1387
|
return provider_({
|
|
1394
|
-
chainId: (_state$data3 = state.data) === null || _state$data3 === void 0 ? void 0 : _state$data3.
|
|
1388
|
+
chainId: (_state$data3 = state.data) === null || _state$data3 === void 0 ? void 0 : (_state$data3$chain = _state$data3.chain) === null || _state$data3$chain === void 0 ? void 0 : _state$data3$chain.id,
|
|
1395
1389
|
connector: state.connector
|
|
1396
1390
|
});
|
|
1397
|
-
}, [provider_, (_state$data4 = state.data) === null || _state$data4 === void 0 ? void 0 : _state$data4.
|
|
1391
|
+
}, [provider_, (_state$data4 = state.data) === null || _state$data4 === void 0 ? void 0 : (_state$data4$chain = _state$data4.chain) === null || _state$data4$chain === void 0 ? void 0 : _state$data4$chain.id, state.connector]);
|
|
1398
1392
|
var webSocketProvider = React__namespace.useMemo(() => {
|
|
1399
|
-
var _state$data5;
|
|
1393
|
+
var _state$data5, _state$data5$chain;
|
|
1400
1394
|
|
|
1401
1395
|
if (!webSocketProvider_) return undefined;
|
|
1402
1396
|
if (typeof webSocketProvider_ !== 'function') return webSocketProvider_;
|
|
1403
1397
|
return webSocketProvider_({
|
|
1404
|
-
chainId: (_state$data5 = state.data) === null || _state$data5 === void 0 ? void 0 : _state$data5.
|
|
1398
|
+
chainId: (_state$data5 = state.data) === null || _state$data5 === void 0 ? void 0 : (_state$data5$chain = _state$data5.chain) === null || _state$data5$chain === void 0 ? void 0 : _state$data5$chain.id,
|
|
1405
1399
|
connector: state.connector
|
|
1406
1400
|
});
|
|
1407
|
-
}, [webSocketProvider_, (_state$data6 = state.data) === null || _state$data6 === void 0 ? void 0 : _state$data6.
|
|
1401
|
+
}, [webSocketProvider_, (_state$data6 = state.data) === null || _state$data6 === void 0 ? void 0 : (_state$data6$chain = _state$data6.chain) === null || _state$data6$chain === void 0 ? void 0 : _state$data6$chain.id, state.connector]); // Attempt to connect on mount
|
|
1408
1402
|
|
|
1409
1403
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
1410
1404
|
|
|
@@ -1500,14 +1494,6 @@ Object.defineProperty(exports, 'InjectedConnector', {
|
|
|
1500
1494
|
enumerable: true,
|
|
1501
1495
|
get: function () { return wagmiPrivate.InjectedConnector; }
|
|
1502
1496
|
});
|
|
1503
|
-
Object.defineProperty(exports, 'WalletConnectConnector', {
|
|
1504
|
-
enumerable: true,
|
|
1505
|
-
get: function () { return wagmiPrivate.WalletConnectConnector; }
|
|
1506
|
-
});
|
|
1507
|
-
Object.defineProperty(exports, 'WalletLinkConnector', {
|
|
1508
|
-
enumerable: true,
|
|
1509
|
-
get: function () { return wagmiPrivate.WalletLinkConnector; }
|
|
1510
|
-
});
|
|
1511
1497
|
Object.defineProperty(exports, 'chain', {
|
|
1512
1498
|
enumerable: true,
|
|
1513
1499
|
get: function () { return wagmiPrivate.chain; }
|
package/dist/wagmi.cjs.prod.js
CHANGED
|
@@ -773,7 +773,7 @@ var initialState$6 = {
|
|
|
773
773
|
loading: false
|
|
774
774
|
};
|
|
775
775
|
var useNetwork = () => {
|
|
776
|
-
var _connector$chains;
|
|
776
|
+
var _data$chain, _data$chain2, _connector$chains;
|
|
777
777
|
|
|
778
778
|
var {
|
|
779
779
|
state: {
|
|
@@ -782,10 +782,10 @@ var useNetwork = () => {
|
|
|
782
782
|
}
|
|
783
783
|
} = useContext();
|
|
784
784
|
var [state, setState] = React__namespace.useState(initialState$6);
|
|
785
|
-
var chainId = data === null || data === void 0 ? void 0 : data.
|
|
785
|
+
var chainId = data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id;
|
|
786
|
+
var unsupported = data === null || data === void 0 ? void 0 : (_data$chain2 = data.chain) === null || _data$chain2 === void 0 ? void 0 : _data$chain2.unsupported;
|
|
786
787
|
var activeChains = (_connector$chains = connector === null || connector === void 0 ? void 0 : connector.chains) !== null && _connector$chains !== void 0 ? _connector$chains : [];
|
|
787
788
|
var activeChain = [...activeChains, ...wagmiPrivate.defaultChains, ...wagmiPrivate.defaultL2Chains].find(x => x.id === chainId);
|
|
788
|
-
var supported = activeChains.some(x => x.id === chainId);
|
|
789
789
|
var switchNetwork = React__namespace.useCallback( /*#__PURE__*/function () {
|
|
790
790
|
var _ref = _asyncToGenerator(function* (chainId) {
|
|
791
791
|
if (!(connector !== null && connector !== void 0 && connector.switchChain)) return false;
|
|
@@ -824,7 +824,7 @@ var useNetwork = () => {
|
|
|
824
824
|
data: {
|
|
825
825
|
chain: chainId ? _objectSpread2(_objectSpread2({}, activeChain), {}, {
|
|
826
826
|
id: chainId,
|
|
827
|
-
unsupported
|
|
827
|
+
unsupported
|
|
828
828
|
}) : undefined,
|
|
829
829
|
chains: activeChains
|
|
830
830
|
},
|
|
@@ -908,19 +908,13 @@ var useContract = _ref2 => {
|
|
|
908
908
|
contractInterface,
|
|
909
909
|
signerOrProvider
|
|
910
910
|
} = _ref2;
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
contractInterface,
|
|
914
|
-
signerOrProvider
|
|
915
|
-
}));
|
|
916
|
-
React__namespace.useEffect(() => {
|
|
917
|
-
contractRef.current = getContract({
|
|
911
|
+
return React__namespace.useMemo(() => {
|
|
912
|
+
return getContract({
|
|
918
913
|
addressOrName,
|
|
919
914
|
contractInterface,
|
|
920
915
|
signerOrProvider
|
|
921
916
|
});
|
|
922
917
|
}, [addressOrName, contractInterface, signerOrProvider]);
|
|
923
|
-
return contractRef.current;
|
|
924
918
|
};
|
|
925
919
|
|
|
926
920
|
var useContractEvent = function useContractEvent(contractConfig, eventName, listener) {
|
|
@@ -1364,7 +1358,7 @@ var useWaitForTransaction = function useWaitForTransaction() {
|
|
|
1364
1358
|
|
|
1365
1359
|
var Context = /*#__PURE__*/React__namespace.createContext(null);
|
|
1366
1360
|
var Provider = _ref => {
|
|
1367
|
-
var _state$data2, _state$data4, _state$data6;
|
|
1361
|
+
var _state$data2, _state$data2$chain, _state$data4, _state$data4$chain, _state$data6, _state$data6$chain;
|
|
1368
1362
|
|
|
1369
1363
|
var {
|
|
1370
1364
|
autoConnect,
|
|
@@ -1379,32 +1373,32 @@ var Provider = _ref => {
|
|
|
1379
1373
|
cacheBuster: 1
|
|
1380
1374
|
});
|
|
1381
1375
|
var connectors = React__namespace.useMemo(() => {
|
|
1382
|
-
var _state$data;
|
|
1376
|
+
var _state$data, _state$data$chain;
|
|
1383
1377
|
|
|
1384
1378
|
if (typeof connectors_ !== 'function') return connectors_;
|
|
1385
1379
|
return connectors_({
|
|
1386
|
-
chainId: (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.
|
|
1380
|
+
chainId: (_state$data = state.data) === null || _state$data === void 0 ? void 0 : (_state$data$chain = _state$data.chain) === null || _state$data$chain === void 0 ? void 0 : _state$data$chain.id
|
|
1387
1381
|
});
|
|
1388
|
-
}, [connectors_, (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.
|
|
1382
|
+
}, [connectors_, (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : (_state$data2$chain = _state$data2.chain) === null || _state$data2$chain === void 0 ? void 0 : _state$data2$chain.id]);
|
|
1389
1383
|
var provider = React__namespace.useMemo(() => {
|
|
1390
|
-
var _state$data3;
|
|
1384
|
+
var _state$data3, _state$data3$chain;
|
|
1391
1385
|
|
|
1392
1386
|
if (typeof provider_ !== 'function') return provider_;
|
|
1393
1387
|
return provider_({
|
|
1394
|
-
chainId: (_state$data3 = state.data) === null || _state$data3 === void 0 ? void 0 : _state$data3.
|
|
1388
|
+
chainId: (_state$data3 = state.data) === null || _state$data3 === void 0 ? void 0 : (_state$data3$chain = _state$data3.chain) === null || _state$data3$chain === void 0 ? void 0 : _state$data3$chain.id,
|
|
1395
1389
|
connector: state.connector
|
|
1396
1390
|
});
|
|
1397
|
-
}, [provider_, (_state$data4 = state.data) === null || _state$data4 === void 0 ? void 0 : _state$data4.
|
|
1391
|
+
}, [provider_, (_state$data4 = state.data) === null || _state$data4 === void 0 ? void 0 : (_state$data4$chain = _state$data4.chain) === null || _state$data4$chain === void 0 ? void 0 : _state$data4$chain.id, state.connector]);
|
|
1398
1392
|
var webSocketProvider = React__namespace.useMemo(() => {
|
|
1399
|
-
var _state$data5;
|
|
1393
|
+
var _state$data5, _state$data5$chain;
|
|
1400
1394
|
|
|
1401
1395
|
if (!webSocketProvider_) return undefined;
|
|
1402
1396
|
if (typeof webSocketProvider_ !== 'function') return webSocketProvider_;
|
|
1403
1397
|
return webSocketProvider_({
|
|
1404
|
-
chainId: (_state$data5 = state.data) === null || _state$data5 === void 0 ? void 0 : _state$data5.
|
|
1398
|
+
chainId: (_state$data5 = state.data) === null || _state$data5 === void 0 ? void 0 : (_state$data5$chain = _state$data5.chain) === null || _state$data5$chain === void 0 ? void 0 : _state$data5$chain.id,
|
|
1405
1399
|
connector: state.connector
|
|
1406
1400
|
});
|
|
1407
|
-
}, [webSocketProvider_, (_state$data6 = state.data) === null || _state$data6 === void 0 ? void 0 : _state$data6.
|
|
1401
|
+
}, [webSocketProvider_, (_state$data6 = state.data) === null || _state$data6 === void 0 ? void 0 : (_state$data6$chain = _state$data6.chain) === null || _state$data6$chain === void 0 ? void 0 : _state$data6$chain.id, state.connector]); // Attempt to connect on mount
|
|
1408
1402
|
|
|
1409
1403
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
1410
1404
|
|
|
@@ -1500,14 +1494,6 @@ Object.defineProperty(exports, 'InjectedConnector', {
|
|
|
1500
1494
|
enumerable: true,
|
|
1501
1495
|
get: function () { return wagmiPrivate.InjectedConnector; }
|
|
1502
1496
|
});
|
|
1503
|
-
Object.defineProperty(exports, 'WalletConnectConnector', {
|
|
1504
|
-
enumerable: true,
|
|
1505
|
-
get: function () { return wagmiPrivate.WalletConnectConnector; }
|
|
1506
|
-
});
|
|
1507
|
-
Object.defineProperty(exports, 'WalletLinkConnector', {
|
|
1508
|
-
enumerable: true,
|
|
1509
|
-
get: function () { return wagmiPrivate.WalletLinkConnector; }
|
|
1510
|
-
});
|
|
1511
1497
|
Object.defineProperty(exports, 'chain', {
|
|
1512
1498
|
enumerable: true,
|
|
1513
1499
|
get: function () { return wagmiPrivate.chain; }
|
package/dist/wagmi.esm.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { getDefaultProvider } from '@ethersproject/providers';
|
|
3
3
|
import { erc20ABI, defaultChains, defaultL2Chains, ConnectorNotFoundError, UserRejectedRequestError, InjectedConnector } from 'wagmi-private';
|
|
4
|
-
export { Connector, InjectedConnector,
|
|
4
|
+
export { Connector, InjectedConnector, chain, defaultChains, defaultL2Chains, developmentChains, erc1155ABI, erc20ABI, erc721ABI, normalizeChainId } from 'wagmi-private';
|
|
5
5
|
import { utils, ethers, Contract } from 'ethers';
|
|
6
6
|
|
|
7
7
|
function _defineProperty(obj, key, value) {
|
|
@@ -750,7 +750,7 @@ var initialState$6 = {
|
|
|
750
750
|
loading: false
|
|
751
751
|
};
|
|
752
752
|
var useNetwork = () => {
|
|
753
|
-
var _connector$chains;
|
|
753
|
+
var _data$chain, _data$chain2, _connector$chains;
|
|
754
754
|
|
|
755
755
|
var {
|
|
756
756
|
state: {
|
|
@@ -759,10 +759,10 @@ var useNetwork = () => {
|
|
|
759
759
|
}
|
|
760
760
|
} = useContext();
|
|
761
761
|
var [state, setState] = React.useState(initialState$6);
|
|
762
|
-
var chainId = data === null || data === void 0 ? void 0 : data.
|
|
762
|
+
var chainId = data === null || data === void 0 ? void 0 : (_data$chain = data.chain) === null || _data$chain === void 0 ? void 0 : _data$chain.id;
|
|
763
|
+
var unsupported = data === null || data === void 0 ? void 0 : (_data$chain2 = data.chain) === null || _data$chain2 === void 0 ? void 0 : _data$chain2.unsupported;
|
|
763
764
|
var activeChains = (_connector$chains = connector === null || connector === void 0 ? void 0 : connector.chains) !== null && _connector$chains !== void 0 ? _connector$chains : [];
|
|
764
765
|
var activeChain = [...activeChains, ...defaultChains, ...defaultL2Chains].find(x => x.id === chainId);
|
|
765
|
-
var supported = activeChains.some(x => x.id === chainId);
|
|
766
766
|
var switchNetwork = React.useCallback( /*#__PURE__*/function () {
|
|
767
767
|
var _ref = _asyncToGenerator(function* (chainId) {
|
|
768
768
|
if (!(connector !== null && connector !== void 0 && connector.switchChain)) return false;
|
|
@@ -801,7 +801,7 @@ var useNetwork = () => {
|
|
|
801
801
|
data: {
|
|
802
802
|
chain: chainId ? _objectSpread2(_objectSpread2({}, activeChain), {}, {
|
|
803
803
|
id: chainId,
|
|
804
|
-
unsupported
|
|
804
|
+
unsupported
|
|
805
805
|
}) : undefined,
|
|
806
806
|
chains: activeChains
|
|
807
807
|
},
|
|
@@ -885,19 +885,13 @@ var useContract = _ref2 => {
|
|
|
885
885
|
contractInterface,
|
|
886
886
|
signerOrProvider
|
|
887
887
|
} = _ref2;
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
contractInterface,
|
|
891
|
-
signerOrProvider
|
|
892
|
-
}));
|
|
893
|
-
React.useEffect(() => {
|
|
894
|
-
contractRef.current = getContract({
|
|
888
|
+
return React.useMemo(() => {
|
|
889
|
+
return getContract({
|
|
895
890
|
addressOrName,
|
|
896
891
|
contractInterface,
|
|
897
892
|
signerOrProvider
|
|
898
893
|
});
|
|
899
894
|
}, [addressOrName, contractInterface, signerOrProvider]);
|
|
900
|
-
return contractRef.current;
|
|
901
895
|
};
|
|
902
896
|
|
|
903
897
|
var useContractEvent = function useContractEvent(contractConfig, eventName, listener) {
|
|
@@ -1341,7 +1335,7 @@ var useWaitForTransaction = function useWaitForTransaction() {
|
|
|
1341
1335
|
|
|
1342
1336
|
var Context = /*#__PURE__*/React.createContext(null);
|
|
1343
1337
|
var Provider = _ref => {
|
|
1344
|
-
var _state$data2, _state$data4, _state$data6;
|
|
1338
|
+
var _state$data2, _state$data2$chain, _state$data4, _state$data4$chain, _state$data6, _state$data6$chain;
|
|
1345
1339
|
|
|
1346
1340
|
var {
|
|
1347
1341
|
autoConnect,
|
|
@@ -1356,32 +1350,32 @@ var Provider = _ref => {
|
|
|
1356
1350
|
cacheBuster: 1
|
|
1357
1351
|
});
|
|
1358
1352
|
var connectors = React.useMemo(() => {
|
|
1359
|
-
var _state$data;
|
|
1353
|
+
var _state$data, _state$data$chain;
|
|
1360
1354
|
|
|
1361
1355
|
if (typeof connectors_ !== 'function') return connectors_;
|
|
1362
1356
|
return connectors_({
|
|
1363
|
-
chainId: (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.
|
|
1357
|
+
chainId: (_state$data = state.data) === null || _state$data === void 0 ? void 0 : (_state$data$chain = _state$data.chain) === null || _state$data$chain === void 0 ? void 0 : _state$data$chain.id
|
|
1364
1358
|
});
|
|
1365
|
-
}, [connectors_, (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.
|
|
1359
|
+
}, [connectors_, (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : (_state$data2$chain = _state$data2.chain) === null || _state$data2$chain === void 0 ? void 0 : _state$data2$chain.id]);
|
|
1366
1360
|
var provider = React.useMemo(() => {
|
|
1367
|
-
var _state$data3;
|
|
1361
|
+
var _state$data3, _state$data3$chain;
|
|
1368
1362
|
|
|
1369
1363
|
if (typeof provider_ !== 'function') return provider_;
|
|
1370
1364
|
return provider_({
|
|
1371
|
-
chainId: (_state$data3 = state.data) === null || _state$data3 === void 0 ? void 0 : _state$data3.
|
|
1365
|
+
chainId: (_state$data3 = state.data) === null || _state$data3 === void 0 ? void 0 : (_state$data3$chain = _state$data3.chain) === null || _state$data3$chain === void 0 ? void 0 : _state$data3$chain.id,
|
|
1372
1366
|
connector: state.connector
|
|
1373
1367
|
});
|
|
1374
|
-
}, [provider_, (_state$data4 = state.data) === null || _state$data4 === void 0 ? void 0 : _state$data4.
|
|
1368
|
+
}, [provider_, (_state$data4 = state.data) === null || _state$data4 === void 0 ? void 0 : (_state$data4$chain = _state$data4.chain) === null || _state$data4$chain === void 0 ? void 0 : _state$data4$chain.id, state.connector]);
|
|
1375
1369
|
var webSocketProvider = React.useMemo(() => {
|
|
1376
|
-
var _state$data5;
|
|
1370
|
+
var _state$data5, _state$data5$chain;
|
|
1377
1371
|
|
|
1378
1372
|
if (!webSocketProvider_) return undefined;
|
|
1379
1373
|
if (typeof webSocketProvider_ !== 'function') return webSocketProvider_;
|
|
1380
1374
|
return webSocketProvider_({
|
|
1381
|
-
chainId: (_state$data5 = state.data) === null || _state$data5 === void 0 ? void 0 : _state$data5.
|
|
1375
|
+
chainId: (_state$data5 = state.data) === null || _state$data5 === void 0 ? void 0 : (_state$data5$chain = _state$data5.chain) === null || _state$data5$chain === void 0 ? void 0 : _state$data5$chain.id,
|
|
1382
1376
|
connector: state.connector
|
|
1383
1377
|
});
|
|
1384
|
-
}, [webSocketProvider_, (_state$data6 = state.data) === null || _state$data6 === void 0 ? void 0 : _state$data6.
|
|
1378
|
+
}, [webSocketProvider_, (_state$data6 = state.data) === null || _state$data6 === void 0 ? void 0 : (_state$data6$chain = _state$data6.chain) === null || _state$data6$chain === void 0 ? void 0 : _state$data6$chain.id, state.connector]); // Attempt to connect on mount
|
|
1385
1379
|
|
|
1386
1380
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
1387
1381
|
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "wagmi",
|
|
3
3
|
"description": "React Hooks library for Ethereum",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.1.3",
|
|
6
6
|
"ethereum": "awkweb.eth",
|
|
7
7
|
"repository": "tmm/wagmi",
|
|
8
8
|
"homepage": "https://wagmi-xyz.vercel.app",
|
|
@@ -14,14 +14,30 @@
|
|
|
14
14
|
".": {
|
|
15
15
|
"module": "./dist/wagmi.esm.js",
|
|
16
16
|
"default": "./dist/wagmi.cjs.js"
|
|
17
|
+
},
|
|
18
|
+
"./connectors/injected": {
|
|
19
|
+
"main": "./connectors/injected/dist/wagmi-connectors-injected.cjs.js",
|
|
20
|
+
"module": "./connectors/injected/dist/wagmi-connectors-injected.esm.js"
|
|
21
|
+
},
|
|
22
|
+
"./connectors/walletConnect": {
|
|
23
|
+
"main": "./connectors/walletConnect/dist/wagmi-connectors-walletConnect.cjs.js",
|
|
24
|
+
"module": "./connectors/walletConnect/dist/wagmi-connectors-walletConnect.esm.js"
|
|
25
|
+
},
|
|
26
|
+
"./connectors/walletLink": {
|
|
27
|
+
"main": "./connectors/walletLink/dist/wagmi-connectors-walletLink.cjs.js",
|
|
28
|
+
"module": "./connectors/walletLink/dist/wagmi-connectors-walletLink.esm.js"
|
|
17
29
|
}
|
|
18
30
|
},
|
|
19
31
|
"files": [
|
|
20
|
-
"/dist"
|
|
32
|
+
"/dist",
|
|
33
|
+
"/connectors"
|
|
21
34
|
],
|
|
22
35
|
"preconstruct": {
|
|
23
36
|
"entrypoints": [
|
|
24
|
-
"index.ts"
|
|
37
|
+
"index.ts",
|
|
38
|
+
"connectors/injected.ts",
|
|
39
|
+
"connectors/walletConnect.ts",
|
|
40
|
+
"connectors/walletLink.ts"
|
|
25
41
|
]
|
|
26
42
|
},
|
|
27
43
|
"peerDependencies": {
|
|
@@ -31,7 +47,7 @@
|
|
|
31
47
|
"dependencies": {
|
|
32
48
|
"@walletconnect/ethereum-provider": "^1.6.6",
|
|
33
49
|
"@ethersproject/providers": "^5.5.1",
|
|
34
|
-
"wagmi-private": "0.
|
|
50
|
+
"wagmi-private": "0.1.2",
|
|
35
51
|
"walletlink": "^2.2.8"
|
|
36
52
|
},
|
|
37
53
|
"devDependencies": {
|
|
@@ -41,7 +57,7 @@
|
|
|
41
57
|
"ethers": "^5.5.1",
|
|
42
58
|
"react": "^17.0.0",
|
|
43
59
|
"walletlink": "^2.2.8",
|
|
44
|
-
"wagmi-testing": "0.
|
|
60
|
+
"wagmi-testing": "0.1.2"
|
|
45
61
|
},
|
|
46
|
-
"readme": "<p>\n <a aria-label=\"NPM version\" href=\"https://www.npmjs.com/package/wagmi\">\n <img\n alt=\"\"\n src=\"https://img.shields.io/npm/v/wagmi.svg?style=for-the-badge&labelColor=161c22\"\n />\n </a>\n <a aria-label=\"License\" href=\"/LICENSE\">\n <img\n alt=\"\"\n src=\"https://img.shields.io/npm/l/wagmi.svg?style=for-the-badge&labelColor=161c22\"\n />\n </a>\n</p>\n\n# wagmi\n\n**React Hooks library for Ethereum, built on [ethers.js](https://github.com/ethers-io/ethers.js).**\n\nš 20+ hooks for working with wallets, ENS, contracts, transactions, signing, etc.\n\nš¼ Built-in wallet connectors for MetaMask, WalletConnect, and Coinbase Wallet\n\nš Auto-refresh data on wallet and network changes\n\nš¦ TypeScript ready\n\nšØ Zero-dependencies (besides ethers.js peer dependency)\n\nš³ Test suite and documentation\n\nš MIT License\n\n## Documentation\n\nVisit https://wagmi-xyz.vercel.app to view the full documentation.\n\n## Usage\n\n1. Install the dependencies.\n\n```bash\npnpm add wagmi ethers\n```\n\n2. Wrap your app with the `Provider` component.\n\n```tsx\nimport { Provider } from 'wagmi'\n\nconst App = () => (\n <Provider>\n <YourRoutes />\n </Provider>\n)\n```\n\n3. Use hooks.\n\n```tsx\nimport { useAccount } from 'wagmi'\n\nconst Page = () => {\n const [{ data, error, loading }, disconnect] = useAccount({\n fetchEns: true,\n })\n\n return ...\n}\n```\n\nEvery component inside the `Provider` is set up with the default `InjectedConnector` for connecting wallets and ethers.js [Default Provider](https://docs.ethers.io/v5/api/providers/#providers-getDefaultProvider) for fetching data.\n\nWant to learn more? Check out the [guides](https://wagmi-xyz.vercel.app/guides/connect-wallet) or browse the [API docs](https://wagmi-xyz.vercel.app/docs/provider).\n\n## Thanks\n\n- [ricmoo.eth](https://twitter.com/ricmoo) for creating and continued work on [ethers.js](https://github.com/ethers-io/ethers.js)\n- [Mirror](https://mirror.xyz) for creating space to do good work\n\n## License\n\nMIT.\n\n<br />\n\nwagmi\n"
|
|
62
|
+
"readme": "<p>\n <a aria-label=\"NPM version\" href=\"https://www.npmjs.com/package/wagmi\">\n <img\n alt=\"\"\n src=\"https://img.shields.io/npm/v/wagmi.svg?style=for-the-badge&labelColor=161c22\"\n />\n </a>\n <a aria-label=\"License\" href=\"/LICENSE\">\n <img\n alt=\"\"\n src=\"https://img.shields.io/npm/l/wagmi.svg?style=for-the-badge&labelColor=161c22\"\n />\n </a>\n <a aria-label=\"Sponsors\" href=\"https://github.com/sponsors/tmm\">\n <img\n alt=\"\"\n src=\"https://img.shields.io/github/sponsors/tmm.svg?style=for-the-badge&labelColor=161c22\"\n />\n </a>\n</p>\n\n# wagmi\n\n**React Hooks library for Ethereum, built on [ethers.js](https://github.com/ethers-io/ethers.js).**\n\nš 20+ hooks for working with wallets, ENS, contracts, transactions, signing, etc.\n\nš¼ Built-in wallet connectors for MetaMask, WalletConnect, and Coinbase Wallet\n\nš Auto-refresh data on wallet and network changes\n\nš¦ TypeScript ready\n\nšØ Zero-dependencies (besides ethers.js peer dependency)\n\nš³ Test suite and documentation\n\nš MIT License\n\n## Documentation\n\nVisit https://wagmi-xyz.vercel.app to view the full documentation.\n\n## Usage\n\n1. Install the dependencies.\n\n```bash\npnpm add wagmi ethers\n```\n\n2. Wrap your app with the `Provider` component.\n\n```tsx\nimport { Provider } from 'wagmi'\n\nconst App = () => (\n <Provider>\n <YourRoutes />\n </Provider>\n)\n```\n\n3. Use hooks.\n\n```tsx\nimport { useAccount } from 'wagmi'\n\nconst Page = () => {\n const [{ data, error, loading }, disconnect] = useAccount({\n fetchEns: true,\n })\n\n return ...\n}\n```\n\nEvery component inside the `Provider` is set up with the default `InjectedConnector` for connecting wallets and ethers.js [Default Provider](https://docs.ethers.io/v5/api/providers/#providers-getDefaultProvider) for fetching data.\n\nWant to learn more? Check out the [guides](https://wagmi-xyz.vercel.app/guides/connect-wallet) or browse the [API docs](https://wagmi-xyz.vercel.app/docs/provider).\n\n## Community\n\nFeel free to join the [discussions on GitHub](https://github.com/tmm/wagmi/discussions) or reach out [on Twitter](https://twitter.com/awkweb)!\n\n## Support\n\n- awkweb.eth\n- [GitHub Sponsors](https://github.com/sponsors/tmm)\n- Sign the [guestbook](https://github.com/tmm/wagmi/discussions/2)\n\n## Thanks\n\n- [ricmoo.eth](https://twitter.com/ricmoo) for creating and continued work on [ethers.js](https://github.com/ethers-io/ethers.js)\n- [Mirror](https://mirror.xyz) for creating space to do good work\n\n## License\n\nMIT.\n\n<br />\n\nwagmi\n"
|
|
47
63
|
}
|