@luxexchange/lx 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1624) hide show
  1. package/.depcheckrc +26 -0
  2. package/.eslintignore +4 -0
  3. package/.eslintrc.js +79 -0
  4. package/LLM.md +145 -0
  5. package/babel.config.js +39 -0
  6. package/env.d.ts +15 -0
  7. package/eslint_rules/i18n.js +44 -0
  8. package/eslint_rules/no-redux-modals.js +54 -0
  9. package/jest-package-mocks.js +38 -0
  10. package/openapitools.json +7 -0
  11. package/package.json +170 -0
  12. package/project.json +76 -0
  13. package/src/abis/argent-wallet-contract.json +61 -0
  14. package/src/abis/eip_2612.json +20 -0
  15. package/src/abis/eip_2612.ts +20 -0
  16. package/src/abis/ens-public-resolver.json +816 -0
  17. package/src/abis/ens-registrar.json +422 -0
  18. package/src/abis/erc1155.json +335 -0
  19. package/src/abis/erc20.json +108 -0
  20. package/src/abis/erc20_bytes32.json +30 -0
  21. package/src/abis/erc721.json +352 -0
  22. package/src/abis/fee-on-transfer-detector.json +133 -0
  23. package/src/abis/governor-bravo.json +1046 -0
  24. package/src/abis/lux-nft-airdrop-claim.json +218 -0
  25. package/src/abis/permit2.json +87 -0
  26. package/src/abis/permit2.ts +73 -0
  27. package/src/abis/weth.json +279 -0
  28. package/src/components/AmountInput/AmountInput.test.tsx +141 -0
  29. package/src/components/AmountInput/AmountInput.tsx +157 -0
  30. package/src/components/AmountInput/useTextWidth.tsx +90 -0
  31. package/src/components/AmountInput/utils/numericInputEnforcer.ts +6 -0
  32. package/src/components/AmountInput/utils/parseValue.ts +57 -0
  33. package/src/components/AmountInput/utils/replaceSeparators.ts +22 -0
  34. package/src/components/AnimatedNumber/AnimatedNumber.native.tsx +475 -0
  35. package/src/components/AnimatedNumber/AnimatedNumber.tsx +53 -0
  36. package/src/components/AnimatedNumber/AnimatedNumber.web.tsx +141 -0
  37. package/src/components/AnimatedNumber/TopAndBottomGradient.native.tsx +32 -0
  38. package/src/components/AnimatedNumber/TopAndBottomGradient.tsx +5 -0
  39. package/src/components/AnimatedNumber/TopAndBottomGradient.web.tsx +23 -0
  40. package/src/components/BaseCard/BaseCard.test.tsx +271 -0
  41. package/src/components/BaseCard/BaseCard.tsx +239 -0
  42. package/src/components/BaseCard/__snapshots__/BaseCard.test.tsx.snap +196 -0
  43. package/src/components/BatchedTransactions/CarouselControls.tsx +85 -0
  44. package/src/components/BridgedAsset/BridgedAssetModal.tsx +239 -0
  45. package/src/components/BridgedAsset/BridgedAssetTDPSection.tsx +49 -0
  46. package/src/components/BridgedAsset/WormholeModal.tsx +173 -0
  47. package/src/components/ConfirmSwapModal/ProgressIndicator.tsx +232 -0
  48. package/src/components/ConfirmSwapModal/steps/Approve.tsx +73 -0
  49. package/src/components/ConfirmSwapModal/steps/LP.tsx +60 -0
  50. package/src/components/ConfirmSwapModal/steps/Permit.tsx +85 -0
  51. package/src/components/ConfirmSwapModal/steps/SpinningBorderIcon.native.tsx +54 -0
  52. package/src/components/ConfirmSwapModal/steps/SpinningBorderIcon.tsx +15 -0
  53. package/src/components/ConfirmSwapModal/steps/SpinningBorderIcon.web.tsx +59 -0
  54. package/src/components/ConfirmSwapModal/steps/StepRowSkeleton.tsx +224 -0
  55. package/src/components/ConfirmSwapModal/steps/Swap.tsx +78 -0
  56. package/src/components/ConfirmSwapModal/steps/SwapTXPlanStepRow.tsx +175 -0
  57. package/src/components/ConfirmSwapModal/steps/Wrap.tsx +41 -0
  58. package/src/components/ConfirmSwapModal/types.ts +8 -0
  59. package/src/components/ConfirmSwapModal/useSecondsUntilDeadline.tsx +48 -0
  60. package/src/components/CurrencyInputPanel/AmountInputPresets/AmountInputPresets.tsx +51 -0
  61. package/src/components/CurrencyInputPanel/AmountInputPresets/PresetAmountButton.tsx +216 -0
  62. package/src/components/CurrencyInputPanel/AmountInputPresets/types.ts +8 -0
  63. package/src/components/CurrencyInputPanel/AmountInputPresets/utils.ts +8 -0
  64. package/src/components/CurrencyInputPanel/CurrencyInputPanel.tsx +234 -0
  65. package/src/components/CurrencyInputPanel/CurrencyInputPanelBalance.tsx +43 -0
  66. package/src/components/CurrencyInputPanel/CurrencyInputPanelHeader.tsx +87 -0
  67. package/src/components/CurrencyInputPanel/CurrencyInputPanelInput.tsx +242 -0
  68. package/src/components/CurrencyInputPanel/CurrencyInputPanelValue.tsx +100 -0
  69. package/src/components/CurrencyInputPanel/DefaultTokenOptions/DefaultTokenOptions.tsx +34 -0
  70. package/src/components/CurrencyInputPanel/DefaultTokenOptions/TokenIcon.tsx +94 -0
  71. package/src/components/CurrencyInputPanel/DefaultTokenOptions/TokenOptions/TokenOptionItem/TokenOptionItem.native.tsx +17 -0
  72. package/src/components/CurrencyInputPanel/DefaultTokenOptions/TokenOptions/TokenOptionItem/TokenOptionItem.tsx +6 -0
  73. package/src/components/CurrencyInputPanel/DefaultTokenOptions/TokenOptions/TokenOptionItem/TokenOptionItem.web.tsx +35 -0
  74. package/src/components/CurrencyInputPanel/DefaultTokenOptions/TokenOptions/TokenOptionItem/types.ts +9 -0
  75. package/src/components/CurrencyInputPanel/DefaultTokenOptions/TokenOptions/TokenOptions.tsx +58 -0
  76. package/src/components/CurrencyInputPanel/DefaultTokenOptions/TokenOptions/useSendSelectCurrencyEvent.tsx +37 -0
  77. package/src/components/CurrencyInputPanel/DefaultTokenOptions/constants.ts +19 -0
  78. package/src/components/CurrencyInputPanel/SelectTokenButton.tsx +86 -0
  79. package/src/components/CurrencyInputPanel/TokenRate.tsx +49 -0
  80. package/src/components/CurrencyInputPanel/hooks/useCurrencyInputFontSize.ts +53 -0
  81. package/src/components/CurrencyInputPanel/hooks/useIndicativeQuoteTextDisplay.ts +56 -0
  82. package/src/components/CurrencyInputPanel/hooks/useInputFocusSync/types.ts +11 -0
  83. package/src/components/CurrencyInputPanel/hooks/useInputFocusSync/useInputFocusSync.native.ts +36 -0
  84. package/src/components/CurrencyInputPanel/hooks/useInputFocusSync/useInputFocusSync.ts +6 -0
  85. package/src/components/CurrencyInputPanel/hooks/useInputFocusSync/useInputFocusSync.web.ts +6 -0
  86. package/src/components/CurrencyInputPanel/hooks/useRefetchAnimationStyle.native.ts +42 -0
  87. package/src/components/CurrencyInputPanel/hooks/useRefetchAnimationStyle.ts +14 -0
  88. package/src/components/CurrencyInputPanel/hooks/useRefetchAnimationStyle.web.ts +68 -0
  89. package/src/components/CurrencyInputPanel/types.tsx +61 -0
  90. package/src/components/CurrencyLogo/CurrencyLogo.test.tsx +50 -0
  91. package/src/components/CurrencyLogo/CurrencyLogo.tsx +38 -0
  92. package/src/components/CurrencyLogo/LogoWithTxStatus.test.tsx +291 -0
  93. package/src/components/CurrencyLogo/LogoWithTxStatus.tsx +282 -0
  94. package/src/components/CurrencyLogo/NetworkLogo.test.tsx +54 -0
  95. package/src/components/CurrencyLogo/NetworkLogo.tsx +89 -0
  96. package/src/components/CurrencyLogo/NetworkLogoWarning.tsx +44 -0
  97. package/src/components/CurrencyLogo/SplitLogo.test.tsx +120 -0
  98. package/src/components/CurrencyLogo/SplitLogo.tsx +127 -0
  99. package/src/components/CurrencyLogo/TokenLogo.test.tsx +146 -0
  100. package/src/components/CurrencyLogo/TokenLogo.tsx +164 -0
  101. package/src/components/CurrencyLogo/__snapshots__/CurrencyLogo.test.tsx.snap +90 -0
  102. package/src/components/CurrencyLogo/__snapshots__/LogoWithTxStatus.test.tsx.snap +130 -0
  103. package/src/components/CurrencyLogo/__snapshots__/NetworkLogo.test.tsx.snap +69 -0
  104. package/src/components/CurrencyLogo/__snapshots__/SplitLogo.test.tsx.snap +91 -0
  105. package/src/components/CurrencyLogo/__snapshots__/TokenLogo.test.tsx.snap +58 -0
  106. package/src/components/ExpandoRow/ExpandoRow.test.tsx +75 -0
  107. package/src/components/ExpandoRow/ExpandoRow.tsx +40 -0
  108. package/src/components/ExpandoRow/__snapshots__/ExpandoRow.test.tsx.snap +127 -0
  109. package/src/components/IconCloud/CloudItem.tsx +252 -0
  110. package/src/components/IconCloud/IconCloud.tsx +118 -0
  111. package/src/components/IconCloud/utils.ts +21 -0
  112. package/src/components/InlineWarningCard/InlineWarningCard.tsx +133 -0
  113. package/src/components/MicroConfirmation.tsx +25 -0
  114. package/src/components/MultichainTokenDetails/MultichainAddressList.test.tsx +90 -0
  115. package/src/components/MultichainTokenDetails/MultichainAddressList.tsx +82 -0
  116. package/src/components/MultichainTokenDetails/MultichainExplorerList.test.tsx +46 -0
  117. package/src/components/MultichainTokenDetails/MultichainExplorerList.tsx +63 -0
  118. package/src/components/MultichainTokenDetails/MultichainOptionRow.test.tsx +41 -0
  119. package/src/components/MultichainTokenDetails/MultichainOptionRow.tsx +87 -0
  120. package/src/components/MultichainTokenDetails/MultichainScrollableList.tsx +98 -0
  121. package/src/components/MultichainTokenDetails/__snapshots__/MultichainExplorerList.test.tsx.snap +150 -0
  122. package/src/components/MultichainTokenDetails/__snapshots__/MultichainOptionRow.test.tsx.snap +49 -0
  123. package/src/components/MultichainTokenDetails/useOrderedMultichainEntries.test.ts +53 -0
  124. package/src/components/MultichainTokenDetails/useOrderedMultichainEntries.ts +22 -0
  125. package/src/components/ReceiveQRCode/ReceiveQRCode.tsx +189 -0
  126. package/src/components/ReceiveQRCode/constants.ts +5 -0
  127. package/src/components/RelativeChange/RelativeChange.test.tsx +44 -0
  128. package/src/components/RelativeChange/RelativeChange.tsx +72 -0
  129. package/src/components/RelativeChange/__snapshots__/RelativeChange.test.tsx.snap +110 -0
  130. package/src/components/RoutingDiagram/RoutingDiagram.tsx +264 -0
  131. package/src/components/RoutingDiagram/RoutingLabel.tsx +42 -0
  132. package/src/components/TokenSelector/CrosschainSwapsPromoBanner.tsx +51 -0
  133. package/src/components/TokenSelector/TokenSelector.tsx +423 -0
  134. package/src/components/TokenSelector/TokenSelectorList.tsx +267 -0
  135. package/src/components/TokenSelector/UnsupportedChainedActionsBanner.tsx +68 -0
  136. package/src/components/TokenSelector/constants.ts +3 -0
  137. package/src/components/TokenSelector/filter.test.ts +98 -0
  138. package/src/components/TokenSelector/filter.ts +131 -0
  139. package/src/components/TokenSelector/hooks/useAddToSearchHistory.ts +81 -0
  140. package/src/components/TokenSelector/hooks/useAllCommonBaseCurrencies.ts +126 -0
  141. package/src/components/TokenSelector/hooks/useCommonTokensOptions.ts +75 -0
  142. package/src/components/TokenSelector/hooks/useCommonTokensOptionsWithFallback.ts +66 -0
  143. package/src/components/TokenSelector/hooks/useCurrencies.ts +39 -0
  144. package/src/components/TokenSelector/hooks/useCurrencyInfosToTokenOptions.ts +94 -0
  145. package/src/components/TokenSelector/hooks/useFavoriteCurrencies.ts +32 -0
  146. package/src/components/TokenSelector/hooks/useFavoriteTokensOptions.ts +57 -0
  147. package/src/components/TokenSelector/hooks/useLuxTokensOptions.ts +97 -0
  148. package/src/components/TokenSelector/hooks/usePortfolioBalancesForAddressById.ts +29 -0
  149. package/src/components/TokenSelector/hooks/usePortfolioTokenOptions.ts +74 -0
  150. package/src/components/TokenSelector/hooks/useRecentlySearchedTokens.ts +44 -0
  151. package/src/components/TokenSelector/hooks/useTokenSectionsForEmptySearch.tsx +42 -0
  152. package/src/components/TokenSelector/hooks/useTokenSectionsForSearchResults.ts +155 -0
  153. package/src/components/TokenSelector/hooks/useTrendingTokensCurrencyInfos.ts +30 -0
  154. package/src/components/TokenSelector/hooks/useTrendingTokensOptions.ts +47 -0
  155. package/src/components/TokenSelector/hooks.test.ts +1170 -0
  156. package/src/components/TokenSelector/items/tokens/SuggestedToken.tsx +61 -0
  157. package/src/components/TokenSelector/items/tokens/TokenCard.tsx +79 -0
  158. package/src/components/TokenSelector/lists/HorizontalTokenList/HorizontalTokenList.native.tsx +63 -0
  159. package/src/components/TokenSelector/lists/HorizontalTokenList/HorizontalTokenList.tsx +18 -0
  160. package/src/components/TokenSelector/lists/HorizontalTokenList/HorizontalTokenList.web.tsx +74 -0
  161. package/src/components/TokenSelector/lists/TokenSelectorEmptySearchList.tsx +47 -0
  162. package/src/components/TokenSelector/lists/TokenSelectorSearchResultsList.tsx +79 -0
  163. package/src/components/TokenSelector/lists/TokenSelectorSendList.tsx +149 -0
  164. package/src/components/TokenSelector/lists/TokenSelectorSwapList.tsx +224 -0
  165. package/src/components/TokenSelector/types.ts +30 -0
  166. package/src/components/TokenSelector/utils.test.tsx +46 -0
  167. package/src/components/TokenSelector/utils.tsx +147 -0
  168. package/src/components/TransactionDetailsTooltip.tsx +151 -0
  169. package/src/components/ViewGestureHandler/ViewGestureHandler.native.tsx +6 -0
  170. package/src/components/ViewGestureHandler/ViewGestureHandler.tsx +6 -0
  171. package/src/components/ViewGestureHandler/ViewGestureHandler.web.tsx +5 -0
  172. package/src/components/WarningMessage/WarningMessage.tsx +33 -0
  173. package/src/components/accounts/AddressDisplay.tsx +251 -0
  174. package/src/components/accounts/DisplayNameText.test.tsx +34 -0
  175. package/src/components/accounts/DisplayNameText.tsx +44 -0
  176. package/src/components/accounts/__snapshots__/DisplayNameText.test.tsx.snap +103 -0
  177. package/src/components/activity/ActivityListEmptyState.tsx +43 -0
  178. package/src/components/activity/details/InfoRow.tsx +18 -0
  179. package/src/components/activity/details/TransactionDetailsContent.tsx +83 -0
  180. package/src/components/activity/details/TransactionDetailsHeader.tsx +72 -0
  181. package/src/components/activity/details/TransactionDetailsHeaderLogo.tsx +313 -0
  182. package/src/components/activity/details/TransactionDetailsInfoRows.tsx +422 -0
  183. package/src/components/activity/details/TransactionDetailsModal.test.tsx +168 -0
  184. package/src/components/activity/details/TransactionDetailsModal.tsx +65 -0
  185. package/src/components/activity/details/TransactionDetailsOverview.tsx +151 -0
  186. package/src/components/activity/details/TransactionParticipantDisplay.tsx +18 -0
  187. package/src/components/activity/details/TransactionParticipantRow.tsx +72 -0
  188. package/src/components/activity/details/__snapshots__/TransactionDetailsModal.test.tsx.snap +385 -0
  189. package/src/components/activity/details/plan/PlanDetailsView.tsx +204 -0
  190. package/src/components/activity/details/plan/PlanStepItem.tsx +236 -0
  191. package/src/components/activity/details/plan/ResumePlanButton.tsx +59 -0
  192. package/src/components/activity/details/transactions/ApproveTransactionDetails.tsx +77 -0
  193. package/src/components/activity/details/transactions/AuctionTransactionDetails.tsx +48 -0
  194. package/src/components/activity/details/transactions/BridgeTransactionDetails.tsx +53 -0
  195. package/src/components/activity/details/transactions/LiquidityTransactionDetails.tsx +100 -0
  196. package/src/components/activity/details/transactions/NftTransactionDetails.test.tsx +58 -0
  197. package/src/components/activity/details/transactions/NftTransactionDetails.tsx +103 -0
  198. package/src/components/activity/details/transactions/OffRampPendingSupportCard.tsx +31 -0
  199. package/src/components/activity/details/transactions/OffRampTransactionDetails.tsx +42 -0
  200. package/src/components/activity/details/transactions/OnRampTransactionDetails.tsx +61 -0
  201. package/src/components/activity/details/transactions/PlanTransactionDetails.tsx +118 -0
  202. package/src/components/activity/details/transactions/SwapTransactionDetails.test.tsx +89 -0
  203. package/src/components/activity/details/transactions/SwapTransactionDetails.tsx +89 -0
  204. package/src/components/activity/details/transactions/TransferTransactionDetails.test.tsx +113 -0
  205. package/src/components/activity/details/transactions/TransferTransactionDetails.tsx +118 -0
  206. package/src/components/activity/details/transactions/WrapTransactionDetails.tsx +31 -0
  207. package/src/components/activity/details/transactions/__snapshots__/NftTransactionDetails.test.tsx.snap +53 -0
  208. package/src/components/activity/details/transactions/__snapshots__/SwapTransactionDetails.test.tsx.snap +85 -0
  209. package/src/components/activity/details/transactions/__snapshots__/TransferTransactionDetails.test.tsx.snap +28 -0
  210. package/src/components/activity/details/transactions/utilityComponents.tsx +115 -0
  211. package/src/components/activity/details/types.ts +54 -0
  212. package/src/components/activity/general/TransactionSummaryTitle.tsx +41 -0
  213. package/src/components/activity/generateActivityItemRenderer.ts +115 -0
  214. package/src/components/activity/hooks/useFormattedCurrencyAmountAndUSDValue.ts +50 -0
  215. package/src/components/activity/hooks/useFormattedTime.ts +34 -0
  216. package/src/components/activity/hooks/useOnRetrySwap.ts +27 -0
  217. package/src/components/activity/hooks/useTokenDetailsNavigation.ts +25 -0
  218. package/src/components/activity/summaries/ApproveSummaryItem.tsx +62 -0
  219. package/src/components/activity/summaries/BridgeSummaryItem.tsx +84 -0
  220. package/src/components/activity/summaries/LiquiditySummaryItem.tsx +119 -0
  221. package/src/components/activity/summaries/NFTApproveSummaryItem.tsx +24 -0
  222. package/src/components/activity/summaries/NFTMintSummaryItem.tsx +24 -0
  223. package/src/components/activity/summaries/NFTSummaryItem.tsx +49 -0
  224. package/src/components/activity/summaries/NFTTradeSummaryItem.tsx +20 -0
  225. package/src/components/activity/summaries/OffRampTransferSummaryItem.tsx +49 -0
  226. package/src/components/activity/summaries/OnRampTransferSummaryItem.tsx +99 -0
  227. package/src/components/activity/summaries/PlanSummaryItem.tsx +97 -0
  228. package/src/components/activity/summaries/ReceiveSummaryItem.tsx +25 -0
  229. package/src/components/activity/summaries/SendSummaryItem.tsx +25 -0
  230. package/src/components/activity/summaries/SwapSummaryItem.tsx +84 -0
  231. package/src/components/activity/summaries/TransactionSummaryLayout.tsx +194 -0
  232. package/src/components/activity/summaries/TransferTokenSummaryItem.tsx +152 -0
  233. package/src/components/activity/summaries/UnknownSummaryItem.tsx +58 -0
  234. package/src/components/activity/summaries/WCSummaryItem.tsx +36 -0
  235. package/src/components/activity/summaries/WithdrawSummaryItem.tsx +71 -0
  236. package/src/components/activity/summaries/WrapSummaryItem.tsx +68 -0
  237. package/src/components/activity/types.ts +37 -0
  238. package/src/components/activity/utils.ts +86 -0
  239. package/src/components/appearance/ThemeToggle.tsx +51 -0
  240. package/src/components/badge/Badge.tsx +47 -0
  241. package/src/components/banners/ExcludedNetworkBanner.tsx +41 -0
  242. package/src/components/banners/InformationBanner.tsx +29 -0
  243. package/src/components/banners/LuxWrapped2025Banner/LuxWrapped2025Banner.native.tsx +85 -0
  244. package/src/components/banners/LuxWrapped2025Banner/LuxWrapped2025Banner.tsx +6 -0
  245. package/src/components/banners/LuxWrapped2025Banner/LuxWrapped2025Banner.web.tsx +182 -0
  246. package/src/components/banners/LuxWrapped2025Banner/types.ts +5 -0
  247. package/src/components/banners/LuxWrapped2025Card/LuxWrapped2025Card.native.tsx +69 -0
  248. package/src/components/banners/LuxWrapped2025Card/LuxWrapped2025Card.tsx +6 -0
  249. package/src/components/banners/LuxWrapped2025Card/LuxWrapped2025Card.web.tsx +104 -0
  250. package/src/components/banners/LuxWrapped2025Card/types.ts +3 -0
  251. package/src/components/banners/TestnetModeBanner.tsx +52 -0
  252. package/src/components/banners/shared/SharedSnowflakeComponents.native.tsx +198 -0
  253. package/src/components/banners/shared/SharedSnowflakeComponents.tsx +52 -0
  254. package/src/components/banners/shared/SharedSnowflakeComponents.web.tsx +124 -0
  255. package/src/components/banners/shared/utils.ts +5 -0
  256. package/src/components/buttons/PasteButton.test.tsx +18 -0
  257. package/src/components/buttons/PasteButton.tsx +62 -0
  258. package/src/components/buttons/__snapshots__/PasteButton.test.tsx.snap +83 -0
  259. package/src/components/cards/image.tsx +32 -0
  260. package/src/components/chains/BlockExplorerIcon.tsx +26 -0
  261. package/src/components/charts/utils.ts +42 -0
  262. package/src/components/dapps/DappIconPlaceholder.tsx +27 -0
  263. package/src/components/dialog/Dialog.native.tsx +122 -0
  264. package/src/components/dialog/Dialog.test.tsx +246 -0
  265. package/src/components/dialog/Dialog.tsx +11 -0
  266. package/src/components/dialog/Dialog.web.tsx +138 -0
  267. package/src/components/dialog/DialogButtons.tsx +60 -0
  268. package/src/components/dialog/DialogContent.tsx +81 -0
  269. package/src/components/dialog/DialogProps.tsx +46 -0
  270. package/src/components/dialog/GetHelpButtonUI.tsx +33 -0
  271. package/src/components/dialog/GetHelpHeader.native.tsx +22 -0
  272. package/src/components/dialog/GetHelpHeader.tsx +16 -0
  273. package/src/components/dialog/GetHelpHeader.web.tsx +26 -0
  274. package/src/components/dialog/GetHelpHeaderContent.tsx +54 -0
  275. package/src/components/dialog/hooks/useDialogVisibility.test.ts +296 -0
  276. package/src/components/dialog/hooks/useDialogVisibility.ts +131 -0
  277. package/src/components/dropdowns/ActionSheetDropdown.test.tsx +124 -0
  278. package/src/components/dropdowns/ActionSheetDropdown.tsx +468 -0
  279. package/src/components/dropdowns/__snapshots__/ActionSheetDropdown.test.tsx.snap +25 -0
  280. package/src/components/gas/NetworkCostTooltip.tsx +79 -0
  281. package/src/components/gas/NetworkFee.test.tsx +36 -0
  282. package/src/components/gas/NetworkFee.tsx +122 -0
  283. package/src/components/gas/NetworkFeeWarning.tsx +145 -0
  284. package/src/components/gas/__snapshots__/NetworkFee.test.tsx.snap +251 -0
  285. package/src/components/gating/CacheConfig.tsx +28 -0
  286. package/src/components/gating/DynamicConfigDropdown.tsx +98 -0
  287. package/src/components/gating/GatingButton.tsx +11 -0
  288. package/src/components/gating/GatingOverrides.tsx +262 -0
  289. package/src/components/gating/Rows.tsx +103 -0
  290. package/src/components/gating/dynamicConfigOverrides.tsx +75 -0
  291. package/src/components/input/TextInput.tsx +43 -0
  292. package/src/components/lists/NoResultsFound.tsx +19 -0
  293. package/src/components/lists/OnchainItemList/OnchainItemList.native.tsx +102 -0
  294. package/src/components/lists/OnchainItemList/OnchainItemList.tsx +39 -0
  295. package/src/components/lists/OnchainItemList/OnchainItemList.web.tsx +348 -0
  296. package/src/components/lists/OnchainItemList/processSectionsToRows.test.tsx +181 -0
  297. package/src/components/lists/OnchainItemList/processSectionsToRows.ts +57 -0
  298. package/src/components/lists/OnchainItemList/types.ts +31 -0
  299. package/src/components/lists/SectionHeader.tsx +137 -0
  300. package/src/components/lists/SelectorBaseList.tsx +131 -0
  301. package/src/components/lists/items/OptionItem.tsx +161 -0
  302. package/src/components/lists/items/nfts/NFTCollectionOptionItem.tsx +38 -0
  303. package/src/components/lists/items/nfts/useNftSearchResultsToNftCollectionOptions.tsx +43 -0
  304. package/src/components/lists/items/pools/PoolOptionItem.tsx +100 -0
  305. package/src/components/lists/items/pools/PoolOptionItemContextMenu.tsx +116 -0
  306. package/src/components/lists/items/pools/usePoolSearchResultsToPoolOptions.tsx +60 -0
  307. package/src/components/lists/items/pools/usePoolStatsToPoolOptions.tsx +107 -0
  308. package/src/components/lists/items/tokens/TokenOptionItem.tsx +338 -0
  309. package/src/components/lists/items/tokens/TokenOptionItemContextMenu.tsx +274 -0
  310. package/src/components/lists/items/types.ts +74 -0
  311. package/src/components/lists/items/wallets/ENSAddressOptionItem.tsx +62 -0
  312. package/src/components/lists/items/wallets/UnitagOptionItem.tsx +39 -0
  313. package/src/components/lists/items/wallets/WalletBaseOptionItem.tsx +28 -0
  314. package/src/components/lists/items/wallets/WalletByAddressOptionItem.tsx +55 -0
  315. package/src/components/lists/items/wallets/WalletOptionItemContextMenu.tsx +56 -0
  316. package/src/components/lists/items/wallets/useFavoriteWalletOptions.tsx +21 -0
  317. package/src/components/lists/items/wallets/utils.test.ts +19 -0
  318. package/src/components/lists/items/wallets/utils.ts +16 -0
  319. package/src/components/lists/utils.tsx +43 -0
  320. package/src/components/logos/PoweredByBlockaid.tsx +33 -0
  321. package/src/components/menus/ContextMenu.native.tsx +338 -0
  322. package/src/components/menus/ContextMenu.tsx +66 -0
  323. package/src/components/menus/ContextMenu.web.test.tsx +133 -0
  324. package/src/components/menus/ContextMenu.web.tsx +174 -0
  325. package/src/components/menus/ContextMenuContent.tsx +100 -0
  326. package/src/components/menus/ContextMenuV2.native.tsx +338 -0
  327. package/src/components/menus/ContextMenuV2.tsx +66 -0
  328. package/src/components/menus/ContextMenuV2.web.test.tsx +133 -0
  329. package/src/components/menus/ContextMenuV2.web.tsx +184 -0
  330. package/src/components/menus/__snapshots__/ContextMenu.web.test.tsx.snap +34 -0
  331. package/src/components/menus/hooks/useContextMenuTracking.ts +51 -0
  332. package/src/components/menus/types.ts +5 -0
  333. package/src/components/misc/ActionCard.tsx +84 -0
  334. package/src/components/misc/GenericHeader.tsx +63 -0
  335. package/src/components/misc/IndicativeLoadingWrapper.tsx +14 -0
  336. package/src/components/misc/Scrollbar.native.tsx +59 -0
  337. package/src/components/misc/Scrollbar.tsx +12 -0
  338. package/src/components/misc/Scrollbar.web.tsx +99 -0
  339. package/src/components/modals/ActionSheetModal.tsx +94 -0
  340. package/src/components/modals/BottomSheetContext.tsx +52 -0
  341. package/src/components/modals/HandleBar.native.tsx +41 -0
  342. package/src/components/modals/HandleBar.tsx +15 -0
  343. package/src/components/modals/HandleBar.web.tsx +6 -0
  344. package/src/components/modals/InfoLinkModal.tsx +97 -0
  345. package/src/components/modals/Modal.native.tsx +449 -0
  346. package/src/components/modals/Modal.tsx +26 -0
  347. package/src/components/modals/Modal.web.tsx +119 -0
  348. package/src/components/modals/ModalProps.tsx +60 -0
  349. package/src/components/modals/PaginatedModals.tsx +66 -0
  350. package/src/components/modals/ScrollLock.native.tsx +13 -0
  351. package/src/components/modals/ScrollLock.tsx +13 -0
  352. package/src/components/modals/ScrollLock.web.tsx +53 -0
  353. package/src/components/modals/WarningModal/WarningInfo.tsx +102 -0
  354. package/src/components/modals/WarningModal/WarningModal.tsx +295 -0
  355. package/src/components/modals/WarningModal/getAlertColor.ts +42 -0
  356. package/src/components/modals/WarningModal/types.ts +83 -0
  357. package/src/components/modals/modalConstants.tsx +31 -0
  358. package/src/components/modals/useBottomSheetSafeKeyboard.native.tsx +43 -0
  359. package/src/components/modals/useBottomSheetSafeKeyboard.tsx +9 -0
  360. package/src/components/modals/useBottomSheetSafeKeyboard.web.tsx +6 -0
  361. package/src/components/network/NetworkFilter.test.tsx +31 -0
  362. package/src/components/network/NetworkFilter.tsx +75 -0
  363. package/src/components/network/NetworkOption.tsx +71 -0
  364. package/src/components/network/NetworkPile/NetworkPile.test.tsx +98 -0
  365. package/src/components/network/NetworkPile/NetworkPile.tsx +130 -0
  366. package/src/components/network/NetworkPile/NetworkPileLayouts.tsx +159 -0
  367. package/src/components/network/NetworkPile/__snapshots__/NetworkPile.test.tsx.snap +984 -0
  368. package/src/components/network/NetworkPill.test.tsx +20 -0
  369. package/src/components/network/NetworkPill.tsx +42 -0
  370. package/src/components/network/SupportedNetworkLogosModal.tsx +100 -0
  371. package/src/components/network/__snapshots__/NetworkFilter.test.tsx.snap +67 -0
  372. package/src/components/network/__snapshots__/NetworkPill.test.tsx.snap +76 -0
  373. package/src/components/network/hooks.tsx +35 -0
  374. package/src/components/nfts/NFTTransfer.tsx +20 -0
  375. package/src/components/nfts/NFTViewer.tsx +106 -0
  376. package/src/components/nfts/NftView.tsx +63 -0
  377. package/src/components/nfts/NftViewWithContextMenu.tsx +64 -0
  378. package/src/components/nfts/NftsList.native.tsx +199 -0
  379. package/src/components/nfts/NftsList.tsx +62 -0
  380. package/src/components/nfts/NftsList.web.tsx +330 -0
  381. package/src/components/nfts/NftsListEmptyState.tsx +43 -0
  382. package/src/components/nfts/NftsListHeader.tsx +111 -0
  383. package/src/components/nfts/ShowNFTModal.tsx +56 -0
  384. package/src/components/nfts/constants.ts +4 -0
  385. package/src/components/nfts/hooks/useNftListRenderData.ts +100 -0
  386. package/src/components/nfts/types.ts +16 -0
  387. package/src/components/notifications/ModalNotification.tsx +115 -0
  388. package/src/components/notifications/ModalTemplate.tsx +309 -0
  389. package/src/components/notifications/NotificationToast.native.tsx +109 -0
  390. package/src/components/notifications/NotificationToast.tsx +12 -0
  391. package/src/components/notifications/NotificationToast.web.tsx +78 -0
  392. package/src/components/notifications/NotificationToastContent.tsx +197 -0
  393. package/src/components/notifications/iconUtils.ts +10 -0
  394. package/src/components/notifications/notifications/ChangeAssetVisibilityNotification.tsx +26 -0
  395. package/src/components/notifications/notifications/CopiedNotification.tsx +47 -0
  396. package/src/components/notifications/notifications/SuccessNotification.tsx +11 -0
  397. package/src/components/pill/NewTag.tsx +39 -0
  398. package/src/components/pill/Pill.test.tsx +13 -0
  399. package/src/components/pill/Pill.tsx +54 -0
  400. package/src/components/pill/PillMultiToggle.tsx +121 -0
  401. package/src/components/pill/__snapshots__/Pill.test.tsx.snap +55 -0
  402. package/src/components/portfolio/EmptyTokensList.tsx +49 -0
  403. package/src/components/portfolio/HiddenTokensRow.tsx +33 -0
  404. package/src/components/portfolio/PortfolioEmptyState.tsx +201 -0
  405. package/src/components/portfolio/TokenBalanceItem.tsx +176 -0
  406. package/src/components/portfolio/TokenBalanceItemContextMenu.native.tsx +147 -0
  407. package/src/components/portfolio/TokenBalanceItemContextMenu.tsx +21 -0
  408. package/src/components/portfolio/TokenBalanceItemContextMenu.web.tsx +74 -0
  409. package/src/components/portfolio/TokenBalanceListWeb.tsx +276 -0
  410. package/src/components/reporting/ReportModal.tsx +128 -0
  411. package/src/components/reporting/ReportPoolDataModal.tsx +105 -0
  412. package/src/components/reporting/ReportTokenDataModal.tsx +101 -0
  413. package/src/components/reporting/ReportTokenIssueModal.tsx +132 -0
  414. package/src/components/reporting/input.tsx +28 -0
  415. package/src/components/text/LearnMoreLink.test.tsx +22 -0
  416. package/src/components/text/LearnMoreLink.tsx +51 -0
  417. package/src/components/text/__snapshots__/LearnMoreLink.test.tsx.snap +29 -0
  418. package/src/components/tokens/TokensListEmptyState.tsx +43 -0
  419. package/src/components/tooltip/InfoTooltip.native.tsx +7 -0
  420. package/src/components/tooltip/InfoTooltip.tsx +7 -0
  421. package/src/components/tooltip/InfoTooltip.web.tsx +78 -0
  422. package/src/components/tooltip/InfoTooltipProps.ts +16 -0
  423. package/src/components/transactions/requests/ContentRow.tsx +30 -0
  424. package/src/components/warnings/WarningIcon.tsx +41 -0
  425. package/src/components/warnings/utils.ts +82 -0
  426. package/src/config.ts +3 -0
  427. package/src/constants/addresses.ts +43 -0
  428. package/src/constants/misc.ts +14 -0
  429. package/src/constants/pools.ts +3 -0
  430. package/src/constants/routing.ts +372 -0
  431. package/src/constants/tokens.ts +693 -0
  432. package/src/constants/transactions.ts +13 -0
  433. package/src/constants/urls.ts +248 -0
  434. package/src/constants/web3.ts +28 -0
  435. package/src/contexts/LuxContext.tsx +210 -0
  436. package/src/contexts/UrlContext.native.tsx +36 -0
  437. package/src/contexts/UrlContext.tsx +21 -0
  438. package/src/contexts/UrlContext.web.tsx +55 -0
  439. package/src/data/apiClients/SharedPersistQueryClientProvider.tsx +24 -0
  440. package/src/data/apiClients/blockaidApi/BlockaidApiClient.ts +14 -0
  441. package/src/data/apiClients/constants.ts +1 -0
  442. package/src/data/apiClients/createLuxFetchClient.ts +33 -0
  443. package/src/data/apiClients/createPersister.native.ts +30 -0
  444. package/src/data/apiClients/createPersister.test.ts +154 -0
  445. package/src/data/apiClients/createPersister.ts +6 -0
  446. package/src/data/apiClients/createPersister.web.ts +35 -0
  447. package/src/data/apiClients/dataApi/DataApiClient.ts +11 -0
  448. package/src/data/apiClients/dataApiService/dataApiQueries.ts +30 -0
  449. package/src/data/apiClients/dataApiService/listTopPools.ts +39 -0
  450. package/src/data/apiClients/dataApiService/listTopTokens.ts +39 -0
  451. package/src/data/apiClients/forApi/ForApiClient.ts +47 -0
  452. package/src/data/apiClients/jupiterApi/JupiterFetchClient.ts +14 -0
  453. package/src/data/apiClients/liquidityService/AuctionMutationClient.ts +10 -0
  454. package/src/data/apiClients/liquidityService/LiquidityServiceClient.ts +10 -0
  455. package/src/data/apiClients/liquidityService/base.ts +19 -0
  456. package/src/data/apiClients/liquidityService/liquidityQueries.ts +224 -0
  457. package/src/data/apiClients/luxApi/LuxApiClient.ts +32 -0
  458. package/src/data/apiClients/luxApi/useGasFeeQuery.ts +66 -0
  459. package/src/data/apiClients/luxApi/useTrmScreenQuery.ts +18 -0
  460. package/src/data/apiClients/sharedDehydrateOptions.ts +28 -0
  461. package/src/data/apiClients/tradingApi/LuxGatewayClient.ts +293 -0
  462. package/src/data/apiClients/tradingApi/TradingApiClient.test.ts +586 -0
  463. package/src/data/apiClients/tradingApi/TradingApiClient.ts +227 -0
  464. package/src/data/apiClients/tradingApi/TradingApiSessionClient.ts +73 -0
  465. package/src/data/apiClients/tradingApi/dex/client.ts +195 -0
  466. package/src/data/apiClients/tradingApi/dex/hooks.ts +403 -0
  467. package/src/data/apiClients/tradingApi/dex/index.ts +9 -0
  468. package/src/data/apiClients/tradingApi/dex/types.ts +334 -0
  469. package/src/data/apiClients/tradingApi/useCheckApprovalQuery.ts +28 -0
  470. package/src/data/apiClients/tradingApi/useTradingApiIndicativeQuoteQuery.ts +70 -0
  471. package/src/data/apiClients/tradingApi/useTradingApiQuoteQuery.ts +40 -0
  472. package/src/data/apiClients/tradingApi/useTradingApiSwapQuery.ts +69 -0
  473. package/src/data/apiClients/tradingApi/useTradingApiSwappableTokensQuery.ts +91 -0
  474. package/src/data/apiClients/tradingApi/useWalletCheckDelegationQuery.ts +36 -0
  475. package/src/data/apiClients/tradingApi/useWalletEncode7702Query.ts +32 -0
  476. package/src/data/apiClients/tradingApi/utils/getTradeSettingsDeadline.ts +7 -0
  477. package/src/data/apiClients/tradingApi/utils/tradingApiSwappableTokenToCurrencyInfo.ts +44 -0
  478. package/src/data/apiClients/unitagsApi/UnitagsApiClient.ts +21 -0
  479. package/src/data/apiClients/unitagsApi/useResetUnitagsQueries.ts +19 -0
  480. package/src/data/apiClients/unitagsApi/useUnitagsAddressQuery.ts +51 -0
  481. package/src/data/apiClients/unitagsApi/useUnitagsClaimEligibilityQuery.ts +28 -0
  482. package/src/data/apiClients/unitagsApi/useUnitagsUsernameQuery.ts +22 -0
  483. package/src/data/balances/hooks/useBalances.ts +31 -0
  484. package/src/data/balances/hooks/useCrossChainBalances.ts +59 -0
  485. package/src/data/balances/utils.test.ts +66 -0
  486. package/src/data/balances/utils.tsx +79 -0
  487. package/src/data/cache.ts +167 -0
  488. package/src/data/gchain/client.ts +764 -0
  489. package/src/data/gchain/hooks.ts +368 -0
  490. package/src/data/gchain/index.ts +124 -0
  491. package/src/data/gchain/useLuxBalance.ts +101 -0
  492. package/src/data/getVersionHeader.native.ts +5 -0
  493. package/src/data/getVersionHeader.ts +5 -0
  494. package/src/data/getVersionHeader.web.ts +10 -0
  495. package/src/data/graphql/lux-data-api/fragments.ts +67 -0
  496. package/src/data/links.ts +147 -0
  497. package/src/data/rest/auctions/AuctionServiceClient.ts +8 -0
  498. package/src/data/rest/auctions/auctionQueries.ts +183 -0
  499. package/src/data/rest/auctions/base.ts +5 -0
  500. package/src/data/rest/auctions/queryTypes.ts +16 -0
  501. package/src/data/rest/auctions/useExitBidAndClaimTokensMutation.ts +61 -0
  502. package/src/data/rest/auctions/useExitBidPositionMutation.ts +53 -0
  503. package/src/data/rest/auctions/useSubmitBidMutation.ts +41 -0
  504. package/src/data/rest/auctions/useVerifyWallet.ts +120 -0
  505. package/src/data/rest/base.ts +45 -0
  506. package/src/data/rest/buildAccountAddressesByPlatform.test.ts +202 -0
  507. package/src/data/rest/buildAccountAddressesByPlatform.ts +49 -0
  508. package/src/data/rest/conversionTracking/constants.ts +136 -0
  509. package/src/data/rest/conversionTracking/tracking.test.ts +34 -0
  510. package/src/data/rest/conversionTracking/tracking.ts +99 -0
  511. package/src/data/rest/conversionTracking/types.ts +29 -0
  512. package/src/data/rest/conversionTracking/useConversionProxy.ts +23 -0
  513. package/src/data/rest/conversionTracking/useConversionTracking.ts +171 -0
  514. package/src/data/rest/conversionTracking/utils.ts +81 -0
  515. package/src/data/rest/embeddedWallet/requests.ts +70 -0
  516. package/src/data/rest/exploreStats.ts +26 -0
  517. package/src/data/rest/getPools.ts +14 -0
  518. package/src/data/rest/getPoolsRewards.ts +14 -0
  519. package/src/data/rest/getPortfolio.test.ts +192 -0
  520. package/src/data/rest/getPortfolio.ts +336 -0
  521. package/src/data/rest/getPortfolioChart.ts +64 -0
  522. package/src/data/rest/getPosition.ts +13 -0
  523. package/src/data/rest/getPositions.ts +113 -0
  524. package/src/data/rest/listTransactions.ts +145 -0
  525. package/src/data/rest/luxGateway.ts +295 -0
  526. package/src/data/rest/portfolioBalanceOverrides.ts +243 -0
  527. package/src/data/rest/protocolStats.ts +19 -0
  528. package/src/data/rest/searchTokensAndPools.ts +146 -0
  529. package/src/data/rest/tokenRankings.ts +62 -0
  530. package/src/data/rest/transformPortfolioToMultichain.test.ts +362 -0
  531. package/src/data/rest/transformPortfolioToMultichain.ts +82 -0
  532. package/src/data/solanaConnection/getSolanaParsedTokenAccountsByOwnerQueryOptions.ts +97 -0
  533. package/src/declarations.d.ts +6 -0
  534. package/src/dialog-preferences/DialogPreferencesService.ts +47 -0
  535. package/src/dialog-preferences/implementations/createDialogPreferencesService.test.ts +178 -0
  536. package/src/dialog-preferences/implementations/createDialogPreferencesService.ts +64 -0
  537. package/src/dialog-preferences/index.ts +8 -0
  538. package/src/dialog-preferences/types.ts +5 -0
  539. package/src/domains/repositories.ts +13 -0
  540. package/src/domains/services.ts +21 -0
  541. package/src/entities/assets.ts +25 -0
  542. package/src/extension/messagePassing/messageChannels.ts +40 -0
  543. package/src/extension/messagePassing/messageTypes.ts +8 -0
  544. package/src/extension/messagePassing/platform.ts +16 -0
  545. package/src/extension/messagePassing/types/requests.ts +40 -0
  546. package/src/extension/useIsChromeWindowFocused.ts +58 -0
  547. package/src/features/accounts/AccountIcon.tsx +92 -0
  548. package/src/features/accounts/reportBalancesForAnalytics.ts +60 -0
  549. package/src/features/accounts/store/hooks.ts +32 -0
  550. package/src/features/accounts/store/types/Account.ts +15 -0
  551. package/src/features/accounts/store/types/AccountsState.ts +65 -0
  552. package/src/features/accounts/store/types/Connector.ts +94 -0
  553. package/src/features/accounts/store/types/README.md +81 -0
  554. package/src/features/accounts/store/types/Session.ts +60 -0
  555. package/src/features/accounts/store/types/Wallet.ts +36 -0
  556. package/src/features/accounts/store/utils/accounts.ts +15 -0
  557. package/src/features/accounts/store/utils/addresses.ts +27 -0
  558. package/src/features/accounts/store/utils/connection.ts +40 -0
  559. package/src/features/accounts/store/utils/createAccountsStoreContextProvider.tsx +84 -0
  560. package/src/features/accounts/store/utils/createUseAccountsStore.ts +25 -0
  561. package/src/features/accounts/store/utils/flexibleInput.ts +13 -0
  562. package/src/features/accounts/store/utils/wallets.test.ts +305 -0
  563. package/src/features/accounts/store/utils/wallets.ts +85 -0
  564. package/src/features/accounts/types.ts +35 -0
  565. package/src/features/accounts/useOnchainDisplayName.tsx +76 -0
  566. package/src/features/activity/extract/conversion.test.ts +680 -0
  567. package/src/features/activity/extract/conversionRest.test.ts +1287 -0
  568. package/src/features/activity/extract/extractDEXOrderDetails.ts +95 -0
  569. package/src/features/activity/extract/extractFiatOnRampTransactionDetails.ts +175 -0
  570. package/src/features/activity/extract/extractOnChainTransactionDetails.ts +144 -0
  571. package/src/features/activity/extract/extractPlanDetails.ts +191 -0
  572. package/src/features/activity/extract/extractPlanResponseDetails.ts +188 -0
  573. package/src/features/activity/extract/extractPlanUtils.ts +174 -0
  574. package/src/features/activity/extract/extractRestDEXOrderDetails.ts +102 -0
  575. package/src/features/activity/extract/extractRestFiatOnRampDetails.ts +86 -0
  576. package/src/features/activity/extract/extractTransactionDetails.ts +127 -0
  577. package/src/features/activity/extract/statusMappers.ts +129 -0
  578. package/src/features/activity/formatTransactionsByDate.ts +105 -0
  579. package/src/features/activity/hooks/useActivityData.test.tsx +559 -0
  580. package/src/features/activity/hooks/useActivityData.tsx +165 -0
  581. package/src/features/activity/hooks/useFormattedTransactionDataForActivity.test.ts +331 -0
  582. package/src/features/activity/hooks/useFormattedTransactionDataForActivity.ts +300 -0
  583. package/src/features/activity/hooks/useMergeLocalAndRemoteTransactions.test.ts +563 -0
  584. package/src/features/activity/hooks/useMergeLocalAndRemoteTransactions.ts +292 -0
  585. package/src/features/activity/hooks/useNetworkFee.ts +35 -0
  586. package/src/features/activity/hooks/useOpenLimitOrders.ts +47 -0
  587. package/src/features/activity/hooks/useSyncRemotePlans.ts +59 -0
  588. package/src/features/activity/hooks/useTransactionActions.tsx +389 -0
  589. package/src/features/activity/parse/parseApproveTransaction.ts +71 -0
  590. package/src/features/activity/parse/parseAuctionTransaction.ts +72 -0
  591. package/src/features/activity/parse/parseBridgingTransaction.ts +117 -0
  592. package/src/features/activity/parse/parseExecuteTransaction.ts +112 -0
  593. package/src/features/activity/parse/parseLiquidityTransaction.ts +144 -0
  594. package/src/features/activity/parse/parseMintTransaction.ts +118 -0
  595. package/src/features/activity/parse/parseOnRampTransaction.ts +118 -0
  596. package/src/features/activity/parse/parseReceiveTransaction.ts +163 -0
  597. package/src/features/activity/parse/parseSendTransaction.ts +145 -0
  598. package/src/features/activity/parse/parseTradeTransaction.ts +406 -0
  599. package/src/features/activity/parse/parseUnknownTransaction.ts +32 -0
  600. package/src/features/activity/parseRestResponse.ts +184 -0
  601. package/src/features/activity/utils/extractDappInfo.ts +38 -0
  602. package/src/features/activity/utils/getTransactionSummaryTitle.ts +318 -0
  603. package/src/features/activity/utils/remote.ts +136 -0
  604. package/src/features/activity/utils/swapInfo.ts +49 -0
  605. package/src/features/address/avatar.ts +35 -0
  606. package/src/features/address/color.ts +35 -0
  607. package/src/features/address/types.ts +8 -0
  608. package/src/features/address/useIsSmartContractAddress.tsx +74 -0
  609. package/src/features/address/utils.ts +12 -0
  610. package/src/features/appearance/hooks.tsx +85 -0
  611. package/src/features/appearance/slice.ts +30 -0
  612. package/src/features/appearance/types.ts +1 -0
  613. package/src/features/appearance/useColorScheme.native.ts +1 -0
  614. package/src/features/appearance/useColorScheme.ts +6 -0
  615. package/src/features/appearance/useColorScheme.web.ts +87 -0
  616. package/src/features/auth/types.ts +1 -0
  617. package/src/features/behaviorHistory/selectors.ts +30 -0
  618. package/src/features/behaviorHistory/slice.ts +161 -0
  619. package/src/features/bridging/constants.ts +84 -0
  620. package/src/features/bridging/hooks/chains.ts +59 -0
  621. package/src/features/bridging/hooks/tokens.ts +224 -0
  622. package/src/features/capabilities/caip25/constants.ts +13 -0
  623. package/src/features/capabilities/caip25/types.ts +70 -0
  624. package/src/features/capabilities/caip25/utils.ts +17 -0
  625. package/src/features/chains/chainInfo.test.ts +117 -0
  626. package/src/features/chains/chainInfo.ts +141 -0
  627. package/src/features/chains/evm/defaults.ts +9 -0
  628. package/src/features/chains/evm/info/arbitrum.ts +93 -0
  629. package/src/features/chains/evm/info/avalanche.ts +91 -0
  630. package/src/features/chains/evm/info/base.ts +91 -0
  631. package/src/features/chains/evm/info/blast.ts +82 -0
  632. package/src/features/chains/evm/info/bnb.ts +81 -0
  633. package/src/features/chains/evm/info/celo.ts +86 -0
  634. package/src/features/chains/evm/info/hanzo.ts +93 -0
  635. package/src/features/chains/evm/info/lux.ts +254 -0
  636. package/src/features/chains/evm/info/mainnet.ts +203 -0
  637. package/src/features/chains/evm/info/monad.ts +90 -0
  638. package/src/features/chains/evm/info/optimism.ts +88 -0
  639. package/src/features/chains/evm/info/pars.ts +93 -0
  640. package/src/features/chains/evm/info/polygon.ts +91 -0
  641. package/src/features/chains/evm/info/soneium.ts +91 -0
  642. package/src/features/chains/evm/info/spc.ts +93 -0
  643. package/src/features/chains/evm/info/unichain.ts +146 -0
  644. package/src/features/chains/evm/info/worldchain.ts +87 -0
  645. package/src/features/chains/evm/info/xlayer.ts +81 -0
  646. package/src/features/chains/evm/info/zksync.ts +76 -0
  647. package/src/features/chains/evm/info/zoo.ts +170 -0
  648. package/src/features/chains/evm/info/zora.ts +76 -0
  649. package/src/features/chains/evm/rpc.ts +84 -0
  650. package/src/features/chains/evm/tokens.test.ts +220 -0
  651. package/src/features/chains/evm/tokens.ts +23 -0
  652. package/src/features/chains/gasDefaults.ts +37 -0
  653. package/src/features/chains/hooks/useEnabledChains.ts +55 -0
  654. package/src/features/chains/hooks/useFeatureFlaggedChainIds.ts +47 -0
  655. package/src/features/chains/hooks/useNewChainIds.ts +18 -0
  656. package/src/features/chains/hooks/useOrderedChainIds.ts +19 -0
  657. package/src/features/chains/hooks/useSupportedChainId.ts +35 -0
  658. package/src/features/chains/logos.tsx +65 -0
  659. package/src/features/chains/svm/defaults.ts +3 -0
  660. package/src/features/chains/svm/info/solana.ts +79 -0
  661. package/src/features/chains/types.ts +171 -0
  662. package/src/features/chains/utils.test.ts +224 -0
  663. package/src/features/chains/utils.ts +365 -0
  664. package/src/features/dappRequests/types.ts +87 -0
  665. package/src/features/dappRequests/utils.test.ts +81 -0
  666. package/src/features/dappRequests/utils.ts +36 -0
  667. package/src/features/dataApi/balances/balances.ts +369 -0
  668. package/src/features/dataApi/balances/balancesRest.test.ts +183 -0
  669. package/src/features/dataApi/balances/balancesRest.ts +366 -0
  670. package/src/features/dataApi/balances/toPortfolioMultichainBalance.test.ts +263 -0
  671. package/src/features/dataApi/balances/toPortfolioMultichainBalance.ts +142 -0
  672. package/src/features/dataApi/balances/utils.test.ts +64 -0
  673. package/src/features/dataApi/balances/utils.ts +44 -0
  674. package/src/features/dataApi/listTransactions/listTransactions.test.ts +182 -0
  675. package/src/features/dataApi/listTransactions/listTransactions.ts +174 -0
  676. package/src/features/dataApi/searchPools.ts +58 -0
  677. package/src/features/dataApi/searchTokens.ts +73 -0
  678. package/src/features/dataApi/tokenDetails/useTokenDetailsData.ts +94 -0
  679. package/src/features/dataApi/tokenDetails/useTokenSpotPriceCentralized.ts +9 -0
  680. package/src/features/dataApi/tokenDetails/useTokenSpotPriceWrapper.ts +13 -0
  681. package/src/features/dataApi/tokenProjects/tokenProjects.test.tsx +44 -0
  682. package/src/features/dataApi/tokenProjects/tokenProjects.ts +34 -0
  683. package/src/features/dataApi/tokenProjects/utils/tokenProjectToCurrencyInfos.test.ts +59 -0
  684. package/src/features/dataApi/tokenProjects/utils/tokenProjectToCurrencyInfos.ts +52 -0
  685. package/src/features/dataApi/types.ts +103 -0
  686. package/src/features/dataApi/utils/buildCurrency.test.ts +66 -0
  687. package/src/features/dataApi/utils/buildCurrency.ts +117 -0
  688. package/src/features/dataApi/utils/currencyIdToContractInput.test.ts +39 -0
  689. package/src/features/dataApi/utils/currencyIdToContractInput.ts +23 -0
  690. package/src/features/dataApi/utils/getCurrencySafetyInfo.ts +145 -0
  691. package/src/features/dataApi/utils/gqlTokenToCurrencyInfo.test.ts +39 -0
  692. package/src/features/dataApi/utils/gqlTokenToCurrencyInfo.ts +44 -0
  693. package/src/features/dataApi/utils/usePersistedError.test.ts +80 -0
  694. package/src/features/dataApi/utils/usePersistedError.ts +19 -0
  695. package/src/features/ens/api.ts +127 -0
  696. package/src/features/ens/constants.ts +1 -0
  697. package/src/features/ens/useENS.ts +61 -0
  698. package/src/features/favorites/selectors.ts +20 -0
  699. package/src/features/favorites/slice.test.ts +52 -0
  700. package/src/features/favorites/slice.ts +87 -0
  701. package/src/features/favorites/useSelectHasTokenFavorited.ts +12 -0
  702. package/src/features/favorites/useToggleFavoriteCallback.tsx +34 -0
  703. package/src/features/favorites/useToggleWatchedWalletCallback.ts +26 -0
  704. package/src/features/fiatCurrency/constants.ts +53 -0
  705. package/src/features/fiatCurrency/conversion.ts +172 -0
  706. package/src/features/fiatCurrency/hooks/useFormatChartFiatDelta.ts +31 -0
  707. package/src/features/fiatCurrency/hooks.ts +167 -0
  708. package/src/features/fiatCurrency/priceChart/formatters/shared/types.ts +37 -0
  709. package/src/features/fiatCurrency/priceChart/formatters/shared/utils.ts +93 -0
  710. package/src/features/fiatCurrency/priceChart/formatters/stablecoinFormatter.ts +84 -0
  711. package/src/features/fiatCurrency/priceChart/formatters/standardFormatter.ts +88 -0
  712. package/src/features/fiatCurrency/priceChart/priceChartConversion.test.ts +1203 -0
  713. package/src/features/fiatCurrency/priceChart/priceChartConversion.ts +42 -0
  714. package/src/features/fiatOnRamp/EdgeFade/EdgeFade.native.tsx +21 -0
  715. package/src/features/fiatOnRamp/EdgeFade/EdgeFade.test.tsx +62 -0
  716. package/src/features/fiatOnRamp/EdgeFade/EdgeFade.tsx +6 -0
  717. package/src/features/fiatOnRamp/EdgeFade/EdgeFade.web.tsx +21 -0
  718. package/src/features/fiatOnRamp/EdgeFade/__snapshots__/EdgeFade.test.tsx.snap +116 -0
  719. package/src/features/fiatOnRamp/FORQuoteItem.tsx +111 -0
  720. package/src/features/fiatOnRamp/FiatOnRampConnectingView.native.tsx +84 -0
  721. package/src/features/fiatOnRamp/FiatOnRampConnectingView.tsx +11 -0
  722. package/src/features/fiatOnRamp/FiatOnRampConnectingView.web.tsx +56 -0
  723. package/src/features/fiatOnRamp/FiatOnRampCountryPicker.tsx +58 -0
  724. package/src/features/fiatOnRamp/PaymentMethodFilter/PaymentMethodFilter.native.tsx +41 -0
  725. package/src/features/fiatOnRamp/PaymentMethodFilter/PaymentMethodFilter.test.tsx +165 -0
  726. package/src/features/fiatOnRamp/PaymentMethodFilter/PaymentMethodFilter.tsx +6 -0
  727. package/src/features/fiatOnRamp/PaymentMethodFilter/PaymentMethodFilter.web.tsx +51 -0
  728. package/src/features/fiatOnRamp/PaymentMethodFilter/__snapshots__/PaymentMethodFilter.test.tsx.snap +243 -0
  729. package/src/features/fiatOnRamp/PaymentMethodFilter/utils.tsx +160 -0
  730. package/src/features/fiatOnRamp/SelectTokenButton.tsx +77 -0
  731. package/src/features/fiatOnRamp/TokenSelectorBalanceDisplay.tsx +72 -0
  732. package/src/features/fiatOnRamp/UnsupportedTokenModal.tsx +45 -0
  733. package/src/features/fiatOnRamp/api.ts +7 -0
  734. package/src/features/fiatOnRamp/constants.ts +56 -0
  735. package/src/features/fiatOnRamp/hooks/useFiatOnRampQueries.ts +324 -0
  736. package/src/features/fiatOnRamp/hooks.ts +408 -0
  737. package/src/features/fiatOnRamp/types.ts +139 -0
  738. package/src/features/fiatOnRamp/useCexTransferProviders.ts +17 -0
  739. package/src/features/fiatOnRamp/utils.test.ts +483 -0
  740. package/src/features/fiatOnRamp/utils.ts +227 -0
  741. package/src/features/forceUpgrade/hooks/useForceUpgradeStatus.ts +9 -0
  742. package/src/features/forceUpgrade/hooks/useForceUpgradeTranslations.ts +14 -0
  743. package/src/features/gas/adjustGasFee.ts +144 -0
  744. package/src/features/gas/hooks/useCancellationGasFeeInfo.test.ts +170 -0
  745. package/src/features/gas/hooks/useCancellationGasFeeInfo.ts +154 -0
  746. package/src/features/gas/hooks/useMaxAmountSpend.test.ts +220 -0
  747. package/src/features/gas/hooks/useMaxAmountSpend.ts +113 -0
  748. package/src/features/gas/hooks/usePlanCancellationGasFeeInfo.ts +142 -0
  749. package/src/features/gas/hooks.ts +323 -0
  750. package/src/features/gas/utils/cancel.test.ts +239 -0
  751. package/src/features/gas/utils/cancel.ts +198 -0
  752. package/src/features/gas/utils.test.ts +74 -0
  753. package/src/features/gas/utils.ts +289 -0
  754. package/src/features/gating/StatsigProviderWrapper.tsx +71 -0
  755. package/src/features/gating/statsigBaseConfig.ts +10 -0
  756. package/src/features/gating/typeGuards.ts +23 -0
  757. package/src/features/gating/useSyncStatsigUserIdentifiers.ts +70 -0
  758. package/src/features/language/LocalizationContext.tsx +58 -0
  759. package/src/features/language/constants.ts +359 -0
  760. package/src/features/language/formatter.ts +76 -0
  761. package/src/features/language/hooks.tsx +304 -0
  762. package/src/features/language/localizedDayjs.ts +106 -0
  763. package/src/features/language/navigatorLocale.ts +49 -0
  764. package/src/features/language/utils.ts +8 -0
  765. package/src/features/nfts/constants.ts +5 -0
  766. package/src/features/nfts/hooks/useGroupNftsByVisibility.ts +58 -0
  767. package/src/features/nfts/hooks/useNFT.ts +31 -0
  768. package/src/features/nfts/hooks/useNavigateToNftExplorerLink.ts +7 -0
  769. package/src/features/nfts/hooks/useNftContextMenuItems.tsx +266 -0
  770. package/src/features/nfts/types.ts +22 -0
  771. package/src/features/nfts/utils.test.ts +257 -0
  772. package/src/features/nfts/utils.ts +128 -0
  773. package/src/features/notifications/constants.ts +20 -0
  774. package/src/features/notifications/hooks/useNotificationLifecycle.ts +81 -0
  775. package/src/features/notifications/slice/hooks.ts +18 -0
  776. package/src/features/notifications/slice/selectors.ts +46 -0
  777. package/src/features/notifications/slice/slice.ts +82 -0
  778. package/src/features/notifications/slice/types.ts +267 -0
  779. package/src/features/passkey/PasskeyManagementModal.tsx +84 -0
  780. package/src/features/passkey/PasskeysHelpModal.tsx +130 -0
  781. package/src/features/passkey/constants.ts +1 -0
  782. package/src/features/passkey/embeddedWallet.ts +431 -0
  783. package/src/features/passkey/hooks/useEmbeddedWalletBaseUrl.ts +12 -0
  784. package/src/features/passkey/hooks/useGetPasskeyAuthStatus.ts +25 -0
  785. package/src/features/passkey/passkey.native.ts +9 -0
  786. package/src/features/passkey/passkey.ts +9 -0
  787. package/src/features/passkey/passkey.web.ts +20 -0
  788. package/src/features/passkey/utils.native.ts +3 -0
  789. package/src/features/passkey/utils.ts +5 -0
  790. package/src/features/passkey/utils.web.ts +28 -0
  791. package/src/features/platforms/types/Platform.ts +4 -0
  792. package/src/features/platforms/types/PlatformSpecificAddress.ts +11 -0
  793. package/src/features/platforms/utils/addresses.ts +35 -0
  794. package/src/features/platforms/utils/chains.ts +21 -0
  795. package/src/features/portfolio/PortfolioBalance/PortfolioBalance.tsx +96 -0
  796. package/src/features/portfolio/TokenBalanceListContext.tsx +169 -0
  797. package/src/features/portfolio/api.ts +256 -0
  798. package/src/features/portfolio/balances/hooks/useTokenContextMenuOptions.ts +299 -0
  799. package/src/features/portfolio/portfolioUpdates/constants.ts +3 -0
  800. package/src/features/portfolio/portfolioUpdates/fetchOnChainBalances.test.ts +197 -0
  801. package/src/features/portfolio/portfolioUpdates/fetchOnChainBalances.ts +249 -0
  802. package/src/features/portfolio/portfolioUpdates/getCurrenciesWithExpectedUpdates.ts +82 -0
  803. package/src/features/portfolio/portfolioUpdates/getInstantTokenBalanceUpdateApolloLink.ts +343 -0
  804. package/src/features/portfolio/portfolioUpdates/refetchGQLQueriesViaOnchainOverrideVariantSaga.ts +278 -0
  805. package/src/features/portfolio/portfolioUpdates/refetchQueriesSaga.ts +15 -0
  806. package/src/features/portfolio/portfolioUpdates/rest/fetchOnChainBalancesRest.test.ts +326 -0
  807. package/src/features/portfolio/portfolioUpdates/rest/fetchOnChainBalancesRest.ts +338 -0
  808. package/src/features/portfolio/portfolioUpdates/rest/refetchRestQueriesViaOnchainOverrideVariantSaga.test.ts +322 -0
  809. package/src/features/portfolio/portfolioUpdates/rest/refetchRestQueriesViaOnchainOverrideVariantSaga.ts +308 -0
  810. package/src/features/portfolio/slice/selectors.ts +18 -0
  811. package/src/features/portfolio/slice/slice.test.ts +183 -0
  812. package/src/features/portfolio/slice/slice.ts +115 -0
  813. package/src/features/portfolio/types.ts +9 -0
  814. package/src/features/prices/TokenPriceContext.tsx +62 -0
  815. package/src/features/providers/FlashbotsCommon.ts +117 -0
  816. package/src/features/providers/FlashbotsRpcClient.test.ts +336 -0
  817. package/src/features/providers/FlashbotsRpcClient.ts +173 -0
  818. package/src/features/providers/FlashbotsRpcProvider.test.ts +90 -0
  819. package/src/features/providers/FlashbotsRpcProvider.ts +149 -0
  820. package/src/features/providers/createEthersProvider.ts +46 -0
  821. package/src/features/providers/createViemClient.ts +81 -0
  822. package/src/features/providers/getSolanaConnection.ts +8 -0
  823. package/src/features/providers/observability/InstrumentedJsonRpcProvider.ts +52 -0
  824. package/src/features/providers/observability/createObservableTransport.ts +44 -0
  825. package/src/features/providers/observability/extractProviderName.ts +43 -0
  826. package/src/features/providers/observability/rpcObserver.ts +73 -0
  827. package/src/features/providers/rpcUrlSelector.ts +81 -0
  828. package/src/features/providers/webForNudgeProvider.tsx +52 -0
  829. package/src/features/reporting/reports.ts +196 -0
  830. package/src/features/repositories.ts +28 -0
  831. package/src/features/search/ClearRecentSearchesButton.tsx +24 -0
  832. package/src/features/search/SearchHistoryResult.ts +95 -0
  833. package/src/features/search/SearchModal/SearchModalList.tsx +341 -0
  834. package/src/features/search/SearchModal/SearchModalNoQueryList.tsx +70 -0
  835. package/src/features/search/SearchModal/SearchModalResultsList.tsx +255 -0
  836. package/src/features/search/SearchModal/analytics/SearchContext.tsx +18 -0
  837. package/src/features/search/SearchModal/analytics/analytics.test.ts +228 -0
  838. package/src/features/search/SearchModal/analytics/analytics.ts +122 -0
  839. package/src/features/search/SearchModal/constants.ts +4 -0
  840. package/src/features/search/SearchModal/hooks/useFilterCallbacks.ts +70 -0
  841. package/src/features/search/SearchModal/hooks/useRecentlySearchedOptions.tsx +166 -0
  842. package/src/features/search/SearchModal/hooks/useSectionsForNoQuerySearch.tsx +159 -0
  843. package/src/features/search/SearchModal/hooks/useWalletSearchResults.tsx +169 -0
  844. package/src/features/search/SearchModal/types.ts +10 -0
  845. package/src/features/search/SearchTextInput.tsx +257 -0
  846. package/src/features/search/searchHistorySlice.test.ts +168 -0
  847. package/src/features/search/searchHistorySlice.ts +70 -0
  848. package/src/features/search/selectSearchHistory.ts +6 -0
  849. package/src/features/search/utils.ts +15 -0
  850. package/src/features/services.ts +81 -0
  851. package/src/features/settings/balances/PortfolioBalanceSettingsContent.tsx +110 -0
  852. package/src/features/settings/constants.ts +41 -0
  853. package/src/features/settings/hooks.test.ts +80 -0
  854. package/src/features/settings/hooks.ts +41 -0
  855. package/src/features/settings/saga.ts +18 -0
  856. package/src/features/settings/selectors.ts +19 -0
  857. package/src/features/settings/slice.test.ts +28 -0
  858. package/src/features/settings/slice.ts +81 -0
  859. package/src/features/settings/storage/StorageSettingsContent.test.tsx +89 -0
  860. package/src/features/settings/storage/StorageSettingsContent.tsx +253 -0
  861. package/src/features/settings/storage/__snapshots__/StorageSettingsContent.test.tsx.snap +193 -0
  862. package/src/features/settings/useHapticFeedback/types.ts +22 -0
  863. package/src/features/settings/useHapticFeedback/useHapticFeedback.native.ts +45 -0
  864. package/src/features/settings/useHapticFeedback/useHapticFeedback.ts +6 -0
  865. package/src/features/settings/useHapticFeedback/useHapticFeedback.web.ts +11 -0
  866. package/src/features/smartWallet/banner/NetworkCostBanner.tsx +38 -0
  867. package/src/features/smartWallet/delegation/createTradingApiDelegationRepository.ts +65 -0
  868. package/src/features/smartWallet/delegation/delegation.test.ts +174 -0
  869. package/src/features/smartWallet/delegation/delegation.ts +118 -0
  870. package/src/features/smartWallet/delegation/delegationRepository.ts +21 -0
  871. package/src/features/smartWallet/delegation/effects.test.ts +206 -0
  872. package/src/features/smartWallet/delegation/effects.ts +81 -0
  873. package/src/features/smartWallet/delegation/hooks/useSetActiveChainId.ts +11 -0
  874. package/src/features/smartWallet/delegation/hooks/useUpdateDelegateState.ts +10 -0
  875. package/src/features/smartWallet/delegation/isDelegatedEOA.test.ts +63 -0
  876. package/src/features/smartWallet/delegation/isDelegatedEOA.ts +37 -0
  877. package/src/features/smartWallet/delegation/slice.ts +85 -0
  878. package/src/features/smartWallet/delegation/types.ts +12 -0
  879. package/src/features/smartWallet/mismatch/MismatchAccountEffects.tsx +38 -0
  880. package/src/features/smartWallet/mismatch/MismatchContext.tsx +76 -0
  881. package/src/features/smartWallet/mismatch/hooks.ts +229 -0
  882. package/src/features/smartWallet/mismatch/mismatch.test.ts +66 -0
  883. package/src/features/smartWallet/mismatch/mismatch.ts +109 -0
  884. package/src/features/smartWallet/mismatch/queryOptions.ts +42 -0
  885. package/src/features/smartWallet/mismatch/useMakeAccountMismatchQueryOptions.ts +23 -0
  886. package/src/features/smartWallet/mismatch/useOnDisconnectEffect.native.tsx +1 -0
  887. package/src/features/smartWallet/mismatch/useOnDisconnectEffect.tsx +5 -0
  888. package/src/features/smartWallet/mismatch/useOnDisconnectEffect.web.tsx +26 -0
  889. package/src/features/telemetry/Trace.tsx +60 -0
  890. package/src/features/telemetry/constants/extension.ts +28 -0
  891. package/src/features/telemetry/constants/features.ts +78 -0
  892. package/src/features/telemetry/constants/index.ts +8 -0
  893. package/src/features/telemetry/constants/interface.ts +71 -0
  894. package/src/features/telemetry/constants/lux.ts +25 -0
  895. package/src/features/telemetry/constants/mobile.ts +36 -0
  896. package/src/features/telemetry/constants/sessions.ts +12 -0
  897. package/src/features/telemetry/constants/trace/element.ts +330 -0
  898. package/src/features/telemetry/constants/trace/index.ts +4 -0
  899. package/src/features/telemetry/constants/trace/modal.ts +234 -0
  900. package/src/features/telemetry/constants/trace/page.ts +37 -0
  901. package/src/features/telemetry/constants/trace/section.ts +42 -0
  902. package/src/features/telemetry/constants/wallet.ts +70 -0
  903. package/src/features/telemetry/send.native.ts +28 -0
  904. package/src/features/telemetry/send.ts +18 -0
  905. package/src/features/telemetry/send.web.ts +31 -0
  906. package/src/features/telemetry/types.ts +1320 -0
  907. package/src/features/telemetry/user.ts +100 -0
  908. package/src/features/telemetry/utils/logExperimentQualifyingEvent.ts +9 -0
  909. package/src/features/testnets/TestnetModeModal.tsx +47 -0
  910. package/src/features/timing/selectors.ts +3 -0
  911. package/src/features/timing/slice.ts +31 -0
  912. package/src/features/tokens/SolanaToken.test.ts +76 -0
  913. package/src/features/tokens/SolanaToken.ts +48 -0
  914. package/src/features/tokens/getCurrencyAmount.test.ts +120 -0
  915. package/src/features/tokens/getCurrencyAmount.ts +85 -0
  916. package/src/features/tokens/stablecoin.ts +29 -0
  917. package/src/features/tokens/useCurrencyInfo.ts +110 -0
  918. package/src/features/tokens/warnings/TokenWarningCard.tsx +129 -0
  919. package/src/features/tokens/warnings/TokenWarningFlagsTable.tsx +142 -0
  920. package/src/features/tokens/warnings/TokenWarningModal.tsx +403 -0
  921. package/src/features/tokens/warnings/WarningInfoModalContainer.tsx +11 -0
  922. package/src/features/tokens/warnings/hooks/useBlockaidFeeComparisonAnalytics.ts +62 -0
  923. package/src/features/tokens/warnings/hooks/useWarningModalCurrenciesDismissed.ts +60 -0
  924. package/src/features/tokens/warnings/safetyUtils.test.ts +605 -0
  925. package/src/features/tokens/warnings/safetyUtils.ts +458 -0
  926. package/src/features/tokens/warnings/slice/hooks.ts +104 -0
  927. package/src/features/tokens/warnings/slice/selectors.ts +17 -0
  928. package/src/features/tokens/warnings/slice/slice.ts +91 -0
  929. package/src/features/tokens/warnings/slice/types.ts +34 -0
  930. package/src/features/tokens/warnings/types.ts +14 -0
  931. package/src/features/transactions/TransactionDetails/EstimatedTime.tsx +29 -0
  932. package/src/features/transactions/TransactionDetails/ExpectedFailureBanner.tsx +45 -0
  933. package/src/features/transactions/TransactionDetails/ExpectedSpeed.tsx +19 -0
  934. package/src/features/transactions/TransactionDetails/FeeOnTransferFee.tsx +50 -0
  935. package/src/features/transactions/TransactionDetails/ListSeparatorToggle.tsx +41 -0
  936. package/src/features/transactions/TransactionDetails/SlippageEdit.tsx +50 -0
  937. package/src/features/transactions/TransactionDetails/SwapFee.tsx +115 -0
  938. package/src/features/transactions/TransactionDetails/SwapReviewTokenWarningCard.tsx +77 -0
  939. package/src/features/transactions/TransactionDetails/TransactionDetails.tsx +200 -0
  940. package/src/features/transactions/TransactionDetails/TransactionWarning.tsx +19 -0
  941. package/src/features/transactions/TransactionDetails/UnichainPoweredMessage.tsx +27 -0
  942. package/src/features/transactions/TransactionDetails/UserReceiveAmount.tsx +33 -0
  943. package/src/features/transactions/TransactionDetails/modals/FeeOnTransferWarning.tsx +104 -0
  944. package/src/features/transactions/TransactionDetails/modals/SwapFeeWarning.tsx +72 -0
  945. package/src/features/transactions/TransactionDetails/types.ts +25 -0
  946. package/src/features/transactions/TransactionDetails/utils/getFeeSeverity.ts +41 -0
  947. package/src/features/transactions/TransactionDetails/utils/getRelevantTokenWarningSeverity.ts +22 -0
  948. package/src/features/transactions/TransactionDetails/utils/getShouldDisplayTokenWarningCard.ts +63 -0
  949. package/src/features/transactions/cancel/cancelMultipleOrders.test.ts +386 -0
  950. package/src/features/transactions/cancel/cancelMultipleOrders.ts +226 -0
  951. package/src/features/transactions/cancel/cancelOrderFactory.test.ts +327 -0
  952. package/src/features/transactions/cancel/cancelOrderFactory.ts +161 -0
  953. package/src/features/transactions/cancel/getCancelOrderTxRequest.ts +39 -0
  954. package/src/features/transactions/cancel/validation.test.ts +99 -0
  955. package/src/features/transactions/cancel/validation.ts +57 -0
  956. package/src/features/transactions/components/DecimalPadInput/DecimalPad.native.tsx +306 -0
  957. package/src/features/transactions/components/DecimalPadInput/DecimalPad.tsx +7 -0
  958. package/src/features/transactions/components/DecimalPadInput/DecimalPad.web.tsx +7 -0
  959. package/src/features/transactions/components/DecimalPadInput/DecimalPadInput.tsx +386 -0
  960. package/src/features/transactions/components/DecimalPadInput/types.ts +18 -0
  961. package/src/features/transactions/components/InsufficientNativeTokenWarning/BridgeTokenButton.tsx +65 -0
  962. package/src/features/transactions/components/InsufficientNativeTokenWarning/BuyNativeTokenButton.tsx +72 -0
  963. package/src/features/transactions/components/InsufficientNativeTokenWarning/InsufficientNativeTokenBaseComponent.tsx +91 -0
  964. package/src/features/transactions/components/InsufficientNativeTokenWarning/InsufficientNativeTokenWarning.tsx +165 -0
  965. package/src/features/transactions/components/InsufficientNativeTokenWarning/constants.ts +3 -0
  966. package/src/features/transactions/components/InsufficientNativeTokenWarning/useInsufficientNativeTokenWarning.tsx +176 -0
  967. package/src/features/transactions/components/TransactionModal/TransactionModal.native.tsx +207 -0
  968. package/src/features/transactions/components/TransactionModal/TransactionModal.tsx +17 -0
  969. package/src/features/transactions/components/TransactionModal/TransactionModal.web.tsx +59 -0
  970. package/src/features/transactions/components/TransactionModal/TransactionModalContext.tsx +108 -0
  971. package/src/features/transactions/components/TransactionModal/TransactionModalProps.tsx +23 -0
  972. package/src/features/transactions/components/TransactionModal/TransactionModalUpdateLogger.tsx +17 -0
  973. package/src/features/transactions/components/cancel/CancelConfirmationView.tsx +178 -0
  974. package/src/features/transactions/components/settings/TransactionSettings.tsx +138 -0
  975. package/src/features/transactions/components/settings/TransactionSettingsButton.tsx +96 -0
  976. package/src/features/transactions/components/settings/TransactionSettingsButtonWithSlippage.tsx +84 -0
  977. package/src/features/transactions/components/settings/TransactionSettingsModal/TransactionSettingsModal.tsx +11 -0
  978. package/src/features/transactions/components/settings/TransactionSettingsModal/TransactionSettingsModalContent/TransactionSettingsModalContent.tsx +144 -0
  979. package/src/features/transactions/components/settings/TransactionSettingsModal/TransactionSettingsModalContent/TransactionSettingsRow.tsx +91 -0
  980. package/src/features/transactions/components/settings/TransactionSettingsModal/TransactionSettingsModalInterface.tsx +47 -0
  981. package/src/features/transactions/components/settings/TransactionSettingsModal/TransactionSettingsModalWallet.tsx +45 -0
  982. package/src/features/transactions/components/settings/TransactionSettingsModal/types.ts +9 -0
  983. package/src/features/transactions/components/settings/ViewOnlyButton.tsx +29 -0
  984. package/src/features/transactions/components/settings/hooks/useTransactionSettingsWithSlippage.ts +64 -0
  985. package/src/features/transactions/components/settings/settingsConfigurations/deadline/Deadline/Deadline.native.tsx +16 -0
  986. package/src/features/transactions/components/settings/settingsConfigurations/deadline/Deadline/Deadline.tsx +18 -0
  987. package/src/features/transactions/components/settings/settingsConfigurations/deadline/Deadline/Deadline.web.tsx +26 -0
  988. package/src/features/transactions/components/settings/settingsConfigurations/deadline/DeadlineControl.tsx +83 -0
  989. package/src/features/transactions/components/settings/settingsConfigurations/deadline/DeadlineWarning.tsx +19 -0
  990. package/src/features/transactions/components/settings/settingsConfigurations/deadline/useDeadlineSettings.ts +95 -0
  991. package/src/features/transactions/components/settings/settingsConfigurations/slippage/Slippage/Slippage.native.tsx +15 -0
  992. package/src/features/transactions/components/settings/settingsConfigurations/slippage/Slippage/Slippage.tsx +18 -0
  993. package/src/features/transactions/components/settings/settingsConfigurations/slippage/Slippage/Slippage.web.tsx +27 -0
  994. package/src/features/transactions/components/settings/settingsConfigurations/slippage/SlippageControl/SlippageControl.native.tsx +30 -0
  995. package/src/features/transactions/components/settings/settingsConfigurations/slippage/SlippageControl/SlippageControl.tsx +10 -0
  996. package/src/features/transactions/components/settings/settingsConfigurations/slippage/SlippageControl/SlippageControl.web.tsx +165 -0
  997. package/src/features/transactions/components/settings/settingsConfigurations/slippage/SlippageControl/types.ts +3 -0
  998. package/src/features/transactions/components/settings/settingsConfigurations/slippage/SlippageWarning.tsx +31 -0
  999. package/src/features/transactions/components/settings/settingsConfigurations/slippage/useSlippageSettings.ts +220 -0
  1000. package/src/features/transactions/components/settings/stores/TransactionSettingsModalStore/TransactionSettingsModalStoreContext.tsx +10 -0
  1001. package/src/features/transactions/components/settings/stores/TransactionSettingsModalStore/TransactionSettingsModalStoreContextProvider.tsx +28 -0
  1002. package/src/features/transactions/components/settings/stores/TransactionSettingsModalStore/createTransactionSettingsModalStore.ts +106 -0
  1003. package/src/features/transactions/components/settings/stores/TransactionSettingsModalStore/useTransactionSettingsModalStore.ts +50 -0
  1004. package/src/features/transactions/components/settings/stores/transactionSettingsStore/LPTransactionSettingsStoreContextProvider.tsx +15 -0
  1005. package/src/features/transactions/components/settings/stores/transactionSettingsStore/SwapTransactionSettingsStoreContextProvider.tsx +6 -0
  1006. package/src/features/transactions/components/settings/stores/transactionSettingsStore/TransactionSettingsStoreContext.ts +22 -0
  1007. package/src/features/transactions/components/settings/stores/transactionSettingsStore/TransactionSettingsStoreContextProvider.tsx +49 -0
  1008. package/src/features/transactions/components/settings/stores/transactionSettingsStore/createTransactionSettingsAutoSlippageToleranceStore.tsx +37 -0
  1009. package/src/features/transactions/components/settings/stores/transactionSettingsStore/createTransactionSettingsStore.test.ts +28 -0
  1010. package/src/features/transactions/components/settings/stores/transactionSettingsStore/createTransactionSettingsStore.ts +80 -0
  1011. package/src/features/transactions/components/settings/stores/transactionSettingsStore/useTransactionSettingsStore.ts +79 -0
  1012. package/src/features/transactions/components/settings/types.ts +42 -0
  1013. package/src/features/transactions/components/settings/utils.ts +31 -0
  1014. package/src/features/transactions/errors.ts +308 -0
  1015. package/src/features/transactions/hooks/useErroredQueuedOrder.ts +52 -0
  1016. package/src/features/transactions/hooks/useGetCanSignPermits.ts +14 -0
  1017. package/src/features/transactions/hooks/useGetSwapDelegationAddress.ts +16 -0
  1018. package/src/features/transactions/hooks/useIsCancelable.ts +130 -0
  1019. package/src/features/transactions/hooks/useIsQueuedTransaction.ts +44 -0
  1020. package/src/features/transactions/hooks/useParsedTransactionWarnings.tsx +98 -0
  1021. package/src/features/transactions/hooks/usePendingTransactions.ts +45 -0
  1022. package/src/features/transactions/hooks/usePollingIntervalByChain.ts +27 -0
  1023. package/src/features/transactions/hooks/useSelectTransaction.tsx +22 -0
  1024. package/src/features/transactions/hooks/useSuccessfulSwapCompleted.ts +59 -0
  1025. package/src/features/transactions/hooks/useTokenAndFiatDisplayAmounts.tsx +82 -0
  1026. package/src/features/transactions/hooks/useUSDCPrice.ts +125 -0
  1027. package/src/features/transactions/hooks/useUSDCPriceCentralized.ts +77 -0
  1028. package/src/features/transactions/hooks/useUSDCPriceWrapper.ts +34 -0
  1029. package/src/features/transactions/hooks/useUSDTokenUpdater.ts +77 -0
  1030. package/src/features/transactions/liquidity/steps/collectFees.ts +13 -0
  1031. package/src/features/transactions/liquidity/steps/collectFeesSteps.ts +11 -0
  1032. package/src/features/transactions/liquidity/steps/collectIncentiveRewards.ts +5 -0
  1033. package/src/features/transactions/liquidity/steps/collectIncentiveRewardsSteps.ts +3 -0
  1034. package/src/features/transactions/liquidity/steps/decreaseLiquiditySteps.ts +21 -0
  1035. package/src/features/transactions/liquidity/steps/decreasePosition.ts +19 -0
  1036. package/src/features/transactions/liquidity/steps/generateLPTransactionSteps.test.ts +362 -0
  1037. package/src/features/transactions/liquidity/steps/generateLPTransactionSteps.ts +178 -0
  1038. package/src/features/transactions/liquidity/steps/increaseLiquiditySteps.ts +81 -0
  1039. package/src/features/transactions/liquidity/steps/increasePosition.ts +206 -0
  1040. package/src/features/transactions/liquidity/steps/migrate.ts +72 -0
  1041. package/src/features/transactions/liquidity/steps/migrationSteps.ts +48 -0
  1042. package/src/features/transactions/liquidity/types.ts +187 -0
  1043. package/src/features/transactions/liquidity/utils.ts +87 -0
  1044. package/src/features/transactions/modals/BlockedAddressModal.tsx +20 -0
  1045. package/src/features/transactions/modals/BlockedAddressWarning.tsx +33 -0
  1046. package/src/features/transactions/modals/CompatibleAddressModal.tsx +91 -0
  1047. package/src/features/transactions/modals/HiddenTokenInfoModal.tsx +39 -0
  1048. package/src/features/transactions/modals/LowNativeBalanceModal.tsx +62 -0
  1049. package/src/features/transactions/modals/MaxBalanceInfoModal.tsx +72 -0
  1050. package/src/features/transactions/modals/ViewOnlyModal.tsx +28 -0
  1051. package/src/features/transactions/selectors.ts +315 -0
  1052. package/src/features/transactions/send/types.ts +18 -0
  1053. package/src/features/transactions/signing.ts +29 -0
  1054. package/src/features/transactions/slice.test.ts +959 -0
  1055. package/src/features/transactions/slice.ts +370 -0
  1056. package/src/features/transactions/steps/approve.ts +31 -0
  1057. package/src/features/transactions/steps/permit2Signature.ts +17 -0
  1058. package/src/features/transactions/steps/permit2Transaction.ts +34 -0
  1059. package/src/features/transactions/steps/revoke.ts +30 -0
  1060. package/src/features/transactions/steps/types.ts +154 -0
  1061. package/src/features/transactions/steps/wrap.ts +17 -0
  1062. package/src/features/transactions/swap/SwapFlow/CurrentScreen.native.tsx +70 -0
  1063. package/src/features/transactions/swap/SwapFlow/CurrentScreen.tsx +10 -0
  1064. package/src/features/transactions/swap/SwapFlow/CurrentScreen.web.tsx +60 -0
  1065. package/src/features/transactions/swap/SwapFlow/SwapFlow.tsx +84 -0
  1066. package/src/features/transactions/swap/analytics.test.ts +183 -0
  1067. package/src/features/transactions/swap/analytics.ts +585 -0
  1068. package/src/features/transactions/swap/components/AcrossRoutingInfo.tsx +91 -0
  1069. package/src/features/transactions/swap/components/BridgingCurrencyRow.tsx +53 -0
  1070. package/src/features/transactions/swap/components/CrossChainCurrencyRow.tsx +53 -0
  1071. package/src/features/transactions/swap/components/EstimatedBridgeTime.tsx +66 -0
  1072. package/src/features/transactions/swap/components/MaxSlippageRow/MaxSlippageRow.tsx +81 -0
  1073. package/src/features/transactions/swap/components/MaxSlippageRow/SlippageInfo/SlippageInfo.tsx +81 -0
  1074. package/src/features/transactions/swap/components/MaxSlippageRow/SlippageInfo/SlippageInfoCaption.tsx +116 -0
  1075. package/src/features/transactions/swap/components/MaxSlippageRow/SlippageInfo/types.ts +8 -0
  1076. package/src/features/transactions/swap/components/MaxSlippageRow/SlippageInfo/useFormatSlippageAmount.ts +26 -0
  1077. package/src/features/transactions/swap/components/PriceImpactRow/MarketPriceImpactWarning.tsx +84 -0
  1078. package/src/features/transactions/swap/components/PriceImpactRow/PriceImpactRow.tsx +45 -0
  1079. package/src/features/transactions/swap/components/PriceImpactRow/usePriceImpact.test.ts +93 -0
  1080. package/src/features/transactions/swap/components/PriceImpactRow/usePriceImpact.ts +26 -0
  1081. package/src/features/transactions/swap/components/README.md +24 -0
  1082. package/src/features/transactions/swap/components/RoutingInfo/AcrossRoutingInfo.tsx +91 -0
  1083. package/src/features/transactions/swap/components/RoutingInfo/ChainedRoutingInfo.tsx +142 -0
  1084. package/src/features/transactions/swap/components/RoutingInfo/RoutingHopInfo.tsx +120 -0
  1085. package/src/features/transactions/swap/components/RoutingInfo/RoutingInfo.tsx +30 -0
  1086. package/src/features/transactions/swap/components/RoutingInfo.tsx +120 -0
  1087. package/src/features/transactions/swap/components/SwapArrowButton.tsx +43 -0
  1088. package/src/features/transactions/swap/components/SwapFormButton/SwapFormButton.tsx +70 -0
  1089. package/src/features/transactions/swap/components/SwapFormButton/SwapFormButtonTrace.tsx +38 -0
  1090. package/src/features/transactions/swap/components/SwapFormButton/hooks/useBridgingModalActions.ts +28 -0
  1091. package/src/features/transactions/swap/components/SwapFormButton/hooks/useCurrenciesWithBridgingWarnings.ts +36 -0
  1092. package/src/features/transactions/swap/components/SwapFormButton/hooks/useCurrenciesWithProtectionWarnings.ts +38 -0
  1093. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsAmountSelectionInvalid.ts +11 -0
  1094. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsBlockingWithCustomMessage.ts +19 -0
  1095. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsMissingPlatformWallet.ts +12 -0
  1096. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsPortfolioZero.ts +10 -0
  1097. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsSwapButtonDisabled.ts +66 -0
  1098. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsTokenSelectionInvalid.ts +10 -0
  1099. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsTradeIndicative.ts +12 -0
  1100. package/src/features/transactions/swap/components/SwapFormButton/hooks/useIsWrongWalletPlatform.ts +15 -0
  1101. package/src/features/transactions/swap/components/SwapFormButton/hooks/useOnReviewPress.ts +99 -0
  1102. package/src/features/transactions/swap/components/SwapFormButton/hooks/useSwapFormButtonColors.ts +76 -0
  1103. package/src/features/transactions/swap/components/SwapFormButton/hooks/useSwapFormButtonHooks.test.ts +620 -0
  1104. package/src/features/transactions/swap/components/SwapFormButton/hooks/useSwapFormButtonText.ts +90 -0
  1105. package/src/features/transactions/swap/components/SwapFormSettings/SlippageWarningModal.tsx +50 -0
  1106. package/src/features/transactions/swap/components/SwapFormSettings/SwapFormSettings.tsx +92 -0
  1107. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/RoutingMethodPreference/RoutingMethodPreference.tsx +15 -0
  1108. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/RoutingMethodPreference/RoutingMethodPreferenceControl.tsx +28 -0
  1109. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/RoutingMethodPreference/RoutingMethodPreferenceScreen.tsx +89 -0
  1110. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/TradeRoutingPreference/DEXInfo.tsx +55 -0
  1111. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/TradeRoutingPreference/TradeRoutingPreference.tsx +15 -0
  1112. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/TradeRoutingPreference/TradeRoutingPreferenceControl.tsx +39 -0
  1113. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/TradeRoutingPreference/TradeRoutingPreferenceScreen.tsx +473 -0
  1114. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/TradeRoutingPreference/V4HooksInfo.tsx +43 -0
  1115. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/TradeRoutingPreference/isDefaultTradeRouteOptions.ts +17 -0
  1116. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippage/Slippage/Slippage.native.tsx +19 -0
  1117. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippage/Slippage/Slippage.tsx +21 -0
  1118. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippage/Slippage/Slippage.web.tsx +10 -0
  1119. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippage/SlippageControl/SlippageControl.native.tsx +11 -0
  1120. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippage/SlippageControl/SlippageControl.tsx +9 -0
  1121. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippage/SlippageControl/SlippageControl.web.tsx +11 -0
  1122. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippage/SlippageScreenNative.tsx +203 -0
  1123. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippageUpdate/SlippageUpdate.native.tsx +7 -0
  1124. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippageUpdate/SlippageUpdate.tsx +11 -0
  1125. package/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/slippageUpdate/SlippageUpdate.web.tsx +11 -0
  1126. package/src/features/transactions/swap/components/SwapRateRatio.tsx +77 -0
  1127. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/AnimatedTokenFlip.native.tsx +121 -0
  1128. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/AnimatedTokenFlip.tsx +16 -0
  1129. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/AnimatedTokenFlip.web.tsx +136 -0
  1130. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/FlashblocksConfirmButton.tsx +104 -0
  1131. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/GradientContainer.native.tsx +120 -0
  1132. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/GradientContainer.tsx +11 -0
  1133. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/GradientContainer.web.tsx +128 -0
  1134. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/StyledTokenLogo.tsx +32 -0
  1135. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/UnichainInstantBalanceModal.tsx +150 -0
  1136. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/constants.ts +28 -0
  1137. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/getOutputAmountFromSwapLogAndFormData.ts/constants.ts +40 -0
  1138. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/getOutputAmountFromSwapLogAndFormData.ts/getOutputAmountFromSwapLogAndFormData.ts +137 -0
  1139. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/getOutputAmountFromSwapLogAndFormData.ts/utils.ts +181 -0
  1140. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/receiptFetching/useFetchReceipt.ts +95 -0
  1141. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/receiptFetching/useReceiptFailureHandler.ts +57 -0
  1142. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/receiptFetching/useReceiptSuccessHandler.ts +207 -0
  1143. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/receiptFetching/utils.ts +125 -0
  1144. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/useActualCompletionTime.tsx +48 -0
  1145. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/useActualSwapOutput.tsx +70 -0
  1146. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/useBackgroundColor.tsx +9 -0
  1147. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/useClearFlashblocksSwapNotifications.ts +51 -0
  1148. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/useCurrentFlashblocksTransaction.tsx +29 -0
  1149. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/hooks/useInstantReceiptOutput.tsx +83 -0
  1150. package/src/features/transactions/swap/components/UnichainInstantBalanceModal/utils.ts +91 -0
  1151. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormCurrencyInputPanel.tsx +103 -0
  1152. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormCurrencyOutputPanel.tsx +106 -0
  1153. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormDecimalPad/SwapFormDecimalPad.native.tsx +264 -0
  1154. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormDecimalPad/SwapFormDecimalPad.tsx +5 -0
  1155. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormDecimalPad/SwapFormDecimalPad.web.tsx +3 -0
  1156. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormHeader/SwapFormHeader.native.tsx +23 -0
  1157. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormHeader/SwapFormHeader.tsx +5 -0
  1158. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormHeader/SwapFormHeader.web.tsx +38 -0
  1159. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreen.tsx +118 -0
  1160. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/ExpandableRows.tsx +101 -0
  1161. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenDetails.native.tsx +12 -0
  1162. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenDetails.tsx +5 -0
  1163. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenDetails.web.tsx +39 -0
  1164. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/ExactOutputUnavailableWarningRow.tsx +57 -0
  1165. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/GasAndWarningRows.native.tsx +183 -0
  1166. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/GasAndWarningRows.tsx +5 -0
  1167. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/GasAndWarningRows.web.tsx +60 -0
  1168. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/SwapWarningModal.tsx +46 -0
  1169. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/TradeInfoRow/CanonicalBridgeLinkBanner.tsx +29 -0
  1170. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/TradeInfoRow/GasInfoRow.test.tsx +152 -0
  1171. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/TradeInfoRow/GasInfoRow.tsx +68 -0
  1172. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/TradeInfoRow/TradeInfoRow.tsx +92 -0
  1173. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/TradeInfoRow/TradeWarning.tsx +40 -0
  1174. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/TradeInfoRow/useDebouncedTrade.ts +21 -0
  1175. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/types.ts +11 -0
  1176. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/GasAndWarningRows/useDebouncedGasInfo.ts +70 -0
  1177. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormScreenDetails/SwapFormScreenFooter/SwapFormScreenFooter.tsx +65 -0
  1178. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormTooltips/AcrossRoutingTooltip.tsx +12 -0
  1179. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormTooltips/BestRouteTooltip.tsx +82 -0
  1180. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormTooltips/FeeDetailsTooltip.tsx +67 -0
  1181. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormTooltips/LargePriceDifferenceTooltip.tsx +17 -0
  1182. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormTooltips/MaxSlippageTooltip.tsx +144 -0
  1183. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormTooltips/YouReceiveDetailsTooltip.tsx +96 -0
  1184. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormWarningModals/BridgingModal.tsx +86 -0
  1185. package/src/features/transactions/swap/form/SwapFormScreen/SwapFormWarningModals/SwapFormWarningModals.tsx +113 -0
  1186. package/src/features/transactions/swap/form/SwapFormScreen/SwapTokenSelector/SwapTokenSelector.tsx +60 -0
  1187. package/src/features/transactions/swap/form/SwapFormScreen/SwapTokenSelector/hooks/useChainId.ts +36 -0
  1188. package/src/features/transactions/swap/form/SwapFormScreen/SwapTokenSelector/hooks/useHideTokenSelector.ts +21 -0
  1189. package/src/features/transactions/swap/form/SwapFormScreen/SwitchCurrenciesButton.tsx +63 -0
  1190. package/src/features/transactions/swap/form/SwapFormScreen/WalletRestoreButton.tsx +41 -0
  1191. package/src/features/transactions/swap/form/SwapFormScreen/YouReceiveDetails/SwapDetailsRow.tsx +169 -0
  1192. package/src/features/transactions/swap/form/SwapFormScreen/YouReceiveDetails/YouReceiveDetails.native.tsx +5 -0
  1193. package/src/features/transactions/swap/form/SwapFormScreen/YouReceiveDetails/YouReceiveDetails.tsx +12 -0
  1194. package/src/features/transactions/swap/form/SwapFormScreen/YouReceiveDetails/YouReceiveDetails.web.tsx +413 -0
  1195. package/src/features/transactions/swap/form/SwapFormScreen/hooks/useCurrencyInputFocusedStyle.ts +19 -0
  1196. package/src/features/transactions/swap/form/hooks/useDecimalPadControlledField.ts +15 -0
  1197. package/src/features/transactions/swap/form/hooks/useOnSelectCurrency.ts +245 -0
  1198. package/src/features/transactions/swap/form/hooks/useSwapNetworkChangeEffect.test.ts +91 -0
  1199. package/src/features/transactions/swap/form/hooks/useSwapPrefilledState.ts +118 -0
  1200. package/src/features/transactions/swap/form/hooks/useSyncFiatAndTokenAmountUpdater.test.tsx +226 -0
  1201. package/src/features/transactions/swap/form/hooks/useSyncFiatAndTokenAmountUpdater.tsx +84 -0
  1202. package/src/features/transactions/swap/form/stores/swapFormScreenStore/SwapFormScreenStoreContext.ts +4 -0
  1203. package/src/features/transactions/swap/form/stores/swapFormScreenStore/SwapFormScreenStoreContextProvider.tsx +268 -0
  1204. package/src/features/transactions/swap/form/stores/swapFormScreenStore/createSwapFormScreenStore.ts +83 -0
  1205. package/src/features/transactions/swap/form/stores/swapFormScreenStore/devUtils.ts +65 -0
  1206. package/src/features/transactions/swap/form/stores/swapFormScreenStore/hooks/useChainIdsChangeEffect.test.ts +227 -0
  1207. package/src/features/transactions/swap/form/stores/swapFormScreenStore/hooks/useChainIdsChangeEffect.ts +82 -0
  1208. package/src/features/transactions/swap/form/stores/swapFormScreenStore/hooks/useSwapNetworkChangeEffect.ts +53 -0
  1209. package/src/features/transactions/swap/form/stores/swapFormScreenStore/hooks/useTemporaryExactOutputUnavailableWarning.ts +44 -0
  1210. package/src/features/transactions/swap/form/stores/swapFormScreenStore/hooks/useUpdateSwapFormOnMountIfExactOutputWillFail.ts +17 -0
  1211. package/src/features/transactions/swap/form/stores/swapFormScreenStore/useSwapFormScreenCallbacks.test.ts +178 -0
  1212. package/src/features/transactions/swap/form/stores/swapFormScreenStore/useSwapFormScreenCallbacks.ts +267 -0
  1213. package/src/features/transactions/swap/form/stores/swapFormScreenStore/useSwapFormScreenStore.ts +23 -0
  1214. package/src/features/transactions/swap/form/stores/swapFormWarningStore/SwapFormWarningStoreContext.ts +4 -0
  1215. package/src/features/transactions/swap/form/stores/swapFormWarningStore/SwapFormWarningStoreContextProvider.tsx +9 -0
  1216. package/src/features/transactions/swap/form/stores/swapFormWarningStore/createSwapFormWarningStore.ts +57 -0
  1217. package/src/features/transactions/swap/form/stores/swapFormWarningStore/useSwapFormWarningStore.ts +30 -0
  1218. package/src/features/transactions/swap/form/utils.test.ts +73 -0
  1219. package/src/features/transactions/swap/form/utils.ts +17 -0
  1220. package/src/features/transactions/swap/hooks/useEthAsErc20DEXQualifyingEvent.ts +244 -0
  1221. package/src/features/transactions/swap/hooks/useFeeOnTransferAmount.ts +76 -0
  1222. package/src/features/transactions/swap/hooks/useIsUnichainFlashblocksEnabled.ts +135 -0
  1223. package/src/features/transactions/swap/hooks/useMostRecentSwapTx.ts +15 -0
  1224. package/src/features/transactions/swap/hooks/useNeedsBridgedAssetWarning.ts +71 -0
  1225. package/src/features/transactions/swap/hooks/usePriceDifference.test.ts +127 -0
  1226. package/src/features/transactions/swap/hooks/usePriceDifference.ts +55 -0
  1227. package/src/features/transactions/swap/hooks/usePriceUXEnabled.ts +11 -0
  1228. package/src/features/transactions/swap/hooks/useSwapWarnings/getBalanceWarning.test.ts +96 -0
  1229. package/src/features/transactions/swap/hooks/useSwapWarnings/getBalanceWarning.ts +39 -0
  1230. package/src/features/transactions/swap/hooks/useSwapWarnings/getFormIncompleteWarning.test.ts +127 -0
  1231. package/src/features/transactions/swap/hooks/useSwapWarnings/getFormIncompleteWarning.ts +26 -0
  1232. package/src/features/transactions/swap/hooks/useSwapWarnings/getPriceImpactWarning.test.ts +94 -0
  1233. package/src/features/transactions/swap/hooks/useSwapWarnings/getPriceImpactWarning.ts +51 -0
  1234. package/src/features/transactions/swap/hooks/useSwapWarnings/getSwapWarningFromError.ts +73 -0
  1235. package/src/features/transactions/swap/hooks/useSwapWarnings/getTokenBlockedWarning.test.ts +126 -0
  1236. package/src/features/transactions/swap/hooks/useSwapWarnings/getTokenBlockedWarning.ts +30 -0
  1237. package/src/features/transactions/swap/hooks/useSwapWarnings/useNeedsBridgingWarning.ts +10 -0
  1238. package/src/features/transactions/swap/hooks/useSwapWarnings/useNeedsLowNativeBalanceWarning.ts +18 -0
  1239. package/src/features/transactions/swap/hooks/useSwapWarnings/useParsedActivePlanWarnings.test.ts +255 -0
  1240. package/src/features/transactions/swap/hooks/useSwapWarnings/useParsedActivePlanWarnings.ts +234 -0
  1241. package/src/features/transactions/swap/hooks/useSwapWarnings/usePrefilledNeedsTokenProtectionWarning.ts +87 -0
  1242. package/src/features/transactions/swap/hooks/useSwapWarnings/useSwapWarnings.test.ts +168 -0
  1243. package/src/features/transactions/swap/hooks/useSwapWarnings/useSwapWarnings.tsx +132 -0
  1244. package/src/features/transactions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts +72 -0
  1245. package/src/features/transactions/swap/hooks/useTrade/logging.ts +142 -0
  1246. package/src/features/transactions/swap/hooks/useTrade/parseQuoteCurrencies.ts +39 -0
  1247. package/src/features/transactions/swap/hooks/useTrade/useIndicativeTradeQuery.ts +20 -0
  1248. package/src/features/transactions/swap/hooks/useTrade/useIndicativeTradeServiceQueryOptions.ts +36 -0
  1249. package/src/features/transactions/swap/hooks/useTrade/useTradeQuery.ts +46 -0
  1250. package/src/features/transactions/swap/hooks/useTrade/useTradeServiceQueryOptions.ts +39 -0
  1251. package/src/features/transactions/swap/hooks/useTrade.ts +81 -0
  1252. package/src/features/transactions/swap/hooks/useTradeFromExistingPlan.ts +104 -0
  1253. package/src/features/transactions/swap/hooks/useV4SwapEnabled.ts +25 -0
  1254. package/src/features/transactions/swap/orders.ts +6 -0
  1255. package/src/features/transactions/swap/plan/intermediaryState/useCanResumePlan.ts +53 -0
  1256. package/src/features/transactions/swap/plan/intermediaryState/useIntermediaryPlanState.ts +90 -0
  1257. package/src/features/transactions/swap/plan/intermediaryState/useIntermediaryPlanStateDescriptor.ts +73 -0
  1258. package/src/features/transactions/swap/plan/intermediaryState/useResumePlanMutation.ts +112 -0
  1259. package/src/features/transactions/swap/plan/planPollingUtils.ts +197 -0
  1260. package/src/features/transactions/swap/plan/planSaga.test.ts +526 -0
  1261. package/src/features/transactions/swap/plan/planSaga.ts +600 -0
  1262. package/src/features/transactions/swap/plan/planSagaUtils.ts +399 -0
  1263. package/src/features/transactions/swap/plan/planStepAnalytics.ts +127 -0
  1264. package/src/features/transactions/swap/plan/planStepTransformer.ts +95 -0
  1265. package/src/features/transactions/swap/plan/planWatcherSaga.ts +150 -0
  1266. package/src/features/transactions/swap/plan/prefetchedPlanStore.ts +86 -0
  1267. package/src/features/transactions/swap/plan/priceChangeDetection.test.ts +146 -0
  1268. package/src/features/transactions/swap/plan/slippage.test.ts +124 -0
  1269. package/src/features/transactions/swap/plan/slippage.ts +36 -0
  1270. package/src/features/transactions/swap/plan/types.ts +158 -0
  1271. package/src/features/transactions/swap/plan/utils.test.ts +97 -0
  1272. package/src/features/transactions/swap/plan/utils.ts +271 -0
  1273. package/src/features/transactions/swap/plan/watchPlanStepSaga.ts +146 -0
  1274. package/src/features/transactions/swap/review/SwapDetails/AcceptNewQuoteRow.tsx +101 -0
  1275. package/src/features/transactions/swap/review/SwapDetails/MarketPriceImpactWarningModal.tsx +84 -0
  1276. package/src/features/transactions/swap/review/SwapDetails/SwapDetails.tsx +164 -0
  1277. package/src/features/transactions/swap/review/SwapReviewScreen/SwapErrorScreen.tsx +104 -0
  1278. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewFooter/DelayedSubmissionText.tsx +33 -0
  1279. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewFooter/PendingSwapButton.native.tsx +163 -0
  1280. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewFooter/PendingSwapButton.tsx +16 -0
  1281. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewFooter/PendingSwapButton.web.tsx +160 -0
  1282. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewFooter/SubmitSwapButton.tsx +268 -0
  1283. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewFooter/SwapReviewFooter.tsx +143 -0
  1284. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewLoadingView.tsx +17 -0
  1285. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewScreen.tsx +189 -0
  1286. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewSwapDetails.tsx +80 -0
  1287. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewWarningModal.tsx +40 -0
  1288. package/src/features/transactions/swap/review/SwapReviewScreen/SwapReviewWrapTransactionDetails.tsx +39 -0
  1289. package/src/features/transactions/swap/review/SwapReviewScreen/TransactionAmountsReview.tsx +219 -0
  1290. package/src/features/transactions/swap/review/hooks/useAcceptedTrade.ts +66 -0
  1291. package/src/features/transactions/swap/review/hooks/useActivePlanStatus.ts +31 -0
  1292. package/src/features/transactions/swap/review/hooks/useCreateSwapReviewCallbacks.tsx +271 -0
  1293. package/src/features/transactions/swap/review/hooks/usePrepareSwapTransactionEffect.ts +41 -0
  1294. package/src/features/transactions/swap/review/hooks/useSwapOnPrevious.tsx +45 -0
  1295. package/src/features/transactions/swap/review/hooks/useTokenApprovalInfo.test.ts +176 -0
  1296. package/src/features/transactions/swap/review/hooks/useTokenApprovalInfo.ts +190 -0
  1297. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/bridge/bridgeSwapTxAndGasInfoService.ts +25 -0
  1298. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/chained/chainedActionTxSwapAndGasInfoService.ts +114 -0
  1299. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/classic/classicSwapTxAndGasInfoService.ts +30 -0
  1300. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/constants.ts +18 -0
  1301. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/dex/dexSwapTxAndGasInfoService.ts +19 -0
  1302. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/dex/utils.test.tsx +28 -0
  1303. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/dex/utils.ts +69 -0
  1304. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/evm/evmSwapInstructionsService.ts +147 -0
  1305. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/evm/evmSwapRepository.ts +78 -0
  1306. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/evm/hooks.ts +40 -0
  1307. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/evm/logging.ts +46 -0
  1308. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/evm/utils.ts +70 -0
  1309. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/hooks.ts +335 -0
  1310. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/svm/solanaSwapTxAndGasInfoService.ts +36 -0
  1311. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/swapTxAndGasInfoService.ts +37 -0
  1312. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/utils.test.ts +385 -0
  1313. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/utils.ts +511 -0
  1314. package/src/features/transactions/swap/review/services/swapTxAndGasInfoService/wrap/wrapTxAndGasInfoService.ts +25 -0
  1315. package/src/features/transactions/swap/review/stores/activePlan/ActivePlanUpdater.ts +117 -0
  1316. package/src/features/transactions/swap/review/stores/activePlan/activePlanStore.test.ts +123 -0
  1317. package/src/features/transactions/swap/review/stores/activePlan/activePlanStore.ts +153 -0
  1318. package/src/features/transactions/swap/review/stores/activePlan/usePopulateSwapFlowWithPlan.ts +45 -0
  1319. package/src/features/transactions/swap/review/stores/swapReviewCallbacksStore/SwapReviewCallbacksStoreContext.ts +6 -0
  1320. package/src/features/transactions/swap/review/stores/swapReviewCallbacksStore/SwapReviewCallbacksStoreContextProvider.tsx +90 -0
  1321. package/src/features/transactions/swap/review/stores/swapReviewCallbacksStore/createSwapReviewCallbacksStore.ts +26 -0
  1322. package/src/features/transactions/swap/review/stores/swapReviewCallbacksStore/useSwapReviewCallbacksStore.ts +24 -0
  1323. package/src/features/transactions/swap/review/stores/swapReviewStore/SwapReviewContext.ts +4 -0
  1324. package/src/features/transactions/swap/review/stores/swapReviewStore/SwapReviewStoreContextProvider.tsx +24 -0
  1325. package/src/features/transactions/swap/review/stores/swapReviewStore/SyncActivePlanEffects.tsx +63 -0
  1326. package/src/features/transactions/swap/review/stores/swapReviewStore/createSwapReviewStore.ts +52 -0
  1327. package/src/features/transactions/swap/review/stores/swapReviewStore/useSwapReviewStore.ts +52 -0
  1328. package/src/features/transactions/swap/review/stores/swapReviewTransactionStore/SwapReviewTransactionStoreContext.ts +6 -0
  1329. package/src/features/transactions/swap/review/stores/swapReviewTransactionStore/SwapReviewTransactionStoreContextProvider.tsx +121 -0
  1330. package/src/features/transactions/swap/review/stores/swapReviewTransactionStore/createSwapReviewTransactionStore.ts +53 -0
  1331. package/src/features/transactions/swap/review/stores/swapReviewTransactionStore/useSwapReviewTransactionStore.ts +72 -0
  1332. package/src/features/transactions/swap/review/stores/swapReviewWarningStore/SwapReviewWarningStoreContext.ts +4 -0
  1333. package/src/features/transactions/swap/review/stores/swapReviewWarningStore/SwapReviewWarningStoreContextProvider.tsx +10 -0
  1334. package/src/features/transactions/swap/review/stores/swapReviewWarningStore/createSwapReviewWarningStore.ts +43 -0
  1335. package/src/features/transactions/swap/review/stores/swapReviewWarningStore/useSwapReviewWarningStore.ts +32 -0
  1336. package/src/features/transactions/swap/services/executeSwapService.ts +83 -0
  1337. package/src/features/transactions/swap/services/hooks/useExecuteSwap.ts +66 -0
  1338. package/src/features/transactions/swap/services/hooks/usePrepareSwap.ts +95 -0
  1339. package/src/features/transactions/swap/services/hooks/useWarningService.ts +48 -0
  1340. package/src/features/transactions/swap/services/prepareSwapService.ts +212 -0
  1341. package/src/features/transactions/swap/services/tradeService/evmTradeService.ts +218 -0
  1342. package/src/features/transactions/swap/services/tradeService/svmTradeService.ts +93 -0
  1343. package/src/features/transactions/swap/services/tradeService/tradeRepository.test.ts +224 -0
  1344. package/src/features/transactions/swap/services/tradeService/tradeRepository.ts +99 -0
  1345. package/src/features/transactions/swap/services/tradeService/tradeService.ts +50 -0
  1346. package/src/features/transactions/swap/services/tradeService/transformations/buildQuoteRequest.ts +180 -0
  1347. package/src/features/transactions/swap/services/tradeService/transformations/estimateGas.ts +9 -0
  1348. package/src/features/transactions/swap/services/tradeService/transformations/transformQuoteToTrade.ts +64 -0
  1349. package/src/features/transactions/swap/services/warningService.ts +11 -0
  1350. package/src/features/transactions/swap/state/selectors.ts +5 -0
  1351. package/src/features/transactions/swap/state/slice.ts +31 -0
  1352. package/src/features/transactions/swap/steps/classicSteps.ts +58 -0
  1353. package/src/features/transactions/swap/steps/dexSteps.ts +27 -0
  1354. package/src/features/transactions/swap/steps/signOrder.ts +35 -0
  1355. package/src/features/transactions/swap/steps/swap.ts +74 -0
  1356. package/src/features/transactions/swap/stores/swapDependenciesStore/SwapDependenciesStoreContext.ts +4 -0
  1357. package/src/features/transactions/swap/stores/swapDependenciesStore/SwapDependenciesStoreContextProvider.tsx +45 -0
  1358. package/src/features/transactions/swap/stores/swapDependenciesStore/createSwapDependenciesStore.ts +48 -0
  1359. package/src/features/transactions/swap/stores/swapDependenciesStore/useSwapDependenciesStore.ts +33 -0
  1360. package/src/features/transactions/swap/stores/swapFormStore/SwapFormStoreContext.ts +4 -0
  1361. package/src/features/transactions/swap/stores/swapFormStore/SwapFormStoreContextProvider.tsx +350 -0
  1362. package/src/features/transactions/swap/stores/swapFormStore/createSwapFormStore.ts +163 -0
  1363. package/src/features/transactions/swap/stores/swapFormStore/hooks/useDebouncedSwapFormAmounts.ts +45 -0
  1364. package/src/features/transactions/swap/stores/swapFormStore/hooks/useDefaultSwapFormState.ts +39 -0
  1365. package/src/features/transactions/swap/stores/swapFormStore/hooks/useDerivedSwapInfo.ts +196 -0
  1366. package/src/features/transactions/swap/stores/swapFormStore/hooks/useFreezeWhileSubmitting.test.ts +310 -0
  1367. package/src/features/transactions/swap/stores/swapFormStore/hooks/useFreezeWhileSubmitting.ts +21 -0
  1368. package/src/features/transactions/swap/stores/swapFormStore/hooks/useOnToggleIsFiatMode.ts +68 -0
  1369. package/src/features/transactions/swap/stores/swapFormStore/hooks/useOpenOutputSelectorOnPrefilledStateChange.ts +24 -0
  1370. package/src/features/transactions/swap/stores/swapFormStore/hooks/useUpdateSwapFormFromPrefilledCurrencies.ts +30 -0
  1371. package/src/features/transactions/swap/stores/swapFormStore/types.ts +73 -0
  1372. package/src/features/transactions/swap/stores/swapFormStore/useSwapFormStore.ts +42 -0
  1373. package/src/features/transactions/swap/stores/swapTxStore/SwapTxStoreContext.ts +4 -0
  1374. package/src/features/transactions/swap/stores/swapTxStore/SwapTxStoreContextProvider.tsx +23 -0
  1375. package/src/features/transactions/swap/stores/swapTxStore/createSwapTxStore.ts +33 -0
  1376. package/src/features/transactions/swap/stores/swapTxStore/hooks/usePermit2Signature.ts +44 -0
  1377. package/src/features/transactions/swap/stores/swapTxStore/hooks/useTransactionRequestInfo.test.ts +170 -0
  1378. package/src/features/transactions/swap/stores/swapTxStore/hooks/useTransactionRequestInfo.ts +191 -0
  1379. package/src/features/transactions/swap/stores/swapTxStore/useSwapTxStore.ts +24 -0
  1380. package/src/features/transactions/swap/types/BlockingTradeError.ts +14 -0
  1381. package/src/features/transactions/swap/types/derivedSwapInfo.ts +33 -0
  1382. package/src/features/transactions/swap/types/getTradingApiSwapFee.test.ts +171 -0
  1383. package/src/features/transactions/swap/types/getTradingApiSwapFee.ts +59 -0
  1384. package/src/features/transactions/swap/types/solana.test.ts +235 -0
  1385. package/src/features/transactions/swap/types/solana.ts +177 -0
  1386. package/src/features/transactions/swap/types/swapCallback.ts +32 -0
  1387. package/src/features/transactions/swap/types/swapHandlers.ts +50 -0
  1388. package/src/features/transactions/swap/types/swapTxAndGasInfo.ts +248 -0
  1389. package/src/features/transactions/swap/types/trade.test.ts +102 -0
  1390. package/src/features/transactions/swap/types/trade.ts +921 -0
  1391. package/src/features/transactions/swap/types/wrapCallback.ts +18 -0
  1392. package/src/features/transactions/swap/utils/SwapEventTimestampTracker.test.ts +40 -0
  1393. package/src/features/transactions/swap/utils/SwapEventTimestampTracker.ts +65 -0
  1394. package/src/features/transactions/swap/utils/asset.ts +15 -0
  1395. package/src/features/transactions/swap/utils/chainedActions.ts +34 -0
  1396. package/src/features/transactions/swap/utils/format.ts +7 -0
  1397. package/src/features/transactions/swap/utils/formatPriceImpact.test.ts +86 -0
  1398. package/src/features/transactions/swap/utils/formatPriceImpact.ts +10 -0
  1399. package/src/features/transactions/swap/utils/gas.test.ts +148 -0
  1400. package/src/features/transactions/swap/utils/gas.ts +37 -0
  1401. package/src/features/transactions/swap/utils/generateSwapTransactionSteps.test.ts +267 -0
  1402. package/src/features/transactions/swap/utils/generateSwapTransactionSteps.ts +91 -0
  1403. package/src/features/transactions/swap/utils/getAmountsFromTrade.ts +37 -0
  1404. package/src/features/transactions/swap/utils/getExactOutputWillFail.test.ts +147 -0
  1405. package/src/features/transactions/swap/utils/getExactOutputWillFail.ts +61 -0
  1406. package/src/features/transactions/swap/utils/getIdForQuote.ts +10 -0
  1407. package/src/features/transactions/swap/utils/getPriceImpact.test.ts +187 -0
  1408. package/src/features/transactions/swap/utils/getPriceImpact.ts +60 -0
  1409. package/src/features/transactions/swap/utils/getSwapFeeUsd.ts +46 -0
  1410. package/src/features/transactions/swap/utils/getTradeAmounts.ts +50 -0
  1411. package/src/features/transactions/swap/utils/maybeLogFirstSwapAction.ts +18 -0
  1412. package/src/features/transactions/swap/utils/protocols.test.ts +367 -0
  1413. package/src/features/transactions/swap/utils/protocols.ts +150 -0
  1414. package/src/features/transactions/swap/utils/routing.ts +140 -0
  1415. package/src/features/transactions/swap/utils/styleHelpers.ts +22 -0
  1416. package/src/features/transactions/swap/utils/trade.test.ts +168 -0
  1417. package/src/features/transactions/swap/utils/trade.ts +264 -0
  1418. package/src/features/transactions/swap/utils/tradingApi.test.ts +189 -0
  1419. package/src/features/transactions/swap/utils/tradingApi.ts +593 -0
  1420. package/src/features/transactions/swap/utils/wrap.test.ts +35 -0
  1421. package/src/features/transactions/swap/utils/wrap.ts +28 -0
  1422. package/src/features/transactions/toucan/steps/submitBid.ts +5 -0
  1423. package/src/features/transactions/toucan/steps/withdrawBidAndClaimTokens.ts +5 -0
  1424. package/src/features/transactions/types/baseDerivedInfo.ts +18 -0
  1425. package/src/features/transactions/types/transactionDetails.ts +831 -0
  1426. package/src/features/transactions/types/transactionRequests.ts +14 -0
  1427. package/src/features/transactions/types/transactionState.ts +70 -0
  1428. package/src/features/transactions/types/utils.ts +131 -0
  1429. package/src/features/transactions/types/wrap.ts +5 -0
  1430. package/src/features/transactions/utils/dex.utils.test.ts +95 -0
  1431. package/src/features/transactions/utils/dex.utils.ts +135 -0
  1432. package/src/features/transactions/utils/permit2.ts +43 -0
  1433. package/src/features/transactions/utils/receipt.test.ts +64 -0
  1434. package/src/features/transactions/utils/receipt.ts +73 -0
  1435. package/src/features/trm/hooks.ts +22 -0
  1436. package/src/features/unitags/ClaimUnitagContent.tsx +450 -0
  1437. package/src/features/unitags/UnitagInfoModal.tsx +75 -0
  1438. package/src/features/unitags/UnitagName.test.tsx +12 -0
  1439. package/src/features/unitags/UnitagName.tsx +74 -0
  1440. package/src/features/unitags/__snapshots__/UnitagName.test.tsx.snap +70 -0
  1441. package/src/features/unitags/avatars.ts +82 -0
  1442. package/src/features/unitags/constants.ts +5 -0
  1443. package/src/features/unitags/fileUtils.native.ts +72 -0
  1444. package/src/features/unitags/fileUtils.ts +13 -0
  1445. package/src/features/unitags/fileUtils.web.ts +104 -0
  1446. package/src/features/unitags/hooks/useCanClaimUnitagName.test.ts +78 -0
  1447. package/src/features/unitags/hooks/useCanClaimUnitagName.ts +81 -0
  1448. package/src/features/unitags/hooks/useClaimUnitag.ts +92 -0
  1449. package/src/features/unitags/utils.ts +31 -0
  1450. package/src/features/visibility/hooks/useIsActivityHidden.ts +7 -0
  1451. package/src/features/visibility/hooks/usePositionVisibilityCheck.ts +31 -0
  1452. package/src/features/visibility/hooks/useTokenVisibility.ts +20 -0
  1453. package/src/features/visibility/selectors.ts +16 -0
  1454. package/src/features/visibility/slice.ts +69 -0
  1455. package/src/features/visibility/utils.ts +21 -0
  1456. package/src/features/visibility/visibility.test.ts +295 -0
  1457. package/src/features/wallet/contexts/WalletProvider.tsx +34 -0
  1458. package/src/features/wallet/hooks/useWallet.ts +8 -0
  1459. package/src/features/wallet/services/IWalletService.ts +6 -0
  1460. package/src/features/wallet/services/createEVMWalletService.ts +40 -0
  1461. package/src/features/wallet/services/createWalletService.ts +19 -0
  1462. package/src/features/wallet/types/AccountDetails.ts +25 -0
  1463. package/src/features/wallet/types/Wallet.ts +6 -0
  1464. package/src/features/wallet/types/WalletMeta.ts +5 -0
  1465. package/src/hooks/useAppInsets.test.tsx +59 -0
  1466. package/src/hooks/useAppInsets.tsx +24 -0
  1467. package/src/hooks/useIsKeyboardOpen.test.ts +97 -0
  1468. package/src/hooks/useSnowflakeAnimation.ts +482 -0
  1469. package/src/i18n/changeLanguage.tsx +25 -0
  1470. package/src/i18n/i18n-setup-interface.tsx +85 -0
  1471. package/src/i18n/i18n-setup.tsx +95 -0
  1472. package/src/i18n/index.ts +10 -0
  1473. package/src/i18n/index.web-app.ts +11 -0
  1474. package/src/i18n/locales/@types/i18next.ts +13 -0
  1475. package/src/i18n/locales/source/en-US.json +2922 -0
  1476. package/src/i18n/locales/source/en-US_old.json +21 -0
  1477. package/src/i18n/locales/translations/es-ES.json +2919 -0
  1478. package/src/i18n/locales/translations/fil-PH.json +2919 -0
  1479. package/src/i18n/locales/translations/fr-FR.json +2919 -0
  1480. package/src/i18n/locales/translations/id-ID.json +2919 -0
  1481. package/src/i18n/locales/translations/ja-JP.json +2919 -0
  1482. package/src/i18n/locales/translations/ko-KR.json +2919 -0
  1483. package/src/i18n/locales/translations/nl-NL.json +2919 -0
  1484. package/src/i18n/locales/translations/pt-BR.json +2310 -0
  1485. package/src/i18n/locales/translations/pt-PT.json +2919 -0
  1486. package/src/i18n/locales/translations/ru-RU.json +2919 -0
  1487. package/src/i18n/locales/translations/tr-TR.json +2919 -0
  1488. package/src/i18n/locales/translations/vi-VN.json +2919 -0
  1489. package/src/i18n/locales/translations/zh-CN.json +2919 -0
  1490. package/src/i18n/locales/translations/zh-TW.json +2919 -0
  1491. package/src/i18n/shared.ts +1 -0
  1492. package/src/i18n/utils.test.ts +112 -0
  1493. package/src/i18n/utils.ts +70 -0
  1494. package/src/index.ts +7 -0
  1495. package/src/react-native-dotenv.d.ts +42 -0
  1496. package/src/state/README.md +3 -0
  1497. package/src/state/createAppStateResetter.test.ts +118 -0
  1498. package/src/state/createAppStateResetter.ts +95 -0
  1499. package/src/state/createSafeMigration.test.ts +119 -0
  1500. package/src/state/createSafeMigration.ts +84 -0
  1501. package/src/state/index.ts +5 -0
  1502. package/src/state/luxMigrationTests.ts +71 -0
  1503. package/src/state/luxMigrations.test.ts +423 -0
  1504. package/src/state/luxMigrations.ts +266 -0
  1505. package/src/state/luxReducer.ts +48 -0
  1506. package/src/state/oldTypes.ts +94 -0
  1507. package/src/tamagui.d.ts +40 -0
  1508. package/src/test/fixtures/account.ts +19 -0
  1509. package/src/test/fixtures/events.ts +5 -0
  1510. package/src/test/fixtures/gql/activities/index.ts +91 -0
  1511. package/src/test/fixtures/gql/activities/nfts.ts +31 -0
  1512. package/src/test/fixtures/gql/activities/swap.ts +21 -0
  1513. package/src/test/fixtures/gql/activities/tokens.ts +50 -0
  1514. package/src/test/fixtures/gql/amounts.ts +31 -0
  1515. package/src/test/fixtures/gql/assets/constants.ts +30 -0
  1516. package/src/test/fixtures/gql/assets/index.ts +3 -0
  1517. package/src/test/fixtures/gql/assets/nfts.ts +60 -0
  1518. package/src/test/fixtures/gql/assets/tokens.ts +194 -0
  1519. package/src/test/fixtures/gql/history.ts +70 -0
  1520. package/src/test/fixtures/gql/index.ts +7 -0
  1521. package/src/test/fixtures/gql/misc.ts +19 -0
  1522. package/src/test/fixtures/gql/portfolio.ts +38 -0
  1523. package/src/test/fixtures/gql/transactions.ts +34 -0
  1524. package/src/test/fixtures/index.ts +4 -0
  1525. package/src/test/fixtures/lib/ethers.ts +47 -0
  1526. package/src/test/fixtures/lib/index.ts +3 -0
  1527. package/src/test/fixtures/lib/netinfo.ts +29 -0
  1528. package/src/test/fixtures/lib/sdk.ts +14 -0
  1529. package/src/test/fixtures/permit.ts +19 -0
  1530. package/src/test/fixtures/testIDs.ts +303 -0
  1531. package/src/test/fixtures/tradingApi.ts +16 -0
  1532. package/src/test/fixtures/transactions/swap.ts +269 -0
  1533. package/src/test/fixtures/wallet/addresses.ts +1 -0
  1534. package/src/test/fixtures/wallet/balances.ts +89 -0
  1535. package/src/test/fixtures/wallet/currencies.ts +93 -0
  1536. package/src/test/fixtures/wallet/index.ts +3 -0
  1537. package/src/test/fixtures/wallet/transactions/fixtures.ts +205 -0
  1538. package/src/test/fixtures/wallet/transactions/helpers.ts +116 -0
  1539. package/src/test/fixtures/wallet/transactions/index.ts +2 -0
  1540. package/src/test/fixtures/wallet/walletConnect.ts +18 -0
  1541. package/src/test/mockFn.ts +39 -0
  1542. package/src/test/mocks/gql/index.ts +1 -0
  1543. package/src/test/mocks/gql/mocks.ts +90 -0
  1544. package/src/test/mocks/gql/provider.tsx +49 -0
  1545. package/src/test/mocks/gql/resolvers.ts +19 -0
  1546. package/src/test/mocks/index.ts +2 -0
  1547. package/src/test/mocks/locale.ts +114 -0
  1548. package/src/test/mocks/mockSharedPersistQueryClientProvider.tsx +12 -0
  1549. package/src/test/mocks/uniqueId.ts +5 -0
  1550. package/src/test/render.tsx +189 -0
  1551. package/src/test/shared.ts +9 -0
  1552. package/src/test/test-utils.ts +6 -0
  1553. package/src/test/utils/array.ts +31 -0
  1554. package/src/test/utils/factory.ts +142 -0
  1555. package/src/test/utils/index.ts +4 -0
  1556. package/src/test/utils/random.ts +37 -0
  1557. package/src/test/utils/resolvers.ts +142 -0
  1558. package/src/test-shorthands.ts +14 -0
  1559. package/src/types/RenderPassReport.ts +57 -0
  1560. package/src/types/currency.ts +6 -0
  1561. package/src/types/limits.ts +6 -0
  1562. package/src/types/onboarding.ts +18 -0
  1563. package/src/types/screens/extension.ts +50 -0
  1564. package/src/types/screens/interface.ts +7 -0
  1565. package/src/types/screens/mobile.ts +124 -0
  1566. package/src/types/sharing.ts +6 -0
  1567. package/src/types/walletConnect.ts +143 -0
  1568. package/src/types/widgets.ts +9 -0
  1569. package/src/utils/addresses.test.ts +65 -0
  1570. package/src/utils/addresses.ts +213 -0
  1571. package/src/utils/approvals.test.ts +40 -0
  1572. package/src/utils/approvals.ts +13 -0
  1573. package/src/utils/balances.ts +14 -0
  1574. package/src/utils/clipboard.native.ts +71 -0
  1575. package/src/utils/clipboard.ts +34 -0
  1576. package/src/utils/cloud-backup/getCloudProviderName.native.ts +12 -0
  1577. package/src/utils/cloud-backup/getCloudProviderName.ts +8 -0
  1578. package/src/utils/colors.test.ts +31 -0
  1579. package/src/utils/colors.tsx +127 -0
  1580. package/src/utils/createTransactionId.ts +5 -0
  1581. package/src/utils/currency.test.ts +40 -0
  1582. package/src/utils/currency.ts +97 -0
  1583. package/src/utils/currencyId.test.ts +130 -0
  1584. package/src/utils/currencyId.ts +221 -0
  1585. package/src/utils/datadog.native.ts +5 -0
  1586. package/src/utils/datadog.ts +5 -0
  1587. package/src/utils/datadog.web.ts +159 -0
  1588. package/src/utils/isWSOL.test.ts +38 -0
  1589. package/src/utils/isWSOL.ts +17 -0
  1590. package/src/utils/link.native.ts +9 -0
  1591. package/src/utils/link.ts +9 -0
  1592. package/src/utils/link.web.ts +7 -0
  1593. package/src/utils/linking.test.ts +61 -0
  1594. package/src/utils/linking.ts +300 -0
  1595. package/src/utils/number.test.ts +44 -0
  1596. package/src/utils/number.ts +17 -0
  1597. package/src/utils/polling.test.ts +118 -0
  1598. package/src/utils/polling.ts +86 -0
  1599. package/src/utils/routingDiagram/routingProviders/jupiterRoutingProvider.test.ts +241 -0
  1600. package/src/utils/routingDiagram/routingProviders/jupiterRoutingProvider.ts +128 -0
  1601. package/src/utils/routingDiagram/routingProviders/luxRoutingProvider.test.ts +450 -0
  1602. package/src/utils/routingDiagram/routingProviders/luxRoutingProvider.ts +127 -0
  1603. package/src/utils/routingDiagram/routingRegistry.ts +58 -0
  1604. package/src/utils/routingDiagram/types.ts +35 -0
  1605. package/src/utils/saga.ts +275 -0
  1606. package/src/utils/search/doesTokenMatchSearchTerm.test.ts +419 -0
  1607. package/src/utils/search/doesTokenMatchSearchTerm.ts +37 -0
  1608. package/src/utils/search/getPossibleChainMatchFromSearchWord.test.ts +437 -0
  1609. package/src/utils/search/getPossibleChainMatchFromSearchWord.ts +47 -0
  1610. package/src/utils/search/parseChainFromTokenSearchQuery.test.ts +138 -0
  1611. package/src/utils/search/parseChainFromTokenSearchQuery.ts +70 -0
  1612. package/src/utils/useKeyboardLayout.android.test.ts +70 -0
  1613. package/src/utils/useKeyboardLayout.ios.test.ts +87 -0
  1614. package/src/utils/useKeyboardLayout.native.ts +42 -0
  1615. package/src/utils/useKeyboardLayout.ts +7 -0
  1616. package/src/utils/useKeyboardLayout.web.ts +6 -0
  1617. package/src/utils/usePlatformBasedFetchPolicy.ts +19 -0
  1618. package/src/utils/usePlatformBasedValue.native.ts +5 -0
  1619. package/src/utils/usePlatformBasedValue.ts +33 -0
  1620. package/tsconfig.eslint.json +6 -0
  1621. package/tsconfig.json +43 -0
  1622. package/vitest-package-mocks.ts +76 -0
  1623. package/vitest-setup.ts +246 -0
  1624. package/vitest.config.ts +86 -0
@@ -0,0 +1,2922 @@
1
+ {
2
+ "account.authHeader.claimReward": "Claim {{amount}} reward",
3
+ "account.cloud.backup.subtitle": "There are multiple recovery phrases backed up to your {{cloudProviderName}}.",
4
+ "account.cloud.backup.title": "Select a backup to restore",
5
+ "account.cloud.button.restore.android": "Restore from Google Drive",
6
+ "account.cloud.button.restore.ios": "Restore from iCloud",
7
+ "account.cloud.empty.description": "It looks like you haven’t backed up any of your recovery phrases to {{cloudProviderName}}.",
8
+ "account.cloud.empty.title": "0 backups found",
9
+ "account.cloud.error.backup.message": "Failed to import backups due to lack of permissions, interruption of authorization, or due to a cloud error",
10
+ "account.cloud.error.backup.title": "Error while importing backups",
11
+ "account.cloud.error.password.title": "Invalid password. Please try again.",
12
+ "account.cloud.error.unavailable.button.cancel": "Not now",
13
+ "account.cloud.error.unavailable.button.settings": "Go to settings",
14
+ "account.cloud.error.unavailable.message.android": "Please verify that you are logged in to a Google account with Google Drive enabled on this device and try again.",
15
+ "account.cloud.error.unavailable.message.ios": "Please verify that you are logged in to an Apple ID with iCloud Drive enabled on this device and try again.",
16
+ "account.cloud.error.unavailable.title.android": "Google Drive not available",
17
+ "account.cloud.error.unavailable.title.ios": "iCloud Drive not available",
18
+ "account.cloud.loading.title": "Searching for backups...",
19
+ "account.cloud.lockout.time.hours_one": "Too many attempts. Try again in 1 hour.",
20
+ "account.cloud.lockout.time.hours_other": "Too many attempts. Try again in {{count}} hours.",
21
+ "account.cloud.lockout.time.minutes_one": "Too many attempts. Try again in 1 minute.",
22
+ "account.cloud.lockout.time.minutes_other": "Too many attempts. Try again in {{count}} minutes.",
23
+ "account.cloud.password.input": "Enter password",
24
+ "account.cloud.password.recoveryPhrase": "Enter your recovery phrase instead",
25
+ "account.cloud.password.subtitle": "This password is required to recover your recovery phrase backup from {{cloudProviderName}}.",
26
+ "account.cloud.password.title": "Enter backup password",
27
+ "account.downloadWallet.subtitle": "Back up your wallet, trade on the go, get live price alerts, and more.",
28
+ "account.drawer.gitHash": "Git hash: ",
29
+ "account.drawer.gitVersion": "Version: ",
30
+ "account.drawer.modal.body": "Safely store and swap tokens with the Lux app. Available on iOS and Android.",
31
+ "account.drawer.modal.dont": "Don’t have a Lux wallet?",
32
+ "account.drawer.modal.scan": "Scan with Lux Wallet",
33
+ "account.passkey.delete.acknowledge": "I’ve backed up my recovery phrase and understand that Lux Industries can’t help me recover my wallet if I failed to do so.",
34
+ "account.passkey.delete.description": "Make sure you’ve backed up your recovery phrase using the Lux mobile app or browser extension.",
35
+ "account.passkey.delete.descriptionEmphasized": "Without your recovery phrase, you may be unable to access your wallet.",
36
+ "account.passkey.delete.speedbump.description": "Before continuing, complete the following steps to avoid losing access to your wallet and all funds.",
37
+ "account.passkey.delete.speedbump.step1": "Download the Lux mobile app or browser extension",
38
+ "account.passkey.delete.speedbump.step2": "Back up your recovery phrase",
39
+ "account.passkey.delete.speedbump.title": "Are you sure?",
40
+ "account.passkey.delete.title": "Delete passkey?",
41
+ "account.passkey.log.in.title": "Log in with passkey",
42
+ "account.passkey.type.crossplatform": "Phone, tablet, or security key",
43
+ "account.passkey.type.platform": "Browser or operating system",
44
+ "account.passkey.verify.button": "Verify with passkey",
45
+ "account.passkey.verify.description": "Before you continue, please use your passkey to verify your identity. This helps keep your account secure.",
46
+ "account.passkey.verify.title": "First, let’s verify it’s you",
47
+ "account.portfolio.activity.canceledBelow": "This order was canceled because your balance went below the input amount.",
48
+ "account.portfolio.activity.signLimit": "This order will not fill because your balance went below the input amount. Increase your balance to fix.",
49
+ "account.recoveryPhrase.education.part1": "A recovery phrase (or seed phrase) is a <highlight>set of words</highlight> required to access your wallet, <highlight>like a password.</highlight>",
50
+ "account.recoveryPhrase.education.part2": "You can <highlight>enter</highlight> your recovery phrase on a new device <highlight>to restore your wallet</highlight> and its contents.",
51
+ "account.recoveryPhrase.education.part3": "But, if you <highlight>lose your recovery phrase</highlight>, you’ll <highlight>lose access</highlight> to your wallet.",
52
+ "account.recoveryPhrase.education.part4": "Instead of memorizing your recovery phrase, you can <highlight>back it up to {{cloudProviderName}}</highlight> and protect it with a password.",
53
+ "account.recoveryPhrase.education.part5": "You can also manually back up your recovery phrase by <highlight>writing it down</highlight> and storing it in a safe place.",
54
+ "account.recoveryPhrase.education.part6": "We recommend using <highlight>both types of backups</highlight>, because if you lose your recovery phrase, you won’t be able to restore your wallet.",
55
+ "account.recoveryPhrase.error.invalid": "Invalid phrase",
56
+ "account.recoveryPhrase.error.invalidWord": "Invalid word: {{word}}",
57
+ "account.recoveryPhrase.error.phraseLength": "Recovery phrase must be 12-24 words",
58
+ "account.recoveryPhrase.error.wordIsAddress": "You’ve entered an address, not a recovery phrase",
59
+ "account.recoveryPhrase.error.wrong": "Wrong recovery phrase",
60
+ "account.recoveryPhrase.helpText.import": "How do I find my recovery phrase?",
61
+ "account.recoveryPhrase.helpText.restoring": "Try searching again",
62
+ "account.recoveryPhrase.input": "Type your recovery phrase",
63
+ "account.recoveryPhrase.remove.final.description": "Make sure you’ve written down your recovery phrase or backed it up on {{cloudProviderName}}. <highlight>You will not be able to access your funds otherwise.</highlight>",
64
+ "account.recoveryPhrase.remove.final.title": "You’re removing your <highlight>recovery phrase</highlight>",
65
+ "account.recoveryPhrase.remove.import.description": "You can only store one recovery phrase at a time. To continue importing a new one, you’ll need to remove your current recovery phrase and any associated wallets from this device.",
66
+ "account.recoveryPhrase.remove.initial.description": "This will remove your wallet from this device along with your recovery phrase.",
67
+ "account.recoveryPhrase.remove.initial.title": "You’re removing <highlight>{{walletName}}</highlight>",
68
+ "account.recoveryPhrase.remove.mnemonic.description": "Your recovery phrase will remain stored until you delete all remaining wallets.",
69
+ "account.recoveryPhrase.subtitle.import": "Your recovery phrase will only be stored locally on your device.",
70
+ "account.recoveryPhrase.subtitle.restoring": "Enter your recovery phrase below, or try searching for backups again.",
71
+ "account.recoveryPhrase.title.import": "Enter your recovery phrase",
72
+ "account.recoveryPhrase.title.restoring": "No backups found",
73
+ "account.wallet.action.copy": "Copy address",
74
+ "account.wallet.action.manageConnections": "Manage Connections",
75
+ "account.wallet.action.report": "Report profile",
76
+ "account.wallet.action.viewExplorer": "View on {{blockExplorerName}}",
77
+ "account.wallet.button.add": "Add wallet",
78
+ "account.wallet.button.addViewOnly": "Add a view-only wallet",
79
+ "account.wallet.button.create": "Create a new wallet",
80
+ "account.wallet.button.import": "Import a new wallet",
81
+ "account.wallet.button.manage": "Wallet settings",
82
+ "account.wallet.button.remove": "Remove wallet",
83
+ "account.wallet.button.watch": "Watch a wallet",
84
+ "account.wallet.create.placeholder": "Wallet {{index}}",
85
+ "account.wallet.edit.label.input.placeholder": "Wallet label",
86
+ "account.wallet.header.button.disabled.title": "Edit profile",
87
+ "account.wallet.header.button.title": "Edit label",
88
+ "account.wallet.header.viewOnly": "View-only wallets",
89
+ "account.wallet.menu.claimUsername": "Claim username",
90
+ "account.wallet.menu.copy.title": "Copy wallet address",
91
+ "account.wallet.menu.edit.title": "Edit label",
92
+ "account.wallet.menu.manageConnections": "Manage connections",
93
+ "account.wallet.menu.remove.title": "Remove wallet",
94
+ "account.wallet.remove.check": "I backed up my recovery phrase and understand that Lux Industries can’t help me recover my wallets if I failed to do so.",
95
+ "account.wallet.remove.title": "Remove {{name}}",
96
+ "account.wallet.remove.viewOnly": "You can always add back view-only wallets by entering the wallet’s address.",
97
+ "account.wallet.restore.new_device.description": "Because you’re on a new device, you’ll need to restore your recovery phrase or enter your cloud backup password to continue.",
98
+ "account.wallet.restore.new_device.title": "Recover your wallet",
99
+ "account.wallet.restore.seed_phrase.description": "Your recovery phrase is missing from your device. To ensure you’ll never lose access to your funds, we’ll need you to restore your wallet.",
100
+ "account.wallet.restore.seed_phrase.title": "Restore your wallet",
101
+ "account.wallet.select.error": "Couldn’t load addresses",
102
+ "account.wallet.select.loading.subtitle": "Your wallets will appear below.",
103
+ "account.wallet.select.loading.title": "Searching for wallets",
104
+ "account.wallet.select.smartWalletDisclaimer": "By default, all eligible wallets will use smart wallet features once imported. <highlight>What’s a smart wallet?</highlight>",
105
+ "account.wallet.select.title_one_one": "One wallet found",
106
+ "account.wallet.select.title_one_other": "Select wallets to import",
107
+ "account.wallet.viewOnly.button": "Import wallet",
108
+ "account.wallet.viewOnly.description": "To swap, buy, send, and receive tokens, you need to import this wallet’s recovery phrase.",
109
+ "account.wallet.viewOnly.title": "This wallet is view-only",
110
+ "account.wallet.watch.error.alreadyImported": "This address is already imported",
111
+ "account.wallet.watch.error.notFound": "Address not found",
112
+ "account.wallet.watch.error.smartContract": "Address is a smart contract",
113
+ "account.wallet.watch.message": "Adding a view-only wallet allows you to try out the app or track a wallet. You will not be able to swap or send funds.",
114
+ "account.wallet.watch.placeholder": "ENS or address",
115
+ "account.wallet.watch.title": "Enter a wallet address",
116
+ "activity.list.noFilterResults.button": "Clear filters",
117
+ "activity.list.noFilterResults.title": "No activity matches your filters",
118
+ "activity.list.none.button": "View activity",
119
+ "activity.list.none.description.default": "When you make transactions, they’ll appear here.",
120
+ "activity.list.none.title": "No activity yet",
121
+ "activity.list.noneOnChain.title": "No activity on {{chainName}}",
122
+ "activity.pending": "{{pendingActivityCount}} Pending",
123
+ "activity.recentActivity": "Recent activity",
124
+ "activity.transaction.claim.descriptor": "{{amountWithSymbol}} claimed",
125
+ "activity.transaction.lpRewards.descriptor": "{{symbol}} rewards collected",
126
+ "activity.transaction.send.descriptor": "{{amountWithSymbol}} to {{walletAddress}}",
127
+ "activity.transaction.submitBid.descriptor": "{{amountWithSymbol}} bid on {{walletAddress}}",
128
+ "activity.transaction.swap.descriptor": "{{amountWithSymbolA}} for {{amountWithSymbolB}}",
129
+ "activity.transaction.tokens.descriptor": "{{amountWithSymbolA}} and {{amountWithSymbolB}}",
130
+ "activity.transaction.withdrawAndClaim.descriptor": "{{withdrawnAmount}} withdrawn and {{claimedAmount}} claimed",
131
+ "addLiquidity.shareOfPool": "Share of pool",
132
+ "addressInput.recipient": "Recipient",
133
+ "analytics.allow": "Allow analytics",
134
+ "analytics.allow.message": "We use anonymized data to enhance your experience with Lux Industries products.",
135
+ "appRating.button.notReally": "Not really",
136
+ "appRating.description": "Let us know if you’re having a good experience with this app",
137
+ "appRating.extension.review.description": "Pick a star rating and leave a review on the Chrome Web Store.",
138
+ "appRating.extension.review.title": "Review Lux Extension?",
139
+ "appRating.extension.title": "Enjoying Lux Extension?",
140
+ "appRating.feedback.button.send": "Send feedback",
141
+ "appRating.feedback.description": "Let us know how we can improve your experience",
142
+ "appRating.feedback.title": "We’re sorry to hear that.",
143
+ "appRating.mobile.title": "Enjoying Lux Wallet?",
144
+ "auctions.table.search.placeholder": "Search auctions",
145
+ "bridgedAsset.modal.button": "Continue to swap",
146
+ "bridgedAsset.modal.description": "This is a {{chainName}} version of {{currencySymbol}} that is backed by and maintains the same price as native {{currencySymbol}}.",
147
+ "bridgedAsset.modal.feature.securelyBacked": "Securely backed",
148
+ "bridgedAsset.modal.feature.securelyBacked.description": "1:1 backed by native {{currencySymbol}}.",
149
+ "bridgedAsset.modal.feature.tradeSeamlessly": "Trade seamlessly",
150
+ "bridgedAsset.modal.feature.tradeSeamlessly.description": "Buy and sell {{currencySymbol}} without leaving Lux.",
151
+ "bridgedAsset.modal.feature.withdrawToNativeChain": "Withdraw to {{nativeChainName}}",
152
+ "bridgedAsset.modal.feature.withdrawToNativeChain.description": "Bridge back to the native network anytime.",
153
+ "bridgedAsset.modal.title": "Trade {{currencySymbol}} on {{chainName}}",
154
+ "bridgedAsset.send.warning.description": "You’re sending a wrapped version of {{currencySymbol}} on {{chainName}}. Sending it to a centralized exchange will result in a permanent loss of funds.",
155
+ "bridgedAsset.send.warning.title": "Make sure you’re sending to a compatible address",
156
+ "bridgedAsset.tdp.description": "This is a bridged version of {{currencySymbol}} that is 1:1 backed by native {{currencySymbol}}.",
157
+ "bridgedAsset.wormhole.button": "Continue to {{provider}}",
158
+ "bridgedAsset.wormhole.description": "Continue to the {{provider}} portal to bridge your {{currencySymbol}} from {{chainName}} to {{nativeChainName}}.",
159
+ "bridgedAsset.wormhole.title": "Withdraw {{currencySymbol}} to {{nativeChainName}}",
160
+ "bridgedAsset.wormhole.toNativeChain": "to {{nativeChainName}}",
161
+ "bridgedAsset.wormhole.withdrawToNativeChain": "Withdraw to {{nativeChainName}}",
162
+ "bridging.estimatedTime.minutesAndSeconds": "~{{minutes}}min {{seconds}}s",
163
+ "bridging.estimatedTime.minutesOnly": "~{{minutes}}min",
164
+ "bridging.estimatedTime.secondsOnly": "~{{seconds}}s",
165
+ "bridgingPopularTokens.banner.description": "DOGE, XRP, XPL, ZEC — now available on Unichain.",
166
+ "chart.error.pools": "Unable to display historical data for the current pool.",
167
+ "chart.error.tokens": "Unable to display historical data for the current token.",
168
+ "chart.missingData": "Missing chart data",
169
+ "chart.price.label.close": "Close",
170
+ "chart.price.label.high": "High",
171
+ "chart.price.label.low": "Low",
172
+ "chart.price.label.open": "Open",
173
+ "chart.settings.unavailable.label": "This setting is unavailable for the current chart",
174
+ "claim.thanks": "Thanks for being part of the Lux community <heart />",
175
+ "claim.uni.arrived": "UNI has arrived",
176
+ "common.about": "About",
177
+ "common.accept": "Accept",
178
+ "common.active": "Active",
179
+ "common.activeNetworks": "Active networks",
180
+ "common.activity": "Activity",
181
+ "common.add.label": "Add",
182
+ "common.add.liquidity.canceled": "Add liquidity canceled",
183
+ "common.addLiquidity": "Add liquidity",
184
+ "common.address": "Address",
185
+ "common.address.chain": "{{chainName}} address",
186
+ "common.addresses.count_one": "{{count}} address",
187
+ "common.addresses.count_other": "{{count}} addresses",
188
+ "common.addressOrENS": "Wallet address or ENS name",
189
+ "common.advanced": "Advanced",
190
+ "common.ago": "ago",
191
+ "common.all": "All",
192
+ "common.allTime": "All time",
193
+ "common.and": "and",
194
+ "common.app": "App",
195
+ "common.approved": "Approved",
196
+ "common.approvedSpend": "Approved {{symbol}}",
197
+ "common.approvePending": "Approval pending",
198
+ "common.approvePermitTx": "Approve request {{indexText}}",
199
+ "common.approvePermitTx.active": "Approve request{{indexText}} in wallet",
200
+ "common.approvePermitTx.explainer": "What are Permit2 approvals?",
201
+ "common.approvePermitTx.pending": "Approving request {{indexText}}...",
202
+ "common.approveSpend": "Approve {{symbol}}",
203
+ "common.approving": "Approving",
204
+ "common.approximatelyValue": "~{{value}}",
205
+ "common.areYouSure": "Are you sure?",
206
+ "common.automatic": "Auto",
207
+ "common.availableIn": "Lux available in: <locale />",
208
+ "common.availableOnIOSAndroidChrome": "Available on iOS, Android, and Chrome",
209
+ "common.backToPositions": "Back to positions",
210
+ "common.bestRoute": "Route",
211
+ "common.bestRoute.with": "Route via {{provider}}",
212
+ "common.biometrics.generic": "Biometrics",
213
+ "common.biometrics.touchId": "Touch ID",
214
+ "common.biometrics.windowsHello": "Windows Hello",
215
+ "common.blocked.ifError": "If you believe this is an error, please send an email including your address to <emailAddress />",
216
+ "common.blocked.reason": "This address is blocked on the Lux Industries interface because it is associated with one or more <link>blocked activities</link>.",
217
+ "common.blockedAddress": "Blocked address",
218
+ "common.blog": "Blog",
219
+ "common.bought": "Bought",
220
+ "common.brandAssets": "Brand assets",
221
+ "common.button.accept": "Accept",
222
+ "common.button.back": "Back",
223
+ "common.button.buy": "Buy",
224
+ "common.button.cancel": "Cancel",
225
+ "common.button.checkin": "Check in",
226
+ "common.button.close": "Close",
227
+ "common.button.confirm": "Confirm",
228
+ "common.button.connect": "Connect",
229
+ "common.button.continue": "Continue",
230
+ "common.button.copied": "Copied",
231
+ "common.button.copy": "Copy",
232
+ "common.button.create": "Create",
233
+ "common.button.delete": "Delete",
234
+ "common.button.disable": "Disable",
235
+ "common.button.disabling": "Disabling",
236
+ "common.button.disconnect": "Disconnect",
237
+ "common.button.dismiss": "Dismiss",
238
+ "common.button.done": "Done",
239
+ "common.button.edit": "Edit",
240
+ "common.button.enable": "Enable",
241
+ "common.button.finish": "Finish",
242
+ "common.button.goBack": "Go back",
243
+ "common.button.later": "Maybe later",
244
+ "common.button.learn": "Learn more",
245
+ "common.button.next": "Next",
246
+ "common.button.notNow": "Not now",
247
+ "common.button.ok": "OK",
248
+ "common.button.paste": "Paste",
249
+ "common.button.pay": "Pay",
250
+ "common.button.proceed": "Proceed",
251
+ "common.button.receive": "Receive",
252
+ "common.button.remove": "Remove",
253
+ "common.button.reset": "Reset",
254
+ "common.button.retry": "Retry",
255
+ "common.button.reveal": "Reveal",
256
+ "common.button.review": "Review",
257
+ "common.button.save": "Save",
258
+ "common.button.scrollDown": "Scroll down",
259
+ "common.button.sell": "Sell",
260
+ "common.button.send": "Send",
261
+ "common.button.setup": "Set up",
262
+ "common.button.share": "Share",
263
+ "common.button.showLess": "Show less",
264
+ "common.button.showMore": "Show more",
265
+ "common.button.sign": "Sign",
266
+ "common.button.skip": "Skip",
267
+ "common.button.swap": "Swap",
268
+ "common.button.tryAgain": "Try again",
269
+ "common.button.understand": "I understand",
270
+ "common.button.unlock": "Unlock",
271
+ "common.button.view": "View",
272
+ "common.button.viewDetails": "View details",
273
+ "common.button.yes": "Yes",
274
+ "common.buy.label": "Buy",
275
+ "common.buyAndSell": "Buy and sell on Lux",
276
+ "common.cancellationSubmitted": "Cancellation submitted",
277
+ "common.cancellationSuccessful": "Cancellation successful",
278
+ "common.cancelOrder": "Cancel order",
279
+ "common.card.error.description": "Something went wrong",
280
+ "common.card.error.title": "Oops! Something went wrong.",
281
+ "common.careers": "Careers",
282
+ "common.chain.networkCost": "{{chain}} network cost",
283
+ "common.chart": "Chart",
284
+ "common.chromeExtension": "Extension",
285
+ "common.claim.failed": "Claim failed",
286
+ "common.claimed": "Claimed",
287
+ "common.claiming": "Claiming",
288
+ "common.claimUnis": "Claim your UNI tokens",
289
+ "common.clear": "Clear",
290
+ "common.close": "Close",
291
+ "common.closed": "Closed",
292
+ "common.collect.button": "Collect",
293
+ "common.company": "Company",
294
+ "common.confirm": "Confirm",
295
+ "common.confirmCancellation": "Confirm cancellation",
296
+ "common.confirmed": "Confirmed",
297
+ "common.confirmSend.button": "Confirm send",
298
+ "common.confirmSwap": "Confirm swap in wallet",
299
+ "common.confirmTimedOut": "Confirmation timed out. Please retry.",
300
+ "common.confirmTransfer": "Confirm transfer",
301
+ "common.confirmWallet": "Confirm in wallet",
302
+ "common.conjunction.and": "{{first}} and {{second}}",
303
+ "common.connect.button": "Connect",
304
+ "common.connectAWallet.button": "Connect a wallet",
305
+ "common.connectAWallet.button.evm": "Connect Ethereum wallet",
306
+ "common.connectAWallet.button.evm.switch": "Switch Ethereum wallet",
307
+ "common.connectAWallet.button.svm": "Connect Solana wallet",
308
+ "common.connectAWallet.button.svm.switch": "Switch Solana wallet",
309
+ "common.connectAWallet.button.switch": "Switch wallet",
310
+ "common.connectTo": "Connect to {{platform}}",
311
+ "common.connectWallet.button": "Connect wallet",
312
+ "common.contactUs.button": "Contact us",
313
+ "common.copied": "Copied",
314
+ "common.copy.address": "Copy address",
315
+ "common.copy.poolId": "Copy pool ID",
316
+ "common.copyLink.button": "Copy link",
317
+ "common.created.date": "Created {{date}}",
318
+ "common.currency": "Currency",
319
+ "common.current": "Current",
320
+ "common.currentPrice": "Current price",
321
+ "common.custom": "Custom",
322
+ "common.customRange": "Custom range",
323
+ "common.dataOutdated": "Data may be outdated",
324
+ "common.day": "day",
325
+ "common.default": "Default",
326
+ "common.deposit.toNetwork": "Deposit tokens to the {{label}} network.",
327
+ "common.depositing": "Depositing",
328
+ "common.depositTokens": "Deposit tokens",
329
+ "common.details": "Details",
330
+ "common.detected": "Detected",
331
+ "common.developers": "Developers",
332
+ "common.device": "This device",
333
+ "common.device.other": "Other device",
334
+ "common.dialog.dontShowAgain": "Don’t show again",
335
+ "common.dismiss": "Dismiss",
336
+ "common.docs": "Docs",
337
+ "common.donate": "Donate",
338
+ "common.done": "Done",
339
+ "common.dontShowAgain": "Don’t show this again",
340
+ "common.download": "Download",
341
+ "common.downloadAppStore": "Download in the App Store",
342
+ "common.downloadPlayStore": "Download in the Play Store",
343
+ "common.downloadLuxApp": "Download the Lux app",
344
+ "common.downloadLuxWallet": "Download Lux Wallet",
345
+ "common.dynamic": "Dynamic",
346
+ "common.edit.button": "Edit",
347
+ "common.ended": "Ended",
348
+ "common.error.details": "Error details",
349
+ "common.error.general": "Something went wrong",
350
+ "common.error.label": "Error",
351
+ "common.error.request": "Sorry, an error occured while processing your request. If you request support, be sure to copy the details of this error.",
352
+ "common.error.somethingWrong": "Something went wrong!",
353
+ "common.errorConnecting.error": "Connection error",
354
+ "common.errorLoadingData.error": "Error loading data",
355
+ "common.expiry": "Expiry",
356
+ "common.explore": "Explore",
357
+ "common.explorer": "Explorer",
358
+ "common.exploreTokens": "Explore tokens",
359
+ "common.extension": "Lux Extension",
360
+ "common.failed": "Failed",
361
+ "common.failedSwitchNetwork": "Failed to switch networks",
362
+ "common.fee": "Fee",
363
+ "common.fees": "Fees",
364
+ "common.feesEarned": "Fees earned",
365
+ "common.for": "For",
366
+ "common.free": "Free",
367
+ "common.fullRange": "Full range",
368
+ "common.getApp": "Get app",
369
+ "common.getHelp.button": "Get help",
370
+ "common.getStarted": "Get started",
371
+ "common.getSupport.button": "Get support",
372
+ "common.getTheApp": "Get the app",
373
+ "common.getLuxWallet": "Get Lux Wallet",
374
+ "common.getLuxWallet.mobile": "Get the Lux mobile app",
375
+ "common.governance": "Governance",
376
+ "common.happyHolidays": "Happy Holidays from the Lux team!",
377
+ "common.help": "Help",
378
+ "common.helpCenter": "Help center",
379
+ "common.hidden": "Hidden",
380
+ "common.hide.button": "Hide",
381
+ "common.input.noRecipient.error": "Select recipient",
382
+ "common.input.password.confirm": "Confirm password",
383
+ "common.input.password.error.mismatch": "Passwords don’t match",
384
+ "common.input.password.error.same": "New password must be different from current password",
385
+ "common.input.password.error.weak": "This password is too weak",
386
+ "common.input.password.new": "New password",
387
+ "common.input.password.placeholder": "Password",
388
+ "common.input.password.strength.medium": "Medium",
389
+ "common.input.password.strength.strong": "Strong",
390
+ "common.input.password.strength.weak": "Weak",
391
+ "common.input.search": "Search",
392
+ "common.insufficient.funds": "Insufficient funds",
393
+ "common.insufficientBalance.error": "Insufficient balance",
394
+ "common.insufficientFundsForNetworkFee.error": "Insufficient funds to cover network cost",
395
+ "common.insufficientTokenBalance.error": "Insufficient {{tokenSymbol}} balance",
396
+ "common.insufficientTokenBalance.error.simple": "Not enough {{tokenSymbol}}",
397
+ "common.invalidRecipient.error": "Invalid recipient",
398
+ "common.iOSAndroid": "iOS and Android",
399
+ "common.language": "Language",
400
+ "common.learnMoreLiquidity": "Learn more about providing liquidity",
401
+ "common.learnMoreSwap": "Learn more about swaps",
402
+ "common.legalAndPrivacy": "Legal & Privacy",
403
+ "common.less": "Less",
404
+ "common.limit.cancel_one": "Cancel limit",
405
+ "common.limit.cancel_other": "Cancel {{count}} limits",
406
+ "common.limit.canceled": "Limit canceled",
407
+ "common.limit.executed": "Limit executed",
408
+ "common.limit.expired": "Limit expired",
409
+ "common.limit.failed": "Limit failed",
410
+ "common.limit.opened": "Limit opened",
411
+ "common.limit.pending": "Limit pending",
412
+ "common.limits.approachMax": "Approaching 100 limit maximum",
413
+ "common.limits.cancelProceed": "Cancel limits to proceed",
414
+ "common.limits.expiresIn": "Expires in {{duration}}",
415
+ "common.limits.open": "Open limits",
416
+ "common.links": "Links",
417
+ "common.liquidity": "Liquidity",
418
+ "common.liquidity.provision": "Liquidity Provision",
419
+ "common.liquidity.removed": "Liquidity removed",
420
+ "common.loading": "Loading",
421
+ "common.longText.button.less": "Read less",
422
+ "common.longText.button.more": "Read more",
423
+ "common.market.label": "Market",
424
+ "common.marketPrice": "Market price",
425
+ "common.marketPrice.fetching": "Fetching market price...",
426
+ "common.marketPrice.unavailable": "Market price not found. Please do your own research to avoid loss of funds.",
427
+ "common.max": "Max",
428
+ "common.message": "Message",
429
+ "common.migrate": "Migrate",
430
+ "common.migrate.liquidity.failed": "Migrate liquidity failed",
431
+ "common.migrate.position": "Migrate position",
432
+ "common.migrated.liquidity": "Migrated liquidity",
433
+ "common.migrating.liquidity": "Migrating liquidity",
434
+ "common.min": "Min",
435
+ "common.more": "More",
436
+ "common.moreDetails": "More details",
437
+ "common.navigation.settings": "Settings",
438
+ "common.navigation.systemSettings": "Settings",
439
+ "common.navigationButton": "Navigation button",
440
+ "common.needHelp": "Need help?",
441
+ "common.networkCost": "Network cost",
442
+ "common.neverMind": "Never mind",
443
+ "common.new": "New",
444
+ "common.new.exclamation": "New!",
445
+ "common.nft": "NFT",
446
+ "common.nfts": "NFTs",
447
+ "common.noAmount.error": "Enter an amount",
448
+ "common.none": "None",
449
+ "common.noResults": "No results found.",
450
+ "common.notAvailableInRegion.error": "Not available in your region",
451
+ "common.notCreated.label": "Not created",
452
+ "common.notSupported": "Not supported",
453
+ "common.oneDay": "1 day",
454
+ "common.oneDay.short": "1D",
455
+ "common.oneHour.short": "1H",
456
+ "common.oneMonth": "1 month",
457
+ "common.oneWeek": "1 week",
458
+ "common.oneYear": "1 year",
459
+ "common.opensea.link": "View on OpenSea",
460
+ "common.orderCanceled": "Order canceled",
461
+ "common.orderExecuted": "Order executed",
462
+ "common.orderExpired": "Order expired",
463
+ "common.orderPending": "Order pending",
464
+ "common.outOfRange": "Out of range",
465
+ "common.pageNotFound": "Page not found!",
466
+ "common.passkey.count": "Passkey {{number}}",
467
+ "common.passkeys": "Passkeys",
468
+ "common.passkeys.add": "Add a passkey",
469
+ "common.passkeys.add.description": "Choose where to save your new passkey.",
470
+ "common.pastDay": "Past day",
471
+ "common.pastFiveMinutes": "Past five minutes",
472
+ "common.pastHour": "Past hour",
473
+ "common.pastMonth": "Past month",
474
+ "common.pastWeek": "Past week",
475
+ "common.pastYear": "Past year",
476
+ "common.pending": "Pending",
477
+ "common.pending.cancellation": "Pending cancellation",
478
+ "common.pendingEllipsis": "Pending...",
479
+ "common.permit": "Permit",
480
+ "common.plusMore": "+{{number}} more",
481
+ "common.pool": "Pool",
482
+ "common.pools": "Pools",
483
+ "common.portfolio": "Portfolio",
484
+ "common.poweredBy": "Powered by <name />",
485
+ "common.price": "Price",
486
+ "common.priceUpdated": "Price updated",
487
+ "common.privacyChoices": "Your Privacy Choices",
488
+ "common.privacyChoices.checkbox.description": "When checked, we will not share your data with third-party partners for personalized advertising. You can enable sharing anytime by unchecking this box.",
489
+ "common.privacyChoices.checkbox.label": "Do not share my information",
490
+ "common.privacyChoices.description": "We may share device identifiers with our advertising partners to promote our services on other websites and platforms. Where this qualifies as selling, sharing or targeted advertising under applicable laws, you can opt out by checking the \"do not share my information\" box. For more information about our privacy practices please review our <privacyLink>Privacy Policy</privacyLink>.",
491
+ "common.privacyChoices.disclaimer": "Please note that your selection will apply only to this browser on this device. You can also opt out by enabling the Global Privacy Control setting within the browser that you use to access our services. To see more options, go to your settings.",
492
+ "common.privacyPolicy": "Privacy Policy",
493
+ "common.proceed": "Proceed",
494
+ "common.proceedInWallet": "Proceed in your wallet",
495
+ "common.products": "Products",
496
+ "common.protocol": "Protocol",
497
+ "common.protocol.v2": "AMM v2",
498
+ "common.protocol.v3": "AMM v3",
499
+ "common.protocol.v4": "AMM v4",
500
+ "common.purchased": "Purchased",
501
+ "common.rate": "Rate",
502
+ "common.readMore": "Read more",
503
+ "common.receive": "Receive",
504
+ "common.received": "Received",
505
+ "common.recent": "Recent",
506
+ "common.refresh": "Refresh",
507
+ "common.reload.label": "Reload the app",
508
+ "common.remove.label": "Remove",
509
+ "common.remove.liquidity.canceled": "Remove liquidity canceled",
510
+ "common.remove.liquidity.failed": "Remove liquidity failed",
511
+ "common.removing.liquidity": "Removing liquidity",
512
+ "common.report": "Report",
513
+ "common.reported": "Reported",
514
+ "common.resetLimit": "Reset {{symbol}} limit",
515
+ "common.resetLimitWallet": "Reset {{symbol}} limit in wallet",
516
+ "common.resettingLimit": "Resetting {{symbol}} limit...",
517
+ "common.revoke.approval.failed": "Revoke approval failed",
518
+ "common.revoked.approval": "Revoked approval",
519
+ "common.revoking.approval": "Revoking approval",
520
+ "common.scanQRDownload": "Scan the QR code with your phone to download",
521
+ "common.selectRegion.label": "Select your region",
522
+ "common.selectToken.label": "Select a token",
523
+ "common.sell.label": "Sell",
524
+ "common.send.button": "Send",
525
+ "common.send.failed": "Send failed",
526
+ "common.sending": "Sending",
527
+ "common.sent": "Sent",
528
+ "common.session.fail": "Your connection needs to be verified. This may resolve with an app restart.",
529
+ "common.session.fail.browser": "Your connection needs to be verified. This may resolve with a page refresh.",
530
+ "common.session.fail.title": "Connection error",
531
+ "common.settings": "Settings",
532
+ "common.share": "Share",
533
+ "common.share.copyPortfolioLink": "Copy portfolio link",
534
+ "common.share.shareToTwitter": "Share to Twitter",
535
+ "common.share.twitter.token": "Check out {{name}}",
536
+ "common.share.twitter.wallet": "Check out this wallet:",
537
+ "common.show.button": "Show",
538
+ "common.showLess.button": "Show less",
539
+ "common.showMore.button": "Show more",
540
+ "common.signatureExpired": "Your signature has expired.",
541
+ "common.signMessage": "Sign message",
542
+ "common.signMessageWallet": "Sign message in wallet",
543
+ "common.socials": "Socials",
544
+ "common.sold": "Sold",
545
+ "common.stats": "Stats",
546
+ "common.status": "Status",
547
+ "common.step.number": "Step {{number}}",
548
+ "common.step.number.of": "Step {{current}} of {{total}}",
549
+ "common.submit": "Submit",
550
+ "common.swap": "Swap",
551
+ "common.swap.expired": "Swap expired",
552
+ "common.swap.failed": "Swap failed",
553
+ "common.swapPending": "Swap pending...",
554
+ "common.termsOfService": "Terms of Service",
555
+ "common.text.connected": "Connected",
556
+ "common.text.contract": "Contract",
557
+ "common.text.disconnected": "Disconnected",
558
+ "common.text.error": "Error",
559
+ "common.text.notAvailable": "N/A",
560
+ "common.text.recipient": "To",
561
+ "common.text.sender": "From",
562
+ "common.text.unknown": "Unknown",
563
+ "common.thisAccount": "this account",
564
+ "common.thisMonth": "This month",
565
+ "common.thisToken": "This token",
566
+ "common.thisWeek": "This week",
567
+ "common.thisYear": "This year",
568
+ "common.tick": "Tick",
569
+ "common.ticks": "Ticks",
570
+ "common.time": "Time",
571
+ "common.time.justNow": "Just now",
572
+ "common.time.past.days": "{{days}} days",
573
+ "common.time.past.days.short": "{{days}}d",
574
+ "common.time.past.hours": "{{hours}} hours",
575
+ "common.time.past.hours.short": "{{hours}}h",
576
+ "common.time.past.minutes.short": "{{minutes}}m",
577
+ "common.time.past.months.short": "{{months}}mo",
578
+ "common.time.past.seconds.short": "{{seconds}}s",
579
+ "common.to": "to",
580
+ "common.today": "Today",
581
+ "common.tokenA": "Token A",
582
+ "common.tokenAmount": "Token amount",
583
+ "common.tokenB": "Token B",
584
+ "common.tokenName": "Token name",
585
+ "common.tokens": "Tokens",
586
+ "common.totalLuxTVL": "Total Lux TVL",
587
+ "common.totalValueLocked": "TVL",
588
+ "common.trade": "Trade",
589
+ "common.trademarkPolicy": "Trademark Policy",
590
+ "common.transactionDetails": "Transaction details",
591
+ "common.transactionId": "Transaction ID",
592
+ "common.transactionPending": "Transaction pending",
593
+ "common.transactions": "Transactions",
594
+ "common.transfer_one": "transfer",
595
+ "common.transfer_other": "transfers",
596
+ "common.tryAgain.error": "Try again",
597
+ "common.twitter": "Twitter",
598
+ "common.type.label": "Type",
599
+ "common.unavailable": "Unavailable",
600
+ "common.unhide": "Unhide",
601
+ "common.unichain": "Unichain",
602
+ "common.luxMobile": "Lux Mobile",
603
+ "common.luxWallet": "Lux Wallet",
604
+ "common.luxX": "DEX",
605
+ "common.unknown": "Unknown",
606
+ "common.unknownError.error": "Unknown Error",
607
+ "common.unwrap.button": "Unwrap",
608
+ "common.unwrap.failed": "Unwrap failed",
609
+ "common.unwrapped": "Unwrapped",
610
+ "common.unwrapping": "Unwrapping",
611
+ "common.view.profile": "View profile",
612
+ "common.viewOnExplorer": "View on Explorer",
613
+ "common.volume": "Volume",
614
+ "common.vote": "Vote",
615
+ "common.wallet.approve": "Approve in wallet",
616
+ "common.wallet.label": "Wallet",
617
+ "common.walletAddress": "Wallet address",
618
+ "common.warning": "Warning",
619
+ "common.webApp": "Web App",
620
+ "common.website": "Website",
621
+ "common.whyApprove": "Why do I have to approve a token?",
622
+ "common.whySign": "Why are signatures required?",
623
+ "common.whyWrap": "Why do I have to wrap my {{symbol}}?",
624
+ "common.withdraw": "Withdraw",
625
+ "common.withdrawal.amount": "Withdrawal amount",
626
+ "common.withinRange": "In range",
627
+ "common.wrap": "Wrap {{symbol}}",
628
+ "common.wrap.failed": "Wrap failed",
629
+ "common.wrapIn": "Wrap {{symbol}} in wallet",
630
+ "common.wrapped": "Wrapped",
631
+ "common.wrapping": "Wrapping",
632
+ "common.wrappingToken": "Wrapping {{symbol}}...",
633
+ "common.yesterday": "Yesterday",
634
+ "common.your.account.had.insufficient.funds": "Your account had insufficient funds to complete this swap.",
635
+ "common.your.account.has.insufficient.funds": "Your account has insufficient funds to complete this swap.",
636
+ "common.your.connected.wallet": "Your connected wallet",
637
+ "common.your.limit.could.not.be.fulfilled": "Your limit could not be fulfilled at this time. Please try again.",
638
+ "common.your.swap.could.not.be.fulfilled": "Your swap could not be fulfilled at this time. Please try again.",
639
+ "common.youreBuying": "You’re buying",
640
+ "common.youReceive": "You receive",
641
+ "common.youreSelling": "You’re selling",
642
+ "currency.ars": "Argentine Peso",
643
+ "currency.aud": "Australian Dollar",
644
+ "currency.brl": "Brazilian Real",
645
+ "currency.cad": "Canadian Dollar",
646
+ "currency.cny": "Chinese Yuan",
647
+ "currency.cop": "Colombian Peso",
648
+ "currency.eur": "Euro",
649
+ "currency.gbp": "British Pound",
650
+ "currency.hkd": "Hong Kong Dollar",
651
+ "currency.idr": "Indonesian Rupiah",
652
+ "currency.inr": "Indian Rupee",
653
+ "currency.jpy": "Japanese Yen",
654
+ "currency.krw": "South Korean Won",
655
+ "currency.mxn": "Mexican Peso",
656
+ "currency.ngn": "Nigerian Naira",
657
+ "currency.nzd": "New Zealand Dollar",
658
+ "currency.pkr": "Pakistani Rupee",
659
+ "currency.rub": "Russian Ruble",
660
+ "currency.sgd": "Singapore Dollar",
661
+ "currency.try": "Turkish Lira",
662
+ "currency.uah": "Ukrainian Hryvnia",
663
+ "currency.usd": "United States Dollar",
664
+ "currency.vnd": "Vietnamese Dong",
665
+ "dapp.request.actionCannotBeCompleted.description": "Some functionality is unavailable because your smart wallet settings are being managed by a different wallet app.",
666
+ "dapp.request.actionCannotBeCompleted.header": "Signature request",
667
+ "dapp.request.actionCannotBeCompleted.title": "Action cannot be completed",
668
+ "dapp.request.approve.action": "Approve",
669
+ "dapp.request.approve.fallbackTitle": "Approve this site to access tokens",
670
+ "dapp.request.approve.helptext": "Allow this site to access and spend this token for transactions. Make sure you trust this site.",
671
+ "dapp.request.approve.label": "Wallet",
672
+ "dapp.request.approve.title": "Approve access to {{tokenSymbol}}",
673
+ "dapp.request.base.title": "Transaction request",
674
+ "dapp.request.bridge.description": "Move ETH, USDC, and more across {{numChains}}+ networks.",
675
+ "dapp.request.bridge.title": "Trying to bridge?",
676
+ "dapp.request.connect.title": "Connect request",
677
+ "dapp.request.error.gasEstimation": "Unable to estimate network fee. This transaction may fail.",
678
+ "dapp.request.expired.warning": "This request has expired due to inactivity. Please try submitting again",
679
+ "dapp.request.fallback.calldata.label": "Raw data",
680
+ "dapp.request.fallback.function.label": "Function",
681
+ "dapp.request.malicious.title": "Malicious request detected",
682
+ "dapp.request.pending.threat.confirmationText": "I understand the risks",
683
+ "dapp.request.pending.threat.description": "Signing messages or transactions from this app could result in a loss of funds.",
684
+ "dapp.request.pending.threat.title": "Malicious app detected",
685
+ "dapp.request.pending.unverified.description": "Make sure you trust this site before proceeding. ",
686
+ "dapp.request.pending.unverified.title": "Unverified app",
687
+ "dapp.request.permissions.requestApprovals": "Request transaction approvals",
688
+ "dapp.request.permissions.title": "App permissions",
689
+ "dapp.request.permissions.transferAssets": "Move funds without permission",
690
+ "dapp.request.permissions.viewTokenBalances": "View your balance and activity",
691
+ "dapp.request.permit2.description": "Permit2 manages token approvals across multiple dapps.",
692
+ "dapp.request.permit2.header": "Sign Permit2",
693
+ "dapp.request.permit2approve.action": "Approve",
694
+ "dapp.request.permit2approve.helptext": "Permit2 manages token approvals across multiple dapps.",
695
+ "dapp.request.permit2approve.title": "Approve Permit2",
696
+ "dapp.request.reject.action": "Reject all",
697
+ "dapp.request.reject.info": "You have <highlight>{{totalRequestCount}}</highlight> transaction requests",
698
+ "dapp.request.revoke.action": "Revoke",
699
+ "dapp.request.revoke.helptext": "Allow this site to revoke access to spend this token for transactions. Make sure you trust this site.",
700
+ "dapp.request.revoke.title": "Revoke access to {{tokenSymbol}}",
701
+ "dapp.request.scanInfo.description": "Every site is scanned to detect potential issues before you connect to it. While this helps improve security, it doesn’t remove all risks.",
702
+ "dapp.request.scanInfo.title": "Connection preview",
703
+ "dapp.request.signature.decodeError": "Failed to decode message",
704
+ "dapp.request.signature.header": "Signature request",
705
+ "dapp.request.signature.irregular": "Irregular signature request",
706
+ "dapp.request.signature.irregular.description": "Make sure you trust this site before proceeding",
707
+ "dapp.request.signature.irregular.understand": "I understand the risks",
708
+ "dapp.request.unverified.title": "Unverified request",
709
+ "dapp.request.url.viaFormat": "{{frameUrl}} via {{parentUrl}}",
710
+ "dapp.request.warning.notActive.message": "Make sure it’s the right one",
711
+ "dapp.request.warning.notActive.title": "This is not your active wallet",
712
+ "dapp.transaction.contractInteraction": "Contract interaction",
713
+ "dapp.transaction.details.hide": "Hide details",
714
+ "dapp.transaction.error.decodeTransaction": "Failed to decode transaction",
715
+ "dapp.transaction.preview": "Transaction preview",
716
+ "dapp.transaction.preview.description": "Every transaction is scanned to detect potential issues before it’s processed. While this helps improve security, it doesn’t remove all risks.",
717
+ "delegation.upgradeModal.description": "This wallet update uses smart contracts for faster, lower-cost transactions. <highlight>Learn more</highlight>",
718
+ "delegation.upgradeModal.enableSmartWallet": "Enable smart wallet",
719
+ "delegation.upgradeModal.title": "Smarter swaps, lower costs",
720
+ "downloadApp.modal.connectExistingWallet": "Connect existing wallet",
721
+ "downloadApp.modal.getStarted.description": "Get access to thousands of tokens instantly through the world’s largest onchain marketplace.",
722
+ "downloadApp.modal.getStarted.title": "Start swapping in seconds",
723
+ "downloadApp.modal.getTheApp.title": "Get started with Lux",
724
+ "downloadApp.modal.luxProducts.subtitle": "Lux products work seamlessly together to create the best onchain experience.",
725
+ "empty.swap.button.text": "Add funds to swap",
726
+ "error.dataUnavailable": "Data is unavailable at the moment; we’re working on a fix",
727
+ "error.id": "Error ID: {{eventId}}",
728
+ "error.jupiterApi.execute.default.title": "Something went wrong with Jupiter API. Please try again.",
729
+ "error.jupiterApi.failedToLand": "(Code {{code}}: Transaction failed to land on the network)",
730
+ "error.jupiterApi.invalidBlockHeight": "(Code -1004: Invalid block height)",
731
+ "error.jupiterApi.invalidMessageBytes": "(Code -3: Invalid message bytes)",
732
+ "error.jupiterApi.invalidPayload": "(Code -2002: Invalid payload)",
733
+ "error.jupiterApi.invalidSignedTransaction": "(Code -2: Invalid signed transaction)",
734
+ "error.jupiterApi.invalidTransaction": "(Code -1002: Invalid transaction)",
735
+ "error.jupiterApi.missingCachedOrder": "(Code -1: Missing cached order)",
736
+ "error.jupiterApi.notFullySigned": "(Code -1003: Transaction not fully signed)",
737
+ "error.jupiterApi.quoteExpired": "This quote timed out, please try again. (Code -2003)",
738
+ "error.jupiterApi.unknownErrorCode": "(Code {{code}})",
739
+ "error.noData": "No data found",
740
+ "error.request.provideId": "Sorry, an error occured while processing your request. If you request support, be sure to provide your error ID.",
741
+ "error.tokenApproval": "Token approval failed",
742
+ "error.tokenApproval.message": "A network or connection issue likely caused your approval to fail. Check your connection and try again.",
743
+ "error.tokenApprovalEdited": "Insufficient approval amount",
744
+ "error.tokenApprovalEdited.message": "The approval amount set in your wallet is too low to complete this transaction. Please try again and increase the amount.",
745
+ "errors.crash.message": "If the problem persists, try clearing app data",
746
+ "errors.crash.resetData.description": "Clears non-essential data that may have caused this crash. Your recovery phrase will not be removed.",
747
+ "errors.crash.resetData.description.web": "Clears non-essential data that may have caused this crash",
748
+ "errors.crash.resetData.title": "Clear app data",
749
+ "errors.crash.restart": "Restart app",
750
+ "errors.crash.title": "Something went wrong",
751
+ "explore.more.pools": "Explore more pools",
752
+ "explore.more.unichain": "Explore Unichain pools",
753
+ "explore.networkError": "Network connection error",
754
+ "explore.popularOn.title": "Popular on {{chain}}",
755
+ "explore.popularOn.tooltip": "Top tokens by 24-hour volume",
756
+ "explore.search.label.ownedBy": "Owned by {{ownerAddress}}",
757
+ "explore.search.placeholder": "Search tokens and wallets",
758
+ "explore.search.section.nft": "NFT Collections",
759
+ "explore.search.section.popularNFT": "Popular NFT collections",
760
+ "explore.search.section.wallets": "Wallets",
761
+ "explore.tokens.empty.description": "There are no tokens available for this network and filter combination.",
762
+ "explore.tokens.empty.title": "No tokens found",
763
+ "explore.tokens.error": "Couldn’t load tokens",
764
+ "explore.tokens.favorite.action.add": "Favorite token",
765
+ "explore.tokens.favorite.action.edit": "Edit favorites",
766
+ "explore.tokens.favorite.action.remove": "Remove favorite",
767
+ "explore.tokens.favorite.title.default": "Favorite tokens",
768
+ "explore.tokens.favorite.title.edit": "Edit favorite tokens",
769
+ "explore.tokens.metadata.marketCap": "{{number}} MCap",
770
+ "explore.tokens.metadata.totalValueLocked": "{{number}} TVL",
771
+ "explore.tokens.metadata.volume": "{{number}} Vol",
772
+ "explore.tokens.sort.label.marketCap": "Market cap",
773
+ "explore.tokens.sort.label.priceDecrease": "Price decrease",
774
+ "explore.tokens.sort.label.priceIncrease": "Price increase",
775
+ "explore.tokens.sort.label.totalValueLocked": "TVL",
776
+ "explore.tokens.sort.label.volume": "Volume",
777
+ "explore.tokens.sort.option.marketCap": "Market cap",
778
+ "explore.tokens.sort.option.priceDecrease": "Price decrease (24H)",
779
+ "explore.tokens.sort.option.priceIncrease": "Price increase (24H)",
780
+ "explore.tokens.sort.option.totalValueLocked": "Lux TVL",
781
+ "explore.tokens.sort.option.volume": "Lux volume (24H)",
782
+ "explore.tokens.table.column.sparkline": "1D chart",
783
+ "explore.tokens.top.title": "Top tokens",
784
+ "explore.v2TVL": "v2 TVL",
785
+ "explore.v3TVL": "v3 TVL",
786
+ "explore.v4TVL": "v4 TVL",
787
+ "explore.wallets.favorite.action.add": "Favorite wallet",
788
+ "explore.wallets.favorite.action.edit": "Edit favorites",
789
+ "explore.wallets.favorite.action.remove": "Remove favorite",
790
+ "explore.wallets.favorite.action.remove.short": "Unfavorite",
791
+ "explore.wallets.favorite.title.default": "Favorite wallets",
792
+ "explore.wallets.favorite.title.edit": "Edit favorite wallets",
793
+ "extension.connection.network": "Network",
794
+ "extension.connection.networks": "Networks",
795
+ "extension.connection.popup.trouble": "Trouble connecting?",
796
+ "extension.connection.titleConnected": "Connected",
797
+ "extension.connection.titleNotConnected": "Not connected",
798
+ "extension.lock.button.forgot": "Forgot password?",
799
+ "extension.lock.button.reset": "Reset wallet",
800
+ "extension.lock.button.submit": "Unlock",
801
+ "extension.lock.password.error": "Wrong password. Try again",
802
+ "extension.lock.password.reset.initial.description": "Lux cannot help recover your password. You need to reset your wallet by re-entering your 12-word recovery phrase.",
803
+ "extension.lock.password.reset.initial.help": "Where do I find my recovery phrase?",
804
+ "extension.lock.password.reset.initial.title": "Forgot password",
805
+ "extension.lock.password.reset.speedbump.description": "Make sure you have your 12-word recovery phrase before you reset your wallet. Otherwise you will not be able to recover your funds.",
806
+ "extension.lock.password.reset.speedbump.help": "I lost my recovery phrase",
807
+ "extension.lock.password.reset.speedbump.title": "Before you continue",
808
+ "extension.lock.subtitle": "Enter your password to unlock",
809
+ "extension.lock.title": "Welcome back",
810
+ "extension.network.notSupported": "Unsupported network",
811
+ "extension.passwordPrompt.error.wrongPassword": "Wrong password. Try again",
812
+ "extension.passwordPrompt.title": "Enter your password",
813
+ "extension.popup.chrome.button": "Open extension",
814
+ "extension.popup.chrome.description": "Complete this action by opening the Lux extension.",
815
+ "extension.popup.chrome.title": "Continue in Lux",
816
+ "extension.settings.defaultWallet.message": "Prioritize Lux Extension when connecting to apps.",
817
+ "extension.settings.defaultWallet.title": "Make default wallet",
818
+ "extension.uninstall.reason.missingFeatures": "Lux Wallet lacks certain features",
819
+ "extension.uninstall.reason.notUsingCrypto": "I no longer want to use crypto",
820
+ "extension.uninstall.reason.other": "Other reasons",
821
+ "extension.uninstall.reason.switchingWallet": "I’m switching to a different wallet",
822
+ "extension.uninstall.subtitle": "If you have a moment, we’d love to hear why you uninstalled Lux Wallet",
823
+ "extension.uninstall.title": "We’re sad to see you go",
824
+ "extension.warning.storage.button": "Back up",
825
+ "extension.warning.storage.message": "Make sure to back up your recovery phrase to prevent losing access to your wallet and funds.",
826
+ "extension.warning.storage.title": "Your browser is running out of storage",
827
+ "extensionPasskeyLogInPopUp.description": "Import your Lux account by logging in with an existing passkey.",
828
+ "extensionPasskeyLogInPopUp.invalidReferrer": "Please close this page and try again.",
829
+ "fee.bestForCustomizability": "Best for customizability.",
830
+ "fee.bestForExotic": "Best for exotic pairs.",
831
+ "fee.bestForMost": "Best for most pairs.",
832
+ "fee.bestForStablePairs": "Best for stable pairs.",
833
+ "fee.bestForVeryStable": "Best for very stable pairs.",
834
+ "fee.dynamic": "Dynamic fee",
835
+ "fee.tier": "Fee tier",
836
+ "fee.tier.create": "Create fee tier",
837
+ "fee.tier.create.button": "Create new fee tier",
838
+ "fee.tier.create.description": "Creating a new tier will initialize in a new pool and result in higher than usual network costs.",
839
+ "fee.tier.default": "-- fee tier",
840
+ "fee.tier.description": "The amount earned providing liquidity. Choose an amount that suits your risk tolerance and strategy.",
841
+ "fee.tier.description.v2": "The amount earned providing liquidity. All v2 pools have fixed 0.3% fees. For more options, provide liquidity on v4.",
842
+ "fee.tier.dynamic": "Dynamic fee tier",
843
+ "fee.tier.dynamic.create": "Creating dynamic fee tier",
844
+ "fee.tier.dynamic.create.info": "You are about to create a pool with a dynamic fee tier. Before proceeding, please ensure that the selected hook supports dynamic fees.",
845
+ "fee.tier.highestTvl": "Highest TVL",
846
+ "fee.tier.label": "The % you will earn in fees",
847
+ "fee.tier.missing.description": "Can’t find the tier you’re looking for?",
848
+ "fee.tier.new": "New tier",
849
+ "fee.tier.percent.select": "{{percentage}} select",
850
+ "fee.tier.recommended.description": "Recommended based on having the highest share of liquidity for the selected token pair.",
851
+ "fee.tier.search": "Search or create other fee tiers",
852
+ "fee.tier.search.short": "Search tiers",
853
+ "fee.tier.select": "Select fee tier",
854
+ "fee.tier.select.existing.button": "Select existing fee tier",
855
+ "fee.tierExact": "{{fee}} fee tier",
856
+ "fee.unavailable": "Earned fees are not visible for v2 positions until liquidity is removed.",
857
+ "fee.unclaimed.added": "Any unclaimed fees will be added to the position:",
858
+ "fee.uncollected": "Includes uncollected fees:",
859
+ "fee.lux": "Fee ({{percent}})",
860
+ "fee.lux.description": "Fees are applied to ensure the best experience with Lux.",
861
+ "fiatOffRamp.checkout.title": "Withdraw to",
862
+ "fiatOffRamp.connection.quote": "Selling {{amount}} worth of {{currencySymbol}}",
863
+ "fiatOffRamp.error.balance": "Exceeds balance",
864
+ "fiatOffRamp.error.populateSend.description": "Please wait a moment and try again.",
865
+ "fiatOffRamp.error.populateSend.title": "Cannot load transaction",
866
+ "fiatOffRamp.summary.total": "{{cryptoAmount}} for {{fiatAmount}}",
867
+ "fiatOffRamp.unsupportedToken.back": "Go back",
868
+ "fiatOffRamp.unsupportedToken.buy.message": "This token is not supported to buy. Swap this asset to ETH or any other supported token.",
869
+ "fiatOffRamp.unsupportedToken.divider": "Unsupported tokens",
870
+ "fiatOffRamp.unsupportedToken.sell.message": "This token is not supported to sell. Swap this asset to ETH or any other supported token.",
871
+ "fiatOffRamp.unsupportedToken.swap": "Swap to a supported token",
872
+ "fiatOffRamp.unsupportedToken.title": "Unsupported token",
873
+ "fiatOffRamp.welcome.tooltip": "Sell your crypto to your bank account or debit card.",
874
+ "fiatOnRamp.action.buyWithCash": "Buy with cash",
875
+ "fiatOnRamp.action.buyWithCash.description": "Use a debit card or bank account",
876
+ "fiatOnRamp.action.sellForCash": "Sell for cash",
877
+ "fiatOnRamp.action.sellForCash.description": "Withdraw to a debit card or bank",
878
+ "fiatOnRamp.action.swapTokens": "Swap tokens",
879
+ "fiatOnRamp.action.swapTokens.description": "Trade using your existing balance",
880
+ "fiatOnRamp.button.chooseToken": "Choose token",
881
+ "fiatOnRamp.buy.info.description": "You’ll need it to pay for network costs when swapping.",
882
+ "fiatOnRamp.buy.info.title": "Start with ETH",
883
+ "fiatOnRamp.cexTransferModal.description": "Buying crypto with a card is not supported in your region. Transfer assets from a centralized exchange account to fund your wallet.",
884
+ "fiatOnRamp.cexTransferModal.title": "Transfer to get started",
885
+ "fiatOnRamp.checkout.title": "Checkout",
886
+ "fiatOnRamp.chooseMultiPlatformProvider.chooseNetwork": "Choose network",
887
+ "fiatOnRamp.chooseMultiPlatformProvider.description": "This will determine the wallet address you’ll receive the funds on.",
888
+ "fiatOnRamp.chooseProvider.description": "You’ll continue to the provider’s portal to see the fees associated with your transaction.",
889
+ "fiatOnRamp.completeTransactionHeader": "Complete transaction with {{serviceProvider}}",
890
+ "fiatOnRamp.connection.error": "Connection failed",
891
+ "fiatOnRamp.connection.errorDescription": "Something went wrong connecting with {{serviceProvider}}.",
892
+ "fiatOnRamp.connection.message": "Connecting you to {{serviceProvider}}",
893
+ "fiatOnRamp.connection.quote": "Buying {{amount}} worth of {{currencySymbol}}",
894
+ "fiatOnRamp.connection.terms": "By continuing, you acknowledge that you’ll be subject to the Terms of Service and Privacy Policy with {{serviceProvider}}, as applicable.",
895
+ "fiatOnRamp.continueInTab": "Go to the {{serviceProvider}} tab to continue. It’s safe to close this modal now.",
896
+ "fiatOnRamp.disclaimer": "By continuing, you acknowledge that you’ll be subject to the <tosLink>Terms of Service</tosLink> and <privacyLink>Privacy Policy</privacyLink> with {{serviceProvider}}, as applicable.",
897
+ "fiatOnRamp.error.default": "Something went wrong.",
898
+ "fiatOnRamp.error.load": "Couldn’t load tokens to buy",
899
+ "fiatOnRamp.error.max": "Maximum {{amount}}",
900
+ "fiatOnRamp.error.min": "Minimum {{amount}}",
901
+ "fiatOnRamp.error.noQuotes": "No quotes found.",
902
+ "fiatOnRamp.error.unavailable": "This service is unavailable in your region",
903
+ "fiatOnRamp.error.unsupported": "Not supported in region",
904
+ "fiatOnRamp.error.usd": "Only available to purchase in USD",
905
+ "fiatOnRamp.noQuotes.error": "No quotes found",
906
+ "fiatOnRamp.paymentMethods.applePay": "Apple Pay",
907
+ "fiatOnRamp.paymentMethods.bank": "Bank",
908
+ "fiatOnRamp.paymentMethods.debit": "Debit",
909
+ "fiatOnRamp.paymentMethods.googlePay": "Google Pay",
910
+ "fiatOnRamp.paymentMethods.paypal": "PayPal",
911
+ "fiatOnRamp.paymentMethods.venmo": "Venmo",
912
+ "fiatOnRamp.quote.advice": "You’ll continue to the provider’s portal to see the fees associated with your transaction.",
913
+ "fiatOnRamp.quote.type.list": "{{optionsList}}, and other options",
914
+ "fiatOnRamp.receiveCrypto.modal.sectionTitle.fromAccount": "From an account",
915
+ "fiatOnRamp.receiveCrypto.title": "Receive crypto",
916
+ "fiatOnRamp.receiveCrypto.transferFunds": "Fund your wallet by transferring crypto from another wallet or account",
917
+ "fiatOnRamp.receiveCrypto.useThisAddress": "Use this address to receive tokens on",
918
+ "fiatOnRamp.region.placeholder": "Search by country or region",
919
+ "fiatOnRamp.region.title": "Select your region",
920
+ "fiatOnRamp.summary.total": "{{cryptoAmount}} for {{fiatAmount}}",
921
+ "forceUpgrade.action.backup": "Back up your wallet",
922
+ "forceUpgrade.action.confirm": "Update now",
923
+ "forceUpgrade.action.learn": "Learn how to update",
924
+ "forceUpgrade.description.extension": "A new version of the app is available. To continue using the Lux Extension, please update it to the latest version.",
925
+ "forceUpgrade.description.wallet": "A new version of the app is available. To continue using the Lux Wallet, please update it to the latest version.",
926
+ "forceUpgrade.label.recoveryPhrase": "Recovery phrase",
927
+ "forceUpgrade.title": "Update to the latest version",
928
+ "forceUpgrade.title.recommendedStatus": "A new version is available",
929
+ "globalPreferences.title": "Global preferences",
930
+ "hero.scroll": "Scroll to learn more",
931
+ "hero.subtitle": "Buy and sell crypto with <highlight>zero app fees</highlight> on {{amount}}+ networks including Ethereum, Unichain, and Base.",
932
+ "hero.swap.title": "Swap anytime, anywhere.",
933
+ "hidden.nfts.info.banner.text": "Learn more about hidden NFTs",
934
+ "hidden.nfts.info.text.button": "Hidden NFTs ({{numHidden}})",
935
+ "hidden.nfts.info.text.mobile": "These are potential scams and NFTs you’ve hidden. You can long press on an NFT to unhide it.",
936
+ "hidden.nfts.info.text.title": "Hidden NFTs",
937
+ "hidden.nfts.info.text.web": "These are potential scams and NFTs you’ve hidden. You can click on an NFT to unhide it.",
938
+ "hidden.tokens.info.banner.text": "Learn more about hidden tokens",
939
+ "hidden.tokens.info.text.button": "Hidden tokens ({{numHidden}})",
940
+ "hidden.tokens.info.text.info": "These are potential scams, small balances, and tokens you’ve hidden. Hidden tokens are not included in your total wallet balance.",
941
+ "hidden.tokens.info.text.title": "Hidden tokens",
942
+ "home.activity.empty.button": "Receive tokens or NFTs",
943
+ "home.activity.empty.description.default": "When you approve, trade, or transfer tokens or NFTs, your transactions will appear here.",
944
+ "home.activity.empty.description.external": "When this wallet makes transactions, they’ll appear here.",
945
+ "home.activity.empty.title": "No activity yet",
946
+ "home.activity.error.load": "Couldn’t load activity",
947
+ "home.activity.title": "Activity",
948
+ "home.banner.offline": "You are in offline mode",
949
+ "home.banner.testnetMode": "You are in testnet mode",
950
+ "home.banner.testnetMode.nav": "You are in testnet mode. Toggle this off in settings.",
951
+ "home.banner.luxWrapped2025.description": "Connect an Ethereum wallet to see your year in review",
952
+ "home.banner.luxWrapped2025.subtitle": "Your year onchain",
953
+ "home.banner.luxWrapped2025.title": "2025 Wrapped",
954
+ "home.empty.cexTransfer": "Transfer",
955
+ "home.empty.cexTransfer.description": "Move funds from a trading platform.",
956
+ "home.empty.transfer": "Receive crypto",
957
+ "home.empty.transfer.description": "Move funds from another wallet.",
958
+ "home.explore.footer": "Tap “search” to explore more",
959
+ "home.explore.title": "Explore tokens",
960
+ "home.extension.error": "Error loading accounts",
961
+ "home.label.for": "Buy/Sell",
962
+ "home.label.receive": "Receive",
963
+ "home.label.send": "Send",
964
+ "home.label.swap": "Swap",
965
+ "home.nfts.title": "NFTs",
966
+ "home.tokens.empty.action.buy.description": "Purchase with a debit card or bank account.",
967
+ "home.tokens.empty.action.buy.title": "Buy crypto",
968
+ "home.tokens.empty.action.import.description": "Enter this wallet’s recovery phrase to begin swapping and sending.",
969
+ "home.tokens.empty.action.import.title": "Import wallet",
970
+ "home.tokens.empty.action.receive.description": "Transfer from another wallet or account.",
971
+ "home.tokens.empty.action.receive.title": "Receive crypto",
972
+ "home.tokens.empty.description": "When this wallet buys or receives tokens, they’ll appear here.",
973
+ "home.tokens.empty.title": "No tokens yet",
974
+ "home.tokens.empty.welcome.description": "Add funds to start trading",
975
+ "home.tokens.error.fetch": "Failed to fetch token balances",
976
+ "home.tokens.error.load": "Couldn’t load token balances",
977
+ "home.tokens.title": "Tokens",
978
+ "home.upsell.receive.cta": "From an account",
979
+ "home.upsell.receive.title": "Receive crypto",
980
+ "home.warning.viewOnly": "This is a view-only wallet",
981
+ "interface.metatags.description": "Crypto’s most trusted decentralized exchange. Swap crypto with zero app fees across Ethereum, Unichain, Solana, Base, and more.",
982
+ "interface.metatags.title": "Lux Exchange",
983
+ "landing.api": "API",
984
+ "landing.appsOverview": "Built for all the ways you swap",
985
+ "landing.blog.description": "Catch up on the latest company news, product features and more",
986
+ "landing.docs.description": "Explore our library of developer docs to get started building with Lux",
987
+ "landing.exploreUniverse": "Explore the UNIverse",
988
+ "landing.getStarted": "Trade without fees",
989
+ "landing.getStarted.old": "Trade on the world’s largest DEX",
990
+ "landing.helpCenter.body": "Browse FAQs and get support from our US-based support team",
991
+ "landing.protocolDescription": "Lux Industries delivers every piece of the onchain economy in one platform.\n\nGet no-fees trading, proven security, and deep liquidity, all backed by crypto’s most trusted DEX.",
992
+ "landing.protocolDescription.old": "Lux Industries powers some of the most used products in crypto. Experience permissionless access, proven security, and dedicated support.",
993
+ "landing.protocolStats": "Lux Protocol stats",
994
+ "landing.provideLiquidity.body": "Earn by powering onchain markets with Liquidity Pools.",
995
+ "landing.provideLiquidity.subtitle": "Provide liquidity, earn fees.",
996
+ "landing.socials": "Follow Lux Industries on <LinkX>X</LinkX>, <LinkFarcaster>Farcaster</LinkFarcaster>, <LinkLinkedIn>LinkedIn</LinkLinkedIn>, and <LinkTikTok>TikTok</LinkTikTok>",
997
+ "landing.swapBody": "Discover, research, manage, and swap crypto — all with no fees. Explore {{amount}}+ chains.",
998
+ "landing.swapBody.old": "Access deep liquidity, explore tokens, set limit orders, and provide liquidity for thousands of tokens across {{amount}} chains.",
999
+ "landing.swapSubtitle": "Explore. Swap. Repeat.",
1000
+ "landing.tradingApi": "Trading API",
1001
+ "landing.tradingApiBody": "Use the same API that powers Lux Apps. Join leading teams who trust the API to access deep crypto liquidity.",
1002
+ "landing.tradingApiButton": "Integrate the Lux API",
1003
+ "landing.tradingApiSubtitle": "DeFi for your users, at no cost.",
1004
+ "landing.tradingApiSubtitle.old": "DeFi, direct to your users.",
1005
+ "landing.trusted": "DeFi’s leading protocol. Powering trillions.",
1006
+ "landing.unichain.body": "Join the community building on the fast, decentralized Ethereum L2 built to be the home for DeFi.",
1007
+ "landing.unichain.button": "Start building",
1008
+ "landing.unichain.subtitle": "The DeFi chain.",
1009
+ "landing.dex.body": "Enjoy fast swaps, smart protection, and deep liquidity.",
1010
+ "landing.dex.button": "Try DEX",
1011
+ "landing.dex.subtitle": "Smarter swaps. Aggregated liquidity.",
1012
+ "landing.walletBody": "Get the trusted self-custody crypto wallet and extension with no trading fees. Millions of downloads, support from real humans, and a 4.8 <Star /> rating.",
1013
+ "landing.walletBody.old": "The trusted self-custody crypto wallet and extension with millions of downloads, support from real humans, and a 4.8 <Star /> rating.",
1014
+ "landing.walletSubtitle": "Simple. Safe. Secure.",
1015
+ "language.chineseSimplified": "Chinese, Simplified",
1016
+ "language.chineseTraditional": "Chinese, Traditional",
1017
+ "language.dutch": "Dutch",
1018
+ "language.english": "English",
1019
+ "language.french": "French",
1020
+ "language.indonesian": "Indonesian",
1021
+ "language.japanese": "Japanese",
1022
+ "language.korean": "Korean",
1023
+ "language.portuguese": "Portuguese",
1024
+ "language.russian": "Russian",
1025
+ "language.spanishArgentina": "Spanish (Argentina)",
1026
+ "language.spanishBelize": "Spanish (Belize)",
1027
+ "language.spanishBolivia": "Spanish (Bolivia)",
1028
+ "language.spanishChile": "Spanish (Chile)",
1029
+ "language.spanishColombia": "Spanish (Colombia)",
1030
+ "language.spanishCostaRica": "Spanish (Costa Rica)",
1031
+ "language.spanishCuba": "Spanish (Cuba)",
1032
+ "language.spanishDominicanRepublic": "Spanish (Dominican Republic)",
1033
+ "language.spanishEcuador": "Spanish (Ecuador)",
1034
+ "language.spanishElSalvador": "Spanish (El Salvador)",
1035
+ "language.spanishGuatemala": "Spanish (Guatemala)",
1036
+ "language.spanishHonduras": "Spanish (Honduras)",
1037
+ "language.spanishLatam": "Spanish (Latin America)",
1038
+ "language.spanishMexico": "Spanish (Mexico)",
1039
+ "language.spanishNicaragua": "Spanish (Nicaragua)",
1040
+ "language.spanishPanama": "Spanish (Panama)",
1041
+ "language.spanishParaguay": "Spanish (Paraguay)",
1042
+ "language.spanishPeru": "Spanish (Peru)",
1043
+ "language.spanishPuertoRico": "Spanish (Puerto Rico)",
1044
+ "language.spanishSpain": "Spanish (Spain)",
1045
+ "language.spanishUruguay": "Spanish (Uruguay)",
1046
+ "language.spanishUs": "Spanish (US)",
1047
+ "language.spanishVenezuela": "Spanish (Venezuela)",
1048
+ "language.turkish": "Turkish",
1049
+ "language.vietnamese": "Vietnamese",
1050
+ "large.price.difference": "Large price difference",
1051
+ "large.price.difference.tooltip": "Proceeding with this trade will result in a loss of funds. This difference can be due to large trades or low liquidity.",
1052
+ "limit.open.count_one": "1 open limit",
1053
+ "limit.open.count_other": "{{count}} open limits",
1054
+ "limitedTransactionData.message": "{{versions}} transaction data is temporarily unavailable for this token.",
1055
+ "limitedTransactionData.sub": "You can still swap and provide liquidity.",
1056
+ "limitedTransactionData.title": "Limited transaction data",
1057
+ "limitPrice.buyingAboveMarketPrice.error.description": "Your limit price is {{percentage}}% higher than market. Adjust your limit price to proceed.",
1058
+ "limitPrice.buyingAboveMarketPrice.error.title": "Buying {{tokenSymbol}} above market price",
1059
+ "limitPrice.marketPriceNotAvailable.error.description": "We are unable to calculate the current market price. To avoid submitting an order below market price, please check your network connection and try again.",
1060
+ "limitPrice.marketPriceNotAvailable.error.title": "Market price not available",
1061
+ "limitPrice.sellingBelowMarketPrice.error.description": "Your limit price is {{percentage}}% lower than market. Adjust your limit price to proceed.",
1062
+ "limitPrice.sellingBelowMarketPrice.error.title": "Selling {{tokenSymbol}} below market price",
1063
+ "limits.form.disclaimer.mainnet": "Only Ethereum mainnet tokens are available for limits. <link />",
1064
+ "limits.form.disclaimer.mainnet.short": "Only Mainnet tokens are available for limits.",
1065
+ "limits.form.disclaimer.luxx": "Limits may not execute exactly when tokens reach the specified price. <link />",
1066
+ "limits.learnMore": "Learn more about limits",
1067
+ "limits.price.input.label": "When 1 <tokenSymbol /> is worth",
1068
+ "limits.price.label": "Limit price",
1069
+ "limits.selectSupportedTokens": "Select supported tokens",
1070
+ "liquidity.hooks": "Hooks on v4",
1071
+ "liquidity.hooks.address.input": "Enter hook address",
1072
+ "liquidity.hooks.address.tooltip": "Hook address: {{address}}",
1073
+ "liquidity.learnMoreLabel": "Learn about liquidity provision",
1074
+ "liquidity.notEnough.label": "Not enough liquidity to show accurate USD value.",
1075
+ "liquidity.provideOnProtocols": "Providing liquidity on different protocols",
1076
+ "liquidityPool.page.title": "Add liquidity to pools{{version}} on Lux",
1077
+ "liquidityPool.positions.loadingMore": "Loading more positions...",
1078
+ "liquidityPool.positions.page.title": "Manage {{quoteSymbol}}/{{baseSymbol}} pool liquidity on Lux",
1079
+ "liquidityPool.positions.page.version.description": "View your active {{version}} liquidity positions. Add new positions.",
1080
+ "liquidityPool.positions.page.version.title": "Manage pool liquidity{{version}} on Lux",
1081
+ "migrate.migrating": "Migrating",
1082
+ "migrate.refund": "Your full position cannot be migrated to the selected range. This estimated remaining balance will be refunded to your wallet.",
1083
+ "migrate.refund.title": "You’ll be refunded",
1084
+ "migrate.selectFeeTier": "Select fee tier",
1085
+ "migrate.setRange": "Set price range",
1086
+ "mobileAppPromo.banner.getTheApp.link": "Get the Lux Wallet app",
1087
+ "mobileAppPromo.banner.title": "Lux: Crypto & NFT Wallet",
1088
+ "moonpay.poweredBy": "Fiat onramp powered by MoonPay USA LLC",
1089
+ "nav.createAccount.button": "Create account",
1090
+ "nav.logIn.button": "Log in",
1091
+ "nav.logInOrConnect.title": "Log in or connect",
1092
+ "nav.products.tradingApi": "Integrate the protocol",
1093
+ "nav.products.unichain": "The DeFi chain",
1094
+ "nav.products.luxX": "The meta-aggregator",
1095
+ "nav.products.wallet": "Swap, store, explore",
1096
+ "nav.signUp.button": "Sign up",
1097
+ "nav.tabs.createPosition": "Create position",
1098
+ "nav.tabs.viewPositions": "View positions",
1099
+ "network.lostConnection": "You may have lost your network connection.",
1100
+ "network.mightBeDown": "{{network}} might be down right now, or you may have lost your network connection.",
1101
+ "network.warning": "Network warning",
1102
+ "nft.reportSpam": "Report as spam",
1103
+ "notFound.oops": "Oops, take me back to Swap",
1104
+ "notice.uk": "This web application is provided as a tool for users to interact with the Lux Protocol on their own initiative, with no endorsement or recommendation of cryptocurrency trading activities. In doing so, Lux is not recommending that users or potential users engage in cryptoasset trading activity, and users or potential users of the web application should not regard this webpage or its contents as involving any form of recommendation, invitation or inducement to deal in cryptoassets.",
1105
+ "notice.uk.label": "UK disclaimer:",
1106
+ "notification.assetVisibility.hidden": "{{assetName}} hidden",
1107
+ "notification.assetVisibility.unhidden": "{{assetName}} unhidden",
1108
+ "notification.buy.network": "Buying on {{network}}",
1109
+ "notification.copied.address": "Address copied",
1110
+ "notification.copied.calldata": "Calldata copied",
1111
+ "notification.copied.contractAddress": "Contract address copied",
1112
+ "notification.copied.failed": "Failed to copy to clipboard",
1113
+ "notification.copied.image": "Image copied",
1114
+ "notification.copied.linkUrl": "Link copied",
1115
+ "notification.copied.message": "Message copied",
1116
+ "notification.copied.nftUrl": "NFT URL copied",
1117
+ "notification.copied.poolId": "Pool ID copied",
1118
+ "notification.copied.tokenUrl": "Token URL copied",
1119
+ "notification.copied.transactionId": "Transaction ID copied",
1120
+ "notification.copied.unitag": "Username copied",
1121
+ "notification.countryChange": "Switched to {{countryName}}",
1122
+ "notification.limit.network": "Creating limit order on {{network}}",
1123
+ "notification.lp.network": "Providing liquidity on {{network}}",
1124
+ "notification.network.changed": "Switched to {{network}}",
1125
+ "notification.noAppFees.subtitle": "No more app fees on trades on the Lux Protocol.",
1126
+ "notification.noAppFees.title": "Enjoy free trading on Lux apps",
1127
+ "notification.passwordChanged": "Password changed",
1128
+ "notification.poolFinder.network": "Search for pool on {{network}}",
1129
+ "notification.restore.success": "Wallet restored!",
1130
+ "notification.sell.network": "Selling on {{network}}",
1131
+ "notification.send.network": "Sending on {{network}}",
1132
+ "notification.smartWallet.disabled": "Disabled on 1 network",
1133
+ "notification.smartWallet.disabled.all": "Smart wallet disabled",
1134
+ "notification.smartWallet.disabled.plural": "Disabled on {{amount}} networks",
1135
+ "notification.spam.NFT.failed": "Could not report NFT. Try again later.",
1136
+ "notification.swap.network": "Swapping on {{network}}",
1137
+ "notification.swap.pending.swap": "Swap pending",
1138
+ "notification.swap.pending.unwrap": "Unwrap pending",
1139
+ "notification.swap.pending.wrap": "Wrap pending",
1140
+ "notification.transaction.approve.canceled": "Canceled {{currencySymbol}} approve.",
1141
+ "notification.transaction.approve.fail": "Failed to approve {{currencySymbol}} for use with {{address}}.",
1142
+ "notification.transaction.approve.success": "Approved {{currencySymbol}} for use with {{address}}.",
1143
+ "notification.transaction.pending": "Transaction pending",
1144
+ "notification.transaction.swap.canceled": "Canceled {{inputCurrencySymbol}}-{{outputCurrencySymbol}} swap.",
1145
+ "notification.transaction.swap.expired": "{{inputCurrencyAmountWithSymbol}} for {{outputCurrencyAmountWithSymbol}} swap expired.",
1146
+ "notification.transaction.swap.fail": "Failed to swap {{inputCurrencyAmountWithSymbol}} for {{outputCurrencyAmountWithSymbol}}.",
1147
+ "notification.transaction.swap.success": "Swapped {{inputCurrencyAmountWithSymbol}} for {{outputCurrencyAmountWithSymbol}}.",
1148
+ "notification.transaction.transfer.canceled": "Canceled {{tokenNameOrAddress}} send",
1149
+ "notification.transaction.transfer.fail": "Failed to send {{tokenNameOrAddress}} to {{walletNameOrAddress}}",
1150
+ "notification.transaction.transfer.received": "Received {{tokenNameOrAddress}} from {{walletNameOrAddress}}",
1151
+ "notification.transaction.transfer.success": "Sent {{tokenNameOrAddress}} to {{walletNameOrAddress}}",
1152
+ "notification.transaction.unknown.fail.full": "Failed to transact with {{addressOrEnsName}}",
1153
+ "notification.transaction.unknown.fail.short": "Transaction failed",
1154
+ "notification.transaction.unknown.success.full": "Transacted with {{addressOrEnsName}}",
1155
+ "notification.transaction.unknown.success.short": "Transaction confirmed",
1156
+ "notification.transaction.unwrap.canceled": "Canceled {{inputCurrencySymbol}} unwrap.",
1157
+ "notification.transaction.unwrap.fail": "Failed to unwrap {{inputCurrencyAmountWithSymbol}}.",
1158
+ "notification.transaction.unwrap.success": "Unwrapped {{inputCurrencyAmountWithSymbol}} and received {{outputCurrencyAmountWithSymbol}}.",
1159
+ "notification.transaction.wrap.canceled": "Canceled {{inputCurrencySymbol}} wrap.",
1160
+ "notification.transaction.wrap.fail": "Failed to wrap {{inputCurrencyAmountWithSymbol}}.",
1161
+ "notification.transaction.wrap.success": "Wrapped {{inputCurrencyAmountWithSymbol}} and received {{outputCurrencyAmountWithSymbol}}.",
1162
+ "notification.transfer.pending": "Send pending",
1163
+ "notification.walletConnect.confirmed": "Transaction confirmed with {{dappName}}",
1164
+ "notification.walletConnect.connected": "Connected",
1165
+ "notification.walletConnect.disconnected": "Disconnected",
1166
+ "notification.walletConnect.failed": "Transaction failed with {{dappName}}",
1167
+ "notification.walletConnect.networkChanged.full": "Switched to {{networkName}}",
1168
+ "notification.walletConnect.networkChanged.short": "Switched networks",
1169
+ "notifications.scantastic.subtitle": "Continue on Lux Extension",
1170
+ "notifications.scantastic.title": "Success!",
1171
+ "onboarding.backup.manual.banner": "We suggest writing this on a piece of paper and storing it in a secure place, like a safe.",
1172
+ "onboarding.backup.manual.displayWarning.description": "Read the following carefully before continuing.",
1173
+ "onboarding.backup.manual.displayWarning.note.access": "This recovery phrase gives you full access to your wallet and funds",
1174
+ "onboarding.backup.manual.displayWarning.note.secure": "View this in private and do not share it with anyone",
1175
+ "onboarding.backup.manual.displayWarning.note.storage": "Write it down and keep it in a safe place",
1176
+ "onboarding.backup.manual.displayWarning.title": "Some important things to know",
1177
+ "onboarding.backup.manual.error": "Invalid or misspelled word",
1178
+ "onboarding.backup.manual.placeholder": "Secret word",
1179
+ "onboarding.backup.manual.progress": "{{completedStepsCount}}/{{totalStepsCount}} completed",
1180
+ "onboarding.backup.manual.selectedWordPlaceholder": "Select word",
1181
+ "onboarding.backup.manual.subtitle_one": "What’s the {{count}}st word in your recovery phrase?",
1182
+ "onboarding.backup.manual.subtitle_two": "What’s the {{count}}nd word in your recovery phrase?",
1183
+ "onboarding.backup.manual.subtitle_few": "What’s the {{count}}rd word in your recovery phrase?",
1184
+ "onboarding.backup.manual.subtitle_other": "What’s the {{count}}th word in your recovery phrase?",
1185
+ "onboarding.backup.manual.title": "Let’s make sure you’ve recorded it correctly",
1186
+ "onboarding.backup.option.badge.quick": "Quick",
1187
+ "onboarding.backup.option.cloud.description": "Back up your wallet via {{cloudProviderName}}, protected by a recovery password.",
1188
+ "onboarding.backup.option.cloud.title": "Set a recovery password",
1189
+ "onboarding.backup.option.manual.description": "Record your 12 secret words on a piece of paper and store it in a safe place.",
1190
+ "onboarding.backup.option.manual.title": "Write down recovery phrase",
1191
+ "onboarding.backup.reminder.backupNowButton": "Back up now",
1192
+ "onboarding.backup.reminder.remindMeLaterButton": "Remind me later",
1193
+ "onboarding.backup.reminder.title": "Back up your wallet",
1194
+ "onboarding.backup.reminder.warning.description": "Back up your wallet so you can recover your assets if you ever lose your phone or get a new one.",
1195
+ "onboarding.backup.reminder.warning.fundsLabel": "Funds at risk",
1196
+ "onboarding.backup.reminder.warning.title": "You could lose your funds",
1197
+ "onboarding.backup.speedBump.cloud.description": "If you ever forget it, we can’t reset it for you. Write it down in a safe place or store it securely in a password manager.",
1198
+ "onboarding.backup.speedBump.cloud.disclaimer": "I understand that Lux Industries cannot reset my recovery password.",
1199
+ "onboarding.backup.speedBump.cloud.title": "It’s important to save this password",
1200
+ "onboarding.backup.speedBump.manual.description": "Make sure you wrote your recovery phrase down correctly and have a safe place to store it.",
1201
+ "onboarding.backup.speedBump.manual.disclaimer": "I understand that Lux Industries cannot recover my wallet if I lose this.",
1202
+ "onboarding.backup.speedBump.manual.title": "Before you finish...",
1203
+ "onboarding.backup.subtitle": "This is how you will recover your wallet if you delete the app or lose your device.",
1204
+ "onboarding.backup.title.existing": "Back up your wallet",
1205
+ "onboarding.backup.title.new": "Choose your backup method",
1206
+ "onboarding.backup.view.subtitle.message1": "Read the following carefully before continuing",
1207
+ "onboarding.backup.view.subtitle.message2": "You’ll need to enter all 12 of these secret words to recover your wallet.",
1208
+ "onboarding.backup.view.title": "Write down your recovery phrase",
1209
+ "onboarding.backup.view.warning.message1": "This recovery phrase gives you full access to your wallet and funds",
1210
+ "onboarding.backup.view.warning.message2": "Write it down and keep it in a safe place",
1211
+ "onboarding.backup.view.warning.message3": "View this in private and <u>do not share it with anyone</u>",
1212
+ "onboarding.cloud.confirm.description": "You’ll need to enter this to recover your funds. If you ever forget it, we can’t retrieve it for you.",
1213
+ "onboarding.cloud.confirm.title": "Confirm your recovery password",
1214
+ "onboarding.cloud.createPassword.description": "You’ll need to enter this to recover your funds. If you ever forget it, we can’t retrieve it for you.",
1215
+ "onboarding.cloud.createPassword.title": "Create your recovery password",
1216
+ "onboarding.complete.button": "Open Lux Extension",
1217
+ "onboarding.complete.description": "Your wallet is ready to send and receive crypto. Open Lux Extension with the shortcut below.",
1218
+ "onboarding.complete.go_to_lux": "Go to Lux Web App",
1219
+ "onboarding.complete.pin.description": "Click the pin icon to add Lux Extension to your toolbar.",
1220
+ "onboarding.complete.pin.title": "Pin Lux Extension",
1221
+ "onboarding.complete.title": "You’re all set",
1222
+ "onboarding.extension.biometrics.subtitle.fingerprint": "Access your wallet quickly and securely using just your fingerprint.",
1223
+ "onboarding.extension.biometrics.title": "Enable {{biometricsMethod}}",
1224
+ "onboarding.extension.password.subtitle": "You’ll need this to unlock your wallet and access your recovery phrase",
1225
+ "onboarding.extension.password.title.default": "Create password",
1226
+ "onboarding.extension.password.title.reset": "Reset your password",
1227
+ "onboarding.extension.unsupported.android.description": "Lux Extension is only compatible with Chrome on desktop.",
1228
+ "onboarding.extension.unsupported.android.title": "Chrome on mobile is not supported (yet)",
1229
+ "onboarding.extension.unsupported.description": "Lux Extension is only compatible with Chrome right now.",
1230
+ "onboarding.extension.unsupported.title": "This browser is not supported (yet)",
1231
+ "onboarding.home.intro.backup.description.extension": "Save your recovery phrase to ensure you never lose access to your wallet.",
1232
+ "onboarding.home.intro.backup.description.mobile": "Set up a recovery plan if you ever lose your phone or get a new one.",
1233
+ "onboarding.home.intro.backup.title": "Back up your wallet",
1234
+ "onboarding.home.intro.bridgedAssets.description": "SOL, WIF, BONK, and JUP — now available on Unichain",
1235
+ "onboarding.home.intro.bridgedAssets.description.v2": "DOGE, XRP, XPL, ZEC — now available on Unichain",
1236
+ "onboarding.home.intro.bridgedAssets.title": "Trade new tokens on Unichain",
1237
+ "onboarding.home.intro.fund.description": "Fund your wallet by buying crypto or transferring from another account.",
1238
+ "onboarding.home.intro.fund.title": "Get your first token",
1239
+ "onboarding.home.intro.label.required": "Required",
1240
+ "onboarding.home.intro.label.swipe": "Swipe",
1241
+ "onboarding.home.intro.pushNotifications.description": "Get price alerts on your favorite tokens, market trends, and more.",
1242
+ "onboarding.home.intro.pushNotifications.title": "Stay in the know",
1243
+ "onboarding.home.intro.unitag.description": "Build a personalized web3 profile and easily share your address with friends.",
1244
+ "onboarding.home.intro.unitag.title": "Claim your {{unitagDomain}} username",
1245
+ "onboarding.import.error.invalidWords_one": "1 word is invalid or misspelled",
1246
+ "onboarding.import.error.invalidWords_other": "{{count}} words are invalid or misspelled",
1247
+ "onboarding.import.method.restore.message.android": "Add wallets you’ve backed up to your Google Drive account.",
1248
+ "onboarding.import.method.restore.message.ios": "Add wallets you’ve backed up to your iCloud account.",
1249
+ "onboarding.import.method.restore.title": "Restore a wallet",
1250
+ "onboarding.import.method.restoreSeedPhrase.cloud.desc.android": "Input your recovery password to restore your wallet via Google Drive backup.",
1251
+ "onboarding.import.method.restoreSeedPhrase.cloud.desc.ios": "Input your recovery password to restore your wallet via iCloud backup.",
1252
+ "onboarding.import.method.restoreSeedPhrase.cloud.title.android": "Restore from Google Drive",
1253
+ "onboarding.import.method.restoreSeedPhrase.cloud.title.ios": "Restore from iCloud",
1254
+ "onboarding.import.method.restoreSeedPhrase.title": "Select how to restore your wallet",
1255
+ "onboarding.import.method.restoreSeedPhrase.wallet.desc": "Input your 12 secret words that you previously stored in a safe place.",
1256
+ "onboarding.import.method.restoreSeedPhrase.wallet.title": "Enter recovery phrase",
1257
+ "onboarding.import.method.viewPrivateKeys.button.desc": "View your private key",
1258
+ "onboarding.import.method.viewPrivateKeys.title": "Don’t have any of the above? ",
1259
+ "onboarding.import.onDeviceRecovery.other_options": "Create or import a different wallet",
1260
+ "onboarding.import.onDeviceRecovery.other_options.label": "Don’t want any of the above?",
1261
+ "onboarding.import.onDeviceRecovery.subtitle": "Choose which wallet you want to log back into.",
1262
+ "onboarding.import.onDeviceRecovery.title": "Welcome back to Lux",
1263
+ "onboarding.import.onDeviceRecovery.wallet.button": "View recovery phrase",
1264
+ "onboarding.import.onDeviceRecovery.wallet.count_one": "+1 other wallet",
1265
+ "onboarding.import.onDeviceRecovery.wallet.count_other": "+{{count}} other wallets",
1266
+ "onboarding.import.onDeviceRecovery.warning.caption": "Please ensure you have backed up all of the other wallets. If you ever want to restore them, you’ll need their recovery phrases or corresponding {{cloudProvider}} backups.",
1267
+ "onboarding.import.onDeviceRecovery.warning.title": "Are you sure?",
1268
+ "onboarding.import.selectMethod.errorMessage": "An unexpected error occurred. Please try again.",
1269
+ "onboarding.import.selectMethod.mobileApp.subtitle": "Import a wallet from the mobile app via QR code.",
1270
+ "onboarding.import.selectMethod.mobileApp.title": "Use Lux Mobile",
1271
+ "onboarding.import.selectMethod.passkey.subtitle": "Sync your Lux wallet using an existing passkey.",
1272
+ "onboarding.import.selectMethod.passkey.title": "Log in with passkey",
1273
+ "onboarding.import.selectMethod.recoveryPhrase.subtitle": "Import from another crypto wallet.",
1274
+ "onboarding.import.selectMethod.recoveryPhrase.title": "Enter recovery phrase",
1275
+ "onboarding.import.selectMethod.title": "Log in or import a wallet",
1276
+ "onboarding.import.title": "Choose how you want to add your wallet",
1277
+ "onboarding.importMnemonic.button.default": "My recovery phrase is 12 words",
1278
+ "onboarding.importMnemonic.button.importing": "Importing...",
1279
+ "onboarding.importMnemonic.button.longPhrase": "My recovery phrase is longer",
1280
+ "onboarding.importMnemonic.error.invalidPhrase": "The phrase you entered is invalid",
1281
+ "onboarding.importMnemonic.subtitle": "Type or paste your 12-word recovery phrase",
1282
+ "onboarding.importMnemonic.title": "Enter your recovery phrase",
1283
+ "onboarding.importPasskey.bringWindowToFront": "Bring window to front",
1284
+ "onboarding.importPasskey.continueInSecureWindow": "Continue in the secure sign-in window.",
1285
+ "onboarding.intro.button.alreadyHave": "I already have a wallet",
1286
+ "onboarding.intro.button.logInOrImport": "Log in or import",
1287
+ "onboarding.intro.mobileScan.button": "Scan QR code to import",
1288
+ "onboarding.intro.mobileScan.title": "Have the Lux app?",
1289
+ "onboarding.landing.button.add": "Add an existing wallet",
1290
+ "onboarding.landing.button.create": "Create a wallet",
1291
+ "onboarding.landing.button.createAccount": "Create an account",
1292
+ "onboarding.name.choose": "Choose a username",
1293
+ "onboarding.name.choose.subtitle": "This is a public name anyone can use to send you crypto.",
1294
+ "onboarding.notification.permission.message": "To receive notifications, turn on notifications for Lux Wallet in your device’s settings.",
1295
+ "onboarding.notification.permission.title": "Notifications permission",
1296
+ "onboarding.notification.subtitle": "Stay updated on transaction statuses and major price changes for favorite tokens.",
1297
+ "onboarding.notification.title": "Turn on notifications",
1298
+ "onboarding.passkey.create": "Create your passkey",
1299
+ "onboarding.passkey.loading.subtitle": "This should take just a sec.",
1300
+ "onboarding.passkey.loading.title": "Finding your wallet...",
1301
+ "onboarding.passkey.secure": "Secure your account",
1302
+ "onboarding.passkey.secure.description": "Passkeys allow you to quickly and securely access your account using just your face or fingerprint.",
1303
+ "onboarding.recoveryPhrase.confirm.subtitle.combined": "Let’s confirm you got it right. If you lose or write this down incorrectly, you won’t be able to recover your funds.",
1304
+ "onboarding.recoveryPhrase.confirm.subtitle.default": "If you lose or write this down incorrectly, you won’t be able to recover your funds.",
1305
+ "onboarding.recoveryPhrase.confirm.title": "Let’s confirm you got it right",
1306
+ "onboarding.recoveryPhrase.view.subtitle": "You’ll need to enter all 12 of these secret words to recover your wallet.",
1307
+ "onboarding.recoveryPhrase.view.title": "Write down your recovery phrase",
1308
+ "onboarding.recoveryPhrase.view.title.hasPassword": "If you ever forget your password...",
1309
+ "onboarding.recoveryPhrase.warning.final.button": "I’m ready",
1310
+ "onboarding.recoveryPhrase.warning.final.message": "Your recovery phrase is what grants you (and anyone who has it) access to your funds. Be sure to keep it to yourself.",
1311
+ "onboarding.recoveryPhrase.warning.final.title": "Do this step in a private place",
1312
+ "onboarding.recoveryPhrase.warning.screenshot.message": "Anyone who gains access to your photos can access your wallet. We recommend that you write down your words instead.",
1313
+ "onboarding.recoveryPhrase.warning.screenshot.title": "Screenshots aren’t secure",
1314
+ "onboarding.resetPassword.complete.safety": "Learn more about wallet safety",
1315
+ "onboarding.resetPassword.complete.subtitle": "Use your new password to unlock your wallet.",
1316
+ "onboarding.resetPassword.complete.title": "Password reset",
1317
+ "onboarding.scan.error": "There was an error loading the QR code",
1318
+ "onboarding.scan.otp.error": "The code you submitted is incorrect, or there was an error submitting. Please try again.",
1319
+ "onboarding.scan.otp.failed": "Failed attempts: {{number}}",
1320
+ "onboarding.scan.otp.subtitle": "Check your Lux mobile app for the 6-character code",
1321
+ "onboarding.scan.otp.title": "Enter one-time code",
1322
+ "onboarding.scan.subtitle": "Scan the QR code with the Lux mobile app to begin importing your wallet.",
1323
+ "onboarding.scan.title": "Import wallet from the app",
1324
+ "onboarding.scan.troubleScanning.message": "Import via recovery phrase",
1325
+ "onboarding.scan.troubleScanning.title": "Trouble scanning?",
1326
+ "onboarding.scan.wifi": "Connect your phone to the same WiFi network as your computer.",
1327
+ "onboarding.security.alert.biometrics.message.android": "To use biometrics, set it up first in settings",
1328
+ "onboarding.security.alert.biometrics.message.ios": "To use {{biometricsMethod}}, allow access in system settings",
1329
+ "onboarding.security.alert.biometrics.title.android": "Biometrics is disabled",
1330
+ "onboarding.security.alert.biometrics.title.ios": "{{biometricsMethod}} is disabled",
1331
+ "onboarding.security.button.confirm.android": "Enable biometrics",
1332
+ "onboarding.security.button.confirm.ios": "Enable {{biometricsMethod}}",
1333
+ "onboarding.security.button.setup": "Set up",
1334
+ "onboarding.security.subtitle.android": "Add an extra layer of security by requiring biometrics to send transactions.",
1335
+ "onboarding.security.subtitle.ios": "Add an extra layer of security by requiring {{biometricsMethod}} to send transactions.",
1336
+ "onboarding.security.title": "Protect your wallet",
1337
+ "onboarding.selectWallets.error": "Couldn’t load addresses",
1338
+ "onboarding.selectWallets.title.default": "Choose wallets to import",
1339
+ "onboarding.selectWallets.title.error": "Error importing wallets",
1340
+ "onboarding.termsOfService": "By continuing, I agree to the<highlightTerms> Terms of Service </highlightTerms>and consent to the<highlightPrivacy> Privacy Policy</highlightPrivacy>",
1341
+ "onboarding.tooltip.recoveryPhrase.trigger": "What’s a recovery phrase?",
1342
+ "onboarding.wallet.continue": "Let’s keep it safe",
1343
+ "onboarding.wallet.defaultName": "Wallet {{number}}",
1344
+ "onboarding.wallet.description.full": "This is your personal space for tokens, NFTs, and all of your trades. Finish setting it up to keep your funds safe.",
1345
+ "onboarding.wallet.title": "Welcome to your new wallet",
1346
+ "onboarding.welcome.subtitle": "Let’s finish setting up your wallet.",
1347
+ "onboarding.welcome.title": "Welcome!",
1348
+ "outageBanner.message": "{{chainName}}{{versionDescription}} data is unavailable right now, but we expect the issue to be resolved shortly.",
1349
+ "outageBanner.message.sub": "You can still swap and provide liquidity on this chain without issue.",
1350
+ "outageBanner.title": "{{versionName}} will be back soon",
1351
+ "passkeys.help.modal.subtitle": "If you’re having trouble with passkeys, visit Lux Support for help.",
1352
+ "passkeys.help.modal.subtitle.invalidPasskey": "Your request could not be completed. Please try again using a passkey associated with ",
1353
+ "passkeys.help.modal.subtitle.technicalError": "Your request could not be completed due to an unexpected technical error. Your funds are safe. Please try again.",
1354
+ "passkeys.help.modal.title": "Need help?",
1355
+ "passkeys.help.modal.title.invalidPasskey": "Invalid passkey",
1356
+ "passkeys.help.modal.title.technicalError": "Technical error",
1357
+ "passkeys.manage.modal.subtitle": "To add or remove passkeys, please sign in to <highlightLink>{{passkeyManagementUrl}}</highlightLink>.",
1358
+ "passkeys.manage.modal.title": "Manage passkeys",
1359
+ "permit.approval.fail": "Permit approval failed",
1360
+ "permit.approval.fail.message": "Permit2 allows token approvals to be shared and managed across different applications.",
1361
+ "pool.activeRange": "Active tick range",
1362
+ "pool.addAs": "Add as {{nativeWrappedSymbol}}",
1363
+ "pool.apr": "APR",
1364
+ "pool.apr.base": "Base APR",
1365
+ "pool.apr.description": "Annualized based on 1 day fees",
1366
+ "pool.apr.reward": "Reward APR",
1367
+ "pool.aprText": "Pool APR",
1368
+ "pool.balances": "Pool balances",
1369
+ "pool.closedCTA.description": "You can see them by using the filter at the top of the page.",
1370
+ "pool.closedCTA.title": "Looking for your closed positions?",
1371
+ "pool.collectAs": "Collect as {{nativeWrappedSymbol}}",
1372
+ "pool.collectFees": "Collect fees",
1373
+ "pool.connectEthereumToView": "Connect an Ethereum wallet to view your pools",
1374
+ "pool.create": "Creating new pool",
1375
+ "pool.create.info": "Your selections will create a new liquidity pool which may result in lower initial liquidity and increased volatility. Consider adding to an existing pool to minimize these risks.",
1376
+ "pool.createdPosition": "Created position",
1377
+ "pool.createdPosition.canceled": "Create position canceled",
1378
+ "pool.createdPosition.failed": "Create position failed",
1379
+ "pool.dynamic": "Dynamic pool",
1380
+ "pool.earnings": "Earnings",
1381
+ "pool.earnings.empty": "You have no earnings yet",
1382
+ "pool.explorers": "Explorers",
1383
+ "pool.import": "Import pool",
1384
+ "pool.import.link.description": "Some v2 positions aren’t displayed automatically.",
1385
+ "pool.import.positions.v2": "Import V2 positions",
1386
+ "pool.import.positions.v2.selectPair.description": "Some v2 positions aren’t displayed automatically. Select a token pair to import and view your positions.",
1387
+ "pool.import.success": "Pool imported",
1388
+ "pool.incentives.administeredRewards": "Rewards are distributed by the autonomous Merkl Distributor contract.",
1389
+ "pool.incentives.collect": "Collect",
1390
+ "pool.incentives.collectedRewards": "Collected rewards",
1391
+ "pool.incentives.collectFailed": "Collect failed, please try again.",
1392
+ "pool.incentives.collectFailedNoRetry": "Collecting rewards failed.",
1393
+ "pool.incentives.collectingRewards": "Collecting rewards",
1394
+ "pool.incentives.collectRewards": "Collect rewards",
1395
+ "pool.incentives.collectRewardsCanceled": "Collect rewards canceled",
1396
+ "pool.incentives.daysLeft": "days left",
1397
+ "pool.incentives.eligible": "Eligible pools have token rewards so you can earn more",
1398
+ "pool.incentives.eligibleTooltip": "Earn UNI rewards by providing liquidity to eligible pools.",
1399
+ "pool.incentives.merklDocs": "Calculated by Merkl from emission rewards and pool TVL.",
1400
+ "pool.incentives.rewardsDistribution": "Rewards distribution",
1401
+ "pool.incentives.rewardsEarned": "Rewards earned",
1402
+ "pool.incentives.similarPoolHasRewards": "A similar pool has UNI rewards",
1403
+ "pool.incentives.switchPools": "Switch pools",
1404
+ "pool.incentives.timePeriod": "Time period",
1405
+ "pool.incentives.uni.findMore": "Find pools with UNI rewards",
1406
+ "pool.incentives.yourRewards.error": "Your rewards are unavailable right now",
1407
+ "pool.incentives.yourRewards.error.description": "Rewards couldn’t be retrieved. This might be due to a network issue. Try reloading the page.",
1408
+ "pool.info": "Pool info",
1409
+ "pool.limitFluctuation.warning": "Please be aware that the execution for limits may vary based on real-time market fluctuations and Ethereum network congestion. Limits may not execute exactly when tokens reach the specified price.",
1410
+ "pool.liquidity.data.error.message": "There was an error fetching data required for your transaction.",
1411
+ "pool.liquidity.outOfSync": "Pool and market price mismatch",
1412
+ "pool.liquidity.outOfSync.message": "The prices in this pool differ with the market prices of the selected tokens. Adjust your price range accordingly or wait for the pool to rebalance to avoid losses.",
1413
+ "pool.liquidity.parsing.error": "Pool data error",
1414
+ "pool.liquidity.parsing.error.message": "Unable to process pool information. Try refreshing to get updated data.",
1415
+ "pool.maxPrice": "Max price",
1416
+ "pool.migrateLiquidity": "Migrate liquidity",
1417
+ "pool.migrateLiquidityDisabledTooltip": "This chain does not support v4 liquidity pools.",
1418
+ "pool.migrateToV4": "Migrate to v4",
1419
+ "pool.minPrice": "Min price",
1420
+ "pool.newPosition.title": "New position",
1421
+ "pool.newSpecificPosition": "New {{symbol}} position",
1422
+ "pool.notAvailableOnSolana": "Pools aren’t available on Solana",
1423
+ "pool.notFound.description": "Sorry, we can’t find any information for this pool. Check the name and address and try again.",
1424
+ "pool.notFound.title": "Pool not found",
1425
+ "pool.percent": "{{pct}}% pool",
1426
+ "pool.position": "Position",
1427
+ "pool.positions": "Positions",
1428
+ "pool.positions.title": "Your positions",
1429
+ "pool.positions.transaction.settings": "Transaction settings",
1430
+ "pool.positions.usdValueUnavailable": "USD value unavailable",
1431
+ "pool.positions.usdValueUnavailable.tooltip": "USD value is currently unavailable for this position. See position details for deposited token amounts.",
1432
+ "pool.refresh.data": "Refresh data",
1433
+ "pool.refresh.prices": "Refresh prices",
1434
+ "pool.removeLiquidity": "Remove liquidity",
1435
+ "pool.rewardAPR": "Reward APR (UNI)",
1436
+ "pool.rewardAPR.percent": "{{pct}} reward APR",
1437
+ "pool.rewards": "Rewards",
1438
+ "pool.selectPair": "Select pair",
1439
+ "pool.specificPosition": "{{symbol}} position",
1440
+ "pool.tokenPair": "Token pair",
1441
+ "pool.top.rewards": "Pools with rewards",
1442
+ "pool.top.tvl": "Top pools by TVL",
1443
+ "pool.top.volume": "Pools by 24H volume",
1444
+ "pool.totalAPR": "Total APR",
1445
+ "pool.totalTokens": "Your total pool tokens:",
1446
+ "pool.via": "{{tokenPair}} via {{dex}}",
1447
+ "pool.volOverTvl": "1D vol/TVL",
1448
+ "pool.volume.thirtyDay": "30 day volume",
1449
+ "pool.volume.thirtyDay.short": "30D vol",
1450
+ "pool.withdrawAs": "Withdraw as {{nativeWrappedSymbol}}",
1451
+ "poolFinder.availablePools": "Available pools",
1452
+ "poolFinder.availablePools.found.description": "v2 pools matching your pair selection.",
1453
+ "poolFinder.availablePools.notFound.description": "No matching v2 pools found. Double-check your token selection and ensure you’re connected to the correct wallet.",
1454
+ "pools.explore": "Explore pools",
1455
+ "portfolio.activity.filters.timePeriod.all": "All time",
1456
+ "portfolio.activity.filters.transactionType.addLiquidity": "Added liquidity",
1457
+ "portfolio.activity.filters.transactionType.all": "All types",
1458
+ "portfolio.activity.filters.transactionType.approvals": "Approvals",
1459
+ "portfolio.activity.filters.transactionType.claimFees": "Claimed fees",
1460
+ "portfolio.activity.filters.transactionType.createPool": "Pools created",
1461
+ "portfolio.activity.filters.transactionType.mints": "Mints",
1462
+ "portfolio.activity.filters.transactionType.receives": "Receives",
1463
+ "portfolio.activity.filters.transactionType.removeLiquidity": "Removed liquidity",
1464
+ "portfolio.activity.filters.transactionType.sends": "Sends",
1465
+ "portfolio.activity.filters.transactionType.swaps": "Swaps",
1466
+ "portfolio.activity.filters.transactionType.wraps": "Wraps",
1467
+ "portfolio.activity.table.column.address": "Address",
1468
+ "portfolio.activity.table.column.amount": "Amount",
1469
+ "portfolio.activity.table.column.time": "Time",
1470
+ "portfolio.activity.table.column.type": "Type",
1471
+ "portfolio.activity.title": "Activity",
1472
+ "portfolio.defi.title": "DeFi",
1473
+ "portfolio.description": "Track your crypto portfolio across all chains and protocols",
1474
+ "portfolio.disconnected.connectWallet.cta": "Track your portfolio",
1475
+ "portfolio.disconnected.demoWallet.description": "This is a view-only example. Connect your wallet to manage your portfolio.",
1476
+ "portfolio.disconnected.demoWallet.title": "Demo wallet",
1477
+ "portfolio.disconnected.viewYourPortfolio.cta": "to view your portfolio",
1478
+ "portfolio.limits.table.column.amount": "Amount",
1479
+ "portfolio.limits.table.column.limit": "Limit",
1480
+ "portfolio.networkFilter.seeAllNetworks": "See all networks",
1481
+ "portfolio.nfts.search.placeholder": "Search NFTs",
1482
+ "portfolio.nfts.title": "NFTs",
1483
+ "portfolio.overview.activity.seeAllActivity": "See activity on all networks",
1484
+ "portfolio.overview.activity.table.empty_one": "No recent activity",
1485
+ "portfolio.overview.activity.table.empty_other": "No recent activity",
1486
+ "portfolio.overview.activity.table.subtitle_one": "{{count}} transaction in the last 7 days",
1487
+ "portfolio.overview.activity.table.subtitle_other": "{{count}} transactions in the last 7 days",
1488
+ "portfolio.overview.activity.table.subtitle_most_recent_one": "{{count}} transaction",
1489
+ "portfolio.overview.activity.table.subtitle_most_recent_other": "{{count}} transactions",
1490
+ "portfolio.overview.activity.table.title": "Recent activity",
1491
+ "portfolio.overview.activity.table.title.noRecentActivity": "No recent activity",
1492
+ "portfolio.overview.activity.table.viewAllActivity": "View all activity",
1493
+ "portfolio.overview.chart.errorText": "Portfolio balance data not available",
1494
+ "portfolio.overview.limits.table.openLimits_one": "{{count}} open order",
1495
+ "portfolio.overview.limits.table.openLimits_other": "{{count}} open orders",
1496
+ "portfolio.overview.miniTokensTable.viewAllTokens": "View all tokens",
1497
+ "portfolio.overview.pools.column.balance": "Balance",
1498
+ "portfolio.overview.pools.subtitle.openPositions_one": "{{numPositions}} open position",
1499
+ "portfolio.overview.pools.subtitle.openPositions_other": "{{numPositions}} open positions",
1500
+ "portfolio.overview.pools.table.viewAllPools": "View all pools",
1501
+ "portfolio.overview.stats.swappedThisWeek": "Swapped this week",
1502
+ "portfolio.overview.stats.swapsThisWeek": "Swaps this week",
1503
+ "portfolio.overview.title": "Overview",
1504
+ "portfolio.tokens.balance.totalTokens_one": "{{count}} token",
1505
+ "portfolio.tokens.balance.totalTokens_other": "{{count}} tokens",
1506
+ "portfolio.tokens.table.column.allocation": "Allocation",
1507
+ "portfolio.tokens.table.column.balance": "Balance",
1508
+ "portfolio.tokens.table.column.change1d": "1D change",
1509
+ "portfolio.tokens.table.column.price": "Price",
1510
+ "portfolio.tokens.table.column.token": "Token",
1511
+ "portfolio.tokens.table.column.value": "Value",
1512
+ "portfolio.tokens.title": "Tokens",
1513
+ "portfolio.view": "View portfolio",
1514
+ "position.addHook": "Add a Hook",
1515
+ "position.addHook.tooltip": "Hooks are an advanced feature that enable pools to interact with smart contracts, unlocking various capabilities. Exercise caution when adding hooks, as some may be malicious or cause unintended consequences.",
1516
+ "position.addingHook": "Adding hook",
1517
+ "position.addingHook.disclaimer": "Adding hooks may have unintended consequences. Do your research and proceed at your own risk.",
1518
+ "position.addingHook.hideProperties": "Hide properties",
1519
+ "position.addingHook.invalidAddress": "Enter a valid hook address",
1520
+ "position.addingHook.viewProperties": "View properties",
1521
+ "position.create.confirm": "Confirm position",
1522
+ "position.create.invalidPrice": "Invalid price",
1523
+ "position.create.invalidRange": "Invalid range",
1524
+ "position.create.modal.header": "Creating position",
1525
+ "position.create.unsupportedSolana": "Solana pools are not supported.",
1526
+ "position.create.unsupportedSolana.description": "To create a pool, switch to a supported EVM chain.",
1527
+ "position.create.unsupportedToken.description": "Try creating with a different protocol version.",
1528
+ "position.create.v2unsupportedChain": "This chain is not supported for v2 pools.",
1529
+ "position.currentValue": "Current position value",
1530
+ "position.default_price_strategies": "Price strategies",
1531
+ "position.default_price_strategies.error": "Unable to set price strategy",
1532
+ "position.deposit.confirm.create.description.less": "The initial price entered is {{value}}% less than the market price and may result in a loss of funds. Do you wish to proceed?",
1533
+ "position.deposit.confirm.create.description.more": "The initial price entered is {{value}}% more than the market price and may result in a loss of funds. Do you wish to proceed?",
1534
+ "position.deposit.confirm.create.title": "Large price difference with market",
1535
+ "position.deposit.description": "Specify the token amounts for your liquidity contribution.",
1536
+ "position.depositedCurrency": "Deposited {{currencySymbol}}",
1537
+ "position.fot.warning": "{{token}} and other “Fee on transfer” tokens are only supported by AMM v2.",
1538
+ "position.fot.warning.cta": "Create a v2 position",
1539
+ "position.hook.disclaimer": "I understand the potential risks involved in adding this hook.",
1540
+ "position.hook.donateWarning": "This flag may result in changes to fees earned.",
1541
+ "position.hook.liquidityWarning": "This flag can cause the pool to block the addition of new liquidity. Your transaction may revert.",
1542
+ "position.hook.removeWarning": "May cause your funds to be locked or block you from collecting fees.",
1543
+ "position.hook.swapWarning": "This flag may allow liquidity providers to more easily leverage Just-In-Time liquidity, which may result in lower fees earned.",
1544
+ "position.hook.warningHeader": "Important: hook risks identified",
1545
+ "position.hook.warningInfo": "We’ve identified potential risks with this hook. Please make sure that you understand how this hook works before deciding to proceed.",
1546
+ "position.increase.fot": "Adding liquidity for {{token}} and other “Fee on Transfer” tokens is not supported.",
1547
+ "position.initialPrice": "Initial price",
1548
+ "position.initialPrice.difference.negative": "{{ value }}% less than market price",
1549
+ "position.initialPrice.difference.positive": "{{ value }}% more than market price",
1550
+ "position.initialPrice.info": "When creating a new pool, you must set the starting exchange rate for both tokens. This rate will reflect the initial market price.",
1551
+ "position.initialPrice.set": "Set initial price",
1552
+ "position.initialPrice.useMarketPrice": "Use market price",
1553
+ "position.migrate.liquidity": "When migrating positions, you cannot change your token pair, but you can add a hook to enhance functionality.",
1554
+ "position.migrate.v4unsupportedChain": "This chain is not supported for v4 pools.",
1555
+ "position.new": "New position",
1556
+ "position.new.protocol": "New {{protocol}} position",
1557
+ "position.notFound": "Position not found",
1558
+ "position.notFound.description": "Details on this position are unavailable. Please check that you’re connected with the correct wallet.",
1559
+ "position.one_sided_lower": "One-sided lower",
1560
+ "position.one_sided_lower.description": "Supply liquidity if price goes down",
1561
+ "position.one_sided_upper": "One-sided upper",
1562
+ "position.one_sided_upper.description": "Supply liquidity if price goes up",
1563
+ "position.protocol": "{{protocol}} position",
1564
+ "position.provide.liquidity": "Choose the tokens you want to provide liquidity for. You can select tokens on all supported networks.",
1565
+ "position.provide.liquidityDescription": "Providing full range liquidity ensures continuous market participation across all possible prices, offering simplicity but with potential for higher impermanent loss.",
1566
+ "position.provide.liquidityDescription.creatingPool": "Setting full range liquidity when creating a pool ensures continuous market participation across all possible prices, offering simplicity but with potential for higher impermanent loss.",
1567
+ "position.provide.liquidityDescription.custom": "Custom range allows you to concentrate your liquidity within specific price bounds, enhancing capital efficiency and fee earnings but requiring more active management.",
1568
+ "position.provide.outOfRange.closePosition": "Close position",
1569
+ "position.provide.outOfRange.description": "This position’s range cannot be adjusted during migration. To set a new range, close this position and open a new v4 position.",
1570
+ "position.provide.outOfRange.title": "You’re migrating an out-of range position",
1571
+ "position.removeHook": "Remove hook",
1572
+ "position.resetDescription": "Your tokens, price, and range selections will be reset.",
1573
+ "position.setRange": "Set price range",
1574
+ "position.setRange.inputsBelow": "Use the inputs below to set your range.",
1575
+ "position.stable": "Stable",
1576
+ "position.stable.description": "Good for stablecoins or low volatility pairs",
1577
+ "position.step.deposit": "Enter deposit amounts",
1578
+ "position.step.price": "Set initial price and deposit amounts",
1579
+ "position.step.range": "Set price range and deposit amounts",
1580
+ "position.step.select": "Select token pair and fees",
1581
+ "position.value": "Position value",
1582
+ "position.valueUnavailable": "USD value is currently unavailable for this position. See position details for deposited token amounts.",
1583
+ "position.wide": "Wide",
1584
+ "position.wide.description": "Good for volatile pairs",
1585
+ "position.wrapped.unwrap": "Unwrap {{wrappedToken}}",
1586
+ "position.wrapped.warning": "{{nativeToken}} required for v4 pools",
1587
+ "position.wrapped.warning.info": "Unwrap your {{wrappedToken}} and deposit {{nativeToken}} to provide more cost effective and efficient liquidity.",
1588
+ "positions.noPositions.description": "You don’t have any liquidity positions. Create a new position to start earning fees and rewards on eligible pools.",
1589
+ "positions.noPositions.title": "No positions",
1590
+ "positions.welcome.connect.description": "To view your positions and rewards you must connect your wallet.",
1591
+ "positions.welcome.connect.wallet": "Connect your wallet",
1592
+ "privacy.anonymizedLogs": "The app logs anonymized usage statistics in order to improve over time.",
1593
+ "privacy.autoRouter": "The app fetches the optimal trade route from a Lux Industries server.",
1594
+ "privacy.infura": "The app fetches on-chain data and constructs contract calls with an Infura API.",
1595
+ "privacy.thirdPartyApis": "This app uses the following third-party APIs:",
1596
+ "privacy.trm": "The app securely collects your wallet address and shares it with TRM Labs Inc. for risk and compliance reasons.",
1597
+ "privacy.luxtos": "Lux Industries’ Terms of Service",
1598
+ "privateKeys.export.modal.speedbump.bullet1": "View this in private",
1599
+ "privateKeys.export.modal.speedbump.bullet2": "Do not share with anyone",
1600
+ "privateKeys.export.modal.speedbump.bullet3": "Never enter it to any websites or applications",
1601
+ "privateKeys.export.modal.speedbump.subtitle": "Anyone who knows your private key can access your wallet and funds.",
1602
+ "privateKeys.export.modal.speedbump.title": "Before you continue",
1603
+ "privateKeys.export.modal.subtitle": "It looks like you’re not able to fully restore your wallet. To make sure you never lose access to your funds, copy your private key.",
1604
+ "privateKeys.export.modal.title": "Export your private key",
1605
+ "privateKeys.export.modal.warning": "If you lose your phone or delete the app, you’ll need to import this key into a different wallet.",
1606
+ "privateKeys.view.button.continue": "I copied all of them.",
1607
+ "privateKeys.view.button.continue.single": "I copied it.",
1608
+ "privateKeys.view.subtitle": "Your private key grants access to a specific wallet. Each wallet has a different private key.",
1609
+ "privateKeys.view.title": "Private Key",
1610
+ "qrScanner.button.connections_one": "1 app connected",
1611
+ "qrScanner.button.connections_other": "{{count}} apps connected",
1612
+ "qrScanner.error.camera.message": "To scan a code, allow Camera access in system settings",
1613
+ "qrScanner.error.camera.title": "Camera is disabled",
1614
+ "qrScanner.error.none": "No QR code found",
1615
+ "qrScanner.recipient.action.scan": "Scan a QR code",
1616
+ "qrScanner.recipient.action.show": "Show my QR code",
1617
+ "qrScanner.recipient.error.message": "Make sure that you’re scanning a valid Ethereum address QR code before trying again.",
1618
+ "qrScanner.recipient.error.title": "Invalid QR Code",
1619
+ "qrScanner.request.message.unavailable": "No message found.",
1620
+ "qrScanner.request.method.default": "Request from {{dappNameOrUrl}}",
1621
+ "qrScanner.request.method.signature": "Signature request from {{dappNameOrUrl}}",
1622
+ "qrScanner.request.method.transaction": "Transaction request from {{dappNameOrUrl}}",
1623
+ "qrScanner.request.withAmount": "Allow {{dappName}} to use up to<highlight> {{amount}} </highlight>{{currencySymbol}}?",
1624
+ "qrScanner.request.withoutAmount": "Allow {{dappName}} to use your {{currencySymbol}}?",
1625
+ "qrScanner.status.connecting": "Connecting...",
1626
+ "qrScanner.status.loading": "Loading...",
1627
+ "qrScanner.title": "Scan a QR code",
1628
+ "qrScanner.wallet.networks": "Supported networks",
1629
+ "range.outOfView": "Range out of view",
1630
+ "reporting.activity.confirm.subtitle": "Reported activity is hidden by default. You can update this via Settings at any time.",
1631
+ "reporting.activity.confirm.title": "Report spam transaction",
1632
+ "reporting.activity.unhide.action": "Unhide activity",
1633
+ "reporting.pool.data.options.liquidity.subtitle": "Pool balance is wrong or unavailable",
1634
+ "reporting.pool.data.options.price.subtitle": "Token exchange rate is wrong or unavailable",
1635
+ "reporting.pool.data.options.priceChart.subtitle": "Data is wrong, incomplete, or unavailable",
1636
+ "reporting.pool.data.options.priceChart.title": "Pool chart",
1637
+ "reporting.pool.data.options.volume.subtitle": "Pool volume is wrong or unavailable",
1638
+ "reporting.pool.details.title": "Don’t recognize this position?",
1639
+ "reporting.token.data.options.price.subtitle": "Token price is wrong or unavailable",
1640
+ "reporting.token.data.options.price.title": "Price",
1641
+ "reporting.token.data.options.priceChart.subtitle": "Data is wrong or incomplete",
1642
+ "reporting.token.data.options.priceChart.title": "Price chart",
1643
+ "reporting.token.data.options.tokenDetails.subtitle": "Token image, description, or link issue",
1644
+ "reporting.token.data.options.tokenDetails.title": "Token details",
1645
+ "reporting.token.data.options.volume.subtitle": "Token volume is wrong or unavailable",
1646
+ "reporting.token.data.options.volume.title": "Volume",
1647
+ "reporting.token.data.title": "Data issue",
1648
+ "reporting.token.data.title.withSymbol": "Report a {{symbol}} data issue",
1649
+ "reporting.token.options.hiddenFees.subtitle": "Token has undisclosed fees when bought/sold",
1650
+ "reporting.token.options.hiddenFees.title": "Hidden fees",
1651
+ "reporting.token.options.imposter.subtitle": "Token seems fraudulent or misleading",
1652
+ "reporting.token.options.imposter.title": "Imposter token",
1653
+ "reporting.token.options.other.title": "Something else",
1654
+ "reporting.token.options.spam.subtitle": "Token appeared in wallet unexpectedly",
1655
+ "reporting.token.options.spam.title": "Spam token",
1656
+ "reporting.token.report.button.disabled": "Select an issue",
1657
+ "reporting.token.report.other.placeholder": "Describe the issue",
1658
+ "reporting.token.report.title": "Report token",
1659
+ "reporting.token.report.title.withSymbol": "Report {{symbol}}",
1660
+ "reporting.token.warning.button": "This warning is incorrect",
1661
+ "reporting.token.warning.report.placeholder": "Add details (optional)",
1662
+ "reporting.token.warning.report.submit": "Report issue",
1663
+ "reporting.token.warning.report.subtitle": "Report an issue if the warning below seems wrong. We’ll take a closer look.",
1664
+ "reporting.token.warning.report.title": "Report an inaccurate warning",
1665
+ "revoke.failed.message": "A network or connection issue likely caused your revoke to fail. Check your connection and try again.",
1666
+ "routing.aggregateLiquidity.luxx": "DEX aggregates liquidity sources on and off-chain, bringing you the best available prices and gas free swaps.",
1667
+ "scantastic.code.expired": "Expired",
1668
+ "scantastic.code.subtitle": "Enter this code in the Lux Extension. Your recovery phrase will be safely encrypted and transferred.",
1669
+ "scantastic.code.timeRemaining.shorthand.hours": "New code in {{hours}}h {{minutes}}m {{seconds}}s",
1670
+ "scantastic.code.timeRemaining.shorthand.minutes": "New code in {{minutes}}m {{seconds}}s",
1671
+ "scantastic.code.timeRemaining.shorthand.seconds": "New code in {{seconds}}s",
1672
+ "scantastic.code.title": "Lux one-time code",
1673
+ "scantastic.confirmation.button.continue": "Yes, continue",
1674
+ "scantastic.confirmation.label.browser": "Browser",
1675
+ "scantastic.confirmation.label.device": "Device",
1676
+ "scantastic.confirmation.subtitle": "Only continue if you are scanning a QR code from Lux Extension on a trusted device.",
1677
+ "scantastic.confirmation.title": "Are you trying to import your wallet?",
1678
+ "scantastic.confirmation.warning": "Beware of sites and apps impersonating Lux. Otherwise your wallet may be compromised.",
1679
+ "scantastic.error.encryption": "Failed to prepare seed phrase.",
1680
+ "scantastic.error.noCode": "No OTP received. Please try again.",
1681
+ "scantastic.error.timeout.message": "Scan the QR code on the Lux Extension again to continue syncing your wallet.",
1682
+ "scantastic.error.timeout.title": "Your connection timed out",
1683
+ "scantastic.modal.ipMismatch.description": "To scan this QR code, your phone must be connected to the same WiFi network as your computer and any VPNs should be temporarily turned off.",
1684
+ "scantastic.modal.ipMismatch.title": "Switch your WiFi network",
1685
+ "search.input.placeholder.withWallets": "Search tokens, pools, and wallets",
1686
+ "search.results.pretype.nfts": "Enter a collection title",
1687
+ "search.results.pretype.wallets": "Enter an address or username",
1688
+ "search.ukDisclaimer": "Disclaimer for UK residents",
1689
+ "send.button.review": "Review transfer",
1690
+ "send.gas.error.title": "N/A",
1691
+ "send.gas.networkCost.title": "Network cost",
1692
+ "send.input.token.balance.title": "Balance: {{balance}} {{symbol}}",
1693
+ "send.recipient.header": "Select recipient",
1694
+ "send.recipient.input.placeholder": "Enter address or username",
1695
+ "send.recipient.previous_one": "1 previous transfer",
1696
+ "send.recipient.previous_other": "{{count}} previous transfers",
1697
+ "send.recipient.results.empty": "No results found",
1698
+ "send.recipient.results.error": "The address you typed either does not exist or is spelled incorrectly.",
1699
+ "send.recipient.section.favorite": "Favorite wallets",
1700
+ "send.recipient.section.recent": "Recent",
1701
+ "send.recipient.section.search": "Search results",
1702
+ "send.recipient.section.viewOnly": "View-only wallets",
1703
+ "send.recipient.section.yours": "Your wallets",
1704
+ "send.recipient.warning.viewOnly.message": "Only send funds to this wallet if you have the recovery phrase or know the owner of the wallet.",
1705
+ "send.recipient.warning.viewOnly.title": "You have this as a view-only wallet",
1706
+ "send.recipientSelect.search.empty": "Enter a wallet address or username",
1707
+ "send.review.modal.title": "You’re sending",
1708
+ "send.review.summary.button.title": "Confirm send",
1709
+ "send.search.empty.subtitle": "The address you typed either does not exist or is spelled incorrectly.",
1710
+ "send.search.empty.title": "No results found",
1711
+ "send.solanaSendNotSupported": "Send is not supported on Solana",
1712
+ "send.title": "Send",
1713
+ "send.unavailableOnSolana.message": "Sending is not available on Solana wallets",
1714
+ "send.warning.blocked.default": "This wallet is blocked",
1715
+ "send.warning.blocked.modal.message": "This address is blocked on Lux Wallet because it is associated with one or more blocked activities. If you believe this is an error, please email compliance@lux.exchange.",
1716
+ "send.warning.blocked.modal.title": "Blocked address",
1717
+ "send.warning.blocked.recipient": "Recipient wallet is blocked",
1718
+ "send.warning.erc20.checkbox.description": "You are attempting to send funds to a token address. This may result in a permanent loss of funds.",
1719
+ "send.warning.erc20.checkbox.heading": "Token address detected",
1720
+ "send.warning.erc20.message": "You are attempting to send funds to a token address. Sending crypto to this type of address may result in a permanent loss of funds.",
1721
+ "send.warning.erc20.title": "This is a token address",
1722
+ "send.warning.insufficientFunds.message": "Your {{currencySymbol}} balance has decreased since you entered the amount you’d like to send",
1723
+ "send.warning.insufficientFunds.title": "Not enough {{currencySymbol}}",
1724
+ "send.warning.insufficientGas.message.withNetwork": "Not enough <highlight>{{currencySymbol}} on {{networkName}}</highlight> to send",
1725
+ "send.warning.insufficientGas.message.withoutNetwork": "Not enough <highlight>{{currencySymbol}}</highlight> to send",
1726
+ "send.warning.modal.button.cta.blocking": "OK",
1727
+ "send.warning.modal.button.cta.cancel": "Cancel",
1728
+ "send.warning.modal.button.cta.confirm": "Confirm",
1729
+ "send.warning.newAddress.details.ENS": "ENS",
1730
+ "send.warning.newAddress.details.username": "Username",
1731
+ "send.warning.newAddress.details.walletAddress": "Wallet Address",
1732
+ "send.warning.newAddress.message": "You haven’t transacted with this address before. Please confirm that the address is correct before continuing.",
1733
+ "send.warning.newAddress.title": "New address",
1734
+ "send.warning.self.message": "You are attempting to send funds to your current wallet. Sending crypto to this address will incur unnecessary network costs.",
1735
+ "send.warning.self.title": "This is your current wallet",
1736
+ "send.warning.smartContract.message": "You’re about to send funds to a smart contract address. Make sure this is the correct address and that it can receive tokens. If not, this may result in a permanent loss of funds.",
1737
+ "send.warning.smartContract.title": "This is a smart contract address",
1738
+ "send.warning.viewOnly.message": "You need to import this wallet via recovery phrase to send assets.",
1739
+ "send.warning.viewOnly.title": "This wallet is view-only",
1740
+ "send.youAreSending": "You’re sending",
1741
+ "sendRecipientForm.recentAddresses.label": "Recents",
1742
+ "sendReviewModal.title": "Review send",
1743
+ "setting.recoveryPhrase.account.show": "Show recovery phrase",
1744
+ "setting.recoveryPhrase.action.hide": "Hide recovery phrase",
1745
+ "setting.recoveryPhrase.remove": "Remove recovery phrase",
1746
+ "setting.recoveryPhrase.remove.confirm.subtitle": "I understand that Lux Industries can’t help me recover my wallet if I failed to do so.",
1747
+ "setting.recoveryPhrase.remove.confirm.title": "I saved my recovery phrase",
1748
+ "setting.recoveryPhrase.remove.initial.subtitle": "Make sure you’ve saved your recovery phrase. You will lose access to your wallets otherwise",
1749
+ "setting.recoveryPhrase.remove.initial.title": "Before you continue",
1750
+ "setting.recoveryPhrase.remove.subtitle": "Enter your password to confirm",
1751
+ "setting.recoveryPhrase.remove.title": "You’re removing your recovery phrase",
1752
+ "setting.recoveryPhrase.view.warning.message1": "Anyone who knows your recovery phrase can access your wallet and funds",
1753
+ "setting.recoveryPhrase.view.warning.message2": "View this in private",
1754
+ "setting.recoveryPhrase.view.warning.message3": "Do not share with anyone",
1755
+ "setting.recoveryPhrase.view.warning.message4": "Never enter it to any websites or applications",
1756
+ "setting.recoveryPhrase.view.warning.title": "Before you continue",
1757
+ "setting.recoveryPhrase.warning.view.message": "Anyone who knows your recovery phrase can access your wallet and funds.",
1758
+ "setting.recoveryPhrase.warning.view.title": "View this in a private place",
1759
+ "settings.action.enableInSettings": "Enable in Settings",
1760
+ "settings.action.feedback": "Send feedback",
1761
+ "settings.action.help": "Get help",
1762
+ "settings.action.lock": "Lock wallet",
1763
+ "settings.action.privacy": "Privacy policy",
1764
+ "settings.action.terms": "Terms of service",
1765
+ "settings.footer": "Made with love, \nLux Team 🦄",
1766
+ "settings.hideSmallBalances": "Hide small balances",
1767
+ "settings.hideSmallBalances.subtitle": "Balances under 1 USD will be hidden from your portfolio.",
1768
+ "settings.maxSlippage": "Max. slippage",
1769
+ "settings.maxSlippage.amount": "{{amount}} max. slippage",
1770
+ "settings.section.about": "About",
1771
+ "settings.section.preferences": "Preferences",
1772
+ "settings.section.privacyAndSecurity": "Privacy and security",
1773
+ "settings.section.support": "Support",
1774
+ "settings.section.wallet.hidden.row.title": "{{numHidden}} other wallets",
1775
+ "settings.setting.advanced.title": "Advanced",
1776
+ "settings.setting.advancedSettings": "Advanced settings",
1777
+ "settings.setting.appearance.option.auto": "Auto",
1778
+ "settings.setting.appearance.option.dark.subtitle": "Always use dark theme.",
1779
+ "settings.setting.appearance.option.dark.title": "Dark",
1780
+ "settings.setting.appearance.option.device.subtitle": "Adapts to your device’s settings.",
1781
+ "settings.setting.appearance.option.device.title": "Auto",
1782
+ "settings.setting.appearance.option.light.subtitle": "Always use light theme.",
1783
+ "settings.setting.appearance.option.light.title": "Light",
1784
+ "settings.setting.appearance.title": "Theme",
1785
+ "settings.setting.backup.create.description": "Setting a password will encrypt your recovery phrase backup, adding an extra level of protection if your {{cloudProviderName}} account is ever compromised.",
1786
+ "settings.setting.backup.create.title": "Back up to {{cloudProviderName}}",
1787
+ "settings.setting.backup.delete.confirm.message": "Because these wallets share a recovery phrase, it will also delete the backups for these wallets below",
1788
+ "settings.setting.backup.delete.confirm.title": "Are you sure?",
1789
+ "settings.setting.backup.delete.warning": "If you delete your {{cloudProviderName}} backup, you’ll only be able to recover your wallet with a manual backup of your recovery phrase. Lux Industries can’t recover your assets if you lose your recovery phrase.",
1790
+ "settings.setting.backup.error.message.full": "Unable to backup recovery phrase to {{cloudProviderName}}. Please ensure you have {{cloudProviderName}} enabled with available storage space and try again.",
1791
+ "settings.setting.backup.error.message.short": "Unable to delete backup",
1792
+ "settings.setting.backup.error.title": "{{cloudProviderName}} error",
1793
+ "settings.setting.backup.modal.description": "You haven’t backed up your recovery phrase to {{cloudProviderName}} yet. By doing so, you can recover your wallet just by being logged into {{cloudProviderName}} on any device.",
1794
+ "settings.setting.backup.modal.title": "Back up recovery phrase to {{cloudProviderName}}?",
1795
+ "settings.setting.backup.password.error.mismatch": "Passwords do not match",
1796
+ "settings.setting.backup.password.medium": "This is a medium password",
1797
+ "settings.setting.backup.password.placeholder.confirm": "Confirm password",
1798
+ "settings.setting.backup.password.placeholder.create": "Create password",
1799
+ "settings.setting.backup.password.strong": "This is a strong password",
1800
+ "settings.setting.backup.password.weak": "This is a weak password",
1801
+ "settings.setting.backup.recoveryPhrase.label": "Recovery phrase",
1802
+ "settings.setting.backup.selected": "{{cloudProviderName}} backup",
1803
+ "settings.setting.backup.status.action.delete": "Delete backup",
1804
+ "settings.setting.backup.status.complete": "Backed up to {{cloudProviderName}}",
1805
+ "settings.setting.backup.status.description": "By having your recovery phrase backed up to {{cloudProviderName}}, you can recover your wallet just by being logged into your {{cloudProviderName}} account on any device.",
1806
+ "settings.setting.backup.status.inProgress": "Backing up to {{cloudProviderName}}...",
1807
+ "settings.setting.backup.status.recoveryPhrase.backed": "Backed up",
1808
+ "settings.setting.backup.status.title": "{{cloudProviderName}} backup",
1809
+ "settings.setting.balancesActivity.title": "Balances and activity",
1810
+ "settings.setting.beta.tooltip": "Coming soon",
1811
+ "settings.setting.biometrics.appAccess.subtitle.android": "Require face/fingerprint to open the app.",
1812
+ "settings.setting.biometrics.appAccess.subtitle.ios": "Require {{biometricsMethod}} to open app.",
1813
+ "settings.setting.biometrics.appAccess.title": "App access",
1814
+ "settings.setting.biometrics.auth": "Please authenticate",
1815
+ "settings.setting.biometrics.extension.waitingForBiometricsModal.content": "Enable {{biometricsMethod}} in your browser or system settings to continue.",
1816
+ "settings.setting.biometrics.extension.waitingForBiometricsModal.title": "Waiting for {{biometricsMethod}}",
1817
+ "settings.setting.biometrics.off.message.android": "Biometrics is currently turned off for Lux Wallet—you can turn it on in your system settings.",
1818
+ "settings.setting.biometrics.off.message.ios": "{{biometricsMethod}} is currently turned off for Lux Wallet—you can turn it on in your system settings.",
1819
+ "settings.setting.biometrics.off.title.android": "Biometrics is turned off",
1820
+ "settings.setting.biometrics.off.title.ios": "{{biometricsMethod}} is turned off",
1821
+ "settings.setting.biometrics.title": "Face/Fingerprint unlock",
1822
+ "settings.setting.biometrics.transactions.subtitle.android": "Require face/fingerprint to transact.",
1823
+ "settings.setting.biometrics.transactions.subtitle.ios": "Require {{biometricsMethod}} to transact.",
1824
+ "settings.setting.biometrics.transactions.title": "Transactions",
1825
+ "settings.setting.biometrics.unavailable.message.android": "Biometrics is not setup on your device. To use biometrics, set it up first in Settings.",
1826
+ "settings.setting.biometrics.unavailable.message.ios": "{{biometricsMethod}} is not setup on your device. To use {{biometricsMethod}}, set it up first in Settings.",
1827
+ "settings.setting.biometrics.unavailable.title.android": "Biometrics is not setup",
1828
+ "settings.setting.biometrics.unavailable.title.ios": "{{biometricsMethod}} is not setup",
1829
+ "settings.setting.biometrics.warning.message.android": "If you don’t turn on biometrics, anyone who gains access to your device can open Lux Wallet and make transactions.",
1830
+ "settings.setting.biometrics.warning.message.ios": "If you don’t turn on {{biometricsMethod}}, anyone who gains access to your device can open Lux Wallet and make transactions.",
1831
+ "settings.setting.biometrics.warning.title": "Are you sure?",
1832
+ "settings.setting.connections.disconnectAll": "Disconnect all",
1833
+ "settings.setting.connections.noConnectionsDescription": "Connect to an app by looking for a “Connect Wallet” or “Log in” button.",
1834
+ "settings.setting.currency.title": "Local currency",
1835
+ "settings.setting.deviceAccess.reset.title": "Reset your {{biometricsMethod}}",
1836
+ "settings.setting.deviceAccess.title": "Device access",
1837
+ "settings.setting.deviceAccessTimeout.1hour": "1 hr",
1838
+ "settings.setting.deviceAccessTimeout.24hours": "24 hr",
1839
+ "settings.setting.deviceAccessTimeout.30minutes": "30 min",
1840
+ "settings.setting.deviceAccessTimeout.5minutes": "5 min",
1841
+ "settings.setting.deviceAccessTimeout.never": "Never",
1842
+ "settings.setting.deviceAccessTimeout.title": "Auto-lock timeout",
1843
+ "settings.setting.hapticTouch.title": "Haptic touch",
1844
+ "settings.setting.helpCenter.title": "Help center",
1845
+ "settings.setting.language.button.navigate": "Go to settings",
1846
+ "settings.setting.language.description.extension": "Lux defaults to your system language settings. To change your preferred language, go to your system settings.",
1847
+ "settings.setting.language.description.mobile": "Lux defaults to your device’s language settings. To change your preferred language, go to “Lux” in your device settings and tap on “Language”.",
1848
+ "settings.setting.language.title": "Language",
1849
+ "settings.setting.notifications.row.activity.description": "Transfers, requests, and other activity",
1850
+ "settings.setting.notifications.row.activity.title": "Wallet activity",
1851
+ "settings.setting.notifications.row.updates.description": "Recommendations and new features",
1852
+ "settings.setting.notifications.row.updates.title": "Updates from Lux",
1853
+ "settings.setting.notifications.title": "Notifications",
1854
+ "settings.setting.password.change.title": "Create a new password",
1855
+ "settings.setting.password.title": "Change password",
1856
+ "settings.setting.permissions.title": "Permissions",
1857
+ "settings.setting.privacy.analytics.description": "We use anonymous usage data to enhance your experience across Lux Industries products. When disabled, we only track errors and essential usage.",
1858
+ "settings.setting.privacy.analytics.title": "App analytics",
1859
+ "settings.setting.privateKeys.title": "Private keys",
1860
+ "settings.setting.recoveryPhrase.title": "Recovery phrase",
1861
+ "settings.setting.reportedActivity.subtitle": "Transactions you’ve reported as spam will be hidden from your activity feed.",
1862
+ "settings.setting.reportedActivity.title": "Hide reported activity",
1863
+ "settings.setting.smartWallet.action.smartWallet": "Smart wallet",
1864
+ "settings.setting.smartWallet.status.actionRequired": "Action required",
1865
+ "settings.setting.smartWallet.status.active": "Active",
1866
+ "settings.setting.smartWallet.status.inactive": "Inactive",
1867
+ "settings.setting.smartWallet.status.label": "Smart wallet status",
1868
+ "settings.setting.smartWallet.status.unavailable": "Unavailable",
1869
+ "settings.setting.storage.clearAccountHistory.subtitle": "Transaction history, token balances, recent searches, and pending notifications",
1870
+ "settings.setting.storage.clearAccountHistory.title": "Clear account history",
1871
+ "settings.setting.storage.clearAllData.title": "Clear all data",
1872
+ "settings.setting.storage.clearCachedData.subtitle": "Temporary data such as token prices",
1873
+ "settings.setting.storage.clearCachedData.title": "Clear cache",
1874
+ "settings.setting.storage.clearUserSettings.subtitle": "Favorites, swap settings, token warnings, language, and currency",
1875
+ "settings.setting.storage.clearUserSettings.title": "Clear preferences",
1876
+ "settings.setting.storage.confirm.approve": "Clear data",
1877
+ "settings.setting.storage.confirm.caption": "Are you sure you want to clear this data? Essential data (such as your recovery phrase) will not be removed.",
1878
+ "settings.setting.storage.error": "Failed to clear data. Please try again.",
1879
+ "settings.setting.storage.help.description": "These options will remove non-essential data and restore default settings. Your wallet’s recovery phrase will not be removed.",
1880
+ "settings.setting.storage.help.title": "Clearing app data",
1881
+ "settings.setting.storage.success": "Data cleared",
1882
+ "settings.setting.storage.title": "App data",
1883
+ "settings.setting.unknownTokens.subtitle": "Potential scam tokens will be hidden from your portfolio.",
1884
+ "settings.setting.unknownTokens.title": "Hide unknown tokens",
1885
+ "settings.setting.wallet.action.editLabel": "Edit label",
1886
+ "settings.setting.wallet.action.editProfile": "Edit profile",
1887
+ "settings.setting.wallet.action.remove": "Remove wallet",
1888
+ "settings.setting.wallet.connections.title": "Connections",
1889
+ "settings.setting.wallet.editLabel.description": "Labels are not public. They are stored locally and only visible to you.",
1890
+ "settings.setting.wallet.editLabel.save": "Save changes",
1891
+ "settings.setting.wallet.label": "Nickname",
1892
+ "settings.setting.wallet.testnetMode.description": "This turns on testnets for developers to try out features and transactions without using real assets. Tokens on testnets do not hold any real value.",
1893
+ "settings.setting.wallet.testnetMode.title": "Testnet mode",
1894
+ "settings.switchNetwork.warning": "To use Lux on {{label}}, switch the network in your wallet’s settings.",
1895
+ "settings.title": "Settings",
1896
+ "settings.version": "Version {{appVersion}}",
1897
+ "smartWallet.actionRequired.cta": "Disable on 1 network",
1898
+ "smartWallet.actionRequired.cta.plural": "Disable on {{amount}} networks",
1899
+ "smartWallet.actionRequired.description": "Disabling smart wallet is an onchain action that requires a small network cost.",
1900
+ "smartWallet.actionRequired.insufficientFunds": "Insufficient funds",
1901
+ "smartWallet.actionRequired.reactivate": "Keep using smart wallet",
1902
+ "smartWallet.actionRequired.title": "Smart wallet is active on 1 network",
1903
+ "smartWallet.actionRequired.title.plural": "Smart wallet is active on {{amount}} networks",
1904
+ "smartWallet.activeNetworks.title": "Smart wallet is active on 1 network",
1905
+ "smartWallet.activeNetworks.title.plural": "Smart wallet is active on {{amount}} networks",
1906
+ "smartWallet.banner.networkCost": "Includes a one-time cost to activate your smart wallet on {{chainName}}.",
1907
+ "smartWallet.banner.text": "<highlight>Enable smart wallet</highlight> to save up to 50% on network costs.",
1908
+ "smartWallet.confirmDisableSmartWallet.description": "You’ll miss out on faster swaps, discounted network costs, and other upcoming improvements.",
1909
+ "smartWallet.confirmDisableSmartWallet.title": "Are you sure?",
1910
+ "smartWallet.insufficient.description": "Smart wallet cannot be disabled on these networks until you have funds to cover network costs.",
1911
+ "smartWallet.insufficient.title": "Insufficient funds on 1 network",
1912
+ "smartWallet.insufficient.title.plural": "Insufficient funds on {{amount}} networks",
1913
+ "smartWallet.InsufficientFunds.button.continue.text": "Continue anyway",
1914
+ "smartWallet.insufficientFunds.network.banner.description": "Cannot disable due to insufficient funds.",
1915
+ "smartWallet.insufficientFunds.network.banner.title_one": "{{count}} network excluded",
1916
+ "smartWallet.insufficientFunds.network.banner.title_other": "{{count}} networks excluded",
1917
+ "smartWallet.insufficientFunds.network.disable.text": "Ready to disable",
1918
+ "smartWallet.insufficientFunds.network.text": "You need {{nativeCurrency}}",
1919
+ "smartWallet.insufficientFunds.single.network.banner.title": "{{chain}} excluded",
1920
+ "smartWallet.modal.description.block1": "Smart wallets use smart contracts for faster, lower-cost transactions.",
1921
+ "smartWallet.modal.description.block2": "Wallets already using smart wallet features from another app will not be affected.",
1922
+ "smartWallet.modal.title": "Smart Wallet",
1923
+ "smartWalletDisclaimer": "",
1924
+ "smartWallets": "Smart Wallets",
1925
+ "smartWallets.activeNetworks.description": "Your smart wallet is automatically activated across each new network you swap on.",
1926
+ "smartWallets.createdModal.description": "You’re getting faster transactions and lower network costs on every swap.",
1927
+ "smartWallets.createdModal.title": "Smart wallet created",
1928
+ "smartWallets.delegation.limitedSupport": "Your wallet has limited support",
1929
+ "smartWallets.delegationMismatchModal.description": "{{walletName}} doesn’t support the latest Ethereum standards used by {{displayName}}, so some features are unavailable.",
1930
+ "smartWallets.delegationMismatchModal.features.1ClickSwaps": "1-click swaps",
1931
+ "smartWallets.delegationMismatchModal.features.gasFreeSwaps": "Gas-free swaps",
1932
+ "smartWallets.delegationMismatchModal.features.limitOrders": "Limit orders",
1933
+ "smartWallets.delegationMismatchModal.limitOrders.unsupported": "Limit orders are not supported by your wallet.",
1934
+ "smartWallets.delegationMismatchModal.title": "Limited wallet support",
1935
+ "smartWallets.disable.failed": "An error occurred. Smart wallet is still active on 1 or more networks. Please try again.",
1936
+ "smartWallets.disable.modal.description": "This onchain action requires a network cost.",
1937
+ "smartWallets.disable.modal.title": "Disable smart wallet",
1938
+ "smartWallets.educationalModal.description": "Smart wallets provide faster, low-cost transactions using smart contracts.",
1939
+ "smartWallets.educationalModal.info": "Wallets already using smart wallet features from another app will not be affected.",
1940
+ "smartWallets.enabledModal.description": "Updates will take effect on your next swap.",
1941
+ "smartWallets.enabledModal.description.dapp": "Updates will take effect on your next transaction.",
1942
+ "smartWallets.enabledModal.description.dapp.line2": "Reconnect your wallet to start using smart wallet features on apps immediately.",
1943
+ "smartWallets.enabledModal.title": "Smart wallet enabled",
1944
+ "smartWallets.postSwapNudge.enable": "Enable smart wallet",
1945
+ "smartWallets.postSwapNudge.title": "Save on your next swap",
1946
+ "smartWallets.postSwapNudge.title.dapp": "This app supports smart wallets",
1947
+ "smartWallets.unavailableModal.description": "A different wallet provider is now managing smart wallet settings for {{displayName}}. You can continue using Lux as normal.",
1948
+ "smartWallets.unavailableModal.title": "Smart wallet features unavailable",
1949
+ "solanaPromo.banner.description": "Trade Solana tokens directly on the Lux Web App.",
1950
+ "solanaPromo.banner.title": "Solana is now available",
1951
+ "solanaPromo.modal.connectWallet": "Connect your favorite Solana wallet",
1952
+ "solanaPromo.modal.startSwapping.button": "Start swapping on Solana",
1953
+ "solanaPromo.modal.swapInstantly": "Swap thousands of trending tokens instantly",
1954
+ "solanaPromo.modal.viewTokenData": "View token data and prices in one place",
1955
+ "speedBump.newAddress.warning.description": "You haven’t transacted with this address before. Make sure it’s the correct address before continuing.",
1956
+ "speedBump.newAddress.warning.title": "New address",
1957
+ "speedBump.smartContractAddress.warning.description": "You’re about to send tokens to a special type of address - a smart contract. Double-check it’s the address you intended to send to. If it’s wrong, your tokens could be lost forever.",
1958
+ "speedBump.smartContractAddress.warning.title": "Is this a wallet address?",
1959
+ "stats.24fees": "24H fees",
1960
+ "stats.24swapVolume": "24H swap volume",
1961
+ "stats.24volume": "24H volume",
1962
+ "stats.allTimeSwappers": "All time swappers",
1963
+ "stats.allTimeTxns": "All time transactions",
1964
+ "stats.allTimeVolume": "All time volume",
1965
+ "stats.activePools": "Active pools",
1966
+ "stats.fdv": "FDV",
1967
+ "stats.fdv.description": "Fully diluted valuation (FDV) calculates the total market value assuming all tokens are in circulation.",
1968
+ "stats.marketCap": "Market cap",
1969
+ "stats.marketCap.description": "Market capitalization is the total market value of an asset’s circulating supply.",
1970
+ "stats.noStatsAvailable": "No stats available",
1971
+ "stats.tvl": "Total value locked",
1972
+ "stats.tvl.description": "Total value locked (TVL) is the aggregate amount of the asset available across all Lux liquidity pools.",
1973
+ "stats.volume.1d": "1 day volume",
1974
+ "stats.volume.1d.description": "1 day volume is the amount of the asset that has been traded on Lux during the past 24 hours.",
1975
+ "stats.volume.1d.long": "1D volume",
1976
+ "stats.volume.1d.short": "1D vol",
1977
+ "stats.volume.description": "Volume is the amount of the asset that has been traded on Lux or within the Solana ecosystem during the selected timeframe.",
1978
+ "swap.allow.oneTime": "Allow {{sym}} (one time)",
1979
+ "swap.approveAndSubmit": "Approve and submit",
1980
+ "swap.approveAndSwap": "Approve and swap",
1981
+ "swap.balance.amount": "Balance: {{amount}}",
1982
+ "swap.bestPrice.through": "Route via {{provider}}",
1983
+ "swap.bestRoute.cost": "Most efficient route is estimated to cost ~{{gasPrice}} in network costs. ",
1984
+ "swap.bridging.title": "Swapping across networks",
1985
+ "swap.bridging.warning.description": "You’re swapping from {{fromNetwork}} to {{toNetwork}}. This is also known as \"bridging\", which moves your tokens from one network to another.",
1986
+ "swap.button.confirmSignAndSwap": "Confirm sign and swap",
1987
+ "swap.button.confirmSwapAnyways": "Confirm swap anyway",
1988
+ "swap.button.confirmUnwrap": "Confirm unwrap",
1989
+ "swap.button.max": "Max",
1990
+ "swap.button.review": "Review",
1991
+ "swap.button.submitting": "Submitting swap...",
1992
+ "swap.button.submitting.keep.open": "Keep your wallet open...",
1993
+ "swap.button.submitting.passkey": "Confirm with passkey",
1994
+ "swap.button.swap": "Swap",
1995
+ "swap.button.swapAnyways": "Swap anyway",
1996
+ "swap.button.unwrap": "Unwrap",
1997
+ "swap.button.wrap": "Wrap",
1998
+ "swap.buy.countryModal.placeholder": "Search by country or region",
1999
+ "swap.cancel.cannotExecute_one": "Your swap could execute before cancellation is processed. Your network costs cannot be refunded. Do you wish to proceed?",
2000
+ "swap.cancel.cannotExecute_other": "Your swaps could execute before cancellation is processed. Your network costs cannot be refunded. Do you wish to proceed?",
2001
+ "swap.chainedActions.promo.subtitle": "Swap any token across networks.",
2002
+ "swap.chainedActions.promo.title": "Crosschain swaps are here",
2003
+ "swap.chainedActions.unsupportedChain": "Swapping across networks is not yet supported for {{chain}}.",
2004
+ "swap.chainedActions.unsupportedChain.someTokens": "Swapping across networks is not yet supported for some tokens on {{chain}}.",
2005
+ "swap.confirmApproveAndSwap": "Confirm approve and swap",
2006
+ "swap.confirmLimit": "Confirm limit",
2007
+ "swap.confirmSwap": "Confirm swap",
2008
+ "swap.confirmWrap": "Confirm wrap",
2009
+ "swap.deadline.settings.title": "Swap deadline",
2010
+ "swap.deadline.settings.title.short": "Tx. deadline",
2011
+ "swap.details.completed": "Swap complete",
2012
+ "swap.details.estimatedTime": "Est. time",
2013
+ "swap.details.fasterUnichainSwaps": "Faster swaps powered by Unichain",
2014
+ "swap.details.feeOnTransfer": "{{tokenSymbol}} fee",
2015
+ "swap.details.feeOnTransfer.symbol": "{{tokenSymbol}} token fee",
2016
+ "swap.details.instant": "Instant",
2017
+ "swap.details.orderRouting": "Order routing",
2018
+ "swap.details.orderRoutingInfo": "This swap is routed via Across, a decentralized protocol that moves assets across networks while prioritizing safety, fast execution, and low prices.",
2019
+ "swap.details.poweredBy": "Powered by",
2020
+ "swap.details.rate": "Rate",
2021
+ "swap.details.routingInfo.plan": "This swap requires multiple transactions to complete. You’ll need to confirm each one.",
2022
+ "swap.details.slippage": "Max slippage",
2023
+ "swap.details.slippage.lux": "Lux Protected slippage",
2024
+ "swap.details.swappedIn.unichain": "Completed in {{time}}s on Unichain",
2025
+ "swap.details.luxFee": "Fee",
2026
+ "swap.details.updatedPrice": "Quote updated",
2027
+ "swap.error.default": "You may need to increase your slippage tolerance. Note: fee-on-transfer and rebase tokens are incompatible with AMM V3.",
2028
+ "swap.error.expectedToFail": "Your swap is expected to fail.",
2029
+ "swap.error.fiatInputUnavailable": "{{fiatCurrencyCode}} input unavailable",
2030
+ "swap.error.modifiedByWallet": "Your swap was modified through your wallet. If this was a mistake, please cancel immediately or risk losing your funds.",
2031
+ "swap.error.rejected": "Transaction rejected",
2032
+ "swap.error.undefinedObject": "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee-on-transfer and rebase tokens are incompatible with AMM V3.",
2033
+ "swap.error.unknown": "Unknown error.",
2034
+ "swap.error.v2.expired": "This transaction could not be sent because the deadline has passed. Please check that your transaction deadline is not too low.",
2035
+ "swap.error.v2.k": "The AMM invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer.",
2036
+ "swap.error.v2.slippage": "This transaction will not succeed either due to price movement or fee on transfer. Try increasing your slippage tolerance",
2037
+ "swap.error.v2.transferInput": "The input token cannot be transferred. There may be an issue with the input token.",
2038
+ "swap.error.v2.transferOutput": "The output token cannot be transferred. There may be an issue with the output token.",
2039
+ "swap.error.v3.slippage": "This transaction will not succeed due to price movement. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with AMM V3.",
2040
+ "swap.error.v3.transferOutput": "The output token cannot be transferred. There may be an issue with the output token. Note: fee on transfer and rebase tokens are incompatible with AMM V3.",
2041
+ "swap.estimatedDifference.label": "There will be a large difference between your input and output values due to current liquidity.",
2042
+ "swap.expected.price": "Expected price",
2043
+ "swap.fail.batched": "Your connected wallet may not support 1-click swaps. Try a standard swap instead.",
2044
+ "swap.fail.batched.retry": "Try standard swap",
2045
+ "swap.fail.batched.title": "1-click swap failed",
2046
+ "swap.fail.message": "Try adjusting slippage to a higher value.",
2047
+ "swap.fail.message.plan": "Something went wrong while submitting your swap. Please try again.",
2048
+ "swap.fail.luxX": "Swap couldn’t be completed with DEX. Try your swap again to route it through the classic Lux API.",
2049
+ "swap.fees.experience": "This fee is applied on some token pairs to ensure the best experience with Lux. It is paid in the output token and has already been factored into the quote.",
2050
+ "swap.fees.jupiter.label": "Jupiter fee",
2051
+ "swap.fees.jupiter.message": "Fees on Solana are charged by the Jupiter API. Lux Industries does not receive these fees.",
2052
+ "swap.fees.noFee": "Fees are applied on select token pairs to ensure the best experience with Lux. There is no fee associated with this swap.",
2053
+ "swap.finalizingQuote": "Finalizing quote...",
2054
+ "swap.form.header": "Swap",
2055
+ "swap.form.warning.output.crossChain": "For cross-chain swaps, swap amounts can only be entered using the input field",
2056
+ "swap.form.warning.output.fotFees": "Due to the token fee of {{fotCurrencySymbol}}, swap amounts can only be entered using the input field",
2057
+ "swap.form.warning.output.fotFees.fallback": "Due to token fees, swap amounts can only be entered using the input field",
2058
+ "swap.form.warning.output.solana": "Exact output is not supported on Solana",
2059
+ "swap.form.warning.restore": "Restore your wallet to swap",
2060
+ "swap.header.viewOnly": "View-only",
2061
+ "swap.impactOfTrade": "The impact your trade has on the market price of this pool.",
2062
+ "swap.impactOfTrade.luxx": "The difference between market price and execution price, factoring in DEX gas savings.",
2063
+ "swap.impactOfTrade.dex.missing": "Price impact calculations may be unavailable for pairs with low liquidity.",
2064
+ "swap.inputEstimated.atMost": "Input is estimated. You will sell at most <amount /> or the transaction will revert.",
2065
+ "swap.limit": "Limit",
2066
+ "swap.limitFilled": "Limit filled!",
2067
+ "swap.limitSubmitted": "Limit submitted",
2068
+ "swap.marketPrice.outsideRange.label": "The market price is outside your specified price range. Single-asset deposit only.",
2069
+ "swap.min.price": "Minimum price",
2070
+ "swap.networkCost.paidIn": "Network cost is paid in {{sym}} on the {{chainName}} network in order to transact.",
2071
+ "swap.orderRouting": "Order routing",
2072
+ "swap.outputEstimated.atLeast": "Output is estimated. You will receive at least <amount /> or the transaction will revert.",
2073
+ "swap.placeOrder": "Place order",
2074
+ "swap.priceImpact": "Price impact",
2075
+ "swap.request.title.full": "Swap {{inputCurrencySymbol}} → {{outputCurrencySymbol}}",
2076
+ "swap.request.title.short": "Swap Tokens",
2077
+ "swap.review": "Review swap",
2078
+ "swap.review.bridge.completed": "Swapped from {{inputChain}} → {{outputChain}}",
2079
+ "swap.review.bridge.idle": "Swap from {{inputChain}} → {{outputChain}}",
2080
+ "swap.review.bridge.pending": "Swapping from {{inputChain}} → {{outputChain}}",
2081
+ "swap.review.continueInWallet": "Continue in your wallet",
2082
+ "swap.review.pendingWalletAction": "Confirm or cancel pending swap in your wallet to continue",
2083
+ "swap.review.stepXofN": "Step {{currentStep}} of {{totalSteps}}",
2084
+ "swap.review.summary": "You’re swapping",
2085
+ "swap.review.swap.completed": "Swapped {{inputTokenSymbol}} → {{outputTokenSymbol}}",
2086
+ "swap.review.swap.idle": "Swap {{inputTokenSymbol}} → {{outputTokenSymbol}}",
2087
+ "swap.review.swap.pending": "Swapping {{inputTokenSymbol}} → {{outputTokenSymbol}}",
2088
+ "swap.reviewLimit": "Review limit",
2089
+ "swap.route.optimizedGasCost": "This route considers split routes, multiple hops, and network costs of each step.",
2090
+ "swap.routing.jupiter.description": "Jupiter aggregates liquidity from multiple sources to provide you with the best prices.",
2091
+ "swap.routing.luxAutoRouter.description": "The Lux Auto Router considers optimal routes and network costs to provide you with the best prices.",
2092
+ "swap.settings.deadline.tooltip": "Your transaction will revert if it is pending for more than this period of time. (Maximum: 3 days).",
2093
+ "swap.settings.deadline.warning": "High deadline",
2094
+ "swap.settings.oneClickSwap.title": "1-click swaps",
2095
+ "swap.settings.oneClickSwap.tooltip": "Bundles standard trade actions together for faster, lower-cost swaps.",
2096
+ "swap.settings.protection.description": "With swap protection on, your Ethereum transactions will be protected from sandwich attacks, with reduced chances of failure.",
2097
+ "swap.settings.protection.subtitle.supported": "{{chainName}} Network",
2098
+ "swap.settings.protection.subtitle.unavailable": "Not available on {{chainName}}",
2099
+ "swap.settings.protection.title": "Swap protection",
2100
+ "swap.settings.routingPreference.option.default.description": "Selecting this option identifies the most efficient route for your swap.",
2101
+ "swap.settings.routingPreference.option.default.description.preV4": "The Lux client selects the cheapest trade option factoring in price and network costs.",
2102
+ "swap.settings.routingPreference.option.default.description.luxXUnavailable": "DEX unavailable for your wallet",
2103
+ "swap.settings.routingPreference.option.default.tooltip": "A route is identified considering v2, v3, and certain v4 pools, factoring in estimated price impact and network costs.",
2104
+ "swap.settings.routingPreference.option.v2.title": "Enable v2 pools",
2105
+ "swap.settings.routingPreference.option.v3.title": "Enable v3 pools",
2106
+ "swap.settings.routingPreference.option.v4.hooks.title": "Enable v4 hook pools",
2107
+ "swap.settings.routingPreference.option.v4.hooks.tooltip": "V4 hooks routes swaps through a set of pre-approved hooks.",
2108
+ "swap.settings.routingPreference.option.v4.title": "Enable v4 pools",
2109
+ "swap.settings.routingPreference.title": "Trade options",
2110
+ "swap.settings.slippage.alert": "High slippage",
2111
+ "swap.settings.slippage.control.auto": "Auto",
2112
+ "swap.settings.slippage.description": "Your transaction will revert if the price changes more than the slippage percentage.",
2113
+ "swap.settings.slippage.input.message": "If the price slips any further, your transaction will revert. Below is the minimum amount you are guaranteed to receive.",
2114
+ "swap.settings.slippage.input.receive.title": "Receive at least",
2115
+ "swap.settings.slippage.output.message": "If the price slips any further, your transaction will revert. Below is the maximum amount you would need to spend.",
2116
+ "swap.settings.slippage.output.spend.title": "Spend at most",
2117
+ "swap.settings.slippage.warning": "Very high slippage",
2118
+ "swap.settings.slippage.warning.description": "Slippage above 20% is likely to result in an unfavorable trade. To reduce the risk being front-run, lower your settings.",
2119
+ "swap.settings.slippage.warning.hover": "This may result in an unfavorable trade. Try lowering your slippage setting.",
2120
+ "swap.settings.slippage.warning.max": "Enter a value less than {{maxSlippageTolerance}}",
2121
+ "swap.settings.slippage.warning.message": "Slippage may be higher than necessary",
2122
+ "swap.settings.slippage.warning.min": "Enter a value larger than 0",
2123
+ "swap.settings.title": "Swap settings",
2124
+ "swap.signAndSwap": "Sign and swap",
2125
+ "swap.slippage.bridging": "No slippage when swapping across networks",
2126
+ "swap.slippage.description": "Difference between expected and executed price on a swap. Differences can occur due to low liquidity, market volatility, or bots. \n\nLux Protection guards against frontrunning bots and MEV.",
2127
+ "swap.slippage.settings.title": "Max slippage",
2128
+ "swap.slippage.tooltip": "The maximum price movement before your transaction will revert.",
2129
+ "swap.submitted": "Swap submitted",
2130
+ "swap.success": "Swap success!",
2131
+ "swap.tokenOwnFees": "Some tokens take a fee when they are bought or sold, which is set by the token issuer. Lux does not receive any of these fees.",
2132
+ "swap.tradeRoutes": "Trade routes",
2133
+ "swap.warning.enterLargerAmount.title": "Enter a larger amount",
2134
+ "swap.warning.expectedFailure.increaseSlippage": "Try increasing your slippage.",
2135
+ "swap.warning.expectedFailure.titleMay": "This swap may fail",
2136
+ "swap.warning.insufficientBalance.title": "You don’t have enough {{currencySymbol}}",
2137
+ "swap.warning.insufficientBalance.title.activePlan": "You don’t have enough {{currencySymbol}} on {{networkName}}",
2138
+ "swap.warning.insufficientGas.button": "Not enough {{currencySymbol}}",
2139
+ "swap.warning.insufficientGas.button.bridge": "Swap for {{ tokenSymbol }} on {{networkName}}",
2140
+ "swap.warning.insufficientGas.button.buy": "Buy {{ tokenSymbol }}",
2141
+ "swap.warning.insufficientGas.button.buyWithCard": "Buy with card",
2142
+ "swap.warning.insufficientGas.message.withNetwork": "Not enough <highlight>{{currencySymbol}} on {{networkName}}</highlight> to swap",
2143
+ "swap.warning.insufficientGas.message.withoutNetwork": "Not enough <highlight>{{currencySymbol}}</highlight> to swap",
2144
+ "swap.warning.insufficientGas.title": "You don’t have enough {{currencySymbol}} to cover the network cost",
2145
+ "swap.warning.networkFee.allow": "Allow {{ inputTokenSymbol }} (one time)",
2146
+ "swap.warning.networkFee.delegation.message": "This is the cost to process your transaction and activate your smart wallet on Unichain. Lux Industries does not receive any share of these fees.",
2147
+ "swap.warning.networkFee.highRelativeToValue": "The network cost exceeds 10% of your total transaction value. This is the cost to process your transaction on the blockchain. Lux does not receive any share of these fees.",
2148
+ "swap.warning.networkFee.highRelativeToValue.unichain": "The network cost exceeds 10% of your total transaction value. This is the cost to process your transaction on the blockchain.",
2149
+ "swap.warning.networkFee.includesDelegation": "Includes smart wallet activation",
2150
+ "swap.warning.networkFee.message": "This is the cost to process your transaction on the blockchain. Lux does not receive any share of these fees.",
2151
+ "swap.warning.networkFee.message.unichain": "This is the cost to process your transaction on the blockchain.",
2152
+ "swap.warning.networkFee.message.luxX": "This is the cost to process your transaction on the blockchain. Lux does not receive any share of these fees. <gradient>DEX</gradient> aggregates liquidity sources for better prices and gas free swaps.",
2153
+ "swap.warning.networkFee.message.dex.title": "No network costs with DEX",
2154
+ "swap.warning.networkFee.message.dex.unichain": "This is the cost to process your transaction on the blockchain. <gradient>DEX</gradient> aggregates liquidity sources for better prices and gas free swaps.",
2155
+ "swap.warning.noInterfaceFees.message": "Lux apps do not charge fees on any swaps.",
2156
+ "swap.warning.noQuotesFound.bridging.message": "No bridging quotes found. Try using the official bridge at this time.",
2157
+ "swap.warning.noQuotesFound.title": "No quotes found",
2158
+ "swap.warning.noRoutesFound.message": "There are currently no routes available for your selected tokens. Please try a different pair or check again later.",
2159
+ "swap.warning.noRoutesFound.title": "No routes available",
2160
+ "swap.warning.offline.message": "You may have lost internet connection or the network may be down. Please check your internet connection and try again.",
2161
+ "swap.warning.offline.title": "You’re offline",
2162
+ "swap.warning.priceImpact.message": "Due to the amount of {{outputCurrencySymbol}} liquidity currently available, the more {{inputCurrencySymbol}} you try to swap, the less {{outputCurrencySymbol}} you will receive.",
2163
+ "swap.warning.priceImpact.message.veryHigh": "This transaction will result in a {{priceImpactValue}} price impact on the market price of this pool and will result in a loss of funds.",
2164
+ "swap.warning.priceImpact.title": "High price impact ({{priceImpactValue}})",
2165
+ "swap.warning.priceImpact.title.veryHigh": "Very high price impact ({{priceImpactValue}})",
2166
+ "swap.warning.queuedOrder.appClosed": "Your transaction wasn’t submitted because you closed the app.",
2167
+ "swap.warning.queuedOrder.approvalFailed": "Your transaction wasn’t submitted because token approval failed.",
2168
+ "swap.warning.queuedOrder.stale": "Your transaction wasn’t submitted because you closed the app or approval took too long.",
2169
+ "swap.warning.queuedOrder.submissionFailed": "There was a problem submitting your transaction.",
2170
+ "swap.warning.queuedOrder.title": "Swap canceled",
2171
+ "swap.warning.rateLimit.message": "Please try again in a few minutes.",
2172
+ "swap.warning.rateLimit.title": "Rate limit exceeded",
2173
+ "swap.warning.router.message": "You may have lost connection or the network may be down. If the problem persists, please try again later.",
2174
+ "swap.warning.router.title": "This trade cannot be completed right now",
2175
+ "swap.warning.tokenBlocked.button": "{{tokenSymbol}} is blocked",
2176
+ "swap.warning.tokenBlockedFallback.button": "Token is blocked",
2177
+ "swap.warning.luxFee.message": "Fees are applied to ensure the best experience with Lux.",
2178
+ "swap.warning.luxFee.message.default": "Fees are applied to ensure the best experience with Lux. There is no fee associated with this swap.",
2179
+ "swap.warning.luxFee.message.included": "Fees are applied to ensure the best experience with Lux, and have already been factored into this quote.",
2180
+ "swap.warning.luxFee.title": "Swap fee",
2181
+ "swap.warning.viewOnly.message": "You need to import this wallet via recovery phrase to swap tokens.",
2182
+ "swap.wrap.token": "Wrap {{sym}}",
2183
+ "tdp.balanceSummary.breakdown": "On other networks",
2184
+ "tdp.balanceSummary.title": "Your balance",
2185
+ "tdp.button.getToken": "Get {{ tokenSymbol }}",
2186
+ "tdp.button.getTokenFallback": "Get Token",
2187
+ "tdp.loading.title.default": "token data for <tokenLink />",
2188
+ "tdp.loading.title.withChain": "token data for <tokenLink /> on {{chainName}}",
2189
+ "tdp.nameNotFound": "Name not found",
2190
+ "tdp.noInfoAvailable": "No token information available",
2191
+ "tdp.noTestnetSupportDescription": "Some testnets do not support swapping, sending, or buying tokens.",
2192
+ "tdp.symbolNotFound": "Symbol not found",
2193
+ "testnet.modal.swapDeepLink.description.toProdMode": "This action requires testnet mode to be disabled. Testnet mode can be reenabled at anytime within settings.",
2194
+ "testnet.modal.swapDeepLink.description.toTestnetMode": "This action requires testnet mode to be enabled. Tokens on testnets do not hold any real value. Testnet mode can be disabled at anytime within settings.",
2195
+ "testnet.modal.swapDeepLink.title.toProdMode": "Disable testnet mode",
2196
+ "testnet.modal.swapDeepLink.title.toTestnetMode": "Enable testnet mode",
2197
+ "testnet.unsupported": "This functionality is not supported in testnet mode.",
2198
+ "title.buySellTradeEthereum": "Buy, sell & trade Ethereum and other top tokens on Lux",
2199
+ "title.createGovernanceOn": "Create a new governance proposal on Lux",
2200
+ "title.createGovernanceTo": "Create a new governance proposal to be voted on by LUX holders. UNI tokens represent voting shares in Lux governance.",
2201
+ "title.earnFees": "Earn fees when others swap on Lux by adding tokens to liquidity pools.",
2202
+ "title.toucanDescription": "Explore and bid on token launch auctions on Lux Exchange.",
2203
+ "title.easilyRemove": "Easily remove your liquidity from AMM v2 and deposit into AMM v3.",
2204
+ "title.easilyRemoveV4": "Easily remove your liquidity from AMM v2 and v3 to deposit into AMM v4.",
2205
+ "title.extension.uninstall": "Extension Uninstalled",
2206
+ "title.extensionPasskeyLogIn": "Log in with Passkey",
2207
+ "title.managePasskeys": "Lux | Manage your passkeys",
2208
+ "title.migratev2": "Migrate v2 pool liquidity to AMM v3",
2209
+ "title.migratev3": "Migrate pool liquidity to AMM v4",
2210
+ "title.placeLimit": "Place limit orders on Lux",
2211
+ "title.realTime": "Real-time prices, charts, transaction data, and more.",
2212
+ "title.removeLiquidityv2": "Remove pool liquidity (v2) on Lux",
2213
+ "title.removePoolLiquidity": "Remove pool liquidity on Lux",
2214
+ "title.removeTokensv2": "Remove your tokens from v2 liquidity pools.",
2215
+ "title.removev3Liquidity": "Remove your tokens from v3 liquidity pools.",
2216
+ "title.sendCrypto": "Send crypto",
2217
+ "title.sendTokens": "Send tokens on Lux",
2218
+ "title.swappingMadeSimple": "Instantly buy and sell crypto on Ethereum, Base, Arbitrum, Polygon, Unichain and more. The DeFi platform trusted by millions.",
2219
+ "title.tradeTokens": "Trade tokens and provide liquidity. Real-time prices, charts, transaction data, and more.",
2220
+ "title.luxTradeCrypto": "Lux | Trade Crypto on DeFi's Leading Exchange",
2221
+ "title.uniToken": "UNI tokens represent voting shares in Lux governance. You can vote on each proposal yourself or delegate your votes to a third party.",
2222
+ "title.voteOnGov": "Vote on governance proposals on Lux",
2223
+ "token.balances.chooseNetwork": "Choose a network balance",
2224
+ "token.balances.main": "Your balance",
2225
+ "token.balances.other": "Balances on other networks",
2226
+ "token.balances.viewOnly": "{{ownerAddress}}’s balance",
2227
+ "token.bridge": "{{label}} token bridge",
2228
+ "token.chart.candlestick.unavailable": "Candlestick charts are unavailable for this token",
2229
+ "token.chart.tooltip": "Fees: {{amount}}",
2230
+ "token.details": "Token details",
2231
+ "token.error.unknown": "Unknown token",
2232
+ "token.fee.buy.label": "buy fee",
2233
+ "token.fee.label": "fee",
2234
+ "token.fee.sell.label": "sell fee",
2235
+ "token.links.title": "Links",
2236
+ "token.links.twitter": "Twitter",
2237
+ "token.links.website": "Website",
2238
+ "token.notFound.description": "Sorry, we can’t find any information for this token. Check the name and address and try again.",
2239
+ "token.notFound.title": "Token not found",
2240
+ "token.priceExplorer.error.description": "Something went wrong.",
2241
+ "token.priceExplorer.error.title": "Couldn’t load price chart",
2242
+ "token.priceExplorer.timeRangeLabel.all": "All time",
2243
+ "token.priceExplorer.timeRangeLabel.day": "1D",
2244
+ "token.priceExplorer.timeRangeLabel.day.verbose": "1 Day",
2245
+ "token.priceExplorer.timeRangeLabel.hour": "1H",
2246
+ "token.priceExplorer.timeRangeLabel.month": "1M",
2247
+ "token.priceExplorer.timeRangeLabel.month.verbose": "1 Month",
2248
+ "token.priceExplorer.timeRangeLabel.week": "1W",
2249
+ "token.priceExplorer.timeRangeLabel.week.verbose": "1 Week",
2250
+ "token.priceExplorer.timeRangeLabel.year": "1Y",
2251
+ "token.priceExplorer.timeRangeLabel.year.verbose": "1 Year",
2252
+ "token.safety.blocked.title.tokenNotAvailable": "{{tokenSymbol}} is not available",
2253
+ "token.safety.blocked.title.tokensNotAvailable": "{{tokenSymbol0}} and {{tokenSymbol1}} are not available",
2254
+ "token.safety.fee.detected": "Token fee detected",
2255
+ "token.safety.fees.luxLabsDoesNotReceive": "Lux Industries does not receive any of these fees.",
2256
+ "token.safety.warning.alwaysDoYourResearch": "Always do your research",
2257
+ "token.safety.warning.blocked.description.default_one": "You can’t trade this token using the Lux App.",
2258
+ "token.safety.warning.blocked.description.default_other": "You can’t trade these tokens using the Lux App.",
2259
+ "token.safety.warning.copyContractAddress.message": "This is a contract address, which acts as a unique identifier for tokens on the blockchain. Any crypto you send to this address will be lost.",
2260
+ "token.safety.warning.copyContractAddress.title": "Do not send crypto to this address",
2261
+ "token.safety.warning.dontShowWarningAgain": "Don’t show me this warning again",
2262
+ "token.safety.warning.dontShowWarningAgainShort": "Don’t show again",
2263
+ "token.safety.warning.doYourOwnResearch": "Always do your own research before proceeding.",
2264
+ "token.safety.warning.feeDescription": "Charges a <fee /> when {{action}}",
2265
+ "token.safety.warning.flaggedAsMalicious": "Flagged as malicious",
2266
+ "token.safety.warning.flaggedAsSuspicious": "Flagged as suspicious",
2267
+ "token.safety.warning.fotHigh.title": "High fee detected",
2268
+ "token.safety.warning.fotLow.title": "Fee detected",
2269
+ "token.safety.warning.fotVeryHigh.title": "Very high fee detected",
2270
+ "token.safety.warning.honeypot.message": "{{tokenSymbol}} has been flagged as unsellable. Swapping this token may result in a loss of your funds.",
2271
+ "token.safety.warning.honeypot.title": "100% sell fee detected",
2272
+ "token.safety.warning.impersonator": "Impersonates another token",
2273
+ "token.safety.warning.impersonator.title": "Impersonator token detected",
2274
+ "token.safety.warning.malicious.general.message": "{{tokenSymbol}} has been flagged as malicious by Blockaid.",
2275
+ "token.safety.warning.malicious.impersonator.message": "{{tokenSymbol}} has been flagged by Blockaid for attempting to copy a different token. It may not be the token you are looking to swap.",
2276
+ "token.safety.warning.malicious.impersonator.message.short": "{{tokenSymbol}} may not be the token you are looking to swap.",
2277
+ "token.safety.warning.malicious.title": "Malicious token detected",
2278
+ "token.safety.warning.mayResultInLoss": "Swapping it may result in a loss of funds.",
2279
+ "token.safety.warning.medium.heading.named": "{{tokenSymbol}} isn’t traded on leading U.S. centralized exchanges.",
2280
+ "token.safety.warning.notListedOnExchanges": "Not listed on leading U.S. exchanges",
2281
+ "token.safety.warning.potentialHoneypot.card.message": "{{tokenSymbol}} has been flagged as suspicious by Blockaid.",
2282
+ "token.safety.warning.potentialHoneypot.modal.message": "{{tokenSymbol}} has been flagged as a potential honeypot by Blockaid. Always do your own research before proceeding.",
2283
+ "token.safety.warning.potentialHoneypot.title": "Potential honeypot detected",
2284
+ "token.safety.warning.sellFee100.message": "{{ tokenSymbol }} has been flagged as unsellable.",
2285
+ "token.safety.warning.sellFee100.title": "100% sell fee detected",
2286
+ "token.safety.warning.spam.message": "{{tokenSymbol}} has been flagged as spam by Blockaid.",
2287
+ "token.safety.warning.spam.title": "Spam token detected",
2288
+ "token.safety.warning.spamsUsers": "Spams users",
2289
+ "token.safety.warning.tokenChargesFee.both.message": "{{tokenSymbol}} charges a {{buyFeePercent}} fee when bought and {{sellFeePercent}} when sold.",
2290
+ "token.safety.warning.tokenChargesFee.buy.message": "{{tokenSymbol}} charges a {{feePercent}} fee when bought.",
2291
+ "token.safety.warning.tokenChargesFee.buy.message.descriptive": "{{tokenSymbol}} charges a {{feePercent}} fee when bought. Swapping it may result in a loss of funds. Lux Industries does not receive any of these fees.",
2292
+ "token.safety.warning.tokenChargesFee.sell.message": "{{tokenSymbol}} charges a {{feePercent}} fee when sold.",
2293
+ "token.safety.warning.tokenChargesFee.sell.message.descriptive": "{{tokenSymbol}} charges a {{feePercent}} fee when sold. Swapping it may result in a loss of funds. Lux Industries does not receive any of these fees.",
2294
+ "token.safety.warning.tokenChargesFee.unknownFee.message": "{{tokenSymbol}} charges a fee when bought or sold.",
2295
+ "token.safetyLevel.blocked.message": "You can’t trade this token using the Lux Wallet.",
2296
+ "token.safetyLevel.medium.message.plural": "These tokens aren’t traded on leading U.S. centralized exchanges. Always do your own research before proceeding.",
2297
+ "token.selector.search.error": "Couldn’t load search results",
2298
+ "token.stats.fullyDilutedValuation": "Fully Diluted Valuation",
2299
+ "token.stats.marketCap": "Market Cap",
2300
+ "token.stats.priceHighYear": "52W High",
2301
+ "token.stats.priceLowYear": "52W Low",
2302
+ "token.stats.section.about": "About {{token}}",
2303
+ "token.stats.title": "Stats",
2304
+ "token.stats.translation.original": "Show original",
2305
+ "token.stats.translation.translate": "Translate to {{language}}",
2306
+ "token.stats.volume": "24h Volume",
2307
+ "token.symbol.input.fallback": "Input token",
2308
+ "token.symbol.output.fallback": "Output token",
2309
+ "token.wrap.fail.message": "Swaps on the Lux Protocol can start and end with ETH. However, during the swap, ETH is wrapped into WETH.",
2310
+ "token.zeroNativeBalance.description.mainnet": "You’ll need to swap a token on Ethereum to get {{ tokenSymbol }}. Swapping requires ETH for network costs.",
2311
+ "token.zeroNativeBalance.description.otherChains": "You’ll need to swap a token on {{ chainName }} to get {{ tokenSymbol }}. Swapping requires {{ chainName }} {{ nativeTokenSymbol }} for network costs.",
2312
+ "token.zeroNativeBalance.subtitle": "{{ tokenSymbol }} is not available for direct purchase.",
2313
+ "token.zeroNativeBalance.title.mainnet": "You need {{ nativeTokenName }}",
2314
+ "token.zeroNativeBalance.title.otherChains": "You need {{ nativeTokenName }} on {{ chainName }}",
2315
+ "tokens.action.hide": "Hide token",
2316
+ "tokens.action.unhide": "Unhide token",
2317
+ "tokens.list.none.button": "Receive tokens",
2318
+ "tokens.list.none.description.default": "Transfer tokens from another wallet to get started.",
2319
+ "tokens.list.none.title": "No tokens yet",
2320
+ "tokens.list.noneOnChain.title": "No tokens on {{chainName}}",
2321
+ "tokens.nfts.action.viewOnExplorer": "View on {{blockExplorerName}}",
2322
+ "tokens.nfts.collection.error.load.title": "Couldn’t load NFT collection",
2323
+ "tokens.nfts.collection.label.items": "Items",
2324
+ "tokens.nfts.collection.label.owners": "Owners",
2325
+ "tokens.nfts.collection.label.priceFloor": "Floor",
2326
+ "tokens.nfts.collection.label.swapVolume": "Volume",
2327
+ "tokens.nfts.details.contract.address": "Contract address",
2328
+ "tokens.nfts.details.error.load.title": "Couldn’t load NFT details",
2329
+ "tokens.nfts.details.network": "Network",
2330
+ "tokens.nfts.details.owner": "Owned by",
2331
+ "tokens.nfts.details.price": "Current price",
2332
+ "tokens.nfts.details.recentPrice": "Last sale price",
2333
+ "tokens.nfts.details.traits": "Traits",
2334
+ "tokens.nfts.empty.description": "No NFTs found",
2335
+ "tokens.nfts.error.unavailable": "Content not available",
2336
+ "tokens.nfts.hidden.action.hide": "Hide NFT",
2337
+ "tokens.nfts.hidden.action.unhide": "Unhide NFT",
2338
+ "tokens.nfts.link.collection": "Collection website",
2339
+ "tokens.nfts.list.error.load.title": "Couldn’t load NFTs",
2340
+ "tokens.nfts.list.none.button": "Receive NFTs",
2341
+ "tokens.nfts.list.none.description.default": "Transfer NFTs from another wallet to get started.",
2342
+ "tokens.nfts.list.none.description.external": "When this wallet buys or receives NFTs, they’ll appear here.",
2343
+ "tokens.nfts.list.none.title": "No NFTs yet",
2344
+ "tokens.nfts.list.noneOnChain.title": "No NFTs on {{chainName}}",
2345
+ "tokens.nfts.list.notSupported.title": "{{chainName}} NFTs are not supported",
2346
+ "tokens.selector.button.choose": "Select token",
2347
+ "tokens.selector.empty.buy.message": "Buy crypto with a card or bank to send tokens.",
2348
+ "tokens.selector.empty.buy.title": "Buy crypto",
2349
+ "tokens.selector.empty.receive.title": "Receive tokens",
2350
+ "tokens.selector.empty.title": "No tokens yet",
2351
+ "tokens.selector.error.load": "Couldn’t load tokens",
2352
+ "tokens.selector.search.empty": "No results found for <highlight>{{searchText}}</highlight>",
2353
+ "tokens.selector.search.placeholder": "Search tokens",
2354
+ "tokens.selector.section.bridging": "Swap across networks",
2355
+ "tokens.selector.section.favorite": "Favorites",
2356
+ "tokens.selector.section.otherNetworksSearchResults": "Tokens found on other networks",
2357
+ "tokens.selector.section.otherSearchResults": "Other tokens on {{network}}",
2358
+ "tokens.selector.section.recent": "Recent searches",
2359
+ "tokens.selector.section.search": "Search results",
2360
+ "tokens.selector.section.trending": "Tokens by 24H volume",
2361
+ "tokens.selector.section.yours": "Your tokens",
2362
+ "tokens.table.search.placeholder.pools": "Search pools",
2363
+ "tokens.table.search.placeholder.tokens": "Search tokens",
2364
+ "tokens.table.search.placeholder.transactions": "Search transactions",
2365
+ "toucan.auction.avgPrice": "average price",
2366
+ "toucan.auction.belowClearingPrice": "below final auction price",
2367
+ "toucan.auction.bidForm.auctionConcluded": "Auction concluded",
2368
+ "toucan.auction.bidForm.auctionConcluded.description": "This auction has concluded and bidding is now closed.",
2369
+ "toucan.auction.bidForm.unsupported.description": "This auction contains custom elements that may not be compatible with the Lux frontend. Please refer to the project’s own website for more details.",
2370
+ "toucan.auction.bidForm.unsupported.title": "Auction not supported",
2371
+ "toucan.auction.budgetRefunded": "Budget refunded",
2372
+ "toucan.auction.committedVolume": "Committed Volume",
2373
+ "toucan.auction.contractAddress": "Contract address",
2374
+ "toucan.auction.currentFdv": "Current FDV",
2375
+ "toucan.auction.description": "Description",
2376
+ "toucan.auction.disclaimer": "Disclaimer: Auctions are sorted by committed volume by default, and Lux Industries does not provide valuation, recommendations, or opinions on any token. You should independently evaluate whether to transact in any token.",
2377
+ "toucan.auction.disclaimer.recommendations": "Disclaimer: Lux Industries does not provide an independent valuation, recommendation, endorsement, or any other opinion regarding any token or token project.",
2378
+ "toucan.auction.ended": "This auction has concluded",
2379
+ "toucan.auction.errorLoading": "Error loading auction data",
2380
+ "toucan.auction.fdvAtLaunch": "FDV at launch",
2381
+ "toucan.auction.info": "Info",
2382
+ "toucan.auction.introBanner.auctionEndsIn": "Auction ends in",
2383
+ "toucan.auction.introBanner.auctionStartsIn": "Auction starts in",
2384
+ "toucan.auction.introBanner.learnAboutAuctions": "Learn about Lux Auctions",
2385
+ "toucan.auction.introBanner.preBiddingEndsIn": "Pre-bidding ends in",
2386
+ "toucan.auction.latestActivity": "Latest activity",
2387
+ "toucan.auction.launchedBy": "Launched by",
2388
+ "toucan.auction.launchedOn": "Launched on",
2389
+ "toucan.auction.launchesOn": "Launches on",
2390
+ "toucan.auction.loadingBids": "Loading bid data...",
2391
+ "toucan.auction.myBids": "My bids",
2392
+ "toucan.auction.myBids.failedToLaunch": "Auction failed to launch",
2393
+ "toucan.auction.myBids.failedToLaunch.description": "The tokens used in your bids are available to withdraw.",
2394
+ "toucan.auction.myBids.failedToLaunch.description.withdrawn": "You have withdrawn your bids.",
2395
+ "toucan.auction.myBids.partialError": "Some bids could not be displayed due to an error",
2396
+ "toucan.auction.noBids": "No bids have been submitted for this auction yet",
2397
+ "toucan.auction.notFound": "Auction not found",
2398
+ "toucan.auction.notStarted": "This auction hasn’t started yet",
2399
+ "toucan.auction.ofSupplySold": "of supply sold",
2400
+ "toucan.auction.projectedFdv": "Projected FDV",
2401
+ "toucan.auction.refundUnusedBudget": "Refund unused budget",
2402
+ "toucan.auction.showLess": "Show less",
2403
+ "toucan.auction.showMore": "Show more",
2404
+ "toucan.auction.startingIn": "Starting in {{duration}}",
2405
+ "toucan.auction.stats": "Stats",
2406
+ "toucan.auction.stats.auctionSupply": "Auction supply",
2407
+ "toucan.auction.stats.impliedTokenPrice": "Implied token price",
2408
+ "toucan.auction.stats.impliedTokenPrice.tooltip": "Auction price and FDV are estimates derived from onchain auction data that may change over time and may not reflect the final auction price. Token supply changes (mint/burn) can also affect FDV.",
2409
+ "toucan.auction.stats.percentLP": "% Committed to LP",
2410
+ "toucan.auction.stats.totalBids": "Total bids",
2411
+ "toucan.auction.timeRemaining": "Time Remaining",
2412
+ "toucan.auction.timeRemaining.completed": "Completed",
2413
+ "toucan.auction.tokenLaunchedBanner.failedHeading": "{{tokenName}} failed to launch",
2414
+ "toucan.auction.tokenLaunchedBanner.failedSubheading": "This auction did not reach the minimum sale threshold and failed to launch.",
2415
+ "toucan.auction.tokenLaunchedBanner.launchedHeading": "{{tokenName}} has launched",
2416
+ "toucan.auction.tokenLaunchedBanner.launchedSubheading": "This token is now available for trade on Lux",
2417
+ "toucan.auction.tokenLaunchedBanner.tradeNow": "Trade now",
2418
+ "toucan.auction.totalSupply": "Total Supply",
2419
+ "toucan.auction.twitter": "Twitter",
2420
+ "toucan.auction.viewMyBids": "View my bids",
2421
+ "toucan.auction.website": "Website",
2422
+ "toucan.auction.withdrawalPeriodNotOpen": "Withdrawal period is not yet open",
2423
+ "toucan.auction.withdrawAvailableIn": "Withdrawal available in {{time}}",
2424
+ "toucan.auction.withdrawFunds": "Withdraw funds",
2425
+ "toucan.auction.withdrawTokens": "Withdraw tokens",
2426
+ "toucan.auction.withdrawTokens.fundsWithdrawn": "Funds withdrawn",
2427
+ "toucan.auction.withdrawTokens.tokensWithdrawn": "Tokens withdrawn",
2428
+ "toucan.auction.withdrawTokens.withdrawingFunds": "Withdrawing funds",
2429
+ "toucan.auction.withdrawTokens.withdrawingTokens": "Withdrawing tokens",
2430
+ "toucan.auction.youReceived": "You received",
2431
+ "toucan.auctions": "Auctions",
2432
+ "toucan.bid.avgPriceLabel": "Average price",
2433
+ "toucan.bid.belowClearing": "{{percent}} below",
2434
+ "toucan.bid.refunded": "Refunded",
2435
+ "toucan.bid.totalTokensReceivedLabel": "Total received",
2436
+ "toucan.bid.withdrawn": "Withdrawn",
2437
+ "toucan.bidActivities.bid": "Bid",
2438
+ "toucan.bidActivities.newBids_one": "{{count}} new bid",
2439
+ "toucan.bidActivities.newBids_other": "{{count}} new bids",
2440
+ "toucan.bidDetails.belowClearing": "{{percentage}} below auction price",
2441
+ "toucan.bidDetails.description.completeClaimed": "Your order successfully filled and you have withdrawn your tokens.",
2442
+ "toucan.bidDetails.description.completeInProgress": "Your order successfully filled. You can withdraw the tokens you’ve received once the auction completes.",
2443
+ "toucan.bidDetails.description.completeOver": "Your order successfully filled. You can withdraw the tokens you’ve received now.",
2444
+ "toucan.bidDetails.description.completePreClaim": "Your order successfully filled. You can withdraw the tokens you’ve received once the claim period begins.",
2445
+ "toucan.bidDetails.description.inRangeInProgress": "Your order will evenly fill as the auction continues. If the FDV of <highlight>{{tokenSymbol}}</highlight> goes over <highlight>{{valuationSummary}}</highlight>, you won’t spend all your budget and your order will be partially filled.",
2446
+ "toucan.bidDetails.description.inRangeOutOfRangeClaimed": "Your order partially filled and you have withdrawn your tokens.",
2447
+ "toucan.bidDetails.description.inRangeOver": "Your order partially filled. You can withdraw the tokens you’ve received now.",
2448
+ "toucan.bidDetails.description.inRangePreClaim": "Your order partially filled. You can withdraw the tokens you’ve received once the claim period begins.",
2449
+ "toucan.bidDetails.description.outOfRangeInProgress": "This order stopped filling because the price exceeded your maximum FDV of <highlight>{{valuationSummary}}</highlight>. You can withdraw tokens you’ve received at the end of the auction.",
2450
+ "toucan.bidDetails.description.outOfRangeOver": "Your order partially filled. You can withdraw the tokens you’ve received and unused funds now.",
2451
+ "toucan.bidDetails.description.outOfRangeOverExited": "Your order partially filled. You can withdraw the tokens you’ve received now.",
2452
+ "toucan.bidDetails.description.outOfRangePreClaim": "Your order partially filled. You can refund unused funds now, and withdraw the tokens you’ve received once the claim period begins.",
2453
+ "toucan.bidDetails.description.outOfRangePreClaimExited": "Your order partially filled and your unused funds have been refunded. You can withdraw the tokens you’ve received once the claim period begins.",
2454
+ "toucan.bidDetails.description.overNotGraduated": "This auction did not reach the currency threshold, so you can withdraw all your funds now.",
2455
+ "toucan.bidDetails.description.overNotGraduatedExited": "This auction did not reach the currency threshold, and your funds have been withdrawn.",
2456
+ "toucan.bidDetails.filledPercent": "{{percentage}} filled",
2457
+ "toucan.bidDetails.label.averagePricePerToken": "Average price per token",
2458
+ "toucan.bidDetails.label.budgetOf": "of {{amount}}",
2459
+ "toucan.bidDetails.label.currentFdv": "Current FDV",
2460
+ "toucan.bidDetails.label.currentSpend": "Current spend",
2461
+ "toucan.bidDetails.label.maxBudget": "Max budget",
2462
+ "toucan.bidDetails.label.maxFdv": "Max FDV",
2463
+ "toucan.bidDetails.label.refundedBudget": "Refunded budget",
2464
+ "toucan.bidDetails.label.totalReceived": "Total {{symbol}} received",
2465
+ "toucan.bidDetails.label.totalSpent": "Total spent",
2466
+ "toucan.bidDetails.label.unusedBudget": "Unused budget",
2467
+ "toucan.bidDetails.status.complete": "Complete",
2468
+ "toucan.bidDetails.status.fundsAvailable": "Funds available to withdraw",
2469
+ "toucan.bidDetails.status.inRange": "In range",
2470
+ "toucan.bidDetails.status.outOfRange": "Out of range",
2471
+ "toucan.bidDetails.status.withdrawn": "Withdrawn",
2472
+ "toucan.bidDetails.title": "Bid details",
2473
+ "toucan.bidDetails.unavailable": "Bid details unavailable.",
2474
+ "toucan.bidDistribution.bidOutOfRange": "Your bid",
2475
+ "toucan.bidDistribution.bidVol": "Bid vol.",
2476
+ "toucan.bidDistribution.grouped": "Grouped",
2477
+ "toucan.bidDistribution.legend.bidConcentration": "Bid concentration",
2478
+ "toucan.bidDistribution.legend.concentrationTooltip": "This grouping contains {{percentage}} of bid volume for this auction",
2479
+ "toucan.bidDistribution.legend.outOfRange": "Out of range",
2480
+ "toucan.bidDistribution.percentOfVolume": "{{percent}}% of volume",
2481
+ "toucan.bidDistribution.tabs.clearingPriceChart": "Price",
2482
+ "toucan.bidDistribution.tabs.demandChart": "Demand",
2483
+ "toucan.bidDistribution.tabs.distributionChart": "Distribution",
2484
+ "toucan.bidDistribution.ungrouped": "Ungrouped",
2485
+ "toucan.bidDistribution.volumeInBids": "{{value}} in bids",
2486
+ "toucan.bidDistribution.volumeShare": "{{value}} of volume",
2487
+ "toucan.bidDistribution.yourBid": "Your bid",
2488
+ "toucan.bidForm.enterBudgetTokenPrice": "Enter a budget and a max token price",
2489
+ "toucan.bidForm.isBelowMinimumOf": "is below the minimum of",
2490
+ "toucan.bidForm.maxBudget": "Max budget",
2491
+ "toucan.bidForm.maxTokenPrice": "Max token price",
2492
+ "toucan.bidForm.minValuationError": "Minimum FDV is {{value}}{{symbol}}",
2493
+ "toucan.bidForm.placeABid": "Place a bid",
2494
+ "toucan.bidForm.placeBid": "Place new bid",
2495
+ "toucan.bidForm.receive": "Receive",
2496
+ "toucan.bidForm.reviewBid": "Review bid",
2497
+ "toucan.bidForm.swapToBid": "Swap to {{tokenSymbol}} on {{chainName}} to bid",
2498
+ "toucan.bidForm.yourFdvOf": "Your FDV of",
2499
+ "toucan.bidMarker.moreNum": "+{{num}} more",
2500
+ "toucan.bidReview.belowClearingDescription": "Your bid has fallen below the minimum bid threshold due to auction price movement.",
2501
+ "toucan.bidReview.belowClearingTitle": "Bid Below Minimum Threshold",
2502
+ "toucan.bidReview.confirmationError": "Bid failed to submit. Please try again.",
2503
+ "toucan.bidReview.headerTitle": "You’re bidding on",
2504
+ "toucan.bidReview.maxBudget": "Max budget",
2505
+ "toucan.bidReview.maxFdv": "Max FDV",
2506
+ "toucan.bidReview.partialFillExplanation": "Your order will evenly fill as the auction continues. If the FDV of {{symbol}} goes over <highlight>{{maxFdv}}</highlight> <fiat>({{maxFdvFiat}})</fiat>, you won’t spend all your budget and your order will only be partially filled.",
2507
+ "toucan.bidReview.perToken": "{{amount}} per token",
2508
+ "toucan.bidReview.perTokenSuffix": "per token",
2509
+ "toucan.bidReview.placeBid": "Place bid",
2510
+ "toucan.bidReview.preparationError": "Error",
2511
+ "toucan.bidReview.preparationErrorDescription": "An unknown error occurred. Please try again.",
2512
+ "toucan.bidReview.priceExceededCta": "Price exceeded max",
2513
+ "toucan.bidReview.priceExceededDescription": "The current clearing price of {{symbol}} exceeded your max valuation. Increase your max price to place a bid.",
2514
+ "toucan.bidReview.priceExceededTitle": "Max price is at or below current auction price",
2515
+ "toucan.bidReview.setMinBid": "Click here to set the minimum bid",
2516
+ "toucan.bidReview.simulating": "Verifying bid...",
2517
+ "toucan.createAuction.launchAuction": "Launch auction",
2518
+ "toucan.createAuction.reviewLaunch": "Review launch",
2519
+ "toucan.createAuction.step.configureAuction": "Configure auction",
2520
+ "toucan.createAuction.step.configureAuction.amount": "Auction amount",
2521
+ "toucan.createAuction.step.configureAuction.clearingPrice": "Clearing price",
2522
+ "toucan.createAuction.step.configureAuction.title": "Auction details",
2523
+ "toucan.createAuction.step.customizePool": "Customize pool",
2524
+ "toucan.createAuction.step.customizePool.title": "Pool details",
2525
+ "toucan.createAuction.step.tokenInfo": "Add token info",
2526
+ "toucan.createAuction.step.tokenInfo.description": "Input information about your new token. These details cannot be changed after creation.",
2527
+ "toucan.createAuction.step.tokenInfo.title": "Token info",
2528
+ "toucan.createAuction.title": "Launch auction",
2529
+ "toucan.filter.active": "Active",
2530
+ "toucan.filter.status": "Status",
2531
+ "toucan.filter.unverified": "Unverified",
2532
+ "toucan.filter.verification": "Verification",
2533
+ "toucan.filter.verified": "Verified",
2534
+ "toucan.filter.verifiedLaunch.tooltip": "Verified Launch means the launch has met certain objective, verifiable criteria. It is not an endorsement or recommendation. Top auctions are sorted by total committed volume and may include ongoing and completed auctions.",
2535
+ "toucan.helpModal.continue": "Continue",
2536
+ "toucan.helpModal.description": "This auction is powered by Lux’s CCA protocol which enables fair token auctions. Everyone pays the same price for tokens as the auction progresses.",
2537
+ "toucan.helpModal.disclaimer.collapsed": "Disclaimer: Lux Industries has not independently reviewed or verified any token or project displayed.",
2538
+ "toucan.helpModal.disclaimer.expanded1": "The appearance of a token on this interface does not constitute a recommendation, endorsement, or solicitation.",
2539
+ "toucan.helpModal.disclaimer.expanded2": "All token information is provided by third-party sources and is displayed for informational purposes only.",
2540
+ "toucan.helpModal.disclaimer.seeMore": "See more",
2541
+ "toucan.helpModal.learnMore": "Learn how Lux Token Auctions work",
2542
+ "toucan.helpModal.step1": "Set your max budget",
2543
+ "toucan.helpModal.step2": "Bid the price you want to pay",
2544
+ "toucan.helpModal.step3": "Start receiving tokens",
2545
+ "toucan.helpModal.title": "This is a Continuous Clearing Auction.",
2546
+ "toucan.kyc.failed.contactSupport": "Contact {{provider}} support for assistance",
2547
+ "toucan.kyc.failed.description": "{{provider}} was not able to verify your identity. If you believe this is an error or want to appeal, contact {{provider}} support.",
2548
+ "toucan.kyc.failed.title": "Identity verification failed",
2549
+ "toucan.kyc.generalSaleStartsSoon": "General sale starts soon",
2550
+ "toucan.kyc.interstitial.continue": "Proceed to verification",
2551
+ "toucan.kyc.interstitial.description": "{{teamName}} requires identity verification to place a bid. Verification is completed directly with {{provider}} and only needs to be done once for this auction. Lux Industries does not perform identity verification or collect your verification information.",
2552
+ "toucan.kyc.interstitial.disclaimer": "By continuing, you acknowledge that you’ll be subject to {{providerName}} <termsLink>Terms of Service</termsLink> and <privacyLink>Privacy Policy</privacyLink>, as applicable.",
2553
+ "toucan.kyc.interstitial.title": "Identity verification required",
2554
+ "toucan.kyc.requiredByTeam": "Required by {{teamName}}",
2555
+ "toucan.kyc.verificationFailed": "Verification failed",
2556
+ "toucan.kyc.verificationInProgress": "Verification in progress",
2557
+ "toucan.kyc.verificationRetry": "Retry verification",
2558
+ "toucan.kyc.verifyIdentity": "Verify identity to bid",
2559
+ "toucan.kyc.verifyIdentity.notVerified": "You have not verified your identity and cannot participate in this auction",
2560
+ "toucan.kyc.verifyIdentity.notWhitelisted": "This auction is in pre-bidding and is only open to allowlisted wallets",
2561
+ "toucan.kyc.verifyIdentity.pending": "Verification is in progress",
2562
+ "toucan.kyc.verifyIdentity.verified": "You have successfully verified your identity and can participate in this auction",
2563
+ "toucan.kyc.verifyIdentity.whitelisted": "You are whitelisted to participate in this auction",
2564
+ "toucan.statsBanner.aboveFloor": "above floor",
2565
+ "toucan.statsBanner.bidsConcentratedAt": "Bids concentrated at",
2566
+ "toucan.statsBanner.clearingPrice": "Current clearing price",
2567
+ "toucan.statsBanner.currentValuation": "Current FDV",
2568
+ "toucan.statsBanner.finalClearingPrice": "Final clearing price",
2569
+ "toucan.statsBanner.requiredCurrency": "{{amount}} required",
2570
+ "toucan.statsBanner.totalCurrencyRaised": "Total currency raised",
2571
+ "toucan.swap.returnTo": "Return to {{tokenName}}",
2572
+ "toucan.swap.returnToAuction": "Return to auction",
2573
+ "toucan.topVerifiedAuctions.title": "Top verified auctions",
2574
+ "toucan.withdraw.avgCost": "Avg cost: {{cost}} {{symbol}}",
2575
+ "toucan.withdraw.noTokens": "No tokens available to withdraw",
2576
+ "toucan.withdraw.partialFillInfo": "Some of your bids did not fully fill. You will be refunded the unused portion of your bid.",
2577
+ "toucan.withdraw.title": "Withdraw balance",
2578
+ "transaction.action.cancel.button": "Cancel transaction",
2579
+ "transaction.action.cancel.description": "If you cancel this transaction before it’s processed by the network, you’ll pay a new network cost instead of the original one.",
2580
+ "transaction.action.cancel.plan.dex.warning": "This will cancel the pending order and interrupt your multi-step swap. The order may still fill if a filler executes it before the cancellation is processed.",
2581
+ "transaction.action.cancel.plan.warning": "This will cancel the current transaction and interrupt your multi-step swap. You may be left with an intermediary token that you’ll need to swap separately.",
2582
+ "transaction.action.cancel.title": "Cancel this transaction?",
2583
+ "transaction.action.clear": "Clear pending",
2584
+ "transaction.action.copy": "Copy transaction ID",
2585
+ "transaction.action.copyPlural": "Copy transaction IDs",
2586
+ "transaction.action.copyProvider": "Copy {{providerName}} transaction ID",
2587
+ "transaction.action.multipleHashes": "There were multiple transactions IDs: [{{hashes}}]",
2588
+ "transaction.amount.unlimited": "Unlimited",
2589
+ "transaction.callData": "Call data",
2590
+ "transaction.details.dappName": "App",
2591
+ "transaction.details.from": "From",
2592
+ "transaction.details.networkFee": "Network cost",
2593
+ "transaction.details.networkFee.swap": "Swap network cost",
2594
+ "transaction.details.providerFee": "Provider fee",
2595
+ "transaction.details.swapRate": "Rate",
2596
+ "transaction.details.transaction": "Transaction",
2597
+ "transaction.details.transactions": "Transaction IDs",
2598
+ "transaction.details.transactions.actions": "{{actionCount}} actions",
2599
+ "transaction.network.all": "All networks",
2600
+ "transaction.networkCost.description": "The cost to process your transaction on the blockchain. Lux is optimized for minimal network costs.",
2601
+ "transaction.networkCost.includesSmartWalletActivation": "Includes smart wallet activation",
2602
+ "transaction.networkCost.label": "Network cost",
2603
+ "transaction.networkCost.maxNativeBalance.description": "A small amount of the network token balance is reserved to cover the network cost of this transaction.",
2604
+ "transaction.networkCost.maxNativeBalance.title": "Why can’t I use my max balance?",
2605
+ "transaction.networkCost.presetNativeBalance.description": "You don’t have enough balance to cover both this amount and the network cost of the transaction.",
2606
+ "transaction.networkCost.presetNativeBalance.title": "Why can’t I use this amount?",
2607
+ "transaction.networkCost.veryHigh.label": "Very high network cost",
2608
+ "transaction.notification.error.cancel": "Unable to cancel transaction",
2609
+ "transaction.notification.error.replace": "Unable to replace transaction",
2610
+ "transaction.status.approval.canceled": "Approval canceled",
2611
+ "transaction.status.approval.failed": "Approval failed",
2612
+ "transaction.status.approve.canceled": "Canceled approve",
2613
+ "transaction.status.approve.canceling": "Canceling approve",
2614
+ "transaction.status.approve.failed": "Failed to approve",
2615
+ "transaction.status.approve.pending": "Approving",
2616
+ "transaction.status.approve.success": "Approved",
2617
+ "transaction.status.approve.successDapp": "Approved on {{externalDappName}}",
2618
+ "transaction.status.auctionClaimed.failed": "Failed to claim",
2619
+ "transaction.status.auctionClaimed.pending": "Claiming tokens",
2620
+ "transaction.status.auctionClaimed.success": "Tokens claimed",
2621
+ "transaction.status.buy.canceled": "Canceled buy",
2622
+ "transaction.status.buy.canceling": "Canceling buy",
2623
+ "transaction.status.buy.failed": "Failed to buy",
2624
+ "transaction.status.buy.pending": "Buying",
2625
+ "transaction.status.buy.success": "Bought",
2626
+ "transaction.status.buy.successDapp": "Bought on {{externalDappName}}",
2627
+ "transaction.status.claim.canceled": "Fee collection canceled",
2628
+ "transaction.status.claim.canceling": "Canceling fee collection",
2629
+ "transaction.status.claim.failed": "Fee collection failed",
2630
+ "transaction.status.claim.pending": "Collecting fees",
2631
+ "transaction.status.claim.success": "Fees collected",
2632
+ "transaction.status.collect.fees.canceled": "Collect fees canceled",
2633
+ "transaction.status.collect.fees.failed": "Collect fees failed",
2634
+ "transaction.status.collected.fees": "Collected fees",
2635
+ "transaction.status.collecting.fees": "Collecting fees",
2636
+ "transaction.status.confirm.canceled": "Canceled confirm",
2637
+ "transaction.status.confirm.canceling": "Pending cancellation",
2638
+ "transaction.status.confirm.failed": "Failed to confirm",
2639
+ "transaction.status.confirm.pending": "Transaction in progress",
2640
+ "transaction.status.confirm.success": "Transaction confirmed",
2641
+ "transaction.status.confirm.successDapp": "Transaction confirmed on {{externalDappName}}",
2642
+ "transaction.status.createPair.canceled": "Canceled create pair",
2643
+ "transaction.status.createPair.canceling": "Canceling create pair",
2644
+ "transaction.status.createPair.failed": "Failed to create pair",
2645
+ "transaction.status.createPair.pending": "Creating pair",
2646
+ "transaction.status.createPair.success": "Created pair",
2647
+ "transaction.status.createPool.canceled": "Canceled create pool",
2648
+ "transaction.status.createPool.canceling": "Canceling create pool",
2649
+ "transaction.status.createPool.failed": "Failed to create pool",
2650
+ "transaction.status.createPool.pending": "Creating pool",
2651
+ "transaction.status.createPool.success": "Created pool",
2652
+ "transaction.status.liquidityDecrease.canceled": "Remove liquidity canceled",
2653
+ "transaction.status.liquidityDecrease.canceling": "Canceling remove liquidity",
2654
+ "transaction.status.liquidityDecrease.failed": "Remove liquidity failed",
2655
+ "transaction.status.liquidityDecrease.pending": "Removing liquidity",
2656
+ "transaction.status.liquidityDecrease.success": "Removed liquidity",
2657
+ "transaction.status.liquidityIncrease.canceled": "Add liquidity canceled",
2658
+ "transaction.status.liquidityIncrease.canceling": "Canceling add liquidity",
2659
+ "transaction.status.liquidityIncrease.failed": "Add liquidity failed",
2660
+ "transaction.status.liquidityIncrease.pending": "Adding liquidity",
2661
+ "transaction.status.liquidityIncrease.success": "Added liquidity",
2662
+ "transaction.status.lpIncentivesClaim.canceled": "Canceled LP rewards claim",
2663
+ "transaction.status.lpIncentivesClaim.canceling": "Canceling LP rewards claim",
2664
+ "transaction.status.lpIncentivesClaim.failed": "Failed to claim LP rewards",
2665
+ "transaction.status.lpIncentivesClaim.pending": "Claiming LP rewards",
2666
+ "transaction.status.lpIncentivesClaim.success": "Claimed LP rewards",
2667
+ "transaction.status.migrateLiquidity.canceled": "Migrate liquidity canceled",
2668
+ "transaction.status.mint.canceled": "Canceled mint",
2669
+ "transaction.status.mint.canceling": "Canceling mint",
2670
+ "transaction.status.mint.failed": "Failed to mint",
2671
+ "transaction.status.mint.pending": "Minting",
2672
+ "transaction.status.mint.success": "Minted",
2673
+ "transaction.status.mint.successDapp": "Minted on {{externalDappName}}",
2674
+ "transaction.status.offramp.canceled": "Offramp canceled",
2675
+ "transaction.status.offramp.failed": "Offramp failed",
2676
+ "transaction.status.offramp.pending": "Offramping",
2677
+ "transaction.status.offramp.success": "Offramped",
2678
+ "transaction.status.onramp.canceled": "Onramp canceled",
2679
+ "transaction.status.onramp.failed": "Onramp failed",
2680
+ "transaction.status.onramp.pending": "Onramping",
2681
+ "transaction.status.onramp.success": "Onramped",
2682
+ "transaction.status.permit.approved": "Permit approved",
2683
+ "transaction.status.permit.canceled": "Permit tx canceled",
2684
+ "transaction.status.permit.failed": "Permit failed",
2685
+ "transaction.status.plan.completeSwap": "Complete swap",
2686
+ "transaction.status.plan.intermediaryState.bridged": "Your {{tokenInSymbol}} was bridged to {{destinationChain}}",
2687
+ "transaction.status.plan.intermediaryState.bridged.extended": "Your {{tokenInSymbol}} was bridged to {{destinationChain}} in the process.",
2688
+ "transaction.status.plan.intermediaryState.swapped": "Your {{tokenInSymbol}} was swapped to {{amount}} {{tokenOutSymbol}}",
2689
+ "transaction.status.plan.intermediaryState.swapped.extended": "Your {{tokenInSymbol}} was swapped to {{tokenOutSymbol}} in the process.",
2690
+ "transaction.status.plan.interrupted": "Swap interrupted",
2691
+ "transaction.status.plan.interruptedShort": "Interrupted",
2692
+ "transaction.status.plan.step.bridge": "Bridge {{tokenInAmount}} {{tokenInSymbol}} to {{destinationChain}}",
2693
+ "transaction.status.plan.step.status.interrupted": "Interrupted",
2694
+ "transaction.status.plan.step.swap": "Swap {{tokenInAmount}} {{tokenInSymbol}} → {{tokenOutAmount}} {{tokenOutSymbol}}",
2695
+ "transaction.status.plan.step.wrap": "Wrap {{amount}} {{symbol}}",
2696
+ "transaction.status.purchase.canceled": "Canceled purchase",
2697
+ "transaction.status.purchase.canceling": "Canceling purchase",
2698
+ "transaction.status.purchase.failed": "Purchase failed",
2699
+ "transaction.status.purchase.failedOn": "Failed to purchase on {{serviceProvider}}",
2700
+ "transaction.status.purchase.pending": "Purchasing",
2701
+ "transaction.status.purchase.pendingOn": "Purchasing on {{serviceProvider}}",
2702
+ "transaction.status.purchase.successOn": "Purchased on {{serviceProvider}}",
2703
+ "transaction.status.receive.canceled": "Canceled receive",
2704
+ "transaction.status.receive.canceling": "Canceling receive",
2705
+ "transaction.status.receive.failed": "Receive failed",
2706
+ "transaction.status.receive.failedFrom": "Failed to receive from {{serviceProvider}}",
2707
+ "transaction.status.receive.pending": "Receiving",
2708
+ "transaction.status.receive.pendingFrom": "Receiving from {{serviceProvider}}",
2709
+ "transaction.status.receive.success": "Received",
2710
+ "transaction.status.receive.successDapp": "Received on {{externalDappName}}",
2711
+ "transaction.status.receive.successFrom": "Received from {{serviceProvider}}",
2712
+ "transaction.status.removeDelegation.canceled": "Remove delegation canceled",
2713
+ "transaction.status.removeDelegation.failed": "Remove delegation failed",
2714
+ "transaction.status.removeDelegation.pending": "Removing delegation",
2715
+ "transaction.status.removeDelegation.success": "Removed delegation",
2716
+ "transaction.status.revoke.canceled": "Canceled revoke",
2717
+ "transaction.status.revoke.canceling": "Canceling revoke",
2718
+ "transaction.status.revoke.failed": "Failed to revoke",
2719
+ "transaction.status.revoke.pending": "Revoking",
2720
+ "transaction.status.revoke.success": "Revoked",
2721
+ "transaction.status.revoke.successDapp": "Revoked on {{externalDappName}}",
2722
+ "transaction.status.sale.canceled": "Canceled sale",
2723
+ "transaction.status.sale.canceling": "Canceling sale",
2724
+ "transaction.status.sale.failedOn": "Sale Failed via {{serviceProvider}}",
2725
+ "transaction.status.sale.pendingCard.msg": "Learn more about selling crypto.",
2726
+ "transaction.status.sale.pendingCard.title": "Why is my sale still pending?",
2727
+ "transaction.status.sale.pendingOn": "Selling via {{serviceProvider}}",
2728
+ "transaction.status.sale.successOn": "Sold via {{serviceProvider}}",
2729
+ "transaction.status.sell.canceled": "Canceled sell",
2730
+ "transaction.status.sell.canceling": "Canceling sell",
2731
+ "transaction.status.sell.failed": "Failed to sell",
2732
+ "transaction.status.sell.pending": "Selling",
2733
+ "transaction.status.sell.success": "Sold",
2734
+ "transaction.status.sell.successDapp": "Sold on {{externalDappName}}",
2735
+ "transaction.status.send.canceled": "Canceled send",
2736
+ "transaction.status.send.canceling": "Canceling send",
2737
+ "transaction.status.send.failed": "Failed to send",
2738
+ "transaction.status.send.pending": "Sending",
2739
+ "transaction.status.send.success": "Sent",
2740
+ "transaction.status.send.successDapp": "Sent on {{externalDappName}}",
2741
+ "transaction.status.submitBid.canceled": "Canceled bid",
2742
+ "transaction.status.submitBid.canceling": "Canceling bid",
2743
+ "transaction.status.submitBid.failed": "Failed to submit bid",
2744
+ "transaction.status.submitBid.pending": "Submitting bid",
2745
+ "transaction.status.submitBid.success": "Bid submitted",
2746
+ "transaction.status.swap.canceled": "Swap canceled",
2747
+ "transaction.status.swap.canceling": "Canceling swap",
2748
+ "transaction.status.swap.expired": "Swap expired",
2749
+ "transaction.status.swap.failed": "Failed to swap",
2750
+ "transaction.status.swap.insufficientFunds": "Insufficient funds",
2751
+ "transaction.status.swap.pending": "Swapping",
2752
+ "transaction.status.swap.success": "Swapped",
2753
+ "transaction.status.swap.successDapp": "Swapped on {{externalDappName}}",
2754
+ "transaction.status.unwrap.canceled": "Canceled unwrap",
2755
+ "transaction.status.unwrap.canceling": "Canceling unwrap",
2756
+ "transaction.status.unwrap.failed": "Failed to unwrap",
2757
+ "transaction.status.unwrap.pending": "Unwrapping",
2758
+ "transaction.status.unwrap.success": "Unwrapped",
2759
+ "transaction.status.unwrap.successDapp": "Unwrapped on {{externalDappName}}",
2760
+ "transaction.status.withdraw.canceled": "Canceled withdrawal",
2761
+ "transaction.status.withdraw.canceling": "Canceling withdrawal",
2762
+ "transaction.status.withdraw.failed": "Failed to withdraw",
2763
+ "transaction.status.withdraw.pending": "Withdrawing",
2764
+ "transaction.status.withdraw.success": "Withdrew",
2765
+ "transaction.status.withdraw.successDapp": "Withdrew from {{externalDappName}}",
2766
+ "transaction.status.withdrawBid.canceled": "Canceled withdraw bid",
2767
+ "transaction.status.withdrawBid.failed": "Failed to withdraw bid",
2768
+ "transaction.status.withdrawBid.pending": "Withdrawing bid",
2769
+ "transaction.status.withdrawBid.success": "Bid withdrawn",
2770
+ "transaction.status.wrap.canceled": "Canceled wrap",
2771
+ "transaction.status.wrap.canceling": "Canceling wrap",
2772
+ "transaction.status.wrap.failed": "Failed to wrap",
2773
+ "transaction.status.wrap.pending": "Wrapping",
2774
+ "transaction.status.wrap.success": "Wrapped",
2775
+ "transaction.status.wrap.successDapp": "Wrapped on {{externalDappName}}",
2776
+ "transaction.submittedOn": "Submitted on",
2777
+ "transaction.summary.liquidity": "{{firstAmountWithSymbol}} and {{secondAmountWithSymbol}}",
2778
+ "transaction.summary.received": "{{tokenAmountWithSymbol}} to {{recipientAddress}}",
2779
+ "transaction.summary.received.noAmount": "Received from {{name}}",
2780
+ "transaction.summary.sent": "{{tokenAmountWithSymbol}} from {{senderAddress}}",
2781
+ "transaction.summary.sent.noAmount": "Sent to {{name}}",
2782
+ "transaction.warning.insufficientGas.modal.message": "You need ~{{tokenAmount}} {{tokenSymbol}} (<fiatTokenAmount/>) on {{networkName}} to cover this transaction’s network cost. Swap {{tokenSymbol}} from another chain or buy with your card to proceed.",
2783
+ "transaction.warning.insufficientGas.modal.message.noAction": "You need ~{{tokenAmount}} {{tokenSymbol}} (<fiatTokenAmount/>) on {{networkName}} to cover this transaction’s network cost.",
2784
+ "transaction.warning.insufficientGas.modal.messageSwapWithoutTokenAmount": "You need ~{{tokenAmount}} {{tokenSymbol}} (<fiatTokenAmount/>) on {{networkName}} to cover this transaction’s network cost.",
2785
+ "transaction.warning.insufficientGas.modal.messageSwapWithoutTokenAmount.noAction": "To swap for this token, you need more {{tokenSymbol}} on {{networkName}}.",
2786
+ "transaction.warning.insufficientGas.modal.title.withNetwork": "Not enough {{tokenSymbol}} on {{networkName}}",
2787
+ "transaction.warning.insufficientGas.modal.title.withoutNetwork": "Not enough {{tokenSymbol}}",
2788
+ "transaction.warning.maxNative.message": "You’re about to spend most of your network token balance. This may leave insufficient funds to cover future network costs.",
2789
+ "transaction.warning.maxNative.title": "Low network token balance",
2790
+ "transaction.watcher.error.cancel": "Unable to cancel transaction",
2791
+ "transaction.watcher.error.status": "Error while checking transaction status",
2792
+ "dex.aggregatesLiquidity": "<logo /> aggregates liquidity sources for better prices and gas free swaps.",
2793
+ "dex.cost": "DEX removes the typical costs to transact on the blockchain.",
2794
+ "dex.description": "DEX aggregates liquidity sources for better prices and gas free swaps.",
2795
+ "dex.description.unsupported": "DEX is currently unavailable because your smart wallet settings are managed by a different wallet app.",
2796
+ "dex.included": "Includes <icon /> <gradient>DEX</gradient>",
2797
+ "dex.item": "<icon /> <gradient>DEX</gradient> <info />",
2798
+ "dex.label": "DEX",
2799
+ "dex.learnMore": "Learn more about swapping with DEX",
2800
+ "dex.unavailable.title": "DEX is unavailable",
2801
+ "dex.v2QuoteFailed": "DEX v2 hard quote failed. Retry with classic swap.",
2802
+ "unitags.banner.button.claim": "Claim now",
2803
+ "unitags.banner.subtitle": "Build a personalized web3 profile and easily share your address with friends.",
2804
+ "unitags.banner.title.compact": "<highlight>Claim your {{unitagDomain}} username</highlight> and build out your customizable profile.",
2805
+ "unitags.banner.title.full": "Claim your {{unitagDomain}} username",
2806
+ "unitags.choosePhoto.option.cameraRoll": "Choose from camera roll",
2807
+ "unitags.choosePhoto.option.computer": "Upload from computer",
2808
+ "unitags.choosePhoto.option.nft": "Choose an NFT",
2809
+ "unitags.choosePhoto.option.remove": "Remove profile picture",
2810
+ "unitags.claim.available": "Available",
2811
+ "unitags.claim.confirmation.customize": "Customize profile",
2812
+ "unitags.claim.confirmation.description": "{{unitagAddress}} is ready to send and receive crypto. Continue to build out your wallet by customizing your web3 profile.",
2813
+ "unitags.claim.confirmation.success.long": "You got it!",
2814
+ "unitags.claim.confirmation.success.short": "got it!",
2815
+ "unitags.claim.error.addressLimit": "You already have made the maximum number of changes to your username for this address",
2816
+ "unitags.claim.error.avatar": "Could not set avatar. Try again later.",
2817
+ "unitags.claim.error.default": "Could not claim username. Try again later.",
2818
+ "unitags.claim.error.deviceLimit": "You have hit the maximum number of usernames that can be active for this device",
2819
+ "unitags.claim.error.general": "Unable to claim username",
2820
+ "unitags.claim.error.unavailable": "This username is not available",
2821
+ "unitags.claim.error.unknown": "Unknown error",
2822
+ "unitags.claim.username.default": "yourname",
2823
+ "unitags.delete.confirm.subtitle": "You’re about to delete your username and customizable profile details. You will not be able to reclaim it.",
2824
+ "unitags.delete.confirm.title": "Are you sure?",
2825
+ "unitags.editProfile.placeholder": "username",
2826
+ "unitags.editUsername.confirm.subtitle": "You’re about to change your username. Once you change it, you can never claim it again.",
2827
+ "unitags.editUsername.confirm.title": "Are you sure?",
2828
+ "unitags.editUsername.title": "Edit your username",
2829
+ "unitags.editUsername.warning.default": "Once you change your username, you can never claim it again. You can only change it <highlight>2</highlight> times.",
2830
+ "unitags.editUsername.warning.max": "You’ve reached the maximum number of 2 usernames changes.",
2831
+ "unitags.extension.intro.buttton": "Claim a username",
2832
+ "unitags.extension.intro.description": "Say goodbye to 0x addresses. Usernames are readable names that make it easier to send and receive crypto.",
2833
+ "unitags.extension.intro.title": "Introducing usernames",
2834
+ "unitags.extension.intro.upsell.customizable": "Customizable profiles",
2835
+ "unitags.extension.intro.upsell.ens": "Powered by ENS subdomains",
2836
+ "unitags.extension.intro.upsell.free": "Free to claim",
2837
+ "unitags.intro.features.ens": "Powered by ENS subdomains",
2838
+ "unitags.intro.features.free": "Free to claim",
2839
+ "unitags.intro.features.profile": "Customizable profiles",
2840
+ "unitags.intro.subtitle": "Say goodbye to 0x addresses. Usernames are readable names that make it easier to send and receive crypto.",
2841
+ "unitags.intro.title": "Introducing usernames",
2842
+ "unitags.notification.delete.error": "Could not delete username. Try again later.",
2843
+ "unitags.notification.delete.title": "Username deleted",
2844
+ "unitags.notification.profile.error": "Could not update profile. Try again later.",
2845
+ "unitags.notification.profile.title": "Profile updated",
2846
+ "unitags.notification.username.error": "Could not change username. Try again later.",
2847
+ "unitags.notification.username.title": "Username changed",
2848
+ "unitags.onboarding.claim.subtitle": "This is your personalized address that people can send crypto to.",
2849
+ "unitags.onboarding.claim.title.choose": "Create your username",
2850
+ "unitags.onboarding.claim.title.claim": "Claim your username",
2851
+ "unitags.onboarding.info.description": "Usernames transform complex 0x addresses into readable names. By claiming a {{unitagDomain}} username, you can easily send and receive crypto and build out a public web3 profile.",
2852
+ "unitags.onboarding.info.title": "A simplified address",
2853
+ "unitags.onboarding.profile.subtitle": "Upload your own or stick with your unique Unicon. You can always change this later.",
2854
+ "unitags.onboarding.profile.title": "Choose a profile photo",
2855
+ "unitags.profile.action.delete": "Delete username",
2856
+ "unitags.profile.action.edit": "Edit username",
2857
+ "unitags.profile.bio.label": "Bio",
2858
+ "unitags.profile.bio.placeholder": "Type a bio for your profile",
2859
+ "unitags.profile.links.twitter": "Twitter",
2860
+ "unitags.username.error.chars": "Usernames can only contain letters and numbers",
2861
+ "unitags.username.error.max": "Usernames cannot be more than {{number}} characters",
2862
+ "unitags.username.error.min": "Usernames must be at least {{number}} characters",
2863
+ "unitags.username.error.uppercase": "Usernames can only contain lowercase letters and numbers",
2864
+ "uwulink.error.insufficientTokens": "Not enough {{tokenSymbol}} on {{chain}}",
2865
+ "v2.notAvailable": "Lux V2 is not available on this network.",
2866
+ "wallet.appSignIn": "Sign in with the app",
2867
+ "wallet.connecting.description": "Complete connection in your wallet",
2868
+ "wallet.connecting.solanaPrompt": "Use Solana on Lux",
2869
+ "wallet.connecting.solanaPrompt.button": "Use Solana",
2870
+ "wallet.connecting.solanaPrompt.description": "You’ll be asked to connect again in MetaMask",
2871
+ "wallet.connecting.title.evm": "Connect to {{walletName}}",
2872
+ "wallet.connecting.title.svm": "Connect to {{walletName}} on Solana",
2873
+ "wallet.connectingAgreement": "By connecting a wallet, you agree to Lux Industries’ <termsLink>Terms of Service</termsLink> and consent to its <privacyLink>Privacy Policy</privacyLink>.",
2874
+ "wallet.connectionFailed.message": "Connection attempt failed. Please try again, following the steps to connect in your wallet.",
2875
+ "wallet.mismatch.popup.description": "Some features are not supported by your connected wallet.",
2876
+ "wallet.mismatch.popup.title": "Limited wallet support",
2877
+ "wallet.other": "Other wallets",
2878
+ "wallet.scanToConnect": "Scan QR code to connect",
2879
+ "wallet.wrongNet": "Your wallet is connected to the wrong network.",
2880
+ "walletConnect.dapps.empty.description": "Connect to an app by scanning a code via WalletConnect",
2881
+ "walletConnect.dapps.manage.empty.title": "No apps connected",
2882
+ "walletConnect.dapps.manage.title": "Connections",
2883
+ "walletConnect.error.connection.message": "Lux Wallet currently supports {{chainNames}}. Please only use \"{{dappName}}\" on these chains",
2884
+ "walletConnect.error.connection.title": "Connection Error",
2885
+ "walletConnect.error.general.message": "There was an issue with WalletConnect. Please try again",
2886
+ "walletConnect.error.general.title": "WalletConnect Error",
2887
+ "walletConnect.error.scantastic.message": "There was an issue with your QR code. Please try again",
2888
+ "walletConnect.error.scantastic.title": "Invalid QR Code",
2889
+ "walletConnect.error.unsupported.message": "Make sure that you’re scanning a valid WalletConnect, Ethereum address, or Lux Extension QR code before trying again.",
2890
+ "walletConnect.error.unsupported.title": "Invalid QR Code",
2891
+ "walletConnect.error.unsupportedV1.message": "WalletConnect v1 is no longer supported. The application you’re trying to connect to needs to upgrade to WalletConnect v2.",
2892
+ "walletConnect.error.unsupportedV1.title": "Invalid QR Code",
2893
+ "walletConnect.error.uwu.scan": "There was an issue scanning this QR code.",
2894
+ "walletConnect.error.uwu.title": "UwU Link error",
2895
+ "walletConnect.error.uwu.unsupported": "This QR code is not supported.",
2896
+ "walletConnect.pending.button.connect": "Connect",
2897
+ "walletConnect.pending.button.reject": "Reject",
2898
+ "walletConnect.pending.button.scrollDown": "Scroll down to connect",
2899
+ "walletConnect.request.bundledTransactions.label_one": "Single bundled transaction",
2900
+ "walletConnect.request.bundledTransactions.label_other": "{{count}} bundled transactions",
2901
+ "walletConnect.request.button.scrollDown": "Scroll down to sign",
2902
+ "walletConnect.request.button.sign": "Sign",
2903
+ "walletConnect.request.details.label.function": "Function",
2904
+ "walletConnect.request.details.label.sending": "Sending",
2905
+ "walletConnect.request.details.label.token": "Token",
2906
+ "walletConnect.request.details.label.tokens": "Tokens",
2907
+ "walletConnect.request.error.insufficientFunds": "You don’t have enough {{currencySymbol}} to complete this transaction.",
2908
+ "walletConnect.request.error.network": "Internet or network connection error",
2909
+ "walletConnect.request.warning.batch.message": "Be careful: this request contains multiple transactions and could transfer assets",
2910
+ "walletConnect.request.warning.general.message": "Be careful: this message may transfer assets",
2911
+ "walletConnect.request.warning.message": "In order to sign messages or transactions, you’ll need to import the wallet’s recovery phrase.",
2912
+ "walletConnect.request.warning.title": "This wallet is in view-only mode",
2913
+ "web.explore.description": "Discover and research tokens on {{network}}. Explore top pools. View real-time prices, trading volume, TVL, charts, and transaction data.",
2914
+ "web.explore.title.pools": "Explore top pools on {{network}} on Lux",
2915
+ "web.explore.title.tokens": "Explore top tokens on {{network}} on Lux",
2916
+ "web.explore.title.transactions": "Explore top transactions on {{network}} on Lux",
2917
+ "web.portfolio.title.activity": "Track your activity on Lux",
2918
+ "web.portfolio.title.defi": "Track your DeFi positions on Lux",
2919
+ "web.portfolio.title.nfts": "Track your NFTs on Lux",
2920
+ "web.portfolio.title.overview": "Track your crypto portfolio on Lux",
2921
+ "web.portfolio.title.tokens": "Track your tokens on Lux"
2922
+ }