0xtrails 0.2.0 → 0.2.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.
- package/dist/analytics.d.ts +1 -0
- package/dist/analytics.d.ts.map +1 -1
- package/dist/{ccip-D6ToCrWc.js → ccip-BbfANth7.js} +1 -1
- package/dist/chains.d.ts.map +1 -1
- package/dist/config.d.ts +1 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/constants.d.ts +2 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/gasless.d.ts +19 -7
- package/dist/gasless.d.ts.map +1 -1
- package/dist/{index-BqgeTLL8.js → index-WpIVoh3X.js} +27626 -26572
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +68 -68
- package/dist/indexerClient.d.ts +10 -0
- package/dist/indexerClient.d.ts.map +1 -1
- package/dist/intentEntrypoint.d.ts +40 -14
- package/dist/intentEntrypoint.d.ts.map +1 -1
- package/dist/intents.d.ts.map +1 -1
- package/dist/prepareSend.d.ts +11 -8
- package/dist/prepareSend.d.ts.map +1 -1
- package/dist/relayer.d.ts.map +1 -1
- package/dist/trails.d.ts.map +1 -1
- package/dist/trailsClient.d.ts.map +1 -1
- package/dist/trailsRouter.d.ts +22 -0
- package/dist/trailsRouter.d.ts.map +1 -0
- package/dist/transactions.d.ts +0 -1
- package/dist/transactions.d.ts.map +1 -1
- package/dist/widget/components/AccountSettings.d.ts.map +1 -1
- package/dist/widget/components/ClassicSwap.d.ts.map +1 -1
- package/dist/widget/components/ConfigDisplay.d.ts.map +1 -1
- package/dist/widget/components/ConnectWallet.d.ts.map +1 -1
- package/dist/widget/components/ConnectedWallets.d.ts.map +1 -1
- package/dist/widget/components/Earn.d.ts.map +1 -1
- package/dist/widget/components/FeeOption.d.ts +22 -0
- package/dist/widget/components/FeeOption.d.ts.map +1 -0
- package/dist/widget/components/FeeOptions.d.ts +13 -17
- package/dist/widget/components/FeeOptions.d.ts.map +1 -1
- package/dist/widget/components/Fund.d.ts.map +1 -1
- package/dist/widget/components/FundMethods.d.ts +1 -1
- package/dist/widget/components/FundMethods.d.ts.map +1 -1
- package/dist/widget/components/FundSendForm.d.ts.map +1 -1
- package/dist/widget/components/MeshConnectExchanges.d.ts +5 -2
- package/dist/widget/components/MeshConnectExchanges.d.ts.map +1 -1
- package/dist/widget/components/MeshConnectFlow.d.ts +2 -0
- package/dist/widget/components/MeshConnectFlow.d.ts.map +1 -1
- package/dist/widget/components/NativeGasOption.d.ts +12 -0
- package/dist/widget/components/NativeGasOption.d.ts.map +1 -0
- package/dist/widget/components/Pay.d.ts.map +1 -1
- package/dist/widget/components/PaySendForm.d.ts.map +1 -1
- package/dist/widget/components/QuoteDetails.d.ts.map +1 -1
- package/dist/widget/components/TokenSelector.d.ts.map +1 -1
- package/dist/widget/components/UserPreferences.d.ts.map +1 -1
- package/dist/widget/hooks/useBack.d.ts +2 -0
- package/dist/widget/hooks/useBack.d.ts.map +1 -1
- package/dist/widget/hooks/useCurrentScreen.d.ts +1 -1
- package/dist/widget/hooks/useCurrentScreen.d.ts.map +1 -1
- package/dist/widget/hooks/useDefaultTokenSelection.d.ts.map +1 -1
- package/dist/widget/hooks/useSelectedFeeToken.d.ts +32 -0
- package/dist/widget/hooks/useSelectedFeeToken.d.ts.map +1 -0
- package/dist/widget/hooks/useSelectedMeshExchange.d.ts +14 -0
- package/dist/widget/hooks/useSelectedMeshExchange.d.ts.map +1 -0
- package/dist/widget/hooks/useSendForm.d.ts +8 -13
- package/dist/widget/hooks/useSendForm.d.ts.map +1 -1
- package/dist/widget/index.js +1 -1
- package/dist/widget/widget.d.ts.map +1 -1
- package/package.json +29 -28
- package/src/analytics.ts +6 -0
- package/src/chains.ts +10 -0
- package/src/config.ts +25 -10
- package/src/constants.ts +11 -10
- package/src/gasless.ts +162 -109
- package/src/index.ts +1 -1
- package/src/indexerClient.ts +73 -1
- package/src/intentEntrypoint.ts +66 -101
- package/src/intents.ts +0 -2
- package/src/prepareSend.ts +1409 -887
- package/src/relayer.ts +4 -3
- package/src/trails.ts +1 -3
- package/src/trailsClient.ts +4 -1
- package/src/{balanceInjector.ts → trailsRouter.ts} +14 -14
- package/src/transactions.ts +4 -54
- package/src/widget/compiled.css +1 -1
- package/src/widget/components/AccountSettings.tsx +7 -1
- package/src/widget/components/ClassicSwap.tsx +173 -175
- package/src/widget/components/ConfigDisplay.tsx +34 -1
- package/src/widget/components/ConnectWallet.tsx +168 -11
- package/src/widget/components/ConnectedWallets.tsx +184 -102
- package/src/widget/components/DebugToast.tsx +3 -3
- package/src/widget/components/Earn.tsx +4 -27
- package/src/widget/components/FeeOption.tsx +78 -0
- package/src/widget/components/FeeOptions.tsx +192 -127
- package/src/widget/components/Fund.tsx +18 -27
- package/src/widget/components/FundMethods.tsx +3 -3
- package/src/widget/components/FundSendForm.tsx +0 -33
- package/src/widget/components/MeshConnectExchanges.tsx +32 -3
- package/src/widget/components/MeshConnectFlow.tsx +23 -4
- package/src/widget/components/NativeGasOption.tsx +99 -0
- package/src/widget/components/Pay.tsx +36 -32
- package/src/widget/components/PaySendForm.tsx +0 -37
- package/src/widget/components/QuoteDetails.tsx +0 -29
- package/src/widget/components/TokenSelector.tsx +11 -0
- package/src/widget/components/TransferPendingVertical.tsx +1 -1
- package/src/widget/components/UserPreferences.tsx +3 -4
- package/src/widget/hooks/useBack.tsx +4 -0
- package/src/widget/hooks/useCurrentScreen.tsx +1 -0
- package/src/widget/hooks/useDefaultTokenSelection.tsx +3 -7
- package/src/widget/hooks/useSelectedFeeToken.tsx +299 -0
- package/src/widget/hooks/useSelectedMeshExchange.tsx +46 -0
- package/src/widget/hooks/useSendForm.ts +78 -23
- package/src/widget/widget.tsx +173 -111
- package/dist/balanceInjector.d.ts +0 -22
- package/dist/balanceInjector.d.ts.map +0 -1
package/src/widget/widget.tsx
CHANGED
|
@@ -121,6 +121,7 @@ import {
|
|
|
121
121
|
useOriginSelectedToken as useSelectedToken,
|
|
122
122
|
} from "./hooks/useOriginSelectedToken.js"
|
|
123
123
|
import { DestinationSelectedTokenProvider } from "./hooks/useDestinationSelectedToken.js"
|
|
124
|
+
import { SelectedFeeTokenProvider } from "./hooks/useSelectedFeeToken.js"
|
|
124
125
|
import { SelectedRecipientProvider } from "./hooks/useSelectedRecipient.js"
|
|
125
126
|
import { SwapAmountProvider } from "./hooks/useSwapAmount.js"
|
|
126
127
|
import { ChainFilterProvider } from "./hooks/useChainFilter.js"
|
|
@@ -137,6 +138,11 @@ import {
|
|
|
137
138
|
} from "./hooks/useCurrentScreen.js"
|
|
138
139
|
import { BackProvider, useBack } from "./hooks/useBack.js"
|
|
139
140
|
import { DefaultTokenSelectionProvider } from "./hooks/useDefaultTokenSelection.js"
|
|
141
|
+
import {
|
|
142
|
+
SelectedMeshExchangeProvider,
|
|
143
|
+
useSelectedMeshExchange,
|
|
144
|
+
} from "./hooks/useSelectedMeshExchange.js"
|
|
145
|
+
import { MeshConnectExchanges } from "./components/MeshConnectExchanges.js"
|
|
140
146
|
|
|
141
147
|
export const aaveClient = AaveClient.create()
|
|
142
148
|
|
|
@@ -438,10 +444,16 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
438
444
|
const { recentTokens, addRecentToken } = useRecentTokens(address)
|
|
439
445
|
const { wallets: allWallets } = useWallets()
|
|
440
446
|
const { selectedToken, setSelectedToken } = useSelectedToken()
|
|
447
|
+
const { selectedExchange } = useSelectedMeshExchange()
|
|
441
448
|
const [isModalOpen, setIsModalOpen] = useState(false)
|
|
442
449
|
const [currentMode, setCurrentMode] = useState<Mode>(mode)
|
|
443
450
|
const { currentScreen, setCurrentScreen } = useCurrentScreen()
|
|
444
|
-
const {
|
|
451
|
+
const {
|
|
452
|
+
goBack: handleBack,
|
|
453
|
+
clearHistory,
|
|
454
|
+
isNavigatingBack,
|
|
455
|
+
getHistory,
|
|
456
|
+
} = useBack()
|
|
445
457
|
const [previousAddress, setPreviousAddress] = useState<string | undefined>(
|
|
446
458
|
address,
|
|
447
459
|
)
|
|
@@ -486,6 +498,22 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
486
498
|
const { connectAsync } = useConnect()
|
|
487
499
|
const [isInitialScreenSet, setIsInitialScreenSet] = useState(false)
|
|
488
500
|
|
|
501
|
+
const getInitialScreenForMode = useCallback((mode: Mode) => {
|
|
502
|
+
if (mode === "swap") {
|
|
503
|
+
return "swap"
|
|
504
|
+
} else if (mode === "receive") {
|
|
505
|
+
return "receive"
|
|
506
|
+
} else if (mode === "earn") {
|
|
507
|
+
return "earn"
|
|
508
|
+
} else if (mode === "fund") {
|
|
509
|
+
return "fund-form"
|
|
510
|
+
} else if (mode === "pay") {
|
|
511
|
+
return "send-form"
|
|
512
|
+
} else {
|
|
513
|
+
return "account-settings"
|
|
514
|
+
}
|
|
515
|
+
}, [])
|
|
516
|
+
|
|
489
517
|
// Set proper initial screen based on connection state and mode
|
|
490
518
|
useEffect(() => {
|
|
491
519
|
if (isInitialScreenSet) {
|
|
@@ -494,19 +522,7 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
494
522
|
|
|
495
523
|
let properInitialScreen: Screen = "connect"
|
|
496
524
|
if (isConnected) {
|
|
497
|
-
|
|
498
|
-
properInitialScreen = "swap"
|
|
499
|
-
} else if (currentMode === "receive") {
|
|
500
|
-
properInitialScreen = "receive"
|
|
501
|
-
} else if (currentMode === "earn") {
|
|
502
|
-
properInitialScreen = "earn"
|
|
503
|
-
} else if (currentMode === "fund") {
|
|
504
|
-
properInitialScreen = "fund-form"
|
|
505
|
-
} else if (currentMode === "pay") {
|
|
506
|
-
properInitialScreen = "send-form"
|
|
507
|
-
} else {
|
|
508
|
-
properInitialScreen = "tokens"
|
|
509
|
-
}
|
|
525
|
+
properInitialScreen = getInitialScreenForMode(currentMode)
|
|
510
526
|
} else if (currentMode === "receive") {
|
|
511
527
|
properInitialScreen = "receive"
|
|
512
528
|
}
|
|
@@ -527,6 +543,7 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
527
543
|
currentScreen,
|
|
528
544
|
setCurrentScreen,
|
|
529
545
|
isInitialScreenSet,
|
|
546
|
+
getInitialScreenForMode,
|
|
530
547
|
])
|
|
531
548
|
|
|
532
549
|
const defaultButtonText = useMemo(() => {
|
|
@@ -797,6 +814,7 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
797
814
|
) {
|
|
798
815
|
if (!alreadyRedirectedToTokens) {
|
|
799
816
|
setAlreadyRedirectedToTokens(true)
|
|
817
|
+
const history = getHistory()
|
|
800
818
|
logger.console.log(
|
|
801
819
|
"[trails-sdk] Post-connection navigation triggered",
|
|
802
820
|
{
|
|
@@ -804,22 +822,48 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
804
822
|
alreadyRedirectedToTokens,
|
|
805
823
|
isConnected,
|
|
806
824
|
currentMode,
|
|
825
|
+
history,
|
|
807
826
|
},
|
|
808
827
|
)
|
|
809
|
-
|
|
810
|
-
if
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
828
|
+
|
|
829
|
+
// Check if we came from account-settings -> wallet-list pattern
|
|
830
|
+
// Look for this pattern in the last 4-5 screens to handle any intermediate screens
|
|
831
|
+
const historyLength = history.length
|
|
832
|
+
logger.console.log("[trails-sdk] Full navigation history:", history)
|
|
833
|
+
|
|
834
|
+
// Iterate from older to newer screens to find the pattern
|
|
835
|
+
let foundAccountSettings = false
|
|
836
|
+
let foundWalletListAfterAccountSettings = false
|
|
837
|
+
|
|
838
|
+
for (
|
|
839
|
+
let i = Math.max(0, historyLength - 5);
|
|
840
|
+
i < historyLength - 1;
|
|
841
|
+
i++
|
|
842
|
+
) {
|
|
843
|
+
if (history[i] === "account-settings") {
|
|
844
|
+
foundAccountSettings = true
|
|
845
|
+
}
|
|
846
|
+
if (history[i] === "wallet-list" && foundAccountSettings) {
|
|
847
|
+
foundWalletListAfterAccountSettings = true
|
|
848
|
+
break // Found the pattern, no need to continue
|
|
849
|
+
}
|
|
850
|
+
}
|
|
851
|
+
|
|
852
|
+
if (foundAccountSettings && foundWalletListAfterAccountSettings) {
|
|
853
|
+
logger.console.log(
|
|
854
|
+
"[trails-sdk] Came from account-settings -> wallet-list flow, returning to account-settings",
|
|
855
|
+
)
|
|
856
|
+
setCurrentScreen("account-settings")
|
|
857
|
+
return
|
|
822
858
|
}
|
|
859
|
+
|
|
860
|
+
console.log(
|
|
861
|
+
"[trails-sdk] Using default navigation for mode:",
|
|
862
|
+
currentMode,
|
|
863
|
+
)
|
|
864
|
+
|
|
865
|
+
const initialScreen = getInitialScreenForMode(currentMode)
|
|
866
|
+
setCurrentScreen(initialScreen)
|
|
823
867
|
}
|
|
824
868
|
}
|
|
825
869
|
} else {
|
|
@@ -842,6 +886,8 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
842
886
|
currentMode,
|
|
843
887
|
isNavigatingBack,
|
|
844
888
|
setCurrentScreen,
|
|
889
|
+
getHistory,
|
|
890
|
+
getInitialScreenForMode,
|
|
845
891
|
])
|
|
846
892
|
|
|
847
893
|
useEffect(() => {
|
|
@@ -910,6 +956,7 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
910
956
|
const screensToReset = [
|
|
911
957
|
"send-form",
|
|
912
958
|
"fund-form",
|
|
959
|
+
"swap",
|
|
913
960
|
"wallet-confirmation",
|
|
914
961
|
"earn",
|
|
915
962
|
"swap",
|
|
@@ -919,7 +966,8 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
919
966
|
logger.console.log(
|
|
920
967
|
"[trails-sdk] Resetting to tokens screen due to account change",
|
|
921
968
|
)
|
|
922
|
-
|
|
969
|
+
const initialScreen = getInitialScreenForMode(currentMode)
|
|
970
|
+
setCurrentScreen(initialScreen)
|
|
923
971
|
setSelectedToken(null)
|
|
924
972
|
setError(null)
|
|
925
973
|
setPrepareSendQuote(null)
|
|
@@ -933,8 +981,10 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
933
981
|
address,
|
|
934
982
|
previousAddress,
|
|
935
983
|
currentScreen,
|
|
984
|
+
currentMode,
|
|
936
985
|
setSelectedToken,
|
|
937
986
|
setCurrentScreen,
|
|
987
|
+
getInitialScreenForMode,
|
|
938
988
|
])
|
|
939
989
|
|
|
940
990
|
// Update generated calldata when amount changes in earn mode
|
|
@@ -1026,8 +1076,12 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1026
1076
|
setCurrentScreen("receive")
|
|
1027
1077
|
} else if (currentMode === "earn") {
|
|
1028
1078
|
setCurrentScreen("earn")
|
|
1079
|
+
} else if (currentMode === "fund") {
|
|
1080
|
+
setCurrentScreen("fund-form")
|
|
1081
|
+
} else if (currentMode === "pay") {
|
|
1082
|
+
setCurrentScreen("send-form")
|
|
1029
1083
|
} else {
|
|
1030
|
-
setCurrentScreen("
|
|
1084
|
+
setCurrentScreen("account-settings")
|
|
1031
1085
|
}
|
|
1032
1086
|
}
|
|
1033
1087
|
|
|
@@ -1104,15 +1158,8 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1104
1158
|
}
|
|
1105
1159
|
|
|
1106
1160
|
const handleSendAnother = () => {
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
} else if (currentMode === "receive") {
|
|
1110
|
-
setCurrentScreen("receive")
|
|
1111
|
-
} else if (currentMode === "earn") {
|
|
1112
|
-
setCurrentScreen("earn")
|
|
1113
|
-
} else {
|
|
1114
|
-
setCurrentScreen("tokens")
|
|
1115
|
-
}
|
|
1161
|
+
const initialScreen = getInitialScreenForMode(currentMode)
|
|
1162
|
+
setCurrentScreen(initialScreen)
|
|
1116
1163
|
resetState()
|
|
1117
1164
|
}
|
|
1118
1165
|
|
|
@@ -1388,9 +1435,9 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1388
1435
|
}
|
|
1389
1436
|
}
|
|
1390
1437
|
|
|
1391
|
-
const
|
|
1438
|
+
const handleSelectExchangeList = () => {
|
|
1392
1439
|
setSelectedFundMethod("exchange")
|
|
1393
|
-
setCurrentScreen("
|
|
1440
|
+
setCurrentScreen("mesh-connect-exchanges")
|
|
1394
1441
|
}
|
|
1395
1442
|
|
|
1396
1443
|
const handleNavigateToMeshConnect = (
|
|
@@ -1508,14 +1555,15 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1508
1555
|
<FundMethods
|
|
1509
1556
|
onBack={handleBack}
|
|
1510
1557
|
onSelectWalletConnect={handleSelectWalletConnect}
|
|
1511
|
-
|
|
1558
|
+
onSelectExchangeList={handleSelectExchangeList}
|
|
1512
1559
|
onSelectConnectedAccount={() => {
|
|
1513
1560
|
setSelectedFundMethod("connected-account")
|
|
1514
|
-
|
|
1561
|
+
const initialScreen = getInitialScreenForMode(currentMode)
|
|
1562
|
+
setCurrentScreen(initialScreen)
|
|
1515
1563
|
}}
|
|
1516
1564
|
onSelectQrCode={() => {
|
|
1517
1565
|
setSelectedFundMethod("qr-code")
|
|
1518
|
-
setCurrentScreen(
|
|
1566
|
+
setCurrentScreen(getInitialScreenForMode(currentMode))
|
|
1519
1567
|
}}
|
|
1520
1568
|
/>
|
|
1521
1569
|
)
|
|
@@ -1683,6 +1731,7 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1683
1731
|
toTokenAmount={meshConnectProps?.toTokenAmount}
|
|
1684
1732
|
toChainId={meshConnectProps?.toChainId}
|
|
1685
1733
|
toRecipientAddress={meshConnectProps?.toRecipientAddress}
|
|
1734
|
+
selectedExchange={selectedExchange}
|
|
1686
1735
|
/>
|
|
1687
1736
|
)
|
|
1688
1737
|
case "wallet-connect":
|
|
@@ -1699,7 +1748,7 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1699
1748
|
<WalletList
|
|
1700
1749
|
onBack={handleBack}
|
|
1701
1750
|
onWalletSelect={(walletId) => {
|
|
1702
|
-
console.log(
|
|
1751
|
+
logger.console.log(
|
|
1703
1752
|
"[trails-sdk] Wallet selected from wallet-list:",
|
|
1704
1753
|
walletId,
|
|
1705
1754
|
)
|
|
@@ -1708,13 +1757,13 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1708
1757
|
walletConnectConnector
|
|
1709
1758
|
) {
|
|
1710
1759
|
saveLastClickedWallet(walletId)
|
|
1711
|
-
console.log(
|
|
1760
|
+
logger.console.log(
|
|
1712
1761
|
"[trails-sdk] WalletConnect selected, going to wallet-connect screen",
|
|
1713
1762
|
)
|
|
1714
1763
|
setCurrentScreen("wallet-connect")
|
|
1715
1764
|
} else {
|
|
1716
1765
|
saveLastClickedWallet(walletId)
|
|
1717
|
-
console.log(
|
|
1766
|
+
logger.console.log(
|
|
1718
1767
|
"[trails-sdk] Regular wallet selected, going to wallet-connection-pending",
|
|
1719
1768
|
)
|
|
1720
1769
|
// Reset the redirect flag to prevent immediate navigation
|
|
@@ -1818,7 +1867,7 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1818
1867
|
onBack={handleBack}
|
|
1819
1868
|
isConnected={isConnected}
|
|
1820
1869
|
onConnectWallet={() => setCurrentScreen("connect")}
|
|
1821
|
-
onPay={() => setCurrentScreen("
|
|
1870
|
+
onPay={() => setCurrentScreen("send-form")}
|
|
1822
1871
|
toChainId={toChainId ? Number(toChainId) : undefined}
|
|
1823
1872
|
/>
|
|
1824
1873
|
)
|
|
@@ -1860,6 +1909,13 @@ const WidgetContent = forwardRef<TrailsWidgetRef>((_, ref) => {
|
|
|
1860
1909
|
disconnectHandler={handleWalletDisconnect}
|
|
1861
1910
|
/>
|
|
1862
1911
|
)
|
|
1912
|
+
case "mesh-connect-exchanges":
|
|
1913
|
+
return (
|
|
1914
|
+
<MeshConnectExchanges
|
|
1915
|
+
onBack={handleBack}
|
|
1916
|
+
getInitialScreenForMode={getInitialScreenForMode}
|
|
1917
|
+
/>
|
|
1918
|
+
)
|
|
1863
1919
|
default:
|
|
1864
1920
|
return null
|
|
1865
1921
|
}
|
|
@@ -1984,24 +2040,28 @@ const WidgetInner = forwardRef<TrailsWidgetRef, TrailsWidgetProps>(
|
|
|
1984
2040
|
<BackProvider>
|
|
1985
2041
|
<SelectedTokenProvider>
|
|
1986
2042
|
<DestinationSelectedTokenProvider>
|
|
1987
|
-
<
|
|
1988
|
-
<
|
|
1989
|
-
<
|
|
1990
|
-
<
|
|
1991
|
-
<
|
|
1992
|
-
<
|
|
1993
|
-
<
|
|
1994
|
-
|
|
1995
|
-
<
|
|
1996
|
-
<
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2043
|
+
<SelectedFeeTokenProvider>
|
|
2044
|
+
<SelectedRecipientProvider>
|
|
2045
|
+
<SwapAmountProvider>
|
|
2046
|
+
<ChainFilterProvider>
|
|
2047
|
+
<BalanceVisibleProvider>
|
|
2048
|
+
<SwapSettingsProvider>
|
|
2049
|
+
<ThemePreferenceProvider>
|
|
2050
|
+
<ThemeSyncer />
|
|
2051
|
+
<EarnPoolProvider>
|
|
2052
|
+
<SelectedMeshExchangeProvider>
|
|
2053
|
+
<DefaultTokenSelectionProvider>
|
|
2054
|
+
<WidgetContent ref={ref} />
|
|
2055
|
+
</DefaultTokenSelectionProvider>
|
|
2056
|
+
</SelectedMeshExchangeProvider>
|
|
2057
|
+
</EarnPoolProvider>
|
|
2058
|
+
</ThemePreferenceProvider>
|
|
2059
|
+
</SwapSettingsProvider>
|
|
2060
|
+
</BalanceVisibleProvider>
|
|
2061
|
+
</ChainFilterProvider>
|
|
2062
|
+
</SwapAmountProvider>
|
|
2063
|
+
</SelectedRecipientProvider>
|
|
2064
|
+
</SelectedFeeTokenProvider>
|
|
2005
2065
|
</DestinationSelectedTokenProvider>
|
|
2006
2066
|
</SelectedTokenProvider>
|
|
2007
2067
|
</BackProvider>
|
|
@@ -2017,52 +2077,54 @@ export const TrailsWidget = forwardRef<TrailsWidgetRef, TrailsWidgetProps>(
|
|
|
2017
2077
|
const sequenceHooksContext = useContext(SequenceHooksContext)
|
|
2018
2078
|
const wagmiContext = useContext(WagmiContext)
|
|
2019
2079
|
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
|
|
2023
|
-
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
|
|
2033
|
-
|
|
2034
|
-
|
|
2035
|
-
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
|
|
2039
|
-
|
|
2040
|
-
|
|
2041
|
-
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
props.
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
props.
|
|
2062
|
-
props.
|
|
2063
|
-
|
|
2064
|
-
|
|
2065
|
-
|
|
2080
|
+
// Set global configuration immediately when component renders
|
|
2081
|
+
// This ensures the config is available before sequenceConfig is created
|
|
2082
|
+
if (props.appId) {
|
|
2083
|
+
logger.console.warn("appId is deprecated. Use projectAccessKey instead.")
|
|
2084
|
+
setSequenceProjectAccessKey(props.appId)
|
|
2085
|
+
}
|
|
2086
|
+
if (props.sequenceEnv) {
|
|
2087
|
+
logger.console.log("props.sequenceEnv", props.sequenceEnv)
|
|
2088
|
+
setSequenceEnv(props.sequenceEnv)
|
|
2089
|
+
}
|
|
2090
|
+
if (props.projectAccessKey) {
|
|
2091
|
+
logger.console.log("props.projectAccessKey", props.projectAccessKey)
|
|
2092
|
+
setSequenceProjectAccessKey(props.projectAccessKey)
|
|
2093
|
+
}
|
|
2094
|
+
if (props.sequenceIndexerUrl) {
|
|
2095
|
+
logger.console.log("props.sequenceIndexerUrl", props.sequenceIndexerUrl)
|
|
2096
|
+
setSequenceIndexerUrl(props.sequenceIndexerUrl)
|
|
2097
|
+
}
|
|
2098
|
+
if (props.sequenceApiUrl) {
|
|
2099
|
+
logger.console.log("props.sequenceApiUrl", props.sequenceApiUrl)
|
|
2100
|
+
setSequenceApiUrl(props.sequenceApiUrl)
|
|
2101
|
+
}
|
|
2102
|
+
if (props.trailsApiUrl) {
|
|
2103
|
+
logger.console.log("props.trailsApiUrl", props.trailsApiUrl)
|
|
2104
|
+
setTrailsApiUrl(props.trailsApiUrl)
|
|
2105
|
+
}
|
|
2106
|
+
if (props.sequenceNodeGatewayUrl) {
|
|
2107
|
+
logger.console.log(
|
|
2108
|
+
"props.sequenceNodeGatewayUrl",
|
|
2109
|
+
props.sequenceNodeGatewayUrl,
|
|
2110
|
+
)
|
|
2111
|
+
setSequenceNodeGatewayUrl(props.sequenceNodeGatewayUrl)
|
|
2112
|
+
}
|
|
2113
|
+
if (props.walletConnectProjectId) {
|
|
2114
|
+
logger.console.log(
|
|
2115
|
+
"props.walletConnectProjectId",
|
|
2116
|
+
props.walletConnectProjectId,
|
|
2117
|
+
)
|
|
2118
|
+
setWalletConnectProjectId(props.walletConnectProjectId)
|
|
2119
|
+
}
|
|
2120
|
+
if (props.slippageTolerance !== undefined) {
|
|
2121
|
+
logger.console.log("props.slippageTolerance", props.slippageTolerance)
|
|
2122
|
+
setSlippageTolerance(String(props.slippageTolerance))
|
|
2123
|
+
}
|
|
2124
|
+
if (typeof props.debug === "boolean") {
|
|
2125
|
+
logger.console.log("props.debug", props.debug)
|
|
2126
|
+
setDebug(props.debug)
|
|
2127
|
+
}
|
|
2066
2128
|
|
|
2067
2129
|
const wagmiConfig = React.useMemo(() => {
|
|
2068
2130
|
const chains = getAllChains() as any
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
export declare const TRAILS_CONTRACT_PLACEHOLDER_AMOUNT = 100720434726375746010458024839911619878118703404436202866098422983289408962287n;
|
|
2
|
-
export declare function encodeBalanceInjectorCalldata({ token, target, calldata, amountOffset, placeholder, }: {
|
|
3
|
-
token: string;
|
|
4
|
-
target: string;
|
|
5
|
-
calldata: `0x${string}`;
|
|
6
|
-
amountOffset: number;
|
|
7
|
-
placeholder: bigint;
|
|
8
|
-
}): `0x${string}`;
|
|
9
|
-
export declare function wrapCalldataWithBalanceInjectorIfNeeded({ token, target, calldata, originChainId, destinationChainId, amount, originTokenAddress, destinationTokenAddress, }: {
|
|
10
|
-
token: string;
|
|
11
|
-
target: string;
|
|
12
|
-
calldata: `0x${string}`;
|
|
13
|
-
originChainId: number;
|
|
14
|
-
destinationChainId: number;
|
|
15
|
-
amount: string;
|
|
16
|
-
originTokenAddress: string;
|
|
17
|
-
destinationTokenAddress: string;
|
|
18
|
-
}): {
|
|
19
|
-
encodedCalldata: `0x${string}`;
|
|
20
|
-
balanceInjectorAddress: string;
|
|
21
|
-
} | null;
|
|
22
|
-
//# sourceMappingURL=balanceInjector.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"balanceInjector.d.ts","sourceRoot":"","sources":["../src/balanceInjector.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kCAAkC,kFACsB,CAAA;AA4BrE,wBAAgB,6BAA6B,CAAC,EAC5C,KAAK,EACL,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,WAAW,GACZ,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACpB,iBAUA;AAED,wBAAgB,uCAAuC,CAAC,EACtD,KAAK,EACL,MAAM,EACN,QAAQ,EACR,aAAa,EACb,kBAAkB,EAClB,MAAM,EACN,kBAAkB,EAClB,uBAAuB,GACxB,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,kBAAkB,EAAE,MAAM,CAAA;IAC1B,uBAAuB,EAAE,MAAM,CAAA;CAChC,GAAG;IAAE,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;IAAC,sBAAsB,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA4C5E"}
|