@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/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 Asset",
5636
+ title: "Bridge asset",
5621
5637
  labels: {
5622
- sender: "Sender",
5623
5638
  bridgeAsset: "Bridge {{asset}}",
5624
- selectTokenAndRoute: "Select Token & Route",
5625
- selectToken: "Select Asset",
5639
+ selectSender: "Select sender wallet",
5640
+ selectToken: "Select asset for bridging",
5626
5641
  estimations: "Estimations",
5627
5642
  estimatedFee: "Estimated Fee",
5628
- availableChainPairs: "Select Chain Pairs",
5629
- toChain: "To Chain",
5630
- fromChain: "From Chain",
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 Bridge",
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: "Briging from {{originChain}} not yet supported by {{sender}}. Swap network pair, or select different token route, or change sender wallet"
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
- selectTokenAndRoute: "\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0442\u043E\u043A\u0435\u043D \u0438 \u043C\u0430\u0440\u0448\u0440\u0443\u0442",
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: "\u041F\u041E\u0414\u0422\u0412\u0415\u0420\u0414\u0418\u0422\u042C \u041F\u0415\u0420\u0415\u041C\u0415\u0429\u0415\u041D\u0418\u0415"
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 \u0441\u0435\u0442\u0438 {{originChain}} \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F \u0434\u043B\u044F {{sender}}. \u041F\u043E\u043C\u0435\u043D\u044F\u0439\u0442\u0435 \u0441\u0435\u0442\u0438 \u043C\u0435\u0441\u0442\u0430\u043C\u0438, \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0440\u0443\u0433\u043E\u0439 \u043C\u0430\u0440\u0448\u0440\u0443\u0442 \u0442\u043E\u043A\u0435\u043D\u0430 \u0438\u043B\u0438 \u0441\u043C\u0435\u043D\u0438\u0442\u0435 \u043A\u043E\u0448\u0435\u043B\u0451\u043A \u043E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044F"
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\u0432\u0430\u043B\u044E\u0442\u0443",
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
- selectTokenAndRoute: "\u9009\u62E9\u4EE3\u5E01\u548C\u8DEF\u7531",
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
- setStore: (tooltipStore) => set(tooltipStore),
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
- resizeObserver = new ResizeObserver(([entry]) => {
8501
- const element = entry.target;
8502
- if (!element) {
8503
- console.warn("[ONBOARDER] No element provided to setOverlay");
8504
- return;
8505
- }
8506
- const { title, description } = this.tour[this.tourPointer];
8507
- const { x, y, width, height } = element.getBoundingClientRect();
8508
- useOnboardingStore.getState().setStore({ elRect: { x, y, width, height }, tooltip: { title, description } });
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
- this.resizeObserver.observe(startElRef);
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().setStore({
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
- useLayoutDataStore.getInitialState().setIsOnboarding(false);
8529
- useLayoutStore.getInitialState().setIsDialogForced(false);
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) this.resizeObserver.observe(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
- if (!mountIntoNode) return null;
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 - EXPAND,
8590
- y: elRect.y - EXPAND,
8591
- width: elRect.width + 2 * EXPAND,
8592
- height: elRect.height + EXPAND * (isMobileView ? 2 : 3)
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
- x: elRect.x - (isMobileView ? 0 : EXPAND),
8596
- y: isMobileView ? elRect.y - EXPAND - TOOLTIP_OFFSET : elRect.y + elRect.height + EXPAND,
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: tt.y,
8660
- left: tt.x,
8661
- borderRadius: isMobileView ? "var(--ui-kit-bdrs)" : "0 0 var(--ui-kit-bdrs) var(--ui-kit-bdrs)"
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", { className: " font-bold", children: tooltip.title }),
8665
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", { children: tooltip.description }),
8666
- /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
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, TOOLTIP_OFFSET;
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 = 24;
8703
- TOOLTIP_OFFSET = 96;
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: "Buy Menu",
9769
- description: "Here you can make crypto purchases.",
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: "Select a Provider",
9778
- description: "Cick here to choose a provider for your crypto purchase.",
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: "Set Purchase Details",
9785
- description: "Click here to set the details of your crypto purchase.",
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: "Confirm your purchase",
9802
- description: "Review the details of your purchase before confirming.",
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.InfoIcon, { className: "h-4 w-4" })
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.sender"));
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
- Button,
21644
+ "div",
21145
21645
  {
21146
- disabled: !hyperlaneWarpRoutes.length || isQuoteEstimating,
21147
- variant: "secondary",
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.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
21155
- selectedSender?.Icon && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(selectedSender.Icon, { className: "w-6 h-6" }),
21156
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { children: selectedSender?.name || "N / A" })
21157
- ] }),
21158
- selectedSender?.address && /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("span", { className: "block text-[10px] font-mono!", children: [
21159
- selectedSender.address.slice(0, 6),
21160
- "...",
21161
- selectedSender.address.slice(-4)
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
- Button,
21677
+ "div",
21184
21678
  {
21185
- disabled: !hyperlaneWarpRoutes.length || isQuoteEstimating,
21186
- variant: "secondary",
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
- selectedWarpRoute ? /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
21194
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(SelectedWarpRoteIcon, { className: "w-6 h-6" }),
21195
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { children: selectedWarpRoute.symbol })
21196
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "flex items-center gap-[var(--ui-kit-gap)]", children: [
21197
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.ArrowLeftRightIcon, { className: "w-6 h-6" }),
21198
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { children: hyperlaneWarpRoutes.length ? t("passport:bridgeMenu.labels.selectToken") : t("passport:bridgeMenu.errors.noWarpRoutes") })
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
- !!selectedWarpRoute?.chainPair && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
21201
- Badge,
21697
+ /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(
21698
+ Button,
21202
21699
  {
21203
- variant: "outline",
21204
- size: "medium",
21205
- className: "bg-[var(--ui-kit-bg)] flex items-center gap-[var(--ui-kit-gap)]",
21206
- children: selectedWarpRoute.chainPair.map((chain, chIdx) => /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(import_react71.Fragment, { children: [
21207
- chIdx > 0 && /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_lucide_react59.ArrowLeftRightIcon, { className: "w-4 h-4 " }),
21208
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(ResolveChainIcon, { chainName: chain.chainName, className: "w-4 h-4" })
21209
- ] }, `${selectedWarpRoute.id}-icon-${chain.chainID}-${chIdx}`))
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
- className: cn(
21219
- "flex items-center justify-between gap-[var(--ui-kit-gap)]",
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.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.fromChain") }),
21224
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.toChain") })
21225
- ]
21226
- }
21227
- ),
21228
- /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)("div", { className: "w-full flex items-center justify-center", children: [
21229
- /* @__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: [
21230
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(ResolveChainIcon, { chainName: originChain, className: "w-6 h-6" }),
21231
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "block max-w-[100px] truncate", children: CHAINS_UI_META[originChain]?.chainLabel })
21232
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime97.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "N/A" }) }),
21233
- /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
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
- value: amount,
21271
- element: /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(
21272
- Button,
21273
- {
21274
- size: "small",
21275
- variant: "ghost",
21276
- disabled: isBalanceInsufficient,
21277
- onClick: () => useBridgeStore.getState().setAmount(Number(routeTokenBalance || 0).toString()),
21278
- children: String(t("passport:common.max")).toUpperCase()
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
- className: cn(
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:bridgeMenu.labels.optionalRecipient") }),
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)("div", { className: "flex flex-col gap-[var(--ui-kit-gap)] w-full", children: [
21414
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Highlight, { type: "info", className: "flex flex-col gap-[var(--ui-kit-gap)] w-full", children: [
21415
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
21416
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:common.asset") }),
21417
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: selectedWarpRoute.symbol })
21418
- ] }),
21419
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
21420
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.sender") }),
21421
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: bridgeSender.name + " (" + (bridgeSender?.address || "").slice(0, 6) + "..." + (bridgeSender?.address || "").slice(-4) + ")" })
21422
- ] }),
21423
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
21424
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.labels.fromChain") }),
21425
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: CHAINS_UI_META[originChain].chainLabel })
21426
- ] }),
21427
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
21428
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.labels.toChain") }),
21429
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: CHAINS_UI_META[destinationChain].chainLabel })
21430
- ] }),
21431
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
21432
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.amount") }),
21433
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: formatPrice(Number(quote.amount)) })
21434
- ] }),
21435
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: "flex-1 flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
21436
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.igpFee") }),
21437
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("strong", { children: [
21438
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: formatPrice(Number(quote.igpFee)) }),
21439
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("span", { children: [
21440
- " ",
21441
- quote.igpSymbol
21442
- ] })
21443
- ] })
21444
- ] }),
21445
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: "flex-1 flex items-center justify-between gap-[var(--ui-kit-gap)]", children: [
21446
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.localFee") }),
21447
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("strong", { children: [
21448
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: formatPrice(Number(quote.localFee)) }),
21449
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("span", { children: [
21450
- " ",
21451
- quote.localSymbol
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
- quote.tokenFee && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("p", { className: P_CN, children: [
21456
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: t("passport:bridgeMenu.quote.tokenFee") }),
21457
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: formatPrice(Number(quote.tokenFee)) })
21458
- ] })
21459
- ] }),
21460
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Highlight, { type: "warning", className: "flex flex-col gap-[var(--ui-kit-gap)] w-full", children: [
21461
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { className: "text-xs", children: t("passport:bridgeMenu.quote.recipient") }),
21462
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
21463
- "span",
21464
- {
21465
- className: cn(
21466
- "w-full flex items-center justify-center h-8",
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
- children: (recipient || address).slice(0, 10) + "..." + (recipient || address).slice(-8)
21472
- }
21473
- ),
21474
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { className: "text-xs", children: t("passport:bridgeMenu.consent.recipient", {
21475
- address: (recipient || address).slice(0, 6) + "..." + (recipient || address).slice(-4),
21476
- destinationChain: CHAINS_UI_META[destinationChain].chainLabel,
21477
- asset: selectedWarpRoute.symbol
21478
- }) }),
21479
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { className: "text-xs text-[var(--ui-kit-bg-error)]", children: t("passport:bridgeMenu.consent.lostFunds") }),
21480
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)("label", { className: "flex items-center gap-[var(--ui-kit-gap)] text-xs cursor-pointer", children: [
21481
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Checkbox, { checked: userConsent, onCheckedChange: () => setUserConsent((prev) => !prev) }),
21482
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("strong", { children: t("passport:bridgeMenu.actions.confirmBridge", {
21483
- amount: quote.amount,
21484
- asset: selectedWarpRoute.symbol,
21485
- destinationChain: CHAINS_UI_META[destinationChain].chainLabel
21486
- }) })
21487
- ] })
21488
- ] }),
21489
- !isError && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(
21490
- Button,
21491
- {
21492
- size: "large",
21493
- variant: "default",
21494
- disabled: isConfirmationDisabled,
21495
- onClick: () => bridgeAsset(),
21496
- className: "w-full",
21497
- children: [
21498
- isAssetBridging && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_lucide_react61.LoaderIcon, { className: "h-4 w-4 animate-spin" }),
21499
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)("span", { children: (bridgeTxStatus || t("passport:common.continue")).toUpperCase() })
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.jsx)("span", { className: "block text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:bridgeMenu.labels.selectToken") }),
21919
- /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(
21920
- Button,
21921
- {
21922
- variant: "secondary",
21923
- className: "w-full",
21924
- onClick: () => {
21925
- setIsTokenSymbolSelector(true);
21926
- useFlowSelectorStore.getState().setRenderKey(`hyperlane-route-asset-selector-${Date.now()}`);
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
- children: selectedAsset ? /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(import_jsx_runtime102.Fragment, { children: [
21929
- /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(selectedAsset.Icon, { className: "w-6 h-6" }),
21930
- selectedAsset.symbol
21931
- ] }) : t("passport:bridgeMenu.actions.selectAsset")
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
- /* @__PURE__ */ (0, import_jsx_runtime102.jsx)("div", { className: "w-full flex flex-col gap-[var(--ui-kit-gap)]", children: availableChainPairs.map(([fromChain, toChain]) => /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(
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)(import_jsx_runtime103.Fragment, { children: [
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)(import_jsx_runtime109.Fragment, { children: [
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)(import_jsx_runtime110.Fragment, { children: [
23116
- isNicknameInput && isFrozen && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(Highlight, { type: "warning", className: "flex gap-[var(--ui-kit-gap)]", children: [
23117
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.AlertTriangle, { className: "h-4 w-4" }),
23118
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: "This handle is frozen. Proceed with caution." })
23119
- ] }),
23120
- isSecurity && erc3643CanTransfer && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(Highlight, { type: "success", className: "flex gap-[var(--ui-kit-gap)]", children: [
23121
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.Shield, { className: "h-4 w-4 flex-shrink-0" }),
23122
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: "Security token compliance verified" })
23123
- ] }),
23124
- !isNft && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5", children: [
23125
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: [
23126
- selectedAsset.symbol,
23127
- " Balance"
23128
- ] }),
23129
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-sm font-bold", children: [
23130
- formatPrice(balance),
23131
- " ",
23132
- selectedAsset.symbol
23133
- ] })
23134
- ] }),
23135
- /* @__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: [
23136
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex items-start gap-[var(--ui-kit-gap)]", children: [
23137
- nicknameData.avatarSvg ? /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(
23138
- "img",
23139
- {
23140
- src: nicknameData.avatarSvg,
23141
- alt: nicknameData.handle,
23142
- className: "w-12 h-12 rounded-full object-cover flex-shrink-0"
23143
- }
23144
- ) : /* @__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" }) }),
23145
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex flex-1 flex-col gap-1", children: [
23146
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-medium text-[14px] leading-4 truncate", children: nicknameData.handle }),
23147
- nicknameData.fingerprint && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(
23148
- "span",
23149
- {
23150
- className: cn(
23151
- "flex items-center gap-[var(--ui-kit-gap)] text-[10px]",
23152
- isFingerprintVerified ? "text-[var(--ui-kit-bg-success)]" : "text-[var(--ui-kit-bg-error)]"
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
- // Fungible token details
23179
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
23180
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:common.amount") }),
23181
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-sm font-bold", children: [
23182
- amount,
23183
- " ",
23184
- selectedAsset.symbol
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
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
23189
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[10px] text-[var(--ui-kit-fg-muted)]", children: t("passport:common.network") }),
23190
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-sm font-bold", children: chainConfig.name })
23191
- ] })
23192
- ] })
23193
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(import_jsx_runtime110.Fragment, { children: [
23194
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("h3", { className: "font-medium mb-3 text-[var(--ui-kit-fg)]", children: "Transaction Details" }),
23195
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "space-y-2 text-sm text-[var(--ui-kit-fg)]", children: [
23196
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "flex justify-between", children: [
23197
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "To:" }),
23198
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-mono text-xs", children: `${effectiveAddress.slice(0, 6)}...${effectiveAddress.slice(-4)}` })
23199
- ] }),
23200
- isNft ? (
23201
- // NFT details
23202
- /* @__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: [
23203
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: "NFT:" }),
23204
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("div", { className: "text-right", children: [
23205
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "font-semibold block", children: selectedAsset.nftMetadata?.name || selectedAsset.name }),
23206
- selectedAsset.tokenId && /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)("span", { className: "text-xs text-[var(--ui-kit-fg-muted)]", children: [
23207
- "#",
23208
- selectedAsset.tokenId.length > 10 ? `${selectedAsset.tokenId.slice(0, 8)}...` : selectedAsset.tokenId
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
- // Fungible token details
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)("div", { className: "flex justify-between leading-5 gap-[var(--ui-kit-gap)]", children: [
23224
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { className: "text-[var(--ui-kit-fg-muted)]", children: t("passport:common.network") }),
23225
- /* @__PURE__ */ (0, import_jsx_runtime110.jsx)("span", { children: chainConfig.name })
23226
- ] })
23227
- ] })
23228
- ] }) }),
23229
- /* @__PURE__ */ (0, import_jsx_runtime110.jsxs)(
23230
- Button,
23231
- {
23232
- onClick: () => handleConfirm(),
23233
- disabled: isTransactionPending,
23234
- className: "w-full",
23235
- size: "large",
23236
- children: [
23237
- isTransactionPending && /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_lucide_react68.Loader, { className: "h-4 w-4 animate-spin" }),
23238
- t("passport:common.confirm")
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
- (0, import_react81.useEffect)(
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 (bridgeStep) {
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.jsx)(BridgeHistorySwitch, {})
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, import_react81, import_jsx_runtime112, SELECTOR_FLOW;
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
- import_react81 = require("react");
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, import_react82.useSyncExternalStore)(subscribe, getSnapshot, getServerSnapshot);
24208
+ return (0, import_react83.useSyncExternalStore)(subscribe, getSnapshot, getServerSnapshot);
23647
24209
  }
23648
- var import_react82, STORAGE_KEY, EVENT_NAME;
24210
+ var import_react83, STORAGE_KEY, EVENT_NAME;
23649
24211
  var init_pro_mode = __esm({
23650
24212
  "src/internal/lib/pro-mode.ts"() {
23651
- import_react82 = require("react");
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, import_react83.useEffect)(() => {
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, import_react83, import_jsx_runtime113;
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
- import_react83 = require("react");
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, import_react84.useState)({});
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, import_react84.useCallback)(
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, import_react84, import_jsx_runtime116;
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
- import_react84 = require("react");
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, import_react85.useCallback)(() => {
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, import_react85.useCallback)(
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, import_react85.useEffect)(() => {
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 import_react85, import_jsx_runtime117, CLEAR_DIALOG_TIMEOUT;
25498
+ var import_react86, import_jsx_runtime117, CLEAR_DIALOG_TIMEOUT;
24937
25499
  var init_usePageMapper = __esm({
24938
25500
  "src/internal/hooks/usePageMapper.tsx"() {
24939
- import_react85 = require("react");
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, import_react86.useEffect)(() => {
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, import_react86.useEffect)(() => {
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 import_react86, EMAIL_NOT_CONNECTED_NOTIFICATION, COMPLETE_KYC_PROGRESS;
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
- import_react86 = require("react");
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.72",
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, import_react87.useState)(false);
25249
- const [copied, setCopied] = (0, import_react87.useState)(false);
25250
- const clickCountRef = (0, import_react87.useRef)(0);
25251
- const clickTimerRef = (0, import_react87.useRef)(null);
25252
- const handleAvatarClick = (0, import_react87.useCallback)(() => {
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, import_react87, import_jsx_runtime119;
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
- import_react87 = require("react");
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, import_lodash_es13.merge)({}, mobileStyles)
25946
+ style: (0, import_lodash_es14.merge)({}, mobileStyles)
25385
25947
  };
25386
25948
  }
25387
- var DialogPrimitive, import_lodash_es13, import_lucide_react78, import_react88, import_jsx_runtime120, Dialog, DialogPortal, DialogOverlay, CONTENT_BG_SETUP, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription;
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
- import_lodash_es13 = require("lodash-es");
25956
+ import_lodash_es14 = require("lodash-es");
25395
25957
  import_lucide_react78 = require("lucide-react");
25396
- import_react88 = require("react");
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, import_react88.forwardRef)(
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, import_react88.forwardRef)(
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, import_react88.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(
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, import_react88.forwardRef)(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(DialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
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, import_react89.useEffect)(() => setIsSettings(!!session), [session, setIsSettings]);
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, import_react89, import_jsx_runtime122;
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
- import_react89 = require("react");
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, import_react90.useEffect)(() => {
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, import_react90.useEffect)(() => {
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, import_react90.useEffect)(() => {
26228
+ (0, import_react91.useEffect)(() => {
25667
26229
  if (isExternalConnected && !isConnected) {
25668
26230
  clearExternalWallet();
25669
26231
  }
25670
26232
  }, [isConnected, isExternalConnected, clearExternalWallet]);
25671
- (0, import_react90.useEffect)(() => {
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, import_react90.useEffect)(() => {
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 import_react90, import_wagmi8;
26249
+ var import_react91, import_wagmi8;
25688
26250
  var init_DirectWalletHandler = __esm({
25689
26251
  "src/internal/components/DirectWalletHandler.tsx"() {
25690
- import_react90 = require("react");
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 import_react91, TssManagerWithRef;
26260
+ var import_react92, TssManagerWithRef;
25699
26261
  var init_TssManager = __esm({
25700
26262
  "src/internal/components/TssManager.tsx"() {
25701
26263
  init_SessionContext();
25702
- import_react91 = __toESM(require("react"), 1);
26264
+ import_react92 = __toESM(require("react"), 1);
25703
26265
  init_auth();
25704
26266
  init_clients();
25705
- TssManagerWithRef = import_react91.default.forwardRef((props, ref) => {
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, import_react91.useCallback)(
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 = import_react91.default.useCallback(
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
- import_react91.default.useImperativeHandle(ref, () => ({ createSessionWithKeyshare }), [createSessionWithKeyshare]);
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, import_react92.useCallback)(
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] = import_react92.default.useState(false);
25803
- const [modalWasOpened, setModalWasOpened] = import_react92.default.useState(false);
25804
- const [pendingModalOpen, setPendingModalOpen] = import_react92.default.useState(false);
25805
- (0, import_react92.useEffect)(() => {
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, import_react92.useEffect)(() => {
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, import_react92.useEffect)(() => {
26411
+ (0, import_react93.useEffect)(() => {
25850
26412
  if (connectModalOpen && hasStartedLinking) {
25851
26413
  setModalWasOpened(true);
25852
26414
  }
25853
26415
  }, [connectModalOpen, hasStartedLinking]);
25854
- (0, import_react92.useEffect)(() => {
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, import_react92.useEffect)(() => {
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, import_react92.useEffect)(() => {
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, import_react92.useEffect)(() => {
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, import_react92, import_wagmi9;
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
- import_react92 = __toESM(require("react"), 1);
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)(import_react93.Fragment, { children: [
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, import_react93, import_zustand16, import_middleware4, import_jsx_runtime123, useSession, requireActiveChainId;
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
- import_react93 = require("react");
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 keys2 = [
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
- keys2.forEach((key) => window.localStorage.removeItem(key));
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, import_react94.useMemo)(
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, import_react94.useMemo)(() => {
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, import_react94, import_wagmi11, import_styles, import_jsx_runtime124;
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
- import_react94 = require("react");
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, import_react95.useRef)(callbacks);
28843
- (0, import_react95.useEffect)(() => notifyNoProjetctId(projectId), [projectId]);
28844
- const config = (0, import_react95.useRef)((0, import_lodash_es14.merge)({}, DEFAULT_PROVIDER_CONFIG, { projectId }, initialConfig));
28845
- const updateConfig = (0, import_react95.useCallback)((updates) => {
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, import_react95.useCallback)((updates) => {
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, import_react95.useEffect)(() => {
29446
+ (0, import_react96.useEffect)(() => {
28885
29447
  if (typeof window === "undefined" || !projectId) return;
28886
- const mergedConfig = (0, import_lodash_es14.merge)(DEFAULT_PROVIDER_CONFIG, initialConfig);
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, import_react95.useEffect)(() => {
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, import_react95.useMemo)(
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, import_lodash_es14, import_react95, import_jsx_runtime126, UIContext, useProviderConfig;
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
- import_lodash_es14 = require("lodash-es");
28959
- import_react95 = require("react");
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, import_react95.createContext)(void 0);
29529
+ UIContext = (0, import_react96.createContext)(void 0);
28968
29530
  useProviderConfig = () => {
28969
- const ctx = (0, import_react95.useContext)(UIContext);
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 import_react96 = require("react");
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, import_react96.useEffect)(() => setUsePaymaster(usePaymaster), [setUsePaymaster, usePaymaster]);
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, import_react96.useMemo)(() => {
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 import_react97 = require("react");
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, import_react97.useState)([]);
29766
- const [loading, setLoading] = (0, import_react97.useState)(true);
29767
- const [error, setError] = (0, import_react97.useState)(null);
29768
- (0, import_react97.useEffect)(() => {
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 import_react98 = require("react");
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, import_react98.useCallback)(
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 import_react99 = require("react");
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, import_react99.useCallback)(() => {
30659
+ const connect = (0, import_react100.useCallback)(() => {
30096
30660
  setIsWalletLinking(true);
30097
30661
  }, [setIsWalletLinking]);
30098
- const reconnect = (0, import_react99.useCallback)(() => {
30662
+ const reconnect = (0, import_react100.useCallback)(() => {
30099
30663
  if (openConnectModal) openConnectModal();
30100
30664
  }, [openConnectModal]);
30101
- const disconnect = (0, import_react99.useCallback)(() => {
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 import_react100 = require("react");
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, import_react100.useState)(false);
30127
- const [error, setError] = (0, import_react100.useState)(null);
30128
- const [txHash, setTxHash] = (0, import_react100.useState)(null);
30129
- const sendTransaction = (0, import_react100.useCallback)(
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, import_react100.useCallback)(() => {
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 import_react101 = require("react");
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, import_react101.useState)(false);
30192
- const [error, setError] = (0, import_react101.useState)(null);
30193
- const [userOpHash, setUserOpHash] = (0, import_react101.useState)(null);
30194
- const linkedWallets = (0, import_react101.useMemo)(
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, import_react101.useCallback)(
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, import_react101.useCallback)(() => {
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 import_react102 = require("react");
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, import_react102.useCallback)(async () => {
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 import_react103 = __toESM(require("react"), 1);
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 = import_react103.default.useMemo(() => {
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,