@lifi/widget 3.31.1-alpha.0 → 3.32.1

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.
Files changed (65) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/esm/components/FeeBreakdownTooltip.d.ts +1 -1
  3. package/dist/esm/components/FeeBreakdownTooltip.js +2 -2
  4. package/dist/esm/components/FeeBreakdownTooltip.js.map +1 -1
  5. package/dist/esm/components/RouteCard/RouteCard.js +27 -10
  6. package/dist/esm/components/RouteCard/RouteCard.js.map +1 -1
  7. package/dist/esm/components/RouteCard/RouteCardEssentials.js +1 -1
  8. package/dist/esm/components/RouteCard/RouteCardEssentials.js.map +1 -1
  9. package/dist/esm/components/TransactionDetails.js +2 -2
  10. package/dist/esm/components/TransactionDetails.js.map +1 -1
  11. package/dist/esm/config/version.d.ts +1 -1
  12. package/dist/esm/config/version.js +1 -1
  13. package/dist/esm/config/version.js.map +1 -1
  14. package/dist/esm/hooks/useFilteredByTokenBalances.js +1 -0
  15. package/dist/esm/hooks/useFilteredByTokenBalances.js.map +1 -1
  16. package/dist/esm/i18n/bn.json +4 -2
  17. package/dist/esm/i18n/de.json +4 -2
  18. package/dist/esm/i18n/en.json +4 -2
  19. package/dist/esm/i18n/es.json +4 -2
  20. package/dist/esm/i18n/fr.json +4 -2
  21. package/dist/esm/i18n/hi.json +4 -2
  22. package/dist/esm/i18n/id.json +4 -2
  23. package/dist/esm/i18n/it.json +4 -2
  24. package/dist/esm/i18n/ja.json +4 -2
  25. package/dist/esm/i18n/ko.json +4 -2
  26. package/dist/esm/i18n/pl.json +4 -2
  27. package/dist/esm/i18n/pt.json +4 -2
  28. package/dist/esm/i18n/th.json +4 -2
  29. package/dist/esm/i18n/tr.json +4 -2
  30. package/dist/esm/i18n/uk.json +4 -2
  31. package/dist/esm/i18n/vi.json +4 -2
  32. package/dist/esm/i18n/zh.json +4 -2
  33. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js +1 -1
  34. package/dist/esm/pages/TransactionPage/TokenValueBottomSheet.js.map +1 -1
  35. package/dist/esm/types/widget.d.ts +2 -3
  36. package/dist/esm/utils/format.js +6 -1
  37. package/dist/esm/utils/format.js.map +1 -1
  38. package/package.json +6 -7
  39. package/package.json.tmp +5 -6
  40. package/src/components/FeeBreakdownTooltip.tsx +5 -5
  41. package/src/components/RouteCard/RouteCard.tsx +49 -24
  42. package/src/components/RouteCard/RouteCardEssentials.tsx +1 -1
  43. package/src/components/TransactionDetails.tsx +2 -2
  44. package/src/config/version.ts +1 -1
  45. package/src/hooks/useFilteredByTokenBalances.ts +1 -0
  46. package/src/i18n/bn.json +4 -2
  47. package/src/i18n/de.json +4 -2
  48. package/src/i18n/en.json +4 -2
  49. package/src/i18n/es.json +4 -2
  50. package/src/i18n/fr.json +4 -2
  51. package/src/i18n/hi.json +4 -2
  52. package/src/i18n/id.json +4 -2
  53. package/src/i18n/it.json +4 -2
  54. package/src/i18n/ja.json +4 -2
  55. package/src/i18n/ko.json +4 -2
  56. package/src/i18n/pl.json +4 -2
  57. package/src/i18n/pt.json +4 -2
  58. package/src/i18n/th.json +4 -2
  59. package/src/i18n/tr.json +4 -2
  60. package/src/i18n/uk.json +4 -2
  61. package/src/i18n/vi.json +4 -2
  62. package/src/i18n/zh.json +4 -2
  63. package/src/pages/TransactionPage/TokenValueBottomSheet.tsx +1 -1
  64. package/src/types/widget.ts +2 -2
  65. package/src/utils/format.ts +7 -1
@@ -204,7 +204,8 @@
204
204
  "text": "我们找不到这个页面。",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "每次代币兑换包含了一到两次需要签名的交易。",
209
210
  "priceImpact": "源代币和目标代币之间的估计差值。",
