@openocean.finance/widget 1.0.20 → 1.0.21
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/esm/App.js +3 -1
- package/dist/esm/App.js.map +1 -1
- package/dist/esm/AppDrawer.style.d.ts +1 -1
- package/dist/esm/components/ActiveTransactions/ActiveTransactions.style.d.ts +2 -2
- package/dist/esm/components/AmountInput/AmountInput.js +11 -7
- package/dist/esm/components/AmountInput/AmountInput.js.map +1 -1
- package/dist/esm/components/AmountInput/AmountInput.style.d.ts +1 -1
- package/dist/esm/components/AmountInput/AmountInputAdornment.style.d.ts +1 -1
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.js +2 -2
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.js.map +1 -1
- package/dist/esm/components/AmountInput/PriceFormHelperText.js.map +1 -1
- package/dist/esm/components/AppContainer.d.ts +1 -1
- package/dist/esm/components/Avatar/Avatar.style.d.ts +1 -1
- package/dist/esm/components/Avatar/SmallAvatar.d.ts +1 -1
- package/dist/esm/components/ButtonTertiary.d.ts +1 -1
- package/dist/esm/components/Card/CardHeader.d.ts +1 -1
- package/dist/esm/components/Card/CardIconButton.d.ts +1 -1
- package/dist/esm/components/Card/InputCard.d.ts +1 -1
- package/dist/esm/components/ContractComponent/NFT/NFT.style.d.ts +1 -1
- package/dist/esm/components/Header/Header.style.d.ts +2 -2
- package/dist/esm/components/Header/SettingsButton.style.d.ts +2 -2
- package/dist/esm/components/ListItem/ListItem.d.ts +1 -1
- package/dist/esm/components/Messages/GasSufficiencyMessageBridge.js +2 -1
- package/dist/esm/components/Messages/GasSufficiencyMessageBridge.js.map +1 -1
- package/dist/esm/components/Messages/PriceImpactHighMessage.js.map +1 -1
- package/dist/esm/components/Messages/WarningMessages.js.map +1 -1
- package/dist/esm/components/PageContainer.d.ts +1 -1
- package/dist/esm/components/PoweredBy/PoweredBy.js +1 -1
- package/dist/esm/components/PoweredBy/PoweredBy.js.map +1 -1
- package/dist/esm/components/ProgressToNextUpdate.js.map +1 -1
- package/dist/esm/components/RouteCard/RouteCard.js.map +1 -1
- package/dist/esm/components/Search/SearchInput.style.d.ts +1 -1
- package/dist/esm/components/SelectTokenButton/SelectTokenButton.style.d.ts +1 -1
- package/dist/esm/components/SendToWallet/SendToWallet.style.d.ts +1 -1
- package/dist/esm/components/Skeleton/WidgetSkeleton.style.d.ts +3 -3
- package/dist/esm/components/StepActions/StepActions.style.d.ts +1 -1
- package/dist/esm/components/StepDivider/StepDivider.style.d.ts +1 -1
- package/dist/esm/components/Tabs/Tabs.style.d.ts +2 -2
- package/dist/esm/components/TokenList/TokenList.style.d.ts +2 -2
- package/dist/esm/components/TransactionDetails.js +9 -7
- package/dist/esm/components/TransactionDetails.js.map +1 -1
- package/dist/esm/config/defaultChainIds.d.ts +1 -0
- package/dist/esm/config/defaultChainIds.js +39 -0
- package/dist/esm/config/defaultChainIds.js.map +1 -0
- package/dist/esm/config/version.d.ts +1 -1
- package/dist/esm/config/version.js +1 -1
- package/dist/esm/hooks/useAvailableChains.js +51 -7
- package/dist/esm/hooks/useAvailableChains.js.map +1 -1
- package/dist/esm/hooks/useChain.d.ts +1 -1
- package/dist/esm/hooks/useGasPrice.js +2 -1
- package/dist/esm/hooks/useGasPrice.js.map +1 -1
- package/dist/esm/hooks/useGasRefuel.d.ts +1 -1
- package/dist/esm/hooks/useGasSufficiencyBridge.js +1 -1
- package/dist/esm/hooks/useGasSufficiencyBridge.js.map +1 -1
- package/dist/esm/hooks/useLanguages.d.ts +2 -2
- package/dist/esm/hooks/useRoutes.js +1 -1
- package/dist/esm/hooks/useRoutes.js.map +1 -1
- package/dist/esm/hooks/useTokenAddressBalance.d.ts +1 -1
- package/dist/esm/hooks/useTokens.d.ts +1 -1
- package/dist/esm/hooks/useTokens.js.map +1 -1
- package/dist/esm/i18n/en.json +3 -3
- package/dist/esm/pages/MainPage/MainPage.style.d.ts +1 -1
- package/dist/esm/pages/MainPage/ReviewButton.js.map +1 -1
- package/dist/esm/pages/SendToWallet/BookmarkAddressSheet.js.map +1 -1
- package/dist/esm/pages/SendToWallet/SendToWalletPage.js.map +1 -1
- package/dist/esm/pages/SendToWallet/SendToWalletPage.style.d.ts +7 -7
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingCard.style.d.ts +1 -1
- package/dist/esm/pages/TransactionPage/StartTransactionButton.js.map +1 -1
- package/dist/esm/pages/TransactionPage/StatusBottomSheet.js +1 -1
- package/dist/esm/pages/TransactionPage/StatusBottomSheet.js.map +1 -1
- package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js.map +1 -1
- package/dist/esm/pages/TransactionPage/TransactionPage.js +1 -1
- package/dist/esm/pages/TransactionPage/TransactionPage.js.map +1 -1
- package/dist/esm/providers/WidgetProvider/WidgetProvider.js +1 -1
- package/dist/esm/providers/WidgetProvider/WidgetProvider.js.map +1 -1
- package/dist/esm/services/ExecuteRoute.d.ts +1 -2
- package/dist/esm/services/ExecuteRoute.js.map +1 -1
- package/dist/esm/stores/bookmarks/createBookmarkStore.js.map +1 -1
- package/dist/esm/stores/chains/createChainOrderStore.js +1 -1
- package/dist/esm/stores/chains/createChainOrderStore.js.map +1 -1
- package/dist/esm/stores/form/useFieldController.d.ts +1 -1
- package/dist/esm/stores/routes/createRouteExecutionStore.js.map +1 -1
- package/dist/esm/stores/routes/useSetExecutableRoute.d.ts +1 -1
- package/dist/esm/stores/settings/useSettingsStore.js.map +1 -1
- package/dist/esm/themes/createTheme.js +1 -1
- package/dist/esm/themes/createTheme.js.map +1 -1
- package/dist/esm/types/widget.d.ts +4 -0
- package/package.json +3 -3
- package/src/App.tsx +8 -1
- package/src/components/AmountInput/AmountInput.tsx +21 -11
- package/src/components/AmountInput/AmountInputEndAdornment.tsx +2 -2
- package/src/components/AmountInput/PriceFormHelperText.tsx +1 -1
- package/src/components/Messages/GasSufficiencyMessageBridge.tsx +2 -0
- package/src/components/Messages/PriceImpactHighMessage.tsx +2 -2
- package/src/components/Messages/WarningMessages.tsx +1 -1
- package/src/components/PoweredBy/PoweredBy.tsx +1 -1
- package/src/components/ProgressToNextUpdate.tsx +1 -1
- package/src/components/RouteCard/RouteCard.tsx +0 -1
- package/src/components/TransactionDetails.tsx +9 -9
- package/src/config/defaultChainIds.ts +38 -0
- package/src/config/version.ts +1 -1
- package/src/hooks/useAvailableChains.ts +53 -8
- package/src/hooks/useGasPrice.ts +2 -1
- package/src/hooks/useGasSufficiencyBridge.ts +2 -2
- package/src/hooks/useRoutes.ts +1 -1
- package/src/hooks/useTokenSearch.ts +1 -1
- package/src/hooks/useTokens.ts +3 -3
- package/src/i18n/en.json +3 -3
- package/src/i18n/i18next.d.ts +30 -0
- package/src/index.ts +1 -1
- package/src/pages/MainPage/ReviewButton.tsx +1 -1
- package/src/pages/SendToWallet/BookmarkAddressSheet.tsx +1 -1
- package/src/pages/SendToWallet/SendToWalletPage.tsx +2 -2
- package/src/pages/TransactionPage/StartTransactionButton.tsx +1 -1
- package/src/pages/TransactionPage/StatusBottomSheet.tsx +1 -1
- package/src/pages/TransactionPage/TokenValueBottomSheet.tsx +2 -2
- package/src/pages/TransactionPage/TransactionPage.tsx +1 -1
- package/src/providers/WidgetProvider/WidgetProvider.tsx +1 -1
- package/src/services/ExecuteRoute.ts +2 -2
- package/src/stores/bookmarks/createBookmarkStore.ts +7 -7
- package/src/stores/chains/createChainOrderStore.ts +2 -2
- package/src/stores/routes/createRouteExecutionStore.ts +1 -1
- package/src/stores/settings/useSettingsStore.ts +1 -1
- package/src/themes/createTheme.ts +1 -1
- package/src/types/widget.ts +4 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTheme.js","sourceRoot":"","sources":["../../../src/themes/createTheme.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"createTheme.js","sourceRoot":"","sources":["../../../src/themes/createTheme.ts"],"names":[],"mappings":"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"}
|
|
@@ -146,6 +146,9 @@ export interface WidgetConfig {
|
|
|
146
146
|
toChain?: number;
|
|
147
147
|
fromToken?: string;
|
|
148
148
|
toToken?: string;
|
|
149
|
+
defaultChain?: number;
|
|
150
|
+
defaultFromToken?: string;
|
|
151
|
+
defaultToToken?: string;
|
|
149
152
|
toAddress?: ToAddress;
|
|
150
153
|
toAddresses?: ToAddress[];
|
|
151
154
|
fromAmount?: number | string;
|
|
@@ -188,6 +191,7 @@ export interface WidgetConfig {
|
|
|
188
191
|
languageResources?: LanguageResources;
|
|
189
192
|
explorerUrls?: Record<number, string[]> & Partial<Record<'internal', string[]>>;
|
|
190
193
|
poweredBy?: PoweredByType;
|
|
194
|
+
isDefaultValueEnabled?: boolean;
|
|
191
195
|
/**
|
|
192
196
|
* Custom labels/badges to show on routes based on specified rules
|
|
193
197
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openocean.finance/widget",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.21",
|
|
4
4
|
"description": "Openocean Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/esm/index.js",
|
|
@@ -47,8 +47,8 @@
|
|
|
47
47
|
"@mui/icons-material": "6.0.2",
|
|
48
48
|
"@mui/material": "^6.4.8",
|
|
49
49
|
"@mui/system": "^6.4.8",
|
|
50
|
-
"@openocean.finance/wallet-management": "^1.0.
|
|
51
|
-
"@openocean.finance/widget-sdk": "^1.0.
|
|
50
|
+
"@openocean.finance/wallet-management": "^1.0.11",
|
|
51
|
+
"@openocean.finance/widget-sdk": "^1.0.8",
|
|
52
52
|
"@solana/wallet-adapter-base": "^0.9.24",
|
|
53
53
|
"@solana/web3.js": "^1.98.0",
|
|
54
54
|
"@tanstack/react-virtual": "^3.13.4",
|
package/src/App.tsx
CHANGED
|
@@ -8,7 +8,14 @@ import type { WidgetConfig, WidgetProps } from './types/widget.js'
|
|
|
8
8
|
|
|
9
9
|
export const App = forwardRef<WidgetDrawer, WidgetProps>((props, ref) => {
|
|
10
10
|
const config: WidgetConfig = useMemo(() => {
|
|
11
|
-
const
|
|
11
|
+
const widgetConfig = { ...props, ...props.config }
|
|
12
|
+
const {
|
|
13
|
+
fromChain = widgetConfig.defaultChain,
|
|
14
|
+
fromToken = widgetConfig.defaultFromToken,
|
|
15
|
+
toChain = widgetConfig.defaultChain,
|
|
16
|
+
toToken = widgetConfig.defaultToToken,
|
|
17
|
+
} = widgetConfig
|
|
18
|
+
const config = { ...widgetConfig, fromChain, fromToken, toChain, toToken }
|
|
12
19
|
if (config.variant === 'drawer') {
|
|
13
20
|
config.theme = {
|
|
14
21
|
...config.theme,
|
|
@@ -80,17 +80,27 @@ export const AmountInputBase: React.FC<
|
|
|
80
80
|
const amountKey = FormKeyHelper.getAmountKey(formType)
|
|
81
81
|
const { onChange, onBlur, value } = useFieldController({ name: amountKey })
|
|
82
82
|
inputValue = value || ''
|
|
83
|
-
if
|
|
84
|
-
const {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
83
|
+
if(formType === 'to'){
|
|
84
|
+
const {
|
|
85
|
+
routes,
|
|
86
|
+
isLoading,
|
|
87
|
+
isFetching,
|
|
88
|
+
isFetched,
|
|
89
|
+
dataUpdatedAt,
|
|
90
|
+
refetchTime,
|
|
91
|
+
refetch,
|
|
92
|
+
} = useRoutes()
|
|
93
|
+
const router = routes?.[0]
|
|
94
|
+
if (
|
|
95
|
+
router &&
|
|
96
|
+
router.toAmount !== undefined &&
|
|
97
|
+
router.toAmount !== null &&
|
|
98
|
+
router.toToken &&
|
|
99
|
+
typeof router.toToken.decimals === 'number'
|
|
100
|
+
) {
|
|
101
|
+
inputValue = String(formatTokenAmount(BigInt(router.toAmount), router.toToken.decimals))
|
|
102
|
+
} else {
|
|
103
|
+
inputValue = ''
|
|
94
104
|
}
|
|
95
105
|
}
|
|
96
106
|
|
|
@@ -127,7 +127,7 @@ export const AmountInputEndAdornment = ({ formType }: FormTypeProps) => {
|
|
|
127
127
|
(1.15 * Number(prependedOperatingExpenseCost)).toString()
|
|
128
128
|
)
|
|
129
129
|
)
|
|
130
|
-
if (chain?.nativeToken
|
|
130
|
+
if (chain?.nativeToken?.address === fromTokenAddress) {
|
|
131
131
|
if (fromChainId === 1151111081099710) {
|
|
132
132
|
gas += 15000000n + (8157120n + 4000000n + 890880n)
|
|
133
133
|
} else if (fromChainId === 8453) {
|
|
@@ -138,7 +138,7 @@ export const AmountInputEndAdornment = ({ formType }: FormTypeProps) => {
|
|
|
138
138
|
|
|
139
139
|
if (state === 'swap' || fromChainId === toChainId) {
|
|
140
140
|
if (
|
|
141
|
-
chain?.nativeToken
|
|
141
|
+
chain?.nativeToken?.address === fromTokenAddress &&
|
|
142
142
|
data?.recommended
|
|
143
143
|
) {
|
|
144
144
|
gas = BigInt(data.recommended.amount) / 2n
|
|
@@ -47,7 +47,7 @@ export const PriceFormHelperTextBase: React.FC<
|
|
|
47
47
|
BigInt(router.toAmount),
|
|
48
48
|
router.toToken.decimals
|
|
49
49
|
)
|
|
50
|
-
toTokenPrice = formatTokenPrice(toAmount, router.toToken.priceUSD)
|
|
50
|
+
toTokenPrice = formatTokenPrice(toAmount, (router.toToken as any).priceUSD)
|
|
51
51
|
}
|
|
52
52
|
} else {
|
|
53
53
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type BoxProps, Typography } from '@mui/material'
|
|
2
2
|
import { useTranslation } from 'react-i18next'
|
|
3
3
|
import { AlertMessage } from './AlertMessage.js'
|
|
4
|
+
import { Warning as WarningIcon } from '@mui/icons-material'
|
|
4
5
|
|
|
5
6
|
interface GasSufficiencyMessageProps extends BoxProps {
|
|
6
7
|
// insufficientGas?: GasSufficiency[]
|
|
@@ -12,6 +13,7 @@ export const GasSufficiencyMessageBridge: React.FC<
|
|
|
12
13
|
const { t } = useTranslation()
|
|
13
14
|
return (
|
|
14
15
|
<AlertMessage
|
|
16
|
+
icon={<WarningIcon />}
|
|
15
17
|
severity="warning"
|
|
16
18
|
title={
|
|
17
19
|
<Typography
|
|
@@ -16,10 +16,10 @@ export const PriceImpactHighMessage: React.FC<PriceImpactHighMessageProps> = ({
|
|
|
16
16
|
...props
|
|
17
17
|
}) => {
|
|
18
18
|
const acknowledged = useStorePriceImpactAcknowledged(
|
|
19
|
-
(state) => state.priceImpactAcknowledged
|
|
19
|
+
(state) => (state as any).priceImpactAcknowledged
|
|
20
20
|
)
|
|
21
21
|
const setAcknowledged = useStorePriceImpactAcknowledged(
|
|
22
|
-
(state) => state.setPriceImpactAcknowledged
|
|
22
|
+
(state) => (state as any).setPriceImpactAcknowledged
|
|
23
23
|
)
|
|
24
24
|
|
|
25
25
|
const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {
|
|
@@ -25,7 +25,7 @@ export const WarningMessages: React.FC<WarningMessagesProps> = ({
|
|
|
25
25
|
}) => {
|
|
26
26
|
const { messages, hasMessages } = useMessageQueue(route, allowInteraction)
|
|
27
27
|
const setPriceImpactAcknowledged = useStorePriceImpactAcknowledged(
|
|
28
|
-
(state) => state.setPriceImpactAcknowledged
|
|
28
|
+
(state) => (state as any).setPriceImpactAcknowledged
|
|
29
29
|
)
|
|
30
30
|
const getMessage = () => {
|
|
31
31
|
switch (messages[0]?.id) {
|
|
@@ -37,7 +37,6 @@ export const RouteCard: React.FC<
|
|
|
37
37
|
e.stopPropagation()
|
|
38
38
|
setCardExpanded((expanded) => !expanded)
|
|
39
39
|
}
|
|
40
|
-
|
|
41
40
|
const token: TokenAmount =
|
|
42
41
|
subvariant === 'custom' && subvariantOptions?.custom !== 'deposit'
|
|
43
42
|
? { ...route.fromToken, amount: BigInt(route.fromAmount) }
|
|
@@ -34,7 +34,7 @@ export const TransactionDetails: React.FC<TransactionDetailsProps> = ({
|
|
|
34
34
|
const { chain } = useChain(fromChainId)
|
|
35
35
|
const [state] = useSplitSubvariantStore((storeState) => [storeState.state])
|
|
36
36
|
const isBradge = route ? fromChainId !== toChainId : state === 'bridge'
|
|
37
|
-
const { token } = useToken(fromChainId, chain?.nativeToken
|
|
37
|
+
const { token } = useToken(fromChainId, chain?.nativeToken?.address)
|
|
38
38
|
const { gasPrice } = useGasPrice(fromChainId?.toString() || '')
|
|
39
39
|
|
|
40
40
|
if (!route) {
|
|
@@ -61,7 +61,7 @@ export const TransactionDetails: React.FC<TransactionDetailsProps> = ({
|
|
|
61
61
|
fromAmountMin: 0,
|
|
62
62
|
estimatedGas: 0,
|
|
63
63
|
steps: [],
|
|
64
|
-
}
|
|
64
|
+
} as unknown as RouteExtended
|
|
65
65
|
}
|
|
66
66
|
const toggleCard = () => {
|
|
67
67
|
setCardExpanded((cardExpanded) => !cardExpanded)
|
|
@@ -69,16 +69,18 @@ export const TransactionDetails: React.FC<TransactionDetailsProps> = ({
|
|
|
69
69
|
|
|
70
70
|
let gasCostUSD = 0
|
|
71
71
|
const feeCosts = []
|
|
72
|
-
const
|
|
72
|
+
const combinedFeesUSD = gasCostUSD + feeCosts.reduce((sum, fee) => sum + fee.costUSD, 0)
|
|
73
|
+
const feeCostUSD = feeCosts.reduce((sum, fee) => sum + fee.costUSD, 0)
|
|
74
|
+
const estimatedGas = (route as any)?.estimatedGas || (route as any)?.data?.estimatedGas
|
|
73
75
|
if (token && gasPrice && estimatedGas) {
|
|
74
76
|
const d = 10 ** token.decimals
|
|
75
77
|
gasCostUSD =
|
|
76
78
|
Number(token.priceUSD) * ((Number(gasPrice) * Number(estimatedGas)) / d)
|
|
77
79
|
}
|
|
78
|
-
if (isBradge && route?.data?.prependedOperatingExpenseCost) {
|
|
80
|
+
if (isBradge && (route as any)?.data?.prependedOperatingExpenseCost) {
|
|
79
81
|
const decimals = 10 ** route.fromToken.decimals
|
|
80
82
|
gasCostUSD =
|
|
81
|
-
(route.data.prependedOperatingExpenseCost / decimals) *
|
|
83
|
+
((route as any).data.prependedOperatingExpenseCost / decimals) *
|
|
82
84
|
Number(route.fromToken.priceUSD)
|
|
83
85
|
}
|
|
84
86
|
|
|
@@ -225,13 +227,11 @@ export const TransactionDetails: React.FC<TransactionDetailsProps> = ({
|
|
|
225
227
|
<Typography variant="body2" color="text.secondary">
|
|
226
228
|
{t('main.fees.provider')}
|
|
227
229
|
</Typography>
|
|
228
|
-
|
|
229
|
-
{feeCostUSD
|
|
230
|
+
{feeCostUSD
|
|
230
231
|
? t('format.currency', {
|
|
231
232
|
value: feeCostUSD,
|
|
232
233
|
})
|
|
233
234
|
: '--'}
|
|
234
|
-
</Typography>
|
|
235
235
|
</Box>
|
|
236
236
|
) : null}
|
|
237
237
|
{showIntegratorFeeCollectionDetails ? (
|
|
@@ -336,7 +336,7 @@ export const TransactionDetails: React.FC<TransactionDetailsProps> = ({
|
|
|
336
336
|
value: formatTokenAmount(
|
|
337
337
|
typeof route.toAmountMin === 'string' &&
|
|
338
338
|
!route.toAmountMin.includes('e')
|
|
339
|
-
? BigInt(Math.floor(route.toAmountMin))
|
|
339
|
+
? BigInt(Math.floor(Number(route.toAmountMin)))
|
|
340
340
|
: BigInt(0),
|
|
341
341
|
route.toToken.decimals
|
|
342
342
|
),
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export const DEFAULT_CHAIN_IDS = [
|
|
2
|
+
1, // Ethereum Mainnet
|
|
3
|
+
56, // BNB Chain
|
|
4
|
+
42161, // Arbitrum
|
|
5
|
+
10, // Optimism
|
|
6
|
+
324, // zkSync Era
|
|
7
|
+
137, // Polygon Mainnet
|
|
8
|
+
43114, // Avalanche
|
|
9
|
+
250, // Fantom
|
|
10
|
+
146, // Sonic
|
|
11
|
+
80094, // Berachain
|
|
12
|
+
8453, // Base
|
|
13
|
+
59144, // Linea Mainnet
|
|
14
|
+
534352, // Scroll
|
|
15
|
+
81457, // Blast
|
|
16
|
+
34443, // Mode
|
|
17
|
+
5000, // Mantle
|
|
18
|
+
130, // UniChain
|
|
19
|
+
14, // Flare
|
|
20
|
+
1923, // Swellchain
|
|
21
|
+
169, // Manta Pacific
|
|
22
|
+
1101, // Polygon zkEVM
|
|
23
|
+
40, // Telos
|
|
24
|
+
100, // Gnosis Mainnet
|
|
25
|
+
30, // Rootstock
|
|
26
|
+
2222, // Kava
|
|
27
|
+
1329, // Sei
|
|
28
|
+
1088, // Metis
|
|
29
|
+
204, // opBNB
|
|
30
|
+
42220, // Celo
|
|
31
|
+
1625, // Gravity
|
|
32
|
+
33139, // ApeChain
|
|
33
|
+
25, // Cronos Mainnet
|
|
34
|
+
1313161554, // Aurora Mainnet
|
|
35
|
+
1285, // Moonriver
|
|
36
|
+
1666600000, // Harmony Mainnet
|
|
37
|
+
10143, // Monad Testnet
|
|
38
|
+
];
|
package/src/config/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export const name = '@openocean.finance/widget'
|
|
2
|
-
export const version = '1.0.
|
|
2
|
+
export const version = '1.0.21'
|
|
@@ -4,13 +4,15 @@ import { useQuery } from '@tanstack/react-query'
|
|
|
4
4
|
import { useCallback } from 'react'
|
|
5
5
|
import { useWidgetConfig } from '../providers/WidgetProvider/WidgetProvider.js'
|
|
6
6
|
import { isItemAllowed } from '../utils/item.js'
|
|
7
|
+
import { CoinKey } from '../index.js'
|
|
8
|
+
import { DEFAULT_CHAIN_IDS } from '../config/defaultChainIds.js';
|
|
7
9
|
|
|
8
10
|
export type GetChainById = (
|
|
9
11
|
chainId?: number,
|
|
10
12
|
chains?: ExtendedChain[]
|
|
11
13
|
) => ExtendedChain | undefined
|
|
12
14
|
|
|
13
|
-
const supportedChainTypes = [ChainType.EVM, ChainType.SVM, ChainType.UTXO]
|
|
15
|
+
const supportedChainTypes: ChainType[] = [ChainType.EVM, ChainType.SVM, ChainType.UTXO]
|
|
14
16
|
|
|
15
17
|
export const useAvailableChains = (chainTypes?: ChainType[]) => {
|
|
16
18
|
const { chains } = useWidgetConfig()
|
|
@@ -30,11 +32,57 @@ export const useAvailableChains = (chainTypes?: ChainType[]) => {
|
|
|
30
32
|
// providers.length > 0 ? providers : supportedChainTypes
|
|
31
33
|
.filter((chainType) => isItemAllowed(chainType, chainTypesConfig))
|
|
32
34
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
+
let availableChains = await getChains()
|
|
36
|
+
// allow chains "starknet","aptos","near","ont","sui",
|
|
37
|
+
const allowedChainsIds = chains?.allow?.length ? chains.allow : DEFAULT_CHAIN_IDS;
|
|
38
|
+
const allowedChains = availableChains.filter((chain) => {
|
|
39
|
+
if (allowedChainsIds.indexOf(chain.id) >= 0) {
|
|
40
|
+
return true
|
|
41
|
+
}
|
|
42
|
+
return false
|
|
35
43
|
})
|
|
36
|
-
|
|
37
|
-
|
|
44
|
+
/*
|
|
45
|
+
allowedChains.push({
|
|
46
|
+
"key":"eth",
|
|
47
|
+
"chainType":ChainType.EVM,
|
|
48
|
+
"name":"Ethereum",
|
|
49
|
+
"coin":CoinKey.WETH,
|
|
50
|
+
"id":1,
|
|
51
|
+
"mainnet":true,
|
|
52
|
+
"logoURI":"https://raw.githubusercontent.com/lifinance/types/main/src/assets/icons/chains/ethereum.svg",
|
|
53
|
+
"tokenlistUrl":"https://gateway.ipfs.io/ipns/tokens.uniswap.org",
|
|
54
|
+
"multicallAddress":"0xcA11bde05977b3631167028862bE2a173976CA11",
|
|
55
|
+
"relayerSupported":false,
|
|
56
|
+
"metamask":{
|
|
57
|
+
"chainId":"0x1",
|
|
58
|
+
"blockExplorerUrls":["https://etherscan.io/"],
|
|
59
|
+
"chainName":"Ethereum Mainnet",
|
|
60
|
+
"nativeCurrency":{
|
|
61
|
+
"name":"ETH",
|
|
62
|
+
"symbol":"ETH",
|
|
63
|
+
"decimals":18
|
|
64
|
+
},
|
|
65
|
+
"rpcUrls":[
|
|
66
|
+
"https://ethereum-rpc.publicnode.com",
|
|
67
|
+
"https://eth.drpc.org"
|
|
68
|
+
]
|
|
69
|
+
},
|
|
70
|
+
"nativeToken":{
|
|
71
|
+
"address":"0x0000000000000000000000000000000000000000",
|
|
72
|
+
"chainId":1,"symbol":
|
|
73
|
+
"ETH","decimals":18,
|
|
74
|
+
"name":"ETH",
|
|
75
|
+
"coinKey":"ETH",
|
|
76
|
+
"logoURI":"https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png",
|
|
77
|
+
"priceUSD":"3804.11"
|
|
78
|
+
},
|
|
79
|
+
"diamondAddress":"0x1231DEB6f5749EF6cE6943a275A1D3E7486F4EaE",
|
|
80
|
+
"permit2":"0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
81
|
+
"permit2Proxy":"0x89c6340B1a1f4b25D36cd8B063D49045caF3f818"
|
|
82
|
+
})
|
|
83
|
+
*/
|
|
84
|
+
config.setChains(allowedChains)
|
|
85
|
+
return allowedChains
|
|
38
86
|
},
|
|
39
87
|
refetchInterval: 300_000,
|
|
40
88
|
staleTime: 300_000,
|
|
@@ -46,9 +94,6 @@ export const useAvailableChains = (chainTypes?: ChainType[]) => {
|
|
|
46
94
|
return
|
|
47
95
|
}
|
|
48
96
|
const chain = chains?.find((chain) => chain.id === chainId)
|
|
49
|
-
// if (!chain) {
|
|
50
|
-
// throw new Error('Chain not found or chainId is invalid.');
|
|
51
|
-
// }
|
|
52
97
|
return chain
|
|
53
98
|
},
|
|
54
99
|
[data]
|
package/src/hooks/useGasPrice.ts
CHANGED
|
@@ -13,8 +13,9 @@ export const useGasPrice = (chainName: string) => {
|
|
|
13
13
|
queryKey: ['gasPrice'],
|
|
14
14
|
queryFn: () => OpenOceanService.getGasPrice(chainName.toLowerCase()),
|
|
15
15
|
})
|
|
16
|
+
const _gasPrice = data?.[gasKey[gasPrice || 'Normal']]
|
|
16
17
|
return {
|
|
17
|
-
gasPrice:
|
|
18
|
+
gasPrice: _gasPrice && _gasPrice.maxFeePerGas,
|
|
18
19
|
isLoading,
|
|
19
20
|
}
|
|
20
21
|
}
|
|
@@ -49,13 +49,13 @@ export const useGasSufficiencyBridge = (route?: RouteExtended) => {
|
|
|
49
49
|
|
|
50
50
|
if (route.fromChainId !== route.toChainId) {
|
|
51
51
|
const prependedOperatingExpenseCost =
|
|
52
|
-
route.data.prependedOperatingExpenseCost || 0n
|
|
52
|
+
(route as any).data.prependedOperatingExpenseCost || 0n
|
|
53
53
|
let gas = BigInt(
|
|
54
54
|
Number.parseInt(
|
|
55
55
|
(1.1 * Number(prependedOperatingExpenseCost)).toString()
|
|
56
56
|
)
|
|
57
57
|
)
|
|
58
|
-
if (chain?.nativeToken
|
|
58
|
+
if (chain?.nativeToken?.address === fromTokenAddress) {
|
|
59
59
|
if (fromChainId === 1151111081099710) {
|
|
60
60
|
gas += 15000000n + (8157120n + 4000000n + 890880n)
|
|
61
61
|
} else if (fromChainId === 8453) {
|
package/src/hooks/useRoutes.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TokensResponse } from '@openocean.finance/widget-sdk'
|
|
2
2
|
import { useQuery, useQueryClient } from '@tanstack/react-query'
|
|
3
3
|
import { OpenOceanService } from '../services/OpenOceanService.js'
|
|
4
4
|
import type { TokenAmount } from '../types/token.js'
|
package/src/hooks/useTokens.ts
CHANGED
|
@@ -86,11 +86,11 @@ export const useTokens = (selectedChainId?: number) => {
|
|
|
86
86
|
token[tokenType] = true
|
|
87
87
|
// Check if this token exists in the filteredTokensMap and add priceUSD if it does
|
|
88
88
|
const matchingFilteredToken = filteredTokensMap.get(token.address)
|
|
89
|
-
if (matchingFilteredToken?.priceUSD) {
|
|
90
|
-
token.priceUSD = matchingFilteredToken.priceUSD
|
|
89
|
+
if ((matchingFilteredToken as any)?.priceUSD) {
|
|
90
|
+
(token as any).priceUSD = (matchingFilteredToken as any).priceUSD
|
|
91
91
|
}
|
|
92
92
|
if (!token.logoURI && matchingFilteredToken) {
|
|
93
|
-
token.logoURI = matchingFilteredToken.logoURI
|
|
93
|
+
(token as any).logoURI = (matchingFilteredToken as any).logoURI
|
|
94
94
|
}
|
|
95
95
|
return token as TokenAmount
|
|
96
96
|
})
|
package/src/i18n/en.json
CHANGED
|
@@ -61,8 +61,8 @@
|
|
|
61
61
|
"deposit": "Deposit",
|
|
62
62
|
"depositDetails": "Deposit details",
|
|
63
63
|
"depositTo": "Deposit to",
|
|
64
|
-
"exchange": "
|
|
65
|
-
"from": "
|
|
64
|
+
"exchange": "Swap",
|
|
65
|
+
"from": "Swap from",
|
|
66
66
|
"gas": "Gas",
|
|
67
67
|
"payWith": "Pay with",
|
|
68
68
|
"receive": "Receive",
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"sendToWallet": "Send to wallet",
|
|
74
74
|
"settings": "Settings",
|
|
75
75
|
"swap": "Swap",
|
|
76
|
-
"to": "
|
|
76
|
+
"to": "Swap to",
|
|
77
77
|
"transactionDetails": "Transaction details",
|
|
78
78
|
"transactionHistory": "Transaction history",
|
|
79
79
|
"walletConnected": "Wallet connected",
|
package/src/i18n/i18next.d.ts
CHANGED
|
@@ -1,10 +1,40 @@
|
|
|
1
|
+
import 'i18next'
|
|
2
|
+
import 'react-i18next'
|
|
1
3
|
import en from './en.json' with { type: 'json' }
|
|
2
4
|
|
|
3
5
|
const defaultResource = { translation: en }
|
|
4
6
|
|
|
7
|
+
// Completely override i18next module
|
|
5
8
|
declare module 'i18next' {
|
|
6
9
|
interface CustomTypeOptions {
|
|
7
10
|
defaultNS: 'translation'
|
|
8
11
|
resources: typeof defaultResource
|
|
12
|
+
keySeparator?: false
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// Override the t function to accept any string
|
|
16
|
+
function t(key: string, options?: any): string;
|
|
17
|
+
|
|
18
|
+
// Override TFunction type
|
|
19
|
+
type TFunction = (key: string, options?: any) => string;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
// Completely override react-i18next module
|
|
23
|
+
declare module 'react-i18next' {
|
|
24
|
+
// Override useTranslation hook
|
|
25
|
+
function useTranslation(): {
|
|
26
|
+
t: (key: string, options?: any) => string
|
|
27
|
+
i18n: any
|
|
28
|
+
ready: boolean
|
|
29
|
+
// ...other hooks
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Override TFunction type
|
|
33
|
+
type TFunction = (key: string, options?: any) => string;
|
|
34
|
+
|
|
35
|
+
// Override other related types
|
|
36
|
+
interface UseTranslationOptions {
|
|
37
|
+
keyPrefix?: string
|
|
38
|
+
ns?: string | string[]
|
|
9
39
|
}
|
|
10
40
|
}
|
package/src/index.ts
CHANGED
|
@@ -28,4 +28,4 @@ export { getPriceImpact } from './utils/getPriceImpact.js'
|
|
|
28
28
|
export { percentFormatter } from './utils/percentFormatter.js'
|
|
29
29
|
export { compactNumberFormatter } from './utils/compactNumberFormatter.js'
|
|
30
30
|
export { currencyExtendedFormatter } from './utils/currencyExtendedFormatter.js'
|
|
31
|
-
export { navigationRoutes } from './utils/navigationRoutes.js'
|
|
31
|
+
export { navigationRoutes } from './utils/navigationRoutes.js'
|
|
@@ -26,7 +26,7 @@ export const ReviewButton: React.FC = () => {
|
|
|
26
26
|
|
|
27
27
|
const { messages } = useMessageQueue(currentRoute)
|
|
28
28
|
const priceImpactAcknowledged = useStorePriceImpactAcknowledged(
|
|
29
|
-
(state) => state.priceImpactAcknowledged
|
|
29
|
+
(state) => (state as any).priceImpactAcknowledged
|
|
30
30
|
)
|
|
31
31
|
|
|
32
32
|
let hasMessages = messages.length > 0
|
|
@@ -54,7 +54,7 @@ export const BookmarkAddressSheet = forwardRef<
|
|
|
54
54
|
const validateWithAddressFromInput = async () => {
|
|
55
55
|
const validationResult = await validateAddress({ value: address })
|
|
56
56
|
if (!validationResult.isValid) {
|
|
57
|
-
setError({ type: 'address', message: validationResult.error })
|
|
57
|
+
setError({ type: 'address', message: (validationResult as any).error })
|
|
58
58
|
return
|
|
59
59
|
}
|
|
60
60
|
|
|
@@ -97,7 +97,7 @@ export const SendToWalletPage = () => {
|
|
|
97
97
|
})
|
|
98
98
|
setIsDoneButtonLoading(false)
|
|
99
99
|
if (!validationResult.isValid) {
|
|
100
|
-
setErrorMessage(validationResult.error)
|
|
100
|
+
setErrorMessage((validationResult as any).error)
|
|
101
101
|
return
|
|
102
102
|
}
|
|
103
103
|
|
|
@@ -159,7 +159,7 @@ export const SendToWalletPage = () => {
|
|
|
159
159
|
})
|
|
160
160
|
bookmarkAddressSheetRef.current?.open()
|
|
161
161
|
} else {
|
|
162
|
-
setErrorMessage(validationResult.error)
|
|
162
|
+
setErrorMessage((validationResult as any).error)
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
|
|
@@ -13,7 +13,7 @@ export const StartTransactionButton: React.FC<StartTransactionButtonProps> = ({
|
|
|
13
13
|
}) => {
|
|
14
14
|
const { messages, isLoading } = useMessageQueue(route)
|
|
15
15
|
const priceImpactAcknowledged = useStorePriceImpactAcknowledged(
|
|
16
|
-
(state) => state.priceImpactAcknowledged
|
|
16
|
+
(state) => (state as any).priceImpactAcknowledged
|
|
17
17
|
)
|
|
18
18
|
|
|
19
19
|
let hasMessages = messages.length > 0
|
|
@@ -56,7 +56,7 @@ export const StatusBottomSheet: React.FC<RouteExecution> = ({
|
|
|
56
56
|
useEffect(() => {
|
|
57
57
|
const hasSuccessFlag = hasEnumFlag(status, RouteExecutionStatus.Done)
|
|
58
58
|
const hasFailedFlag = hasEnumFlag(status, RouteExecutionStatus.Failed)
|
|
59
|
-
if ((hasSuccessFlag || hasFailedFlag) && !ref.current?.isOpen()) {
|
|
59
|
+
if ((hasSuccessFlag || hasFailedFlag) && !(ref.current?.isOpen?.() as unknown as boolean)) {
|
|
60
60
|
ref.current?.open()
|
|
61
61
|
}
|
|
62
62
|
}, [status])
|
|
@@ -58,10 +58,10 @@ const TokenValueBottomSheetContent: React.FC<TokenValueBottomSheetProps> = ({
|
|
|
58
58
|
const toAmountUSD = Number.parseFloat(route.toAmountUSD)
|
|
59
59
|
const hasGaslessSupport = route.steps.some(isGaslessStep)
|
|
60
60
|
|
|
61
|
-
if (isBradge && route?.data?.prependedOperatingExpenseCost) {
|
|
61
|
+
if (isBradge && (route as any)?.data?.prependedOperatingExpenseCost) {
|
|
62
62
|
const decimals = 10 ** route.fromToken.decimals
|
|
63
63
|
gasCostUSD =
|
|
64
|
-
(route.data.prependedOperatingExpenseCost / decimals) *
|
|
64
|
+
((route as any).data.prependedOperatingExpenseCost / decimals) *
|
|
65
65
|
Number(route.fromToken.priceUSD)
|
|
66
66
|
}
|
|
67
67
|
|