@embarkai/ui-kit 0.4.72 → 0.4.74
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/iframe/index.html +1 -1
- package/dist/iframe/main.js +1 -1
- package/dist/index.cjs +1198 -631
- package/dist/index.d.cts +229 -8
- package/dist/index.d.ts +229 -8
- package/dist/index.js +1257 -693
- package/dist/styles.css +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -5562,6 +5562,12 @@ var init_en = __esm({
|
|
|
5562
5562
|
selectNone: "Select None",
|
|
5563
5563
|
errors: {
|
|
5564
5564
|
oops: "Oops, something went wrong. Please try again."
|
|
5565
|
+
},
|
|
5566
|
+
onboarding: {
|
|
5567
|
+
tourButton: {
|
|
5568
|
+
title: "Tour Button",
|
|
5569
|
+
description: 'Tours are available under the "?" buttons of embarkAI menus. Click to have menu tour'
|
|
5570
|
+
}
|
|
5565
5571
|
}
|
|
5566
5572
|
},
|
|
5567
5573
|
auth: {
|
|
@@ -5614,22 +5620,31 @@ var init_en = __esm({
|
|
|
5614
5620
|
actions: {
|
|
5615
5621
|
send: "SEND",
|
|
5616
5622
|
confirm: "CONFIRM SEND"
|
|
5623
|
+
},
|
|
5624
|
+
onboarding: {
|
|
5625
|
+
sendMenu: {
|
|
5626
|
+
title: "Send Menu",
|
|
5627
|
+
description: "Select a crypto asset to send and enter the recipient address and amount."
|
|
5628
|
+
},
|
|
5629
|
+
sendCryptoSummary: {
|
|
5630
|
+
title: "Send Summary",
|
|
5631
|
+
description: "Review the details of your crypto transfer before confirming, then confirm the transaction."
|
|
5632
|
+
}
|
|
5617
5633
|
}
|
|
5618
5634
|
},
|
|
5619
5635
|
bridgeMenu: {
|
|
5620
|
-
title: "Bridge
|
|
5636
|
+
title: "Bridge asset",
|
|
5621
5637
|
labels: {
|
|
5622
|
-
sender: "Sender",
|
|
5623
5638
|
bridgeAsset: "Bridge {{asset}}",
|
|
5624
|
-
|
|
5625
|
-
selectToken: "Select
|
|
5639
|
+
selectSender: "Select sender wallet",
|
|
5640
|
+
selectToken: "Select asset for bridging",
|
|
5626
5641
|
estimations: "Estimations",
|
|
5627
5642
|
estimatedFee: "Estimated Fee",
|
|
5628
|
-
availableChainPairs: "Select
|
|
5629
|
-
toChain: "To
|
|
5630
|
-
fromChain: "From
|
|
5643
|
+
availableChainPairs: "Select chain pair",
|
|
5644
|
+
toChain: "To chain",
|
|
5645
|
+
fromChain: "From chain",
|
|
5631
5646
|
optionalRecipient: "Recipient (optional, if empty - destination chain address = sender address on origin chain)",
|
|
5632
|
-
confirm: "Confirm
|
|
5647
|
+
confirm: "Confirm bridge",
|
|
5633
5648
|
bridgeTransactions: "Bridge TXs"
|
|
5634
5649
|
},
|
|
5635
5650
|
quote: {
|
|
@@ -5646,6 +5661,7 @@ var init_en = __esm({
|
|
|
5646
5661
|
},
|
|
5647
5662
|
actions: {
|
|
5648
5663
|
connectWallet: "CONNECT WALLET",
|
|
5664
|
+
addExternalWalletProfile: "ADD WALLET PROFILE",
|
|
5649
5665
|
bridge: "BRIDGE",
|
|
5650
5666
|
estimateQuote: "ESTIMATE QUOTE",
|
|
5651
5667
|
bridgeAsset: "BRIDGE {{asset}}",
|
|
@@ -5670,7 +5686,37 @@ var init_en = __esm({
|
|
|
5670
5686
|
noConnections: "No connections found between {{originChain}} & {{destinationChain}}",
|
|
5671
5687
|
wrongNetwork: " Please switch embarkAi to origin chain to proceed with bridging",
|
|
5672
5688
|
noHistory: "No bridge history yet. Bridge your assets to see the history here.",
|
|
5673
|
-
unsupportedNetwork:
|
|
5689
|
+
unsupportedNetwork: 'Bridging from {{originChain}} not yet possible by {{sender}}. Try swapping network pair, or select different token route, or change sender wallet, or if sender is embarkAI make sure it is switched to the corresponding "From Chain" network.'
|
|
5690
|
+
},
|
|
5691
|
+
onboarding: {
|
|
5692
|
+
bridgeMenu: {
|
|
5693
|
+
title: "Bridge Menu",
|
|
5694
|
+
description: "Sending via Bridging provides a way to send crypto assets across different blockchain networks."
|
|
5695
|
+
},
|
|
5696
|
+
bridgeSenderWalletSelector: {
|
|
5697
|
+
title: "Select sender wallet",
|
|
5698
|
+
description: "EmbarkAI can be authenticated by external wallet as auth-profile provider (Settings -> Profiles).\n External wallet profile can be used as sender (tx signer) for bridging crypto into embarkAI.\n Add external wallet profile if not done yet (Settings -> Profiles) and proceed with provided instructions"
|
|
5699
|
+
},
|
|
5700
|
+
bridgeCryptoAssetSelector: {
|
|
5701
|
+
title: "Select asset to bridge",
|
|
5702
|
+
description: "Bridging happens from one blockchain network to another.\n With this selector pick the asset you want to bridge, then pick the chain pair from available for the asset."
|
|
5703
|
+
},
|
|
5704
|
+
bridgeChainPairSwapper: {
|
|
5705
|
+
title: "Set origin & destination chains for bridging",
|
|
5706
|
+
description: 'Bridge route (chain pair) is used to be bidirectional, meaning that the origin and destination chains can be swapped.\n Use the "\u21C4" button to set the origin and destination chains for bridging.'
|
|
5707
|
+
},
|
|
5708
|
+
bridgeAmountRecipientInputs: {
|
|
5709
|
+
title: "Set amount & optional recipient for bridging",
|
|
5710
|
+
description: "Enter the amount you want to bridge and optionally specify a recipient address. If recipient is empty: destination chain address = sender address on origin chain"
|
|
5711
|
+
},
|
|
5712
|
+
bridgeEstimateQuoteButton: {
|
|
5713
|
+
title: "Estimate quote for bridging",
|
|
5714
|
+
description: "'Get an estimation of the bridging transaction before actual bridging. This helps you make an informed decision before proceeding with the bridge.'"
|
|
5715
|
+
},
|
|
5716
|
+
bridgeEstimatedQuoteMenu: {
|
|
5717
|
+
title: "Estimated bridging quote",
|
|
5718
|
+
description: "Make sure to check bridge setup & the estimated quote for bridging, then confirm the transaction."
|
|
5719
|
+
}
|
|
5674
5720
|
}
|
|
5675
5721
|
},
|
|
5676
5722
|
receiveMenu: {
|
|
@@ -5719,6 +5765,24 @@ var init_en = __esm({
|
|
|
5719
5765
|
inputPlaceholder: {
|
|
5720
5766
|
selectCurrencies: "Select crypto and fiat",
|
|
5721
5767
|
providerMin: "{{provider}}: Minimum {{minimum}} {{currency}} required"
|
|
5768
|
+
},
|
|
5769
|
+
onboarding: {
|
|
5770
|
+
buyMenu: {
|
|
5771
|
+
title: "Buy Menu",
|
|
5772
|
+
description: "Here you can make crypto purchases."
|
|
5773
|
+
},
|
|
5774
|
+
providerSelector: {
|
|
5775
|
+
title: "Select a Provider",
|
|
5776
|
+
description: "Cick here to choose a provider for your crypto purchase."
|
|
5777
|
+
},
|
|
5778
|
+
binanceMenu: {
|
|
5779
|
+
title: "Set Purchase Details",
|
|
5780
|
+
description: "Click here to set the details of your crypto purchase."
|
|
5781
|
+
},
|
|
5782
|
+
binanceEstimate: {
|
|
5783
|
+
title: "Confirm your purchase",
|
|
5784
|
+
description: "Review the details of your purchase before confirming."
|
|
5785
|
+
}
|
|
5722
5786
|
}
|
|
5723
5787
|
},
|
|
5724
5788
|
portfolioMenu: {
|
|
@@ -5907,6 +5971,12 @@ var init_ru = __esm({
|
|
|
5907
5971
|
selectNone: "\u0421\u043D\u044F\u0442\u044C \u0432\u044B\u0431\u043E\u0440",
|
|
5908
5972
|
errors: {
|
|
5909
5973
|
oops: "\u0423\u043F\u0441, \u0447\u0442\u043E-\u0442\u043E \u043F\u043E\u0448\u043B\u043E \u043D\u0435 \u0442\u0430\u043A. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0441\u043D\u043E\u0432\u0430."
|
|
5974
|
+
},
|
|
5975
|
+
onboarding: {
|
|
5976
|
+
tourButton: {
|
|
5977
|
+
title: "\u041A\u043D\u043E\u043F\u043A\u0430 \u0442\u0443\u0440\u0430",
|
|
5978
|
+
description: "\u0422\u0443\u0440\u044B \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B \u043F\u043E\u0434 \u043A\u043D\u043E\u043F\u043A\u0430\u043C\u0438 \xAB?\xBB \u043C\u0435\u043D\u044E embarkAI. \u041D\u0430\u0436\u043C\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0439\u0442\u0438 \u0442\u0443\u0440 \u043F\u043E \u043C\u0435\u043D\u044E"
|
|
5979
|
+
}
|
|
5910
5980
|
}
|
|
5911
5981
|
},
|
|
5912
5982
|
auth: {
|
|
@@ -5959,14 +6029,23 @@ var init_ru = __esm({
|
|
|
5959
6029
|
actions: {
|
|
5960
6030
|
send: "\u041E\u0422\u041F\u0420\u0410\u0412\u0418\u0422\u042C",
|
|
5961
6031
|
confirm: "\u041F\u041E\u0414\u0422\u0412\u0415\u0420\u0414\u0418\u0422\u042C \u041E\u0422\u041F\u0420\u0410\u0412\u041A\u0423"
|
|
6032
|
+
},
|
|
6033
|
+
onboarding: {
|
|
6034
|
+
sendMenu: {
|
|
6035
|
+
title: "\u041C\u0435\u043D\u044E \u043E\u0442\u043F\u0440\u0430\u0432\u043A\u0438",
|
|
6036
|
+
description: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043A\u0440\u0438\u043F\u0442\u043E\u0430\u043A\u0442\u0438\u0432 \u0434\u043B\u044F \u043E\u0442\u043F\u0440\u0430\u0432\u043A\u0438 \u0438 \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441 \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u0435\u043B\u044F \u0438 \u0441\u0443\u043C\u043C\u0443."
|
|
6037
|
+
},
|
|
6038
|
+
sendCryptoSummary: {
|
|
6039
|
+
title: "\u0421\u0432\u043E\u0434\u043A\u0430 \u043E\u0442\u043F\u0440\u0430\u0432\u043A\u0438",
|
|
6040
|
+
description: "\u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u0434\u0435\u0442\u0430\u043B\u0438 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u0430 \u043F\u0435\u0440\u0435\u0434 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435\u043C, \u0437\u0430\u0442\u0435\u043C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E."
|
|
6041
|
+
}
|
|
5962
6042
|
}
|
|
5963
6043
|
},
|
|
5964
6044
|
bridgeMenu: {
|
|
5965
6045
|
title: "\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0410\u043A\u0442\u0438\u0432",
|
|
5966
6046
|
labels: {
|
|
5967
|
-
sender: "\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C",
|
|
5968
6047
|
bridgeAsset: "\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C {{asset}}",
|
|
5969
|
-
|
|
6048
|
+
selectSender: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043A\u043E\u0448\u0435\u043B\u0451\u043A-\u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C",
|
|
5970
6049
|
selectToken: "\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u043C\u0430\u0440\u0448\u0440\u0443\u0442 \u0442\u043E\u043A\u0435\u043D\u0430",
|
|
5971
6050
|
estimations: "\u041E\u0446\u0435\u043D\u043A\u0438",
|
|
5972
6051
|
estimatedFee: "\u041E\u0436\u0438\u0434\u0430\u0435\u043C\u0430\u044F \u043A\u043E\u043C\u0438\u0441\u0441\u0438\u044F",
|
|
@@ -5991,11 +6070,12 @@ var init_ru = __esm({
|
|
|
5991
6070
|
},
|
|
5992
6071
|
actions: {
|
|
5993
6072
|
connectWallet: "\u041F\u041E\u0414\u041A\u041B\u042E\u0427\u0418\u0422\u042C \u041A\u041E\u0428\u0415\u041B\u0401\u041A",
|
|
6073
|
+
addExternalWalletProfile: "\u0414\u041E\u0411\u0410\u0412\u0418\u0422\u042C \u041F\u0420\u041E\u0424\u0418\u041B\u042C \u041A\u041E\u0428\u0415\u041B\u042C\u041A\u0410",
|
|
5994
6074
|
bridge: "\u041F\u0415\u0420\u0415\u041C\u0415\u0421\u0422\u0418\u0422\u042C",
|
|
5995
6075
|
estimateQuote: "\u0420\u0410\u0421\u0421\u0427\u0418\u0422\u0410\u0422\u042C \u0421\u0422\u041E\u0418\u041C\u041E\u0421\u0422\u042C",
|
|
5996
6076
|
bridgeAsset: "\u041F\u0415\u0420\u0415\u041C\u0415\u0421\u0422\u0418\u0422\u042C {{asset}}",
|
|
5997
6077
|
selectAsset: "\u0412\u042B\u0411\u0420\u0410\u0422\u042C \u0410\u041A\u0422\u0418\u0412",
|
|
5998
|
-
confirmBridge: "\
|
|
6078
|
+
confirmBridge: "\u042F \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044E \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435 {{amount}} {{asset}} \u0432 {{destinationChain}}"
|
|
5999
6079
|
},
|
|
6000
6080
|
statuses: {
|
|
6001
6081
|
balanceInsufficient: "\u041D\u0435\u0434\u043E\u0441\u0442\u0430\u0442\u043E\u0447\u043D\u043E \u0441\u0440\u0435\u0434\u0441\u0442\u0432",
|
|
@@ -6015,7 +6095,37 @@ var init_ru = __esm({
|
|
|
6015
6095
|
noConnections: "\u0421\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u0439 \u043C\u0435\u0436\u0434\u0443 {{originChain}} \u0438 {{destinationChain}} \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E",
|
|
6016
6096
|
wrongNetwork: " \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u0435 EmbarkAI \u043D\u0430 \u0438\u0441\u0445\u043E\u0434\u043D\u0443\u044E \u0441\u0435\u0442\u044C \u0434\u043B\u044F \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F",
|
|
6017
6097
|
noHistory: "\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0439 \u043F\u0443\u0441\u0442\u0430. \u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u0435 \u0432\u0430\u0448\u0438 \u0430\u043A\u0442\u0438\u0432\u044B, \u0447\u0442\u043E\u0431\u044B \u0443\u0432\u0438\u0434\u0435\u0442\u044C \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0437\u0434\u0435\u0441\u044C.",
|
|
6018
|
-
unsupportedNetwork: "\u041F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435 \u0438\u0437
|
|
6098
|
+
unsupportedNetwork: "\u041F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435 \u0438\u0437 {{originChain}} \u043D\u0435 \u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E \u0434\u043B\u044F {{sender}}. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0430\u0440\u0443 \u0441\u0435\u0442\u0435\u0439, \u0432\u044B\u0431\u0440\u0430\u0442\u044C \u0434\u0440\u0443\u0433\u043E\u0439 \u043C\u0430\u0440\u0448\u0440\u0443\u0442 \u0442\u043E\u043A\u0435\u043D\u0430, \u0441\u043C\u0435\u043D\u0438\u0442\u044C \u043A\u043E\u0448\u0435\u043B\u0451\u043A \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044F \u0438\u043B\u0438, \u0435\u0441\u043B\u0438 \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C \u2014 EmbarkAI, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u043E\u043D \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0435\u043D \u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0443\u044E \u0441\u0435\u0442\u044C \xAB\u0418\u0437 \u0441\u0435\u0442\u0438\xBB."
|
|
6099
|
+
},
|
|
6100
|
+
onboarding: {
|
|
6101
|
+
bridgeMenu: {
|
|
6102
|
+
title: "\u041C\u0435\u043D\u044E \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F",
|
|
6103
|
+
description: "\u041E\u0442\u043F\u0440\u0430\u0432\u043A\u0430 \u0447\u0435\u0440\u0435\u0437 \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435 \u043E\u0431\u0435\u0441\u043F\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u043F\u043E\u0441\u043E\u0431 \u043E\u0442\u043F\u0440\u0430\u0432\u043A\u0438 \u043A\u0440\u0438\u043F\u0442\u043E\u0430\u043A\u0442\u0438\u0432\u043E\u0432 \u0447\u0435\u0440\u0435\u0437 \u0440\u0430\u0437\u043D\u044B\u0435 \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D-\u0441\u0435\u0442\u0438."
|
|
6104
|
+
},
|
|
6105
|
+
bridgeSenderWalletSelector: {
|
|
6106
|
+
title: "\u0412\u044B\u0431\u043E\u0440 \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430-\u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044F",
|
|
6107
|
+
description: "EmbarkAI \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043E\u0432\u0430\u043D \u0432\u043D\u0435\u0448\u043D\u0438\u043C \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u043E\u043C \u043A\u0430\u043A \u043F\u043E\u0441\u0442\u0430\u0432\u0449\u0438\u043A \u043F\u0440\u043E\u0444\u0438\u043B\u044F \u0430\u0443\u0442\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0446\u0438\u0438 (\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 -> \u041F\u0440\u043E\u0444\u0438\u043B\u0438).\n \u041F\u0440\u043E\u0444\u0438\u043B\u044C \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430 \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u043A\u0430\u043A \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C (\u043F\u043E\u0434\u043F\u0438\u0441\u0430\u043D\u0442 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439) \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u044B \u0432 embarkAI.\n \u0414\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043F\u0440\u043E\u0444\u0438\u043B\u044C \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430, \u0435\u0441\u043B\u0438 \u044D\u0442\u043E \u0435\u0449\u0451 \u043D\u0435 \u0441\u0434\u0435\u043B\u0430\u043D\u043E (\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 -> \u041F\u0440\u043E\u0444\u0438\u043B\u0438), \u0438 \u0441\u043B\u0435\u0434\u0443\u0439\u0442\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043A\u0446\u0438\u044F\u043C."
|
|
6108
|
+
},
|
|
6109
|
+
bridgeCryptoAssetSelector: {
|
|
6110
|
+
title: "\u0412\u044B\u0431\u043E\u0440 \u0430\u043A\u0442\u0438\u0432\u0430 \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F",
|
|
6111
|
+
description: "\u041F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435 \u043F\u0440\u043E\u0438\u0441\u0445\u043E\u0434\u0438\u0442 \u0438\u0437 \u043E\u0434\u043D\u043E\u0439 \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D-\u0441\u0435\u0442\u0438 \u0432 \u0434\u0440\u0443\u0433\u0443\u044E.\n \u0421 \u043F\u043E\u043C\u043E\u0449\u044C\u044E \u044D\u0442\u043E\u0433\u043E \u0441\u0435\u043B\u0435\u043A\u0442\u043E\u0440\u0430 \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0430\u043A\u0442\u0438\u0432, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0445\u043E\u0442\u0438\u0442\u0435 \u043F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C, \u0437\u0430\u0442\u0435\u043C \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0443\u044E \u0434\u043B\u044F \u043D\u0435\u0433\u043E \u043F\u0430\u0440\u0443 \u0441\u0435\u0442\u0435\u0439."
|
|
6112
|
+
},
|
|
6113
|
+
bridgeChainPairSwapper: {
|
|
6114
|
+
title: "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0430 \u0438\u0441\u0445\u043E\u0434\u043D\u043E\u0439 \u0438 \u0446\u0435\u043B\u0435\u0432\u043E\u0439 \u0441\u0435\u0442\u0438",
|
|
6115
|
+
description: "\u041C\u0430\u0440\u0448\u0440\u0443\u0442 \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F (\u043F\u0430\u0440\u0430 \u0441\u0435\u0442\u0435\u0439) \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0434\u0432\u0443\u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u043D\u044B\u043C, \u0442\u043E \u0435\u0441\u0442\u044C \u0438\u0441\u0445\u043E\u0434\u043D\u0443\u044E \u0438 \u0446\u0435\u043B\u0435\u0432\u0443\u044E \u0441\u0435\u0442\u0438 \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u043C\u0435\u043D\u044F\u0442\u044C \u043C\u0435\u0441\u0442\u0430\u043C\u0438.\n \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \u043A\u043D\u043E\u043F\u043A\u0443 \xAB\u21C4\xBB \u0434\u043B\u044F \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0438 \u0438\u0441\u0445\u043E\u0434\u043D\u043E\u0439 \u0438 \u0446\u0435\u043B\u0435\u0432\u043E\u0439 \u0441\u0435\u0442\u0435\u0439."
|
|
6116
|
+
},
|
|
6117
|
+
bridgeAmountRecipientInputs: {
|
|
6118
|
+
title: "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0430 \u0441\u0443\u043C\u043C\u044B \u0438 \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u0435\u043B\u044F",
|
|
6119
|
+
description: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0441\u0443\u043C\u043C\u0443 \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F \u0438 \u043F\u0440\u0438 \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E\u0441\u0442\u0438 \u0443\u043A\u0430\u0436\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441 \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u0435\u043B\u044F. \u0415\u0441\u043B\u0438 \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u0435\u043B\u044C \u043D\u0435 \u0443\u043A\u0430\u0437\u0430\u043D: \u0430\u0434\u0440\u0435\u0441 \u0432 \u0446\u0435\u043B\u0435\u0432\u043E\u0439 \u0441\u0435\u0442\u0438 \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u0435\u0442 \u0441 \u0430\u0434\u0440\u0435\u0441\u043E\u043C \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044F \u0432 \u0438\u0441\u0445\u043E\u0434\u043D\u043E\u0439 \u0441\u0435\u0442\u0438."
|
|
6120
|
+
},
|
|
6121
|
+
bridgeEstimateQuoteButton: {
|
|
6122
|
+
title: "\u041E\u0446\u0435\u043D\u043A\u0430 \u0441\u0442\u043E\u0438\u043C\u043E\u0441\u0442\u0438 \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F",
|
|
6123
|
+
description: "\u041F\u043E\u043B\u0443\u0447\u0438\u0442\u0435 \u043F\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043B\u044C\u043D\u0443\u044E \u043E\u0446\u0435\u043D\u043A\u0443 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0438 \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F \u0434\u043E \u0444\u0430\u043A\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u044F. \u042D\u0442\u043E \u043F\u043E\u043C\u043E\u0436\u0435\u0442 \u043F\u0440\u0438\u043D\u044F\u0442\u044C \u043E\u0431\u043E\u0441\u043D\u043E\u0432\u0430\u043D\u043D\u043E\u0435 \u0440\u0435\u0448\u0435\u043D\u0438\u0435 \u043F\u0435\u0440\u0435\u0434 \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u0435\u043C."
|
|
6124
|
+
},
|
|
6125
|
+
bridgeEstimatedQuoteMenu: {
|
|
6126
|
+
title: "\u0420\u0430\u0441\u0447\u0451\u0442\u043D\u0430\u044F \u0441\u0442\u043E\u0438\u043C\u043E\u0441\u0442\u044C \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F",
|
|
6127
|
+
description: "\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E \u043F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u044F \u0438 \u0440\u0430\u0441\u0447\u0451\u0442\u043D\u0443\u044E \u0441\u0442\u043E\u0438\u043C\u043E\u0441\u0442\u044C, \u0437\u0430\u0442\u0435\u043C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u044E."
|
|
6128
|
+
}
|
|
6019
6129
|
}
|
|
6020
6130
|
},
|
|
6021
6131
|
receiveMenu: {
|
|
@@ -6025,7 +6135,7 @@ var init_ru = __esm({
|
|
|
6025
6135
|
share: "\u041F\u043E\u0434\u0435\u043B\u0438\u0442\u0435\u0441\u044C \u044D\u0442\u0438\u043C \u0430\u0434\u0440\u0435\u0441\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0442\u043E\u043A\u0435\u043D\u044B"
|
|
6026
6136
|
},
|
|
6027
6137
|
buyMenu: {
|
|
6028
|
-
title: "\u041A\u0443\u043F\u0438\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E
|
|
6138
|
+
title: "\u041A\u0443\u043F\u0438\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E",
|
|
6029
6139
|
provider: "Onramp-\u0441\u0435\u0440\u0432\u0438\u0441",
|
|
6030
6140
|
selectProvider: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 Onramp-\u0441\u0435\u0440\u0432\u0438\u0441",
|
|
6031
6141
|
selectCrypto: "\u041A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430",
|
|
@@ -6045,7 +6155,12 @@ var init_ru = __esm({
|
|
|
6045
6155
|
exchangeRate: "\u041A\u0443\u0440\u0441 \u043E\u0431\u043C\u0435\u043D\u0430",
|
|
6046
6156
|
networkFee: "\u0421\u0435\u0442\u0435\u0432\u043E\u0439 \u0441\u0431\u043E\u0440",
|
|
6047
6157
|
serviceFee: "\u0421\u0435\u0440\u0432\u0438\u0441\u043D\u044B\u0439 \u0441\u0431\u043E\u0440",
|
|
6048
|
-
paymentMethod: "\u0421\u043F\u043E\u0441\u043E\u0431 \u043E\u043F\u043B\u0430\u0442\u044B"
|
|
6158
|
+
paymentMethod: "\u0421\u043F\u043E\u0441\u043E\u0431 \u043E\u043F\u043B\u0430\u0442\u044B",
|
|
6159
|
+
toAddress: {
|
|
6160
|
+
receiver: "\u0412\u041D\u0418\u041C\u0410\u041D\u0418\u0415! \u0410\u0434\u0440\u0435\u0441 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F",
|
|
6161
|
+
message: "\u0412\u044B \u0441\u043E\u0431\u0438\u0440\u0430\u0435\u0442\u0435\u0441\u044C \u043A\u0443\u043F\u0438\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443 \u043D\u0430 \u0432\u043D\u0435\u0448\u043D\u0438\u0439 \u0430\u0434\u0440\u0435\u0441, \u0430 \u043D\u0435 \u043D\u0430 \u0432\u0430\u0448 \u0430\u0434\u0440\u0435\u0441 embarkAI.",
|
|
6162
|
+
suggestion: "\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u044D\u0442\u043E \u0432\u0430\u0448 \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u044B\u0439 \u0430\u0434\u0440\u0435\u0441 \u043A\u043E\u0448\u0435\u043B\u044C\u043A\u0430, \u0438\u043D\u0430\u0447\u0435 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043F\u043E\u0442\u0435\u0440\u044F\u0442\u044C \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430."
|
|
6163
|
+
}
|
|
6049
6164
|
},
|
|
6050
6165
|
transactionHistory: {
|
|
6051
6166
|
details: "\u0414\u0435\u0442\u0430\u043B\u0438"
|
|
@@ -6059,11 +6174,30 @@ var init_ru = __esm({
|
|
|
6059
6174
|
inputPlaceholder: {
|
|
6060
6175
|
selectCurrencies: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443 \u0438 \u0444\u0438\u0430\u0442",
|
|
6061
6176
|
providerMin: "{{provider}}: \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F \u043C\u0438\u043D\u0438\u043C\u0443\u043C {{minimum}} {{currency}}"
|
|
6177
|
+
},
|
|
6178
|
+
onboarding: {
|
|
6179
|
+
buyMenu: {
|
|
6180
|
+
title: "\u041C\u0435\u043D\u044E \u043F\u043E\u043A\u0443\u043F\u043A\u0438",
|
|
6181
|
+
description: "\u0417\u0434\u0435\u0441\u044C \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0441\u043E\u0432\u0435\u0440\u0448\u0430\u0442\u044C \u043F\u043E\u043A\u0443\u043F\u043A\u0438 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u044B."
|
|
6182
|
+
},
|
|
6183
|
+
providerSelector: {
|
|
6184
|
+
title: "\u0412\u044B\u0431\u043E\u0440 \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430",
|
|
6185
|
+
description: "\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0437\u0434\u0435\u0441\u044C, \u0447\u0442\u043E\u0431\u044B \u0432\u044B\u0431\u0440\u0430\u0442\u044C \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430 \u0434\u043B\u044F \u043F\u043E\u043A\u0443\u043F\u043A\u0438 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u044B."
|
|
6186
|
+
},
|
|
6187
|
+
binanceMenu: {
|
|
6188
|
+
title: "\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u0434\u0435\u0442\u0430\u043B\u0435\u0439 \u043F\u043E\u043A\u0443\u043F\u043A\u0438",
|
|
6189
|
+
description: "\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0437\u0434\u0435\u0441\u044C, \u0447\u0442\u043E\u0431\u044B \u0437\u0430\u0434\u0430\u0442\u044C \u0434\u0435\u0442\u0430\u043B\u0438 \u043F\u043E\u043A\u0443\u043F\u043A\u0438 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u044B."
|
|
6190
|
+
},
|
|
6191
|
+
binanceEstimate: {
|
|
6192
|
+
title: "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435 \u043F\u043E\u043A\u0443\u043F\u043A\u0438",
|
|
6193
|
+
description: "\u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u0434\u0435\u0442\u0430\u043B\u0438 \u043F\u043E\u043A\u0443\u043F\u043A\u0438 \u043F\u0435\u0440\u0435\u0434 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435\u043C."
|
|
6194
|
+
}
|
|
6062
6195
|
}
|
|
6063
6196
|
},
|
|
6064
6197
|
portfolioMenu: {
|
|
6065
6198
|
title: "\u0412\u0430\u0448\u0438 \u0430\u043A\u0442\u0438\u0432\u044B",
|
|
6066
|
-
noAssets: "\u0410\u043A\u0442\u0438\u0432\u044B \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B"
|
|
6199
|
+
noAssets: "\u0410\u043A\u0442\u0438\u0432\u044B \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",
|
|
6200
|
+
noBlockscout: "Blockscout API \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u0434\u043B\u044F \u0441\u0435\u0442\u0438: {{chain}}"
|
|
6067
6201
|
},
|
|
6068
6202
|
transactionsMenu: {
|
|
6069
6203
|
title: "\u0418\u0441\u0442\u043E\u0440\u0438\u044F \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0439",
|
|
@@ -6246,6 +6380,12 @@ var init_zh = __esm({
|
|
|
6246
6380
|
selectNone: "\u5168\u4E0D\u9009",
|
|
6247
6381
|
errors: {
|
|
6248
6382
|
oops: "\u54CE\u5440\uFF0C\u51FA\u4E86\u70B9\u95EE\u9898\u3002\u8BF7\u518D\u8BD5\u4E00\u6B21\u3002"
|
|
6383
|
+
},
|
|
6384
|
+
onboarding: {
|
|
6385
|
+
tourButton: {
|
|
6386
|
+
title: "\u5BFC\u89C8\u6309\u9215",
|
|
6387
|
+
description: "\u5BFC\u89C8\u529F\u80FD\u53EF\u5728 embarkAI \u83DC\u5355\u7684\u201C\uFF1F\u201D\u6309\u9215\u4E0B\u627E\u5230\u3002\u70B9\u51FB\u5373\u53EF\u5F00\u59CB\u83DC\u5355\u5BFC\u89C8"
|
|
6388
|
+
}
|
|
6249
6389
|
}
|
|
6250
6390
|
},
|
|
6251
6391
|
auth: {
|
|
@@ -6298,14 +6438,23 @@ var init_zh = __esm({
|
|
|
6298
6438
|
actions: {
|
|
6299
6439
|
send: "\u53D1\u9001",
|
|
6300
6440
|
confirm: "\u786E\u8BA4\u53D1\u9001"
|
|
6441
|
+
},
|
|
6442
|
+
onboarding: {
|
|
6443
|
+
sendMenu: {
|
|
6444
|
+
title: "\u53D1\u9001\u83DC\u5355",
|
|
6445
|
+
description: "\u9009\u62E9\u8981\u53D1\u9001\u7684\u52A0\u5BC6\u8D44\u4EA7\uFF0C\u7136\u540E\u8F93\u5165\u6536\u6B3E\u5730\u5740\u548C\u91D1\u989D\u3002"
|
|
6446
|
+
},
|
|
6447
|
+
sendCryptoSummary: {
|
|
6448
|
+
title: "\u53D1\u9001\u6458\u8981",
|
|
6449
|
+
description: "\u5728\u786E\u8BA4\u524D\u67E5\u770B\u52A0\u5BC6\u8F6C\u8D26\u8BE6\u60C5\uFF0C\u7136\u540E\u786E\u8BA4\u4EA4\u6613\u3002"
|
|
6450
|
+
}
|
|
6301
6451
|
}
|
|
6302
6452
|
},
|
|
6303
6453
|
bridgeMenu: {
|
|
6304
6454
|
title: "\u8DE8\u94FE\u8D44\u4EA7",
|
|
6305
6455
|
labels: {
|
|
6306
|
-
sender: "\u53D1\u9001\u65B9",
|
|
6307
6456
|
bridgeAsset: "\u8DE8\u94FE {{asset}}",
|
|
6308
|
-
|
|
6457
|
+
selectSender: "\u9009\u62E9\u53D1\u9001\u65B9\u94B1\u5305",
|
|
6309
6458
|
selectToken: "\u9009\u62E9\u4EE3\u5E01\u8DEF\u7531",
|
|
6310
6459
|
estimations: "\u9884\u4F30",
|
|
6311
6460
|
estimatedFee: "\u9884\u4F30\u624B\u7EED\u8D39",
|
|
@@ -6330,11 +6479,12 @@ var init_zh = __esm({
|
|
|
6330
6479
|
},
|
|
6331
6480
|
actions: {
|
|
6332
6481
|
connectWallet: "\u8FDE\u63A5\u9489\u5305",
|
|
6482
|
+
addExternalWalletProfile: "\u6DFB\u52A0\u5916\u90E8\u94B1\u5305\u914D\u7F6E\u6587\u4EF6",
|
|
6333
6483
|
bridge: "\u8DE8\u94FE",
|
|
6334
6484
|
estimateQuote: "\u4F30\u7B97\u62A5\u4EF7",
|
|
6335
6485
|
bridgeAsset: "\u8DE8\u94FE {{asset}}",
|
|
6336
6486
|
selectAsset: "\u9009\u62E9\u8D44\u4EA7",
|
|
6337
|
-
confirmBridge: "\u786E\u8BA4\u8DE8\u94FE"
|
|
6487
|
+
confirmBridge: "\u6211\u786E\u8BA4\u5C06 {{amount}} {{asset}} \u8DE8\u94FE\u5230 {{destinationChain}}"
|
|
6338
6488
|
},
|
|
6339
6489
|
statuses: {
|
|
6340
6490
|
balanceInsufficient: "\u4F59\u989D\u4E0D\u8DB3",
|
|
@@ -6355,6 +6505,36 @@ var init_zh = __esm({
|
|
|
6355
6505
|
wrongNetwork: " \u8BF7\u5C06 EmbarkAI \u5207\u6362\u81F3\u6E90\u94FE\u4EE5\u7EE7\u7EED\u8DE8\u94FE\u64CD\u4F5C",
|
|
6356
6506
|
noHistory: "\u6682\u65E0\u8DE8\u94FE\u8BB0\u5F55\u3002\u8DE8\u94FE\u60A8\u7684\u8D44\u4EA7\u540E\uFF0C\u5386\u53F2\u8BB0\u5F55\u5C06\u663E\u793A\u5728\u6B64\u5904\u3002",
|
|
6357
6507
|
unsupportedNetwork: "{{sender}} \u5C1A\u4E0D\u652F\u6301\u4ECE {{originChain}} \u8DE8\u94FE\u3002\u8BF7\u5207\u6362\u7F51\u7EDC\u5BF9\u3001\u9009\u62E9\u4E0D\u540C\u7684\u4EE3\u5E01\u8DEF\u7531\u6216\u66F4\u6362\u53D1\u9001\u9489\u5305"
|
|
6508
|
+
},
|
|
6509
|
+
onboarding: {
|
|
6510
|
+
bridgeMenu: {
|
|
6511
|
+
title: "\u8DE8\u94FE\u83DC\u5355",
|
|
6512
|
+
description: "\u901A\u8FC7\u8DE8\u94FE\u53D1\u9001\u53EF\u4EE5\u5728\u4E0D\u540C\u533A\u5757\u94FE\u7F51\u7EDC\u4E4B\u95F4\u8F6C\u79FB\u52A0\u5BC6\u8D44\u4EA7\u3002"
|
|
6513
|
+
},
|
|
6514
|
+
bridgeSenderWalletSelector: {
|
|
6515
|
+
title: "\u9009\u62E9\u53D1\u9001\u65B9\u9489\u5305",
|
|
6516
|
+
description: "EmbarkAI \u53EF\u4EE5\u901A\u8FC7\u5916\u90E8\u9489\u5305\u8FDB\u884C\u8EAB\u4EFD\u9A8C\u8BC1\uFF0C\u4F5C\u4E3A\u8EAB\u4EFD\u9A8C\u8BC1\u914D\u7F6E\u6587\u4EF6\u63D0\u4F9B\u5546\uFF08\u8BBE\u7F6E -> \u914D\u7F6E\u6587\u4EF6\uFF09\u3002\n \u5916\u90E8\u9489\u5305\u914D\u7F6E\u6587\u4EF6\u53EF\u7528\u4F5C\u8DE8\u94FE\u52A0\u5BC6\u8D44\u4EA7\u5230 embarkAI \u7684\u53D1\u9001\u65B9\uFF08\u4EA4\u6613\u7B7E\u540D\u8005\uFF09\u3002\n \u5982\u5C1A\u672A\u6DFB\u52A0\u5916\u90E8\u9489\u5305\u914D\u7F6E\u6587\u4EF6\uFF0C\u8BF7\u524D\u5F80\uFF08\u8BBE\u7F6E -> \u914D\u7F6E\u6587\u4EF6\uFF09\u6DFB\u52A0\u5E76\u6309\u7167\u63D0\u793A\u64CD\u4F5C\u3002"
|
|
6517
|
+
},
|
|
6518
|
+
bridgeCryptoAssetSelector: {
|
|
6519
|
+
title: "\u9009\u62E9\u8DE8\u94FE\u8D44\u4EA7",
|
|
6520
|
+
description: "\u8DE8\u94FE\u64CD\u4F5C\u53D1\u751F\u5728\u4E00\u4E2A\u533A\u5757\u94FE\u7F51\u7EDC\u5230\u53E6\u4E00\u4E2A\u4E4B\u95F4\u3002\n \u4F7F\u7528\u6B64\u9009\u62E9\u5668\u9009\u62E9\u8981\u8DE8\u94FE\u7684\u8D44\u4EA7\uFF0C\u7136\u540E\u4ECE\u8BE5\u8D44\u4EA7\u53EF\u7528\u7684\u94FE\u5BF9\u4E2D\u8FDB\u884C\u9009\u62E9\u3002"
|
|
6521
|
+
},
|
|
6522
|
+
bridgeChainPairSwapper: {
|
|
6523
|
+
title: "\u8BBE\u7F6E\u6E90\u94FE\u548C\u76EE\u6807\u94FE",
|
|
6524
|
+
description: "\u8DE8\u94FE\u8DEF\u7531\uFF08\u94FE\u5BF9\uFF09\u662F\u53CC\u5411\u7684\uFF0C\u5373\u6E90\u94FE\u548C\u76EE\u6807\u94FE\u53EF\u4EE5\u4E92\u6362\u3002\n \u4F7F\u7528\u201C\u21C4\u201D\u6309\u9215\u8BBE\u7F6E\u6E90\u94FE\u548C\u76EE\u6807\u94FE\u3002"
|
|
6525
|
+
},
|
|
6526
|
+
bridgeAmountRecipientInputs: {
|
|
6527
|
+
title: "\u8BBE\u7F6E\u91D1\u989D\u548C\u53EF\u9009\u6536\u6B3E\u4EBA",
|
|
6528
|
+
description: "\u8F93\u5165\u8981\u8DE8\u94FE\u7684\u91D1\u989D\uFF0C\u5E76\u53EF\u9009\u62E9\u6027\u5730\u6307\u5B9A\u6536\u6B3E\u4EBA\u5730\u5740\u3002\u82E5\u6536\u6B3E\u4EBA\u4E3A\u7A7A\uFF1A\u76EE\u6807\u94FE\u5730\u5740\u7B49\u4E8E\u6E90\u94FE\u4E0A\u7684\u53D1\u9001\u65B9\u5730\u5740\u3002"
|
|
6529
|
+
},
|
|
6530
|
+
bridgeEstimateQuoteButton: {
|
|
6531
|
+
title: "\u4F30\u7B97\u8DE8\u94FE\u8D39\u7528",
|
|
6532
|
+
description: "\u5728\u5B9E\u9645\u6267\u884C\u8DE8\u94FE\u524D\u83B7\u53D6\u9884\u4F30\u62A5\u4EF7\uFF0C\u5E2E\u52A9\u60A8\u5728\u7EE7\u7EED\u524D\u505A\u51FA\u660E\u667A\u51B3\u7B56\u3002"
|
|
6533
|
+
},
|
|
6534
|
+
bridgeEstimatedQuoteMenu: {
|
|
6535
|
+
title: "\u4F30\u7B97\u8DE8\u94FE\u62A5\u4EF7",
|
|
6536
|
+
description: "\u8BF7\u52A1\u5FC5\u68C0\u67E5\u8DE8\u94FE\u8BBE\u7F6E\u548C\u9884\u4F30\u62A5\u4EF7\uFF0C\u7136\u540E\u786E\u8BA4\u4EA4\u6613\u3002"
|
|
6537
|
+
}
|
|
6358
6538
|
}
|
|
6359
6539
|
},
|
|
6360
6540
|
receiveMenu: {
|
|
@@ -6384,7 +6564,12 @@ var init_zh = __esm({
|
|
|
6384
6564
|
exchangeRate: "\u6C47\u7387",
|
|
6385
6565
|
networkFee: "\u7F51\u7EDC\u8D39\u7528",
|
|
6386
6566
|
serviceFee: "\u670D\u52A1\u8D39",
|
|
6387
|
-
paymentMethod: "\u4ED8\u6B3E\u65B9\u5F0F"
|
|
6567
|
+
paymentMethod: "\u4ED8\u6B3E\u65B9\u5F0F",
|
|
6568
|
+
toAddress: {
|
|
6569
|
+
receiver: "\u6CE8\u610F\uFF01\u6536\u6B3E\u5730\u5740",
|
|
6570
|
+
message: "\u60A8\u5373\u5C06\u5411\u5916\u90E8\u5730\u5740\u8D2D\u4E70\u52A0\u5BC6\u8D27\u5E01\uFF0C\u800C\u975E\u60A8\u7684 embarkAI \u5730\u5740\u3002",
|
|
6571
|
+
suggestion: "\u8BF7\u786E\u8BA4\u8FD9\u662F\u60A8\u6B63\u786E\u7684\u9489\u5305\u5730\u5740\uFF0C\u5426\u5219\u60A8\u7684\u8D44\u91D1\u53EF\u80FD\u4E22\u5931\u3002"
|
|
6572
|
+
}
|
|
6388
6573
|
},
|
|
6389
6574
|
transactionHistory: {
|
|
6390
6575
|
details: "\u8BE6\u60C5"
|
|
@@ -6398,11 +6583,30 @@ var init_zh = __esm({
|
|
|
6398
6583
|
inputPlaceholder: {
|
|
6399
6584
|
selectCurrencies: "\u9009\u62E9\u52A0\u5BC6\u8D27\u5E01\u548C\u6CD5\u5E01",
|
|
6400
6585
|
providerMin: "{{provider}}\uFF1A\u6700\u4F4E\u9700\u8981 {{minimum}} {{currency}}"
|
|
6586
|
+
},
|
|
6587
|
+
onboarding: {
|
|
6588
|
+
buyMenu: {
|
|
6589
|
+
title: "\u8D2D\u4E70\u83DC\u5355",
|
|
6590
|
+
description: "\u5728\u8FD9\u91CC\u60A8\u53EF\u4EE5\u8D2D\u4E70\u52A0\u5BC6\u8D27\u5E01\u3002"
|
|
6591
|
+
},
|
|
6592
|
+
providerSelector: {
|
|
6593
|
+
title: "\u9009\u62E9\u670D\u52A1\u5546",
|
|
6594
|
+
description: "\u70B9\u51FB\u6B64\u5904\u9009\u62E9\u60A8\u8D2D\u4E70\u52A0\u5BC6\u8D27\u5E01\u7684\u670D\u52A1\u5546\u3002"
|
|
6595
|
+
},
|
|
6596
|
+
binanceMenu: {
|
|
6597
|
+
title: "\u8BBE\u7F6E\u8D2D\u4E70\u8BE6\u60C5",
|
|
6598
|
+
description: "\u70B9\u51FB\u6B64\u5904\u8BBE\u7F6E\u52A0\u5BC6\u8D27\u5E01\u8D2D\u4E70\u7684\u8BE6\u60C5\u3002"
|
|
6599
|
+
},
|
|
6600
|
+
binanceEstimate: {
|
|
6601
|
+
title: "\u786E\u8BA4\u8D2D\u4E70",
|
|
6602
|
+
description: "\u5728\u786E\u8BA4\u524D\u67E5\u770B\u8D2D\u4E70\u8BE6\u60C5\u3002"
|
|
6603
|
+
}
|
|
6401
6604
|
}
|
|
6402
6605
|
},
|
|
6403
6606
|
portfolioMenu: {
|
|
6404
6607
|
title: "\u60A8\u7684\u8D44\u4EA7",
|
|
6405
|
-
noAssets: "\u672A\u627E\u5230\u8D44\u4EA7"
|
|
6608
|
+
noAssets: "\u672A\u627E\u5230\u8D44\u4EA7",
|
|
6609
|
+
noBlockscout: "\u672A\u627E\u5230\u94FE {{chain}} \u7684 Blockscout API"
|
|
6406
6610
|
},
|
|
6407
6611
|
transactionsMenu: {
|
|
6408
6612
|
title: "\u4EA4\u6613\u8BB0\u5F55",
|
|
@@ -8488,24 +8692,49 @@ var init_onboarder = __esm({
|
|
|
8488
8692
|
useOnboardingStore = (0, import_zustand4.create)((set) => ({
|
|
8489
8693
|
elRect: { x: window.innerWidth / 2, y: window.innerHeight / 2, width: 0, height: 0 },
|
|
8490
8694
|
tooltip: { title: "", description: "" },
|
|
8491
|
-
|
|
8695
|
+
setFrame: (tooltipStore) => set(tooltipStore),
|
|
8492
8696
|
mountIntoNode: document.body,
|
|
8493
|
-
setMountIntoNode: (mountIntoNode) => set({ mountIntoNode })
|
|
8697
|
+
setMountIntoNode: (mountIntoNode) => set({ mountIntoNode }),
|
|
8698
|
+
waitSecs: null,
|
|
8699
|
+
setWaitSecs: (waitSecs) => set({ waitSecs })
|
|
8494
8700
|
}));
|
|
8495
8701
|
Onboarder = class {
|
|
8496
8702
|
tour = null;
|
|
8497
8703
|
tourPointer = 0;
|
|
8498
8704
|
// index of the current step in the tour
|
|
8499
8705
|
elements = /* @__PURE__ */ new Map();
|
|
8500
|
-
|
|
8501
|
-
|
|
8502
|
-
|
|
8503
|
-
|
|
8504
|
-
|
|
8505
|
-
|
|
8506
|
-
|
|
8507
|
-
|
|
8508
|
-
|
|
8706
|
+
/** deferred DOM observer */
|
|
8707
|
+
domObserverTimer = null;
|
|
8708
|
+
domObserver = new MutationObserver(([domMutation]) => {
|
|
8709
|
+
if (this.domObserverTimer) clearTimeout(this.domObserverTimer);
|
|
8710
|
+
this.domObserverTimer = setTimeout(() => {
|
|
8711
|
+
const { elId, title, description } = this.tour[this.tourPointer];
|
|
8712
|
+
const elementRef = this.elements.get(elId)?.deref();
|
|
8713
|
+
if (!elementRef) return;
|
|
8714
|
+
const { x, y, width, height } = elementRef.getBoundingClientRect();
|
|
8715
|
+
useOnboardingStore.getState().setFrame({ elRect: { x, y, width, height }, tooltip: { title, description } });
|
|
8716
|
+
}, 200);
|
|
8717
|
+
});
|
|
8718
|
+
/** deferred resize observer */
|
|
8719
|
+
resizeObserverTimer = null;
|
|
8720
|
+
resizeObserver = new ResizeObserver((entries) => {
|
|
8721
|
+
if (this.resizeObserverTimer) clearTimeout(this.resizeObserverTimer);
|
|
8722
|
+
this.resizeObserverTimer = setTimeout(() => {
|
|
8723
|
+
for (const entry of entries) {
|
|
8724
|
+
const element = entry.target;
|
|
8725
|
+
let frameData;
|
|
8726
|
+
const { elId, title, description } = this.tour[this.tourPointer];
|
|
8727
|
+
if (!element || element.nodeName === "BODY") {
|
|
8728
|
+
const elementRef = this.elements.get(elId)?.deref();
|
|
8729
|
+
const { x, y, width, height } = elementRef.getBoundingClientRect();
|
|
8730
|
+
frameData = { elRect: { x, y, width, height }, tooltip: { title, description } };
|
|
8731
|
+
} else {
|
|
8732
|
+
const { x, y, width, height } = element.getBoundingClientRect();
|
|
8733
|
+
frameData = { elRect: { x, y, width, height }, tooltip: { title, description } };
|
|
8734
|
+
}
|
|
8735
|
+
useOnboardingStore.getState().setFrame(frameData);
|
|
8736
|
+
}
|
|
8737
|
+
}, 200);
|
|
8509
8738
|
});
|
|
8510
8739
|
/** TOUR */
|
|
8511
8740
|
startTour(tour) {
|
|
@@ -8515,18 +8744,26 @@ var init_onboarder = __esm({
|
|
|
8515
8744
|
useLayoutDataStore.getInitialState().setIsOnboarding(true);
|
|
8516
8745
|
useLayoutStore.getInitialState().setIsDialogForced(true);
|
|
8517
8746
|
const startElRef = this.elements.get(tour[0].elId)?.deref();
|
|
8518
|
-
|
|
8747
|
+
if (!!startElRef) {
|
|
8748
|
+
this.domObserver.observe(startElRef, { childList: true, subtree: true });
|
|
8749
|
+
this.resizeObserver.observe(startElRef);
|
|
8750
|
+
this.resizeObserver.observe(document.body);
|
|
8751
|
+
}
|
|
8752
|
+
useOnboardingStore.getState().setWaitSecs(tour[0].waitSecs || null);
|
|
8519
8753
|
}
|
|
8520
8754
|
endTour() {
|
|
8521
8755
|
this.tour = null;
|
|
8522
8756
|
this.tourPointer = 0;
|
|
8757
|
+
this.domObserver.disconnect();
|
|
8523
8758
|
this.resizeObserver.disconnect();
|
|
8524
|
-
useOnboardingStore.getState().
|
|
8759
|
+
useOnboardingStore.getState().setFrame({
|
|
8525
8760
|
elRect: { x: window.innerWidth / 2, y: window.innerHeight / 2, width: 0, height: 0 },
|
|
8526
8761
|
tooltip: { title: "", description: "" }
|
|
8527
8762
|
});
|
|
8528
|
-
|
|
8529
|
-
|
|
8763
|
+
setTimeout(() => {
|
|
8764
|
+
useLayoutDataStore.getInitialState().setIsOnboarding(false);
|
|
8765
|
+
useLayoutStore.getInitialState().setIsDialogForced(false);
|
|
8766
|
+
}, 200);
|
|
8530
8767
|
}
|
|
8531
8768
|
next() {
|
|
8532
8769
|
if (!this.tour) return;
|
|
@@ -8534,12 +8771,18 @@ var init_onboarder = __esm({
|
|
|
8534
8771
|
curStep?.onNext?.();
|
|
8535
8772
|
if (this.tourPointer === this.tour.length - 1) return this.endTour();
|
|
8536
8773
|
this.resizeObserver.disconnect();
|
|
8774
|
+
this.domObserver.disconnect();
|
|
8537
8775
|
setTimeout(() => {
|
|
8538
8776
|
const nextStepPointer = this.tourPointer + 1;
|
|
8539
8777
|
this.tourPointer = nextStepPointer;
|
|
8540
8778
|
const nextStep = this.tour[nextStepPointer];
|
|
8541
8779
|
const nextElRef = this.elements.get(nextStep.elId)?.deref();
|
|
8542
|
-
if (!!nextElRef)
|
|
8780
|
+
if (!!nextElRef) {
|
|
8781
|
+
this.domObserver.observe(nextElRef, { childList: true, subtree: true });
|
|
8782
|
+
this.resizeObserver.observe(nextElRef);
|
|
8783
|
+
this.resizeObserver.observe(document.body);
|
|
8784
|
+
}
|
|
8785
|
+
useOnboardingStore.getState().setWaitSecs(nextStep.waitSecs || null);
|
|
8543
8786
|
}, 200);
|
|
8544
8787
|
}
|
|
8545
8788
|
/**
|
|
@@ -8551,29 +8794,75 @@ var init_onboarder = __esm({
|
|
|
8551
8794
|
if (!onboardingElementId || !elementRef) return;
|
|
8552
8795
|
this.elements.set(onboardingElementId, new WeakRef(elementRef));
|
|
8553
8796
|
}
|
|
8797
|
+
getCurrentStep() {
|
|
8798
|
+
if (!this.tour) return null;
|
|
8799
|
+
return this.tour[this.tourPointer];
|
|
8800
|
+
}
|
|
8554
8801
|
};
|
|
8555
8802
|
onboarder = new Onboarder();
|
|
8556
8803
|
}
|
|
8557
8804
|
});
|
|
8558
8805
|
|
|
8559
8806
|
// src/internal/components/Onboarding/OnboardingOverlay.tsx
|
|
8807
|
+
function getTooltipXPos(params) {
|
|
8808
|
+
const { x, width, isMobileView, expandValue } = params;
|
|
8809
|
+
const frameEndX = x + width + expandValue;
|
|
8810
|
+
const frameWidth = isMobileView ? width : width + 2 * expandValue;
|
|
8811
|
+
const ttWidth = Math.max(frameWidth, TOOLTIP_MIN_WIDTH);
|
|
8812
|
+
const ttShiftX = isMobileView ? 0 : expandValue;
|
|
8813
|
+
const ttEndX = x - ttShiftX + ttWidth;
|
|
8814
|
+
const isTTOverflowsFrame = ttEndX > frameEndX;
|
|
8815
|
+
const isTTOverflowsWindow = ttEndX > window.innerWidth;
|
|
8816
|
+
if (isTTOverflowsWindow) {
|
|
8817
|
+
return {
|
|
8818
|
+
isOverflowX: true,
|
|
8819
|
+
width: ttWidth,
|
|
8820
|
+
x: x - (ttEndX - window.innerWidth) - EXPAND
|
|
8821
|
+
// unstick tooltip from window right edge
|
|
8822
|
+
};
|
|
8823
|
+
}
|
|
8824
|
+
if (isTTOverflowsFrame) {
|
|
8825
|
+
return {
|
|
8826
|
+
isOverflowX: true,
|
|
8827
|
+
width: ttWidth,
|
|
8828
|
+
x: x - ttShiftX - ttWidth / 2 + frameWidth / 2
|
|
8829
|
+
// center tooltip over target element
|
|
8830
|
+
};
|
|
8831
|
+
}
|
|
8832
|
+
return {
|
|
8833
|
+
isOverflowX: isTTOverflowsFrame || isTTOverflowsWindow,
|
|
8834
|
+
width: ttWidth,
|
|
8835
|
+
x: x - ttShiftX
|
|
8836
|
+
};
|
|
8837
|
+
}
|
|
8838
|
+
function getTooltipYPos(params) {
|
|
8839
|
+
const { y, height, isMobileView, expandValue, ttCurrentHeight = 0 } = params;
|
|
8840
|
+
let topPosY = y - expandValue * 2 - ttCurrentHeight;
|
|
8841
|
+
const bottomPosY = y + height + expandValue;
|
|
8842
|
+
return {
|
|
8843
|
+
isOverflowY: topPosY < EXPAND,
|
|
8844
|
+
y: isMobileView && topPosY >= EXPAND ? topPosY : bottomPosY
|
|
8845
|
+
// topPosY >= EXPAND - unstick tooltip from window top edge
|
|
8846
|
+
};
|
|
8847
|
+
}
|
|
8560
8848
|
function OnboardingOverlay() {
|
|
8561
8849
|
const { t } = useT();
|
|
8562
8850
|
const page = useLayoutDataStore((st) => st.page);
|
|
8563
8851
|
const isOnboarding = useLayoutDataStore((st) => st.isOnboarding);
|
|
8564
8852
|
const isMobileView = useLayoutStore((st) => st.isMobileView);
|
|
8565
8853
|
const colorMode = useLayoutStore((st) => st.colorMode);
|
|
8854
|
+
const toolipElementRef = (0, import_react20.useRef)(null);
|
|
8566
8855
|
const {
|
|
8856
|
+
waitSecs,
|
|
8567
8857
|
elRect,
|
|
8568
8858
|
tooltip,
|
|
8569
8859
|
/** if embark is opened, onboard overlay has to be portaled into embark's dialog node to keep layers & pointer-events normal structure */
|
|
8570
|
-
mountIntoNode
|
|
8571
|
-
setMountIntoNode
|
|
8860
|
+
mountIntoNode
|
|
8572
8861
|
} = useOnboardingStore();
|
|
8573
8862
|
(0, import_react20.useEffect)(() => {
|
|
8574
8863
|
setTimeout(() => {
|
|
8575
8864
|
if (!page) {
|
|
8576
|
-
setMountIntoNode(document.body);
|
|
8865
|
+
useOnboardingStore.getState().setMountIntoNode(document.body);
|
|
8577
8866
|
return;
|
|
8578
8867
|
}
|
|
8579
8868
|
const lastMountIntoNode = useOnboardingStore.getState().mountIntoNode;
|
|
@@ -8581,21 +8870,37 @@ function OnboardingOverlay() {
|
|
|
8581
8870
|
return;
|
|
8582
8871
|
}
|
|
8583
8872
|
const embarkUIContainer = document.querySelector('[data-purpose="embarkai-ui-container"]');
|
|
8584
|
-
setMountIntoNode(embarkUIContainer);
|
|
8873
|
+
useOnboardingStore.getState().setMountIntoNode(embarkUIContainer);
|
|
8585
8874
|
}, 0);
|
|
8586
8875
|
}, [page]);
|
|
8587
|
-
|
|
8876
|
+
const [continueCountdown, setContinueCountdown] = (0, import_react20.useState)(null);
|
|
8877
|
+
const expandValue = EXPAND * (isMobileView ? 0.5 : 1);
|
|
8588
8878
|
const frame = {
|
|
8589
|
-
x: elRect.x -
|
|
8590
|
-
y: elRect.y -
|
|
8591
|
-
width: elRect.width +
|
|
8592
|
-
height: elRect.height +
|
|
8879
|
+
x: elRect.x - expandValue,
|
|
8880
|
+
y: elRect.y - expandValue,
|
|
8881
|
+
width: elRect.width + expandValue * 2,
|
|
8882
|
+
height: elRect.height + expandValue * (isMobileView ? 2 : 3)
|
|
8593
8883
|
};
|
|
8594
8884
|
const tt = {
|
|
8595
|
-
|
|
8596
|
-
|
|
8597
|
-
width: isMobileView ? elRect.width : elRect.width + 2 * EXPAND
|
|
8885
|
+
...getTooltipXPos({ ...elRect, isMobileView, expandValue }),
|
|
8886
|
+
...getTooltipYPos({ ...elRect, isMobileView, expandValue, ttCurrentHeight: toolipElementRef.current?.clientHeight })
|
|
8598
8887
|
};
|
|
8888
|
+
(0, import_react20.useEffect)(() => {
|
|
8889
|
+
if (!waitSecs) return;
|
|
8890
|
+
setContinueCountdown(waitSecs);
|
|
8891
|
+
const countdownInterval = setInterval(() => {
|
|
8892
|
+
setContinueCountdown((prev) => {
|
|
8893
|
+
if (prev <= 1 || prev === null) {
|
|
8894
|
+
clearInterval(countdownInterval);
|
|
8895
|
+
return null;
|
|
8896
|
+
}
|
|
8897
|
+
return prev - 1;
|
|
8898
|
+
});
|
|
8899
|
+
}, 1e3);
|
|
8900
|
+
return () => clearInterval(countdownInterval);
|
|
8901
|
+
}, [waitSecs]);
|
|
8902
|
+
if (!mountIntoNode) return null;
|
|
8903
|
+
const tourStepActions = onboarder.getCurrentStep()?.actions;
|
|
8599
8904
|
return (0, import_react_dom.createPortal)(
|
|
8600
8905
|
/* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
|
8601
8906
|
"div",
|
|
@@ -8647,6 +8952,7 @@ function OnboardingOverlay() {
|
|
|
8647
8952
|
isOnboarding && /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
|
8648
8953
|
"div",
|
|
8649
8954
|
{
|
|
8955
|
+
ref: toolipElementRef,
|
|
8650
8956
|
className: cn(
|
|
8651
8957
|
"absolute flex flex-col gap-1 p-[var(--ui-kit-pd)]",
|
|
8652
8958
|
"text-center text-sm",
|
|
@@ -8654,25 +8960,52 @@ function OnboardingOverlay() {
|
|
|
8654
8960
|
""
|
|
8655
8961
|
),
|
|
8656
8962
|
style: {
|
|
8657
|
-
transition: "top 0.3s ease",
|
|
8658
8963
|
width: tt.width,
|
|
8659
|
-
top:
|
|
8660
|
-
left:
|
|
8661
|
-
|
|
8964
|
+
top: 0,
|
|
8965
|
+
left: 0,
|
|
8966
|
+
transition: "transform 0.3s ease, width 0.3s ease",
|
|
8967
|
+
transform: `translate(${tt.x}px, ${tt.y}px)`,
|
|
8968
|
+
borderRadius: isMobileView || tt.isOverflowX ? "var(--ui-kit-bdrs)" : "0 0 var(--ui-kit-bdrs) var(--ui-kit-bdrs)"
|
|
8662
8969
|
},
|
|
8663
8970
|
children: [
|
|
8664
|
-
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", {
|
|
8665
|
-
|
|
8666
|
-
|
|
8971
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", {
|
|
8972
|
+
className: "font-bold",
|
|
8973
|
+
//@ts-expect-error i18n dynamic key typing
|
|
8974
|
+
children: t(tooltip.title)
|
|
8975
|
+
}),
|
|
8976
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", {
|
|
8977
|
+
className: "whitespace-pre-line",
|
|
8978
|
+
//@ts-expect-error i18n dynamic key typing
|
|
8979
|
+
children: t(tooltip.description)
|
|
8980
|
+
}),
|
|
8981
|
+
!!tourStepActions?.length ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "flex grid grid-cols-2 gap-[var(--ui-kit-gap)]", children: tourStepActions.map(({ caption, onClick }, index) => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
|
8982
|
+
Button,
|
|
8983
|
+
{
|
|
8984
|
+
variant: "default",
|
|
8985
|
+
size: "medium",
|
|
8986
|
+
className: "w-full",
|
|
8987
|
+
onClick,
|
|
8988
|
+
disabled: continueCountdown !== null,
|
|
8989
|
+
children: [
|
|
8990
|
+
continueCountdown !== null ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react9.LoaderIcon, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react9.ChevronRightIcon, { className: "h-4 w-4" }),
|
|
8991
|
+
// @ts-expect-error i18n dynamic key typing
|
|
8992
|
+
t(caption)
|
|
8993
|
+
]
|
|
8994
|
+
},
|
|
8995
|
+
index
|
|
8996
|
+
)) }) : /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
|
8667
8997
|
Button,
|
|
8668
8998
|
{
|
|
8669
8999
|
variant: "default-glow",
|
|
8670
9000
|
size: "medium",
|
|
8671
9001
|
className: "w-full",
|
|
8672
9002
|
onClick: () => onboarder.next(),
|
|
9003
|
+
disabled: continueCountdown !== null,
|
|
8673
9004
|
children: [
|
|
8674
|
-
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react9.ChevronRightIcon, { className: "h-4 w-4" }),
|
|
8675
|
-
String(t("passport:common.continue")).toUpperCase()
|
|
9005
|
+
continueCountdown !== null ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react9.LoaderIcon, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react9.ChevronRightIcon, { className: "h-4 w-4" }),
|
|
9006
|
+
String(t("passport:common.continue")).toUpperCase(),
|
|
9007
|
+
" ",
|
|
9008
|
+
continueCountdown !== null && continueCountdown
|
|
8676
9009
|
]
|
|
8677
9010
|
}
|
|
8678
9011
|
)
|
|
@@ -8686,7 +9019,7 @@ function OnboardingOverlay() {
|
|
|
8686
9019
|
mountIntoNode
|
|
8687
9020
|
);
|
|
8688
9021
|
}
|
|
8689
|
-
var import_lucide_react9, import_react20, import_react_dom, import_jsx_runtime21, EXPAND,
|
|
9022
|
+
var import_lucide_react9, import_react20, import_react_dom, import_jsx_runtime21, EXPAND, TOOLTIP_MIN_WIDTH;
|
|
8690
9023
|
var init_OnboardingOverlay = __esm({
|
|
8691
9024
|
"src/internal/components/Onboarding/OnboardingOverlay.tsx"() {
|
|
8692
9025
|
init_i18n();
|
|
@@ -8699,8 +9032,8 @@ var init_OnboardingOverlay = __esm({
|
|
|
8699
9032
|
init_button();
|
|
8700
9033
|
init_onboarder();
|
|
8701
9034
|
import_jsx_runtime21 = require("react/jsx-runtime");
|
|
8702
|
-
EXPAND =
|
|
8703
|
-
|
|
9035
|
+
EXPAND = 16;
|
|
9036
|
+
TOOLTIP_MIN_WIDTH = 256;
|
|
8704
9037
|
}
|
|
8705
9038
|
});
|
|
8706
9039
|
|
|
@@ -9759,14 +10092,14 @@ var init_components = __esm({
|
|
|
9759
10092
|
var BUY_MENU_BINANCE_TOUR;
|
|
9760
10093
|
var init_onboarding_setup = __esm({
|
|
9761
10094
|
"src/internal/components/BuyMenu/onboarding.setup.ts"() {
|
|
9762
|
-
init_useLayoutDataStore();
|
|
9763
10095
|
init_useBinanceStore();
|
|
9764
10096
|
init_useBuyMenuStore();
|
|
9765
10097
|
BUY_MENU_BINANCE_TOUR = [
|
|
9766
10098
|
{
|
|
9767
10099
|
elId: "buymenu-page" /* buymenu */,
|
|
9768
|
-
title: "
|
|
9769
|
-
description: "
|
|
10100
|
+
title: "passport:buyMenu.onboarding.buyMenu.title",
|
|
10101
|
+
description: "passport:buyMenu.onboarding.buyMenu.description",
|
|
10102
|
+
waitSecs: 6,
|
|
9770
10103
|
onNext: () => {
|
|
9771
10104
|
const { setRampProvider, rampProvider } = useBuyMenuStore.getState();
|
|
9772
10105
|
if (rampProvider !== "binance") setRampProvider("binance");
|
|
@@ -9774,15 +10107,13 @@ var init_onboarding_setup = __esm({
|
|
|
9774
10107
|
},
|
|
9775
10108
|
{
|
|
9776
10109
|
elId: "buymenu-provider-selector" /* providerSelector */,
|
|
9777
|
-
title: "
|
|
9778
|
-
description: "
|
|
9779
|
-
onNext: () => {
|
|
9780
|
-
}
|
|
10110
|
+
title: "passport:buyMenu.onboarding.providerSelector.title",
|
|
10111
|
+
description: "passport:buyMenu.onboarding.providerSelector.description"
|
|
9781
10112
|
},
|
|
9782
10113
|
{
|
|
9783
10114
|
elId: "buymenu-binance-menu" /* binanceMenu */,
|
|
9784
|
-
title: "
|
|
9785
|
-
description: "
|
|
10115
|
+
title: "passport:buyMenu.onboarding.binanceMenu.title",
|
|
10116
|
+
description: "passport:buyMenu.onboarding.binanceMenu.description",
|
|
9786
10117
|
onNext: () => {
|
|
9787
10118
|
useBinanceStore.getState().setQuoteData({
|
|
9788
10119
|
totalAmount: "0.12345678",
|
|
@@ -9798,13 +10129,17 @@ var init_onboarding_setup = __esm({
|
|
|
9798
10129
|
},
|
|
9799
10130
|
{
|
|
9800
10131
|
elId: "buymenu-binance-estimate" /* binanceEstimate */,
|
|
9801
|
-
title: "
|
|
9802
|
-
description: "
|
|
10132
|
+
title: "passport:buyMenu.onboarding.binanceEstimate.title",
|
|
10133
|
+
description: "passport:buyMenu.onboarding.binanceEstimate.description",
|
|
9803
10134
|
onNext: () => {
|
|
9804
10135
|
useBuyMenuStore.getState().setIsProviderSummary(false);
|
|
9805
|
-
useLayoutDataStore.getState().setPage("buy" /* BUY */);
|
|
9806
10136
|
useBinanceStore.getState().setQuoteData(null);
|
|
9807
10137
|
}
|
|
10138
|
+
},
|
|
10139
|
+
{
|
|
10140
|
+
elId: "buymenu-tour-button" /* tourButton */,
|
|
10141
|
+
title: "passport:common.onboarding.tourButton.title",
|
|
10142
|
+
description: "passport:common.onboarding.tourButton.description"
|
|
9808
10143
|
}
|
|
9809
10144
|
];
|
|
9810
10145
|
}
|
|
@@ -11681,11 +12016,12 @@ function BuyMenu() {
|
|
|
11681
12016
|
showProviderTrigger && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
11682
12017
|
Button,
|
|
11683
12018
|
{
|
|
12019
|
+
ref: (inst) => onboarder.registerElement("buymenu-tour-button" /* tourButton */, inst),
|
|
11684
12020
|
variant: "ghost",
|
|
11685
12021
|
size: "icon",
|
|
11686
12022
|
className: "flex-none",
|
|
11687
12023
|
onClick: () => onboarder.startTour(BUY_MENU_BINANCE_TOUR),
|
|
11688
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react19.
|
|
12024
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react19.CircleQuestionMarkIcon, { className: "h-4 w-4" })
|
|
11689
12025
|
}
|
|
11690
12026
|
),
|
|
11691
12027
|
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
@@ -20011,6 +20347,7 @@ function SenderSelector(props) {
|
|
|
20011
20347
|
pendingWalletRef.current = null;
|
|
20012
20348
|
loginDirectWallet(pendingProfile);
|
|
20013
20349
|
}, [directWalletIsConnected, directWalletAddress]);
|
|
20350
|
+
const isWalletProfileAvailable = !!directWalletProfile?.meta?.walletName && !!directWalletProfile?.externalId;
|
|
20014
20351
|
return /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
20015
20352
|
bridgeSenders.map((sender) => /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
|
|
20016
20353
|
Button,
|
|
@@ -20054,6 +20391,21 @@ function SenderSelector(props) {
|
|
|
20054
20391
|
},
|
|
20055
20392
|
`sender-${sender.address}`
|
|
20056
20393
|
)),
|
|
20394
|
+
!isWalletProfileAvailable && /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Highlight, { type: "info", className: "flex flex-col w-full gap-[var(--ui-kit-gap)]", children: [
|
|
20395
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)("span", { className: "whitespace-pre-line", children: t("passport:bridgeMenu.onboarding.bridgeSenderWalletSelector.description") }),
|
|
20396
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
|
|
20397
|
+
Button,
|
|
20398
|
+
{
|
|
20399
|
+
variant: "default",
|
|
20400
|
+
size: "large",
|
|
20401
|
+
className: "w-full",
|
|
20402
|
+
onClick: () => {
|
|
20403
|
+
useLayoutDataStore.getState().setPage("manage-wallet" /* MANAGE_WALLET */);
|
|
20404
|
+
},
|
|
20405
|
+
children: t("passport:bridgeMenu.actions.addExternalWalletProfile")
|
|
20406
|
+
}
|
|
20407
|
+
)
|
|
20408
|
+
] }),
|
|
20057
20409
|
walletMessage && /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Highlight, { type: "info", className: "flex flex-col w-full gap-[var(--ui-kit-gap)]", children: [
|
|
20058
20410
|
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)("span", { children: walletMessage }),
|
|
20059
20411
|
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
|
|
@@ -20542,12 +20894,14 @@ function getAssetBalance(asset) {
|
|
|
20542
20894
|
return Number((0, import_viem13.formatUnits)(BigInt(asset.balance || "0"), asset.decimals || 18));
|
|
20543
20895
|
}
|
|
20544
20896
|
function isOririnChainEmbarkSupported(originChain) {
|
|
20897
|
+
const activeChainId = useSession.getState().activeChainId;
|
|
20545
20898
|
const supportedChain = [...import_read20.SUPPORTED_CHAINS].map(([chainId]) => chainId);
|
|
20546
|
-
return supportedChain.includes(CHAINS_UI_META[originChain].chainID);
|
|
20899
|
+
return supportedChain.includes(CHAINS_UI_META[originChain].chainID) && activeChainId === CHAINS_UI_META[originChain].chainID;
|
|
20547
20900
|
}
|
|
20548
20901
|
var import_read20, import_viem13;
|
|
20549
20902
|
var init_utils9 = __esm({
|
|
20550
20903
|
"src/internal/components/SendMenu/hyperbridge/utils.ts"() {
|
|
20904
|
+
init_SessionContext();
|
|
20551
20905
|
import_read20 = require("@embarkai/core/read");
|
|
20552
20906
|
import_viem13 = require("viem");
|
|
20553
20907
|
init_chains();
|
|
@@ -20895,7 +21249,7 @@ function useMenuTitle(warpRoutes) {
|
|
|
20895
21249
|
const updateMenuTitle = useFlowSelectorStore.getState().setMenuTitle;
|
|
20896
21250
|
switch (true) {
|
|
20897
21251
|
case bridgeStep === "sender-selector":
|
|
20898
|
-
updateMenuTitle(t("passport:bridgeMenu.labels.
|
|
21252
|
+
updateMenuTitle(t("passport:bridgeMenu.labels.selectSender"));
|
|
20899
21253
|
break;
|
|
20900
21254
|
case bridgeStep === "select-token":
|
|
20901
21255
|
updateMenuTitle(t("passport:bridgeMenu.labels.selectToken"));
|
|
@@ -20929,6 +21283,161 @@ var init_useMenuTitle = __esm({
|
|
|
20929
21283
|
}
|
|
20930
21284
|
});
|
|
20931
21285
|
|
|
21286
|
+
// src/internal/components/SendMenu/send/useSendStore.ts
|
|
21287
|
+
var import_zustand15, useSendStore;
|
|
21288
|
+
var init_useSendStore = __esm({
|
|
21289
|
+
"src/internal/components/SendMenu/send/useSendStore.ts"() {
|
|
21290
|
+
import_zustand15 = require("zustand");
|
|
21291
|
+
init_useFlowSelector();
|
|
21292
|
+
useSendStore = (0, import_zustand15.create)((set) => ({
|
|
21293
|
+
recipient: "",
|
|
21294
|
+
//
|
|
21295
|
+
amount: "",
|
|
21296
|
+
selectedAsset: null,
|
|
21297
|
+
//
|
|
21298
|
+
txStep: "input",
|
|
21299
|
+
//
|
|
21300
|
+
// sendError: null,
|
|
21301
|
+
//
|
|
21302
|
+
setRecipient: (recipient) => {
|
|
21303
|
+
useFlowSelectorStore.getState().setError(null);
|
|
21304
|
+
set({ recipient });
|
|
21305
|
+
},
|
|
21306
|
+
//
|
|
21307
|
+
setAmount: (amount) => {
|
|
21308
|
+
useFlowSelectorStore.getState().setError(null);
|
|
21309
|
+
set({ amount });
|
|
21310
|
+
},
|
|
21311
|
+
setSelectedAsset: (selectedAsset) => {
|
|
21312
|
+
useFlowSelectorStore.getState().setError(null);
|
|
21313
|
+
set({ selectedAsset });
|
|
21314
|
+
},
|
|
21315
|
+
//
|
|
21316
|
+
setTxStep: (txStep) => {
|
|
21317
|
+
useFlowSelectorStore.getState().setError(null);
|
|
21318
|
+
useFlowSelectorStore.getState().setRenderKey(`send-${txStep}-${Date.now()}`);
|
|
21319
|
+
set({ txStep });
|
|
21320
|
+
}
|
|
21321
|
+
}));
|
|
21322
|
+
}
|
|
21323
|
+
});
|
|
21324
|
+
|
|
21325
|
+
// src/internal/components/SendMenu/onboarding.setup.ts
|
|
21326
|
+
var TOUR_SEND_ASSET, TOUR_BRIDGE_QUOTE, SEND_MENU_TOUR, BRIDGE_MENU_TOUR;
|
|
21327
|
+
var init_onboarding_setup2 = __esm({
|
|
21328
|
+
"src/internal/components/SendMenu/onboarding.setup.ts"() {
|
|
21329
|
+
init_useBridgeStore();
|
|
21330
|
+
init_useSendStore();
|
|
21331
|
+
TOUR_SEND_ASSET = {
|
|
21332
|
+
name: "USDT",
|
|
21333
|
+
symbol: "USDT",
|
|
21334
|
+
address: "0xee7Fc418f5659a366b548b4E205d374C1F0B46e7",
|
|
21335
|
+
balance: "1000",
|
|
21336
|
+
formattedBalance: "1000",
|
|
21337
|
+
type: "erc20"
|
|
21338
|
+
};
|
|
21339
|
+
TOUR_BRIDGE_QUOTE = {
|
|
21340
|
+
amount: "123",
|
|
21341
|
+
igpFee: "0.123",
|
|
21342
|
+
localFee: "0.456",
|
|
21343
|
+
igpSymbol: "USDT",
|
|
21344
|
+
localSymbol: "USDT"
|
|
21345
|
+
};
|
|
21346
|
+
SEND_MENU_TOUR = [
|
|
21347
|
+
{
|
|
21348
|
+
elId: "sendmenu-page" /* sendMenu */,
|
|
21349
|
+
title: "passport:sendMenu.onboarding.sendMenu.title",
|
|
21350
|
+
description: "passport:sendMenu.onboarding.sendMenu.description",
|
|
21351
|
+
waitSecs: 4,
|
|
21352
|
+
onNext: () => {
|
|
21353
|
+
const { setAmount, setRecipient, setSelectedAsset, setTxStep } = useSendStore.getState();
|
|
21354
|
+
setSelectedAsset(TOUR_SEND_ASSET);
|
|
21355
|
+
setAmount("123");
|
|
21356
|
+
setRecipient("0x1234567890123456789012345678901234567890");
|
|
21357
|
+
setTxStep("confirm");
|
|
21358
|
+
}
|
|
21359
|
+
},
|
|
21360
|
+
{
|
|
21361
|
+
elId: "sendmenu-crypto-summary" /* sendCryptoSummary */,
|
|
21362
|
+
title: "passport:sendMenu.onboarding.sendCryptoSummary.title",
|
|
21363
|
+
description: "passport:sendMenu.onboarding.sendCryptoSummary.description",
|
|
21364
|
+
onNext: () => {
|
|
21365
|
+
const { setAmount, setRecipient, setSelectedAsset, setTxStep } = useSendStore.getState();
|
|
21366
|
+
setTxStep("input");
|
|
21367
|
+
setRecipient("");
|
|
21368
|
+
setAmount("");
|
|
21369
|
+
setSelectedAsset(null);
|
|
21370
|
+
}
|
|
21371
|
+
},
|
|
21372
|
+
{
|
|
21373
|
+
elId: "sendmenu-tour-button" /* tourButton */,
|
|
21374
|
+
title: "passport:common.onboarding.tourButton.title",
|
|
21375
|
+
description: "passport:common.onboarding.tourButton.description"
|
|
21376
|
+
}
|
|
21377
|
+
];
|
|
21378
|
+
BRIDGE_MENU_TOUR = [
|
|
21379
|
+
{
|
|
21380
|
+
elId: "sendmenu-page" /* sendMenu */,
|
|
21381
|
+
title: "passport:bridgeMenu.onboarding.bridgeMenu.title",
|
|
21382
|
+
description: "passport:bridgeMenu.onboarding.bridgeMenu.description",
|
|
21383
|
+
waitSecs: 5,
|
|
21384
|
+
onNext: () => {
|
|
21385
|
+
const { setHyperRoute, setBridgeAssetSymbol, setOriginChain, setDestinationChain } = useBridgeStore.getState();
|
|
21386
|
+
setHyperRoute("USDT/ethereum-lumiaprism");
|
|
21387
|
+
setBridgeAssetSymbol("USDT");
|
|
21388
|
+
setOriginChain("lumiaprism");
|
|
21389
|
+
setDestinationChain("ethereum");
|
|
21390
|
+
}
|
|
21391
|
+
},
|
|
21392
|
+
{
|
|
21393
|
+
elId: "bridgemenu-sender-wallet-selector" /* bridgeSenderWalletSelector */,
|
|
21394
|
+
title: "passport:bridgeMenu.onboarding.bridgeSenderWalletSelector.title",
|
|
21395
|
+
description: "passport:bridgeMenu.onboarding.bridgeSenderWalletSelector.description"
|
|
21396
|
+
},
|
|
21397
|
+
{
|
|
21398
|
+
elId: "bridgemenu-crypto-menu-asset-selector" /* bridgeCryptoAssetSelector */,
|
|
21399
|
+
title: "passport:bridgeMenu.onboarding.bridgeCryptoAssetSelector.title",
|
|
21400
|
+
description: "passport:bridgeMenu.onboarding.bridgeCryptoAssetSelector.description"
|
|
21401
|
+
},
|
|
21402
|
+
{
|
|
21403
|
+
elId: "bridgemenu-crypto-menu-chain-pair-swapper" /* bridgeChainPairSwapper */,
|
|
21404
|
+
title: "passport:bridgeMenu.onboarding.bridgeChainPairSwapper.title",
|
|
21405
|
+
description: "passport:bridgeMenu.onboarding.bridgeChainPairSwapper.description"
|
|
21406
|
+
},
|
|
21407
|
+
{
|
|
21408
|
+
elId: "bridgemenu-crypto-menu-amount-recipient-inputs" /* bridgeAmountRecipientInputs */,
|
|
21409
|
+
title: "passport:bridgeMenu.onboarding.bridgeAmountRecipientInputs.title",
|
|
21410
|
+
description: "passport:bridgeMenu.onboarding.bridgeAmountRecipientInputs.description"
|
|
21411
|
+
},
|
|
21412
|
+
{
|
|
21413
|
+
elId: "bridgemenu-crypto-menu-estimate-quote-button" /* bridgeEstimateQuoteButton */,
|
|
21414
|
+
title: "passport:bridgeMenu.onboarding.bridgeEstimateQuoteButton.title",
|
|
21415
|
+
description: "passport:bridgeMenu.onboarding.bridgeEstimateQuoteButton.description",
|
|
21416
|
+
onNext: () => {
|
|
21417
|
+
const { setQuote, setBridgeStep } = useBridgeStore.getState();
|
|
21418
|
+
setQuote(TOUR_BRIDGE_QUOTE);
|
|
21419
|
+
setBridgeStep("confirm");
|
|
21420
|
+
}
|
|
21421
|
+
},
|
|
21422
|
+
{
|
|
21423
|
+
elId: "bridgemenu-crypto-menu-estimate-details-menu" /* bridgeEstimatedQuoteMenu */,
|
|
21424
|
+
title: "passport:bridgeMenu.onboarding.bridgeEstimatedQuoteMenu.title",
|
|
21425
|
+
description: "passport:bridgeMenu.onboarding.bridgeEstimatedQuoteMenu.description",
|
|
21426
|
+
onNext: () => {
|
|
21427
|
+
const { setQuote, setBridgeStep } = useBridgeStore.getState();
|
|
21428
|
+
setQuote(null);
|
|
21429
|
+
setBridgeStep("select");
|
|
21430
|
+
}
|
|
21431
|
+
},
|
|
21432
|
+
{
|
|
21433
|
+
elId: "sendmenu-tour-button" /* tourButton */,
|
|
21434
|
+
title: "passport:common.onboarding.tourButton.title",
|
|
21435
|
+
description: "passport:common.onboarding.tourButton.description"
|
|
21436
|
+
}
|
|
21437
|
+
];
|
|
21438
|
+
}
|
|
21439
|
+
});
|
|
21440
|
+
|
|
20932
21441
|
// src/internal/components/SendMenu/hyperbridge/components/ResolveChainIcon.tsx
|
|
20933
21442
|
function ResolveChainIcon(props) {
|
|
20934
21443
|
const Icon2 = CHAINS_UI_META[props.chainName]?.Icon || TOKENS_ICONS.EMBARKAI;
|
|
@@ -20948,6 +21457,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
20948
21457
|
const qc = (0, import_react_query49.useQueryClient)();
|
|
20949
21458
|
const { t } = useT();
|
|
20950
21459
|
const address = useSession((st) => st.address);
|
|
21460
|
+
const activeChainId = useSession((st) => st.activeChainId);
|
|
20951
21461
|
const directWalletAddress = useExternalWalletStore((st) => st.externalAddress);
|
|
20952
21462
|
const directWalletChainId = useExternalWalletStore((st) => st.externalChainId);
|
|
20953
21463
|
const { switchChainAsync } = (0, import_wagmi5.useSwitchChain)();
|
|
@@ -21070,7 +21580,7 @@ function useBridgeBalance(hyperlaneWarpRoutes) {
|
|
|
21070
21580
|
break;
|
|
21071
21581
|
}
|
|
21072
21582
|
}, [bridgeSender, originChain, directWalletChainId, switchChainAsync]);
|
|
21073
|
-
const embarkBalance = embarkTokenBalanace ? getAssetBalance(embarkTokenBalanace) : 0;
|
|
21583
|
+
const embarkBalance = CHAINS_UI_META[originChain].chainID === activeChainId && embarkTokenBalanace ? getAssetBalance(embarkTokenBalanace) : 0;
|
|
21074
21584
|
const externalWalletBalance = isSelectedTokenNative ? (0, import_viem14.formatUnits)(externalNativeBalanceData?.value || BigInt(0), externalNativeBalanceData?.decimals || 18) : (0, import_viem14.formatUnits)(externalBalanceData?.value || BigInt(0), externalBalanceData?.decimals || 18);
|
|
21075
21585
|
return {
|
|
21076
21586
|
routeTokenBalance: isEmbarkSender ? embarkBalance : externalWalletBalance,
|
|
@@ -21130,83 +21640,91 @@ function SelectStep(props) {
|
|
|
21130
21640
|
const isQuoteEstimationDisabled = isQuoteEstimating || !hyperlaneWarpRoutes.length || !selectedSender || !originChain || !destinationChain || !hyperRoute || isFalsyAmount || isBalanceInsufficient;
|
|
21131
21641
|
return /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)] items-center", children: [
|
|
21132
21642
|
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
21133
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21134
|
-
"div",
|
|
21135
|
-
{
|
|
21136
|
-
className: cn(
|
|
21137
|
-
"flex items-center justify-between gap-[var(--ui-kit-gap)]",
|
|
21138
|
-
"text-[10px] text-[var(--ui-kit-fg-muted)] leading-4"
|
|
21139
|
-
),
|
|
21140
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.sender") })
|
|
21141
|
-
}
|
|
21142
|
-
),
|
|
21143
21643
|
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21144
|
-
|
|
21644
|
+
"div",
|
|
21145
21645
|
{
|
|
21146
|
-
|
|
21147
|
-
|
|
21148
|
-
className: "w-full justify-between",
|
|
21149
|
-
onClick: () => {
|
|
21150
|
-
useFlowSelectorStore.getState().setError(null);
|
|
21151
|
-
useBridgeStore.getState().setBridgeStep("sender-selector");
|
|
21152
|
-
},
|
|
21646
|
+
ref: (inst) => onboarder.registerElement("bridgemenu-sender-wallet-selector" /* bridgeSenderWalletSelector */, inst),
|
|
21647
|
+
className: "flex flex-col gap-[var(--ui-kit-gap)]",
|
|
21153
21648
|
children: [
|
|
21154
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.
|
|
21155
|
-
|
|
21156
|
-
|
|
21157
|
-
|
|
21158
|
-
|
|
21159
|
-
|
|
21160
|
-
|
|
21161
|
-
|
|
21162
|
-
|
|
21649
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)] leading-4", children: t("passport:bridgeMenu.labels.selectSender") }),
|
|
21650
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21651
|
+
Button,
|
|
21652
|
+
{
|
|
21653
|
+
disabled: !hyperlaneWarpRoutes.length || isQuoteEstimating,
|
|
21654
|
+
variant: "secondary",
|
|
21655
|
+
className: "w-full justify-between",
|
|
21656
|
+
onClick: () => {
|
|
21657
|
+
useFlowSelectorStore.getState().setError(null);
|
|
21658
|
+
useBridgeStore.getState().setBridgeStep("sender-selector");
|
|
21659
|
+
},
|
|
21660
|
+
children: [
|
|
21661
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
21662
|
+
selectedSender?.Icon && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(selectedSender.Icon, { className: "w-6 h-6" }),
|
|
21663
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { children: selectedSender?.name || "N / A" })
|
|
21664
|
+
] }),
|
|
21665
|
+
selectedSender?.address && /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: "block text-[10px] font-mono!", children: [
|
|
21666
|
+
selectedSender.address.slice(0, 6),
|
|
21667
|
+
"...",
|
|
21668
|
+
selectedSender.address.slice(-4)
|
|
21669
|
+
] })
|
|
21670
|
+
]
|
|
21671
|
+
}
|
|
21672
|
+
)
|
|
21163
21673
|
]
|
|
21164
21674
|
}
|
|
21165
21675
|
),
|
|
21166
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)] text-[10px]", children: [
|
|
21167
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.selectToken") }),
|
|
21168
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "w-4 h-4" }),
|
|
21169
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: "flex items-center gap-[var(--ui-kit-gap)] leading-4", children: [
|
|
21170
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: [
|
|
21171
|
-
t("passport:common.balance"),
|
|
21172
|
-
": "
|
|
21173
|
-
] }),
|
|
21174
|
-
isRouteTokenBalanceLoading && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.LoaderIcon, { className: "w-4 h-4 animate-spin text-[var(--ui-kit-fg-muted)]" }),
|
|
21175
|
-
!isRouteTokenBalanceLoading && /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: cn("font-semibold", { "text-[var(--ui-kit-bg-error)]": isBalanceInsufficient }), children: [
|
|
21176
|
-
formatPrice(Number(routeTokenBalance || 0)),
|
|
21177
|
-
" ",
|
|
21178
|
-
selectedWarpRoute?.symbol
|
|
21179
|
-
] })
|
|
21180
|
-
] })
|
|
21181
|
-
] }),
|
|
21182
21676
|
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21183
|
-
|
|
21677
|
+
"div",
|
|
21184
21678
|
{
|
|
21185
|
-
|
|
21186
|
-
|
|
21187
|
-
className: "w-full justify-between",
|
|
21188
|
-
onClick: () => {
|
|
21189
|
-
useFlowSelectorStore.getState().setError(null);
|
|
21190
|
-
useBridgeStore.getState().setBridgeStep("select-token");
|
|
21191
|
-
},
|
|
21679
|
+
ref: (inst) => onboarder.registerElement("bridgemenu-crypto-menu-asset-selector" /* bridgeCryptoAssetSelector */, inst),
|
|
21680
|
+
className: "flex flex-col gap-[var(--ui-kit-gap)]",
|
|
21192
21681
|
children: [
|
|
21193
|
-
|
|
21194
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21195
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.
|
|
21196
|
-
|
|
21197
|
-
|
|
21198
|
-
|
|
21682
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "flex items-center justify-between gap-[var(--ui-kit-gap)] text-[10px] leading-4", children: [
|
|
21683
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.selectToken") }),
|
|
21684
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
21685
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: [
|
|
21686
|
+
t("passport:common.balance"),
|
|
21687
|
+
": "
|
|
21688
|
+
] }),
|
|
21689
|
+
isRouteTokenBalanceLoading && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.LoaderIcon, { className: "w-4 h-4 animate-spin text-[var(--ui-kit-fg-muted)]" }),
|
|
21690
|
+
!isRouteTokenBalanceLoading && /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: cn("font-semibold", { "text-[var(--ui-kit-bg-error)]": isBalanceInsufficient }), children: [
|
|
21691
|
+
formatPrice(Number(routeTokenBalance || 0)),
|
|
21692
|
+
" ",
|
|
21693
|
+
selectedWarpRoute?.symbol
|
|
21694
|
+
] })
|
|
21695
|
+
] })
|
|
21199
21696
|
] }),
|
|
21200
|
-
|
|
21201
|
-
|
|
21697
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21698
|
+
Button,
|
|
21202
21699
|
{
|
|
21203
|
-
|
|
21204
|
-
|
|
21205
|
-
className: "
|
|
21206
|
-
|
|
21207
|
-
|
|
21208
|
-
|
|
21209
|
-
|
|
21700
|
+
disabled: !hyperlaneWarpRoutes.length || isQuoteEstimating,
|
|
21701
|
+
variant: "secondary",
|
|
21702
|
+
className: "w-full justify-between",
|
|
21703
|
+
onClick: () => {
|
|
21704
|
+
useFlowSelectorStore.getState().setError(null);
|
|
21705
|
+
useBridgeStore.getState().setBridgeStep("select-token");
|
|
21706
|
+
},
|
|
21707
|
+
children: [
|
|
21708
|
+
selectedWarpRoute ? /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
21709
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(SelectedWarpRoteIcon, { className: "w-6 h-6" }),
|
|
21710
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { children: selectedWarpRoute.symbol })
|
|
21711
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
21712
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.ArrowLeftRightIcon, { className: "w-6 h-6" }),
|
|
21713
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { children: hyperlaneWarpRoutes.length ? t("passport:bridgeMenu.labels.selectToken") : t("passport:bridgeMenu.errors.noWarpRoutes") })
|
|
21714
|
+
] }),
|
|
21715
|
+
!!selectedWarpRoute?.chainPair && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21716
|
+
Badge,
|
|
21717
|
+
{
|
|
21718
|
+
variant: "outline",
|
|
21719
|
+
size: "medium",
|
|
21720
|
+
className: "bg-[var(--ui-kit-bg)] flex items-center gap-[var(--ui-kit-gap)]",
|
|
21721
|
+
children: selectedWarpRoute.chainPair.map((chain, chIdx) => /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(import_react71.Fragment, { children: [
|
|
21722
|
+
chIdx > 0 && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.ArrowLeftRightIcon, { className: "w-4 h-4 " }),
|
|
21723
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(ResolveChainIcon, { chainName: chain.chainName, className: "w-4 h-4" })
|
|
21724
|
+
] }, `${selectedWarpRoute.id}-icon-${chain.chainID}-${chIdx}`))
|
|
21725
|
+
}
|
|
21726
|
+
)
|
|
21727
|
+
]
|
|
21210
21728
|
}
|
|
21211
21729
|
)
|
|
21212
21730
|
]
|
|
@@ -21215,82 +21733,87 @@ function SelectStep(props) {
|
|
|
21215
21733
|
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21216
21734
|
"div",
|
|
21217
21735
|
{
|
|
21218
|
-
|
|
21219
|
-
|
|
21220
|
-
"text-[10px] text-[var(--ui-kit-fg-muted)] leading-4"
|
|
21221
|
-
),
|
|
21736
|
+
ref: (inst) => onboarder.registerElement("bridgemenu-crypto-menu-chain-pair-swapper" /* bridgeChainPairSwapper */, inst),
|
|
21737
|
+
className: "flex flex-col gap-[var(--ui-kit-gap)]",
|
|
21222
21738
|
children: [
|
|
21223
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.
|
|
21224
|
-
|
|
21225
|
-
|
|
21226
|
-
|
|
21227
|
-
|
|
21228
|
-
|
|
21229
|
-
|
|
21230
|
-
|
|
21231
|
-
|
|
21232
|
-
|
|
21233
|
-
|
|
21234
|
-
Button,
|
|
21235
|
-
{
|
|
21236
|
-
size: "icon",
|
|
21237
|
-
disabled: !hyperlaneWarpRoutes.length || isQuoteEstimating,
|
|
21238
|
-
variant: "ghost",
|
|
21239
|
-
onClick: swapChains,
|
|
21240
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.ArrowRightLeftIcon, { className: "w-4 h-4 " })
|
|
21241
|
-
}
|
|
21242
|
-
),
|
|
21243
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(Badge, { variant: "outline", size: "large", className: "block flex-1 flex gap-[var(--ui-kit-gap)] justify-center", children: destinationChain ? /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(import_jsx_runtime97.Fragment, { children: [
|
|
21244
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(ResolveChainIcon, { chainName: destinationChain, className: "w-6 h-6" }),
|
|
21245
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block max-w-[100px] truncate", children: CHAINS_UI_META[destinationChain]?.chainLabel })
|
|
21246
|
-
] }) : /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "N/A" }) })
|
|
21247
|
-
] }),
|
|
21248
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)] leading-4", children: t("passport:common.amount") }),
|
|
21249
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21250
|
-
Input,
|
|
21251
|
-
{
|
|
21252
|
-
type: "text",
|
|
21253
|
-
disabled: isQuoteEstimating || !originChain || !destinationChain || !hyperRoute,
|
|
21254
|
-
placeholder: t("passport:common.amount"),
|
|
21255
|
-
onChange: (e) => {
|
|
21256
|
-
useFlowSelectorStore.getState().setError(null);
|
|
21257
|
-
let { value } = e.target;
|
|
21258
|
-
const regex = /^(0|[1-9]\d*)(\.\d{0,5})?$/;
|
|
21259
|
-
if (value.length > 1 && value.startsWith("0") && !value.startsWith("0.")) {
|
|
21260
|
-
value = value.slice(1);
|
|
21261
|
-
}
|
|
21262
|
-
if (regex.test(value) || value === "") {
|
|
21263
|
-
if (value === "") {
|
|
21264
|
-
useBridgeStore.getState().setAmount("0");
|
|
21265
|
-
} else {
|
|
21266
|
-
useBridgeStore.getState().setAmount(value);
|
|
21739
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21740
|
+
"div",
|
|
21741
|
+
{
|
|
21742
|
+
className: cn(
|
|
21743
|
+
"flex items-center justify-between gap-[var(--ui-kit-gap)]",
|
|
21744
|
+
"text-[10px] text-[var(--ui-kit-fg-muted)] leading-4"
|
|
21745
|
+
),
|
|
21746
|
+
children: [
|
|
21747
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.fromChain") }),
|
|
21748
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.toChain") })
|
|
21749
|
+
]
|
|
21267
21750
|
}
|
|
21268
|
-
|
|
21269
|
-
|
|
21270
|
-
|
|
21271
|
-
|
|
21272
|
-
|
|
21273
|
-
|
|
21274
|
-
|
|
21275
|
-
|
|
21276
|
-
|
|
21277
|
-
|
|
21278
|
-
|
|
21279
|
-
|
|
21280
|
-
|
|
21751
|
+
),
|
|
21752
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "w-full flex items-center justify-center", children: [
|
|
21753
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(Badge, { variant: "outline", size: "large", className: "block flex-1 flex gap-[var(--ui-kit-gap)] justify-center", children: originChain ? /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(import_jsx_runtime97.Fragment, { children: [
|
|
21754
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(ResolveChainIcon, { chainName: originChain, className: "w-6 h-6" }),
|
|
21755
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block max-w-[100px] truncate", children: CHAINS_UI_META[originChain]?.chainLabel })
|
|
21756
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "N/A" }) }),
|
|
21757
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21758
|
+
Button,
|
|
21759
|
+
{
|
|
21760
|
+
size: "icon",
|
|
21761
|
+
disabled: !hyperlaneWarpRoutes.length || isQuoteEstimating,
|
|
21762
|
+
variant: "ghost",
|
|
21763
|
+
onClick: swapChains,
|
|
21764
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.ArrowRightLeftIcon, { className: "w-4 h-4 " })
|
|
21765
|
+
}
|
|
21766
|
+
),
|
|
21767
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(Badge, { variant: "outline", size: "large", className: "block flex-1 flex gap-[var(--ui-kit-gap)] justify-center", children: destinationChain ? /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(import_jsx_runtime97.Fragment, { children: [
|
|
21768
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(ResolveChainIcon, { chainName: destinationChain, className: "w-6 h-6" }),
|
|
21769
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block max-w-[100px] truncate", children: CHAINS_UI_META[destinationChain]?.chainLabel })
|
|
21770
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "N/A" }) })
|
|
21771
|
+
] })
|
|
21772
|
+
]
|
|
21281
21773
|
}
|
|
21282
21774
|
),
|
|
21283
21775
|
/* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21284
21776
|
"div",
|
|
21285
21777
|
{
|
|
21286
|
-
|
|
21287
|
-
|
|
21288
|
-
"w-full flex flex-col",
|
|
21289
|
-
"text-[10px]",
|
|
21290
|
-
"gap-[var(--ui-kit-gap)] pb-[var(--ui-kit-pd)]"
|
|
21291
|
-
),
|
|
21778
|
+
ref: (inst) => onboarder.registerElement("bridgemenu-crypto-menu-amount-recipient-inputs" /* bridgeAmountRecipientInputs */, inst),
|
|
21779
|
+
className: "flex flex-col gap-[var(--ui-kit-gap)]",
|
|
21292
21780
|
children: [
|
|
21293
|
-
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)] leading-4", children: t("passport:
|
|
21781
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)] text-[10px] leading-4", children: t("passport:common.amount") }),
|
|
21782
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21783
|
+
Input,
|
|
21784
|
+
{
|
|
21785
|
+
type: "text",
|
|
21786
|
+
disabled: isQuoteEstimating || !originChain || !destinationChain || !hyperRoute,
|
|
21787
|
+
placeholder: t("passport:common.amount"),
|
|
21788
|
+
onChange: (e) => {
|
|
21789
|
+
useFlowSelectorStore.getState().setError(null);
|
|
21790
|
+
let { value } = e.target;
|
|
21791
|
+
const regex = /^(0|[1-9]\d*)(\.\d{0,5})?$/;
|
|
21792
|
+
if (value.length > 1 && value.startsWith("0") && !value.startsWith("0.")) {
|
|
21793
|
+
value = value.slice(1);
|
|
21794
|
+
}
|
|
21795
|
+
if (regex.test(value) || value === "") {
|
|
21796
|
+
if (value === "") {
|
|
21797
|
+
useBridgeStore.getState().setAmount("0");
|
|
21798
|
+
} else {
|
|
21799
|
+
useBridgeStore.getState().setAmount(value);
|
|
21800
|
+
}
|
|
21801
|
+
}
|
|
21802
|
+
},
|
|
21803
|
+
value: amount,
|
|
21804
|
+
element: /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21805
|
+
Button,
|
|
21806
|
+
{
|
|
21807
|
+
size: "small",
|
|
21808
|
+
variant: "ghost",
|
|
21809
|
+
disabled: isBalanceInsufficient,
|
|
21810
|
+
onClick: () => useBridgeStore.getState().setAmount(Number(routeTokenBalance || 0).toString()),
|
|
21811
|
+
children: String(t("passport:common.max")).toUpperCase()
|
|
21812
|
+
}
|
|
21813
|
+
)
|
|
21814
|
+
}
|
|
21815
|
+
),
|
|
21816
|
+
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)] text-[10px] leading-4", children: t("passport:bridgeMenu.labels.optionalRecipient") }),
|
|
21294
21817
|
/* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
|
|
21295
21818
|
Input,
|
|
21296
21819
|
{
|
|
@@ -21325,6 +21848,7 @@ function SelectStep(props) {
|
|
|
21325
21848
|
!isError && /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
|
|
21326
21849
|
Button,
|
|
21327
21850
|
{
|
|
21851
|
+
ref: (inst) => onboarder.registerElement("bridgemenu-crypto-menu-estimate-quote-button" /* bridgeEstimateQuoteButton */, inst),
|
|
21328
21852
|
size: "large",
|
|
21329
21853
|
variant: "default",
|
|
21330
21854
|
className: "w-full",
|
|
@@ -21347,6 +21871,7 @@ var init_SelectStep = __esm({
|
|
|
21347
21871
|
import_react71 = require("react");
|
|
21348
21872
|
init_priceFormatter();
|
|
21349
21873
|
init_utils2();
|
|
21874
|
+
init_Onboarding();
|
|
21350
21875
|
init_badge();
|
|
21351
21876
|
init_button();
|
|
21352
21877
|
init_input();
|
|
@@ -21410,97 +21935,104 @@ function ConfirmStep(props) {
|
|
|
21410
21935
|
return routeId === hyperRoute && chainPairNames.includes(originChain) && chainPairNames.includes(destinationChain);
|
|
21411
21936
|
});
|
|
21412
21937
|
const isConfirmationDisabled = !quote || isAssetBridging || !userConsent;
|
|
21413
|
-
return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(
|
|
21414
|
-
|
|
21415
|
-
|
|
21416
|
-
|
|
21417
|
-
|
|
21418
|
-
|
|
21419
|
-
|
|
21420
|
-
|
|
21421
|
-
|
|
21422
|
-
|
|
21423
|
-
|
|
21424
|
-
|
|
21425
|
-
|
|
21426
|
-
|
|
21427
|
-
|
|
21428
|
-
|
|
21429
|
-
|
|
21430
|
-
|
|
21431
|
-
|
|
21432
|
-
|
|
21433
|
-
|
|
21434
|
-
|
|
21435
|
-
|
|
21436
|
-
|
|
21437
|
-
|
|
21438
|
-
|
|
21439
|
-
|
|
21440
|
-
|
|
21441
|
-
quote.
|
|
21442
|
-
|
|
21443
|
-
|
|
21444
|
-
|
|
21445
|
-
|
|
21446
|
-
|
|
21447
|
-
|
|
21448
|
-
|
|
21449
|
-
|
|
21450
|
-
|
|
21451
|
-
quote.
|
|
21938
|
+
return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(
|
|
21939
|
+
"div",
|
|
21940
|
+
{
|
|
21941
|
+
ref: (inst) => onboarder.registerElement("bridgemenu-crypto-menu-estimate-details-menu" /* bridgeEstimatedQuoteMenu */, inst),
|
|
21942
|
+
className: "flex flex-col gap-[var(--ui-kit-gap)] w-full",
|
|
21943
|
+
children: [
|
|
21944
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Highlight, { type: "info", className: "flex flex-col gap-[var(--ui-kit-gap)] w-full", children: [
|
|
21945
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
|
|
21946
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:common.asset") }),
|
|
21947
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: selectedWarpRoute.symbol })
|
|
21948
|
+
] }),
|
|
21949
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
|
|
21950
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.sender") }),
|
|
21951
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: bridgeSender.name + " (" + (bridgeSender?.address || "").slice(0, 6) + "..." + (bridgeSender?.address || "").slice(-4) + ")" })
|
|
21952
|
+
] }),
|
|
21953
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
|
|
21954
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.labels.fromChain") }),
|
|
21955
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: CHAINS_UI_META[originChain].chainLabel })
|
|
21956
|
+
] }),
|
|
21957
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
|
|
21958
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.labels.toChain") }),
|
|
21959
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: CHAINS_UI_META[destinationChain].chainLabel })
|
|
21960
|
+
] }),
|
|
21961
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
|
|
21962
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.amount") }),
|
|
21963
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: formatPrice(Number(quote.amount)) })
|
|
21964
|
+
] }),
|
|
21965
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: "flex-1 flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
|
|
21966
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.igpFee") }),
|
|
21967
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("strong", { children: [
|
|
21968
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: formatPrice(Number(quote.igpFee)) }),
|
|
21969
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("span", { children: [
|
|
21970
|
+
" ",
|
|
21971
|
+
quote.igpSymbol
|
|
21972
|
+
] })
|
|
21973
|
+
] })
|
|
21974
|
+
] }),
|
|
21975
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: "flex-1 flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
|
|
21976
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.localFee") }),
|
|
21977
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("strong", { children: [
|
|
21978
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: formatPrice(Number(quote.localFee)) }),
|
|
21979
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("span", { children: [
|
|
21980
|
+
" ",
|
|
21981
|
+
quote.localSymbol
|
|
21982
|
+
] })
|
|
21983
|
+
] })
|
|
21984
|
+
] }),
|
|
21985
|
+
quote.tokenFee && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
|
|
21986
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.tokenFee") }),
|
|
21987
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: formatPrice(Number(quote.tokenFee)) })
|
|
21452
21988
|
] })
|
|
21453
|
-
] })
|
|
21454
|
-
|
|
21455
|
-
|
|
21456
|
-
|
|
21457
|
-
|
|
21458
|
-
|
|
21459
|
-
|
|
21460
|
-
|
|
21461
|
-
|
|
21462
|
-
|
|
21463
|
-
|
|
21464
|
-
|
|
21465
|
-
|
|
21466
|
-
|
|
21467
|
-
"px-[var(--ui-kit-pd)]",
|
|
21468
|
-
"bg-[var(--ui-kit-bg)] text-[var(--ui-kit-fg)]",
|
|
21469
|
-
"rounded-[var(--ui-kit-el-bdrs)]"
|
|
21989
|
+
] }),
|
|
21990
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Highlight, { type: "warning", className: "flex flex-col gap-[var(--ui-kit-gap)] w-full", children: [
|
|
21991
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { className: "text-xs", children: t("passport:bridgeMenu.quote.recipient") }),
|
|
21992
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
|
|
21993
|
+
"span",
|
|
21994
|
+
{
|
|
21995
|
+
className: cn(
|
|
21996
|
+
"w-full flex items-center justify-center h-8",
|
|
21997
|
+
"px-[var(--ui-kit-pd)]",
|
|
21998
|
+
"bg-[var(--ui-kit-bg)] text-[var(--ui-kit-fg)]",
|
|
21999
|
+
"rounded-[var(--ui-kit-el-bdrs)]"
|
|
22000
|
+
),
|
|
22001
|
+
children: (recipient || address).slice(0, 10) + "..." + (recipient || address).slice(-8)
|
|
22002
|
+
}
|
|
21470
22003
|
),
|
|
21471
|
-
|
|
21472
|
-
|
|
21473
|
-
|
|
21474
|
-
|
|
21475
|
-
|
|
21476
|
-
|
|
21477
|
-
|
|
21478
|
-
|
|
21479
|
-
|
|
21480
|
-
|
|
21481
|
-
|
|
21482
|
-
|
|
21483
|
-
|
|
21484
|
-
|
|
21485
|
-
|
|
21486
|
-
|
|
21487
|
-
|
|
21488
|
-
|
|
21489
|
-
|
|
21490
|
-
|
|
21491
|
-
|
|
21492
|
-
|
|
21493
|
-
|
|
21494
|
-
|
|
21495
|
-
|
|
21496
|
-
|
|
21497
|
-
|
|
21498
|
-
|
|
21499
|
-
|
|
21500
|
-
|
|
21501
|
-
|
|
21502
|
-
|
|
21503
|
-
] });
|
|
22004
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { className: "text-xs", children: t("passport:bridgeMenu.consent.recipient", {
|
|
22005
|
+
address: (recipient || address).slice(0, 6) + "..." + (recipient || address).slice(-4),
|
|
22006
|
+
destinationChain: CHAINS_UI_META[destinationChain].chainLabel,
|
|
22007
|
+
asset: selectedWarpRoute.symbol
|
|
22008
|
+
}) }),
|
|
22009
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { className: "text-xs text-[var(--ui-kit-bg-error)]", children: t("passport:bridgeMenu.consent.lostFunds") }),
|
|
22010
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("label", { className: "flex items-center gap-[var(--ui-kit-gap)] text-xs cursor-pointer", children: [
|
|
22011
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Checkbox, { checked: userConsent, onCheckedChange: () => setUserConsent((prev) => !prev) }),
|
|
22012
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: t("passport:bridgeMenu.actions.confirmBridge", {
|
|
22013
|
+
amount: quote.amount,
|
|
22014
|
+
asset: selectedWarpRoute.symbol,
|
|
22015
|
+
destinationChain: CHAINS_UI_META[destinationChain].chainLabel
|
|
22016
|
+
}) })
|
|
22017
|
+
] })
|
|
22018
|
+
] }),
|
|
22019
|
+
!isError && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(
|
|
22020
|
+
Button,
|
|
22021
|
+
{
|
|
22022
|
+
size: "large",
|
|
22023
|
+
variant: "default",
|
|
22024
|
+
disabled: isConfirmationDisabled,
|
|
22025
|
+
onClick: () => bridgeAsset(),
|
|
22026
|
+
className: "w-full",
|
|
22027
|
+
children: [
|
|
22028
|
+
isAssetBridging && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_lucide_react61.LoaderIcon, { className: "h-4 w-4 animate-spin" }),
|
|
22029
|
+
/* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: (bridgeTxStatus || t("passport:common.continue")).toUpperCase() })
|
|
22030
|
+
]
|
|
22031
|
+
}
|
|
22032
|
+
)
|
|
22033
|
+
]
|
|
22034
|
+
}
|
|
22035
|
+
);
|
|
21504
22036
|
}
|
|
21505
22037
|
var import_lucide_react61, import_react72, import_jsx_runtime99, P_CN;
|
|
21506
22038
|
var init_ConfirmStep = __esm({
|
|
@@ -21511,6 +22043,7 @@ var init_ConfirmStep = __esm({
|
|
|
21511
22043
|
import_react72 = require("react");
|
|
21512
22044
|
init_priceFormatter();
|
|
21513
22045
|
init_utils2();
|
|
22046
|
+
init_Onboarding();
|
|
21514
22047
|
init_button();
|
|
21515
22048
|
init_checkbox();
|
|
21516
22049
|
init_highlight();
|
|
@@ -21883,7 +22416,6 @@ var init_HistoryStep = __esm({
|
|
|
21883
22416
|
function SelectAssetRoute(props) {
|
|
21884
22417
|
const { hyperlaneWarpRoutes } = props;
|
|
21885
22418
|
const { t } = useT();
|
|
21886
|
-
const [isTokenSymbolSelector, setIsTokenSymbolSelector] = (0, import_react73.useState)(false);
|
|
21887
22419
|
const selectedAssetSymbol = useBridgeStore((st) => st.bridgeAssetSymbol);
|
|
21888
22420
|
const tokenList = (0, import_react73.useMemo)(() => {
|
|
21889
22421
|
const tokens = hyperlaneWarpRoutes.map((route) => route.symbol);
|
|
@@ -21893,47 +22425,30 @@ function SelectAssetRoute(props) {
|
|
|
21893
22425
|
Icon: TOKENS_ICONS[symbol.toUpperCase()] || TOKENS_ICONS.EMBARKAI
|
|
21894
22426
|
}));
|
|
21895
22427
|
}, [hyperlaneWarpRoutes]);
|
|
21896
|
-
if (isTokenSymbolSelector) {
|
|
21897
|
-
return /* @__PURE__ */ (0, import_jsx_runtime102.jsx)("div", { className: "w-full grid grid-cols-1 gap-[var(--ui-kit-gap)]", children: tokenList.map((asset, assetIdx) => /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(
|
|
21898
|
-
Button,
|
|
21899
|
-
{
|
|
21900
|
-
variant: selectedAssetSymbol === asset.symbol ? "default" : "outline",
|
|
21901
|
-
className: "w-full justify-start",
|
|
21902
|
-
onClick: () => {
|
|
21903
|
-
useBridgeStore.getState().setBridgeAssetSymbol(asset.symbol);
|
|
21904
|
-
setIsTokenSymbolSelector(false);
|
|
21905
|
-
useFlowSelectorStore.getState().setRenderKey(`hyperlane-route-token-${asset.symbol}-${Date.now()}`);
|
|
21906
|
-
},
|
|
21907
|
-
children: [
|
|
21908
|
-
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)(asset.Icon, { className: "w-6 h-6" }),
|
|
21909
|
-
asset.symbol
|
|
21910
|
-
]
|
|
21911
|
-
},
|
|
21912
|
-
`hyperlane-route-token-${asset.symbol}-${assetIdx}`
|
|
21913
|
-
)) });
|
|
21914
|
-
}
|
|
21915
|
-
const selectedAsset = tokenList.find((t2) => t2.symbol === selectedAssetSymbol);
|
|
21916
22428
|
const availableChainPairs = hyperlaneWarpRoutes.filter((route) => route.symbol.toUpperCase() === selectedAssetSymbol).map((route) => route.chainPair);
|
|
21917
22429
|
return /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
21918
|
-
/* @__PURE__ */ (0, import_jsx_runtime102.
|
|
21919
|
-
|
|
21920
|
-
|
|
21921
|
-
|
|
21922
|
-
|
|
21923
|
-
|
|
21924
|
-
|
|
21925
|
-
|
|
21926
|
-
|
|
22430
|
+
/* @__PURE__ */ (0, import_jsx_runtime102.jsxs)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
22431
|
+
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.selectToken") }),
|
|
22432
|
+
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)("div", { className: "w-full grid grid-cols-2 gap-[var(--ui-kit-gap)]", children: tokenList.map((asset, assetIdx) => /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(
|
|
22433
|
+
Button,
|
|
22434
|
+
{
|
|
22435
|
+
variant: selectedAssetSymbol === asset.symbol ? "default" : "outline",
|
|
22436
|
+
className: "w-full justify-start",
|
|
22437
|
+
onClick: () => {
|
|
22438
|
+
useBridgeStore.getState().setBridgeAssetSymbol(asset.symbol);
|
|
22439
|
+
useFlowSelectorStore.getState().setRenderKey(`hyperlane-route-token-${asset.symbol}-${Date.now()}`);
|
|
22440
|
+
},
|
|
22441
|
+
children: [
|
|
22442
|
+
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)(asset.Icon, { className: "w-6 h-6" }),
|
|
22443
|
+
asset.symbol
|
|
22444
|
+
]
|
|
21927
22445
|
},
|
|
21928
|
-
|
|
21929
|
-
|
|
21930
|
-
|
|
21931
|
-
|
|
21932
|
-
}
|
|
21933
|
-
),
|
|
21934
|
-
availableChainPairs.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(import_jsx_runtime102.Fragment, { children: [
|
|
22446
|
+
`hyperlane-route-token-${asset.symbol}-${assetIdx}`
|
|
22447
|
+
)) })
|
|
22448
|
+
] }),
|
|
22449
|
+
availableChainPairs.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
21935
22450
|
/* @__PURE__ */ (0, import_jsx_runtime102.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.availableChainPairs") }),
|
|
21936
|
-
|
|
22451
|
+
availableChainPairs.map(([fromChain, toChain]) => /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(
|
|
21937
22452
|
Button,
|
|
21938
22453
|
{
|
|
21939
22454
|
variant: "secondary",
|
|
@@ -21978,7 +22493,7 @@ function SelectAssetRoute(props) {
|
|
|
21978
22493
|
]
|
|
21979
22494
|
},
|
|
21980
22495
|
`hyperlane-route-chain-pair-${fromChain.chainName}-${toChain.chainName}`
|
|
21981
|
-
))
|
|
22496
|
+
))
|
|
21982
22497
|
] })
|
|
21983
22498
|
] });
|
|
21984
22499
|
}
|
|
@@ -22021,7 +22536,7 @@ function HyperlaneBridge() {
|
|
|
22021
22536
|
useBridgeStore.getState().resetSelections();
|
|
22022
22537
|
};
|
|
22023
22538
|
}, []);
|
|
22024
|
-
return /* @__PURE__ */ (0, import_jsx_runtime103.jsxs)(
|
|
22539
|
+
return /* @__PURE__ */ (0, import_jsx_runtime103.jsxs)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
22025
22540
|
bridgeStep === "sender-selector" && /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(SenderSelector, { directWalletProfile }),
|
|
22026
22541
|
bridgeStep === "select" && /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(
|
|
22027
22542
|
SelectStep,
|
|
@@ -22548,45 +23063,6 @@ var init_NftDisplayCard = __esm({
|
|
|
22548
23063
|
}
|
|
22549
23064
|
});
|
|
22550
23065
|
|
|
22551
|
-
// src/internal/components/SendMenu/send/useSendStore.ts
|
|
22552
|
-
var import_zustand15, useSendStore;
|
|
22553
|
-
var init_useSendStore = __esm({
|
|
22554
|
-
"src/internal/components/SendMenu/send/useSendStore.ts"() {
|
|
22555
|
-
import_zustand15 = require("zustand");
|
|
22556
|
-
init_useFlowSelector();
|
|
22557
|
-
useSendStore = (0, import_zustand15.create)((set) => ({
|
|
22558
|
-
recipient: "",
|
|
22559
|
-
//
|
|
22560
|
-
amount: "",
|
|
22561
|
-
selectedAsset: null,
|
|
22562
|
-
//
|
|
22563
|
-
txStep: "input",
|
|
22564
|
-
//
|
|
22565
|
-
// sendError: null,
|
|
22566
|
-
//
|
|
22567
|
-
setRecipient: (recipient) => {
|
|
22568
|
-
useFlowSelectorStore.getState().setError(null);
|
|
22569
|
-
set({ recipient });
|
|
22570
|
-
},
|
|
22571
|
-
//
|
|
22572
|
-
setAmount: (amount) => {
|
|
22573
|
-
useFlowSelectorStore.getState().setError(null);
|
|
22574
|
-
set({ amount });
|
|
22575
|
-
},
|
|
22576
|
-
setSelectedAsset: (selectedAsset) => {
|
|
22577
|
-
useFlowSelectorStore.getState().setError(null);
|
|
22578
|
-
set({ selectedAsset });
|
|
22579
|
-
},
|
|
22580
|
-
//
|
|
22581
|
-
setTxStep: (txStep) => {
|
|
22582
|
-
useFlowSelectorStore.getState().setError(null);
|
|
22583
|
-
useFlowSelectorStore.getState().setRenderKey(`send-${txStep}-${Date.now()}`);
|
|
22584
|
-
set({ txStep });
|
|
22585
|
-
}
|
|
22586
|
-
}));
|
|
22587
|
-
}
|
|
22588
|
-
});
|
|
22589
|
-
|
|
22590
23066
|
// src/internal/components/SendMenu/send/components/AssetList.tsx
|
|
22591
23067
|
function getAssetBalance3(asset) {
|
|
22592
23068
|
if (isNftAsset3(asset)) return "1";
|
|
@@ -22964,7 +23440,7 @@ function InputSendStep(props) {
|
|
|
22964
23440
|
setError(null);
|
|
22965
23441
|
return true;
|
|
22966
23442
|
};
|
|
22967
|
-
return /* @__PURE__ */ (0, import_jsx_runtime109.jsxs)(
|
|
23443
|
+
return /* @__PURE__ */ (0, import_jsx_runtime109.jsxs)("div", { className: "flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
22968
23444
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:sendMenu.selectAsset") }),
|
|
22969
23445
|
/* @__PURE__ */ (0, import_jsx_runtime109.jsxs)(
|
|
22970
23446
|
Button,
|
|
@@ -23112,134 +23588,141 @@ function ConfirmSendStep(props) {
|
|
|
23112
23588
|
useFlowSelectorStore.getState().setError(error?.message || "Transaction failed");
|
|
23113
23589
|
}
|
|
23114
23590
|
});
|
|
23115
|
-
return /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(
|
|
23116
|
-
|
|
23117
|
-
|
|
23118
|
-
|
|
23119
|
-
|
|
23120
|
-
|
|
23121
|
-
|
|
23122
|
-
|
|
23123
|
-
|
|
23124
|
-
|
|
23125
|
-
|
|
23126
|
-
|
|
23127
|
-
|
|
23128
|
-
|
|
23129
|
-
|
|
23130
|
-
|
|
23131
|
-
|
|
23132
|
-
|
|
23133
|
-
|
|
23134
|
-
|
|
23135
|
-
|
|
23136
|
-
|
|
23137
|
-
|
|
23138
|
-
|
|
23139
|
-
|
|
23140
|
-
|
|
23141
|
-
|
|
23142
|
-
|
|
23143
|
-
|
|
23144
|
-
|
|
23145
|
-
|
|
23146
|
-
|
|
23147
|
-
|
|
23148
|
-
|
|
23149
|
-
{
|
|
23150
|
-
|
|
23151
|
-
|
|
23152
|
-
|
|
23591
|
+
return /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(
|
|
23592
|
+
"div",
|
|
23593
|
+
{
|
|
23594
|
+
ref: (inst) => onboarder.registerElement("sendmenu-crypto-summary" /* sendCryptoSummary */, inst),
|
|
23595
|
+
className: "flex flex-col gap-[var(--ui-kit-gap)]",
|
|
23596
|
+
children: [
|
|
23597
|
+
isNicknameInput && isFrozen && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(Highlight, { type: "warning", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
23598
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.AlertTriangle, { className: "h-4 w-4" }),
|
|
23599
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: "This handle is frozen. Proceed with caution." })
|
|
23600
|
+
] }),
|
|
23601
|
+
isSecurity && erc3643CanTransfer && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(Highlight, { type: "success", className: "flex gap-[var(--ui-kit-gap)]", children: [
|
|
23602
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.Shield, { className: "h-4 w-4 flex-shrink-0" }),
|
|
23603
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: "Security token compliance verified" })
|
|
23604
|
+
] }),
|
|
23605
|
+
!isNft && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5", children: [
|
|
23606
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: [
|
|
23607
|
+
selectedAsset.symbol,
|
|
23608
|
+
" Balance"
|
|
23609
|
+
] }),
|
|
23610
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-sm font-bold", children: [
|
|
23611
|
+
formatPrice(balance),
|
|
23612
|
+
" ",
|
|
23613
|
+
selectedAsset.symbol
|
|
23614
|
+
] })
|
|
23615
|
+
] }),
|
|
23616
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(Highlight, { type: "info", className: "flex flex-col gap-[var(--ui-kit-gap)]", children: isNicknameInput && nicknameData ? /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(import_jsx_runtime110.Fragment, { children: [
|
|
23617
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex items-start gap-[var(--ui-kit-gap)]", children: [
|
|
23618
|
+
nicknameData.avatarSvg ? /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(
|
|
23619
|
+
"img",
|
|
23620
|
+
{
|
|
23621
|
+
src: nicknameData.avatarSvg,
|
|
23622
|
+
alt: nicknameData.handle,
|
|
23623
|
+
className: "w-12 h-12 rounded-full object-cover flex-shrink-0"
|
|
23624
|
+
}
|
|
23625
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("div", { className: "w-12 h-12 rounded-full bg-[var(--ui-kit-secondary)] flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.AtSign, { className: "w-6 h-6" }) }),
|
|
23626
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex flex-1 flex-col gap-1", children: [
|
|
23627
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-medium text-[14px] leading-4 truncate", children: nicknameData.handle }),
|
|
23628
|
+
nicknameData.fingerprint && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(
|
|
23629
|
+
"span",
|
|
23630
|
+
{
|
|
23631
|
+
className: cn(
|
|
23632
|
+
"flex items-center gap-[var(--ui-kit-gap)] text-[10px]",
|
|
23633
|
+
isFingerprintVerified ? "text-[var(--ui-kit-bg-success)]" : "text-[var(--ui-kit-bg-error)]"
|
|
23634
|
+
),
|
|
23635
|
+
children: [
|
|
23636
|
+
isFingerprintVerified ? /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.ShieldCheck, { className: "w-4 h-4 flex-shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.ShieldAlert, { className: "w-4 h-4 flex-shrink-0" }),
|
|
23637
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { children: [
|
|
23638
|
+
"Fingerprint: ",
|
|
23639
|
+
nicknameData.fingerprint
|
|
23640
|
+
] }),
|
|
23641
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: isFingerprintVerified ? "Verified" : "FAILED" })
|
|
23642
|
+
]
|
|
23643
|
+
}
|
|
23153
23644
|
),
|
|
23154
|
-
children:
|
|
23155
|
-
isFingerprintVerified ? /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.ShieldCheck, { className: "w-4 h-4 flex-shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.ShieldAlert, { className: "w-4 h-4 flex-shrink-0" }),
|
|
23156
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { children: [
|
|
23157
|
-
"Fingerprint: ",
|
|
23158
|
-
nicknameData.fingerprint
|
|
23159
|
-
] }),
|
|
23160
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: isFingerprintVerified ? "Verified" : "FAILED" })
|
|
23161
|
-
]
|
|
23162
|
-
}
|
|
23163
|
-
),
|
|
23164
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: `${resolvedAddress.slice(0, 6)}...${resolvedAddress.slice(-4)} : ` })
|
|
23165
|
-
] })
|
|
23166
|
-
] }),
|
|
23167
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "border-t border-[var(--ui-kit-bd)] py-[var(--ui-kit-pd)] text-[10px]", children: [
|
|
23168
|
-
isNft ? /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between items-start", children: [
|
|
23169
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "NFT:" }),
|
|
23170
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "text-right", children: [
|
|
23171
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-semibold block", children: selectedAsset.nftMetadata?.name || selectedAsset.name }),
|
|
23172
|
-
selectedAsset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: [
|
|
23173
|
-
"#",
|
|
23174
|
-
selectedAsset.tokenId.length > 10 ? `${selectedAsset.tokenId.slice(0, 8)}...` : selectedAsset.tokenId
|
|
23645
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: `${resolvedAddress.slice(0, 6)}...${resolvedAddress.slice(-4)} : ` })
|
|
23175
23646
|
] })
|
|
23176
|
-
] })
|
|
23177
|
-
|
|
23178
|
-
|
|
23179
|
-
|
|
23180
|
-
|
|
23181
|
-
|
|
23182
|
-
|
|
23183
|
-
|
|
23184
|
-
|
|
23647
|
+
] }),
|
|
23648
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "border-t border-[var(--ui-kit-bd)] py-[var(--ui-kit-pd)] text-[10px]", children: [
|
|
23649
|
+
isNft ? /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between items-start", children: [
|
|
23650
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "NFT:" }),
|
|
23651
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "text-right", children: [
|
|
23652
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-semibold block", children: selectedAsset.nftMetadata?.name || selectedAsset.name }),
|
|
23653
|
+
selectedAsset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: [
|
|
23654
|
+
"#",
|
|
23655
|
+
selectedAsset.tokenId.length > 10 ? `${selectedAsset.tokenId.slice(0, 8)}...` : selectedAsset.tokenId
|
|
23656
|
+
] })
|
|
23657
|
+
] })
|
|
23658
|
+
] }) : (
|
|
23659
|
+
// Fungible token details
|
|
23660
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
|
|
23661
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:common.amount") }),
|
|
23662
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-sm font-bold", children: [
|
|
23663
|
+
amount,
|
|
23664
|
+
" ",
|
|
23665
|
+
selectedAsset.symbol
|
|
23666
|
+
] })
|
|
23667
|
+
] })
|
|
23668
|
+
),
|
|
23669
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
|
|
23670
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:common.network") }),
|
|
23671
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-sm font-bold", children: chainConfig.name })
|
|
23185
23672
|
] })
|
|
23186
23673
|
] })
|
|
23187
|
-
),
|
|
23188
|
-
|
|
23189
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.
|
|
23190
|
-
|
|
23191
|
-
|
|
23192
|
-
|
|
23193
|
-
|
|
23194
|
-
|
|
23195
|
-
|
|
23196
|
-
|
|
23197
|
-
|
|
23198
|
-
|
|
23199
|
-
|
|
23200
|
-
|
|
23201
|
-
|
|
23202
|
-
|
|
23203
|
-
|
|
23204
|
-
|
|
23205
|
-
|
|
23206
|
-
|
|
23207
|
-
|
|
23208
|
-
|
|
23674
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(import_jsx_runtime110.Fragment, { children: [
|
|
23675
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("h3", { className: "font-medium mb-3 text-[var(--ui-kit-fg)]", children: "Transaction Details" }),
|
|
23676
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "space-y-2 text-sm text-[var(--ui-kit-fg)]", children: [
|
|
23677
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between", children: [
|
|
23678
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "To:" }),
|
|
23679
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-mono text-xs", children: `${effectiveAddress.slice(0, 6)}...${effectiveAddress.slice(-4)}` })
|
|
23680
|
+
] }),
|
|
23681
|
+
isNft ? (
|
|
23682
|
+
// NFT details
|
|
23683
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_jsx_runtime110.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between items-start", children: [
|
|
23684
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "NFT:" }),
|
|
23685
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "text-right", children: [
|
|
23686
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-semibold block", children: selectedAsset.nftMetadata?.name || selectedAsset.name }),
|
|
23687
|
+
selectedAsset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-xs text-[var(--ui-kit-fg-muted)]", children: [
|
|
23688
|
+
"#",
|
|
23689
|
+
selectedAsset.tokenId.length > 10 ? `${selectedAsset.tokenId.slice(0, 8)}...` : selectedAsset.tokenId
|
|
23690
|
+
] })
|
|
23691
|
+
] })
|
|
23692
|
+
] }) })
|
|
23693
|
+
) : (
|
|
23694
|
+
// Fungible token details
|
|
23695
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
|
|
23696
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:common.amount") }),
|
|
23697
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "font-semibold", children: [
|
|
23698
|
+
amount,
|
|
23699
|
+
" ",
|
|
23700
|
+
selectedAsset.symbol
|
|
23701
|
+
] })
|
|
23209
23702
|
] })
|
|
23210
|
-
|
|
23211
|
-
|
|
23212
|
-
|
|
23213
|
-
|
|
23214
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
|
|
23215
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:common.amount") }),
|
|
23216
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "font-semibold", children: [
|
|
23217
|
-
amount,
|
|
23218
|
-
" ",
|
|
23219
|
-
selectedAsset.symbol
|
|
23703
|
+
),
|
|
23704
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
|
|
23705
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:common.network") }),
|
|
23706
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: chainConfig.name })
|
|
23220
23707
|
] })
|
|
23221
23708
|
] })
|
|
23222
|
-
),
|
|
23223
|
-
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(
|
|
23224
|
-
|
|
23225
|
-
|
|
23226
|
-
|
|
23227
|
-
|
|
23228
|
-
|
|
23229
|
-
|
|
23230
|
-
|
|
23231
|
-
|
|
23232
|
-
|
|
23233
|
-
|
|
23234
|
-
|
|
23235
|
-
|
|
23236
|
-
|
|
23237
|
-
|
|
23238
|
-
|
|
23239
|
-
]
|
|
23240
|
-
}
|
|
23241
|
-
)
|
|
23242
|
-
] });
|
|
23709
|
+
] }) }),
|
|
23710
|
+
/* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(
|
|
23711
|
+
Button,
|
|
23712
|
+
{
|
|
23713
|
+
onClick: () => handleConfirm(),
|
|
23714
|
+
disabled: isTransactionPending,
|
|
23715
|
+
className: "w-full",
|
|
23716
|
+
size: "large",
|
|
23717
|
+
children: [
|
|
23718
|
+
isTransactionPending && /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.Loader, { className: "h-4 w-4 animate-spin" }),
|
|
23719
|
+
t("passport:common.confirm")
|
|
23720
|
+
]
|
|
23721
|
+
}
|
|
23722
|
+
)
|
|
23723
|
+
]
|
|
23724
|
+
}
|
|
23725
|
+
);
|
|
23243
23726
|
}
|
|
23244
23727
|
var import_react_query53, import_lucide_react68, import_jsx_runtime110;
|
|
23245
23728
|
var init_ConfirmSendStep = __esm({
|
|
@@ -23250,6 +23733,7 @@ var init_ConfirmSendStep = __esm({
|
|
|
23250
23733
|
import_lucide_react68 = require("lucide-react");
|
|
23251
23734
|
init_priceFormatter();
|
|
23252
23735
|
init_utils2();
|
|
23736
|
+
init_Onboarding();
|
|
23253
23737
|
init_button();
|
|
23254
23738
|
init_highlight();
|
|
23255
23739
|
init_useFlowSelector();
|
|
@@ -23444,14 +23928,61 @@ var init_send = __esm({
|
|
|
23444
23928
|
}
|
|
23445
23929
|
});
|
|
23446
23930
|
|
|
23931
|
+
// src/internal/components/SendMenu/useSendMenuParams.ts
|
|
23932
|
+
function useSendMenuParams() {
|
|
23933
|
+
(0, import_react81.useEffect)(() => {
|
|
23934
|
+
const { pageParams, setPageParams } = useLayoutDataStore.getState();
|
|
23935
|
+
if (!pageParams || !(0, import_lodash_es13.keys)(pageParams).length) return;
|
|
23936
|
+
console.log("[SEND PARAMS]", pageParams);
|
|
23937
|
+
const { sendFlow, asset, to, amount } = pageParams || {};
|
|
23938
|
+
const {
|
|
23939
|
+
setAmount: setSendAmount,
|
|
23940
|
+
setRecipient: setSendRecipient,
|
|
23941
|
+
setSelectedAsset: setSendSelectedAsset
|
|
23942
|
+
} = useSendStore.getState();
|
|
23943
|
+
const { setAmount: setBridgeAmount } = useBridgeStore.getState();
|
|
23944
|
+
useFlowSelectorStore.getState().setFlow(sendFlow);
|
|
23945
|
+
switch (sendFlow) {
|
|
23946
|
+
//
|
|
23947
|
+
case "send":
|
|
23948
|
+
switch (true) {
|
|
23949
|
+
case !!asset:
|
|
23950
|
+
setSendAmount(String(amount));
|
|
23951
|
+
case !!to:
|
|
23952
|
+
setSendRecipient(to);
|
|
23953
|
+
case !!amount:
|
|
23954
|
+
setSendSelectedAsset(asset);
|
|
23955
|
+
}
|
|
23956
|
+
break;
|
|
23957
|
+
//
|
|
23958
|
+
case "bridge":
|
|
23959
|
+
switch (true) {
|
|
23960
|
+
case !!amount:
|
|
23961
|
+
setBridgeAmount(String(amount));
|
|
23962
|
+
}
|
|
23963
|
+
break;
|
|
23964
|
+
default:
|
|
23965
|
+
return setPageParams(null);
|
|
23966
|
+
}
|
|
23967
|
+
setPageParams(null);
|
|
23968
|
+
}, []);
|
|
23969
|
+
}
|
|
23970
|
+
var import_lodash_es13, import_react81;
|
|
23971
|
+
var init_useSendMenuParams = __esm({
|
|
23972
|
+
"src/internal/components/SendMenu/useSendMenuParams.ts"() {
|
|
23973
|
+
import_lodash_es13 = require("lodash-es");
|
|
23974
|
+
import_react81 = require("react");
|
|
23975
|
+
init_useLayoutDataStore();
|
|
23976
|
+
init_useBridgeStore();
|
|
23977
|
+
init_useSendStore();
|
|
23978
|
+
init_useFlowSelector();
|
|
23979
|
+
}
|
|
23980
|
+
});
|
|
23981
|
+
|
|
23447
23982
|
// src/internal/components/SendMenu/SendFlowSelector.tsx
|
|
23448
23983
|
function SelectorFlowButtons() {
|
|
23449
23984
|
const { t } = useT();
|
|
23450
23985
|
const selectorFlow = useFlowSelectorStore((st) => st.flow);
|
|
23451
|
-
const sendStep = useSendStore((st) => st.txStep);
|
|
23452
|
-
const bridgeStep = useBridgeStore((st) => st.bridgeStep);
|
|
23453
|
-
const isButtonsShown = selectorFlow === "send" && sendStep === "input" || selectorFlow === "bridge" && bridgeStep === "select";
|
|
23454
|
-
if (!isButtonsShown) return null;
|
|
23455
23986
|
return /* @__PURE__ */ (0, import_jsx_runtime112.jsxs)(
|
|
23456
23987
|
"div",
|
|
23457
23988
|
{
|
|
@@ -23499,6 +24030,7 @@ function SelectorFlowButtons() {
|
|
|
23499
24030
|
}
|
|
23500
24031
|
function SendFlowSelector() {
|
|
23501
24032
|
const { t } = useT();
|
|
24033
|
+
useSendMenuParams();
|
|
23502
24034
|
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
23503
24035
|
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
23504
24036
|
const isUiLocked = useFlowSelectorStore((st) => st.isUiLocked);
|
|
@@ -23506,15 +24038,19 @@ function SendFlowSelector() {
|
|
|
23506
24038
|
const error = useFlowSelectorStore((st) => st.error);
|
|
23507
24039
|
const menuTitle = useFlowSelectorStore((st) => st.menuTitle);
|
|
23508
24040
|
const selectorFlow = useFlowSelectorStore((st) => st.flow);
|
|
23509
|
-
(
|
|
24041
|
+
const sendStep = useSendStore((st) => st.txStep);
|
|
24042
|
+
const bridgeStep = useBridgeStore((st) => st.bridgeStep);
|
|
24043
|
+
(0, import_react82.useEffect)(
|
|
23510
24044
|
() => () => {
|
|
23511
24045
|
useFlowSelectorStore.getState().setError(null);
|
|
23512
24046
|
},
|
|
23513
24047
|
[]
|
|
23514
24048
|
);
|
|
24049
|
+
const isSendFlowInitialState = selectorFlow === "send" && sendStep === "input" || selectorFlow === "bridge" && bridgeStep === "select";
|
|
23515
24050
|
return /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(
|
|
23516
24051
|
"div",
|
|
23517
24052
|
{
|
|
24053
|
+
ref: (inst) => onboarder.registerElement("sendmenu-page" /* sendMenu */, inst),
|
|
23518
24054
|
style: {
|
|
23519
24055
|
"--ui-kit-scrollbar-mah": `${maxScrollHeight}px`,
|
|
23520
24056
|
"--ui-kit-list-scrollbar-pd-r": "var(--ui-kit-pd)"
|
|
@@ -23532,8 +24068,8 @@ function SendFlowSelector() {
|
|
|
23532
24068
|
onClick: () => {
|
|
23533
24069
|
useFlowSelectorStore.getState().setError(null);
|
|
23534
24070
|
if (selectorFlow === "bridge") {
|
|
23535
|
-
const { bridgeStep, setBridgeStep } = useBridgeStore.getState();
|
|
23536
|
-
switch (
|
|
24071
|
+
const { bridgeStep: bridgeStep2, setBridgeStep } = useBridgeStore.getState();
|
|
24072
|
+
switch (bridgeStep2) {
|
|
23537
24073
|
case "select":
|
|
23538
24074
|
return setPage("main-menu" /* MAIN_MENU */);
|
|
23539
24075
|
// case ''
|
|
@@ -23558,9 +24094,31 @@ function SendFlowSelector() {
|
|
|
23558
24094
|
),
|
|
23559
24095
|
/* @__PURE__ */ (0, import_jsx_runtime112.jsx)("span", { className: "text-xl font-semibold", children: menuTitle })
|
|
23560
24096
|
] }),
|
|
23561
|
-
/* @__PURE__ */ (0, import_jsx_runtime112.
|
|
24097
|
+
/* @__PURE__ */ (0, import_jsx_runtime112.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
|
|
24098
|
+
isSendFlowInitialState && /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(
|
|
24099
|
+
Button,
|
|
24100
|
+
{
|
|
24101
|
+
ref: (inst) => onboarder.registerElement("sendmenu-tour-button" /* tourButton */, inst),
|
|
24102
|
+
variant: "ghost",
|
|
24103
|
+
size: "icon",
|
|
24104
|
+
className: "flex-none",
|
|
24105
|
+
onClick: () => {
|
|
24106
|
+
switch (selectorFlow) {
|
|
24107
|
+
case "send":
|
|
24108
|
+
onboarder.startTour(SEND_MENU_TOUR);
|
|
24109
|
+
break;
|
|
24110
|
+
case "bridge":
|
|
24111
|
+
onboarder.startTour(BRIDGE_MENU_TOUR);
|
|
24112
|
+
break;
|
|
24113
|
+
}
|
|
24114
|
+
},
|
|
24115
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(import_lucide_react70.CircleQuestionMarkIcon, { className: "h-4 w-4" })
|
|
24116
|
+
}
|
|
24117
|
+
),
|
|
24118
|
+
/* @__PURE__ */ (0, import_jsx_runtime112.jsx)(BridgeHistorySwitch, {})
|
|
24119
|
+
] })
|
|
23562
24120
|
] }),
|
|
23563
|
-
/* @__PURE__ */ (0, import_jsx_runtime112.jsx)(SelectorFlowButtons, {}),
|
|
24121
|
+
isSendFlowInitialState && /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(SelectorFlowButtons, {}),
|
|
23564
24122
|
SELECTOR_FLOW[selectorFlow],
|
|
23565
24123
|
error && /* @__PURE__ */ (0, import_jsx_runtime112.jsxs)(Highlight, { type: "error", className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: [
|
|
23566
24124
|
/* @__PURE__ */ (0, import_jsx_runtime112.jsxs)("div", { className: "w-full flex gap-[var(--ui-kit-gap)]", children: [
|
|
@@ -23583,21 +24141,24 @@ function SendFlowSelector() {
|
|
|
23583
24141
|
}
|
|
23584
24142
|
);
|
|
23585
24143
|
}
|
|
23586
|
-
var import_lucide_react70,
|
|
24144
|
+
var import_lucide_react70, import_react82, import_jsx_runtime112, SELECTOR_FLOW;
|
|
23587
24145
|
var init_SendFlowSelector = __esm({
|
|
23588
24146
|
"src/internal/components/SendMenu/SendFlowSelector.tsx"() {
|
|
23589
24147
|
init_i18n();
|
|
23590
24148
|
import_lucide_react70 = require("lucide-react");
|
|
23591
|
-
|
|
24149
|
+
import_react82 = require("react");
|
|
23592
24150
|
init_useLayoutDataStore();
|
|
23593
24151
|
init_useLayoutStore();
|
|
23594
24152
|
init_utils2();
|
|
23595
24153
|
init_Expandable2();
|
|
24154
|
+
init_Onboarding();
|
|
23596
24155
|
init_button();
|
|
23597
24156
|
init_highlight();
|
|
23598
24157
|
init_hyperbridge();
|
|
24158
|
+
init_onboarding_setup2();
|
|
23599
24159
|
init_send();
|
|
23600
24160
|
init_useFlowSelector();
|
|
24161
|
+
init_useSendMenuParams();
|
|
23601
24162
|
import_jsx_runtime112 = require("react/jsx-runtime");
|
|
23602
24163
|
SELECTOR_FLOW = {
|
|
23603
24164
|
send: /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(SendMenu, {}),
|
|
@@ -23610,6 +24171,7 @@ var init_SendFlowSelector = __esm({
|
|
|
23610
24171
|
var init_SendMenu2 = __esm({
|
|
23611
24172
|
"src/internal/components/SendMenu/index.ts"() {
|
|
23612
24173
|
init_SendFlowSelector();
|
|
24174
|
+
init_onboarding_setup2();
|
|
23613
24175
|
}
|
|
23614
24176
|
});
|
|
23615
24177
|
|
|
@@ -23643,12 +24205,12 @@ function getServerSnapshot() {
|
|
|
23643
24205
|
return false;
|
|
23644
24206
|
}
|
|
23645
24207
|
function useProMode() {
|
|
23646
|
-
return (0,
|
|
24208
|
+
return (0, import_react83.useSyncExternalStore)(subscribe, getSnapshot, getServerSnapshot);
|
|
23647
24209
|
}
|
|
23648
|
-
var
|
|
24210
|
+
var import_react83, STORAGE_KEY, EVENT_NAME;
|
|
23649
24211
|
var init_pro_mode = __esm({
|
|
23650
24212
|
"src/internal/lib/pro-mode.ts"() {
|
|
23651
|
-
|
|
24213
|
+
import_react83 = require("react");
|
|
23652
24214
|
STORAGE_KEY = "embarkai_pro_mode";
|
|
23653
24215
|
EVENT_NAME = "embarkai-pro-mode-changed";
|
|
23654
24216
|
}
|
|
@@ -23690,7 +24252,7 @@ function useSettingsButtons() {
|
|
|
23690
24252
|
if (proMode) {
|
|
23691
24253
|
settingsButtons.push({ id: "devices" /* DEVICES */, name: "Guardians", Icon: import_lucide_react72.HardDrive });
|
|
23692
24254
|
}
|
|
23693
|
-
(0,
|
|
24255
|
+
(0, import_react84.useEffect)(() => {
|
|
23694
24256
|
const cssvEl = document.querySelector(".embarkai-ui-scope");
|
|
23695
24257
|
if (!cssvEl || !window?.getComputedStyle) {
|
|
23696
24258
|
return;
|
|
@@ -23754,7 +24316,7 @@ function SettingsMenu() {
|
|
|
23754
24316
|
}
|
|
23755
24317
|
);
|
|
23756
24318
|
}
|
|
23757
|
-
var import_react_query54, import_lucide_react72,
|
|
24319
|
+
var import_react_query54, import_lucide_react72, import_react84, import_jsx_runtime113;
|
|
23758
24320
|
var init_SettingsMenu = __esm({
|
|
23759
24321
|
"src/internal/components/SettingsMenu/SettingsMenu.tsx"() {
|
|
23760
24322
|
init_ProviderContext();
|
|
@@ -23762,7 +24324,7 @@ var init_SettingsMenu = __esm({
|
|
|
23762
24324
|
init_i18n();
|
|
23763
24325
|
import_react_query54 = require("@tanstack/react-query");
|
|
23764
24326
|
import_lucide_react72 = require("lucide-react");
|
|
23765
|
-
|
|
24327
|
+
import_react84 = require("react");
|
|
23766
24328
|
init_nickname();
|
|
23767
24329
|
init_profile();
|
|
23768
24330
|
init_useLayoutDataStore();
|
|
@@ -24634,7 +25196,7 @@ function TransactionsMenu() {
|
|
|
24634
25196
|
const { t } = useT();
|
|
24635
25197
|
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
24636
25198
|
const maxScrollHeight = useLayoutStore((st) => st.maxScrollHeight);
|
|
24637
|
-
const [expandedGroups, setExpandedGroups] = (0,
|
|
25199
|
+
const [expandedGroups, setExpandedGroups] = (0, import_react85.useState)({});
|
|
24638
25200
|
const historySupported = isTransactionHistorySupported(chainConfig?.id);
|
|
24639
25201
|
const {
|
|
24640
25202
|
data: txHistoryGroups = [],
|
|
@@ -24647,7 +25209,7 @@ function TransactionsMenu() {
|
|
|
24647
25209
|
queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, chainConfig.id, address],
|
|
24648
25210
|
queryFn: () => getTransactionsListQuery({ address, chainConfig })
|
|
24649
25211
|
});
|
|
24650
|
-
const refreshTxHistory = (0,
|
|
25212
|
+
const refreshTxHistory = (0, import_react85.useCallback)(
|
|
24651
25213
|
() => qc.invalidateQueries({ queryKey: [TRANSACTIONS_HISTORY_QUERY_KEY, chainConfig.id, address] }),
|
|
24652
25214
|
[qc, chainConfig.id, address]
|
|
24653
25215
|
);
|
|
@@ -24696,14 +25258,14 @@ function TransactionsMenu() {
|
|
|
24696
25258
|
}
|
|
24697
25259
|
);
|
|
24698
25260
|
}
|
|
24699
|
-
var import_react_query55, import_lucide_react75,
|
|
25261
|
+
var import_react_query55, import_lucide_react75, import_react85, import_jsx_runtime116;
|
|
24700
25262
|
var init_TransactionsMenu = __esm({
|
|
24701
25263
|
"src/internal/components/TransactionsMenu/TransactionsMenu.tsx"() {
|
|
24702
25264
|
init_SessionContext();
|
|
24703
25265
|
init_i18n();
|
|
24704
25266
|
import_react_query55 = require("@tanstack/react-query");
|
|
24705
25267
|
import_lucide_react75 = require("lucide-react");
|
|
24706
|
-
|
|
25268
|
+
import_react85 = require("react");
|
|
24707
25269
|
init_useLayoutDataStore();
|
|
24708
25270
|
init_useLayoutStore();
|
|
24709
25271
|
init_Expandable2();
|
|
@@ -24901,7 +25463,7 @@ function usePageMapper() {
|
|
|
24901
25463
|
setIsDialogOpen,
|
|
24902
25464
|
setIsDialogClosing
|
|
24903
25465
|
} = useLayoutStore();
|
|
24904
|
-
const closeDialog = (0,
|
|
25466
|
+
const closeDialog = (0, import_react86.useCallback)(() => {
|
|
24905
25467
|
setIsDialogClosing(true);
|
|
24906
25468
|
setTimeout(() => {
|
|
24907
25469
|
setDialogContent(null);
|
|
@@ -24912,7 +25474,7 @@ function usePageMapper() {
|
|
|
24912
25474
|
setIsDialogOpen(false);
|
|
24913
25475
|
}, CLEAR_DIALOG_TIMEOUT);
|
|
24914
25476
|
}, [setDialogContent, setDialogDescription, setDialogTitle, setIsDialogForced, setIsDialogOpen, setIsDialogClosing]);
|
|
24915
|
-
const openDialog = (0,
|
|
25477
|
+
const openDialog = (0, import_react86.useCallback)(
|
|
24916
25478
|
(pageItem) => {
|
|
24917
25479
|
const PageContentComponent = pageItem.component;
|
|
24918
25480
|
setDialogTitle(pageItem.title);
|
|
@@ -24922,7 +25484,7 @@ function usePageMapper() {
|
|
|
24922
25484
|
},
|
|
24923
25485
|
[setDialogContent, setDialogDescription, setDialogTitle, setIsDialogOpen]
|
|
24924
25486
|
);
|
|
24925
|
-
(0,
|
|
25487
|
+
(0, import_react86.useEffect)(() => {
|
|
24926
25488
|
if (page === null) return closeDialog();
|
|
24927
25489
|
const pageItem = PAGE_MAP[page];
|
|
24928
25490
|
if (!pageItem) {
|
|
@@ -24933,10 +25495,10 @@ function usePageMapper() {
|
|
|
24933
25495
|
openDialog(pageItem);
|
|
24934
25496
|
}, [page, closeDialog, openDialog]);
|
|
24935
25497
|
}
|
|
24936
|
-
var
|
|
25498
|
+
var import_react86, import_jsx_runtime117, CLEAR_DIALOG_TIMEOUT;
|
|
24937
25499
|
var init_usePageMapper = __esm({
|
|
24938
25500
|
"src/internal/hooks/usePageMapper.tsx"() {
|
|
24939
|
-
|
|
25501
|
+
import_react86 = require("react");
|
|
24940
25502
|
init_PageMap();
|
|
24941
25503
|
init_constants();
|
|
24942
25504
|
init_useLayoutDataStore();
|
|
@@ -24952,24 +25514,24 @@ function useSettingsNotifications() {
|
|
|
24952
25514
|
const providers = import_auth23.jwtTokenManager.getProviders();
|
|
24953
25515
|
const hasEmail = providers.includes("email");
|
|
24954
25516
|
const { data: userProfile = null } = useUserProfile();
|
|
24955
|
-
(0,
|
|
25517
|
+
(0, import_react87.useEffect)(() => {
|
|
24956
25518
|
const isKYCVerified = userProfile?.kycDetails?.kycStatus === "verified";
|
|
24957
25519
|
setSettingsNotifications({
|
|
24958
25520
|
...COMPLETE_KYC_PROGRESS,
|
|
24959
25521
|
status: isKYCVerified ? "resolved" : "active"
|
|
24960
25522
|
});
|
|
24961
25523
|
}, [userProfile, setSettingsNotifications]);
|
|
24962
|
-
(0,
|
|
25524
|
+
(0, import_react87.useEffect)(() => {
|
|
24963
25525
|
setSettingsNotifications({
|
|
24964
25526
|
...EMAIL_NOT_CONNECTED_NOTIFICATION,
|
|
24965
25527
|
status: hasEmail ? "resolved" : "active"
|
|
24966
25528
|
});
|
|
24967
25529
|
}, [hasEmail, setSettingsNotifications]);
|
|
24968
25530
|
}
|
|
24969
|
-
var
|
|
25531
|
+
var import_react87, EMAIL_NOT_CONNECTED_NOTIFICATION, COMPLETE_KYC_PROGRESS;
|
|
24970
25532
|
var init_useSettingsNotifications = __esm({
|
|
24971
25533
|
"src/internal/hooks/useSettingsNotifications.ts"() {
|
|
24972
|
-
|
|
25534
|
+
import_react87 = require("react");
|
|
24973
25535
|
init_auth();
|
|
24974
25536
|
init_useLayoutDataStore();
|
|
24975
25537
|
init_useUserProfile();
|
|
@@ -24992,7 +25554,7 @@ var init_package = __esm({
|
|
|
24992
25554
|
"package.json"() {
|
|
24993
25555
|
package_default = {
|
|
24994
25556
|
name: "@embarkai/ui-kit",
|
|
24995
|
-
version: "0.4.
|
|
25557
|
+
version: "0.4.74",
|
|
24996
25558
|
description: "React UI components and hooks for EmbarkAI authentication and Account Abstraction",
|
|
24997
25559
|
type: "module",
|
|
24998
25560
|
main: "./dist/index.cjs",
|
|
@@ -25245,11 +25807,11 @@ function Header() {
|
|
|
25245
25807
|
const chainConfig = useSession((st) => st.chainConfig);
|
|
25246
25808
|
const { t } = useT();
|
|
25247
25809
|
const proMode = useProMode();
|
|
25248
|
-
const [proToast, setProToast] = (0,
|
|
25249
|
-
const [copied, setCopied] = (0,
|
|
25250
|
-
const clickCountRef = (0,
|
|
25251
|
-
const clickTimerRef = (0,
|
|
25252
|
-
const handleAvatarClick = (0,
|
|
25810
|
+
const [proToast, setProToast] = (0, import_react88.useState)(false);
|
|
25811
|
+
const [copied, setCopied] = (0, import_react88.useState)(false);
|
|
25812
|
+
const clickCountRef = (0, import_react88.useRef)(0);
|
|
25813
|
+
const clickTimerRef = (0, import_react88.useRef)(null);
|
|
25814
|
+
const handleAvatarClick = (0, import_react88.useCallback)(() => {
|
|
25253
25815
|
clickCountRef.current += 1;
|
|
25254
25816
|
if (clickTimerRef.current) {
|
|
25255
25817
|
clearTimeout(clickTimerRef.current);
|
|
@@ -25344,7 +25906,7 @@ function Header() {
|
|
|
25344
25906
|
}
|
|
25345
25907
|
);
|
|
25346
25908
|
}
|
|
25347
|
-
var import_lucide_react77,
|
|
25909
|
+
var import_lucide_react77, import_react88, import_jsx_runtime119;
|
|
25348
25910
|
var init_Header = __esm({
|
|
25349
25911
|
"src/internal/components/Header/Header.tsx"() {
|
|
25350
25912
|
init_lumia2();
|
|
@@ -25353,7 +25915,7 @@ var init_Header = __esm({
|
|
|
25353
25915
|
init_SessionContext();
|
|
25354
25916
|
init_useT();
|
|
25355
25917
|
import_lucide_react77 = require("lucide-react");
|
|
25356
|
-
|
|
25918
|
+
import_react88 = require("react");
|
|
25357
25919
|
init_icons();
|
|
25358
25920
|
init_auth();
|
|
25359
25921
|
init_useUserProfile();
|
|
@@ -25381,26 +25943,26 @@ function useDecideContentStyles() {
|
|
|
25381
25943
|
return {
|
|
25382
25944
|
isClosing,
|
|
25383
25945
|
isMobileView,
|
|
25384
|
-
style: (0,
|
|
25946
|
+
style: (0, import_lodash_es14.merge)({}, mobileStyles)
|
|
25385
25947
|
};
|
|
25386
25948
|
}
|
|
25387
|
-
var DialogPrimitive,
|
|
25949
|
+
var DialogPrimitive, import_lodash_es14, import_lucide_react78, import_react89, import_jsx_runtime120, Dialog, DialogPortal, DialogOverlay, CONTENT_BG_SETUP, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription;
|
|
25388
25950
|
var init_dialog = __esm({
|
|
25389
25951
|
"src/internal/components/ui/dialog.tsx"() {
|
|
25390
25952
|
init_utils2();
|
|
25391
25953
|
init_SessionContext();
|
|
25392
25954
|
init_i18n();
|
|
25393
25955
|
DialogPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
25394
|
-
|
|
25956
|
+
import_lodash_es14 = require("lodash-es");
|
|
25395
25957
|
import_lucide_react78 = require("lucide-react");
|
|
25396
|
-
|
|
25958
|
+
import_react89 = require("react");
|
|
25397
25959
|
init_useLayoutDataStore();
|
|
25398
25960
|
init_useLayoutStore();
|
|
25399
25961
|
init_button();
|
|
25400
25962
|
import_jsx_runtime120 = require("react/jsx-runtime");
|
|
25401
25963
|
Dialog = DialogPrimitive.Root;
|
|
25402
25964
|
DialogPortal = DialogPrimitive.Portal;
|
|
25403
|
-
DialogOverlay = (0,
|
|
25965
|
+
DialogOverlay = (0, import_react89.forwardRef)(
|
|
25404
25966
|
({ className, closing, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
25405
25967
|
DialogPrimitive.Overlay,
|
|
25406
25968
|
{
|
|
@@ -25422,7 +25984,7 @@ var init_dialog = __esm({
|
|
|
25422
25984
|
border: "1px solid var(--ui-kit-bd)",
|
|
25423
25985
|
boxShadow: "var(--ui-kit-shadow, 0px 4px 10px var(--ui-kit-shadow-c, rgba(0, 0, 0, 0.1)))"
|
|
25424
25986
|
};
|
|
25425
|
-
DialogContent = (0,
|
|
25987
|
+
DialogContent = (0, import_react89.forwardRef)(
|
|
25426
25988
|
({ className, children, colorMode, ...props }, ref) => {
|
|
25427
25989
|
const { t, i18n } = useT();
|
|
25428
25990
|
const isSessionLoading = useSession((st) => st.isLoading);
|
|
@@ -25534,7 +26096,7 @@ var init_dialog = __esm({
|
|
|
25534
26096
|
DialogHeader.displayName = "DialogHeader";
|
|
25535
26097
|
DialogFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime120.jsx)("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
|
|
25536
26098
|
DialogFooter.displayName = "DialogFooter";
|
|
25537
|
-
DialogTitle = (0,
|
|
26099
|
+
DialogTitle = (0, import_react89.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
|
|
25538
26100
|
DialogPrimitive.Title,
|
|
25539
26101
|
{
|
|
25540
26102
|
ref,
|
|
@@ -25543,7 +26105,7 @@ var init_dialog = __esm({
|
|
|
25543
26105
|
}
|
|
25544
26106
|
));
|
|
25545
26107
|
DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
25546
|
-
DialogDescription = (0,
|
|
26108
|
+
DialogDescription = (0, import_react89.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(DialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
|
|
25547
26109
|
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
25548
26110
|
}
|
|
25549
26111
|
});
|
|
@@ -25568,7 +26130,7 @@ function Dialog2() {
|
|
|
25568
26130
|
const isWalletLinking = useLayoutDataStore((st) => st.isWalletLinking);
|
|
25569
26131
|
const setPage = useLayoutDataStore((st) => st.setPage);
|
|
25570
26132
|
const { colorMode, isDialogOpen, dialogTitle, dialogDescription, dialogContent, isDialogForced, setIsSettings } = useLayoutStore();
|
|
25571
|
-
(0,
|
|
26133
|
+
(0, import_react90.useEffect)(() => setIsSettings(!!session), [session, setIsSettings]);
|
|
25572
26134
|
usePageMapper();
|
|
25573
26135
|
useAutoConnect();
|
|
25574
26136
|
useBackupStatusChanges();
|
|
@@ -25606,13 +26168,13 @@ function Dialog2() {
|
|
|
25606
26168
|
}
|
|
25607
26169
|
);
|
|
25608
26170
|
}
|
|
25609
|
-
var import_framer_motion,
|
|
26171
|
+
var import_framer_motion, import_react90, import_jsx_runtime122;
|
|
25610
26172
|
var init_Dialog = __esm({
|
|
25611
26173
|
"src/internal/components/Dialog/Dialog.tsx"() {
|
|
25612
26174
|
init_ProviderContext();
|
|
25613
26175
|
init_SessionContext();
|
|
25614
26176
|
import_framer_motion = require("framer-motion");
|
|
25615
|
-
|
|
26177
|
+
import_react90 = require("react");
|
|
25616
26178
|
init_constants();
|
|
25617
26179
|
init_useAutoConnect();
|
|
25618
26180
|
init_useBackupStatusChanges();
|
|
@@ -25648,13 +26210,13 @@ function DirectWalletHandler() {
|
|
|
25648
26210
|
const setExternalChainId = useExternalWalletStore((st) => st.setExternalChainId);
|
|
25649
26211
|
const setConfigMode = useExternalWalletStore((st) => st.setConfigMode);
|
|
25650
26212
|
const setActiveMode = useExternalWalletStore((st) => st.setActiveMode);
|
|
25651
|
-
(0,
|
|
26213
|
+
(0, import_react91.useEffect)(() => {
|
|
25652
26214
|
setConfigMode(walletMode);
|
|
25653
26215
|
if (walletMode !== "both") {
|
|
25654
26216
|
setActiveMode(walletMode);
|
|
25655
26217
|
}
|
|
25656
26218
|
}, [walletMode, setConfigMode, setActiveMode]);
|
|
25657
|
-
(0,
|
|
26219
|
+
(0, import_react91.useEffect)(() => {
|
|
25658
26220
|
if (isConnected && address && !isExternalConnected && connector && chain?.id) {
|
|
25659
26221
|
setExternalWallet({
|
|
25660
26222
|
address,
|
|
@@ -25663,17 +26225,17 @@ function DirectWalletHandler() {
|
|
|
25663
26225
|
});
|
|
25664
26226
|
}
|
|
25665
26227
|
}, [isConnected, address, isExternalConnected, connector, chain?.id, setExternalWallet]);
|
|
25666
|
-
(0,
|
|
26228
|
+
(0, import_react91.useEffect)(() => {
|
|
25667
26229
|
if (isExternalConnected && !isConnected) {
|
|
25668
26230
|
clearExternalWallet();
|
|
25669
26231
|
}
|
|
25670
26232
|
}, [isConnected, isExternalConnected, clearExternalWallet]);
|
|
25671
|
-
(0,
|
|
26233
|
+
(0, import_react91.useEffect)(() => {
|
|
25672
26234
|
if (isExternalConnected && isConnected && chain?.id) {
|
|
25673
26235
|
setExternalChainId(chain.id);
|
|
25674
26236
|
}
|
|
25675
26237
|
}, [chain?.id, isConnected, isExternalConnected, setExternalChainId]);
|
|
25676
|
-
(0,
|
|
26238
|
+
(0, import_react91.useEffect)(() => {
|
|
25677
26239
|
if (isExternalConnected && isConnected && address && address !== externalAddress && connector && chain?.id) {
|
|
25678
26240
|
setExternalWallet({
|
|
25679
26241
|
address,
|
|
@@ -25684,10 +26246,10 @@ function DirectWalletHandler() {
|
|
|
25684
26246
|
}, [address, isConnected, isExternalConnected, externalAddress, chain?.id, connector, setExternalWallet]);
|
|
25685
26247
|
return null;
|
|
25686
26248
|
}
|
|
25687
|
-
var
|
|
26249
|
+
var import_react91, import_wagmi8;
|
|
25688
26250
|
var init_DirectWalletHandler = __esm({
|
|
25689
26251
|
"src/internal/components/DirectWalletHandler.tsx"() {
|
|
25690
|
-
|
|
26252
|
+
import_react91 = require("react");
|
|
25691
26253
|
import_wagmi8 = require("wagmi");
|
|
25692
26254
|
init_ProviderContext();
|
|
25693
26255
|
init_useExternalWalletStore();
|
|
@@ -25695,14 +26257,14 @@ var init_DirectWalletHandler = __esm({
|
|
|
25695
26257
|
});
|
|
25696
26258
|
|
|
25697
26259
|
// src/internal/components/TssManager.tsx
|
|
25698
|
-
var
|
|
26260
|
+
var import_react92, TssManagerWithRef;
|
|
25699
26261
|
var init_TssManager = __esm({
|
|
25700
26262
|
"src/internal/components/TssManager.tsx"() {
|
|
25701
26263
|
init_SessionContext();
|
|
25702
|
-
|
|
26264
|
+
import_react92 = __toESM(require("react"), 1);
|
|
25703
26265
|
init_auth();
|
|
25704
26266
|
init_clients();
|
|
25705
|
-
TssManagerWithRef =
|
|
26267
|
+
TssManagerWithRef = import_react92.default.forwardRef((props, ref) => {
|
|
25706
26268
|
const { mpcPin } = props;
|
|
25707
26269
|
const usePaymaster = useSession((st) => st.usePaymaster);
|
|
25708
26270
|
const publicClient = useSession((st) => st.publicClient);
|
|
@@ -25710,14 +26272,14 @@ var init_TssManager = __esm({
|
|
|
25710
26272
|
const setStatus = useSession((st) => st.setStatus);
|
|
25711
26273
|
const setSession = useSession((st) => st.setSession);
|
|
25712
26274
|
const setAddress = useSession((st) => st.setAddress);
|
|
25713
|
-
const onSessionCreated = (0,
|
|
26275
|
+
const onSessionCreated = (0, import_react92.useCallback)(
|
|
25714
26276
|
(session, address) => {
|
|
25715
26277
|
setSession(session);
|
|
25716
26278
|
setAddress(address);
|
|
25717
26279
|
},
|
|
25718
26280
|
[setSession, setAddress]
|
|
25719
26281
|
);
|
|
25720
|
-
const createSessionWithKeyshare =
|
|
26282
|
+
const createSessionWithKeyshare = import_react92.default.useCallback(
|
|
25721
26283
|
async (userId, hasServerKeyshare, isNewUser) => {
|
|
25722
26284
|
setStatus("checking key management setup...");
|
|
25723
26285
|
await ensureKeyshare(userId, hasServerKeyshare, setStatus, isNewUser);
|
|
@@ -25742,7 +26304,7 @@ var init_TssManager = __esm({
|
|
|
25742
26304
|
},
|
|
25743
26305
|
[setStatus, usePaymaster, activeChainId, publicClient, mpcPin]
|
|
25744
26306
|
);
|
|
25745
|
-
|
|
26307
|
+
import_react92.default.useImperativeHandle(ref, () => ({ createSessionWithKeyshare }), [createSessionWithKeyshare]);
|
|
25746
26308
|
return null;
|
|
25747
26309
|
});
|
|
25748
26310
|
}
|
|
@@ -25770,7 +26332,7 @@ function WalletConnectHandler() {
|
|
|
25770
26332
|
const projectId = providerConfig?.projectId;
|
|
25771
26333
|
const setExternalWallet = useExternalWalletStore((st) => st.setExternalWallet);
|
|
25772
26334
|
const setPendingWalletLogin = useLayoutDataStore((st) => st.setPendingWalletLogin);
|
|
25773
|
-
const onLinkingComplete = (0,
|
|
26335
|
+
const onLinkingComplete = (0, import_react93.useCallback)(
|
|
25774
26336
|
async (success) => {
|
|
25775
26337
|
setIsWalletLinking(false);
|
|
25776
26338
|
if (!success && !passportWalletAddress) {
|
|
@@ -25799,10 +26361,10 @@ function WalletConnectHandler() {
|
|
|
25799
26361
|
},
|
|
25800
26362
|
[qc, passportWalletAddress, setProviderType, setPage, setIsWalletLinking]
|
|
25801
26363
|
);
|
|
25802
|
-
const [hasStartedLinking, setHasStartedLinking] =
|
|
25803
|
-
const [modalWasOpened, setModalWasOpened] =
|
|
25804
|
-
const [pendingModalOpen, setPendingModalOpen] =
|
|
25805
|
-
(0,
|
|
26364
|
+
const [hasStartedLinking, setHasStartedLinking] = import_react93.default.useState(false);
|
|
26365
|
+
const [modalWasOpened, setModalWasOpened] = import_react93.default.useState(false);
|
|
26366
|
+
const [pendingModalOpen, setPendingModalOpen] = import_react93.default.useState(false);
|
|
26367
|
+
(0, import_react93.useEffect)(() => {
|
|
25806
26368
|
if (isWalletLinking && !hasStartedLinking) {
|
|
25807
26369
|
console.log("[WalletConnectHandler] Starting wallet link flow:", {
|
|
25808
26370
|
isConnected,
|
|
@@ -25840,18 +26402,18 @@ function WalletConnectHandler() {
|
|
|
25840
26402
|
setProviderType,
|
|
25841
26403
|
walletMode
|
|
25842
26404
|
]);
|
|
25843
|
-
(0,
|
|
26405
|
+
(0, import_react93.useEffect)(() => {
|
|
25844
26406
|
if (pendingModalOpen && !isConnected && openConnectModal) {
|
|
25845
26407
|
setPendingModalOpen(false);
|
|
25846
26408
|
openConnectModal();
|
|
25847
26409
|
}
|
|
25848
26410
|
}, [pendingModalOpen, isConnected, openConnectModal]);
|
|
25849
|
-
(0,
|
|
26411
|
+
(0, import_react93.useEffect)(() => {
|
|
25850
26412
|
if (connectModalOpen && hasStartedLinking) {
|
|
25851
26413
|
setModalWasOpened(true);
|
|
25852
26414
|
}
|
|
25853
26415
|
}, [connectModalOpen, hasStartedLinking]);
|
|
25854
|
-
(0,
|
|
26416
|
+
(0, import_react93.useEffect)(() => {
|
|
25855
26417
|
if (modalWasOpened && !connectModalOpen && !isConnected && isWalletLinking) {
|
|
25856
26418
|
console.log("[WalletConnectHandler] Modal closed without connecting");
|
|
25857
26419
|
onLinkingComplete(false);
|
|
@@ -25859,7 +26421,7 @@ function WalletConnectHandler() {
|
|
|
25859
26421
|
setModalWasOpened(false);
|
|
25860
26422
|
}
|
|
25861
26423
|
}, [connectModalOpen, modalWasOpened, isConnected, isWalletLinking]);
|
|
25862
|
-
(0,
|
|
26424
|
+
(0, import_react93.useEffect)(() => {
|
|
25863
26425
|
if (isWalletLinking) {
|
|
25864
26426
|
const timeout = setTimeout(() => {
|
|
25865
26427
|
console.warn("[WalletConnectHandler] Wallet linking timed out, resetting state");
|
|
@@ -25979,7 +26541,7 @@ function WalletConnectHandler() {
|
|
|
25979
26541
|
setPage(passportWalletAddress ? "manage-wallet" /* MANAGE_WALLET */ : "auth" /* AUTH */);
|
|
25980
26542
|
}
|
|
25981
26543
|
});
|
|
25982
|
-
(0,
|
|
26544
|
+
(0, import_react93.useEffect)(() => {
|
|
25983
26545
|
if (!!chain?.id && isConnected && walletAddress && isWalletLinking && hasStartedLinking && modalWasOpened && !pendingModalOpen) {
|
|
25984
26546
|
console.log("[WalletConnectHandler] handleWalletSign triggered");
|
|
25985
26547
|
if (!passportWalletAddress) {
|
|
@@ -25989,7 +26551,7 @@ function WalletConnectHandler() {
|
|
|
25989
26551
|
handleWalletSign({ chainId: chain.id, signingWalletAddress: walletAddress });
|
|
25990
26552
|
}
|
|
25991
26553
|
}, [chain, isConnected, walletAddress, isWalletLinking, hasStartedLinking, modalWasOpened, pendingModalOpen]);
|
|
25992
|
-
(0,
|
|
26554
|
+
(0, import_react93.useEffect)(() => {
|
|
25993
26555
|
if (isConnected && !chain?.id && isWalletLinking && hasStartedLinking && !connectModalOpen && !isWalletSigning) {
|
|
25994
26556
|
const timeout = setTimeout(() => {
|
|
25995
26557
|
console.warn("[WalletConnectHandler] Wallet connected but chain info missing, resetting");
|
|
@@ -26011,7 +26573,7 @@ function WalletConnectHandler() {
|
|
|
26011
26573
|
]);
|
|
26012
26574
|
return null;
|
|
26013
26575
|
}
|
|
26014
|
-
var import_rainbowkit2, import_react_query57,
|
|
26576
|
+
var import_rainbowkit2, import_react_query57, import_react93, import_wagmi9;
|
|
26015
26577
|
var init_WalletConnectHandler = __esm({
|
|
26016
26578
|
"src/internal/components/WalletConnectHandler.tsx"() {
|
|
26017
26579
|
init_ProviderContext();
|
|
@@ -26019,7 +26581,7 @@ var init_WalletConnectHandler = __esm({
|
|
|
26019
26581
|
init_linkedProfiles();
|
|
26020
26582
|
import_rainbowkit2 = require("@rainbow-me/rainbowkit");
|
|
26021
26583
|
import_react_query57 = require("@tanstack/react-query");
|
|
26022
|
-
|
|
26584
|
+
import_react93 = __toESM(require("react"), 1);
|
|
26023
26585
|
import_wagmi9 = require("wagmi");
|
|
26024
26586
|
init_wallet();
|
|
26025
26587
|
init_AuthMenu2();
|
|
@@ -26047,7 +26609,7 @@ function waitForStoreHydration() {
|
|
|
26047
26609
|
}
|
|
26048
26610
|
function SessionProvider({ children }) {
|
|
26049
26611
|
const config = useProviderConfig().config;
|
|
26050
|
-
return /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(
|
|
26612
|
+
return /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(import_react94.Fragment, { children: [
|
|
26051
26613
|
children,
|
|
26052
26614
|
config.current?.wallet?.enabled && /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(WalletConnectHandler, {}),
|
|
26053
26615
|
config.current?.wallet?.enabled && (config.current?.wallet?.mode === "direct" || config.current?.wallet?.mode === "both") && /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(DirectWalletHandler, {}),
|
|
@@ -26063,11 +26625,11 @@ function SessionProvider({ children }) {
|
|
|
26063
26625
|
/* @__PURE__ */ (0, import_jsx_runtime123.jsx)(OnboardingOverlay, {})
|
|
26064
26626
|
] });
|
|
26065
26627
|
}
|
|
26066
|
-
var import_read22,
|
|
26628
|
+
var import_read22, import_react94, import_zustand16, import_middleware4, import_jsx_runtime123, useSession, requireActiveChainId;
|
|
26067
26629
|
var init_SessionContext = __esm({
|
|
26068
26630
|
"src/context/SessionContext.tsx"() {
|
|
26069
26631
|
import_read22 = require("@embarkai/core/read");
|
|
26070
|
-
|
|
26632
|
+
import_react94 = require("react");
|
|
26071
26633
|
import_zustand16 = require("zustand");
|
|
26072
26634
|
import_middleware4 = require("zustand/middleware");
|
|
26073
26635
|
init_BalanceFeedProvider2();
|
|
@@ -27047,13 +27609,13 @@ async function clearLocalKeyshare(userId) {
|
|
|
27047
27609
|
console.log("[clearLocalKeyshare] Keyshares are now managed by secure iframe");
|
|
27048
27610
|
console.log("[clearLocalKeyshare] To clear keyshares, user must revoke authorization in iframe");
|
|
27049
27611
|
if (typeof window !== "undefined" && window.localStorage) {
|
|
27050
|
-
const
|
|
27612
|
+
const keys3 = [
|
|
27051
27613
|
`tss.${userId}.keyshare`,
|
|
27052
27614
|
`tss.${userId}.ownerAddress`,
|
|
27053
27615
|
`tss.${userId}.sessionId`,
|
|
27054
27616
|
...Object.keys(window.localStorage).filter((key) => key.startsWith(`tss.${userId}.dkg.`))
|
|
27055
27617
|
];
|
|
27056
|
-
|
|
27618
|
+
keys3.forEach((key) => window.localStorage.removeItem(key));
|
|
27057
27619
|
console.log("[clearLocalKeyshare] Cleared old localStorage keys for migration");
|
|
27058
27620
|
}
|
|
27059
27621
|
}
|
|
@@ -28748,7 +29310,7 @@ var init_rainbowkit = __esm({
|
|
|
28748
29310
|
function RainbowKitProvider({ children }) {
|
|
28749
29311
|
const config = useProviderConfig().config;
|
|
28750
29312
|
const colorMode = useLayoutStore((st) => st.colorMode);
|
|
28751
|
-
const rainbowConfig = (0,
|
|
29313
|
+
const rainbowConfig = (0, import_react95.useMemo)(
|
|
28752
29314
|
() => createRainbowConfig({
|
|
28753
29315
|
projectId: config.current?.wallet?.walletConnectProjectId,
|
|
28754
29316
|
allowedWallets: config.current?.wallet?.allowedWallets,
|
|
@@ -28762,7 +29324,7 @@ function RainbowKitProvider({ children }) {
|
|
|
28762
29324
|
config.current?.wallet?.walletConnectProjectId
|
|
28763
29325
|
]
|
|
28764
29326
|
);
|
|
28765
|
-
const customTheme = (0,
|
|
29327
|
+
const customTheme = (0, import_react95.useMemo)(() => {
|
|
28766
29328
|
if (!config.current?.wallet?.enabled) return {};
|
|
28767
29329
|
return colorMode === "dark" ? {
|
|
28768
29330
|
...(0, import_rainbowkit4.darkTheme)(),
|
|
@@ -28779,11 +29341,11 @@ function RainbowKitProvider({ children }) {
|
|
|
28779
29341
|
if (!config.current?.wallet?.enabled) return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_jsx_runtime124.Fragment, { children });
|
|
28780
29342
|
return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_wagmi11.WagmiProvider, { config: rainbowConfig, children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_rainbowkit4.RainbowKitProvider, { theme: customTheme, modalSize: "compact", showRecentTransactions: true, children }) });
|
|
28781
29343
|
}
|
|
28782
|
-
var import_rainbowkit4,
|
|
29344
|
+
var import_rainbowkit4, import_react95, import_wagmi11, import_styles, import_jsx_runtime124;
|
|
28783
29345
|
var init_RainbowKitContext = __esm({
|
|
28784
29346
|
"src/context/RainbowKitContext.tsx"() {
|
|
28785
29347
|
import_rainbowkit4 = require("@rainbow-me/rainbowkit");
|
|
28786
|
-
|
|
29348
|
+
import_react95 = require("react");
|
|
28787
29349
|
import_wagmi11 = require("wagmi");
|
|
28788
29350
|
init_rainbowkit();
|
|
28789
29351
|
init_useLayoutStore();
|
|
@@ -28839,10 +29401,10 @@ function clearLegacyWagmiStorage() {
|
|
|
28839
29401
|
}
|
|
28840
29402
|
function Provider(props) {
|
|
28841
29403
|
const { children, projectId, initialConfig = {}, callbacks } = props;
|
|
28842
|
-
const callbacksRef = (0,
|
|
28843
|
-
(0,
|
|
28844
|
-
const config = (0,
|
|
28845
|
-
const updateConfig = (0,
|
|
29404
|
+
const callbacksRef = (0, import_react96.useRef)(callbacks);
|
|
29405
|
+
(0, import_react96.useEffect)(() => notifyNoProjetctId(projectId), [projectId]);
|
|
29406
|
+
const config = (0, import_react96.useRef)((0, import_lodash_es15.merge)({}, DEFAULT_PROVIDER_CONFIG, { projectId }, initialConfig));
|
|
29407
|
+
const updateConfig = (0, import_react96.useCallback)((updates) => {
|
|
28846
29408
|
const prev = config.current;
|
|
28847
29409
|
const next = { ...prev };
|
|
28848
29410
|
if (updates.projectId !== void 0) next.projectId = updates.projectId;
|
|
@@ -28876,14 +29438,14 @@ function Provider(props) {
|
|
|
28876
29438
|
if (updates.translations) next.translations = { ...next.translations, ...updates.translations };
|
|
28877
29439
|
config.current = next;
|
|
28878
29440
|
}, []);
|
|
28879
|
-
const updateCallbacks = (0,
|
|
29441
|
+
const updateCallbacks = (0, import_react96.useCallback)((updates) => {
|
|
28880
29442
|
const prev = callbacksRef.current;
|
|
28881
29443
|
const next = updates ? { ...prev, ...updates } : void 0;
|
|
28882
29444
|
callbacksRef.current = next;
|
|
28883
29445
|
}, []);
|
|
28884
|
-
(0,
|
|
29446
|
+
(0, import_react96.useEffect)(() => {
|
|
28885
29447
|
if (typeof window === "undefined" || !projectId) return;
|
|
28886
|
-
const mergedConfig = (0,
|
|
29448
|
+
const mergedConfig = (0, import_lodash_es15.merge)(DEFAULT_PROVIDER_CONFIG, initialConfig);
|
|
28887
29449
|
updateConfig(mergedConfig);
|
|
28888
29450
|
if (mergedConfig.wallet?.enabled) {
|
|
28889
29451
|
clearLegacyWagmiStorage();
|
|
@@ -28901,7 +29463,7 @@ function Provider(props) {
|
|
|
28901
29463
|
useSession.getState().setActiveChainId(mergedConfig.network.chainId);
|
|
28902
29464
|
}
|
|
28903
29465
|
}, [projectId, initialConfig]);
|
|
28904
|
-
(0,
|
|
29466
|
+
(0, import_react96.useEffect)(() => {
|
|
28905
29467
|
if (typeof window === "undefined" || !projectId) return;
|
|
28906
29468
|
try {
|
|
28907
29469
|
(0, import_error_tracking4.initSdkErrorTracking)();
|
|
@@ -28930,7 +29492,7 @@ function Provider(props) {
|
|
|
28930
29492
|
console.error("[PROVIDER] Error setting up iframe manager:", error);
|
|
28931
29493
|
}
|
|
28932
29494
|
}, [projectId]);
|
|
28933
|
-
const contextValue = (0,
|
|
29495
|
+
const contextValue = (0, import_react96.useMemo)(
|
|
28934
29496
|
() => ({
|
|
28935
29497
|
config,
|
|
28936
29498
|
updateConfig,
|
|
@@ -28951,12 +29513,12 @@ function Provider(props) {
|
|
|
28951
29513
|
/* @__PURE__ */ (0, import_jsx_runtime126.jsx)(WagmiProvider2, { children: /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(UIContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(SessionProvider, { children }) }) })
|
|
28952
29514
|
);
|
|
28953
29515
|
}
|
|
28954
|
-
var import_error_tracking4,
|
|
29516
|
+
var import_error_tracking4, import_lodash_es15, import_react96, import_jsx_runtime126, UIContext, useProviderConfig;
|
|
28955
29517
|
var init_ProviderContext = __esm({
|
|
28956
29518
|
"src/context/ProviderContext.tsx"() {
|
|
28957
29519
|
import_error_tracking4 = require("@embarkai/core/internal/error-tracking");
|
|
28958
|
-
|
|
28959
|
-
|
|
29520
|
+
import_lodash_es15 = require("lodash-es");
|
|
29521
|
+
import_react96 = require("react");
|
|
28960
29522
|
init_initial();
|
|
28961
29523
|
init_iframe_manager();
|
|
28962
29524
|
init_RainbowKitContext();
|
|
@@ -28964,9 +29526,9 @@ var init_ProviderContext = __esm({
|
|
|
28964
29526
|
init_utils12();
|
|
28965
29527
|
init_WagmiContext();
|
|
28966
29528
|
import_jsx_runtime126 = require("react/jsx-runtime");
|
|
28967
|
-
UIContext = (0,
|
|
29529
|
+
UIContext = (0, import_react96.createContext)(void 0);
|
|
28968
29530
|
useProviderConfig = () => {
|
|
28969
|
-
const ctx = (0,
|
|
29531
|
+
const ctx = (0, import_react96.useContext)(UIContext);
|
|
28970
29532
|
if (!ctx) throw new Error("useProviderConfig must be used within a Provider");
|
|
28971
29533
|
return ctx;
|
|
28972
29534
|
};
|
|
@@ -28978,6 +29540,7 @@ var index_exports = {};
|
|
|
28978
29540
|
__export(index_exports, {
|
|
28979
29541
|
AccountAbstractionError: () => AccountAbstractionError,
|
|
28980
29542
|
Address: () => Address,
|
|
29543
|
+
BRIDGE_MENU_TOUR: () => BRIDGE_MENU_TOUR,
|
|
28981
29544
|
BUY_MENU_BINANCE_TOUR: () => BUY_MENU_BINANCE_TOUR,
|
|
28982
29545
|
ConnectWalletButton: () => ConnectWalletButton,
|
|
28983
29546
|
ErrorCodes: () => ErrorCodes,
|
|
@@ -28989,6 +29552,7 @@ __export(index_exports, {
|
|
|
28989
29552
|
PASSPORT_TRANSLATIONS: () => PASSPORT_TRANSLATIONS,
|
|
28990
29553
|
PageKey: () => PageKey,
|
|
28991
29554
|
Provider: () => Provider,
|
|
29555
|
+
SEND_MENU_TOUR: () => SEND_MENU_TOUR,
|
|
28992
29556
|
SessionExpiredError: () => SessionExpiredError,
|
|
28993
29557
|
TOKENS_ICONS: () => TOKENS_ICONS,
|
|
28994
29558
|
ThemeToggle: () => ThemeToggle,
|
|
@@ -29073,7 +29637,7 @@ __export(index_exports, {
|
|
|
29073
29637
|
module.exports = __toCommonJS(index_exports);
|
|
29074
29638
|
|
|
29075
29639
|
// src/styles/built.css
|
|
29076
|
-
var built_default = `.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.embarkai-ui-scope .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.embarkai-ui-scope .pointer-events-none{pointer-events:none}.embarkai-ui-scope .pointer-events-auto{pointer-events:auto}.embarkai-ui-scope .visible{visibility:visible}.embarkai-ui-scope .invisible{visibility:hidden}.embarkai-ui-scope .static{position:static}.embarkai-ui-scope .fixed{position:fixed}.embarkai-ui-scope .absolute{position:absolute}.embarkai-ui-scope .relative{position:relative}.embarkai-ui-scope .inset-0{inset:0}.embarkai-ui-scope .-right-1{right:-.25rem}.embarkai-ui-scope .-right-2{right:-.5rem}.embarkai-ui-scope .-top-1{top:-.25rem}.embarkai-ui-scope .-top-2{top:-.5rem}.embarkai-ui-scope .bottom-0{bottom:0}.embarkai-ui-scope .bottom-full{bottom:100%}.embarkai-ui-scope .left-0{left:0}.embarkai-ui-scope .left-1\\/2{left:50%}.embarkai-ui-scope .left-4{left:1rem}.embarkai-ui-scope .right-0{right:0}.embarkai-ui-scope .right-2{right:.5rem}.embarkai-ui-scope .right-3{right:.75rem}.embarkai-ui-scope .right-4{right:1rem}.embarkai-ui-scope .right-\\[var\\(--ui-kit-pd\\)\\]{right:var(--ui-kit-pd)}.embarkai-ui-scope .right-full{right:100%}.embarkai-ui-scope .top-0{top:0}.embarkai-ui-scope .top-1\\/2{top:50%}.embarkai-ui-scope .top-2{top:.5rem}.embarkai-ui-scope .top-4{top:1rem}.embarkai-ui-scope .top-\\[var\\(--ui-kit-pd\\)\\]{top:var(--ui-kit-pd)}.embarkai-ui-scope .z-10{z-index:10}.embarkai-ui-scope .z-50{z-index:50}.embarkai-ui-scope .z-\\[9998\\]{z-index:9998}.embarkai-ui-scope .z-\\[9999\\]{z-index:9999}.embarkai-ui-scope .-m-px{margin:-1px}.embarkai-ui-scope .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.embarkai-ui-scope .mx-auto{margin-left:auto;margin-right:auto}.embarkai-ui-scope .my-1{margin-top:.25rem;margin-bottom:.25rem}.embarkai-ui-scope .mb-1{margin-bottom:.25rem}.embarkai-ui-scope .mb-2{margin-bottom:.5rem}.embarkai-ui-scope .mb-3{margin-bottom:.75rem}.embarkai-ui-scope .mb-4{margin-bottom:1rem}.embarkai-ui-scope .ml-1{margin-left:.25rem}.embarkai-ui-scope .ml-2{margin-left:.5rem}.embarkai-ui-scope .ml-auto{margin-left:auto}.embarkai-ui-scope .mr-1{margin-right:.25rem}.embarkai-ui-scope .mt-0\\.5{margin-top:.125rem}.embarkai-ui-scope .mt-1{margin-top:.25rem}.embarkai-ui-scope .mt-2{margin-top:.5rem}.embarkai-ui-scope .mt-4{margin-top:1rem}.embarkai-ui-scope .block{display:block}.embarkai-ui-scope .inline-block{display:inline-block}.embarkai-ui-scope .inline{display:inline}.embarkai-ui-scope .flex{display:flex}.embarkai-ui-scope .inline-flex{display:inline-flex}.embarkai-ui-scope .table{display:table}.embarkai-ui-scope .grid{display:grid}.embarkai-ui-scope .hidden{display:none}.embarkai-ui-scope .aspect-square{aspect-ratio:1/1}.embarkai-ui-scope .size-4{width:1rem;height:1rem}.embarkai-ui-scope .size-8{width:2rem;height:2rem}.embarkai-ui-scope .size-auto{width:auto;height:auto}.embarkai-ui-scope .h-0{height:0}.embarkai-ui-scope .h-1{height:.25rem}.embarkai-ui-scope .h-10{height:2.5rem}.embarkai-ui-scope .h-12{height:3rem}.embarkai-ui-scope .h-16{height:4rem}.embarkai-ui-scope .h-3{height:.75rem}.embarkai-ui-scope .h-3\\.5{height:.875rem}.embarkai-ui-scope .h-4{height:1rem}.embarkai-ui-scope .h-48{height:12rem}.embarkai-ui-scope .h-5{height:1.25rem}.embarkai-ui-scope .h-6{height:1.5rem}.embarkai-ui-scope .h-7{height:1.75rem}.embarkai-ui-scope .h-8{height:2rem}.embarkai-ui-scope .h-\\[100dvh\\]{height:100dvh}.embarkai-ui-scope .h-\\[48px\\]{height:48px}.embarkai-ui-scope .h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.embarkai-ui-scope .h-auto{height:auto}.embarkai-ui-scope .h-fit{height:-moz-fit-content;height:fit-content}.embarkai-ui-scope .h-full{height:100%}.embarkai-ui-scope .h-px{height:1px}.embarkai-ui-scope .max-h-96{max-height:24rem}.embarkai-ui-scope .max-h-\\[95dvh\\]{max-height:95dvh}.embarkai-ui-scope .min-h-10{min-height:2.5rem}.embarkai-ui-scope .min-h-12{min-height:3rem}.embarkai-ui-scope .w-0{width:0}.embarkai-ui-scope .w-1{width:.25rem}.embarkai-ui-scope .w-1\\/2{width:50%}.embarkai-ui-scope .w-10{width:2.5rem}.embarkai-ui-scope .w-12{width:3rem}.embarkai-ui-scope .w-16{width:4rem}.embarkai-ui-scope .w-3{width:.75rem}.embarkai-ui-scope .w-3\\.5{width:.875rem}.embarkai-ui-scope .w-4{width:1rem}.embarkai-ui-scope .w-48{width:12rem}.embarkai-ui-scope .w-5{width:1.25rem}.embarkai-ui-scope .w-6{width:1.5rem}.embarkai-ui-scope .w-7{width:1.75rem}.embarkai-ui-scope .w-8{width:2rem}.embarkai-ui-scope .w-\\[100dvw\\]{width:100dvw}.embarkai-ui-scope .w-\\[40px\\]{width:40px}.embarkai-ui-scope .w-\\[var\\(--ui-kit-maw\\)\\]{width:var(--ui-kit-maw)}.embarkai-ui-scope .w-fit{width:-moz-fit-content;width:fit-content}.embarkai-ui-scope .w-full{width:100%}.embarkai-ui-scope .w-px{width:1px}.embarkai-ui-scope .min-w-0{min-width:0}.embarkai-ui-scope .min-w-10{min-width:2.5rem}.embarkai-ui-scope .min-w-16{min-width:4rem}.embarkai-ui-scope .min-w-\\[256px\\]{min-width:256px}.embarkai-ui-scope .min-w-\\[8rem\\]{min-width:8rem}.embarkai-ui-scope .min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.embarkai-ui-scope .max-w-\\[100px\\]{max-width:100px}.embarkai-ui-scope .max-w-\\[144px\\]{max-width:144px}.embarkai-ui-scope .max-w-\\[150px\\]{max-width:150px}.embarkai-ui-scope .max-w-\\[160px\\]{max-width:160px}.embarkai-ui-scope .max-w-\\[256px\\]{max-width:256px}.embarkai-ui-scope .max-w-\\[680px\\]{max-width:680px}.embarkai-ui-scope .max-w-\\[calc\\(50\\%-8px\\)\\]{max-width:calc(50% - 8px)}.embarkai-ui-scope .max-w-full{max-width:100%}.embarkai-ui-scope .max-w-sm{max-width:24rem}.embarkai-ui-scope .flex-1{flex:1 1 0%}.embarkai-ui-scope .flex-none{flex:none}.embarkai-ui-scope .flex-shrink-0,.embarkai-ui-scope .shrink-0{flex-shrink:0}.embarkai-ui-scope .-translate-x-1\\/2{--tw-translate-x:-50%}.embarkai-ui-scope .-translate-x-1\\/2,.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{--tw-translate-x:calc(var(--ui-kit-gap)*-1)}.embarkai-ui-scope .-translate-y-1\\/2{--tw-translate-y:-50%}.embarkai-ui-scope .-translate-y-1\\/2,.embarkai-ui-scope .-translate-y-1\\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-y-1\\/3{--tw-translate-y:-33.333333%}.embarkai-ui-scope .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes glow-warning{0%,to{transform:scale(1);box-shadow:0 0 16px var(--ui-kit-bg-warning)}50%{transform:scale(.97);box-shadow:0 0 4px var(--ui-kit-bg-warning)}}.embarkai-ui-scope .animate-glow-warning{animation:glow-warning 2s ease infinite}@keyframes pulse{50%{opacity:.5}}.embarkai-ui-scope .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.embarkai-ui-scope .animate-spin{animation:spin 1s linear infinite}.embarkai-ui-scope .cursor-default{cursor:default}.embarkai-ui-scope .cursor-help{cursor:help}.embarkai-ui-scope .cursor-pointer{cursor:pointer}.embarkai-ui-scope .cursor-text{cursor:text}.embarkai-ui-scope .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.embarkai-ui-scope .select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.embarkai-ui-scope .scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.embarkai-ui-scope .list-inside{list-style-position:inside}.embarkai-ui-scope .list-disc{list-style-type:disc}.embarkai-ui-scope .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.embarkai-ui-scope .flex-col{flex-direction:column}.embarkai-ui-scope .flex-col-reverse{flex-direction:column-reverse}.embarkai-ui-scope .flex-wrap{flex-wrap:wrap}.embarkai-ui-scope .place-content-center{place-content:center}.embarkai-ui-scope .items-start{align-items:flex-start}.embarkai-ui-scope .items-end{align-items:flex-end}.embarkai-ui-scope .items-center{align-items:center}.embarkai-ui-scope .justify-start{justify-content:flex-start}.embarkai-ui-scope .justify-end{justify-content:flex-end}.embarkai-ui-scope .justify-center{justify-content:center}.embarkai-ui-scope .justify-between{justify-content:space-between}.embarkai-ui-scope .gap-0{gap:0}.embarkai-ui-scope .gap-1{gap:.25rem}.embarkai-ui-scope .gap-2{gap:.5rem}.embarkai-ui-scope .gap-3{gap:.75rem}.embarkai-ui-scope .gap-4{gap:1rem}.embarkai-ui-scope .gap-\\[10px\\]{gap:10px}.embarkai-ui-scope .gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope :is(.space-x-1>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-y-0\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.embarkai-ui-scope .overflow-hidden{overflow:hidden}.embarkai-ui-scope .overflow-y-auto{overflow-y:auto}.embarkai-ui-scope .overflow-x-hidden{overflow-x:hidden}.embarkai-ui-scope .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.embarkai-ui-scope .text-ellipsis{text-overflow:ellipsis}.embarkai-ui-scope .whitespace-nowrap{white-space:nowrap}.embarkai-ui-scope .whitespace-pre-line{white-space:pre-line}.embarkai-ui-scope .whitespace-pre-wrap{white-space:pre-wrap}.embarkai-ui-scope .break-normal{overflow-wrap:normal;word-break:normal}.embarkai-ui-scope .break-words{overflow-wrap:break-word}.embarkai-ui-scope .break-all{word-break:break-all}.embarkai-ui-scope .rounded{border-radius:.25rem}.embarkai-ui-scope .rounded-\\[10px\\]{border-radius:10px}.embarkai-ui-scope .rounded-\\[8px\\]{border-radius:8px}.embarkai-ui-scope .rounded-\\[calc\\(var\\(--ui-kit-el-bdrs\\)_\\/_2\\)\\]{border-radius:calc(var(--ui-kit-el-bdrs)/2)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-bdrs\\)\\]{border-radius:var(--ui-kit-bdrs)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .rounded-full{border-radius:9999px}.embarkai-ui-scope .rounded-lg{border-radius:.5rem}.embarkai-ui-scope .rounded-md{border-radius:.375rem}.embarkai-ui-scope .rounded-xl{border-radius:.75rem}.embarkai-ui-scope .border{border-width:1px}.embarkai-ui-scope .border-0{border-width:0}.embarkai-ui-scope .border-2{border-width:2px}.embarkai-ui-scope .border-b{border-bottom-width:1px}.embarkai-ui-scope .border-t{border-top-width:1px}.embarkai-ui-scope .border-dashed{border-style:dashed}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bd\\)\\]{border-color:var(--ui-kit-bd)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-error\\)\\]{border-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-success\\)\\]{border-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-warning\\)\\]{border-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-error\\)\\]{border-color:var(--ui-kit-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-secondary\\)\\]{border-color:var(--ui-kit-secondary)}.embarkai-ui-scope .border-current{border-color:currentColor}.embarkai-ui-scope .border-transparent{border-color:transparent}.embarkai-ui-scope .border-t-transparent{border-top-color:transparent}.embarkai-ui-scope .bg-\\[\\#002c15\\]{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#081f2c\\]{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f0f6f8\\]{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f3ba2f\\]{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg\\)\\]{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-error\\)\\]{background-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-info\\)\\]{background-color:var(--ui-kit-bg-info)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-secondary\\)\\]{background-color:var(--ui-kit-bg-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-success\\)\\]{background-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-warning\\)\\]{background-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-fg\\)\\]{background-color:var(--ui-kit-fg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-overlay\\)\\]{background-color:var(--ui-kit-overlay)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-primary\\)\\]{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary\\)\\]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary-h\\)\\]{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-transparent{background-color:transparent}.embarkai-ui-scope .fill-\\[var\\(--ui-kit-bg-warning\\)\\]{fill:var(--ui-kit-bg-warning)}.embarkai-ui-scope .object-contain{-o-object-fit:contain;object-fit:contain}.embarkai-ui-scope .object-cover{-o-object-fit:cover;object-fit:cover}.embarkai-ui-scope .p-0{padding:0}.embarkai-ui-scope .p-1{padding:.25rem}.embarkai-ui-scope .p-2{padding:.5rem}.embarkai-ui-scope .p-3{padding:.75rem}.embarkai-ui-scope .p-4{padding:1rem}.embarkai-ui-scope .p-5{padding:1.25rem}.embarkai-ui-scope .p-6{padding:1.5rem}.embarkai-ui-scope .p-8{padding:2rem}.embarkai-ui-scope .p-\\[2px\\]{padding:2px}.embarkai-ui-scope .p-\\[var\\(--ui-kit-gap\\)\\]{padding:var(--ui-kit-gap)}.embarkai-ui-scope .p-\\[var\\(--ui-kit-pd\\)\\]{padding:var(--ui-kit-pd)}.embarkai-ui-scope .px-0{padding-left:0;padding-right:0}.embarkai-ui-scope .px-1{padding-left:.25rem;padding-right:.25rem}.embarkai-ui-scope .px-2{padding-left:.5rem;padding-right:.5rem}.embarkai-ui-scope .px-3{padding-left:.75rem;padding-right:.75rem}.embarkai-ui-scope .px-4{padding-left:1rem;padding-right:1rem}.embarkai-ui-scope .px-5{padding-left:1.25rem;padding-right:1.25rem}.embarkai-ui-scope .px-8{padding-left:2rem;padding-right:2rem}.embarkai-ui-scope .px-\\[var\\(--ui-kit-gap\\)\\]{padding-left:var(--ui-kit-gap);padding-right:var(--ui-kit-gap)}.embarkai-ui-scope .px-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .py-0{padding-top:0;padding-bottom:0}.embarkai-ui-scope .py-1{padding-top:.25rem;padding-bottom:.25rem}.embarkai-ui-scope .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.embarkai-ui-scope .py-2{padding-top:.5rem;padding-bottom:.5rem}.embarkai-ui-scope .py-3{padding-top:.75rem;padding-bottom:.75rem}.embarkai-ui-scope .py-4{padding-top:1rem;padding-bottom:1rem}.embarkai-ui-scope .py-8{padding-top:2rem;padding-bottom:2rem}.embarkai-ui-scope .py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.embarkai-ui-scope .py-\\[var\\(--ui-kit-gap\\)\\]{padding-top:var(--ui-kit-gap);padding-bottom:var(--ui-kit-gap)}.embarkai-ui-scope .py-\\[var\\(--ui-kit-pd\\)\\]{padding-top:var(--ui-kit-pd);padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pb-2{padding-bottom:.5rem}.embarkai-ui-scope .pb-5{padding-bottom:1.25rem}.embarkai-ui-scope .pb-6{padding-bottom:1.5rem}.embarkai-ui-scope .pb-\\[var\\(--ui-kit-pd\\)\\]{padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pl-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd)}.embarkai-ui-scope .pr-8{padding-right:2rem}.embarkai-ui-scope .pt-3{padding-top:.75rem}.embarkai-ui-scope .pt-4{padding-top:1rem}.embarkai-ui-scope .pt-5{padding-top:1.25rem}.embarkai-ui-scope .text-left{text-align:left}.embarkai-ui-scope .text-center{text-align:center}.embarkai-ui-scope .text-right{text-align:right}.embarkai-ui-scope .font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.embarkai-ui-scope .font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.embarkai-ui-scope .text-2xl{font-size:1.5rem;line-height:2rem}.embarkai-ui-scope .text-\\[10px\\]{font-size:10px}.embarkai-ui-scope .text-\\[14px\\]{font-size:14px}.embarkai-ui-scope .text-\\[16px\\]{font-size:16px}.embarkai-ui-scope .text-\\[8px\\]{font-size:8px}.embarkai-ui-scope .text-lg{font-size:1.125rem;line-height:1.75rem}.embarkai-ui-scope .text-sm{font-size:.875rem;line-height:1.25rem}.embarkai-ui-scope .text-xl{font-size:1.25rem;line-height:1.75rem}.embarkai-ui-scope .text-xs{font-size:.75rem;line-height:1rem}.embarkai-ui-scope .font-bold{font-weight:700}.embarkai-ui-scope .font-medium{font-weight:500}.embarkai-ui-scope .font-normal{font-weight:400}.embarkai-ui-scope .font-semibold{font-weight:600}.embarkai-ui-scope .uppercase{text-transform:uppercase}.embarkai-ui-scope .lowercase{text-transform:lowercase}.embarkai-ui-scope .leading-3{line-height:.75rem}.embarkai-ui-scope .leading-4{line-height:1rem}.embarkai-ui-scope .leading-5{line-height:1.25rem}.embarkai-ui-scope .leading-6{line-height:1.5rem}.embarkai-ui-scope .leading-7{line-height:1.75rem}.embarkai-ui-scope .leading-8{line-height:2rem}.embarkai-ui-scope .leading-\\[8px\\]{line-height:8px}.embarkai-ui-scope .leading-none{line-height:1}.embarkai-ui-scope .leading-tight{line-height:1.25}.embarkai-ui-scope .tracking-\\[0\\.3em\\]{letter-spacing:.3em}.embarkai-ui-scope .tracking-tight{letter-spacing:-.025em}.embarkai-ui-scope .text-\\[\\#c3f53c\\]{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-error\\)\\]{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-success\\)\\]{color:var(--ui-kit-bg-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-warning\\)\\]{color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-error\\)\\]{color:var(--ui-kit-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg\\)\\]{color:var(--ui-kit-fg)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-inverted\\)\\]{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-muted\\)\\]{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-info\\)\\]{color:var(--ui-kit-info)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-primary\\)\\]{color:var(--ui-kit-primary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-success\\)\\]{color:var(--ui-kit-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-text-secondary\\)\\]{color:var(--ui-kit-text-secondary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-warning\\)\\]{color:var(--ui-kit-warning)}.embarkai-ui-scope .text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.embarkai-ui-scope .underline{text-decoration-line:underline}.embarkai-ui-scope .underline-offset-2{text-underline-offset:2px}.embarkai-ui-scope .underline-offset-4{text-underline-offset:4px}.embarkai-ui-scope .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope .opacity-0{opacity:0}.embarkai-ui-scope .opacity-100{opacity:1}.embarkai-ui-scope .opacity-50{opacity:.5}.embarkai-ui-scope .opacity-60{opacity:.6}.embarkai-ui-scope .shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.embarkai-ui-scope .shadow,.embarkai-ui-scope .shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.embarkai-ui-scope .shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.embarkai-ui-scope .outline-none{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .outline{outline-style:solid}.embarkai-ui-scope .blur{--tw-blur:blur(8px)}.embarkai-ui-scope .blur,.embarkai-ui-scope .grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .grayscale{--tw-grayscale:grayscale(100%)}.embarkai-ui-scope .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-\\[color\\2c box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-none{transition-property:none}.embarkai-ui-scope .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .duration-200{transition-duration:.2s}.embarkai-ui-scope .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.embarkai-ui-scope{--ui-kit-ff:var(--embark-ui-ff,-apple-system,BlinkMacSystemFont,"Inter",system-ui,sans-serif);--ui-kit-maw:var(--embark-ui-maw,384px);--ui-kit-pd:var(--embark-ui-pd,12px);--ui-kit-gap:var(--embark-ui-gap,10px);--ui-kit-bdrs:var(--embark-ui-bdrs,20px);--ui-kit-el-bdrs:var(--embark-ui-element-bdrs,10px);--ui-kit-backdrop-blur:var(--embark-ui-backdrop-blur,10px)}.embarkai-ui-scope[data-current-theme-mode=light]{--ui-kit-overlay:var(--embark-ui-overlay,hsla(0,0%,100%,.8));--ui-kit-bg:var(--embark-ui-bg,#fff);--ui-kit-fg:var(--embark-ui-fg,#000);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#fff);--ui-kit-fg-muted:var(--embark-ui-fg-muted,rgba(0,0,0,.6));--ui-kit-primary:var(--embark-ui-primary,#000);--ui-kit-primary-h:var(--embark-ui-primary-h,rgba(0,0,0,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,rgba(0,0,0,.6));--ui-kit-secondary:var(--embark-ui-secondary,#e4e4e4);--ui-kit-secondary-h:var(--embark-ui-secondary-h,hsla(0,0%,89%,.8));--ui-kit-secondary-a:var(--embark-ui-secondary-a,hsla(0,0%,89%,.6));--ui-kit-bd:var(--embark-ui-bd,#ebebeb);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#a9a9a9);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope[data-current-theme-mode=dark]{--ui-kit-overlay:var(--embark-ui-overlay,rgba(0,0,0,.8));--ui-kit-bg:var(--embark-ui-bg,#1a1a1a);--ui-kit-fg:var(--embark-ui-fg,#fff);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#000);--ui-kit-fg-muted:var(--embark-ui-fg-muted,hsla(0,0%,100%,.6));--ui-kit-primary:var(--embark-ui-primary,#fff);--ui-kit-primary-h:var(--embark-ui-primary-h,hsla(0,0%,100%,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,hsla(0,0%,100%,.6));--ui-kit-secondary:var(--embark-ui-secondary,#2a2a2a);--ui-kit-secondary-h:var(--embark-ui-secondary-h,rgba(42,42,42,.6));--ui-kit-secondary-a:var(--embark-ui-secondary-a,rgba(42,42,42,.4));--ui-kit-bd:var(--embark-ui-bd,#3a3a3a);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#4a4a4a);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope,.embarkai-ui-scope *{margin:0;box-sizing:border-box;font-family:var(--ui-kit-ff);font-optical-sizing:auto;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent;-ms-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope button,.embarkai-ui-scope h1,.embarkai-ui-scope h2,.embarkai-ui-scope h3,.embarkai-ui-scope h4,.embarkai-ui-scope h5,.embarkai-ui-scope h6,.embarkai-ui-scope input,.embarkai-ui-scope p,.embarkai-ui-scope select,.embarkai-ui-scope textarea{font-family:var(--ui-kit-ff)!important;margin:0}.embarkai-ui-scope button,.embarkai-ui-scope input,.embarkai-ui-scope select,.embarkai-ui-scope textarea{border-style:solid;outline:none!important;appearance:none!important;-webkit-appearance:none;-moz-appearance:none}.embarkai-ui-scope input,.embarkai-ui-scope textarea{font-size:16px!important}.embarkai-ui-scope .account-connect-button{box-shadow:0 4px 20px var(--ui-kit-shadow-c),inset 0 0 0 1px var(--ui-kit-bd);transition:transform .25s ease}.embarkai-ui-scope .account-connect-button:hover{transform:scale(1.02)}.embarkai-ui-scope .account-connect-button:active{transform:scale(1)}@keyframes lumia-mobile-dialog-fade-in{0%{opacity:0;transform:translateY(64px)}to{opacity:1;transform:translateY(0)}}@keyframes lumia-mobile-dialog-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(64px)}}.embarkai-ui-scope .animate-mobile-dialog-in{animation:lumia-mobile-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-mobile-dialog-out{animation:lumia-mobile-dialog-fade-out 375ms ease}@keyframes lumia-dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lumia-dialog-fade-out{0%{opacity:1}to{opacity:0}}.embarkai-ui-scope .animate-dialog-in{animation:lumia-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-dialog-out{animation:lumia-dialog-fade-out 375ms ease}.embarkai-ui-scope .list-scrollbar-y{width:100%;padding-right:var(--ui-kit-list-scrollbar-pd-r,0);overflow-y:auto;overflow-x:hidden;max-height:var(--ui-kit-scrollbar-mah,300px)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar{width:4px;height:4px}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-thumb{cursor:pointer;width:4px;border-radius:2px;background-color:var(--ui-kit-bd)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-track{margin-top:10px;margin-bottom:10px;background-color:transparent}.embarkai-ui-scope .noScrollbars::-webkit-scrollbar{display:none}.embarkai-ui-scope div[data-radix-popper-content-wrapper]{z-index:10000!important}@keyframes rotateShine{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.embarkai-ui-scope .button-shine-outline{position:absolute;top:0;left:0;width:100%;height:100%;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;-webkit-mask-composite:xor;mask-composite:exclude}.embarkai-ui-scope .button-shine-outline-shiner{pointer-events:none;position:absolute;top:50%;left:50%;width:500px;height:500px;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0,var(--ui-kit-fg) 8%,transparent 24%);animation:rotateShine 3s linear infinite}.embarkai-ui-scope .file\\:mr-\\[var\\(--ui-kit-gap\\)\\]::file-selector-button{margin-right:var(--ui-kit-gap)}.embarkai-ui-scope .file\\:h-12::file-selector-button{height:3rem}.embarkai-ui-scope .file\\:cursor-pointer::file-selector-button{cursor:pointer}.embarkai-ui-scope .file\\:rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]::file-selector-button{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .file\\:border-0::file-selector-button{border-width:0}.embarkai-ui-scope .file\\:bg-\\[var\\(--ui-kit-primary\\)\\]::file-selector-button{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .file\\:bg-transparent::file-selector-button{background-color:transparent}.embarkai-ui-scope .file\\:px-\\[var\\(--ui-kit-pd\\)\\]::file-selector-button{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .file\\:text-\\[16px\\]::file-selector-button{font-size:16px}.embarkai-ui-scope .file\\:text-base::file-selector-button{font-size:1rem;line-height:1.5rem}.embarkai-ui-scope .file\\:font-medium::file-selector-button{font-weight:500}.embarkai-ui-scope .file\\:text-\\[var\\(--ui-kit-fg-inverted\\)\\]::file-selector-button{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::-moz-placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .focus-within\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus-within{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .hover\\:bg-\\[\\#002c15\\]:hover{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#081f2c\\]:hover{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f0f6f8\\]:hover{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f3ba2f\\]:hover{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary-h\\)\\]:hover{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[\\#c3f53c\\]:hover{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[var\\(--ui-kit-fg\\)\\]:hover{color:var(--ui-kit-fg)}.embarkai-ui-scope .hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:underline:hover{text-decoration-line:underline}.embarkai-ui-scope .hover\\:opacity-80:hover{opacity:.8}.embarkai-ui-scope .hover\\:brightness-110:hover{--tw-brightness:brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .file\\:hover\\:opacity-90:hover::file-selector-button{opacity:.9}.embarkai-ui-scope .focus\\:border-\\[var\\(--ui-kit-primary\\)\\]:focus{border-color:var(--ui-kit-primary)}.embarkai-ui-scope .focus\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus\\:bg-transparent:focus{background-color:transparent}.embarkai-ui-scope .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:ring-0:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-\\[2px\\]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-transparent:focus-visible{--tw-ring-color:transparent}.embarkai-ui-scope .focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.embarkai-ui-scope .active\\:bg-\\[\\#f3ba2f\\]:active{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:active{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .active\\:text-\\[\\#c3f53c\\]:active{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .active\\:opacity-60:active{opacity:.6}.embarkai-ui-scope .file\\:active\\:opacity-80:active::file-selector-button{opacity:.8}.embarkai-ui-scope .disabled\\:cursor-default:disabled{cursor:default}.embarkai-ui-scope .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.embarkai-ui-scope .disabled\\:opacity-50:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover:disabled{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .disabled\\:hover\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:hover:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:hover\\:opacity-50:hover:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:active\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:active:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:active\\:opacity-50:active:disabled{opacity:.5}.embarkai-ui-scope :is(.group:hover .group-hover\\:opacity-100){opacity:1}.embarkai-ui-scope .data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.embarkai-ui-scope .data-\\[size\\=default\\]\\:h-12[data-size=default]{height:3rem}.embarkai-ui-scope .data-\\[size\\=sm\\]\\:h-10[data-size=sm]{height:2.5rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom],.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right],.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:border-\\[var\\(--ui-kit-bd-intense\\)\\][data-state=checked]{border-color:var(--ui-kit-bd-intense)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:bg-\\[var\\(--ui-kit-secondary\\)\\][data-state=checked]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:text-\\[var\\(--ui-kit-fg\\)\\][data-state=checked]{color:var(--ui-kit-fg)}.embarkai-ui-scope .data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1[data-slot=select-value]>*){overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*){display:flex}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*){align-items:center}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[var\\(--ui-kit-gap\\)\\][data-slot=select-value]>*){gap:var(--ui-kit-gap)}@media (min-width:640px){.embarkai-ui-scope .sm\\:flex-row{flex-direction:row}.embarkai-ui-scope .sm\\:justify-end{justify-content:flex-end}.embarkai-ui-scope :is(.sm\\:space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope .sm\\:text-left{text-align:left}}@media (min-width:768px){.embarkai-ui-scope .md\\:h-8{height:2rem}.embarkai-ui-scope .md\\:w-8{width:2rem}.embarkai-ui-scope .md\\:gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope .md\\:py-1{padding-top:.25rem;padding-bottom:.25rem}}.embarkai-ui-scope :is(.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-])){width:1rem;height:1rem}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:pointer-events-none svg){pointer-events:none}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:shrink-0 svg){flex-shrink:0}`;
|
|
29640
|
+
var built_default = `.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.embarkai-ui-scope .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.embarkai-ui-scope .pointer-events-none{pointer-events:none}.embarkai-ui-scope .pointer-events-auto{pointer-events:auto}.embarkai-ui-scope .visible{visibility:visible}.embarkai-ui-scope .invisible{visibility:hidden}.embarkai-ui-scope .static{position:static}.embarkai-ui-scope .fixed{position:fixed}.embarkai-ui-scope .absolute{position:absolute}.embarkai-ui-scope .relative{position:relative}.embarkai-ui-scope .inset-0{inset:0}.embarkai-ui-scope .-right-1{right:-.25rem}.embarkai-ui-scope .-right-2{right:-.5rem}.embarkai-ui-scope .-top-1{top:-.25rem}.embarkai-ui-scope .-top-2{top:-.5rem}.embarkai-ui-scope .bottom-0{bottom:0}.embarkai-ui-scope .bottom-full{bottom:100%}.embarkai-ui-scope .left-0{left:0}.embarkai-ui-scope .left-1\\/2{left:50%}.embarkai-ui-scope .left-4{left:1rem}.embarkai-ui-scope .right-0{right:0}.embarkai-ui-scope .right-2{right:.5rem}.embarkai-ui-scope .right-3{right:.75rem}.embarkai-ui-scope .right-4{right:1rem}.embarkai-ui-scope .right-\\[var\\(--ui-kit-pd\\)\\]{right:var(--ui-kit-pd)}.embarkai-ui-scope .right-full{right:100%}.embarkai-ui-scope .top-0{top:0}.embarkai-ui-scope .top-1\\/2{top:50%}.embarkai-ui-scope .top-2{top:.5rem}.embarkai-ui-scope .top-4{top:1rem}.embarkai-ui-scope .top-\\[var\\(--ui-kit-pd\\)\\]{top:var(--ui-kit-pd)}.embarkai-ui-scope .z-10{z-index:10}.embarkai-ui-scope .z-50{z-index:50}.embarkai-ui-scope .z-\\[9998\\]{z-index:9998}.embarkai-ui-scope .z-\\[9999\\]{z-index:9999}.embarkai-ui-scope .-m-px{margin:-1px}.embarkai-ui-scope .-mx-1{margin-left:-.25rem;margin-right:-.25rem}.embarkai-ui-scope .mx-auto{margin-left:auto;margin-right:auto}.embarkai-ui-scope .my-1{margin-top:.25rem;margin-bottom:.25rem}.embarkai-ui-scope .mb-1{margin-bottom:.25rem}.embarkai-ui-scope .mb-2{margin-bottom:.5rem}.embarkai-ui-scope .mb-3{margin-bottom:.75rem}.embarkai-ui-scope .mb-4{margin-bottom:1rem}.embarkai-ui-scope .ml-1{margin-left:.25rem}.embarkai-ui-scope .ml-2{margin-left:.5rem}.embarkai-ui-scope .ml-auto{margin-left:auto}.embarkai-ui-scope .mr-1{margin-right:.25rem}.embarkai-ui-scope .mt-0\\.5{margin-top:.125rem}.embarkai-ui-scope .mt-1{margin-top:.25rem}.embarkai-ui-scope .mt-2{margin-top:.5rem}.embarkai-ui-scope .mt-4{margin-top:1rem}.embarkai-ui-scope .block{display:block}.embarkai-ui-scope .inline-block{display:inline-block}.embarkai-ui-scope .inline{display:inline}.embarkai-ui-scope .flex{display:flex}.embarkai-ui-scope .inline-flex{display:inline-flex}.embarkai-ui-scope .table{display:table}.embarkai-ui-scope .grid{display:grid}.embarkai-ui-scope .hidden{display:none}.embarkai-ui-scope .aspect-square{aspect-ratio:1/1}.embarkai-ui-scope .size-4{width:1rem;height:1rem}.embarkai-ui-scope .size-8{width:2rem;height:2rem}.embarkai-ui-scope .size-auto{width:auto;height:auto}.embarkai-ui-scope .h-0{height:0}.embarkai-ui-scope .h-1{height:.25rem}.embarkai-ui-scope .h-10{height:2.5rem}.embarkai-ui-scope .h-12{height:3rem}.embarkai-ui-scope .h-16{height:4rem}.embarkai-ui-scope .h-3{height:.75rem}.embarkai-ui-scope .h-3\\.5{height:.875rem}.embarkai-ui-scope .h-4{height:1rem}.embarkai-ui-scope .h-48{height:12rem}.embarkai-ui-scope .h-5{height:1.25rem}.embarkai-ui-scope .h-6{height:1.5rem}.embarkai-ui-scope .h-7{height:1.75rem}.embarkai-ui-scope .h-8{height:2rem}.embarkai-ui-scope .h-\\[100dvh\\]{height:100dvh}.embarkai-ui-scope .h-\\[48px\\]{height:48px}.embarkai-ui-scope .h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.embarkai-ui-scope .h-auto{height:auto}.embarkai-ui-scope .h-fit{height:-moz-fit-content;height:fit-content}.embarkai-ui-scope .h-full{height:100%}.embarkai-ui-scope .h-px{height:1px}.embarkai-ui-scope .max-h-96{max-height:24rem}.embarkai-ui-scope .max-h-\\[95dvh\\]{max-height:95dvh}.embarkai-ui-scope .min-h-10{min-height:2.5rem}.embarkai-ui-scope .min-h-12{min-height:3rem}.embarkai-ui-scope .w-0{width:0}.embarkai-ui-scope .w-1{width:.25rem}.embarkai-ui-scope .w-1\\/2{width:50%}.embarkai-ui-scope .w-10{width:2.5rem}.embarkai-ui-scope .w-12{width:3rem}.embarkai-ui-scope .w-16{width:4rem}.embarkai-ui-scope .w-3{width:.75rem}.embarkai-ui-scope .w-3\\.5{width:.875rem}.embarkai-ui-scope .w-4{width:1rem}.embarkai-ui-scope .w-48{width:12rem}.embarkai-ui-scope .w-5{width:1.25rem}.embarkai-ui-scope .w-6{width:1.5rem}.embarkai-ui-scope .w-7{width:1.75rem}.embarkai-ui-scope .w-8{width:2rem}.embarkai-ui-scope .w-\\[100dvw\\]{width:100dvw}.embarkai-ui-scope .w-\\[40px\\]{width:40px}.embarkai-ui-scope .w-\\[var\\(--ui-kit-maw\\)\\]{width:var(--ui-kit-maw)}.embarkai-ui-scope .w-fit{width:-moz-fit-content;width:fit-content}.embarkai-ui-scope .w-full{width:100%}.embarkai-ui-scope .w-px{width:1px}.embarkai-ui-scope .min-w-0{min-width:0}.embarkai-ui-scope .min-w-10{min-width:2.5rem}.embarkai-ui-scope .min-w-16{min-width:4rem}.embarkai-ui-scope .min-w-\\[256px\\]{min-width:256px}.embarkai-ui-scope .min-w-\\[8rem\\]{min-width:8rem}.embarkai-ui-scope .min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.embarkai-ui-scope .max-w-\\[100px\\]{max-width:100px}.embarkai-ui-scope .max-w-\\[144px\\]{max-width:144px}.embarkai-ui-scope .max-w-\\[150px\\]{max-width:150px}.embarkai-ui-scope .max-w-\\[160px\\]{max-width:160px}.embarkai-ui-scope .max-w-\\[256px\\]{max-width:256px}.embarkai-ui-scope .max-w-\\[680px\\]{max-width:680px}.embarkai-ui-scope .max-w-\\[calc\\(50\\%-8px\\)\\]{max-width:calc(50% - 8px)}.embarkai-ui-scope .max-w-full{max-width:100%}.embarkai-ui-scope .max-w-sm{max-width:24rem}.embarkai-ui-scope .flex-1{flex:1 1 0%}.embarkai-ui-scope .flex-none{flex:none}.embarkai-ui-scope .flex-shrink-0,.embarkai-ui-scope .shrink-0{flex-shrink:0}.embarkai-ui-scope .-translate-x-1\\/2{--tw-translate-x:-50%}.embarkai-ui-scope .-translate-x-1\\/2,.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-x-\\[var\\(--ui-kit-gap\\)\\]{--tw-translate-x:calc(var(--ui-kit-gap)*-1)}.embarkai-ui-scope .-translate-y-1\\/2{--tw-translate-y:-50%}.embarkai-ui-scope .-translate-y-1\\/2,.embarkai-ui-scope .-translate-y-1\\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .-translate-y-1\\/3{--tw-translate-y:-33.333333%}.embarkai-ui-scope .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes glow-warning{0%,to{transform:scale(1);box-shadow:0 0 16px var(--ui-kit-bg-warning)}50%{transform:scale(.97);box-shadow:0 0 4px var(--ui-kit-bg-warning)}}.embarkai-ui-scope .animate-glow-warning{animation:glow-warning 2s ease infinite}@keyframes pulse{50%{opacity:.5}}.embarkai-ui-scope .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.embarkai-ui-scope .animate-spin{animation:spin 1s linear infinite}.embarkai-ui-scope .cursor-default{cursor:default}.embarkai-ui-scope .cursor-help{cursor:help}.embarkai-ui-scope .cursor-pointer{cursor:pointer}.embarkai-ui-scope .cursor-text{cursor:text}.embarkai-ui-scope .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.embarkai-ui-scope .select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.embarkai-ui-scope .resize{resize:both}.embarkai-ui-scope .scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.embarkai-ui-scope .list-inside{list-style-position:inside}.embarkai-ui-scope .list-disc{list-style-type:disc}.embarkai-ui-scope .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-11{grid-template-columns:repeat(11,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.embarkai-ui-scope .grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.embarkai-ui-scope .flex-col{flex-direction:column}.embarkai-ui-scope .flex-col-reverse{flex-direction:column-reverse}.embarkai-ui-scope .flex-wrap{flex-wrap:wrap}.embarkai-ui-scope .place-content-center{place-content:center}.embarkai-ui-scope .items-start{align-items:flex-start}.embarkai-ui-scope .items-end{align-items:flex-end}.embarkai-ui-scope .items-center{align-items:center}.embarkai-ui-scope .justify-start{justify-content:flex-start}.embarkai-ui-scope .justify-end{justify-content:flex-end}.embarkai-ui-scope .justify-center{justify-content:center}.embarkai-ui-scope .justify-between{justify-content:space-between}.embarkai-ui-scope .gap-0{gap:0}.embarkai-ui-scope .gap-1{gap:.25rem}.embarkai-ui-scope .gap-2{gap:.5rem}.embarkai-ui-scope .gap-3{gap:.75rem}.embarkai-ui-scope .gap-4{gap:1rem}.embarkai-ui-scope .gap-\\[10px\\]{gap:10px}.embarkai-ui-scope .gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope :is(.space-x-1>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope :is(.space-y-0\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-1\\.5>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.embarkai-ui-scope :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.embarkai-ui-scope .overflow-hidden{overflow:hidden}.embarkai-ui-scope .overflow-y-auto{overflow-y:auto}.embarkai-ui-scope .overflow-x-hidden{overflow-x:hidden}.embarkai-ui-scope .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.embarkai-ui-scope .text-ellipsis{text-overflow:ellipsis}.embarkai-ui-scope .whitespace-nowrap{white-space:nowrap}.embarkai-ui-scope .whitespace-pre-line{white-space:pre-line}.embarkai-ui-scope .whitespace-pre-wrap{white-space:pre-wrap}.embarkai-ui-scope .break-normal{overflow-wrap:normal;word-break:normal}.embarkai-ui-scope .break-words{overflow-wrap:break-word}.embarkai-ui-scope .break-all{word-break:break-all}.embarkai-ui-scope .rounded{border-radius:.25rem}.embarkai-ui-scope .rounded-\\[10px\\]{border-radius:10px}.embarkai-ui-scope .rounded-\\[8px\\]{border-radius:8px}.embarkai-ui-scope .rounded-\\[calc\\(var\\(--ui-kit-el-bdrs\\)_\\/_2\\)\\]{border-radius:calc(var(--ui-kit-el-bdrs)/2)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-bdrs\\)\\]{border-radius:var(--ui-kit-bdrs)}.embarkai-ui-scope .rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .rounded-full{border-radius:9999px}.embarkai-ui-scope .rounded-lg{border-radius:.5rem}.embarkai-ui-scope .rounded-md{border-radius:.375rem}.embarkai-ui-scope .rounded-xl{border-radius:.75rem}.embarkai-ui-scope .border{border-width:1px}.embarkai-ui-scope .border-0{border-width:0}.embarkai-ui-scope .border-2{border-width:2px}.embarkai-ui-scope .border-b{border-bottom-width:1px}.embarkai-ui-scope .border-t{border-top-width:1px}.embarkai-ui-scope .border-dashed{border-style:dashed}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bd\\)\\]{border-color:var(--ui-kit-bd)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-error\\)\\]{border-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-success\\)\\]{border-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-bg-warning\\)\\]{border-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-error\\)\\]{border-color:var(--ui-kit-error)}.embarkai-ui-scope .border-\\[var\\(--ui-kit-secondary\\)\\]{border-color:var(--ui-kit-secondary)}.embarkai-ui-scope .border-current{border-color:currentColor}.embarkai-ui-scope .border-transparent{border-color:transparent}.embarkai-ui-scope .border-t-transparent{border-top-color:transparent}.embarkai-ui-scope .bg-\\[\\#002c15\\]{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#081f2c\\]{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f0f6f8\\]{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[\\#f3ba2f\\]{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg\\)\\]{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-error\\)\\]{background-color:var(--ui-kit-bg-error)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-info\\)\\]{background-color:var(--ui-kit-bg-info)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-secondary\\)\\]{background-color:var(--ui-kit-bg-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-success\\)\\]{background-color:var(--ui-kit-bg-success)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-bg-warning\\)\\]{background-color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-fg\\)\\]{background-color:var(--ui-kit-fg)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-overlay\\)\\]{background-color:var(--ui-kit-overlay)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-primary\\)\\]{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary\\)\\]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .bg-\\[var\\(--ui-kit-secondary-h\\)\\]{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.embarkai-ui-scope .bg-transparent{background-color:transparent}.embarkai-ui-scope .fill-\\[var\\(--ui-kit-bg-warning\\)\\]{fill:var(--ui-kit-bg-warning)}.embarkai-ui-scope .object-contain{-o-object-fit:contain;object-fit:contain}.embarkai-ui-scope .object-cover{-o-object-fit:cover;object-fit:cover}.embarkai-ui-scope .p-0{padding:0}.embarkai-ui-scope .p-1{padding:.25rem}.embarkai-ui-scope .p-2{padding:.5rem}.embarkai-ui-scope .p-3{padding:.75rem}.embarkai-ui-scope .p-4{padding:1rem}.embarkai-ui-scope .p-5{padding:1.25rem}.embarkai-ui-scope .p-6{padding:1.5rem}.embarkai-ui-scope .p-8{padding:2rem}.embarkai-ui-scope .p-\\[2px\\]{padding:2px}.embarkai-ui-scope .p-\\[var\\(--ui-kit-gap\\)\\]{padding:var(--ui-kit-gap)}.embarkai-ui-scope .p-\\[var\\(--ui-kit-pd\\)\\]{padding:var(--ui-kit-pd)}.embarkai-ui-scope .px-0{padding-left:0;padding-right:0}.embarkai-ui-scope .px-1{padding-left:.25rem;padding-right:.25rem}.embarkai-ui-scope .px-2{padding-left:.5rem;padding-right:.5rem}.embarkai-ui-scope .px-3{padding-left:.75rem;padding-right:.75rem}.embarkai-ui-scope .px-4{padding-left:1rem;padding-right:1rem}.embarkai-ui-scope .px-5{padding-left:1.25rem;padding-right:1.25rem}.embarkai-ui-scope .px-8{padding-left:2rem;padding-right:2rem}.embarkai-ui-scope .px-\\[var\\(--ui-kit-gap\\)\\]{padding-left:var(--ui-kit-gap);padding-right:var(--ui-kit-gap)}.embarkai-ui-scope .px-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .py-0{padding-top:0;padding-bottom:0}.embarkai-ui-scope .py-1{padding-top:.25rem;padding-bottom:.25rem}.embarkai-ui-scope .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.embarkai-ui-scope .py-2{padding-top:.5rem;padding-bottom:.5rem}.embarkai-ui-scope .py-3{padding-top:.75rem;padding-bottom:.75rem}.embarkai-ui-scope .py-4{padding-top:1rem;padding-bottom:1rem}.embarkai-ui-scope .py-8{padding-top:2rem;padding-bottom:2rem}.embarkai-ui-scope .py-\\[10px\\]{padding-top:10px;padding-bottom:10px}.embarkai-ui-scope .py-\\[var\\(--ui-kit-gap\\)\\]{padding-top:var(--ui-kit-gap);padding-bottom:var(--ui-kit-gap)}.embarkai-ui-scope .py-\\[var\\(--ui-kit-pd\\)\\]{padding-top:var(--ui-kit-pd);padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pb-2{padding-bottom:.5rem}.embarkai-ui-scope .pb-5{padding-bottom:1.25rem}.embarkai-ui-scope .pb-6{padding-bottom:1.5rem}.embarkai-ui-scope .pb-\\[var\\(--ui-kit-pd\\)\\]{padding-bottom:var(--ui-kit-pd)}.embarkai-ui-scope .pl-\\[var\\(--ui-kit-pd\\)\\]{padding-left:var(--ui-kit-pd)}.embarkai-ui-scope .pr-8{padding-right:2rem}.embarkai-ui-scope .pt-3{padding-top:.75rem}.embarkai-ui-scope .pt-4{padding-top:1rem}.embarkai-ui-scope .pt-5{padding-top:1.25rem}.embarkai-ui-scope .text-left{text-align:left}.embarkai-ui-scope .text-center{text-align:center}.embarkai-ui-scope .text-right{text-align:right}.embarkai-ui-scope .font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.embarkai-ui-scope .font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.embarkai-ui-scope .text-2xl{font-size:1.5rem;line-height:2rem}.embarkai-ui-scope .text-\\[10px\\]{font-size:10px}.embarkai-ui-scope .text-\\[14px\\]{font-size:14px}.embarkai-ui-scope .text-\\[16px\\]{font-size:16px}.embarkai-ui-scope .text-\\[8px\\]{font-size:8px}.embarkai-ui-scope .text-lg{font-size:1.125rem;line-height:1.75rem}.embarkai-ui-scope .text-sm{font-size:.875rem;line-height:1.25rem}.embarkai-ui-scope .text-xl{font-size:1.25rem;line-height:1.75rem}.embarkai-ui-scope .text-xs{font-size:.75rem;line-height:1rem}.embarkai-ui-scope .font-bold{font-weight:700}.embarkai-ui-scope .font-medium{font-weight:500}.embarkai-ui-scope .font-normal{font-weight:400}.embarkai-ui-scope .font-semibold{font-weight:600}.embarkai-ui-scope .uppercase{text-transform:uppercase}.embarkai-ui-scope .lowercase{text-transform:lowercase}.embarkai-ui-scope .leading-3{line-height:.75rem}.embarkai-ui-scope .leading-4{line-height:1rem}.embarkai-ui-scope .leading-5{line-height:1.25rem}.embarkai-ui-scope .leading-6{line-height:1.5rem}.embarkai-ui-scope .leading-7{line-height:1.75rem}.embarkai-ui-scope .leading-8{line-height:2rem}.embarkai-ui-scope .leading-\\[8px\\]{line-height:8px}.embarkai-ui-scope .leading-none{line-height:1}.embarkai-ui-scope .leading-tight{line-height:1.25}.embarkai-ui-scope .tracking-\\[0\\.3em\\]{letter-spacing:.3em}.embarkai-ui-scope .tracking-tight{letter-spacing:-.025em}.embarkai-ui-scope .text-\\[\\#c3f53c\\]{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-error\\)\\]{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-success\\)\\]{color:var(--ui-kit-bg-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-bg-warning\\)\\]{color:var(--ui-kit-bg-warning)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-error\\)\\]{color:var(--ui-kit-error)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg\\)\\]{color:var(--ui-kit-fg)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-inverted\\)\\]{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-fg-muted\\)\\]{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-info\\)\\]{color:var(--ui-kit-info)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-primary\\)\\]{color:var(--ui-kit-primary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-success\\)\\]{color:var(--ui-kit-success)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-text-secondary\\)\\]{color:var(--ui-kit-text-secondary)}.embarkai-ui-scope .text-\\[var\\(--ui-kit-warning\\)\\]{color:var(--ui-kit-warning)}.embarkai-ui-scope .text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.embarkai-ui-scope .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.embarkai-ui-scope .underline{text-decoration-line:underline}.embarkai-ui-scope .underline-offset-2{text-underline-offset:2px}.embarkai-ui-scope .underline-offset-4{text-underline-offset:4px}.embarkai-ui-scope .antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope .opacity-0{opacity:0}.embarkai-ui-scope .opacity-100{opacity:1}.embarkai-ui-scope .opacity-50{opacity:.5}.embarkai-ui-scope .opacity-60{opacity:.6}.embarkai-ui-scope .shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.embarkai-ui-scope .shadow,.embarkai-ui-scope .shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.embarkai-ui-scope .shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.embarkai-ui-scope .outline-none{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .outline{outline-style:solid}.embarkai-ui-scope .blur{--tw-blur:blur(8px)}.embarkai-ui-scope .blur,.embarkai-ui-scope .grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .grayscale{--tw-grayscale:grayscale(100%)}.embarkai-ui-scope .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-\\[color\\2c box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .transition-none{transition-property:none}.embarkai-ui-scope .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.embarkai-ui-scope .duration-200{transition-duration:.2s}.embarkai-ui-scope .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.embarkai-ui-scope{--ui-kit-ff:var(--embark-ui-ff,-apple-system,BlinkMacSystemFont,"Inter",system-ui,sans-serif);--ui-kit-maw:var(--embark-ui-maw,384px);--ui-kit-pd:var(--embark-ui-pd,12px);--ui-kit-gap:var(--embark-ui-gap,10px);--ui-kit-bdrs:var(--embark-ui-bdrs,20px);--ui-kit-el-bdrs:var(--embark-ui-element-bdrs,10px);--ui-kit-backdrop-blur:var(--embark-ui-backdrop-blur,10px)}.embarkai-ui-scope[data-current-theme-mode=light]{--ui-kit-overlay:var(--embark-ui-overlay,hsla(0,0%,100%,.8));--ui-kit-bg:var(--embark-ui-bg,#fff);--ui-kit-fg:var(--embark-ui-fg,#000);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#fff);--ui-kit-fg-muted:var(--embark-ui-fg-muted,rgba(0,0,0,.6));--ui-kit-primary:var(--embark-ui-primary,#000);--ui-kit-primary-h:var(--embark-ui-primary-h,rgba(0,0,0,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,rgba(0,0,0,.6));--ui-kit-secondary:var(--embark-ui-secondary,#e4e4e4);--ui-kit-secondary-h:var(--embark-ui-secondary-h,hsla(0,0%,89%,.8));--ui-kit-secondary-a:var(--embark-ui-secondary-a,hsla(0,0%,89%,.6));--ui-kit-bd:var(--embark-ui-bd,#ebebeb);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#a9a9a9);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope[data-current-theme-mode=dark]{--ui-kit-overlay:var(--embark-ui-overlay,rgba(0,0,0,.8));--ui-kit-bg:var(--embark-ui-bg,#1a1a1a);--ui-kit-fg:var(--embark-ui-fg,#fff);--ui-kit-fg-inverted:var(--embark-ui-fg-inverted,#000);--ui-kit-fg-muted:var(--embark-ui-fg-muted,hsla(0,0%,100%,.6));--ui-kit-primary:var(--embark-ui-primary,#fff);--ui-kit-primary-h:var(--embark-ui-primary-h,hsla(0,0%,100%,.8));--ui-kit-primary-a:var(--embark-ui-primary-a,hsla(0,0%,100%,.6));--ui-kit-secondary:var(--embark-ui-secondary,#2a2a2a);--ui-kit-secondary-h:var(--embark-ui-secondary-h,rgba(42,42,42,.6));--ui-kit-secondary-a:var(--embark-ui-secondary-a,rgba(42,42,42,.4));--ui-kit-bd:var(--embark-ui-bd,#3a3a3a);--ui-kit-bd-intense:var(--embark-ui-bd-intense,#4a4a4a);--ui-kit-shadow:var(--embark-ui-shadow,0 0 0 0 transparent);--ui-kit-shadow-c:var(--embark-ui-shadow-c,rgba(0,0,0,.1));--ui-kit-info:var(--embark-ui-info,var(--ui-kit-fg));--ui-kit-bg-info:var(--embark-ui-bg-info,var(--ui-kit-secondary));--ui-kit-success:var(--embark-ui-success,#000);--ui-kit-bg-success:var(--embark-ui-bg-success,#21ff51);--ui-kit-warning:var(--embark-ui-warning,#000);--ui-kit-bg-warning:var(--embark-ui-bg-warning,#e9fa00);--ui-kit-error:var(--embark-ui-error,#fff);--ui-kit-bg-error:var(--embark-ui-bg-error,#d6204e)}.embarkai-ui-scope,.embarkai-ui-scope *{margin:0;box-sizing:border-box;font-family:var(--ui-kit-ff);font-optical-sizing:auto;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent;-ms-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.embarkai-ui-scope button,.embarkai-ui-scope h1,.embarkai-ui-scope h2,.embarkai-ui-scope h3,.embarkai-ui-scope h4,.embarkai-ui-scope h5,.embarkai-ui-scope h6,.embarkai-ui-scope input,.embarkai-ui-scope p,.embarkai-ui-scope select,.embarkai-ui-scope textarea{font-family:var(--ui-kit-ff)!important;margin:0}.embarkai-ui-scope button,.embarkai-ui-scope input,.embarkai-ui-scope select,.embarkai-ui-scope textarea{border-style:solid;outline:none!important;appearance:none!important;-webkit-appearance:none;-moz-appearance:none}.embarkai-ui-scope input,.embarkai-ui-scope textarea{font-size:16px!important}.embarkai-ui-scope .account-connect-button{box-shadow:0 4px 20px var(--ui-kit-shadow-c),inset 0 0 0 1px var(--ui-kit-bd);transition:transform .25s ease}.embarkai-ui-scope .account-connect-button:hover{transform:scale(1.02)}.embarkai-ui-scope .account-connect-button:active{transform:scale(1)}@keyframes lumia-mobile-dialog-fade-in{0%{opacity:0;transform:translateY(64px)}to{opacity:1;transform:translateY(0)}}@keyframes lumia-mobile-dialog-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(64px)}}.embarkai-ui-scope .animate-mobile-dialog-in{animation:lumia-mobile-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-mobile-dialog-out{animation:lumia-mobile-dialog-fade-out 375ms ease}@keyframes lumia-dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lumia-dialog-fade-out{0%{opacity:1}to{opacity:0}}.embarkai-ui-scope .animate-dialog-in{animation:lumia-dialog-fade-in 375ms ease}.embarkai-ui-scope .animate-dialog-out{animation:lumia-dialog-fade-out 375ms ease}.embarkai-ui-scope .list-scrollbar-y{width:100%;padding-right:var(--ui-kit-list-scrollbar-pd-r,0);overflow-y:auto;overflow-x:hidden;max-height:var(--ui-kit-scrollbar-mah,300px)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar{width:4px;height:4px}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-thumb{cursor:pointer;width:4px;border-radius:2px;background-color:var(--ui-kit-bd)}.embarkai-ui-scope .list-scrollbar-y::-webkit-scrollbar-track{margin-top:10px;margin-bottom:10px;background-color:transparent}.embarkai-ui-scope .noScrollbars::-webkit-scrollbar{display:none}.embarkai-ui-scope div[data-radix-popper-content-wrapper]{z-index:10000!important}@keyframes rotateShine{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.embarkai-ui-scope .button-shine-outline{position:absolute;top:0;left:0;width:100%;height:100%;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0) border-box;-webkit-mask-composite:xor;mask-composite:exclude}.embarkai-ui-scope .button-shine-outline-shiner{pointer-events:none;position:absolute;top:50%;left:50%;width:500px;height:500px;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0,var(--ui-kit-fg) 8%,transparent 24%);animation:rotateShine 3s linear infinite}.embarkai-ui-scope .file\\:mr-\\[var\\(--ui-kit-gap\\)\\]::file-selector-button{margin-right:var(--ui-kit-gap)}.embarkai-ui-scope .file\\:h-12::file-selector-button{height:3rem}.embarkai-ui-scope .file\\:cursor-pointer::file-selector-button{cursor:pointer}.embarkai-ui-scope .file\\:rounded-\\[var\\(--ui-kit-el-bdrs\\)\\]::file-selector-button{border-radius:var(--ui-kit-el-bdrs)}.embarkai-ui-scope .file\\:border-0::file-selector-button{border-width:0}.embarkai-ui-scope .file\\:bg-\\[var\\(--ui-kit-primary\\)\\]::file-selector-button{background-color:var(--ui-kit-primary)}.embarkai-ui-scope .file\\:bg-transparent::file-selector-button{background-color:transparent}.embarkai-ui-scope .file\\:px-\\[var\\(--ui-kit-pd\\)\\]::file-selector-button{padding-left:var(--ui-kit-pd);padding-right:var(--ui-kit-pd)}.embarkai-ui-scope .file\\:text-\\[16px\\]::file-selector-button{font-size:16px}.embarkai-ui-scope .file\\:text-base::file-selector-button{font-size:1rem;line-height:1.5rem}.embarkai-ui-scope .file\\:font-medium::file-selector-button{font-weight:500}.embarkai-ui-scope .file\\:text-\\[var\\(--ui-kit-fg-inverted\\)\\]::file-selector-button{color:var(--ui-kit-fg-inverted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::-moz-placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .placeholder\\:text-\\[var\\(--ui-kit-fg-muted\\)\\]::placeholder{color:var(--ui-kit-fg-muted)}.embarkai-ui-scope .focus-within\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus-within{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus-within\\:outline-none:focus-within{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .hover\\:bg-\\[\\#002c15\\]:hover{--tw-bg-opacity:1;background-color:rgb(0 44 21/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#081f2c\\]:hover{--tw-bg-opacity:1;background-color:rgb(8 31 44/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f0f6f8\\]:hover{--tw-bg-opacity:1;background-color:rgb(240 246 248/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[\\#f3ba2f\\]:hover{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .hover\\:bg-\\[var\\(--ui-kit-secondary-h\\)\\]:hover{background-color:var(--ui-kit-secondary-h)}.embarkai-ui-scope .hover\\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[\\#c3f53c\\]:hover{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-\\[var\\(--ui-kit-fg\\)\\]:hover{color:var(--ui-kit-fg)}.embarkai-ui-scope .hover\\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.embarkai-ui-scope .hover\\:underline:hover{text-decoration-line:underline}.embarkai-ui-scope .hover\\:opacity-80:hover{opacity:.8}.embarkai-ui-scope .hover\\:brightness-110:hover{--tw-brightness:brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.embarkai-ui-scope .file\\:hover\\:opacity-90:hover::file-selector-button{opacity:.9}.embarkai-ui-scope .focus\\:border-\\[var\\(--ui-kit-primary\\)\\]:focus{border-color:var(--ui-kit-primary)}.embarkai-ui-scope .focus\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:focus{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .focus\\:bg-transparent:focus{background-color:transparent}.embarkai-ui-scope .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.embarkai-ui-scope .focus-visible\\:ring-0:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-\\[2px\\]:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.embarkai-ui-scope .focus-visible\\:ring-transparent:focus-visible{--tw-ring-color:transparent}.embarkai-ui-scope .focus-visible\\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px}.embarkai-ui-scope .active\\:bg-\\[\\#f3ba2f\\]:active{--tw-bg-opacity:1;background-color:rgb(243 186 47/var(--tw-bg-opacity,1))}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .active\\:bg-\\[var\\(--ui-kit-secondary-a\\)\\]:active{background-color:var(--ui-kit-secondary-a)}.embarkai-ui-scope .active\\:text-\\[\\#c3f53c\\]:active{--tw-text-opacity:1;color:rgb(195 245 60/var(--tw-text-opacity,1))}.embarkai-ui-scope .active\\:opacity-60:active{opacity:.6}.embarkai-ui-scope .file\\:active\\:opacity-80:active::file-selector-button{opacity:.8}.embarkai-ui-scope .disabled\\:cursor-default:disabled{cursor:default}.embarkai-ui-scope .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.embarkai-ui-scope .disabled\\:opacity-50:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-bg\\)\\]:hover:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:hover\\:bg-\\[var\\(--ui-kit-secondary\\)\\]:hover:disabled{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .disabled\\:hover\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:hover:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:hover\\:opacity-50:hover:disabled{opacity:.5}.embarkai-ui-scope .disabled\\:active\\:bg-\\[var\\(--ui-kit-bg\\)\\]:active:disabled{background-color:var(--ui-kit-bg)}.embarkai-ui-scope .disabled\\:active\\:text-\\[var\\(--ui-kit-bg-error\\)\\]:active:disabled{color:var(--ui-kit-bg-error)}.embarkai-ui-scope .disabled\\:active\\:opacity-50:active:disabled{opacity:.5}.embarkai-ui-scope :is(.group:hover .group-hover\\:opacity-100){opacity:1}.embarkai-ui-scope .data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.embarkai-ui-scope .data-\\[size\\=default\\]\\:h-12[data-size=default]{height:3rem}.embarkai-ui-scope .data-\\[size\\=sm\\]\\:h-10[data-size=sm]{height:2.5rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.embarkai-ui-scope .data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom],.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.embarkai-ui-scope .data-\\[side\\=right\\]\\:translate-x-1[data-side=right],.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.embarkai-ui-scope .data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:border-\\[var\\(--ui-kit-bd-intense\\)\\][data-state=checked]{border-color:var(--ui-kit-bd-intense)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:bg-\\[var\\(--ui-kit-secondary\\)\\][data-state=checked]{background-color:var(--ui-kit-secondary)}.embarkai-ui-scope .data-\\[state\\=checked\\]\\:text-\\[var\\(--ui-kit-fg\\)\\][data-state=checked]{color:var(--ui-kit-fg)}.embarkai-ui-scope .data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1[data-slot=select-value]>*){overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*){display:flex}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*){align-items:center}.embarkai-ui-scope :is(.\\*\\:data-\\[slot\\=select-value\\]\\:gap-\\[var\\(--ui-kit-gap\\)\\][data-slot=select-value]>*){gap:var(--ui-kit-gap)}@media (min-width:640px){.embarkai-ui-scope .sm\\:flex-row{flex-direction:row}.embarkai-ui-scope .sm\\:justify-end{justify-content:flex-end}.embarkai-ui-scope :is(.sm\\:space-x-2>:not([hidden])~:not([hidden])){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.embarkai-ui-scope .sm\\:text-left{text-align:left}}@media (min-width:768px){.embarkai-ui-scope .md\\:h-8{height:2rem}.embarkai-ui-scope .md\\:w-8{width:2rem}.embarkai-ui-scope .md\\:gap-\\[var\\(--ui-kit-gap\\)\\]{gap:var(--ui-kit-gap)}.embarkai-ui-scope .md\\:py-1{padding-top:.25rem;padding-bottom:.25rem}}.embarkai-ui-scope :is(.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-])){width:1rem;height:1rem}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:pointer-events-none svg){pointer-events:none}.embarkai-ui-scope :is(.\\[\\&_svg\\]\\:shrink-0 svg){flex-shrink:0}`;
|
|
29077
29641
|
|
|
29078
29642
|
// src/index.ts
|
|
29079
29643
|
var import_core10 = require("@embarkai/core");
|
|
@@ -29083,7 +29647,7 @@ init_ProviderContext();
|
|
|
29083
29647
|
init_lumia2();
|
|
29084
29648
|
init_embarkAI2();
|
|
29085
29649
|
var import_lucide_react79 = require("lucide-react");
|
|
29086
|
-
var
|
|
29650
|
+
var import_react97 = require("react");
|
|
29087
29651
|
init_SessionContext();
|
|
29088
29652
|
init_auth();
|
|
29089
29653
|
init_BalanceView2();
|
|
@@ -29116,10 +29680,10 @@ function ConnectWalletButton(props) {
|
|
|
29116
29680
|
const colorMode = useLayoutStore((st) => st.colorMode);
|
|
29117
29681
|
const { session, address, hasServerVault, isLoading, isIframeReady, status, setUsePaymaster } = useSession();
|
|
29118
29682
|
const connectButtonLabel = getFormattedStatus(label || "Connect", status, isIframeReady);
|
|
29119
|
-
(0,
|
|
29683
|
+
(0, import_react97.useEffect)(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
|
|
29120
29684
|
const { data: profile, isLoading: isProfileLoading } = useUserProfile();
|
|
29121
29685
|
const displayName = profile?.nicknameDisplay || profile?.displayName || import_auth23.jwtTokenManager.getDisplayName();
|
|
29122
|
-
const indicators = (0,
|
|
29686
|
+
const indicators = (0, import_react97.useMemo)(() => {
|
|
29123
29687
|
const userId = session?.mpcUserId;
|
|
29124
29688
|
if (!userId) return { server: false, local: false, backup: false };
|
|
29125
29689
|
const server = import_auth23.jwtTokenManager.getHasKeyshare() ?? false;
|
|
@@ -29758,14 +30322,14 @@ var Hash = ({
|
|
|
29758
30322
|
};
|
|
29759
30323
|
|
|
29760
30324
|
// src/internal/components/TransactionsMenu/TransactionsList.tsx
|
|
29761
|
-
var
|
|
30325
|
+
var import_react98 = require("react");
|
|
29762
30326
|
init_base2();
|
|
29763
30327
|
var import_jsx_runtime133 = require("react/jsx-runtime");
|
|
29764
30328
|
var TransactionsList = ({ address, itemsCount = 10 }) => {
|
|
29765
|
-
const [transactions, setTransactions] = (0,
|
|
29766
|
-
const [loading, setLoading] = (0,
|
|
29767
|
-
const [error, setError] = (0,
|
|
29768
|
-
(0,
|
|
30329
|
+
const [transactions, setTransactions] = (0, import_react98.useState)([]);
|
|
30330
|
+
const [loading, setLoading] = (0, import_react98.useState)(true);
|
|
30331
|
+
const [error, setError] = (0, import_react98.useState)(null);
|
|
30332
|
+
(0, import_react98.useEffect)(() => {
|
|
29769
30333
|
const fetchTransactions2 = async () => {
|
|
29770
30334
|
try {
|
|
29771
30335
|
setLoading(true);
|
|
@@ -30056,13 +30620,13 @@ function useUserOpStatus(options = {}) {
|
|
|
30056
30620
|
init_useErc3643Compliance();
|
|
30057
30621
|
|
|
30058
30622
|
// src/hooks/useWalletMode.ts
|
|
30059
|
-
var
|
|
30623
|
+
var import_react99 = require("react");
|
|
30060
30624
|
init_useExternalWalletStore();
|
|
30061
30625
|
function useWalletMode() {
|
|
30062
30626
|
const configMode = useExternalWalletStore((st) => st.configMode);
|
|
30063
30627
|
const activeMode = useExternalWalletStore((st) => st.activeMode);
|
|
30064
30628
|
const setActiveMode = useExternalWalletStore((st) => st.setActiveMode);
|
|
30065
|
-
const switchMode = (0,
|
|
30629
|
+
const switchMode = (0, import_react99.useCallback)(
|
|
30066
30630
|
(mode) => {
|
|
30067
30631
|
if (configMode !== "both") return;
|
|
30068
30632
|
setActiveMode(mode);
|
|
@@ -30078,7 +30642,7 @@ function useWalletMode() {
|
|
|
30078
30642
|
}
|
|
30079
30643
|
|
|
30080
30644
|
// src/hooks/useDirectWallet.ts
|
|
30081
|
-
var
|
|
30645
|
+
var import_react100 = require("react");
|
|
30082
30646
|
var import_rainbowkit6 = require("@rainbow-me/rainbowkit");
|
|
30083
30647
|
var import_wagmi13 = require("wagmi");
|
|
30084
30648
|
init_useExternalWalletStore();
|
|
@@ -30092,13 +30656,13 @@ function useDirectWallet() {
|
|
|
30092
30656
|
const { disconnect: wagmiDisconnect } = (0, import_wagmi13.useDisconnect)();
|
|
30093
30657
|
const { openConnectModal } = (0, import_rainbowkit6.useConnectModal)();
|
|
30094
30658
|
const setIsWalletLinking = useLayoutDataStore((st) => st.setIsWalletLinking);
|
|
30095
|
-
const connect = (0,
|
|
30659
|
+
const connect = (0, import_react100.useCallback)(() => {
|
|
30096
30660
|
setIsWalletLinking(true);
|
|
30097
30661
|
}, [setIsWalletLinking]);
|
|
30098
|
-
const reconnect = (0,
|
|
30662
|
+
const reconnect = (0, import_react100.useCallback)(() => {
|
|
30099
30663
|
if (openConnectModal) openConnectModal();
|
|
30100
30664
|
}, [openConnectModal]);
|
|
30101
|
-
const disconnect = (0,
|
|
30665
|
+
const disconnect = (0, import_react100.useCallback)(() => {
|
|
30102
30666
|
wagmiDisconnect();
|
|
30103
30667
|
clearExternalWallet();
|
|
30104
30668
|
}, [wagmiDisconnect, clearExternalWallet]);
|
|
@@ -30114,7 +30678,7 @@ function useDirectWallet() {
|
|
|
30114
30678
|
}
|
|
30115
30679
|
|
|
30116
30680
|
// src/hooks/useSendDirectTransaction.ts
|
|
30117
|
-
var
|
|
30681
|
+
var import_react101 = require("react");
|
|
30118
30682
|
var import_viem22 = require("viem");
|
|
30119
30683
|
var import_wagmi14 = require("wagmi");
|
|
30120
30684
|
init_useExternalWalletStore();
|
|
@@ -30123,10 +30687,10 @@ function useSendDirectTransaction() {
|
|
|
30123
30687
|
const externalChainId = useExternalWalletStore((st) => st.externalChainId);
|
|
30124
30688
|
const { sendTransactionAsync } = (0, import_wagmi14.useSendTransaction)();
|
|
30125
30689
|
const { switchChainAsync } = (0, import_wagmi14.useSwitchChain)();
|
|
30126
|
-
const [isPending, setIsPending] = (0,
|
|
30127
|
-
const [error, setError] = (0,
|
|
30128
|
-
const [txHash, setTxHash] = (0,
|
|
30129
|
-
const sendTransaction = (0,
|
|
30690
|
+
const [isPending, setIsPending] = (0, import_react101.useState)(false);
|
|
30691
|
+
const [error, setError] = (0, import_react101.useState)(null);
|
|
30692
|
+
const [txHash, setTxHash] = (0, import_react101.useState)(null);
|
|
30693
|
+
const sendTransaction = (0, import_react101.useCallback)(
|
|
30130
30694
|
async (params) => {
|
|
30131
30695
|
if (!isConnected) {
|
|
30132
30696
|
setError("No external wallet connected");
|
|
@@ -30160,7 +30724,7 @@ function useSendDirectTransaction() {
|
|
|
30160
30724
|
},
|
|
30161
30725
|
[isConnected, externalChainId, sendTransactionAsync, switchChainAsync]
|
|
30162
30726
|
);
|
|
30163
|
-
const reset = (0,
|
|
30727
|
+
const reset = (0, import_react101.useCallback)(() => {
|
|
30164
30728
|
setError(null);
|
|
30165
30729
|
setTxHash(null);
|
|
30166
30730
|
setIsPending(false);
|
|
@@ -30169,7 +30733,7 @@ function useSendDirectTransaction() {
|
|
|
30169
30733
|
}
|
|
30170
30734
|
|
|
30171
30735
|
// src/hooks/useTransferToLinkedWallet.ts
|
|
30172
|
-
var
|
|
30736
|
+
var import_react102 = require("react");
|
|
30173
30737
|
var import_viem23 = require("viem");
|
|
30174
30738
|
init_SessionContext();
|
|
30175
30739
|
init_account2();
|
|
@@ -30188,14 +30752,14 @@ var ERC20_TRANSFER_ABI2 = [
|
|
|
30188
30752
|
function useTransferToLinkedWallet() {
|
|
30189
30753
|
const session = useSession((st) => st.session);
|
|
30190
30754
|
const { profiles } = useLinkedProfiles();
|
|
30191
|
-
const [isPending, setIsPending] = (0,
|
|
30192
|
-
const [error, setError] = (0,
|
|
30193
|
-
const [userOpHash, setUserOpHash] = (0,
|
|
30194
|
-
const linkedWallets = (0,
|
|
30755
|
+
const [isPending, setIsPending] = (0, import_react102.useState)(false);
|
|
30756
|
+
const [error, setError] = (0, import_react102.useState)(null);
|
|
30757
|
+
const [userOpHash, setUserOpHash] = (0, import_react102.useState)(null);
|
|
30758
|
+
const linkedWallets = (0, import_react102.useMemo)(
|
|
30195
30759
|
() => (profiles || []).filter((p) => p.provider === "wallet" && p.externalId).map((p) => p.externalId),
|
|
30196
30760
|
[profiles]
|
|
30197
30761
|
);
|
|
30198
|
-
const transfer = (0,
|
|
30762
|
+
const transfer = (0, import_react102.useCallback)(
|
|
30199
30763
|
async (params) => {
|
|
30200
30764
|
if (!session) {
|
|
30201
30765
|
setError("No active session");
|
|
@@ -30246,7 +30810,7 @@ function useTransferToLinkedWallet() {
|
|
|
30246
30810
|
},
|
|
30247
30811
|
[session, linkedWallets]
|
|
30248
30812
|
);
|
|
30249
|
-
const reset = (0,
|
|
30813
|
+
const reset = (0, import_react102.useCallback)(() => {
|
|
30250
30814
|
setError(null);
|
|
30251
30815
|
setUserOpHash(null);
|
|
30252
30816
|
setIsPending(false);
|
|
@@ -30270,7 +30834,7 @@ function useNativeWalletSignature() {
|
|
|
30270
30834
|
|
|
30271
30835
|
// src/hooks/useLogout.ts
|
|
30272
30836
|
var import_auth25 = require("@embarkai/core/auth");
|
|
30273
|
-
var
|
|
30837
|
+
var import_react103 = require("react");
|
|
30274
30838
|
var import_wagmi16 = require("wagmi");
|
|
30275
30839
|
init_ProviderContext();
|
|
30276
30840
|
init_SessionContext();
|
|
@@ -30290,7 +30854,7 @@ function useLogout() {
|
|
|
30290
30854
|
}
|
|
30291
30855
|
}
|
|
30292
30856
|
});
|
|
30293
|
-
const logout2 = (0,
|
|
30857
|
+
const logout2 = (0, import_react103.useCallback)(async () => {
|
|
30294
30858
|
const { setSession, setIsLoading, setAddress, setStatus, setError } = useSession.getState();
|
|
30295
30859
|
const prevAddress = address;
|
|
30296
30860
|
let userId = null;
|
|
@@ -30409,7 +30973,7 @@ function useTransactions() {
|
|
|
30409
30973
|
|
|
30410
30974
|
// src/modules/assets.ts
|
|
30411
30975
|
init_SessionContext();
|
|
30412
|
-
var
|
|
30976
|
+
var import_react104 = __toESM(require("react"), 1);
|
|
30413
30977
|
var import_viem25 = require("viem");
|
|
30414
30978
|
var import_wagmi18 = require("wagmi");
|
|
30415
30979
|
var COMMON_TOKENS = [
|
|
@@ -30564,7 +31128,7 @@ function useTokenBalance2(tokenAddress, userAddress) {
|
|
|
30564
31128
|
}
|
|
30565
31129
|
});
|
|
30566
31130
|
const { tokenInfo } = useTokenInfo(tokenAddress);
|
|
30567
|
-
const formattedBalance =
|
|
31131
|
+
const formattedBalance = import_react104.default.useMemo(() => {
|
|
30568
31132
|
if (!balance || !tokenInfo) return "0";
|
|
30569
31133
|
return (0, import_viem25.formatUnits)(balance, tokenInfo.decimals);
|
|
30570
31134
|
}, [balance, tokenInfo]);
|
|
@@ -30629,6 +31193,7 @@ function useSmartAccountTransactions() {
|
|
|
30629
31193
|
init_iframe_manager();
|
|
30630
31194
|
init_Onboarding();
|
|
30631
31195
|
init_BuyMenu2();
|
|
31196
|
+
init_SendMenu2();
|
|
30632
31197
|
|
|
30633
31198
|
// src/internal/assets/index.ts
|
|
30634
31199
|
init_networks2();
|
|
@@ -30661,6 +31226,7 @@ autorun();
|
|
|
30661
31226
|
0 && (module.exports = {
|
|
30662
31227
|
AccountAbstractionError,
|
|
30663
31228
|
Address,
|
|
31229
|
+
BRIDGE_MENU_TOUR,
|
|
30664
31230
|
BUY_MENU_BINANCE_TOUR,
|
|
30665
31231
|
ConnectWalletButton,
|
|
30666
31232
|
ErrorCodes,
|
|
@@ -30672,6 +31238,7 @@ autorun();
|
|
|
30672
31238
|
PASSPORT_TRANSLATIONS,
|
|
30673
31239
|
PageKey,
|
|
30674
31240
|
Provider,
|
|
31241
|
+
SEND_MENU_TOUR,
|
|
30675
31242
|
SessionExpiredError,
|
|
30676
31243
|
TOKENS_ICONS,
|
|
30677
31244
|
ThemeToggle,
|