210
211
  "progressToNextUpdate": "数据将在{{value}} 秒后自动刷新,点击这里可以手动更新。",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "最佳报价",
306
307
  "fastest": "速度最快",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "到",
310
312
  "tokenOnChain": "{{chainName}}链上的{{tokenSymbol}}",
@@ -42,7 +42,7 @@ const TokenValueBottomSheetContent = ({ route, onCancel, onContinue, }) => {
42
42
  display: 'flex',
43
43
  justifyContent: 'space-between',
44
44
  mt: 0.25,
45
- }, children: [_jsx(Typography, { children: t('main.fees.network') }), _jsx(FeeBreakdownTooltip, { gasCosts: gasCosts, relayerSupport: !gasCostUSD, children: _jsx(Typography, { sx: {
45
+ }, children: [_jsx(Typography, { children: t('main.fees.network') }), _jsx(FeeBreakdownTooltip, { gasCosts: gasCosts, gasless: !gasCostUSD, children: _jsx(Typography, { sx: {
46
46
  fontWeight: 600,
47
47
  }, children: !gasCostUSD
48
48
  ? t('main.fees.free')
@@ -1 +1 @@
1
- {"version":3,"file":"TokenValueBottomSheet.js","sourceRoot":"","sources":["../../../../src/pages/TransactionPage/TokenValueBottomSheet.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenValueBottomSheet.js","sourceRoot":"","sources":["../../../../src/pages/TransactionPage/TokenValueBottomSheet.tsx"],"names":[],"mappings":"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"}
@@ -2,9 +2,8 @@ import type { BaseToken, ChainType, ContractCall, ExecutionOptions, ExtendedChai
2
2
  import type { WalletMenuOpenArgs } from '@lifi/wallet-management';
3
3
  import type { Components, PaletteMode, PaletteOptions, Shape, SxProps, Theme } from '@mui/material';
4
4
  import type { TypographyVariantsOptions } from '@mui/material/styles';
5
- import type { Config as PortoConfig } from 'porto/Porto';
6
5
  import type { CSSProperties, FC, ReactNode, RefObject } from 'react';
7
- import type { BaseAccountParameters, CoinbaseWalletParameters, MetaMaskParameters, WalletConnectParameters } from 'wagmi/connectors';
6
+ import type { BaseAccountParameters, CoinbaseWalletParameters, MetaMaskParameters, PortoParameters, WalletConnectParameters } from 'wagmi/connectors';
8
7
  import type { LanguageKey, LanguageResources } from '../providers/I18nProvider/types.js';
9
8
  import type { DefaultFieldValues } from '../stores/form/types.js';
10
9
  export type WidgetVariant = 'compact' | 'wide' | 'drawer';
@@ -93,7 +92,7 @@ export interface WidgetWalletConfig {
93
92
  coinbase?: CoinbaseWalletParameters;
94
93
  metaMask?: MetaMaskParameters;
95
94
  baseAccount?: BaseAccountParameters;
96
- porto?: Partial<PortoConfig>;
95
+ porto?: Partial<PortoParameters>;
97
96
  /**
98
97
  * Determines whether the widget should provide partial wallet management functionality.
99
98
  *
@@ -39,7 +39,9 @@ export function formatInputAmount(amount, decimals = null, returnInitial = false
39
39
  return amount;
40
40
  }
41
41
  let formattedAmount = amount.trim().replaceAll(',', '.');
42
- if (formattedAmount.startsWith('.')) {
42
+ if (returnInitial &&
43
+ formattedAmount.startsWith('.') &&
44
+ !Number.parseFloat(formattedAmount)) {
43
45
  formattedAmount = `0${formattedAmount}`;
44
46
  }
45
47
  const parsedAmount = Number.parseFloat(formattedAmount);
@@ -52,6 +54,9 @@ export function formatInputAmount(amount, decimals = null, returnInitial = false
52
54
  if (returnInitial) {
53
55
  return formattedAmount;
54
56
  }
57
+ else if (formattedAmount.startsWith('.')) {
58
+ formattedAmount = `0${formattedAmount}`;
59
+ }
55
60
  let [integer, fraction = ''] = formattedAmount.split('.');
56
61
  if (decimals !== null && fraction.length > decimals) {
57
62
  fraction = fraction.slice(0, decimals);
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/utils/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/utils/format.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/widget",
3
- "version": "3.31.1-alpha.0",
3
+ "version": "3.32.1",
4
4
  "description": "LI.FI 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",
@@ -30,11 +30,11 @@
30
30
  "lifi"
31
31
  ],
32
32
  "dependencies": {
33
- "@bigmi/client": "^0.5.2",
34
- "@bigmi/core": "^0.5.2",
33
+ "@bigmi/client": "^0.5.3",
34
+ "@bigmi/core": "^0.5.3",
35
35
  "@emotion/react": "^11.14.0",
36
36
  "@emotion/styled": "^11.14.1",
37
- "@lifi/sdk": "^3.12.8",
37
+ "@lifi/sdk": "^3.12.10",
38
38
  "@mui/icons-material": "^7.3.2",
39
39
  "@mui/material": "^7.3.2",
40
40
  "@mui/system": "^7.3.2",
@@ -46,14 +46,13 @@
46
46
  "i18next": "^25.5.2",
47
47
  "microdiff": "^1.5.0",
48
48
  "mitt": "^3.0.1",
49
- "porto": "^0.2.10",
50
49
  "react-i18next": "^15.7.3",
51
50
  "react-intersection-observer": "^9.16.0",
52
51
  "react-router-dom": "^6.30.0",
53
52
  "react-transition-group": "^4.4.5",
54
- "viem": "^2.37.6",
53
+ "viem": "^2.37.7",
55
54
  "zustand": "^5.0.8",
56
- "@lifi/wallet-management": "^3.17.1-alpha.0"
55
+ "@lifi/wallet-management": "^3.17.2"
57
56
  },
58
57
  "peerDependencies": {
59
58
  "@bigmi/react": ">=0.5.0",
package/package.json.tmp CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/widget",
3
- "version": "3.31.1-alpha.0",
3
+ "version": "3.32.1",
4
4
  "description": "LI.FI 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": "./src/index.ts",
@@ -49,11 +49,11 @@
49
49
  "lifi"
50
50
  ],
51
51
  "dependencies": {
52
- "@bigmi/client": "^0.5.2",
53
- "@bigmi/core": "^0.5.2",
52
+ "@bigmi/client": "^0.5.3",
53
+ "@bigmi/core": "^0.5.3",
54
54
  "@emotion/react": "^11.14.0",
55
55
  "@emotion/styled": "^11.14.1",
56
- "@lifi/sdk": "^3.12.8",
56
+ "@lifi/sdk": "^3.12.10",
57
57
  "@lifi/wallet-management": "workspace:^",
58
58
  "@mui/icons-material": "^7.3.2",
59
59
  "@mui/material": "^7.3.2",
@@ -66,12 +66,11 @@
66
66
  "i18next": "^25.5.2",
67
67
  "microdiff": "^1.5.0",
68
68
  "mitt": "^3.0.1",
69
- "porto": "^0.2.10",
70
69
  "react-i18next": "^15.7.3",
71
70
  "react-intersection-observer": "^9.16.0",
72
71
  "react-router-dom": "^6.30.0",
73
72
  "react-transition-group": "^4.4.5",
74
- "viem": "^2.37.6",
73
+ "viem": "^2.37.7",
75
74
  "zustand": "^5.0.8"
76
75
  },
77
76
  "devDependencies": {
@@ -8,14 +8,14 @@ import { formatTokenAmount } from '../utils/format.js'
8
8
  interface FeeBreakdownTooltipProps {
9
9
  gasCosts?: FeesBreakdown[]
10
10
  feeCosts?: FeesBreakdown[]
11
- relayerSupport?: boolean
11
+ gasless?: boolean
12
12
  children: ReactElement<any, any>
13
13
  }
14
14
 
15
15
  export const FeeBreakdownTooltip: React.FC<FeeBreakdownTooltipProps> = ({
16
16
  gasCosts,
17
17
  feeCosts,
18
- relayerSupport,
18
+ gasless,
19
19
  children,
20
20
  }) => {
21
21
  const { t } = useTranslation()
@@ -23,14 +23,14 @@ export const FeeBreakdownTooltip: React.FC<FeeBreakdownTooltipProps> = ({
23
23
  <Tooltip
24
24
  title={
25
25
  <Box>
26
- {relayerSupport ? <Box>{t('tooltip.relayerService')}</Box> : null}
27
- {gasCosts?.length && !relayerSupport ? (
26
+ {gasless ? <Box>{t('tooltip.gasless')}</Box> : null}
27
+ {gasCosts?.length && !gasless ? (
28
28
  <Box>
29
29
  {t('main.fees.network')}
30
30
  {getFeeBreakdownTypography(gasCosts, t)}
31
31
  </Box>
32
32
  ) : null}
33
- {feeCosts?.length && !relayerSupport ? (
33
+ {feeCosts?.length && !gasless ? (
34
34
  <Box
35
35
  sx={{
36
36
  mt: 0.5,
@@ -1,12 +1,12 @@
1
1
  import type { TokenAmount } from '@lifi/sdk'
2
2
  import ExpandLess from '@mui/icons-material/ExpandLess'
3
3
  import ExpandMore from '@mui/icons-material/ExpandMore'
4
- import { Box, Collapse } from '@mui/material'
4
+ import { Box, Collapse, Tooltip } from '@mui/material'
5
5
  import type { MouseEventHandler } from 'react'
6
- import { useState } from 'react'
6
+ import { useMemo, useState } from 'react'
7
7
  import { useTranslation } from 'react-i18next'
8
8
  import { useWidgetConfig } from '../../providers/WidgetProvider/WidgetProvider.js'
9
- import { HiddenUI } from '../../types/widget.js'
9
+ import { HiddenUI, type RouteLabel } from '../../types/widget.js'
10
10
  import { getAccumulatedFeeCostsBreakdown } from '../../utils/fees.js'
11
11
  import type { CardProps } from '../Card/Card.js'
12
12
  import { Card } from '../Card/Card.js'
@@ -48,15 +48,21 @@ export const RouteCard: React.FC<
48
48
  ? { ...route.fromToken, amount: BigInt(route.fromAmount) }
49
49
  : undefined
50
50
 
51
- const customLabels = getMatchingLabels(route, routeLabels)
52
- const mainTag = route.tags?.find(
53
- (tag) => tag === 'CHEAPEST' || tag === 'FASTEST'
54
- )
55
- const tags: string[] = mainTag ? [mainTag] : []
56
- const { combinedFeesUSD } = getAccumulatedFeeCostsBreakdown(route)
57
- if (!combinedFeesUSD) {
58
- tags.push('GASLESS')
59
- }
51
+ const [tags, customLabels]: [string[], RouteLabel[]] = useMemo(() => {
52
+ const mainTag = route.tags?.find(
53
+ (tag) => tag === 'CHEAPEST' || tag === 'FASTEST'
54
+ )
55
+ const tags: string[] = mainTag ? [mainTag] : []
56
+ const { combinedFeesUSD } = getAccumulatedFeeCostsBreakdown(route)
57
+ if (!combinedFeesUSD) {
58
+ tags.push('gasless')
59
+ }
60
+ if (route.steps.length > 1) {
61
+ tags.push('multistep')
62
+ }
63
+ const customLabels = getMatchingLabels(route, routeLabels)
64
+ return [tags, customLabels]
65
+ }, [route.tags, route, routeLabels])
60
66
 
61
67
  const cardContent = (
62
68
  <Box
@@ -74,18 +80,37 @@ export const RouteCard: React.FC<
74
80
  flexWrap: 'wrap',
75
81
  }}
76
82
  >
77
- {tags?.map((tag) => (
78
- <CardLabel
79
- variant={
80
- tag === 'GASLESS' ? 'success' : active ? 'secondary' : undefined
81
- }
82
- key={tag}
83
- >
84
- <CardLabelTypography>
85
- {t(`main.tags.${tag.toLowerCase()}` as any)}
86
- </CardLabelTypography>
87
- </CardLabel>
88
- ))}
83
+ {tags?.map((tag) => {
84
+ const formattedTag = tag.toLowerCase()
85
+ const tooltipKey = `tooltip.${formattedTag}` as any
86
+ const tooltipText = t(tooltipKey)
87
+ const hasTooltip = tooltipText !== tooltipKey
88
+
89
+ const cardLabel = (
90
+ <CardLabel
91
+ variant={
92
+ tag === 'gasless'
93
+ ? 'success'
94
+ : active
95
+ ? 'secondary'
96
+ : undefined
97
+ }
98
+ key={tag}
99
+ >
100
+ <CardLabelTypography>
101
+ {t(`main.tags.${formattedTag}` as any)}
102
+ </CardLabelTypography>
103
+ </CardLabel>
104
+ )
105
+
106
+ return hasTooltip ? (
107
+ <Tooltip key={tag} title={tooltipText} arrow placement="top">
108
+ {cardLabel}
109
+ </Tooltip>
110
+ ) : (
111
+ cardLabel
112
+ )
113
+ })}
89
114
  {customLabels.map((label, index) => (
90
115
  <CardLabel key={index} sx={label.sx}>
91
116
  <CardLabelTypography>{label.text}</CardLabelTypography>
@@ -42,7 +42,7 @@ export const RouteCardEssentials: React.FC<RouteCardEssentialsProps> = ({
42
42
  <FeeBreakdownTooltip
43
43
  gasCosts={gasCosts}
44
44
  feeCosts={feeCosts}
45
- relayerSupport={!combinedFeesUSD}
45
+ gasless={!combinedFeesUSD}
46
46
  >
47
47
  <Box
48
48
  sx={{
@@ -100,7 +100,7 @@ export const TransactionDetails: React.FC<TransactionDetailsProps> = ({
100
100
  <FeeBreakdownTooltip
101
101
  gasCosts={gasCosts}
102
102
  feeCosts={feeCosts}
103
- relayerSupport={hasGaslessSupport}
103
+ gasless={hasGaslessSupport}
104
104
  >
105
105
  <Box
106
106
  onClick={toggleCard}
@@ -156,7 +156,7 @@ export const TransactionDetails: React.FC<TransactionDetailsProps> = ({
156
156
  <Typography variant="body2">{t('main.fees.network')}</Typography>
157
157
  <FeeBreakdownTooltip
158
158
  gasCosts={gasCosts}
159
- relayerSupport={hasGaslessSupport}
159
+ gasless={hasGaslessSupport}
160
160
  >
161
161
  <Typography
162
162
  variant="body2"
@@ -1,2 +1,2 @@
1
1
  export const name = '@lifi/widget'
2
- export const version = '3.31.1-alpha.0'
2
+ export const version = '3.32.1'
@@ -34,6 +34,7 @@ export const useFilteredTokensByBalance = (
34
34
  enabled: !!evmAddress,
35
35
  refetchInterval: 30_000, // 30 seconds
36
36
  staleTime: 30_000, // 30 seconds
37
+ retry: false,
37
38
  })
38
39
 
39
40
  const accountsWithFilteredTokens = useMemo(() => {
package/src/i18n/bn.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "আমরা এই পৃষ্ঠাটি খুঁজে পাইনি।",
205
205
  "title": "৪০৪"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "প্রদর্শিত ডেটা {{value}} সেকেন্ড পরে স্বয়ংক্রিয়ভাবে রিফ্রেশ হবে। ম্যানুয়ালি আপডেট করতে এখানে ক্লিক করুন।",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "",
306
307
  "fastest": "",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "প্রতি",
310
312
  "tokenOnChain": "{{chainName}} -এ {{tokenSymbol}}",
package/src/i18n/de.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "Wir konnten diese Seite nicht finden.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "Angezeigte Daten werden nach {{value}} Sekunden automatisch aktualisiert. Klicken Sie hier, um manuell zu aktualisieren.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "",
306
307
  "fastest": "",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "Zu",
310
312
  "tokenOnChain": "{{tokenSymbol}} auf {{chainName}}",
package/src/i18n/en.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "We couldn't find this page.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "We handle the gas, so you can transfer assets without holding native tokens. Network costs are included in the transfer.",
207
+ "multistep": "This route requires multiple transactions to complete the transfer. Each exchange step can contain 1-2 transactions that require a signature.",
208
+ "gasless": "We handle the gas, so you can transfer assets without holding native tokens. Network costs are included in the transfer.",
208
209
  "numberOfSteps": "Each exchange step can contain 1-2 transactions that require a signature.",
209
210
  "priceImpact": "The estimated value difference between the source and destination tokens.",
210
211
  "progressToNextUpdate": "Quotes will update in {{value}} seconds. <0/> Click here to update now.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "Best Return",
306
307
  "fastest": "Fastest",
307
- "gasless": "Gasless"
308
+ "gasless": "Gasless",
309
+ "multistep": "Multi-step"
308
310
  },
309
311
  "to": "To",
310
312
  "tokenOnChain": "{{tokenSymbol}} on {{chainName}}",
package/src/i18n/es.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "No pudimos encontrar esta página.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "Cada paso de intercambio puede contener 1-2 transacciones que requieren una firma.",
209
210
  "priceImpact": "La diferencia de valor estimada entre los tokens de origen y destino.",
210
211
  "progressToNextUpdate": "Los datos mostrados se actualizarán automáticamente después de {{value}} segundos. Haga clic aquí para actualizar manualmente.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "Mejor retorno",
306
307
  "fastest": "Más rápido",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "A",
310
312
  "tokenOnChain": "{{tokenSymbol}} en {{chainName}}",
package/src/i18n/fr.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "Nous n'avons pas trouvé cette page.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "Les données affichées seront automatiquement actualisées après {{value}} secondes. Cliquez ici pour les mettre à jour manuellement.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "Meilleur Retour",
306
307
  "fastest": "Le plus rapide",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "À",
310
312
  "tokenOnChain": "{{tokenSymbol}} sur {{chainName}}",
package/src/i18n/hi.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "हमें यह पेज नहीं मिल सका",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "",
306
307
  "fastest": "",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "",
310
312
  "tokenOnChain": "",
package/src/i18n/id.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "Kami tidak dapat menemukan halaman ini.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "Kami menangani gas, sehingga Anda dapat mentransfer aset tanpa memegang token asli. Biaya jaringan sudah termasuk dalam transfer.",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "Sejumlah langkah swap. Setiap langkah dapat berisi 1-2 transaksi yang memerlukan tanda tangan.",
209
210
  "priceImpact": "Perkiraan perbedaan nilai antara token sumber dan tujuan.",
210
211
  "progressToNextUpdate": "Data yang ditampilkan akan disegarkan secara otomatis setelah {{value}} detik. Klik di sini untuk memperbarui secara manual.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "Pengembalian terbaik",
306
307
  "fastest": "Tercepat",
307
- "gasless": "Tanpa Gas"
308
+ "gasless": "Tanpa Gas",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "Kepada",
310
312
  "tokenOnChain": "{{tokenSymbol}} di {{chainName}}",
package/src/i18n/it.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "Non siamo riusciti a trovare questa pagina.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "I dati visualizzati si aggiorneranno automaticamente dopo {{value}} secondi. Fai click qui per aggiornare manualmente.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "",
306
307
  "fastest": "",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "A",
310
312
  "tokenOnChain": "{{tokenSymbol}} su {{chainName}}",
package/src/i18n/ja.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "このページは見つかりませんでした。",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "見積もりは {{value}} 秒後に更新されます。<0/>今すぐ更新するにはここをクリックしてください。",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "最良",
306
307
  "fastest": "最速",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "To",
310
312
  "tokenOnChain": "{{chainName}} の {{tokenSymbol}}",
package/src/i18n/ko.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "페이지를 찾을 수 없습니다.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "표시된 데이터가 {{value}} 초 후에 자동 새로고침 됩니다. 수동으로 업데이트 하려면 여기를 클릭하십시오.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "",
306
307
  "fastest": "",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "도착",
310
312
  "tokenOnChain": "{{chainName}}의 {{tokenSymbol}}",
package/src/i18n/pl.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "",
205
205
  "title": ""
206
206
  },
207
- "relayerService": "",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "",
209
210
  "priceImpact": "",
210
211
  "progressToNextUpdate": "",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "",
306
307
  "fastest": "",
307
- "gasless": ""
308
+ "gasless": "",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "",
310
312
  "tokenOnChain": "",
package/src/i18n/pt.json CHANGED
@@ -204,7 +204,8 @@
204
204
  "text": "Não conseguimos encontrar esta página.",
205
205
  "title": "404"
206
206
  },
207
- "relayerService": "Nós lidamos com o gás, por isso você pode transferir ativos sem possuir tokens nativos. Os custos de rede são incluídos na transferência.",
207
+ "multistep": "",
208
+ "gasless": "",
208
209
  "numberOfSteps": "Cada etapa da conversão pode conter 1-2 transações que requerem assinatura.",
209
210
  "priceImpact": "A diferença de valor estimado entre os tokens de origem e de destino.",
210
211
  "progressToNextUpdate": "Os dados exibidos serão atualizados automaticamente após {{value}} segundos. Clique aqui para atualizar manualmente.",
@@ -304,7 +305,8 @@
304
305
  "tags": {
305
306
  "cheapest": "Melhor retorno",
306
307
  "fastest": "Mais rápido",
307
- "gasless": "Sem gás"
308
+ "gasless": "Sem gás",
309
+ "multistep": ""
308
310
  },
309
311
  "to": "Para",
310
312
  "tokenOnChain": "{{tokenSymbol}} na {{chainName}}",