@broxus/evm-connect 1.4.0 → 1.4.2
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/components/EvmConnectButton/index.d.ts +3 -1
- package/dist/cjs/components/EvmConnectButton/index.js +8 -5
- package/dist/cjs/components/EvmConnector/index.d.ts +2 -0
- package/dist/cjs/components/EvmConnector/index.js +3 -3
- package/dist/cjs/context/EvmWalletProvidersContext.d.ts +3 -2
- package/dist/cjs/context/EvmWalletProvidersContext.js +8 -18
- package/dist/cjs/context/EvmWalletServiceContext.d.ts +1 -1
- package/dist/cjs/context/EvmWalletServiceContext.js +3 -2
- package/dist/cjs/core/EthereumConnector.js +7 -8
- package/dist/cjs/services/EvmWalletService.d.ts +1 -1
- package/dist/cjs/services/EvmWalletService.js +12 -4
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/cjs/utils/convert-network-to-chain-params.d.ts +2 -0
- package/dist/cjs/utils/convert-network-to-chain-params.js +18 -0
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.js +1 -0
- package/dist/esm/components/EvmConnectButton/index.d.ts +3 -1
- package/dist/esm/components/EvmConnectButton/index.js +8 -5
- package/dist/esm/components/EvmConnector/index.d.ts +2 -0
- package/dist/esm/components/EvmConnector/index.js +3 -3
- package/dist/esm/context/EvmWalletProvidersContext.d.ts +3 -2
- package/dist/esm/context/EvmWalletProvidersContext.js +8 -18
- package/dist/esm/context/EvmWalletServiceContext.d.ts +1 -1
- package/dist/esm/context/EvmWalletServiceContext.js +2 -2
- package/dist/esm/core/EthereumConnector.js +7 -8
- package/dist/esm/services/EvmWalletService.d.ts +1 -1
- package/dist/esm/services/EvmWalletService.js +12 -4
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/esm/utils/convert-network-to-chain-params.d.ts +2 -0
- package/dist/esm/utils/convert-network-to-chain-params.js +14 -0
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.convertNetworkToChainParams = void 0;
|
|
4
|
+
function convertNetworkToChainParams(network) {
|
|
5
|
+
return {
|
|
6
|
+
blockExplorerUrls: [network.explorer.baseUrl],
|
|
7
|
+
chainId: Number(network.chainId),
|
|
8
|
+
chainName: network.name,
|
|
9
|
+
iconUrls: network.icon ? [network.icon] : undefined,
|
|
10
|
+
nativeCurrency: {
|
|
11
|
+
decimals: 18,
|
|
12
|
+
name: network.currency.name ?? network.currency.symbol,
|
|
13
|
+
symbol: network.currency.symbol,
|
|
14
|
+
},
|
|
15
|
+
rpcUrls: [network.rpcUrl],
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
exports.convertNetworkToChainParams = convertNetworkToChainParams;
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -14,5 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("../utils/convert-network-to-chain-params"), exports);
|
|
17
18
|
__exportStar(require("../utils/get-evm-provider-platform-link"), exports);
|
|
18
19
|
__exportStar(require("../utils/parse-chain-id"), exports);
|
|
@@ -2,10 +2,12 @@ import { type ButtonProps } from '@broxus/react-uikit';
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { type EvmConnectDialogProps } from '../../components/EvmConnectDialog';
|
|
4
4
|
import { type EvmWalletService } from '../../services';
|
|
5
|
+
import { type EvmNetworkConfig } from '../../types';
|
|
5
6
|
export type EvmConnectButtonProps = React.PropsWithChildren<{
|
|
6
7
|
agreementsNote?: React.ReactNode;
|
|
7
8
|
className?: string;
|
|
8
9
|
disabled?: boolean;
|
|
10
|
+
network?: EvmNetworkConfig;
|
|
9
11
|
popupClassName?: EvmConnectDialogProps['className'];
|
|
10
12
|
popupType?: EvmConnectDialogProps['type'];
|
|
11
13
|
shape?: ButtonProps['shape'];
|
|
@@ -16,6 +18,6 @@ export type EvmConnectButtonProps = React.PropsWithChildren<{
|
|
|
16
18
|
onConnect?: (walletService?: EvmWalletService) => Promise<void> | void;
|
|
17
19
|
onOpen?: VoidFunction;
|
|
18
20
|
}>;
|
|
19
|
-
export declare const EvmConnectButton: ((
|
|
21
|
+
export declare const EvmConnectButton: (({ children, className, disabled, network, popupClassName, popupType, shape, size, standalone, type, onClose, onConnect, onOpen, }: EvmConnectButtonProps) => React.JSX.Element) & {
|
|
20
22
|
displayName: string;
|
|
21
23
|
};
|
|
@@ -3,15 +3,18 @@ import { observer } from 'mobx-react-lite';
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { EvmConnectDialog } from '../../components/EvmConnectDialog';
|
|
5
5
|
import { EvmWalletProvidersContext, EvmWalletProvidersProvider, useEvmWalletService } from '../../context';
|
|
6
|
-
|
|
6
|
+
import { convertNetworkToChainParams } from '../../utils';
|
|
7
|
+
export const EvmConnectButton = observer(({ children, className, disabled, network, popupClassName, popupType, shape, size, standalone, type = 'primary', onClose, onConnect, onOpen, }) => {
|
|
7
8
|
const walletService = useEvmWalletService();
|
|
8
9
|
const walletProviders = React.useContext(EvmWalletProvidersContext);
|
|
9
|
-
const { children, className, disabled, popupClassName, popupType, shape, size, standalone, type = 'primary', onClose, onConnect, onOpen, } = props;
|
|
10
10
|
const [isModalShown, setModalVisibility] = React.useState(false);
|
|
11
11
|
const connect = React.useCallback(async () => {
|
|
12
12
|
setModalVisibility(false);
|
|
13
|
-
await Promise.allSettled([
|
|
14
|
-
|
|
13
|
+
await Promise.allSettled([
|
|
14
|
+
onConnect?.(walletService),
|
|
15
|
+
walletService.connect(network?.chainId ? convertNetworkToChainParams(network) : undefined),
|
|
16
|
+
]);
|
|
17
|
+
}, [network, onConnect, walletService]);
|
|
15
18
|
const close = React.useCallback(() => {
|
|
16
19
|
setModalVisibility(false);
|
|
17
20
|
onClose?.();
|
|
@@ -22,6 +25,6 @@ export const EvmConnectButton = observer((props) => {
|
|
|
22
25
|
}, [onOpen]);
|
|
23
26
|
return (React.createElement(React.Fragment, null,
|
|
24
27
|
React.createElement(Button, { "aria-disabled": walletService.isInitializing || walletService.isConnecting, disabled: disabled === undefined ? walletService.isInitializing || walletService.isConnecting : disabled, className: className, shape: shape, size: size, type: type, onClick: standalone ? connect : open }, children),
|
|
25
|
-
!standalone && (React.createElement(EvmWalletProvidersProvider, { agreementsNote: walletProviders?.agreementsNote, onConnect: close },
|
|
28
|
+
!standalone && (React.createElement(EvmWalletProvidersProvider, { agreementsNote: walletProviders?.agreementsNote, network: network, onConnect: close },
|
|
26
29
|
React.createElement(EvmConnectDialog, { className: popupClassName, open: isModalShown, type: popupType, onClose: close })))));
|
|
27
30
|
});
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type ButtonProps } from '@broxus/react-uikit';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
+
import { type EvmNetworkConfig } from '../../types';
|
|
3
4
|
import './index.css';
|
|
4
5
|
export interface EvmConnectorProps {
|
|
5
6
|
changeWalletButtonText?: React.ReactNode;
|
|
@@ -8,6 +9,7 @@ export interface EvmConnectorProps {
|
|
|
8
9
|
connectButtonText?: React.ReactNode;
|
|
9
10
|
connectButtonType?: ButtonProps['type'];
|
|
10
11
|
disconnectButtonText?: React.ReactNode;
|
|
12
|
+
network?: EvmNetworkConfig;
|
|
11
13
|
popupType?: 'drawer';
|
|
12
14
|
suffix?: React.ReactNode;
|
|
13
15
|
showDropMenu?: boolean;
|
|
@@ -15,7 +15,7 @@ export const EvmConnector = observer((props) => {
|
|
|
15
15
|
const walletService = useEvmWalletService();
|
|
16
16
|
const [, setRecentMeta] = useRecentConnectionMeta();
|
|
17
17
|
const drop = React.useRef(null);
|
|
18
|
-
const { changeWalletButtonText = intl.formatMessage(messages.EVM_CONNECT_CHANGE_WALLET_BTN_TEXT), className, connectButtonShape, connectButtonText = intl.formatMessage(messages.EVM_CONNECT_CONNECT_BTN_TEXT), connectButtonType, disconnectButtonText = intl.formatMessage(messages.EVM_CONNECT_DISCONNECT_BTN_TEXT), popupType, suffix, showDropMenu = true, showSubIcon = true, standalone = walletService.providers?.length === 1, } = props;
|
|
18
|
+
const { changeWalletButtonText = intl.formatMessage(messages.EVM_CONNECT_CHANGE_WALLET_BTN_TEXT), className, connectButtonShape, connectButtonText = intl.formatMessage(messages.EVM_CONNECT_CONNECT_BTN_TEXT), connectButtonType, disconnectButtonText = intl.formatMessage(messages.EVM_CONNECT_DISCONNECT_BTN_TEXT), network, popupType, suffix, showDropMenu = true, showSubIcon = true, standalone = walletService.providers?.length === 1, } = props;
|
|
19
19
|
const changeWallet = () => {
|
|
20
20
|
drop.current?.close();
|
|
21
21
|
};
|
|
@@ -55,9 +55,9 @@ export const EvmConnector = observer((props) => {
|
|
|
55
55
|
suffix,
|
|
56
56
|
walletService.isConnected && showDropMenu && (React.createElement(Dropdown, { ref: drop, action: "click", overlayClassName: "evm-connect-dropdown", overlay: (React.createElement(List, { className: "uk-margin-remove", size: "large" },
|
|
57
57
|
!standalone && (React.createElement(List.Item, { key: "connect-wallet" },
|
|
58
|
-
React.createElement(EvmConnectButton, { className: "evm-connect-change-wallet", popupType: popupType, type: "link", onOpen: changeWallet }, changeWalletButtonText))),
|
|
58
|
+
React.createElement(EvmConnectButton, { className: "evm-connect-change-wallet", network: network, popupType: popupType, type: "link", onOpen: changeWallet }, changeWalletButtonText))),
|
|
59
59
|
React.createElement(List.Item, null,
|
|
60
60
|
React.createElement(Button, { "aria-disabled": walletService.isDisconnecting, className: "evm-connect-logout", disabled: walletService.isDisconnecting, type: "link", onClick: disconnect }, disconnectButtonText)))), placement: "bottom-right" },
|
|
61
61
|
React.createElement(Icon, { className: "evm-connect-dropdown-trigger", icon: "ellipsisVertical", ratio: 0.8 }))),
|
|
62
|
-
!walletService.isConnected && (React.createElement(EvmConnectButton, { key: "connect", popupType: popupType, shape: connectButtonShape, standalone: standalone, type: connectButtonType }, connectButtonText)))));
|
|
62
|
+
!walletService.isConnected && (React.createElement(EvmConnectButton, { key: "connect", network: network, popupType: popupType, shape: connectButtonShape, standalone: standalone, type: connectButtonType }, connectButtonText)))));
|
|
63
63
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { type EthereumConnector } from '../core';
|
|
3
|
-
import { type EvmWalletProviderConfig } from '../types';
|
|
3
|
+
import { type EvmNetworkConfig, type EvmWalletProviderConfig } from '../types';
|
|
4
4
|
export interface EvmWalletProvidersContextConsumer {
|
|
5
5
|
agreementsNote?: React.ReactNode;
|
|
6
6
|
connect: (providerConfig: EvmWalletProviderConfig) => Promise<void>;
|
|
@@ -12,8 +12,9 @@ export declare const EvmWalletProvidersContext: React.Context<EvmWalletProviders
|
|
|
12
12
|
export declare function useEvmWalletProviders(): EvmWalletProvidersContextConsumer;
|
|
13
13
|
export type EvmWalletProvidersProviderProps = React.PropsWithChildren<{
|
|
14
14
|
agreementsNote?: React.ReactNode;
|
|
15
|
+
network?: EvmNetworkConfig;
|
|
15
16
|
onConnect?: (connector?: EthereumConnector) => Promise<void> | void;
|
|
16
17
|
}>;
|
|
17
|
-
export declare const EvmWalletProvidersProvider: (({ agreementsNote, children, onConnect }: EvmWalletProvidersProviderProps) => React.JSX.Element) & {
|
|
18
|
+
export declare const EvmWalletProvidersProvider: (({ agreementsNote, children, network, onConnect }: EvmWalletProvidersProviderProps) => React.JSX.Element) & {
|
|
18
19
|
displayName: string;
|
|
19
20
|
};
|
|
@@ -4,11 +4,12 @@ import { observer } from 'mobx-react-lite';
|
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import { useEvmWalletService } from '../context/EvmWalletServiceContext';
|
|
6
6
|
import { useRecentConnectionMeta } from '../hooks';
|
|
7
|
+
import { convertNetworkToChainParams } from '../utils';
|
|
7
8
|
export const EvmWalletProvidersContext = React.createContext(null);
|
|
8
9
|
export function useEvmWalletProviders() {
|
|
9
10
|
return useContext(EvmWalletProvidersContext);
|
|
10
11
|
}
|
|
11
|
-
export const EvmWalletProvidersProvider = observer(({ agreementsNote, children, onConnect }) => {
|
|
12
|
+
export const EvmWalletProvidersProvider = observer(({ agreementsNote, children, network, onConnect }) => {
|
|
12
13
|
const walletService = useEvmWalletService();
|
|
13
14
|
const [recentMeta, setRecentMeta] = useRecentConnectionMeta();
|
|
14
15
|
const [error, setError] = React.useState(null);
|
|
@@ -18,23 +19,12 @@ export const EvmWalletProvidersProvider = observer(({ agreementsNote, children,
|
|
|
18
19
|
setError(null);
|
|
19
20
|
setConnectingProvider(providerConfig);
|
|
20
21
|
const prevConnector = walletService.connector;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
// eslint-disable-next-line no-nested-ternary
|
|
23
|
+
const chainParams = network?.chainId ? Number(network.chainId) : undefined ?? (recentMeta?.chainId
|
|
24
|
+
? walletService.networks.find(_network => _network.chainId === recentMeta.chainId) ?? 1
|
|
25
|
+
: 1);
|
|
24
26
|
debug(`Try to activate ${providerConfig.info.name} connection with chain`, typeof chainParams === 'number' ? chainParams : chainParams.chainId);
|
|
25
|
-
await providerConfig.connector?.connect(typeof chainParams === 'number'
|
|
26
|
-
? chainParams
|
|
27
|
-
: {
|
|
28
|
-
blockExplorerUrls: [chainParams.explorer.baseUrl],
|
|
29
|
-
chainId: Number(chainParams.chainId),
|
|
30
|
-
chainName: chainParams.name,
|
|
31
|
-
nativeCurrency: {
|
|
32
|
-
decimals: 18,
|
|
33
|
-
name: chainParams.currency.name,
|
|
34
|
-
symbol: chainParams.currency.symbol,
|
|
35
|
-
},
|
|
36
|
-
rpcUrls: [chainParams.rpcUrl],
|
|
37
|
-
});
|
|
27
|
+
await providerConfig.connector?.connect(typeof chainParams === 'number' ? chainParams : convertNetworkToChainParams(chainParams));
|
|
38
28
|
if (providerConfig.id !== walletService.providerId) {
|
|
39
29
|
await prevConnector?.disconnect(true);
|
|
40
30
|
}
|
|
@@ -50,7 +40,7 @@ export const EvmWalletProvidersProvider = observer(({ agreementsNote, children,
|
|
|
50
40
|
catch (e) {
|
|
51
41
|
setError(e);
|
|
52
42
|
}
|
|
53
|
-
}, [onConnect, recentMeta
|
|
43
|
+
}, [network, onConnect, recentMeta, setRecentMeta, walletService]);
|
|
54
44
|
const reset = React.useCallback(() => {
|
|
55
45
|
setError(null);
|
|
56
46
|
setConnectingProvider(null);
|
|
@@ -7,5 +7,5 @@ type EvmWalletProviderProps = React.PropsWithChildren<{
|
|
|
7
7
|
params?: EvmWalletServiceCtorParams;
|
|
8
8
|
wallet?: EvmWalletService;
|
|
9
9
|
}>;
|
|
10
|
-
export declare
|
|
10
|
+
export declare function EvmWalletServiceProvider({ agreementsNote, children, params, wallet, }: EvmWalletProviderProps): React.JSX.Element;
|
|
11
11
|
export {};
|
|
@@ -8,7 +8,7 @@ export const EvmWalletServiceContext = React.createContext(null);
|
|
|
8
8
|
export function useEvmWalletService() {
|
|
9
9
|
return useContext(EvmWalletServiceContext);
|
|
10
10
|
}
|
|
11
|
-
export
|
|
11
|
+
export function EvmWalletServiceProvider({ agreementsNote, children, params, wallet, }) {
|
|
12
12
|
const [, setRecentMeta] = useRecentConnectionMeta();
|
|
13
13
|
const context = React.useMemo(() => {
|
|
14
14
|
if (wallet instanceof EvmWalletService) {
|
|
@@ -24,7 +24,7 @@ export const EvmWalletServiceProvider = React.memo(({ agreementsNote, children,
|
|
|
24
24
|
}, { delay: 10, fireImmediately: context.isReady }), [context, setRecentMeta]);
|
|
25
25
|
return (React.createElement(EvmWalletServiceContext.Provider, { value: context },
|
|
26
26
|
React.createElement(EvmWalletProvidersProvider, { agreementsNote: agreementsNote }, children)));
|
|
27
|
-
}
|
|
27
|
+
}
|
|
28
28
|
if (process.env.NODE_ENV !== 'production') {
|
|
29
29
|
EvmWalletServiceContext.displayName = 'EvmWalletServiceContext';
|
|
30
30
|
}
|
|
@@ -29,18 +29,19 @@ export class EthereumConnector extends AbstractStore {
|
|
|
29
29
|
if (!this.provider) {
|
|
30
30
|
throw new Error('Provider is not defined');
|
|
31
31
|
}
|
|
32
|
+
const chainId = `0x${chainParams.chainId.toString(16)}`;
|
|
32
33
|
await this.provider.request({
|
|
33
34
|
method: 'wallet_addEthereumChain',
|
|
34
|
-
params: [{ ...chainParams }],
|
|
35
|
+
params: [{ ...chainParams, chainId }],
|
|
35
36
|
});
|
|
36
37
|
}
|
|
37
38
|
async switchNetwork(chainIdOrParams) {
|
|
38
39
|
if (!this.provider) {
|
|
39
40
|
throw new Error('Provider is not defined');
|
|
40
41
|
}
|
|
42
|
+
const chainId = typeof chainIdOrParams === 'number' ? chainIdOrParams : chainIdOrParams?.chainId;
|
|
43
|
+
const desiredChainId = `0x${chainId.toString(16)}`;
|
|
41
44
|
try {
|
|
42
|
-
const chainId = typeof chainIdOrParams === 'number' ? chainIdOrParams : chainIdOrParams?.chainId;
|
|
43
|
-
const desiredChainId = `0x${chainId.toString(16)}`;
|
|
44
45
|
await this.provider.request({
|
|
45
46
|
method: 'wallet_switchEthereumChain',
|
|
46
47
|
params: [{ chainId: desiredChainId }],
|
|
@@ -52,7 +53,7 @@ export class EthereumConnector extends AbstractStore {
|
|
|
52
53
|
// 4902 indicates that the chain has not been added to MetaMask and wallet_addEthereumChain needs to be called
|
|
53
54
|
// https://docs.metamask.io/guide/rpc-api.html#wallet-switchethereumchain
|
|
54
55
|
if (errorCode === 4902 && typeof chainIdOrParams !== 'number') {
|
|
55
|
-
await this.addNetwork(chainIdOrParams);
|
|
56
|
+
await this.addNetwork({ ...chainIdOrParams });
|
|
56
57
|
}
|
|
57
58
|
else {
|
|
58
59
|
throw e;
|
|
@@ -63,8 +64,7 @@ export class EthereumConnector extends AbstractStore {
|
|
|
63
64
|
if (!this.provider) {
|
|
64
65
|
throw new Error('Provider is not defined');
|
|
65
66
|
}
|
|
66
|
-
return this.provider
|
|
67
|
-
.request({
|
|
67
|
+
return this.provider.request({
|
|
68
68
|
method: 'wallet_watchAsset',
|
|
69
69
|
params: {
|
|
70
70
|
options: {
|
|
@@ -75,8 +75,7 @@ export class EthereumConnector extends AbstractStore {
|
|
|
75
75
|
},
|
|
76
76
|
type: 'ERC20', // Initially only supports ERC20, but eventually more!
|
|
77
77
|
},
|
|
78
|
-
})
|
|
79
|
-
.then(result => {
|
|
78
|
+
}).then(result => {
|
|
80
79
|
if (!result) {
|
|
81
80
|
throw new Error('Watch asset request was rejected');
|
|
82
81
|
}
|
|
@@ -35,7 +35,7 @@ export declare class EvmWalletService extends AbstractStore<EvmWalletServiceData
|
|
|
35
35
|
* Manually connect to the wallet
|
|
36
36
|
* @returns {Promise<void>}
|
|
37
37
|
*/
|
|
38
|
-
connect(): Promise<void>;
|
|
38
|
+
connect(chainIdOrParams?: number | AddEthereumChainParams): Promise<void>;
|
|
39
39
|
/**
|
|
40
40
|
* Manually disconnect from the wallet
|
|
41
41
|
* @returns {Promise<void>}
|
|
@@ -11,6 +11,7 @@ import { AbstractStore } from '@broxus/js-core';
|
|
|
11
11
|
import { debounce, debug, error } from '@broxus/js-utils';
|
|
12
12
|
import { action, computed, makeObservable, reaction } from 'mobx';
|
|
13
13
|
import Web3 from 'web3';
|
|
14
|
+
import { convertNetworkToChainParams } from '../utils';
|
|
14
15
|
export class EvmWalletService extends AbstractStore {
|
|
15
16
|
params;
|
|
16
17
|
constructor(params) {
|
|
@@ -39,13 +40,20 @@ export class EvmWalletService extends AbstractStore {
|
|
|
39
40
|
* Manually connect to the wallet
|
|
40
41
|
* @returns {Promise<void>}
|
|
41
42
|
*/
|
|
42
|
-
async connect() {
|
|
43
|
+
async connect(chainIdOrParams) {
|
|
43
44
|
if (this.isConnecting || this.isDisconnecting) {
|
|
44
45
|
return;
|
|
45
46
|
}
|
|
46
47
|
try {
|
|
47
|
-
const defaultNetworkId =
|
|
48
|
-
|
|
48
|
+
const defaultNetworkId = typeof chainIdOrParams === 'number' ? chainIdOrParams : chainIdOrParams?.chainId
|
|
49
|
+
?? this.params?.defaultNetworkId
|
|
50
|
+
?? this.network?.chainId
|
|
51
|
+
?? 1;
|
|
52
|
+
const network = this.networks.find(_network => _network.chainId === defaultNetworkId?.toString());
|
|
53
|
+
// eslint-disable-next-line no-nested-ternary
|
|
54
|
+
const chainParams = typeof chainIdOrParams === 'object'
|
|
55
|
+
? chainIdOrParams
|
|
56
|
+
: network ? convertNetworkToChainParams(network) : undefined;
|
|
49
57
|
await this.connector?.connect(chainParams ?? 1);
|
|
50
58
|
}
|
|
51
59
|
catch (e) {
|
|
@@ -305,7 +313,7 @@ __decorate([
|
|
|
305
313
|
__decorate([
|
|
306
314
|
action.bound,
|
|
307
315
|
__metadata("design:type", Function),
|
|
308
|
-
__metadata("design:paramtypes", []),
|
|
316
|
+
__metadata("design:paramtypes", [Object]),
|
|
309
317
|
__metadata("design:returntype", Promise)
|
|
310
318
|
], EvmWalletService.prototype, "connect", null);
|
|
311
319
|
__decorate([
|