Skip to content

Commit 765dee0

Browse files
authored
fix(checkout): Allow targetChainId to use overrides (#2636)
1 parent d917f07 commit 765dee0

File tree

2 files changed

+8
-29
lines changed

2 files changed

+8
-29
lines changed

packages/checkout/widgets-lib/src/widgets/connect/ConnectWidget.tsx

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -114,12 +114,7 @@ export default function ConnectWidget({
114114

115115
const { identify, page, user } = useAnalytics();
116116

117-
let targetChain = targetChainId;
118-
if (!targetChain) {
119-
targetChain = checkout.config.isProduction
120-
? ChainId.IMTBL_ZKEVM_MAINNET
121-
: ChainId.IMTBL_ZKEVM_TESTNET;
122-
}
117+
const targetChain = targetChainId ?? checkout.config.l2ChainId;
123118

124119
useEffect(() => {
125120
if (!browserProvider) return;

packages/checkout/widgets-lib/src/widgets/connect/ConnectWidgetRoot.tsx

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
import React, { Suspense } from 'react';
22
import {
3-
ChainId,
43
ConnectWidgetParams, IMTBLWidgetEvents, WidgetProperties, WidgetType,
54
} from '@imtbl/checkout-sdk';
6-
import { Environment } from '@imtbl/config';
75
import { ThemeProvider } from '../../components/ThemeProvider/ThemeProvider';
86
import { CustomAnalyticsProvider } from '../../context/analytics-provider/CustomAnalyticsProvider';
97
import { LoadingView } from '../../views/loading/LoadingView';
@@ -28,29 +26,15 @@ export class Connect extends Base<WidgetType.CONNECT> {
2826
protected getValidatedParameters(params: ConnectWidgetParams): ConnectWidgetParams {
2927
const validatedParams = params;
3028

31-
// validating targetChainId per environment
32-
if (!params.targetChainId
33-
&& this.checkout.config.isProduction) {
34-
validatedParams.targetChainId = ChainId.IMTBL_ZKEVM_MAINNET;
35-
} else if (params.targetChainId
36-
&& this.checkout.config.isProduction
37-
&& (params.targetChainId !== ChainId.ETHEREUM && params.targetChainId !== ChainId.IMTBL_ZKEVM_MAINNET)
38-
) {
39-
// eslint-disable-next-line max-len, no-console
40-
console.warn(`Cannot set targetChainId to ${params.targetChainId} in ${Environment.PRODUCTION} environment, defaulting to ${getChainNameById(ChainId.IMTBL_ZKEVM_MAINNET)}, chainId ${ChainId.IMTBL_ZKEVM_MAINNET}`);
41-
validatedParams.targetChainId = ChainId.IMTBL_ZKEVM_MAINNET;
42-
}
29+
const { l1ChainId, l2ChainId, environment } = this.checkout.config;
4330

44-
if (!params.targetChainId
45-
&& this.checkout.config.environment === Environment.SANDBOX) {
46-
validatedParams.targetChainId = ChainId.IMTBL_ZKEVM_TESTNET;
47-
} else if (params.targetChainId
48-
&& this.checkout.config.environment === Environment.SANDBOX
49-
&& (params.targetChainId !== ChainId.SEPOLIA && params.targetChainId !== ChainId.IMTBL_ZKEVM_TESTNET)
50-
) {
31+
// validating targetChainId per environment
32+
if (!params.targetChainId) {
33+
validatedParams.targetChainId = l2ChainId;
34+
} else if (![l1ChainId, l2ChainId].includes(params.targetChainId)) {
5135
// eslint-disable-next-line max-len, no-console
52-
console.warn(`Cannot set targetChainId to ${params.targetChainId} in ${Environment.SANDBOX} environment, defaulting to ${getChainNameById(ChainId.IMTBL_ZKEVM_TESTNET)}, chainId ${ChainId.IMTBL_ZKEVM_TESTNET}`);
53-
validatedParams.targetChainId = ChainId.IMTBL_ZKEVM_TESTNET;
36+
console.warn(`Cannot set targetChainId to ${params.targetChainId} in ${environment} environment, defaulting to ${getChainNameById(l2ChainId)}, chainId ${l2ChainId}`);
37+
validatedParams.targetChainId = l2ChainId;
5438
}
5539

5640
return params;

0 commit comments

Comments
 (0)